HalpValidPCISlot

CHAR __fastcall HalpValidPCISlot(INT64 a1, INT64 a2, UINT64 a3){
  UINT8 v3; 
  UINT16 v4; 
  unsigned int v6; 
  UINT64 a5; 
  UINT64 a5a; 
  UINT64 Size; 
  UINT64 Sizea; 
  __int16 a4[7]; 
  char v12[2]; 
  v3 = a2;
  v4 = a1;
  if( (unsigned int)a3 < 0x100 )
  {
    if( (a3 & 0xE0) == 0 )
      return 1;
    v6 = a3 & 0x1F;
    LODWORD(Size) = 16;
    LODWORD(a5) = 0;
    HalpReadPCIConfig(a1, a2, a3 & 0x1F, a4, a5, Size);
    if( a4[0] != -1 )
    {
      if( v12[0] < 0 )
        return 1;
      if( a4[0] == -32634 && a4[1] == 4654 )
      {
        LODWORD(Sizea) = 1;
        v12[0] |= 0x80u;
        LODWORD(a5a) = 14;
        HalpWritePCIConfig(v4, v3, v6, v12, a5a, Sizea);
        return 1;
      }
    }
  }
  return 0;
}

Referenced by:

HalpReadPCIConfig
HalpWritePCIConfig