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: 0x02002305 RID: 8965 [Token(Token = "0x2002305")] public class ClubCode : ActionCode { // Token: 0x0600E417 RID: 58391 RVA: 0x00346634 File Offset: 0x00344834 [Token(Token = "0x600E417")] [Address(RVA = "0x19BB1A0", Offset = "0x19BA1A0", VA = "0x1819BB1A0", Slot = "5")] public override PMGCJEPKFOF Create(object IIFJDCEPNMJ) { /* An exception occurred when decompiling this method (0600E417) 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 1663 */; } // Token: 0x0600E418 RID: 58392 RVA: 0x00346690 File Offset: 0x00344890 [Token(Token = "0x600E418")] [Address(RVA = "0x19BAFB0", Offset = "0x19B9FB0", VA = "0x1819BAFB0", 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: 0x0600E419 RID: 58393 RVA: 0x003466C4 File Offset: 0x003448C4 [Token(Token = "0x600E419")] [Address(RVA = "0x19BB090", Offset = "0x19BA090", VA = "0x1819BB090", 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: 0x0600E41A RID: 58394 RVA: 0x00346724 File Offset: 0x00344924 [Token(Token = "0x600E41A")] [Address(RVA = "0x19BB440", Offset = "0x19BA440", VA = "0x1819BB440", 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; int num3; LinkManager.FCEMOOGCLOJ fcemoogcloj = new LinkManager.FCEMOOGCLOJ(num3); num3 = 0; fcemoogcloj.waitForWatchClosed = false; KFBABPAPIMB kfbabpapimb = instance.Run(fcemoogcloj); 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 num4 = 0; int num5 = 0; instance2.PlayWatchNotification(num5 != 0, (NotificationManager.HLJEOKDOLPF)(-1), text, num4); } }; <>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 num6 = 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 num7 = 0; bool flag2 = WatchUI.OpenWatchFlow(flowByType, true, num7); throw new NullReferenceException(); }; <>9__4 = action2; } throw new NullReferenceException(); }; } DABKFAIHBBP dabkfaihbbp = JJEKJGALHKO.LIPGKFECLDO("Invalid Club Id"); throw new NullReferenceException(); } // Token: 0x0600E41B RID: 58395 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x600E41B")] [Address(RVA = "0x4242D0", Offset = "0x4232D0", VA = "0x1804242D0", 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: 0x0600E41C RID: 58396 RVA: 0x003467BC File Offset: 0x003449BC [Token(Token = "0x600E41C")] [Address(RVA = "0x19BB720", Offset = "0x19BA720", VA = "0x1819BB720")] public ClubCode() { } // Token: 0x04009355 RID: 37717 [FieldOffset(Offset = "0x28")] [Token(Token = "0x4009355")] [SerializeField] [Tooltip("Error dialog Body for when we can't even show the club UI due to permissions or club settings")] [Header("UI Strings:")] private string cantShowClubBody = "This club is private and the sender doesn't have permissions to invite you."; // Token: 0x04009356 RID: 37718 [FieldOffset(Offset = "0x30")] [Token(Token = "0x4009356")] [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: 0x04009357 RID: 37719 [FieldOffset(Offset = "0x38")] [Token(Token = "0x4009357")] [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: 0x04009358 RID: 37720 [FieldOffset(Offset = "0x40")] [Token(Token = "0x4009358")] [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: 0x04009359 RID: 37721 [FieldOffset(Offset = "0x48")] [Token(Token = "0x4009359")] [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: 0x02002306 RID: 8966 [Token(Token = "0x2002306")] [Serializable] private struct ClubData { // Token: 0x0400935A RID: 37722 [FieldOffset(Offset = "0x0")] [Token(Token = "0x400935A")] public long ClubId; // Token: 0x0400935B RID: 37723 [FieldOffset(Offset = "0x8")] [Token(Token = "0x400935B")] public PJCALHOPMKJ Joinability; // Token: 0x0400935C RID: 37724 [FieldOffset(Offset = "0xC")] [Token(Token = "0x400935C")] public DIGMAIMMHAP Visibility; } // Token: 0x02002307 RID: 8967 [Token(Token = "0x2002307")] [CompilerGenerated] private sealed class AGBNJAPCHKC { // Token: 0x0600E41D RID: 58397 RVA: 0x00346808 File Offset: 0x00344A08 [Token(Token = "0x600E41D")] [Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")] public AGBNJAPCHKC() { } // Token: 0x0600E41E RID: 58398 RVA: 0x0034681C File Offset: 0x00344A1C [Token(Token = "0x600E41E")] [Address(RVA = "0x183FD30", Offset = "0x183ED30", VA = "0x18183FD30")] internal void b__0(ActionCode.HKFNFGGEPMP result) { ActionCode.Configuration config = this.<>4__this.Config; Route rruishareRoute = this.RRUIShareRoute; } // Token: 0x0400935D RID: 37725 [FieldOffset(Offset = "0x10")] [Token(Token = "0x400935D")] public Route RRUIShareRoute; // Token: 0x0400935E RID: 37726 [FieldOffset(Offset = "0x18")] [Token(Token = "0x400935E")] public ClubCode <>4__this; } // Token: 0x02002308 RID: 8968 [Token(Token = "0x2002308")] [CompilerGenerated] private sealed class ADIIABBAMNN { // Token: 0x0600E41F RID: 58399 RVA: 0x00346844 File Offset: 0x00344A44 [Token(Token = "0x600E41F")] [Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")] public ADIIABBAMNN() { } // Token: 0x0600E420 RID: 58400 RVA: 0x00346858 File Offset: 0x00344A58 [Token(Token = "0x600E420")] [Address(RVA = "0x19B8A80", Offset = "0x19B7A80", VA = "0x1819B8A80")] 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: 0x0600E421 RID: 58401 RVA: 0x003468D4 File Offset: 0x00344AD4 [Token(Token = "0x600E421")] [Address(RVA = "0x19B8B60", Offset = "0x19B7B60", VA = "0x1819B8B60")] 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: 0x0600E422 RID: 58402 RVA: 0x00346948 File Offset: 0x00344B48 [Token(Token = "0x600E422")] [Address(RVA = "0x19B8CA0", Offset = "0x19B7CA0", VA = "0x1819B8CA0")] 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: 0x0600E423 RID: 58403 RVA: 0x003469AC File Offset: 0x00344BAC [Token(Token = "0x600E423")] [Address(RVA = "0x19B8D60", Offset = "0x19B7D60", VA = "0x1819B8D60")] 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: 0x0400935F RID: 37727 [FieldOffset(Offset = "0x10")] [Token(Token = "0x400935F")] public PLILLKHMNDA club; // Token: 0x04009360 RID: 37728 [FieldOffset(Offset = "0x18")] [Token(Token = "0x4009360")] public LinkManager.ELGKGFGCNJL pendingLink; // Token: 0x04009361 RID: 37729 [FieldOffset(Offset = "0x20")] [Token(Token = "0x4009361")] public ClubCode <>4__this; // Token: 0x04009362 RID: 37730 [FieldOffset(Offset = "0x28")] [Token(Token = "0x4009362")] public ClubCode.ClubData data; // Token: 0x04009363 RID: 37731 [FieldOffset(Offset = "0x38")] [Token(Token = "0x4009363")] public bool joined; // Token: 0x04009364 RID: 37732 [FieldOffset(Offset = "0x40")] [Token(Token = "0x4009364")] public Action <>9__3; // Token: 0x04009365 RID: 37733 [FieldOffset(Offset = "0x48")] [Token(Token = "0x4009365")] public Action <>9__4; } } }