Files
Aug2021-Cpp2IL-Dump/Assembly-CSharp/BestHTTP/SecureProtocol/Org/BouncyCastle/Math/EC/F2mFieldElement.cs
T
2026-04-10 22:50:51 +02:00

613 lines
27 KiB
C#

using System;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Math.EC
{
// Token: 0x020019FA RID: 6650
[Token(Token = "0x20019FA")]
public class F2mFieldElement : AbstractF2mFieldElement
{
// Token: 0x0600A0CA RID: 41162 RVA: 0x00226020 File Offset: 0x00224220
[Token(Token = "0x600A0CA")]
[Address(RVA = "0x20A1BE0", Offset = "0x20A09E0", VA = "0x1820A1BE0")]
[Obsolete]
public F2mFieldElement(int m, int k1, int k2, int k3, BigInteger x)
{
do
{
base..ctor();
int num = 0;
if (k2 == 0)
{
this.representation = (int)((ulong)2L);
(new int[num])[0] = k1;
}
}
while (k2 <= 0);
this.representation = (int)((ulong)3L);
int[] array = new int[3];
array[0] = k1;
array[0] = k2;
this.ks = array;
this.m = m;
LongArray longArray;
this.x = longArray;
}
// Token: 0x0600A0CB RID: 41163 RVA: 0x0022609C File Offset: 0x0022429C
[Token(Token = "0x600A0CB")]
[Address(RVA = "0x20A1B50", Offset = "0x20A0950", VA = "0x1820A1B50")]
[Obsolete]
public F2mFieldElement(int m, int k, BigInteger x)
{
}
// Token: 0x0600A0CC RID: 41164 RVA: 0x002260B0 File Offset: 0x002242B0
[Token(Token = "0x600A0CC")]
[Address(RVA = "0x20A1B80", Offset = "0x20A0980", VA = "0x1820A1B80")]
internal F2mFieldElement(int m, int[] ks, LongArray x)
{
this.m = m;
bool flag = ks.Length != 1;
this.representation = (flag ? 1 : 0);
this.ks = ks;
this.x = x;
}
// Token: 0x1700195B RID: 6491
// (get) Token: 0x0600A0CD RID: 41165 RVA: 0x002260F4 File Offset: 0x002242F4
[Token(Token = "0x1700195B")]
public override int BitLength
{
[Token(Token = "0x600A0CD")]
[Address(RVA = "0x20A1E10", Offset = "0x20A0C10", VA = "0x1820A1E10", Slot = "16")]
get
{
return this.x.Degree();
}
}
// Token: 0x1700195C RID: 6492
// (get) Token: 0x0600A0CE RID: 41166 RVA: 0x00226114 File Offset: 0x00224314
[Token(Token = "0x1700195C")]
public override bool IsOne
{
[Token(Token = "0x600A0CE")]
[Address(RVA = "0x20A1E60", Offset = "0x20A0C60", VA = "0x1820A1E60", Slot = "17")]
get
{
return this.x.IsOne();
}
}
// Token: 0x1700195D RID: 6493
// (get) Token: 0x0600A0CF RID: 41167 RVA: 0x00226134 File Offset: 0x00224334
[Token(Token = "0x1700195D")]
public override bool IsZero
{
[Token(Token = "0x600A0CF")]
[Address(RVA = "0x20A1E80", Offset = "0x20A0C80", VA = "0x1820A1E80", Slot = "18")]
get
{
return this.x.IsZero();
}
}
// Token: 0x0600A0D0 RID: 41168 RVA: 0x00226154 File Offset: 0x00224354
[Token(Token = "0x600A0D0")]
[Address(RVA = "0x20A1B10", Offset = "0x20A0910", VA = "0x1820A1B10", Slot = "24")]
public override bool TestBitZero()
{
return this.x.TestBitZero();
}
// Token: 0x0600A0D1 RID: 41169 RVA: 0x00226174 File Offset: 0x00224374
[Token(Token = "0x600A0D1")]
[Address(RVA = "0x20A1B30", Offset = "0x20A0930", VA = "0x1820A1B30", Slot = "4")]
public override BigInteger ToBigInteger()
{
return this.x.ToBigInteger();
}
// Token: 0x1700195E RID: 6494
// (get) Token: 0x0600A0D2 RID: 41170 RVA: 0x00226194 File Offset: 0x00224394
[Token(Token = "0x1700195E")]
public override string FieldName
{
[Token(Token = "0x600A0D2")]
[Address(RVA = "0x20A1E30", Offset = "0x20A0C30", VA = "0x1820A1E30", Slot = "5")]
get
{
return "F2m";
}
}
// Token: 0x1700195F RID: 6495
// (get) Token: 0x0600A0D3 RID: 41171 RVA: 0x002261A8 File Offset: 0x002243A8
[Token(Token = "0x1700195F")]
public override int FieldSize
{
[Token(Token = "0x600A0D3")]
[Address(RVA = "0x495080", Offset = "0x493E80", VA = "0x180495080", Slot = "6")]
get
{
return this.m;
}
}
// Token: 0x0600A0D4 RID: 41172 RVA: 0x002261BC File Offset: 0x002243BC
[Token(Token = "0x600A0D4")]
[Address(RVA = "0x20A0DB0", Offset = "0x209FBB0", VA = "0x1820A0DB0")]
public static void CheckFieldElements(ECFieldElement a, ECFieldElement b)
{
/*
An exception occurred when decompiling this method (0600A0D4)
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Math.EC.F2mFieldElement::CheckFieldElements(BestHTTP.SecureProtocol.Org.BouncyCastle.Math.EC.ECFieldElement,BestHTTP.SecureProtocol.Org.BouncyCastle.Math.EC.ECFieldElement)
---> System.Exception: Basic block has to end with unconditional control flow.
{
IL_26:
stloc:ArgumentException(var_5_30, newobj:ArgumentException(ArgumentException::.ctor, ldstr:string("Field elements are not elements of the same field F2m")))
}
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: 0x0600A0D5 RID: 41173 RVA: 0x002261FC File Offset: 0x002243FC
[Token(Token = "0x600A0D5")]
[Address(RVA = "0x20A0C80", Offset = "0x209FA80", VA = "0x1820A0C80", Slot = "7")]
public override ECFieldElement Add(ECFieldElement b)
{
LongArray longArray;
do
{
longArray = this.x.Copy();
}
while (b == 0);
int num = this.m;
int[] array = this.ks;
F2mFieldElement f2mFieldElement;
f2mFieldElement.m = num;
bool flag = array.Length != 1;
f2mFieldElement.representation = (flag ? 1 : 0);
f2mFieldElement.x = longArray;
f2mFieldElement.ks = array;
throw new NullReferenceException();
}
// Token: 0x0600A0D6 RID: 41174 RVA: 0x00226260 File Offset: 0x00224460
[Token(Token = "0x600A0D6")]
[Address(RVA = "0x20A0BD0", Offset = "0x209F9D0", VA = "0x1820A0BD0", Slot = "8")]
public override ECFieldElement AddOne()
{
LongArray longArray = this.x;
int num = this.m;
int[] array = this.ks;
LongArray longArray2 = longArray.AddOne();
F2mFieldElement f2mFieldElement;
f2mFieldElement.m = num;
bool flag = array.Length != 1;
f2mFieldElement.representation = (flag ? 1 : 0);
f2mFieldElement.x = longArray2;
f2mFieldElement.ks = array;
throw new NullReferenceException();
}
// Token: 0x0600A0D7 RID: 41175 RVA: 0x002262C0 File Offset: 0x002244C0
[Token(Token = "0x600A0D7")]
[Address(RVA = "0x12417E0", Offset = "0x12405E0", VA = "0x1812417E0", Slot = "9")]
public override ECFieldElement Subtract(ECFieldElement b)
{
/*
An exception occurred when decompiling this method (0600A0D7)
ICSharpCode.Decompiler.DecompilerException: Error decompiling BestHTTP.SecureProtocol.Org.BouncyCastle.Math.EC.ECFieldElement BestHTTP.SecureProtocol.Org.BouncyCastle.Math.EC.F2mFieldElement::Subtract(BestHTTP.SecureProtocol.Org.BouncyCastle.Math.EC.ECFieldElement)
---> System.Exception: Basic block has to end with unconditional control flow.
{
Block_0:
stloc:BigInteger(var_0_06, call:BigInteger(ECFieldElement::ToBigInteger, ldloc:F2mFieldElement[exp:ECFieldElement](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: 0x0600A0D8 RID: 41176 RVA: 0x002262D4 File Offset: 0x002244D4
[Token(Token = "0x600A0D8")]
[Address(RVA = "0x20A15A0", Offset = "0x20A03A0", VA = "0x1820A15A0", Slot = "10")]
public override ECFieldElement Multiply(ECFieldElement b)
{
int num;
int[] array;
do
{
num = this.m;
array = this.ks;
LongArray longArray = this.x;
}
while (b == 0 || b == 0);
F2mFieldElement f2mFieldElement;
f2mFieldElement.m = num;
bool flag = array.Length != 1;
f2mFieldElement.representation = (flag ? 1 : 0);
f2mFieldElement.ks = array;
LongArray longArray2;
f2mFieldElement.x = longArray2;
throw new NullReferenceException();
}
// Token: 0x0600A0D9 RID: 41177 RVA: 0x0022633C File Offset: 0x0022453C
[Token(Token = "0x600A0D9")]
[Address(RVA = "0x2081E20", Offset = "0x2080C20", VA = "0x182081E20", Slot = "19")]
public override ECFieldElement MultiplyMinusProduct(ECFieldElement b, ECFieldElement x, ECFieldElement y)
{
/*
An exception occurred when decompiling this method (0600A0D9)
ICSharpCode.Decompiler.DecompilerException: Error decompiling BestHTTP.SecureProtocol.Org.BouncyCastle.Math.EC.ECFieldElement BestHTTP.SecureProtocol.Org.BouncyCastle.Math.EC.F2mFieldElement::MultiplyMinusProduct(BestHTTP.SecureProtocol.Org.BouncyCastle.Math.EC.ECFieldElement,BestHTTP.SecureProtocol.Org.BouncyCastle.Math.EC.ECFieldElement,BestHTTP.SecureProtocol.Org.BouncyCastle.Math.EC.ECFieldElement)
---> System.Exception: Basic block has to end with unconditional control flow.
{
Block_0:
stloc:BigInteger(var_0_06, call:BigInteger(ECFieldElement::ToBigInteger, ldloc:F2mFieldElement[exp:ECFieldElement](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: 0x0600A0DA RID: 41178 RVA: 0x00226350 File Offset: 0x00224550
[Token(Token = "0x600A0DA")]
[Address(RVA = "0x20A12B0", Offset = "0x20A00B0", VA = "0x1820A12B0", Slot = "20")]
public override ECFieldElement MultiplyPlusProduct(ECFieldElement b, ECFieldElement x, ECFieldElement y)
{
LongArray longArray;
do
{
longArray = this.x;
}
while (b == 0 || b == 0 || x == 0 || x == 0 || y == 0 || y == 0);
LongArray longArray2;
if (longArray2 != longArray)
{
}
LongArray longArray3 = longArray2.Copy();
int num = 0;
LongArray longArray4;
longArray3.AddShiftedByWords(longArray4, num);
int[] array = this.ks;
int num2 = this.m;
longArray3.Reduce(num2, array);
int num3 = this.m;
int[] array2 = this.ks;
F2mFieldElement f2mFieldElement;
f2mFieldElement.m = num3;
bool flag = array2.Length != 1;
f2mFieldElement.representation = (flag ? 1 : 0);
f2mFieldElement.ks = array2;
f2mFieldElement.x = longArray3;
throw new NullReferenceException();
}
// Token: 0x0600A0DB RID: 41179 RVA: 0x00226410 File Offset: 0x00224610
[Token(Token = "0x600A0DB")]
[Address(RVA = "0x2081BB0", Offset = "0x20809B0", VA = "0x182081BB0", Slot = "11")]
public override ECFieldElement Divide(ECFieldElement b)
{
ECFieldElement ecfieldElement = b.Square();
BigInteger bigInteger = base.ToBigInteger();
throw new NullReferenceException();
}
// Token: 0x0600A0DC RID: 41180 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x600A0DC")]
[Address(RVA = "0x434BD0", Offset = "0x4339D0", VA = "0x180434BD0", Slot = "12")]
public override ECFieldElement Negate()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x0600A0DD RID: 41181 RVA: 0x00226430 File Offset: 0x00224630
[Token(Token = "0x600A0DD")]
[Address(RVA = "0x20A1A60", Offset = "0x20A0860", VA = "0x1820A1A60", Slot = "13")]
public override ECFieldElement Square()
{
LongArray longArray = this.x;
int num = this.m;
int[] array = this.ks;
LongArray longArray2 = longArray.ModSquare(num, array);
F2mFieldElement f2mFieldElement;
f2mFieldElement.m = num;
bool flag = array.Length != 1;
f2mFieldElement.representation = (flag ? 1 : 0);
f2mFieldElement.x = longArray2;
f2mFieldElement.ks = array;
throw new NullReferenceException();
}
// Token: 0x0600A0DE RID: 41182 RVA: 0x00226490 File Offset: 0x00224690
[Token(Token = "0x600A0DE")]
[Address(RVA = "0x20822A0", Offset = "0x20810A0", VA = "0x1820822A0", Slot = "21")]
public override ECFieldElement SquareMinusProduct(ECFieldElement x, ECFieldElement y)
{
/*
An exception occurred when decompiling this method (0600A0DE)
ICSharpCode.Decompiler.DecompilerException: Error decompiling BestHTTP.SecureProtocol.Org.BouncyCastle.Math.EC.ECFieldElement BestHTTP.SecureProtocol.Org.BouncyCastle.Math.EC.F2mFieldElement::SquareMinusProduct(BestHTTP.SecureProtocol.Org.BouncyCastle.Math.EC.ECFieldElement,BestHTTP.SecureProtocol.Org.BouncyCastle.Math.EC.ECFieldElement)
---> System.Exception: Basic block has to end with unconditional control flow.
{
Block_0:
stloc:BigInteger(var_0_06, call:BigInteger(ECFieldElement::ToBigInteger, ldloc:F2mFieldElement[exp:ECFieldElement](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: 0x0600A0DF RID: 41183 RVA: 0x002264A4 File Offset: 0x002246A4
[Token(Token = "0x600A0DF")]
[Address(RVA = "0x20A1750", Offset = "0x20A0550", VA = "0x1820A1750", Slot = "22")]
public override ECFieldElement SquarePlusProduct(ECFieldElement x, ECFieldElement y)
{
LongArray longArray;
do
{
longArray = this.x;
}
while (x == 0 || x == 0 || y == 0 || y == 0);
int[] array = this.ks;
int num = this.m;
LongArray longArray2 = longArray.Square(num, array);
LongArray longArray3;
if (longArray2 == longArray)
{
longArray3 = longArray2.Copy();
}
int num2 = 0;
LongArray longArray4;
longArray3.AddShiftedByWords(longArray4, num2);
int[] array2 = this.ks;
int num3 = this.m;
longArray3.Reduce(num3, array2);
int num4 = this.m;
int[] array3 = this.ks;
F2mFieldElement f2mFieldElement;
f2mFieldElement.m = num4;
bool flag = array3.Length != 1;
f2mFieldElement.representation = (flag ? 1 : 0);
f2mFieldElement.ks = array3;
f2mFieldElement.x = longArray3;
throw new NullReferenceException();
}
// Token: 0x0600A0E0 RID: 41184 RVA: 0x00226570 File Offset: 0x00224770
[Token(Token = "0x600A0E0")]
[Address(RVA = "0x20A1990", Offset = "0x20A0790", VA = "0x1820A1990", Slot = "23")]
public override ECFieldElement SquarePow(int pow)
{
if (pow < 1)
{
}
LongArray longArray = this.x;
int[] array = this.ks;
int num = this.m;
LongArray longArray2 = longArray.ModSquareN(pow, num, array);
F2mFieldElement f2mFieldElement;
f2mFieldElement.m = num;
bool flag = array.Length != 1;
f2mFieldElement.representation = (flag ? 1 : 0);
f2mFieldElement.ks = array;
f2mFieldElement.x = longArray2;
throw new NullReferenceException();
}
// Token: 0x0600A0E1 RID: 41185 RVA: 0x002265D8 File Offset: 0x002247D8
[Token(Token = "0x600A0E1")]
[Address(RVA = "0x20A1200", Offset = "0x20A0000", VA = "0x1820A1200", Slot = "14")]
public override ECFieldElement Invert()
{
LongArray longArray = this.x;
int num = this.m;
int[] array = this.ks;
LongArray longArray2 = longArray.ModInverse(num, array);
F2mFieldElement f2mFieldElement;
f2mFieldElement.m = num;
bool flag = array.Length != 1;
f2mFieldElement.representation = (flag ? 1 : 0);
f2mFieldElement.x = longArray2;
f2mFieldElement.ks = array;
throw new NullReferenceException();
}
// Token: 0x0600A0E2 RID: 41186 RVA: 0x00226638 File Offset: 0x00224838
[Token(Token = "0x600A0E2")]
[Address(RVA = "0x20A16F0", Offset = "0x20A04F0", VA = "0x1820A16F0", Slot = "15")]
public override ECFieldElement Sqrt()
{
if (!this.x.IsZero() && !this.x.IsOne())
{
BigInteger bigInteger = base.ToBigInteger();
}
throw new NullReferenceException();
}
// Token: 0x17001960 RID: 6496
// (get) Token: 0x0600A0E3 RID: 41187 RVA: 0x00226670 File Offset: 0x00224870
[Token(Token = "0x17001960")]
public int Representation
{
[Token(Token = "0x600A0E3")]
[Address(RVA = "0x3FA560", Offset = "0x3F9360", VA = "0x1803FA560")]
get
{
return this.representation;
}
}
// Token: 0x17001961 RID: 6497
// (get) Token: 0x0600A0E4 RID: 41188 RVA: 0x00226684 File Offset: 0x00224884
[Token(Token = "0x17001961")]
public int M
{
[Token(Token = "0x600A0E4")]
[Address(RVA = "0x495080", Offset = "0x493E80", VA = "0x180495080")]
get
{
return this.m;
}
}
// Token: 0x17001962 RID: 6498
// (get) Token: 0x0600A0E5 RID: 41189 RVA: 0x00226698 File Offset: 0x00224898
[Token(Token = "0x17001962")]
public int K1
{
[Token(Token = "0x600A0E5")]
[Address(RVA = "0x20A1EA0", Offset = "0x20A0CA0", VA = "0x1820A1EA0")]
get
{
return this.ks[0];
}
}
// Token: 0x17001963 RID: 6499
// (get) Token: 0x0600A0E6 RID: 41190 RVA: 0x002266B8 File Offset: 0x002248B8
[Token(Token = "0x17001963")]
public int K2
{
[Token(Token = "0x600A0E6")]
[Address(RVA = "0x20A1EE0", Offset = "0x20A0CE0", VA = "0x1820A1EE0")]
get
{
int[] array = this.ks;
int length = array.Length;
return array[0];
}
}
// Token: 0x17001964 RID: 6500
// (get) Token: 0x0600A0E7 RID: 41191 RVA: 0x002266E4 File Offset: 0x002248E4
[Token(Token = "0x17001964")]
public int K3
{
[Token(Token = "0x600A0E7")]
[Address(RVA = "0x20A1F30", Offset = "0x20A0D30", VA = "0x1820A1F30")]
get
{
int[] array = this.ks;
int length = array.Length;
return array[1];
}
}
// Token: 0x0600A0E8 RID: 41192 RVA: 0x00226710 File Offset: 0x00224910
[Token(Token = "0x600A0E8")]
[Address(RVA = "0x20A0FE0", Offset = "0x209FDE0", VA = "0x1820A0FE0", Slot = "0")]
public override bool Equals(object obj)
{
if (obj != this)
{
if (obj != 0 && obj != 0)
{
BigInteger bigInteger = base.ToBigInteger();
}
}
return true;
}
// Token: 0x0600A0E9 RID: 41193 RVA: 0x00226738 File Offset: 0x00224938
[Token(Token = "0x600A0E9")]
[Address(RVA = "0x20A1090", Offset = "0x209FE90", VA = "0x1820A1090", Slot = "29")]
public virtual bool Equals(F2mFieldElement other)
{
int num = other.m;
if (this.m == num)
{
int num2 = other.representation;
if (this.representation == num2)
{
int[] array = other.ks;
if (Arrays.AreEqual(this.ks, array))
{
LongArray longArray = this.x;
}
}
}
throw new NullReferenceException();
}
// Token: 0x0600A0EA RID: 41194 RVA: 0x0022678C File Offset: 0x0022498C
[Token(Token = "0x600A0EA")]
[Address(RVA = "0x20A1160", Offset = "0x209FF60", VA = "0x1820A1160", Slot = "2")]
public override int GetHashCode()
{
this.x.Finalize();
return Arrays.GetHashCode(this.ks);
}
// Token: 0x04006A88 RID: 27272
[Token(Token = "0x4006A88")]
public const int Gnb = 1;
// Token: 0x04006A89 RID: 27273
[Token(Token = "0x4006A89")]
public const int Tpb = 2;
// Token: 0x04006A8A RID: 27274
[Token(Token = "0x4006A8A")]
public const int Ppb = 3;
// Token: 0x04006A8B RID: 27275
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x4006A8B")]
private int representation;
// Token: 0x04006A8C RID: 27276
[FieldOffset(Offset = "0x14")]
[Token(Token = "0x4006A8C")]
private int m;
// Token: 0x04006A8D RID: 27277
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x4006A8D")]
private int[] ks;
// Token: 0x04006A8E RID: 27278
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x4006A8E")]
internal LongArray x;
}
}