HalpGetChipHacks

__int64 __fastcall HalpGetChipHacks(__int16 a1, __int16 a2, unsigned __int8 a3, _DWORD *a4){
  __int64 v5; 
  _WORD *i; 
  unsigned int v8; 
  int v9; 
  if( !HalpErrataChipHacksInitialized )
    KeBugCheckEx(
      0x5Cu,
      0x8000ui64,
      (ULONG_PTR)"HalpGetChipHacks",
      (ULONG_PTR)"minkernel\\hals\\lib\\errata\\chiphacks.c",
      0x125ui64);
  v5 = 0i64;
  if( !HalpChipHackCount )
    return 3221226021i64;
  for( i = (_WORD *)HalpChipHacksTable; *i != a1 || i[1] != a2; i += 4 )
  {
    v5 = (unsigned int)(v5 + 1);
    if( (unsigned int)v5 >= HalpChipHackCount )
      return 3221226021i64;
  }
  v8 = *(_DWORD *)(HalpChipHacksTable + 8 * v5 + 4);
  if( a3 && HIBYTE(v8) && a3 >= HIBYTE(v8) )
    v8 >>= 12;
  v9 = v8 & 0xFFF;
  *a4 = v9;
  if( (HalpWAETDeviceFlags & 2) != 0 )
    *a4 = v9 & 0xFFFFFFFE;
  return 0i64;
}

Referenced by:

HalpPiix4Detect