Files
2026-04-10 22:50:51 +02:00

505 lines
15 KiB
C#

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<CheatManager>
{
// 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<PlatformManager.LKOLCLKDJKO> 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 <OCDLBPHJMOP>k__BackingField = SpeedHackDetector.<OCDLBPHJMOP>k__BackingField;
SpeedHackDetector.StartDetection();
ObscuredCheatingDetector <OCDLBPHJMOP>k__BackingField2 = ObscuredCheatingDetector.<OCDLBPHJMOP>k__BackingField;
ObscuredCheatingDetector.StartDetection();
if (this.MLADBNHDDJM)
{
RRCheatDetector <OCDLBPHJMOP>k__BackingField3 = RRCheatDetector.<OCDLBPHJMOP>k__BackingField;
if (Matchmaking.BBJAEJHMAPB.<PGOEAIDCELB>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.<PGOEAIDCELB>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<byte> enumerable = Enumerable.Concat<byte>(array3, array);
IEnumerable<byte> enumerable2;
byte[] array4 = Enumerable.ToArray<byte>(Enumerable.Concat<byte>(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<byte>(Enumerable.Take<byte>(Enumerable.Skip<byte>(Enumerable.Skip<byte>(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<string> enumerable = Directory.EnumerateFiles(text, "*.dll");
Func<string, string> func = delegate(string s)
{
string appPath2 = appPath;
return s.Replace(appPath2, "");
};
IEnumerable<string> enumerable2 = Enumerable.Select<string, string>(enumerable, func);
string[] cjpefnajici = CheatManager.CJPEFNAJICI;
StringComparer invariantCultureIgnoreCase = StringComparer._invariantCultureIgnoreCase;
List<string> list = Enumerable.ToList<string>(Enumerable.Except<string>(enumerable2, cjpefnajici, invariantCultureIgnoreCase));
if (list != 0)
{
int num = 0;
string text2 = BCKPFAJAPEO.JIIMHOLCECD<string>(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 <CheckforUnknownDLL>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;
}
}