Amd64PauseProfiling

INT64 __stdcall Amd64PauseProfiling(){
  INT64 result; 
  int *v1; 
  int v2; 
  __int64 v3; 
  LODWORD(result) = *((_DWORD *)KeGetPcr() + 105);
  v1 = (int *)(Amd64CounterStatus + ((unsigned __int64)(unsigned int)result << 6));
  v2 = 0;
  v3 = 4i64;
  do
  {
    if( *v1 < 2 )
    {
      result = __readmsr(v2 - 1073676288) & 0xFFBFFFFF;
      __writemsr(v2 - 1073676288, result);
    }
    ++v2;
    v1 += 4;
    --v3;
  }
  while( v3 );
  return result;
}

Referenced by:

No references.