RtlpHpVsContextFreeList

void __fastcall RtlpHpVsContextFreeList(INT64 SpinLock, UINT64 a4, _QWORD *a3){
  unsigned int v4; 
  int v6; 
  _QWORD *v7; 
  INT64 a5[2]; 
  __int64 v9; 

  v4 = a4;
  *(_OWORD *)a5 = 0i64;
  v9 = 0i64;
  v6 = a4 & 1;
  if( (a4 & 1) == 0 )
    RtlpHpAcquireQueuedLockExclusive(SpinLock, (UINT64 *)*(unsigned int *)(SpinLock + 8));
  while( a3 )
  {
    v7 = a3 - 2;
    a3 = (_QWORD *)*a3;
    RtlpHpVsContextFreeInternal((INT64 *)SpinLock, a4, (INT64)v7, v4, (INT64)a5);
  }
  if( !v6 )
    RtlpHpReleaseQueuedLockExclusive(*(unsigned int *)(SpinLock + 8), (INT64)a5);
}

Referenced by:

RtlpHpHeapCompact