MiSessionUnloadAllImages

VOID __stdcall MiSessionUnloadAllImages(PVOID MemoryMap, PVOID Va, UINT64 a3){
  _ETHREAD *Lock; 
  PVOID *v4; 
  _ETHREAD *v5; 
  _ETHREAD *v6; 
  UINT64 v7; 
  Lock = MmAcquireLoadLock();
  v4 = (PVOID *)PsLoadedModuleList;
  v5 = Lock;
  while( v4 != &PsLoadedModuleList )
  {
    v7 = (UINT64)v4[6];
    if( (unsigned int)MiGetSystemRegionType(v7) == 1 && MiSessionLookupImage(v7) )
    {
      MmReleaseLoadLock(v5);
      MmUnloadSystemImage(v4);
      v6 = MmAcquireLoadLock();
      v4 = (PVOID *)PsLoadedModuleList;
      v5 = v6;
    }
    else
    {
      v4 = (PVOID *)*v4;
    }
  }
  MmReleaseLoadLock(v5);
}

Referenced by:

MiDereferenceSessionFinal