Matthijs Lavrijsen
2d92c9f236
Merge pull request #54 from x64dbg/emulator-improvements
...
Emulator improvements
2020-10-10 01:34:07 +02:00
Matthijs Lavrijsen
b9378f0b0b
Add UTF-8/UTF-16 string conversion functions (taken from x64dbg)
2020-10-10 01:16:32 +02:00
Duncan Ogilvie
4c7aa4a31f
Fix a bug in the rva to offset conversion
2020-10-09 13:59:22 +02:00
Duncan Ogilvie
b79988f9cc
Merge pull request #53 from Mattiwatti/ConvertVAtoFileOffset
...
Emulator: add ConvertVAtoFileOffset
2020-10-09 13:56:14 +02:00
Matthijs Lavrijsen
807283d5ee
Emulator: add ConvertVAtoFileOffset
2020-10-04 09:45:23 +02:00
Duncan Ogilvie
958039802f
Merge pull request #51 from Mattiwatti/getpe32dataw_impl
...
Implement missing cases in GetPE32DataW_impl
2020-09-23 23:49:32 +02:00
Matthijs Lavrijsen
8dcc6573bf
Implement missing cases in GetPE32DataW_impl
2020-09-23 21:05:23 +02:00
Duncan Ogilvie
ad67ff50fc
Implement some more emulated APIs
2020-09-18 19:56:37 +02:00
Duncan Ogilvie
3413850282
references for GleeBug
2020-09-08 22:16:08 +02:00
Duncan Ogilvie
44bc9c8c15
support SafeAttach
2020-09-08 22:14:04 +02:00
Duncan Ogilvie
9fd62daff1
add fallback to ReadMemorySafe
2019-11-04 13:44:24 +01:00
Duncan Ogilvie
7ac6950874
add StaticEngine project
2019-08-19 16:14:53 +02:00
Duncan Ogilvie
85846e4ed1
Fix a dumb bug when setting memory breakpoints
2018-11-21 16:58:24 +01:00
Duncan Ogilvie
2ee4dc0f83
Implement all TitanEngine functionality (finally)
2018-10-08 20:22:23 +02:00
Duncan Ogilvie
642e8956d3
Convert MyDebugger and TitanEngineEmulator projects to VS2015
2018-10-01 15:22:13 +02:00
Duncan Ogilvie
9a2f5e4358
Implement UE_SIZEOFIMAGE in GetPE32Data*
2018-10-01 15:21:55 +02:00
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