m
This commit is contained in:
@@ -0,0 +1,534 @@
|
||||
using System;
|
||||
using System.Runtime.CompilerServices;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib
|
||||
{
|
||||
// Token: 0x02001A0D RID: 6669
|
||||
[Token(Token = "0x2001A0D")]
|
||||
internal sealed class InfCodes
|
||||
{
|
||||
// Token: 0x06009C79 RID: 40057 RVA: 0x00202748 File Offset: 0x00200948
|
||||
[Token(Token = "0x6009C79")]
|
||||
[Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")]
|
||||
internal InfCodes()
|
||||
{
|
||||
int num = 0;
|
||||
this.free(num);
|
||||
}
|
||||
|
||||
// Token: 0x06009C7A RID: 40058 RVA: 0x00202760 File Offset: 0x00200960
|
||||
[Token(Token = "0x6009C7A")]
|
||||
[Address(RVA = "0x4EBB60", Offset = "0x4EAB60", VA = "0x1804EBB60")]
|
||||
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: 0x06009C7B RID: 40059 RVA: 0x002027A8 File Offset: 0x002009A8
|
||||
[Token(Token = "0x6009C7B")]
|
||||
[Address(RVA = "0x4EBB90", Offset = "0x4EAB90", VA = "0x1804EBB90")]
|
||||
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: 0x06009C7C RID: 40060 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x6009C7C")]
|
||||
[Address(RVA = "0x4242D0", Offset = "0x4232D0", VA = "0x1804242D0")]
|
||||
internal void free(ZStream z)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x06009C7D RID: 40061 RVA: 0x00202C20 File Offset: 0x00200E20
|
||||
[Token(Token = "0x6009C7D")]
|
||||
[Address(RVA = "0x4EAF90", Offset = "0x4E9F90", VA = "0x1804EAF90")]
|
||||
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: 0x06009C7E RID: 40062 RVA: 0x00202D3C File Offset: 0x00200F3C
|
||||
// Note: this type is marked as 'beforefieldinit'.
|
||||
[Token(Token = "0x6009C7E")]
|
||||
[Address(RVA = "0x4EAF30", Offset = "0x4E9F30", VA = "0x1804EAF30")]
|
||||
static InfCodes()
|
||||
{
|
||||
int[] array = new int[17];
|
||||
RuntimeHelpers.InitializeArray(array, fieldof(<PrivateImplementationDetails>.F584B6C7CCA3CD4ECC3B9B1E20D2F2EFB73DBBDF).FieldHandle);
|
||||
InfCodes.inflate_mask = array;
|
||||
}
|
||||
|
||||
// Token: 0x04006944 RID: 26948
|
||||
[Token(Token = "0x4006944")]
|
||||
private static readonly int[] inflate_mask;
|
||||
|
||||
// Token: 0x04006945 RID: 26949
|
||||
[Token(Token = "0x4006945")]
|
||||
private const int Z_OK = 0;
|
||||
|
||||
// Token: 0x04006946 RID: 26950
|
||||
[Token(Token = "0x4006946")]
|
||||
private const int Z_STREAM_END = 1;
|
||||
|
||||
// Token: 0x04006947 RID: 26951
|
||||
[Token(Token = "0x4006947")]
|
||||
private const int Z_NEED_DICT = 2;
|
||||
|
||||
// Token: 0x04006948 RID: 26952
|
||||
[Token(Token = "0x4006948")]
|
||||
private const int Z_ERRNO = -1;
|
||||
|
||||
// Token: 0x04006949 RID: 26953
|
||||
[Token(Token = "0x4006949")]
|
||||
private const int Z_STREAM_ERROR = -2;
|
||||
|
||||
// Token: 0x0400694A RID: 26954
|
||||
[Token(Token = "0x400694A")]
|
||||
private const int Z_DATA_ERROR = -3;
|
||||
|
||||
// Token: 0x0400694B RID: 26955
|
||||
[Token(Token = "0x400694B")]
|
||||
private const int Z_MEM_ERROR = -4;
|
||||
|
||||
// Token: 0x0400694C RID: 26956
|
||||
[Token(Token = "0x400694C")]
|
||||
private const int Z_BUF_ERROR = -5;
|
||||
|
||||
// Token: 0x0400694D RID: 26957
|
||||
[Token(Token = "0x400694D")]
|
||||
private const int Z_VERSION_ERROR = -6;
|
||||
|
||||
// Token: 0x0400694E RID: 26958
|
||||
[Token(Token = "0x400694E")]
|
||||
private const int START = 0;
|
||||
|
||||
// Token: 0x0400694F RID: 26959
|
||||
[Token(Token = "0x400694F")]
|
||||
private const int LEN = 1;
|
||||
|
||||
// Token: 0x04006950 RID: 26960
|
||||
[Token(Token = "0x4006950")]
|
||||
private const int LENEXT = 2;
|
||||
|
||||
// Token: 0x04006951 RID: 26961
|
||||
[Token(Token = "0x4006951")]
|
||||
private const int DIST = 3;
|
||||
|
||||
// Token: 0x04006952 RID: 26962
|
||||
[Token(Token = "0x4006952")]
|
||||
private const int DISTEXT = 4;
|
||||
|
||||
// Token: 0x04006953 RID: 26963
|
||||
[Token(Token = "0x4006953")]
|
||||
private const int COPY = 5;
|
||||
|
||||
// Token: 0x04006954 RID: 26964
|
||||
[Token(Token = "0x4006954")]
|
||||
private const int LIT = 6;
|
||||
|
||||
// Token: 0x04006955 RID: 26965
|
||||
[Token(Token = "0x4006955")]
|
||||
private const int WASH = 7;
|
||||
|
||||
// Token: 0x04006956 RID: 26966
|
||||
[Token(Token = "0x4006956")]
|
||||
private const int END = 8;
|
||||
|
||||
// Token: 0x04006957 RID: 26967
|
||||
[Token(Token = "0x4006957")]
|
||||
private const int BADCODE = 9;
|
||||
|
||||
// Token: 0x04006958 RID: 26968
|
||||
[FieldOffset(Offset = "0x10")]
|
||||
[Token(Token = "0x4006958")]
|
||||
private int mode;
|
||||
|
||||
// Token: 0x04006959 RID: 26969
|
||||
[FieldOffset(Offset = "0x14")]
|
||||
[Token(Token = "0x4006959")]
|
||||
private int len;
|
||||
|
||||
// Token: 0x0400695A RID: 26970
|
||||
[FieldOffset(Offset = "0x18")]
|
||||
[Token(Token = "0x400695A")]
|
||||
private int[] tree;
|
||||
|
||||
// Token: 0x0400695B RID: 26971
|
||||
[FieldOffset(Offset = "0x20")]
|
||||
[Token(Token = "0x400695B")]
|
||||
private int tree_index;
|
||||
|
||||
// Token: 0x0400695C RID: 26972
|
||||
[FieldOffset(Offset = "0x24")]
|
||||
[Token(Token = "0x400695C")]
|
||||
private int need;
|
||||
|
||||
// Token: 0x0400695D RID: 26973
|
||||
[FieldOffset(Offset = "0x28")]
|
||||
[Token(Token = "0x400695D")]
|
||||
private int lit;
|
||||
|
||||
// Token: 0x0400695E RID: 26974
|
||||
[FieldOffset(Offset = "0x2C")]
|
||||
[Token(Token = "0x400695E")]
|
||||
private int get;
|
||||
|
||||
// Token: 0x0400695F RID: 26975
|
||||
[FieldOffset(Offset = "0x30")]
|
||||
[Token(Token = "0x400695F")]
|
||||
private int dist;
|
||||
|
||||
// Token: 0x04006960 RID: 26976
|
||||
[FieldOffset(Offset = "0x34")]
|
||||
[Token(Token = "0x4006960")]
|
||||
private byte lbits;
|
||||
|
||||
// Token: 0x04006961 RID: 26977
|
||||
[FieldOffset(Offset = "0x35")]
|
||||
[Token(Token = "0x4006961")]
|
||||
private byte dbits;
|
||||
|
||||
// Token: 0x04006962 RID: 26978
|
||||
[FieldOffset(Offset = "0x38")]
|
||||
[Token(Token = "0x4006962")]
|
||||
private int[] ltree;
|
||||
|
||||
// Token: 0x04006963 RID: 26979
|
||||
[FieldOffset(Offset = "0x40")]
|
||||
[Token(Token = "0x4006963")]
|
||||
private int ltree_index;
|
||||
|
||||
// Token: 0x04006964 RID: 26980
|
||||
[FieldOffset(Offset = "0x48")]
|
||||
[Token(Token = "0x4006964")]
|
||||
private int[] dtree;
|
||||
|
||||
// Token: 0x04006965 RID: 26981
|
||||
[FieldOffset(Offset = "0x50")]
|
||||
[Token(Token = "0x4006965")]
|
||||
private int dtree_index;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user