HalpTimerSaveProcessorFrequency

ULONG_PTR *HalpTimerSaveProcessorFrequency(){
  KPCR *Pcr; 
  ULONG_PTR *Timer; 
  unsigned __int64 v2; 
  ULONG_PTR *result; 
  Pcr = KeGetPcr();
  Timer = HalpFindTimer(5, 0, 0, 0, 1);
  if( Timer )
  {
    *((_QWORD *)Pcr + 24) = 10000 * ((Timer[24] + 5000) / 0x2710);
    v2 = 1000000 * ((Timer[24] + 500000) / 0xF4240);
    *((_DWORD *)Pcr + 25) = v2 / 0xF4240;
    *((_DWORD *)KeGetCurrentPrcb() + 17) = v2 / 0xF4240;
  }
  result = HalpFindTimer(7, 0, 0, 0, 1);
  if( result )
  {
    result = (ULONG_PTR *)(10000 * (unsigned int)((result[24] + 5000) / 0x2710));
    *((_DWORD *)Pcr + 51) = (_DWORD)result;
  }
  return result;
}

Referenced by:

No references.