IopCheckIfNotNativeDriver
BOOL __stdcall IopCheckIfNotNativeDriver(NTSTATUS itialDriverLoadStatus, PUNICODE_STRING ImageFileName){
wchar_t *Buffer;
WCHAR *v4;
_WORD *v5;
Buffer = ImageFileName->Buffer;
if( itialDriverLoadStatus != -1073741772 )
goto LABEL_8;
if( !Buffer )
goto LABEL_7;
while( wcsnicmp(Buffer, L"\\System32\\drivers\\", 0x12ui64) )
{
v4 = wcsstr(Buffer + 1, L"\\");
Buffer = v4;
if( !v4 )
goto LABEL_7;
}
RtlStringCbCopyNW(
Buffer + 1,
ImageFileName->MaximumLength - (unsigned __int64)(unsigned __int16)((_WORD)Buffer - LOWORD(ImageFileName->Buffer)),
(PWCHAR)L"SysWow64",
0x10ui64);
v5 = Buffer + 9;
LODWORD(v4) = 92;
*v5 = 92;
if( v5 )
LABEL_8:
LOBYTE(v4) = IopIsNotNativeDriverImage(ImageFileName);
else
LABEL_7:
LOBYTE(v4) = 0;
return(int)v4;
}Referenced by:
IopLoadDriver