MiFreeCloneDescriptor
VOID __fastcall MiFreeCloneDescriptor(INT64 a1, INT64 a2){
_QWORD *v2;
ULONG_PTR v3;
ULONG_PTR v4;
char *v7;
v2 = *(_QWORD **)(a2 + 56);
v3 = 0i64;
v4 = *(_QWORD *)(a2 + 64);
v7 = (char *)v2[2];
if( v4 )
{
do
{
MiUnlockPagedAddress(&v7[v3]);
v3 += 4096i64;
}
while( v3 < v4 );
}
PsReturnProcessNonPagedPoolQuota(a1, v4);
MiDecrementCloneHeaderCount(v2[3]);
ExFreePoolWithTag(v2, 0);
ExFreePoolWithTag(v7, 0);
ExFreePoolWithTag((PVOID)a2, 0);
}Referenced by:
MiCloneProcessAddressSpace
MiCloneVads