NtQueryPerformanceCounter
INT64 __fastcall NtQueryPerformanceCounter(_LARGE_INTEGER *PerformanceCounter, _LARGE_INTEGER *PerformanceFrequency){
__int64 v4;
__int64 v5;
union _LARGE_INTEGER PerformanceFrequencya;
PerformanceFrequencya.QuadPart = 0i64;
if( *((_BYTE *)KeGetCurrentThread() + 562) )
{
if( ((unsigned __int8)PerformanceCounter & 3) == 0 )
{
v4 = 0x7FFFFFFF0000i64;
v5 = 0x7FFFFFFF0000i64;
if( (unsigned __int64)PerformanceCounter < 0x7FFFFFFF0000i64 )
v5 = (__int64)PerformanceCounter;
*(_BYTE *)v5 = *(_BYTE *)v5;
*(_BYTE *)(v5 + 7) = *(_BYTE *)(v5 + 7);
if( !PerformanceFrequency )
goto LABEL_6;
if( ((unsigned __int8)PerformanceFrequency & 3) == 0 )
{
if( (unsigned __int64)PerformanceFrequency < 0x7FFFFFFF0000i64 )
v4 = (__int64)PerformanceFrequency;
*(_BYTE *)v4 = *(_BYTE *)v4;
*(_BYTE *)(v4 + 7) = *(_BYTE *)(v4 + 7);
LABEL_6:
*PerformanceCounter = KeQueryPerformanceCounter(&PerformanceFrequencya);
if( PerformanceFrequency )
*PerformanceFrequency = PerformanceFrequencya;
return 0i64;
}
}
ExRaiseDatatypeMisalignment();
}
*PerformanceCounter = KeQueryPerformanceCounter(&PerformanceFrequencya);
if( PerformanceFrequency )
*PerformanceFrequency = PerformanceFrequencya;
return 0i64;
}Referenced by:
No references.