ExpTranslateDriverEntryNameToId
UINT64 __stdcall ExpTranslateDriverEntryNameToId(PWCHAR Name, UINT64 *Id){
UINT16 *v4;
int v5;
unsigned int i;
UINT16 v7;
int v8;
if( towlower(*Name) != 100
|| towlower(Name[1]) != 114
|| towlower(Name[2]) != 105
|| towlower(Name[3]) != 118
|| towlower(Name[4]) != 101
|| towlower(Name[5]) != 114 )
{
return 0i64;
}
v4 = Name + 6;
v5 = 0;
for( i = 6; i < 0xA; ++i )
{
v7 = towlower(*v4);
if( (unsigned __int16)(v7 - 48) > 9u )
{
if( (unsigned __int16)(v7 - 97) > 5u )
return 0i64;
v8 = 16 * v5 - 87;
}
else
{
v8 = 16 * v5 - 48;
}
v5 = v7 + v8;
++v4;
}
if( Name[10] )
return 0i64;
*(_DWORD *)Id = v5;
return 1i64;
}Referenced by:
ExpIsDriverEntry
NtEnumerateDriverEntries