using System; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; using Cpp2IlInjected; namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Engines { // Token: 0x020016CE RID: 5838 [Token(Token = "0x20016CE")] [StructLayout(3)] public class SM4Engine : IBlockCipher { // Token: 0x06009CE0 RID: 40160 RVA: 0x0023A1CC File Offset: 0x002383CC [Token(Token = "0x6009CE0")] [Address(RVA = "0x20FFF80", Offset = "0x20FE980", VA = "0x1820FFF80")] private static uint tau(uint A) { int length = SM4Engine.Sbox.Length; throw new NullReferenceException(); } // Token: 0x06009CE1 RID: 40161 RVA: 0x0023A1EC File Offset: 0x002383EC [Token(Token = "0x6009CE1")] [Address(RVA = "0x20FF9E0", Offset = "0x20FE3E0", VA = "0x1820FF9E0")] private static uint L_ap(uint B) { /* An exception occurred when decompiling this method (06009CE1) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.UInt32 BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Engines.SM4Engine::L_ap(System.UInt32) ---> System.Exception: Basic block has to end with unconditional control flow. { Block_0: stloc:int32(var_0_08, call:int32(Integers::RotateLeft, ldloc:uint32[exp:int32](B), ldc.i4:int32(13))) stloc:int32(var_1_11, call:int32(Integers::RotateLeft, ldloc:uint32[exp:int32](B), ldc.i4:int32(23))) } 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: 0x06009CE2 RID: 40162 RVA: 0x0023A20C File Offset: 0x0023840C [Token(Token = "0x6009CE2")] [Address(RVA = "0x20FFD40", Offset = "0x20FE740", VA = "0x1820FFD40")] private uint T_ap(uint Z) { /* An exception occurred when decompiling this method (06009CE2) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.UInt32 BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Engines.SM4Engine::T_ap(System.UInt32) ---> System.Exception: Basic block has to end with unconditional control flow. { Block_0: stloc:uint32(var_0_06, call:uint32(SM4Engine::tau, ldloc:uint32(Z))) stloc:int32(var_1_0F, call:int32(Integers::RotateLeft, ldloc:uint32[exp:int32](Z), ldc.i4:int32(13))) stloc:int32(var_2_18, call:int32(Integers::RotateLeft, ldloc:uint32[exp:int32](Z), ldc.i4:int32(23))) } 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: 0x06009CE3 RID: 40163 RVA: 0x0023A234 File Offset: 0x00238434 [Token(Token = "0x6009CE3")] [Address(RVA = "0x20FEE50", Offset = "0x20FD850", VA = "0x1820FEE50")] private void ExpandKey(bool forEncryption, byte[] key) { uint[] fk = SM4Engine.FK; uint[] fk2 = SM4Engine.FK; uint[] fk3 = SM4Engine.FK; uint[] fk4 = SM4Engine.FK; uint[] array = this.rk; if (!forEncryption) { uint num = SM4Engine.CK[0]; uint num2 = this.T_ap(num); array[15] = num2; uint[] array2 = this.rk; uint num3 = SM4Engine.CK[0]; uint num4 = this.T_ap(num3); array2[15] = num4; uint[] array3 = this.rk; uint num5 = SM4Engine.CK[1]; uint num6 = this.T_ap(num5); array3[14] = num6; uint[] array4 = this.rk; int length = array4.Length; uint num7 = SM4Engine.CK[1]; uint num8 = this.T_ap(num7); array4[14] = num8; uint[] array5 = this.rk; int length2 = array5.Length; uint num9 = array5[this]; uint[] ck = SM4Engine.CK; uint num11; uint num10 = this.T_ap(num11); array5[0] = num10; while (4UL <= (ulong)31L) { } return; } uint num12 = SM4Engine.CK[0]; uint num13 = this.T_ap(num12); array[0] = num13; uint[] array6 = this.rk; uint num14 = SM4Engine.CK[0]; uint num15 = this.T_ap(num14); array6[0] = num15; uint[] array7 = this.rk; int length3 = array7.Length; uint num16 = SM4Engine.CK[1]; uint num17 = this.T_ap(num16); array7[1] = num17; uint[] array8 = this.rk; int length4 = array8.Length; uint num18 = SM4Engine.CK[1]; uint num19 = this.T_ap(num18); array8[1] = num19; uint[] array9 = this.rk; int length5 = array9.Length; uint[] ck2 = SM4Engine.CK; uint num21; uint num20 = this.T_ap(num21); array9[0] = num20; throw new NullReferenceException(); } // Token: 0x06009CE4 RID: 40164 RVA: 0x0023A430 File Offset: 0x00238630 [Token(Token = "0x6009CE4")] [Address(RVA = "0x20FFA20", Offset = "0x20FE420", VA = "0x1820FFA20")] private static uint L(uint B) { /* An exception occurred when decompiling this method (06009CE4) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.UInt32 BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Engines.SM4Engine::L(System.UInt32) ---> System.Exception: Basic block has to end with unconditional control flow. { Block_0: stloc:int32(var_0_07, call:int32(Integers::RotateLeft, ldloc:uint32[exp:int32](B), ldc.i4:int32(2))) stloc:int32(var_1_10, call:int32(Integers::RotateLeft, ldloc:uint32[exp:int32](B), ldc.i4:int32(10))) stloc:int32(var_2_19, call:int32(Integers::RotateLeft, ldloc:uint32[exp:int32](B), ldc.i4:int32(18))) stloc:int32(var_3_22, call:int32(Integers::RotateLeft, ldloc:uint32[exp:int32](B), ldc.i4:int32(24))) } 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: 0x06009CE5 RID: 40165 RVA: 0x0023A460 File Offset: 0x00238660 [Token(Token = "0x6009CE5")] [Address(RVA = "0x20FFDC0", Offset = "0x20FE7C0", VA = "0x1820FFDC0")] private static uint T(uint Z) { /* An exception occurred when decompiling this method (06009CE5) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.UInt32 BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Engines.SM4Engine::T(System.UInt32) ---> System.Exception: Basic block has to end with unconditional control flow. { Block_0: stloc:uint32(var_0_06, call:uint32(SM4Engine::tau, ldloc:uint32(Z))) stloc:int32(var_1_0E, call:int32(Integers::RotateLeft, ldloc:uint32[exp:int32](Z), ldc.i4:int32(2))) stloc:int32(var_2_17, call:int32(Integers::RotateLeft, ldloc:uint32[exp:int32](Z), ldc.i4:int32(10))) stloc:int32(var_3_20, call:int32(Integers::RotateLeft, ldloc:uint32[exp:int32](Z), ldc.i4:int32(18))) stloc:int32(var_4_29, call:int32(Integers::RotateLeft, ldloc:uint32[exp:int32](Z), ldc.i4:int32(24))) } 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: 0x06009CE6 RID: 40166 RVA: 0x0023A498 File Offset: 0x00238698 [Token(Token = "0x6009CE6")] [Address(RVA = "0x20FF850", Offset = "0x20FE250", VA = "0x1820FF850", Slot = "10")] public virtual void Init(bool forEncryption, ICipherParameters parameters) { /* An exception occurred when decompiling this method (06009CE6) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Engines.SM4Engine::Init(System.Boolean,BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.ICipherParameters) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_4E: stloc:ArgumentException(var_5_5D, newobj:ArgumentException(ArgumentException::.ctor, ldstr:string("SM4 requires a 128 bit key"), ldstr:string("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: 0x170018ED RID: 6381 // (get) Token: 0x06009CE7 RID: 40167 RVA: 0x0023A504 File Offset: 0x00238704 [Token(Token = "0x170018ED")] public virtual string AlgorithmName { [Token(Token = "0x6009CE7")] [Address(RVA = "0x20FFF50", Offset = "0x20FE950", VA = "0x1820FFF50", Slot = "11")] get { return "SM4"; } } // Token: 0x170018EE RID: 6382 // (get) Token: 0x06009CE8 RID: 40168 RVA: 0x0023A518 File Offset: 0x00238718 [Token(Token = "0x170018EE")] public virtual bool IsPartialBlockOkay { [Token(Token = "0x6009CE8")] [Address(RVA = "0x413970", Offset = "0x412370", VA = "0x180413970", Slot = "12")] get { } } // Token: 0x06009CE9 RID: 40169 RVA: 0x0023A528 File Offset: 0x00238728 [Token(Token = "0x6009CE9")] [Address(RVA = "0x11B1BB0", Offset = "0x11B05B0", VA = "0x1811B1BB0", Slot = "13")] public virtual int GetBlockSize() { return 16; } // Token: 0x06009CEA RID: 40170 RVA: 0x0023A538 File Offset: 0x00238738 [Token(Token = "0x6009CEA")] [Address(RVA = "0x20FFA90", Offset = "0x20FE490", VA = "0x1820FFA90", Slot = "14")] public virtual int ProcessBlock(byte[] input, int inOff, byte[] output, int outOff) { /* An exception occurred when decompiling this method (06009CEA) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Engines.SM4Engine::ProcessBlock(System.Byte[],System.Int32,System.Byte[],System.Int32) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_6C: stloc:InvalidOperationException(var_11_76, newobj:InvalidOperationException(InvalidOperationException::.ctor, ldstr:string("SM4 not initialised"))) } 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: 0x06009CEB RID: 40171 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x6009CEB")] [Address(RVA = "0x3C9F60", Offset = "0x3C8960", VA = "0x1803C9F60", Slot = "15")] public virtual void Reset() { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06009CEC RID: 40172 RVA: 0x0023A5BC File Offset: 0x002387BC [Token(Token = "0x6009CEC")] [Address(RVA = "0x3C1670", Offset = "0x3C0070", VA = "0x1803C1670")] public SM4Engine() { this.Reset(); } // Token: 0x06009CED RID: 40173 RVA: 0x0023A5D0 File Offset: 0x002387D0 // Note: this type is marked as 'beforefieldinit'. [Token(Token = "0x6009CED")] [Address(RVA = "0x20FFE80", Offset = "0x20FE880", VA = "0x1820FFE80")] static SM4Engine() { byte[] array = new byte[256]; RuntimeHelpers.InitializeArray(array, fieldof(.C1122CB95F41A6F2E808A0B815C822BFDAB9F180).FieldHandle); SM4Engine.Sbox = array; uint[] array2 = new uint[32]; RuntimeHelpers.InitializeArray(array2, fieldof(.A77B822E6880234B59FD1904BF79AF68F5CB623F).FieldHandle); SM4Engine.CK = array2; uint[] array3 = new uint[4]; RuntimeHelpers.InitializeArray(array3, fieldof(.321CB68F886E22F95877B3535C1B34A6A94A40B6).FieldHandle); SM4Engine.FK = array3; } // Token: 0x040066D1 RID: 26321 [Token(Token = "0x40066D1")] private const int BlockSize = 16; // Token: 0x040066D2 RID: 26322 [Token(Token = "0x40066D2")] private static readonly byte[] Sbox; // Token: 0x040066D3 RID: 26323 [Token(Token = "0x40066D3")] private static readonly uint[] CK; // Token: 0x040066D4 RID: 26324 [Token(Token = "0x40066D4")] private static readonly uint[] FK; // Token: 0x040066D5 RID: 26325 [global::Cpp2IlInjected.FieldOffset(Offset = "0x10")] [Token(Token = "0x40066D5")] private uint[] rk; } }