1
0
Fork 0
Commit Graph

2335 Commits

Author SHA1 Message Date
Duncan Ogilvie 607c5a94e6 GUI: refactor formatOpcodeString + fix underline of relocations 2018-07-01 19:04:38 +02:00
Duncan Ogilvie 67e095efb5 GUI: don't add same thing to the history twice 2018-07-01 19:04:38 +02:00
Duncan Ogilvie 95cacb3732 DBG: add information to Zydis command 2018-07-01 19:04:38 +02:00
Duncan Ogilvie d24d045105 ZYDIS: fix uninitialized variable in BytesGroup function 2018-07-01 19:04:38 +02:00
Duncan Ogilvie 3a2ce72dd2 rename curByte1 to curByte 2018-07-01 19:04:38 +02:00
Duncan Ogilvie c46dc0aaca fix crash in formatOpcodeString 2018-07-01 19:04:38 +02:00
torusrxxx 40c00a4d01 fixed relocations 2018-07-01 19:04:38 +02:00
torusrxxx 4cbf8ac7f1 Restore old code for patch&relocation 2018-07-01 19:04:38 +02:00
torusrxxx 606d3cec2e Added patches and relocations 2018-07-01 19:04:38 +02:00
torusrxxx 6c472a34e4 fixed problem with immediates 2018-07-01 19:04:38 +02:00
torusrxxx 712bd6f78a test 2018-07-01 19:04:38 +02:00
torusrxxx 58825d4522 Edit inactive breakpoint 2018-06-19 18:51:36 +02:00
torusrxxx c2f999c6ea Delete inactive breakpoint in Breakpoints View 2018-06-19 18:51:36 +02:00
torusrxxx 3b5d9eeb86 temporary 2018-06-19 18:51:36 +02:00
torusrxxx 380df7ba2e minor parsing bug 2018-06-19 18:51:36 +02:00
torusrxxx ddbeeefab4 Special format to find an inactive breakpoint to edit it. 2018-06-19 18:51:36 +02:00
torusrxxx b59798db6f minor enhancements about SymbolView&breakpointcpp&SearchListView 2018-06-19 18:51:36 +02:00
Duncan Ogilvie 12e9127799 DBG: support for an edge case in HandlesGetName where the process itself doesn't have query access 2018-06-19 18:30:13 +02:00
torusrxxx f8c67ef2ab show PID or TID in handles view 2018-06-19 18:30:13 +02:00
Duncan Ogilvie f5fa7de918
DBG: better message in _dbg_animatecommand 2018-06-11 03:13:25 +02:00
torusrxxx 0ab417f5b4
Animation help; Restore empty graph help 2018-06-11 03:12:50 +02:00
torusrxxx 71847bb385
set conditional breakoint 2018-06-11 03:12:49 +02:00
torusrxxx ee56954a0c
Use a more useful example for switch condition 2018-06-11 03:12:49 +02:00
torusrxxx 2df55a3fa6
Load language menu only when needed 2018-06-11 03:12:49 +02:00
torusrxxx 5acf7eb182
Added some icons for Log view and Trace view 2018-06-10 23:56:33 +08:00
Duncan Ogilvie db17e323fe
DBG: more message fixes 2018-06-03 17:47:01 +02:00
Duncan Ogilvie 01960c556b fix some whitespace in strings 2018-06-03 17:43:30 +02:00
torusrxxx 1cd3cfc469 fix mistakes 2018-06-03 17:43:30 +02:00
torusrxxx 4cf5508b5f add error descriptions to x64dbg failure messages 2018-06-03 17:43:30 +02:00
Duncan Ogilvie 4ea3a8e3af GUI: actually fix the crash, derp 2018-05-17 17:14:12 +02:00
Duncan Ogilvie 291039eb17 GUI: fix crash in new HexEditDialog 2018-05-17 17:05:11 +02:00
torusrxxx 40ab0ed1ae Fix pasting CR/LF text to CR/LF hex editor 2018-05-13 20:38:53 +02:00
torusrxxx 781b0dd89c Add CR/LF option to text editor 2018-05-13 20:38:53 +02:00
torusrxxx e714824a0d restore current tab index 2018-05-13 20:38:53 +02:00
torusrxxx 49a1c861f0 Make hex editor dialog resizable & Fix copying IP addr. 2018-05-13 20:38:53 +02:00
torusrxxx 8de0520dc9 string editor works 2018-05-13 20:38:53 +02:00
torusrxxx facf8ac223 Removed data copy dialog 2018-05-13 20:38:53 +02:00
torusrxxx dce0e11713 data copy working 2018-05-13 20:38:53 +02:00
torusrxxx 9741c06798 Disable data copy in find pattern dialog 2018-05-13 20:38:53 +02:00
torusrxxx dba3178428 Improved design. Added codepage warning. 2018-05-13 20:38:53 +02:00
torusrxxx 1f7352e0a0 design 2018-05-13 20:38:53 +02:00
Duncan Ogilvie 3f33ad44cc
DBG+GUI: update zydis and fix some issues related to formatting
closes #1904
closes #1898
2018-04-05 00:20:31 +02:00
Duncan Ogilvie 3f754c0bfc
DBG: fix an out of bounds access on expression "([esp])" 2018-03-26 02:14:49 +02:00
Duncan Ogilvie fa902f5df7
GUI: set shortcut for copy file offset in CPUDisassembly
closes #1916
2018-03-20 10:25:59 +01:00
Duncan Ogilvie 5bf0e7fb7b
PROJECT: fix zydis_wrapper project to not include nonexistent files 2018-03-05 23:52:20 +01:00
Duncan Ogilvie 1c1a48bcee
DBG: fix heuristic string detection near the end of a page
related to #1906
2018-03-05 23:52:07 +01:00
Duncan Ogilvie f8e4ed4f1f
DBG: fix bug with operand size in TraceRecord 2018-03-04 23:00:13 +01:00
Duncan Ogilvie 8da82cf569
PROJECT: remove keystone 2018-03-04 22:41:00 +01:00
Duncan Ogilvie e5f950308a
PROJECT: remove capstone 2018-03-04 22:35:01 +01:00
Duncan Ogilvie 55d99b5647
DBG+GUI: replace Capstone with Zydis in trace record 2018-03-04 22:32:08 +01:00
Duncan Ogilvie 0343280cb5
DBG+GUI: update to Zydis v2.0.0 2018-03-04 22:22:54 +01:00
Duncan Ogilvie 49167e92c6
DBG+GUI: fix many application verifier issues 2018-03-04 22:04:37 +01:00
Duncan Ogilvie 53e621c175
DBG: replace WAITID_STOP with a more reliable method
closes #1852
2018-03-04 22:04:04 +01:00
ThunderCls e2dcda5498 removed unnecessary include 2018-03-02 10:17:14 +01:00
ThunderCls 5a28eb7d30 ASM styles added 2018-03-02 10:17:14 +01:00
ThunderCls da8d90f674 Enhancements to the Data Copy dialog 2018-03-02 10:17:14 +01:00
ThunderCls 96b8038f88 Added ASCII field for edit registers dialog 2018-03-02 10:17:14 +01:00
Duncan Ogilvie c5ce4313b4
DBG+GUI: update Zydis to the latest version 2018-02-24 13:42:59 +01:00
Duncan Ogilvie 289a6b1911
GUI: mnemonic help and brief now work better with prefixes 2018-02-24 12:43:48 +01:00
Duncan Ogilvie 16fdf57f41
DBG: move call to CB_STOPDEBUG to the very end of the debug loop
close issue #1899
2018-02-14 22:19:00 +01:00
Duncan Ogilvie 2c284cd210
DBG: remove std::thread usage from TaskThread 2018-02-14 20:38:49 +01:00
Duncan Ogilvie 804322aeb8 GUI: introduce setting for ASCII/Unicode in address dump mode 2018-02-08 01:22:33 +01:00
Duncan Ogilvie 8a1256b5fd GUI: small refactor in Configuration 2018-02-08 01:22:33 +01:00
aikuimail e8e7112cf5 GUI: swich bettween ASCII and UNICODE column in Address mode
closes issue #1880
2018-02-08 01:22:33 +01:00
Duncan Ogilvie 1fa1c3d705
DBG: remove limitation of placing "&" in labels 2018-01-30 20:54:45 +01:00
Duncan Ogilvie ddc97f2a74
DBG: show PEB in memory map
#1882
2018-01-28 11:51:15 +01:00
torusrxxx 13b8db3a2b fix and add UTF8/UCS4 2018-01-28 11:45:23 +01:00
torusrxxx 164d8b0730 View and copy raw string 2018-01-28 11:45:23 +01:00
Duncan Ogilvie 39f78b1c33
DBG: remove weak acquire in dbghelp_safe
possibly fixes #1863
2018-01-12 14:15:06 +01:00
ZehMatt 0e29990da5 Jump to thread IP by double clicking. 2017-12-31 12:34:05 +01:00
Duncan Ogilvie 3e510440d2
GUI: don't try reading the first byte of a memory region in HexDump 2017-12-28 23:26:13 +01:00
Duncan Ogilvie 2d6004da9b
DBG: remove TitanEngine for parsing TLS callbacks 2017-12-28 23:25:42 +01:00
Duncan Ogilvie 42dc5f90e5
DBG: fix Zydis.BranchDestination
closes #1855
2017-12-28 21:34:47 +01:00
Duncan Ogilvie 7c0d122ee4
DBG: add breakpointexceptionaddress variable 2017-12-28 20:27:23 +01:00
Duncan Ogilvie 8616ff67a2
DBG+GUI: fix OperandText returning weird values for relative jumps
closes #1849
2017-12-26 13:31:10 +01:00
Duncan Ogilvie 761e2f67c0
DBG: fix a rare bug with module resolving by name (thanks to chessgod101!)
if you had:
blub.exe
blub.exe.dll

