PopPowerAggregatorSystemTransitionEnterStateHandler

NTSTATUS __stdcall PopPowerAggregatorSystemTransitionEnterStateHandler(INT64 a1){
  int v1; 
  int v4; 
  _DWORD v5[6]; 
  __int64 v6; 

  v1 = *(_DWORD *)(a1 + 72);
  if( (v1 & 0xFFFFFFFC) != 0 || v1 == 1 )
  {
    v4 = *(_DWORD *)(a1 + 88);
    if( v4 >= 0 && (v4 <= 2 || v4 == 4) )
    {
      PopReleaseRwLock((_POP_RW_LOCK *)&PopIrpWorkerControlEvent + 187);
      if( qword_140C54120 )
        qword_140C54120(1i64);
      PopAcquireRwLockExclusive((_POP_RW_LOCK *)&PopIrpWorkerControlEvent + 187);
      KeSetEvent((PRKEVENT)(a1 + 280), 0, 0);
      PopPowerAggregatorStartNextSession(3i64, *(unsigned int *)(a1 + 76));
      *(_DWORD *)(a1 + 88) = 3;
    }
  }
  else
  {
    v6 = 0i64;
    v5[0] = 5;
    *(_OWORD *)&v5[1] = 0i64;
    v5[5] = 3;
    PopPowerAggregatorSetCurrentState(a1, (INT64)v5);
  }
  return 0;
}

Referenced by:

No references.