RtlPrefixString
UINT8 __fastcall RtlPrefixString(const _STRING *String1, const _STRING *String2, UINT8 CaseInSensitive){
__int64 Length;
char *Buffer;
char *v5;
char *v6;
INT8 v7;
INT8 v9;
signed __int64 v10;
Length = String1->Length;
Buffer = String1->Buffer;
v5 = String2->Buffer;
if( String2->Length >= (unsigned __int16)Length )
{
v6 = &Buffer[Length];
if( Buffer >= &Buffer[Length] )
return 1;
if( CaseInSensitive )
{
while( 1 )
{
v7 = *Buffer;
if( *Buffer != *v5 )
{
v9 = RtlUpperChar(*v5);
if( RtlUpperChar(v7) != v9 )
break;
}
++Buffer;
++v5;
if( Buffer >= v6 )
return 1;
}
}
else
{
v10 = v5 - Buffer;
while( *Buffer == Buffer[v10] )
{
if( ++Buffer >= v6 )
return 1;
}
}
}
return 0;
}Referenced by:
IopCheckDiskName
MiSnapThunk