PopPdcIdleResiliencyCallback

NTSTATUS __stdcall PopPdcIdleResiliencyCallback(INT64 a1, UINT8 a2){
  int v2; 
  unsigned int v3; 
  INT64 v4; 
  INT64 v5; 
  int Data; 

  v2 = a2;
  v3 = a1;
  PopAcquirePolicyLock();
  PopPdcIdleResiliency = v2;
  Data = v2;
  PopSetPowerSettingValueAcDc((_LPCGUID)&GUID_PDC_IDLE_RESILIENCY_ENGAGED, 4ui64, &Data);
  PopCheckResiliencyScenarios();
  PopAccumulateNonActivatedCpuTime(v2, &qword_140C4FCA8, &qword_140C4FCB0);
  LODWORD(v4) = PpmQueryTime();
  v5 = v4;
  if( (_BYTE)v2 )
  {
    qword_140C4FC78 = v4;
    if( (*(&stru_140C23628 + 4232) & 4) != 0 )
      PopFxResumeDeviceAccounting();
    PpmIdleCsVetoAccountingResiliencyUpdate(1u);
    PopUpdateNonAttributedCpuTimeReference(0);
    PopDripsWatchdogStartWatchdog();
    PpmDisableHighPerfRequestDeferredExpiration(1);
    PopFxBeginDeviceIRPhaseAccounting(v5);
  }
  else
  {
    SourceTime += v4 - qword_140C4FC78;
    PopFxEndDeviceIRPhaseAccounting(v4);
    if( (*(&stru_140C23628 + 4232) & 4) != 0 )
      PopFxPauseDeviceAccounting();
    PpmIdleCsVetoAccountingResiliencyUpdate(0);
    PopUpdateNonAttributedCpuTimeReference(1u);
    PopDripsWatchdogStopWatchdog();
    PpmDisableHighPerfRequestDeferredExpiration(0);
  }
  PopReleasePolicyLock();
  PopIdleWakeNotifyIdleResiliencyState(v2);
  return PopDirectedDripsIdleResiliencyCallback(v3, v2);
}

Referenced by:

PdcPoResiliencyClient