Files
2026-04-08 23:40:05 +02:00

537 lines
12 KiB
C#

using System;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib
{
// Token: 0x02001350 RID: 4944
[Token(Token = "0x2001350")]
[StructLayout(3)]
internal sealed class InfCodes
{
// Token: 0x06007CD1 RID: 31953 RVA: 0x001A1D70 File Offset: 0x0019FF70
[Token(Token = "0x6007CD1")]
[Address(RVA = "0x3C1670", Offset = "0x3C0070", VA = "0x1803C1670")]
internal InfCodes()
{
int num = 0;
this.free(num);
}
// Token: 0x06007CD2 RID: 31954 RVA: 0x001A1D88 File Offset: 0x0019FF88
[Token(Token = "0x6007CD2")]
[Address(RVA = "0xE302D0", Offset = "0xE2ECD0", VA = "0x180E302D0")]
internal void init(int bl, int bd, int[] tl, int tl_index, int[] td, int td_index, ZStream z)
{
int num = 0;
this.ltree_index = 0;
this.dtree = 0;
this.dtree_index = 0;
this.mode = num;
this.lbits = (byte)bl;
this.dbits = (byte)bd;
this.ltree = tl;
this.tree = num;
}
// Token: 0x06007CD3 RID: 31955 RVA: 0x001A1DD0 File Offset: 0x0019FFD0
[Token(Token = "0x6007CD3")]
[Address(RVA = "0x202E7F0", Offset = "0x202D1F0", VA = "0x18202E7F0")]
internal int proc(InfBlocks s, ZStream z, int r)
{
int next_in_index = z.next_in_index;
int avail_in = z.avail_in;
int write = s.write;
int num = s.read;
int bitb = s.bitb;
int bitk = s.bitk;
if (write < num)
{
num -= write;
}
int num2 = s.end;
num2 -= write;
s.bitb = bitb;
s.bitk = bitk;
z.avail_in = avail_in;
z.next_in_index = next_in_index;
s.write = write;
int write2 = s.write;
int num3 = s.read;
int bitb2 = s.bitb;
int num4 = z.next_in_index;
int avail_in2 = z.avail_in;
int num5 = s.bitk;
if (write2 < num3)
{
num3 -= write2;
}
int num6 = s.end;
num6 -= write2;
int num7;
if (num7 != 0)
{
}
uint num8;
int num9;
if (num5 < (int)num8)
{
if (avail_in2 == 0)
{
goto IL_373;
}
num9 = 0;
byte[] next_in = z.next_in;
num4++;
num5 += 8;
}
int num10 = InfCodes.inflate_mask[(int)num8];
byte b;
num10 += (int)b;
num5 -= num9;
uint num11;
if (num5 < (int)num11)
{
if (avail_in2 == 0)
{
goto IL_373;
}
byte[] next_in2 = z.next_in;
num4++;
num5 += 8;
}
int num12 = InfCodes.inflate_mask[(int)num11];
byte b2;
num12 += (int)b2;
num5 -= (int)num11;
if (num5 < (int)num11)
{
if (avail_in2 == 0)
{
goto IL_373;
}
byte[] next_in3 = z.next_in;
num4++;
num5 += 8;
}
int num13 = InfCodes.inflate_mask[(int)num11];
byte b3;
num13 += (int)b3;
num5 -= r;
uint num14;
int num15;
if (num5 < (int)num14)
{
if (avail_in2 == 0)
{
goto IL_373;
}
num15 = 0;
byte[] next_in4 = z.next_in;
num4++;
num5 += 8;
}
int num16 = InfCodes.inflate_mask[(int)num14];
byte b4;
num16 += (int)b4;
num5 -= (int)num14;
int num18;
int num19;
int num20;
if (num6 == 0)
{
int num17 = s.end;
if (write2 == num17)
{
int read = s.read;
if (read != 0)
{
if (read > 0)
{
}
if (num17 != 0)
{
goto IL_258;
}
}
}
s.write = write2;
num18 = s.inflate_flush(z, num15);
int write3 = s.write;
int end = s.end;
int read2 = s.read;
if (write3 < read2)
{
num17 = read2;
num17 -= write3;
}
num17 -= write3;
if (write3 == end && read2 != 0)
{
num19 = 0;
num20 = read2 - 1;
if (read2 <= 0)
{
}
}
if (num20 == 0)
{
goto IL_3BD;
}
}
IL_258:
byte[] window = s.window;
int num21 = write2 + 1;
num19++;
int length = window.Length;
int end2 = s.end;
int i;
if (num20 == 0)
{
int end3 = s.end;
int num22;
if (num19 == end3)
{
int read3 = s.read;
if (read3 != 0)
{
num22 = 0;
int num23;
if (read3 > 0)
{
num23 = read3 - 1;
}
if (num23 != 0)
{
goto IL_32A;
}
}
}
s.write = num22;
num21 = num18;
int num24 = s.inflate_flush(z, num21);
int read4 = s.read;
int write4 = s.write;
if (write4 < read4)
{
int num23 = read4;
num23 -= write4;
}
int num25 = s.end;
num25 -= write4;
int end4 = s.end;
int num26;
if (write4 == end4 && read4 != 0)
{
i = 0;
num26 = read4 - 1;
num26 = end4;
}
if (num26 == 0)
{
goto IL_3D3;
}
}
IL_32A:
byte[] window2 = s.window;
int num27 = 0;
i++;
while (i <= 9)
{
}
s.bitb = bitb2;
s.bitk = num5;
z.avail_in = avail_in2;
z.next_in_index = num4;
s.write = i;
return s.inflate_flush(z, -2);
IL_373:
s.bitb = -2;
s.bitk = 0;
z.avail_in = (int)((ulong)0L);
z.next_in_index = 0;
s.write = 0;
z.msg = "invalid literal/length code";
s.bitb = 0;
z.msg = "invalid distance code";
s.bitb = 0;
IL_3BD:
s.bitb = bitb2;
s.bitk = 0;
z.avail_in = 0;
IL_3D3:
s.bitb = bitb2;
s.bitk = 0;
z.avail_in = 0;
z.next_in_index = 0;
s.write = 0;
s.write = 0;
int num28 = s.inflate_flush(z, num27);
int write5 = s.write;
while (s.read != write5)
{
}
s.bitb = bitb2;
s.bitk = 0;
z.avail_in = 0;
z.next_in_index = 0;
s.write = write5;
s.bitb = 1;
s.bitk = 0;
z.avail_in = 0;
z.next_in_index = 0;
s.write = write5;
throw new NullReferenceException();
}
// Token: 0x06007CD4 RID: 31956 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x6007CD4")]
[Address(RVA = "0x3C9F60", Offset = "0x3C8960", VA = "0x1803C9F60")]
internal void free(ZStream z)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06007CD5 RID: 31957 RVA: 0x001A2248 File Offset: 0x001A0448
[Token(Token = "0x6007CD5")]
[Address(RVA = "0x202DC20", Offset = "0x202C620", VA = "0x18202DC20")]
internal int inflate_fast(int bl, int bd, int[] tl, int tl_index, int[] td, int td_index, InfBlocks s, ZStream z)
{
int[] array = InfCodes.inflate_mask;
int length = array.Length;
int num = array[bl];
int num2 = array[bd];
int num12;
if (bl != 0)
{
int num3 = bd + 1;
if (bl == 16)
{
if (bl != 64)
{
goto IL_FE;
}
int num4 = InfCodes.inflate_mask[bl];
num4 += bd;
while (bl != 0)
{
}
int num5 = bd + 1;
}
int num6 = InfCodes.inflate_mask[bl];
num6 += bd;
int num7 = bd + 1;
if (bl == 16)
{
if (bl != 64)
{
goto IL_10A;
}
int num8 = InfCodes.inflate_mask[bl];
num8 += bd;
}
int num9 = InfCodes.inflate_mask[bl];
num9 += bd;
int num10;
if (num6 > bd)
{
num6 -= bd;
num10 = bd - 1;
while (num10 != 0)
{
}
int num11 = 0;
num12 = 0;
if (num11 == 1)
{
goto IL_F0;
}
num12 += 2;
}
num10 -= num12;
if (num10 > 0 && num6 > num10)
{
num12++;
int num13 = num6 - 1;
num6 = num13;
while (num13 != 0)
{
}
}
IL_F0:
Array.Copy(num12, num12, num12, 1, num6);
}
IL_FE:
if (num12 == 32)
{
}
uint num14;
num14 -= tl;
IL_10A:
throw new NullReferenceException();
}
// Token: 0x06007CD6 RID: 31958 RVA: 0x001A2364 File Offset: 0x001A0564
// Note: this type is marked as 'beforefieldinit'.
[Token(Token = "0x6007CD6")]
[Address(RVA = "0x202DBC0", Offset = "0x202C5C0", VA = "0x18202DBC0")]
static InfCodes()
{
int[] array = new int[17];
RuntimeHelpers.InitializeArray(array, fieldof(<PrivateImplementationDetails>.F584B6C7CCA3CD4ECC3B9B1E20D2F2EFB73DBBDF).FieldHandle);
InfCodes.inflate_mask = array;
}
// Token: 0x04005948 RID: 22856
[Token(Token = "0x4005948")]
private static readonly int[] inflate_mask;
// Token: 0x04005949 RID: 22857
[Token(Token = "0x4005949")]
private const int Z_OK = 0;
// Token: 0x0400594A RID: 22858
[Token(Token = "0x400594A")]
private const int Z_STREAM_END = 1;
// Token: 0x0400594B RID: 22859
[Token(Token = "0x400594B")]
private const int Z_NEED_DICT = 2;
// Token: 0x0400594C RID: 22860
[Token(Token = "0x400594C")]
private const int Z_ERRNO = -1;
// Token: 0x0400594D RID: 22861
[Token(Token = "0x400594D")]
private const int Z_STREAM_ERROR = -2;
// Token: 0x0400594E RID: 22862
[Token(Token = "0x400594E")]
private const int Z_DATA_ERROR = -3;
// Token: 0x0400594F RID: 22863
[Token(Token = "0x400594F")]
private const int Z_MEM_ERROR = -4;
// Token: 0x04005950 RID: 22864
[Token(Token = "0x4005950")]
private const int Z_BUF_ERROR = -5;
// Token: 0x04005951 RID: 22865
[Token(Token = "0x4005951")]
private const int Z_VERSION_ERROR = -6;
// Token: 0x04005952 RID: 22866
[Token(Token = "0x4005952")]
private const int START = 0;
// Token: 0x04005953 RID: 22867
[Token(Token = "0x4005953")]
private const int LEN = 1;
// Token: 0x04005954 RID: 22868
[Token(Token = "0x4005954")]
private const int LENEXT = 2;
// Token: 0x04005955 RID: 22869
[Token(Token = "0x4005955")]
private const int DIST = 3;
// Token: 0x04005956 RID: 22870
[Token(Token = "0x4005956")]
private const int DISTEXT = 4;
// Token: 0x04005957 RID: 22871
[Token(Token = "0x4005957")]
private const int COPY = 5;
// Token: 0x04005958 RID: 22872
[Token(Token = "0x4005958")]
private const int LIT = 6;
// Token: 0x04005959 RID: 22873
[Token(Token = "0x4005959")]
private const int WASH = 7;
// Token: 0x0400595A RID: 22874
[Token(Token = "0x400595A")]
private const int END = 8;
// Token: 0x0400595B RID: 22875
[Token(Token = "0x400595B")]
private const int BADCODE = 9;
// Token: 0x0400595C RID: 22876
[global::Cpp2IlInjected.FieldOffset(Offset = "0x10")]
[Token(Token = "0x400595C")]
private int mode;
// Token: 0x0400595D RID: 22877
[global::Cpp2IlInjected.FieldOffset(Offset = "0x14")]
[Token(Token = "0x400595D")]
private int len;
// Token: 0x0400595E RID: 22878
[global::Cpp2IlInjected.FieldOffset(Offset = "0x18")]
[Token(Token = "0x400595E")]
private int[] tree;
// Token: 0x0400595F RID: 22879
[global::Cpp2IlInjected.FieldOffset(Offset = "0x20")]
[Token(Token = "0x400595F")]
private int tree_index;
// Token: 0x04005960 RID: 22880
[global::Cpp2IlInjected.FieldOffset(Offset = "0x24")]
[Token(Token = "0x4005960")]
private int need;
// Token: 0x04005961 RID: 22881
[global::Cpp2IlInjected.FieldOffset(Offset = "0x28")]
[Token(Token = "0x4005961")]
private int lit;
// Token: 0x04005962 RID: 22882
[global::Cpp2IlInjected.FieldOffset(Offset = "0x2C")]
[Token(Token = "0x4005962")]
private int get;
// Token: 0x04005963 RID: 22883
[global::Cpp2IlInjected.FieldOffset(Offset = "0x30")]
[Token(Token = "0x4005963")]
private int dist;
// Token: 0x04005964 RID: 22884
[global::Cpp2IlInjected.FieldOffset(Offset = "0x34")]
[Token(Token = "0x4005964")]
private byte lbits;
// Token: 0x04005965 RID: 22885
[global::Cpp2IlInjected.FieldOffset(Offset = "0x35")]
[Token(Token = "0x4005965")]
private byte dbits;
// Token: 0x04005966 RID: 22886
[global::Cpp2IlInjected.FieldOffset(Offset = "0x38")]
[Token(Token = "0x4005966")]
private int[] ltree;
// Token: 0x04005967 RID: 22887
[global::Cpp2IlInjected.FieldOffset(Offset = "0x40")]
[Token(Token = "0x4005967")]
private int ltree_index;
// Token: 0x04005968 RID: 22888
[global::Cpp2IlInjected.FieldOffset(Offset = "0x48")]
[Token(Token = "0x4005968")]
private int[] dtree;
// Token: 0x04005969 RID: 22889
[global::Cpp2IlInjected.FieldOffset(Offset = "0x50")]
[Token(Token = "0x4005969")]
private int dtree_index;
}
}