HalpQueryAcpiWakeAlarmSystemPowerState
NTSTATUS __stdcall HalpQueryAcpiWakeAlarmSystemPowerState(_SYSTEM_POWER_STATE *SytemPowerState){
_DEVICE_OBJECT *DynamicDevicePointer;
NTSTATUS Status;
PIRP *v4;
_IO_STATUS_BLOCK IoStatusBlock;
__int128 Object;
__int64 v8;
Object = 0i64;
v8 = 0i64;
IoStatusBlock = 0i64;
DynamicDevicePointer = (_DEVICE_OBJECT *)HalpGetDynamicDevicePointer();
if( !DynamicDevicePointer )
return -1073741823;
KeInitializeEvent((INT64)&Object, 0, 0);
v4 = IoBuildDeviceIoControlRequest(
0x294218u,
DynamicDevicePointer,
0i64,
0,
SytemPowerState,
4u,
0,
(PKEVENT)&Object,
&IoStatusBlock);
if( v4 )
{
Status = IofCallDriver((UINT64)DynamicDevicePointer, (UINT64)v4);
if( Status == 259 )
{
KeWaitForSingleObject((UINT64)&Object, 0, 0, 0, 0i64);
Status = IoStatusBlock.Status;
}
}
else
{
Status = -1073741670;
}
HalPutDmaAdapter((PADAPTER_OBJECT)DynamicDevicePointer);
return Status;
}Referenced by:
HaliQuerySystemInformation