using System; using System.Collections; using System.Collections.Generic; using System.Runtime.InteropServices; using Cpp2IlInjected; using UnityEngine; // Token: 0x0200007E RID: 126 [Token(Token = "0x200007E")] [StructLayout(3)] public class MicrophoneToolManager : SingletonMonoBehaviour { // Token: 0x1700008C RID: 140 // (get) Token: 0x0600038C RID: 908 RVA: 0x00011E9C File Offset: 0x0001009C // (set) Token: 0x0600038D RID: 909 RVA: 0x00011EB0 File Offset: 0x000100B0 [Token(Token = "0x1700008C")] public MicrophoneToolManager.KGMOAFBFDAK PIAMEOFOMKN { [Token(Token = "0x600038C")] [Address(RVA = "0x3C1C80", Offset = "0x3C0680", VA = "0x1803C1C80")] get; [Token(Token = "0x600038D")] [Address(RVA = "0x3C1CA0", Offset = "0x3C06A0", VA = "0x1803C1CA0")] private set; } // Token: 0x0600038E RID: 910 RVA: 0x00011EC4 File Offset: 0x000100C4 [Token(Token = "0x600038E")] [Address(RVA = "0x1423B60", Offset = "0x1422560", VA = "0x181423B60", Slot = "4")] protected override void Awake() { base.Awake(); string[] names = Enum.GetNames(typeof(MicrophoneToolManager.KGMOAFBFDAK)); MicrophoneToolManager.SpeakerLineLevelThreshold[] array = this.speakerLineLevelThresholds; int length = names.Length; if (length != array.Length) { Debug.LogError("Length of Speaker Line Level Thresholds array must be " + length); } } // Token: 0x0600038F RID: 911 RVA: 0x00011F14 File Offset: 0x00010114 [Token(Token = "0x600038F")] [Address(RVA = "0x1424470", Offset = "0x1422E70", VA = "0x181424470")] private void Update() { this.MPGCDIKMJPE(); } // Token: 0x06000390 RID: 912 RVA: 0x00011F28 File Offset: 0x00010128 [Token(Token = "0x6000390")] [Address(RVA = "0x1424370", Offset = "0x1422D70", VA = "0x181424370")] public void ScheduleDestroy() { if (base.gameObject.activeInHierarchy) { if (this.MBNDOLGFCMA == (ulong)0L) { MicrophoneToolManager.GPLAPOKKGAO gplapokkgao; gplapokkgao.System.IDisposable.Dispose(); gplapokkgao.<>1__state = (int)((ulong)0L); gplapokkgao.<>4__this = this; Coroutine coroutine = base.StartCoroutine(gplapokkgao); this.MBNDOLGFCMA = coroutine; } return; } global::UnityEngine.Object.Destroy(base.gameObject); } // Token: 0x06000391 RID: 913 RVA: 0x00011F88 File Offset: 0x00010188 [Token(Token = "0x6000391")] [Address(RVA = "0x1423CD0", Offset = "0x14226D0", VA = "0x181423CD0")] private IEnumerator CCNPMLLJNPP() { /* An exception occurred when decompiling this method (06000391) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Collections.IEnumerator MicrophoneToolManager::CCNPMLLJNPP() ---> System.Exception: Basic block has to end with unconditional control flow. { Block_0: call:void(GPLAPOKKGAO::System.IDisposable.Dispose, ldloc:GPLAPOKKGAO(var_0)) stfld:int32(GPLAPOKKGAO::<>1__state, ldloc:GPLAPOKKGAO(var_0), conv.u8:uint64[exp:int32](ldc.i8:int64[exp:uint64](0))) stfld:MicrophoneToolManager(GPLAPOKKGAO::<>4__this, ldloc:GPLAPOKKGAO(var_0), ldloc:MicrophoneToolManager(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: 0x06000392 RID: 914 RVA: 0x00011FAC File Offset: 0x000101AC [Token(Token = "0x6000392")] [Address(RVA = "0x1424160", Offset = "0x1422B60", VA = "0x181424160")] public void MicAdded() { Coroutine mbndolgfcma = this.MBNDOLGFCMA; if (mbndolgfcma != 0) { base.StopCoroutine(mbndolgfcma); this.MBNDOLGFCMA = (ulong)0L; return; } this.MBNDOLGFCMA = (ulong)0L; } // Token: 0x06000393 RID: 915 RVA: 0x00011FE0 File Offset: 0x000101E0 [Token(Token = "0x6000393")] [Address(RVA = "0x14242A0", Offset = "0x1422CA0", VA = "0x1814242A0")] public void OnMicUseEvent(Player IEKDDPPNFPF, bool PDGEAOIPNKH) { List ecopckkgmdc; for (;;) { ecopckkgmdc = this.ECOPCKKGMDC; if (PDGEAOIPNKH) { break; } if (ecopckkgmdc.Contains(IEKDDPPNFPF)) { goto Block_2; } } if (!ecopckkgmdc.Contains(IEKDDPPNFPF)) { this.ECOPCKKGMDC.Add(IEKDDPPNFPF); } return; Block_2: bool flag = this.ECOPCKKGMDC.Remove(IEKDDPPNFPF); } // Token: 0x06000394 RID: 916 RVA: 0x0001202C File Offset: 0x0001022C [Token(Token = "0x6000394")] [Address(RVA = "0x14241A0", Offset = "0x1422BA0", VA = "0x1814241A0")] public void OnMicSpeakerLinesEvent(float HPNMFCBDOEI, MicrophoneToolManager.KGMOAFBFDAK EMCGAOMOBPB) { float num = Mathf.Max(HPNMFCBDOEI, HPNMFCBDOEI); this.CEFIKHEJJGD = num; Coroutine gfnalckjbcj = this.GFNALCKJBCJ; this.KKOMEACNLEI = EMCGAOMOBPB; if (gfnalckjbcj != 0) { base.StopCoroutine(gfnalckjbcj); } MicrophoneToolManager.IBEEJHGJDGN ibeejhgjdgn; ibeejhgjdgn.System.IDisposable.Dispose(); ibeejhgjdgn.micHitAudioDuration = HPNMFCBDOEI; ibeejhgjdgn.<>1__state = (int)((ulong)0L); ibeejhgjdgn.<>4__this = this; Coroutine coroutine = base.StartCoroutine(ibeejhgjdgn); this.GFNALCKJBCJ = coroutine; } // Token: 0x06000395 RID: 917 RVA: 0x00012094 File Offset: 0x00010294 [Token(Token = "0x6000395")] [Address(RVA = "0x1423C70", Offset = "0x1422670", VA = "0x181423C70")] private MicrophoneToolManager.KGMOAFBFDAK BPFBOALBBHO(float DKDOBJOOGLC) { MicrophoneToolManager.SpeakerLineLevelThreshold[] array = this.speakerLineLevelThresholds; int length = array.Length; if (DKDOBJOOGLC < "{il2cpp array field local2->}") { } MicrophoneToolManager.SpeakerLineLevelThreshold speakerLineLevelThreshold = array[length]; throw new NullReferenceException(); } // Token: 0x06000396 RID: 918 RVA: 0x000120C8 File Offset: 0x000102C8 [Token(Token = "0x6000396")] [Address(RVA = "0x1423D30", Offset = "0x1422730", VA = "0x181423D30")] private void MPGCDIKMJPE() { int num = 0; int num2 = 0; MicrophoneToolManager.KGMOAFBFDAK kkomeacnlei = this.KKOMEACNLEI; if (kkomeacnlei == MicrophoneToolManager.KGMOAFBFDAK.OFF) { List list = new List(); List ecopckkgmdc = this.ECOPCKKGMDC; List ecopckkgmdc2 = this.ECOPCKKGMDC; bool flag; if (!flag) { List ecopckkgmdc3 = this.ECOPCKKGMDC; float num3; float num4; if (num3 <= num4) { goto IL_6B; } List ecopckkgmdc4 = this.ECOPCKKGMDC; float num5 = num4; float num6 = Mathf.InverseLerp(num5, 1f, num5); float num7 = Mathf.Max((float)num2, num6); } list.Add(num); IL_6B: num++; List ecopckkgmdc5 = this.ECOPCKKGMDC; throw new NullReferenceException(); } this.k__BackingField = kkomeacnlei; } // Token: 0x06000397 RID: 919 RVA: 0x000121B0 File Offset: 0x000103B0 [Token(Token = "0x6000397")] [Address(RVA = "0x1423AF0", Offset = "0x14224F0", VA = "0x181423AF0")] private IEnumerator AIBLAJMBBLB(float APLONMPKDID) { /* An exception occurred when decompiling this method (06000397) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Collections.IEnumerator MicrophoneToolManager::AIBLAJMBBLB(System.Single) ---> System.Exception: Basic block has to end with unconditional control flow. { Block_0: call:void(IBEEJHGJDGN::System.IDisposable.Dispose, ldloc:IBEEJHGJDGN(var_0)) stfld:float32(IBEEJHGJDGN::micHitAudioDuration, ldloc:IBEEJHGJDGN(var_0), ldloc:float32(APLONMPKDID)) stfld:int32(IBEEJHGJDGN::<>1__state, ldloc:IBEEJHGJDGN(var_0), conv.u8:uint64[exp:int32](ldc.i8:int64[exp:uint64](0))) stfld:MicrophoneToolManager(IBEEJHGJDGN::<>4__this, ldloc:IBEEJHGJDGN(var_0), ldloc:MicrophoneToolManager(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: 0x06000398 RID: 920 RVA: 0x000121DC File Offset: 0x000103DC [Token(Token = "0x6000398")] [Address(RVA = "0x1424480", Offset = "0x1422E80", VA = "0x181424480")] public MicrophoneToolManager() { List list = new List(); this.ECOPCKKGMDC = list; base..ctor(); } // Token: 0x0400031E RID: 798 [global::Cpp2IlInjected.FieldOffset(Offset = "0x18")] [Token(Token = "0x400031E")] private List ECOPCKKGMDC; // Token: 0x0400031F RID: 799 [global::Cpp2IlInjected.FieldOffset(Offset = "0x20")] [Token(Token = "0x400031F")] private MicrophoneToolManager.KGMOAFBFDAK KKOMEACNLEI; // Token: 0x04000321 RID: 801 [global::Cpp2IlInjected.FieldOffset(Offset = "0x28")] [Token(Token = "0x4000321")] [SerializeField] private MicrophoneToolManager.SpeakerLineLevelThreshold[] speakerLineLevelThresholds; // Token: 0x04000322 RID: 802 [global::Cpp2IlInjected.FieldOffset(Offset = "0x30")] [Token(Token = "0x4000322")] private float CEFIKHEJJGD; // Token: 0x04000323 RID: 803 [global::Cpp2IlInjected.FieldOffset(Offset = "0x38")] [Token(Token = "0x4000323")] private Coroutine MBNDOLGFCMA; // Token: 0x04000324 RID: 804 [global::Cpp2IlInjected.FieldOffset(Offset = "0x40")] [Token(Token = "0x4000324")] private Coroutine GFNALCKJBCJ; // Token: 0x0200007F RID: 127 [Token(Token = "0x200007F")] public enum KGMOAFBFDAK { // Token: 0x04000326 RID: 806 [Token(Token = "0x4000326")] OFF, // Token: 0x04000327 RID: 807 [Token(Token = "0x4000327")] LEVEL_1, // Token: 0x04000328 RID: 808 [Token(Token = "0x4000328")] LEVEL_2, // Token: 0x04000329 RID: 809 [Token(Token = "0x4000329")] LEVEL_3, // Token: 0x0400032A RID: 810 [Token(Token = "0x400032A")] LEVEL_4 } // Token: 0x02000080 RID: 128 [Token(Token = "0x2000080")] [Serializable] public struct SpeakerLineLevelThreshold { // Token: 0x0400032B RID: 811 [global::Cpp2IlInjected.FieldOffset(Offset = "0x0")] [Token(Token = "0x400032B")] public MicrophoneToolManager.KGMOAFBFDAK lineLevel; // Token: 0x0400032C RID: 812 [global::Cpp2IlInjected.FieldOffset(Offset = "0x4")] [Token(Token = "0x400032C")] public float volumeThreshold; } }