Commit Graph

221 Commits

Author SHA1 Message Date
Duncan Ogilvie 8f3dacb9b0 change license 2018-08-01 16:47:57 +02:00
Duncan Ogilvie ae2c715811 add option to not create a process in a new console 2018-06-22 11:32:06 +02:00
Duncan Ogilvie b0376e7815 convert project to VS2015 2018-06-11 18:13:11 +02:00
Duncan Ogilvie cd01d22686
some locking 2017-12-31 15:13:53 +01:00
Duncan Ogilvie 3fb8539c7a
refactor registers to be read lazily 2017-12-31 14:12:26 +01:00
Duncan Ogilvie 7343c99cfa
add debug print functionality 2017-12-29 17:13:13 +01:00
Duncan Ogilvie 66c06075b5
support TLS callbacks in GetPE32Data 2017-12-28 23:30:10 +01:00
Duncan Ogilvie d4aecf8b30
initial support for x87 and XMM registers 2017-12-28 22:12:19 +01:00
Duncan Ogilvie 7dc011516d
correctly handle breakpoints happening before the system breakpoint 2017-12-28 21:07:19 +01:00
Duncan Ogilvie 2dd2cb1e3d
remove useless dll housekeeping 2017-12-28 21:06:21 +01:00
Duncan Ogilvie 61cf4e8672
remove unused exports 2017-12-28 15:38:05 +01:00
Duncan Ogilvie 2e835e23ff
implement relocation in GetPE32DataW 2017-12-13 04:59:11 +01:00
Duncan Ogilvie 8b4d39653e
implement HideDebugger 2017-12-11 21:11:55 +01:00
Duncan Ogilvie 4cb07be1f5
fix INVALID_HANDLE_VALUE exception on attach
See:
* https://github.com/x64dbg/x64dbg/issues/1777
* https://github.com/x64dbg/x64dbg/issues/1759
2017-12-11 20:50:32 +01:00
Duncan Ogilvie 719f349b67
implement TitanOpenProcess and TitanOpenThread 2017-12-11 20:49:25 +01:00
Duncan Ogilvie 79e52d2d2c
remove unused librarian breakpoint code 2017-12-11 20:49:00 +01:00
mrexodia d94ad0e74d
fixed GetPE32DataW and GetPE32DataFromMappedFile for loading x32 files on x64 2017-07-03 07:42:55 +02:00
mrexodia 7da59f841d
cache processFromHandle and threadFromHandle (14k events/s -> 20k events/s) 2017-06-30 14:41:23 +02:00
mrexodia 7a4d0b2ff4
fixed a stack overflow in MemReadSafe 2017-06-30 14:41:22 +02:00
Duncan Ogilvie d681c8ee76 Update README.md 2017-06-30 12:52:38 +02:00
mrexodia 0b18c04e1e
remove lazy context 2017-06-04 18:26:42 +02:00
mrexodia 22c5c2189c
added some more pe files to test 2017-05-26 03:52:39 +02:00
mrexodia 90c2764676
removed some asserts 2017-05-23 23:05:54 +02:00
mrexodia b0b4f5ded3
initial GleeBug implementation ready 2017-05-23 23:02:04 +02:00
mrexodia ebe1973c26
added used cases for WhichData in PE query functions 2017-05-23 19:56:39 +02:00
mrexodia b23675562f
implemented GetPEBLocation + GetTEBLocation + removed unused ImporterGetRemoteAPIAddress 2017-05-23 19:41:09 +02:00
mrexodia 1747679017
fixed a typo in the API name 2017-05-23 19:28:11 +02:00
mrexodia 75198259e9
updated Zyan 2017-05-23 19:25:30 +02:00
mrexodia 7518be864e
fixed the attach breakpoint callback location 2017-05-23 19:24:18 +02:00
mrexodia 75f968fdf0
switch to zyan + various small fixes with lazy registers 2017-05-05 17:32:57 +02:00
mrexodia 14b99382df
remove IsJumpGoingToExecuteEx SingleStep and ThreaderCreateRemoteThread 2017-04-08 04:44:39 +02:00
mrexodia 1274f2b481
workaround for a bug in GetProcessDEPPolicy 2017-02-26 22:41:15 +01:00
mrexodia 98ff237193
some small fixes + remove BreakpointInfo.enabled 2017-02-24 18:25:47 +01:00
0xbadc0de1 b76d500c42 Membp (#45)
* Provided implementation for :

Debugger::exceptionGuardPage(const EXCEPTION_RECORD & exceptionRecord, bool firstChance)

*  void Debugger::exceptionGuardPage(const EXCEPTION_RECORD & exceptionRecord, bool firstChance)

>_> with spaces.

* . Bugfix : If there is a page exception risen upon a page that is indeed being used by one of our breakpoints, then we simply restore the old page protections, singlestep and then apply the new page protection.

. exceptionAccessViolation implementation - the code looks almost equal to exceptionGuardPage except for the verifications made to try to spot on cases where the program uses unusual page permissions (in this case the program should then be granted the right to handle the self generated exception).

* . Minor bugfix on exceptionGuardPage.

* staff

* Final Fixes. Now I suppose everything works correctly. Test by yourself.
2017-02-24 18:16:15 +01:00
mrexodia 6c6e181ff5
lazily read/write context for all threads 2017-02-24 18:13:36 +01:00
mrexodia 732abb9ce9
fixed memory type 2017-02-07 13:09:36 +01:00
mrexodia 0b0caa6f3e
fixed DeleteMemoryBreakpoint 2017-02-07 12:12:47 +01:00
mrexodia 31cbdc957b
comments on the memory breakpoint handling code 2017-02-04 06:06:45 +01:00
mrexodia ed6c2b1f33
updated capstone_wrapper 2017-02-04 06:06:22 +01:00
mrexodia 2198e3c4e3
32 bit testing code for memory breakpoints 2017-02-04 05:19:35 +01:00
mrexodia 7c38a18c5f
editorconfig+gitignore 2017-01-11 23:42:40 +01:00
mrexodia 0b93e3df55
updated for compatibility with the latest TitanEngine 2017-01-07 17:02:07 +01:00
mrexodia a45b112fa1
changed to Mozilla Public License 2.0 2017-01-06 03:58:15 +01:00
mrexodia aae243aa33
more comments about MembpTest 2017-01-04 03:26:34 +01:00
mrexodia c55d5222f3
comment about MembpTest 2017-01-04 03:25:20 +01:00
mrexodia cf207f9d33
added some TODO entries related to memory breakpoints 2017-01-04 03:16:31 +01:00
mrexodia c40e9e68ce
Merge branch 'master' into membp
# Conflicts:
#	GleeBug/Debugger.Loop.Exception.cpp
2017-01-04 03:11:50 +01:00
mrexodia 9cc0b8c756
updated capstone_wrapper 2017-01-04 03:10:22 +01:00
mrexodia c5197f92d5
added various functions to TitanEngineEmulator 2017-01-04 03:08:21 +01:00
mrexodia 56fe293287
implemented attach functionality 2017-01-04 03:07:52 +01:00