using System; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; using BestHTTP.SecureProtocol.Org.BouncyCastle.Math.EC.Rfc8032; using Cpp2IlInjected; namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Engines { // Token: 0x020016A5 RID: 5797 [Token(Token = "0x20016A5")] [StructLayout(3)] public class AesLightEngine : IBlockCipher { // Token: 0x06009B04 RID: 39684 RVA: 0x0022BA04 File Offset: 0x00229C04 [Token(Token = "0x6009B04")] [Address(RVA = "0x7051F0", Offset = "0x703BF0", VA = "0x1807051F0")] private static uint Shift(uint r, int shift) { return r; } // Token: 0x06009B05 RID: 39685 RVA: 0x0022BA14 File Offset: 0x00229C14 [Token(Token = "0x6009B05")] [Address(RVA = "0x20536B0", Offset = "0x20520B0", VA = "0x1820536B0")] private static uint FFmulX(uint x) { /* An exception occurred when decompiling this method (06009B05) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.UInt32 BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Engines.AesLightEngine::FFmulX(System.UInt32) ---> System.Exception: Basic block has to end with unconditional control flow. { Block_0: stloc:int64(var_0_05, mul:uint32[exp:int64](ldloc:uint32(x), conv.u4:uint32(ldc.i4:int32[exp:uint32](27)))) } 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: 0x06009B06 RID: 39686 RVA: 0x0022BA28 File Offset: 0x00229C28 [Token(Token = "0x6009B06")] [Address(RVA = "0x2053680", Offset = "0x2052080", VA = "0x182053680")] private static uint FFmulX2(uint x) { return x; } // Token: 0x06009B07 RID: 39687 RVA: 0x0022BA38 File Offset: 0x00229C38 [Token(Token = "0x6009B07")] [Address(RVA = "0x22DC840", Offset = "0x22DB240", VA = "0x1822DC840")] private static uint Mcol(uint x) { return x; } // Token: 0x06009B08 RID: 39688 RVA: 0x0022BA48 File Offset: 0x00229C48 [Token(Token = "0x6009B08")] [Address(RVA = "0x22DC780", Offset = "0x22DB180", VA = "0x1822DC780")] private static uint Inv_Mcol(uint x) { return x; } // Token: 0x06009B09 RID: 39689 RVA: 0x0022BA58 File Offset: 0x00229C58 [Token(Token = "0x6009B09")] [Address(RVA = "0x22DCA50", Offset = "0x22DB450", VA = "0x1822DCA50")] private static uint SubWord(uint x) { int length = AesLightEngine.S.Length; throw new NullReferenceException(); } // Token: 0x06009B0A RID: 39690 RVA: 0x0022BA78 File Offset: 0x00229C78 [Token(Token = "0x6009B0A")] [Address(RVA = "0x22DB040", Offset = "0x22D9A40", VA = "0x1822DB040")] private uint[][] GenerateWorkingKey(byte[] key, bool forEncryption) { uint[][] array; int i; for (;;) { if (key.Length == 7) { this.ROUNDS = key; array = new uint[key][]; i = 0; uint[] array2 = new uint[4]; if (array2 != 0) { } i++; array[0] = array2; while (i <= this.rcon) { } if (typeof(uint[]).TypeHandle == 0) { goto IL_3FB; } if (typeof(uint[]).TypeHandle != 0) { if (typeof(uint[]).TypeHandle == 0) { goto IL_1E5; } uint num; if (typeof(uint[]).TypeHandle != 0 && typeof(uint[]).TypeHandle == num) { break; } } } } uint[] array3 = array[0]; array3[0] = (uint)i; uint[] array4 = array[0]; array4[0] = array3; uint[] array5 = array[0]; array5[1] = array4; uint[] array6 = array[0]; array6[1] = array5; uint[] array7 = array[1]; array7[0] = array6; uint[] array8 = array[1]; array8[0] = array7; uint[] array9 = array[1]; array9[1] = array8; array[1][1] = array9; uint num2; num2 += num2; uint num3 = AesLightEngine.SubWord(array9); ulong num4; array[(int)num4][0] = i; array[(int)num4][0] = array3; array[(int)num4][1] = array4; array[(int)num4][1] = array5; uint num5 = AesLightEngine.SubWord(array5); ulong num6 = num4 + 1UL; array[(int)num6][0] = array6; array[(int)num6][0] = array7; array[(int)num6][1] = array8; array[(int)num6][1] = array9; uint num7 = AesLightEngine.SubWord(array9); array[14][0] = (uint)i; array[14][0] = array3; array[14][1] = array4; uint[] array10 = array[14]; array10[1] = array5; IL_1E5: uint[] array11 = array[0]; array11[0] = array10; uint[] array12 = array[0]; array12[0] = array11; uint[] array13 = array[0]; array13[1] = array12; uint[] array14 = array[0]; array14[1] = array13; uint[] array15 = array[1]; array15[0] = array14; array[1][0] = array15; uint num8 = AesLightEngine.SubWord(array15); array[1][1] = num8; array[1][1] = array11; array[2][0] = array12; array[2][0] = array13; array[2][1] = array14; array[2][1] = array15; ulong num9; num9 += num9; uint num10 = AesLightEngine.SubWord(array15); uint num11; array[(int)num11][0] = num8; array[(int)num11][0] = array11; array[(int)num11][1] = array12; array[(int)num11][1] = array13; uint num12 = num11 + 1U; array[(int)num12][0] = array14; array[(int)num12][0] = array15; num9 += num9; uint num13 = AesLightEngine.SubWord(array15); array[(int)num12][1] = num8; array[(int)num12][1] = array11; num11 += (uint)2; array[(int)num11][0] = array12; array[(int)num11][0] = array13; array[(int)num11][1] = array14; uint[] array16 = array[(int)num11]; num11 += (uint)3; array16[1] = array15; uint num14 = AesLightEngine.SubWord(array15); array[12][0] = num8; array[12][0] = array11; array[12][1] = array12; uint[] array17 = array[12]; array17[1] = array13; IL_3FB: uint[] array18 = array[0]; array18[0] = array17; uint[] array19 = array[0]; array19[0] = array18; uint[] array20 = array[0]; array20[1] = array19; array[0][1] = array20; uint num15 = AesLightEngine.SubWord(array20); byte[] array21 = AesLightEngine.rcon; uint num17; uint num16 = num17 - 1U; array[(int)num17][0] = array17; array[(int)num17][0] = array18; array[(int)num17][1] = array19; uint[] array22 = array[(int)num17]; num17 += (uint)1; array22[1] = array20; while (num17 <= (uint)10) { } int num18 = 0; uint[] array23 = array[(int)num17]; uint num19 = AesLightEngine.Inv_Mcol(array23[num18]); num18++; array23[0] = num19; num17 += (uint)1; return array; } // Token: 0x06009B0B RID: 39691 RVA: 0x0022BF6C File Offset: 0x0022A16C [Token(Token = "0x6009B0B")] [Address(RVA = "0x3C1670", Offset = "0x3C0070", VA = "0x1803C1670")] public AesLightEngine() { this.Reset(); } // Token: 0x06009B0C RID: 39692 RVA: 0x0022BF80 File Offset: 0x0022A180 [Token(Token = "0x6009B0C")] [Address(RVA = "0x22DC670", Offset = "0x22DB070", VA = "0x1822DC670", Slot = "10")] public virtual void Init(bool forEncryption, ICipherParameters parameters) { /* An exception occurred when decompiling this method (06009B0C) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Engines.AesLightEngine::Init(System.Boolean,BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.ICipherParameters) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_22: stloc:ArgumentException(var_4_32, newobj:ArgumentException(ArgumentException::.ctor, call:string(string::Concat, ldstr:string("invalid parameter passed to AES init - "), ldloc:string(var_3)))) } 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: 0x170018B7 RID: 6327 // (get) Token: 0x06009B0D RID: 39693 RVA: 0x0022BFC0 File Offset: 0x0022A1C0 [Token(Token = "0x170018B7")] public virtual string AlgorithmName { [Token(Token = "0x6009B0D")] [Address(RVA = "0x22DCC40", Offset = "0x22DB640", VA = "0x1822DCC40", Slot = "11")] get { return "AES"; } } // Token: 0x170018B8 RID: 6328 // (get) Token: 0x06009B0E RID: 39694 RVA: 0x0022BFD4 File Offset: 0x0022A1D4 [Token(Token = "0x170018B8")] public virtual bool IsPartialBlockOkay { [Token(Token = "0x6009B0E")] [Address(RVA = "0x413970", Offset = "0x412370", VA = "0x180413970", Slot = "12")] get { } } // Token: 0x06009B0F RID: 39695 RVA: 0x0022BFE4 File Offset: 0x0022A1E4 [Token(Token = "0x6009B0F")] [Address(RVA = "0x11B1BB0", Offset = "0x11B05B0", VA = "0x1811B1BB0", Slot = "13")] public virtual int GetBlockSize() { return 16; } // Token: 0x06009B10 RID: 39696 RVA: 0x0022BFF4 File Offset: 0x0022A1F4 [Token(Token = "0x6009B10")] [Address(RVA = "0x22DC8D0", Offset = "0x22DB2D0", VA = "0x1822DC8D0", Slot = "14")] public virtual int ProcessBlock(byte[] input, int inOff, byte[] output, int outOff) { /* An exception occurred when decompiling this method (06009B10) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Engines.AesLightEngine::ProcessBlock(System.Byte[],System.Int32,System.Byte[],System.Int32) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_5D: stloc:InvalidOperationException(var_7_67, newobj:InvalidOperationException(InvalidOperationException::.ctor, ldstr:string("AES engine 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.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: 0x06009B11 RID: 39697 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x6009B11")] [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: 0x06009B12 RID: 39698 RVA: 0x0022C06C File Offset: 0x0022A26C [Token(Token = "0x6009B12")] [Address(RVA = "0x2055280", Offset = "0x2053C80", VA = "0x182055280")] private void UnPackBlock(byte[] bytes, int off) { } // Token: 0x06009B13 RID: 39699 RVA: 0x0022C07C File Offset: 0x0022A27C [Token(Token = "0x6009B13")] [Address(RVA = "0x2054F70", Offset = "0x2053970", VA = "0x182054F70")] private void PackBlock(byte[] bytes, int off) { Ed25519.Encode32(this.C0, bytes, off); Ed25519.Encode32(this.C1, bytes, off); Ed25519.Encode32(this.C2, bytes, off); Ed25519.Encode32(this.C3, bytes, off); } // Token: 0x06009B14 RID: 39700 RVA: 0x0022C0C0 File Offset: 0x0022A2C0 [Token(Token = "0x6009B14")] [Address(RVA = "0x22D9D00", Offset = "0x22D8700", VA = "0x1822D9D00")] private void EncryptBlock(uint[][] KW) { int length = KW.Length; uint[] array = KW[0]; int length2 = array.Length; uint num = array[0]; uint num2 = array[0]; uint num3 = array[1]; uint num4 = array[1]; if (array > (uint)1) { int length3 = AesLightEngine.S.Length; num2 = num4; byte b; uint num5 = AesLightEngine.Mcol((uint)b); uint[] array2; uint num6 = array2[0]; int length4 = AesLightEngine.S.Length; byte b2; uint num7 = AesLightEngine.Mcol((uint)b2); uint num8 = array2[0]; int length5 = AesLightEngine.S.Length; num4 = num2; byte b3; uint num9 = AesLightEngine.Mcol((uint)b3); uint num10 = array2[1]; int length6 = AesLightEngine.S.Length; byte b4; uint num11 = AesLightEngine.Mcol((uint)b4); uint num12 = array2[1]; int length7 = AesLightEngine.S.Length; byte b5; uint num13 = AesLightEngine.Mcol((uint)b5); int length8 = AesLightEngine.S.Length; byte b6; uint num14 = AesLightEngine.Mcol((uint)b6); int length9 = AesLightEngine.S.Length; byte b7; uint num15 = AesLightEngine.Mcol((uint)b7); int length10 = AesLightEngine.S.Length; byte b8; uint num16 = AesLightEngine.Mcol((uint)b8); } int length11 = AesLightEngine.S.Length; byte b9; uint num17 = AesLightEngine.Mcol((uint)b9); uint[] array3; uint num18 = array3[0]; int length12 = AesLightEngine.S.Length; byte b10; uint num19 = AesLightEngine.Mcol((uint)b10); uint num20 = array3[0]; int length13 = AesLightEngine.S.Length; byte b11; uint num21 = AesLightEngine.Mcol((uint)b11); uint num22 = array3[1]; int length14 = AesLightEngine.S.Length; byte b12; uint num23 = AesLightEngine.Mcol((uint)b12); uint num24 = array3[1]; uint num25; num25 += (uint)1; int length15 = AesLightEngine.S.Length; int length16 = AesLightEngine.S.Length; int length17 = AesLightEngine.S.Length; int length18 = AesLightEngine.S.Length; } // Token: 0x06009B15 RID: 39701 RVA: 0x0022C340 File Offset: 0x0022A540 [Token(Token = "0x6009B15")] [Address(RVA = "0x22D89E0", Offset = "0x22D73E0", VA = "0x1822D89E0")] private void DecryptBlock(uint[][] KW) { int length = KW.Length; uint[] array; int length2 = array.Length; uint num = array[0]; uint num2 = array[0]; uint num3 = array[1]; uint num4 = array[1]; uint[] array2 = KW[array]; int length3 = AesLightEngine.Si.Length; byte b; uint num5 = AesLightEngine.Inv_Mcol((uint)b); uint num6 = array2[0]; int length4 = AesLightEngine.Si.Length; byte b2; uint num7 = AesLightEngine.Inv_Mcol((uint)b2); uint num8 = array2[0]; int length5 = AesLightEngine.Si.Length; byte b3; uint num9 = AesLightEngine.Inv_Mcol((uint)b3); uint num10 = array2[1]; int length6 = AesLightEngine.Si.Length; byte b4; uint num11 = AesLightEngine.Inv_Mcol((uint)b4); uint num12 = array2[1]; int length7 = AesLightEngine.Si.Length; byte b5; uint num13 = AesLightEngine.Inv_Mcol((uint)b5); int length8 = AesLightEngine.Si.Length; byte b6; uint num14 = AesLightEngine.Inv_Mcol((uint)b6); int length9 = AesLightEngine.Si.Length; byte b7; uint num15 = AesLightEngine.Inv_Mcol((uint)b7); int length10 = AesLightEngine.Si.Length; byte b8; uint num16 = AesLightEngine.Inv_Mcol((uint)b8); uint[] array3 = KW[1]; int length11 = AesLightEngine.Si.Length; byte b9; uint num17 = AesLightEngine.Inv_Mcol((uint)b9); uint num18 = array3[0]; int length12 = AesLightEngine.Si.Length; byte b10; uint num19 = AesLightEngine.Inv_Mcol((uint)b10); uint num20 = array3[0]; int length13 = AesLightEngine.Si.Length; byte b11; uint num21 = AesLightEngine.Inv_Mcol((uint)b11); uint num22 = array3[1]; int length14 = AesLightEngine.Si.Length; byte b12; uint num23 = AesLightEngine.Inv_Mcol((uint)b12); uint num24 = array3[1]; int length15 = AesLightEngine.Si.Length; int length16 = AesLightEngine.Si.Length; int length17 = AesLightEngine.Si.Length; int length18 = AesLightEngine.Si.Length; } // Token: 0x06009B16 RID: 39702 RVA: 0x0022C5B8 File Offset: 0x0022A7B8 // Note: this type is marked as 'beforefieldinit'. [Token(Token = "0x6009B16")] [Address(RVA = "0x22DCB70", Offset = "0x22DB570", VA = "0x1822DCB70")] static AesLightEngine() { byte[] array = new byte[256]; RuntimeHelpers.InitializeArray(array, fieldof(.8F22C9ECE1331718CBD268A9BBFD2F5E451441E3).FieldHandle); AesLightEngine.S = array; byte[] array2 = new byte[256]; RuntimeHelpers.InitializeArray(array2, fieldof(.0C4110BC17D746F018F47B49E0EB0D6590F69939).FieldHandle); AesLightEngine.Si = array2; byte[] array3 = new byte[30]; RuntimeHelpers.InitializeArray(array3, fieldof(.B8DB0CB599EDD82A386D1A154FB3EB9235513DAD).FieldHandle); AesLightEngine.rcon = array3; } // Token: 0x040065B0 RID: 26032 [Token(Token = "0x40065B0")] private static readonly byte[] S; // Token: 0x040065B1 RID: 26033 [Token(Token = "0x40065B1")] private static readonly byte[] Si; // Token: 0x040065B2 RID: 26034 [Token(Token = "0x40065B2")] private static readonly byte[] rcon; // Token: 0x040065B3 RID: 26035 [Token(Token = "0x40065B3")] private const uint m1 = 2155905152U; // Token: 0x040065B4 RID: 26036 [Token(Token = "0x40065B4")] private const uint m2 = 2139062143U; // Token: 0x040065B5 RID: 26037 [Token(Token = "0x40065B5")] private const uint m3 = 27U; // Token: 0x040065B6 RID: 26038 [Token(Token = "0x40065B6")] private const uint m4 = 3233857728U; // Token: 0x040065B7 RID: 26039 [Token(Token = "0x40065B7")] private const uint m5 = 1061109567U; // Token: 0x040065B8 RID: 26040 [global::Cpp2IlInjected.FieldOffset(Offset = "0x10")] [Token(Token = "0x40065B8")] private int ROUNDS; // Token: 0x040065B9 RID: 26041 [global::Cpp2IlInjected.FieldOffset(Offset = "0x18")] [Token(Token = "0x40065B9")] private uint[][] WorkingKey; // Token: 0x040065BA RID: 26042 [global::Cpp2IlInjected.FieldOffset(Offset = "0x20")] [Token(Token = "0x40065BA")] private uint C0; // Token: 0x040065BB RID: 26043 [global::Cpp2IlInjected.FieldOffset(Offset = "0x24")] [Token(Token = "0x40065BB")] private uint C1; // Token: 0x040065BC RID: 26044 [global::Cpp2IlInjected.FieldOffset(Offset = "0x28")] [Token(Token = "0x40065BC")] private uint C2; // Token: 0x040065BD RID: 26045 [global::Cpp2IlInjected.FieldOffset(Offset = "0x2C")] [Token(Token = "0x40065BD")] private uint C3; // Token: 0x040065BE RID: 26046 [global::Cpp2IlInjected.FieldOffset(Offset = "0x30")] [Token(Token = "0x40065BE")] private bool forEncryption; // Token: 0x040065BF RID: 26047 [Token(Token = "0x40065BF")] private const int BLOCK_SIZE = 16; } }