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 RecNet; using RecRoom.Core.Creation.Circuits; using RecRoom.Utils.OverridableFields; using UnityEngine; namespace RecRoom.Systems.PlayerRoles { // Token: 0x0200227B RID: 8827 [Token(Token = "0x200227B")] public class PlayerRoomRoleManager : RoleManagerBase { // Token: 0x170023EC RID: 9196 // (get) Token: 0x0600E1FA RID: 57850 RVA: 0x00344CBC File Offset: 0x00342EBC [Token(Token = "0x170023EC")] public new static PlayerRoomRoleManager ONCPNMDGGKG { [Token(Token = "0x600E1FA")] [Address(RVA = "0x9766C0", Offset = "0x9754C0", VA = "0x1809766C0")] get { if (NetworkedSingletonMonoBehaviour.ONCPNMDGGKG == 0) { return; } } } // Token: 0x170023ED RID: 9197 // (get) Token: 0x0600E1FB RID: 57851 RVA: 0x00344CD4 File Offset: 0x00342ED4 [Token(Token = "0x170023ED")] public static bool MNFOLNMPMEE { [Token(Token = "0x600E1FB")] [Address(RVA = "0x976A60", Offset = "0x975860", VA = "0x180976A60")] 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: 0x170023EE RID: 9198 // (get) Token: 0x0600E1FC RID: 57852 RVA: 0x00344D4C File Offset: 0x00342F4C [Token(Token = "0x170023EE")] public static bool IOLMHMAAHAD { [Token(Token = "0x600E1FC")] [Address(RVA = "0x9768E0", Offset = "0x9756E0", VA = "0x1809768E0")] get { bool localPlayerCanUseCreationMode = PlayerRoomRoleManager.MNFOLNMPMEE; if (!localPlayerCanUseCreationMode) { return localPlayerCanUseCreationMode; } MutableOverridableObscuredBool canSpawnInventions = PlayerRoomRoleManager.ONCPNMDGGKG.GetLocalPlayerRoleDefinition().canSpawnInventions; int num = 0; num += num; num++; bool flag; return flag; } } // Token: 0x170023EF RID: 9199 // (get) Token: 0x0600E1FD RID: 57853 RVA: 0x00344D9C File Offset: 0x00342F9C [Token(Token = "0x170023EF")] public static bool IPCFEPKLJNG { [Token(Token = "0x600E1FD")] [Address(RVA = "0x976760", Offset = "0x975560", VA = "0x180976760")] 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: 0x170023F0 RID: 9200 // (get) Token: 0x0600E1FE RID: 57854 RVA: 0x00344DE4 File Offset: 0x00342FE4 [Token(Token = "0x170023F0")] protected override int[] JGIFDGDOGPO { [Token(Token = "0x600E1FE")] [Address(RVA = "0x975750", Offset = "0x974550", VA = "0x180975750", Slot = "17")] get { return PlayerRoomRoleManager.PBILJOPELGJ; } } // Token: 0x170023F1 RID: 9201 // (get) Token: 0x0600E1FF RID: 57855 RVA: 0x00344DF8 File Offset: 0x00342FF8 [Token(Token = "0x170023F1")] protected override bool GBFHJKPPEPC { [Token(Token = "0x600E1FF")] [Address(RVA = "0x403930", Offset = "0x402730", VA = "0x180403930", Slot = "27")] get { } } // Token: 0x0600E200 RID: 57856 RVA: 0x00344E08 File Offset: 0x00343008 [Token(Token = "0x600E200")] [Address(RVA = "0x972A10", Offset = "0x971810", VA = "0x180972A10", Slot = "13")] protected override void Awake() { base.Awake(); Action action = new Action(this.CHBOJMGPHEK); OKNNKFGFODL localPlayerCreatedEvent = Player.LocalPlayerCreatedEvent; Action action2 = new Action(this.CLBLFCJEDLL); Player.LocalPlayerCreatedEvent = OKNNKFGFODL.BPJDFPACLMK(localPlayerCreatedEvent, action2); OKNNKFGFODL ebljhbjgdfb = Matchmaking.EBLJHBJGDFB; Action action3 = new Action(this.EBLJHBJGDFB); Matchmaking.EBLJHBJGDFB = OKNNKFGFODL.BPJDFPACLMK(ebljhbjgdfb, action3); } // Token: 0x0600E201 RID: 57857 RVA: 0x00344E6C File Offset: 0x0034306C [Token(Token = "0x600E201")] [Address(RVA = "0x975EE0", Offset = "0x974CE0", VA = "0x180975EE0", Slot = "18")] protected override void Start() { base.KEHAFGDDECH(); base.Start(); } // Token: 0x0600E202 RID: 57858 RVA: 0x00344E88 File Offset: 0x00343088 [Token(Token = "0x600E202")] [Address(RVA = "0x975900", Offset = "0x974700", VA = "0x180975900", Slot = "14")] protected override void OnDestroy() { base.OnDestroy(); Action action = new Action(this.CHBOJMGPHEK); OKNNKFGFODL localPlayerCreatedEvent = Player.LocalPlayerCreatedEvent; Action action2 = new Action(this.CLBLFCJEDLL); Player.LocalPlayerCreatedEvent = OKNNKFGFODL.GMNMHGMFGOL(localPlayerCreatedEvent, action2); OKNNKFGFODL ebljhbjgdfb = Matchmaking.EBLJHBJGDFB; Action action3 = new Action(this.EBLJHBJGDFB); Matchmaking.EBLJHBJGDFB = OKNNKFGFODL.GMNMHGMFGOL(ebljhbjgdfb, action3); } // Token: 0x0600E203 RID: 57859 RVA: 0x00344EEC File Offset: 0x003430EC [Token(Token = "0x600E203")] [Address(RVA = "0x974830", Offset = "0x973630", VA = "0x180974830", Slot = "25")] protected override RoleManagerBase.FPKGDJPPILE INELADLDOKF(AGAJMBPABDL IEKDDPPNFPF) { /* An exception occurred when decompiling this method (0600E203) ICSharpCode.Decompiler.DecompilerException: Error decompiling RecRoom.Systems.PlayerRoles.RoleManagerBase`5/FPKGDJPPILE RecRoom.Systems.PlayerRoles.PlayerRoomRoleManager::INELADLDOKF(AGAJMBPABDL) ---> System.Exception: Basic block has to end with unconditional control flow. { Block_0: stloc:LOGMPFJAHOF(var_0_06, newobj:LOGMPFJAHOF(LOGMPFJAHOF::.ctor, ldloc:AGAJMBPABDL(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: 0x0600E204 RID: 57860 RVA: 0x00344F00 File Offset: 0x00343100 [Token(Token = "0x600E204")] [Address(RVA = "0x973140", Offset = "0x971F40", VA = "0x180973140", 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: 0x0600E205 RID: 57861 RVA: 0x00344FC0 File Offset: 0x003431C0 [Token(Token = "0x600E205")] [Address(RVA = "0x973010", Offset = "0x971E10", VA = "0x180973010")] private void EBLJHBJGDFB() { base.KEHAFGDDECH(); } // Token: 0x0600E206 RID: 57862 RVA: 0x00344FD4 File Offset: 0x003431D4 [Token(Token = "0x600E206")] [Address(RVA = "0x972FC0", Offset = "0x971DC0", VA = "0x180972FC0")] private void CLBLFCJEDLL() { int num = 0; this.MGPJNDFGJNP = num; base.OGEGEKEACGC(); this.CHBOJMGPHEK(); } // Token: 0x0600E207 RID: 57863 RVA: 0x00344FF8 File Offset: 0x003431F8 [Token(Token = "0x600E207")] [Address(RVA = "0x974C40", Offset = "0x973A40", VA = "0x180974C40", Slot = "26")] protected override FMOEHCKDCKF JBJHLODKFDH(AGAJMBPABDL IEKDDPPNFPF) { return PlayerRoomRoleManager.PLPLCDLNLAL(IEKDDPPNFPF); } // Token: 0x0600E208 RID: 57864 RVA: 0x0034500C File Offset: 0x0034320C [Token(Token = "0x600E208")] [Address(RVA = "0x975AC0", Offset = "0x9748C0", VA = "0x180975AC0")] private static FMOEHCKDCKF PLPLCDLNLAL(AGAJMBPABDL 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: 0x0600E209 RID: 57865 RVA: 0x00345064 File Offset: 0x00343264 [Token(Token = "0x600E209")] [Address(RVA = "0x973050", Offset = "0x971E50", VA = "0x180973050")] private static bool EOOJMDGKFDB(AGAJMBPABDL 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: 0x0600E20A RID: 57866 RVA: 0x003450C8 File Offset: 0x003432C8 [Token(Token = "0x600E20A")] [Address(RVA = "0x9755B0", Offset = "0x9743B0", VA = "0x1809755B0", Slot = "24")] protected override RoomRole MEPJPBMHJDF(int FHCCCOABPJI, RoomRole EBOAJJCLJIE, [Optional] string LKHMIMBGLNC) { RoomRole roomRole; return roomRole; } // Token: 0x0600E20B RID: 57867 RVA: 0x003450D8 File Offset: 0x003432D8 [Token(Token = "0x600E20B")] [Address(RVA = "0x974BF0", Offset = "0x9739F0", VA = "0x180974BF0", Slot = "34")] public override bool IsPlayerDefinedRole(FMOEHCKDCKF BGHHFOOBFMA) { bool flag; return flag; } // Token: 0x0600E20C RID: 57868 RVA: 0x003450E8 File Offset: 0x003432E8 [Token(Token = "0x600E20C")] [Address(RVA = "0x975BF0", Offset = "0x9749F0", VA = "0x180975BF0", Slot = "36")] public override bool PlayerCanAssignRole(AGAJMBPABDL CDFCCICPHFJ, AGAJMBPABDL 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: 0x0600E20D RID: 57869 RVA: 0x0034512C File Offset: 0x0034332C [Token(Token = "0x600E20D")] [Address(RVA = "0x975D30", Offset = "0x974B30", VA = "0x180975D30", Slot = "35")] public override bool PlayerCanModifyRoleDefinition(AGAJMBPABDL 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: 0x0600E20E RID: 57870 RVA: 0x00345194 File Offset: 0x00343394 [Token(Token = "0x600E20E")] [Address(RVA = "0x975630", Offset = "0x974430", VA = "0x180975630", Slot = "33")] protected override bool MFNJGEEPNKI(AGAJMBPABDL IEKDDPPNFPF) { if (base.MFNJGEEPNKI(IEKDDPPNFPF) && IEKDDPPNFPF != 0) { MutableOverridableObscuredBool canEditRoomRoles = base.GetPlayerRoleDefinition(IEKDDPPNFPF).canEditRoomRoles; bool flag; if (flag) { return true; } } throw new NullReferenceException(); } // Token: 0x0600E20F RID: 57871 RVA: 0x003451CC File Offset: 0x003433CC [Token(Token = "0x600E20F")] [Address(RVA = "0x9757B0", Offset = "0x9745B0", VA = "0x1809757B0", Slot = "32")] protected override bool NINOBPHPMOO(AGAJMBPABDL 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: 0x0600E210 RID: 57872 RVA: 0x0034521C File Offset: 0x0034341C [Token(Token = "0x600E210")] [Address(RVA = "0x7A2180", Offset = "0x7A0F80", VA = "0x1807A2180", Slot = "20")] protected override int JLHFDBNABEO(FMOEHCKDCKF BGHHFOOBFMA) { return (int)BGHHFOOBFMA; } // Token: 0x0600E211 RID: 57873 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x600E211")] [Address(RVA = "0x7A2180", Offset = "0x7A0F80", VA = "0x1807A2180", Slot = "21")] protected override FMOEHCKDCKF MEPAEFIIPBD(int BGHHFOOBFMA) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x0600E212 RID: 57874 RVA: 0x0034522C File Offset: 0x0034342C [Token(Token = "0x600E212")] [Address(RVA = "0x9747D0", Offset = "0x9735D0", VA = "0x1809747D0", Slot = "22")] protected override int[] IHAKAMMGHLM(FMOEHCKDCKF[] KEHPOHCJCEM) { if (KEHPOHCJCEM != 0) { return Enumerable.ToArray(Enumerable.Cast(KEHPOHCJCEM)); } return 0; } // Token: 0x0600E213 RID: 57875 RVA: 0x0034524C File Offset: 0x0034344C [Token(Token = "0x600E213")] [Address(RVA = "0x9734F0", Offset = "0x9722F0", VA = "0x1809734F0", Slot = "23")] protected override bool FMAEGJFPJLP(int BGHHFOOBFMA) { bool flag; return flag; } // Token: 0x0600E214 RID: 57876 RVA: 0x0034525C File Offset: 0x0034345C [Token(Token = "0x600E214")] [Address(RVA = "0x975730", Offset = "0x974530", VA = "0x180975730", Slot = "37")] protected override PFBMHEOFPJF MNGDIIPNICA(DBFIJENOPDA KGADGOFNJDC) { return KGADGOFNJDC.IBIFFFBIMHN; } // Token: 0x0600E215 RID: 57877 RVA: 0x00345278 File Offset: 0x00343478 [Token(Token = "0x600E215")] [Address(RVA = "0x974600", Offset = "0x973400", VA = "0x180974600", Slot = "39")] protected override PFBMHEOFPJF HNBCMNLALEO(byte[] KCKDIGBCOME) { return PFBMHEOFPJF.MHLLBDFJBOD.ParseFrom(KCKDIGBCOME); } // Token: 0x0600E216 RID: 57878 RVA: 0x00345298 File Offset: 0x00343498 [Token(Token = "0x600E216")] [Address(RVA = "0x975290", Offset = "0x974090", VA = "0x180975290", Slot = "40")] protected override void LEBDNKFDHII(PFBMHEOFPJF JHFHALKCDGD) { int num; do { num = 0; if (JHFHALKCDGD == 0) { break; } IEnumerator enumerator = JHFHALKCDGD.NGJFBNALBIA.GetEnumerator(); if (enumerator != 0) { if (num < enumerator) { num += num; if (num == enumerator) { goto IL_57; } num++; } bool flag; RoomRole roomRole; if (flag || roomRole.k__BackingField != flag) { } MutableOverridableObscuredBool canEditRoomRoles = roomRole.canEditRoomRoles; if (Matchmaking.HMCJLLMDAAM == 0) { continue; } MutableOverridableObscuredBool disableMicAutoMute = roomRole.disableMicAutoMute; ObscuredBool obscuredBool; bool inited = obscuredBool.inited; } IL_57: if (enumerator != 0) { } } while (num != 0); } // Token: 0x0600E217 RID: 57879 RVA: 0x00345328 File Offset: 0x00343528 [Token(Token = "0x600E217")] [Address(RVA = "0x973AC0", Offset = "0x9728C0", VA = "0x180973AC0", 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: 0x0600E218 RID: 57880 RVA: 0x003455D4 File Offset: 0x003437D4 [Token(Token = "0x600E218")] [Address(RVA = "0x975130", Offset = "0x973F30", VA = "0x180975130", 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: 0x0600E219 RID: 57881 RVA: 0x00345634 File Offset: 0x00343834 [Token(Token = "0x600E219")] [Address(RVA = "0x972CF0", Offset = "0x971AF0", VA = "0x180972CF0", Slot = "38")] protected override void CDNPEAAJAOL(ref DBFIJENOPDA KGADGOFNJDC, PFBMHEOFPJF JHFHALKCDGD) { } // Token: 0x0600E21A RID: 57882 RVA: 0x00345648 File Offset: 0x00343848 [Token(Token = "0x600E21A")] [Address(RVA = "0x972E80", Offset = "0x971C80", VA = "0x180972E80")] private void CHBOJMGPHEK() { bool isInitialized = NetworkedSingletonMonoBehaviour.FFNIFALJLDD; if (isInitialized && isInitialized) { List localPlayerGameRolesToAssign = this.GetLocalPlayerGameRolesToAssign(); PlayerGameRoleManager instance = PlayerGameRoleManager.ONCPNMDGGKG; AGAJMBPABDL agajmbpabdl = KKPBCOOONNK.MDMMDPEKICF; CMDADAAOBHD[] array = localPlayerGameRolesToAssign.ToArray(); } } // Token: 0x0600E21B RID: 57883 RVA: 0x0034568C File Offset: 0x0034388C [Token(Token = "0x600E21B")] [Address(RVA = "0x973540", Offset = "0x972340", VA = "0x180973540")] public List GetLocalPlayerGameRolesToAssign() { List list = new List(); int num = 0; 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++; } return list; } // Token: 0x0600E21C RID: 57884 RVA: 0x003456EC File Offset: 0x003438EC [Token(Token = "0x600E21C")] [Address(RVA = "0x9748B0", Offset = "0x9736B0", VA = "0x1809748B0")] public bool IsAtLeastHostRole(FMOEHCKDCKF EGPBMGPKIIL) { RoomRole roomRole; GJJLAOJHDKF rank = roomRole.rank; RoomRole roleDefinition = base.GetRoleDefinition((uint)8388608); return rank >= roleDefinition.rank; } // Token: 0x0600E21D RID: 57885 RVA: 0x00345720 File Offset: 0x00343920 [Token(Token = "0x600E21D")] [Address(RVA = "0x974950", Offset = "0x973750", VA = "0x180974950")] public bool IsAtLeastHostRole(RoomRole EGPBMGPKIIL) { GJJLAOJHDKF rank = EGPBMGPKIIL.rank; RoomRole roleDefinition = base.GetRoleDefinition((uint)8388608); return rank >= roleDefinition.rank; } // Token: 0x0600E21E RID: 57886 RVA: 0x00345754 File Offset: 0x00343954 [Token(Token = "0x600E21E")] [Address(RVA = "0x9749C0", Offset = "0x9737C0", VA = "0x1809749C0")] public bool IsHostPresent() { AGAJMBPABDL[] array = KKPBCOOONNK.DFFEKFNFAKJ; int num = 0; int length = array.Length; if (num < length) { AGAJMBPABDL agajmbpabdl = array[num]; GJJLAOJHDKF rank = base.GetPlayerRoleDefinition(agajmbpabdl).rank; RoomRole roleDefinition = base.GetRoleDefinition((uint)8388608); if (rank < roleDefinition.rank) { num++; } return true; } throw new NullReferenceException(); } // Token: 0x0600E21F RID: 57887 RVA: 0x003457B4 File Offset: 0x003439B4 [Token(Token = "0x600E21F")] [Address(RVA = "0x974AE0", Offset = "0x9738E0", VA = "0x180974AE0")] public static bool IsPlayerAHost(AGAJMBPABDL 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: 0x0600E220 RID: 57888 RVA: 0x0034580C File Offset: 0x00343A0C [Token(Token = "0x600E220")] [Address(RVA = "0x9736F0", Offset = "0x9724F0", VA = "0x1809736F0")] public GPFHLEIFNDG GetLocalPlayerVoteKickType(AGAJMBPABDL IBNDLONACHK, bool CPNHCODHDAD = false) { AGAJMBPABDL agajmbpabdl = KKPBCOOONNK.MDMMDPEKICF; CCMBKDINCAH ccmbkdincah = GNPDMBPGHBH.HOOMBADBCND(); if (ccmbkdincah != 0) { if (!ccmbkdincah.KMOAHFBMONE) { if (IBNDLONACHK == 0) { goto IL_3D; } int k__BackingField = IBNDLONACHK.k__BackingField; if (!ccmbkdincah.BFMOEBFIIFA(k__BackingField)) { goto IL_3D; } if (!CPNHCODHDAD) { goto IL_A8; } } return GPFHLEIFNDG.Instant; } IL_3D: RoomRole playerRoleDefinition = base.GetPlayerRoleDefinition(agajmbpabdl); 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_A8: throw new NullReferenceException(); } // Token: 0x0600E221 RID: 57889 RVA: 0x003458C8 File Offset: 0x00343AC8 [Token(Token = "0x600E221")] [Address(RVA = "0x974CA0", Offset = "0x973AA0", VA = "0x180974CA0", Slot = "31")] protected override void KGFJOIKALKD(AGAJMBPABDL IEKDDPPNFPF, RoomRole LOGOOOJKMPC) { if (IEKDDPPNFPF.DMKCIEPGGAB) { CircuitVisibilityBehaviour.CircuitVisibilityChanged(); MutableOverridableObscuredBool canTalk = LOGOOOJKMPC.canTalk; MFBGLIHGCGO playerCreatedEvent = 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.ONCPNMDGGKG; 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: 0x0600E222 RID: 57890 RVA: 0x0034599C File Offset: 0x00343B9C [Token(Token = "0x600E222")] [Address(RVA = "0x972D10", Offset = "0x971B10", VA = "0x180972D10", Slot = "19")] protected override void CGMHFAALDDC() { Player k__BackingField = Player.k__BackingField; int num = 0; if (k__BackingField != num) { Player k__BackingField2 = Player.k__BackingField; int num2 = 0; bool flag = k__BackingField2.SetMuteFlag(Player.KBAHEKCLGAN.MUTED_BY_ROOM_ROLE, num2 != 0); return; } } // Token: 0x0600E223 RID: 57891 RVA: 0x003459D8 File Offset: 0x00343BD8 [Token(Token = "0x600E223")] [Address(RVA = "0x9746C0", Offset = "0x9734C0", VA = "0x1809746C0")] private string IBGILKNDOEC(BAOFECPMCOB INFBJHIOMAC) { int num = 0; num += num; num++; string text = "not allowed"; bool flag; if (flag) { text = "enabled"; } return text; } // Token: 0x0600E224 RID: 57892 RVA: 0x00345A10 File Offset: 0x00343C10 [Token(Token = "0x600E224")] [Address(RVA = "0x975F50", Offset = "0x974D50", VA = "0x180975F50")] public static bool TryGetPredefinedRoleGuid(FMOEHCKDCKF LECJEHGDACC, out Guid DFADDPPJPLN) { Dictionary aogddfbdeom = PlayerRoomRoleManager.AOGDDFBDEOM; bool flag; return flag; } // Token: 0x0600E225 RID: 57893 RVA: 0x00345A2C File Offset: 0x00343C2C [Token(Token = "0x600E225")] [Address(RVA = "0x972BD0", Offset = "0x9719D0", VA = "0x180972BD0")] 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: 0x0600E226 RID: 57894 RVA: 0x00345A5C File Offset: 0x00343C5C [Token(Token = "0x600E226")] [Address(RVA = "0x976590", Offset = "0x975390", VA = "0x180976590")] 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: 0x0600E227 RID: 57895 RVA: 0x00345AE8 File Offset: 0x00343CE8 // Note: this type is marked as 'beforefieldinit'. [Token(Token = "0x600E227")] [Address(RVA = "0x975FE0", Offset = "0x974DE0", VA = "0x180975FE0")] 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: 0x0400931E RID: 37662 [global::Cpp2IlInjected.FieldOffset(Offset = "0x88")] [Token(Token = "0x400931E")] [SerializeField] [Header("Room Role Definitions")] private RoomRole defaultRoomHostRole; // Token: 0x0400931F RID: 37663 [global::Cpp2IlInjected.FieldOffset(Offset = "0x90")] [Token(Token = "0x400931F")] [SerializeField] private RoomRole defaultRoomModeratorRole; // Token: 0x04009320 RID: 37664 [global::Cpp2IlInjected.FieldOffset(Offset = "0x98")] [Token(Token = "0x4009320")] [SerializeField] private RoomRole defaultRoomCoOwnerRole; // Token: 0x04009321 RID: 37665 [global::Cpp2IlInjected.FieldOffset(Offset = "0xA0")] [Token(Token = "0x4009321")] [SerializeField] private RoomRole defaultRoomCreatorRole; // Token: 0x04009322 RID: 37666 [global::Cpp2IlInjected.FieldOffset(Offset = "0xA8")] [Token(Token = "0x4009322")] private bool? MGPJNDFGJNP; // Token: 0x04009323 RID: 37667 [Token(Token = "0x4009323")] private static FMOEHCKDCKF[] PMJNCFBEHME; // Token: 0x04009324 RID: 37668 [Token(Token = "0x4009324")] private static int[] PBILJOPELGJ; // Token: 0x04009325 RID: 37669 [Token(Token = "0x4009325")] public static readonly Guid AG_CREATOR_GUID; // Token: 0x04009326 RID: 37670 [Token(Token = "0x4009326")] public static readonly Guid AG_COOWNER_GUID; // Token: 0x04009327 RID: 37671 [Token(Token = "0x4009327")] public static readonly Guid AG_HOST_GUID; // Token: 0x04009328 RID: 37672 [Token(Token = "0x4009328")] public static readonly Guid AG_MODERATOR_GUID; // Token: 0x04009329 RID: 37673 [Token(Token = "0x4009329")] public static readonly Guid AG_ROLE_5_GUID; // Token: 0x0400932A RID: 37674 [Token(Token = "0x400932A")] public static readonly Guid AG_ROLE_6_GUID; // Token: 0x0400932B RID: 37675 [Token(Token = "0x400932B")] public static readonly Guid AG_ROLE_7_GUID; // Token: 0x0400932C RID: 37676 [Token(Token = "0x400932C")] public static readonly Guid AG_ROLE_8_GUID; // Token: 0x0400932D RID: 37677 [Token(Token = "0x400932D")] public static readonly Guid AG_ROLE_9_GUID; // Token: 0x0400932E RID: 37678 [Token(Token = "0x400932E")] public static readonly Guid AG_ROLE_10_GUID; // Token: 0x0400932F RID: 37679 [Token(Token = "0x400932F")] public static readonly Guid AG_ROLE_11_GUID; // Token: 0x04009330 RID: 37680 [Token(Token = "0x4009330")] private static readonly Dictionary AOGDDFBDEOM; // Token: 0x0200227C RID: 8828 [Token(Token = "0x200227C")] private class LOGMPFJAHOF : RoleManagerBase.FPKGDJPPILE { // Token: 0x0600E228 RID: 57896 RVA: 0x00345BC4 File Offset: 0x00343DC4 [Token(Token = "0x600E228")] [Address(RVA = "0x96B490", Offset = "0x96A290", VA = "0x18096B490")] public LOGMPFJAHOF(AGAJMBPABDL AGIHAKFFCCD) : base(AGIHAKFFCCD) { } // Token: 0x0600E229 RID: 57897 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x600E229")] [Address(RVA = "0x96B430", Offset = "0x96A230", VA = "0x18096B430", Slot = "4")] protected override int JNMKCEMDCEO() { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x0600E22A RID: 57898 RVA: 0x00345BD8 File Offset: 0x00343DD8 [Token(Token = "0x600E22A")] [Address(RVA = "0x96B3B0", Offset = "0x96A1B0", VA = "0x18096B3B0", Slot = "5")] protected override void IJGHGFDPJPD(int LFBNLKLFONC) { int? pfabiidhlia = this.PFABIIDHLIA; if (pfabiidhlia == LFBNLKLFONC == pfabiidhlia) { ulong num; this.PFABIIDHLIA = num; base.MCBMFEECHCP(); } } // Token: 0x04009331 RID: 37681 [global::Cpp2IlInjected.FieldOffset(Offset = "0x20")] [Token(Token = "0x4009331")] private int? PFABIIDHLIA; } } }