MmLocateUnloadedDriver

_QWORD *__fastcall MmLocateUnloadedDriver(unsigned __int64 a1){
  int v1; 
  _QWORD *result; 

  if( !MmUnloadedDrivers )
    return 0i64;
  v1 = 0;
  if( !MmLastUnloadedDriver )
    return 0i64;
  while( 1 )
  {
    result = (char *)MmUnloadedDrivers + 40 * (unsigned int)(MmLastUnloadedDriver - v1 - 1);
    if( result[1] )
    {
      if( a1 >= result[2] && a1 < result[3] )
        break;
    }
    if( ++v1 >= (unsigned int)MmLastUnloadedDriver )
      return 0i64;
  }
  return result;
}

Referenced by:

KeBugCheck2
KiDumpParameterImages