This commit is contained in:
niko
2026-06-04 11:42:34 +02:00
parent f39ba70a9f
commit e720b98cd1
7488 changed files with 2493818 additions and 0 deletions
@@ -0,0 +1,100 @@
using System;
namespace ICSharpCode.SharpZipLib.Checksums
{
// Token: 0x0200000A RID: 10
public sealed class Adler32 : IChecksum
{
// Token: 0x1700000F RID: 15
// (get) Token: 0x0600006D RID: 109 RVA: 0x000060C1 File Offset: 0x000050C1
public long Value
{
get
{
return (long)((ulong)this.checksum);
}
}
// Token: 0x0600006E RID: 110 RVA: 0x000060CA File Offset: 0x000050CA
public Adler32()
{
this.Reset();
}
// Token: 0x0600006F RID: 111 RVA: 0x000060D8 File Offset: 0x000050D8
public void Reset()
{
this.checksum = 1U;
}
// Token: 0x06000070 RID: 112 RVA: 0x000060E4 File Offset: 0x000050E4
public void Update(int value)
{
uint num = this.checksum & 65535U;
uint num2 = this.checksum >> 16;
num = (num + (uint)(value & 255)) % 65521U;
num2 = (num + num2) % 65521U;
this.checksum = (num2 << 16) + num;
}
// Token: 0x06000071 RID: 113 RVA: 0x0000612E File Offset: 0x0000512E
public void Update(byte[] buffer)
{
if (buffer == null)
{
throw new ArgumentNullException("buffer");
}
this.Update(buffer, 0, buffer.Length);
}
// Token: 0x06000072 RID: 114 RVA: 0x0000614C File Offset: 0x0000514C
public void Update(byte[] buffer, int offset, int count)
{
if (buffer == null)
{
throw new ArgumentNullException("buffer");
}
if (offset < 0)
{
throw new ArgumentOutOfRangeException("offset", "cannot be negative");
}
if (count < 0)
{
throw new ArgumentOutOfRangeException("count", "cannot be negative");
}
if (offset >= buffer.Length)
{
throw new ArgumentOutOfRangeException("offset", "not a valid index into buffer");
}
if (offset + count > buffer.Length)
{
throw new ArgumentOutOfRangeException("count", "exceeds buffer size");
}
uint num = this.checksum & 65535U;
uint num2 = this.checksum >> 16;
while (count > 0)
{
int num3 = 3800;
if (num3 > count)
{
num3 = count;
}
count -= num3;
while (--num3 >= 0)
{
num += (uint)(buffer[offset++] & byte.MaxValue);
num2 += num;
}
num %= 65521U;
num2 %= 65521U;
}
this.checksum = (num2 << 16) | num;
}
// Token: 0x04000066 RID: 102
private const uint BASE = 65521U;
// Token: 0x04000067 RID: 103
private uint checksum;
}
}
+116
View File
@@ -0,0 +1,116 @@
using System;
namespace ICSharpCode.SharpZipLib.Checksums
{
// Token: 0x0200000B RID: 11
public sealed class Crc32 : IChecksum
{
// Token: 0x06000073 RID: 115 RVA: 0x00006226 File Offset: 0x00005226
internal static uint ComputeCrc32(uint oldCrc, byte value)
{
return Crc32.CrcTable[(int)((UIntPtr)((oldCrc ^ (uint)value) & 255U))] ^ (oldCrc >> 8);
}
// Token: 0x17000010 RID: 16
// (get) Token: 0x06000074 RID: 116 RVA: 0x0000623C File Offset: 0x0000523C
// (set) Token: 0x06000075 RID: 117 RVA: 0x00006245 File Offset: 0x00005245
public long Value
{
get
{
return (long)((ulong)this.crc);
}
set
{
this.crc = (uint)value;
}
}
// Token: 0x06000076 RID: 118 RVA: 0x0000624F File Offset: 0x0000524F
public void Reset()
{
this.crc = 0U;
}
// Token: 0x06000077 RID: 119 RVA: 0x00006258 File Offset: 0x00005258
public void Update(int value)
{
this.crc ^= uint.MaxValue;
checked
{
this.crc = Crc32.CrcTable[(int)((IntPtr)(unchecked((ulong)this.crc ^ (ulong)((long)value)) & 255UL))] ^ (this.crc >> 8);
this.crc ^= uint.MaxValue;
}
}
// Token: 0x06000078 RID: 120 RVA: 0x000062A8 File Offset: 0x000052A8
public void Update(byte[] buffer)
{
if (buffer == null)
{
throw new ArgumentNullException("buffer");
}
this.Update(buffer, 0, buffer.Length);
}
// Token: 0x06000079 RID: 121 RVA: 0x000062C4 File Offset: 0x000052C4
public void Update(byte[] buffer, int offset, int count)
{
if (buffer == null)
{
throw new ArgumentNullException("buffer");
}
if (count < 0)
{
throw new ArgumentOutOfRangeException("count", "Count cannot be less than zero");
}
if (offset < 0 || offset + count > buffer.Length)
{
throw new ArgumentOutOfRangeException("offset");
}
this.crc ^= uint.MaxValue;
while (--count >= 0)
{
this.crc = Crc32.CrcTable[(int)((UIntPtr)((this.crc ^ (uint)buffer[offset++]) & 255U))] ^ (this.crc >> 8);
}
this.crc ^= uint.MaxValue;
}
// Token: 0x04000068 RID: 104
private const uint CrcSeed = 4294967295U;
// Token: 0x04000069 RID: 105
private static readonly uint[] CrcTable = new uint[]
{
0U, 1996959894U, 3993919788U, 2567524794U, 124634137U, 1886057615U, 3915621685U, 2657392035U, 249268274U, 2044508324U,
3772115230U, 2547177864U, 162941995U, 2125561021U, 3887607047U, 2428444049U, 498536548U, 1789927666U, 4089016648U, 2227061214U,
450548861U, 1843258603U, 4107580753U, 2211677639U, 325883990U, 1684777152U, 4251122042U, 2321926636U, 335633487U, 1661365465U,
4195302755U, 2366115317U, 997073096U, 1281953886U, 3579855332U, 2724688242U, 1006888145U, 1258607687U, 3524101629U, 2768942443U,
901097722U, 1119000684U, 3686517206U, 2898065728U, 853044451U, 1172266101U, 3705015759U, 2882616665U, 651767980U, 1373503546U,
3369554304U, 3218104598U, 565507253U, 1454621731U, 3485111705U, 3099436303U, 671266974U, 1594198024U, 3322730930U, 2970347812U,
795835527U, 1483230225U, 3244367275U, 3060149565U, 1994146192U, 31158534U, 2563907772U, 4023717930U, 1907459465U, 112637215U,
2680153253U, 3904427059U, 2013776290U, 251722036U, 2517215374U, 3775830040U, 2137656763U, 141376813U, 2439277719U, 3865271297U,
1802195444U, 476864866U, 2238001368U, 4066508878U, 1812370925U, 453092731U, 2181625025U, 4111451223U, 1706088902U, 314042704U,
2344532202U, 4240017532U, 1658658271U, 366619977U, 2362670323U, 4224994405U, 1303535960U, 984961486U, 2747007092U, 3569037538U,
1256170817U, 1037604311U, 2765210733U, 3554079995U, 1131014506U, 879679996U, 2909243462U, 3663771856U, 1141124467U, 855842277U,
2852801631U, 3708648649U, 1342533948U, 654459306U, 3188396048U, 3373015174U, 1466479909U, 544179635U, 3110523913U, 3462522015U,
1591671054U, 702138776U, 2966460450U, 3352799412U, 1504918807U, 783551873U, 3082640443U, 3233442989U, 3988292384U, 2596254646U,
62317068U, 1957810842U, 3939845945U, 2647816111U, 81470997U, 1943803523U, 3814918930U, 2489596804U, 225274430U, 2053790376U,
3826175755U, 2466906013U, 167816743U, 2097651377U, 4027552580U, 2265490386U, 503444072U, 1762050814U, 4150417245U, 2154129355U,
426522225U, 1852507879U, 4275313526U, 2312317920U, 282753626U, 1742555852U, 4189708143U, 2394877945U, 397917763U, 1622183637U,
3604390888U, 2714866558U, 953729732U, 1340076626U, 3518719985U, 2797360999U, 1068828381U, 1219638859U, 3624741850U, 2936675148U,
906185462U, 1090812512U, 3747672003U, 2825379669U, 829329135U, 1181335161U, 3412177804U, 3160834842U, 628085408U, 1382605366U,
3423369109U, 3138078467U, 570562233U, 1426400815U, 3317316542U, 2998733608U, 733239954U, 1555261956U, 3268935591U, 3050360625U,
752459403U, 1541320221U, 2607071920U, 3965973030U, 1969922972U, 40735498U, 2617837225U, 3943577151U, 1913087877U, 83908371U,
2512341634U, 3803740692U, 2075208622U, 213261112U, 2463272603U, 3855990285U, 2094854071U, 198958881U, 2262029012U, 4057260610U,
1759359992U, 534414190U, 2176718541U, 4139329115U, 1873836001U, 414664567U, 2282248934U, 4279200368U, 1711684554U, 285281116U,
2405801727U, 4167216745U, 1634467795U, 376229701U, 2685067896U, 3608007406U, 1308918612U, 956543938U, 2808555105U, 3495958263U,
1231636301U, 1047427035U, 2932959818U, 3654703836U, 1088359270U, 936918000U, 2847714899U, 3736837829U, 1202900863U, 817233897U,
3183342108U, 3401237130U, 1404277552U, 615818150U, 3134207493U, 3453421203U, 1423857449U, 601450431U, 3009837614U, 3294710456U,
1567103746U, 711928724U, 3020668471U, 3272380065U, 1510334235U, 755167117U
};
// Token: 0x0400006A RID: 106
private uint crc;
}
}
@@ -0,0 +1,24 @@
using System;
namespace ICSharpCode.SharpZipLib.Checksums
{
// Token: 0x02000009 RID: 9
public interface IChecksum
{
// Token: 0x1700000E RID: 14
// (get) Token: 0x06000068 RID: 104
long Value { get; }
// Token: 0x06000069 RID: 105
void Reset();
// Token: 0x0600006A RID: 106
void Update(int value);
// Token: 0x0600006B RID: 107
void Update(byte[] buffer);
// Token: 0x0600006C RID: 108
void Update(byte[] buffer, int offset, int count);
}
}
@@ -0,0 +1,110 @@
using System;
namespace ICSharpCode.SharpZipLib.Checksums
{
// Token: 0x0200000C RID: 12
public class StrangeCRC : IChecksum
{
// Token: 0x0600007C RID: 124 RVA: 0x00006784 File Offset: 0x00005784
public StrangeCRC()
{
this.Reset();
}
// Token: 0x0600007D RID: 125 RVA: 0x00006792 File Offset: 0x00005792
public void Reset()
{
this.globalCrc = -1;
}
// Token: 0x17000011 RID: 17
// (get) Token: 0x0600007E RID: 126 RVA: 0x0000679B File Offset: 0x0000579B
public long Value
{
get
{
return (long)(~(long)this.globalCrc);
}
}
// Token: 0x0600007F RID: 127 RVA: 0x000067A8 File Offset: 0x000057A8
public void Update(int value)
{
int num = (this.globalCrc >> 24) ^ value;
if (num < 0)
{
num = 256 + num;
}
this.globalCrc = (int)((long)((long)this.globalCrc << 8) ^ (long)((ulong)StrangeCRC.crc32Table[num]));
}
// Token: 0x06000080 RID: 128 RVA: 0x000067E6 File Offset: 0x000057E6
public void Update(byte[] buffer)
{
if (buffer == null)
{
throw new ArgumentNullException("buffer");
}
this.Update(buffer, 0, buffer.Length);
}
// Token: 0x06000081 RID: 129 RVA: 0x00006804 File Offset: 0x00005804
public void Update(byte[] buffer, int offset, int count)
{
if (buffer == null)
{
throw new ArgumentNullException("buffer");
}
if (offset < 0)
{
throw new ArgumentOutOfRangeException("offset", "cannot be less than zero");
}
if (count < 0)
{
throw new ArgumentOutOfRangeException("count", "cannot be less than zero");
}
if (offset + count > buffer.Length)
{
throw new ArgumentOutOfRangeException("count");
}
for (int i = 0; i < count; i++)
{
this.Update((int)buffer[offset++]);
}
}
// Token: 0x0400006B RID: 107
private static readonly uint[] crc32Table = new uint[]
{
0U, 79764919U, 159529838U, 222504665U, 319059676U, 398814059U, 445009330U, 507990021U, 638119352U, 583659535U,
797628118U, 726387553U, 890018660U, 835552979U, 1015980042U, 944750013U, 1276238704U, 1221641927U, 1167319070U, 1095957929U,
1595256236U, 1540665371U, 1452775106U, 1381403509U, 1780037320U, 1859660671U, 1671105958U, 1733955601U, 2031960084U, 2111593891U,
1889500026U, 1952343757U, 2552477408U, 2632100695U, 2443283854U, 2506133561U, 2334638140U, 2414271883U, 2191915858U, 2254759653U,
3190512472U, 3135915759U, 3081330742U, 3009969537U, 2905550212U, 2850959411U, 2762807018U, 2691435357U, 3560074640U, 3505614887U,
3719321342U, 3648080713U, 3342211916U, 3287746299U, 3467911202U, 3396681109U, 4063920168U, 4143685023U, 4223187782U, 4286162673U,
3779000052U, 3858754371U, 3904687514U, 3967668269U, 881225847U, 809987520U, 1023691545U, 969234094U, 662832811U, 591600412U,
771767749U, 717299826U, 311336399U, 374308984U, 453813921U, 533576470U, 25881363U, 88864420U, 134795389U, 214552010U,
2023205639U, 2086057648U, 1897238633U, 1976864222U, 1804852699U, 1867694188U, 1645340341U, 1724971778U, 1587496639U, 1516133128U,
1461550545U, 1406951526U, 1302016099U, 1230646740U, 1142491917U, 1087903418U, 2896545431U, 2825181984U, 2770861561U, 2716262478U,
3215044683U, 3143675388U, 3055782693U, 3001194130U, 2326604591U, 2389456536U, 2200899649U, 2280525302U, 2578013683U, 2640855108U,
2418763421U, 2498394922U, 3769900519U, 3832873040U, 3912640137U, 3992402750U, 4088425275U, 4151408268U, 4197601365U, 4277358050U,
3334271071U, 3263032808U, 3476998961U, 3422541446U, 3585640067U, 3514407732U, 3694837229U, 3640369242U, 1762451694U, 1842216281U,
1619975040U, 1682949687U, 2047383090U, 2127137669U, 1938468188U, 2001449195U, 1325665622U, 1271206113U, 1183200824U, 1111960463U,
1543535498U, 1489069629U, 1434599652U, 1363369299U, 622672798U, 568075817U, 748617968U, 677256519U, 907627842U, 853037301U,
1067152940U, 995781531U, 51762726U, 131386257U, 177728840U, 240578815U, 269590778U, 349224269U, 429104020U, 491947555U,
4046411278U, 4126034873U, 4172115296U, 4234965207U, 3794477266U, 3874110821U, 3953728444U, 4016571915U, 3609705398U, 3555108353U,
3735388376U, 3664026991U, 3290680682U, 3236090077U, 3449943556U, 3378572211U, 3174993278U, 3120533705U, 3032266256U, 2961025959U,
2923101090U, 2868635157U, 2813903052U, 2742672763U, 2604032198U, 2683796849U, 2461293480U, 2524268063U, 2284983834U, 2364738477U,
2175806836U, 2238787779U, 1569362073U, 1498123566U, 1409854455U, 1355396672U, 1317987909U, 1246755826U, 1192025387U, 1137557660U,
2072149281U, 2135122070U, 1912620623U, 1992383480U, 1753615357U, 1816598090U, 1627664531U, 1707420964U, 295390185U, 358241886U,
404320391U, 483945776U, 43990325U, 106832002U, 186451547U, 266083308U, 932423249U, 861060070U, 1041341759U, 986742920U,
613929101U, 542559546U, 756411363U, 701822548U, 3316196985U, 3244833742U, 3425377559U, 3370778784U, 3601682597U, 3530312978U,
3744426955U, 3689838204U, 3819031489U, 3881883254U, 3928223919U, 4007849240U, 4037393693U, 4100235434U, 4180117107U, 4259748804U,
2310601993U, 2373574846U, 2151335527U, 2231098320U, 2596047829U, 2659030626U, 2470359227U, 2550115596U, 2947551409U, 2876312838U,
2788305887U, 2733848168U, 3165939309U, 3094707162U, 3040238851U, 2985771188U
};
// Token: 0x0400006C RID: 108
private int globalCrc;
}
}