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