private static void ConvertComplexData(CPlayerProfile profile, MainTab mainTab, SubTab subTab, out int gameCnt, out float gameWins)
        {
            int num = 0;

            gameCnt  = 0;
            gameWins = 0f;
            if (mainTab == MainTab.MatchAll)
            {
                if (subTab == SubTab.MatchAll)
                {
                    gameCnt  = profile.Pvp1V1TotalGameCnt() + profile.Pvp3V3TotalGameCnt() + profile.Pvp5V5TotalGameCnt() + profile.EntertainmentTotalGameCnt() + profile.PvpGuildTotalGameCnt() + profile.RankTotalGameCnt();
                    num      = profile.Pvp1V1WinGameCnt() + profile.Pvp3V3WinGameCnt() + profile.Pvp5V5WinGameCnt() + profile.EntertainmentWinGameCnt() + profile.PvpGuildWinGameCnt() + profile.RankWinGameCnt();
                    gameWins = CPlayerProfile.Divide((uint)num, (uint)gameCnt);
                }
                else if (subTab == SubTab.Match1V1)
                {
                    gameCnt  = profile.Pvp1V1TotalGameCnt();
                    gameWins = profile.Pvp1V1Wins();
                }
                else if (subTab == SubTab.Match3V3)
                {
                    gameCnt  = profile.Pvp3V3TotalGameCnt();
                    gameWins = profile.Pvp3V3Wins();
                }
                else if (subTab == SubTab.Match5V5)
                {
                    gameCnt  = profile.Pvp5V5TotalGameCnt();
                    gameWins = profile.Pvp5V5Wins();
                }
                else if (subTab == SubTab.MatchEntertainment)
                {
                    gameCnt  = profile.EntertainmentTotalGameCnt();
                    gameWins = profile.EntertainmentWins();
                }
                else if (subTab == SubTab.MatchGuild)
                {
                    gameCnt  = profile.PvpGuildTotalGameCnt();
                    gameWins = profile.PvpGuildWins();
                }
                else if (subTab == SubTab.MatchRank)
                {
                    gameCnt  = profile.RankTotalGameCnt();
                    gameWins = profile.RankWins();
                }
            }
            else if (mainTab == MainTab.Match100)
            {
                byte b  = 0;
                byte b2 = 0;
                CPlayerPvpInfoController.GetGameTypeAcntNum(subTab, out b, out b2);
                int num2 = 0;
                while ((long)num2 < (long)((ulong)profile.pvpExtraDetail.dwRecentNum))
                {
                    if (b == 0 || (profile.pvpExtraDetail.astRecentDetail[num2].bGameType == b && profile.pvpExtraDetail.astRecentDetail[num2].bMapAcntNum == b2))
                    {
                        num += (int)profile.pvpExtraDetail.astRecentDetail[num2].dwWinNum;
                        gameCnt++;
                    }
                    num2++;
                }
                gameWins = CPlayerProfile.Divide((uint)num, (uint)gameCnt);
            }
        }