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: 0x020019EE RID: 6638 [Token(Token = "0x20019EE")] public abstract class ECCurve { // Token: 0x0600A02D RID: 41005 RVA: 0x00223CBC File Offset: 0x00221EBC [Token(Token = "0x600A02D")] [Address(RVA = "0x209D3E0", Offset = "0x209C1E0", VA = "0x18209D3E0")] public static int[] GetAllCoordinateSystems() { int[] array = new int[8]; RuntimeHelpers.InitializeArray(array, fieldof(.643F7C1D25ADAFA2F5ED135D8331618A14714ED2).FieldHandle); return array; } // Token: 0x0600A02E RID: 41006 RVA: 0x00223CDC File Offset: 0x00221EDC [Token(Token = "0x600A02E")] [Address(RVA = "0x3FFB80", Offset = "0x3FE980", VA = "0x1803FFB80")] protected ECCurve(IFiniteField field) { this.m_field = field; } // Token: 0x1700193F RID: 6463 // (get) Token: 0x0600A02F RID: 41007 [Token(Token = "0x1700193F")] public abstract int FieldSize { [Token(Token = "0x600A02F")] [Address(Slot = "4")] get; } // Token: 0x0600A030 RID: 41008 [Token(Token = "0x600A030")] [Address(Slot = "5")] public abstract ECFieldElement FromBigInteger(BigInteger x); // Token: 0x0600A031 RID: 41009 [Token(Token = "0x600A031")] [Address(Slot = "6")] public abstract bool IsValidFieldElement(BigInteger x); // Token: 0x0600A032 RID: 41010 RVA: 0x00223CF8 File Offset: 0x00221EF8 [Token(Token = "0x600A032")] [Address(RVA = "0x209C8A0", Offset = "0x209B6A0", VA = "0x18209C8A0", 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: 0x0600A033 RID: 41011 RVA: 0x00223D38 File Offset: 0x00221F38 [Token(Token = "0x600A033")] [Address(RVA = "0x209DF80", Offset = "0x209CD80", VA = "0x18209DF80", Slot = "8")] public virtual ECPoint ValidatePoint(BigInteger x, BigInteger y) { /* An exception occurred when decompiling this method (0600A033) 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: 0x0600A034 RID: 41012 RVA: 0x00223D64 File Offset: 0x00221F64 [Token(Token = "0x600A034")] [Address(RVA = "0x209E040", Offset = "0x209CE40", VA = "0x18209E040", Slot = "9")] [Obsolete] public virtual ECPoint ValidatePoint(BigInteger x, BigInteger y, bool withCompression) { /* An exception occurred when decompiling this method (0600A034) 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: 0x0600A035 RID: 41013 RVA: 0x00223D9C File Offset: 0x00221F9C [Token(Token = "0x600A035")] [Address(RVA = "0x209CCA0", Offset = "0x209BAA0", VA = "0x18209CCA0", Slot = "10")] public virtual ECPoint CreatePoint(BigInteger x, BigInteger y) { return this.CreatePoint(x, y); } // Token: 0x0600A036 RID: 41014 RVA: 0x00223DB4 File Offset: 0x00221FB4 [Token(Token = "0x600A036")] [Address(RVA = "0x209CC10", Offset = "0x209BA10", VA = "0x18209CC10", Slot = "11")] [Obsolete] public virtual ECPoint CreatePoint(BigInteger x, BigInteger y, bool withCompression) { /* An exception occurred when decompiling this method (0600A036) 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: 0x0600A037 RID: 41015 [Token(Token = "0x600A037")] [Address(Slot = "12")] protected abstract ECCurve CloneCurve(); // Token: 0x0600A038 RID: 41016 [Token(Token = "0x600A038")] [Address(Slot = "13")] protected internal abstract ECPoint CreateRawPoint(ECFieldElement x, ECFieldElement y, bool withCompression); // Token: 0x0600A039 RID: 41017 [Token(Token = "0x600A039")] [Address(Slot = "14")] protected internal abstract ECPoint CreateRawPoint(ECFieldElement x, ECFieldElement y, ECFieldElement[] zs, bool withCompression); // Token: 0x0600A03A RID: 41018 RVA: 0x00223DD8 File Offset: 0x00221FD8 [Token(Token = "0x600A03A")] [Address(RVA = "0x209CB60", Offset = "0x209B960", VA = "0x18209CB60", Slot = "15")] protected virtual ECMultiplier CreateDefaultMultiplier() { /* An exception occurred when decompiling this method (0600A03A) 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: 0x0600A03B RID: 41019 RVA: 0x00223DEC File Offset: 0x00221FEC [Token(Token = "0x600A03B")] [Address(RVA = "0x209DF70", Offset = "0x209CD70", VA = "0x18209DF70", Slot = "16")] public virtual bool SupportsCoordinateSystem(int coord) { return coord == 0; } // Token: 0x0600A03C RID: 41020 RVA: 0x00223E00 File Offset: 0x00222000 [Token(Token = "0x600A03C")] [Address(RVA = "0x209D5F0", Offset = "0x209C3F0", VA = "0x18209D5F0", 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: 0x0600A03D RID: 41021 RVA: 0x00223E3C File Offset: 0x0022203C [Token(Token = "0x600A03D")] [Address(RVA = "0x209DCA0", Offset = "0x209CAA0", VA = "0x18209DCA0", 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: 0x0600A03E RID: 41022 RVA: 0x00223EB8 File Offset: 0x002220B8 [Token(Token = "0x600A03E")] [Address(RVA = "0x209D7E0", Offset = "0x209C5E0", VA = "0x18209D7E0", 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: 0x0600A03F RID: 41023 RVA: 0x00223F10 File Offset: 0x00222110 [Token(Token = "0x600A03F")] [Address(RVA = "0x209DC60", Offset = "0x209CA60", VA = "0x18209DC60", Slot = "20")] public virtual void NormalizeAll(ECPoint[] points) { this.NormalizeAll(points); } // Token: 0x0600A040 RID: 41024 RVA: 0x00223F2C File Offset: 0x0022212C [Token(Token = "0x600A040")] [Address(RVA = "0x209D920", Offset = "0x209C720", VA = "0x18209D920", Slot = "21")] public virtual void NormalizeAll(ECPoint[] points, int off, int len, ECFieldElement iso) { /* An exception occurred when decompiling this method (0600A040) 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: 0x17001940 RID: 6464 // (get) Token: 0x0600A041 RID: 41025 [Token(Token = "0x17001940")] public abstract ECPoint Infinity { [Token(Token = "0x600A041")] [Address(Slot = "22")] get; } // Token: 0x17001941 RID: 6465 // (get) Token: 0x0600A042 RID: 41026 RVA: 0x00223FEC File Offset: 0x002221EC [Token(Token = "0x17001941")] public virtual IFiniteField Field { [Token(Token = "0x600A042")] [Address(RVA = "0x3F6E20", Offset = "0x3F5C20", VA = "0x1803F6E20", Slot = "23")] get { return this.m_field; } } // Token: 0x17001942 RID: 6466 // (get) Token: 0x0600A043 RID: 41027 RVA: 0x00224000 File Offset: 0x00222200 [Token(Token = "0x17001942")] public virtual ECFieldElement A { [Token(Token = "0x600A043")] [Address(RVA = "0x3F5F40", Offset = "0x3F4D40", VA = "0x1803F5F40", Slot = "24")] get { return this.m_a; } } // Token: 0x17001943 RID: 6467 // (get) Token: 0x0600A044 RID: 41028 RVA: 0x00224014 File Offset: 0x00222214 [Token(Token = "0x17001943")] public virtual ECFieldElement B { [Token(Token = "0x600A044")] [Address(RVA = "0x3F6400", Offset = "0x3F5200", VA = "0x1803F6400", Slot = "25")] get { return this.m_b; } } // Token: 0x17001944 RID: 6468 // (get) Token: 0x0600A045 RID: 41029 RVA: 0x00224028 File Offset: 0x00222228 [Token(Token = "0x17001944")] public virtual BigInteger Order { [Token(Token = "0x600A045")] [Address(RVA = "0x3F63E0", Offset = "0x3F51E0", VA = "0x1803F63E0", Slot = "26")] get { return this.m_order; } } // Token: 0x17001945 RID: 6469 // (get) Token: 0x0600A046 RID: 41030 RVA: 0x0022403C File Offset: 0x0022223C [Token(Token = "0x17001945")] public virtual BigInteger Cofactor { [Token(Token = "0x600A046")] [Address(RVA = "0x3FA180", Offset = "0x3F8F80", VA = "0x1803FA180", Slot = "27")] get { return this.m_cofactor; } } // Token: 0x17001946 RID: 6470 // (get) Token: 0x0600A047 RID: 41031 RVA: 0x00224050 File Offset: 0x00222250 [Token(Token = "0x17001946")] public virtual int CoordinateSystem { [Token(Token = "0x600A047")] [Address(RVA = "0x40FFE0", Offset = "0x40EDE0", VA = "0x18040FFE0", Slot = "28")] get { return this.m_coord; } } // Token: 0x0600A048 RID: 41032 RVA: 0x00224064 File Offset: 0x00222264 [Token(Token = "0x600A048")] [Address(RVA = "0x209C930", Offset = "0x209B730", VA = "0x18209C930", 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: 0x0600A049 RID: 41033 RVA: 0x00224138 File Offset: 0x00222338 [Token(Token = "0x600A049")] [Address(RVA = "0x209C650", Offset = "0x209B450", VA = "0x18209C650", Slot = "30")] protected virtual void CheckPoint(ECPoint point) { /* An exception occurred when decompiling this method (0600A049) 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: 0x0600A04A RID: 41034 RVA: 0x00224164 File Offset: 0x00222364 [Token(Token = "0x600A04A")] [Address(RVA = "0x209C860", Offset = "0x209B660", VA = "0x18209C860", Slot = "31")] protected virtual void CheckPoints(ECPoint[] points) { this.CheckPoints(points); } // Token: 0x0600A04B RID: 41035 RVA: 0x00224180 File Offset: 0x00222380 [Token(Token = "0x600A04B")] [Address(RVA = "0x209C6E0", Offset = "0x209B4E0", VA = "0x18209C6E0", Slot = "32")] protected virtual void CheckPoints(ECPoint[] points, int off, int len) { /* An exception occurred when decompiling this method (0600A04B) 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: 0x0600A04C RID: 41036 RVA: 0x002241DC File Offset: 0x002223DC [Token(Token = "0x600A04C")] [Address(RVA = "0x209D190", Offset = "0x209BF90", VA = "0x18209D190", 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: 0x0600A04D RID: 41037 RVA: 0x00224240 File Offset: 0x00222440 [Token(Token = "0x600A04D")] [Address(RVA = "0x209D350", Offset = "0x209C150", VA = "0x18209D350", Slot = "0")] public override bool Equals(object obj) { /* An exception occurred when decompiling this method (0600A04D) 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: 0x0600A04E RID: 41038 RVA: 0x0022425C File Offset: 0x0022245C [Token(Token = "0x600A04E")] [Address(RVA = "0x209D430", Offset = "0x209C230", VA = "0x18209D430", Slot = "2")] public override int GetHashCode() { this.Infinity.Finalize(); IFiniteField field = this.Field; this.A.ToString().Finalize(); throw new NullReferenceException(); } // Token: 0x0600A04F RID: 41039 [Token(Token = "0x600A04F")] [Address(Slot = "34")] protected abstract ECPoint DecompressPoint(int yTilde, BigInteger X1); // Token: 0x0600A050 RID: 41040 RVA: 0x00224290 File Offset: 0x00222490 [Token(Token = "0x600A050")] [Address(RVA = "0x408890", Offset = "0x407690", VA = "0x180408890", Slot = "35")] public virtual ECEndomorphism GetEndomorphism() { return this.m_endomorphism; } // Token: 0x0600A051 RID: 41041 RVA: 0x002242A4 File Offset: 0x002224A4 [Token(Token = "0x600A051")] [Address(RVA = "0x209D540", Offset = "0x209C340", VA = "0x18209D540", 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: 0x0600A052 RID: 41042 RVA: 0x002242D0 File Offset: 0x002224D0 [Token(Token = "0x600A052")] [Address(RVA = "0x209CCD0", Offset = "0x209BAD0", VA = "0x18209CCD0", Slot = "37")] public virtual ECPoint DecodePoint(byte[] encoded) { /* An exception occurred when decompiling this method (0600A052) 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: 0x04006A60 RID: 27232 [Token(Token = "0x4006A60")] public const int COORD_AFFINE = 0; // Token: 0x04006A61 RID: 27233 [Token(Token = "0x4006A61")] public const int COORD_HOMOGENEOUS = 1; // Token: 0x04006A62 RID: 27234 [Token(Token = "0x4006A62")] public const int COORD_JACOBIAN = 2; // Token: 0x04006A63 RID: 27235 [Token(Token = "0x4006A63")] public const int COORD_JACOBIAN_CHUDNOVSKY = 3; // Token: 0x04006A64 RID: 27236 [Token(Token = "0x4006A64")] public const int COORD_JACOBIAN_MODIFIED = 4; // Token: 0x04006A65 RID: 27237 [Token(Token = "0x4006A65")] public const int COORD_LAMBDA_AFFINE = 5; // Token: 0x04006A66 RID: 27238 [Token(Token = "0x4006A66")] public const int COORD_LAMBDA_PROJECTIVE = 6; // Token: 0x04006A67 RID: 27239 [Token(Token = "0x4006A67")] public const int COORD_SKEWED = 7; // Token: 0x04006A68 RID: 27240 [FieldOffset(Offset = "0x10")] [Token(Token = "0x4006A68")] protected readonly IFiniteField m_field; // Token: 0x04006A69 RID: 27241 [FieldOffset(Offset = "0x18")] [Token(Token = "0x4006A69")] protected ECFieldElement m_a; // Token: 0x04006A6A RID: 27242 [FieldOffset(Offset = "0x20")] [Token(Token = "0x4006A6A")] protected ECFieldElement m_b; // Token: 0x04006A6B RID: 27243 [FieldOffset(Offset = "0x28")] [Token(Token = "0x4006A6B")] protected BigInteger m_order; // Token: 0x04006A6C RID: 27244 [FieldOffset(Offset = "0x30")] [Token(Token = "0x4006A6C")] protected BigInteger m_cofactor; // Token: 0x04006A6D RID: 27245 [FieldOffset(Offset = "0x38")] [Token(Token = "0x4006A6D")] protected int m_coord; // Token: 0x04006A6E RID: 27246 [FieldOffset(Offset = "0x40")] [Token(Token = "0x4006A6E")] protected ECEndomorphism m_endomorphism; // Token: 0x04006A6F RID: 27247 [FieldOffset(Offset = "0x48")] [Token(Token = "0x4006A6F")] protected ECMultiplier m_multiplier; // Token: 0x020019EF RID: 6639 [Token(Token = "0x20019EF")] public class Config { // Token: 0x0600A053 RID: 41043 RVA: 0x0022436C File Offset: 0x0022256C [Token(Token = "0x600A053")] [Address(RVA = "0x1B35CD0", Offset = "0x1B34AD0", VA = "0x181B35CD0")] internal Config(ECCurve outer, int coord, ECEndomorphism endomorphism, ECMultiplier multiplier) { this.outer = outer; this.endomorphism = endomorphism; this.multiplier = 0; this.coord = coord; } // Token: 0x0600A054 RID: 41044 RVA: 0x0022439C File Offset: 0x0022259C [Token(Token = "0x600A054")] [Address(RVA = "0x2098E80", Offset = "0x2097C80", VA = "0x182098E80")] public ECCurve.Config SetCoordinateSystem(int coord) { this.coord = coord; return this; } // Token: 0x0600A055 RID: 41045 RVA: 0x002243B4 File Offset: 0x002225B4 [Token(Token = "0x600A055")] [Address(RVA = "0x1872000", Offset = "0x1870E00", VA = "0x181872000")] public ECCurve.Config SetEndomorphism(ECEndomorphism endomorphism) { this.endomorphism = endomorphism; return this; } // Token: 0x0600A056 RID: 41046 RVA: 0x002243CC File Offset: 0x002225CC [Token(Token = "0x600A056")] [Address(RVA = "0x1871FD0", Offset = "0x1870DD0", VA = "0x181871FD0")] public ECCurve.Config SetMultiplier(ECMultiplier multiplier) { this.multiplier = multiplier; return this; } // Token: 0x0600A057 RID: 41047 RVA: 0x002243E4 File Offset: 0x002225E4 [Token(Token = "0x600A057")] [Address(RVA = "0x2098D90", Offset = "0x2097B90", VA = "0x182098D90")] public ECCurve Create() { /* An exception occurred when decompiling this method (0600A057) 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: 0x04006A70 RID: 27248 [FieldOffset(Offset = "0x10")] [Token(Token = "0x4006A70")] protected ECCurve outer; // Token: 0x04006A71 RID: 27249 [FieldOffset(Offset = "0x18")] [Token(Token = "0x4006A71")] protected int coord; // Token: 0x04006A72 RID: 27250 [FieldOffset(Offset = "0x20")] [Token(Token = "0x4006A72")] protected ECEndomorphism endomorphism; // Token: 0x04006A73 RID: 27251 [FieldOffset(Offset = "0x28")] [Token(Token = "0x4006A73")] protected ECMultiplier multiplier; } // Token: 0x020019F0 RID: 6640 [Token(Token = "0x20019F0")] private class DefaultLookupTable : ECLookupTable { // Token: 0x0600A058 RID: 41048 RVA: 0x00224440 File Offset: 0x00222640 [Token(Token = "0x600A058")] [Address(RVA = "0x412390", Offset = "0x411190", VA = "0x180412390")] internal DefaultLookupTable(ECCurve outer, byte[] table, int size) { this.m_outer = outer; this.m_table = table; this.m_size = size; } // Token: 0x17001947 RID: 6471 // (get) Token: 0x0600A059 RID: 41049 RVA: 0x00224468 File Offset: 0x00222668 [Token(Token = "0x17001947")] public virtual int Size { [Token(Token = "0x600A059")] [Address(RVA = "0x3F7310", Offset = "0x3F6110", VA = "0x1803F7310", Slot = "6")] get { return this.m_size; } } // Token: 0x0600A05A RID: 41050 RVA: 0x0022447C File Offset: 0x0022267C [Token(Token = "0x600A05A")] [Address(RVA = "0x2099250", Offset = "0x2098050", VA = "0x182099250", 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: 0x04006A74 RID: 27252 [FieldOffset(Offset = "0x10")] [Token(Token = "0x4006A74")] private readonly ECCurve m_outer; // Token: 0x04006A75 RID: 27253 [FieldOffset(Offset = "0x18")] [Token(Token = "0x4006A75")] private readonly byte[] m_table; // Token: 0x04006A76 RID: 27254 [FieldOffset(Offset = "0x20")] [Token(Token = "0x4006A76")] private readonly int m_size; } } }