211 lines
8.3 KiB
C#
211 lines
8.3 KiB
C#
using System;
|
|
using System.IO;
|
|
using Cpp2IlInjected;
|
|
|
|
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls
|
|
{
|
|
// Token: 0x02001AFF RID: 6911
|
|
[Token(Token = "0x2001AFF")]
|
|
public class ByteQueue
|
|
{
|
|
// Token: 0x0600ABE3 RID: 44003 RVA: 0x00256820 File Offset: 0x00254A20
|
|
[Token(Token = "0x600ABE3")]
|
|
[Address(RVA = "0x18A8150", Offset = "0x18A6F50", VA = "0x1818A8150")]
|
|
public static int NextTwoPow(int i)
|
|
{
|
|
return i;
|
|
}
|
|
|
|
// Token: 0x0600ABE4 RID: 44004 RVA: 0x00256830 File Offset: 0x00254A30
|
|
[Token(Token = "0x600ABE4")]
|
|
[Address(RVA = "0x18A8950", Offset = "0x18A7750", VA = "0x1818A8950")]
|
|
public ByteQueue()
|
|
{
|
|
byte[] array = new byte[1024];
|
|
this.databuf = array;
|
|
}
|
|
|
|
// Token: 0x0600ABE5 RID: 44005 RVA: 0x0025685C File Offset: 0x00254A5C
|
|
[Token(Token = "0x600ABE5")]
|
|
[Address(RVA = "0x18A88B0", Offset = "0x18A76B0", VA = "0x1818A88B0")]
|
|
public ByteQueue(int capacity)
|
|
{
|
|
if (capacity == 0)
|
|
{
|
|
}
|
|
byte[] array = new byte[capacity];
|
|
this.databuf = array;
|
|
}
|
|
|
|
// Token: 0x0600ABE6 RID: 44006 RVA: 0x00256888 File Offset: 0x00254A88
|
|
[Token(Token = "0x600ABE6")]
|
|
[Address(RVA = "0x18A89B0", Offset = "0x18A77B0", VA = "0x1818A89B0")]
|
|
public ByteQueue(byte[] buf, int off, int len)
|
|
{
|
|
this.databuf = buf;
|
|
this.available = len;
|
|
this.skipped = off;
|
|
this.readOnlyBuf = true;
|
|
}
|
|
|
|
// Token: 0x0600ABE7 RID: 44007 RVA: 0x002568B8 File Offset: 0x00254AB8
|
|
[Token(Token = "0x600ABE7")]
|
|
[Address(RVA = "0x18A7E40", Offset = "0x18A6C40", VA = "0x1818A7E40")]
|
|
public void AddData(byte[] data, int offset, int len)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (0600ABE7)
|
|
|
|
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.ByteQueue::AddData(System.Byte[],System.Int32,System.Int32)
|
|
|
|
---> System.Exception: Basic block has to end with unconditional control flow.
|
|
{
|
|
IL_85:
|
|
stloc:InvalidOperationException(var_11_8F, newobj:InvalidOperationException(InvalidOperationException::.ctor, ldstr:string("Cannot add data to read-only buffer")))
|
|
}
|
|
|
|
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
|
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
|
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
|
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: 0x17001B45 RID: 6981
|
|
// (get) Token: 0x0600ABE8 RID: 44008 RVA: 0x00256958 File Offset: 0x00254B58
|
|
[Token(Token = "0x17001B45")]
|
|
public int Available
|
|
{
|
|
[Token(Token = "0x600ABE8")]
|
|
[Address(RVA = "0x41F5B0", Offset = "0x41E3B0", VA = "0x18041F5B0")]
|
|
get
|
|
{
|
|
return this.available;
|
|
}
|
|
}
|
|
|
|
// Token: 0x0600ABE9 RID: 44009 RVA: 0x0025696C File Offset: 0x00254B6C
|
|
[Token(Token = "0x600ABE9")]
|
|
[Address(RVA = "0x18A7FB0", Offset = "0x18A6DB0", VA = "0x1818A7FB0")]
|
|
public void CopyTo(Stream output, int length)
|
|
{
|
|
int num = output.ReadByte();
|
|
}
|
|
|
|
// Token: 0x0600ABEA RID: 44010 RVA: 0x002569E4 File Offset: 0x00254BE4
|
|
[Token(Token = "0x600ABEA")]
|
|
[Address(RVA = "0x18A8340", Offset = "0x18A7140", VA = "0x1818A8340")]
|
|
public void Read(byte[] buf, int offset, int len, int skip)
|
|
{
|
|
int num = buf.Length;
|
|
num -= offset;
|
|
int num2 = this.available;
|
|
int num3 = this.skipped;
|
|
byte[] array = this.databuf;
|
|
}
|
|
|
|
// Token: 0x0600ABEB RID: 44011 RVA: 0x00256A18 File Offset: 0x00254C18
|
|
[Token(Token = "0x600ABEB")]
|
|
[Address(RVA = "0x18A8180", Offset = "0x18A6F80", VA = "0x1818A8180")]
|
|
public MemoryStream ReadFrom(int length)
|
|
{
|
|
int num = this.available;
|
|
int num2 = this.skipped;
|
|
num -= length;
|
|
byte[] array = this.databuf;
|
|
this.available = num;
|
|
this.skipped = num;
|
|
ulong num3;
|
|
return new MemoryStream(array, num2, length, num3 != 0UL);
|
|
}
|
|
|
|
// Token: 0x0600ABEC RID: 44012 RVA: 0x00256AB4 File Offset: 0x00254CB4
|
|
[Token(Token = "0x600ABEC")]
|
|
[Address(RVA = "0x18A85A0", Offset = "0x18A73A0", VA = "0x1818A85A0")]
|
|
public void RemoveData(int i)
|
|
{
|
|
int num = this.available;
|
|
num -= i;
|
|
this.available = num;
|
|
}
|
|
|
|
// Token: 0x0600ABED RID: 44013 RVA: 0x00256B30 File Offset: 0x00254D30
|
|
[Token(Token = "0x600ABED")]
|
|
[Address(RVA = "0x18A8550", Offset = "0x18A7350", VA = "0x1818A8550")]
|
|
public void RemoveData(byte[] buf, int off, int len, int skip)
|
|
{
|
|
}
|
|
|
|
// Token: 0x0600ABEE RID: 44014 RVA: 0x00256B40 File Offset: 0x00254D40
|
|
[Token(Token = "0x600ABEE")]
|
|
[Address(RVA = "0x18A8710", Offset = "0x18A7510", VA = "0x1818A8710")]
|
|
public byte[] RemoveData(int len, int skip)
|
|
{
|
|
byte[] array = new byte[len];
|
|
int num = 0;
|
|
this.Read(array, num, len, skip);
|
|
return array;
|
|
}
|
|
|
|
// Token: 0x0600ABEF RID: 44015 RVA: 0x00256B64 File Offset: 0x00254D64
|
|
[Token(Token = "0x600ABEF")]
|
|
[Address(RVA = "0x18A87A0", Offset = "0x18A75A0", VA = "0x1818A87A0")]
|
|
public void Shrink()
|
|
{
|
|
int num = this.available;
|
|
if (num != 0)
|
|
{
|
|
byte[] array = this.databuf;
|
|
num++;
|
|
if (num < array.Length)
|
|
{
|
|
byte[] array2 = new byte[num];
|
|
int num2 = this.available;
|
|
int num3 = 0;
|
|
int num4 = this.skipped;
|
|
Array.Copy(this.databuf, num4, array2, num3, num2);
|
|
this.databuf = array2;
|
|
this.skipped = (int)((ulong)0L);
|
|
return;
|
|
}
|
|
}
|
|
else
|
|
{
|
|
byte[] emptyBytes = TlsUtilities.EmptyBytes;
|
|
this.databuf = emptyBytes;
|
|
this.skipped = (int)((ulong)0L);
|
|
}
|
|
}
|
|
|
|
// Token: 0x04006D00 RID: 27904
|
|
[Token(Token = "0x4006D00")]
|
|
private const int DefaultCapacity = 1024;
|
|
|
|
// Token: 0x04006D01 RID: 27905
|
|
[FieldOffset(Offset = "0x10")]
|
|
[Token(Token = "0x4006D01")]
|
|
private byte[] databuf;
|
|
|
|
// Token: 0x04006D02 RID: 27906
|
|
[FieldOffset(Offset = "0x18")]
|
|
[Token(Token = "0x4006D02")]
|
|
private int skipped;
|
|
|
|
// Token: 0x04006D03 RID: 27907
|
|
[FieldOffset(Offset = "0x1C")]
|
|
[Token(Token = "0x4006D03")]
|
|
private int available;
|
|
|
|
// Token: 0x04006D04 RID: 27908
|
|
[FieldOffset(Offset = "0x20")]
|
|
[Token(Token = "0x4006D04")]
|
|
private bool readOnlyBuf;
|
|
}
|
|
}
|