PopUpdateSmartUserPresencePredictions

VOID __stdcall PopUpdateSmartUserPresencePredictions(INT64 UserReturnTime, POP_DOZE_TIMER_CANCELLED_REASON Reason){
  INT64 v2; 

  v2 = 0i64;
  if( !*(&stru_140C23628 + 1829)
    && (unsigned __int64)UserReturnTime >= *(_QWORD *)&KUSER_SHARED_DATA.SystemTime.LowPart
    && (unsigned __int64)(*(_QWORD *)&KUSER_SHARED_DATA.SystemTime.LowPart - UserReturnTime) >= 0x10C388D000i64 )
  {
    v2 = UserReturnTime;
  }
  if( qword_140C231C8 != v2 )
  {
    qword_140C231C8 = v2;
    if( PopSmartUserPresenceAction )
    {
      if( byte_140C231F1 && (PopIdleCancelAoAcDozeS4Timer(Reason) || !*(_DWORD *)(*(&stru_140C23628 + 232) + 88i64)) )
        PopIdleArmAoAcDozeS4Timer();
    }
  }
}

Referenced by:

PopPowerInformationInternal
PopWnfAudioCallback
PopWnfUserAwayPredictionCallback