HalpApicGetCpuInfo

CHAR __stdcall HalpApicGetCpuInfo(INT64 a1, INT64 a2, INT64 a3, INT64 a4){
  __int64(__fastcall *v4)(INT64, INT64, INT64, INT64); 

  v4 = (__int64(__fastcall *)(INT64, INT64, INT64, INT64))*(&CmpDummyThreadEvent + 484);
  if( *(&CmpDummyThreadEvent + 484) )
    return v4(a1, a2, a3, a4);
  if( HalSocRequestApi(a1, 0i64, 2i64, 0x10ui64, (char *)&CmpDummyThreadEvent + 3872) >= 0
    && (v4 = (__int64(__fastcall *)(INT64, INT64, INT64, INT64))*(&CmpDummyThreadEvent + 484)) != 0i64 )
  {
    return v4(a1, a2, a3, a4);
  }
  else
  {
    return 0;
  }
}

Referenced by:

HalpApicIsCmciImplemented
HalpApicRegisterIoUnit