MiRemoveVad

NTSTATUS __stdcall MiRemoveVad(_RTL_BALANCED_NODE *Node, INT64 a2){
  _QWORD *v2; 
  __int64 v5; 

  v2 = (_QWORD *)(a2 + 2008);
  RtlAvlRemoveNode((UINT64 *)(a2 + 2008), (INT64 *)Node);
  if( *(_RTL_BALANCED_NODE **)(a2 + 2016) == Node )
    *(_QWORD *)(a2 + 2016) = *v2;
  --*(_QWORD *)(a2 + 2024);
  Node->ParentValue = -2i64;
  LOBYTE(v5) = MiIsVadLargePrivate((INT64)Node);
  if( (_DWORD)v5 )
  {
    v5 = (LODWORD(Node[2].Children[0]) >> 18) & 3;
    if( (unsigned __int64)MiVadPageSizes[v5] >= 0x200 )
      --*(_DWORD *)(a2 + 2140);
  }
  return v5;
}

Referenced by:

MiRemovePlaceholderVad