HvlQueryProcessorTopologyEx

NTSTATUS __stdcall HvlQueryProcessorTopologyEx(
        UINT64 LpIndex,
        UINT16 *NodeNumber,
        UINT64 *PackageId,
        UINT64 *CoreId,
        UINT64 *RootVpIndex){
  WCHAR *LpcbByLpIndex; 
  _DWORD *v9; 
  WCHAR *v10; 
  int v11; 
  int v12; 
  if( (HvlpFlags & 2) == 0 )
    return -1073741790;
  if( (unsigned int)LpIndex >= 0x400 )
    return -1073741811;
  LpcbByLpIndex = HvlpGetLpcbByLpIndex(LpIndex);
  v10 = LpcbByLpIndex;
  if( !LpcbByLpIndex )
    return -1073741811;
  if( NodeNumber )
    *NodeNumber = LpcbByLpIndex[7];
  if( PackageId )
    *(_DWORD *)PackageId = *((_DWORD *)LpcbByLpIndex + 4);
  if( v9 )
    *v9 = *((_DWORD *)LpcbByLpIndex + 5);
  if( RootVpIndex )
  {
    v11 = *((_DWORD *)LpcbByLpIndex + 6);
    v12 = -1;
    if( v11 != -1 )
      v12 = *((_DWORD *)v10 + 6);
    *(_DWORD *)RootVpIndex = v12;
  }
  return 0;
}

Referenced by:

HvlQueryProcessorTopology