PopPepArmIdleTimer

VOID __stdcall PopPepArmIdleTimer(UINT8 ArmAlways){
  unsigned __int64 v2; 
  if( PopPepIdleStateTimeout )
  {
    v2 = ExAcquireSpinLockExclusive(&PopPepIdleTimerLock);
    if( ArmAlways )
      PopPepIdleTimerArmed = 0;
    if( !PopPepIdleTimerArmed && PopPepPoweredIdleComponentCount > 0 )
    {
      PopPepIdleTimerArmed = 1;
      KeSetCoalescableTimer(
        (PKTIMER)&PopPepIdleTimer,
        (LARGE_INTEGER)(-10000i64 * PopPepIdleStateTimeout),
        0,
        PopPepIdleStateTimeout,
        &PopPepIdleDpc);
    }
    ExReleaseSpinLockExclusiveFromDpcLevel((INT64 *)&PopPepIdleTimerLock);
    __writecr8(v2);
  }
}

Referenced by:

PopPepGetComponentPreferedIdleState
PopPepIdleTimeoutDpcRoutine
PopPepIdleTimeoutRoutine