HyperDbg Debugger
Loading...
Searching...
No Matches
Debugger.h
Go to the documentation of this file.
1
12#pragma once
13
15// Debugger Internals //
17
21#define DEBUGGER_DEBUG_REGISTER_FOR_STEP_OVER 0
22
26#define DEBUGGER_DEBUG_REGISTER_FOR_THREAD_MANAGEMENT 1
27
29// Structures //
31
37{
38 //
39 // Warnings : Only list entries should be in this list, nothing else
40 //
41
42 //
43 // Do not add any variables to this this list, just LIST_ENTRY is allowed
44 //
45 LIST_ENTRY HiddenHookReadAndWriteAndExecuteEventsHead; // HIDDEN_HOOK_READ_AND_WRITE_AND_EXECUTE
46 LIST_ENTRY HiddenHookReadAndWriteEventsHead; // HIDDEN_HOOK_READ_AND_WRITE
47 LIST_ENTRY HiddenHookReadAndExecuteEventsHead; // HIDDEN_HOOK_READ_AND_EXECUTE
48 LIST_ENTRY HiddenHookWriteAndExecuteEventsHead; // HIDDEN_HOOK_WRITE_AND_EXECUTE
49 LIST_ENTRY HiddenHookReadEventsHead; // HIDDEN_HOOK_READ
50 LIST_ENTRY HiddenHookWriteEventsHead; // HIDDEN_HOOK_WRITE
51 LIST_ENTRY HiddenHookExecuteEventsHead; // HIDDEN_HOOK_EXECUTE
52 LIST_ENTRY EptHook2sExecDetourEventsHead; // HIDDEN_HOOK_EXEC_DETOURS
53 LIST_ENTRY EptHookExecCcEventsHead; // HIDDEN_HOOK_EXEC_CC
54 LIST_ENTRY SyscallHooksEferSyscallEventsHead; // SYSCALL_HOOK_EFER_SYSCALL
55 LIST_ENTRY SyscallHooksEferSysretEventsHead; // SYSCALL_HOOK_EFER_SYSRET
56 LIST_ENTRY CpuidInstructionExecutionEventsHead; // CPUID_INSTRUCTION_EXECUTION
57 LIST_ENTRY RdmsrInstructionExecutionEventsHead; // RDMSR_INSTRUCTION_EXECUTION
58 LIST_ENTRY WrmsrInstructionExecutionEventsHead; // WRMSR_INSTRUCTION_EXECUTION
59 LIST_ENTRY ExceptionOccurredEventsHead; // EXCEPTION_OCCURRED
60 LIST_ENTRY TscInstructionExecutionEventsHead; // TSC_INSTRUCTION_EXECUTION
61 LIST_ENTRY PmcInstructionExecutionEventsHead; // PMC_INSTRUCTION_EXECUTION
62 LIST_ENTRY InInstructionExecutionEventsHead; // IN_INSTRUCTION_EXECUTION
63 LIST_ENTRY OutInstructionExecutionEventsHead; // OUT_INSTRUCTION_EXECUTION
64 LIST_ENTRY DebugRegistersAccessedEventsHead; // DEBUG_REGISTERS_ACCESSED
65 LIST_ENTRY ExternalInterruptOccurredEventsHead; // EXTERNAL_INTERRUPT_OCCURRED
66 LIST_ENTRY VmcallInstructionExecutionEventsHead; // VMCALL_INSTRUCTION_EXECUTION
67 LIST_ENTRY TrapExecutionModeChangedEventsHead; // TRAP_EXECUTION_MODE_CHANGED
68 LIST_ENTRY TrapExecutionInstructionTraceEventsHead; // TRAP_EXECUTION_INSTRUCTION_TRACE
69 LIST_ENTRY ControlRegister3ModifiedEventsHead; // CONTROL_REGISTER_3_MODIFIED
70 LIST_ENTRY ControlRegisterModifiedEventsHead; // CONTROL_REGISTER_MODIFIED
71 LIST_ENTRY XsetbvInstructionExecutionEventsHead; // XSETBV_INSTRUCTION_EXECUTION
72
74
80{
81 UINT64 Tag; // Action tag is same as Event's tag
82 UINT32 ActionOrderCode; // The code for this action (it also shows the order)
83 LIST_ENTRY ActionsList; // Holds the link list of next actions
84 DEBUGGER_EVENT_ACTION_TYPE_ENUM ActionType; // What action we wanna perform
85 BOOLEAN ImmediatelySendTheResults; // should we send the results immediately
86 // or store them in another structure and
87 // send multiple of them each time
88
90 ScriptConfiguration; // If it's run script
91
93 RequestedBuffer; // if it's a custom code and needs a buffer then we use
94 // this structs
95
96 UINT32 CustomCodeBufferSize; // if null, means it's not custom code type
97 PVOID CustomCodeBufferAddress; // address of custom code if any
98
100
101/* ==============================================================================================
102 */
103
108typedef struct _DEBUGGER_EVENT
109{
110 UINT64 Tag;
111 LIST_ENTRY EventsOfSameTypeList; // Linked-list of events of a same type
114 UINT32 CoreId; // determines the core index to apply this event to, if it's
115 // 0xffffffff means that we have to apply it to all cores
116
117 UINT32
118 ProcessId; // determines the pid to apply this event to, if it's
119 // 0xffffffff means that we have to apply it to all processes
120
121 LIST_ENTRY ActionsListHead; // Each entry is in DEBUGGER_EVENT_ACTION struct
122 UINT32 CountOfActions; // The total count of actions
123
124 BOOLEAN EnableShortCircuiting; // indicates whether the short-circuiting event
125 // is enabled or not for this event
126
128 // of the event (whether it's a pre- or post- event)
129
130 DEBUGGER_EVENT_OPTIONS InitOptions; // The initial options of the event (used when event was created and sent)
131
132 DEBUGGER_EVENT_OPTIONS Options; // The options of the event (used when event is applied in the debugger)
133
134 UINT32 ConditionsBufferSize; // if null, means uncoditional
135 PVOID ConditionBufferAddress; // Address of the condition buffer (most of the
136 // time at the end of this buffer)
137
139
140/* ==============================================================================================
141 */
142
144// Data Type //
146
159typedef UINT64
161
175typedef PVOID
176DebuggerRunCustomCodeFunc(PVOID PreAllocatedBufferAddress, PGUEST_REGS Regs, PVOID Context);
177
179// Functions //
181
182UINT64
183DebuggerGetRegValueWrapper(PGUEST_REGS GuestRegs, UINT32 /* REGS_ENUM */ RegId);
184
185UINT32
187
188VOID
190
193
196
199
202
203VOID
205
206VOID
208
211 UINT32 CoreId,
212 UINT32 ProcessId,
213 VMM_EVENT_TYPE_ENUM EventType,
214 UINT64 Tag,
215 DEBUGGER_EVENT_OPTIONS * Options,
216 UINT32 ConditionsBufferSize,
217 PVOID ConditionBuffer,
218 PDEBUGGER_EVENT_AND_ACTION_RESULT ResultsToReturn,
219 BOOLEAN InputFromVmxRoot);
220
224 BOOLEAN SendTheResultsImmediately,
225 PDEBUGGER_EVENT_REQUEST_CUSTOM_CODE InTheCaseOfCustomCode,
227 PDEBUGGER_EVENT_AND_ACTION_RESULT ResultsToReturn,
228 BOOLEAN InputFromVmxRoot);
229
232
236 PVOID Context,
237 BOOLEAN * PostEventRequired,
238 GUEST_REGS * Regs);
239
242
244DebuggerRemoveEvent(UINT64 Tag, BOOLEAN PoolManagerAllocatedMemory);
245
248
251 PDEBUGGER_EVENT_AND_ACTION_RESULT ResultsToReturn,
252 BOOLEAN InputFromVmxRoot);
253
256 PDEBUGGER_EVENT_AND_ACTION_RESULT ResultsToReturn,
257 BOOLEAN InputFromVmxRoot);
258
261 PDEBUGGER_EVENT_AND_ACTION_RESULT ResultsToReturn,
262 BOOLEAN InputFromVmxRoot);
263
265DebuggerParseEventsModification(PDEBUGGER_MODIFY_EVENTS DebuggerEventModificationRequest,
266 BOOLEAN InputFromVmxRoot,
267 BOOLEAN PoolManagerAllocatedMemory);
268
270DebuggerTerminateEvent(UINT64 Tag, BOOLEAN InputFromVmxRoot);
271
272UINT32
273DebuggerEventListCount(PLIST_ENTRY TargetEventList);
274
275VOID
276DebuggerClearAllEvents(BOOLEAN InputFromVmxRoot, BOOLEAN PoolManagerAllocatedMemory);
277
280
281UINT32
282DebuggerEventListCountByCore(PLIST_ENTRY TargetEventList, UINT32 TargetCore);
283
284UINT32
286
287UINT32
289
291DebuggerIsTagValid(UINT64 Tag);
292
295
298
301
303DebuggerClearEvent(UINT64 Tag, BOOLEAN InputFromVmxRoot, BOOLEAN PoolManagerAllocatedMemory);
304
305VOID
307
308VOID
310
313
314VOID
316
317PLIST_ENTRY
POOL_TYPE SIZE_T ULONG Tag
Definition Hooks.h:89
UCHAR BOOLEAN
Definition BasicTypes.h:35
void * PVOID
Definition BasicTypes.h:56
struct GUEST_REGS * PGUEST_REGS
unsigned int UINT32
Definition BasicTypes.h:54
enum _VMM_CALLBACK_EVENT_CALLING_STAGE_TYPE VMM_CALLBACK_EVENT_CALLING_STAGE_TYPE
Type of calling the event.
struct _DEBUGGER_TRIGGERED_EVENT_DETAILS DEBUGGER_TRIGGERED_EVENT_DETAILS
The structure of detail of a triggered event in HyperDbg.
enum _VMM_CALLBACK_TRIGGERING_EVENT_STATUS_TYPE VMM_CALLBACK_TRIGGERING_EVENT_STATUS_TYPE
The status of triggering events.
enum _DEBUGGER_EVENT_ACTION_TYPE_ENUM DEBUGGER_EVENT_ACTION_TYPE_ENUM
Type of Actions.
struct _DEBUGGER_GENERAL_EVENT_DETAIL * PDEBUGGER_GENERAL_EVENT_DETAIL
enum _VMM_EVENT_TYPE_ENUM VMM_EVENT_TYPE_ENUM
enum to show type of all HyperDbg events
struct _DEBUGGER_MODIFY_EVENTS * PDEBUGGER_MODIFY_EVENTS
struct _DEBUGGER_EVENT_AND_ACTION_RESULT * PDEBUGGER_EVENT_AND_ACTION_RESULT
struct _DEBUGGER_GENERAL_ACTION * PDEBUGGER_GENERAL_ACTION
struct _DEBUGGER_EVENT_OPTIONS DEBUGGER_EVENT_OPTIONS
request for performing a short-circuiting event
struct _DEBUGGEE_SCRIPT_PACKET DEBUGGEE_SCRIPT_PACKET
The structure of script packet in HyperDbg.
struct _DEBUGGER_EVENT_ACTION_RUN_SCRIPT_CONFIGURATION DEBUGGER_EVENT_ACTION_RUN_SCRIPT_CONFIGURATION
Used for run the script.
struct _DEBUGGER_EVENT_REQUEST_BUFFER DEBUGGER_EVENT_REQUEST_BUFFER
used in the case of requesting a "request buffer"
struct _DEBUGGER_EVENT_ACTION_RUN_SCRIPT_CONFIGURATION * PDEBUGGER_EVENT_ACTION_RUN_SCRIPT_CONFIGURATION
struct _DEBUGGER_EVENT_REQUEST_CUSTOM_CODE * PDEBUGGER_EVENT_REQUEST_CUSTOM_CODE
BOOLEAN DebuggerInitializeScriptEngine()
Initialize script engine global variables and per-core stack buffers.
Definition Debugger.c:56
BOOLEAN DebuggerParseEvent(PDEBUGGER_GENERAL_EVENT_DETAIL EventDetails, PDEBUGGER_EVENT_AND_ACTION_RESULT ResultsToReturn, BOOLEAN InputFromVmxRoot)
Routine for parsing events.
Definition Debugger.c:3163
VOID DebuggerPerformActions(PROCESSOR_DEBUGGING_STATE *DbgState, DEBUGGER_EVENT *Event, DEBUGGER_TRIGGERED_EVENT_DETAILS *EventTriggerDetail)
Run a special event's action(s).
Definition Debugger.c:1604
BOOLEAN DebuggerApplyEvent(PDEBUGGER_EVENT Event, PDEBUGGER_EVENT_AND_ACTION_RESULT ResultsToReturn, BOOLEAN InputFromVmxRoot)
Applying events.
Definition Debugger.c:2922
BOOLEAN DebuggerParseAction(PDEBUGGER_GENERAL_ACTION Action, PDEBUGGER_EVENT_AND_ACTION_RESULT ResultsToReturn, BOOLEAN InputFromVmxRoot)
Routine for validating and parsing actions that are coming from the user-mode.
Definition Debugger.c:3307
UINT32 DebuggerEventListCountByEventType(VMM_EVENT_TYPE_ENUM EventType, UINT32 TargetCore)
Count the list of events by a special event type that are activate on a target core.
Definition Debugger.c:2266
BOOLEAN DebuggerQueryDebuggerStatus()
Detect whether the user or kernel debugger is active or not.
Definition Debugger.c:2532
BOOLEAN DebuggerTerminateEvent(UINT64 Tag, BOOLEAN InputFromVmxRoot)
Terminate one event's effect by its tag.
Definition Debugger.c:3483
BOOLEAN DebuggerRegisterEvent(PDEBUGGER_EVENT Event)
Register an event to a list of active events.
Definition Debugger.c:1113
PDEBUGGER_EVENT DebuggerGetEventByTag(UINT64 Tag)
Find event object by tag.
Definition Debugger.c:1889
VOID DebuggerUninitialize()
Uninitialize Debugger Structures and Routines.
Definition Debugger.c:354
BOOLEAN DebuggerParseEventsModification(PDEBUGGER_MODIFY_EVENTS DebuggerEventModificationRequest, BOOLEAN InputFromVmxRoot, BOOLEAN PoolManagerAllocatedMemory)
Parse and validate requests to enable/disable/clear from the user-mode.
Definition Debugger.c:3728
UINT32 DebuggerEventListCountByCore(PLIST_ENTRY TargetEventList, UINT32 TargetCore)
Count the list of events in a special list that are activate on a target core.
Definition Debugger.c:2228
BOOLEAN DebuggerEnableOrDisableAllEvents(BOOLEAN IsEnable)
Enable or disable all events from all the types.
Definition Debugger.c:1932
UINT32 DebuggerExceptionEventBitmapMask(UINT32 CoreIndex)
Get the mask related to the !exception command for the target core.
Definition Debugger.c:2304
BOOLEAN DebuggerInitializeVmmOperations()
Initialize VMM operations (events and related operations).
Definition Debugger.c:148
struct _DEBUGGER_CORE_EVENTS DEBUGGER_CORE_EVENTS
List of all the different events.
VOID DebuggerUninitializeVmmOperations()
Uninitialize Debugger VMM Operations (Events and other related operations).
Definition Debugger.c:299
VOID DebuggerPerformRunTheCustomCode(PROCESSOR_DEBUGGING_STATE *DbgState, DEBUGGER_EVENT_ACTION *Action, DEBUGGER_TRIGGERED_EVENT_DETAILS *EventTriggerDetail)
Manage running the custom code action.
Definition Debugger.c:1791
BOOLEAN DebuggerPerformRunScript(PROCESSOR_DEBUGGING_STATE *DbgState, DEBUGGER_EVENT_ACTION *Action, DEBUGGEE_SCRIPT_PACKET *ScriptDetails, DEBUGGER_TRIGGERED_EVENT_DETAILS *EventTriggerDetail)
Managing run script action.
Definition Debugger.c:1662
BOOLEAN DebuggerInitialize()
Initialize Debugger Structures and Routines.
Definition Debugger.c:227
VMM_CALLBACK_TRIGGERING_EVENT_STATUS_TYPE DebuggerTriggerEvents(VMM_EVENT_TYPE_ENUM EventType, VMM_CALLBACK_EVENT_CALLING_STAGE_TYPE CallingStage, PVOID Context, BOOLEAN *PostEventRequired, GUEST_REGS *Regs)
Trigger events of a special type to be managed by debugger.
Definition Debugger.c:1148
BOOLEAN DebuggerDisableEvent(UINT64 Tag)
Disable an event by tag.
Definition Debugger.c:2397
UINT64 DebuggerGetRegValueWrapper(PGUEST_REGS GuestRegs, UINT32 RegId)
A wrapper for GetRegValue() in script-engine.
Definition Debugger.c:21
PDEBUGGER_EVENT_ACTION DebuggerAddActionToEvent(PDEBUGGER_EVENT Event, DEBUGGER_EVENT_ACTION_TYPE_ENUM ActionType, BOOLEAN SendTheResultsImmediately, PDEBUGGER_EVENT_REQUEST_CUSTOM_CODE InTheCaseOfCustomCode, PDEBUGGER_EVENT_ACTION_RUN_SCRIPT_CONFIGURATION InTheCaseOfRunScript, PDEBUGGER_EVENT_AND_ACTION_RESULT ResultsToReturn, BOOLEAN InputFromVmxRoot)
Create an action and add the action to an event.
Definition Debugger.c:707
VOID DebuggerPerformBreakToDebugger(PROCESSOR_DEBUGGING_STATE *DbgState, DEBUGGER_EVENT_ACTION *Action, DEBUGGER_TRIGGERED_EVENT_DETAILS *EventTriggerDetail)
Manage breaking to the debugger action.
Definition Debugger.c:1852
struct _DEBUGGER_EVENT DEBUGGER_EVENT
The structure of events in HyperDbg.
PVOID DebuggerRunCustomCodeFunc(PVOID PreAllocatedBufferAddress, PGUEST_REGS Regs, PVOID Context)
The prototype that Custom code buffers are called.
Definition Debugger.h:176
UINT32 DebuggerGetLastError()
Debugger get the last error.
Definition Debugger.c:32
struct _DEBUGGER_EVENT * PDEBUGGER_EVENT
UINT32 DebuggerEventListCount(PLIST_ENTRY TargetEventList)
Count the list of events in a special list.
Definition Debugger.c:2085
BOOLEAN DebuggerIsTagValid(UINT64 Tag)
Detect whether the tag exists or not.
Definition Debugger.c:2505
BOOLEAN DebuggerRemoveEvent(UINT64 Tag, BOOLEAN PoolManagerAllocatedMemory)
Remove the event by its tags and also remove its actions and de-allocate their buffers.
Definition Debugger.c:2681
VOID DebuggerSetLastError(UINT32 LastError)
Debugger set the last error.
Definition Debugger.c:44
struct _DEBUGGER_CORE_EVENTS * PDEBUGGER_CORE_EVENTS
BOOLEAN DebuggerEnableEvent(UINT64 Tag)
Enable an event by tag.
Definition Debugger.c:2336
struct _DEBUGGER_EVENT_ACTION DEBUGGER_EVENT_ACTION
The structure of actions in HyperDbg.
BOOLEAN DebuggerQueryStateEvent(UINT64 Tag)
returns whether an event is enabled/disabled by tag
Definition Debugger.c:2370
PDEBUGGER_EVENT DebuggerCreateEvent(BOOLEAN Enabled, UINT32 CoreId, UINT32 ProcessId, VMM_EVENT_TYPE_ENUM EventType, UINT64 Tag, DEBUGGER_EVENT_OPTIONS *Options, UINT32 ConditionsBufferSize, PVOID ConditionBuffer, PDEBUGGER_EVENT_AND_ACTION_RESULT ResultsToReturn, BOOLEAN InputFromVmxRoot)
Create an Event Object.
Definition Debugger.c:421
BOOLEAN DebuggerClearEvent(UINT64 Tag, BOOLEAN InputFromVmxRoot, BOOLEAN PoolManagerAllocatedMemory)
Clear an event by tag.
Definition Debugger.c:2434
struct _DEBUGGER_EVENT_ACTION * PDEBUGGER_EVENT_ACTION
PLIST_ENTRY DebuggerGetEventListByEventType(VMM_EVENT_TYPE_ENUM EventType)
Get List of event based on event type.
Definition Debugger.c:2116
VOID DebuggerClearAllEvents(BOOLEAN InputFromVmxRoot, BOOLEAN PoolManagerAllocatedMemory)
Clear all events.
Definition Debugger.c:2471
UINT64 DebuggerCheckForCondition(PGUEST_REGS Regs, PVOID Context)
The prototype that Condition codes are called.
Definition Debugger.h:160
BOOLEAN DebuggerInitializeTrapsAndBreakpoints()
Initialize trap flag state and breakpoint related structures.
Definition Debugger.c:118
struct _PROCESSOR_DEBUGGING_STATE PROCESSOR_DEBUGGING_STATE
Saves the debugger state.
List of all the different events.
Definition Debugger.h:37
LIST_ENTRY HiddenHookReadAndExecuteEventsHead
Definition Debugger.h:47
LIST_ENTRY EptHookExecCcEventsHead
Definition Debugger.h:53
LIST_ENTRY PmcInstructionExecutionEventsHead
Definition Debugger.h:61
LIST_ENTRY OutInstructionExecutionEventsHead
Definition Debugger.h:63
LIST_ENTRY HiddenHookReadAndWriteEventsHead
Definition Debugger.h:46
LIST_ENTRY ControlRegister3ModifiedEventsHead
Definition Debugger.h:69
LIST_ENTRY HiddenHookReadEventsHead
Definition Debugger.h:49
LIST_ENTRY ExternalInterruptOccurredEventsHead
Definition Debugger.h:65
LIST_ENTRY HiddenHookReadAndWriteAndExecuteEventsHead
Definition Debugger.h:45
LIST_ENTRY EptHook2sExecDetourEventsHead
Definition Debugger.h:52
LIST_ENTRY RdmsrInstructionExecutionEventsHead
Definition Debugger.h:57
LIST_ENTRY HiddenHookExecuteEventsHead
Definition Debugger.h:51
LIST_ENTRY VmcallInstructionExecutionEventsHead
Definition Debugger.h:66
LIST_ENTRY ControlRegisterModifiedEventsHead
Definition Debugger.h:70
LIST_ENTRY SyscallHooksEferSyscallEventsHead
Definition Debugger.h:54
LIST_ENTRY InInstructionExecutionEventsHead
Definition Debugger.h:62
LIST_ENTRY HiddenHookWriteEventsHead
Definition Debugger.h:50
LIST_ENTRY TrapExecutionInstructionTraceEventsHead
Definition Debugger.h:68
LIST_ENTRY XsetbvInstructionExecutionEventsHead
Definition Debugger.h:71
LIST_ENTRY WrmsrInstructionExecutionEventsHead
Definition Debugger.h:58
LIST_ENTRY DebugRegistersAccessedEventsHead
Definition Debugger.h:64
LIST_ENTRY HiddenHookWriteAndExecuteEventsHead
Definition Debugger.h:48
LIST_ENTRY ExceptionOccurredEventsHead
Definition Debugger.h:59
LIST_ENTRY CpuidInstructionExecutionEventsHead
Definition Debugger.h:56
LIST_ENTRY TscInstructionExecutionEventsHead
Definition Debugger.h:60
LIST_ENTRY TrapExecutionModeChangedEventsHead
Definition Debugger.h:67
LIST_ENTRY SyscallHooksEferSysretEventsHead
Definition Debugger.h:55
The structure of actions in HyperDbg.
Definition Debugger.h:80
DEBUGGER_EVENT_ACTION_RUN_SCRIPT_CONFIGURATION ScriptConfiguration
Definition Debugger.h:90
LIST_ENTRY ActionsList
Definition Debugger.h:83
PVOID CustomCodeBufferAddress
Definition Debugger.h:97
UINT32 CustomCodeBufferSize
Definition Debugger.h:96
DEBUGGER_EVENT_ACTION_TYPE_ENUM ActionType
Definition Debugger.h:84
UINT64 Tag
Definition Debugger.h:81
DEBUGGER_EVENT_REQUEST_BUFFER RequestedBuffer
Definition Debugger.h:93
BOOLEAN ImmediatelySendTheResults
Definition Debugger.h:85
UINT32 ActionOrderCode
Definition Debugger.h:82
The structure of events in HyperDbg.
Definition Debugger.h:109
UINT32 ConditionsBufferSize
Definition Debugger.h:134
PVOID ConditionBufferAddress
Definition Debugger.h:135
VMM_CALLBACK_EVENT_CALLING_STAGE_TYPE EventMode
Definition Debugger.h:127
LIST_ENTRY ActionsListHead
Definition Debugger.h:121
UINT32 CountOfActions
Definition Debugger.h:122
LIST_ENTRY EventsOfSameTypeList
Definition Debugger.h:111
BOOLEAN EnableShortCircuiting
Definition Debugger.h:124
DEBUGGER_EVENT_OPTIONS InitOptions
Definition Debugger.h:130
UINT32 CoreId
Definition Debugger.h:114
BOOLEAN Enabled
Definition Debugger.h:113
UINT64 Tag
Definition Debugger.h:110
DEBUGGER_EVENT_OPTIONS Options
Definition Debugger.h:132
UINT32 ProcessId
Definition Debugger.h:118
VMM_EVENT_TYPE_ENUM EventType
Definition Debugger.h:112
Definition BasicTypes.h:136