HalpTimerPropagateQpcBiasUpdate
VOID __fastcall HalpTimerPropagateQpcBiasUpdate(INT64 a1){
__int64 v2;
int v3;
__int64 v4;
UINT64 v5;
if( a1 == HalpPerformanceCounter )
{
if( !qword_140C4A298 )
{
v2 = *(_QWORD *)(a1 + 208);
if( qword_140C4A290 )
qword_140C4A290(v2);
}
v3 = *(_DWORD *)(a1 + 228);
if( v3 == 5 )
{
if( !*(_QWORD *)(a1 + 192) )
return;
v4 = *(_QWORD *)(a1 + 208);
v5 = HalpTimerScaleCounter(abs64(v4), *(_QWORD *)(a1 + 192), 0x989680ui64);
if( v4 < 0 )
v5 = -(__int64)v5;
KUSER_SHARED_DATA.QpcBias = v5;
v3 = *(_DWORD *)(a1 + 228);
}
if( v3 == 11 || v3 == 8 )
KUSER_SHARED_DATA.QpcBias = *(_QWORD *)(a1 + 208);
}
}Referenced by:
HalpTimerCalibratePerformanceCounter
HalpTimerSelectRoles