m
This commit is contained in:
@@ -0,0 +1,458 @@
|
||||
using System;
|
||||
using System.Runtime.Serialization.Formatters.Binary;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Macs
|
||||
{
|
||||
// Token: 0x02001D33 RID: 7475
|
||||
[Token(Token = "0x2001D33")]
|
||||
public class Poly1305 : IMac
|
||||
{
|
||||
// Token: 0x0600B955 RID: 47445 RVA: 0x00283CB4 File Offset: 0x00281EB4
|
||||
[Token(Token = "0x600B955")]
|
||||
[Address(RVA = "0x25C4EA0", Offset = "0x25C3EA0", VA = "0x1825C4EA0")]
|
||||
public Poly1305()
|
||||
{
|
||||
byte[] array = new byte[1];
|
||||
this.singleByte = array;
|
||||
byte[] array2 = new byte[16];
|
||||
this.currentBlock = array2;
|
||||
base..ctor();
|
||||
this.cipher = (ulong)0L;
|
||||
}
|
||||
|
||||
// Token: 0x0600B956 RID: 47446 RVA: 0x00283CF0 File Offset: 0x00281EF0
|
||||
[Token(Token = "0x600B956")]
|
||||
[Address(RVA = "0x25C4F10", Offset = "0x25C3F10", VA = "0x1825C4F10")]
|
||||
public Poly1305(IBlockCipher cipher)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600B956)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Macs.Poly1305::.ctor(BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.IBlockCipher)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_38:
|
||||
stloc:ArgumentException(var_2_42, newobj:ArgumentException(ArgumentException::.ctor, ldstr:string("Poly1305 requires a 128 bit block cipher.")))
|
||||
}
|
||||
|
||||
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: 0x0600B957 RID: 47447 RVA: 0x00283D40 File Offset: 0x00281F40
|
||||
[Token(Token = "0x600B957")]
|
||||
[Address(RVA = "0x25C45A0", Offset = "0x25C35A0", VA = "0x1825C45A0", Slot = "4")]
|
||||
public void Init(ICipherParameters parameters)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600B957)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Macs.Poly1305::Init(BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.ICipherParameters)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_4F:
|
||||
stloc:ArgumentException(var_8_5E, newobj:ArgumentException(ArgumentException::.ctor, ldstr:string("Poly1305 requires an IV when used with a block cipher."), 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: 0x0600B958 RID: 47448 RVA: 0x00283DAC File Offset: 0x00281FAC
|
||||
[Token(Token = "0x600B958")]
|
||||
[Address(RVA = "0x25C4AF0", Offset = "0x25C3AF0", VA = "0x1825C4AF0")]
|
||||
private void SetKey(byte[] key, byte[] nonce)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600B958)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Macs.Poly1305::SetKey(System.Byte[],System.Byte[])
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_B2:
|
||||
stloc:ArgumentException(var_6_BC, newobj:ArgumentException(ArgumentException::.ctor, ldstr:string("Poly1305 key must be 256 bits.")))
|
||||
}
|
||||
|
||||
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: 0x17001D31 RID: 7473
|
||||
// (get) Token: 0x0600B959 RID: 47449 RVA: 0x00283E78 File Offset: 0x00282078
|
||||
[Token(Token = "0x17001D31")]
|
||||
public string AlgorithmName
|
||||
{
|
||||
[Token(Token = "0x600B959")]
|
||||
[Address(RVA = "0x25C4FE0", Offset = "0x25C3FE0", VA = "0x1825C4FE0", Slot = "5")]
|
||||
get
|
||||
{
|
||||
if (this.cipher == 0)
|
||||
{
|
||||
return "Poly1305";
|
||||
}
|
||||
string text;
|
||||
return text;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600B95A RID: 47450 RVA: 0x00283E98 File Offset: 0x00282098
|
||||
[Token(Token = "0x600B95A")]
|
||||
[Address(RVA = "0x8BB9C0", Offset = "0x8BA9C0", VA = "0x1808BB9C0", Slot = "6")]
|
||||
public int GetMacSize()
|
||||
{
|
||||
return 16;
|
||||
}
|
||||
|
||||
// Token: 0x0600B95B RID: 47451 RVA: 0x00283EA8 File Offset: 0x002820A8
|
||||
[Token(Token = "0x600B95B")]
|
||||
[Address(RVA = "0x25C4D90", Offset = "0x25C3D90", VA = "0x1825C4D90", Slot = "7")]
|
||||
public void Update(byte input)
|
||||
{
|
||||
this.singleByte[0] = input;
|
||||
byte[] array = this.singleByte;
|
||||
int num = this.currentBlockOffset;
|
||||
int num2 = 0;
|
||||
if (num == 16)
|
||||
{
|
||||
this.ProcessBlock();
|
||||
this.currentBlockOffset = num2;
|
||||
}
|
||||
uint num3;
|
||||
num3 -= (uint)num2;
|
||||
uint num4;
|
||||
num4 -= (uint)num2;
|
||||
int num5 = Math.Min((int)num4, (int)num3);
|
||||
int num6 = this.currentBlockOffset;
|
||||
byte[] array2 = this.currentBlock;
|
||||
Array.Copy(array, num2, array2, num6, num5);
|
||||
num2 += num5;
|
||||
}
|
||||
|
||||
// Token: 0x0600B95C RID: 47452 RVA: 0x00283F20 File Offset: 0x00282120
|
||||
[Token(Token = "0x600B95C")]
|
||||
[Address(RVA = "0x25C4230", Offset = "0x25C3230", VA = "0x1825C4230", Slot = "8")]
|
||||
public void BlockUpdate(byte[] input, int inOff, int len)
|
||||
{
|
||||
int num = 0;
|
||||
if (len > 0)
|
||||
{
|
||||
if (this.currentBlockOffset == 16)
|
||||
{
|
||||
this.ProcessBlock();
|
||||
this.currentBlockOffset = num;
|
||||
}
|
||||
uint num2;
|
||||
num2 -= (uint)num;
|
||||
int num3 = Math.Min(len, (int)num2);
|
||||
int num4 = this.currentBlockOffset;
|
||||
byte[] array = this.currentBlock;
|
||||
Array.Copy(input, 0, array, num4, num3);
|
||||
num += num3;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600B95D RID: 47453 RVA: 0x00283F74 File Offset: 0x00282174
|
||||
[Token(Token = "0x600B95D")]
|
||||
[Address(RVA = "0x25C47C0", Offset = "0x25C37C0", VA = "0x1825C47C0")]
|
||||
private void ProcessBlock()
|
||||
{
|
||||
if (this.currentBlockOffset < 16)
|
||||
{
|
||||
byte[] array = this.currentBlock;
|
||||
int num = this.currentBlockOffset;
|
||||
num++;
|
||||
if (num < 16)
|
||||
{
|
||||
byte[] array2 = this.currentBlock;
|
||||
num++;
|
||||
}
|
||||
}
|
||||
byte[] array3 = this.currentBlock;
|
||||
int num2 = 0;
|
||||
int @int = SerializationHeaderRecord.GetInt32(array3, num2);
|
||||
int int2 = SerializationHeaderRecord.GetInt32(this.currentBlock, 4);
|
||||
int num3 = SerializationHeaderRecord.GetInt32(this.currentBlock, 8);
|
||||
int int3 = SerializationHeaderRecord.GetInt32(this.currentBlock, 12);
|
||||
uint num4 = this.h4;
|
||||
num4 += (uint)int3;
|
||||
if (this.currentBlockOffset == 16)
|
||||
{
|
||||
num4 += (uint)16777216;
|
||||
}
|
||||
uint num5 = this.r0;
|
||||
uint num6 = this.s4;
|
||||
uint num7 = this.s2;
|
||||
uint num8 = this.s1;
|
||||
uint num9 = this.s3;
|
||||
uint num10 = this.r1;
|
||||
uint num11 = num4 * num7;
|
||||
uint num12 = num8 * num4;
|
||||
int num13 = int3 * (int)num7;
|
||||
num3 = int3;
|
||||
num7 = num4;
|
||||
num12 += (uint)num13;
|
||||
num13 = @int;
|
||||
int num14 = num13 * (int)num5;
|
||||
uint num15 = num7 * num9;
|
||||
num12 += (uint)num14;
|
||||
num14 = num3;
|
||||
int num16 = num14 * (int)num9;
|
||||
num12 += (uint)num16;
|
||||
num16 = int2;
|
||||
int num17 = num16 * (int)num6;
|
||||
num12 += (uint)num17;
|
||||
num17 = int3;
|
||||
int num18 = num17 * (int)num9;
|
||||
num11 += (uint)num18;
|
||||
num18 = @int;
|
||||
int num19 = num18 * (int)num10;
|
||||
num11 += (uint)num19;
|
||||
num19 = int2;
|
||||
int num20 = num19 * (int)num5;
|
||||
num11 += (uint)num20;
|
||||
num20 = num3;
|
||||
int num21 = num20 * (int)num6;
|
||||
num11 += (uint)num21;
|
||||
num11 += num12;
|
||||
int num22 = num3 * (int)num6;
|
||||
num15 += (uint)num22;
|
||||
num22 = @int;
|
||||
int num23 = num22 * int3;
|
||||
num15 += (uint)num23;
|
||||
num23 = int2;
|
||||
int num24 = num23 * (int)num10;
|
||||
num15 += (uint)num24;
|
||||
num24 = num3;
|
||||
int num25 = num24 * (int)num5;
|
||||
num15 += (uint)num25;
|
||||
num15 += num11;
|
||||
int num26 = num3 * (int)num5;
|
||||
num11 = num4;
|
||||
uint num27 = num11 * num6;
|
||||
num26 += (int)num27;
|
||||
int num28 = @int * (int)num9;
|
||||
num26 += num28;
|
||||
num28 = int2;
|
||||
int num29 = num28 * int3;
|
||||
num26 += num29;
|
||||
num29 = num3;
|
||||
int num30 = num29 * (int)num10;
|
||||
num26 += num30;
|
||||
num26 += (int)num15;
|
||||
uint num31 = num4 * num5;
|
||||
int num32 = num3 * (int)num10;
|
||||
int num33 = int2 * (int)num9;
|
||||
int num34 = num3 * int3;
|
||||
uint num35 = num15 * (uint)@int;
|
||||
num35 += (uint)num32;
|
||||
num35 += num31;
|
||||
num35 += (uint)num33;
|
||||
num35 += (uint)num34;
|
||||
num35 += (uint)num26;
|
||||
num35 += num12;
|
||||
num35 += num11;
|
||||
}
|
||||
|
||||
// Token: 0x0600B95E RID: 47454 RVA: 0x002841F0 File Offset: 0x002823F0
|
||||
[Token(Token = "0x600B95E")]
|
||||
[Address(RVA = "0x25C4320", Offset = "0x25C3320", VA = "0x1825C4320", Slot = "9")]
|
||||
public int DoFinal(byte[] output, int outOff)
|
||||
{
|
||||
uint num;
|
||||
Check.DataLength(output, outOff, (int)num, "Output buffer is too short.");
|
||||
if (this.currentBlockOffset > 0)
|
||||
{
|
||||
this.ProcessBlock();
|
||||
}
|
||||
uint num2 = this.h0;
|
||||
num2 += (uint)outOff;
|
||||
num2 += num2;
|
||||
num2 += num2;
|
||||
this.h0 = num2;
|
||||
this.h1 = output;
|
||||
this.h2 = output;
|
||||
num2 += num2;
|
||||
num2 += output;
|
||||
return 16;
|
||||
}
|
||||
|
||||
// Token: 0x0600B95F RID: 47455 RVA: 0x0028424C File Offset: 0x0028244C
|
||||
[Token(Token = "0x600B95F")]
|
||||
[Address(RVA = "0x25C4AE0", Offset = "0x25C3AE0", VA = "0x1825C4AE0", Slot = "10")]
|
||||
public void Reset()
|
||||
{
|
||||
int num = 0;
|
||||
this.currentBlockOffset = num;
|
||||
this.h3 = (uint)num;
|
||||
this.h1 = (uint)num;
|
||||
}
|
||||
|
||||
// Token: 0x0600B960 RID: 47456 RVA: 0x00284270 File Offset: 0x00282470
|
||||
[Token(Token = "0x600B960")]
|
||||
[Address(RVA = "0x25C5040", Offset = "0x25C4040", VA = "0x1825C5040")]
|
||||
private static ulong mul32x32_64(uint i1, uint i2)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600B960)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.UInt64 BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Macs.Poly1305::mul32x32_64(System.UInt32,System.UInt32)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
Block_0:
|
||||
stloc:uint32(var_0_03, mul:uint32(ldloc:uint32(i1), ldloc:uint32(i1)))
|
||||
}
|
||||
|
||||
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: 0x040074E2 RID: 29922
|
||||
[Token(Token = "0x40074E2")]
|
||||
private const int BlockSize = 16;
|
||||
|
||||
// Token: 0x040074E3 RID: 29923
|
||||
[FieldOffset(Offset = "0x10")]
|
||||
[Token(Token = "0x40074E3")]
|
||||
private readonly IBlockCipher cipher;
|
||||
|
||||
// Token: 0x040074E4 RID: 29924
|
||||
[FieldOffset(Offset = "0x18")]
|
||||
[Token(Token = "0x40074E4")]
|
||||
private readonly byte[] singleByte;
|
||||
|
||||
// Token: 0x040074E5 RID: 29925
|
||||
[FieldOffset(Offset = "0x20")]
|
||||
[Token(Token = "0x40074E5")]
|
||||
private uint r0;
|
||||
|
||||
// Token: 0x040074E6 RID: 29926
|
||||
[FieldOffset(Offset = "0x24")]
|
||||
[Token(Token = "0x40074E6")]
|
||||
private uint r1;
|
||||
|
||||
// Token: 0x040074E7 RID: 29927
|
||||
[FieldOffset(Offset = "0x28")]
|
||||
[Token(Token = "0x40074E7")]
|
||||
private uint r2;
|
||||
|
||||
// Token: 0x040074E8 RID: 29928
|
||||
[FieldOffset(Offset = "0x2C")]
|
||||
[Token(Token = "0x40074E8")]
|
||||
private uint r3;
|
||||
|
||||
// Token: 0x040074E9 RID: 29929
|
||||
[FieldOffset(Offset = "0x30")]
|
||||
[Token(Token = "0x40074E9")]
|
||||
private uint r4;
|
||||
|
||||
// Token: 0x040074EA RID: 29930
|
||||
[FieldOffset(Offset = "0x34")]
|
||||
[Token(Token = "0x40074EA")]
|
||||
private uint s1;
|
||||
|
||||
// Token: 0x040074EB RID: 29931
|
||||
[FieldOffset(Offset = "0x38")]
|
||||
[Token(Token = "0x40074EB")]
|
||||
private uint s2;
|
||||
|
||||
// Token: 0x040074EC RID: 29932
|
||||
[FieldOffset(Offset = "0x3C")]
|
||||
[Token(Token = "0x40074EC")]
|
||||
private uint s3;
|
||||
|
||||
// Token: 0x040074ED RID: 29933
|
||||
[FieldOffset(Offset = "0x40")]
|
||||
[Token(Token = "0x40074ED")]
|
||||
private uint s4;
|
||||
|
||||
// Token: 0x040074EE RID: 29934
|
||||
[FieldOffset(Offset = "0x44")]
|
||||
[Token(Token = "0x40074EE")]
|
||||
private uint k0;
|
||||
|
||||
// Token: 0x040074EF RID: 29935
|
||||
[FieldOffset(Offset = "0x48")]
|
||||
[Token(Token = "0x40074EF")]
|
||||
private uint k1;
|
||||
|
||||
// Token: 0x040074F0 RID: 29936
|
||||
[FieldOffset(Offset = "0x4C")]
|
||||
[Token(Token = "0x40074F0")]
|
||||
private uint k2;
|
||||
|
||||
// Token: 0x040074F1 RID: 29937
|
||||
[FieldOffset(Offset = "0x50")]
|
||||
[Token(Token = "0x40074F1")]
|
||||
private uint k3;
|
||||
|
||||
// Token: 0x040074F2 RID: 29938
|
||||
[FieldOffset(Offset = "0x58")]
|
||||
[Token(Token = "0x40074F2")]
|
||||
private byte[] currentBlock;
|
||||
|
||||
// Token: 0x040074F3 RID: 29939
|
||||
[FieldOffset(Offset = "0x60")]
|
||||
[Token(Token = "0x40074F3")]
|
||||
private int currentBlockOffset;
|
||||
|
||||
// Token: 0x040074F4 RID: 29940
|
||||
[FieldOffset(Offset = "0x64")]
|
||||
[Token(Token = "0x40074F4")]
|
||||
private uint h0;
|
||||
|
||||
// Token: 0x040074F5 RID: 29941
|
||||
[FieldOffset(Offset = "0x68")]
|
||||
[Token(Token = "0x40074F5")]
|
||||
private uint h1;
|
||||
|
||||
// Token: 0x040074F6 RID: 29942
|
||||
[FieldOffset(Offset = "0x6C")]
|
||||
[Token(Token = "0x40074F6")]
|
||||
private uint h2;
|
||||
|
||||
// Token: 0x040074F7 RID: 29943
|
||||
[FieldOffset(Offset = "0x70")]
|
||||
[Token(Token = "0x40074F7")]
|
||||
private uint h3;
|
||||
|
||||
// Token: 0x040074F8 RID: 29944
|
||||
[FieldOffset(Offset = "0x74")]
|
||||
[Token(Token = "0x40074F8")]
|
||||
private uint h4;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user