using System; using BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities; using Cpp2IlInjected; namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Digests { // Token: 0x02001CEF RID: 7407 [Token(Token = "0x2001CEF")] public class RipeMD128Digest : GeneralDigest { // Token: 0x0600BAF4 RID: 47860 RVA: 0x002A376C File Offset: 0x002A196C [Token(Token = "0x600BAF4")] [Address(RVA = "0x1FD58B0", Offset = "0x1FD46B0", VA = "0x181FD58B0")] public RipeMD128Digest() { int[] array = new int[16]; this.X = array; base..ctor(); IMemoable memoable = ((IMemoable)this).Copy(); } // Token: 0x0600BAF5 RID: 47861 RVA: 0x002A3798 File Offset: 0x002A1998 [Token(Token = "0x600BAF5")] [Address(RVA = "0x1FD5910", Offset = "0x1FD4710", VA = "0x181FD5910")] public RipeMD128Digest(RipeMD128Digest t) { int[] array = new int[16]; this.X = array; base..ctor(t); this.CopyIn(t); } // Token: 0x0600BAF6 RID: 47862 RVA: 0x002A37C4 File Offset: 0x002A19C4 [Token(Token = "0x600BAF6")] [Address(RVA = "0x1FD3FC0", Offset = "0x1FD2DC0", VA = "0x181FD3FC0")] 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: 0x17001D17 RID: 7447 // (get) Token: 0x0600BAF7 RID: 47863 RVA: 0x002A3854 File Offset: 0x002A1A54 [Token(Token = "0x17001D17")] public override string AlgorithmName { [Token(Token = "0x600BAF7")] [Address(RVA = "0x1FD5980", Offset = "0x1FD4780", VA = "0x181FD5980", Slot = "17")] get { return "RIPEMD128"; } } // Token: 0x0600BAF8 RID: 47864 RVA: 0x002A3868 File Offset: 0x002A1A68 [Token(Token = "0x600BAF8")] [Address(RVA = "0x4B6B10", Offset = "0x4B5910", VA = "0x1804B6B10", Slot = "18")] public override int GetDigestSize() { return 16; } // Token: 0x0600BAF9 RID: 47865 RVA: 0x002A3878 File Offset: 0x002A1A78 [Token(Token = "0x600BAF9")] [Address(RVA = "0x1B44340", Offset = "0x1B43140", VA = "0x181B44340", 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: 0x0600BAFA RID: 47866 RVA: 0x002A38C4 File Offset: 0x002A1AC4 [Token(Token = "0x600BAFA")] [Address(RVA = "0x1B442C0", Offset = "0x1B430C0", VA = "0x181B442C0", Slot = "15")] internal override void ProcessLength(long bitLength) { if (this.xOff > 14) { } this.X[7] = (int)bitLength; this.X[7] = (int)bitLength; } // Token: 0x0600BAFB RID: 47867 RVA: 0x002A38FC File Offset: 0x002A1AFC [Token(Token = "0x600BAFB")] [Address(RVA = "0x1B445D0", Offset = "0x1B433D0", VA = "0x181B445D0")] private void UnpackWord(int word, byte[] outBytes, int outOff) { int num = outOff + 1; } // Token: 0x0600BAFC RID: 47868 RVA: 0x002A3914 File Offset: 0x002A1B14 [Token(Token = "0x600BAFC")] [Address(RVA = "0x1B436A0", Offset = "0x1B424A0", VA = "0x181B436A0", 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: 0x0600BAFD RID: 47869 RVA: 0x002A398C File Offset: 0x002A1B8C [Token(Token = "0x600BAFD")] [Address(RVA = "0x1FD5820", Offset = "0x1FD4620", VA = "0x181FD5820", 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: 0x0600BAFE RID: 47870 RVA: 0x002A3A0C File Offset: 0x002A1C0C [Token(Token = "0x600BAFE")] [Address(RVA = "0x1B445B0", Offset = "0x1B433B0", VA = "0x181B445B0")] private int RL(int x, int n) { return x; } // Token: 0x0600BAFF RID: 47871 RVA: 0x002A3A1C File Offset: 0x002A1C1C [Token(Token = "0x600BAFF")] [Address(RVA = "0x63B460", Offset = "0x63A260", VA = "0x18063B460")] private int F1(int x, int y, int z) { return x; } // Token: 0x0600BB00 RID: 47872 RVA: 0x002A3A2C File Offset: 0x002A1C2C [Token(Token = "0x600BB00")] [Address(RVA = "0x63B3A0", Offset = "0x63A1A0", VA = "0x18063B3A0")] private int F2(int x, int y, int z) { return x; } // Token: 0x0600BB01 RID: 47873 RVA: 0x002A3A3C File Offset: 0x002A1C3C [Token(Token = "0x600BB01")] [Address(RVA = "0x1FD4150", Offset = "0x1FD2F50", VA = "0x181FD4150")] private int F3(int x, int y, int z) { return y; } // Token: 0x0600BB02 RID: 47874 RVA: 0x002A3A4C File Offset: 0x002A1C4C [Token(Token = "0x600BB02")] [Address(RVA = "0x1FD41E0", Offset = "0x1FD2FE0", VA = "0x181FD41E0")] private int F4(int x, int y, int z) { return z; } // Token: 0x0600BB03 RID: 47875 RVA: 0x002A3A5C File Offset: 0x002A1C5C [Token(Token = "0x600BB03")] [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: 0x0600BB04 RID: 47876 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x600BB04")] [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: 0x0600BB05 RID: 47877 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x600BB05")] [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: 0x0600BB06 RID: 47878 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x600BB06")] [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: 0x0600BB07 RID: 47879 RVA: 0x002A3A6C File Offset: 0x002A1C6C [Token(Token = "0x600BB07")] [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: 0x0600BB08 RID: 47880 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x600BB08")] [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: 0x0600BB09 RID: 47881 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x600BB09")] [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: 0x0600BB0A RID: 47882 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x600BB0A")] [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: 0x0600BB0B RID: 47883 RVA: 0x002A3A7C File Offset: 0x002A1C7C [Token(Token = "0x600BB0B")] [Address(RVA = "0x1FD42B0", Offset = "0x1FD30B0", VA = "0x181FD42B0", 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: 0x0600BB0C RID: 47884 RVA: 0x002A44DC File Offset: 0x002A26DC [Token(Token = "0x600BB0C")] [Address(RVA = "0x1FD4040", Offset = "0x1FD2E40", VA = "0x181FD4040", Slot = "20")] public override IMemoable Copy() { /* An exception occurred when decompiling this method (0600BB0C) 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 1660 */; } // Token: 0x0600BB0D RID: 47885 RVA: 0x002A4508 File Offset: 0x002A2708 [Token(Token = "0x600BB0D")] [Address(RVA = "0x1FD5780", Offset = "0x1FD4580", VA = "0x181FD5780", Slot = "21")] public override void Reset(IMemoable other) { do { if (other == 0) { } } while (other == 0); } // Token: 0x040076E4 RID: 30436 [Token(Token = "0x40076E4")] private const int DigestLength = 16; // Token: 0x040076E5 RID: 30437 [FieldOffset(Offset = "0x28")] [Token(Token = "0x40076E5")] private int H0; // Token: 0x040076E6 RID: 30438 [FieldOffset(Offset = "0x2C")] [Token(Token = "0x40076E6")] private int H1; // Token: 0x040076E7 RID: 30439 [FieldOffset(Offset = "0x30")] [Token(Token = "0x40076E7")] private int H2; // Token: 0x040076E8 RID: 30440 [FieldOffset(Offset = "0x34")] [Token(Token = "0x40076E8")] private int H3; // Token: 0x040076E9 RID: 30441 [FieldOffset(Offset = "0x38")] [Token(Token = "0x40076E9")] private int[] X; // Token: 0x040076EA RID: 30442 [FieldOffset(Offset = "0x40")] [Token(Token = "0x40076EA")] private int xOff; } }