PopExecutionRequiredSettingCallback
INT64 __stdcall PopExecutionRequiredSettingCallback(
const _GUID *SettingGuid,
UINT64 *NewValue,
UINT64 ValueLength,
PVOID Context){
int v5;
unsigned int v7;
__int64 v8;
v5 = ValueLength;
v7 = -1073741811;
PopAcquirePowerRequestPushLock(1);
v8 = *(_QWORD *)&GUID_EXECUTION_REQUIRED_REQUEST_TIMEOUT.Data1 - *(_QWORD *)&SettingGuid->Data1;
if( *(_QWORD *)&GUID_EXECUTION_REQUIRED_REQUEST_TIMEOUT.Data1 == *(_QWORD *)&SettingGuid->Data1 )
v8 = *(_QWORD *)GUID_EXECUTION_REQUIRED_REQUEST_TIMEOUT.Data4 - *(_QWORD *)SettingGuid->Data4;
if( !v8 && v5 == 4 && NewValue )
{
KeCancelTimer((PKTIMER)&PopExecutionRequiredTimer);
*(_DWORD *)PopExecutionRequiredTimeout = *(_DWORD *)NewValue;
PopSetExecutionRequiredTimer();
PopHandleExecutionRequiredEnablementUpdate();
v7 = 0;
}
PopReleaseRwLock((UINT64)&PopPowerRequestLock);
return v7;
}Referenced by:
No references.