Files
2026-06-04 11:42:34 +02:00

82 lines
1.9 KiB
C#

using System;
using System.Security.Cryptography;
namespace ICSharpCode.SharpZipLib.Encryption
{
// Token: 0x02000023 RID: 35
internal class PkzipClassicDecryptCryptoTransform : PkzipClassicCryptoBase, ICryptoTransform, IDisposable
{
// Token: 0x060000EF RID: 239 RVA: 0x00007DC4 File Offset: 0x00006DC4
internal PkzipClassicDecryptCryptoTransform(byte[] keyBlock)
{
base.SetKeys(keyBlock);
}
// Token: 0x060000F0 RID: 240 RVA: 0x00007DD4 File Offset: 0x00006DD4
public byte[] TransformFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount)
{
byte[] array = new byte[inputCount];
this.TransformBlock(inputBuffer, inputOffset, inputCount, array, 0);
return array;
}
// Token: 0x060000F1 RID: 241 RVA: 0x00007DF8 File Offset: 0x00006DF8
public int TransformBlock(byte[] inputBuffer, int inputOffset, int inputCount, byte[] outputBuffer, int outputOffset)
{
for (int i = inputOffset; i < inputOffset + inputCount; i++)
{
byte b = inputBuffer[i] ^ base.TransformByte();
outputBuffer[outputOffset++] = b;
base.UpdateKeys(b);
}
return inputCount;
}
// Token: 0x17000027 RID: 39
// (get) Token: 0x060000F2 RID: 242 RVA: 0x00007E32 File Offset: 0x00006E32
public bool CanReuseTransform
{
get
{
return true;
}
}
// Token: 0x17000028 RID: 40
// (get) Token: 0x060000F3 RID: 243 RVA: 0x00007E35 File Offset: 0x00006E35
public int InputBlockSize
{
get
{
return 1;
}
}
// Token: 0x17000029 RID: 41
// (get) Token: 0x060000F4 RID: 244 RVA: 0x00007E38 File Offset: 0x00006E38
public int OutputBlockSize
{
get
{
return 1;
}
}
// Token: 0x1700002A RID: 42
// (get) Token: 0x060000F5 RID: 245 RVA: 0x00007E3B File Offset: 0x00006E3B
public bool CanTransformMultipleBlocks
{
get
{
return true;
}
}
// Token: 0x060000F6 RID: 246 RVA: 0x00007E3E File Offset: 0x00006E3E
public void Dispose()
{
base.Reset();
}
}
}