using System; using System.Collections.Generic; using System.Runtime.InteropServices; using Cpp2IlInjected; using RecRoom; using RecRoom.Core.Rendering; using UnityEngine; using UnityEngine.Rendering; using UnityEngine.Rendering.Universal; // Token: 0x0200008F RID: 143 [Token(Token = "0x200008F")] [ExecuteInEditMode] [StructLayout(3)] public class Mirror : MonoBehaviour { // Token: 0x1700009B RID: 155 // (get) Token: 0x060003EA RID: 1002 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x1700009B")] public Color DEELHJOACOE { [Token(Token = "0x60003EA")] [Address(RVA = "0x3C1C70", Offset = "0x3C0670", VA = "0x1803C1C70")] get { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } } // Token: 0x060003EB RID: 1003 RVA: 0x000139D8 File Offset: 0x00011BD8 [Token(Token = "0x60003EB")] [Address(RVA = "0x1428C40", Offset = "0x1427640", VA = "0x181428C40")] private void OnValidate() { if (this.maxAntiAliasing <= 8) { } this.maxAntiAliasing = (int)((ulong)1L); } // Token: 0x060003EC RID: 1004 RVA: 0x000139F8 File Offset: 0x00011BF8 [Token(Token = "0x60003EC")] [Address(RVA = "0x1425D10", Offset = "0x1424710", VA = "0x181425D10")] private void Awake() { Transform transform = this.quad; int num = 0; if (!(transform == num)) { Renderer component = base.GetComponent(); Transform transform2 = this.quad; this.CHEJPOIMMCK = component; Transform transform3 = transform2.transform; Vector3 vector; float z = vector.z; Vector3 vector2; float z2 = vector2.z; this.HGGLIDNABHM.z = z2; Mirror.DKOPDHJNIKB = Shader.PropertyToID("_LeftReflectionTex"); Mirror.NFJNEEINLGI = Shader.PropertyToID("_RightReflectionTex"); Mirror.BJKLEKJADLO = Shader.PropertyToID("_LeftMirrorCameraViewProj"); Mirror.DGPCCDFOJNM = Shader.PropertyToID("_RightMirrorCameraViewProj"); UniversalRenderPipeline.BeforeCameraRenderEvent += new Action(this.OnBeforeCameraRenderEvent); return; } Debug.LogWarning("Mirror does not have an assigned quad. Disabling this Mirror component."); int num2 = 0; base.enabled = num2 != 0; } // Token: 0x060003ED RID: 1005 RVA: 0x00013AC0 File Offset: 0x00011CC0 [Token(Token = "0x60003ED")] [Address(RVA = "0x1429930", Offset = "0x1428330", VA = "0x181429930")] private void Start() { SettingsManager instance = SingletonMonoBehaviour.Instance; int num = 0; if (instance != num) { SettingsManager instance2 = SingletonMonoBehaviour.Instance; Action action = new Action(this.EHDNCHLIKMF); instance2.QualitySettingChanged += action; } } // Token: 0x060003EE RID: 1006 RVA: 0x00013B00 File Offset: 0x00011D00 [Token(Token = "0x60003EE")] [Address(RVA = "0x1426040", Offset = "0x1424A40", VA = "0x181426040")] private void EHDNCHLIKMF(INGEKFNNGDK NLNHFEEMFBN) { Camera ngohfhfcgnb = this.NGOHFHFCGNB; int num = 0; if (ngohfhfcgnb != num) { Camera ngohfhfcgnb2 = this.NGOHFHFCGNB; int num2 = 0; ngohfhfcgnb2.targetTexture = num2; global::UnityEngine.Object.DestroyImmediate(this.NGOHFHFCGNB.gameObject); this.NGOHFHFCGNB = (ulong)0L; } } // Token: 0x060003EF RID: 1007 RVA: 0x00013B50 File Offset: 0x00011D50 [Token(Token = "0x60003EF")] [Address(RVA = "0x1428760", Offset = "0x1427160", VA = "0x181428760")] private void OnDestroy() { UniversalRenderPipeline.BeforeCameraRenderEvent -= new Action(this.OnBeforeCameraRenderEvent); SettingsManager instance = SingletonMonoBehaviour.Instance; int num = 0; if (instance != num) { SettingsManager instance2 = SingletonMonoBehaviour.Instance; Action action = new Action(this.EHDNCHLIKMF); instance2.QualitySettingChanged -= action; } } // Token: 0x060003F0 RID: 1008 RVA: 0x00013BA0 File Offset: 0x00011DA0 [Token(Token = "0x60003F0")] [Address(RVA = "0x14279E0", Offset = "0x14263E0", VA = "0x1814279E0")] public void OnBeforeCameraRenderEvent(ScriptableRenderContext LHOMKMINCHH, Camera KCLGLHFAOGA) { while (base.enabled && this.CHEJPOIMMCK && this.CHEJPOIMMCK.enabled && base.gameObject.activeInHierarchy && KCLGLHFAOGA) { Camera ngohfhfcgnb = this.NGOHFHFCGNB; bool flag = KCLGLHFAOGA == ngohfhfcgnb; if (flag) { break; } bool flag2; ShareCamera.MBIEOEOLKNB mbieoeolknb; if (flag2 && mbieoeolknb == ShareCamera.MBIEOEOLKNB.ASYNC_RENDER) { int frameCount = Time.frameCount; if ((flag ? 1 : 0) != frameCount) { break; } } float z = this.HGGLIDNABHM.z; Transform transform = KCLGLHFAOGA.transform; Transform transform2 = this.quad; Vector3 vector; float z2 = vector.z; Transform transform3 = transform2.transform; Vector3 vector2; float z3 = vector2.z; Vector3 vector3; float z4 = vector3.z; float num; if (0 < (int)num) { Plane[] fbnkcfnlomk = this.FBNKCFNLOMK; GeometryUtility.CalculateFrustumPlanes(KCLGLHFAOGA, fbnkcfnlomk); Renderer chejpoimmck = this.CHEJPOIMMCK; Plane[] fbnkcfnlomk2 = this.FBNKCFNLOMK; bool flag3; while (!flag3) { } Mirror.JLCKHJHHODA jlckhjhhoda = this.PPKBOAGECPI(KCLGLHFAOGA); int pixelLightCount = QualitySettings.pixelLightCount; if (this.disablePixelLights) { QualitySettings.pixelLightCount = 0; } this.GAJPLMIHDCA(KCLGLHFAOGA); Renderer chejpoimmck2 = this.CHEJPOIMMCK; Transform transform4 = KCLGLHFAOGA.transform; Vector3 vector4; float z5 = vector4.z; Transform transform5 = KCLGLHFAOGA.transform; Vector3 vector5; float z6 = vector5.z; UniversalAdditionalCameraData additionalCameraData = KCLGLHFAOGA.GetAdditionalCameraData(); if (!KCLGLHFAOGA.stereoEnabled) { bool stereoEnabled = KCLGLHFAOGA.stereoEnabled; bool flag4; if (!flag4) { goto IL_227; } int num2 = 0; MaterialPropertyBlock nccffhjcchb = jlckhjhhoda.NCCFFHJCCHB; int bjklekjadlo = Mirror.BJKLEKJADLO; nccffhjcchb.SetMatrix(bjklekjadlo, num2); } int num3 = 0; StereoTargetEyeMask stereoTargetEyeMask; if (stereoTargetEyeMask == StereoTargetEyeMask.Both || KCLGLHFAOGA.stereoTargetEye == StereoTargetEyeMask.Left) { bool stereoEnabled2 = KCLGLHFAOGA.stereoEnabled; bool flag5; if (flag5) { Matrix4x4 matrix4x; float m = matrix4x.m02; float m2 = matrix4x.m03; Matrix4x4 matrix4x2; float m3 = matrix4x2.m01; MaterialPropertyBlock nccffhjcchb2 = jlckhjhhoda.NCCFFHJCCHB; Matrix4x4 matrix4x3; float m4 = matrix4x3.m01; } } if (KCLGLHFAOGA.stereoTargetEye == StereoTargetEyeMask.Both || KCLGLHFAOGA.stereoTargetEye == StereoTargetEyeMask.Right) { bool stereoEnabled3 = KCLGLHFAOGA.stereoEnabled; bool flag6; if (flag6) { if ((ulong)1L != 0UL) { this.NGOHFHFCGNB.GetOrCreateAdditionalCameraData().k__BackingField = true; } Matrix4x4 matrix4x4; float m5 = matrix4x4.m01; Matrix4x4 matrix4x5; float m6 = matrix4x5.m01; MaterialPropertyBlock nccffhjcchb3 = jlckhjhhoda.NCCFFHJCCHB; Matrix4x4 matrix4x6; float m7 = matrix4x6.m01; if ((ulong)1L != 0UL) { this.NGOHFHFCGNB.GetOrCreateAdditionalCameraData().k__BackingField = num3 != 0; } } } IL_227: Renderer chejpoimmck3 = this.CHEJPOIMMCK; MaterialPropertyBlock nccffhjcchb4 = jlckhjhhoda.NCCFFHJCCHB; chejpoimmck3.Internal_SetPropertyBlock(nccffhjcchb4); if (this.disablePixelLights) { } throw new NullReferenceException(); } } } // Token: 0x060003F1 RID: 1009 RVA: 0x00013DFC File Offset: 0x00011FFC [Token(Token = "0x60003F1")] [Address(RVA = "0x1426FB0", Offset = "0x14259B0", VA = "0x181426FB0")] private void MBIBCGLLDKA(RenderTexture NCOPINLPBJC, Matrix4x4 NEJFNJLDDII, Matrix4x4 IHLHBJGBBED, Rect OCLINFOAKKE, out Matrix4x4 AIBHJMJBHHA, ScriptableRenderContext LHOMKMINCHH) { Camera ngohfhfcgnb = this.NGOHFHFCGNB; Camera ngohfhfcgnb2 = this.NGOHFHFCGNB; this.NGOHFHFCGNB.targetTexture = NCOPINLPBJC; Camera ngohfhfcgnb3 = this.NGOHFHFCGNB; Transform transform = this.quad; Transform transform2 = transform.transform; Vector3 position = transform.position; float z = this.HGGLIDNABHM.z; float z2 = position.z; int num = 0; this.NGOHFHFCGNB.worldToCameraMatrix = num; Camera ngohfhfcgnb4 = this.NGOHFHFCGNB; Transform transform3 = ngohfhfcgnb4.transform; Camera ngohfhfcgnb5 = this.NGOHFHFCGNB; Matrix4x4 cameraToWorldMatrix = ngohfhfcgnb4.cameraToWorldMatrix; Vector3 vector; float z3 = vector.z; Camera ngohfhfcgnb6 = this.NGOHFHFCGNB; Transform transform4 = ngohfhfcgnb6.transform; Camera ngohfhfcgnb7 = this.NGOHFHFCGNB; Matrix4x4 cameraToWorldMatrix2 = ngohfhfcgnb6.cameraToWorldMatrix; Quaternion rotation = num.GetRotation(); Camera ngohfhfcgnb8 = this.NGOHFHFCGNB; Matrix4x4 matrix4x; float m = matrix4x.m02; float nearClipPlane = this.NGOHFHFCGNB.nearClipPlane; Camera ngohfhfcgnb9 = this.NGOHFHFCGNB; int num2 = 0; float farClipPlane = ngohfhfcgnb9.farClipPlane; Matrix4x4 matrix4x2; float m2 = matrix4x2.m01; float m3 = matrix4x2.m02; float m4 = matrix4x2.m03; matrix4x2.m01 = m2; matrix4x2.m02 = m3; matrix4x2.m03 = m4; this.NGOHFHFCGNB.projectionMatrix = num2; Transform transform5 = this.quad; Camera ngohfhfcgnb10 = this.NGOHFHFCGNB; Transform transform6 = transform5.transform; Vector3 position2 = transform5.position; float z4 = this.HGGLIDNABHM.z; float z5 = position2.z; Matrix4x4 matrix4x3; float m5 = matrix4x3.m20; Camera ngohfhfcgnb11 = this.NGOHFHFCGNB; bool fog = RenderSettings.fog; RenderSettings.fog = false; bool flag = GL.invertCulling; GL.invertCulling = !flag; GL.invertCulling = flag; flag = fog; RenderSettings.fog = flag; } // Token: 0x060003F2 RID: 1010 RVA: 0x00013FC4 File Offset: 0x000121C4 [Token(Token = "0x60003F2")] [Address(RVA = "0x14268A0", Offset = "0x14252A0", VA = "0x1814268A0")] private bool KKAEKJNAHFB(float FAONCIOCBGG, int KNHPCECIGDF, UniversalAdditionalCameraData GJLDCPGDMPP, bool BDDIMHFKCEM) { int num = 0; if (!(GJLDCPGDMPP != num) || !GJLDCPGDMPP.m_forceRenderMirrors) { SettingsManager instance = SingletonMonoBehaviour.Instance; int num2 = 0; if (instance != num2 && SingletonMonoBehaviour.Instance.KONLNCONKKJ == INGEKFNNGDK.Fastest) { float jmelgkobpjb = Mirror.JMELGKOBPJB; int frameCount = Time.frameCount; if (FAONCIOCBGG > jmelgkobpjb) { goto IL_53; } } int num3 = Time.frameCount; IL_53: num3++; return num3 == KNHPCECIGDF; } return true; } // Token: 0x060003F3 RID: 1011 RVA: 0x0001403C File Offset: 0x0001223C [Token(Token = "0x60003F3")] [Address(RVA = "0x1428C60", Offset = "0x1427660", VA = "0x181428C60")] private void PICGBLHBKDC(out Vector2 FFOJBDNKMJK, out Vector2 PMCAKBEJBFN) { Transform transform = this.quad; Transform transform2 = transform.transform; Matrix4x4 localToWorldMatrix = transform.localToWorldMatrix; Camera ngohfhfcgnb = this.NGOHFHFCGNB; Camera ngohfhfcgnb2 = this.NGOHFHFCGNB; Matrix4x4 matrix4x; float m = matrix4x.m01; float m2 = matrix4x.m02; float m3 = matrix4x.m03; int num = 0; int num2 = 0; Vector4[] fighnkjmihl = Mirror.FIGHNKJMIHL; int length = fighnkjmihl.Length; if (num2 < length) { num += 2; num += num; float num4; float num3 = Mathf.Min(float.MaxValue, num4); float num6; float num5 = Mathf.Min(float.MaxValue, num6); float num8; float num7 = Mathf.Max(float.MinValue, num8); float num10; float num9 = Mathf.Max(float.MinValue, num10); num++; } } // Token: 0x060003F4 RID: 1012 RVA: 0x000140F8 File Offset: 0x000122F8 [Token(Token = "0x60003F4")] [Address(RVA = "0x14288C0", Offset = "0x14272C0", VA = "0x1814288C0")] private void OnDisable() { int num; do { num = 0; Camera ngohfhfcgnb = this.NGOHFHFCGNB; if (ngohfhfcgnb) { Camera ngohfhfcgnb2 = this.NGOHFHFCGNB; int num2 = 0; ngohfhfcgnb2.targetTexture = num2; global::UnityEngine.Object.DestroyImmediate(this.NGOHFHFCGNB.gameObject); this.NGOHFHFCGNB = num; } Dictionary.ValueCollection values = this.PIIJCKNCEDI.Values; Dictionary.ValueCollection.Enumerator enumerator; if (enumerator != 0) { IntPtr cachedPtr = ngohfhfcgnb.m_CachedPtr; bool flag; if (flag) { IntPtr cachedPtr2 = ngohfhfcgnb.m_CachedPtr; IntPtr cachedPtr3 = ngohfhfcgnb.m_CachedPtr; } bool flag2; while (!flag2) { } global::UnityEngine.Object.DestroyImmediate(ngohfhfcgnb); } if (0 != -1) { } } while (num != 0); this.PIIJCKNCEDI.Clear(); RenderTexture jcecbnikbff = this.JCECBNIKBFF; int num3 = 0; if (jcecbnikbff != num3) { global::UnityEngine.Object.DestroyImmediate(this.JCECBNIKBFF); this.JCECBNIKBFF = (ulong)0L; } } // Token: 0x060003F5 RID: 1013 RVA: 0x000141BC File Offset: 0x000123BC [Token(Token = "0x60003F5")] [Address(RVA = "0x1426110", Offset = "0x1424B10", VA = "0x181426110")] private void GAJPLMIHDCA(Camera FAACBOBPIKK) { bool flag; do { SettingsManager instance = SingletonMonoBehaviour.Instance; int num = 0; if (!(instance != num)) { } flag = SingletonMonoBehaviour.Instance.KONLNCONKKJ == INGEKFNNGDK.Fastest; if (!this.NGOHFHFCGNB) { string name = base.gameObject.name; string text = "MirrorCam" + name; Type[] array = new Type[2]; Type typeFromHandle = typeof(Camera); if (typeFromHandle != 0) { } array[0] = typeFromHandle; Type typeFromHandle2 = typeof(Skybox); if (typeFromHandle2 != 0) { } array[1] = typeFromHandle2; GameObject gameObject = new GameObject(text, array); gameObject.hideFlags = HideFlags.HideAndDontSave; gameObject.tag = "MirroredCamera"; Skybox component = gameObject.GetComponent(); this.FEOGHJOOHFB = component; Camera component2 = gameObject.GetComponent(); this.NGOHFHFCGNB = component2; int num2 = 0; component2.enabled = num2 != 0; this.NGOHFHFCGNB.cullingMask = 1606418399; this.NGOHFHFCGNB.stereoTargetEye = StereoTargetEyeMask.Left; Camera[] nbbellefple = this.NBBELLEFPLE; Camera ngohfhfcgnb = this.NGOHFHFCGNB; if (ngohfhfcgnb != 0) { } nbbellefple[0] = ngohfhfcgnb; OutlineRendererEffect outlineRendererEffect = this.NGOHFHFCGNB.gameObject.AddComponent(); IgnoredRendererEffect ignoredRendererEffect = this.NGOHFHFCGNB.gameObject.AddComponent(); HolographicOverlayRendererEffect holographicOverlayRendererEffect = this.NGOHFHFCGNB.gameObject.AddComponent(); this.NGOHFHFCGNB.GetOrCreateAdditionalCameraData().m_RenderShadows = false; } Camera ngohfhfcgnb2 = this.NGOHFHFCGNB; int num3 = 0; ngohfhfcgnb2.useOcclusionCulling = num3 != 0; Camera ngohfhfcgnb3 = this.NGOHFHFCGNB; } while (flag); CameraClearFlags clearFlags = FAACBOBPIKK.clearFlags; this.NGOHFHFCGNB.clearFlags = CameraClearFlags.Color; Camera ngohfhfcgnb4 = this.NGOHFHFCGNB; Color color = this.simplifiedBackgroundColor; ngohfhfcgnb4.backgroundColor = color; if (FAACBOBPIKK.clearFlags == CameraClearFlags.Skybox) { Type typeFromHandle3 = typeof(Skybox); Component component3 = FAACBOBPIKK.GetComponent(typeFromHandle3); if (component3 != 0) { } Material material; if (component3 && material) { this.FEOGHJOOHFB.enabled = true; Material material2; this.FEOGHJOOHFB.material = material2; } Skybox feoghjoohfb = this.FEOGHJOOHFB; int num4 = 0; feoghjoohfb.enabled = num4 != 0; } RenderTexture jcecbnikbff = this.JCECBNIKBFF; int num5 = 0; if (jcecbnikbff == num5) { int num6; RenderTexture renderTexture = new RenderTexture(1, 1, num6); num6 = 0; this.JCECBNIKBFF = renderTexture; } Camera ngohfhfcgnb5 = this.NGOHFHFCGNB; RenderTexture jcecbnikbff2 = this.JCECBNIKBFF; ngohfhfcgnb5.targetTexture = jcecbnikbff2; Camera ngohfhfcgnb6 = this.NGOHFHFCGNB; bool allowHDR = FAACBOBPIKK.allowHDR; ngohfhfcgnb6.allowHDR = allowHDR; Camera ngohfhfcgnb7 = this.NGOHFHFCGNB; bool allowMSAA = FAACBOBPIKK.allowMSAA; ngohfhfcgnb7.allowMSAA = allowMSAA; Camera ngohfhfcgnb8 = this.NGOHFHFCGNB; float num7 = FAACBOBPIKK.farClipPlane; ngohfhfcgnb8.farClipPlane = num7; Camera ngohfhfcgnb9 = this.NGOHFHFCGNB; num7 = FAACBOBPIKK.nearClipPlane; ngohfhfcgnb9.nearClipPlane = num7; Camera ngohfhfcgnb10 = this.NGOHFHFCGNB; bool orthographic = FAACBOBPIKK.orthographic; ngohfhfcgnb10.orthographic = orthographic; Camera ngohfhfcgnb11 = this.NGOHFHFCGNB; num7 = FAACBOBPIKK.fieldOfView; ngohfhfcgnb11.fieldOfView = num7; Camera ngohfhfcgnb12 = this.NGOHFHFCGNB; num7 = FAACBOBPIKK.aspect; ngohfhfcgnb12.aspect = num7; Camera ngohfhfcgnb13 = this.NGOHFHFCGNB; num7 = FAACBOBPIKK.orthographicSize; ngohfhfcgnb13.orthographicSize = num7; } // Token: 0x060003F6 RID: 1014 RVA: 0x000144EC File Offset: 0x000126EC [Token(Token = "0x60003F6")] [Address(RVA = "0x14291C0", Offset = "0x1427BC0", VA = "0x1814291C0")] private Mirror.JLCKHJHHODA PPKBOAGECPI(Camera LOJEIJKFDCH) { Dictionary piijckncedi = this.PIIJCKNCEDI; bool flag; if (!flag) { Mirror.JLCKHJHHODA jlckhjhhoda = new Mirror.JLCKHJHHODA(); MaterialPropertyBlock materialPropertyBlock = new MaterialPropertyBlock(); jlckhjhhoda.NCCFFHJCCHB = materialPropertyBlock; Dictionary piijckncedi2 = this.PIIJCKNCEDI; } int scaledPixelWidth = LOJEIJKFDCH.scaledPixelWidth; int scaledPixelHeight = LOJEIJKFDCH.scaledPixelHeight; int activeMsaaSampleCount = UniversalRenderPipeline.ActiveMsaaSampleCount; int num = this.maxAntiAliasing; int num2 = Mathf.Min(activeMsaaSampleCount, num); bool activeSupportsHDR = UniversalRenderPipeline.ActiveSupportsHDR; throw new MissingMethodException(); } // Token: 0x060003F7 RID: 1015 RVA: 0x00014614 File Offset: 0x00012814 [Token(Token = "0x60003F7")] [Address(RVA = "0x1425F50", Offset = "0x1424950", VA = "0x181425F50")] private Vector4 DNJNEGLOFLB(Vector3 IFAIDIKJOAC, Vector3 ILALHDDOAGN) { /* An exception occurred when decompiling this method (060003F7) ICSharpCode.Decompiler.DecompilerException: Error decompiling UnityEngine.Vector4 Mirror::DNJNEGLOFLB(UnityEngine.Vector3,UnityEngine.Vector3) ---> System.Exception: Basic block has to end with unconditional control flow. { Block_0: stloc:float32(var_0_06, ldfld:float32(Vector3::z, ldloc:Vector3[exp:valuetype [UnityEngine.CoreModule]UnityEngine.Vector3&](ILALHDDOAGN))) } 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: 0x060003F8 RID: 1016 RVA: 0x0001462C File Offset: 0x0001282C [Token(Token = "0x60003F8")] [Address(RVA = "0x1426AF0", Offset = "0x14254F0", VA = "0x181426AF0")] private Vector4 KPMCMAJCCHL(Camera KCLGLHFAOGA, Vector3 IFAIDIKJOAC, Vector3 ILALHDDOAGN) { float z = ILALHDDOAGN.z; throw new NullReferenceException(); } // Token: 0x060003F9 RID: 1017 RVA: 0x0001464C File Offset: 0x0001284C [Token(Token = "0x60003F9")] [Address(RVA = "0x1425910", Offset = "0x1424310", VA = "0x181425910")] private static Matrix4x4 AADEHHLDOAI(Vector4 KDDPIDEDPNP) { /* An exception occurred when decompiling this method (060003F9) ICSharpCode.Decompiler.DecompilerException: Error decompiling UnityEngine.Matrix4x4 Mirror::AADEHHLDOAI(UnityEngine.Vector4) ---> System.Exception: Basic block has to end with unconditional control flow. { Block_0: stloc:Matrix4x4(var_0_05, callgetter:Matrix4x4(Matrix4x4::get_identity)) } 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: 0x060003FA RID: 1018 RVA: 0x00014660 File Offset: 0x00012860 [Token(Token = "0x60003FA")] [Address(RVA = "0x1426CF0", Offset = "0x14256F0", VA = "0x181426CF0")] private static Matrix4x4 LMAGMHPPMFD(float EONHDDFEGMC, float LDFLEALOHOI, float MEDMCMOFGJG, float HMJHGLLAEOD, float BEKNMPHCGDF, float IGHBMEDILPG) { } // Token: 0x060003FB RID: 1019 RVA: 0x00014670 File Offset: 0x00012870 [Token(Token = "0x60003FB")] [Address(RVA = "0x1429C90", Offset = "0x1428690", VA = "0x181429C90")] public Mirror() { Dictionary dictionary = new Dictionary(); this.PIIJCKNCEDI = dictionary; Plane[] array = new Plane[6]; this.FBNKCFNLOMK = array; Camera[] array2 = new Camera[1]; this.NBBELLEFPLE = array2; base..ctor(); } // Token: 0x060003FC RID: 1020 RVA: 0x000146BC File Offset: 0x000128BC // Note: this type is marked as 'beforefieldinit'. [Token(Token = "0x60003FC")] [Address(RVA = "0x1429A40", Offset = "0x1428440", VA = "0x181429A40")] static Mirror() { Vector4[] array = new Vector4[4]; int num = 0; int num2 = 0; int num3 = 0; array[0] = num; int num4 = 0; array[2] = num3; int num5 = 0; array[4] = num4; array[6] = num5; Mirror.FIGHNKJMIHL = array; int num6 = 0; Mirror.DKKLLPAMEAA = num2 != 0; Mirror.HABLDGNCPBF = num6; } // Token: 0x04000367 RID: 871 [global::Cpp2IlInjected.FieldOffset(Offset = "0x18")] [Token(Token = "0x4000367")] [SerializeField] private Transform quad; // Token: 0x04000368 RID: 872 [global::Cpp2IlInjected.FieldOffset(Offset = "0x20")] [Token(Token = "0x4000368")] [SerializeField] private bool disablePixelLights = true; // Token: 0x04000369 RID: 873 [global::Cpp2IlInjected.FieldOffset(Offset = "0x24")] [Token(Token = "0x4000369")] [SerializeField] [Tooltip("Mirror will use up to the anti-aliasing level specified in QualitySettings, without exceeding this value (1, 2, 4, or 8)")] private int maxAntiAliasing = (int)((ulong)1L); // Token: 0x0400036A RID: 874 [global::Cpp2IlInjected.FieldOffset(Offset = "0x28")] [Token(Token = "0x400036A")] [SerializeField] private Color simplifiedBackgroundColor; // Token: 0x0400036B RID: 875 [Token(Token = "0x400036B")] private static readonly Vector4[] FIGHNKJMIHL; // Token: 0x0400036C RID: 876 [Token(Token = "0x400036C")] private static float JMELGKOBPJB; // Token: 0x0400036D RID: 877 [Token(Token = "0x400036D")] private static float EFAMPFICNEA; // Token: 0x0400036E RID: 878 [global::Cpp2IlInjected.FieldOffset(Offset = "0x38")] [Token(Token = "0x400036E")] internal Dictionary PIIJCKNCEDI; // Token: 0x0400036F RID: 879 [global::Cpp2IlInjected.FieldOffset(Offset = "0x40")] [Token(Token = "0x400036F")] private Camera NGOHFHFCGNB; // Token: 0x04000370 RID: 880 [global::Cpp2IlInjected.FieldOffset(Offset = "0x48")] [Token(Token = "0x4000370")] private Skybox FEOGHJOOHFB; // Token: 0x04000371 RID: 881 [global::Cpp2IlInjected.FieldOffset(Offset = "0x50")] [Token(Token = "0x4000371")] private RenderTexture JCECBNIKBFF; // Token: 0x04000372 RID: 882 [global::Cpp2IlInjected.FieldOffset(Offset = "0x58")] [Token(Token = "0x4000372")] private Renderer CHEJPOIMMCK; // Token: 0x04000373 RID: 883 [Token(Token = "0x4000373")] private static bool DKKLLPAMEAA; // Token: 0x04000374 RID: 884 [Token(Token = "0x4000374")] private static int DKOPDHJNIKB; // Token: 0x04000375 RID: 885 [Token(Token = "0x4000375")] private static int NFJNEEINLGI; // Token: 0x04000376 RID: 886 [Token(Token = "0x4000376")] private static int BJKLEKJADLO; // Token: 0x04000377 RID: 887 [Token(Token = "0x4000377")] private static int DGPCCDFOJNM; // Token: 0x04000378 RID: 888 [Token(Token = "0x4000378")] private static readonly Rect HABLDGNCPBF; // Token: 0x04000379 RID: 889 [global::Cpp2IlInjected.FieldOffset(Offset = "0x60")] [Token(Token = "0x4000379")] private Vector3 HGGLIDNABHM; // Token: 0x0400037A RID: 890 [global::Cpp2IlInjected.FieldOffset(Offset = "0x70")] [Token(Token = "0x400037A")] private Plane[] FBNKCFNLOMK; // Token: 0x0400037B RID: 891 [global::Cpp2IlInjected.FieldOffset(Offset = "0x78")] [Token(Token = "0x400037B")] private Camera[] NBBELLEFPLE; // Token: 0x02000090 RID: 144 [Token(Token = "0x2000090")] internal class JLCKHJHHODA { // Token: 0x060003FD RID: 1021 RVA: 0x0001471C File Offset: 0x0001291C [Token(Token = "0x60003FD")] [Address(RVA = "0x3C1670", Offset = "0x3C0070", VA = "0x1803C1670")] public JLCKHJHHODA() { } // Token: 0x0400037C RID: 892 [global::Cpp2IlInjected.FieldOffset(Offset = "0x10")] [Token(Token = "0x400037C")] public RenderTexture DGCMJPECILI; // Token: 0x0400037D RID: 893 [global::Cpp2IlInjected.FieldOffset(Offset = "0x18")] [Token(Token = "0x400037D")] public RenderTexture NDLCIOBHILK; // Token: 0x0400037E RID: 894 [global::Cpp2IlInjected.FieldOffset(Offset = "0x20")] [Token(Token = "0x400037E")] public MaterialPropertyBlock NCCFFHJCCHB; } }