using System; using System.Runtime.InteropServices; using System.Threading; using Cpp2IlInjected; namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls { // Token: 0x020015B5 RID: 5557 [Token(Token = "0x20015B5")] [StructLayout(3)] internal class TlsSessionImpl : TlsSession { // Token: 0x0600940A RID: 37898 RVA: 0x0020C8DC File Offset: 0x0020AADC [Token(Token = "0x600940A")] [Address(RVA = "0x1E09480", Offset = "0x1E07E80", VA = "0x181E09480")] internal TlsSessionImpl(byte[] sessionID, SessionParameters sessionParameters) { /* An exception occurred when decompiling this method (0600940A) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.TlsSessionImpl::.ctor(System.Byte[],BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.SessionParameters) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_3C: stloc:ArgumentNullException(var_2_46, newobj:ArgumentNullException(ArgumentNullException::.ctor, ldstr:string("sessionID"))) } 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: 0x0600940B RID: 37899 RVA: 0x0020C930 File Offset: 0x0020AB30 [Token(Token = "0x600940B")] [Address(RVA = "0x1E092F0", Offset = "0x1E07CF0", VA = "0x181E092F0", Slot = "8")] public virtual SessionParameters ExportSessionParameters() { int num; SessionParameters sessionParameters2; do { num = 0; SessionParameters sessionParameters = this.mSessionParameters; if (sessionParameters == 0) { } sessionParameters2 = sessionParameters.Copy(); Monitor.Exit(this); if (num != -1) { } } while (num != 0); return sessionParameters2; } // Token: 0x170017C4 RID: 6084 // (get) Token: 0x0600940C RID: 37900 RVA: 0x0020C960 File Offset: 0x0020AB60 [Token(Token = "0x170017C4")] public virtual byte[] SessionID { [Token(Token = "0x600940C")] [Address(RVA = "0x1E09670", Offset = "0x1E08070", VA = "0x181E09670", Slot = "9")] get { int num; byte[] array; do { num = 0; array = this.mSessionID; Monitor.Exit(this); if (num != -1) { } } while (num != 0); return array; } } // Token: 0x0600940D RID: 37901 RVA: 0x0020C988 File Offset: 0x0020AB88 [Token(Token = "0x600940D")] [Address(RVA = "0x1E093D0", Offset = "0x1E07DD0", VA = "0x181E093D0", Slot = "10")] public virtual void Invalidate() { int num; do { num = 0; this.mResumable = num != 0; Monitor.Exit(this); if (num != -1) { } } while (num != 0); } // Token: 0x170017C5 RID: 6085 // (get) Token: 0x0600940E RID: 37902 RVA: 0x0020C9AC File Offset: 0x0020ABAC [Token(Token = "0x170017C5")] public virtual bool IsResumable { [Token(Token = "0x600940E")] [Address(RVA = "0x1E095A0", Offset = "0x1E07FA0", VA = "0x181E095A0", Slot = "11")] get { int num; bool flag; do { num = 0; flag = this.mResumable; Monitor.Exit(this); if (num != -1) { } } while (num != 0); return flag; } } // Token: 0x04006230 RID: 25136 [global::Cpp2IlInjected.FieldOffset(Offset = "0x10")] [Token(Token = "0x4006230")] internal readonly byte[] mSessionID; // Token: 0x04006231 RID: 25137 [global::Cpp2IlInjected.FieldOffset(Offset = "0x18")] [Token(Token = "0x4006231")] internal readonly SessionParameters mSessionParameters; // Token: 0x04006232 RID: 25138 [global::Cpp2IlInjected.FieldOffset(Offset = "0x20")] [Token(Token = "0x4006232")] internal bool mResumable; } }