RtlpUpcaseUnicodeStringPrivate
NTSTATUS __stdcall RtlpUpcaseUnicodeStringPrivate(UNICODE_STRING *DestinationString, UNICODE_STRING *SourceString){
unsigned int Length;
wchar_t *PoolWithTag;
unsigned int v6;
unsigned int v7;
UINT16 v8;
__int64 v9;
int v10;
Length = SourceString->Length;
DestinationString->MaximumLength = Length;
PoolWithTag = (wchar_t *)ExAllocatePoolWithTag(NonPagedPoolNx, Length, 0x67727453ui64);
DestinationString->Buffer = PoolWithTag;
v6 = 0;
if( !PoolWithTag )
return -1073741801;
v7 = SourceString->Length >> 1;
while( v6 < v7 )
{
v8 = NLS_UPCASE(SourceString->Buffer[v6]);
DestinationString->Buffer[v9] = v8;
v6 = v10 + 1;
}
DestinationString->Length = SourceString->Length;
return 0;
}Referenced by:
RtlAreNamesEqual
RtlIsNameInExpression
RtlIsNameInUnUpcasedExpression