LdrpCompareResourceNamesWithValidation
INT64 __fastcall LdrpCompareResourceNamesWithValidation(
INT64 a1,
INT64 a2,
const WCHAR *a3,
INT64 a4,
UINT64 *a5,
BYTE *a6){
__int64 v7;
unsigned __int16 *v9;
unsigned int v10;
__int64 v11;
*a6 = 1;
v7 = *(unsigned int *)a5;
if( ((unsigned __int64)a3 & 0xFFFFFFFFFFFF0000ui64) != 0 )
{
if( (int)v7 >= 0 )
return -1i64;
LODWORD(v7) = v7 & 0x7FFFFFFF;
v9 = (unsigned __int16 *)(a4 + v7);
v10 = wcsncmp(a3, v9 + 1, *v9);
if( v10 )
return v10;
v11 = -1i64;
do
++v11;
while( a3[v11] );
if( v11 == *v9 )
return v10;
return 1i64;
}
if( (int)v7 < 0 )
return 1i64;
return(unsigned int)((_DWORD)a3 - v7);
}Referenced by:
LdrEnumResources
LdrpSearchResourceSection_U