HalpFreeResumeStructures

VOID __stdcall HalpFreeResumeStructures(PINTERRUPT_INITIALIZE_IO_UNIT *a1){
  unsigned int ActiveProcessorCount; 
  _HALP_ALLOC_CONTEXT *v2; 
  __int64 v3; 
  __int64 v4; 

  if( Memory )
  {
    HalpMmAllocCtxFree((_HALP_ALLOC_CONTEXT *)a1, Memory);
    Memory = 0i64;
  }
  ActiveProcessorCount = KeQueryActiveProcessorCountEx(0xFFFFu);
  if( qword_140C49D10 )
  {
    if( ActiveProcessorCount )
    {
      v3 = 0i64;
      v4 = ActiveProcessorCount;
      do
      {
        HalpMmFreeTiledMemoryMap((UINT64 *)((char *)qword_140C49D10 + v3));
        v3 += 8i64;
        --v4;
      }
      while( v4 );
    }
    HalpMmAllocCtxFree(v2, qword_140C49D10);
    qword_140C49D10 = 0i64;
  }
}

Referenced by:

HalpDispatchSystemStateTransition