using System; using System.Collections; using System.Runtime.InteropServices; using BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities; using Cpp2IlInjected; namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls { // Token: 0x0200157C RID: 5500 [Token(Token = "0x200157C")] [StructLayout(3)] public class SrpTlsClient : AbstractTlsClient { // Token: 0x0600921A RID: 37402 RVA: 0x002062E8 File Offset: 0x002044E8 [Token(Token = "0x600921A")] [Address(RVA = "0x1E8D300", Offset = "0x1E8BD00", VA = "0x181E8D300")] public SrpTlsClient(byte[] identity, byte[] password) { DefaultTlsCipherFactory defaultTlsCipherFactory = new DefaultTlsCipherFactory(); DefaultTlsSrpGroupVerifier defaultTlsSrpGroupVerifier = new DefaultTlsSrpGroupVerifier(); } // Token: 0x0600921B RID: 37403 RVA: 0x00206304 File Offset: 0x00204504 [Token(Token = "0x600921B")] [Address(RVA = "0x1E8D3B0", Offset = "0x1E8BDB0", VA = "0x181E8D3B0")] public SrpTlsClient(TlsCipherFactory cipherFactory, byte[] identity, byte[] password) { DefaultTlsSrpGroupVerifier defaultTlsSrpGroupVerifier = new DefaultTlsSrpGroupVerifier(); } // Token: 0x0600921C RID: 37404 RVA: 0x00206318 File Offset: 0x00204518 [Token(Token = "0x600921C")] [Address(RVA = "0x1E8D260", Offset = "0x1E8BC60", VA = "0x181E8D260")] public SrpTlsClient(TlsCipherFactory cipherFactory, TlsSrpGroupVerifier groupVerifier, byte[] identity, byte[] password) : base(cipherFactory) { this.mGroupVerifier = groupVerifier; byte[] array = Arrays.Clone(identity); this.mIdentity = array; byte[] array2; this.mPassword = array2; } // Token: 0x17001797 RID: 6039 // (get) Token: 0x0600921D RID: 37405 RVA: 0x00206348 File Offset: 0x00204548 [Token(Token = "0x17001797")] protected virtual bool RequireSrpServerExtension { [Token(Token = "0x600921D")] [Address(RVA = "0x413970", Offset = "0x412370", VA = "0x180413970", Slot = "61")] get { } } // Token: 0x0600921E RID: 37406 RVA: 0x00206358 File Offset: 0x00204558 [Token(Token = "0x600921E")] [Address(RVA = "0x1E8D010", Offset = "0x1E8BA10", VA = "0x181E8D010", Slot = "50")] public override int[] GetCipherSuites() { return new int[] { (int)((ulong)49182L) }; } // Token: 0x0600921F RID: 37407 RVA: 0x00206384 File Offset: 0x00204584 [Token(Token = "0x600921F")] [Address(RVA = "0x1E8D070", Offset = "0x1E8BA70", VA = "0x181E8D070", Slot = "47")] public override IDictionary GetClientExtensions() { IDictionary clientExtensions = base.GetClientExtensions(); if (clientExtensions == 0) { IDictionary dictionary = Platform.CreateHashtable(); } byte[] array = this.mIdentity; TlsSrpUtilities.AddSrpExtension(clientExtensions, array); return clientExtensions; } // Token: 0x06009220 RID: 37408 RVA: 0x002063B4 File Offset: 0x002045B4 [Token(Token = "0x6009220")] [Address(RVA = "0x1E8D1A0", Offset = "0x1E8BBA0", VA = "0x181E8D1A0", Slot = "55")] public override void ProcessServerExtensions(IDictionary serverExtensions) { bool flag; if (!flag) { } base.ProcessServerExtensions(serverExtensions); } // Token: 0x06009221 RID: 37409 RVA: 0x002063CC File Offset: 0x002045CC [Token(Token = "0x6009221")] [Address(RVA = "0x1E8D0F0", Offset = "0x1E8BAF0", VA = "0x181E8D0F0", Slot = "57")] public override TlsKeyExchange GetKeyExchange() { /* An exception occurred when decompiling this method (06009221) ICSharpCode.Decompiler.DecompilerException: Error decompiling BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.TlsKeyExchange BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.SrpTlsClient::GetKeyExchange() ---> System.Exception: Basic block has to end with unconditional control flow. { Block_0: stloc:int32[](var_2_18, call:int32[](AbstractTlsClient::GetCipherSuites, ldloc:SrpTlsClient[exp:AbstractTlsClient](this))) } 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: 0x06009222 RID: 37410 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x6009222")] [Address(RVA = "0x1E8CFC0", Offset = "0x1E8B9C0", VA = "0x181E8CFC0", Slot = "58")] public override TlsAuthentication GetAuthentication() { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06009223 RID: 37411 RVA: 0x002063F4 File Offset: 0x002045F4 [Token(Token = "0x6009223")] [Address(RVA = "0x1E8CF20", Offset = "0x1E8B920", VA = "0x181E8CF20", Slot = "62")] protected virtual TlsKeyExchange CreateSrpKeyExchange(int keyExchange) { /* An exception occurred when decompiling this method (06009223) ICSharpCode.Decompiler.DecompilerException: Error decompiling BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.TlsKeyExchange BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.SrpTlsClient::CreateSrpKeyExchange(System.Int32) ---> System.Exception: Basic block has to end with unconditional control flow. { Block_0: stloc:IList(var_0_06, ldfld:IList(AbstractTlsClient::mSupportedSignatureAlgorithms, ldloc:SrpTlsClient[exp:AbstractTlsClient](this))) stloc:TlsSrpGroupVerifier(var_1_0D, ldfld:TlsSrpGroupVerifier(SrpTlsClient::mGroupVerifier, ldloc:SrpTlsClient(this))) stloc:uint8[](var_2_14, ldfld:uint8[](SrpTlsClient::mIdentity, ldloc:SrpTlsClient(this))) stloc:uint8[](var_3_1B, ldfld:uint8[](SrpTlsClient::mPassword, ldloc:SrpTlsClient(this))) stloc:TlsSrpKeyExchange(var_4_26, newobj:TlsSrpKeyExchange(TlsSrpKeyExchange::.ctor, ldloc:int32(keyExchange), ldloc:IList(var_0_06), ldloc:TlsSrpGroupVerifier(var_1_0D), ldloc:uint8[](var_2_14), ldloc:uint8[](var_3_1B))) } 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: 0x04006185 RID: 24965 [global::Cpp2IlInjected.FieldOffset(Offset = "0x50")] [Token(Token = "0x4006185")] protected TlsSrpGroupVerifier mGroupVerifier; // Token: 0x04006186 RID: 24966 [global::Cpp2IlInjected.FieldOffset(Offset = "0x58")] [Token(Token = "0x4006186")] protected byte[] mIdentity; // Token: 0x04006187 RID: 24967 [global::Cpp2IlInjected.FieldOffset(Offset = "0x60")] [Token(Token = "0x4006187")] protected byte[] mPassword; } }