using System; using BestHTTP.SecureProtocol.Org.BouncyCastle.Math; using Cpp2IlInjected; namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Parameters { // Token: 0x02001BDC RID: 7132 [Token(Token = "0x2001BDC")] public class DHParameters : ICipherParameters { // Token: 0x0600B24E RID: 45646 RVA: 0x0026DD84 File Offset: 0x0026BF84 [Token(Token = "0x600B24E")] [Address(RVA = "0x18024B0", Offset = "0x18012B0", VA = "0x1818024B0")] private static int GetDefaultMParam(int lParam) { if (lParam != 0) { return Math.Min(lParam, 160); } return 160; } // Token: 0x0600B24F RID: 45647 RVA: 0x0026DDA8 File Offset: 0x0026BFA8 [Token(Token = "0x600B24F")] [Address(RVA = "0x1802A90", Offset = "0x1801890", VA = "0x181802A90")] public DHParameters(BigInteger p, BigInteger g) { } // Token: 0x0600B250 RID: 45648 RVA: 0x0026DDBC File Offset: 0x0026BFBC [Token(Token = "0x600B250")] [Address(RVA = "0x18029D0", Offset = "0x18017D0", VA = "0x1818029D0")] public DHParameters(BigInteger p, BigInteger g, BigInteger q) { } // Token: 0x0600B251 RID: 45649 RVA: 0x0026DDCC File Offset: 0x0026BFCC [Token(Token = "0x600B251")] [Address(RVA = "0x1802B10", Offset = "0x1801910", VA = "0x181802B10")] public DHParameters(BigInteger p, BigInteger g, BigInteger q, int l) { } // Token: 0x0600B252 RID: 45650 RVA: 0x0026DDDC File Offset: 0x0026BFDC [Token(Token = "0x600B252")] [Address(RVA = "0x1802990", Offset = "0x1801790", VA = "0x181802990")] public DHParameters(BigInteger p, BigInteger g, BigInteger q, int m, int l) { } // Token: 0x0600B253 RID: 45651 RVA: 0x0026DDEC File Offset: 0x0026BFEC [Token(Token = "0x600B253")] [Address(RVA = "0x1802A50", Offset = "0x1801850", VA = "0x181802A50")] public DHParameters(BigInteger p, BigInteger g, BigInteger q, BigInteger j, DHValidationParameters validation) { } // Token: 0x0600B254 RID: 45652 RVA: 0x0026DDFC File Offset: 0x0026BFFC [Token(Token = "0x600B254")] [Address(RVA = "0x18025A0", Offset = "0x18013A0", VA = "0x1818025A0")] public DHParameters(BigInteger p, BigInteger g, BigInteger q, int m, int l, BigInteger j, DHValidationParameters validation) { /* An exception occurred when decompiling this method (0600B254) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Parameters.DHParameters::.ctor(BestHTTP.SecureProtocol.Org.BouncyCastle.Math.BigInteger,BestHTTP.SecureProtocol.Org.BouncyCastle.Math.BigInteger,BestHTTP.SecureProtocol.Org.BouncyCastle.Math.BigInteger,System.Int32,System.Int32,BestHTTP.SecureProtocol.Org.BouncyCastle.Math.BigInteger,BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Parameters.DHValidationParameters) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_B3: stloc:ArgumentException(var_13_C2, newobj:ArgumentException(ArgumentException::.ctor, ldstr:string("q too big to be a factor of (p-1)"), ldstr:string("q"))) } 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 1660 */; } // Token: 0x17001BFE RID: 7166 // (get) Token: 0x0600B255 RID: 45653 RVA: 0x0026DECC File Offset: 0x0026C0CC [Token(Token = "0x17001BFE")] public BigInteger P { [Token(Token = "0x600B255")] [Address(RVA = "0x3F6E20", Offset = "0x3F5C20", VA = "0x1803F6E20")] get { return this.p; } } // Token: 0x17001BFF RID: 7167 // (get) Token: 0x0600B256 RID: 45654 RVA: 0x0026DEE0 File Offset: 0x0026C0E0 [Token(Token = "0x17001BFF")] public BigInteger G { [Token(Token = "0x600B256")] [Address(RVA = "0x3F5F40", Offset = "0x3F4D40", VA = "0x1803F5F40")] get { return this.g; } } // Token: 0x17001C00 RID: 7168 // (get) Token: 0x0600B257 RID: 45655 RVA: 0x0026DEF4 File Offset: 0x0026C0F4 [Token(Token = "0x17001C00")] public BigInteger Q { [Token(Token = "0x600B257")] [Address(RVA = "0x3F6400", Offset = "0x3F5200", VA = "0x1803F6400")] get { return this.q; } } // Token: 0x17001C01 RID: 7169 // (get) Token: 0x0600B258 RID: 45656 RVA: 0x0026DF08 File Offset: 0x0026C108 [Token(Token = "0x17001C01")] public BigInteger J { [Token(Token = "0x600B258")] [Address(RVA = "0x3F63E0", Offset = "0x3F51E0", VA = "0x1803F63E0")] get { return this.j; } } // Token: 0x17001C02 RID: 7170 // (get) Token: 0x0600B259 RID: 45657 RVA: 0x0026DF1C File Offset: 0x0026C11C [Token(Token = "0x17001C02")] public int M { [Token(Token = "0x600B259")] [Address(RVA = "0x4730E0", Offset = "0x471EE0", VA = "0x1804730E0")] get { return this.m; } } // Token: 0x17001C03 RID: 7171 // (get) Token: 0x0600B25A RID: 45658 RVA: 0x0026DF30 File Offset: 0x0026C130 [Token(Token = "0x17001C03")] public int L { [Token(Token = "0x600B25A")] [Address(RVA = "0x436510", Offset = "0x435310", VA = "0x180436510")] get { return this.l; } } // Token: 0x17001C04 RID: 7172 // (get) Token: 0x0600B25B RID: 45659 RVA: 0x0026DF44 File Offset: 0x0026C144 [Token(Token = "0x17001C04")] public DHValidationParameters ValidationParameters { [Token(Token = "0x600B25B")] [Address(RVA = "0x3F63D0", Offset = "0x3F51D0", VA = "0x1803F63D0")] get { return this.validation; } } // Token: 0x0600B25C RID: 45660 RVA: 0x0026DF58 File Offset: 0x0026C158 [Token(Token = "0x600B25C")] [Address(RVA = "0x1802400", Offset = "0x1801200", VA = "0x181802400", Slot = "0")] public override bool Equals(object obj) { if (obj != this) { if (obj == 0 || obj != 0) { } } return true; } // Token: 0x0600B25D RID: 45661 RVA: 0x0026DF78 File Offset: 0x0026C178 [Token(Token = "0x600B25D")] [Address(RVA = "0x1802370", Offset = "0x1801170", VA = "0x181802370", Slot = "4")] protected virtual bool Equals(DHParameters other) { BigInteger bigInteger = this.p; BigInteger bigInteger2 = this.g; BigInteger bigInteger3 = other.q; return object.Equals(this.q, bigInteger3); } // Token: 0x0600B25E RID: 45662 RVA: 0x0026DFB0 File Offset: 0x0026C1B0 [Token(Token = "0x600B25E")] [Address(RVA = "0x1802520", Offset = "0x1801320", VA = "0x181802520", Slot = "2")] public override int GetHashCode() { this.p.Finalize(); this.g.Finalize(); BigInteger bigInteger = this.q; if (bigInteger != 0) { bigInteger.Finalize(); } throw new NullReferenceException(); } // Token: 0x0400719C RID: 29084 [Token(Token = "0x400719C")] private const int DefaultMinimumLength = 160; // Token: 0x0400719D RID: 29085 [FieldOffset(Offset = "0x10")] [Token(Token = "0x400719D")] private readonly BigInteger p; // Token: 0x0400719E RID: 29086 [FieldOffset(Offset = "0x18")] [Token(Token = "0x400719E")] private readonly BigInteger g; // Token: 0x0400719F RID: 29087 [FieldOffset(Offset = "0x20")] [Token(Token = "0x400719F")] private readonly BigInteger q; // Token: 0x040071A0 RID: 29088 [FieldOffset(Offset = "0x28")] [Token(Token = "0x40071A0")] private readonly BigInteger j; // Token: 0x040071A1 RID: 29089 [FieldOffset(Offset = "0x30")] [Token(Token = "0x40071A1")] private readonly int m; // Token: 0x040071A2 RID: 29090 [FieldOffset(Offset = "0x34")] [Token(Token = "0x40071A2")] private readonly int l; // Token: 0x040071A3 RID: 29091 [FieldOffset(Offset = "0x38")] [Token(Token = "0x40071A3")] private readonly DHValidationParameters validation; } }