MiIdentifyPatchImageWritablePages
INT64 __fastcall MiIdentifyPatchImageWritablePages(_QWORD *a1){
_CONTROL_AREA *v2;
__int64 v3;
__int64 v4;
unsigned int v6;
char *i;
v2 = MiSectionControlArea(*(_SECTION **)(*a1 + 112i64));
v3 = *(unsigned int *)(*(_QWORD *)v2 + 8i64);
LODWORD(v4) = MiAllocatePool((struct _SLIST_ENTRY *)0x40);
if( !v4 )
return 3221225626i64;
a1[5] = v3;
v6 = 0;
a1[6] = v4;
for( i = (char *)v2 + 128; i; i = (char *)*((_QWORD *)i + 2) )
{
if( (i[32] & 8) != 0 )
RtlSetBitsEx((INT64)(a1 + 5), v6, *((unsigned int *)i + 11));
v6 += *((_DWORD *)i + 11);
}
return 1i64;
}Referenced by:
MiApplyDriverHotPatch