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); } }