using System; using BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities; using Cpp2IlInjected; namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Digests { // Token: 0x02001DCF RID: 7631 [Token(Token = "0x2001DCF")] public class RipeMD128Digest : GeneralDigest { // Token: 0x0600BEC2 RID: 48834 RVA: 0x002AC024 File Offset: 0x002AA224 [Token(Token = "0x600BEC2")] [Address(RVA = "0x2902560", Offset = "0x2901560", VA = "0x182902560")] public RipeMD128Digest() { int[] array = new int[16]; this.X = array; base..ctor(); IMemoable memoable = ((IMemoable)this).Copy(); } // Token: 0x0600BEC3 RID: 48835 RVA: 0x002AC050 File Offset: 0x002AA250 [Token(Token = "0x600BEC3")] [Address(RVA = "0x29025C0", Offset = "0x29015C0", VA = "0x1829025C0")] public RipeMD128Digest(RipeMD128Digest t) { int[] array = new int[16]; this.X = array; base..ctor(t); this.CopyIn(t); } // Token: 0x0600BEC4 RID: 48836 RVA: 0x002AC07C File Offset: 0x002AA27C [Token(Token = "0x600BEC4")] [Address(RVA = "0x28FE130", Offset = "0x28FD130", VA = "0x1828FE130")] private void CopyIn(RipeMD128Digest t) { base.CopyIn(t); int h = t.H0; this.H0 = h; int h2 = t.H1; this.H1 = h2; int h3 = t.H2; this.H2 = h3; int h4 = t.H3; this.H3 = h4; int[] x = t.X; int length = x.Length; int num = 0; int[] x2 = this.X; int num2 = 0; Array.Copy(x, num2, x2, num, length); int num3 = t.xOff; this.xOff = num3; } // Token: 0x17001DB4 RID: 7604 // (get) Token: 0x0600BEC5 RID: 48837 RVA: 0x002AC10C File Offset: 0x002AA30C [Token(Token = "0x17001DB4")] public override string AlgorithmName { [Token(Token = "0x600BEC5")] [Address(RVA = "0x2902630", Offset = "0x2901630", VA = "0x182902630", Slot = "17")] get { return "RIPEMD128"; } } // Token: 0x0600BEC6 RID: 48838 RVA: 0x002AC120 File Offset: 0x002AA320 [Token(Token = "0x600BEC6")] [Address(RVA = "0x8BB9C0", Offset = "0x8BA9C0", VA = "0x1808BB9C0", Slot = "18")] public override int GetDigestSize() { return 16; } // Token: 0x0600BEC7 RID: 48839 RVA: 0x002AC130 File Offset: 0x002AA330 [Token(Token = "0x600BEC7")] [Address(RVA = "0x28FEEF0", Offset = "0x28FDEF0", VA = "0x1828FEEF0", Slot = "14")] internal override void ProcessWord(byte[] input, int inOff) { int num = this.xOff; int[] x = this.X; int num2 = num + 1; this.xOff = num2; int length = input.Length; int num3 = inOff + 1; byte b; x[0] = (int)b; if (this.xOff == 16) { } } // Token: 0x0600BEC8 RID: 48840 RVA: 0x002AC17C File Offset: 0x002AA37C [Token(Token = "0x600BEC8")] [Address(RVA = "0x28FEE70", Offset = "0x28FDE70", VA = "0x1828FEE70", Slot = "15")] internal override void ProcessLength(long bitLength) { if (this.xOff > 14) { } this.X[7] = (int)bitLength; this.X[7] = (int)bitLength; } // Token: 0x0600BEC9 RID: 48841 RVA: 0x002AC1B4 File Offset: 0x002AA3B4 [Token(Token = "0x600BEC9")] [Address(RVA = "0x28FF140", Offset = "0x28FE140", VA = "0x1828FF140")] private void UnpackWord(int word, byte[] outBytes, int outOff) { int num = outOff + 1; } // Token: 0x0600BECA RID: 48842 RVA: 0x002AC1CC File Offset: 0x002AA3CC [Token(Token = "0x600BECA")] [Address(RVA = "0x28FE250", Offset = "0x28FD250", VA = "0x1828FE250", Slot = "19")] public override int DoFinal(byte[] output, int outOff) { base.Finish(); int h = this.H0; this.UnpackWord(h, output, outOff); int num = this.H1; output[0] = (byte)num; output[0] = (byte)num; int h2 = this.H2; num = h2; output[0] = (byte)num; num = h2; output[0] = (byte)num; int h3 = this.H3; num = h3; output[0] = (byte)num; num = h3; output[0] = (byte)num; throw new NullReferenceException(); } // Token: 0x0600BECB RID: 48843 RVA: 0x002AC244 File Offset: 0x002AA444 [Token(Token = "0x600BECB")] [Address(RVA = "0x28FF010", Offset = "0x28FE010", VA = "0x1828FF010", Slot = "13")] public override void Reset() { base.Reset(); int[] x = this.X; int num = 0; this.H0 = (int)((ulong)1732584193L); this.H1 = (int)((ulong)4023233417L); this.H2 = (int)((ulong)2562383102L); this.H3 = (int)((ulong)271733878L); this.xOff = num; if (num != x.Length) { num++; x[0] = num; int[] x2 = this.X; } } // Token: 0x0600BECC RID: 48844 RVA: 0x002AC2C4 File Offset: 0x002AA4C4 [Token(Token = "0x600BECC")] [Address(RVA = "0x272B5B0", Offset = "0x272A5B0", VA = "0x18272B5B0")] private int RL(int x, int n) { return x; } // Token: 0x0600BECD RID: 48845 RVA: 0x002AC2D4 File Offset: 0x002AA4D4 [Token(Token = "0x600BECD")] [Address(RVA = "0xE4D010", Offset = "0xE4C010", VA = "0x180E4D010")] private int F1(int x, int y, int z) { return x; } // Token: 0x0600BECE RID: 48846 RVA: 0x002AC2E4 File Offset: 0x002AA4E4 [Token(Token = "0x600BECE")] [Address(RVA = "0xE4CF50", Offset = "0xE4BF50", VA = "0x180E4CF50")] private int F2(int x, int y, int z) { return x; } // Token: 0x0600BECF RID: 48847 RVA: 0x002AC2F4 File Offset: 0x002AA4F4 [Token(Token = "0x600BECF")] [Address(RVA = "0x2900E90", Offset = "0x28FFE90", VA = "0x182900E90")] private int F3(int x, int y, int z) { return y; } // Token: 0x0600BED0 RID: 48848 RVA: 0x002AC304 File Offset: 0x002AA504 [Token(Token = "0x600BED0")] [Address(RVA = "0x2900F20", Offset = "0x28FFF20", VA = "0x182900F20")] private int F4(int x, int y, int z) { return z; } // Token: 0x0600BED1 RID: 48849 RVA: 0x002AC314 File Offset: 0x002AA514 [Token(Token = "0x600BED1")] [Address(RVA = "0x2900E20", Offset = "0x28FFE20", VA = "0x182900E20")] private int F1(int a, int b, int c, int d, int x, int s) { return b; } // Token: 0x0600BED2 RID: 48850 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x600BED2")] [Address(RVA = "0x2900E50", Offset = "0x28FFE50", VA = "0x182900E50")] private int F2(int a, int b, int c, int d, int x, int s) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x0600BED3 RID: 48851 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x600BED3")] [Address(RVA = "0x2900EA0", Offset = "0x28FFEA0", VA = "0x182900EA0")] private int F3(int a, int b, int c, int d, int x, int s) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x0600BED4 RID: 48852 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x600BED4")] [Address(RVA = "0x2900EE0", Offset = "0x28FFEE0", VA = "0x182900EE0")] private int F4(int a, int b, int c, int d, int x, int s) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x0600BED5 RID: 48853 RVA: 0x002AC324 File Offset: 0x002AA524 [Token(Token = "0x600BED5")] [Address(RVA = "0x2900E20", Offset = "0x28FFE20", VA = "0x182900E20")] private int FF1(int a, int b, int c, int d, int x, int s) { return b; } // Token: 0x0600BED6 RID: 48854 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x600BED6")] [Address(RVA = "0x2900F30", Offset = "0x28FFF30", VA = "0x182900F30")] private int FF2(int a, int b, int c, int d, int x, int s) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x0600BED7 RID: 48855 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x600BED7")] [Address(RVA = "0x2900F70", Offset = "0x28FFF70", VA = "0x182900F70")] private int FF3(int a, int b, int c, int d, int x, int s) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x0600BED8 RID: 48856 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x600BED8")] [Address(RVA = "0x2900FB0", Offset = "0x28FFFB0", VA = "0x182900FB0")] private int FF4(int a, int b, int c, int d, int x, int s) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x0600BED9 RID: 48857 RVA: 0x002AC334 File Offset: 0x002AA534 [Token(Token = "0x600BED9")] [Address(RVA = "0x2900FF0", Offset = "0x28FFFF0", VA = "0x182900FF0", Slot = "16")] internal override void ProcessBlock() { int[] x = this.X; int num = this.H0; int h = this.H1; int num2 = this.H2; int num3 = this.H3; int num4 = x.Length; num3 += num; num = num3; num3 = num2; num3 += num3; num3 = h; num3 += num2; num2 = num3; num3 = num2; num3 += h; num2 += num; num = num2; num3 += num3; num3 += num3; num2 = num3; num3 = num2; num3 += num3; num2 += num; num = num2; num3 += num3; num3 += num3; num2 = num3; num3 = num2; num3 += num3; num2 += num; int num5 = x[6]; num3 += num5; num3 += num3; num2 = num3; int num6 = x[7]; num3 = num2; num3 += num6; num3 += num3; int num7 = x[7]; num3 = num2; num3 += num7; num3 += num3; num4 = num3; num3 += num4; num = num3; num4 = num; num3 += num4; num3 += 1518500249; num3 += num5; int num8 = x[1]; num3 += num3; num4 = num3; num3 += num4; num4 = num3; num3 += num4; num3 += 1518500249; num3 += num3; num = num3; num4 = num; num3 = num; num4 += num7; num3 += num4; num3 = num; num3 += 1518500249; num3 += num8; num3 += num3; num4 = num3; num3 += num4; num4 = num3; num3 += num4; num = num3; num4 = num; num3 = num; num3 += num4; num2 = num3; num3 = num; num3 += 1518500249; num3 += num3; num3 = num2; num4 = num3; num3 += num4; num4 = num3; num4 += num6; num3 += num4; num = num3; num4 = num; num3 = num; int num9 = x[5]; num4 += num9; num3 += num4; num3 = num; num3 += 1518500249; num3 += num3; num4 = num3; num += 1859775393; num3 += 1859775393; num3 += num3; num2 = num3; num3 = num4; num3 += 1859775393; num3 += num; num = num3; num3 = num2; num4 += 1859775393; num3 += num6; num3 += num3; num3 = num; num2 += 1859775393; num3 += num4; num4 = num3; num3 += num2; num2 = num3; num3 = num4; num3 += num7; num += 1859775393; num3 += num; num3 += 1859775393; num = num3; num3 = num2; num4 += 1859775393; num3 += num3; num3 = num; num2 += 1859775393; num3 += num4; num += 1859775393; num3 += num2; num4 = num3; num3 += 1859775393; num3 += num; num2 = num3; num3 = num4; num3 += 1859775393; num3 += num3; num = num3; num3 = num2; num3 += num3; int num10 = x[6]; num10 += 1859775393; num3 = num; num3 += num10; num3 += num4; num10 = num3; num2 += 1859775393; num += 1859775393; num3 += num9; num9 += -1894007588; num3 += num2; num3 = num10; num2 = num3; num3 += num; num = num3; num3 = num2; num4 += num3; num3 = num4; num4 = num; num3 += -1894007588; num3 += num10; num3 = num; num3 += num4; num3 += num9; num3 += num; num9 = num3; num3 = num9; num3 += -1894007588; num4 = num3; num3 += num3; num3 += num4; num2 = num3; num3 = num9; num3 += -1894007588; num3 += num3; num = num3; num3 = num; num4 = num2; num3 += -1894007588; num3 += num9; num3 += num4; num4 = num; num10 = num3; num3 = num; num3 += num4; num4 = num3; num2 = num3; num4 += num8; num3 += num4; num = num3; num4 = num10; num6 += -1894007588; num3 = num; num3 += num4; num4 = num2; num4 += num7; num3 += num4; num10 = num3; num3 = num; num4 = num3; num3 += num6; num3 += num2; num6 = num3; num8 = num6; int num11 = this.H3; num3 += num4; num4 = num10; num3 += num4; num4 = num11; num7 = num3; num8 += -1894007588; num8 += num10; int num12 = this.H2; int num13 = this.H0; num13 += 1352829926; num13 += num4; num4 = num12; num2 = num13; num13 = num12; num13 += num4; num4 = h; num11 = num13; num13 = h; num13 += num4; num4 = num2; num12 = num13; num13 = num12; num13 += num4; num4 = num11; num10 = num13; num13 = num11; num13 += num4; num4 = num12; num2 = num13; num13 = num12; num13 += num4; num4 = num10; num11 = num13; num13 = num11; num13 += num4; num4 = num2; num12 = num13; num13 = num12; num13 += num4; num4 = num11; num10 = num13; num13 = num11; num13 += num4; num4 = num12; num2 = num13; num13 = num12; num13 += num4; num4 = num10; num11 = num13; num13 = num11; num13 += num4; num4 = num2; num12 = num13; num13 = num12; num13 += num4; num4 = num11; num10 = num13; num13 = num11; num13 += num4; num4 = num12; num2 = num13; num13 = num12; num13 += num4; num4 = num10; num11 = num13; num13 = num11; num13 += num4; num12 = num13; num13 = num12; num2 += 1548603684; num13 += 1352829926; num13 += num10; num4 = num13; num13 = num12; num11 += 1548603684; num13 += num2; num2 = num13; num13 = num4; num12 += 1548603684; num13 += num11; num11 = num13; num13 = num2; num13 += num12; num12 = num13; num13 = num11; num4 += 1548603684; num2 += 1548603684; num13 += num4; num4 = num13; num13 = num12; num11 += 1548603684; num13 += num2; num2 = num13; num13 = num4; num12 += 1548603684; num13 += num11; num11 = num13; num13 = num2; num4 += 1548603684; num13 += num12; num12 = num13; num13 = num11; num2 += 1548603684; num13 += num4; num4 = num13; num13 = num12; num11 += 1548603684; num13 += num2; num2 = num13; num13 = num4; num13 += num11; num11 = num13; num13 = num2; num12 += 1548603684; num13 += num12; num4 += 1548603684; num12 = num13; num13 = num11; num2 += 1548603684; num13 += num4; num4 = num13; num13 = num12; num11 += 1548603684; num13 += num2; num2 = num13; num13 = num4; num12 += 1548603684; num13 += num11; num11 = num13; num13 = num2; num4 += 1548603684; num13 += num12; num12 = num13; num13 = num11; num13 += num4; num10 = num13; num13 = num12; num4 = num10; num13 += num4; num3 = num13; num13 = num10; num4 = num3; num13 += num4; num2 = num13; num4 = num2; num13 = num2; num13 += num4; num11 = num13; num13 = num2; num4 = num11; num13 += num4; num12 = num13; num13 = num11; num4 = num12; num13 += num4; num10 = num13; num13 = num12; num4 = num10; num13 += num4; num3 = num13; num4 = num3; num13 = num3; num13 += num4; num2 = num13; num13 = num3; num13 += 1836072691; num13 += num12; num11 = num13; num13 = num2; num4 = num11; num13 += num4; num10 = num13; num13 = num11; num4 = num10; num13 += num4; num3 = num13; num13 = num3; num13 += 1836072691; num13 += num2; num9 = num13; num13 = num3; num13 += 1836072691; num13 += num11; num12 = num13; num13 = num9; num4 = num12; num13 += num4; num10 = num13; num13 = num12; num13 += 1836072691; num13 += num3; num2 = num13; num13 = num2; num13 += 1836072691; num13 += num9; num11 = num13; num13 = num2; num4 = num11; num13 += num4; num12 = num13; num13 = num2; num13 += num10; num10 = num13; num13 = num11; num13 += num2; num2 = num13; num13 = num2; num4 = num2; num13 += num11; num11 = num13; num13 = num4; num13 += num12; num12 = num13; num13 = num11; num4 += num10; num10 = num4; num13 += num2; num2 = num13; num13 = num2; num4 = num2; num13 += num11; num3 = num13; num13 = num4; num13 += num12; num11 = num13; num13 = num3; num4 += num10; num12 = num4; num13 += num2; num2 = num13; num13 = num2; num4 = num2; num13 += num3; num3 = num13; num13 = num4; num13 += num11; num10 = num13; num13 = num3; num4 += num12; num11 = num4; num13 += num2; num12 = num13; num13 = num12; num4 = num12; num13 += num3; num2 = num13; num4 += num10; int num14 = this.H2; num14 += num3; num14 += num11; this.H1 = num14; num14 = num4; num14 += num6; this.H2 = num14; num14 = num8; num14 += num2; this.H3 = num14; num14 += num7; int num15 = 0; this.H0 = num14; this.xOff = num15; if (num15 != x.Length) { num15++; x[0] = num15; } } // Token: 0x0600BEDA RID: 48858 RVA: 0x002ACD94 File Offset: 0x002AAF94 [Token(Token = "0x600BEDA")] [Address(RVA = "0x2900D80", Offset = "0x28FFD80", VA = "0x182900D80", Slot = "20")] public override IMemoable Copy() { /* An exception occurred when decompiling this method (0600BEDA) ICSharpCode.Decompiler.DecompilerException: Error decompiling BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.IMemoable BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Digests.RipeMD128Digest::Copy() ---> System.Exception: Basic block has to end with unconditional control flow. { Block_0: stloc:RipeMD128Digest(var_0_06, newobj:RipeMD128Digest(RipeMD128Digest::.ctor, ldloc:RipeMD128Digest(this))) stloc:int32[](var_1_0E, newarr:int32[]([mscorlib]System.Int32, ldc.i4:int32(16))) stfld:int32[](RipeMD128Digest::X, ldloc:RipeMD128Digest(var_0_06), ldloc:int32[](var_1_0E)) call:void(RipeMD128Digest::CopyIn, ldloc:RipeMD128Digest(var_0_06), ldloc:RipeMD128Digest(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: 0x0600BEDB RID: 48859 RVA: 0x002ACDC0 File Offset: 0x002AAFC0 [Token(Token = "0x600BEDB")] [Address(RVA = "0x29024C0", Offset = "0x29014C0", VA = "0x1829024C0", Slot = "21")] public override void Reset(IMemoable other) { do { if (other == 0) { } } while (other == 0); } // Token: 0x0400789D RID: 30877 [Token(Token = "0x400789D")] private const int DigestLength = 16; // Token: 0x0400789E RID: 30878 [FieldOffset(Offset = "0x28")] [Token(Token = "0x400789E")] private int H0; // Token: 0x0400789F RID: 30879 [FieldOffset(Offset = "0x2C")] [Token(Token = "0x400789F")] private int H1; // Token: 0x040078A0 RID: 30880 [FieldOffset(Offset = "0x30")] [Token(Token = "0x40078A0")] private int H2; // Token: 0x040078A1 RID: 30881 [FieldOffset(Offset = "0x34")] [Token(Token = "0x40078A1")] private int H3; // Token: 0x040078A2 RID: 30882 [FieldOffset(Offset = "0x38")] [Token(Token = "0x40078A2")] private int[] X; // Token: 0x040078A3 RID: 30883 [FieldOffset(Offset = "0x40")] [Token(Token = "0x40078A3")] private int xOff; } }