PopHandleSystemRequiredPowerRequestsUpdate
VOID __stdcall PopHandleSystemRequiredPowerRequestsUpdate(INT64 a1){
__int64 v1;
int v2;
int v3;
_KLOCK_QUEUE_HANDLE LockHandle;
v1 = (int)a1;
memset(&LockHandle, 0, sizeof(LockHandle));
if( (_DWORD)a1 == 1 )
{
v2 = 1;
}
else
{
if( (_DWORD)a1 != 3 )
return;
v2 = 2;
}
PopAcquirePolicyLock();
KeAcquireInStackQueuedSpinLock((PKSPIN_LOCK)&stru_140C23628 + 751, &LockHandle);
if( PopPowerRequestAttributes[4 * v1] <= 0 )
v3 = ~v2 & dword_140C231C4;
else
v3 = v2 | dword_140C231C4;
dword_140C231C4 = v3;
if( !v3 )
dword_140C231E0 = AccumulatedIdleTime;
KeReleaseInStackQueuedSpinLockFromDpcLevel(&LockHandle);
__writecr8(LockHandle.OldIrql);
PopCheckResiliencyScenarios();
PopReleasePolicyLock();
}Referenced by:
PopHandleConvergedPowerRequestUpdate