Files
Jan2021-Cpp2Il-Dump/Assembly-CSharp/BestHTTP/SecureProtocol/Org/BouncyCastle/Crypto/Signers/Iso9796d2PssSigner.cs
T
2026-04-08 23:40:05 +02:00

648 lines
25 KiB
C#

using System;
using System.Runtime.InteropServices;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Security;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Signers
{
// Token: 0x020015D7 RID: 5591
[Token(Token = "0x20015D7")]
[StructLayout(3)]
public class Iso9796d2PssSigner : ISignerWithRecovery, ISigner
{
// Token: 0x06009564 RID: 38244 RVA: 0x002110D0 File Offset: 0x0020F2D0
[Token(Token = "0x6009564")]
[Address(RVA = "0x3EDE90", Offset = "0x3EC890", VA = "0x1803EDE90", Slot = "5")]
public byte[] GetRecoveredMessage()
{
return this.recoveredMessage;
}
// Token: 0x06009565 RID: 38245 RVA: 0x002110E4 File Offset: 0x0020F2E4
[Token(Token = "0x6009565")]
[Address(RVA = "0x1E455C0", Offset = "0x1E43FC0", VA = "0x181E455C0")]
public Iso9796d2PssSigner(IAsymmetricBlockCipher cipher, IDigest digest, int saltLength, bool isImplicit)
{
/*
An exception occurred when decompiling this method (06009565)
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Signers.Iso9796d2PssSigner::.ctor(BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.IAsymmetricBlockCipher,BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.IDigest,System.Int32,System.Boolean)
---> System.Exception: Basic block has to end with unconditional control flow.
{
IL_46:
stloc:ArgumentException(var_1_55, newobj:ArgumentException(ArgumentException::.ctor, ldstr:string("no valid trailer"), ldstr:string("digest")))
}
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: 0x06009566 RID: 38246 RVA: 0x00211148 File Offset: 0x0020F348
[Token(Token = "0x6009566")]
[Address(RVA = "0x1E454A0", Offset = "0x1E43EA0", VA = "0x181E454A0")]
public Iso9796d2PssSigner(IAsymmetricBlockCipher cipher, IDigest digest, int saltLength)
{
/*
An exception occurred when decompiling this method (06009566)
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Signers.Iso9796d2PssSigner::.ctor(BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.IAsymmetricBlockCipher,BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.IDigest,System.Int32)
---> System.Exception: Basic block has to end with unconditional control flow.
{
IL_39:
stloc:ArgumentException(var_1_48, newobj:ArgumentException(ArgumentException::.ctor, ldstr:string("no valid trailer"), ldstr:string("digest")))
}
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: 0x170017E8 RID: 6120
// (get) Token: 0x06009567 RID: 38247 RVA: 0x002111A0 File Offset: 0x0020F3A0
[Token(Token = "0x170017E8")]
public virtual string AlgorithmName
{
[Token(Token = "0x6009567")]
[Address(RVA = "0x1E456F0", Offset = "0x1E440F0", VA = "0x181E456F0", Slot = "14")]
get
{
IDigest digest = this.digest;
return 0 + "withISO9796-2S2";
}
}
// Token: 0x06009568 RID: 38248 RVA: 0x002111C8 File Offset: 0x0020F3C8
[Token(Token = "0x6009568")]
[Address(RVA = "0x1E43FB0", Offset = "0x1E429B0", VA = "0x181E43FB0", Slot = "15")]
public virtual void Init(bool forSigning, ICipherParameters parameters)
{
while (parameters != 0)
{
if (parameters == 0)
{
if ((parameters == 0 && parameters == 0) || !forSigning)
{
continue;
}
int num = 0;
if (parameters == 0)
{
continue;
}
this.standardSalt = num;
int num2 = this.saltLength;
}
if (parameters != 0)
{
int num3 = 0;
if (forSigning)
{
this.random = num3;
break;
}
IL_5B:
IAsymmetricBlockCipher asymmetricBlockCipher = this.cipher;
int num4 = 0;
int num5;
this.keyBits = num5;
num5 += 7;
num4 += num5;
byte[] array = new byte[num4];
this.block = array;
if (this.trailer != 188)
{
IDigest digest = this.digest;
int num6 = array.Length;
num6 -= array;
}
IDigest digest2 = this.digest;
int num7 = array.Length;
num7 -= array;
byte[] array2 = new byte[num7];
this.mBuf = array2;
string algorithmName = ((ISigner)this).AlgorithmName;
return;
}
}
if (forSigning)
{
SecureRandom secureRandom = new SecureRandom();
this.random = secureRandom;
goto IL_5B;
}
goto IL_5B;
}
// Token: 0x06009569 RID: 38249 RVA: 0x002112C0 File Offset: 0x0020F4C0
[Token(Token = "0x6009569")]
[Address(RVA = "0x1E44380", Offset = "0x1E42D80", VA = "0x181E44380")]
private bool IsSameAs(byte[] a, byte[] b)
{
int length = b.Length;
if (this.messageLength == length)
{
int num = 0;
int num2 = 0;
if (num2 != length)
{
num++;
}
}
throw new NullReferenceException();
}
// Token: 0x0600956A RID: 38250 RVA: 0x002112F4 File Offset: 0x0020F4F4
[Token(Token = "0x600956A")]
[Address(RVA = "0x1E43A90", Offset = "0x1E42490", VA = "0x181E43A90")]
private void ClearBlock(byte[] block)
{
int length = block.Length;
int num = 0;
Array.Clear(block, num, length);
}
// Token: 0x0600956B RID: 38251 RVA: 0x00211318 File Offset: 0x0020F518
[Token(Token = "0x600956B")]
[Address(RVA = "0x1E44AC0", Offset = "0x1E434C0", VA = "0x181E44AC0", Slot = "16")]
public virtual void UpdateWithRecoveredMessage(byte[] signature)
{
int length;
int num;
do
{
IAsymmetricBlockCipher asymmetricBlockCipher = this.cipher;
length = signature.Length;
num = 0;
int num2 = this.keyBits;
num2 += 7;
num2 += typeof(IAsymmetricBlockCipher).TypeHandle;
int num3 = new byte[num2].Length;
num3 -= typeof(byte[]).TypeHandle;
if (asymmetricBlockCipher == 0)
{
goto IL_59;
}
}
while (IsoTrailers.NoTrailerAvailable(this.digest));
int num4 = IsoTrailers.GetTrailer(this.digest);
IL_59:
byte[] array = new byte[this.hLen];
IDigest digest = this.digest;
int num5 = this.hLen;
digest -= num5;
uint num6;
digest -= num6;
byte[] array2;
int length2 = array2.Length;
if (num != length2)
{
num++;
}
if (num < 0)
{
num++;
}
bool flag = num > 1;
this.fullMessage = flag;
int num7 = array2.Length;
num7 -= num;
byte[] array3 = new byte[num7];
this.recoveredMessage = array3;
int length3 = array3.Length;
byte[] array4 = this.recoveredMessage;
byte[] array5 = this.mBuf;
this.preBlock = length;
this.preMStart = num;
this.preTLength = (int)num6;
this.preSig = signature;
}
// Token: 0x0600956C RID: 38252 RVA: 0x00211448 File Offset: 0x0020F648
[Token(Token = "0x600956C")]
[Address(RVA = "0x1E44ED0", Offset = "0x1E438D0", VA = "0x181E44ED0", Slot = "17")]
public virtual void Update(byte input)
{
if (this.preSig == (ulong)0L)
{
byte[] array = this.mBuf;
int num = this.messageLength;
if (num < array.Length)
{
int num2 = num + 1;
this.messageLength = num2;
return;
}
}
IDigest digest = this.digest;
throw new NullReferenceException();
}
// Token: 0x0600956D RID: 38253 RVA: 0x00211490 File Offset: 0x0020F690
[Token(Token = "0x600956D")]
[Address(RVA = "0x1E439B0", Offset = "0x1E423B0", VA = "0x181E439B0", Slot = "18")]
public virtual void BlockUpdate(byte[] input, int inOff, int length)
{
if (this.preSig == (ulong)0L)
{
if (length > 0)
{
int length2 = this.mBuf.Length;
if (this.messageLength >= length2)
{
goto IL_27;
}
}
return;
}
IL_27:
while (length <= 0)
{
}
IDigest digest = this.digest;
throw new NullReferenceException();
}
// Token: 0x0600956E RID: 38254 RVA: 0x002114D4 File Offset: 0x0020F6D4
[Token(Token = "0x600956E")]
[Address(RVA = "0x1E44A00", Offset = "0x1E43400", VA = "0x181E44A00", Slot = "19")]
public virtual void Reset()
{
IDigest digest = this.digest;
byte[] array = this.mBuf;
int num = 0;
this.messageLength = num;
if (array != 0)
{
int length = array.Length;
int num2 = 0;
Array.Clear(array, num2, length);
}
byte[] array2 = this.recoveredMessage;
if (array2 != 0)
{
int length2 = array2.Length;
int num3 = 0;
Array.Clear(array2, num3, length2);
this.recoveredMessage = num;
}
this.fullMessage = num != 0;
if (this.preSig != num)
{
byte[] array3 = this.preBlock;
this.preSig = num;
int length3 = array3.Length;
int num4 = 0;
Array.Clear(array3, num4, length3);
this.preBlock = num;
}
}
// Token: 0x0600956F RID: 38255 RVA: 0x00211580 File Offset: 0x0020F780
[Token(Token = "0x600956F")]
[Address(RVA = "0x1E43AC0", Offset = "0x1E424C0", VA = "0x181E43AC0", Slot = "20")]
public virtual byte[] GenerateSignature()
{
IDigest digest = this.digest;
byte[] array = new byte[0];
IDigest digest2 = this.digest;
int num = 0;
byte[] array2 = new byte[0];
int num2 = this.messageLength;
this.LtoOSP((long)num2, array2);
IDigest digest3 = this.digest;
int length = array2.Length;
IDigest digest4 = this.digest;
int num3 = this.messageLength;
IDigest digest5 = this.digest;
int length2 = array.Length;
byte[] array3 = this.standardSalt;
if (array3 == 0)
{
byte[] array4 = new byte[this.saltLength];
double num4 = this.random.NextDouble();
}
IDigest digest6 = this.digest;
int length3 = array3.Length;
IDigest digest7 = this.digest;
byte[] array5 = new byte[length3];
IDigest digest8 = this.digest;
byte[] array6 = this.block;
bool flag = this.trailer != 188;
int num5 = array6.Length;
num5 -= (flag ? 1 : 0);
int num6 = this.messageLength;
int num7 = 0;
byte[] array7 = this.block;
Array.Copy(this.mBuf, num7, array7, num5, num6);
int num8 = this.messageLength;
int num9 = 0;
int length4 = array3.Length;
num8 += num5;
byte[] array8 = this.block;
Array.Copy(array3, num9, array8, num8, length4);
int num10 = this.block.Length;
int num11 = 0;
int length5 = array5.Length;
num10 -= (flag ? 1 : 0);
int length6 = this.MaskGeneratorFunction1(array5, num11, length5, num10).Length;
byte[] array9 = this.block;
if (num != length6)
{
num++;
}
int num12 = this.hLen;
int num13 = 0;
int num14 = array9.Length;
num14 -= num12;
num14 -= (flag ? 1 : 0);
Array.Copy(array5, num13, array9, num14, num12);
int num15 = this.trailer;
byte[] array10 = this.block;
int length8;
if (num15 != 188)
{
int length7 = array10.Length;
length8 = this.block.Length;
int num16 = this.trailer;
int num17 = length8 - 1;
}
int num18 = length8 - 1;
byte[] array11 = this.block;
byte[] array12 = this.block;
IAsymmetricBlockCipher asymmetricBlockCipher = this.cipher;
int length9 = array12.Length;
byte[] array13 = this.mBuf;
int length10 = array13.Length;
int num19 = 0;
Array.Clear(array13, num19, length10);
byte[] array14 = this.block;
int length11 = array14.Length;
int num20 = 0;
Array.Clear(array14, num20, length11);
this.messageLength = num;
throw new NullReferenceException();
}
// Token: 0x06009570 RID: 38256 RVA: 0x002117E8 File Offset: 0x0020F9E8
[Token(Token = "0x6009570")]
[Address(RVA = "0x1E44F80", Offset = "0x1E43980", VA = "0x181E44F80", Slot = "21")]
public virtual bool VerifySignature(byte[] signature)
{
/*
An exception occurred when decompiling this method (06009570)
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Signers.Iso9796d2PssSigner::VerifySignature(System.Byte[])
---> System.Exception: Basic block has to end with unconditional control flow.
{
IL_1EF:
stloc:InvalidOperationException(var_42_1F9, newobj:InvalidOperationException(InvalidOperationException::.ctor, ldstr:string("UpdateWithRecoveredMessage called on different signature")))
}
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: 0x06009571 RID: 38257 RVA: 0x002119F0 File Offset: 0x0020FBF0
[Token(Token = "0x6009571")]
[Address(RVA = "0x566D70", Offset = "0x565770", VA = "0x180566D70", Slot = "22")]
public virtual bool HasFullMessage()
{
return this.fullMessage;
}
// Token: 0x06009572 RID: 38258 RVA: 0x00211A04 File Offset: 0x0020FC04
[Token(Token = "0x6009572")]
[Address(RVA = "0x1E44410", Offset = "0x1E42E10", VA = "0x181E44410")]
private void ItoOSP(int i, byte[] sp)
{
sp[0] = (byte)i;
sp[0] = (byte)i;
sp[0] = (byte)i;
sp[0] = (byte)i;
}
// Token: 0x06009573 RID: 38259 RVA: 0x00211A38 File Offset: 0x0020FC38
[Token(Token = "0x6009573")]
[Address(RVA = "0x1E444A0", Offset = "0x1E42EA0", VA = "0x181E444A0")]
private void LtoOSP(long l, byte[] sp)
{
sp[0] = (byte)l;
sp[0] = (byte)l;
sp[0] = (byte)l;
sp[0] = (byte)l;
sp[0] = (byte)l;
sp[0] = (byte)l;
sp[0] = (byte)l;
sp[0] = (byte)l;
}
// Token: 0x06009574 RID: 38260 RVA: 0x00211A8C File Offset: 0x0020FC8C
[Token(Token = "0x6009574")]
[Address(RVA = "0x1E445E0", Offset = "0x1E42FE0", VA = "0x181E445E0")]
private byte[] MaskGeneratorFunction1(byte[] Z, int zOff, int zLen, int length)
{
byte[] array = new byte[0];
byte[] array2 = new byte[this.hLen];
byte[] array3 = new byte[4];
IDigest digest = this.digest;
int num = 0;
array3[0] = (byte)num;
array3[0] = (byte)num;
array3[0] = (byte)num;
array3[0] = (byte)num;
IDigest digest2 = this.digest;
int num2 = 0;
if (num2 < digest)
{
num2 += num2;
num2++;
}
IDigest digest3 = this.digest;
int num3 = 0;
if (num3 < zOff)
{
num3 += num3;
num3++;
}
int num4 = 0;
IDigest digest4 = this.digest;
int num5 = 0;
if (num5 < num4)
{
num5 += num5;
num5++;
}
int num6 = this.hLen;
int num7 = num6 * num;
int num8 = 0;
Array.Copy(array2, num8, array, num7, num6);
int num9 = this.hLen;
this.ItoOSP(1, array3);
IDigest digest5 = this.digest;
IDigest digest6 = this.digest;
int length2 = array3.Length;
IDigest digest7 = this.digest;
int num10 = this.hLen;
int num11 = array.Length;
int num12 = 0;
num11 -= num10;
Array.Copy(array2, num12, array, num10, num11);
return array;
}
// Token: 0x04006289 RID: 25225
[Token(Token = "0x4006289")]
[Obsolete]
public const int TrailerImplicit = 188;
// Token: 0x0400628A RID: 25226
[Token(Token = "0x400628A")]
[Obsolete]
public const int TrailerRipeMD160 = 12748;
// Token: 0x0400628B RID: 25227
[Token(Token = "0x400628B")]
[Obsolete]
public const int TrailerRipeMD128 = 13004;
// Token: 0x0400628C RID: 25228
[Token(Token = "0x400628C")]
[Obsolete]
public const int TrailerSha1 = 13260;
// Token: 0x0400628D RID: 25229
[Token(Token = "0x400628D")]
[Obsolete]
public const int TrailerSha256 = 13516;
// Token: 0x0400628E RID: 25230
[Token(Token = "0x400628E")]
[Obsolete]
public const int TrailerSha512 = 13772;
// Token: 0x0400628F RID: 25231
[Token(Token = "0x400628F")]
[Obsolete]
public const int TrailerSha384 = 14028;
// Token: 0x04006290 RID: 25232
[Token(Token = "0x4006290")]
[Obsolete]
public const int TrailerWhirlpool = 14284;
// Token: 0x04006291 RID: 25233
[global::Cpp2IlInjected.FieldOffset(Offset = "0x10")]
[Token(Token = "0x4006291")]
private IDigest digest;
// Token: 0x04006292 RID: 25234
[global::Cpp2IlInjected.FieldOffset(Offset = "0x18")]
[Token(Token = "0x4006292")]
private IAsymmetricBlockCipher cipher;
// Token: 0x04006293 RID: 25235
[global::Cpp2IlInjected.FieldOffset(Offset = "0x20")]
[Token(Token = "0x4006293")]
private SecureRandom random;
// Token: 0x04006294 RID: 25236
[global::Cpp2IlInjected.FieldOffset(Offset = "0x28")]
[Token(Token = "0x4006294")]
private byte[] standardSalt;
// Token: 0x04006295 RID: 25237
[global::Cpp2IlInjected.FieldOffset(Offset = "0x30")]
[Token(Token = "0x4006295")]
private int hLen;
// Token: 0x04006296 RID: 25238
[global::Cpp2IlInjected.FieldOffset(Offset = "0x34")]
[Token(Token = "0x4006296")]
private int trailer;
// Token: 0x04006297 RID: 25239
[global::Cpp2IlInjected.FieldOffset(Offset = "0x38")]
[Token(Token = "0x4006297")]
private int keyBits;
// Token: 0x04006298 RID: 25240
[global::Cpp2IlInjected.FieldOffset(Offset = "0x40")]
[Token(Token = "0x4006298")]
private byte[] block;
// Token: 0x04006299 RID: 25241
[global::Cpp2IlInjected.FieldOffset(Offset = "0x48")]
[Token(Token = "0x4006299")]
private byte[] mBuf;
// Token: 0x0400629A RID: 25242
[global::Cpp2IlInjected.FieldOffset(Offset = "0x50")]
[Token(Token = "0x400629A")]
private int messageLength;
// Token: 0x0400629B RID: 25243
[global::Cpp2IlInjected.FieldOffset(Offset = "0x54")]
[Token(Token = "0x400629B")]
private readonly int saltLength;
// Token: 0x0400629C RID: 25244
[global::Cpp2IlInjected.FieldOffset(Offset = "0x58")]
[Token(Token = "0x400629C")]
private bool fullMessage;
// Token: 0x0400629D RID: 25245
[global::Cpp2IlInjected.FieldOffset(Offset = "0x60")]
[Token(Token = "0x400629D")]
private byte[] recoveredMessage;
// Token: 0x0400629E RID: 25246
[global::Cpp2IlInjected.FieldOffset(Offset = "0x68")]
[Token(Token = "0x400629E")]
private byte[] preSig;
// Token: 0x0400629F RID: 25247
[global::Cpp2IlInjected.FieldOffset(Offset = "0x70")]
[Token(Token = "0x400629F")]
private byte[] preBlock;
// Token: 0x040062A0 RID: 25248
[global::Cpp2IlInjected.FieldOffset(Offset = "0x78")]
[Token(Token = "0x40062A0")]
private int preMStart;
// Token: 0x040062A1 RID: 25249
[global::Cpp2IlInjected.FieldOffset(Offset = "0x7C")]
[Token(Token = "0x40062A1")]
private int preTLength;
}
}