And tried to resolve 'blub.exe' it could return the base of 'blub.exe.dll'
2017-12-24 13:21:06 +01:00
Duncan Ogilvie 2106873f55
GUI: revamp of the menu system 2017-12-18 03:07:27 +01:00
Duncan Ogilvie bdde5d3cce
GUI: hide the "Disable Branch Destination Preview" menu + symbol menu in system modules only 2017-12-18 02:15:44 +01:00
Duncan Ogilvie ed1dd3c6c1
GUI: save and restore deleted tab state 2017-12-18 02:03:14 +01:00
Duncan Ogilvie 0f1916cc2e
GUI: fix cip not displaying correctly in the reference view 2017-12-18 02:02:35 +01:00
Duncan Ogilvie 0e2ff40443
DBG: remove unused parameter from RecursiveAnalysis class 2017-12-17 02:05:53 +01:00
torusrxxx f29d660b6e Search for function pointer 2017-12-17 02:05:39 +01:00
Duncan Ogilvie 188b74bc91
GUI: implement OllyDbg's Find all names in current module (Ctrl+N)
Cheers to @R3MRUM from Twitter!
2017-12-08 03:10:10 +01:00
Duncan Ogilvie 37e83c9436
DBG+GUI: trim error descriptions in RegisterView and format functions 2017-12-03 22:27:47 +01:00
Duncan Ogilvie e11701d7c3
GUI: improve InfoBox for bigger memory sizes 2017-12-03 22:27:47 +01:00
Mattiwatti 70a836b17a Move SafeSymCleanup() call to cbExitProcess so it isn't called when the process may have already terminated
debugLoopFunction: set fdProcessInfo->hProcess and fdProcessInfo->hThread to NULL as these shouldn't be used after this point. The actual CloseHandle calls on these two handles are done by kernel32!ContinueDebugEvent immediately after cbExitProcess
2017-11-28 17:29:50 +01:00
Mattiwatti 2f3f28746d Remove 2 occurrences of 'varset("$hp", fdProcessInfo->hProcess)', one of which was being called with the initial handle from CreateProcess(). cbCreateProcess is now the only place where this variable is set, for both types of debug sessions (attaching or creating) 2017-11-28 17:29:50 +01:00
Mattiwatti 629a6022e4 Fix duplicate debuggee process and initial thread handles being kept around in the case that x64dbg is not attaching:
- CloseHandle() the fdProcessInfo->hProcess and fdProcessInfo->hThread handles and set them to NULL if CreateProcess was called (i.e. we are not attaching) just before entering the debug loop
- cbCreateProcess(): set fdProcessInfo->hProcess, fdProcessInfo->hThread and varset("$hp") to the correct handles prior to doing anything else
2017-11-28 17:29:50 +01:00
Mattiwatti c8e8b692f0 Remove static global handle 'hProcess' in debugger.cpp; it is only used in one place as argument to SafeSymCleanup(). Use fdProcessInfo->hProcess instead 2017-11-28 17:29:50 +01:00
Duncan Ogilvie 27a9266de8
GUI: do not render instructions that are not visible on the screen + remove timer
#1819
2017-11-19 23:57:08 +01:00
Duncan Ogilvie 4eb0fb6b88
GUI: autocompletion works much nicer now
#1738
2017-11-17 16:46:18 +01:00
Duncan Ogilvie c3dae65658
PROJECT: update translation sources 2017-11-17 14:48:27 +01:00
Duncan Ogilvie 233a2670d2
GUI: replace backtab with Shift+Tab in ShortcutEdit 2017-11-17 14:42:49 +01:00
lynnux 5b7696219e Tab switch using history stack (#1807)
* add OpenViewsWindow
* almost done for history view switch
* rename the class
* add icon in history popup window
* astyle format
* add config TabSwitchUseHistory, default disable history tab switch
* remove no used code
* add shortcuts for the stuff
* rename HistoryViewsPopupWindow to MultiItemsSelectWindow, for further common use
* GUI: some small style adjustments
* GUI: change default hotkeys for ViewNextTab
2017-11-17 14:40:08 +01:00
Paul 7963e5206f Add memory read breakpoint to context menu
* added breakpoint_memory_read.png
* added breakpoint_memory_read.png to resource.qrc
* breakpoint memory read added to memory dump context menu
* breakpoint memory read added to context menu
2017-11-17 13:00:32 +01:00
Torusrxxx 200c861761 fixed winerror & ntstatus fmt funcs
Thanks @Mattiwatti
2017-11-17 12:54:30 +01:00
Duncan Ogilvie 1c79384a06
DBG: remove the ordinal flag before printing the value
#1795
2017-11-15 13:44:36 +01:00
Duncan Ogilvie c9abfd5229
GUI: put current selection in the initial goto dialog expression
related to #1812
2017-11-14 16:49:51 +01:00
Mack Stump f4cdecd46a GUI: show Follow->Constant even if same as Address (#1806)
* GUI: show Follow->Constant even if same as Address
* GUI: invert constant and address entries in follow
* GUI: maintain original ordering in Follow menu
2017-11-14 16:32:09 +01:00
Emily Clemens 925c2a1222 added settings to hide ptr sizes and defualt segments 2017-11-14 16:04:43 +01:00
lynnux 679aa23340 fix filter search bug in symbolview, and avoid double call setSingleSelection 2017-11-14 16:04:25 +01:00
lynnux e5cd1813ef let goto file offset dialog has a init value of current selected address 2017-11-14 16:03:50 +01:00
fearless dbb6e7e322 Added context menu icons for reference view (#1808)
* Added context menu icons for reference view

* Add context menu icons to source view

* Upload context menu icons

* Upload context menu icons

* Update stdtable to include copy item icon for columns in copy menu
2017-11-14 16:02:49 +01:00
Duncan Ogilvie ca27de0dd7
DBG: remove custom formatter hooks and use new zydis setting instead 2017-11-14 16:00:55 +01:00
Duncan Ogilvie 63ec6d4648
GUI: add a fake menu for modules 2017-11-14 16:00:55 +01:00
Duncan Ogilvie d1edce0872
DBG: small improvement to Handle class
By @torusrxxx
2017-11-14 16:00:55 +01:00
Duncan Ogilvie 4db8d02cf4
DBG: show operand visibility in Zydis command 2017-11-14 16:00:54 +01:00
torusrxxx 3096f0dbba
Add warning to follow in dis bc tracing dont support ASLR;add TID & LastErr 2017-11-14 16:00:54 +01:00
HefrPidge 36003e3abe
GUI: sortable memory map headers for type and protections 2017-11-14 16:00:54 +01:00
torusrxxx 062dee26f6
fix crashes in trace viewer when pressing hotkeys 2017-11-08 17:12:20 +08:00
Torusrxxx 4cf0844255 Browse dialog and goto dialog support auto-complete (#1738)
* Browse dialog and goto dialog supports auto-complete
* don't use unicode string size
* Auto complete only when expression is valid symbol name
* use dbgfunctions for better flexibility and performance
* buffer last auto complete
* disable auto completion
2017-11-07 20:24:51 +01:00
torusrxxx 3116b3dde0 fixed NTSTATUS name 2017-11-07 20:24:01 +01:00
torusrxxx 01e5caf75b removed upper part check in NTSTATUS 2017-11-07 20:24:01 +01:00
torusrxxx 79e335277e lazy load mnemonic data and save 3MB memory 2017-11-07 20:24:01 +01:00
torusrxxx 990bccfffc add mem.isstring() 2017-11-07 20:24:01 +01:00
torusrxxx e6297423f9 Add NTSTATUS fmt;show str in locals tab;fix div by 0 in data copy dlg. 2017-11-07 20:24:01 +01:00
Mack Stump d67031a089 DBG: remove \\n replacement in string formatting 2017-11-07 20:23:25 +01:00
Joel Höner 15b0e73ba0 DGB: fix disp+imm printing in “zydis” command 2017-11-07 20:22:15 +01:00
Joel Höner a19b603620 GUI: fix printing of operands with non-standard size 2017-11-07 20:22:15 +01:00
fearless 2207ad9311 Added context menu icons for thread view (#1796)
* Added context menu icons for thread view

* Added thread setname icon
2017-11-05 00:51:41 +01:00
Bálint Faragó 6d45928375 GUI: add shortcuts for search in current module 2017-11-04 21:26:15 +01:00
Bálint Faragó 5e67d7ae45 GUI: minimize changes for struct in lambda MSVC 2017 compile fix 2017-11-04 21:25:46 +01:00
Bálint Faragó ecd1a3d576 GUI: small compile fixes for MSVC 2017 2017-11-04 21:25:46 +01:00
Bálint Faragó d2102e20ed GUI: handle highlighting segment registers in RegistersView 2017-11-04 21:25:26 +01:00
torusrxxx b767d39b3e cannot paste when clipboard is empty 2017-11-04 21:25:03 +01:00
torusrxxx 0985f490ef Copy hash 2017-11-04 21:24:40 +01:00
Alexandros Naskos 2f5d1135c6 Overriding a non global hotkey by a non global hotkey now asks user for confirmation 2017-11-04 21:23:49 +01:00
Duncan Ogilvie 7e3a045c4b
PROJECT: don't keep trying to compile the Zydis wrapper 2017-11-04 20:57:40 +01:00
Duncan Ogilvie ae20041edb
DBG: proper workaround for 0x prefix in GUI
also closes #1792
2017-11-04 18:08:44 +01:00
Duncan Ogilvie 4870eebd87
DBG: correctly handle imports by ordinal
closes #1795
2017-11-04 16:34:52 +01:00
Duncan Ogilvie 8c04e7b272
DBG: fix a copy&paste bug in the Zydis wrapper 2017-11-03 14:09:13 +01:00
Duncan Ogilvie f14633f20a
GUI: fix weird looking uppercase 0X 2017-11-02 22:29:47 +01:00
Duncan Ogilvie 9c639ddc5f
DBG: small improvements to winerror format function 2017-10-30 00:35:54 +01:00
Duncan Ogilvie 2f26a80b78
DBG+BRIDGE+GUI: deprecate DbgGetRegDump 2017-10-29 02:18:06 +02:00
torusrxxx ec0555dc0d
Added winerror format function and show help message for last error in reg view 2017-10-28 02:52:13 +02:00
Mattiwatti d5582c6a1f - DbgGetRegDumpEx(): copy lastStatus NTSTATUS name if requested struct size is >= sizeof(REGDUMP_V2)
- RegistersView: replace usages of REGDUMP with REGDUMP_V2 to access LastStatus register
2017-10-28 02:47:49 +02:00
Mattiwatti 8c9b11ecc9 Remove LastStatus from THREADALLINFO to preserve plugin compatibility 2017-10-28 02:47:49 +02:00
Mattiwatti 1e639585db GUI changes for TEB->LastStatusValue:
- RegistersView: add LastStatus entry to REGISTER_NAME enum
- RegistersView: add modifiable LastStatus pseudo-register under LastError with the human-readable NTSTATUS name
2017-10-28 02:47:49 +02:00
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 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