RtlStringCchCatW

NTSTATUS __stdcall RtlStringCchCatW(WCHAR *pszDest, UINT64 cchDest, WCHAR *pszSrc){
  NTSTATUS v5; 
  UINT64 v7; 
  WCHAR *i; 
  UINT64 v9; 
  WCHAR *v10; 
  UINT64 v11; 
  __int64 v12; 
  char *v13; 
  WCHAR v14; 
  WCHAR *v15; 

  v5 = 0;
  if( cchDest - 1 > 0x7FFFFFFE )
    v5 = -1073741811;
  if( v5 < 0 )
    goto LABEL_19;
  v7 = cchDest;
  for( i = pszDest; v7; --v7 )
  {
    if( !*i )
      break;
    ++i;
  }
  v5 = v7 == 0 ? 0xC000000D : 0;
  if( v7 )
    v9 = cchDest - v7;
  else
LABEL_19:
    v9 = 0i64;
  if( v5 >= 0 )
  {
    v10 = &pszDest[v9];
    v11 = cchDest - v9;
    if( cchDest != v9 )
    {
      v12 = 2147483646i64;
      v13 = (char *)((char *)pszSrc - (char *)v10);
      do
      {
        if( !v12 )
          break;
        v14 = *(WCHAR *)((char *)v10 + (_QWORD)v13);
        if( !v14 )
          break;
        *v10 = v14;
        --v12;
        ++v10;
        --v11;
      }
      while( v11 );
    }
    v15 = v10 - 1;
    if( v11 )
      v15 = v10;
    v5 = v11 == 0 ? 0x80000005 : 0;
    *v15 = 0;
  }
  return v5;
}

Referenced by:

AslPathCombine
AslPathToSystemPathBuf
AslpEnvResolveVars
AslpFileQueryVersionString
BapdpProcessVsmKeyBlobs
ExpGetGlobalLocaleSection
SdbpCreateSearchDBContext
SshpQueryRegistryValues