HvlQueryProcessorTopologyEx

NTSTATUS __stdcall HvlQueryProcessorTopologyEx(
        UINT64 LpIndex,
        UINT16 *NodeNumber,
        UINT64 *PackageId,
        UINT64 *CoreId,
        UINT64 *RootVpIndex){
  _HVLP_LPCB *LpcbByLpIndex; 
  _DWORD *v9; 
  _HVLP_LPCB *v10; 
  _HVLP_LPCB 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 = *((_WORD *)LpcbByLpIndex + 7);
  if( PackageId )
    *(_DWORD *)PackageId = LpcbByLpIndex[4];
  if( v9 )
    *v9 = LpcbByLpIndex[5];
  if( RootVpIndex )
  {
    v11 = LpcbByLpIndex[6];
    v12 = -1;
    if( v11 != -1 )
      v12 = v10[6];
    *(_DWORD *)RootVpIndex = v12;
  }
  return 0;
}

Referenced by:

HvlQueryProcessorTopology