MiDisablePagingOfDriver
VOID __stdcall MiDisablePagingOfDriver(_KLDR_DATA_TABLE_ENTRY *DataTableEntry){
void *DllBase;
unsigned int v3;
unsigned __int64 v4;
NTSTATUS v5;
_MMPTE *v6;
_MMPTE *v7;
_MMPTE *FirstPte;
_MMPTE *LastPte;
LastPte = 0i64;
DllBase = DataTableEntry->DllBase;
FirstPte = 0i64;
if( !MI_IS_PHYSICAL_ADDRESS(DllBase) )
{
v3 = 0;
v4 = 0i64;
do
{
v5 = MiSnapDriverRange(DataTableEntry, v3, 4ui64, 0i64, &FirstPte);
v6 = FirstPte;
v3 = v5;
if( FirstPte )
{
if( v4 )
{
if( (unsigned __int64)FirstPte < v4 )
v6 = (_MMPTE *)v4;
FirstPte = v6;
}
v7 = LastPte;
if( v6 <= LastPte )
{
MiLockCode(DataTableEntry, v6, LastPte, 2ui64);
v4 = (unsigned __int64)&v7[1];
}
}
}
while( v3 );
}
}Referenced by:
MiHandleDriverNonPagedSections