using System; using System.Collections; using System.Runtime.CompilerServices; using System.Threading; using BestHTTP.SecureProtocol.Org.BouncyCastle.Math.EC.Endo; using BestHTTP.SecureProtocol.Org.BouncyCastle.Math.EC.Multiplier; using BestHTTP.SecureProtocol.Org.BouncyCastle.Math.Field; using BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities; using Cpp2IlInjected; namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Math.EC { // Token: 0x02001ACE RID: 6862 [Token(Token = "0x2001ACE")] public abstract class ECCurve { // Token: 0x0600A3FB RID: 41979 RVA: 0x0022CD58 File Offset: 0x0022AF58 [Token(Token = "0x600A3FB")] [Address(RVA = "0x7D4A80", Offset = "0x7D3A80", VA = "0x1807D4A80")] public static int[] GetAllCoordinateSystems() { int[] array = new int[8]; RuntimeHelpers.InitializeArray(array, fieldof(.643F7C1D25ADAFA2F5ED135D8331618A14714ED2).FieldHandle); return array; } // Token: 0x0600A3FC RID: 41980 RVA: 0x0022CD78 File Offset: 0x0022AF78 [Token(Token = "0x600A3FC")] [Address(RVA = "0x493D90", Offset = "0x492D90", VA = "0x180493D90")] protected ECCurve(IFiniteField field) { this.m_field = field; } // Token: 0x170019DC RID: 6620 // (get) Token: 0x0600A3FD RID: 41981 [Token(Token = "0x170019DC")] public abstract int FieldSize { [Token(Token = "0x600A3FD")] [Address(Slot = "4")] get; } // Token: 0x0600A3FE RID: 41982 [Token(Token = "0x600A3FE")] [Address(Slot = "5")] public abstract ECFieldElement FromBigInteger(BigInteger x); // Token: 0x0600A3FF RID: 41983 [Token(Token = "0x600A3FF")] [Address(Slot = "6")] public abstract bool IsValidFieldElement(BigInteger x); // Token: 0x0600A400 RID: 41984 RVA: 0x0022CD94 File Offset: 0x0022AF94 [Token(Token = "0x600A400")] [Address(RVA = "0x7D3F40", Offset = "0x7D2F40", VA = "0x1807D3F40", Slot = "7")] public virtual ECCurve.Config Configure() { int coord = this.m_coord; ECEndomorphism endomorphism = this.m_endomorphism; ECMultiplier multiplier = this.m_multiplier; ECCurve.Config config; config.coord = coord; config.endomorphism = endomorphism; config.multiplier = multiplier; config.outer = this; return config; } // Token: 0x0600A401 RID: 41985 RVA: 0x0022CDD4 File Offset: 0x0022AFD4 [Token(Token = "0x600A401")] [Address(RVA = "0x7D5620", Offset = "0x7D4620", VA = "0x1807D5620", Slot = "8")] public virtual ECPoint ValidatePoint(BigInteger x, BigInteger y) { /* An exception occurred when decompiling this method (0600A401) ICSharpCode.Decompiler.DecompilerException: Error decompiling BestHTTP.SecureProtocol.Org.BouncyCastle.Math.EC.ECPoint BestHTTP.SecureProtocol.Org.BouncyCastle.Math.EC.ECCurve::ValidatePoint(BestHTTP.SecureProtocol.Org.BouncyCastle.Math.BigInteger,BestHTTP.SecureProtocol.Org.BouncyCastle.Math.BigInteger) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_15: stloc:ArgumentException(var_2_1F, newobj:ArgumentException(ArgumentException::.ctor, ldstr:string("Invalid point coordinates"))) } 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: 0x0600A402 RID: 41986 RVA: 0x0022CE00 File Offset: 0x0022B000 [Token(Token = "0x600A402")] [Address(RVA = "0x7D56E0", Offset = "0x7D46E0", VA = "0x1807D56E0", Slot = "9")] [Obsolete] public virtual ECPoint ValidatePoint(BigInteger x, BigInteger y, bool withCompression) { /* An exception occurred when decompiling this method (0600A402) ICSharpCode.Decompiler.DecompilerException: Error decompiling BestHTTP.SecureProtocol.Org.BouncyCastle.Math.EC.ECPoint BestHTTP.SecureProtocol.Org.BouncyCastle.Math.EC.ECCurve::ValidatePoint(BestHTTP.SecureProtocol.Org.BouncyCastle.Math.BigInteger,BestHTTP.SecureProtocol.Org.BouncyCastle.Math.BigInteger,System.Boolean) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_1E: stloc:ArgumentException(var_2_28, newobj:ArgumentException(ArgumentException::.ctor, ldstr:string("Invalid point coordinates"))) } 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: 0x0600A403 RID: 41987 RVA: 0x0022CE38 File Offset: 0x0022B038 [Token(Token = "0x600A403")] [Address(RVA = "0x7D4340", Offset = "0x7D3340", VA = "0x1807D4340", Slot = "10")] public virtual ECPoint CreatePoint(BigInteger x, BigInteger y) { return this.CreatePoint(x, y); } // Token: 0x0600A404 RID: 41988 RVA: 0x0022CE50 File Offset: 0x0022B050 [Token(Token = "0x600A404")] [Address(RVA = "0x7D42B0", Offset = "0x7D32B0", VA = "0x1807D42B0", Slot = "11")] [Obsolete] public virtual ECPoint CreatePoint(BigInteger x, BigInteger y, bool withCompression) { /* An exception occurred when decompiling this method (0600A404) ICSharpCode.Decompiler.DecompilerException: Error decompiling BestHTTP.SecureProtocol.Org.BouncyCastle.Math.EC.ECPoint BestHTTP.SecureProtocol.Org.BouncyCastle.Math.EC.ECCurve::CreatePoint(BestHTTP.SecureProtocol.Org.BouncyCastle.Math.BigInteger,BestHTTP.SecureProtocol.Org.BouncyCastle.Math.BigInteger,System.Boolean) ---> System.Exception: Basic block has to end with unconditional control flow. { Block_0: stloc:int32(var_0_06, callvirtgetter:int32(ECCurve::get_FieldSize, ldloc:ECCurve(this))) stloc:int32(var_1_0D, callvirtgetter:int32(ECCurve::get_FieldSize, ldloc:ECCurve(this))) stloc:int32(var_2_14, callgetter:int32(ECCurve::get_FieldSize, ldloc:ECCurve(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: 0x0600A405 RID: 41989 [Token(Token = "0x600A405")] [Address(Slot = "12")] protected abstract ECCurve CloneCurve(); // Token: 0x0600A406 RID: 41990 [Token(Token = "0x600A406")] [Address(Slot = "13")] protected internal abstract ECPoint CreateRawPoint(ECFieldElement x, ECFieldElement y, bool withCompression); // Token: 0x0600A407 RID: 41991 [Token(Token = "0x600A407")] [Address(Slot = "14")] protected internal abstract ECPoint CreateRawPoint(ECFieldElement x, ECFieldElement y, ECFieldElement[] zs, bool withCompression); // Token: 0x0600A408 RID: 41992 RVA: 0x0022CE74 File Offset: 0x0022B074 [Token(Token = "0x600A408")] [Address(RVA = "0x7D4200", Offset = "0x7D3200", VA = "0x1807D4200", Slot = "15")] protected virtual ECMultiplier CreateDefaultMultiplier() { /* An exception occurred when decompiling this method (0600A408) ICSharpCode.Decompiler.DecompilerException: Error decompiling BestHTTP.SecureProtocol.Org.BouncyCastle.Math.EC.Multiplier.ECMultiplier BestHTTP.SecureProtocol.Org.BouncyCastle.Math.EC.ECCurve::CreateDefaultMultiplier() ---> System.Exception: Basic block has to end with unconditional control flow. { Block_0: stloc:WNafL2RMultiplier(var_0_05, newobj:WNafL2RMultiplier(WNafL2RMultiplier::.ctor)) } 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: 0x0600A409 RID: 41993 RVA: 0x0022CE88 File Offset: 0x0022B088 [Token(Token = "0x600A409")] [Address(RVA = "0x7D5610", Offset = "0x7D4610", VA = "0x1807D5610", Slot = "16")] public virtual bool SupportsCoordinateSystem(int coord) { return coord == 0; } // Token: 0x0600A40A RID: 41994 RVA: 0x0022CE9C File Offset: 0x0022B09C [Token(Token = "0x600A40A")] [Address(RVA = "0x7D4C90", Offset = "0x7D3C90", VA = "0x1807D4C90", Slot = "17")] public virtual PreCompInfo GetPreCompInfo(ECPoint point, string name) { for (;;) { int num = 0; IDictionary preCompTable = point.m_preCompTable; Monitor.Exit(point); if (num == 0) { if (num != -1) { } ECLookupTable eclookupTable; if (preCompTable == 0 || ((eclookupTable == 0 || eclookupTable != 0) && num == 0)) { break; } } } throw new NullReferenceException(); } // Token: 0x0600A40B RID: 41995 RVA: 0x0022CED8 File Offset: 0x0022B0D8 [Token(Token = "0x600A40B")] [Address(RVA = "0x7D5340", Offset = "0x7D4340", VA = "0x1807D5340", Slot = "18")] public virtual PreCompInfo Precompute(ECPoint point, string name, IPreCompCallback callback) { int num; do { num = 0; IDictionary dictionary = point.m_preCompTable; if (dictionary == 0) { IDictionary dictionary2 = Platform.CreateHashtable(4); point.m_preCompTable = dictionary2; } int num2 = 0; Monitor.Exit(point); if (num != 0) { goto IL_64; } if (num != -1) { } if (num == 0) { } if (num == 0) { goto IL_6A; } if (num != 0 && num2 < typeof(IPreCompCallback).TypeHandle) { num2 += num2; num2++; } dictionary += dictionary; num++; num += 19; } while (num != 0); throw new NullReferenceException(); IL_64: throw new NullReferenceException(); IL_6A: throw new NullReferenceException(); } // Token: 0x0600A40C RID: 41996 RVA: 0x0022CF54 File Offset: 0x0022B154 [Token(Token = "0x600A40C")] [Address(RVA = "0x7D4E80", Offset = "0x7D3E80", VA = "0x1807D4E80", Slot = "19")] public virtual ECPoint ImportPoint(ECPoint p) { bool flag = p.SatisfiesOrder(); if (this != flag) { if (p.m_x == (ulong)0L && p.m_y == (ulong)0L) { int fieldSize = this.FieldSize; } bool flag2 = p.IsNormalized(); short num; string text = num.ToString(); ushort num2; string text2 = num2.ToString(); ECPoint ecpoint; return ecpoint; } return p; } // Token: 0x0600A40D RID: 41997 RVA: 0x0022CFAC File Offset: 0x0022B1AC [Token(Token = "0x600A40D")] [Address(RVA = "0x7D5300", Offset = "0x7D4300", VA = "0x1807D5300", Slot = "20")] public virtual void NormalizeAll(ECPoint[] points) { this.NormalizeAll(points); } // Token: 0x0600A40E RID: 41998 RVA: 0x0022CFC8 File Offset: 0x0022B1C8 [Token(Token = "0x600A40E")] [Address(RVA = "0x7D4FC0", Offset = "0x7D3FC0", VA = "0x1807D4FC0", Slot = "21")] public virtual void NormalizeAll(ECPoint[] points, int off, int len, ECFieldElement iso) { /* An exception occurred when decompiling this method (0600A40E) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Math.EC.ECCurve::NormalizeAll(BestHTTP.SecureProtocol.Org.BouncyCastle.Math.EC.ECPoint[],System.Int32,System.Int32,BestHTTP.SecureProtocol.Org.BouncyCastle.Math.EC.ECFieldElement) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_A2: stloc:ArgumentException(var_10_B1, newobj:ArgumentException(ArgumentException::.ctor, ldstr:string("not valid for affine coordinates"), ldstr:string("iso"))) } 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: 0x170019DD RID: 6621 // (get) Token: 0x0600A40F RID: 41999 [Token(Token = "0x170019DD")] public abstract ECPoint Infinity { [Token(Token = "0x600A40F")] [Address(Slot = "22")] get; } // Token: 0x170019DE RID: 6622 // (get) Token: 0x0600A410 RID: 42000 RVA: 0x0022D088 File Offset: 0x0022B288 [Token(Token = "0x170019DE")] public virtual IFiniteField Field { [Token(Token = "0x600A410")] [Address(RVA = "0x411530", Offset = "0x410530", VA = "0x180411530", Slot = "23")] get { return this.m_field; } } // Token: 0x170019DF RID: 6623 // (get) Token: 0x0600A411 RID: 42001 RVA: 0x0022D09C File Offset: 0x0022B29C [Token(Token = "0x170019DF")] public virtual ECFieldElement A { [Token(Token = "0x600A411")] [Address(RVA = "0x4157B0", Offset = "0x4147B0", VA = "0x1804157B0", Slot = "24")] get { return this.m_a; } } // Token: 0x170019E0 RID: 6624 // (get) Token: 0x0600A412 RID: 42002 RVA: 0x0022D0B0 File Offset: 0x0022B2B0 [Token(Token = "0x170019E0")] public virtual ECFieldElement B { [Token(Token = "0x600A412")] [Address(RVA = "0x4157C0", Offset = "0x4147C0", VA = "0x1804157C0", Slot = "25")] get { return this.m_b; } } // Token: 0x170019E1 RID: 6625 // (get) Token: 0x0600A413 RID: 42003 RVA: 0x0022D0C4 File Offset: 0x0022B2C4 [Token(Token = "0x170019E1")] public virtual BigInteger Order { [Token(Token = "0x600A413")] [Address(RVA = "0x4157D0", Offset = "0x4147D0", VA = "0x1804157D0", Slot = "26")] get { return this.m_order; } } // Token: 0x170019E2 RID: 6626 // (get) Token: 0x0600A414 RID: 42004 RVA: 0x0022D0D8 File Offset: 0x0022B2D8 [Token(Token = "0x170019E2")] public virtual BigInteger Cofactor { [Token(Token = "0x600A414")] [Address(RVA = "0x4157E0", Offset = "0x4147E0", VA = "0x1804157E0", Slot = "27")] get { return this.m_cofactor; } } // Token: 0x170019E3 RID: 6627 // (get) Token: 0x0600A415 RID: 42005 RVA: 0x0022D0EC File Offset: 0x0022B2EC [Token(Token = "0x170019E3")] public virtual int CoordinateSystem { [Token(Token = "0x600A415")] [Address(RVA = "0x42B830", Offset = "0x42A830", VA = "0x18042B830", Slot = "28")] get { return this.m_coord; } } // Token: 0x0600A416 RID: 42006 RVA: 0x0022D100 File Offset: 0x0022B300 [Token(Token = "0x600A416")] [Address(RVA = "0x7D3FD0", Offset = "0x7D2FD0", VA = "0x1807D3FD0", Slot = "29")] public virtual ECLookupTable CreateCacheSafeLookupTable(ECPoint[] points, int off, int len) { string text = this.ToString(); string text2 = text * len; text2 += text2; byte[] array = new byte[text2]; int num = 0; if (len > 0) { ECPoint ecpoint = points[len]; string text3 = ecpoint.m_x.ToString(); string text4 = ecpoint.m_y.ToString(); byte[] array2; int num2 = array2.Length; bool flag = num2 > text; num2 -= (flag ? 1 : 0); byte[] array3; int num3 = array3.Length; bool flag2 = num3 > text; num -= num2; num += text; num3 -= (flag2 ? 1 : 0); Array.Copy(array2, flag ? 1 : 0, array, num, num2); num += text; num -= num3; num += text; flag = flag2; Array.Copy(array3, flag ? 1 : 0, array, num, num3); num += text; } ECCurve.DefaultLookupTable defaultLookupTable; defaultLookupTable.m_table = array; defaultLookupTable.m_size = 0; defaultLookupTable.m_outer = this; throw new NullReferenceException(); } // Token: 0x0600A417 RID: 42007 RVA: 0x0022D1D4 File Offset: 0x0022B3D4 [Token(Token = "0x600A417")] [Address(RVA = "0x7D3CF0", Offset = "0x7D2CF0", VA = "0x1807D3CF0", Slot = "30")] protected virtual void CheckPoint(ECPoint point) { /* An exception occurred when decompiling this method (0600A417) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Math.EC.ECCurve::CheckPoint(BestHTTP.SecureProtocol.Org.BouncyCastle.Math.EC.ECPoint) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_10: stloc:ArgumentException(var_1_1F, newobj:ArgumentException(ArgumentException::.ctor, ldstr:string("must be non-null and on this curve"), ldstr:string("point"))) } 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: 0x0600A418 RID: 42008 RVA: 0x0022D200 File Offset: 0x0022B400 [Token(Token = "0x600A418")] [Address(RVA = "0x7D3F00", Offset = "0x7D2F00", VA = "0x1807D3F00", Slot = "31")] protected virtual void CheckPoints(ECPoint[] points) { this.CheckPoints(points); } // Token: 0x0600A419 RID: 42009 RVA: 0x0022D21C File Offset: 0x0022B41C [Token(Token = "0x600A419")] [Address(RVA = "0x7D3D80", Offset = "0x7D2D80", VA = "0x1807D3D80", Slot = "32")] protected virtual void CheckPoints(ECPoint[] points, int off, int len) { /* An exception occurred when decompiling this method (0600A419) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Math.EC.ECCurve::CheckPoints(BestHTTP.SecureProtocol.Org.BouncyCastle.Math.EC.ECPoint[],System.Int32,System.Int32) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_3E: stloc:ArgumentException(var_4_4D, newobj:ArgumentException(ArgumentException::.ctor, ldstr:string("entries must be null or on this curve"), ldstr:string("points"))) } 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: 0x0600A41A RID: 42010 RVA: 0x0022D278 File Offset: 0x0022B478 [Token(Token = "0x600A41A")] [Address(RVA = "0x7D4830", Offset = "0x7D3830", VA = "0x1807D4830", Slot = "33")] public virtual bool Equals(ECCurve other) { if (this != other) { if (other != 0) { ECPoint infinity = this.Infinity; if (other.Infinity != 0) { IFiniteField field = this.Field; if (other.Field != 0) { string text = this.A.ToString(); string text2 = other.A.ToString(); object obj = ((ICloneable)text).Clone(); } } } } return true; } // Token: 0x0600A41B RID: 42011 RVA: 0x0022D2DC File Offset: 0x0022B4DC [Token(Token = "0x600A41B")] [Address(RVA = "0x7D49F0", Offset = "0x7D39F0", VA = "0x1807D49F0", Slot = "0")] public override bool Equals(object obj) { /* An exception occurred when decompiling this method (0600A41B) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean BestHTTP.SecureProtocol.Org.BouncyCastle.Math.EC.ECCurve::Equals(System.Object) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_04: stloc:int32(var_1_0C, callgetter:int32(ECCurve::get_FieldSize, ldloc:ECCurve(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: 0x0600A41C RID: 42012 RVA: 0x0022D2F8 File Offset: 0x0022B4F8 [Token(Token = "0x600A41C")] [Address(RVA = "0x7D4AD0", Offset = "0x7D3AD0", VA = "0x1807D4AD0", Slot = "2")] public override int GetHashCode() { this.Infinity.Finalize(); IFiniteField field = this.Field; this.A.ToString().Finalize(); throw new NullReferenceException(); } // Token: 0x0600A41D RID: 42013 [Token(Token = "0x600A41D")] [Address(Slot = "34")] protected abstract ECPoint DecompressPoint(int yTilde, BigInteger X1); // Token: 0x0600A41E RID: 42014 RVA: 0x0022D32C File Offset: 0x0022B52C [Token(Token = "0x600A41E")] [Address(RVA = "0x417680", Offset = "0x416680", VA = "0x180417680", Slot = "35")] public virtual ECEndomorphism GetEndomorphism() { return this.m_endomorphism; } // Token: 0x0600A41F RID: 42015 RVA: 0x0022D340 File Offset: 0x0022B540 [Token(Token = "0x600A41F")] [Address(RVA = "0x7D4BE0", Offset = "0x7D3BE0", VA = "0x1807D4BE0", Slot = "36")] public virtual ECMultiplier GetMultiplier() { int num; ECMultiplier multiplier; do { num = 0; multiplier = this.m_multiplier; if (multiplier == 0) { ECPoint ecpoint; this.m_multiplier = ecpoint; } Monitor.Exit(this); } while (num != 0); return multiplier; } // Token: 0x0600A420 RID: 42016 RVA: 0x0022D36C File Offset: 0x0022B56C [Token(Token = "0x600A420")] [Address(RVA = "0x7D4370", Offset = "0x7D3370", VA = "0x1807D4370", Slot = "37")] public virtual ECPoint DecodePoint(byte[] encoded) { /* An exception occurred when decompiling this method (0600A420) ICSharpCode.Decompiler.DecompilerException: Error decompiling BestHTTP.SecureProtocol.Org.BouncyCastle.Math.EC.ECPoint BestHTTP.SecureProtocol.Org.BouncyCastle.Math.EC.ECCurve::DecodePoint(System.Byte[]) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_81: stloc:ArgumentException(var_19_8B, newobj:ArgumentException(ArgumentException::.ctor, ldstr:string("Invalid point"))) } 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: 0x04006C19 RID: 27673 [Token(Token = "0x4006C19")] public const int COORD_AFFINE = 0; // Token: 0x04006C1A RID: 27674 [Token(Token = "0x4006C1A")] public const int COORD_HOMOGENEOUS = 1; // Token: 0x04006C1B RID: 27675 [Token(Token = "0x4006C1B")] public const int COORD_JACOBIAN = 2; // Token: 0x04006C1C RID: 27676 [Token(Token = "0x4006C1C")] public const int COORD_JACOBIAN_CHUDNOVSKY = 3; // Token: 0x04006C1D RID: 27677 [Token(Token = "0x4006C1D")] public const int COORD_JACOBIAN_MODIFIED = 4; // Token: 0x04006C1E RID: 27678 [Token(Token = "0x4006C1E")] public const int COORD_LAMBDA_AFFINE = 5; // Token: 0x04006C1F RID: 27679 [Token(Token = "0x4006C1F")] public const int COORD_LAMBDA_PROJECTIVE = 6; // Token: 0x04006C20 RID: 27680 [Token(Token = "0x4006C20")] public const int COORD_SKEWED = 7; // Token: 0x04006C21 RID: 27681 [FieldOffset(Offset = "0x10")] [Token(Token = "0x4006C21")] protected readonly IFiniteField m_field; // Token: 0x04006C22 RID: 27682 [FieldOffset(Offset = "0x18")] [Token(Token = "0x4006C22")] protected ECFieldElement m_a; // Token: 0x04006C23 RID: 27683 [FieldOffset(Offset = "0x20")] [Token(Token = "0x4006C23")] protected ECFieldElement m_b; // Token: 0x04006C24 RID: 27684 [FieldOffset(Offset = "0x28")] [Token(Token = "0x4006C24")] protected BigInteger m_order; // Token: 0x04006C25 RID: 27685 [FieldOffset(Offset = "0x30")] [Token(Token = "0x4006C25")] protected BigInteger m_cofactor; // Token: 0x04006C26 RID: 27686 [FieldOffset(Offset = "0x38")] [Token(Token = "0x4006C26")] protected int m_coord; // Token: 0x04006C27 RID: 27687 [FieldOffset(Offset = "0x40")] [Token(Token = "0x4006C27")] protected ECEndomorphism m_endomorphism; // Token: 0x04006C28 RID: 27688 [FieldOffset(Offset = "0x48")] [Token(Token = "0x4006C28")] protected ECMultiplier m_multiplier; // Token: 0x02001ACF RID: 6863 [Token(Token = "0x2001ACF")] public class Config { // Token: 0x0600A421 RID: 42017 RVA: 0x0022D408 File Offset: 0x0022B608 [Token(Token = "0x600A421")] [Address(RVA = "0x7D04E0", Offset = "0x7CF4E0", VA = "0x1807D04E0")] internal Config(ECCurve outer, int coord, ECEndomorphism endomorphism, ECMultiplier multiplier) { this.outer = outer; this.endomorphism = endomorphism; this.multiplier = 0; this.coord = coord; } // Token: 0x0600A422 RID: 42018 RVA: 0x0022D438 File Offset: 0x0022B638 [Token(Token = "0x600A422")] [Address(RVA = "0x7D04D0", Offset = "0x7CF4D0", VA = "0x1807D04D0")] public ECCurve.Config SetCoordinateSystem(int coord) { this.coord = coord; return this; } // Token: 0x0600A423 RID: 42019 RVA: 0x0022D450 File Offset: 0x0022B650 [Token(Token = "0x600A423")] [Address(RVA = "0x493850", Offset = "0x492850", VA = "0x180493850")] public ECCurve.Config SetEndomorphism(ECEndomorphism endomorphism) { this.endomorphism = endomorphism; return this; } // Token: 0x0600A424 RID: 42020 RVA: 0x0022D468 File Offset: 0x0022B668 [Token(Token = "0x600A424")] [Address(RVA = "0x493860", Offset = "0x492860", VA = "0x180493860")] public ECCurve.Config SetMultiplier(ECMultiplier multiplier) { this.multiplier = multiplier; return this; } // Token: 0x0600A425 RID: 42021 RVA: 0x0022D480 File Offset: 0x0022B680 [Token(Token = "0x600A425")] [Address(RVA = "0x7D03E0", Offset = "0x7CF3E0", VA = "0x1807D03E0")] public ECCurve Create() { /* An exception occurred when decompiling this method (0600A425) ICSharpCode.Decompiler.DecompilerException: Error decompiling BestHTTP.SecureProtocol.Org.BouncyCastle.Math.EC.ECCurve BestHTTP.SecureProtocol.Org.BouncyCastle.Math.EC.ECCurve/Config::Create() ---> System.Exception: Basic block has to end with unconditional control flow. { IL_41: stloc:InvalidOperationException(var_5_4B, newobj:InvalidOperationException(InvalidOperationException::.ctor, ldstr:string("unsupported coordinate system"))) } 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: 0x04006C29 RID: 27689 [FieldOffset(Offset = "0x10")] [Token(Token = "0x4006C29")] protected ECCurve outer; // Token: 0x04006C2A RID: 27690 [FieldOffset(Offset = "0x18")] [Token(Token = "0x4006C2A")] protected int coord; // Token: 0x04006C2B RID: 27691 [FieldOffset(Offset = "0x20")] [Token(Token = "0x4006C2B")] protected ECEndomorphism endomorphism; // Token: 0x04006C2C RID: 27692 [FieldOffset(Offset = "0x28")] [Token(Token = "0x4006C2C")] protected ECMultiplier multiplier; } // Token: 0x02001AD0 RID: 6864 [Token(Token = "0x2001AD0")] private class DefaultLookupTable : ECLookupTable { // Token: 0x0600A426 RID: 42022 RVA: 0x0022D4DC File Offset: 0x0022B6DC [Token(Token = "0x600A426")] [Address(RVA = "0x6E7930", Offset = "0x6E6930", VA = "0x1806E7930")] internal DefaultLookupTable(ECCurve outer, byte[] table, int size) { this.m_outer = outer; this.m_table = table; this.m_size = size; } // Token: 0x170019E4 RID: 6628 // (get) Token: 0x0600A427 RID: 42023 RVA: 0x0022D504 File Offset: 0x0022B704 [Token(Token = "0x170019E4")] public virtual int Size { [Token(Token = "0x600A427")] [Address(RVA = "0x470B70", Offset = "0x46FB70", VA = "0x180470B70", Slot = "6")] get { return this.m_size; } } // Token: 0x0600A428 RID: 42024 RVA: 0x0022D518 File Offset: 0x0022B718 [Token(Token = "0x600A428")] [Address(RVA = "0x7D08F0", Offset = "0x7CF8F0", VA = "0x1807D08F0", Slot = "7")] public virtual ECPoint Lookup(int index) { string text = this.m_outer.ToString(); byte[] array = new byte[text]; byte[] array2 = new byte[text]; int num = 0; int num2 = 0; if (this.m_size > num) { int num3 = 0; if (text > 0) { byte[] table = this.m_table; byte[] table2 = this.m_table; num3++; } num2++; } ECCurve outer = this.m_outer; BigInteger bigInteger = new BigInteger(1, array); int fieldSize = outer.FieldSize; ECCurve outer2 = this.m_outer; BigInteger bigInteger2 = new BigInteger(1, array2); int fieldSize2 = outer2.FieldSize; ECCurve eccurve = this.m_outer.CloneCurve(); throw new NullReferenceException(); } // Token: 0x04006C2D RID: 27693 [FieldOffset(Offset = "0x10")] [Token(Token = "0x4006C2D")] private readonly ECCurve m_outer; // Token: 0x04006C2E RID: 27694 [FieldOffset(Offset = "0x18")] [Token(Token = "0x4006C2E")] private readonly byte[] m_table; // Token: 0x04006C2F RID: 27695 [FieldOffset(Offset = "0x20")] [Token(Token = "0x4006C2F")] private readonly int m_size; } } }