HvlQueryNumaDistance

INT64 __fastcall HvlQueryNumaDistance(_ACL *Acl, UINT64 AceIndex){
  __int64 *v2; 
  __int64 v3; 
  __int64 v4; 
  __int64 *v5; 
  LONGLONG *v6; 
  LONGLONG *v7; 
  __int64 v8; 
  __int16 v9; 
  __int64 v10; 
  unsigned int v11; 
  __int128 v13[2]; 
  __int128 v14[2]; 
  v3 = (unsigned __int16)AceIndex;
  v4 = (unsigned __int16)Acl;
  v5 = v2;
  memset(v14, 0, sizeof(v14));
  memset(v13, 0, sizeof(v13));
  v6 = HvlpAcquireHypercallPage((PHYSICAL_ADDRESS *)v14, 1, 0i64, 8i64);
  v7 = HvlpAcquireHypercallPage((PHYSICAL_ADDRESS *)v13, 2, 0i64, 8i64);
  v8 = *((_QWORD *)&KeNodeBlock + v3);
  *(_DWORD *)v6 = *(_DWORD *)(*((_QWORD *)&KeNodeBlock + *(unsigned __int16 *)(*((_QWORD *)&KeNodeBlock + v4) + 148i64))
                            + 168i64);
  *((_DWORD *)v6 + 1) = *(_DWORD *)(*((_QWORD *)&KeNodeBlock + *(unsigned __int16 *)(v8 + 148)) + 168i64);
  HvcallInitiateHypercall();
  if( v9 )
    v10 = -1i64;
  else
    v10 = *v7;
  *v5 = v10;
  v11 = v9 != 0 ? 0xC0000001 : 0;
  HvlpReleaseHypercallPage((unsigned int *)v13);
  HvlpReleaseHypercallPage((unsigned int *)v14);
  return v11;
}

Referenced by:

No references.