PnpQueryDeviceText

INT64 __stdcall PnpQueryDeviceText(DEVICE_OBJECT *DeviceObject, DEVICE_TEXT_TYPE DeviceTextType, WCHAR **DeviceText){
  _QWORD *v3; 
  _QWORD *v6; 
  NTSTATUS v7; 
  WCHAR *v8; 
  int v9; 
  int v11; 
  WCHAR *NormalizedText; 
  INT64 result; 
  DEVICE_TEXT_TYPE v14; 
  int v15; 
  PVOID P; 
  P = 0i64;
  NormalizedText = 0i64;
  *v3 = 0i64;
  v6 = v3;
  memset((INT64)&result, 0i64);
  v15 = PsDefaultSystemLocaleId;
  LOWORD(result) = 3099;
  v14 = DeviceTextType;
  v7 = IopSynchronousCall(DeviceObject, (IO_STACK_LOCATION *)&result, 3221225659i64, 0i64, (UINT64 *)&P);
  v8 = (WCHAR *)P;
  v9 = v7;
  if( !P )
    v9 = -1073741637;
  if( v9 >= 0 )
  {
    *v6 = P;
    PiNormalizeDeviceText(v8, &NormalizedText);
    if( v11 >= 0 )
    {
      if( NormalizedText )
      {
        *v6 = NormalizedText;
        ExFreePoolWithTag(v8, 0);
      }
    }
  }
  return(unsigned int)v9;
}

Referenced by:

PiProcessNewDeviceNode