using System; using System.Collections.Generic; using System.Linq; using System.Runtime.CompilerServices; using AGUI.StackedUI; using AGUI.StackedUI.Dialog; using CodeStage.AntiCheat.ObscuredTypes; using Cpp2IlInjected; using RecNet; using RecRoom.AGUI; using RecRoom.Core; using StansAssets.Foundation.Async; using TMPro; using UnityEngine; using UnityEngine.Events; // Token: 0x02000704 RID: 1796 [Token(Token = "0x2000704")] public class ChatThreadScreen : WatchUIFlow { // Token: 0x170008D4 RID: 2260 // (get) Token: 0x06003489 RID: 13449 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x170008D4")] private bool FNCBAOGJJEH { [Token(Token = "0x6003489")] [Address(RVA = "0x166A7F0", Offset = "0x16697F0", VA = "0x18166A7F0")] get { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } } // Token: 0x0600348A RID: 13450 RVA: 0x000D5D60 File Offset: 0x000D3F60 [Token(Token = "0x600348A")] [Address(RVA = "0x166A380", Offset = "0x1669380", VA = "0x18166A380", Slot = "10")] public override void Initialize(StackedUIBase LJOCNMLBCAH) { base.Initialize(LJOCNMLBCAH); MFBGLIHGCGO fnnmpdkbcdd = IAOJMNAKJLH.FNNMPDKBCDD; Action action = new Action(this.JFOANBAOPNK); IAOJMNAKJLH.FNNMPDKBCDD = MFBGLIHGCGO.BPJDFPACLMK(fnnmpdkbcdd, action); MFBGLIHGCGO nlhpibggdmo = PEGGCEDHBOF.NLHPIBGGDMO; Action action2 = new Action(this.OFEEAIMGNEH); PEGGCEDHBOF.NLHPIBGGDMO = MFBGLIHGCGO.BPJDFPACLMK(nlhpibggdmo, action2); MFBGLIHGCGO hodokbidhhg = FGPIDGLCKEF.HODOKBIDHHG; Action action3 = new Action(this.JANKGEDLAFB); FGPIDGLCKEF.HODOKBIDHHG = MFBGLIHGCGO.BPJDFPACLMK(hodokbidhhg, action3); TMP_InputField.SubmitEvent onEndEdit = this.messageField._inputField.m_OnEndEdit; UnityAction unityAction = new UnityAction(this.DCIJENHGDNK); onEndEdit.AddListener(unityAction); } // Token: 0x0600348B RID: 13451 RVA: 0x000D5E04 File Offset: 0x000D4004 [Token(Token = "0x600348B")] [Address(RVA = "0x166A5B0", Offset = "0x16695B0", VA = "0x18166A5B0")] private void JANKGEDLAFB(int? CJFGEMGOJHB) { OKLPPLDEGKH oanjhdhhmhe = this.OANJHDHHMHE; int num = 0; int num2; if (OKLPPLDEGKH.BDBLGMKABNK(oanjhdhhmhe, num) && this.OANJHDHHMHE.k__BackingField.Contains(num2)) { this.CNAACBCDODC(); string text = this.OANJHDHHMHE.EMGINGNLOEC(true); } List pkdkkhabehd = this.PKDKKHABEHD; int num3; if (pkdkkhabehd != 0 && pkdkkhabehd.Contains(num3)) { this.CNAACBCDODC(); TextMeshProUGUI textMeshProUGUI = this.chatName; string text2 = this.CLFLKHMJGCH(); string text3 = textMeshProUGUI.text; } InputField3D inputField3D = this.messageField; bool chpkkfdfbml = this.CHPKKFDFBML; inputField3D.FFDOINJEHMM = chpkkfdfbml; if (!this.CHPKKFDFBML) { int num4 = 0; this.ADAAGMKHEBE = num4 != 0; return; } string text4 = this.messageField.KKJIOHNFHFJ; this.ADAAGMKHEBE = text4 != null; } // Token: 0x0600348C RID: 13452 RVA: 0x000D5ECC File Offset: 0x000D40CC [Token(Token = "0x600348C")] [Address(RVA = "0x1669880", Offset = "0x1668880", VA = "0x181669880")] private void CNAACBCDODC() { int num; do { num = 0; if (this.PKDKKHABEHD == 0) { goto IL_3C; } bool flag; if (flag) { LLKHFJDNFMM llkhfjdnfmm; if (llkhfjdnfmm != 0 && !llkhfjdnfmm.NPBCMKLOCAE) { bool flag2 = llkhfjdnfmm.MHEGHKNGOEG; } int num2 = 0; this.CHPKKFDFBML = num2 != 0; while (num2 != 0) { } } } while (num != 0); if (num != -1) { } IL_3C: int num3 = 0; if (OKLPPLDEGKH.BDBLGMKABNK(this.OANJHDHHMHE, num3)) { List k__BackingField = this.OANJHDHHMHE.k__BackingField; if (k__BackingField._size == 2) { Func func; if (ChatThreadScreen.<>c.<>9__30_0 == 0) { func = delegate(int id) { JJGHAFKJBEI doohkcanflo = PEGGCEDHBOF.DOOHKCANFLO; ObscuredInt k__BackingField = doohkcanflo.k__BackingField; bool fakeValueActive = doohkcanflo.k__BackingField.fakeValueActive; int num5 = ObscuredInt.FAJDMKOEFLH(k__BackingField); return id != num5; }; ChatThreadScreen.<>c.<>9__30_0 = func; } LLKHFJDNFMM llkhfjdnfmm2 = FGPIDGLCKEF.IAHDANBDAAM(Enumerable.FirstOrDefault(k__BackingField, func)); if (llkhfjdnfmm2 != 0 && !llkhfjdnfmm2.NPBCMKLOCAE) { bool flag3 = llkhfjdnfmm2.MHEGHKNGOEG; } int num4 = 0; this.CHPKKFDFBML = num4 != 0; throw new NullReferenceException(); } this.CHPKKFDFBML = false; } } // Token: 0x0600348D RID: 13453 RVA: 0x000D5FA0 File Offset: 0x000D41A0 [Token(Token = "0x600348D")] [Address(RVA = "0x166ABD0", Offset = "0x1669BD0", VA = "0x18166ABD0")] private void OFEEAIMGNEH(int GKLPIFBPGOD) { OKLPPLDEGKH oanjhdhhmhe = this.OANJHDHHMHE; int num = 0; if (OKLPPLDEGKH.BDBLGMKABNK(oanjhdhhmhe, num) && this.OANJHDHHMHE.k__BackingField.Contains(GKLPIFBPGOD)) { string text = this.OANJHDHHMHE.EMGINGNLOEC(true); } List pkdkkhabehd = this.PKDKKHABEHD; if (pkdkkhabehd != 0 && pkdkkhabehd.Contains(GKLPIFBPGOD)) { TextMeshProUGUI textMeshProUGUI = this.chatName; string text2 = this.CLFLKHMJGCH(); string text3 = textMeshProUGUI.text; } } // Token: 0x0600348E RID: 13454 RVA: 0x000D6018 File Offset: 0x000D4218 [Token(Token = "0x600348E")] [Address(RVA = "0x1669540", Offset = "0x1668540", VA = "0x181669540")] private string CLFLKHMJGCH() { for (;;) { int num = 0; int num2 = 0; if (!OKLPPLDEGKH.JGIMJGNAJHP(this.OANJHDHHMHE, num2) || this.PKDKKHABEHD == 0) { goto IL_B6; } string empty = string.Empty; bool flag; if (flag) { break; } if (num == 0) { goto IL_B6; } } bool flag2; if (flag2) { } object[] array = new object[4]; throw new ArrayTypeMismatchException(); IL_B6: return string.Empty; } // Token: 0x0600348F RID: 13455 RVA: 0x000D6104 File Offset: 0x000D4304 [Token(Token = "0x600348F")] [Address(RVA = "0x1668BB0", Offset = "0x1667BB0", VA = "0x181668BB0", Slot = "6")] protected override void Awake() { base..ctor(); TMP_InputField inputField = this.messageField._inputField; int num = 0; if (inputField != num) { TMP_InputField.SubmitEvent onSubmit = this.messageField._inputField.m_OnSubmit; UnityAction unityAction = new UnityAction(this.KDILANPEMDE); onSubmit.AddListener(unityAction); } } // Token: 0x06003490 RID: 13456 RVA: 0x000D615C File Offset: 0x000D435C [Token(Token = "0x6003490")] [Address(RVA = "0x166ADB0", Offset = "0x1669DB0", VA = "0x18166ADB0", Slot = "7")] protected override void OnDestroy() { base.OnDestroy(); TMP_InputField inputField = this.messageField._inputField; int num = 0; if (inputField != num) { TMP_InputField.SubmitEvent onSubmit = this.messageField._inputField.m_OnSubmit; UnityAction unityAction = new UnityAction(this.KDILANPEMDE); onSubmit.RemoveListener(unityAction); } MFBGLIHGCGO nlhpibggdmo = PEGGCEDHBOF.NLHPIBGGDMO; Action action = new Action(this.OFEEAIMGNEH); PEGGCEDHBOF.NLHPIBGGDMO = MFBGLIHGCGO.GMNMHGMFGOL(nlhpibggdmo, action); MFBGLIHGCGO fnnmpdkbcdd = IAOJMNAKJLH.FNNMPDKBCDD; Action action2 = new Action(this.JFOANBAOPNK); IAOJMNAKJLH.FNNMPDKBCDD = MFBGLIHGCGO.GMNMHGMFGOL(fnnmpdkbcdd, action2); MFBGLIHGCGO hodokbidhhg = FGPIDGLCKEF.HODOKBIDHHG; Action action3 = new Action(this.JANKGEDLAFB); FGPIDGLCKEF.HODOKBIDHHG = MFBGLIHGCGO.GMNMHGMFGOL(hodokbidhhg, action3); } // Token: 0x06003491 RID: 13457 RVA: 0x000D621C File Offset: 0x000D441C [Token(Token = "0x6003491")] [Address(RVA = "0x166A750", Offset = "0x1669750", VA = "0x18166A750")] private void JFOANBAOPNK(OKLPPLDEGKH OFPDIAMBDKK) { Action> <>9__1; Action action = delegate { OKLPPLDEGKH oanjhdhhmhe = this.OANJHDHHMHE; int num = 0; if (OKLPPLDEGKH.BDBLGMKABNK(oanjhdhhmhe, num)) { ChatThreadScreen <>4__this = this; OKLPPLDEGKH chatThread = OFPDIAMBDKK; if (OKLPPLDEGKH.JGIMJGNAJHP(<>4__this.OANJHDHHMHE, chatThread)) { PMGCJEPKFOF> pmgcjepkfof = IAOJMNAKJLH.FALCGMECAAD(this.OANJHDHHMHE.k__BackingField); if (<>9__1 == 0) { Action> action2 = delegate(List chatMessages) { ChatThreadScreen <>4__this3 = this; OKLPPLDEGKH oanjhdhhmhe2 = <>4__this3.OANJHDHHMHE; ChatMessagePagedGrid chatMessagePagedGrid = <>4__this3.pagedGrid; List k__BackingField = oanjhdhhmhe2.k__BackingField; chatMessagePagedGrid.SetChatMessages(oanjhdhhmhe2, k__BackingField); }; <>9__1 = action2; } ChatThreadScreen <>4__this2 = this; bool flag = <>4__this2.FNCBAOGJJEH; <>4__this2.GJJIEGDEJIP(flag); } } }; KFBABPAPIMB kfbabpapimb = this.JGIPMJPPCBM(action); } // Token: 0x06003492 RID: 13458 RVA: 0x000D6258 File Offset: 0x000D4458 [Token(Token = "0x6003492")] [Address(RVA = "0x1669F30", Offset = "0x1668F30", VA = "0x181669F30")] private void GJJIEGDEJIP(bool NIKEKCLABKN) { Button3D button3D = this.renameChatButton; int num = 0; bool flag = OKLPPLDEGKH.BDBLGMKABNK(this.OANJHDHHMHE, num); button3D.FFDOINJEHMM = flag; OKLPPLDEGKH oanjhdhhmhe = this.OANJHDHHMHE; Button3D button3D2 = this.addPlayerButton; int num2 = 0; bool flag2 = OKLPPLDEGKH.BDBLGMKABNK(oanjhdhhmhe, num2); button3D2.FFDOINJEHMM = flag2; OKLPPLDEGKH oanjhdhhmhe2 = this.OANJHDHHMHE; ToggleButton3D toggleButton3D = this.snoozeToggle; int num3 = 0; bool flag3 = OKLPPLDEGKH.BDBLGMKABNK(oanjhdhhmhe2, num3); toggleButton3D.FFDOINJEHMM = flag3; OKLPPLDEGKH oanjhdhhmhe3 = this.OANJHDHHMHE; Button3D button3D3 = this.leaveChatButton; int num4 = 0; bool flag4 = OKLPPLDEGKH.BDBLGMKABNK(oanjhdhhmhe3, num4); button3D3.FFDOINJEHMM = flag4; OKLPPLDEGKH oanjhdhhmhe4 = this.OANJHDHHMHE; InputField3D inputField3D = this.messageField; int num5 = 0; if (!OKLPPLDEGKH.BDBLGMKABNK(oanjhdhhmhe4, num5)) { } inputField3D.FFDOINJEHMM = NIKEKCLABKN; OKLPPLDEGKH oanjhdhhmhe5 = this.OANJHDHHMHE; int num6 = 0; this.ADAAGMKHEBE = NIKEKCLABKN; if (OKLPPLDEGKH.BDBLGMKABNK(oanjhdhhmhe5, num6)) { OKLPPLDEGKH oanjhdhhmhe6 = this.OANJHDHHMHE; TextMeshProUGUI textMeshProUGUI = this.chatName; string text = oanjhdhhmhe6.EMGINGNLOEC(true); string text2 = textMeshProUGUI.text; } } // Token: 0x06003493 RID: 13459 RVA: 0x000D6364 File Offset: 0x000D4564 [Token(Token = "0x6003493")] [Address(RVA = "0x166B040", Offset = "0x166A040", VA = "0x18166B040", Slot = "11")] public override void OnFlowEntered(StackedUIFlowBase BFHJBBGCMAN) { base.OnFlowEntered(BFHJBBGCMAN); if (EIMGAFPPJFD.PMFACCFMKGE()) { this.OGMDFIHEAJE = false; bool flag = this.FNCBAOGJJEH; this.GJJIEGDEJIP(flag); if (!this.FNCBAOGJJEH) { if (string.IsNullOrEmpty(this.messageField.KKJIOHNFHFJ)) { } bool flag2 = this.CHPKKFDFBML; this.ADAAGMKHEBE = flag2; InputField3D inputField3D = this.messageField; bool chpkkfdfbml = this.CHPKKFDFBML; inputField3D.FFDOINJEHMM = chpkkfdfbml; } ChatMessagePagedGrid chatMessagePagedGrid = this.pagedGrid; this.pagedGrid.SetEmptyDisplayText("Loading..."); OKLPPLDEGKH oanjhdhhmhe = this.OANJHDHHMHE; int num = 0; if (OKLPPLDEGKH.BDBLGMKABNK(oanjhdhhmhe, num)) { PMGCJEPKFOF> pmgcjepkfof = IAOJMNAKJLH.FALCGMECAAD(this.OANJHDHHMHE.k__BackingField); Action> action = new Action(this.BBAOFKKMOAJ); } return; } this.k__BackingField.Button_PopFlow(); throw new NullReferenceException(); } // Token: 0x06003494 RID: 13460 RVA: 0x000D6444 File Offset: 0x000D4644 [Token(Token = "0x6003494")] [Address(RVA = "0x166B2D0", Offset = "0x166A2D0", VA = "0x18166B2D0", Slot = "12")] public override void OnFlowExited(StackedUIFlowBase NBINAJPFBOA, bool CJEIBCEPAPO) { base.OnFlowExited(NBINAJPFBOA, CJEIBCEPAPO); if (this.OGMDFIHEAJE) { OKLPPLDEGKH oanjhdhhmhe = this.OANJHDHHMHE; int num = 0; if (OKLPPLDEGKH.BDBLGMKABNK(oanjhdhhmhe, num)) { OKLPPLDEGKH oanjhdhhmhe2 = this.OANJHDHHMHE; long k__BackingField = oanjhdhhmhe2.k__BackingField; long k__BackingField = Enumerable.First(oanjhdhhmhe2.k__BackingField).k__BackingField; PMGCJEPKFOF pmgcjepkfof = IAOJMNAKJLH.HBLKAPJDDEP(k__BackingField, k__BackingField); } } } // Token: 0x06003495 RID: 13461 RVA: 0x000D64A8 File Offset: 0x000D46A8 [Token(Token = "0x6003495")] [Address(RVA = "0x166B940", Offset = "0x166A940", VA = "0x18166B940")] public void ShowScreen(OKLPPLDEGKH OFPDIAMBDKK, CFLMJLFBOKH.PNCCMHEKFKJ DIEPOPNJNCO) { Debug.LogError("Cannot pass null ChatThread to ChatThreadScreen!"); } // Token: 0x06003496 RID: 13462 RVA: 0x000D6544 File Offset: 0x000D4744 [Token(Token = "0x6003496")] [Address(RVA = "0x166BA90", Offset = "0x166AA90", VA = "0x18166BA90")] public void ShowScreen(List IBCEBHNOHAI, CFLMJLFBOKH.PGANKAHHBJJ DIEPOPNJNCO) { if (IBCEBHNOHAI == 0) { Debug.LogError("Cannot pass null Account to ChatThreadScreen!"); return; } ToggleButton3D toggleButton3D = this.snoozeToggle; this.BDNBANEMKLA = DIEPOPNJNCO; this.DMDOJGAFCDF = (CFLMJLFBOKH.PNCCMHEKFKJ)((ulong)4294967295L); this.OANJHDHHMHE = (ulong)0L; int num = 0; toggleButton3D.BOHIGPFGJBA = num != 0; Func func; if (ChatThreadScreen.<>c.<>9__40_0 == 0) { func = delegate(CCEOLAOLEKJ p) { ObscuredInt k__BackingField2 = p.k__BackingField; bool fakeValueActive2 = p.k__BackingField.fakeValueActive; int num4; return num4; }; ChatThreadScreen.<>c.<>9__40_0 = func; } List list = Enumerable.ToList(Enumerable.Select(IBCEBHNOHAI, func)); this.PKDKKHABEHD = list; this.CNAACBCDODC(); TextMeshProUGUI textMeshProUGUI = this.chatName; string text = this.CLFLKHMJGCH(); string text2 = textMeshProUGUI.text; List list2 = new List(this.PKDKKHABEHD); JJGHAFKJBEI doohkcanflo = PEGGCEDHBOF.DOOHKCANFLO; ObscuredInt k__BackingField = doohkcanflo.k__BackingField; bool fakeValueActive = doohkcanflo.k__BackingField.fakeValueActive; int num2 = ObscuredInt.FAJDMKOEFLH(k__BackingField); list2.Add(num2); PMGCJEPKFOF pmgcjepkfof = IAOJMNAKJLH.ALADIOBCIGF(list2); Action action = new Action(this.LKKPMBFJLCE); WatchUI k__BackingField = this.k__BackingField; int num3 = 0; k__BackingField.PushFlow(this, num3); } // Token: 0x06003497 RID: 13463 RVA: 0x000D6658 File Offset: 0x000D4858 [Token(Token = "0x6003497")] [Address(RVA = "0x166A900", Offset = "0x1669900", VA = "0x18166A900")] private void KDILANPEMDE(string FIFJOENOHCF) { bool flag = SingletonMonoBehaviour.ONCPNMDGGKG.VerifyAccountRequirements(); if (flag && !flag) { InputField3D inputField3D = this.messageField; int num = 0; inputField3D.FFDOINJEHMM = num != 0; this.ADAAGMKHEBE = false; this.AMMBFJAGNLL(FIFJOENOHCF); TMP_InputField inputField = this.messageField._inputField; string empty = string.Empty; inputField.text = empty; } } // Token: 0x06003498 RID: 13464 RVA: 0x000D66B8 File Offset: 0x000D48B8 [Token(Token = "0x6003498")] [Address(RVA = "0x1668AE0", Offset = "0x1667AE0", VA = "0x181668AE0")] private void AMMBFJAGNLL(string FIFJOENOHCF) { int num = 0; if (!this.FNCBAOGJJEH) { bool flag = this.LGBLGGHNLCP(); if (!flag && !flag) { List dhajepghkol = this.DHAJEPGHKOL; if (this.LGHPNIJLCPL != -1) { this.DGNLAGDPMFA(num); return; } PMGCJEPKFOF pmgcjepkfof = this.SendSanitizedChatMessageInternal(FIFJOENOHCF); this.BKPMBGMEIFB = (ulong)0L; this.HONBNPBHDEF(); } } } // Token: 0x06003499 RID: 13465 RVA: 0x000D6718 File Offset: 0x000D4918 [Token(Token = "0x6003499")] [Address(RVA = "0x166B520", Offset = "0x166A520", VA = "0x18166B520")] public PMGCJEPKFOF SendSanitizedChatMessageInternal(string FIFJOENOHCF) { CBLLFJEDOII cbllfjedoii = new CBLLFJEDOII(); CBLLFJEDOII promise = cbllfjedoii; OKLPPLDEGKH oanjhdhhmhe = this.OANJHDHHMHE; int num = 0; if (!OKLPPLDEGKH.BDBLGMKABNK(oanjhdhhmhe, num)) { List list = new List(this.PKDKKHABEHD); JJGHAFKJBEI doohkcanflo = PEGGCEDHBOF.DOOHKCANFLO; ObscuredInt k__BackingField = doohkcanflo.k__BackingField; bool fakeValueActive = doohkcanflo.k__BackingField.fakeValueActive; int num2 = ObscuredInt.FAJDMKOEFLH(k__BackingField); list.Add(num2); string text = IAOJMNAKJLH.FEGFJLANHOH(FIFJOENOHCF); PMGCJEPKFOF pmgcjepkfof = IAOJMNAKJLH.IOFLCFBBODB(list, text); Action <>9__6; Action action = delegate(BBJLEHIBGBJ response) { if (response.k__BackingField != KJEFMHKMHOB.Success) { NotificationManager instance = SingletonMonoBehaviour.ONCPNMDGGKG; int num5 = 0; IDisposable disposable = instance.Play(NotificationManager.IBIDFAOPIPC.Medium, "Failed to send message", 3f, num5, num5); this.messageField.FFDOINJEHMM = true; this.ADAAGMKHEBE = true; } long k__BackingField2 = response.k__BackingField.k__BackingField; JJGHAFKJBEI doohkcanflo2 = PEGGCEDHBOF.DOOHKCANFLO; bool fakeValueActive2 = doohkcanflo2.k__BackingField.fakeValueActive; int num6 = ObscuredInt.FAJDMKOEFLH(doohkcanflo2.k__BackingField); CFLMJLFBOKH.PGANKAHHBJJ bdnbanemkla = this.BDNBANEMKLA; long k__BackingField3 = response.k__BackingField.k__BackingField; int num7 = 0; PMGCJEPKFOF pmgcjepkfof3 = IAOJMNAKJLH.EPHMNGGEOPC(k__BackingField3, num7 != 0); if (<>9__6 == 0) { Action action5 = delegate(OKLPPLDEGKH ct) { this.OANJHDHHMHE = ct; }; <>9__6 = action5; } ChatThreadScreen <>4__this = this; int num8 = 0; <>4__this.PKDKKHABEHD = num8; ChatThreadScreen <>4__this2 = this; int num9 = 0; <>4__this2.GJJIEGDEJIP(num9 != 0); this.OLBCOFOMABH(); CBLLFJEDOII promise2 = promise; KJEFMHKMHOB k__BackingField = response.k__BackingField; promise2.OOOIENHGNCA(k__BackingField); }; int num3 = 0; num3 += num3; num3++; Action action2 = delegate(string error) { promise.HMFPPBJFHKD("Failed to create new chat thread"); }; } long k__BackingField = this.OANJHDHHMHE.k__BackingField; string text2 = IAOJMNAKJLH.FEGFJLANHOH(FIFJOENOHCF); PMGCJEPKFOF pmgcjepkfof2 = IAOJMNAKJLH.MPLDGJCCIMN(k__BackingField, text2); Action action3 = delegate(KBMDHNGPDGN response) { if (response.k__BackingField != KJEFMHKMHOB.Success) { NotificationManager instance2 = SingletonMonoBehaviour.ONCPNMDGGKG; this.messageField.FFDOINJEHMM = true; this.ADAAGMKHEBE = true; } if (SingletonMonoBehaviour.ONCPNMDGGKG.IsExperimentSegmentActive((SplitTesting.NotificationPermissionsContextualPrompts_2021_06_25)((uint)1)) && SingletonMonoBehaviour.FFNIFALJLDD) { DABKFAIHBBP dabkfaihbbp = SingletonMonoBehaviour.ONCPNMDGGKG.TryShowRequestNotificationPermissionsDialog("Would you like Rec Room to notify you when you receive chat messages from friends?", "Get Notified!"); } ChatMessage k__BackingField = response.k__BackingField; int num10 = 0; if (k__BackingField.k__BackingField.Type == (IAOJMNAKJLH.PEHACEKFNLA)num10 && k__BackingField.k__BackingField.EHLGFMNCKBN) { List k__BackingField = response.k__BackingField.k__BackingField.k__BackingField; Func func; if (ChatThreadScreen.<>c.<>9__43_2 == 0) { func = (IAOJMNAKJLH.AFJCPHCCAGK d) => d.k__BackingField == IAOJMNAKJLH.GFMGNLOBAAF.Username; ChatThreadScreen.<>c.<>9__43_2 = func; } int num11 = Enumerable.Count(Enumerable.Where(k__BackingField, func)); List k__BackingField2 = response.k__BackingField.k__BackingField.k__BackingField; Func func2; if (ChatThreadScreen.<>c.<>9__43_3 == 0) { func2 = (IAOJMNAKJLH.AFJCPHCCAGK d) => d.k__BackingField == IAOJMNAKJLH.GFMGNLOBAAF.Roomname; ChatThreadScreen.<>c.<>9__43_3 = func2; } int num12 = Enumerable.Count(Enumerable.Where(k__BackingField2, func2)); } ChatThreadScreen <>4__this3 = this; if (<>4__this3.DMDOJGAFCDF == CFLMJLFBOKH.PNCCMHEKFKJ.Invalid) { } CFLMJLFBOKH.PNCCMHEKFKJ bdnbanemkla2 = (CFLMJLFBOKH.PNCCMHEKFKJ)<>4__this3.BDNBANEMKLA; int hashCode = bdnbanemkla2.GetHashCode(); CFLMJLFBOKH.PNCCMHEKFKJ pnccmhekfkj = bdnbanemkla2; <>4__this3.BDNBANEMKLA = (CFLMJLFBOKH.PGANKAHHBJJ)pnccmhekfkj; long k__BackingField4 = this.OANJHDHHMHE.k__BackingField; JJGHAFKJBEI doohkcanflo3 = PEGGCEDHBOF.DOOHKCANFLO; bool fakeValueActive3 = doohkcanflo3.k__BackingField.fakeValueActive; int num13 = ObscuredInt.FAJDMKOEFLH(doohkcanflo3.k__BackingField); IAOJMNAKJLH.PEHACEKFNLA type = response.k__BackingField.k__BackingField.Type; this.OLBCOFOMABH(); CBLLFJEDOII promise3 = promise; KJEFMHKMHOB k__BackingField2 = response.k__BackingField; promise3.OOOIENHGNCA(k__BackingField2); }; int num4 = 0; num4 += num4; num4++; Action action4 = delegate(string error) { promise.HMFPPBJFHKD("Failed to send chat message to existing thread"); }; CBLLFJEDOII promise4 = promise; throw new NullReferenceException(); } // Token: 0x0600349A RID: 13466 RVA: 0x000D6828 File Offset: 0x000D4A28 [Token(Token = "0x600349A")] [Address(RVA = "0x1668DF0", Offset = "0x1667DF0", VA = "0x181668DF0")] private static void BLDBFGLHGHF() { if (SingletonMonoBehaviour.ONCPNMDGGKG.IsExperimentSegmentActive((SplitTesting.NotificationPermissionsContextualPrompts_2021_06_25)((uint)1)) && SingletonMonoBehaviour.FFNIFALJLDD) { DABKFAIHBBP dabkfaihbbp = SingletonMonoBehaviour.ONCPNMDGGKG.TryShowRequestNotificationPermissionsDialog("Would you like Rec Room to notify you when you receive chat messages from friends?", "Get Notified!"); return; } } // Token: 0x0600349B RID: 13467 RVA: 0x000D6868 File Offset: 0x000D4A68 [Token(Token = "0x600349B")] [Address(RVA = "0x166A130", Offset = "0x1669130", VA = "0x18166A130")] private void HONBNPBHDEF() { float realtimeSinceStartup = Time.realtimeSinceStartup; int num = ChatThreadScreen.ELHBNIAFLNB._size; num++; float num2 = ChatThreadScreen.ELHBNIAFLNB.Dequeue(); int i = ChatThreadScreen.ELHBNIAFLNB._size; i++; while (i >= 5) { } Debug.Log("Hit chat rate limit"); num2 = realtimeSinceStartup; ChatThreadScreen.KKHAJNBFDAD = num2; NotificationManager instance = SingletonMonoBehaviour.ONCPNMDGGKG; ChatThreadScreen.ELHBNIAFLNB.Enqueue(float.Epsilon); } // Token: 0x0600349C RID: 13468 RVA: 0x000D68E4 File Offset: 0x000D4AE4 [Token(Token = "0x600349C")] [Address(RVA = "0x166A9F0", Offset = "0x16699F0", VA = "0x18166A9F0")] private bool LGBLGGHNLCP() { /* An exception occurred when decompiling this method (0600349C) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean ChatThreadScreen::LGBLGGHNLCP() ---> System.Exception: Basic block has to end with unconditional control flow. { Block_0: stloc:float32(var_1_07, callgetter:float32(Time::get_realtimeSinceStartup)) stloc:float32(var_2_0D, ldsfld:float32(ChatThreadScreen::KKHAJNBFDAD)) } 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: 0x0600349D RID: 13469 RVA: 0x000D6900 File Offset: 0x000D4B00 [Token(Token = "0x600349D")] [Address(RVA = "0x166BDE0", Offset = "0x166ADE0", VA = "0x18166BDE0")] private void Update() { Button3D button3D = this.sendButton; if (!this.ADAAGMKHEBE) { } bool flag = !this.LGBLGGHNLCP(); button3D.FFDOINJEHMM = flag; InputField3D inputField3D = this.messageField; bool flag2; if (!this.FNCBAOGJJEH) { flag2 = !this.LGBLGGHNLCP(); } inputField3D.FFDOINJEHMM = flag2; } // Token: 0x0600349E RID: 13470 RVA: 0x000D6958 File Offset: 0x000D4B58 [Token(Token = "0x600349E")] [Address(RVA = "0x1668D00", Offset = "0x1667D00", VA = "0x181668D00")] private void BIPKIPAJKJP() { OKLPPLDEGKH oanjhdhhmhe = this.OANJHDHHMHE; int num = 0; bool flag = OKLPPLDEGKH.BDBLGMKABNK(oanjhdhhmhe, num); WatchUI k__BackingField = this.k__BackingField; if (!flag) { k__BackingField.Button_PopFlow(); return; } PMGCJEPKFOF pmgcjepkfof = k__BackingField.ShowConfirmationDialog((UIConfirmationDialog.MCLCMCALGMA)((uint)3), "Confirm leave chat?", "You will not be able to be invited back to this chat for 24h."); Action action = new Action(this.PGPDFFIINOG); throw new NullReferenceException(); } // Token: 0x0600349F RID: 13471 RVA: 0x000D69B0 File Offset: 0x000D4BB0 [Token(Token = "0x600349F")] [Address(RVA = "0x166ACC0", Offset = "0x1669CC0", VA = "0x18166ACC0")] private void OLBCOFOMABH() { OKLPPLDEGKH oanjhdhhmhe = this.OANJHDHHMHE; int num = 0; if (OKLPPLDEGKH.BDBLGMKABNK(oanjhdhhmhe, num)) { TMP_InputField inputField = this.messageField._inputField; string empty = string.Empty; inputField.text = empty; InputField3D inputField3D = this.messageField; bool chpkkfdfbml = this.CHPKKFDFBML; inputField3D.FFDOINJEHMM = chpkkfdfbml; if (this.CHPKKFDFBML) { this.messageField._inputField.ActivateInputField(); } OKLPPLDEGKH oanjhdhhmhe2 = this.OANJHDHHMHE; ChatMessagePagedGrid chatMessagePagedGrid = this.pagedGrid; List k__BackingField = oanjhdhhmhe2.k__BackingField; chatMessagePagedGrid.SetChatMessages(oanjhdhhmhe2, k__BackingField); return; } } // Token: 0x060034A0 RID: 13472 RVA: 0x000D6A48 File Offset: 0x000D4C48 [Token(Token = "0x60034A0")] [Address(RVA = "0x1669CF0", Offset = "0x1668CF0", VA = "0x181669CF0")] private void DGNLAGDPMFA(string PAANJCAOOAG) { string bkpmbgmeifb = this.BKPMBGMEIFB; if (bkpmbgmeifb == 0) { char c = Enumerable.Last(PAANJCAOOAG); char c2 = Enumerable.Last(PAANJCAOOAG); int lghpnijlcpl = this.LGHPNIJLCPL; if (lghpnijlcpl != -1 && PAANJCAOOAG.m_stringLength > lghpnijlcpl && IAOJMNAKJLH.INHHMCLGDNL(Enumerable.Last(PAANJCAOOAG))) { int num = PAANJCAOOAG.m_stringLength; num += -2; char c3 = PAANJCAOOAG[num]; int num2 = PAANJCAOOAG.m_stringLength; int lghpnijlcpl2 = this.LGHPNIJLCPL; num2 -= lghpnijlcpl2; num2 += -2; if (num2 > 0) { string text = PAANJCAOOAG.Substring(lghpnijlcpl2, num2); this.CDMCGAJFOKC(text); } } return; } int lghpnijlcpl3 = this.LGHPNIJLCPL; if (lghpnijlcpl3 != -1 && bkpmbgmeifb.m_stringLength > lghpnijlcpl3) { int num3 = PAANJCAOOAG.m_stringLength; num3 -= lghpnijlcpl3; string text2 = PAANJCAOOAG.Substring(lghpnijlcpl3, num3); this.CDMCGAJFOKC(text2); } List dhajepghkol = this.DHAJEPGHKOL; string bkpmbgmeifb2 = this.BKPMBGMEIFB; this.LGHPNIJLCPL = (int)((ulong)4294967295L); this.AMMBFJAGNLL(bkpmbgmeifb2); } // Token: 0x060034A1 RID: 13473 RVA: 0x000D6B70 File Offset: 0x000D4D70 [Token(Token = "0x60034A1")] [Address(RVA = "0x166ABA0", Offset = "0x1669BA0", VA = "0x18166ABA0")] private bool NEODFMNHKIK(string PAANJCAOOAG) { int lghpnijlcpl = this.LGHPNIJLCPL; if (lghpnijlcpl == -1) { } return PAANJCAOOAG.m_stringLength > lghpnijlcpl; } // Token: 0x060034A2 RID: 13474 RVA: 0x000D6B9C File Offset: 0x000D4D9C [Token(Token = "0x60034A2")] [Address(RVA = "0x16692F0", Offset = "0x16682F0", VA = "0x1816692F0")] private void CDMCGAJFOKC(string FGMCLMEMDJP) { this.LGHPNIJLCPL = (int)((ulong)4294967295L); IAOJMNAKJLH.GFMGNLOBAAF nkeghpmcohg = this.NKEGHPMCOHG; if (nkeghpmcohg == IAOJMNAKJLH.GFMGNLOBAAF.Username) { PMGCJEPKFOF pmgcjepkfof = PEGGCEDHBOF.HBKBGEPCAGJ(FGMCLMEMDJP); PMGCJEPKFOF accountPromise = pmgcjepkfof; if (pmgcjepkfof != 0) { goto IL_BC; } List dhajepghkol = this.DHAJEPGHKOL; PMGCJEPKFOF accountPromise4 = accountPromise; dhajepghkol.Add(accountPromise4); PMGCJEPKFOF accountPromise2 = accountPromise; Action action = delegate { ChatThreadScreen <>4__this = this; PMGCJEPKFOF accountPromise3 = accountPromise; <>4__this.GOLLNOGPMPO(accountPromise3); }; } if (nkeghpmcohg == IAOJMNAKJLH.GFMGNLOBAAF.Roomname) { PMGCJEPKFOF pmgcjepkfof2 = OJMCBOKJFOF.NHBPIIGDAJP(FGMCLMEMDJP); PMGCJEPKFOF roomPromise = pmgcjepkfof2; if (pmgcjepkfof2 != 0) { goto IL_BC; } List dhajepghkol2 = this.DHAJEPGHKOL; PMGCJEPKFOF roomPromise4 = roomPromise; dhajepghkol2.Add(roomPromise4); PMGCJEPKFOF roomPromise2 = roomPromise; Action action2 = delegate { ChatThreadScreen <>4__this2 = this; PMGCJEPKFOF roomPromise3 = roomPromise; <>4__this2.GOLLNOGPMPO(roomPromise3); }; } Debug.LogError("Not implemented yet!"); IL_BC: this.NKEGHPMCOHG = (IAOJMNAKJLH.GFMGNLOBAAF)((ulong)0L); } // Token: 0x060034A3 RID: 13475 RVA: 0x000D6C74 File Offset: 0x000D4E74 [Token(Token = "0x60034A3")] [Address(RVA = "0x166A0B0", Offset = "0x16690B0", VA = "0x18166A0B0")] private void GOLLNOGPMPO(DABKFAIHBBP NKLGAGCHGPM) { bool flag = this.DHAJEPGHKOL.Remove(NKLGAGCHGPM); List dhajepghkol = this.DHAJEPGHKOL; string bkpmbgmeifb = this.BKPMBGMEIFB; if (bkpmbgmeifb != 0) { this.AMMBFJAGNLL(bkpmbgmeifb); } } // Token: 0x060034A4 RID: 13476 RVA: 0x000D6CB0 File Offset: 0x000D4EB0 [Token(Token = "0x60034A4")] [Address(RVA = "0x166B030", Offset = "0x166A030", VA = "0x18166B030")] private void OnEnable() { this.OGMDFIHEAJE = true; } // Token: 0x060034A5 RID: 13477 RVA: 0x000D6CC4 File Offset: 0x000D4EC4 [Token(Token = "0x60034A5")] [Address(RVA = "0x1668EE0", Offset = "0x1667EE0", VA = "0x181668EE0")] public void Button_ListMembers() { WatchUI k__BackingField = this.k__BackingField; } // Token: 0x060034A6 RID: 13478 RVA: 0x000D6CE0 File Offset: 0x000D4EE0 [Token(Token = "0x60034A6")] [Address(RVA = "0x1668D00", Offset = "0x1667D00", VA = "0x181668D00")] public void Button_LeaveChat() { OKLPPLDEGKH oanjhdhhmhe = this.OANJHDHHMHE; int num = 0; bool flag = OKLPPLDEGKH.BDBLGMKABNK(oanjhdhhmhe, num); WatchUI k__BackingField = this.k__BackingField; if (!flag) { k__BackingField.Button_PopFlow(); return; } PMGCJEPKFOF pmgcjepkfof = k__BackingField.ShowConfirmationDialog((UIConfirmationDialog.MCLCMCALGMA)((uint)3), "Confirm leave chat?", "You will not be able to be invited back to this chat for 24h."); Action action = new Action(this.PGPDFFIINOG); throw new NullReferenceException(); } // Token: 0x060034A7 RID: 13479 RVA: 0x000D6D38 File Offset: 0x000D4F38 [Token(Token = "0x60034A7")] [Address(RVA = "0x166B3A0", Offset = "0x166A3A0", VA = "0x18166B3A0")] public void OnTextValueChanged(string newText) { bool flag = this.CHPKKFDFBML; this.ADAAGMKHEBE = flag; this.LGHPNIJLCPL = (int)((ulong)4294967295L); } // Token: 0x060034A8 RID: 13480 RVA: 0x000D6D70 File Offset: 0x000D4F70 [Token(Token = "0x60034A8")] [Address(RVA = "0x16690F0", Offset = "0x16680F0", VA = "0x1816690F0")] public void Button_SendMessage() { string text = this.messageField._inputField.m_Text; if (SingletonMonoBehaviour.ONCPNMDGGKG.VerifyAccountRequirements() && !string.IsNullOrEmpty(text)) { InputField3D inputField3D = this.messageField; int num = 0; inputField3D.FFDOINJEHMM = num != 0; this.ADAAGMKHEBE = false; this.AMMBFJAGNLL(text); TMP_InputField inputField = this.messageField._inputField; string empty = string.Empty; inputField.text = empty; } } // Token: 0x060034A9 RID: 13481 RVA: 0x000D6DE4 File Offset: 0x000D4FE4 [Token(Token = "0x60034A9")] [Address(RVA = "0x1668F50", Offset = "0x1667F50", VA = "0x181668F50")] public void Button_OpenSendersAccount(CCEOLAOLEKJ senderPlayerAccount) { PlayerDetailsWatchUIFlow flowByType = this.k__BackingField.GetFlowByType(); int num = 0; if (flowByType != num) { StackedUIBase k__BackingField = this.k__BackingField; int num2 = 0; k__BackingField.PushFlow(flowByType, num2); } } // Token: 0x060034AA RID: 13482 RVA: 0x000D6E20 File Offset: 0x000D5020 [Token(Token = "0x60034AA")] [Address(RVA = "0x1669020", Offset = "0x1668020", VA = "0x181669020")] public void Button_RenameChat() { OKLPPLDEGKH oanjhdhhmhe = this.OANJHDHHMHE; WatchUI k__BackingField = this.k__BackingField; Action action = new Action(this.FHKAHDNHAEA); throw new NullReferenceException(); } // Token: 0x060034AB RID: 13483 RVA: 0x000D6E50 File Offset: 0x000D5050 [Token(Token = "0x60034AB")] [Address(RVA = "0x1669200", Offset = "0x1668200", VA = "0x181669200")] public void Button_SnoozeChat(bool snooze) { OKLPPLDEGKH oanjhdhhmhe = this.OANJHDHHMHE; int num = 0; if (OKLPPLDEGKH.BDBLGMKABNK(oanjhdhhmhe, num)) { OKLPPLDEGKH oanjhdhhmhe2 = this.OANJHDHHMHE; long k__BackingField = oanjhdhhmhe2.k__BackingField; bool flag = !oanjhdhhmhe2.NIPNFKELOIN; PMGCJEPKFOF pmgcjepkfof = IAOJMNAKJLH.IJHKPLKDKAO(k__BackingField, flag); Action action = new Action(this.ALLHODHNLAI); } } // Token: 0x060034AC RID: 13484 RVA: 0x000D6EA8 File Offset: 0x000D50A8 [Token(Token = "0x60034AC")] [Address(RVA = "0x166BEF0", Offset = "0x166AEF0", VA = "0x18166BEF0")] public ChatThreadScreen() { List list = new List(); this.DHAJEPGHKOL = list; this.CHPKKFDFBML = true; base..ctor(); } // Token: 0x060034AE RID: 13486 RVA: 0x000D6EF8 File Offset: 0x000D50F8 [Token(Token = "0x60034AE")] [Address(RVA = "0x1669BC0", Offset = "0x1668BC0", VA = "0x181669BC0")] [CompilerGenerated] private void DCIJENHGDNK(string LBLMNBJIHAC) { string text = this.messageField._inputField.m_Text; bool flag = SingletonMonoBehaviour.ONCPNMDGGKG.VerifyAccountRequirements(); if (flag && !flag) { InputField3D inputField3D = this.messageField; int num = 0; inputField3D.FFDOINJEHMM = num != 0; this.ADAAGMKHEBE = false; this.AMMBFJAGNLL(text); TMP_InputField inputField = this.messageField._inputField; string empty = string.Empty; inputField.text = empty; } } // Token: 0x060034AF RID: 13487 RVA: 0x000D6F6C File Offset: 0x000D516C [Token(Token = "0x60034AF")] [Address(RVA = "0x1668CB0", Offset = "0x1667CB0", VA = "0x181668CB0")] [CompilerGenerated] private void BBAOFKKMOAJ(List FMLOLBHAMMC) { OKLPPLDEGKH oanjhdhhmhe = this.OANJHDHHMHE; ChatMessagePagedGrid chatMessagePagedGrid = this.pagedGrid; List k__BackingField = oanjhdhhmhe.k__BackingField; chatMessagePagedGrid.SetChatMessages(oanjhdhhmhe, k__BackingField); if (base.isActiveAndEnabled) { this.OGMDFIHEAJE = true; } } // Token: 0x060034B0 RID: 13488 RVA: 0x000D6FAC File Offset: 0x000D51AC [Token(Token = "0x60034B0")] [Address(RVA = "0x166AA70", Offset = "0x1669A70", VA = "0x18166AA70")] [CompilerGenerated] private void LKKPMBFJLCE(OKLPPLDEGKH OFPDIAMBDKK) { int num = 0; if (!OKLPPLDEGKH.BDBLGMKABNK(OFPDIAMBDKK, num)) { this.pagedGrid.SetEmptyDisplayText("No messages. Send a message to create the chat thread."); return; } ToggleButton3D toggleButton3D = this.snoozeToggle; this.OANJHDHHMHE = OFPDIAMBDKK; bool flag = OFPDIAMBDKK.NIPNFKELOIN; toggleButton3D.BOHIGPFGJBA = flag; OKLPPLDEGKH oanjhdhhmhe = this.OANJHDHHMHE; TextMeshProUGUI textMeshProUGUI = this.chatName; this.PKDKKHABEHD = (ulong)0L; int num2 = 0; string text = oanjhdhhmhe.EMGINGNLOEC(num2 != 0); string text2 = textMeshProUGUI.text; OKLPPLDEGKH oanjhdhhmhe2 = this.OANJHDHHMHE; ChatMessagePagedGrid chatMessagePagedGrid = this.pagedGrid; List k__BackingField = oanjhdhhmhe2.k__BackingField; chatMessagePagedGrid.SetChatMessages(oanjhdhhmhe2, k__BackingField); } // Token: 0x060034B1 RID: 13489 RVA: 0x000D704C File Offset: 0x000D524C [Token(Token = "0x60034B1")] [Address(RVA = "0x166B420", Offset = "0x166A420", VA = "0x18166B420")] [CompilerGenerated] private void PGPDFFIINOG(JPIJGHNNIDP MAOOLFEBOOD) { JPIJGHNNIDP response = MAOOLFEBOOD; if (MAOOLFEBOOD == JPIJGHNNIDP.Affirmative) { PMGCJEPKFOF pmgcjepkfof = IAOJMNAKJLH.BIPKIPAJKJP(this.OANJHDHHMHE.k__BackingField); Action action = delegate(KJEFMHKMHOB result) { if (result != KJEFMHKMHOB.Success) { NotificationManager instance = SingletonMonoBehaviour.ONCPNMDGGKG; JPIJGHNNIDP response2 = response; int hashCode = response2.GetHashCode(); JPIJGHNNIDP jpijghnnidp = response2; response = jpijghnnidp; return; } long k__BackingField = this.OANJHDHHMHE.k__BackingField; JJGHAFKJBEI doohkcanflo = PEGGCEDHBOF.DOOHKCANFLO; bool fakeValueActive = doohkcanflo.k__BackingField.fakeValueActive; int num = ObscuredInt.FAJDMKOEFLH(doohkcanflo.k__BackingField); CFLMJLFBOKH.BIPKIPAJKJP(k__BackingField, num); this.k__BackingField.Button_PopFlow(); throw new NullReferenceException(); }; } } // Token: 0x060034B2 RID: 13490 RVA: 0x000D7098 File Offset: 0x000D5298 [Token(Token = "0x60034B2")] [Address(RVA = "0x1669ED0", Offset = "0x1668ED0", VA = "0x181669ED0")] [CompilerGenerated] private void FHKAHDNHAEA(JPIJGHNNIDP MAOOLFEBOOD) { if (MAOOLFEBOOD == JPIJGHNNIDP.Affirmative) { TextMeshProUGUI textMeshProUGUI = this.chatName; OKLPPLDEGKH oanjhdhhmhe = this.OANJHDHHMHE; int num = 0; string text = oanjhdhhmhe.EMGINGNLOEC(num != 0); ((IMainThreadDispatcher)textMeshProUGUI).Init(); return; } } // Token: 0x060034B3 RID: 13491 RVA: 0x000D70D0 File Offset: 0x000D52D0 [Token(Token = "0x60034B3")] [Address(RVA = "0x1668A80", Offset = "0x1667A80", VA = "0x181668A80")] [CompilerGenerated] private void ALLHODHNLAI(KJEFMHKMHOB GIAOBLMEMMI) { if (GIAOBLMEMMI != KJEFMHKMHOB.Success) { ToggleButton3D toggleButton3D = this.snoozeToggle; bool flag = this.OANJHDHHMHE.NIPNFKELOIN; toggleButton3D.BOHIGPFGJBA = flag; return; } } // Token: 0x04002B3F RID: 11071 [FieldOffset(Offset = "0xC8")] [Token(Token = "0x4002B3F")] [SerializeField] [NKNLDEIPALE(FHBJCBPFODN.Children, false, false, false)] private ChatMessagePagedGrid pagedGrid; // Token: 0x04002B40 RID: 11072 [FieldOffset(Offset = "0xD0")] [Token(Token = "0x4002B40")] [SerializeField] private ChooseFriendsDialog chooseFriendsDialogPrefab; // Token: 0x04002B41 RID: 11073 [FieldOffset(Offset = "0xD8")] [Token(Token = "0x4002B41")] [SerializeField] private RenameChatDialog renameChatDialogPrefab; // Token: 0x04002B42 RID: 11074 [FieldOffset(Offset = "0xE0")] [Token(Token = "0x4002B42")] [SerializeField] private TextMeshProUGUI chatName; // Token: 0x04002B43 RID: 11075 [FieldOffset(Offset = "0xE8")] [Token(Token = "0x4002B43")] [SerializeField] private InputField3D messageField; // Token: 0x04002B44 RID: 11076 [FieldOffset(Offset = "0xF0")] [Token(Token = "0x4002B44")] [SerializeField] private Button3D sendButton; // Token: 0x04002B45 RID: 11077 [FieldOffset(Offset = "0xF8")] [Token(Token = "0x4002B45")] [SerializeField] private Button3D renameChatButton; // Token: 0x04002B46 RID: 11078 [FieldOffset(Offset = "0x100")] [Token(Token = "0x4002B46")] [SerializeField] private Button3D addPlayerButton; // Token: 0x04002B47 RID: 11079 [FieldOffset(Offset = "0x108")] [Token(Token = "0x4002B47")] [SerializeField] private ToggleButton3D snoozeToggle; // Token: 0x04002B48 RID: 11080 [FieldOffset(Offset = "0x110")] [Token(Token = "0x4002B48")] [SerializeField] private Button3D leaveChatButton; // Token: 0x04002B49 RID: 11081 [FieldOffset(Offset = "0x118")] [Token(Token = "0x4002B49")] private OKLPPLDEGKH OANJHDHHMHE; // Token: 0x04002B4A RID: 11082 [FieldOffset(Offset = "0x120")] [Token(Token = "0x4002B4A")] private List PKDKKHABEHD; // Token: 0x04002B4B RID: 11083 [FieldOffset(Offset = "0x128")] [Token(Token = "0x4002B4B")] private int LGHPNIJLCPL = (int)((ulong)4294967295L); // Token: 0x04002B4C RID: 11084 [FieldOffset(Offset = "0x12C")] [Token(Token = "0x4002B4C")] private IAOJMNAKJLH.GFMGNLOBAAF NKEGHPMCOHG; // Token: 0x04002B4D RID: 11085 [FieldOffset(Offset = "0x130")] [Token(Token = "0x4002B4D")] private List DHAJEPGHKOL; // Token: 0x04002B4E RID: 11086 [FieldOffset(Offset = "0x138")] [Token(Token = "0x4002B4E")] private string BKPMBGMEIFB; // Token: 0x04002B4F RID: 11087 [FieldOffset(Offset = "0x140")] [Token(Token = "0x4002B4F")] private CFLMJLFBOKH.PGANKAHHBJJ BDNBANEMKLA; // Token: 0x04002B50 RID: 11088 [FieldOffset(Offset = "0x144")] [Token(Token = "0x4002B50")] private CFLMJLFBOKH.PNCCMHEKFKJ DMDOJGAFCDF; // Token: 0x04002B51 RID: 11089 [FieldOffset(Offset = "0x148")] [Token(Token = "0x4002B51")] private bool CHPKKFDFBML; // Token: 0x04002B52 RID: 11090 [FieldOffset(Offset = "0x149")] [Token(Token = "0x4002B52")] private bool ADAAGMKHEBE; // Token: 0x04002B53 RID: 11091 [FieldOffset(Offset = "0x14A")] [Token(Token = "0x4002B53")] private bool OGMDFIHEAJE; // Token: 0x04002B54 RID: 11092 [Token(Token = "0x4002B54")] private const int JFNKFPAGIFM = 5; // Token: 0x04002B55 RID: 11093 [Token(Token = "0x4002B55")] private const float GBBNLNJDGOO = 5f; // Token: 0x04002B56 RID: 11094 [Token(Token = "0x4002B56")] private const float GAOKJPJLHGO = 60f; // Token: 0x04002B57 RID: 11095 [Token(Token = "0x4002B57")] private static float KKHAJNBFDAD; // Token: 0x04002B58 RID: 11096 [Token(Token = "0x4002B58")] private static Queue ELHBNIAFLNB = new Queue(); // Token: 0x02000706 RID: 1798 [Token(Token = "0x2000706")] [CompilerGenerated] private sealed class GGBMJJMIDDK { // Token: 0x060034BA RID: 13498 RVA: 0x000D71D0 File Offset: 0x000D53D0 [Token(Token = "0x60034BA")] [Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")] public GGBMJJMIDDK() { } // Token: 0x060034BB RID: 13499 RVA: 0x000D71E4 File Offset: 0x000D53E4 [Token(Token = "0x60034BB")] [Address(RVA = "0x166E2E0", Offset = "0x166D2E0", VA = "0x18166E2E0")] internal void b__0() { OKLPPLDEGKH oanjhdhhmhe = this.<>4__this.OANJHDHHMHE; int num = 0; if (OKLPPLDEGKH.BDBLGMKABNK(oanjhdhhmhe, num)) { ChatThreadScreen chatThreadScreen = this.<>4__this; OKLPPLDEGKH oklppldegkh = this.chatThread; if (OKLPPLDEGKH.JGIMJGNAJHP(chatThreadScreen.OANJHDHHMHE, oklppldegkh)) { PMGCJEPKFOF> pmgcjepkfof = IAOJMNAKJLH.FALCGMECAAD(this.<>4__this.OANJHDHHMHE.k__BackingField); if (this.<>9__1 == 0) { Action> action = delegate(List chatMessages) { ChatThreadScreen chatThreadScreen3 = this.<>4__this; OKLPPLDEGKH oanjhdhhmhe2 = chatThreadScreen3.OANJHDHHMHE; ChatMessagePagedGrid pagedGrid = chatThreadScreen3.pagedGrid; List k__BackingField = oanjhdhhmhe2.k__BackingField; pagedGrid.SetChatMessages(oanjhdhhmhe2, k__BackingField); }; this.<>9__1 = action; } ChatThreadScreen chatThreadScreen2 = this.<>4__this; bool flag = chatThreadScreen2.FNCBAOGJJEH; chatThreadScreen2.GJJIEGDEJIP(flag); } } } // Token: 0x060034BC RID: 13500 RVA: 0x000D727C File Offset: 0x000D547C [Token(Token = "0x60034BC")] [Address(RVA = "0x166E430", Offset = "0x166D430", VA = "0x18166E430")] internal void b__1(List chatMessages) { ChatThreadScreen chatThreadScreen = this.<>4__this; OKLPPLDEGKH oanjhdhhmhe = chatThreadScreen.OANJHDHHMHE; ChatMessagePagedGrid pagedGrid = chatThreadScreen.pagedGrid; List k__BackingField = oanjhdhhmhe.k__BackingField; pagedGrid.SetChatMessages(oanjhdhhmhe, k__BackingField); } // Token: 0x04002B5E RID: 11102 [FieldOffset(Offset = "0x10")] [Token(Token = "0x4002B5E")] public ChatThreadScreen <>4__this; // Token: 0x04002B5F RID: 11103 [FieldOffset(Offset = "0x18")] [Token(Token = "0x4002B5F")] public OKLPPLDEGKH chatThread; // Token: 0x04002B60 RID: 11104 [FieldOffset(Offset = "0x20")] [Token(Token = "0x4002B60")] public Action> <>9__1; } // Token: 0x02000707 RID: 1799 [Token(Token = "0x2000707")] [CompilerGenerated] private sealed class IEFONOKKGLH { // Token: 0x060034BD RID: 13501 RVA: 0x000D72B4 File Offset: 0x000D54B4 [Token(Token = "0x60034BD")] [Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")] public IEFONOKKGLH() { } // Token: 0x060034BE RID: 13502 RVA: 0x000D72C8 File Offset: 0x000D54C8 [Token(Token = "0x60034BE")] [Address(RVA = "0x166EA00", Offset = "0x166DA00", VA = "0x18166EA00")] internal void b__0(KBMDHNGPDGN response) { if (response.k__BackingField != KJEFMHKMHOB.Success) { NotificationManager instance = SingletonMonoBehaviour.ONCPNMDGGKG; this.<>4__this.messageField.FFDOINJEHMM = true; this.<>4__this.ADAAGMKHEBE = true; } if (SingletonMonoBehaviour.ONCPNMDGGKG.IsExperimentSegmentActive((SplitTesting.NotificationPermissionsContextualPrompts_2021_06_25)((uint)1)) && SingletonMonoBehaviour.FFNIFALJLDD) { DABKFAIHBBP dabkfaihbbp = SingletonMonoBehaviour.ONCPNMDGGKG.TryShowRequestNotificationPermissionsDialog("Would you like Rec Room to notify you when you receive chat messages from friends?", "Get Notified!"); } ChatMessage k__BackingField = response.k__BackingField; int num = 0; if (k__BackingField.k__BackingField.Type == (IAOJMNAKJLH.PEHACEKFNLA)num && k__BackingField.k__BackingField.EHLGFMNCKBN) { List k__BackingField = response.k__BackingField.k__BackingField.k__BackingField; Func func; if (ChatThreadScreen.<>c.<>9__43_2 == 0) { func = (IAOJMNAKJLH.AFJCPHCCAGK d) => d.k__BackingField == IAOJMNAKJLH.GFMGNLOBAAF.Username; ChatThreadScreen.<>c.<>9__43_2 = func; } int num2 = Enumerable.Count(Enumerable.Where(k__BackingField, func)); List k__BackingField2 = response.k__BackingField.k__BackingField.k__BackingField; Func func2; if (ChatThreadScreen.<>c.<>9__43_3 == 0) { func2 = (IAOJMNAKJLH.AFJCPHCCAGK d) => d.k__BackingField == IAOJMNAKJLH.GFMGNLOBAAF.Roomname; ChatThreadScreen.<>c.<>9__43_3 = func2; } int num3 = Enumerable.Count(Enumerable.Where(k__BackingField2, func2)); } ChatThreadScreen chatThreadScreen = this.<>4__this; if (chatThreadScreen.DMDOJGAFCDF == CFLMJLFBOKH.PNCCMHEKFKJ.Invalid) { } CFLMJLFBOKH.PNCCMHEKFKJ bdnbanemkla = (CFLMJLFBOKH.PNCCMHEKFKJ)chatThreadScreen.BDNBANEMKLA; int hashCode = bdnbanemkla.GetHashCode(); CFLMJLFBOKH.PNCCMHEKFKJ pnccmhekfkj = bdnbanemkla; chatThreadScreen.BDNBANEMKLA = (CFLMJLFBOKH.PGANKAHHBJJ)pnccmhekfkj; long k__BackingField = this.<>4__this.OANJHDHHMHE.k__BackingField; JJGHAFKJBEI doohkcanflo = PEGGCEDHBOF.DOOHKCANFLO; bool fakeValueActive = doohkcanflo.k__BackingField.fakeValueActive; int num4 = ObscuredInt.FAJDMKOEFLH(doohkcanflo.k__BackingField); IAOJMNAKJLH.PEHACEKFNLA type = response.k__BackingField.k__BackingField.Type; this.<>4__this.OLBCOFOMABH(); CBLLFJEDOII cbllfjedoii = this.promise; KJEFMHKMHOB k__BackingField = response.k__BackingField; cbllfjedoii.OOOIENHGNCA(k__BackingField); } // Token: 0x060034BF RID: 13503 RVA: 0x000D7488 File Offset: 0x000D5688 [Token(Token = "0x60034BF")] [Address(RVA = "0x166F040", Offset = "0x166E040", VA = "0x18166F040")] internal void b__1(string error) { this.promise.HMFPPBJFHKD("Failed to send chat message to existing thread"); } // Token: 0x060034C0 RID: 13504 RVA: 0x000D74AC File Offset: 0x000D56AC [Token(Token = "0x60034C0")] [Address(RVA = "0x166F090", Offset = "0x166E090", VA = "0x18166F090")] internal void b__4(BBJLEHIBGBJ response) { if (response.k__BackingField != KJEFMHKMHOB.Success) { NotificationManager instance = SingletonMonoBehaviour.ONCPNMDGGKG; int num = 0; IDisposable disposable = instance.Play(NotificationManager.IBIDFAOPIPC.Medium, "Failed to send message", 3f, num, num); this.<>4__this.messageField.FFDOINJEHMM = true; this.<>4__this.ADAAGMKHEBE = true; } long k__BackingField = response.k__BackingField.k__BackingField; JJGHAFKJBEI doohkcanflo = PEGGCEDHBOF.DOOHKCANFLO; bool fakeValueActive = doohkcanflo.k__BackingField.fakeValueActive; int num2 = ObscuredInt.FAJDMKOEFLH(doohkcanflo.k__BackingField); CFLMJLFBOKH.PGANKAHHBJJ bdnbanemkla = this.<>4__this.BDNBANEMKLA; long k__BackingField2 = response.k__BackingField.k__BackingField; int num3 = 0; PMGCJEPKFOF pmgcjepkfof = IAOJMNAKJLH.EPHMNGGEOPC(k__BackingField2, num3 != 0); if (this.<>9__6 == 0) { Action action = delegate(OKLPPLDEGKH ct) { this.<>4__this.OANJHDHHMHE = ct; }; this.<>9__6 = action; } ChatThreadScreen chatThreadScreen = this.<>4__this; int num4 = 0; chatThreadScreen.PKDKKHABEHD = num4; ChatThreadScreen chatThreadScreen2 = this.<>4__this; int num5 = 0; chatThreadScreen2.GJJIEGDEJIP(num5 != 0); this.<>4__this.OLBCOFOMABH(); CBLLFJEDOII cbllfjedoii = this.promise; KJEFMHKMHOB k__BackingField = response.k__BackingField; cbllfjedoii.OOOIENHGNCA(k__BackingField); } // Token: 0x060034C1 RID: 13505 RVA: 0x000D75C4 File Offset: 0x000D57C4 [Token(Token = "0x60034C1")] [Address(RVA = "0x166F400", Offset = "0x166E400", VA = "0x18166F400")] internal void b__6(OKLPPLDEGKH ct) { this.<>4__this.OANJHDHHMHE = ct; } // Token: 0x060034C2 RID: 13506 RVA: 0x000D75E4 File Offset: 0x000D57E4 [Token(Token = "0x60034C2")] [Address(RVA = "0x166F3B0", Offset = "0x166E3B0", VA = "0x18166F3B0")] internal void b__5(string error) { this.promise.HMFPPBJFHKD("Failed to create new chat thread"); } // Token: 0x04002B61 RID: 11105 [FieldOffset(Offset = "0x10")] [Token(Token = "0x4002B61")] public ChatThreadScreen <>4__this; // Token: 0x04002B62 RID: 11106 [FieldOffset(Offset = "0x18")] [Token(Token = "0x4002B62")] public CBLLFJEDOII promise; // Token: 0x04002B63 RID: 11107 [FieldOffset(Offset = "0x20")] [Token(Token = "0x4002B63")] public Action <>9__6; } // Token: 0x02000708 RID: 1800 [Token(Token = "0x2000708")] [CompilerGenerated] private sealed class PLAFGCHHHHF { // Token: 0x060034C3 RID: 13507 RVA: 0x000D7608 File Offset: 0x000D5808 [Token(Token = "0x60034C3")] [Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")] public PLAFGCHHHHF() { } // Token: 0x060034C4 RID: 13508 RVA: 0x000D761C File Offset: 0x000D581C [Token(Token = "0x60034C4")] [Address(RVA = "0x1670FE0", Offset = "0x166FFE0", VA = "0x181670FE0")] internal void b__1(KJEFMHKMHOB result) { if (result != KJEFMHKMHOB.Success) { NotificationManager instance = SingletonMonoBehaviour.ONCPNMDGGKG; JPIJGHNNIDP jpijghnnidp = this.response; int hashCode = jpijghnnidp.GetHashCode(); JPIJGHNNIDP jpijghnnidp2 = jpijghnnidp; this.response = jpijghnnidp2; return; } long k__BackingField = this.<>4__this.OANJHDHHMHE.k__BackingField; JJGHAFKJBEI doohkcanflo = PEGGCEDHBOF.DOOHKCANFLO; bool fakeValueActive = doohkcanflo.k__BackingField.fakeValueActive; int num = ObscuredInt.FAJDMKOEFLH(doohkcanflo.k__BackingField); CFLMJLFBOKH.BIPKIPAJKJP(k__BackingField, num); this.<>4__this.k__BackingField.Button_PopFlow(); throw new NullReferenceException(); } // Token: 0x04002B64 RID: 11108 [FieldOffset(Offset = "0x10")] [Token(Token = "0x4002B64")] public JPIJGHNNIDP response; // Token: 0x04002B65 RID: 11109 [FieldOffset(Offset = "0x18")] [Token(Token = "0x4002B65")] public ChatThreadScreen <>4__this; } // Token: 0x02000709 RID: 1801 [Token(Token = "0x2000709")] [CompilerGenerated] private sealed class JPKPOCOJNCM { // Token: 0x060034C5 RID: 13509 RVA: 0x000D76A4 File Offset: 0x000D58A4 [Token(Token = "0x60034C5")] [Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")] public JPKPOCOJNCM() { } // Token: 0x060034C6 RID: 13510 RVA: 0x000D76B8 File Offset: 0x000D58B8 [Token(Token = "0x60034C6")] [Address(RVA = "0x166F6B0", Offset = "0x166E6B0", VA = "0x18166F6B0")] internal void b__0() { ChatThreadScreen chatThreadScreen = this.<>4__this; PMGCJEPKFOF pmgcjepkfof = this.accountPromise; chatThreadScreen.GOLLNOGPMPO(pmgcjepkfof); } // Token: 0x060034C7 RID: 13511 RVA: 0x000D76E0 File Offset: 0x000D58E0 [Token(Token = "0x60034C7")] [Address(RVA = "0x166F6E0", Offset = "0x166E6E0", VA = "0x18166F6E0")] internal void b__1() { ChatThreadScreen chatThreadScreen = this.<>4__this; PMGCJEPKFOF pmgcjepkfof = this.roomPromise; chatThreadScreen.GOLLNOGPMPO(pmgcjepkfof); } // Token: 0x04002B66 RID: 11110 [FieldOffset(Offset = "0x10")] [Token(Token = "0x4002B66")] public PMGCJEPKFOF accountPromise; // Token: 0x04002B67 RID: 11111 [FieldOffset(Offset = "0x18")] [Token(Token = "0x4002B67")] public PMGCJEPKFOF roomPromise; // Token: 0x04002B68 RID: 11112 [FieldOffset(Offset = "0x20")] [Token(Token = "0x4002B68")] public ChatThreadScreen <>4__this; } }