PopPowerAggregatorNotifyPdcSleepTransition
__int64 __fastcall PopPowerAggregatorNotifyPdcSleepTransition(UINT8 a1, unsigned int a2){
unsigned int v4;
PopAcquireRwLockExclusive((_POP_RW_LOCK *)&PopIrpWorkerControlEvent + 187);
if( *(&PopIrpWorkerControlEvent + 770) == 1 )
{
v4 = 0;
if( a1 )
{
*(&PopIrpWorkerControlEvent + 3104) = 0;
*(&PopIrpWorkerControlEvent + 777) = 0;
goto LABEL_13;
}
*(&PopIrpWorkerControlEvent + 3104) = 1;
v4 = 259;
*(&PopIrpWorkerControlEvent + 777) = a2;
}
else
{
if( *(&PopIrpWorkerControlEvent + 770) != 4 )
{
v4 = -1073741811;
goto LABEL_13;
}
if( a1 )
{
*(&PopIrpWorkerControlEvent + 3104) = 1;
*(&PopIrpWorkerControlEvent + 777) = a2;
}
else
{
*(&PopIrpWorkerControlEvent + 3104) = 0;
*(&PopIrpWorkerControlEvent + 777) = 0;
}
v4 = a1 != 0 ? 0x103 : 0;
}
if( v4 == 259 )
PopPowerAggregatorScheduleWorker((INT64)&PopIrpWorkerControlEvent + 3008);
LABEL_13:
PopPowerAggregatorDiagTracePdcSleepTransition(
a1,
a2,
(INT64)&PopIrpWorkerControlEvent + 3032,
(INT64)&PopIrpWorkerControlEvent + 3080,
v4);
PopReleaseRwLock((_POP_RW_LOCK *)&PopIrpWorkerControlEvent + 187);
return v4;
}Referenced by:
PdcPoCurrentPdcPhase