275 lines
8.2 KiB
C#
275 lines
8.2 KiB
C#
using System;
|
|
using System.Linq;
|
|
using System.Runtime.InteropServices;
|
|
using Cpp2IlInjected;
|
|
using POpusCodec;
|
|
using UnityEngine;
|
|
|
|
// Token: 0x02001E28 RID: 7720
|
|
[Token(Token = "0x2001E28")]
|
|
[StructLayout(3)]
|
|
public class AGPNOAMCFMF : IDisposable
|
|
{
|
|
// Token: 0x0600CFE5 RID: 53221 RVA: 0x00316D00 File Offset: 0x00314F00
|
|
[Token(Token = "0x600CFE5")]
|
|
[Address(RVA = "0x16E1E40", Offset = "0x16E0840", VA = "0x1816E1E40")]
|
|
public AGPNOAMCFMF(KHJKOGJKJNA streamData, OpusDecoder<float> decoder, Func<bool> isPlayingBackwardsFunc)
|
|
{
|
|
int num = 0;
|
|
this.PMDPIMEPFOB = (int)((ulong)4294967295L);
|
|
this.DDHPAFKBMON = num;
|
|
this.CNOGINOPPCH = num;
|
|
this.BPHMMPNLECI = isPlayingBackwardsFunc;
|
|
this.CDHEJGBLCNP = decoder;
|
|
byte[] array = streamData.LCKLPAEAFKB.ToByteArray();
|
|
this.CDFJHPLAKAF = array;
|
|
int[] array2 = Enumerable.ToArray<int>(streamData.AEFLFEBFALC);
|
|
this.IEDBGCLEMIO = array2;
|
|
int nhcogbkdlld = streamData.NHCOGBKDLLD;
|
|
this.DPKDBDKMAMM = nhcogbkdlld;
|
|
int num2 = array2[0];
|
|
byte[] array3 = new byte[num2];
|
|
byte[] cdfjhplakaf = this.CDFJHPLAKAF;
|
|
int num3 = 0;
|
|
int num4 = 0;
|
|
Array.Copy(cdfjhplakaf, num4, array3, num3, num2);
|
|
float[] array4 = decoder.DecodePacket(array3);
|
|
float[] array5 = decoder.DecodePacket(array3);
|
|
this.CNOGINOPPCH = array5;
|
|
this.PMDPIMEPFOB = num;
|
|
int length = array5.Length;
|
|
this.KDLHKOHEOIC = length;
|
|
int[] array6 = new int[this.IEDBGCLEMIO.Length];
|
|
this.MKMIMKGCGGD = array6;
|
|
int[] iedbgclemio = this.IEDBGCLEMIO;
|
|
if (num < iedbgclemio.Length)
|
|
{
|
|
this.MKMIMKGCGGD[0] = num;
|
|
int[] iedbgclemio2 = this.IEDBGCLEMIO;
|
|
num++;
|
|
}
|
|
int jlpnpniopeg = streamData.JLPNPNIOPEG;
|
|
int akdbfnkaljm = streamData.AKDBFNKALJM;
|
|
int nhcogbkdlld2 = streamData.NHCOGBKDLLD;
|
|
AudioClip.PCMReaderCallback pcmreaderCallback = new AudioClip.PCMReaderCallback(this.IBLBBHLDCDP);
|
|
AudioClip.PCMSetPositionCallback pcmsetPositionCallback = new AudioClip.PCMSetPositionCallback(this.KENOMMDEPNJ);
|
|
ulong num5;
|
|
AudioClip audioClip = AudioClip.Create("AudioStreamData", nhcogbkdlld2, akdbfnkaljm, jlpnpniopeg, num5 != 0UL, pcmreaderCallback, pcmsetPositionCallback);
|
|
this.HPHNKGFCEGA = audioClip;
|
|
int num6 = 0;
|
|
if (!(audioClip == num6))
|
|
{
|
|
bool flag = CNABJODGCJB.HOCNFAFNEHG(this);
|
|
return;
|
|
}
|
|
Debug.LogError("CreateStreamingOpusAudioClip(): Could not create AudioClip");
|
|
}
|
|
|
|
// Token: 0x0600CFE6 RID: 53222 RVA: 0x00316E9C File Offset: 0x0031509C
|
|
[Token(Token = "0x600CFE6")]
|
|
[Address(RVA = "0x3C1670", Offset = "0x3C0070", VA = "0x1803C1670")]
|
|
private AGPNOAMCFMF()
|
|
{
|
|
}
|
|
|
|
// Token: 0x17002061 RID: 8289
|
|
// (get) Token: 0x0600CFE7 RID: 53223 RVA: 0x00316EB0 File Offset: 0x003150B0
|
|
// (set) Token: 0x0600CFE8 RID: 53224 RVA: 0x00316EC4 File Offset: 0x003150C4
|
|
[Token(Token = "0x17002061")]
|
|
public AudioClip HPHNKGFCEGA
|
|
{
|
|
[Token(Token = "0x600CFE7")]
|
|
[Address(RVA = "0x3EDE90", Offset = "0x3EC890", VA = "0x1803EDE90")]
|
|
get;
|
|
[Token(Token = "0x600CFE8")]
|
|
[Address(RVA = "0x3EDEC0", Offset = "0x3EC8C0", VA = "0x1803EDEC0")]
|
|
private set;
|
|
}
|
|
|
|
// Token: 0x0600CFE9 RID: 53225 RVA: 0x00316ED8 File Offset: 0x003150D8
|
|
[Token(Token = "0x600CFE9")]
|
|
[Address(RVA = "0x16E1BF0", Offset = "0x16E05F0", VA = "0x1816E1BF0")]
|
|
private bool LBNMPBGLIJI()
|
|
{
|
|
Func<bool> bphmmpnleci = this.BPHMMPNLECI;
|
|
if (bphmmpnleci != 0)
|
|
{
|
|
return bphmmpnleci() != null;
|
|
}
|
|
}
|
|
|
|
// Token: 0x0600CFEA RID: 53226 RVA: 0x00316EF8 File Offset: 0x003150F8
|
|
[Token(Token = "0x600CFEA")]
|
|
[Address(RVA = "0x16E1C40", Offset = "0x16E0640", VA = "0x1816E1C40")]
|
|
private bool LOGBHLIOEFA(int PEMBGNMLFGN, out string MOPOMPHBHKF)
|
|
{
|
|
if (PEMBGNMLFGN != this.PMDPIMEPFOB)
|
|
{
|
|
int length = this.IEDBGCLEMIO.Length;
|
|
if (PEMBGNMLFGN < length)
|
|
{
|
|
byte[] array = new byte[PEMBGNMLFGN];
|
|
int[] mkmimkgcggd = this.MKMIMKGCGGD;
|
|
int num = 0;
|
|
int num2;
|
|
int num3;
|
|
Array.Copy(this.CDFJHPLAKAF, num2, array, num, num3);
|
|
float[] array2 = this.CDHEJGBLCNP.DecodePacket(array);
|
|
if (array2.Length == this.KDLHKOHEOIC)
|
|
{
|
|
this.CNOGINOPPCH = array2;
|
|
this.PMDPIMEPFOB = PEMBGNMLFGN;
|
|
}
|
|
int kdlhkoheoic = this.KDLHKOHEOIC;
|
|
string text = string.Format("unexpected frame size: {0}/{1}", array2, array2);
|
|
}
|
|
int length2 = this.IEDBGCLEMIO.Length;
|
|
}
|
|
return true;
|
|
}
|
|
|
|
// Token: 0x0600CFEB RID: 53227 RVA: 0x00316FA0 File Offset: 0x003151A0
|
|
[Token(Token = "0x600CFEB")]
|
|
[Address(RVA = "0x16E1920", Offset = "0x16E0320", VA = "0x1816E1920")]
|
|
private void IBLBBHLDCDP(float[] ABADFLCBFIJ)
|
|
{
|
|
int num = 0;
|
|
if ((this.KGACOELMNLL ? 1 : 0) == num)
|
|
{
|
|
Func<bool> bphmmpnleci = this.BPHMMPNLECI;
|
|
if (bphmmpnleci != 0)
|
|
{
|
|
bool flag = bphmmpnleci() != null;
|
|
}
|
|
int num2 = 0;
|
|
if (num < ABADFLCBFIJ.Length)
|
|
{
|
|
int ddhpafkbmon = this.DDHPAFKBMON;
|
|
if (num2 != 0)
|
|
{
|
|
int num3 = this.DPKDBDKMAMM;
|
|
num3 -= ddhpafkbmon;
|
|
}
|
|
if (num2 == 0 || ddhpafkbmon != this.PMDPIMEPFOB)
|
|
{
|
|
}
|
|
if (this.LOGBHLIOEFA(ddhpafkbmon, num))
|
|
{
|
|
float[] cnoginoppch = this.CNOGINOPPCH;
|
|
int num4 = cnoginoppch.Length;
|
|
int num6;
|
|
if (ddhpafkbmon < num4)
|
|
{
|
|
num++;
|
|
num4 = ddhpafkbmon;
|
|
float num5 = cnoginoppch[num4];
|
|
ABADFLCBFIJ[0] = num5;
|
|
num6 = 0;
|
|
}
|
|
ABADFLCBFIJ[0] = (float)num6;
|
|
int length = this.CNOGINOPPCH.Length;
|
|
string text = string.Format("PCMReaderCallback Error: frameOffset out of bounds:! offset: {0}/{1}", num, num);
|
|
}
|
|
ABADFLCBFIJ[0] = (float)num;
|
|
Debug.LogError("LoadFrame Error: " + num);
|
|
num++;
|
|
}
|
|
}
|
|
}
|
|
|
|
// Token: 0x0600CFEC RID: 53228 RVA: 0x0031708C File Offset: 0x0031528C
|
|
[Token(Token = "0x600CFEC")]
|
|
[Address(RVA = "0x16E1BD0", Offset = "0x16E05D0", VA = "0x1816E1BD0")]
|
|
private void KENOMMDEPNJ(int DDHPAFKBMON)
|
|
{
|
|
this.DDHPAFKBMON = DDHPAFKBMON;
|
|
this.PMDPIMEPFOB = (int)((ulong)4294967295L);
|
|
this.CNOGINOPPCH = (ulong)0L;
|
|
}
|
|
|
|
// Token: 0x0600CFED RID: 53229 RVA: 0x003170BC File Offset: 0x003152BC
|
|
[Token(Token = "0x600CFED")]
|
|
[Address(RVA = "0x16E1BD0", Offset = "0x16E05D0", VA = "0x1816E1BD0")]
|
|
private void JBBLIBHHEBC(int DDHPAFKBMON = 0)
|
|
{
|
|
this.DDHPAFKBMON = DDHPAFKBMON;
|
|
this.PMDPIMEPFOB = (int)((ulong)4294967295L);
|
|
this.CNOGINOPPCH = (ulong)0L;
|
|
}
|
|
|
|
// Token: 0x0600CFEE RID: 53230 RVA: 0x003170EC File Offset: 0x003152EC
|
|
[Token(Token = "0x600CFEE")]
|
|
[Address(RVA = "0x16E18D0", Offset = "0x16E02D0", VA = "0x1816E18D0", Slot = "4")]
|
|
public void Dispose()
|
|
{
|
|
if (!this.KGACOELMNLL)
|
|
{
|
|
OpusDecoder<float> cdhejgblcnp = this.CDHEJGBLCNP;
|
|
if (cdhejgblcnp != 0)
|
|
{
|
|
cdhejgblcnp.Dispose();
|
|
}
|
|
this.KGACOELMNLL = true;
|
|
}
|
|
}
|
|
|
|
// Token: 0x04008C3C RID: 35900
|
|
[Token(Token = "0x4008C3C")]
|
|
private const int BEPPCOEJFCN = 2;
|
|
|
|
// Token: 0x04008C3D RID: 35901
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x10")]
|
|
[Token(Token = "0x4008C3D")]
|
|
private readonly OpusDecoder<float> CDHEJGBLCNP;
|
|
|
|
// Token: 0x04008C3E RID: 35902
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x18")]
|
|
[Token(Token = "0x4008C3E")]
|
|
private readonly int KDLHKOHEOIC;
|
|
|
|
// Token: 0x04008C3F RID: 35903
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x20")]
|
|
[Token(Token = "0x4008C3F")]
|
|
private readonly Func<bool> BPHMMPNLECI;
|
|
|
|
// Token: 0x04008C40 RID: 35904
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x28")]
|
|
[Token(Token = "0x4008C40")]
|
|
private readonly int DPKDBDKMAMM;
|
|
|
|
// Token: 0x04008C41 RID: 35905
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x30")]
|
|
[Token(Token = "0x4008C41")]
|
|
private readonly byte[] CDFJHPLAKAF;
|
|
|
|
// Token: 0x04008C42 RID: 35906
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x38")]
|
|
[Token(Token = "0x4008C42")]
|
|
private readonly int[] MKMIMKGCGGD;
|
|
|
|
// Token: 0x04008C43 RID: 35907
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x40")]
|
|
[Token(Token = "0x4008C43")]
|
|
private readonly int[] IEDBGCLEMIO;
|
|
|
|
// Token: 0x04008C44 RID: 35908
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x48")]
|
|
[Token(Token = "0x4008C44")]
|
|
private float[] CNOGINOPPCH;
|
|
|
|
// Token: 0x04008C45 RID: 35909
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x50")]
|
|
[Token(Token = "0x4008C45")]
|
|
private int PMDPIMEPFOB;
|
|
|
|
// Token: 0x04008C46 RID: 35910
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x54")]
|
|
[Token(Token = "0x4008C46")]
|
|
private int DDHPAFKBMON;
|
|
|
|
// Token: 0x04008C47 RID: 35911
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x58")]
|
|
[Token(Token = "0x4008C47")]
|
|
private bool KGACOELMNLL;
|
|
}
|