MiValidateStrongCodeDriverImage
__int64 __fastcall MiValidateStrongCodeDriverImage(__int64 a1, char a2){
int v3;
int *i;
int v5;
__int64 v6;
v3 = *(unsigned __int16 *)(a1 + 6);
if( !*(_WORD *)(a1 + 6) )
return 0i64;
for( i = (int *)(a1 + *(unsigned __int16 *)(a1 + 20) + 60i64); ; i += 10 )
{
v5 = *i;
if( (*i & 0x20000000) == 0 )
goto LABEL_9;
if( (v5 & 0x82000000) == 0x80000000 )
break;
v6 = (unsigned int)*(i - 5);
if( ((v6 + 4095) & 0xFFFFFFFFFFFFF000ui64) < (((unsigned int)*(i - 7) + 4095i64) & 0xFFFFFFFFFFFFF000ui64) )
{
if( (a2 & 1) != 0 )
{
dword_140C4C958 = 195;
return 3221225595i64;
}
if( (_DWORD)v6 || (v5 & 0x2000000) == 0 )
{
dword_140C4C958 = 196;
return 3221225595i64;
}
}
LABEL_9:
if( !--v3 )
return 0i64;
}
dword_140C4C958 = 194;
return 3221225595i64;
}Referenced by:
MmLoadSystemImageEx