StringCchCopyNW
__int64 __fastcall StringCchCopyNW(unsigned __int16 *a1, __int64 a2, const unsigned __int16 *a3, unsigned __int64 a4){
unsigned int v4;
unsigned __int64 v5;
signed __int64 v6;
unsigned __int16 v7;
unsigned __int16 *v8;
v4 = 0;
if( (unsigned __int64)(a2 - 1) > 0x7FFFFFFE )
v4 = -2147024809;
if( (v4 & 0x80000000) != 0 )
{
if( !a2 )
return v4;
LABEL_16:
*a1 = 0;
return v4;
}
if( a4 > 0x7FFFFFFE )
{
v4 = -2147024809;
goto LABEL_16;
}
if( a2 )
{
v5 = a4 - a2;
v6 = (char *)a3 - (char *)a1;
do
{
if( !(v5 + a2) )
break;
v7 = *(unsigned __int16 *)((char *)a1 + v6);
if( !v7 )
break;
*a1++ = v7;
--a2;
}
while( a2 );
}
v8 = a1 - 1;
if( a2 )
v8 = a1;
v4 = a2 == 0 ? 0x8007007A : 0;
*v8 = 0;
return v4;
}Referenced by:
DownLevelGetParentLanguageName
DownLevelLangIDToLanguageName