INTSTATUS IntWinHalUnprotectHalHeapExecs(void)
Deactivates the HAL heap execution protection.
struct _WIN_HAL_DATA * PWIN_HAL_DATA
INTSTATUS IntWinHalProtectHalIntCtrl(void)
Protects the HAL interrupt controller against writes.
INTSTATUS IntWinHalCreateHalData(void)
Initializes gHalData.
void IntWinHalUninit(void)
Frees any resources held by gHalData and removes all the HAL protections.
int INTSTATUS
The status data type.
Describes a kernel driver.
INTSTATUS IntWinHalProtectHalDispatchTable(void)
Activates the HAL dispatch table protection.
void * HalIntCtrlWriteHook
The HAL interrupt controller write hook object.
INTSTATUS IntWinHalUnprotectHalDispatchTable(void)
Deactivates the HAL dispatch table protection.
DWORD HalHeapSize
The size of the HAL heap.
void * HalDispatchIntegrityHook
The HAL dispatch table integrity hook object.
struct _WIN_HAL_DATA WIN_HAL_DATA
Hal information.
INTSTATUS IntWinHalUnprotectHalIntCtrl(void)
Deactivates the HAL interrupt controller write protection.
QWORD HalHeapAddress
The guest virtual address of the HAL heap.
DWORD HalDispatchTableSize
The size of the HAL dispatch table.
KERNEL_DRIVER * OwnerHalModule
The hal.dll kernel module or ntoskrnl.exe.
INTSTATUS IntWinHalUpdateProtection(void)
Updates any of the HAL protections.
QWORD HalDispatchTableAddress
The guest virtual address of the HAL dispatch table.
QWORD HalIntCtrlAddress
The guest virtual address of the HAL interrupt controller.
void * HalHeapExecHook
The HAL heap execution hook object.
INTSTATUS IntWinHalProtectHalHeapExecs(void)
Hooks the HAL heap against execution.