Handle pause packets from user debugger.
30{
31
32
33
35 {
37
38 ShowMessages("the target module is loaded and a breakpoint is set to the entrypoint\n"
39 "press 'g' to reach to the entrypoint of the main module...\n");
40
41 break;
43
44
45
46
47
48 break;
49
50 default:
51 break;
52 }
53
54
55
56
58 {
59
60
61
62
66 {
67 ShowMessages("oOh, no! there might be a misinterpretation in disassembling the current instruction\n");
68 }
69 }
70
71
72
73
75 {
76
77
78
86
88 {
89
90
91
92 ShowMessages("\n");
96 1,
99 }
100 else
101 {
102
103
104
105 ShowMessages("\n");
109 1,
112 }
113 }
114
115
116
117
120 .IsOnWaitingState ==
TRUE)
121 {
123 }
124}
ACTIVE_DEBUGGING_PROCESS g_ActiveProcessDebuggingState
State of active debugging thread.
Definition globals.h:372
UINT32 HyperDbgLengthDisassemblerEngine(UCHAR *BufferToDisassemble, UINT64 BuffLength, BOOLEAN Isx86_64)
Length Disassembler engine based on Zydis.
Definition disassembler.cpp:856
INT HyperDbgDisassembler64(UCHAR *BufferToDisassemble, UINT64 BaseAddress, UINT64 Size, UINT32 MaximumInstrDecoded, BOOLEAN ShowBranchIsTakenOrNot, PRFLAGS Rflags)
Disassemble x64 assemblies.
Definition disassembler.cpp:333
INT HyperDbgDisassembler32(UCHAR *BufferToDisassemble, UINT64 BaseAddress, UINT64 Size, UINT32 MaximumInstrDecoded, BOOLEAN ShowBranchIsTakenOrNot, PRFLAGS Rflags)
Disassemble 32 bit assemblies.
Definition disassembler.cpp:373
RFLAGS * PRFLAGS
Definition pch.h:34
DEBUGGEE_PAUSING_REASON PausingReason
Definition DataTypes.h:266
UINT16 ReadInstructionLen
Definition DataTypes.h:273
UINT64 Rip
Definition DataTypes.h:263
BOOLEAN Is32Bit
Definition DataTypes.h:265
UINT64 ProcessDebuggingToken
Definition DataTypes.h:264
BYTE InstructionBytesOnRip[MAXIMUM_INSTR_SIZE]
Definition DataTypes.h:272
UINT64 Rflags
Definition DataTypes.h:269
UINT32 ThreadId
Definition DataTypes.h:268
UINT32 ProcessId
Definition DataTypes.h:267
VOID UdSetActiveDebuggingProcess(UINT64 DebuggingId, UINT64 Rip, UINT32 ProcessId, UINT32 ThreadId, BOOLEAN Is32Bit, BOOLEAN IsPaused, BYTE InstructionBytesOnRip[])
set the current active debugging process (thread)
Definition ud.cpp:112
DEBUGGER_SYNCRONIZATION_EVENTS_STATE g_UserSyncronizationObjectsHandleTable[DEBUGGER_MAXIMUM_SYNCRONIZATION_USER_DEBUGGER_OBJECTS]
In debugger (not debuggee), we save the handle of the user-mode listening thread for pauses here for ...
Definition globals.h:198