HyperDbg Debugger
Loading...
Searching...
No Matches
Callback.h
Go to the documentation of this file.
1
13#pragma once
14
15//
16// VMM Callbacks
17//
18
22 PVOID Context,
23 BOOLEAN * PostEventRequired,
24 GUEST_REGS * Regs);
25
28 UINT64 VmcallNumber,
29 UINT64 OptionalParam1,
30 UINT64 OptionalParam2,
31 UINT64 OptionalParam3);
32
35 PROTECTED_HV_RESOURCES_TYPE ResourceType,
36 PVOID Context,
38
41
44 UINT64 ViolationQualification,
45 UINT64 GuestPhysicalAddr);
46
49
50VOID
52
53VOID
55
56//
57// HyperTrace Callbacks
58//
60HyperTraceCallbackLbrIsSupported(UINT32 * Capacity, BOOLEAN * IsArchLbr);
61
62//
63// Debugging Callbacks
64//
65
68
71
74
77
80
81//
82// Pool Manager Callbacks
83//
84
87
88UINT64
90
92PoolManagerCallbackFreePool(UINT64 AddressToFree);
93
94//
95// Interception Callbacks
96//
97
98VOID
BOOLEAN PoolManagerCallbackRequestAllocation(SIZE_T Size, UINT32 Count, POOL_ALLOCATION_INTENTION Intention)
routine callback to request pool allocation
Definition Callback.c:335
BOOLEAN PoolManagerCallbackFreePool(UINT64 AddressToFree)
routine callback to free pool
Definition Callback.c:378
BOOLEAN DebuggingCallbackHandleDebugBreakpointException(UINT32 CoreId)
routine callback to handle debug breakpoint exception
Definition Callback.c:252
VMM_CALLBACK_TRIGGERING_EVENT_STATUS_TYPE VmmCallbackTriggerEvents(VMM_EVENT_TYPE_ENUM EventType, VMM_CALLBACK_EVENT_CALLING_STAGE_TYPE CallingStage, PVOID Context, BOOLEAN *PostEventRequired, GUEST_REGS *Regs)
routines callback to trigger events
Definition Callback.c:26
UINT64 PoolManagerCallbackRequestPool(POOL_ALLOCATION_INTENTION Intention, BOOLEAN RequestNewPool, UINT32 Size)
routine callback to request pool
Definition Callback.c:358
BOOLEAN VmmCallbackHandleMtfCallback(UINT32 CoreId)
routine callback to handle MTF callback
Definition Callback.c:189
BOOLEAN VmmCallbackRestoreEptState(UINT32 CoreId)
routine callback to restore EPT state
Definition Callback.c:145
VOID VmmCallbackSetLastError(UINT32 LastError)
routine callback to set last error
Definition Callback.c:47
BOOLEAN DebuggingCallbackHandleBreakpointException(UINT32 CoreId)
routine callback to handle breakpoint exception
Definition Callback.c:231
BOOLEAN VmmCallbackQueryTerminateProtectedResource(UINT32 CoreId, PROTECTED_HV_RESOURCES_TYPE ResourceType, PVOID Context, PROTECTED_HV_RESOURCES_PASSING_OVERS PassOver)
routine callback to query for termination of protected resources
Definition Callback.c:122
BOOLEAN DebuggingCallbackTriggerOnClockAndIpiEvents(UINT32 CoreId)
routine callback to trigger on clock and IPI events for checking process or thread change
Definition Callback.c:294
VOID VmmCallbackNmiBroadcastRequestHandler(UINT32 CoreId, BOOLEAN IsOnVmxNmiHandler)
routine callback to handle NMI requests
Definition Callback.c:98
BOOLEAN VmmCallbackUnhandledEptViolation(UINT32 CoreId, UINT64 ViolationQualification, UINT64 GuestPhysicalAddr)
routine callback to handle unhandled EPT violations
Definition Callback.c:167
BOOLEAN DebuggingCallbackCheckThreadInterception(UINT32 CoreId)
routine callback to handle thread interception
Definition Callback.c:273
BOOLEAN VmmCallbackVmcallHandler(UINT32 CoreId, UINT64 VmcallNumber, UINT64 OptionalParam1, UINT64 OptionalParam2, UINT64 OptionalParam3)
routine callback to handle external VMCALLs
Definition Callback.c:72
BOOLEAN DebuggingCallbackIgnoreHandlingMov2DebugRegs(UINT32 CoreId)
routine callback to ignore handling mov 2 debug registers
Definition Callback.c:313
BOOLEAN HyperTraceCallbackLbrIsSupported(UINT32 *Capacity, BOOLEAN *IsArchLbr)
routine callback to check if LBR is supported and get the LBR capacity if supported
Definition Callback.c:211
VOID InterceptionCallbackTriggerCr3ProcessChange(UINT32 CoreId)
routine callback to handle cr3 process change
Definition Callback.c:398
UCHAR BOOLEAN
Definition BasicTypes.h:35
void * PVOID
Definition BasicTypes.h:56
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.
enum _POOL_ALLOCATION_INTENTION POOL_ALLOCATION_INTENTION
Inum of intentions for buffers (buffer tag).
enum _PROTECTED_HV_RESOURCES_TYPE PROTECTED_HV_RESOURCES_TYPE
Type of protected (multi-used) resources.
enum _VMM_CALLBACK_TRIGGERING_EVENT_STATUS_TYPE VMM_CALLBACK_TRIGGERING_EVENT_STATUS_TYPE
The status of triggering events.
enum _PROTECTED_HV_RESOURCES_PASSING_OVERS PROTECTED_HV_RESOURCES_PASSING_OVERS
Things to consider when applying resources.
enum _VMM_EVENT_TYPE_ENUM VMM_EVENT_TYPE_ENUM
enum to show type of all HyperDbg events
Definition BasicTypes.h:136