MiDereferenceAnyActiveHugeContext

VOID __stdcall MiDereferenceAnyActiveHugeContext(INT64 a1){
  unsigned int *v2; 
  _KLOCK_QUEUE_HANDLE LockHandle; 

  if( *(_BYTE *)(a1 + 80) )
  {
    v2 = *(unsigned int **)(a1 + 224);
    memset(&LockHandle, 0, sizeof(LockHandle));
    if( v2 )
    {
      KeAcquireInStackQueuedSpinLock((PKSPIN_LOCK)(qword_140C50AD0 + 4544i64 * v2[46] + 4304), &LockHandle);
      MiDecrementHugeContext(v2);
      KeReleaseInStackQueuedSpinLockFromDpcLevel(&LockHandle);
      __writecr8(LockHandle.OldIrql);
      *(_QWORD *)(a1 + 224) = 0i64;
    }
  }
}

Referenced by:

MiDeleteZeroThreadContext