using System; using System.Collections; using System.IO; using System.Runtime.InteropServices; using BestHTTP.SecureProtocol.Org.BouncyCastle.Math; using BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities; using Cpp2IlInjected; namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls { // Token: 0x020015BC RID: 5564 [Token(Token = "0x20015BC")] [StructLayout(3)] public abstract class TlsSrpUtilities { // Token: 0x06009432 RID: 37938 RVA: 0x0020CEE0 File Offset: 0x0020B0E0 [Token(Token = "0x6009432")] [Address(RVA = "0x1E0AC60", Offset = "0x1E09660", VA = "0x181E0AC60")] public static void AddSrpExtension(IDictionary extensions, byte[] identity) { while (identity == 0) { } byte[] array = TlsUtilities.EncodeOpaque8(identity); } // Token: 0x06009433 RID: 37939 RVA: 0x0020CEF8 File Offset: 0x0020B0F8 [Token(Token = "0x6009433")] [Address(RVA = "0x1E0ADF0", Offset = "0x1E097F0", VA = "0x181E0ADF0")] public static byte[] GetSrpExtension(IDictionary extensions) { byte[] extensionData = TlsUtilities.GetExtensionData(extensions, 12); if (extensionData == 0) { return extensionData; } int num; MemoryStream memoryStream = new MemoryStream(extensionData, num != 0); num = 0; byte[] array = TlsUtilities.ReadOpaque8(memoryStream); TlsProtocol.AssertEmpty(memoryStream); return array; } // Token: 0x06009434 RID: 37940 RVA: 0x0020CF2C File Offset: 0x0020B12C [Token(Token = "0x6009434")] [Address(RVA = "0x1E0AD60", Offset = "0x1E09760", VA = "0x181E0AD60")] public static byte[] CreateSrpExtension(byte[] identity) { while (identity == 0) { } return TlsUtilities.EncodeOpaque8(identity); } // Token: 0x06009435 RID: 37941 RVA: 0x0020CF44 File Offset: 0x0020B144 [Token(Token = "0x6009435")] [Address(RVA = "0x1E0AEF0", Offset = "0x1E098F0", VA = "0x181E0AEF0")] public static byte[] ReadSrpExtension(byte[] extensionData) { /* An exception occurred when decompiling this method (06009435) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Byte[] BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.TlsSrpUtilities::ReadSrpExtension(System.Byte[]) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_1D: stloc:ArgumentNullException(var_3_27, newobj:ArgumentNullException(ArgumentNullException::.ctor, ldstr:string("extensionData"))) } 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: 0x06009436 RID: 37942 RVA: 0x0020CF78 File Offset: 0x0020B178 [Token(Token = "0x6009436")] [Address(RVA = "0x1E0AFC0", Offset = "0x1E099C0", VA = "0x181E0AFC0")] public static BigInteger ReadSrpParameter(Stream input) { byte[] array = TlsUtilities.ReadOpaque16(input); return new BigInteger(1, array); } // Token: 0x06009437 RID: 37943 RVA: 0x0020CF94 File Offset: 0x0020B194 [Token(Token = "0x6009437")] [Address(RVA = "0x1E0B050", Offset = "0x1E09A50", VA = "0x181E0B050")] public static void WriteSrpParameter(BigInteger x, Stream output) { TlsUtilities.WriteOpaque16(BigIntegers.AsUnsignedByteArray(x), output); } // Token: 0x06009438 RID: 37944 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x6009438")] [Address(RVA = "0x1E0AEE0", Offset = "0x1E098E0", VA = "0x181E0AEE0")] public static bool IsSrpCipherSuite(int cipherSuite) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06009439 RID: 37945 RVA: 0x0020CFB0 File Offset: 0x0020B1B0 [Token(Token = "0x6009439")] [Address(RVA = "0x3C1670", Offset = "0x3C0070", VA = "0x1803C1670")] protected TlsSrpUtilities() { } } }