using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Runtime.CompilerServices; using System.Text; using CodeStage.AntiCheat.Detectors; using CodeStage.AntiCheat.ObscuredTypes; using Cpp2IlInjected; using RecNet; using UnityEngine; using UnityEngine.Events; using UnityEngine.SceneManagement; // Token: 0x020003AD RID: 941 [Token(Token = "0x20003AD")] public class CheatManager : SingletonMonoBehaviour { // Token: 0x06001E33 RID: 7731 RVA: 0x0007C338 File Offset: 0x0007A538 [Token(Token = "0x6001E33")] [Address(RVA = "0xB8E200", Offset = "0xB8D000", VA = "0x180B8E200", Slot = "4")] protected override void Awake() { base.Awake(); EKGHIAKLJCM.OFFLOPLJBBG(); DateTime utcNow = DateTime.UtcNow; float realtimeSinceStartup = Time.realtimeSinceStartup; int num = 0; this.FBNLCHCPPEG = num; SceneManager.sceneLoaded += new UnityAction(this.LLHCFHDMFMN); } // Token: 0x06001E34 RID: 7732 RVA: 0x0007C384 File Offset: 0x0007A584 [Token(Token = "0x6001E34")] [Address(RVA = "0xB8FC90", Offset = "0xB8EA90", VA = "0x180B8FC90")] private void Start() { if (SingletonMonoBehaviour.ONCPNMDGGKG.PBOKKIBGLCK) { } PlatformManager instance = SingletonMonoBehaviour.ONCPNMDGGKG; PMGCJEPKFOF pmgcjepkfof; bool flag = pmgcjepkfof == 0; this.MLADBNHDDJM = flag; } // Token: 0x06001E35 RID: 7733 RVA: 0x0007C3B8 File Offset: 0x0007A5B8 [Token(Token = "0x6001E35")] [Address(RVA = "0xB8F960", Offset = "0xB8E760", VA = "0x180B8F960", Slot = "5")] protected override void OnDestroy() { base.OnDestroy(); SceneManager.sceneLoaded -= new UnityAction(this.LLHCFHDMFMN); } // Token: 0x06001E36 RID: 7734 RVA: 0x0007C3DC File Offset: 0x0007A5DC [Token(Token = "0x6001E36")] [Address(RVA = "0xB8F7D0", Offset = "0xB8E5D0", VA = "0x180B8F7D0")] private void OnApplicationFocus(bool IEGCNLHPKFH) { if (IEGCNLHPKFH) { DateTime utcNow = DateTime.UtcNow; float realtimeSinceStartup = Time.realtimeSinceStartup; DateTime dateTime; DateTime dateTime2; TimeSpan timeSpan = dateTime - dateTime2; string text = string.Format("System datetime difference {0} hours.", timeSpan); int num = 0; DABKFAIHBBP dabkfaihbbp = LCCEEFHOBEN.FCPPPBKJFGK(LCCEEFHOBEN.OAODPJFGPAF.Time, text, num); } } // Token: 0x06001E37 RID: 7735 RVA: 0x0007C42C File Offset: 0x0007A62C [Token(Token = "0x6001E37")] [Address(RVA = "0xB8F520", Offset = "0xB8E320", VA = "0x180B8F520")] private void LLHCFHDMFMN(Scene LHECBPFGEMH, LoadSceneMode OJJLDEPGAEJ) { if (RecRoomSceneManager.DJGNMLFCODD) { SpeedHackDetector k__BackingField = SpeedHackDetector.k__BackingField; SpeedHackDetector.StartDetection(); ObscuredCheatingDetector k__BackingField2 = ObscuredCheatingDetector.k__BackingField; ObscuredCheatingDetector.StartDetection(); if (this.MLADBNHDDJM) { RRCheatDetector k__BackingField3 = RRCheatDetector.k__BackingField; if (Matchmaking.BBJAEJHMAPB.k__BackingField != COBKKLOJNNE.DORM_ROOM) { RRCheatDetector.StartDetection(); } } } if (RecRoomSceneManager.DJGNMLFCODD) { this.IDGHGCLOKIB(); } string text; if (text != 0) { EKGHIAKLJCM.MLDBFIPABMP(); } } // Token: 0x06001E38 RID: 7736 RVA: 0x0007C4AC File Offset: 0x0007A6AC [Token(Token = "0x6001E38")] [Address(RVA = "0xB8FAA0", Offset = "0xB8E8A0", VA = "0x180B8FAA0")] public void OnTimeCheatDetected() { CFLMJLFBOKH.POMHHJNDCON(); this.EEFCLAEMFIJ("Dropping to dormroom due to error [385120]"); } // Token: 0x06001E39 RID: 7737 RVA: 0x0007C4CC File Offset: 0x0007A6CC [Token(Token = "0x6001E39")] [Address(RVA = "0xB8FA00", Offset = "0xB8E800", VA = "0x180B8FA00")] public void OnObscuredTypeCheatDetected() { CFLMJLFBOKH.CJGBNACKGHI(); int num = 0; DABKFAIHBBP dabkfaihbbp = LCCEEFHOBEN.FCPPPBKJFGK(LCCEEFHOBEN.OAODPJFGPAF.Obscured, "", num); this.EEFCLAEMFIJ("Dropping to dormroom due to error [385120]"); } // Token: 0x06001E3A RID: 7738 RVA: 0x0007C4FC File Offset: 0x0007A6FC [Token(Token = "0x6001E3A")] [Address(RVA = "0xB8F770", Offset = "0xB8E570", VA = "0x180B8F770")] public void OnAdvancedMovementCheatDetected() { CFLMJLFBOKH.ANKCHPMGKOK(); this.EEFCLAEMFIJ("You were too far outside of your play area."); } // Token: 0x06001E3B RID: 7739 RVA: 0x0007C51C File Offset: 0x0007A71C [Token(Token = "0x6001E3B")] [Address(RVA = "0xB8E990", Offset = "0xB8D790", VA = "0x180B8E990")] private void EEFCLAEMFIJ(string CILGKLENBGO = "Dropping to dormroom due to error [385120]") { Debug.LogWarning(CILGKLENBGO); if (Matchmaking.BBJAEJHMAPB.k__BackingField != COBKKLOJNNE.DORM_ROOM) { SingletonMonoBehaviour.ONCPNMDGGKG.BootLocalPlayerToDormRoom(CILGKLENBGO, (SessionManager.BDPNOBGNGNI)((uint)6), true); } } // Token: 0x06001E3C RID: 7740 RVA: 0x0007C554 File Offset: 0x0007A754 [Token(Token = "0x6001E3C")] [Address(RVA = "0xB8E340", Offset = "0xB8D140", VA = "0x180B8E340")] public static bool CheckForMismatch(out string EABDHBEPPKE) { int num = 0; EFEFMHJPJIJ efefmhjpjij; if (efefmhjpjij != 0) { if (num < efefmhjpjij) { num += num; num++; } string text; if (text != text) { text += text; } } ObscuredInt oagpffkfblp = CheatManager.OAGPFFKFBLP; int num2; string[] array = CheatManager.ECEKIIGDBFO(num2, 3); int length = array.Length; if (num < length) { string text2 = CheatManager.EPAIHOMACJG(array[num]); if (text2 == 0 || !(text2 != text2)) { num++; } } throw new NullReferenceException(); } // Token: 0x06001E3D RID: 7741 RVA: 0x0007C5D8 File Offset: 0x0007A7D8 [Token(Token = "0x6001E3D")] [Address(RVA = "0xB8FD60", Offset = "0xB8EB60", VA = "0x180B8FD60")] public static void WriteDUIDs() { int num = 0; int num2 = 0; if (num2 < num) { num2 += num2; num2++; } ObscuredInt oagpffkfblp = CheatManager.OAGPFFKFBLP; int num3; string[] array = CheatManager.ECEKIIGDBFO(num3, 3); int length = array.Length; if (num2 < length) { bool flag = CheatManager.HJEJDCHLAOA(array[num2]); num2++; num2 += num2; } } // Token: 0x06001E3E RID: 7742 RVA: 0x0007C648 File Offset: 0x0007A848 [Token(Token = "0x6001E3E")] [Address(RVA = "0xB8E680", Offset = "0xB8D480", VA = "0x180B8E680")] public static void ClearDUIDs() { CheatManager.IDANDBKBOJD(); } // Token: 0x06001E3F RID: 7743 RVA: 0x0007C664 File Offset: 0x0007A864 [Token(Token = "0x6001E3F")] [Address(RVA = "0xB8E7A0", Offset = "0xB8D5A0", VA = "0x180B8E7A0")] private static string[] ECEKIIGDBFO(int KIJHGBLLCPL, int BMONAPMFJED) { string[] array = new string[BMONAPMFJED]; global::System.Random random = new global::System.Random(BMONAPMFJED); int num = 0; if (num < array.Length) { int num2; StringBuilder stringBuilder = new StringBuilder(num2); int num3 = 0; if (num2 > 0) { char c; StringBuilder stringBuilder2 = stringBuilder.Append(c); num3++; } StringBuilder stringBuilder3 = stringBuilder.Append(".tmp"); string tempPath = Path.GetTempPath(); int hashCode = stringBuilder.GetHashCode(); throw new ArrayTypeMismatchException(); } return array; } // Token: 0x06001E40 RID: 7744 RVA: 0x0007C6FC File Offset: 0x0007A8FC [Token(Token = "0x6001E40")] [Address(RVA = "0xB8F410", Offset = "0xB8E210", VA = "0x180B8F410")] private static void KPGCLFIOJBO() { ObscuredInt oagpffkfblp = CheatManager.OAGPFFKFBLP; int num; string[] array = CheatManager.ECEKIIGDBFO(num, 3); int num2 = 0; int length = array.Length; if (num2 < length) { bool flag = CheatManager.HJEJDCHLAOA(array[num2]); num2++; } } // Token: 0x06001E41 RID: 7745 RVA: 0x0007C748 File Offset: 0x0007A948 [Token(Token = "0x6001E41")] [Address(RVA = "0xB8EF10", Offset = "0xB8DD10", VA = "0x180B8EF10")] private static void IDANDBKBOJD() { int num; string[] array = CheatManager.ECEKIIGDBFO(num, 3); int num2 = 0; if (num2 < array.Length) { File.Delete(array[num2]); num2++; } } // Token: 0x06001E42 RID: 7746 RVA: 0x0007C780 File Offset: 0x0007A980 [Token(Token = "0x6001E42")] [Address(RVA = "0xB8EBF0", Offset = "0xB8D9F0", VA = "0x180B8EBF0")] private static bool HJEJDCHLAOA(string CBCDLMLKBJE) { Encoding utf = Encoding.UTF8; int num; byte[] array = new byte[num]; byte[] array2 = new byte[64]; int num2 = 0; if (num2 < array.Length) { num2++; } if (num2 < array2.Length) { num2++; } byte[] array3 = new byte[2]; array3[0] = (byte)num; array3[0] = typeof(byte[]).TypeHandle; IEnumerable enumerable = Enumerable.Concat(array3, array); IEnumerable enumerable2; byte[] array4 = Enumerable.ToArray(Enumerable.Concat(enumerable2, array2)); File.WriteAllBytes(CBCDLMLKBJE, array4); TimeSpan timeSpan; DateTime dateTime = DateTime.Now - timeSpan; File.SetLastWriteTime(CBCDLMLKBJE, dateTime); File.SetLastAccessTime(CBCDLMLKBJE, dateTime); File.SetCreationTime(CBCDLMLKBJE, dateTime); throw new IndexOutOfRangeException(); } // Token: 0x06001E43 RID: 7747 RVA: 0x0007C878 File Offset: 0x0007AA78 [Token(Token = "0x6001E43")] [Address(RVA = "0xB8EA70", Offset = "0xB8D870", VA = "0x180B8EA70")] private static string EPAIHOMACJG(string CBCDLMLKBJE) { byte[] array = File.ReadAllBytes(CBCDLMLKBJE); int length = array.Length; byte b = array[0]; byte[] array2 = Enumerable.ToArray(Enumerable.Take(Enumerable.Skip(Enumerable.Skip(array, 2), (int)b), (int)b)); Encoding utf = Encoding.UTF8; return string.Empty; } // Token: 0x06001E44 RID: 7748 RVA: 0x0007C8E0 File Offset: 0x0007AAE0 [Token(Token = "0x6001E44")] [Address(RVA = "0xB8F010", Offset = "0xB8DE10", VA = "0x180B8F010")] private void IDGHGCLOKIB() { string text = Path.Combine(Application.dataPath, "..\\"); string appPath = text; IEnumerable enumerable = Directory.EnumerateFiles(text, "*.dll"); Func func = delegate(string s) { string appPath2 = appPath; return s.Replace(appPath2, ""); }; IEnumerable enumerable2 = Enumerable.Select(enumerable, func); string[] cjpefnajici = CheatManager.CJPEFNAJICI; StringComparer invariantCultureIgnoreCase = StringComparer._invariantCultureIgnoreCase; List list = Enumerable.ToList(Enumerable.Except(enumerable2, cjpefnajici, invariantCultureIgnoreCase)); if (list != 0) { int num = 0; string text2 = BCKPFAJAPEO.JIIMHOLCECD(list, num, ", "); int num2 = 0; DABKFAIHBBP dabkfaihbbp = LCCEEFHOBEN.FCPPPBKJFGK(LCCEEFHOBEN.OAODPJFGPAF.UnknownDll, text2, num2); CFLMJLFBOKH.GEHHCFFBOPJ(); float num3 = global::UnityEngine.Random.Range(10f, 60f); KFBABPAPIMB kfbabpapimb = this.ENFHDIBGOEO(num3); int num4; Action action = new Action(num4.TryApplicationQuit); num4 = 0; } } // Token: 0x06001E45 RID: 7749 RVA: 0x0007C9B8 File Offset: 0x0007ABB8 [Token(Token = "0x6001E45")] [Address(RVA = "0xB8F310", Offset = "0xB8E110", VA = "0x180B8F310")] private void JKKNJLHBBPM(string PEKNJPKPAOE) { int num = 0; DABKFAIHBBP dabkfaihbbp = LCCEEFHOBEN.FCPPPBKJFGK(LCCEEFHOBEN.OAODPJFGPAF.UnknownDll, PEKNJPKPAOE, num); CFLMJLFBOKH.GEHHCFFBOPJ(); float num2 = global::UnityEngine.Random.Range(10f, 60f); KFBABPAPIMB kfbabpapimb = this.ENFHDIBGOEO(num2); int num3; Action action = new Action(num3.TryApplicationQuit); num3 = 0; throw new NullReferenceException(); } // Token: 0x06001E46 RID: 7750 RVA: 0x0007CA08 File Offset: 0x0007AC08 [Token(Token = "0x6001E46")] [Address(RVA = "0xB8FB00", Offset = "0xB8E900", VA = "0x180B8FB00")] private void PCOEGAGDIAP() { DateTime utcNow = DateTime.UtcNow; float realtimeSinceStartup = Time.realtimeSinceStartup; DateTime dateTime; DateTime dateTime2; TimeSpan timeSpan = dateTime - dateTime2; string text = string.Format("System datetime difference {0} hours.", timeSpan); int num = 0; DABKFAIHBBP dabkfaihbbp = LCCEEFHOBEN.FCPPPBKJFGK(LCCEEFHOBEN.OAODPJFGPAF.Time, text, num); } // Token: 0x06001E47 RID: 7751 RVA: 0x0007CA54 File Offset: 0x0007AC54 [Token(Token = "0x6001E47")] [Address(RVA = "0xB904D0", Offset = "0xB8F2D0", VA = "0x180B904D0")] public CheatManager() { } // Token: 0x06001E48 RID: 7752 RVA: 0x0007CA70 File Offset: 0x0007AC70 // Note: this type is marked as 'beforefieldinit'. [Token(Token = "0x6001E48")] [Address(RVA = "0xB90030", Offset = "0xB8EE30", VA = "0x180B90030")] static CheatManager() { ObscuredInt obscuredInt; bool fakeValueActive = obscuredInt.fakeValueActive; string[] array = new string[11]; if ("GameAssembly.dll" != 0) { } array[0] = "GameAssembly.dll"; if ("UnityPlayer.dll" != 0) { } array[1] = "UnityPlayer.dll"; if ("WinPixEventRuntime.dll" != 0) { } array[2] = "WinPixEventRuntime.dll"; if ("steam_api64.dll" != 0) { } array[3] = "steam_api64.dll"; if ("steam_api.dll" != 0) { } array[4] = "steam_api.dll"; if ("d3d11.dll" != 0) { } array[5] = "d3d11.dll"; if ("d3d9.dll" != 0) { } array[6] = "d3d9.dll"; if ("d3d8.dll" != 0) { } array[7] = "d3d8.dll"; if ("ddraw.dll" != 0) { } array[8] = "ddraw.dll"; if ("dxgi.dll" != 0) { } array[9] = "dxgi.dll"; if ("opengl32.dll" != 0) { } array[10] = "opengl32.dll"; CheatManager.CJPEFNAJICI = array; } // Token: 0x040016E7 RID: 5863 [Token(Token = "0x40016E7")] private const string LMGPBPKGOJC = "abcdefghijklmnopqrstuvwxyz1234567890"; // Token: 0x040016E8 RID: 5864 [Token(Token = "0x40016E8")] private const string FFKOEPBAENB = "02B3A4E5-33BF-4ED1-A06B-4D2FF43F6E1E"; // Token: 0x040016E9 RID: 5865 [Token(Token = "0x40016E9")] private const int OICCECLCDIE = 1; // Token: 0x040016EA RID: 5866 [Token(Token = "0x40016EA")] private static readonly string DBAIOPIEJNC = "cm_did_ppk"; // Token: 0x040016EB RID: 5867 [Token(Token = "0x40016EB")] private static readonly ObscuredInt OAGPFFKFBLP; // Token: 0x040016EC RID: 5868 [Token(Token = "0x40016EC")] private static readonly string[] CJPEFNAJICI; // Token: 0x040016ED RID: 5869 [FieldOffset(Offset = "0x18")] [Token(Token = "0x40016ED")] private bool MLADBNHDDJM = true; // Token: 0x040016EE RID: 5870 [FieldOffset(Offset = "0x20")] [Token(Token = "0x40016EE")] private DateTime? FBNLCHCPPEG; // Token: 0x020003AE RID: 942 [Token(Token = "0x20003AE")] [CompilerGenerated] private sealed class KMCDENPGGAG { // Token: 0x06001E49 RID: 7753 RVA: 0x0007CB80 File Offset: 0x0007AD80 [Token(Token = "0x6001E49")] [Address(RVA = "0x3F5100", Offset = "0x3F3F00", VA = "0x1803F5100")] public KMCDENPGGAG() { } // Token: 0x06001E4A RID: 7754 RVA: 0x0007CB94 File Offset: 0x0007AD94 [Token(Token = "0x6001E4A")] [Address(RVA = "0x146DA70", Offset = "0x146C870", VA = "0x18146DA70")] internal string b__0(string s) { string text = this.appPath; return s.Replace(text, ""); } // Token: 0x040016EF RID: 5871 [FieldOffset(Offset = "0x10")] [Token(Token = "0x40016EF")] public string appPath; } }