MiCreateRotateView
__int64 __fastcall MiCreateRotateView(__int64 a1){
__int64 v2;
__int64 v3;
void *v4;
void *v6;
LODWORD(v2) = MiAllocatePool((struct _SLIST_ENTRY *)0x40);
v3 = v2;
if( v2 )
{
v4 = MiGetInPageSupportBlock(0);
if( v4 )
{
if( (int)PsChargeProcessNonPagedPoolQuota(*((_QWORD *)KeGetCurrentThread() + 23), 0x208ui64) >= 0 )
{
*(_DWORD *)(v3 + 64) = 8;
*(_QWORD *)(v3 + 8) = v4;
MiInsertVadEvent((_MMVAD_SHORT *)a1, (_MI_VAD_EVENT_BLOCK *)v3, 0i64);
return 1i64;
}
ExFreePoolWithTag((PVOID)v3, 0);
v6 = v4;
}
else
{
v6 = (void *)v3;
}
ExFreePoolWithTag(v6, 0);
}
return 0i64;
}Referenced by:
MiDeletePartialVad
MiReserveUserMemory