MiSessionUnloadAllImages
VOID __stdcall MiSessionUnloadAllImages(PVOID MemoryMap, PVOID Va, UINT64 a3){
_ETHREAD *Lock;
INT64 *v4;
_ETHREAD *v5;
INT8 v6;
INT64 v7;
_ETHREAD *v8;
UINT64 v9;
Lock = MmAcquireLoadLock((INT64)MemoryMap, (INT8)Va);
v4 = (INT64 *)PsLoadedModuleList;
v5 = Lock;
while( v4 != &PsLoadedModuleList )
{
v9 = v4[6];
if( MiGetSystemRegionType(v9) == 1 && MiSessionLookupImage(v9) )
{
MmReleaseLoadLock(v5);
MmUnloadSystemImage(v4);
v8 = MmAcquireLoadLock(v7, v6);
v4 = (INT64 *)PsLoadedModuleList;
v5 = v8;
}
else
{
v4 = (INT64 *)*v4;
}
}
MmReleaseLoadLock(v5);
}Referenced by:
MiDereferenceSessionFinal