RtlUnicodeStringPrintfEx

NTSTATUS __stdcall RtlUnicodeStringPrintfEx(
        _UNICODE_STRING *DestinationString,
        _UNICODE_STRING *RemainingString,
        UINT64 dwFlags,
        WCHAR *pszFormat){
  ULONG v5; 
  size_t v6; 
  WCHAR *v7; 
  WCHAR *v8; 
  unsigned __int64 v9; 
  NTSTATUS v10; 
  unsigned __int16 Length; 
  unsigned __int64 MaximumLength; 
  wchar_t *Buffer; 
  WCHAR *v14; 
  unsigned __int64 v15; 
  unsigned __int64 v16; 
  int v17; 
  WCHAR *v19; 
  size_t pcchNewDestLength[2]; 
  wchar_t *v21; 
  WCHAR *ppszDestEnd; 
  size_t pcchRemaining[2]; 
  char Args; 

  v5 = dwFlags;
  v6 = 0;
  v7 = pszFormat;
  v8 = 0i64;
  v9 = 0i64;
  v21 = 0i64;
  v10 = 0;
  if( DestinationString || (v5 & 0x100) == 0 )
  {
    Length = DestinationString->Length;
    if( (DestinationString->Length & 1) != 0 )
      return -1073741811;
    MaximumLength = DestinationString->MaximumLength;
    if( (MaximumLength & 1) != 0 || Length > (unsigned __int16)MaximumLength || (_WORD)MaximumLength == 0xFFFF )
      return -1073741811;
    Buffer = DestinationString->Buffer;
    if( !Buffer && (Length || (_WORD)MaximumLength) )
    {
      v10 = -1073741811;
      v8 = 0i64;
    }
    else
    {
      v21 = DestinationString->Buffer;
      v9 = MaximumLength >> 1;
      v8 = Buffer;
    }
  }
  if( v10 >= 0 )
  {
    ppszDestEnd = v8;
    v14 = v8;
    *(_QWORD *)pcchRemaining = v9;
    LOWORD(v15) = v9;
    *(_QWORD *)pcchNewDestLength = 0i64;
    LOWORD(v16) = 0;
    if( (v5 & 0x100) != 0 )
    {
      v19 = (WCHAR *)&::ppszDestEnd;
      if( pszFormat )
        v19 = pszFormat;
      v7 = v19;
    }
    v10 = 0;
    if( (v5 & 0xFFFFE000) != 0 )
    {
      v10 = -1073741811;
    }
    else if( v9 )
    {
      *(_QWORD *)pcchRemaining = 0i64;
      v17 = vsnwprintf(v8, v9, v7, &Args);
      if( v17 < 0 || (v16 = v17, v17 > v9) )
      {
        v16 = v9;
        *(_QWORD *)pcchNewDestLength = v9;
        v10 = -2147483643;
      }
      else
      {
        *(_QWORD *)pcchNewDestLength = v17;
      }
      v8 = v21;
      v15 = v9 - v16;
      *(_QWORD *)pcchRemaining = v9 - v16;
      v14 = &v21[v16];
      ppszDestEnd = v14;
      if( v10 >= 0 )
      {
        if( (v5 & 0x200) != 0 && v15 )
          memset(&v21[v16], (unsigned __int8)v5, 2 * v15);
        goto LABEL_17;
      }
    }
    else
    {
      if( !*v7 )
      {
LABEL_17:
        if( DestinationString )
          DestinationString->Length = 2 * v16;
        if( (int)(v10 + 0x80000000) < 0 || v10 == -2147483643 )
        {
          if( RemainingString )
          {
            RemainingString->Length = 0;
            RemainingString->MaximumLength = 2 * v15;
            RemainingString->Buffer = v14;
          }
        }
        return v10;
      }
      v10 = v8 != 0i64 ? -2147483643 : -1073741811;
    }
    if( (v5 & 0x1C00) != 0 && v9 )
    {
      RtlUnicodeStringExHandleOtherFlags(v8, v9, v6, pcchNewDestLength, &ppszDestEnd, pcchRemaining, v5);
      v14 = ppszDestEnd;
      LOWORD(v15) = pcchRemaining[0];
      LOWORD(v16) = pcchNewDestLength[0];
    }
    goto LABEL_17;
  }
  return v10;
}

Referenced by:

PiBuildAndOpenDeviceDirectoryPath
PiCreateDriverRedirectedStateKey
PiDevCfgBuildDriverConfigurationId
PiDevCfgBuildIndirectString
PiDevCfgLogDeviceConfigured
PiGetDriverMutableStateDirectory
PiOpenDriverRedirectedStateKey