PopPowerAggregatorSessionSwitchWorker

VOID __stdcall PopPowerAggregatorSessionSwitchWorker(){
  char v0; 
  char v1; 
  INT64 v2; 
  _EXT_SET_PARAMETERS_V0 Parameters; 

  v0 = 0;
  v1 = 0;
  PopAcquireRwLockExclusive((_POP_RW_LOCK *)&PopIrpWorkerControlEvent + 187);
  if( *(&PopIrpWorkerControlEvent + 3113) )
  {
    *(&PopIrpWorkerControlEvent + 1556) = 0;
    v0 = 1;
    PopPowerAggregatorScheduleWorker((INT64)&PopIrpWorkerControlEvent + 3008);
  }
  else
  {
    *(&PopIrpWorkerControlEvent + 3113) = 1;
    v1 = 1;
  }
  PopReleaseRwLock((_POP_RW_LOCK *)&PopIrpWorkerControlEvent + 187);
  if( v0 )
  {
    PdcTaskClientRequest(v2, 0);
  }
  else if( v1 )
  {
    PdcTaskClientRequest(v2, 1);
    *(_QWORD *)&Parameters.Version = 0i64;
    Parameters.NoWakeTolerance = -1i64;
    KeSetTimer2((INT64)&PopIrpWorkerControlEvent + 3152, -50000000i64, 0i64, (INT64)&Parameters);
  }
}

Referenced by:

No references.