HalpReadExtendedMcaRegistersAMD

VOID __stdcall HalpReadExtendedMcaRegistersAMD(){
  int v0; 
  __int64 v1; 
  _QWORD *v2; 
  unsigned __int32 v3; 
  _QWORD *v4; 
  __int64 v5; 
  int v6; 

  v3 = 0;
  v4 = v2;
  v5 = v1;
  if( HalpMcaScalableRasSupported )
  {
    v6 = 16 * v0;
    v2[9] = ((__int64(__fastcall *)(__int64, _QWORD, _QWORD))qword_140C49C20)(
              v1,
              (unsigned int)(16 * v0 - 1073733627),
              0i64);
    v4[10] = ((__int64(__fastcall *)(__int64, _QWORD, _QWORD))qword_140C49C20)(
               v5,
               (unsigned int)(v6 - 1073733626),
               0i64);
    v4[11] = ((__int64(__fastcall *)(__int64, _QWORD, _QWORD))qword_140C49C20)(
               v5,
               (unsigned int)(v6 - 1073733628),
               0i64);
    v4[12] = ((__int64(__fastcall *)(__int64, _QWORD, _QWORD))qword_140C49C20)(
               v5,
               (unsigned int)(v6 - 1073733624),
               0i64);
    v4[13] = ((__int64(__fastcall *)(__int64, _QWORD, _QWORD))qword_140C49C20)(
               v5,
               (unsigned int)(v6 - 1073733623),
               0i64);
    v4[14] = ((__int64(__fastcall *)(__int64, _QWORD, _QWORD))qword_140C49C20)(
               v5,
               (unsigned int)(v6 - 1073733622),
               0i64);
    v4[15] = ((__int64(__fastcall *)(__int64, _QWORD, _QWORD))qword_140C49C20)(
               v5,
               (unsigned int)(v6 - 1073733621),
               0i64);
    v4[16] = ((__int64(__fastcall *)(__int64, _QWORD, _QWORD))qword_140C49C20)(
               v5,
               (unsigned int)(v6 - 1073733620),
               0i64);
    v4[17] = ((__int64(__fastcall *)(__int64, _QWORD, _QWORD))qword_140C49C20)(
               v5,
               (unsigned int)(v6 - 1073733619),
               0i64);
    if( (unsigned int)EAX(__cpuid(0x80000000, 0)) >= 0x80000007 )
      v3 = EBX(__cpuid(-2147483641, 0));
    v4[18] = v3;
  }
}

Referenced by:

HalpMcaPopulateErrorData