RtlStringCbCopyNA
NTSTATUS __stdcall RtlStringCbCopyNA(PSTR pszDest, UINT64 cbDest, PSTR pszSrc, UINT64 cbToCopy){
NTSTATUS v4;
UINT64 v5;
signed __int64 v6;
CHAR v7;
PSTR v8;
v4 = 0;
if( cbDest - 1 > 0x7FFFFFFE )
v4 = -1073741811;
if( v4 >= 0 )
{
if( cbToCopy > 0x7FFFFFFE )
{
v4 = -1073741811;
*pszDest = 0;
}
else
{
if( cbDest )
{
v5 = cbToCopy - cbDest;
v6 = pszSrc - pszDest;
do
{
if( !(v5 + cbDest) )
break;
v7 = pszDest[v6];
if( !v7 )
break;
*pszDest++ = v7;
--cbDest;
}
while( cbDest );
}
v8 = pszDest - 1;
if( cbDest )
v8 = pszDest;
v4 = cbDest == 0 ? 0x80000005 : 0;
*v8 = 0;
}
}
return v4;
}Referenced by:
EmpParseTargetRuleStringIndexList