MmDiscardDriverSection

VOID __stdcall MmDiscardDriverSection(_MMPTE **StartPte){
  _KLDR_DATA_TABLE_ENTRY *v2; 
  VOID *DllBase; 
  INT8 v4; 
  INT64 v5; 
  _MMPTE *v6; 
  _ETHREAD *Lock; 
  _MMPTE *EndPte; 
  VOID *EndVa; 

  EndVa = 0i64;
  EndPte = 0i64;
  v2 = (_KLDR_DATA_TABLE_ENTRY *)MiLookupDataTableEntry(StartPte, 1ui64);
  DllBase = v2->DllBase;
  if( !MI_IS_PHYSICAL_ADDRESS(DllBase) || DllBase == (VOID *)PsNtosImageBase || DllBase == PsHalImageBase )
  {
    MiSnapDriverRange(v2, 0i64, 0i64, StartPte, &EndPte);
    v6 = EndPte;
    if( EndPte )
    {
      Lock = MmAcquireLoadLock(v5, v4);
      MiFreeInitializationCode(v2, v6, EndVa);
      MmReleaseLoadLock(Lock);
    }
  }
}

Referenced by:

KeFreeInitializationCode