260 lines
10 KiB
C#
260 lines
10 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Runtime.CompilerServices;
|
|
using System.Runtime.InteropServices;
|
|
using System.Text.RegularExpressions;
|
|
using Backtrace.Unity;
|
|
using Backtrace.Unity.Model;
|
|
using Backtrace.Unity.Types;
|
|
using Cpp2IlInjected;
|
|
using UnityEngine;
|
|
|
|
namespace RecRoom.Core
|
|
{
|
|
// Token: 0x02002D7D RID: 11645
|
|
[Token(Token = "0x2002D7D")]
|
|
public class BacktraceManager : SingletonMonoBehaviour<BacktraceManager>
|
|
{
|
|
// Token: 0x06013A37 RID: 80439 RVA: 0x0048A76C File Offset: 0x0048896C
|
|
[Token(Token = "0x6013A37")]
|
|
[Address(RVA = "0x1F055D0", Offset = "0x1F045D0", VA = "0x181F055D0")]
|
|
private void Start()
|
|
{
|
|
Scheduler instance = SingletonMonoBehaviour.ONCPNMDGGKG;
|
|
BacktraceManager.KADJKDDMICC kadjkddmicc;
|
|
kadjkddmicc.System.IDisposable.Dispose();
|
|
kadjkddmicc.<>1__state = (int)((ulong)0L);
|
|
kadjkddmicc.<>4__this = this;
|
|
KFBABPAPIMB kfbabpapimb = instance.Run(this, kadjkddmicc);
|
|
}
|
|
|
|
// Token: 0x06013A38 RID: 80440 RVA: 0x0048A7A8 File Offset: 0x004889A8
|
|
[Token(Token = "0x6013A38")]
|
|
[Address(RVA = "0x1F052B0", Offset = "0x1F042B0", VA = "0x181F052B0", Slot = "5")]
|
|
protected override void OnDestroy()
|
|
{
|
|
if (this.MFBIIAEFGPM)
|
|
{
|
|
OKNNKFGFODL okceceookog = BPHGKAEDBPE.OKCECEOOKOG;
|
|
Action action = new Action(this.OKCECEOOKOG);
|
|
BPHGKAEDBPE.OKCECEOOKOG = OKNNKFGFODL.GMNMHGMFGOL(okceceookog, action);
|
|
global::UnityEngine.Object.Destroy(this.GGLBLHMNOHG.gameObject);
|
|
this.GGLBLHMNOHG = (ulong)0L;
|
|
this.MFBIIAEFGPM = false;
|
|
}
|
|
}
|
|
|
|
// Token: 0x06013A39 RID: 80441 RVA: 0x0048A804 File Offset: 0x00488A04
|
|
[Token(Token = "0x6013A39")]
|
|
[Address(RVA = "0x1F053C0", Offset = "0x1F043C0", VA = "0x181F053C0")]
|
|
public void SendCustomReport(string NGPMADFHHKP, [Optional] Dictionary<string, string> KCKHILCCJIK, [Optional] List<string> LDFDGAKBEGA, [Optional] Action<BacktraceResult> AFLPGGJMPOE)
|
|
{
|
|
if (this.MFBIIAEFGPM)
|
|
{
|
|
BacktraceClient gglblhmnohg = this.GGLBLHMNOHG;
|
|
BacktraceReport backtraceReport = new BacktraceReport(NGPMADFHHKP, KCKHILCCJIK, LDFDGAKBEGA);
|
|
}
|
|
}
|
|
|
|
// Token: 0x06013A3A RID: 80442 RVA: 0x0048A830 File Offset: 0x00488A30
|
|
[Token(Token = "0x6013A3A")]
|
|
[Address(RVA = "0x1F05470", Offset = "0x1F04470", VA = "0x181F05470")]
|
|
public void SendCustomReport(Exception CHKKEHOKPJP, [Optional] Dictionary<string, string> KCKHILCCJIK, [Optional] List<string> LDFDGAKBEGA, [Optional] Action<BacktraceResult> AFLPGGJMPOE)
|
|
{
|
|
if (this.MFBIIAEFGPM)
|
|
{
|
|
BacktraceClient gglblhmnohg = this.GGLBLHMNOHG;
|
|
BacktraceReport backtraceReport = new BacktraceReport(CHKKEHOKPJP, KCKHILCCJIK, LDFDGAKBEGA);
|
|
}
|
|
}
|
|
|
|
// Token: 0x06013A3B RID: 80443 RVA: 0x0048A85C File Offset: 0x00488A5C
|
|
[Token(Token = "0x6013A3B")]
|
|
[Address(RVA = "0x1F05520", Offset = "0x1F04520", VA = "0x181F05520")]
|
|
public void SetAttribute(string DNGKIAJLLHG, string ONGBFDACHHG)
|
|
{
|
|
string text = "RecRoom." + DNGKIAJLLHG;
|
|
if (!this.MFBIIAEFGPM)
|
|
{
|
|
this.BGMBLEDFJIL[text] = ONGBFDACHHG;
|
|
return;
|
|
}
|
|
this.GGLBLHMNOHG[text] = ONGBFDACHHG;
|
|
}
|
|
|
|
// Token: 0x06013A3C RID: 80444 RVA: 0x0048A8A0 File Offset: 0x00488AA0
|
|
[Token(Token = "0x6013A3C")]
|
|
[Address(RVA = "0x1F04FC0", Offset = "0x1F03FC0", VA = "0x181F04FC0")]
|
|
private IEnumerator<KENFJGFMIPM> APABFGPGEHL()
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (06013A3C)
|
|
|
|
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Collections.Generic.IEnumerator`1<KENFJGFMIPM> RecRoom.Core.BacktraceManager::APABFGPGEHL()
|
|
|
|
---> System.Exception: Basic block has to end with unconditional control flow.
|
|
{
|
|
Block_0:
|
|
call:void(KADJKDDMICC::System.IDisposable.Dispose, ldloc:KADJKDDMICC(var_0))
|
|
stfld:int32(KADJKDDMICC::<>1__state, ldloc:KADJKDDMICC(var_0), conv.u8:uint64[exp:int32](ldc.i8:int64[exp:uint64](0)))
|
|
stfld:BacktraceManager(KADJKDDMICC::<>4__this, ldloc:KADJKDDMICC(var_0), ldloc:BacktraceManager(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: 0x06013A3D RID: 80445 RVA: 0x0048A8C4 File Offset: 0x00488AC4
|
|
[Token(Token = "0x6013A3D")]
|
|
[Address(RVA = "0x1F051E0", Offset = "0x1F041E0", VA = "0x181F051E0")]
|
|
private void OKCECEOOKOG()
|
|
{
|
|
int <OIBJLPBDMML>k__BackingField = BPHGKAEDBPE.<OIBJLPBDMML>k__BackingField;
|
|
string text;
|
|
this.SetAttribute("RecNetId", text);
|
|
}
|
|
|
|
// Token: 0x06013A3E RID: 80446 RVA: 0x0048A8E4 File Offset: 0x00488AE4
|
|
[Token(Token = "0x6013A3E")]
|
|
[Address(RVA = "0x1F05020", Offset = "0x1F04020", VA = "0x181F05020")]
|
|
private bool DNOIJEILPOI(ReportFilterType GEDCEIDOKJL, Exception CHKKEHOKPJP, string NGPMADFHHKP)
|
|
{
|
|
DateTime pbcdbedebkp = this.PBCDBEDEBKP;
|
|
DateTime utcNow = DateTime.UtcNow;
|
|
bool flag = pbcdbedebkp < utcNow;
|
|
if (!flag)
|
|
{
|
|
if (CHKKEHOKPJP != 0)
|
|
{
|
|
}
|
|
if (!flag)
|
|
{
|
|
Regex nihibnbgajg = this.NIHIBNBGAJG;
|
|
if (nihibnbgajg != 0 && nihibnbgajg.IsMatch(NGPMADFHHKP))
|
|
{
|
|
goto IL_C2;
|
|
}
|
|
}
|
|
int num = this.OKAMGFHKBLG;
|
|
num++;
|
|
this.OKAMGFHKBLG = num;
|
|
if (!this.NONGKMPCALE)
|
|
{
|
|
BacktraceClient gglblhmnohg = this.GGLBLHMNOHG;
|
|
this.NONGKMPCALE = true;
|
|
gglblhmnohg.Configuration.ReportFilterType = (ReportFilterType)((ulong)15L);
|
|
BacktraceConfiguration configuration = this.GGLBLHMNOHG.Configuration;
|
|
int num2 = 0;
|
|
configuration.Sampling = (double)num2;
|
|
BacktraceClient gglblhmnohg2 = this.GGLBLHMNOHG;
|
|
int num3;
|
|
int num4;
|
|
BacktraceReport backtraceReport = new BacktraceReport("Backtrace maximum message count reached", num3, num4);
|
|
num4 = 0;
|
|
num3 = 0;
|
|
gglblhmnohg2.ForceSendReport(backtraceReport);
|
|
}
|
|
}
|
|
IL_C2:
|
|
this.GGLBLHMNOHG.Configuration.ReportFilterType = (ReportFilterType)((ulong)15L);
|
|
BacktraceConfiguration configuration2 = this.GGLBLHMNOHG.Configuration;
|
|
int num5 = 0;
|
|
configuration2.Sampling = (double)num5;
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x06013A3F RID: 80447 RVA: 0x0048A9E8 File Offset: 0x00488BE8
|
|
[Token(Token = "0x6013A3F")]
|
|
[Address(RVA = "0x1F056B0", Offset = "0x1F046B0", VA = "0x181F056B0")]
|
|
public BacktraceManager()
|
|
{
|
|
Dictionary<string, string> dictionary = new Dictionary();
|
|
this.BGMBLEDFJIL = dictionary;
|
|
DateTime minValue = DateTime.MinValue;
|
|
this.PBCDBEDEBKP = minValue;
|
|
base..ctor();
|
|
}
|
|
|
|
// Token: 0x0400CBA4 RID: 52132
|
|
[Token(Token = "0x400CBA4")]
|
|
private const string MPBBCOJJBLC = "https://submit.backtrace.io/recroom/68bd650c1b4d66b82d0af51d5feb00632872fa8c186871ae4323dfa198daded5/json";
|
|
|
|
// Token: 0x0400CBA5 RID: 52133
|
|
[Token(Token = "0x400CBA5")]
|
|
private const string KHJKIFAONDD = "backtrace/database";
|
|
|
|
// Token: 0x0400CBA6 RID: 52134
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x18")]
|
|
[Token(Token = "0x400CBA6")]
|
|
private bool MFBIIAEFGPM;
|
|
|
|
// Token: 0x0400CBA7 RID: 52135
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x20")]
|
|
[Token(Token = "0x400CBA7")]
|
|
private BacktraceClient GGLBLHMNOHG;
|
|
|
|
// Token: 0x0400CBA8 RID: 52136
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x28")]
|
|
[Token(Token = "0x400CBA8")]
|
|
private Dictionary<string, string> BGMBLEDFJIL;
|
|
|
|
// Token: 0x0400CBA9 RID: 52137
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x30")]
|
|
[Token(Token = "0x400CBA9")]
|
|
private Regex NIHIBNBGAJG;
|
|
|
|
// Token: 0x0400CBAA RID: 52138
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x38")]
|
|
[Token(Token = "0x400CBAA")]
|
|
private DateTime PBCDBEDEBKP;
|
|
|
|
// Token: 0x0400CBAB RID: 52139
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x40")]
|
|
[Token(Token = "0x400CBAB")]
|
|
private int EKHELKIDAKM;
|
|
|
|
// Token: 0x0400CBAC RID: 52140
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x44")]
|
|
[Token(Token = "0x400CBAC")]
|
|
private int OKAMGFHKBLG;
|
|
|
|
// Token: 0x0400CBAD RID: 52141
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x48")]
|
|
[Token(Token = "0x400CBAD")]
|
|
private bool NONGKMPCALE;
|
|
|
|
// Token: 0x02002D7E RID: 11646
|
|
[Token(Token = "0x2002D7E")]
|
|
[CompilerGenerated]
|
|
private sealed class FPIAGLMICCP
|
|
{
|
|
// Token: 0x06013A40 RID: 80448 RVA: 0x0048AA18 File Offset: 0x00488C18
|
|
[Token(Token = "0x6013A40")]
|
|
[Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")]
|
|
public FPIAGLMICCP()
|
|
{
|
|
}
|
|
|
|
// Token: 0x06013A41 RID: 80449 RVA: 0x0048AA2C File Offset: 0x00488C2C
|
|
[Token(Token = "0x6013A41")]
|
|
[Address(RVA = "0x1F13F00", Offset = "0x1F12F00", VA = "0x181F13F00")]
|
|
internal bool <InitializeBacktraceClient>b__0()
|
|
{
|
|
JIMCFNAHGJE jimcfnahgje = this.gameConfigs;
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x0400CBAE RID: 52142
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x10")]
|
|
[Token(Token = "0x400CBAE")]
|
|
public JIMCFNAHGJE gameConfigs;
|
|
}
|
|
}
|
|
}
|