PopExecutionRequiredSettingCallback

NTSTATUS __stdcall PopExecutionRequiredSettingCallback(
        const _GUID *SettingGuid,
        UINT64 *NewValue,
        UINT64 ValueLength,
        PVOID Context){
  int v5; 
  NTSTATUS v7; 
  __int64 v8; 

  v5 = ValueLength;
  v7 = -1073741811;
  PopAcquirePowerRequestPushLock(1u);
  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((INT64)&stru_140C23628 + 5688);
    PopExecutionRequiredTimeout = *(_DWORD *)NewValue;
    PopSetExecutionRequiredTimer();
    PopHandleExecutionRequiredEnablementUpdate();
    v7 = 0;
  }
  PopReleaseRwLock((_POP_RW_LOCK *)((char *)&stru_140C23628 + 5864));
  return v7;
}

Referenced by:

No references.