using System; using System.Runtime.InteropServices; using BestHTTP.SecureProtocol.Org.BouncyCastle.Math.EC; using Cpp2IlInjected; namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Parameters { // Token: 0x02001639 RID: 5689 [Token(Token = "0x2001639")] [StructLayout(3)] public class SM2KeyExchangePrivateParameters : ICipherParameters { // Token: 0x060097BB RID: 38843 RVA: 0x00219FBC File Offset: 0x002181BC [Token(Token = "0x60097BB")] [Address(RVA = "0x1DDF190", Offset = "0x1DDDB90", VA = "0x181DDF190")] public SM2KeyExchangePrivateParameters(bool initiator, ECPrivateKeyParameters staticPrivateKey, ECPrivateKeyParameters ephemeralPrivateKey) { /* An exception occurred when decompiling this method (060097BB) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Parameters.SM2KeyExchangePrivateParameters::.ctor(System.Boolean,BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Parameters.ECPrivateKeyParameters,BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Parameters.ECPrivateKeyParameters) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_5B: stloc:ArgumentNullException(var_3_65, newobj:ArgumentNullException(ArgumentNullException::.ctor, ldstr:string("staticPrivateKey"))) stloc:ArgumentException(var_4_70, newobj:ArgumentException(ArgumentException::.ctor, ldstr:string("Static and ephemeral private keys have different domain parameters"))) } 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: 0x1700185C RID: 6236 // (get) Token: 0x060097BC RID: 38844 RVA: 0x0021A03C File Offset: 0x0021823C [Token(Token = "0x1700185C")] public virtual bool IsInitiator { [Token(Token = "0x60097BC")] [Address(RVA = "0x559440", Offset = "0x557E40", VA = "0x180559440", Slot = "4")] get { return this.mInitiator; } } // Token: 0x1700185D RID: 6237 // (get) Token: 0x060097BD RID: 38845 RVA: 0x0021A050 File Offset: 0x00218250 [Token(Token = "0x1700185D")] public virtual ECPrivateKeyParameters StaticPrivateKey { [Token(Token = "0x60097BD")] [Address(RVA = "0x3C1240", Offset = "0x3BFC40", VA = "0x1803C1240", Slot = "5")] get { return this.mStaticPrivateKey; } } // Token: 0x1700185E RID: 6238 // (get) Token: 0x060097BE RID: 38846 RVA: 0x0021A064 File Offset: 0x00218264 [Token(Token = "0x1700185E")] public virtual ECPoint StaticPublicPoint { [Token(Token = "0x60097BE")] [Address(RVA = "0x3C1220", Offset = "0x3BFC20", VA = "0x1803C1220", Slot = "6")] get { return this.mStaticPublicPoint; } } // Token: 0x1700185F RID: 6239 // (get) Token: 0x060097BF RID: 38847 RVA: 0x0021A078 File Offset: 0x00218278 [Token(Token = "0x1700185F")] public virtual ECPrivateKeyParameters EphemeralPrivateKey { [Token(Token = "0x60097BF")] [Address(RVA = "0x3C1230", Offset = "0x3BFC30", VA = "0x1803C1230", Slot = "7")] get { return this.mEphemeralPrivateKey; } } // Token: 0x17001860 RID: 6240 // (get) Token: 0x060097C0 RID: 38848 RVA: 0x0021A08C File Offset: 0x0021828C [Token(Token = "0x17001860")] public virtual ECPoint EphemeralPublicPoint { [Token(Token = "0x60097C0")] [Address(RVA = "0x3C1250", Offset = "0x3BFC50", VA = "0x1803C1250", Slot = "8")] get { return this.mEphemeralPublicPoint; } } // Token: 0x040063DA RID: 25562 [global::Cpp2IlInjected.FieldOffset(Offset = "0x10")] [Token(Token = "0x40063DA")] private readonly bool mInitiator; // Token: 0x040063DB RID: 25563 [global::Cpp2IlInjected.FieldOffset(Offset = "0x18")] [Token(Token = "0x40063DB")] private readonly ECPrivateKeyParameters mStaticPrivateKey; // Token: 0x040063DC RID: 25564 [global::Cpp2IlInjected.FieldOffset(Offset = "0x20")] [Token(Token = "0x40063DC")] private readonly ECPoint mStaticPublicPoint; // Token: 0x040063DD RID: 25565 [global::Cpp2IlInjected.FieldOffset(Offset = "0x28")] [Token(Token = "0x40063DD")] private readonly ECPrivateKeyParameters mEphemeralPrivateKey; // Token: 0x040063DE RID: 25566 [global::Cpp2IlInjected.FieldOffset(Offset = "0x30")] [Token(Token = "0x40063DE")] private readonly ECPoint mEphemeralPublicPoint; } }