using System; using System.Collections; using System.IO; using System.Runtime.InteropServices; using System.Runtime.Remoting; using BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Prng; using BestHTTP.SecureProtocol.Org.BouncyCastle.Security; using BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities; using BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Date; using Cpp2IlInjected; namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls { // Token: 0x020015A7 RID: 5543 [Token(Token = "0x20015A7")] [StructLayout(3)] public abstract class TlsProtocol { // Token: 0x0600936C RID: 37740 RVA: 0x0020A180 File Offset: 0x00208380 [Token(Token = "0x600936C")] [Address(RVA = "0x1E02D70", Offset = "0x1E01770", VA = "0x181E02D70")] public TlsProtocol(Stream stream, SecureRandom secureRandom) { } // Token: 0x0600936D RID: 37741 RVA: 0x0020A190 File Offset: 0x00208390 [Token(Token = "0x600936D")] [Address(RVA = "0x1E02D90", Offset = "0x1E01790", VA = "0x181E02D90")] public TlsProtocol(Stream input, Stream output, SecureRandom secureRandom) { int num; ByteQueue byteQueue = new ByteQueue(num); num = 0; this.mApplicationDataQueue = byteQueue; ByteQueue byteQueue2 = new ByteQueue(2); this.mAlertQueue = byteQueue2; int num2; ByteQueue byteQueue3 = new ByteQueue(num2); num2 = 0; this.mHandshakeQueue = byteQueue3; this.mAppDataSplitEnabled = true; this.mBlocking = true; this.HandleChangeCipherSpecMessage(); RecordStream recordStream = new RecordStream(this, input, output); this.mRecordStream = recordStream; this.mSecureRandom = secureRandom; } // Token: 0x0600936E RID: 37742 RVA: 0x0020A1FC File Offset: 0x002083FC [Token(Token = "0x600936E")] [Address(RVA = "0x1E02C10", Offset = "0x1E01610", VA = "0x181E02C10")] public TlsProtocol(SecureRandom secureRandom) { int num; ByteQueue byteQueue = new ByteQueue(num); num = 0; this.mApplicationDataQueue = byteQueue; ByteQueue byteQueue2 = new ByteQueue(2); this.mAlertQueue = byteQueue2; int num2; ByteQueue byteQueue3 = new ByteQueue(num2); num2 = 0; this.mHandshakeQueue = byteQueue3; this.HandleChangeCipherSpecMessage(); ByteQueueStream byteQueueStream = new ByteQueueStream(); this.mInputBuffers = byteQueueStream; ByteQueueStream byteQueueStream2 = new ByteQueueStream(); ByteQueueStream byteQueueStream3 = this.mInputBuffers; this.mOutputBuffer = byteQueueStream2; RecordStream recordStream = new RecordStream(this, byteQueueStream3, byteQueueStream2); this.mRecordStream = recordStream; this.mSecureRandom = secureRandom; } // Token: 0x170017B8 RID: 6072 // (get) Token: 0x0600936F RID: 37743 [Token(Token = "0x170017B8")] protected abstract TlsContext Context { [Token(Token = "0x600936F")] [Address(Slot = "4")] get; } // Token: 0x170017B9 RID: 6073 // (get) Token: 0x06009370 RID: 37744 [Token(Token = "0x170017B9")] internal abstract AbstractTlsContext ContextAdmin { [Token(Token = "0x6009370")] [Address(Slot = "5")] get; } // Token: 0x170017BA RID: 6074 // (get) Token: 0x06009371 RID: 37745 [Token(Token = "0x170017BA")] protected abstract TlsPeer Peer { [Token(Token = "0x6009371")] [Address(Slot = "6")] get; } // Token: 0x06009372 RID: 37746 RVA: 0x0020A280 File Offset: 0x00208480 [Token(Token = "0x6009372")] [Address(RVA = "0x1DFFCE0", Offset = "0x1DFE6E0", VA = "0x181DFFCE0", Slot = "7")] protected virtual void HandleAlertMessage(byte alertLevel, byte alertDescription) { AbstractTlsContext contextAdmin = this.ContextAdmin; int num = 0; if (num < (int)alertDescription) { num += num; num++; } TlsContext context = this.Context; } // Token: 0x06009373 RID: 37747 RVA: 0x0020A2B0 File Offset: 0x002084B0 [Token(Token = "0x6009373")] [Address(RVA = "0x1DFFE30", Offset = "0x1DFE830", VA = "0x181DFFE30", Slot = "8")] protected virtual void HandleAlertWarningMessage(byte alertDescription) { while (!this.mAppDataReady) { } this.HandleChangeCipherSpecMessage(); } // Token: 0x06009374 RID: 37748 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x6009374")] [Address(RVA = "0x3C9F60", Offset = "0x3C8960", VA = "0x1803C9F60", Slot = "9")] protected virtual void HandleChangeCipherSpecMessage() { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06009375 RID: 37749 RVA: 0x0020A2CC File Offset: 0x002084CC [Token(Token = "0x6009375")] [Address(RVA = "0x1DFFEC0", Offset = "0x1DFE8C0", VA = "0x181DFFEC0", Slot = "10")] protected virtual void HandleClose(bool user_canceled) { if (!this.mClosed) { this.mClosed = true; if (!user_canceled || !this.mAppDataReady) { } this.mRecordStream.SafeClose(); if (!this.mAppDataReady) { } } } // Token: 0x06009376 RID: 37750 RVA: 0x0020A310 File Offset: 0x00208510 [Token(Token = "0x6009376")] [Address(RVA = "0x1DFFFA0", Offset = "0x1DFE9A0", VA = "0x181DFFFA0", Slot = "11")] protected virtual void HandleException(byte alertDescription, string message, Exception cause) { if (!this.mClosed) { } } // Token: 0x06009377 RID: 37751 RVA: 0x0020A328 File Offset: 0x00208528 [Token(Token = "0x6009377")] [Address(RVA = "0x1E00030", Offset = "0x1DFEA30", VA = "0x181E00030", Slot = "12")] protected virtual void HandleFailure() { this.mClosed = true; this.mFailedWithError = true; this.mRecordStream.SafeClose(); if (!this.mAppDataReady) { TlsContext context = this.Context; return; } } // Token: 0x06009378 RID: 37752 [Token(Token = "0x6009378")] [Address(Slot = "13")] protected abstract void HandleHandshakeMessage(byte type, MemoryStream buf); // Token: 0x06009379 RID: 37753 RVA: 0x0020A368 File Offset: 0x00208568 [Token(Token = "0x6009379")] [Address(RVA = "0x1DFE880", Offset = "0x1DFD280", VA = "0x181DFE880", Slot = "14")] protected virtual void ApplyMaxFragmentLengthExtension() { /* An exception occurred when decompiling this method (06009379) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.TlsProtocol::ApplyMaxFragmentLengthExtension() ---> System.Exception: Basic block has to end with unconditional control flow. { IL_2E: stloc:TlsFatalAlert(var_2_34, newobj:TlsFatalAlert(TlsFatalAlert::.ctor, ldloc:uint64[exp:uint8](var_3))) } 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: 0x0600937A RID: 37754 RVA: 0x0020A3AC File Offset: 0x002085AC [Token(Token = "0x600937A")] [Address(RVA = "0x1DFEA90", Offset = "0x1DFD490", VA = "0x181DFEA90", Slot = "15")] protected virtual void CheckReceivedChangeCipherSpec(bool expected) { while (expected != this.mReceivedChangeCipherSpec) { } } // Token: 0x0600937B RID: 37755 RVA: 0x0020A3C4 File Offset: 0x002085C4 [Token(Token = "0x600937B")] [Address(RVA = "0x1DFEB00", Offset = "0x1DFD500", VA = "0x181DFEB00", Slot = "16")] protected virtual void CleanupHandshake() { byte[] array = this.mExpectedVerifyData; int num = 0; if (array != 0) { int num2 = 0; Arrays.Fill(array, (byte)num2); this.mExpectedVerifyData = num; } string text = this.mSecurityParameters.ToString(); this.mPeerCertificate = num; this.mOfferedCipherSuites = num; this.mOfferedCompressionMethods = num; this.mClientExtensions = num; this.mServerExtensions = num; this.mResumedSession = num != 0; this.mExpectSessionTicket = num != 0; } // Token: 0x0600937C RID: 37756 RVA: 0x0020A434 File Offset: 0x00208634 [Token(Token = "0x600937C")] [Address(RVA = "0x1DFE9E0", Offset = "0x1DFD3E0", VA = "0x181DFE9E0", Slot = "17")] protected virtual void BlockForHandshake() { while (this.mBlocking && this.mClosed) { } } // Token: 0x0600937D RID: 37757 RVA: 0x0020A454 File Offset: 0x00208654 [Token(Token = "0x600937D")] [Address(RVA = "0x1DFED00", Offset = "0x1DFD700", VA = "0x181DFED00", Slot = "18")] protected virtual void CompleteHandshake() { int num; do { num = 0; this.mConnectionState = (short)((uint)16); this.mAlertQueue.Shrink(); this.mHandshakeQueue.Shrink(); this.mRecordStream.FinaliseHandshake(); string text = this.ToString(); ProtocolVersion protocolVersion; bool flag = !ProtocolVersion.TLSv11.IsEqualOrEarlierVersionOf(protocolVersion); this.mAppDataSplitEnabled = flag; bool flag2 = this.mAppDataReady; if (!flag2) { this.mAppDataReady = true; if (this.mBlocking != flag2) { TlsStream tlsStream; tlsStream.handler = this; this.mTlsStream = tlsStream; } } if (this.mTlsSession != (ulong)0L) { if (this.mSessionParameters == (ulong)0L) { SessionParameters.Builder builder = new SessionParameters.Builder(); int entity = this.mSecurityParameters.Entity; SessionParameters.Builder builder2 = builder.SetCipherSuite(entity); int cipherSuite = this.mSecurityParameters.CipherSuite; SessionParameters.Builder builder3 = builder2.SetCompressionAlgorithm((byte)cipherSuite); byte[] srpIdentity = this.mSecurityParameters.SrpIdentity; int verifyDataLength = this.mSecurityParameters.VerifyDataLength; Certificate certificate = this.mPeerCertificate; SessionParameters.Builder builder5; SessionParameters.Builder builder4 = builder5.SetPeerCertificate(certificate); byte[] sessionHash = this.mSecurityParameters.SessionHash; SessionParameters.Builder builder6 = builder4.SetPskIdentity(sessionHash); byte[] pskIdentity = this.mSecurityParameters.PskIdentity; SessionParameters.Builder builder7 = builder6.SetSrpIdentity(pskIdentity); IDictionary dictionary = this.mServerExtensions; SessionParameters sessionParameters = builder7.SetServerExtensions(dictionary).Build(); this.mSessionParameters = sessionParameters; TlsSession tlsSession = this.mTlsSession; TlsSessionImpl tlsSessionImpl; this.mTlsSession = tlsSessionImpl; } TlsContext context = this.Context; } AbstractTlsContext contextAdmin = this.ContextAdmin; if (num != -1) { } } while (num != 0); } // Token: 0x0600937E RID: 37758 RVA: 0x0020A664 File Offset: 0x00208864 [Token(Token = "0x600937E")] [Address(RVA = "0x1E00A80", Offset = "0x1DFF480", VA = "0x181E00A80")] protected internal void ProcessRecord(byte protocol, byte[] buf, int off, int len) { /* An exception occurred when decompiling this method (0600937E) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.TlsProtocol::ProcessRecord(System.Byte,System.Byte[],System.Int32,System.Int32) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_BC: stloc:TlsFatalAlert(var_19_C3, newobj:TlsFatalAlert(TlsFatalAlert::.ctor, ldloc:uint64[exp:uint8](var_20))) stloc:TlsFatalAlert(var_21_CC, newobj:TlsFatalAlert(TlsFatalAlert::.ctor, ldloc:uint64[exp:uint8](var_22))) } 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: 0x0600937F RID: 37759 RVA: 0x0020A740 File Offset: 0x00208940 [Token(Token = "0x600937F")] [Address(RVA = "0x1E00780", Offset = "0x1DFF180", VA = "0x181E00780")] private void ProcessHandshakeQueue(ByteQueue queue) { int num = 0; byte[] array = new byte[4]; int num2 = 0; queue.Read(array, num2, 4, num); byte b = array[0]; int num3 = TlsUtilities.ReadUint24(array, 1); this.ApplyMaxFragmentLengthExtension(); this.ApplyMaxFragmentLengthExtension(); string text = this.ToString(); if (this.mExpectedVerifyData == num) { sbyte b2; this.mExpectedVerifyData = b2; } RecordStream recordStream = this.mRecordStream; queue.RemoveData(4); MemoryStream memoryStream = queue.ReadFrom(num3); this.HandleFailure(); } // Token: 0x06009380 RID: 37760 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x6009380")] [Address(RVA = "0x3C9F60", Offset = "0x3C8960", VA = "0x1803C9F60")] private void ProcessApplicationDataQueue() { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06009381 RID: 37761 RVA: 0x0020A7C0 File Offset: 0x002089C0 [Token(Token = "0x6009381")] [Address(RVA = "0x1E00440", Offset = "0x1DFEE40", VA = "0x181E00440")] private void ProcessAlertQueue() { ByteQueue byteQueue = this.mAlertQueue; int num = 0; int length = byteQueue.RemoveData(2, num).Length; TlsPeer peer = this.Peer; ByteQueue byteQueue2 = this.mAlertQueue; } // Token: 0x06009382 RID: 37762 RVA: 0x0020A7FC File Offset: 0x002089FC [Token(Token = "0x6009382")] [Address(RVA = "0x1E004E0", Offset = "0x1DFEEE0", VA = "0x181E004E0")] private void ProcessChangeCipherSpec(byte[] buf, int off, int len) { /* An exception occurred when decompiling this method (06009382) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.TlsProtocol::ProcessChangeCipherSpec(System.Byte[],System.Int32,System.Int32) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_34: stloc:TlsFatalAlert(var_2_3A, newobj:TlsFatalAlert(TlsFatalAlert::.ctor, ldloc:uint64[exp:uint8](var_3))) } 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.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: 0x06009383 RID: 37763 RVA: 0x0020A844 File Offset: 0x00208A44 [Token(Token = "0x6009383")] [Address(RVA = "0x1DFE860", Offset = "0x1DFD260", VA = "0x181DFE860", Slot = "19")] protected internal virtual int ApplicationDataAvailable() { return this.mApplicationDataQueue.available; } // Token: 0x06009384 RID: 37764 RVA: 0x0020A864 File Offset: 0x00208A64 [Token(Token = "0x6009384")] [Address(RVA = "0x1E010B0", Offset = "0x1DFFAB0", VA = "0x181E010B0", Slot = "20")] protected internal virtual int ReadApplicationData(byte[] buf, int offset, int len) { /* An exception occurred when decompiling this method (06009384) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.TlsProtocol::ReadApplicationData(System.Byte[],System.Int32,System.Int32) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_3A: stloc:IOException(var_3_44, newobj:IOException(IOException::.ctor, ldstr:string("Cannot read application data on failed TLS connection"))) } 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.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: 0x06009385 RID: 37765 RVA: 0x0020A8B8 File Offset: 0x00208AB8 [Token(Token = "0x6009385")] [Address(RVA = "0x1E01930", Offset = "0x1E00330", VA = "0x181E01930", Slot = "21")] protected virtual void SafeCheckRecordHeader(byte[] recordHeader) { this.mRecordStream.CheckRecordHeader(recordHeader); } // Token: 0x06009386 RID: 37766 RVA: 0x0020A8E0 File Offset: 0x00208AE0 [Token(Token = "0x6009386")] [Address(RVA = "0x1E01A70", Offset = "0x1E00470", VA = "0x181E01A70", Slot = "22")] protected virtual void SafeReadRecord() { if (this.mRecordStream.ReadRecord() || this.mAppDataReady) { return; } throw new NullReferenceException(); } // Token: 0x06009387 RID: 37767 RVA: 0x0020A910 File Offset: 0x00208B10 [Token(Token = "0x6009387")] [Address(RVA = "0x1E01C30", Offset = "0x1E00630", VA = "0x181E01C30", Slot = "23")] protected virtual void SafeWriteRecord(byte type, byte[] buf, int offset, int len) { RecordStream recordStream = this.mRecordStream; } // Token: 0x06009388 RID: 37768 RVA: 0x0020A930 File Offset: 0x00208B30 [Token(Token = "0x6009388")] [Address(RVA = "0x1E02210", Offset = "0x1E00C10", VA = "0x181E02210", Slot = "24")] protected internal virtual void WriteData(byte[] buf, int offset, int len) { /* An exception occurred when decompiling this method (06009388) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.TlsProtocol::WriteData(System.Byte[],System.Int32,System.Int32) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_57: stloc:IOException(var_4_61, newobj:IOException(IOException::.ctor, ldstr:string("Cannot write application data on closed/failed TLS connection"))) } 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: 0x06009389 RID: 37769 RVA: 0x0020A9A0 File Offset: 0x00208BA0 [Token(Token = "0x6009389")] [Address(RVA = "0x1E02170", Offset = "0x1E00B70", VA = "0x181E02170", Slot = "25")] protected virtual void SetAppDataSplitMode(int appDataSplitMode) { /* An exception occurred when decompiling this method (06009389) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.TlsProtocol::SetAppDataSplitMode(System.Int32) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_0C: stloc:ArgumentException(var_0_21, newobj:ArgumentException(ArgumentException::.ctor, call:string(string::Concat, ldstr:string[exp:object]("Illegal appDataSplitMode mode: "), ldloc:int32[exp:object](appDataSplitMode)), ldstr:string("appDataSplitMode"))) } 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: 0x0600938A RID: 37770 RVA: 0x0020A9D0 File Offset: 0x00208BD0 [Token(Token = "0x600938A")] [Address(RVA = "0x1E024B0", Offset = "0x1E00EB0", VA = "0x181E024B0", Slot = "26")] protected virtual void WriteHandshakeMessage(byte[] buf, int off, int len) { int num = this.mRecordStream.mHandshakeHashUpdater.ReadByte(); int num2 = 0; int num3 = this.mRecordStream.mPlaintextLimit; num3 = Math.Min(len, num3); this.SafeReadRecord(); num2 += num3; } // Token: 0x170017BB RID: 6075 // (get) Token: 0x0600938B RID: 37771 RVA: 0x0020AA18 File Offset: 0x00208C18 [Token(Token = "0x170017BB")] public virtual Stream Stream { [Token(Token = "0x600938B")] [Address(RVA = "0x1E02EC0", Offset = "0x1E018C0", VA = "0x181E02EC0", Slot = "27")] get { /* An exception occurred when decompiling this method (0600938B) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.IO.Stream BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.TlsProtocol::get_Stream() ---> System.Exception: Basic block has to end with unconditional control flow. { IL_10: stloc:InvalidOperationException(var_1_1A, newobj:InvalidOperationException(InvalidOperationException::.ctor, ldstr:string("Cannot use Stream in non-blocking mode! Use OfferInput()/OfferOutput() instead."))) } 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: 0x0600938C RID: 37772 RVA: 0x0020AA40 File Offset: 0x00208C40 [Token(Token = "0x600938C")] [Address(RVA = "0x1DFEBC0", Offset = "0x1DFD5C0", VA = "0x181DFEBC0", Slot = "28")] public virtual void CloseInput() { for (;;) { if (!this.mBlocking) { if (this.mClosed) { break; } ByteQueueStream byteQueueStream = this.mInputBuffers; if (this.mAppDataReady) { break; } } } } // Token: 0x0600938D RID: 37773 RVA: 0x0020AA78 File Offset: 0x00208C78 [Token(Token = "0x600938D")] [Address(RVA = "0x1E00120", Offset = "0x1DFEB20", VA = "0x181E00120", Slot = "29")] public virtual void OfferInput(byte[] input) { /* An exception occurred when decompiling this method (0600938D) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.TlsProtocol::OfferInput(System.Byte[]) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_46: stloc:InvalidOperationException(var_7_50, newobj:InvalidOperationException(InvalidOperationException::.ctor, ldstr:string("Cannot use OfferInput() in blocking mode! Use Stream instead."))) } 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: 0x0600938E RID: 37774 RVA: 0x0020AAD8 File Offset: 0x00208CD8 [Token(Token = "0x600938E")] [Address(RVA = "0x1DFF830", Offset = "0x1DFE230", VA = "0x181DFF830", Slot = "30")] public virtual int GetAvailableInputBytes() { /* An exception occurred when decompiling this method (0600938E) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.TlsProtocol::GetAvailableInputBytes() ---> System.Exception: Basic block has to end with unconditional control flow. { IL_10: stloc:InvalidOperationException(var_1_1A, newobj:InvalidOperationException(InvalidOperationException::.ctor, ldstr:string("Cannot use GetAvailableInputBytes() in blocking mode! Use ApplicationDataAvailable() instead."))) } 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: 0x0600938F RID: 37775 RVA: 0x0020AB00 File Offset: 0x00208D00 [Token(Token = "0x600938F")] [Address(RVA = "0x1E01490", Offset = "0x1DFFE90", VA = "0x181E01490", Slot = "31")] public virtual int ReadInput(byte[] buffer, int offset, int length) { /* An exception occurred when decompiling this method (0600938F) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.TlsProtocol::ReadInput(System.Byte[],System.Int32,System.Int32) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_16: stloc:InvalidOperationException(var_2_20, newobj:InvalidOperationException(InvalidOperationException::.ctor, ldstr:string("Cannot use ReadInput() in blocking mode! Use Stream instead."))) } 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: 0x06009390 RID: 37776 RVA: 0x0020AB30 File Offset: 0x00208D30 [Token(Token = "0x6009390")] [Address(RVA = "0x1E00340", Offset = "0x1DFED40", VA = "0x181E00340", Slot = "32")] public virtual void OfferOutput(byte[] buffer, int offset, int length) { /* An exception occurred when decompiling this method (06009390) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.TlsProtocol::OfferOutput(System.Byte[],System.Int32,System.Int32) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_25: stloc:IOException(var_2_2F, newobj:IOException(IOException::.ctor, ldstr:string("Application data cannot be sent until the handshake is complete!"))) } 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: 0x06009391 RID: 37777 RVA: 0x0020AB6C File Offset: 0x00208D6C [Token(Token = "0x6009391")] [Address(RVA = "0x1DFF8B0", Offset = "0x1DFE2B0", VA = "0x181DFF8B0", Slot = "33")] public virtual int GetAvailableOutputBytes() { /* An exception occurred when decompiling this method (06009391) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.TlsProtocol::GetAvailableOutputBytes() ---> System.Exception: Basic block has to end with unconditional control flow. { IL_14: stloc:InvalidOperationException(var_0_1E, newobj:InvalidOperationException(InvalidOperationException::.ctor, ldstr:string("Cannot use GetAvailableOutputBytes() in blocking mode! Use Stream instead."))) } 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: 0x06009392 RID: 37778 RVA: 0x0020AB98 File Offset: 0x00208D98 [Token(Token = "0x6009392")] [Address(RVA = "0x1E01590", Offset = "0x1DFFF90", VA = "0x181E01590", Slot = "34")] public virtual int ReadOutput(byte[] buffer, int offset, int length) { /* An exception occurred when decompiling this method (06009392) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.TlsProtocol::ReadOutput(System.Byte[],System.Int32,System.Int32) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_18: stloc:InvalidOperationException(var_0_22, newobj:InvalidOperationException(InvalidOperationException::.ctor, ldstr:string("Cannot use ReadOutput() in blocking mode! Use Stream instead."))) } 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: 0x06009393 RID: 37779 RVA: 0x0020ABC8 File Offset: 0x00208DC8 [Token(Token = "0x6009393")] [Address(RVA = "0x1E000B0", Offset = "0x1DFEAB0", VA = "0x181E000B0", Slot = "35")] protected virtual void InvalidateSession() { SessionParameters sessionParameters = this.mSessionParameters; if (sessionParameters != 0) { sessionParameters.Clear(); this.mSessionParameters = (ulong)0L; } if (this.mTlsSession != 0) { this.mTlsSession = (ulong)0L; } } // Token: 0x06009394 RID: 37780 RVA: 0x0020AC04 File Offset: 0x00208E04 [Token(Token = "0x6009394")] [Address(RVA = "0x1E00660", Offset = "0x1DFF060", VA = "0x181E00660", Slot = "36")] protected virtual void ProcessFinishedMessage(MemoryStream buf) { for (;;) { byte[] array = this.mExpectedVerifyData; if (array != 0) { byte[] array2 = TlsUtilities.ReadFully(array.Length, buf); TlsProtocol.AssertEmpty(buf); if (Arrays.ConstantTimeAreEqual(this.mExpectedVerifyData, array2)) { break; } } } } // Token: 0x06009395 RID: 37781 RVA: 0x0020AC40 File Offset: 0x00208E40 [Token(Token = "0x6009395")] [Address(RVA = "0x1E00E60", Offset = "0x1DFF860", VA = "0x181E00E60", Slot = "37")] protected virtual void RaiseAlertFatal(byte alertDescription, string message, Exception cause) { AbstractTlsContext contextAdmin = this.ContextAdmin; byte[] array = new byte[2]; array[0] = (byte)((ulong)2L); array[0] = alertDescription; RecordStream recordStream = this.mRecordStream; } // Token: 0x06009396 RID: 37782 RVA: 0x0020AC80 File Offset: 0x00208E80 [Token(Token = "0x6009396")] [Address(RVA = "0x1E00FA0", Offset = "0x1DFF9A0", VA = "0x181E00FA0", Slot = "38")] protected virtual void RaiseAlertWarning(byte alertDescription, string message) { AbstractTlsContext contextAdmin = this.ContextAdmin; byte[] array = new byte[2]; array[0] = (byte)((ulong)1L); array[0] = alertDescription; this.SafeReadRecord(); } // Token: 0x06009397 RID: 37783 RVA: 0x0020ACBC File Offset: 0x00208EBC [Token(Token = "0x6009397")] [Address(RVA = "0x1E01D90", Offset = "0x1E00790", VA = "0x181E01D90", Slot = "39")] protected virtual void SendCertificateMessage(Certificate certificate) { if (certificate == 0) { Certificate emptyChain = Certificate.EmptyChain; } if (certificate.Length != 0 && this.ToString() == 0) { string text = this.ToString(); bool flag; if (flag) { int hashCode = text.GetHashCode(); TlsContext context = this.Context; return; } } TlsProtocol.HandshakeMessage handshakeMessage; handshakeMessage.WriteToRecordStream(this); } // Token: 0x06009398 RID: 37784 RVA: 0x0020AD14 File Offset: 0x00208F14 [Token(Token = "0x6009398")] [Address(RVA = "0x1E01F50", Offset = "0x1E00950", VA = "0x181E01F50", Slot = "40")] protected virtual void SendChangeCipherSpecMessage() { int length = new byte[] { (byte)((ulong)1L) }.Length; this.SafeReadRecord(); this.mRecordStream.SentWriteCipherSpec(); } // Token: 0x06009399 RID: 37785 RVA: 0x0020AD50 File Offset: 0x00208F50 [Token(Token = "0x6009399")] [Address(RVA = "0x1E01FF0", Offset = "0x1E009F0", VA = "0x181E01FF0", Slot = "41")] protected virtual void SendFinishedMessage() { string text = this.ToString(); TlsProtocol.HandshakeMessage handshakeMessage; int num = handshakeMessage.ReadByte(); handshakeMessage.WriteToRecordStream(this); } // Token: 0x0600939A RID: 37786 RVA: 0x0020AD78 File Offset: 0x00208F78 [Token(Token = "0x600939A")] [Address(RVA = "0x1E020E0", Offset = "0x1E00AE0", VA = "0x181E020E0", Slot = "42")] protected virtual void SendSupplementalDataMessage(IList supplementalData) { TlsProtocol.HandshakeMessage handshakeMessage; TlsProtocol.WriteSupplementalData(handshakeMessage, supplementalData); handshakeMessage.WriteToRecordStream(this); } // Token: 0x0600939B RID: 37787 RVA: 0x0020AD9C File Offset: 0x00208F9C [Token(Token = "0x600939B")] [Address(RVA = "0x1DFF460", Offset = "0x1DFDE60", VA = "0x181DFF460", Slot = "43")] protected virtual byte[] CreateVerifyData(bool isServer) { string text = this.ToString(); if (isServer) { } RecordStream recordStream = this.mRecordStream; bool flag; if (!flag) { } byte[] array; return array; } // Token: 0x0600939C RID: 37788 RVA: 0x0020ADC8 File Offset: 0x00208FC8 [Token(Token = "0x600939C")] [Address(RVA = "0x92CFF0", Offset = "0x92B9F0", VA = "0x18092CFF0", Slot = "44")] public virtual void Close() { TlsContext context = this.Context; } // Token: 0x0600939D RID: 37789 RVA: 0x0020ADDC File Offset: 0x00208FDC [Token(Token = "0x600939D")] [Address(RVA = "0x1DFF810", Offset = "0x1DFE210", VA = "0x181DFF810", Slot = "45")] protected internal virtual void Flush() { this.mRecordStream.Flush(); } // Token: 0x170017BC RID: 6076 // (get) Token: 0x0600939E RID: 37790 RVA: 0x0020ADFC File Offset: 0x00208FFC [Token(Token = "0x170017BC")] public virtual bool IsClosed { [Token(Token = "0x600939E")] [Address(RVA = "0x1E02EA0", Offset = "0x1E018A0", VA = "0x181E02EA0", Slot = "46")] get { return this.mClosed; } } // Token: 0x0600939F RID: 37791 RVA: 0x0020AE10 File Offset: 0x00209010 [Token(Token = "0x600939F")] [Address(RVA = "0x1E009C0", Offset = "0x1DFF3C0", VA = "0x181E009C0", Slot = "47")] protected virtual short ProcessMaxFragmentLengthExtension(IDictionary clientExtensions, IDictionary serverExtensions, byte alertDescription) { /* An exception occurred when decompiling this method (0600939F) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int16 BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.TlsProtocol::ProcessMaxFragmentLengthExtension(System.Collections.IDictionary,System.Collections.IDictionary,System.Byte) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_26: stloc:TlsFatalAlert(var_2_2C, newobj:TlsFatalAlert(TlsFatalAlert::.ctor, ldloc:uint8(alertDescription))) } 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: 0x060093A0 RID: 37792 RVA: 0x0020AE4C File Offset: 0x0020904C [Token(Token = "0x60093A0")] [Address(RVA = "0x1E01830", Offset = "0x1E00230", VA = "0x181E01830", Slot = "48")] protected virtual void RefuseRenegotiation() { bool flag; do { string text = this.ToString(); } while (flag); TlsContext context = this.Context; } // Token: 0x060093A1 RID: 37793 RVA: 0x0020AE74 File Offset: 0x00209074 [Token(Token = "0x60093A1")] [Address(RVA = "0x1DFE940", Offset = "0x1DFD340", VA = "0x181DFE940")] protected internal static void AssertEmpty(MemoryStream buf) { long length = buf.Length; bool canWrite = buf.CanWrite; } // Token: 0x060093A2 RID: 37794 RVA: 0x0020AE90 File Offset: 0x00209090 [Token(Token = "0x60093A2")] [Address(RVA = "0x1DFF280", Offset = "0x1DFDC80", VA = "0x181DFF280")] protected internal static byte[] CreateRandomBlock(bool useGmtUnixTime, IRandomGenerator randomGenerator) { byte[] array = new byte[32]; if (useGmtUnixTime) { long num = DateTimeUtilities.CurrentUnixMs(); ulong num2; num2 += num2; array[0] = (byte)num2; array[0] = (byte)num2; array[0] = (byte)num2; array[0] = (byte)num2; } return array; } // Token: 0x060093A3 RID: 37795 RVA: 0x0020AEE4 File Offset: 0x002090E4 [Token(Token = "0x60093A3")] [Address(RVA = "0x1DFF400", Offset = "0x1DFDE00", VA = "0x181DFF400")] protected internal static byte[] CreateRenegotiationInfo(byte[] renegotiated_connection) { return TlsUtilities.EncodeOpaque8(renegotiated_connection); } // Token: 0x060093A4 RID: 37796 RVA: 0x0020AEF8 File Offset: 0x002090F8 [Token(Token = "0x60093A4")] [Address(RVA = "0x1DFF6B0", Offset = "0x1DFE0B0", VA = "0x181DFF6B0")] protected internal static void EstablishMasterSecret(TlsContext context, TlsKeyExchange keyExchange) { int num; do { num = 0; if (num != -1) { } } while (num != 0); } // Token: 0x060093A5 RID: 37797 RVA: 0x0020AF1C File Offset: 0x0020911C [Token(Token = "0x60093A5")] [Address(RVA = "0x1DFF940", Offset = "0x1DFE340", VA = "0x181DFF940")] protected internal static byte[] GetCurrentPrfHash(TlsContext context, TlsHandshakeHash handshakeHash, byte[] sslSender) { bool flag; if (sslSender != 0 && flag) { int length = sslSender.Length; } return DigestUtilities.DoFinal(handshakeHash); } // Token: 0x060093A6 RID: 37798 RVA: 0x0020AF44 File Offset: 0x00209144 [Token(Token = "0x60093A6")] [Address(RVA = "0x1E01250", Offset = "0x1DFFC50", VA = "0x181E01250")] protected internal static IDictionary ReadExtensions(MemoryStream input) { MemoryStream memoryStream; IDictionary dictionary; do { long length = input.Length; bool canWrite = input.CanWrite; if (length >= (canWrite ? 1L : 0L)) { goto IL_5F; } byte[] array = TlsUtilities.ReadOpaque16(input); TlsProtocol.AssertEmpty(input); int num; memoryStream = new MemoryStream(array, num != 0); num = 0; dictionary = Platform.CreateHashtable(); long length2 = memoryStream.Length; bool canWrite2 = memoryStream.CanWrite; if (length2 >= (canWrite2 ? 1L : 0L)) { break; } int num2 = TlsUtilities.ReadUint16(memoryStream); } while (TlsUtilities.ReadOpaque16(memoryStream) != 0); return dictionary; IL_5F: throw new NullReferenceException(); } // Token: 0x060093A7 RID: 37799 RVA: 0x0020AFB8 File Offset: 0x002091B8 [Token(Token = "0x60093A7")] [Address(RVA = "0x1E01650", Offset = "0x1E00050", VA = "0x181E01650")] protected internal static IList ReadSupplementalDataMessage(MemoryStream input) { byte[] array = TlsUtilities.ReadFully(TlsUtilities.ReadUint24(input), input); TlsProtocol.AssertEmpty(input); int num; MemoryStream memoryStream = new MemoryStream(array, num != 0); num = 0; IList list = Platform.CreateArrayList(); long length = memoryStream.Length; bool canWrite = memoryStream.CanWrite; if (length < (canWrite ? 1L : 0L)) { int num2 = TlsUtilities.ReadUint16(memoryStream); byte[] array2 = TlsUtilities.ReadOpaque16(memoryStream); SupplementalDataEntry supplementalDataEntry = new SupplementalDataEntry(num2, array2); } return list; } // Token: 0x060093A8 RID: 37800 RVA: 0x0020B024 File Offset: 0x00209224 [Token(Token = "0x60093A8")] [Address(RVA = "0x1E023E0", Offset = "0x1E00DE0", VA = "0x181E023E0")] protected internal static void WriteExtensions(Stream output, IDictionary extensions) { MemoryStream memoryStream = new MemoryStream(); TlsProtocol.WriteSelectedExtensions(memoryStream, extensions, true); int num = 0; TlsProtocol.WriteSelectedExtensions(memoryStream, extensions, num != 0); } // Token: 0x060093A9 RID: 37801 RVA: 0x0020B050 File Offset: 0x00209250 [Token(Token = "0x60093A9")] [Address(RVA = "0x1E02640", Offset = "0x1E01040", VA = "0x181E02640")] protected internal static void WriteSelectedExtensions(Stream output, IDictionary extensions, bool selectEmpty) { int num; do { num = 0; bool flag = "{il2cpp field on {'constant5' (constant value of type Cpp2IL.Core.Analysis.ResultModels.StackPointer)}, offset 0x18}" == num; if (num != -1) { } } while (num != 0); } // Token: 0x060093AA RID: 37802 RVA: 0x0020B084 File Offset: 0x00209284 [Token(Token = "0x60093AA")] [Address(RVA = "0x1E028B0", Offset = "0x1E012B0", VA = "0x181E028B0")] protected internal static void WriteSupplementalData(Stream output, IList supplementalData) { int num; do { num = 0; MemoryStream memoryStream = new MemoryStream(); if (memoryStream != 0) { if (memoryStream == 0) { goto IL_35; } string text = memoryStream.ToString(); } ObjRef objRef; if (objRef != 0) { } if (num != -1) { } } while (num != 0); int num2 = output.ReadByte(); return; IL_35: throw new NullReferenceException(); } // Token: 0x060093AB RID: 37803 RVA: 0x0020B0D4 File Offset: 0x002092D4 [Token(Token = "0x60093AB")] [Address(RVA = "0x1DFFA70", Offset = "0x1DFE470", VA = "0x181DFFA70")] protected internal static int GetPrfAlgorithm(TlsContext context, int ciphersuite) { /* An exception occurred when decompiling this method (060093AB) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.TlsProtocol::GetPrfAlgorithm(BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.TlsContext,System.Int32) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_52: stloc:TlsFatalAlert(var_5_59, newobj:TlsFatalAlert(TlsFatalAlert::.ctor, ldloc:uint64[exp:uint8](var_6))) } 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: 0x040061E3 RID: 25059 [Token(Token = "0x40061E3")] protected const short CS_START = 0; // Token: 0x040061E4 RID: 25060 [Token(Token = "0x40061E4")] protected const short CS_CLIENT_HELLO = 1; // Token: 0x040061E5 RID: 25061 [Token(Token = "0x40061E5")] protected const short CS_SERVER_HELLO = 2; // Token: 0x040061E6 RID: 25062 [Token(Token = "0x40061E6")] protected const short CS_SERVER_SUPPLEMENTAL_DATA = 3; // Token: 0x040061E7 RID: 25063 [Token(Token = "0x40061E7")] protected const short CS_SERVER_CERTIFICATE = 4; // Token: 0x040061E8 RID: 25064 [Token(Token = "0x40061E8")] protected const short CS_CERTIFICATE_STATUS = 5; // Token: 0x040061E9 RID: 25065 [Token(Token = "0x40061E9")] protected const short CS_SERVER_KEY_EXCHANGE = 6; // Token: 0x040061EA RID: 25066 [Token(Token = "0x40061EA")] protected const short CS_CERTIFICATE_REQUEST = 7; // Token: 0x040061EB RID: 25067 [Token(Token = "0x40061EB")] protected const short CS_SERVER_HELLO_DONE = 8; // Token: 0x040061EC RID: 25068 [Token(Token = "0x40061EC")] protected const short CS_CLIENT_SUPPLEMENTAL_DATA = 9; // Token: 0x040061ED RID: 25069 [Token(Token = "0x40061ED")] protected const short CS_CLIENT_CERTIFICATE = 10; // Token: 0x040061EE RID: 25070 [Token(Token = "0x40061EE")] protected const short CS_CLIENT_KEY_EXCHANGE = 11; // Token: 0x040061EF RID: 25071 [Token(Token = "0x40061EF")] protected const short CS_CERTIFICATE_VERIFY = 12; // Token: 0x040061F0 RID: 25072 [Token(Token = "0x40061F0")] protected const short CS_CLIENT_FINISHED = 13; // Token: 0x040061F1 RID: 25073 [Token(Token = "0x40061F1")] protected const short CS_SERVER_SESSION_TICKET = 14; // Token: 0x040061F2 RID: 25074 [Token(Token = "0x40061F2")] protected const short CS_SERVER_FINISHED = 15; // Token: 0x040061F3 RID: 25075 [Token(Token = "0x40061F3")] protected const short CS_END = 16; // Token: 0x040061F4 RID: 25076 [Token(Token = "0x40061F4")] protected const short ADS_MODE_1_Nsub1 = 0; // Token: 0x040061F5 RID: 25077 [Token(Token = "0x40061F5")] protected const short ADS_MODE_0_N = 1; // Token: 0x040061F6 RID: 25078 [Token(Token = "0x40061F6")] protected const short ADS_MODE_0_N_FIRSTONLY = 2; // Token: 0x040061F7 RID: 25079 [global::Cpp2IlInjected.FieldOffset(Offset = "0x10")] [Token(Token = "0x40061F7")] private ByteQueue mApplicationDataQueue; // Token: 0x040061F8 RID: 25080 [global::Cpp2IlInjected.FieldOffset(Offset = "0x18")] [Token(Token = "0x40061F8")] private ByteQueue mAlertQueue; // Token: 0x040061F9 RID: 25081 [global::Cpp2IlInjected.FieldOffset(Offset = "0x20")] [Token(Token = "0x40061F9")] private ByteQueue mHandshakeQueue; // Token: 0x040061FA RID: 25082 [global::Cpp2IlInjected.FieldOffset(Offset = "0x28")] [Token(Token = "0x40061FA")] internal RecordStream mRecordStream; // Token: 0x040061FB RID: 25083 [global::Cpp2IlInjected.FieldOffset(Offset = "0x30")] [Token(Token = "0x40061FB")] protected SecureRandom mSecureRandom; // Token: 0x040061FC RID: 25084 [global::Cpp2IlInjected.FieldOffset(Offset = "0x38")] [Token(Token = "0x40061FC")] private TlsStream mTlsStream; // Token: 0x040061FD RID: 25085 [global::Cpp2IlInjected.FieldOffset(Offset = "0x40")] [Token(Token = "0x40061FD")] private bool mClosed; // Token: 0x040061FE RID: 25086 [global::Cpp2IlInjected.FieldOffset(Offset = "0x41")] [Token(Token = "0x40061FE")] private bool mFailedWithError; // Token: 0x040061FF RID: 25087 [global::Cpp2IlInjected.FieldOffset(Offset = "0x42")] [Token(Token = "0x40061FF")] private bool mAppDataReady; // Token: 0x04006200 RID: 25088 [global::Cpp2IlInjected.FieldOffset(Offset = "0x43")] [Token(Token = "0x4006200")] private bool mAppDataSplitEnabled; // Token: 0x04006201 RID: 25089 [global::Cpp2IlInjected.FieldOffset(Offset = "0x44")] [Token(Token = "0x4006201")] private int mAppDataSplitMode; // Token: 0x04006202 RID: 25090 [global::Cpp2IlInjected.FieldOffset(Offset = "0x48")] [Token(Token = "0x4006202")] private byte[] mExpectedVerifyData; // Token: 0x04006203 RID: 25091 [global::Cpp2IlInjected.FieldOffset(Offset = "0x50")] [Token(Token = "0x4006203")] protected TlsSession mTlsSession; // Token: 0x04006204 RID: 25092 [global::Cpp2IlInjected.FieldOffset(Offset = "0x58")] [Token(Token = "0x4006204")] protected SessionParameters mSessionParameters; // Token: 0x04006205 RID: 25093 [global::Cpp2IlInjected.FieldOffset(Offset = "0x60")] [Token(Token = "0x4006205")] protected SecurityParameters mSecurityParameters; // Token: 0x04006206 RID: 25094 [global::Cpp2IlInjected.FieldOffset(Offset = "0x68")] [Token(Token = "0x4006206")] protected Certificate mPeerCertificate; // Token: 0x04006207 RID: 25095 [global::Cpp2IlInjected.FieldOffset(Offset = "0x70")] [Token(Token = "0x4006207")] protected int[] mOfferedCipherSuites; // Token: 0x04006208 RID: 25096 [global::Cpp2IlInjected.FieldOffset(Offset = "0x78")] [Token(Token = "0x4006208")] protected byte[] mOfferedCompressionMethods; // Token: 0x04006209 RID: 25097 [global::Cpp2IlInjected.FieldOffset(Offset = "0x80")] [Token(Token = "0x4006209")] protected IDictionary mClientExtensions; // Token: 0x0400620A RID: 25098 [global::Cpp2IlInjected.FieldOffset(Offset = "0x88")] [Token(Token = "0x400620A")] protected IDictionary mServerExtensions; // Token: 0x0400620B RID: 25099 [global::Cpp2IlInjected.FieldOffset(Offset = "0x90")] [Token(Token = "0x400620B")] protected short mConnectionState; // Token: 0x0400620C RID: 25100 [global::Cpp2IlInjected.FieldOffset(Offset = "0x92")] [Token(Token = "0x400620C")] protected bool mResumedSession; // Token: 0x0400620D RID: 25101 [global::Cpp2IlInjected.FieldOffset(Offset = "0x93")] [Token(Token = "0x400620D")] protected bool mReceivedChangeCipherSpec; // Token: 0x0400620E RID: 25102 [global::Cpp2IlInjected.FieldOffset(Offset = "0x94")] [Token(Token = "0x400620E")] protected bool mSecureRenegotiation; // Token: 0x0400620F RID: 25103 [global::Cpp2IlInjected.FieldOffset(Offset = "0x95")] [Token(Token = "0x400620F")] protected bool mAllowCertificateStatus; // Token: 0x04006210 RID: 25104 [global::Cpp2IlInjected.FieldOffset(Offset = "0x96")] [Token(Token = "0x4006210")] protected bool mExpectSessionTicket; // Token: 0x04006211 RID: 25105 [global::Cpp2IlInjected.FieldOffset(Offset = "0x97")] [Token(Token = "0x4006211")] protected bool mBlocking; // Token: 0x04006212 RID: 25106 [global::Cpp2IlInjected.FieldOffset(Offset = "0x98")] [Token(Token = "0x4006212")] protected ByteQueueStream mInputBuffers; // Token: 0x04006213 RID: 25107 [global::Cpp2IlInjected.FieldOffset(Offset = "0xA0")] [Token(Token = "0x4006213")] protected ByteQueueStream mOutputBuffer; // Token: 0x020015A8 RID: 5544 [Token(Token = "0x20015A8")] internal class HandshakeMessage : MemoryStream { // Token: 0x060093AC RID: 37804 RVA: 0x0020B13C File Offset: 0x0020933C [Token(Token = "0x60093AC")] [Address(RVA = "0x1DFBF00", Offset = "0x1DFA900", VA = "0x181DFBF00")] internal HandshakeMessage(byte handshakeType) { } // Token: 0x060093AD RID: 37805 RVA: 0x0020B14C File Offset: 0x0020934C [Token(Token = "0x60093AD")] [Address(RVA = "0x1DFBF10", Offset = "0x1DFA910", VA = "0x181DFBF10")] internal HandshakeMessage(byte handshakeType, int length) : base((int)handshakeType) { ((IDisposable)this).Dispose(); } // Token: 0x060093AE RID: 37806 RVA: 0x0020B16C File Offset: 0x0020936C [Token(Token = "0x60093AE")] [Address(RVA = "0x1DFBEC0", Offset = "0x1DFA8C0", VA = "0x181DFBEC0")] internal void Write(byte[] data) { int num = this.ReadByte(); } // Token: 0x060093AF RID: 37807 RVA: 0x0020B188 File Offset: 0x00209388 [Token(Token = "0x60093AF")] [Address(RVA = "0x1DFBCE0", Offset = "0x1DFA6E0", VA = "0x181DFBCE0")] internal void WriteToRecordStream(TlsProtocol protocol) { bool canWrite = this.CanWrite; long position = this.Position; bool canWrite2 = this.CanWrite; Platform.Dispose(this); } } } }