using System; using BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities; using Cpp2IlInjected; namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Digests { // Token: 0x02001CF1 RID: 7409 [Token(Token = "0x2001CF1")] public class RipeMD256Digest : GeneralDigest { // Token: 0x17001D19 RID: 7449 // (get) Token: 0x0600BB21 RID: 47905 RVA: 0x002A52AC File Offset: 0x002A34AC [Token(Token = "0x17001D19")] public override string AlgorithmName { [Token(Token = "0x600BB21")] [Address(RVA = "0x1FDA3E0", Offset = "0x1FD91E0", VA = "0x181FDA3E0", Slot = "17")] get { return "RIPEMD256"; } } // Token: 0x0600BB22 RID: 47906 RVA: 0x002A52C0 File Offset: 0x002A34C0 [Token(Token = "0x600BB22")] [Address(RVA = "0x55EA70", Offset = "0x55D870", VA = "0x18055EA70", Slot = "18")] public override int GetDigestSize() { return 32; } // Token: 0x0600BB23 RID: 47907 RVA: 0x002A52D0 File Offset: 0x002A34D0 [Token(Token = "0x600BB23")] [Address(RVA = "0x1FDA310", Offset = "0x1FD9110", VA = "0x181FDA310")] public RipeMD256Digest() { int[] array = new int[16]; this.X = array; base..ctor(); IMemoable memoable = ((IMemoable)this).Copy(); } // Token: 0x0600BB24 RID: 47908 RVA: 0x002A52FC File Offset: 0x002A34FC [Token(Token = "0x600BB24")] [Address(RVA = "0x1FDA370", Offset = "0x1FD9170", VA = "0x181FDA370")] public RipeMD256Digest(RipeMD256Digest t) { int[] array = new int[16]; this.X = array; base..ctor(t); this.CopyIn(t); } // Token: 0x0600BB25 RID: 47909 RVA: 0x002A5328 File Offset: 0x002A3528 [Token(Token = "0x600BB25")] [Address(RVA = "0x1FD8560", Offset = "0x1FD7360", VA = "0x181FD8560")] private void CopyIn(RipeMD256Digest 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 h5 = t.H4; this.H4 = h5; int h6 = t.H5; this.H5 = h6; int h7 = t.H6; this.H6 = h7; int h8 = t.H7; this.H7 = h8; 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: 0x0600BB26 RID: 47910 RVA: 0x002A53F8 File Offset: 0x002A35F8 [Token(Token = "0x600BB26")] [Address(RVA = "0x1FDA0A0", Offset = "0x1FD8EA0", VA = "0x181FDA0A0", 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: 0x0600BB27 RID: 47911 RVA: 0x002A5444 File Offset: 0x002A3644 [Token(Token = "0x600BB27")] [Address(RVA = "0x1FDA020", Offset = "0x1FD8E20", VA = "0x181FDA020", Slot = "15")] internal override void ProcessLength(long bitLength) { if (this.xOff > 14) { } this.X[7] = (int)bitLength; this.X[7] = (int)bitLength; } // Token: 0x0600BB28 RID: 47912 RVA: 0x002A547C File Offset: 0x002A367C [Token(Token = "0x600BB28")] [Address(RVA = "0x1B445D0", Offset = "0x1B433D0", VA = "0x181B445D0")] private void UnpackWord(int word, byte[] outBytes, int outOff) { int num = outOff + 1; } // Token: 0x0600BB29 RID: 47913 RVA: 0x002A5494 File Offset: 0x002A3694 [Token(Token = "0x600BB29")] [Address(RVA = "0x1FD8690", Offset = "0x1FD7490", VA = "0x181FD8690", 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; int h4 = this.H4; num = h4; output[0] = (byte)num; num = h4; output[0] = (byte)num; int h5 = this.H5; num = h5; output[0] = (byte)num; num = h5; output[0] = (byte)num; int h6 = this.H6; num = h6; output[0] = (byte)num; num = h6; output[0] = (byte)num; int h7 = this.H7; num = h7; output[0] = (byte)num; num = h7; output[0] = (byte)num; throw new NullReferenceException(); } // Token: 0x0600BB2A RID: 47914 RVA: 0x002A5584 File Offset: 0x002A3784 [Token(Token = "0x600BB2A")] [Address(RVA = "0x1FDA260", Offset = "0x1FD9060", VA = "0x181FDA260", 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.H4 = (int)((ulong)1985229328L); this.H5 = (int)((ulong)4275878552L); this.H6 = (int)((ulong)2309737967L); this.H7 = (int)((ulong)19088743L); this.xOff = num; if (num != x.Length) { num++; x[0] = num; int[] x2 = this.X; } } // Token: 0x0600BB2B RID: 47915 RVA: 0x002A5640 File Offset: 0x002A3840 [Token(Token = "0x600BB2B")] [Address(RVA = "0x1B445B0", Offset = "0x1B433B0", VA = "0x181B445B0")] private int RL(int x, int n) { return x; } // Token: 0x0600BB2C RID: 47916 RVA: 0x002A5650 File Offset: 0x002A3850 [Token(Token = "0x600BB2C")] [Address(RVA = "0x63B460", Offset = "0x63A260", VA = "0x18063B460")] private int F1(int x, int y, int z) { return x; } // Token: 0x0600BB2D RID: 47917 RVA: 0x002A5660 File Offset: 0x002A3860 [Token(Token = "0x600BB2D")] [Address(RVA = "0x63B3A0", Offset = "0x63A1A0", VA = "0x18063B3A0")] private int F2(int x, int y, int z) { return x; } // Token: 0x0600BB2E RID: 47918 RVA: 0x002A5670 File Offset: 0x002A3870 [Token(Token = "0x600BB2E")] [Address(RVA = "0x1FD4150", Offset = "0x1FD2F50", VA = "0x181FD4150")] private int F3(int x, int y, int z) { return y; } // Token: 0x0600BB2F RID: 47919 RVA: 0x002A5680 File Offset: 0x002A3880 [Token(Token = "0x600BB2F")] [Address(RVA = "0x1FD41E0", Offset = "0x1FD2FE0", VA = "0x181FD41E0")] private int F4(int x, int y, int z) { return z; } // Token: 0x0600BB30 RID: 47920 RVA: 0x002A5690 File Offset: 0x002A3890 [Token(Token = "0x600BB30")] [Address(RVA = "0x1FD40E0", Offset = "0x1FD2EE0", VA = "0x181FD40E0")] private int F1(int a, int b, int c, int d, int x, int s) { return b; } // Token: 0x0600BB31 RID: 47921 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x600BB31")] [Address(RVA = "0x1FD4110", Offset = "0x1FD2F10", VA = "0x181FD4110")] 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: 0x0600BB32 RID: 47922 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x600BB32")] [Address(RVA = "0x1FD4160", Offset = "0x1FD2F60", VA = "0x181FD4160")] 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: 0x0600BB33 RID: 47923 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x600BB33")] [Address(RVA = "0x1FD41A0", Offset = "0x1FD2FA0", VA = "0x181FD41A0")] 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: 0x0600BB34 RID: 47924 RVA: 0x002A56A0 File Offset: 0x002A38A0 [Token(Token = "0x600BB34")] [Address(RVA = "0x1FD40E0", Offset = "0x1FD2EE0", VA = "0x181FD40E0")] private int FF1(int a, int b, int c, int d, int x, int s) { return b; } // Token: 0x0600BB35 RID: 47925 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x600BB35")] [Address(RVA = "0x1FD41F0", Offset = "0x1FD2FF0", VA = "0x181FD41F0")] 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: 0x0600BB36 RID: 47926 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x600BB36")] [Address(RVA = "0x1FD4230", Offset = "0x1FD3030", VA = "0x181FD4230")] 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: 0x0600BB37 RID: 47927 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x600BB37")] [Address(RVA = "0x1FD4270", Offset = "0x1FD3070", VA = "0x181FD4270")] 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: 0x0600BB38 RID: 47928 RVA: 0x002A56B0 File Offset: 0x002A38B0 [Token(Token = "0x600BB38")] [Address(RVA = "0x1FD8B30", Offset = "0x1FD7930", VA = "0x181FD8B30", Slot = "16")] internal override void ProcessBlock() { int num = this.H4; int num2 = this.H5; int num3 = this.H0; int num4 = this.H1; int num5 = this.H2; int num6 = this.H3; int num7 = this.H6; int num8 = this.H7; int[] x = this.X; int num9 = x.Length; num6 += num3; num3 = num6; num6 = num5; num6 += num6; num6 += num5; num5 = num6; num6 = num5; num6 += num4; num4 = num6; num5 += num3; num3 = num5; num6 += num6; num6 += num6; num5 = num6; num6 = num5; num6 += num4; num4 = num6; num5 += num3; num3 = num5; num6 += num6; num6 += num6; int num10 = x[5]; num5 = num6; num6 = num5; num6 += num10; num6 += num4; num4 = num6; num5 += num3; int num11 = x[6]; num6 += num11; num6 += num6; int num12 = x[7]; num6 += num12; num6 += num6; int num13 = x[7]; num6 += num13; num6 += num4; num9 = num8; num += 1352829926; num += num9; num3 = num; num9 = num7; num = num7; num9 += num12; num += num9; num9 = num2; num4 = num; num = num4; num += num9; num9 = num3; num12 = num; num = num12; num += num9; num9 = num4; num6 = num; num = num4; num += num9; num9 = num12; num = num12; num += num9; num9 = num6; num4 = num; num = num4; num9 += num10; num += num9; num2 = num; num = num2; num9 = num4; num += 1352829926; num += num6; num12 = num; num = num4; num9 += num11; num += num9; num9 = num2; num3 = num; num = num2; num += num9; num9 = num12; num4 = num; num = num4; num9 += num13; num += num9; num9 = num3; num2 = num; num = num2; num += num9; num9 = num4; num12 = num; num = num4; num += num9; num3 = num; num = num2; num += 1352829926; num9 = num12; num += num4; num10 = num; num = num10; num += num9; num11 = num; num9 = num3; num = num11; num += num9; num13 = num; num = num6; num += num9; num = num9; num += 1518500249; num += num6; num3 = num; num = num3; num += 1518500249; num += num6; num4 = num; num = num3; num9 = num4; num += num9; num9 = num; num = num4; num += num9; num12 = num; num = num9; num9 = num12; num += num9; num3 = num; num9 = num3; num = num3; num += num9; num6 = num; num = num3; num9 = num6; num += num9; num4 = num; num = num6; num9 = num4; num += num9; num9 = num; num = num4; num += num9; num3 = num; num = num3; num += 1518500249; num += num6; num12 = num; num = num3; num9 = num12; num += num9; num4 = num; num = num12; num9 = num4; num += 1518500249; num += num9; num6 = num; num = num4; num9 = num6; int num14 = x[5]; num += num9; num6 = num; num = num6; num += 1518500249; num += num14; num += num12; num7 = num; num8 = num7; num6 = num8; num = num11; num6 += 1518500249; num6 += num4; num3 += 1548603684; num += num3; num14 += 1548603684; num3 = num; num = num13; num += num14; num += num10; num12 = num; num = num3; num += 1548603684; num += num11; num14 = num; num = num12; num3 += 1548603684; num += 1548603684; num += num13; num4 = num; num = num14; num12 += 1548603684; num += num3; num3 = num; num = num4; num14 += 1548603684; num += num12; num12 = num; num = num3; num += num14; num9 = num; num = num12; num += 1548603684; num += num4; num3 += 1548603684; num14 = num; num = num9; num12 += 1548603684; num += num3; num3 = num; num = num14; num += num12; num12 = num; num = num3; num14 += 1548603684; num += 1548603684; num += num9; num4 = num; num = num12; num3 += 1548603684; num += num14; num14 = num; num = num4; num += num3; num11 = num; num = num14; num4 += 1548603684; num += 1548603684; num += num12; num10 = num; num = num11; num += num4; num13 = num6; num = num10; num += 1548603684; num += num14; num4 = num; num += num8; num12 = num; num = num4; num += 1859775393; num += num6; num3 = num; num = num12; num4 += 1859775393; num += 1859775393; num += num7; num14 = num; num = num3; num12 += 1859775393; num += num4; num4 = num; num = num14; num3 += 1859775393; num += num12; num12 = num; num = num4; num += num3; num3 = num; num = num12; num4 += 1859775393; num += 1859775393; num += num14; num9 = num; num = num3; num += num4; num6 = num; num = num9; num3 += 1859775393; num += 1859775393; num += num12; num4 = num; num = num6; num += num3; num14 = num; num = num4; num += 1859775393; num += num9; num3 = num; num = num14; num += 1859775393; num += num6; num12 = num; num = num3; num += 1859775393; num += num4; num7 = num; num = num12; num3 += 1859775393; num14 += 1859775393; num += num14; int num15 = x[2]; num6 = num; num = num7; num8 = num6; num += num15; num15 += 1836072691; num += num3; num3 = num; num = num8; num3 += num; num = num3; num += 1836072691; num += num11; num = num13; num += num15; num += num10; num15 = num; num3 = num15; num = num15; num += num3; num3 = num; num = num15; num += 1836072691; num += num13; num9 = num; num = num3; num3 = num9; num += num3; num12 = num; num = num9; num3 = num12; num += num3; num6 = num; num3 = num6; num = num6; num += num3; num15 = num; num = num6; num3 = num15; num += num3; num3 = num; num = num15; num += num3; num = num3; num += 1836072691; num += num6; num9 = num; num3 = num9; num = num9; num += num3; num15 = num; num = num9; num3 = num15; num += num3; num3 = num; num = num15; num += num3; num10 = num; num = num3; num += 1836072691; num += num9; num11 = num; num3 = num11; num = num11; num += num3; num15 = num; num = num11; num12 = num15; num3 = num12; num += num3; num13 = num; num = num6; num += num8; num = num15; num += num12; num9 = num; num = num9; num += -1894007588; num += num15; num6 = num; num = num6; num += -1894007588; num += num6; num8 = num; num = num9; num3 = num6; num += -1894007588; num += num3; num = num6; num3 = num8; num += -1894007588; num += num9; num15 = num; num = num15; num += num3; num6 = num; num = num6; num += -1894007588; num += num8; num3 = num; num = num15; num += num3; num3 = num6; num9 = num; num = num6; num += num3; num12 = num; num = num12; num3 = num9; num += -1894007588; num += num6; num15 = num; num = num15; num += num3; num = num12; num += -1894007588; num += num9; num3 = num15; num = num15; num += -1894007588; num += num12; num6 = num; num = num6; num += num3; num3 = num6; num8 += num3; num = num3; num += num10; num15 = num; num = num3; num += num11; num6 = num; num = num6; num += num3; num3 = num; num = num3; num += num13; num9 = num; num3 += num15; num12 = num3; num = num3; num += num6; num15 = num; num = num15; num3 = num15; num += num3; num6 = num; num = num3; num += num9; num3 = num; num = num6; num3 += num12; num12 = num3; num += num15; num15 = num; num = num15; num3 = num15; num += num6; num9 = num; num = num3; num += num3; num3 = num; num = num9; num3 += num12; num6 = num3; num += num15; num15 = num; num = num15; num3 = num15; num += num9; num3 += num6; num3 += num3; if (0 != x.Length) { } } // Token: 0x0600BB39 RID: 47929 RVA: 0x002A5F0C File Offset: 0x002A410C [Token(Token = "0x600BB39")] [Address(RVA = "0x1FD85F0", Offset = "0x1FD73F0", VA = "0x181FD85F0", Slot = "20")] public override IMemoable Copy() { /* An exception occurred when decompiling this method (0600BB39) ICSharpCode.Decompiler.DecompilerException: Error decompiling BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.IMemoable BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Digests.RipeMD256Digest::Copy() ---> System.Exception: Basic block has to end with unconditional control flow. { Block_0: stloc:RipeMD256Digest(var_0_06, newobj:RipeMD256Digest(RipeMD256Digest::.ctor, ldloc:RipeMD256Digest(this))) stloc:int32[](var_1_0E, newarr:int32[]([mscorlib]System.Int32, ldc.i4:int32(16))) stfld:int32[](RipeMD256Digest::X, ldloc:RipeMD256Digest(var_0_06), ldloc:int32[](var_1_0E)) call:void(RipeMD256Digest::CopyIn, ldloc:RipeMD256Digest(var_0_06), ldloc:RipeMD256Digest(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: 0x0600BB3A RID: 47930 RVA: 0x002A5F38 File Offset: 0x002A4138 [Token(Token = "0x600BB3A")] [Address(RVA = "0x1FDA1C0", Offset = "0x1FD8FC0", VA = "0x181FDA1C0", Slot = "21")] public override void Reset(IMemoable other) { do { if (other == 0) { } } while (other == 0); } // Token: 0x040076F3 RID: 30451 [Token(Token = "0x40076F3")] private const int DigestLength = 32; // Token: 0x040076F4 RID: 30452 [FieldOffset(Offset = "0x28")] [Token(Token = "0x40076F4")] private int H0; // Token: 0x040076F5 RID: 30453 [FieldOffset(Offset = "0x2C")] [Token(Token = "0x40076F5")] private int H1; // Token: 0x040076F6 RID: 30454 [FieldOffset(Offset = "0x30")] [Token(Token = "0x40076F6")] private int H2; // Token: 0x040076F7 RID: 30455 [FieldOffset(Offset = "0x34")] [Token(Token = "0x40076F7")] private int H3; // Token: 0x040076F8 RID: 30456 [FieldOffset(Offset = "0x38")] [Token(Token = "0x40076F8")] private int H4; // Token: 0x040076F9 RID: 30457 [FieldOffset(Offset = "0x3C")] [Token(Token = "0x40076F9")] private int H5; // Token: 0x040076FA RID: 30458 [FieldOffset(Offset = "0x40")] [Token(Token = "0x40076FA")] private int H6; // Token: 0x040076FB RID: 30459 [FieldOffset(Offset = "0x44")] [Token(Token = "0x40076FB")] private int H7; // Token: 0x040076FC RID: 30460 [FieldOffset(Offset = "0x48")] [Token(Token = "0x40076FC")] private int[] X; // Token: 0x040076FD RID: 30461 [FieldOffset(Offset = "0x50")] [Token(Token = "0x40076FD")] private int xOff; } }