using System; using System.Runtime.CompilerServices; using AGUI.StackedUI; using CodeStage.AntiCheat.ObscuredTypes; using Cpp2IlInjected; using RecNet; using RecRoom.Core; using RRUI.Navigation; using UnityEngine; namespace RecRoom.Sharing { // Token: 0x02002221 RID: 8737 [Token(Token = "0x2002221")] public class ClubCode : ActionCode { // Token: 0x0600E00B RID: 57355 RVA: 0x0033D2A0 File Offset: 0x0033B4A0 [Token(Token = "0x600E00B")] [Address(RVA = "0x111DED0", Offset = "0x111CCD0", VA = "0x18111DED0", Slot = "5")] public override PMGCJEPKFOF Create(object IIFJDCEPNMJ) { /* An exception occurred when decompiling this method (0600E00B) ICSharpCode.Decompiler.DecompilerException: Error decompiling PMGCJEPKFOF RecRoom.Sharing.ClubCode::Create(System.Object) ---> System.Exception: Basic block has to end with unconditional control flow. { Block_2: brtrue(IL_00, ceq:bool(ldloc:DABKFAIHBBP(var_8_43), ldc.i4:int32[exp:DABKFAIHBBP](0))) } at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88 --- End of inner exception stack trace --- at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1660 */; } // Token: 0x0600E00C RID: 57356 RVA: 0x0033D2FC File Offset: 0x0033B4FC [Token(Token = "0x600E00C")] [Address(RVA = "0x111DCE0", Offset = "0x111CAE0", VA = "0x18111DCE0", Slot = "6")] public override DABKFAIHBBP CreateAndShare(Route LPJOBOLHFMI, object IIFJDCEPNMJ) { Action action = delegate(ActionCode.HKFNFGGEPMP result) { ActionCode.Configuration config = this.Config; Route rruishareRoute = LPJOBOLHFMI; }; throw new NullReferenceException(); } // Token: 0x0600E00D RID: 57357 RVA: 0x0033D330 File Offset: 0x0033B530 [Token(Token = "0x600E00D")] [Address(RVA = "0x111DDC0", Offset = "0x111CBC0", VA = "0x18111DDC0", Slot = "7")] public override void CreateButtonPressed() { WatchUI local = WatchUI.BFPPPLIJIGC; RRUIRootScreen flowByType = local.GetFlowByType(); CIIBGMBOFEI ciibgmbofei = Matchmaking.BBJAEJHMAPB; if (ciibgmbofei != 0 && ciibgmbofei.k__BackingField == KCNDCDBBLFH.Clubhouse) { long k__BackingField = Matchmaking.BBJAEJHMAPB.k__BackingField; flowByType.ShowScreenAndGoToClubDetails(k__BackingField); return; } int num = 0; local.PushFlow(flowByType, num); } // Token: 0x0600E00E RID: 57358 RVA: 0x0033D390 File Offset: 0x0033B590 [Token(Token = "0x600E00E")] [Address(RVA = "0x111E170", Offset = "0x111CF70", VA = "0x18111E170", Slot = "8")] public override DABKFAIHBBP Handle(LinkManager.ELGKGFGCNJL JBLKFFDDMJH) { ClubCode.ClubData data; if (data > (ulong)0L) { int num = 0; PLILLKHMNDA club = num; bool joined = num != 0; ClubCode.ClubData data4 = data; Func func = delegate(PLILLKHMNDA c) { LinkManager.ELGKGFGCNJL pendingLink = JBLKFFDDMJH; club = c; COFHGNFJMOG.OLOEFOJHNGF liokhlnndfl = pendingLink.LIOKHLNNDFL; ClubCode <>4__this = this; string k__BackingField = liokhlnndfl.k__BackingField; ActionCode.Configuration config = <>4__this.Config; if (config.autoRenew) { int validHours = config.validHours; } int num2 = 0; LinkManager.ELGKGFGCNJL pendingLink2 = JBLKFFDDMJH; bool mhjmmlihdea = pendingLink2.MHJMMLIHDEA; bool nnnoilancib = pendingLink2.NNNOILANCIB; return ActionCode.ConsumeActionLinkIfValid(k__BackingField, num2, (EAEKNPLNKKO)((uint)3), nnnoilancib, mhjmmlihdea); }; num += num; num++; if (ClubCode.<>c.<>9__8_1 == 0) { ClubCode.<>c.<>9__8_1 = delegate { Scheduler instance = SingletonMonoBehaviour.ONCPNMDGGKG; LinkManager.BDJPCEJOMEC bdjpcejomec; bdjpcejomec.System.IDisposable.Dispose(); bdjpcejomec.<>1__state = (int)((ulong)0L); bdjpcejomec.waitForWatchClosed = false; KFBABPAPIMB kfbabpapimb = instance.Run(bdjpcejomec); throw new NullReferenceException(); }; } Action <>9__3; Action <>9__4; Func func2 = delegate { LinkManager.ELGKGFGCNJL pendingLink3 = JBLKFFDDMJH; ClubCode.ClubData data2 = data; PJCALHOPMKJ joinability = data.Joinability; COFHGNFJMOG.OLOEFOJHNGF liokhlnndfl2 = pendingLink3.LIOKHLNNDFL; if (<>9__3 == 0) { Action action = delegate { joined = true; NotificationManager instance2 = SingletonMonoBehaviour.ONCPNMDGGKG; if (instance2 != 0) { ClubCode <>4__this2 = this; PLILLKHMNDA club2 = club; if (club2 == 0 || club2.k__BackingField == 0) { } string text = string.Format(<>4__this2.clubJoined, "this club"); int num3 = 0; int num4 = 0; instance2.PlayWatchNotification(num4 != 0, (NotificationManager.HLJEOKDOLPF)(-1), text, num3); } }; <>9__3 = action; } if (<>9__4 == 0) { Action action2 = delegate { while (!joined) { ClubCode.ClubData data3 = data; JJGHAFKJBEI doohkcanflo = PEGGCEDHBOF.DOOHKCANFLO; ObscuredInt k__BackingField = doohkcanflo.k__BackingField; bool fakeValueActive = doohkcanflo.k__BackingField.fakeValueActive; int num5 = ObscuredInt.FAJDMKOEFLH(k__BackingField); PPGPAHNMGEC? ppgpahnmgec; if (ppgpahnmgec != 0 && ppgpahnmgec.value.ALEILMLLKCF()) { break; } bool inited = PEGGCEDHBOF.DOOHKCANFLO.k__BackingField.inited; bool flag; if (!flag) { if (club.k__BackingField != DIGMAIMMHAP.Public) { if (WatchUI.BFPPPLIJIGC != 0) { ClubCode <>4__this3 = this; } return; } break; } else if (WatchUI.BFPPPLIJIGC != 0) { ClubCode <>4__this4 = this; break; } } RRUIRootScreen flowByType = WatchUI.BFPPPLIJIGC.GetFlowByType(); int num6 = 0; bool flag2 = WatchUI.OpenWatchFlow(flowByType, true, num6); throw new NullReferenceException(); }; <>9__4 = action2; } throw new NullReferenceException(); }; } DABKFAIHBBP dabkfaihbbp = JJEKJGALHKO.LIPGKFECLDO("Invalid Club Id"); throw new NullReferenceException(); } // Token: 0x0600E00F RID: 57359 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x600E00F")] [Address(RVA = "0x402080", Offset = "0x400E80", VA = "0x180402080", Slot = "9")] public override void ModifyPreAuthLaunchTarget(BootSequence.IIACGMGMLOB HHBNIDNOLDI, LinkManager.ELGKGFGCNJL JBLKFFDDMJH) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x0600E010 RID: 57360 RVA: 0x0033D428 File Offset: 0x0033B628 [Token(Token = "0x600E010")] [Address(RVA = "0x111E450", Offset = "0x111D250", VA = "0x18111E450")] public ClubCode() { } // Token: 0x04009181 RID: 37249 [FieldOffset(Offset = "0x28")] [Token(Token = "0x4009181")] [SerializeField] [Header("UI Strings:")] [Tooltip("Error dialog Body for when we can't even show the club UI due to permissions or club settings")] private string cantShowClubBody = "This club is private and the sender doesn't have permissions to invite you."; // Token: 0x04009182 RID: 37250 [FieldOffset(Offset = "0x30")] [Token(Token = "0x4009182")] [SerializeField] [Tooltip("Error dialog Title for when we can't even show the club UI due to permissions or club settings")] private string cantShowClubTitle = "Club Code Failed"; // Token: 0x04009183 RID: 37251 [FieldOffset(Offset = "0x38")] [Token(Token = "0x4009183")] [SerializeField] [Tooltip("Message when someone joins a club. Use {0} to insert the club's name.")] private string clubJoined = "You are now a member of {0}!"; // Token: 0x04009184 RID: 37252 [FieldOffset(Offset = "0x40")] [Token(Token = "0x4009184")] [SerializeField] [Tooltip("Error dialog Body for when we can't even show the club UI because the player is a Junior")] private string juniorCantJoinBody = "This club does not allow Junior accounts to join."; // Token: 0x04009185 RID: 37253 [FieldOffset(Offset = "0x48")] [Token(Token = "0x4009185")] [SerializeField] [Tooltip("Error dialog Title for when we can't even show the club UI because the player is a Junior")] private string juniorCantJoinTitle = "Club Code Failed"; // Token: 0x02002222 RID: 8738 [Token(Token = "0x2002222")] [Serializable] private struct ClubData { // Token: 0x04009186 RID: 37254 [FieldOffset(Offset = "0x0")] [Token(Token = "0x4009186")] public long ClubId; // Token: 0x04009187 RID: 37255 [FieldOffset(Offset = "0x8")] [Token(Token = "0x4009187")] public PJCALHOPMKJ Joinability; // Token: 0x04009188 RID: 37256 [FieldOffset(Offset = "0xC")] [Token(Token = "0x4009188")] public DIGMAIMMHAP Visibility; } // Token: 0x02002223 RID: 8739 [Token(Token = "0x2002223")] [CompilerGenerated] private sealed class AGBNJAPCHKC { // Token: 0x0600E011 RID: 57361 RVA: 0x0033D474 File Offset: 0x0033B674 [Token(Token = "0x600E011")] [Address(RVA = "0x3F5100", Offset = "0x3F3F00", VA = "0x1803F5100")] public AGBNJAPCHKC() { } // Token: 0x0600E012 RID: 57362 RVA: 0x0033D488 File Offset: 0x0033B688 [Token(Token = "0x600E012")] [Address(RVA = "0x111AE60", Offset = "0x1119C60", VA = "0x18111AE60")] internal void b__0(ActionCode.HKFNFGGEPMP result) { ActionCode.Configuration config = this.<>4__this.Config; Route rruishareRoute = this.RRUIShareRoute; } // Token: 0x04009189 RID: 37257 [FieldOffset(Offset = "0x10")] [Token(Token = "0x4009189")] public Route RRUIShareRoute; // Token: 0x0400918A RID: 37258 [FieldOffset(Offset = "0x18")] [Token(Token = "0x400918A")] public ClubCode <>4__this; } // Token: 0x02002224 RID: 8740 [Token(Token = "0x2002224")] [CompilerGenerated] private sealed class ADIIABBAMNN { // Token: 0x0600E013 RID: 57363 RVA: 0x0033D4B0 File Offset: 0x0033B6B0 [Token(Token = "0x600E013")] [Address(RVA = "0x3F5100", Offset = "0x3F3F00", VA = "0x1803F5100")] public ADIIABBAMNN() { } // Token: 0x0600E014 RID: 57364 RVA: 0x0033D4C4 File Offset: 0x0033B6C4 [Token(Token = "0x600E014")] [Address(RVA = "0x111A5C0", Offset = "0x11193C0", VA = "0x18111A5C0")] internal DABKFAIHBBP b__0(PLILLKHMNDA c) { LinkManager.ELGKGFGCNJL elgkgfgcnjl = this.pendingLink; this.club = c; COFHGNFJMOG.OLOEFOJHNGF liokhlnndfl = elgkgfgcnjl.LIOKHLNNDFL; ClubCode clubCode = this.<>4__this; string k__BackingField = liokhlnndfl.k__BackingField; ActionCode.Configuration config = clubCode.Config; if (config.autoRenew) { int validHours = config.validHours; } int num = 0; LinkManager.ELGKGFGCNJL elgkgfgcnjl2 = this.pendingLink; bool mhjmmlihdea = elgkgfgcnjl2.MHJMMLIHDEA; bool nnnoilancib = elgkgfgcnjl2.NNNOILANCIB; return ActionCode.ConsumeActionLinkIfValid(k__BackingField, num, (EAEKNPLNKKO)((uint)3), nnnoilancib, mhjmmlihdea); } // Token: 0x0600E015 RID: 57365 RVA: 0x0033D540 File Offset: 0x0033B740 [Token(Token = "0x600E015")] [Address(RVA = "0x111A6A0", Offset = "0x11194A0", VA = "0x18111A6A0")] internal DABKFAIHBBP b__2() { LinkManager.ELGKGFGCNJL elgkgfgcnjl = this.pendingLink; ClubCode.ClubData clubData = this.data; PJCALHOPMKJ joinability = this.data.Joinability; COFHGNFJMOG.OLOEFOJHNGF liokhlnndfl = elgkgfgcnjl.LIOKHLNNDFL; if (this.<>9__3 == 0) { Action action = delegate { this.joined = true; NotificationManager instance = SingletonMonoBehaviour.ONCPNMDGGKG; if (instance != 0) { ClubCode clubCode = this.<>4__this; PLILLKHMNDA plillkhmnda = this.club; if (plillkhmnda == 0 || plillkhmnda.k__BackingField == 0) { } string text = string.Format(clubCode.clubJoined, "this club"); int num = 0; int num2 = 0; instance.PlayWatchNotification(num2 != 0, (NotificationManager.HLJEOKDOLPF)(-1), text, num); } }; this.<>9__3 = action; } if (this.<>9__4 == 0) { Action action2 = delegate { while (!this.joined) { ClubCode.ClubData clubData2 = this.data; JJGHAFKJBEI doohkcanflo = PEGGCEDHBOF.DOOHKCANFLO; ObscuredInt k__BackingField = doohkcanflo.k__BackingField; bool fakeValueActive = doohkcanflo.k__BackingField.fakeValueActive; int num3 = ObscuredInt.FAJDMKOEFLH(k__BackingField); PPGPAHNMGEC? ppgpahnmgec; if (ppgpahnmgec != 0 && ppgpahnmgec.value.ALEILMLLKCF()) { break; } bool inited = PEGGCEDHBOF.DOOHKCANFLO.k__BackingField.inited; bool flag; if (!flag) { if (this.club.k__BackingField != DIGMAIMMHAP.Public) { if (WatchUI.BFPPPLIJIGC != 0) { ClubCode clubCode2 = this.<>4__this; } return; } break; } else if (WatchUI.BFPPPLIJIGC != 0) { ClubCode clubCode3 = this.<>4__this; break; } } RRUIRootScreen flowByType = WatchUI.BFPPPLIJIGC.GetFlowByType(); int num4 = 0; bool flag2 = WatchUI.OpenWatchFlow(flowByType, true, num4); throw new NullReferenceException(); }; this.<>9__4 = action2; } throw new NullReferenceException(); } // Token: 0x0600E016 RID: 57366 RVA: 0x0033D5B4 File Offset: 0x0033B7B4 [Token(Token = "0x600E016")] [Address(RVA = "0x111A7E0", Offset = "0x11195E0", VA = "0x18111A7E0")] internal void b__3() { this.joined = true; NotificationManager instance = SingletonMonoBehaviour.ONCPNMDGGKG; if (instance != 0) { ClubCode clubCode = this.<>4__this; PLILLKHMNDA plillkhmnda = this.club; if (plillkhmnda == 0 || plillkhmnda.k__BackingField == 0) { } string text = string.Format(clubCode.clubJoined, "this club"); int num = 0; int num2 = 0; instance.PlayWatchNotification(num2 != 0, (NotificationManager.HLJEOKDOLPF)(-1), text, num); } } // Token: 0x0600E017 RID: 57367 RVA: 0x0033D618 File Offset: 0x0033B818 [Token(Token = "0x600E017")] [Address(RVA = "0x111A8A0", Offset = "0x11196A0", VA = "0x18111A8A0")] internal void b__4() { while (!this.joined) { ClubCode.ClubData clubData = this.data; JJGHAFKJBEI doohkcanflo = PEGGCEDHBOF.DOOHKCANFLO; ObscuredInt k__BackingField = doohkcanflo.k__BackingField; bool fakeValueActive = doohkcanflo.k__BackingField.fakeValueActive; int num = ObscuredInt.FAJDMKOEFLH(k__BackingField); PPGPAHNMGEC? ppgpahnmgec; if (ppgpahnmgec != 0 && ppgpahnmgec.value.ALEILMLLKCF()) { break; } bool inited = PEGGCEDHBOF.DOOHKCANFLO.k__BackingField.inited; bool flag; if (!flag) { if (this.club.k__BackingField != DIGMAIMMHAP.Public) { if (WatchUI.BFPPPLIJIGC != 0) { ClubCode clubCode = this.<>4__this; } return; } break; } else if (WatchUI.BFPPPLIJIGC != 0) { ClubCode clubCode2 = this.<>4__this; break; } } RRUIRootScreen flowByType = WatchUI.BFPPPLIJIGC.GetFlowByType(); int num2 = 0; bool flag2 = WatchUI.OpenWatchFlow(flowByType, true, num2); throw new NullReferenceException(); } // Token: 0x0400918B RID: 37259 [FieldOffset(Offset = "0x10")] [Token(Token = "0x400918B")] public PLILLKHMNDA club; // Token: 0x0400918C RID: 37260 [FieldOffset(Offset = "0x18")] [Token(Token = "0x400918C")] public LinkManager.ELGKGFGCNJL pendingLink; // Token: 0x0400918D RID: 37261 [FieldOffset(Offset = "0x20")] [Token(Token = "0x400918D")] public ClubCode <>4__this; // Token: 0x0400918E RID: 37262 [FieldOffset(Offset = "0x28")] [Token(Token = "0x400918E")] public ClubCode.ClubData data; // Token: 0x0400918F RID: 37263 [FieldOffset(Offset = "0x38")] [Token(Token = "0x400918F")] public bool joined; // Token: 0x04009190 RID: 37264 [FieldOffset(Offset = "0x40")] [Token(Token = "0x4009190")] public Action <>9__3; // Token: 0x04009191 RID: 37265 [FieldOffset(Offset = "0x48")] [Token(Token = "0x4009191")] public Action <>9__4; } } }