using System; using System.Collections.Generic; using System.Linq; using System.Runtime.InteropServices; using CodeStage.AntiCheat.ObscuredTypes; using Cpp2IlInjected; using Google.Protobuf.Collections; using JetBrains.Annotations; using Photon.Pun; using Photon.Realtime; using RecNet; using RecRoom.Core.Creation.Circuits; using RecRoom.Utils.OverridableFields; using UnityEngine; namespace RecRoom.Systems.PlayerRoles { // Token: 0x020020B7 RID: 8375 [Token(Token = "0x20020B7")] [StructLayout(3)] public class PlayerRoomRoleManager : RoleManagerBase { // Token: 0x170026B1 RID: 9905 // (get) Token: 0x0600E73D RID: 59197 RVA: 0x0036E59C File Offset: 0x0036C79C [Token(Token = "0x170026B1")] public new static PlayerRoomRoleManager ONCPNMDGGKG { [Token(Token = "0x600E73D")] [Address(RVA = "0x19C20A0", Offset = "0x19C0AA0", VA = "0x1819C20A0")] get { if (NetworkedSingletonMonoBehaviour.GCCLEJOGCCE == 0) { return; } } } // Token: 0x170026B2 RID: 9906 // (get) Token: 0x0600E73E RID: 59198 RVA: 0x0036E5B4 File Offset: 0x0036C7B4 [Token(Token = "0x170026B2")] public static bool MNFOLNMPMEE { [Token(Token = "0x600E73E")] [Address(RVA = "0x19C2500", Offset = "0x19C0F00", VA = "0x1819C2500")] get { if (NetworkedSingletonMonoBehaviour.FFNIFALJLDD) { MutableOverridableObscuredBool canUseMakerPen = PlayerRoomRoleManager.ONCPNMDGGKG.GetLocalPlayerRoleDefinition().canUseMakerPen; int num = 0; num += num; num++; bool flag; if (flag) { CIIBGMBOFEI ciibgmbofei = Matchmaking.BBJAEJHMAPB; if (ciibgmbofei.MIKOMDCPDFF() && EIMGAFPPJFD.OAFNNHLHCMN()) { return LCCEEFHOBEN.GODAMHGHDID.k__BackingField <= 0; } } } throw new NullReferenceException(); } } // Token: 0x170026B3 RID: 9907 // (get) Token: 0x0600E73F RID: 59199 RVA: 0x0036E62C File Offset: 0x0036C82C [Token(Token = "0x170026B3")] public static bool IOLMHMAAHAD { [Token(Token = "0x600E73F")] [Address(RVA = "0x19C23B0", Offset = "0x19C0DB0", VA = "0x1819C23B0")] get { if (PlayerRoomRoleManager.MNFOLNMPMEE && NetworkedSingletonMonoBehaviour.FFNIFALJLDD) { MutableOverridableObscuredBool canSpawnInventions = PlayerRoomRoleManager.ONCPNMDGGKG.GetLocalPlayerRoleDefinition().canSpawnInventions; bool flag; return flag; } throw new NullReferenceException(); } } // Token: 0x170026B4 RID: 9908 // (get) Token: 0x0600E740 RID: 59200 RVA: 0x0036E668 File Offset: 0x0036C868 [Token(Token = "0x170026B4")] public static bool IPCFEPKLJNG { [Token(Token = "0x600E740")] [Address(RVA = "0x19C2230", Offset = "0x19C0C30", VA = "0x1819C2230")] get { bool isInitialized = NetworkedSingletonMonoBehaviour.FFNIFALJLDD; if (!isInitialized) { return isInitialized; } MutableOverridableObscuredBool canSpawnConsumables = PlayerRoomRoleManager.ONCPNMDGGKG.GetLocalPlayerRoleDefinition().canSpawnConsumables; int num = 0; num += num; num++; bool flag; return flag; } } // Token: 0x170026B5 RID: 9909 // (get) Token: 0x0600E741 RID: 59201 RVA: 0x0036E6B0 File Offset: 0x0036C8B0 [Token(Token = "0x170026B5")] protected override int[] JGIFDGDOGPO { [Token(Token = "0x600E741")] [Address(RVA = "0x19C1130", Offset = "0x19BFB30", VA = "0x1819C1130", Slot = "17")] get { return PlayerRoomRoleManager.PBILJOPELGJ; } } // Token: 0x170026B6 RID: 9910 // (get) Token: 0x0600E742 RID: 59202 RVA: 0x0036E6C4 File Offset: 0x0036C8C4 [Token(Token = "0x170026B6")] protected override bool GBFHJKPPEPC { [Token(Token = "0x600E742")] [Address(RVA = "0x413970", Offset = "0x412370", VA = "0x180413970", Slot = "27")] get { } } // Token: 0x0600E743 RID: 59203 RVA: 0x0036E6D4 File Offset: 0x0036C8D4 [Token(Token = "0x600E743")] [Address(RVA = "0x19BE340", Offset = "0x19BCD40", VA = "0x1819BE340", Slot = "13")] protected override void Awake() { base.Awake(); Action action = new Action(this.CHBOJMGPHEK); ActionEvent localPlayerCreatedEvent = global::Player.LocalPlayerCreatedEvent; Action action2 = new Action(this.CLBLFCJEDLL); global::Player.LocalPlayerCreatedEvent = localPlayerCreatedEvent + action2; ActionEvent ebljhbjgdfb = Matchmaking.EBLJHBJGDFB; Action action3 = new Action(this.EBLJHBJGDFB); Matchmaking.EBLJHBJGDFB = ebljhbjgdfb + action3; } // Token: 0x0600E744 RID: 59204 RVA: 0x0036E738 File Offset: 0x0036C938 [Token(Token = "0x600E744")] [Address(RVA = "0x19C18C0", Offset = "0x19C02C0", VA = "0x1819C18C0", Slot = "18")] protected override void Start() { base.KEHAFGDDECH(); base.Start(); } // Token: 0x0600E745 RID: 59205 RVA: 0x0036E754 File Offset: 0x0036C954 [Token(Token = "0x600E745")] [Address(RVA = "0x19C12E0", Offset = "0x19BFCE0", VA = "0x1819C12E0", Slot = "14")] protected override void OnDestroy() { base.OnDestroy(); Action action = new Action(this.CHBOJMGPHEK); ActionEvent localPlayerCreatedEvent = global::Player.LocalPlayerCreatedEvent; Action action2 = new Action(this.CLBLFCJEDLL); global::Player.LocalPlayerCreatedEvent = localPlayerCreatedEvent - action2; ActionEvent ebljhbjgdfb = Matchmaking.EBLJHBJGDFB; Action action3 = new Action(this.EBLJHBJGDFB); Matchmaking.EBLJHBJGDFB = ebljhbjgdfb - action3; } // Token: 0x0600E746 RID: 59206 RVA: 0x0036E7B8 File Offset: 0x0036C9B8 [Token(Token = "0x600E746")] [Address(RVA = "0x19C0190", Offset = "0x19BEB90", VA = "0x1819C0190", Slot = "25")] protected override RoleManagerBase.FPKGDJPPILE INELADLDOKF(Photon.Realtime.Player IEKDDPPNFPF) { /* An exception occurred when decompiling this method (0600E746) ICSharpCode.Decompiler.DecompilerException: Error decompiling RecRoom.Systems.PlayerRoles.RoleManagerBase`5/FPKGDJPPILE RecRoom.Systems.PlayerRoles.PlayerRoomRoleManager::INELADLDOKF(Photon.Realtime.Player) ---> System.Exception: Basic block has to end with unconditional control flow. { Block_0: stloc:LOGMPFJAHOF(var_0_06, newobj:LOGMPFJAHOF(LOGMPFJAHOF::.ctor, ldloc:Player(IEKDDPPNFPF))) } 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.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: 0x0600E747 RID: 59207 RVA: 0x0036E7CC File Offset: 0x0036C9CC [Token(Token = "0x600E747")] [Address(RVA = "0x19BEA70", Offset = "0x19BD470", VA = "0x1819BEA70", Slot = "29")] protected override void FFKJKILNOIC(ref List MGKECHLIBOP) { base.FFKJKILNOIC(ref MGKECHLIBOP); if (PlayerRoomRoleManager.<>c.<>9__24_0 == 0) { PlayerRoomRoleManager.<>c.<>9__24_0 = (RoomRole r) => r.roleId != FMOEHCKDCKF.AG_HOST; } bool flag; if (flag) { RoomRole roomRole = this.defaultRoomHostRole; } if (PlayerRoomRoleManager.<>c.<>9__24_1 == 0) { PlayerRoomRoleManager.<>c.<>9__24_1 = (RoomRole r) => r.roleId != FMOEHCKDCKF.AG_MODERATOR; } bool flag2; if (flag2) { RoomRole roomRole2 = this.defaultRoomModeratorRole; } if (PlayerRoomRoleManager.<>c.<>9__24_2 == 0) { PlayerRoomRoleManager.<>c.<>9__24_2 = (RoomRole r) => r.roleId != FMOEHCKDCKF.AG_COOWNER; } bool flag3; if (flag3) { RoomRole roomRole3 = this.defaultRoomCoOwnerRole; } if (PlayerRoomRoleManager.<>c.<>9__24_3 == 0) { PlayerRoomRoleManager.<>c.<>9__24_3 = (RoomRole r) => r.roleId != FMOEHCKDCKF.AG_CREATOR; } bool flag4; if (flag4) { RoomRole roomRole4 = this.defaultRoomCreatorRole; } } // Token: 0x0600E748 RID: 59208 RVA: 0x0036E88C File Offset: 0x0036CA8C [Token(Token = "0x600E748")] [Address(RVA = "0x19BE940", Offset = "0x19BD340", VA = "0x1819BE940")] private void EBLJHBJGDFB() { base.KEHAFGDDECH(); } // Token: 0x0600E749 RID: 59209 RVA: 0x0036E8A0 File Offset: 0x0036CAA0 [Token(Token = "0x600E749")] [Address(RVA = "0x19BE8F0", Offset = "0x19BD2F0", VA = "0x1819BE8F0")] private void CLBLFCJEDLL() { int num = 0; this.MGPJNDFGJNP = num; base.OGEGEKEACGC(); this.CHBOJMGPHEK(); } // Token: 0x0600E74A RID: 59210 RVA: 0x0036E8C4 File Offset: 0x0036CAC4 [Token(Token = "0x600E74A")] [Address(RVA = "0x19C05A0", Offset = "0x19BEFA0", VA = "0x1819C05A0", Slot = "26")] protected override FMOEHCKDCKF JBJHLODKFDH(Photon.Realtime.Player IEKDDPPNFPF) { return PlayerRoomRoleManager.PLPLCDLNLAL(IEKDDPPNFPF); } // Token: 0x0600E74B RID: 59211 RVA: 0x0036E8D8 File Offset: 0x0036CAD8 [Token(Token = "0x600E74B")] [Address(RVA = "0x19C14A0", Offset = "0x19BFEA0", VA = "0x1819C14A0")] private static FMOEHCKDCKF PLPLCDLNLAL(Photon.Realtime.Player IEKDDPPNFPF) { if (IEKDDPPNFPF != 0) { PPENFJMFPNE ppenfjmfpne = Matchmaking.HMCJLLMDAAM; if (ppenfjmfpne == 0) { PPENFJMFPNE ppenfjmfpne2 = Matchmaking.HMCJLLMDAAM; int k__BackingField = IEKDDPPNFPF.k__BackingField; LMLJHMJEIGM lmljhmjeigm = ppenfjmfpne2.MOPDMGDPJDF(k__BackingField); } int k__BackingField2 = IEKDDPPNFPF.k__BackingField; IBDPLCIAHOJ ibdplciahoj = ppenfjmfpne.MOPDMGDPJDF(k__BackingField2).KCKMCJLMIJP(); } throw new NullReferenceException(); } // Token: 0x0600E74C RID: 59212 RVA: 0x0036E930 File Offset: 0x0036CB30 [Token(Token = "0x600E74C")] [Address(RVA = "0x19BE980", Offset = "0x19BD380", VA = "0x1819BE980")] private static bool EOOJMDGKFDB(Photon.Realtime.Player IEKDDPPNFPF, out IBDPLCIAHOJ EGPBMGPKIIL) { if (IEKDDPPNFPF == 0) { throw new NullReferenceException(); } PPENFJMFPNE ppenfjmfpne = Matchmaking.HMCJLLMDAAM; if (ppenfjmfpne == 0) { PPENFJMFPNE ppenfjmfpne2 = Matchmaking.HMCJLLMDAAM; int k__BackingField = IEKDDPPNFPF.k__BackingField; LMLJHMJEIGM lmljhmjeigm = ppenfjmfpne2.MOPDMGDPJDF(k__BackingField); return true; } int k__BackingField2 = IEKDDPPNFPF.k__BackingField; IBDPLCIAHOJ ibdplciahoj = ppenfjmfpne.MOPDMGDPJDF(k__BackingField2).KCKMCJLMIJP(); EGPBMGPKIIL.value__ = (int)ibdplciahoj; return true; } // Token: 0x0600E74D RID: 59213 RVA: 0x0036E994 File Offset: 0x0036CB94 [Token(Token = "0x600E74D")] [Address(RVA = "0x19C0FB0", Offset = "0x19BF9B0", VA = "0x1819C0FB0", Slot = "24")] protected override RoomRole MEPJPBMHJDF(int FHCCCOABPJI, RoomRole EBOAJJCLJIE, [Optional] string LKHMIMBGLNC) { RoomRole roomRole; return roomRole; } // Token: 0x0600E74E RID: 59214 RVA: 0x0036E9A4 File Offset: 0x0036CBA4 [Token(Token = "0x600E74E")] [Address(RVA = "0x19C0550", Offset = "0x19BEF50", VA = "0x1819C0550", Slot = "34")] public override bool IsPlayerDefinedRole(FMOEHCKDCKF BGHHFOOBFMA) { bool flag; return flag; } // Token: 0x0600E74F RID: 59215 RVA: 0x0036E9B4 File Offset: 0x0036CBB4 [Token(Token = "0x600E74F")] [Address(RVA = "0x19C15D0", Offset = "0x19BFFD0", VA = "0x1819C15D0", Slot = "36")] public override bool PlayerCanAssignRole(Photon.Realtime.Player CDFCCICPHFJ, Photon.Realtime.Player OEIHOFFDNNO, FMOEHCKDCKF BGHHFOOBFMA) { bool flag; if (flag && CDFCCICPHFJ != 0) { GJJLAOJHDKF gjjlaojhdkf = base.NHGKIEFIOKC(CDFCCICPHFJ); GJJLAOJHDKF gjjlaojhdkf2 = base.NHGKIEFIOKC(OEIHOFFDNNO); if (gjjlaojhdkf > gjjlaojhdkf2) { MutableOverridableObscuredBool canEditRoomRoles = base.GetPlayerRoleDefinition(CDFCCICPHFJ).canEditRoomRoles; bool flag2; if (flag2) { } } } throw new NullReferenceException(); } // Token: 0x0600E750 RID: 59216 RVA: 0x0036E9F8 File Offset: 0x0036CBF8 [Token(Token = "0x600E750")] [Address(RVA = "0x19C1710", Offset = "0x19C0110", VA = "0x1819C1710", Slot = "35")] public override bool PlayerCanModifyRoleDefinition(Photon.Realtime.Player BANKGLOHKOJ, FMOEHCKDCKF BGHHFOOBFMA) { bool flag; if (flag && BANKGLOHKOJ != 0) { GJJLAOJHDKF gjjlaojhdkf = base.NHGKIEFIOKC(BANKGLOHKOJ); RoomRole roleDefinition = base.GetRoleDefinition((uint)4194304); RoomRole roleDefinition2 = base.GetRoleDefinition((uint)4194304); RoomRole roomRole; if (gjjlaojhdkf >= roleDefinition2.rank || roomRole.rank < gjjlaojhdkf) { MutableOverridableObscuredBool canEditRoomRoles = base.GetPlayerRoleDefinition(BANKGLOHKOJ).canEditRoomRoles; bool flag2; if (flag2) { } } } throw new NullReferenceException(); } // Token: 0x0600E751 RID: 59217 RVA: 0x0036EA60 File Offset: 0x0036CC60 [Token(Token = "0x600E751")] [Address(RVA = "0x19C1030", Offset = "0x19BFA30", VA = "0x1819C1030", Slot = "33")] protected override bool MFNJGEEPNKI(Photon.Realtime.Player IEKDDPPNFPF) { if (base.MFNJGEEPNKI(IEKDDPPNFPF) && IEKDDPPNFPF != 0) { MutableOverridableObscuredBool canEditRoomRoles = base.GetPlayerRoleDefinition(IEKDDPPNFPF).canEditRoomRoles; bool flag; if (flag) { return true; } } throw new NullReferenceException(); } // Token: 0x0600E752 RID: 59218 RVA: 0x0036EA98 File Offset: 0x0036CC98 [Token(Token = "0x600E752")] [Address(RVA = "0x19C1190", Offset = "0x19BFB90", VA = "0x1819C1190", Slot = "32")] protected override bool NINOBPHPMOO(Photon.Realtime.Player JKJPFDENCGO, RoomRole GPLBFCPMJOC, RoomRole ODCFAOCDPHA) { if (base.NINOBPHPMOO(JKJPFDENCGO, GPLBFCPMJOC, ODCFAOCDPHA) && JKJPFDENCGO != 0 && base.NHGKIEFIOKC(JKJPFDENCGO) > GPLBFCPMJOC.rank && base.NHGKIEFIOKC(JKJPFDENCGO) > ODCFAOCDPHA.rank) { MutableOverridableObscuredBool canEditRoomRoles = base.GetPlayerRoleDefinition(JKJPFDENCGO).canEditRoomRoles; } throw new NullReferenceException(); } // Token: 0x0600E753 RID: 59219 RVA: 0x0036EAE8 File Offset: 0x0036CCE8 [Token(Token = "0x600E753")] [Address(RVA = "0x4577C0", Offset = "0x4561C0", VA = "0x1804577C0", Slot = "20")] protected override int JLHFDBNABEO(FMOEHCKDCKF BGHHFOOBFMA) { return (int)BGHHFOOBFMA; } // Token: 0x0600E754 RID: 59220 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x600E754")] [Address(RVA = "0x4577C0", Offset = "0x4561C0", VA = "0x1804577C0", Slot = "21")] protected override FMOEHCKDCKF MEPAEFIIPBD(int BGHHFOOBFMA) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x0600E755 RID: 59221 RVA: 0x0036EAF8 File Offset: 0x0036CCF8 [Token(Token = "0x600E755")] [Address(RVA = "0x19C0130", Offset = "0x19BEB30", VA = "0x1819C0130", Slot = "22")] protected override int[] IHAKAMMGHLM(FMOEHCKDCKF[] KEHPOHCJCEM) { if (KEHPOHCJCEM != 0) { return Enumerable.ToArray(Enumerable.Cast(KEHPOHCJCEM)); } return 0; } // Token: 0x0600E756 RID: 59222 RVA: 0x0036EB18 File Offset: 0x0036CD18 [Token(Token = "0x600E756")] [Address(RVA = "0x19BEE20", Offset = "0x19BD820", VA = "0x1819BEE20", Slot = "23")] protected override bool FMAEGJFPJLP(int BGHHFOOBFMA) { bool flag; return flag; } // Token: 0x0600E757 RID: 59223 RVA: 0x0036EB28 File Offset: 0x0036CD28 [Token(Token = "0x600E757")] [Address(RVA = "0x1296D20", Offset = "0x1295720", VA = "0x181296D20", Slot = "37")] protected override PFBMHEOFPJF MNGDIIPNICA(DBFIJENOPDA KGADGOFNJDC) { return KGADGOFNJDC.IBIFFFBIMHN; } // Token: 0x0600E758 RID: 59224 RVA: 0x0036EB44 File Offset: 0x0036CD44 [Token(Token = "0x600E758")] [Address(RVA = "0x19BFF60", Offset = "0x19BE960", VA = "0x1819BFF60", Slot = "39")] protected override PFBMHEOFPJF HNBCMNLALEO(byte[] KCKDIGBCOME) { return PFBMHEOFPJF.MHLLBDFJBOD.ParseFrom(KCKDIGBCOME); } // Token: 0x0600E759 RID: 59225 RVA: 0x0036EB64 File Offset: 0x0036CD64 [Token(Token = "0x600E759")] [Address(RVA = "0x19C0BF0", Offset = "0x19BF5F0", VA = "0x1819C0BF0", Slot = "40")] protected override void LEBDNKFDHII(PFBMHEOFPJF JHFHALKCDGD) { int num; IEnumerator enumerator; MutableOverridableObscuredBool canEditRoomRoles; do { num = 0; if (JHFHALKCDGD == 0) { return; } enumerator = JHFHALKCDGD.NGJFBNALBIA.GetEnumerator(); if (enumerator != 0) { if (num < enumerator) { num += num; if (num == enumerator) { goto IL_5A; } num++; } bool flag; RoomRole roomRole; if (flag || roomRole.k__BackingField != flag) { } canEditRoomRoles = roomRole.canEditRoomRoles; if (Matchmaking.HMCJLLMDAAM == 0) { continue; } MutableOverridableObscuredBool disableMicAutoMute = roomRole.disableMicAutoMute; ObscuredBool obscuredBool; bool fakeValue = obscuredBool.fakeValue; } IL_5A: int num2 = 0; if (enumerator != 0 && num2 < typeof(GPNBGDFOBNK).TypeHandle) { num2 += num2; num2++; } if (num != -1) { } } while (canEditRoomRoles != 0); enumerator += enumerator; num += 19; } // Token: 0x0600E75A RID: 59226 RVA: 0x0036EC24 File Offset: 0x0036CE24 [Token(Token = "0x600E75A")] [Address(RVA = "0x19BF420", Offset = "0x19BDE20", VA = "0x1819BF420", Slot = "42")] protected override void HEEDPDGPPON(DBFIJENOPDA KGADGOFNJDC) { base.HEEDPDGPPON(KGADGOFNJDC); if (KGADGOFNJDC.ELFBKDCEIIN < 10) { BCBIAHAOLIM fkbhanpdjlh = KGADGOFNJDC.FKBHANPDJLH; if (fkbhanpdjlh != 0) { int phbfonfodfn = fkbhanpdjlh.PHBFONFODFN; int num = 0; if (phbfonfodfn == 0) { MutableOverridableObscuredBool deprecatedCanEditCircuits = base.GetRoleDefinition(num).deprecatedCanEditCircuits; MutableOverridableObscuredBool deprecatedCanEditCircuits2 = base.GetRoleDefinition((uint)8388608).deprecatedCanEditCircuits; MutableOverridableObscuredBool deprecatedCanEditCircuits3 = base.GetRoleDefinition((uint)4194304).deprecatedCanEditCircuits; } MutableOverridableObscuredBool deprecatedCanEditCircuits4 = base.GetRoleDefinition(num).deprecatedCanEditCircuits; MutableOverridableObscuredBool deprecatedCanEditCircuits5 = base.GetRoleDefinition((uint)8388608).deprecatedCanEditCircuits; MutableOverridableObscuredBool deprecatedCanEditCircuits6 = base.GetRoleDefinition((uint)8388608).deprecatedCanEditCircuits; MutableOverridableObscuredBool deprecatedCanEditCircuits7 = base.GetRoleDefinition((uint)16777216).deprecatedCanEditCircuits; MutableOverridableObscuredBool deprecatedCanEditCircuits8 = base.GetRoleDefinition((uint)4194304).deprecatedCanEditCircuits; MutableOverridableObscuredBool deprecatedCanEditCircuits9 = base.GetRoleDefinition((uint)2097152).deprecatedCanEditCircuits; if (fkbhanpdjlh.PBFNLOJAHBN) { int num2 = 0; MutableOverridableObscuredBool canInvite = base.GetRoleDefinition(num2).canInvite; MutableOverridableObscuredBool canInvite2 = base.GetRoleDefinition((uint)8388608).canInvite; MutableOverridableObscuredBool canInvite3 = base.GetRoleDefinition((uint)16777216).canInvite; MutableOverridableObscuredBool canInvite4 = base.GetRoleDefinition((uint)4194304).canInvite; MutableOverridableObscuredBool canInvite5 = base.GetRoleDefinition((uint)2097152).canInvite; } if (fkbhanpdjlh.DMPGLPCINHJ) { int num3 = 0; MutableOverridableObscuredBool canPrintPhotos = base.GetRoleDefinition(num3).canPrintPhotos; MutableOverridableObscuredBool canPrintPhotos2 = base.GetRoleDefinition((uint)8388608).canPrintPhotos; MutableOverridableObscuredBool canPrintPhotos3 = base.GetRoleDefinition((uint)16777216).canPrintPhotos; MutableOverridableObscuredBool canPrintPhotos4 = base.GetRoleDefinition((uint)4194304).canPrintPhotos; MutableOverridableObscuredBool canPrintPhotos5 = base.GetRoleDefinition((uint)2097152).canPrintPhotos; } if (fkbhanpdjlh.GHHMBHIPFGD) { int num4 = 0; MutableOverridableObscuredBool canStartGames = base.GetRoleDefinition(num4).canStartGames; MutableOverridableObscuredBool canStartGames2 = base.GetRoleDefinition((uint)8388608).canStartGames; MutableOverridableObscuredBool canStartGames3 = base.GetRoleDefinition((uint)16777216).canStartGames; MutableOverridableObscuredBool canStartGames4 = base.GetRoleDefinition((uint)4194304).canStartGames; MutableOverridableObscuredBool canStartGames5 = base.GetRoleDefinition((uint)2097152).canStartGames; } if (fkbhanpdjlh.GFNPELHCJIB) { int num5 = 0; MutableOverridableVotekickType voteKickPermission = base.GetRoleDefinition(num5).voteKickPermission; ObscuredVotekickType obscuredVotekickType = ObscuredVotekickType.FAJDMKOEFLH(GPFHLEIFNDG.Off); MutableOverridableVotekickType voteKickPermission2 = base.GetRoleDefinition((uint)8388608).voteKickPermission; ObscuredVotekickType obscuredVotekickType2 = ObscuredVotekickType.FAJDMKOEFLH(GPFHLEIFNDG.Instant); MutableOverridableVotekickType voteKickPermission3 = base.GetRoleDefinition((uint)16777216).voteKickPermission; ObscuredVotekickType obscuredVotekickType3 = ObscuredVotekickType.FAJDMKOEFLH(GPFHLEIFNDG.Instant); MutableOverridableVotekickType voteKickPermission4 = base.GetRoleDefinition((uint)4194304).voteKickPermission; ObscuredVotekickType obscuredVotekickType4 = ObscuredVotekickType.FAJDMKOEFLH(GPFHLEIFNDG.Instant); MutableOverridableVotekickType voteKickPermission5 = base.GetRoleDefinition((uint)2097152).voteKickPermission; ObscuredVotekickType obscuredVotekickType5 = ObscuredVotekickType.FAJDMKOEFLH(GPFHLEIFNDG.Instant); } } } } // Token: 0x0600E75B RID: 59227 RVA: 0x0036EED0 File Offset: 0x0036D0D0 [Token(Token = "0x600E75B")] [Address(RVA = "0x19C0A90", Offset = "0x19BF490", VA = "0x1819C0A90", Slot = "41")] protected override PFBMHEOFPJF LBMEFCFIDFK() { int num = 0; List sortedActiveRoles = base.GetSortedActiveRoles(num != 0); PFBMHEOFPJF pfbmheofpjf = new PFBMHEOFPJF(); RepeatedField ngjfbnalbia = pfbmheofpjf.NGJFBNALBIA; Func <>9__44_ = PlayerRoomRoleManager.<>c.<>9__44_0; if (<>9__44_ == 0) { PlayerRoomRoleManager.<>c.<>9__44_0 = (RoomRole r) => r.KCINMMHMPGF(); } IEnumerable enumerable = Enumerable.Select(sortedActiveRoles, <>9__44_); ngjfbnalbia.AddRange(enumerable); return pfbmheofpjf; } // Token: 0x0600E75C RID: 59228 RVA: 0x0036EF30 File Offset: 0x0036D130 [Token(Token = "0x600E75C")] [Address(RVA = "0x19BE620", Offset = "0x19BD020", VA = "0x1819BE620", Slot = "38")] protected override void CDNPEAAJAOL(ref DBFIJENOPDA KGADGOFNJDC, PFBMHEOFPJF JHFHALKCDGD) { } // Token: 0x0600E75D RID: 59229 RVA: 0x0036EF44 File Offset: 0x0036D144 [Token(Token = "0x600E75D")] [Address(RVA = "0x19BE7B0", Offset = "0x19BD1B0", VA = "0x1819BE7B0")] private void CHBOJMGPHEK() { bool isInitialized = NetworkedSingletonMonoBehaviour.FFNIFALJLDD; if (isInitialized && isInitialized) { List localPlayerGameRolesToAssign = this.GetLocalPlayerGameRolesToAssign(); PlayerGameRoleManager instance = PlayerGameRoleManager.ONCPNMDGGKG; Photon.Realtime.Player localPlayer = PhotonNetwork.LocalPlayer; CMDADAAOBHD[] array = localPlayerGameRolesToAssign.ToArray(); } } // Token: 0x0600E75E RID: 59230 RVA: 0x0036EF88 File Offset: 0x0036D188 [Token(Token = "0x600E75E")] [Address(RVA = "0x19BEE70", Offset = "0x19BD870", VA = "0x1819BEE70")] public List GetLocalPlayerGameRolesToAssign() { int num = 0; num += num; num++; List list = new List(); if (num < list) { ThrowHelper.ThrowArgumentOutOfRangeException(); string text; GameRole gameRole = PlayerGameRoleManager.ONCPNMDGGKG.FindActiveRoleByName(text); if (gameRole != 0) { int roleId = (int)gameRole.roleId; bool flag; if (flag) { CMDADAAOBHD roleId2 = gameRole.roleId; list.Add(roleId2); } } num++; uint num2; num2 += (uint)8; num += num; } return list; } // Token: 0x0600E75F RID: 59231 RVA: 0x0036EFFC File Offset: 0x0036D1FC [Token(Token = "0x600E75F")] [Address(RVA = "0x19C0210", Offset = "0x19BEC10", VA = "0x1819C0210")] public bool IsAtLeastHostRole(FMOEHCKDCKF EGPBMGPKIIL) { RoomRole roomRole; GJJLAOJHDKF rank = roomRole.rank; RoomRole roleDefinition = base.GetRoleDefinition((uint)8388608); return rank >= roleDefinition.rank; } // Token: 0x0600E760 RID: 59232 RVA: 0x0036F030 File Offset: 0x0036D230 [Token(Token = "0x600E760")] [Address(RVA = "0x19C02B0", Offset = "0x19BECB0", VA = "0x1819C02B0")] public bool IsAtLeastHostRole(RoomRole EGPBMGPKIIL) { GJJLAOJHDKF rank = EGPBMGPKIIL.rank; RoomRole roleDefinition = base.GetRoleDefinition((uint)8388608); return rank >= roleDefinition.rank; } // Token: 0x0600E761 RID: 59233 RVA: 0x0036F064 File Offset: 0x0036D264 [Token(Token = "0x600E761")] [Address(RVA = "0x19C0320", Offset = "0x19BED20", VA = "0x1819C0320")] public bool IsHostPresent() { Photon.Realtime.Player[] playerList = PhotonNetwork.PlayerList; int num = 0; int length = playerList.Length; if (num < length) { Photon.Realtime.Player player = playerList[num]; GJJLAOJHDKF rank = base.GetPlayerRoleDefinition(player).rank; RoomRole roleDefinition = base.GetRoleDefinition((uint)8388608); if (rank < roleDefinition.rank) { num++; } return true; } throw new NullReferenceException(); } // Token: 0x0600E762 RID: 59234 RVA: 0x0036F0C4 File Offset: 0x0036D2C4 [Token(Token = "0x600E762")] [Address(RVA = "0x19C0440", Offset = "0x19BEE40", VA = "0x1819C0440")] public static bool IsPlayerAHost(Photon.Realtime.Player IEKDDPPNFPF) { PlayerRoomRoleManager instance = PlayerRoomRoleManager.ONCPNMDGGKG; int num = 0; if (!(instance == num)) { GJJLAOJHDKF gjjlaojhdkf = PlayerRoomRoleManager.ONCPNMDGGKG.FindRoleRank((uint)8388608); return PlayerRoomRoleManager.ONCPNMDGGKG.GetPlayerRoleDefinition(IEKDDPPNFPF).rank >= gjjlaojhdkf; } throw new NullReferenceException(); } // Token: 0x0600E763 RID: 59235 RVA: 0x0036F11C File Offset: 0x0036D31C [Token(Token = "0x600E763")] [Address(RVA = "0x19BF090", Offset = "0x19BDA90", VA = "0x1819BF090")] public GPFHLEIFNDG GetLocalPlayerVoteKickType(Photon.Realtime.Player IBNDLONACHK, bool CPNHCODHDAD = false) { Photon.Realtime.Player localPlayer = PhotonNetwork.LocalPlayer; CCMBKDINCAH ccmbkdincah = GNPDMBPGHBH.HOOMBADBCND(); if (ccmbkdincah != 0) { if (!ccmbkdincah.KMOAHFBMONE) { if (!ccmbkdincah.BFMOEBFIIFA(IBNDLONACHK)) { goto IL_30; } if (!CPNHCODHDAD) { goto IL_9B; } } return GPFHLEIFNDG.Instant; } IL_30: RoomRole playerRoleDefinition = base.GetPlayerRoleDefinition(localPlayer); GJJLAOJHDKF rank = base.GetPlayerRoleDefinition(IBNDLONACHK).rank; MutableOverridableVotekickType voteKickPermission = playerRoleDefinition.voteKickPermission; bool flag; if (!flag) { MutableOverridableVotekickType voteKickPermission2 = playerRoleDefinition.voteKickPermission; } RoleManagerBase.ENCNFBMNBPG encnfbmnbpg; if (PlayerRoomRoleManager.<>c.<>9__52_0 == 0) { encnfbmnbpg = delegate(RoomRole r) { MutableOverridableVotekickType voteKickPermission3 = r.voteKickPermission; bool flag2; return flag2; }; PlayerRoomRoleManager.<>c.<>9__52_0 = encnfbmnbpg; } if (!base.AnyPlayerRole(encnfbmnbpg)) { } if (!CPNHCODHDAD || CPNHCODHDAD) { } IL_9B: throw new NullReferenceException(); } // Token: 0x0600E764 RID: 59236 RVA: 0x0036F1CC File Offset: 0x0036D3CC [Token(Token = "0x600E764")] [Address(RVA = "0x19C0600", Offset = "0x19BF000", VA = "0x1819C0600", Slot = "31")] protected override void KGFJOIKALKD(Photon.Realtime.Player IEKDDPPNFPF, RoomRole LOGOOOJKMPC) { if (IEKDDPPNFPF.IsLocal) { CircuitVisibilityBehaviour.CircuitVisibilityChanged(); MutableOverridableObscuredBool canTalk = LOGOOOJKMPC.canTalk; ActionEvent playerCreatedEvent = global::Player.PlayerCreatedEvent; bool flag2; bool flag = !flag2; MutableOverridableObscuredBool canTalk2 = LOGOOOJKMPC.canTalk; bool? mgpjndfgjnp = this.MGPJNDFGJNP; int num = 0; bool flag4; bool flag3 = flag4 == mgpjndfgjnp; if (mgpjndfgjnp == flag3) { MutableOverridableObscuredBool canTalk3 = LOGOOOJKMPC.canTalk; bool flag5; if (!flag5) { NotificationManager instance = SingletonMonoBehaviour.Instance; MutableOverridableObscuredBool canTalk4 = LOGOOOJKMPC.canTalk; if (num < typeof(GPNBGDFOBNK).TypeHandle) { num += num; if (num == typeof(GPNBGDFOBNK).TypeHandle) { throw new NullReferenceException(); } num++; } string text = " for your room role"; bool flag6; if (flag6) { text = "enabled"; } string text2 = "Talking is " + text + " for your room role"; } MutableOverridableObscuredBool canTalk5 = LOGOOOJKMPC.canTalk; this.MGPJNDFGJNP = num; } this.CHBOJMGPHEK(); } } // Token: 0x0600E765 RID: 59237 RVA: 0x0036F2A0 File Offset: 0x0036D4A0 [Token(Token = "0x600E765")] [Address(RVA = "0x19BE640", Offset = "0x19BD040", VA = "0x1819BE640", Slot = "19")] protected override void CGMHFAALDDC() { global::Player k__BackingField = global::Player.k__BackingField; int num = 0; if (k__BackingField != num) { global::Player k__BackingField2 = global::Player.k__BackingField; int num2 = 0; bool flag = k__BackingField2.SetMuteFlag(global::Player.KBAHEKCLGAN.MUTED_BY_ROOM_ROLE, num2 != 0); return; } } // Token: 0x0600E766 RID: 59238 RVA: 0x0036F2DC File Offset: 0x0036D4DC [Token(Token = "0x600E766")] [Address(RVA = "0x19C0020", Offset = "0x19BEA20", VA = "0x1819C0020")] private string IBGILKNDOEC(BAOFECPMCOB INFBJHIOMAC) { int num = 0; num += num; num++; string text = "not allowed"; bool flag; if (flag) { text = "enabled"; } return text; } // Token: 0x0600E767 RID: 59239 RVA: 0x0036F314 File Offset: 0x0036D514 [Token(Token = "0x600E767")] [Address(RVA = "0x19C1930", Offset = "0x19C0330", VA = "0x1819C1930")] public static bool TryGetPredefinedRoleGuid(FMOEHCKDCKF LECJEHGDACC, out Guid DFADDPPJPLN) { Dictionary aogddfbdeom = PlayerRoomRoleManager.AOGDDFBDEOM; bool flag; return flag; } // Token: 0x0600E768 RID: 59240 RVA: 0x0036F330 File Offset: 0x0036D530 [Token(Token = "0x600E768")] [Address(RVA = "0x19BE500", Offset = "0x19BCF00", VA = "0x1819BE500")] public static Guid BackCompatStringGuidParse(FMOEHCKDCKF LECJEHGDACC, [CanBeNull] string DNADKODMBAK) { if (0 != 0) { Dictionary aogddfbdeom = PlayerRoomRoleManager.AOGDDFBDEOM; bool flag; if (!flag) { Guid guid = Guid.NewGuid(); } } int num = 0; LECJEHGDACC.value__ = num; throw new NullReferenceException(); } // Token: 0x0600E769 RID: 59241 RVA: 0x0036F360 File Offset: 0x0036D560 [Token(Token = "0x600E769")] [Address(RVA = "0x19C1F70", Offset = "0x19C0970", VA = "0x1819C1F70")] public PlayerRoomRoleManager() { int num; int num2; RoomRole roomRole = new RoomRole((FMOEHCKDCKF)((uint)8388608), num, num2); num2 = 0; num = 0; this.defaultRoomHostRole = roomRole; int num3; int num4; RoomRole roomRole2 = new RoomRole((FMOEHCKDCKF)((uint)16777216), num3, num4); num4 = 0; num3 = 0; this.defaultRoomModeratorRole = roomRole2; int num5; int num6; RoomRole roomRole3 = new RoomRole((FMOEHCKDCKF)((uint)4194304), num5, num6); num6 = 0; num5 = 0; this.defaultRoomCoOwnerRole = roomRole3; int num7; int num8; RoomRole roomRole4 = new RoomRole((FMOEHCKDCKF)((uint)2097152), num7, num8); num8 = 0; num7 = 0; this.defaultRoomCreatorRole = roomRole4; base..ctor(); } // Token: 0x0600E76A RID: 59242 RVA: 0x0036F3EC File Offset: 0x0036D5EC // Note: this type is marked as 'beforefieldinit'. [Token(Token = "0x600E76A")] [Address(RVA = "0x19C19C0", Offset = "0x19C03C0", VA = "0x1819C19C0")] static PlayerRoomRoleManager() { Array values; do { values = Enum.GetValues(typeof(FMOEHCKDCKF)); } while (values != 0 && values == 0); PlayerRoomRoleManager.PMJNCFBEHME = values; PlayerRoomRoleManager.PBILJOPELGJ = Enumerable.ToArray(Enumerable.Cast(PlayerRoomRoleManager.PMJNCFBEHME)); int num = 0; PlayerRoomRoleManager.AOGDDFBDEOM = new Dictionary { { (uint)2097152, num }, { (uint)4194304, num }, { (uint)8388608, num }, { (uint)16777216, num }, { (uint)33554432, num }, { (uint)67108864, num }, { (uint)134217728, num }, { (uint)268435456, num }, { (uint)536870912, num }, { (uint)1073741824, num }, { (uint)int.MinValue, num } }; } // Token: 0x0400974F RID: 38735 [global::Cpp2IlInjected.FieldOffset(Offset = "0x88")] [Token(Token = "0x400974F")] [SerializeField] [Header("Room Role Definitions")] private RoomRole defaultRoomHostRole; // Token: 0x04009750 RID: 38736 [global::Cpp2IlInjected.FieldOffset(Offset = "0x90")] [Token(Token = "0x4009750")] [SerializeField] private RoomRole defaultRoomModeratorRole; // Token: 0x04009751 RID: 38737 [global::Cpp2IlInjected.FieldOffset(Offset = "0x98")] [Token(Token = "0x4009751")] [SerializeField] private RoomRole defaultRoomCoOwnerRole; // Token: 0x04009752 RID: 38738 [global::Cpp2IlInjected.FieldOffset(Offset = "0xA0")] [Token(Token = "0x4009752")] [SerializeField] private RoomRole defaultRoomCreatorRole; // Token: 0x04009753 RID: 38739 [global::Cpp2IlInjected.FieldOffset(Offset = "0xA8")] [Token(Token = "0x4009753")] private bool? MGPJNDFGJNP; // Token: 0x04009754 RID: 38740 [Token(Token = "0x4009754")] private static FMOEHCKDCKF[] PMJNCFBEHME; // Token: 0x04009755 RID: 38741 [Token(Token = "0x4009755")] private static int[] PBILJOPELGJ; // Token: 0x04009756 RID: 38742 [Token(Token = "0x4009756")] public static readonly Guid AG_CREATOR_GUID; // Token: 0x04009757 RID: 38743 [Token(Token = "0x4009757")] public static readonly Guid AG_COOWNER_GUID; // Token: 0x04009758 RID: 38744 [Token(Token = "0x4009758")] public static readonly Guid AG_HOST_GUID; // Token: 0x04009759 RID: 38745 [Token(Token = "0x4009759")] public static readonly Guid AG_MODERATOR_GUID; // Token: 0x0400975A RID: 38746 [Token(Token = "0x400975A")] public static readonly Guid AG_ROLE_5_GUID; // Token: 0x0400975B RID: 38747 [Token(Token = "0x400975B")] public static readonly Guid AG_ROLE_6_GUID; // Token: 0x0400975C RID: 38748 [Token(Token = "0x400975C")] public static readonly Guid AG_ROLE_7_GUID; // Token: 0x0400975D RID: 38749 [Token(Token = "0x400975D")] public static readonly Guid AG_ROLE_8_GUID; // Token: 0x0400975E RID: 38750 [Token(Token = "0x400975E")] public static readonly Guid AG_ROLE_9_GUID; // Token: 0x0400975F RID: 38751 [Token(Token = "0x400975F")] public static readonly Guid AG_ROLE_10_GUID; // Token: 0x04009760 RID: 38752 [Token(Token = "0x4009760")] public static readonly Guid AG_ROLE_11_GUID; // Token: 0x04009761 RID: 38753 [Token(Token = "0x4009761")] private static readonly Dictionary AOGDDFBDEOM; // Token: 0x020020B8 RID: 8376 [Token(Token = "0x20020B8")] private class LOGMPFJAHOF : RoleManagerBase.FPKGDJPPILE { // Token: 0x0600E76B RID: 59243 RVA: 0x0036F4C8 File Offset: 0x0036D6C8 [Token(Token = "0x600E76B")] [Address(RVA = "0x19BE010", Offset = "0x19BCA10", VA = "0x1819BE010")] public LOGMPFJAHOF(Photon.Realtime.Player photonPlayer) : base(photonPlayer) { } // Token: 0x0600E76C RID: 59244 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x600E76C")] [Address(RVA = "0x19BDFB0", Offset = "0x19BC9B0", VA = "0x1819BDFB0", Slot = "4")] protected override int JNMKCEMDCEO() { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x0600E76D RID: 59245 RVA: 0x0036F4DC File Offset: 0x0036D6DC [Token(Token = "0x600E76D")] [Address(RVA = "0x19BDF30", Offset = "0x19BC930", VA = "0x1819BDF30", Slot = "5")] protected override void IJGHGFDPJPD(int LFBNLKLFONC) { int? pfabiidhlia = this.PFABIIDHLIA; if (pfabiidhlia == LFBNLKLFONC == pfabiidhlia) { ulong num; this.PFABIIDHLIA = num; base.MCBMFEECHCP(); } } // Token: 0x04009762 RID: 38754 [global::Cpp2IlInjected.FieldOffset(Offset = "0x20")] [Token(Token = "0x4009762")] private int? PFABIIDHLIA; } } }