using System; using Cpp2IlInjected; namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Encoders { // Token: 0x0200194C RID: 6476 [Token(Token = "0x200194C")] public class BufferedEncoder { // Token: 0x060099B7 RID: 39351 RVA: 0x001FE348 File Offset: 0x001FC548 [Token(Token = "0x60099B7")] [Address(RVA = "0x18D6C30", Offset = "0x18D5A30", VA = "0x1818D6C30")] public BufferedEncoder(ITranslator translator, int bufferSize) { /* An exception occurred when decompiling this method (060099B7) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Encoders.BufferedEncoder::.ctor(BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Encoders.ITranslator,System.Int32) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_2A: stloc:ArgumentException(var_1_34, newobj:ArgumentException(ArgumentException::.ctor, ldstr:string("buffer size not multiple of input block size"))) } 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 1660 */; } // Token: 0x060099B8 RID: 39352 RVA: 0x001FE38C File Offset: 0x001FC58C [Token(Token = "0x60099B8")] [Address(RVA = "0x18D6980", Offset = "0x18D5780", VA = "0x1818D6980")] public int ProcessByte(byte input, byte[] outBytes, int outOff) { int num = this.bufOff; int num2 = 0; byte[] buffer = this.Buffer; int num3 = num + 1; this.bufOff = num3; int length = this.Buffer.Length; if (this.bufOff == length) { ITranslator translator = this.translator; this.bufOff = (int)((ulong)0L); } return num2; } // Token: 0x060099B9 RID: 39353 RVA: 0x001FE3E4 File Offset: 0x001FC5E4 [Token(Token = "0x60099B9")] [Address(RVA = "0x18D6A60", Offset = "0x18D5860", VA = "0x1818D6A60")] public int ProcessBytes(byte[] input, int inOff, int len, byte[] outBytes, int outOff) { byte[] buffer = this.Buffer; int num = 0; int num2 = buffer.Length; int num3 = this.bufOff; num2 -= num3; if (len > num2) { Array.Copy(input, inOff, buffer, num3, num2); byte[] buffer2 = this.Buffer; ITranslator translator = this.translator; int length = buffer2.Length; byte[] buffer3 = this.Buffer; this.bufOff = num; ITranslator translator2 = this.translator; } if (len != 0) { int num4 = this.bufOff; byte[] buffer4 = this.Buffer; Array.Copy(input, inOff, buffer4, num4, len); } return num; } // Token: 0x04006886 RID: 26758 [FieldOffset(Offset = "0x10")] [Token(Token = "0x4006886")] internal byte[] Buffer; // Token: 0x04006887 RID: 26759 [FieldOffset(Offset = "0x18")] [Token(Token = "0x4006887")] internal int bufOff; // Token: 0x04006888 RID: 26760 [FieldOffset(Offset = "0x20")] [Token(Token = "0x4006888")] internal ITranslator translator; } }