PopPowerTransitionTimesInMs
VOID __stdcall PopPowerTransitionTimesInMs(
UINT64 *SleepTimeMs,
UINT64 *ResumeTimeMs,
UINT64 *HiberHiberFileTimeMs,
UINT64 *ResumeHiberFileTimeMs,
UINT64 *BiosInitTimeMs){
unsigned __int64 v8;
UINT64 *v9;
int v10;
_LARGE_INTEGER StartTime;
_DWORD *v12;
v8 = 1000i64 * *((unsigned int *)KeGetCurrentPrcb() + 17);
if( SleepTimeMs )
*(_DWORD *)SleepTimeMs = PopQpcTimeInMs(&::StartTime, &EndTime);
if( ResumeTimeMs )
*(_DWORD *)ResumeTimeMs = PopQpcTimeInMs(&stru_140C23768, &stru_140C23770);
v9 = BiosInitTimeMs;
if( BiosInitTimeMs )
{
StartTime.QuadPart = 0i64;
v10 = PopQpcTimeInMs(&StartTime, &stru_140C23788);
*(_DWORD *)v9 = v10;
if( dword_140C23990 )
*(_DWORD *)v9 = qword_140C23808 + v10;
}
if( HiberHiberFileTimeMs )
*(_DWORD *)HiberHiberFileTimeMs = qword_140C237D0 / v8;
if( ResumeHiberFileTimeMs )
*(_DWORD *)ResumeHiberFileTimeMs = (qword_140C23908 + qword_140C23840) / v8;
if( v12 )
*v12 = qword_140C237B0 / v8;
}Referenced by:
PopCalculateWakeTimeAdjustment
PopDiagTracePowerTransitionTime