1
0
Fork 0
Commit Graph

4770 Commits

Author SHA1 Message Date
Mattiwatti 6f1b6b77bb dbg changes for TEB->LastStatusValue:
- Add LASTSTATUS struct
- Add LastStatus members to REGDUMP and THREADALLINFO
- Add ThreadGetLastStatus()/ThreadGetLastStatusTEB()
- Make "laststatus" a supported pseudo-register in isregister() / getregister() / setregister() similar to "lasterror"
- _dbg_getregdump(): copy the full name of the last NTSTATUS value
- ThreadGetList(): add the last status value to the thread list for each thread
- TraceRecordManager: account for the size change of REGDUMP to keep REGDUMPWORD the same size
2017-10-28 02:47:49 +02:00
Mattiwatti 8f0f83bdf3 ntdll.h: Update PEB and TEB structs for Windows 10 RS3, and correct offset of TEB->LastStatusValue on x86 2017-10-28 02:47:49 +02:00
Mattiwatti 787b86cd1f Add DbgGetRegDumpEx to bridge API
Public SDK changes:
- Add LASTSTATUS struct
- Add REGDUMP_V2 struct with LASTSTATUS member
- Add DbgGetRegDumpEx(REGDUMP* regdump, size_t size);

Internal changes:
- Change typedef of _dbg_getregdump to add a size parameter
- Make DbgGetRegDump() pass sizeof(REGDUMP) to _dbg_getregdump to preserve existing behaviour. DbgGetRegDumpEx() forwards the size that was passed to it
2017-10-27 00:02:39 +02:00
torusrxxx 0fbb1aa056 Don't add autocomments on "mov edi,edi"(#1775) 2017-10-26 00:43:54 +02:00
Duncan Ogilvie 0762182973
DBG: implement DLL breakpoints directly in x64dbg 2017-10-25 21:58:01 +02:00
Joel Höner a514176750 Add tokenizer support for pointer operands (#1781)
* Add tokenizer support for pointer operands
* Fixed pointer operand width calculation
2017-10-25 21:45:00 +02:00
Torusrxxx 466d5e9173 Update cmd-misc.cpp 2017-10-25 11:21:44 +00:00
Torusrxxx db5c3e23af Update cmd-misc.cpp 2017-10-25 11:16:01 +00:00
Duncan Ogilvie c9c10c26b4
PROJECT: add code of conduct 2017-10-24 01:11:18 +02:00
Duncan Ogilvie 0d871ac637
PROJECT: Add pull request documentation
closes #1773 (manually committed changes)
2017-10-24 01:05:26 +02:00
Duncan Ogilvie 3137310b68
DBG: update TitanEngine
fixes #1777
2017-10-24 00:48:17 +02:00
Duncan Ogilvie ecbea6d9d8
GUI: fix Sonar issues 2017-10-22 17:07:45 +02:00
Torusrxxx c102670c3f Update TraceBrowser.cpp 2017-10-21 14:17:38 +00:00
Duncan Ogilvie 33844079ee
DBG+GUI: update zydis 2017-10-18 23:44:36 +02:00
torusrxxx 9a2cb20682 enhancement to run until return 2017-10-18 22:49:06 +02:00
RaMMicHaeL 75987325fb Remember navigation source in graph history (#1766)
* Remember navigation source in graph history

If you follow a jump or a call, and click on '-', you don't go back to the jump or the call (as in the regular CPU view), but to a previous, non-relevant command in the graph. This commit tries to fix this.

* Update DisassemblerGraphView.cpp

* Update DisassemblerGraphView.cpp
2017-10-18 22:48:57 +02:00
Alexandros Naskos f519f322da Added setting that controls MaxModuleSize. (#1765)
* Added spinbox that controls maximum module name size in the disassembler settings.

* Restored settings dialog default tab index to zero.
2017-10-18 22:47:43 +02:00
Torusrxxx 390bf4c5ca Trace recording (#1736)
* run trace file format
* record opcode
* Successfully recorded sample run trace
* fixed order of thread id and opcode
* use capstone in run trace
* Revised format;Stop tracing when stop debug;Changed ext name
* trace browser(draft)
* Lower bound
* Lower bound
* implemented more funcitons in trace file reader
* Initial trace browser
* trace browser works for single-page traces
* fixed page fault
* Multi-selection, fixed page faults
* copy disassembly
* resize columns
* address label;follow in disassembly
* highlight
* history,comment,breakpoint in trace view
* stricter validation to prevent buffer overflow
* MAX_MEMORY_OPERANDS=32
* fixing bug in memory access count
* Temporary info menu to view registers & memory
* assumed to fix thread id bug
* live update trace view
* Fixed a bug with registers recording (similar to thread id bug)
* Search for constant in trace file
* Fixed bugs with memory operands recording
* File header for trace file; Auto update trace viewer
* fix x64dbg_translations.pro
* Default filename for trace; Start trace from trace view
* Switch to Qt JSON
* Copy selection, file offset and RVA; recent files
* Properly implement MRU menu
* shortcut for tracing
* Fix file names with comma
* added interaction with tab closing
* change default directory for trace file
* fix minor issue
2017-10-16 20:00:26 +02:00
Torusrxxx 9959278863 Properly exit x64dbg 2017-10-15 16:18:48 +02:00
Duncan Ogilvie f85cea6bcd
GUI: change multi-selection hotkeys (#1743)
closes #1762
closes #1761
2017-10-14 19:46:47 +02:00
Duncan Ogilvie f6590e6465
DBG: fixed a typo 2017-10-14 17:31:11 +02:00
Atvaark c44c1f7fc6 GUI: add multiselect hotkeys to StdTable
This allows selecting multiple rows in e. g. the Breakpoints view
without having to use the mouse.

New hotkeys:
- Select all: (ctrl+a)
- Select first row (ctrl+home)
- Select last row (ctrl+end)
- Expand selection upwards (shift+up)
- Expand selection downwards (shift+down)
2017-10-14 17:26:39 +02:00
Duncan Ogilvie d6ca58efd1
DBG: fixed another problem with Zydis 2017-10-14 15:42:02 +02:00
Duncan Ogilvie 6f7af9b8da
DBG: fixed various small issues with Zydis
ping @athre0z
2017-10-14 00:32:34 +02:00
Duncan Ogilvie c9e17df1c0
DBG+LAUNCHER: correctly handle mixed mode executables
fixes #1758
2017-10-13 23:38:53 +02:00
torusrxxx 8cf9f63bac Fixing #1752 2017-10-13 19:43:33 +02:00
Joel Höner c5c3358c52 Add range checks for operand access (fixes #1750) (#1751)
* DBG: added range checks to operand access
- previously, some instructions could trigger the `DebugBreak` path in `Zydis::operator[]`
* GUI: removed redundant semicolon
2017-10-10 21:01:59 +02:00
Duncan Ogilvie aee7a2e709
PROJECT: more AStyle... 2017-10-10 00:57:14 +02:00
Duncan Ogilvie 9d692efbdf
PROJECT: AStyle 2017-10-09 23:42:23 +02:00
Duncan Ogilvie d365b5a590
GUI: fixed a typo in capstone_gui 2017-10-09 23:15:00 +02:00
Joel Höner 77c6e951f0 zydis_wrapper: Cleaned up branch types
- Remove unused semantic groups
- Improve handling of “far” in tokenizer
2017-10-09 10:02:13 +02:00
Joel Höner 8741e94bdb zydis_wrapper: Final touch
- Comment out diff code in GUI
- Enable optimization
- A few more whitelist entries in the diff code
- A few fixes in the old tokenizer to be consistent with the new one in diffs
- Remove LICENSE and README now that the wrapper is part of the x64dbg core repo
2017-10-09 10:02:13 +02:00
Joel Höner 5b1cf81f55 zydis_wrapper: Fixed x32 build 2017-10-09 10:02:13 +02:00
Joel Höner 3fca5c9191 Ported & renamed `cbInstrCapstone` 2017-10-09 10:02:13 +02:00
Joel Höner 16942049b3 QBeaEngine: Implemented reg & flag info again 2017-10-09 10:02:13 +02:00
Joel Höner af0ff55df3 zydis_wrapper: Better compliance with style-guide
- Removed underscores
- Removed redundant “zy” prefix
- Executed `AStyleWhore` (sorreh, I use git on my macOS host, can’t put it into pre-commit-hook)
2017-10-09 10:02:13 +02:00
Joel Höner ca9401fdb7 Moved “zydis_wrapper” into root repo
- Instead, we directly use Zydis as a submodule now
2017-10-09 10:02:13 +02:00
Joel Höner da0d4415e3 Print “far” token, support RTM instructions
- Also, more whitelist entries for the CS-Zydis diff
2017-10-09 10:02:13 +02:00
Joel Höner 0711ac09df Added CS vs Zydis diff code & various fixes
- Fixed various porting bugs in the Zydis `CapstoneTokenizer`
- Added Capstone vs Zydis tokenizing diff and various exceptions for known issues
2017-10-09 10:02:13 +02:00
Joel Höner 4c841d85c6 Renamed `Capstone` -> `Zydis`
- Prevents name clashes with actual capstone disassembler implementation
2017-10-09 10:02:13 +02:00
Joel Höner 5338a0a85b Replace Capstone with Zydis
- While at it, added branch info logic to disassembler class
  - Thus reduce direct checks by mnemonic in GUI and analysis code
- Replaced direct disassembler struct access with disassembler class calls where trivially possible
- Removed workarounds for empty segment registers
- Temp. disabled `cbInstrCapstone` command
- Temp. disabled flag stuff in `QBeaEngine`
2017-10-09 10:02:13 +02:00
Duncan Ogilvie 103866eafe
DBG+EXE+GUI: fixed some more sonar warnings 2017-10-08 20:19:32 +02:00
Duncan Ogilvie 05c9223d0a
PROJECT: don't show usage info during sonarqube build 2017-10-08 18:48:36 +02:00
Duncan Ogilvie 32bce921f2
PROJECT: updated build.bat for sonar pull request analysis 2017-10-08 18:44:39 +02:00
Duncan Ogilvie cd9bbb1189
BRIDGE+LAUNCHER: fixed some more CRT warnings 2017-10-08 16:23:20 +02:00
Duncan Ogilvie 57235b2f24
DBG+EXE+LAUNCHER+BRIDGE: remove _CRT_SECURE_NO_WARNINGS 2017-10-08 16:16:20 +02:00
Duncan Ogilvie e6a6d789e6
PROJECT: update sonarqube build 2017-10-08 15:11:16 +02:00
Duncan Ogilvie 0c46401fa7
PROJECT: added SonarQube to build.bat 2017-10-08 14:57:00 +02:00
genuine bebc47b924 Show address with label in InfoBox
Address issue #1588
2017-10-05 17:25:56 +02:00
Duncan Ogilvie d121cd9dc2
DBG+LAUNCHER: fix exception handling in GetPeArch.h
Thanks to digitalboy for the report!
2017-10-05 17:08:34 +02:00