using System; using System.Collections; using System.Collections.Generic; using System.Linq; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; using Cpp2IlInjected; using Photon.Realtime; using RecRoom.Async; using RecRoom.Avatar.Data.Runtime; using RecRoom.Core.DataStructures.Tokens; using UnityEngine; namespace RecRoom.Avatar.Outfit { // Token: 0x020021B2 RID: 8626 [Token(Token = "0x20021B2")] [StructLayout(3)] public class OutfitManager : NetworkedSingletonMonoBehaviour { // Token: 0x0600ED98 RID: 60824 RVA: 0x00385274 File Offset: 0x00383474 [Token(Token = "0x600ED98")] [Address(RVA = "0x12A8AB0", Offset = "0x12A74B0", VA = "0x1812A8AB0")] public APAODCKMEKF GetBrowsableAvatarItemByGuid(string COFLAJFOPEN) { Dictionary khlonollnnf = this.KHLONOLLNNF; int num = 0; bool flag = khlonollnnf.TryGetValue(COFLAJFOPEN, num); throw new NullReferenceException(); } // Token: 0x0600ED99 RID: 60825 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x600ED99")] [Address(RVA = "0x12A8B30", Offset = "0x12A7530", VA = "0x1812A8B30")] public IPromise GetBrowsableAvatarItemsByGuids(List BOIHKFECIGG, List LLCIDEKMKBG, bool FLKBDJLHEDH = true) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x0600ED9A RID: 60826 RVA: 0x00385298 File Offset: 0x00383498 [Token(Token = "0x600ED9A")] [Address(RVA = "0x12A8E80", Offset = "0x12A7880", VA = "0x1812A8E80")] public IPromise> GetFilteredAvatarItemGuids(string KHFJLAPFOFI, bool HFFCNFLNFPE, APAODCKMEKF.INJKHADNCAE MKAMFBICAAH, params APAODCKMEKF.OBAKAPCJLEM[] ALMICNFABOK) { int num = 0; int num2 = 0; if (num2 < KHFJLAPFOFI) { num++; } List dmgkekjiema = OutfitManager.DMGKEKJIEMA; IPromise promise; return promise; } // Token: 0x0600ED9B RID: 60827 RVA: 0x003852C8 File Offset: 0x003834C8 [Token(Token = "0x600ED9B")] [Address(RVA = "0x12AA160", Offset = "0x12A8B60", VA = "0x1812AA160")] private void KGJKDAPMLEM() { int num; do { num = 0; this.KHLONOLLNNF.Clear(); this.EBMJIJKHKJA.Clear(); HashSet nkihcllango = this.NKIHCLLANGO; HashSet nkihcllango2 = this.NKIHCLLANGO; num += num; num++; APAODCKMEKF apaodckmekf = new APAODCKMEKF(); OutfitManager.AvatarItemMetadata avatarItemMetadata; apaodckmekf.k__BackingField = avatarItemMetadata; apaodckmekf.k__BackingField = num; apaodckmekf.k__BackingField = true; this.BLBNKOIALHE(apaodckmekf); apaodckmekf += apaodckmekf; if (num != -1) { } } while (num != 0); IPromise promise = GEAPBDGCKMB.PGIMFDLBHON(DGOHCPBKOHD.Watch); Action action = new Action(this.FDJACEDFOHM); if (OutfitManager.<>c.<>9__8_0 == 0) { OutfitManager.<>c.<>9__8_0 = delegate { ActionEvent browsableItemsChangedEvent = OutfitManager.BrowsableItemsChangedEvent; int num2 = 0; browsableItemsChangedEvent.Invoke(num2 != 0); }; } } // Token: 0x0600ED9C RID: 60828 RVA: 0x00385380 File Offset: 0x00383580 [Token(Token = "0x600ED9C")] [Address(RVA = "0x12AA8F0", Offset = "0x12A92F0", VA = "0x1812AA8F0")] private IPromise LFGLKGGBJHF() { IPromise promise = GEAPBDGCKMB.PGIMFDLBHON(DGOHCPBKOHD.Watch); Action action = new Action(this.FDJACEDFOHM); throw new NullReferenceException(); } // Token: 0x0600ED9D RID: 60829 RVA: 0x003853A8 File Offset: 0x003835A8 [Token(Token = "0x600ED9D")] [Address(RVA = "0x12A9640", Offset = "0x12A8040", VA = "0x1812A9640")] private void HNPFOAIMPNG(AvatarItem LACNEKHKOII) { OutfitManager.AvatarItemMetadata avatarItemMetadata; this.BLBNKOIALHE(new APAODCKMEKF { k__BackingField = avatarItemMetadata, k__BackingField = (ulong)0L, k__BackingField = true }); } // Token: 0x0600ED9E RID: 60830 RVA: 0x003853E0 File Offset: 0x003835E0 [Token(Token = "0x600ED9E")] [Address(RVA = "0x12A96F0", Offset = "0x12A80F0", VA = "0x1812A96F0")] private APAODCKMEKF IDKKJAFCBAN(AvatarItem LACNEKHKOII) { APAODCKMEKF apaodckmekf = new APAODCKMEKF(); OutfitManager.AvatarItemMetadata avatarItemMetadata; apaodckmekf.k__BackingField = avatarItemMetadata; apaodckmekf.k__BackingField = (ulong)0L; apaodckmekf.k__BackingField = false; this.BLBNKOIALHE(apaodckmekf); return apaodckmekf; } // Token: 0x0600ED9F RID: 60831 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x600ED9F")] [Address(RVA = "0x12A8960", Offset = "0x12A7360", VA = "0x1812A8960")] private void GOOHDGKHHNM(AvatarItem LACNEKHKOII, HOJMGAMMIAD EBMJDCLJJHG) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x0600EDA0 RID: 60832 RVA: 0x00385418 File Offset: 0x00383618 [Token(Token = "0x600EDA0")] [Address(RVA = "0x12A7FB0", Offset = "0x12A69B0", VA = "0x1812A7FB0")] private void BLBNKOIALHE(APAODCKMEKF FOAHCAIKPLO) { string text; this.EBMJIJKHKJA.Add(text); this.KHLONOLLNNF[text] = FOAHCAIKPLO; } // Token: 0x0600EDA1 RID: 60833 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x600EDA1")] [Address(RVA = "0x12AA880", Offset = "0x12A9280", VA = "0x1812AA880")] private static MJLPNOMEFKG KNJALGGCDMK(HOJMGAMMIAD EBMJDCLJJHG) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x0600EDA2 RID: 60834 RVA: 0x00385444 File Offset: 0x00383644 [Token(Token = "0x600EDA2")] [Address(RVA = "0x12AA810", Offset = "0x12A9210", VA = "0x1812AA810")] private string KHKKLFCKBNK(string COFLAJFOPEN) { OutfitManager.AvatarItemMetadata k__BackingField; do { APAODCKMEKF browsableAvatarItemByGuid = this.GetBrowsableAvatarItemByGuid(COFLAJFOPEN); if (browsableAvatarItemByGuid == 0) { break; } k__BackingField = browsableAvatarItemByGuid.k__BackingField; } while (k__BackingField != 0 && k__BackingField.FriendlyName != 0); return string.Empty; } // Token: 0x0600EDA3 RID: 60835 RVA: 0x00385478 File Offset: 0x00383678 [Token(Token = "0x600EDA3")] [Address(RVA = "0x12A9A70", Offset = "0x12A8470", VA = "0x1812A9A70")] private GiftManager.MCEEFCNMNAH JDFLLLCACOE(string COFLAJFOPEN) { /* An exception occurred when decompiling this method (0600EDA3) ICSharpCode.Decompiler.DecompilerException: Error decompiling GiftManager/MCEEFCNMNAH RecRoom.Avatar.Outfit.OutfitManager::JDFLLLCACOE(System.String) ---> System.Exception: Basic block has to end with unconditional control flow. { Block_0: stloc:AvatarItemMetadata(var_1_12, ldfld:AvatarItemMetadata(APAODCKMEKF::k__BackingField, ldloc:APAODCKMEKF(var_0_07))) brtrue(IL_00, ceq:bool(ldloc:AvatarItemMetadata(var_1_12), ldc.i4:int32[exp:AvatarItemMetadata](0))) } at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88 --- End of inner exception stack trace --- at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1663 */; } // Token: 0x0600EDA4 RID: 60836 RVA: 0x003854A0 File Offset: 0x003836A0 [Token(Token = "0x600EDA4")] [Address(RVA = "0x12A97B0", Offset = "0x12A81B0", VA = "0x1812A97B0")] private int INENIONEEOH(string COFLAJFOPEN) { APAODCKMEKF browsableAvatarItemByGuid = this.GetBrowsableAvatarItemByGuid(COFLAJFOPEN); if (browsableAvatarItemByGuid == 0) { return int.MaxValue; } if (browsableAvatarItemByGuid.PDPOGMFOACI) { return 0; } if (browsableAvatarItemByGuid.k__BackingField != 0) { return 1; } return 2; } // Token: 0x0600EDA5 RID: 60837 RVA: 0x003854D8 File Offset: 0x003836D8 [Token(Token = "0x600EDA5")] [Address(RVA = "0x12AA550", Offset = "0x12A8F50", VA = "0x1812AA550")] private void KHBIOENJIFC(List BNGMFBNNBDJ, APAODCKMEKF.INJKHADNCAE MKAMFBICAAH) { int num = MKAMFBICAAH - APAODCKMEKF.INJKHADNCAE.Alphabetical; if (num != 0) { if (num != 0) { if (num != 1) { if (MKAMFBICAAH == APAODCKMEKF.INJKHADNCAE.AlphabeticalDescending) { Func func = new Func(this.KHKKLFCKBNK); IOrderedEnumerable orderedEnumerable = Enumerable.OrderByDescending(BNGMFBNNBDJ, func); } if (MKAMFBICAAH != APAODCKMEKF.INJKHADNCAE.RarityDescending) { goto IL_95; } Func func2 = new Func(this.JDFLLLCACOE); IOrderedEnumerable orderedEnumerable2 = Enumerable.OrderByDescending(BNGMFBNNBDJ, func2); Func func3 = new Func(this.KHKKLFCKBNK); IOrderedEnumerable orderedEnumerable3 = Enumerable.ThenBy(orderedEnumerable2, func3); } Func func4 = new Func(this.JDFLLLCACOE); IOrderedEnumerable orderedEnumerable4 = Enumerable.OrderBy(BNGMFBNNBDJ, func4); } Func func5 = new Func(this.INENIONEEOH); IOrderedEnumerable orderedEnumerable5 = Enumerable.OrderBy(BNGMFBNNBDJ, func5); } IL_95: Func func6 = new Func(this.KHKKLFCKBNK); IOrderedEnumerable orderedEnumerable6 = Enumerable.OrderBy(BNGMFBNNBDJ, func6); OutfitManager.ECAAHMIBOOC.Clear(); OutfitManager.ECAAHMIBOOC.AddRange(orderedEnumerable6); BNGMFBNNBDJ.Clear(); List ecaahmibooc = OutfitManager.ECAAHMIBOOC; BNGMFBNNBDJ.AddRange(ecaahmibooc); OutfitManager.ECAAHMIBOOC.Clear(); } // Token: 0x0600EDA6 RID: 60838 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x600EDA6")] [Address(RVA = "0x12AAD80", Offset = "0x12A9780", VA = "0x1812AAD80")] private void ONHCNJEINAK(List LLCIDEKMKBG, string KHFJLAPFOFI, bool HFFCNFLNFPE, APAODCKMEKF.INJKHADNCAE MKAMFBICAAH, APAODCKMEKF.OBAKAPCJLEM ALMICNFABOK) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x0600EDA7 RID: 60839 RVA: 0x003855D0 File Offset: 0x003837D0 [Token(Token = "0x600EDA7")] [Address(RVA = "0x12A7C50", Offset = "0x12A6650", VA = "0x1812A7C50", Slot = "13")] protected override void Awake() { base.Awake(); this.EDCLJLEICAC(); } // Token: 0x140000F5 RID: 245 // (add) Token: 0x0600EDA8 RID: 60840 RVA: 0x003855EC File Offset: 0x003837EC // (remove) Token: 0x0600EDA9 RID: 60841 RVA: 0x00385614 File Offset: 0x00383814 [Token(Token = "0x140000F5")] public event Action LGHHLODGCFO { [Token(Token = "0x600EDA8")] [Address(RVA = "0x12AC540", Offset = "0x12AAF40", VA = "0x1812AC540")] [CompilerGenerated] add { Action lghhlodgcfo; Delegate @delegate; do { lghhlodgcfo = this.LGHHLODGCFO; @delegate = Delegate.Combine(lghhlodgcfo, value); } while (@delegate != 0 && @delegate == 0); while (@delegate != lghhlodgcfo) { } } [Token(Token = "0x600EDA9")] [Address(RVA = "0x12AC600", Offset = "0x12AB000", VA = "0x1812AC600")] [CompilerGenerated] remove { Action lghhlodgcfo; Delegate @delegate; do { lghhlodgcfo = this.LGHHLODGCFO; @delegate = Delegate.Remove(lghhlodgcfo, value); } while (@delegate != 0 && @delegate == 0); while (@delegate != lghhlodgcfo) { } } } // Token: 0x170027D3 RID: 10195 // (get) Token: 0x0600EDAA RID: 60842 RVA: 0x0038563C File Offset: 0x0038383C [Token(Token = "0x170027D3")] public IReadOnlyCollection KOJIFKGBDMG { [Token(Token = "0x600EDAA")] [Address(RVA = "0x48F050", Offset = "0x48DA50", VA = "0x18048F050")] get { /* An exception occurred when decompiling this method (0600EDAA) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Collections.Generic.IReadOnlyCollection`1 RecRoom.Avatar.Outfit.OutfitManager::get_UnlockedAvatarItems() ---> System.Exception: Basic block has to end with unconditional control flow. { Block_0: stloc:class [System.Core]System.Collections.Generic.HashSet`1(var_0_06, ldfld:class [System.Core]System.Collections.Generic.HashSet`1(OutfitManager::NKIHCLLANGO, ldloc:OutfitManager(this))) } 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: 0x0600EDAB RID: 60843 RVA: 0x00385650 File Offset: 0x00383850 [Token(Token = "0x600EDAB")] [Address(RVA = "0x12A82B0", Offset = "0x12A6CB0", VA = "0x1812A82B0")] public IEnumerator DownloadUnlockedAvatarItems(BPHGKAEDBPE.CBEOHBCIPEA AFLPGGJMPOE) { return NLEKGNENMCO.JMILOAEBBAK(delegate(string e, List avatarItemDetailsList) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); }); } // Token: 0x0600EDAC RID: 60844 RVA: 0x00385688 File Offset: 0x00383888 [Token(Token = "0x600EDAC")] [Address(RVA = "0x12A81A0", Offset = "0x12A6BA0", VA = "0x1812A81A0")] public IPromise> DownloadLockedAvatarItemDetailsByAvatarItemDescription(List DDMOKHDKAIG) { IPromise> promise = NLEKGNENMCO.KLPMNFCFOLE(DDMOKHDKAIG); Action> action = new Action(this.JKNMFEOIFPD); int num = 0; num += num; num++; return promise.Then(action); } // Token: 0x0600EDAD RID: 60845 RVA: 0x003856C4 File Offset: 0x003838C4 [Token(Token = "0x600EDAD")] [Address(RVA = "0x12A8050", Offset = "0x12A6A50", VA = "0x1812A8050")] private void BPDDIKFOCPE(AvatarItem LACNEKHKOII, NLEKGNENMCO.EPFHLDCPAOK AFOAIPBOACM) { HashSet nkihcllango = this.NKIHCLLANGO; bool flag; if (flag) { Dictionary onkbhglcaeg = this.ONKBHGLCAEG; bool flag2; if (!flag2) { OutfitManager.AvatarItemMetadata avatarItemMetadata = new OutfitManager.AvatarItemMetadata(); Dictionary onkbhglcaeg2 = this.ONKBHGLCAEG; } string k__BackingField = AFOAIPBOACM.k__BackingField; string k__BackingField = AFOAIPBOACM.k__BackingField; GiftManager.MCEEFCNMNAH k__BackingField = AFOAIPBOACM.k__BackingField; } } // Token: 0x0600EDAE RID: 60846 RVA: 0x00385718 File Offset: 0x00383918 [Token(Token = "0x600EDAE")] [Address(RVA = "0x12AC170", Offset = "0x12AAB70", VA = "0x1812AC170")] public bool UnlockAvatarItemAndMarkNew(string DJHKBMIDFLF) { OutfitManager.BBKOFMBAPHK bbkofmbaphk = new OutfitManager.BBKOFMBAPHK(); bbkofmbaphk.avatarItemDesc = DJHKBMIDFLF; bbkofmbaphk.<>4__this = this; HashSet nkihcllango = this.NKIHCLLANGO; bool flag; if (!flag) { return flag; } OutfitManager.AvatarItemMetadata avatarItemMetadata; OutfitManager.AvatarItemMetadata metadata = avatarItemMetadata; avatarItemMetadata.IsNew = true; this.EDCLJLEICAC(); if (this.LGHHLODGCFO != 0) { } ActionEvent unlockedAvatarItemsChangedEvent = this.UnlockedAvatarItemsChangedEvent; int num = 0; unlockedAvatarItemsChangedEvent.Invoke(num != 0); IEnumerator enumerator = NLEKGNENMCO.JMILOAEBBAK(delegate(string e, List unlockedAvatarItems) { if (unlockedAvatarItems != 0) { OutfitManager.BBKOFMBAPHK cs$<>8__locals = bbkofmbaphk; Predicate <>9__ = cs$<>8__locals.<>9__1; if (<>9__ == 0) { Predicate predicate = delegate(NLEKGNENMCO.EPFHLDCPAOK uai) { string avatarItemDesc = cs$<>8__locals.avatarItemDesc; return string.Equals(uai.k__BackingField, avatarItemDesc); }; cs$<>8__locals.<>9__1 = predicate; } NLEKGNENMCO.EPFHLDCPAOK epfhldcpaok = unlockedAvatarItems.Find(<>9__); OutfitManager.AvatarItemMetadata metadata4 = metadata; string k__BackingField = epfhldcpaok.k__BackingField; metadata4.FriendlyName = k__BackingField; OutfitManager.AvatarItemMetadata metadata2 = metadata; string k__BackingField = epfhldcpaok.k__BackingField; metadata2.Tooltip = k__BackingField; OutfitManager.AvatarItemMetadata metadata3 = metadata; GiftManager.MCEEFCNMNAH k__BackingField = epfhldcpaok.k__BackingField; metadata3.Rarity = k__BackingField; bbkofmbaphk.<>4__this.KGJKDAPMLEM(); bbkofmbaphk.<>4__this.HairColorVault.LinkDyesToWatchStorefront(); } }); Coroutine coroutine = base.StartCoroutine(enumerator); throw new NullReferenceException(); } // Token: 0x0600EDAF RID: 60847 RVA: 0x003857AC File Offset: 0x003839AC [Token(Token = "0x600EDAF")] [Address(RVA = "0x12AAD00", Offset = "0x12A9700", VA = "0x1812AAD00")] public void MarkNotNew(AvatarItem IOBEPGLJNIP) { Dictionary onkbhglcaeg = this.ONKBHGLCAEG; bool flag; if (flag) { } } // Token: 0x0600EDB0 RID: 60848 RVA: 0x003857CC File Offset: 0x003839CC [Token(Token = "0x600EDB0")] [Address(RVA = "0x12AAC30", Offset = "0x12A9630", VA = "0x1812AAC30")] public void MarkGiftPackageItemAvailable(string DJHKBMIDFLF) { Dictionary onkbhglcaeg = this.ONKBHGLCAEG; bool flag; if (!flag) { OutfitManager.AvatarItemMetadata avatarItemMetadata = new OutfitManager.AvatarItemMetadata(); Dictionary onkbhglcaeg2 = this.ONKBHGLCAEG; } } // Token: 0x0600EDB1 RID: 60849 RVA: 0x003857FC File Offset: 0x003839FC [Token(Token = "0x600EDB1")] [Address(RVA = "0x12A9960", Offset = "0x12A8360", VA = "0x1812A9960")] public bool IsAvatarItemUnlocked(AvatarItem LACNEKHKOII) { HashSet nkihcllango = this.NKIHCLLANGO; bool flag; return flag; } // Token: 0x0600EDB2 RID: 60850 RVA: 0x00385814 File Offset: 0x00383A14 [Token(Token = "0x600EDB2")] [Address(RVA = "0x12A99C0", Offset = "0x12A83C0", VA = "0x1812A99C0")] public bool IsAvatarItemUnlocked(string DJHKBMIDFLF) { /* An exception occurred when decompiling this method (0600EDB2) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean RecRoom.Avatar.Outfit.OutfitManager::IsAvatarItemUnlocked(System.String) ---> System.Exception: Basic block has to end with unconditional control flow. { Block_0: stloc:class [System.Core]System.Collections.Generic.HashSet`1(var_1_06, ldfld:class [System.Core]System.Collections.Generic.HashSet`1(OutfitManager::NKIHCLLANGO, ldloc:OutfitManager(this))) } 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: 0x0600EDB3 RID: 60851 RVA: 0x0038582C File Offset: 0x00383A2C [Token(Token = "0x600EDB3")] [Address(RVA = "0x12A98B0", Offset = "0x12A82B0", VA = "0x1812A98B0")] public bool IsAvatarItemAlreadyPurchased(AvatarItem LACNEKHKOII) { string text = LACNEKHKOII._avatarItemVisualData.JOPJHHOJMEE(); return SingletonMonoBehaviour.Instance.IsOutfitAvailableInGiftPackageQueue(text) || this.IsAvatarItemUnlocked(text); } // Token: 0x0600EDB4 RID: 60852 RVA: 0x00385864 File Offset: 0x00383A64 [Token(Token = "0x600EDB4")] [Address(RVA = "0x12A9810", Offset = "0x12A8210", VA = "0x1812A9810")] public bool IsAvatarItemAlreadyPurchased(string DJHKBMIDFLF) { return SingletonMonoBehaviour.Instance.IsOutfitAvailableInGiftPackageQueue(DJHKBMIDFLF) || this.IsAvatarItemUnlocked(DJHKBMIDFLF); } // Token: 0x0600EDB5 RID: 60853 RVA: 0x00385890 File Offset: 0x00383A90 [Token(Token = "0x600EDB5")] [Address(RVA = "0x12A9060", Offset = "0x12A7A60", VA = "0x1812A9060")] public bool GetItemIsNew(AvatarItem IOBEPGLJNIP) { Dictionary onkbhglcaeg = this.ONKBHGLCAEG; bool flag; if (!flag) { return flag; } throw new NullReferenceException(); } // Token: 0x0600EDB6 RID: 60854 RVA: 0x003858B0 File Offset: 0x00383AB0 [Token(Token = "0x600EDB6")] [Address(RVA = "0x12A8FC0", Offset = "0x12A79C0", VA = "0x1812A8FC0")] public string GetItemFriendlyName(AvatarItem IOBEPGLJNIP) { Dictionary onkbhglcaeg = this.ONKBHGLCAEG; bool flag; if (!flag) { return string.Empty; } throw new NullReferenceException(); } // Token: 0x0600EDB7 RID: 60855 RVA: 0x003858D4 File Offset: 0x00383AD4 [Token(Token = "0x600EDB7")] [Address(RVA = "0x12A9250", Offset = "0x12A7C50", VA = "0x1812A9250")] public string GetItemTooltip(AvatarItem IOBEPGLJNIP) { Dictionary onkbhglcaeg = this.ONKBHGLCAEG; bool flag; if (!flag) { return string.Empty; } throw new NullReferenceException(); } // Token: 0x0600EDB8 RID: 60856 RVA: 0x003858F8 File Offset: 0x00383AF8 [Token(Token = "0x600EDB8")] [Address(RVA = "0x12A91C0", Offset = "0x12A7BC0", VA = "0x1812A91C0")] public GiftManager.MCEEFCNMNAH GetItemRarity(AvatarItem IOBEPGLJNIP) { Dictionary onkbhglcaeg = this.ONKBHGLCAEG; bool flag; if (!flag) { return GiftManager.MCEEFCNMNAH.None; } throw new NullReferenceException(); } // Token: 0x0600EDB9 RID: 60857 RVA: 0x00385918 File Offset: 0x00383B18 [Token(Token = "0x600EDB9")] [Address(RVA = "0x12A90F0", Offset = "0x12A7AF0", VA = "0x1812A90F0")] public OutfitManager.AvatarItemMetadata GetItemMetadata(AvatarItem IOBEPGLJNIP) { Dictionary onkbhglcaeg = this.ONKBHGLCAEG; bool flag; if (!flag) { new OutfitManager.AvatarItemMetadata().IsNew = false; Dictionary onkbhglcaeg2 = this.ONKBHGLCAEG; } throw new NullReferenceException(); } // Token: 0x0600EDBA RID: 60858 RVA: 0x00385948 File Offset: 0x00383B48 [Token(Token = "0x600EDBA")] [Address(RVA = "0x12A8370", Offset = "0x12A6D70", VA = "0x1812A8370")] private void EDCLJLEICAC() { HashSet nkihcllango = this.NKIHCLLANGO; Func <>9__47_ = OutfitManager.<>c.<>9__47_0; if (<>9__47_ == 0) { OutfitManager.<>c.<>9__47_0 = delegate(AvatarItem i) { throw new NullReferenceException(); }; } IEnumerable enumerable = Enumerable.GroupBy(nkihcllango, <>9__47_); Func, LKAGLMBDHJN> func; if (OutfitManager.<>c.<>9__47_1 == 0) { func = delegate(IGrouping g) { throw new NullReferenceException(); }; OutfitManager.<>c.<>9__47_1 = func; } Func, List> func2; if (OutfitManager.<>c.<>9__47_2 == 0) { func2 = (IGrouping g) => Enumerable.ToList(g); OutfitManager.<>c.<>9__47_2 = func2; } Dictionary, LKAGLMBDHJN> dictionary = Enumerable.ToDictionary, LKAGLMBDHJN, List>(enumerable, func, func2); this.FCBILBFBCGJ = dictionary; } // Token: 0x0600EDBB RID: 60859 RVA: 0x003859D8 File Offset: 0x00383BD8 [Token(Token = "0x600EDBB")] [Address(RVA = "0x12AB600", Offset = "0x12AA000", VA = "0x1812AB600")] public void SetCanRemoveOutfitItemsByHand(bool ONGBFDACHHG, object PIHIPPPPEBI) { TokenFlag mpacdpddnpa = this.MPACDPDDNPA; if (!ONGBFDACHHG) { mpacdpddnpa.Remove(PIHIPPPPEBI); return; } mpacdpddnpa.Add(PIHIPPPPEBI); } // Token: 0x170027D4 RID: 10196 // (get) Token: 0x0600EDBC RID: 60860 RVA: 0x00385A08 File Offset: 0x00383C08 [Token(Token = "0x170027D4")] public bool AHPPOPBCGEJ { [Token(Token = "0x600EDBC")] [Address(RVA = "0x12AC5E0", Offset = "0x12AAFE0", VA = "0x1812AC5E0")] get { return this.MPACDPDDNPA.HasTokens; } } // Token: 0x0600EDBD RID: 60861 RVA: 0x00385A28 File Offset: 0x00383C28 [Token(Token = "0x600EDBD")] [Address(RVA = "0x12AB0E0", Offset = "0x12A9AE0", VA = "0x1812AB0E0")] public void RandomizePlayerOutfit() { int num; List list; do { num = 0; PlayerAvatar playerAvatar = global::Player.k__BackingField.playerAvatar; int num2 = 0; if (!(playerAvatar != num2)) { return; } list = new List(); Dictionary> fcbilbfbcgj = this.FCBILBFBCGJ; Dictionary.Enumerator enumerator; if (enumerator != 0) { bool flag; if (!flag && global::UnityEngine.Random.value > 0.3f) { continue; } while (playerAvatar.LocalPlayerOutfitItemSelectionChangedEvent <= (ulong)0L) { } AvatarItemSelection avatarItemSelection = ListExt.Random(list); int num3 = 0; global::Player.GAHEJKDCLLE gahejkdclle; int num4 = (int)gahejkdclle; list.Add(num3); while (num4 != 2) { } if (playerAvatar != (ulong)200L) { while (playerAvatar != (ulong)201L) { } } list.Add(num3); } if (num != -1) { } } while (num != 0); global::Player.k__BackingField.playerAvatar.SetLocalPlayerSelectedOutfit(list, true); if (!SessionManager.IGCCGADCLBN) { CFLMJLFBOKH.ACLBKMGMCDC("RandomizePlayerOutfit"); } } // Token: 0x0600EDBE RID: 60862 RVA: 0x00385B0C File Offset: 0x00383D0C [Token(Token = "0x600EDBE")] [Address(RVA = "0x12A92F0", Offset = "0x12A7CF0", VA = "0x1812A92F0")] public List GetRandomInitialOutfit() { List initialAvatarItems = AvatarItemWardrobeRuntimeConfig.Config.initialAvatarItems; if (OutfitManager.<>c.<>9__53_0 == 0) { OutfitManager.<>c.<>9__53_0 = (AvatarItem item) => "{il2cpp field on {'constant1' (constant value of type Cpp2IL.Core.Analysis.Il2CppClassIdentifier)}, offset 0x20}" == (ulong)2L; } List initialAvatarItems2 = AvatarItemWardrobeRuntimeConfig.Config.initialAvatarItems; if (OutfitManager.<>c.<>9__53_1 == 0) { OutfitManager.<>c.<>9__53_1 = (AvatarItem item) => "{il2cpp field on {'constant1' (constant value of type Cpp2IL.Core.Analysis.Il2CppClassIdentifier)}, offset 0x20}" == (ulong)101L; } bool flag; bool flag2; if (!flag || !flag2) { Debug.LogError("Error building initial outfit!"); } return new List(); } // Token: 0x0600EDBF RID: 60863 RVA: 0x00385B90 File Offset: 0x00383D90 [Token(Token = "0x600EDBF")] [Address(RVA = "0x12ABEF0", Offset = "0x12AA8F0", VA = "0x1812ABEF0")] public static bool TryGetRandomItem(IEnumerable NPKMLLECNOF, Func LMAJKCLDDIF, out AvatarItem NNLFIDNBHDK) { OutfitManager.FNPHHGHPGAI.Clear(); if (LMAJKCLDDIF != 0) { List fnphhghpgai = OutfitManager.FNPHHGHPGAI; IEnumerable enumerable = Enumerable.Where(NPKMLLECNOF, LMAJKCLDDIF); } OutfitManager.FNPHHGHPGAI.AddRange(NPKMLLECNOF); List fnphhghpgai2 = OutfitManager.FNPHHGHPGAI; OutfitManager.FNPHHGHPGAI.Clear(); int num = 0; NNLFIDNBHDK._avatarItemData = num; NNLFIDNBHDK._avatarItemVisualData = num; throw new NullReferenceException(); } // Token: 0x0600EDC0 RID: 60864 RVA: 0x00385BEC File Offset: 0x00383DEC [Token(Token = "0x600EDC0")] [Address(RVA = "0x12AC0F0", Offset = "0x12AAAF0", VA = "0x1812AC0F0")] public bool TryGetRandomUnlockedItem(Func LMAJKCLDDIF, out AvatarItem NNLFIDNBHDK) { return OutfitManager.TryGetRandomItem(this.NKIHCLLANGO, LMAJKCLDDIF, ref NNLFIDNBHDK); } // Token: 0x0600EDC1 RID: 60865 RVA: 0x00385C08 File Offset: 0x00383E08 [Token(Token = "0x600EDC1")] [Address(RVA = "0x12ABCA0", Offset = "0x12AA6A0", VA = "0x1812ABCA0")] public bool TryGetDefaultTorsoItem(out AvatarItem JAAMIJFBHDL) { List defaultTorsoAvatarItems; Func <>9__56_; do { defaultTorsoAvatarItems = AvatarItemWardrobeRuntimeConfig.Config.defaultTorsoAvatarItems; <>9__56_ = OutfitManager.<>c.<>9__56_0; if (<>9__56_ == 0) { OutfitManager.<>c.<>9__56_0 = (AvatarItem item) => "{il2cpp field on {'constant1' (constant value of type Cpp2IL.Core.Analysis.Il2CppClassIdentifier)}, offset 0x20}" == (ulong)101L; } } while (OutfitManager.TryGetRandomItem(defaultTorsoAvatarItems, <>9__56_, ref JAAMIJFBHDL)); Func func; if (OutfitManager.<>c.<>9__56_1 == 0) { func = (AvatarItem item) => "{il2cpp field on {'constant1' (constant value of type Cpp2IL.Core.Analysis.Il2CppClassIdentifier)}, offset 0x20}" == (ulong)101L; OutfitManager.<>c.<>9__56_1 = func; } return OutfitManager.TryGetRandomItem(this.NKIHCLLANGO, func, ref JAAMIJFBHDL); } // Token: 0x0600EDC2 RID: 60866 RVA: 0x00385C80 File Offset: 0x00383E80 [Token(Token = "0x600EDC2")] [Address(RVA = "0x12A8900", Offset = "0x12A7300", VA = "0x1812A8900")] public ColorVault.ColorToGuid FindHairColor(string BEIINJFEFJP, bool GNHMIFPDACD = true) { HairColorVault hairColorVault = this.HairColorVault; return this.BEAFBGLAPJE(hairColorVault, BEIINJFEFJP, GNHMIFPDACD); } // Token: 0x0600EDC3 RID: 60867 RVA: 0x00385CA0 File Offset: 0x00383EA0 [Token(Token = "0x600EDC3")] [Address(RVA = "0x12A8930", Offset = "0x12A7330", VA = "0x1812A8930")] public ColorVault.ColorToGuid FindSkinColor(string IMLCGOCPBOC, bool GNHMIFPDACD = true) { ColorVault skinColorVault = this.SkinColorVault; return this.BEAFBGLAPJE(skinColorVault, IMLCGOCPBOC, GNHMIFPDACD); } // Token: 0x0600EDC4 RID: 60868 RVA: 0x00385CC0 File Offset: 0x00383EC0 [Token(Token = "0x600EDC4")] [Address(RVA = "0x12A8860", Offset = "0x12A7260", VA = "0x1812A8860")] public AvatarFaceShape FindFaceShape(string EBCJKIKPFMG) { AvatarFaceShapeVault faceShapeVault = this.FaceShapeVault; if (faceShapeVault.GBEHDBBNGMH.ContainsKey(EBCJKIKPFMG)) { return faceShapeVault.GBEHDBBNGMH[EBCJKIKPFMG]; } throw new NullReferenceException(); } // Token: 0x0600EDC5 RID: 60869 RVA: 0x00385CF8 File Offset: 0x00383EF8 [Token(Token = "0x600EDC5")] [Address(RVA = "0x12A87C0", Offset = "0x12A71C0", VA = "0x1812A87C0")] public AvatarBodyShape FindBodyShape(string BIPOJLIEOIB) { AvatarBodyShapeVault bodyShapeVault = this.BodyShapeVault; if (bodyShapeVault.GBEHDBBNGMH.ContainsKey(BIPOJLIEOIB)) { return bodyShapeVault.GBEHDBBNGMH[BIPOJLIEOIB]; } throw new NullReferenceException(); } // Token: 0x0600EDC6 RID: 60870 RVA: 0x00385D30 File Offset: 0x00383F30 [Token(Token = "0x600EDC6")] [Address(RVA = "0x12A7CA0", Offset = "0x12A66A0", VA = "0x1812A7CA0")] private ColorVault.ColorToGuid BEAFBGLAPJE(ColorVault MMHAGMACGKJ, string CBCHEMNOLBO, bool GNHMIFPDACD = true) { do { if (MMHAGMACGKJ.KEHDHFLKCLO.ContainsKey(CBCHEMNOLBO)) { ColorVault.ColorToGuid colorToGuid = MMHAGMACGKJ.KEHDHFLKCLO[CBCHEMNOLBO]; } } while (0 == 0); int num = 0; bool flag = ColorVault.ColorToGuid.BDBLGMKABNK(0, num); if (0 != 0) { MMHAGMACGKJ.Awake(); object[] array = new object[5]; if ("Outfit Manager FindColor in " != 0) { } array[0] = "Outfit Manager FindColor in "; array[1] = MMHAGMACGKJ; if (" can't find matching color for the guid " != 0) { } array[2] = " can't find matching color for the guid "; if (CBCHEMNOLBO != 0) { } array[3] = CBCHEMNOLBO; if (". Getting a random one." != 0) { } array[4] = ". Getting a random one."; Debug.LogWarning(string.Concat(array)); } throw new NullReferenceException(); } // Token: 0x0600EDC7 RID: 60871 RVA: 0x00385DD8 File Offset: 0x00383FD8 [Token(Token = "0x600EDC7")] [Address(RVA = "0x12A9B00", Offset = "0x12A8500", VA = "0x1812A9B00")] private OutfitTool JHGCPGJHJHF(string FNKOCNMJKLK, global::Player FAGBHOMBNBP, AvatarItem? LACNEKHKOII, PlayerSpawnedEquipment.IILDIBHEIDO OEFOIFHDBEN) { int num = 0; Dictionary dictionary = new Dictionary(); Photon.Realtime.Player photonPlayer = FAGBHOMBNBP.DBAJDHGDPOL; int num2; dictionary.Add("Owner", num2); dictionary.Add("Purpose", num2); dictionary.Add("AvatarItem", num); Quaternion identity = Quaternion.identity; int num3 = 0; int viewIdField = base.photonView.viewIdField; Tool tool = Tool.PhotonInstantiate(FNKOCNMJKLK, num3, num, 1f, viewIdField, dictionary); int num4 = 0; OutfitTool component; if (tool != num4) { component = tool.GetComponent(); } tool.DODDBBEOJNN = true; PlayerSpawnedEquipment k__BackingField = tool.k__BackingField; int num5 = 0; if (k__BackingField != num5) { Dictionary onkbhglcaeg = this.ONKBHGLCAEG; bool flag; OutfitManager.AvatarItemMetadata avatarItemMetadata; if (!flag) { avatarItemMetadata = new OutfitManager.AvatarItemMetadata(); avatarItemMetadata.IsNew = true; Dictionary onkbhglcaeg2 = this.ONKBHGLCAEG; } PlayerSpawnedEquipment k__BackingField2 = tool.k__BackingField; bool isNew = avatarItemMetadata.IsNew; k__BackingField2.HICLCBMIPIN = isNew; PlayerSpawnedEquipment k__BackingField3 = tool.k__BackingField; int num6 = 0; k__BackingField3.GDAMPIOMCNE = num6 != 0; } return component; } // Token: 0x0600EDC8 RID: 60872 RVA: 0x00385ED8 File Offset: 0x003840D8 [Token(Token = "0x600EDC8")] [Address(RVA = "0x12AA9A0", Offset = "0x12A93A0", VA = "0x1812AA9A0")] private Tool LPGADCJPHHD(string FNKOCNMJKLK, global::Player FAGBHOMBNBP, string CBCHEMNOLBO, PlayerSpawnedEquipment.IILDIBHEIDO OEFOIFHDBEN) { Dictionary dictionary = new Dictionary(); Photon.Realtime.Player photonPlayer = FAGBHOMBNBP.DBAJDHGDPOL; int actorNumber = photonPlayer.actorNumber; dictionary.Add("Owner", photonPlayer); dictionary.Add("Purpose", photonPlayer); dictionary.Add("ColorGuid", CBCHEMNOLBO); Quaternion identity = Quaternion.identity; int viewIdField = base.photonView.viewIdField; Tool tool; tool.DODDBBEOJNN = true; PlayerSpawnedEquipment k__BackingField = tool.k__BackingField; int num = 0; if (k__BackingField != num) { PlayerSpawnedEquipment k__BackingField2 = tool.k__BackingField; int num2 = 0; k__BackingField2.GDAMPIOMCNE = num2 != 0; } return tool; } // Token: 0x0600EDC9 RID: 60873 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x600EDC9")] [Address(RVA = "0x12AB940", Offset = "0x12AA340", VA = "0x1812AB940")] public IPromise SpawnOutfitImposter(AvatarItem LACNEKHKOII) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x0600EDCA RID: 60874 RVA: 0x00385F74 File Offset: 0x00384174 [Token(Token = "0x600EDCA")] [Address(RVA = "0x12AB760", Offset = "0x12AA160", VA = "0x1812AB760")] public GameObject SpawnHairDyeImposter(string KGKDKGBFDIA) { ColorVault.ColorToGuid dyeColor = this.HairColorVault.GetDyeColor(KGKDKGBFDIA); if (dyeColor != 0) { int num = 0; bool flag = ColorVault.ColorToGuid.BDBLGMKABNK(0, num); HairDyeRenderSetup hairDyeRenderSetup = this.hairDyeImposterPrefab; int num2 = 0; HairDyeRenderSetup hairDyeRenderSetup2 = JODFIHBJHJM.EIJJOKINEIL(hairDyeRenderSetup, num2, true); hairDyeRenderSetup2.SetupRenderers(dyeColor); return hairDyeRenderSetup2.gameObject; } throw new NullReferenceException(); } // Token: 0x0600EDCB RID: 60875 RVA: 0x00385FCC File Offset: 0x003841CC [Token(Token = "0x600EDCB")] [Address(RVA = "0x12AB640", Offset = "0x12AA040", VA = "0x1812AB640")] public OutfitTool SpawnDormOutfitForLocalPlayer() { string name = this.dormOutfitPrefab.name; OutfitTool outfitTool; return outfitTool; } // Token: 0x0600EDCC RID: 60876 RVA: 0x00385FF0 File Offset: 0x003841F0 [Token(Token = "0x600EDCC")] [Address(RVA = "0x12ABAD0", Offset = "0x12AA4D0", VA = "0x1812ABAD0")] public OutfitTool SpawnOutfitToolForLocalPlayer(AvatarItem FIDIMMBHIIN, PlayerSpawnedEquipment.IILDIBHEIDO OEFOIFHDBEN) { string name = this.outfitToolPrefab.name; OutfitTool outfitTool; return outfitTool; } // Token: 0x0600EDCD RID: 60877 RVA: 0x00386018 File Offset: 0x00384218 [Token(Token = "0x600EDCD")] [Address(RVA = "0x12AB840", Offset = "0x12AA240", VA = "0x1812AB840")] public Tool SpawnHairDyeToolForLocalPlayer(string KGKDKGBFDIA, PlayerSpawnedEquipment.IILDIBHEIDO OEFOIFHDBEN) { string name = this.hairDyeToolPrefab.name; Tool tool; return tool; } // Token: 0x0600EDCE RID: 60878 RVA: 0x0038603C File Offset: 0x0038423C [Token(Token = "0x600EDCE")] [Address(RVA = "0x12ABC40", Offset = "0x12AA640", VA = "0x1812ABC40")] public OutfitToolUIControl SpawnOutfitUIControl() { return global::UnityEngine.Object.Instantiate(this.outfitToolUIControlPrefab); } // Token: 0x170027D5 RID: 10197 // (get) Token: 0x0600EDCF RID: 60879 RVA: 0x00386054 File Offset: 0x00384254 [Token(Token = "0x170027D5")] public RecRoomAudioClip[] NIOOLMDKBHO { [Token(Token = "0x600EDCF")] [Address(RVA = "0x3D3180", Offset = "0x3D1B80", VA = "0x1803D3180")] get { return this.equipSounds; } } // Token: 0x170027D6 RID: 10198 // (get) Token: 0x0600EDD0 RID: 60880 RVA: 0x00386068 File Offset: 0x00384268 [Token(Token = "0x170027D6")] public RecRoomAudioClip BFDIIFNGIJH { [Token(Token = "0x600EDD0")] [Address(RVA = "0x408B30", Offset = "0x407530", VA = "0x180408B30")] get { return this.lockedOutfitToolClip; } } // Token: 0x0600EDD1 RID: 60881 RVA: 0x0038607C File Offset: 0x0038427C [Token(Token = "0x600EDD1")] [Address(RVA = "0x12AC410", Offset = "0x12AAE10", VA = "0x1812AC410")] public OutfitManager() { Dictionary dictionary = new Dictionary(); this.KHLONOLLNNF = dictionary; List list = new List(); this.EBMJIJKHKJA = list; int num; ActionEvent actionEvent = new ActionEvent(32, num != 0); num = 0; this.UnlockedAvatarItemsChangedEvent = actionEvent; HashSet hashSet = new HashSet(); this.NKIHCLLANGO = hashSet; Dictionary dictionary2 = new Dictionary(); this.ONKBHGLCAEG = dictionary2; TokenFlag tokenFlag = new TokenFlag(); this.MPACDPDDNPA = tokenFlag; base..ctor(); } // Token: 0x0600EDD2 RID: 60882 RVA: 0x003860E8 File Offset: 0x003842E8 // Note: this type is marked as 'beforefieldinit'. [Token(Token = "0x600EDD2")] [Address(RVA = "0x12AC320", Offset = "0x12AAD20", VA = "0x1812AC320")] static OutfitManager() { int num; ActionEvent actionEvent = new ActionEvent(32, num != 0); num = 0; OutfitManager.BrowsableItemsChangedEvent = actionEvent; OutfitManager.FNPHHGHPGAI = new List(); } // Token: 0x0600EDD3 RID: 60883 RVA: 0x00386124 File Offset: 0x00384324 [Token(Token = "0x600EDD3")] [Address(RVA = "0x12A85D0", Offset = "0x12A6FD0", VA = "0x1812A85D0")] [CompilerGenerated] private void FDJACEDFOHM(BKFGFHDDNFG NHACFCEIPCB) { int num; do { num = 0; List jdgebbmdjbc = NHACFCEIPCB.JDGEBBMDJBC; List.Enumerator enumerator; if (enumerator != 0) { MJLPNOMEFKG mjlpnomefkg; while (mjlpnomefkg == 0) { } while (mjlpnomefkg.k__BackingField != GiftManager.HDMOIDKEOCM.OutfitItem) { } string k__BackingField = mjlpnomefkg.k__BackingField; if (this.GetBrowsableAvatarItemByGuid(k__BackingField) == 0) { } } if (num != -1) { } } while (num != 0); } // Token: 0x0600EDD4 RID: 60884 RVA: 0x00386168 File Offset: 0x00384368 [Token(Token = "0x600EDD4")] [Address(RVA = "0x12A9EE0", Offset = "0x12A88E0", VA = "0x1812A9EE0")] [CompilerGenerated] private void JKNMFEOIFPD(List MNMHKKIMEFP) { int num; do { num = 0; List.Enumerator enumerator; if (enumerator != 0) { Dictionary onkbhglcaeg = this.ONKBHGLCAEG; bool flag; if (!flag) { OutfitManager.AvatarItemMetadata avatarItemMetadata = new OutfitManager.AvatarItemMetadata(); int num2 = 0; this.ONKBHGLCAEG[num2] = avatarItemMetadata; } object syncRoot = MNMHKKIMEFP._syncRoot; } if (num != -1) { } } while (num != 0); } // Token: 0x04009DD7 RID: 40407 [Token(Token = "0x4009DD7")] private static readonly List DMGKEKJIEMA = new List(); // Token: 0x04009DD8 RID: 40408 [Token(Token = "0x4009DD8")] private static readonly List ECAAHMIBOOC = new List(); // Token: 0x04009DD9 RID: 40409 [global::Cpp2IlInjected.FieldOffset(Offset = "0x40")] [Token(Token = "0x4009DD9")] private readonly Dictionary KHLONOLLNNF; // Token: 0x04009DDA RID: 40410 [global::Cpp2IlInjected.FieldOffset(Offset = "0x48")] [Token(Token = "0x4009DDA")] private readonly List EBMJIJKHKJA; // Token: 0x04009DDB RID: 40411 [Token(Token = "0x4009DDB")] public static readonly ActionEvent BrowsableItemsChangedEvent; // Token: 0x04009DDC RID: 40412 [Token(Token = "0x4009DDC")] private static readonly List FNPHHGHPGAI; // Token: 0x04009DDE RID: 40414 [global::Cpp2IlInjected.FieldOffset(Offset = "0x58")] [Token(Token = "0x4009DDE")] public readonly ActionEvent UnlockedAvatarItemsChangedEvent; // Token: 0x04009DDF RID: 40415 [global::Cpp2IlInjected.FieldOffset(Offset = "0x60")] [Token(Token = "0x4009DDF")] private Dictionary> FCBILBFBCGJ; // Token: 0x04009DE0 RID: 40416 [global::Cpp2IlInjected.FieldOffset(Offset = "0x68")] [Token(Token = "0x4009DE0")] private HashSet NKIHCLLANGO; // Token: 0x04009DE1 RID: 40417 [global::Cpp2IlInjected.FieldOffset(Offset = "0x70")] [Token(Token = "0x4009DE1")] private readonly Dictionary ONKBHGLCAEG; // Token: 0x04009DE2 RID: 40418 [global::Cpp2IlInjected.FieldOffset(Offset = "0x78")] [Token(Token = "0x4009DE2")] private TokenFlag MPACDPDDNPA; // Token: 0x04009DE3 RID: 40419 [global::Cpp2IlInjected.FieldOffset(Offset = "0x80")] [Token(Token = "0x4009DE3")] [Header("Colors")] public ColorVault SkinColorVault; // Token: 0x04009DE4 RID: 40420 [global::Cpp2IlInjected.FieldOffset(Offset = "0x88")] [Token(Token = "0x4009DE4")] public HairColorVault HairColorVault; // Token: 0x04009DE5 RID: 40421 [global::Cpp2IlInjected.FieldOffset(Offset = "0x90")] [Token(Token = "0x4009DE5")] [Header("Face Shapes")] public AvatarFaceShapeVault FaceShapeVault; // Token: 0x04009DE6 RID: 40422 [global::Cpp2IlInjected.FieldOffset(Offset = "0x98")] [Token(Token = "0x4009DE6")] [Header("Body Shapes")] public AvatarBodyShapeVault BodyShapeVault; // Token: 0x04009DE7 RID: 40423 [global::Cpp2IlInjected.FieldOffset(Offset = "0xA0")] [Token(Token = "0x4009DE7")] [SerializeField] [Header("Item spawning")] private GameObject outfitToolPrefab; // Token: 0x04009DE8 RID: 40424 [global::Cpp2IlInjected.FieldOffset(Offset = "0xA8")] [Token(Token = "0x4009DE8")] [SerializeField] private GameObject dormOutfitPrefab; // Token: 0x04009DE9 RID: 40425 [global::Cpp2IlInjected.FieldOffset(Offset = "0xB0")] [Token(Token = "0x4009DE9")] [SerializeField] private OutfitRenderSetup outfitImposterPrefab; // Token: 0x04009DEA RID: 40426 [global::Cpp2IlInjected.FieldOffset(Offset = "0xB8")] [Token(Token = "0x4009DEA")] [SerializeField] private OutfitToolUIControl outfitToolUIControlPrefab; // Token: 0x04009DEB RID: 40427 [global::Cpp2IlInjected.FieldOffset(Offset = "0xC0")] [Token(Token = "0x4009DEB")] [SerializeField] private PermanentHairDyeTool hairDyeToolPrefab; // Token: 0x04009DEC RID: 40428 [global::Cpp2IlInjected.FieldOffset(Offset = "0xC8")] [Token(Token = "0x4009DEC")] [SerializeField] private HairDyeRenderSetup hairDyeImposterPrefab; // Token: 0x04009DED RID: 40429 [global::Cpp2IlInjected.FieldOffset(Offset = "0xD0")] [Token(Token = "0x4009DED")] [SerializeField] [Header("Sounds")] private RecRoomAudioClip[] equipSounds; // Token: 0x04009DEE RID: 40430 [global::Cpp2IlInjected.FieldOffset(Offset = "0xD8")] [Token(Token = "0x4009DEE")] [SerializeField] private RecRoomAudioClip lockedOutfitToolClip; // Token: 0x020021B3 RID: 8627 [Token(Token = "0x20021B3")] public class AvatarItemMetadata { // Token: 0x0600EDD5 RID: 60885 RVA: 0x003861DC File Offset: 0x003843DC [Token(Token = "0x600EDD5")] [Address(RVA = "0x3C1670", Offset = "0x3C0070", VA = "0x1803C1670")] public AvatarItemMetadata() { } // Token: 0x04009DEF RID: 40431 [global::Cpp2IlInjected.FieldOffset(Offset = "0x10")] [Token(Token = "0x4009DEF")] public bool IsNew; // Token: 0x04009DF0 RID: 40432 [global::Cpp2IlInjected.FieldOffset(Offset = "0x18")] [Token(Token = "0x4009DF0")] public string FriendlyName; // Token: 0x04009DF1 RID: 40433 [global::Cpp2IlInjected.FieldOffset(Offset = "0x20")] [Token(Token = "0x4009DF1")] public string Tooltip; // Token: 0x04009DF2 RID: 40434 [global::Cpp2IlInjected.FieldOffset(Offset = "0x28")] [Token(Token = "0x4009DF2")] public GiftManager.MCEEFCNMNAH Rarity; } // Token: 0x020021B4 RID: 8628 [Token(Token = "0x20021B4")] [CompilerGenerated] private sealed class ENIIEHOLFLK { // Token: 0x0600EDD6 RID: 60886 RVA: 0x003861F0 File Offset: 0x003843F0 [Token(Token = "0x600EDD6")] [Address(RVA = "0x3C1670", Offset = "0x3C0070", VA = "0x1803C1670")] public ENIIEHOLFLK() { } // Token: 0x0600EDD7 RID: 60887 RVA: 0x00386204 File Offset: 0x00384404 [Token(Token = "0x600EDD7")] [Address(RVA = "0x1D0A910", Offset = "0x1D09310", VA = "0x181D0A910")] internal IPromise> b__0(List details) { int num; do { num = 0; List.Enumerator enumerator; if (enumerator != 0) { List list = this.results; OutfitManager outfitManager = this.<>4__this; APAODCKMEKF apaodckmekf; list.Add(apaodckmekf); } if (num != -1) { } } while (num != 0); List list2 = this.results; IPromise promise; return promise; } // Token: 0x04009DF3 RID: 40435 [global::Cpp2IlInjected.FieldOffset(Offset = "0x10")] [Token(Token = "0x4009DF3")] public List results; // Token: 0x04009DF4 RID: 40436 [global::Cpp2IlInjected.FieldOffset(Offset = "0x18")] [Token(Token = "0x4009DF4")] public OutfitManager <>4__this; } // Token: 0x020021B6 RID: 8630 [Token(Token = "0x20021B6")] [CompilerGenerated] private sealed class ONGFJMIAPKM { // Token: 0x0600EDE2 RID: 60898 RVA: 0x00386364 File Offset: 0x00384564 [Token(Token = "0x600EDE2")] [Address(RVA = "0x3C1670", Offset = "0x3C0070", VA = "0x1803C1670")] public ONGFJMIAPKM() { } // Token: 0x0600EDE3 RID: 60899 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x600EDE3")] [Address(RVA = "0x1D0E7F0", Offset = "0x1D0D1F0", VA = "0x181D0E7F0")] internal void b__0(string e, List avatarItemDetailsList) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x04009DFE RID: 40446 [global::Cpp2IlInjected.FieldOffset(Offset = "0x10")] [Token(Token = "0x4009DFE")] public OutfitManager <>4__this; // Token: 0x04009DFF RID: 40447 [global::Cpp2IlInjected.FieldOffset(Offset = "0x18")] [Token(Token = "0x4009DFF")] public BPHGKAEDBPE.CBEOHBCIPEA callback; } // Token: 0x020021B7 RID: 8631 [Token(Token = "0x20021B7")] [CompilerGenerated] private sealed class BBKOFMBAPHK { // Token: 0x0600EDE4 RID: 60900 RVA: 0x00386378 File Offset: 0x00384578 [Token(Token = "0x600EDE4")] [Address(RVA = "0x3C1670", Offset = "0x3C0070", VA = "0x1803C1670")] public BBKOFMBAPHK() { } // Token: 0x0600EDE5 RID: 60901 RVA: 0x0038638C File Offset: 0x0038458C [Token(Token = "0x600EDE5")] [Address(RVA = "0x4B0D60", Offset = "0x4AF760", VA = "0x1804B0D60")] internal bool b__1(NLEKGNENMCO.EPFHLDCPAOK uai) { string text = this.avatarItemDesc; return string.Equals(uai.k__BackingField, text); } // Token: 0x04009E00 RID: 40448 [global::Cpp2IlInjected.FieldOffset(Offset = "0x10")] [Token(Token = "0x4009E00")] public string avatarItemDesc; // Token: 0x04009E01 RID: 40449 [global::Cpp2IlInjected.FieldOffset(Offset = "0x18")] [Token(Token = "0x4009E01")] public OutfitManager <>4__this; // Token: 0x04009E02 RID: 40450 [global::Cpp2IlInjected.FieldOffset(Offset = "0x20")] [Token(Token = "0x4009E02")] public Predicate <>9__1; } // Token: 0x020021B8 RID: 8632 [Token(Token = "0x20021B8")] [CompilerGenerated] private sealed class AJEPGDGLINC { // Token: 0x0600EDE6 RID: 60902 RVA: 0x003863B4 File Offset: 0x003845B4 [Token(Token = "0x600EDE6")] [Address(RVA = "0x3C1670", Offset = "0x3C0070", VA = "0x1803C1670")] public AJEPGDGLINC() { } // Token: 0x0600EDE7 RID: 60903 RVA: 0x003863C8 File Offset: 0x003845C8 [Token(Token = "0x600EDE7")] [Address(RVA = "0x1D09CD0", Offset = "0x1D086D0", VA = "0x181D09CD0")] internal void b__0(string e, List unlockedAvatarItems) { if (unlockedAvatarItems != 0) { OutfitManager.BBKOFMBAPHK cs$<>8__locals = this.CS$<>8__locals1; Predicate <>9__ = cs$<>8__locals.<>9__1; if (<>9__ == 0) { Predicate predicate = delegate(NLEKGNENMCO.EPFHLDCPAOK uai) { string avatarItemDesc = cs$<>8__locals.avatarItemDesc; return string.Equals(uai.k__BackingField, avatarItemDesc); }; cs$<>8__locals.<>9__1 = predicate; } NLEKGNENMCO.EPFHLDCPAOK epfhldcpaok = unlockedAvatarItems.Find(<>9__); OutfitManager.AvatarItemMetadata avatarItemMetadata = this.metadata; string k__BackingField = epfhldcpaok.k__BackingField; avatarItemMetadata.FriendlyName = k__BackingField; OutfitManager.AvatarItemMetadata avatarItemMetadata2 = this.metadata; string k__BackingField = epfhldcpaok.k__BackingField; avatarItemMetadata2.Tooltip = k__BackingField; OutfitManager.AvatarItemMetadata avatarItemMetadata3 = this.metadata; GiftManager.MCEEFCNMNAH k__BackingField = epfhldcpaok.k__BackingField; avatarItemMetadata3.Rarity = k__BackingField; this.CS$<>8__locals1.<>4__this.KGJKDAPMLEM(); this.CS$<>8__locals1.<>4__this.HairColorVault.LinkDyesToWatchStorefront(); } } // Token: 0x04009E03 RID: 40451 [global::Cpp2IlInjected.FieldOffset(Offset = "0x10")] [Token(Token = "0x4009E03")] public OutfitManager.AvatarItemMetadata metadata; // Token: 0x04009E04 RID: 40452 [global::Cpp2IlInjected.FieldOffset(Offset = "0x18")] [Token(Token = "0x4009E04")] public OutfitManager.BBKOFMBAPHK CS$<>8__locals1; } // Token: 0x020021B9 RID: 8633 [Token(Token = "0x20021B9")] [CompilerGenerated] private sealed class ILNPCNDDENM { // Token: 0x0600EDE8 RID: 60904 RVA: 0x00386480 File Offset: 0x00384680 [Token(Token = "0x600EDE8")] [Address(RVA = "0x3C1670", Offset = "0x3C0070", VA = "0x1803C1670")] public ILNPCNDDENM() { } // Token: 0x0600EDE9 RID: 60905 RVA: 0x00386494 File Offset: 0x00384694 [Token(Token = "0x600EDE9")] [Address(RVA = "0x3C39A0", Offset = "0x3C23A0", VA = "0x1803C39A0")] internal OutfitRenderSetup b__0() { return this.imposterRenderSetup; } // Token: 0x04009E05 RID: 40453 [global::Cpp2IlInjected.FieldOffset(Offset = "0x10")] [Token(Token = "0x4009E05")] public OutfitRenderSetup imposterRenderSetup; } } }