HalpPciReadSecondaryBusNumber

INT16 __fastcall HalpPciReadSecondaryBusNumber(UINT64 a1, INT64 a2){
  char v2; 
  char v3; 
  char v4; 
  char v5; 
  unsigned __int16 v6; 
  char v7; 
  int v8; 
  INT16 v9; 
  INT64 v10; 
  UINT64 v12; 
  UINT64 v13; 
  INT64 result; 
  char v15; 
  unsigned __int8 v16; 
  unsigned __int8 v17; 
  unsigned __int8 v18; 
  unsigned __int8 *v19; 
  v4 = a2;
  v5 = v2;
  v6 = a1;
  v7 = v3;
  memset((INT64)&result, 0i64);
  LODWORD(v13) = 64;
  v8 = 32 * (v7 & 7);
  v9 = 0;
  LODWORD(v12) = 0;
  LOBYTE(v10) = v4;
  if( (unsigned int)HalpGetPCIData(v6, v10, v5 & 0x1F | (unsigned int)v8, (UINT8 *)&result, v12, v13) != 64 )
    return 1155;
  if( (v15 & 0x7F) != 1 || v17 <= v16 || v18 < v17 )
    return 14;
  *v19 = v17;
  return v9;
}

Referenced by:

HalpPciConvertDevicePathToRid