PopThermalSxEntry

VOID __stdcall PopThermalSxEntry(){
  _ETHREAD *CurrentThread; 
  INT64 i; 
  INT64 v2; 

  PopAcquireRwLockExclusive(&PopSystemThermalInfo);
  PopThermalStandbyEndTracking(4ui64);
  PopReleaseRwLock(&PopSystemThermalInfo);
  CurrentThread = (_ETHREAD *)KeGetCurrentThread();
  --CurrentThread->Tcb.KernelApcDisable;
  ExAcquirePushLockSharedEx((_EX_PUSH_LOCK *)&PopPolicyDeviceLock, 0i64);
  for( i = *(&stru_140C23628 + 181); (_UNKNOWN *)i != (_UNKNOWN *)((char *)&stru_140C23628 + 1448); i = *(_QWORD *)i )
  {
    PopAcquireRwLockExclusive((_POP_RW_LOCK *)(i + 432));
    if( *(_BYTE *)(i + 145) )
    {
      PopThermalUpdatePassiveTimeTracking();
      PopTraceThermalZonePassiveHistogram((_POP_THERMAL_ZONE *)i);
    }
    if( *(_BYTE *)(i + 505) )
    {
      LOBYTE(v2) = *(_BYTE *)(i + 69);
      PopThermalUpdateActiveTimeTracking(i + 504, v2);
      PopTraceThermalZoneActiveActivity(i);
    }
    *(_BYTE *)(i + 504) = 1;
    PopReleaseRwLock((_POP_RW_LOCK *)(i + 432));
  }
  PopReleaseRwLock((_POP_RW_LOCK *)&PopPolicyDeviceLock);
  PopCoolingSxTransition(1);
}

Referenced by:

PopTransitionSystemPowerStateEx