MiFinishResume

VOID __stdcall MiFinishResume(VOID *Context){
  unsigned int v1; 
  PHYSICAL_MEMORY_DESCRIPTOR *v2; 
  VOID **i; 
  _MI_PARTITION **NextPartition; 
  _MI_PARTITION **v5; 
  _MI_PARTITION *v6; 

  v1 = (unsigned int)Context;
  v2 = MiReferencePageRuns((ULONG_PTR *)&Irp.Core.PartitionId, 0i64);
  for( i = 0i64; ; i = (VOID **)v5 )
  {
    NextPartition = (_MI_PARTITION **)PsGetNextPartition(i);
    v5 = NextPartition;
    if( !NextPartition )
      break;
    v6 = *NextPartition;
    if( v1 )
    {
      MiPurgePartitionStandby(*NextPartition, v1);
      v6->PageLists.StandbyListDiscard = 0;
    }
    MiPurgeZeroList(v6);
  }
  if( v2 )
    MiDereferencePageRunsEx((INT64)v2, 1i64);
  _InterlockedDecrement((_DWORD *)&stru_140C4DB30 + 1082);
  *(&stru_140C4DB30 + 290) = -1i64;
  KeSetEvent((PRKEVENT)((char *)&stru_140C4DB30 + 2272), 0, 0);
}

Referenced by:

No references.