RtlpHpVsContextFreeList
VOID __stdcall RtlpHpVsContextFreeList(INT64 *SpinLock, BYTE *a2){
_QWORD *v2;
_QWORD *v3;
unsigned int v4;
int v6;
UINT64 v7;
INT64 a5[2];
__int64 v9;
v3 = v2;
v4 = (unsigned int)a2;
*(_OWORD *)a5 = 0i64;
v9 = 0i64;
v6 = (unsigned __int8)a2 & 1;
if( ((unsigned __int8)a2 & 1) == 0 )
RtlpHpAcquireQueuedLockExclusive((INT8)SpinLock, (UINT64 *)*((unsigned int *)SpinLock + 2));
while( v3 )
{
v7 = (UINT64)(v3 - 2);
v3 = (_QWORD *)*v3;
RtlpHpVsContextFreeInternal(SpinLock, (INT64)a2, v7, v4, (INT64)a5);
}
if( !v6 )
RtlpHpReleaseQueuedLockExclusive(*((unsigned int *)SpinLock + 2), (INT64)a5);
}Referenced by:
RtlpHpHeapCompact