HalpUsbLegacyStopUhciInterrupt

UINT16 __stdcall HalpUsbLegacyStopUhciInterrupt(INT64 a1, UINT64 a2, UINT64 a3, CHAR a4){
  unsigned int v4; 
  unsigned int v5; 
  UINT16 result; 
  int v8[4]; 
  int v9[16]; 

  v4 = a2;
  v5 = a3;
  memset(v9, 0i64, sizeof(v9));
  v8[0] = 0;
  if( a4 )
  {
    ((void(__fastcall *)(_QWORD, _QWORD, int *, __int64, int))qword_140C00638)(v4, v5, v8, 192i64, 4);
    result = ((__int64(__fastcall *)(_QWORD, _QWORD, int *, _QWORD, int))qword_140C00630)(v4, v5, v9, 0i64, 64);
    if( (v9[1] & 1) != 0 )
    {
      v8[0] = v9[8] & 0xFFFFFFFC;
      if( (v9[8] & 0xFFFFFFFC) - 1 <= 0xFFFD )
      {
        result = __inword(v9[8] & 0xFFFC);
        if( (result & 8) == 0 )
        {
          __outword(v8[0], 4u);
          KeStallExecutionProcessor(0x2710u);
          result = 0;
          __outword(v8[0], 0);
        }
      }
    }
  }
  else
  {
    ((void(__fastcall *)(_QWORD, _QWORD, int *, __int64, int))qword_140C00630)(v4, v5, v8, 192i64, 4);
    v8[0] &= 0xFFFF40FF;
    return((__int64(__fastcall *)(_QWORD, _QWORD, int *, __int64, int))qword_140C00638)(v4, v5, v8, 192i64, 4);
  }
  return result;
}

Referenced by:

HalpPiix4Detect
HalpStopLegacyUsbInterruptsInternal