This commit is contained in:
niko
2026-04-08 23:40:05 +02:00
parent d6894bcbc7
commit 18dc73f922
7750 changed files with 1795369 additions and 0 deletions
@@ -0,0 +1,69 @@
using System;
using System.Runtime.InteropServices;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib
{
// Token: 0x0200134C RID: 4940
[Token(Token = "0x200134C")]
[StructLayout(3)]
internal sealed class Adler32
{
// Token: 0x06007C9E RID: 31902 RVA: 0x0019EB44 File Offset: 0x0019CD44
[Token(Token = "0x6007C9E")]
[Address(RVA = "0x2023640", Offset = "0x2022040", VA = "0x182023640")]
internal long adler32(long adler, byte[] buf, int index, int len)
{
if (buf != 0)
{
int length = buf.Length;
int num = index + 1;
byte b = buf[num];
byte b2 = buf[(int)b];
byte b3 = buf[(int)b2];
byte b4 = buf[(int)b3];
byte b5 = buf[(int)b4];
byte b6 = buf[index];
byte b7 = buf[(int)b6];
byte b8 = buf[index];
byte b9 = buf[(int)b8];
byte b10 = buf[(int)b9];
byte b11 = buf[index];
byte b12 = buf[index];
byte b14;
byte b13 = buf[(int)b14];
byte b15 = b13 + 1;
b13 = (byte)((long)b13 + adler);
b13 = (byte)((long)b13 + adler);
b13 = (byte)((long)b13 + adler);
b13 = (byte)((long)b13 + adler);
b13 = (byte)((long)b13 + adler);
b13 = (byte)((long)b13 + adler);
int length2 = buf.Length;
ulong num2;
num2 += num2;
long num3 = (long)(num2 * (ulong)65521L);
ulong num4;
num4 += num4;
long num5 = (long)(num4 * (ulong)65521L);
return adler;
}
throw new IndexOutOfRangeException();
}
// Token: 0x06007C9F RID: 31903 RVA: 0x0019EC48 File Offset: 0x0019CE48
[Token(Token = "0x6007C9F")]
[Address(RVA = "0x3C1670", Offset = "0x3C0070", VA = "0x1803C1670")]
public Adler32()
{
}
// Token: 0x040058A7 RID: 22695
[Token(Token = "0x40058A7")]
private const int BASE = 65521;
// Token: 0x040058A8 RID: 22696
[Token(Token = "0x40058A8")]
private const int NMAX = 5552;
}
}
@@ -0,0 +1,2213 @@
using System;
using System.Runtime.InteropServices;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib
{
// Token: 0x0200134D RID: 4941
[Token(Token = "0x200134D")]
[StructLayout(3)]
public sealed class Deflate
{
// Token: 0x06007CA0 RID: 31904 RVA: 0x0019EC5C File Offset: 0x0019CE5C
[Token(Token = "0x6007CA0")]
[Address(RVA = "0x20254C0", Offset = "0x2023EC0", VA = "0x1820254C0")]
static Deflate()
{
string[] array = new string[10];
if ("need dictionary" != 0)
{
}
array[0] = "need dictionary";
if ("stream end" != 0)
{
}
array[1] = "stream end";
if ("" != 0)
{
}
array[2] = "";
if ("file error" != 0)
{
}
array[3] = "file error";
if ("stream error" != 0)
{
}
array[4] = "stream error";
if ("data error" != 0)
{
}
array[5] = "data error";
if ("insufficient memory" != 0)
{
}
array[6] = "insufficient memory";
if ("buffer error" != 0)
{
}
array[7] = "buffer error";
if ("incompatible version" != 0)
{
}
array[8] = "incompatible version";
if ("" != 0)
{
}
array[9] = "";
Deflate.z_errmsg = array;
Deflate.config_table = new Deflate.Config[10];
Deflate.Config[] array2 = Deflate.config_table;
int num = 0;
Deflate.Config config;
config.good_length = num;
config.nice_length = num;
config.func = num;
array2[0] = config;
Deflate.Config[] array3 = Deflate.config_table;
Deflate.Config config2;
config2.good_length = (int)((ulong)4L);
config2.max_lazy = (int)((ulong)4L);
config2.nice_length = (int)((ulong)8L);
config2.max_chain = (int)((ulong)4L);
config2.func = (int)((ulong)1L);
array3[1] = config2;
Deflate.Config[] array4 = Deflate.config_table;
Deflate.Config config3;
config3.good_length = (int)((ulong)4L);
config3.max_lazy = (int)((ulong)5L);
config3.nice_length = (int)((ulong)16L);
config3.max_chain = (int)((ulong)8L);
config3.func = (int)((ulong)1L);
array4[2] = config3;
Deflate.Config[] array5 = Deflate.config_table;
Deflate.Config config4;
config4.good_length = (int)((ulong)4L);
config4.max_lazy = (int)((ulong)6L);
config4.nice_length = (int)((ulong)32L);
config4.max_chain = (int)((ulong)32L);
config4.func = (int)((ulong)1L);
array5[3] = config4;
Deflate.Config[] array6 = Deflate.config_table;
Deflate.Config config5;
config5.good_length = (int)((ulong)4L);
config5.max_lazy = (int)((ulong)4L);
config5.nice_length = (int)((ulong)16L);
config5.max_chain = (int)((ulong)16L);
config5.func = (int)((ulong)2L);
array6[4] = config5;
Deflate.Config[] array7 = Deflate.config_table;
Deflate.Config config6;
config6.good_length = (int)((ulong)8L);
config6.max_lazy = (int)((ulong)16L);
config6.nice_length = (int)((ulong)32L);
config6.max_chain = (int)((ulong)32L);
config6.func = (int)((ulong)2L);
array7[5] = config6;
Deflate.Config[] array8 = Deflate.config_table;
Deflate.Config config7;
config7.good_length = (int)((ulong)8L);
config7.max_lazy = (int)((ulong)16L);
config7.nice_length = (int)((ulong)128L);
config7.max_chain = (int)((ulong)128L);
config7.func = (int)((ulong)2L);
array8[6] = config7;
Deflate.Config[] array9 = Deflate.config_table;
Deflate.Config config8;
config8.good_length = (int)((ulong)8L);
config8.max_lazy = (int)((ulong)32L);
config8.nice_length = (int)((ulong)128L);
config8.max_chain = (int)((ulong)256L);
config8.func = (int)((ulong)2L);
array9[7] = config8;
Deflate.Config[] array10 = Deflate.config_table;
Deflate.Config config9;
config9.good_length = (int)((ulong)32L);
config9.max_lazy = (int)((ulong)128L);
config9.nice_length = (int)((ulong)258L);
config9.max_chain = (int)((ulong)1024L);
config9.func = (int)((ulong)2L);
array10[8] = config9;
Deflate.Config[] array11 = Deflate.config_table;
Deflate.Config config10;
config10.good_length = (int)((ulong)32L);
config10.max_lazy = (int)((ulong)258L);
config10.nice_length = (int)((ulong)258L);
config10.max_chain = (int)((ulong)4096L);
config10.func = (int)((ulong)2L);
array11[9] = config10;
}
// Token: 0x06007CA1 RID: 31905 RVA: 0x0019F008 File Offset: 0x0019D208
[Token(Token = "0x6007CA1")]
[Address(RVA = "0x2025EC0", Offset = "0x20248C0", VA = "0x182025EC0")]
internal Deflate()
{
ZTree ztree = new ZTree();
this.l_desc = ztree;
ZTree ztree2 = new ZTree();
this.d_desc = ztree2;
ZTree ztree3 = new ZTree();
this.bl_desc = ztree3;
short[] array = new short[16];
this.bl_count = array;
int[] array2 = new int[573];
this.heap = array2;
byte[] array3 = new byte[573];
this.depth = array3;
base..ctor();
short[] array4 = new short[1146];
this.dyn_ltree = array4;
short[] array5 = new short[122];
this.dyn_dtree = array5;
short[] array6 = new short[78];
this.bl_tree = array6;
}
// Token: 0x06007CA2 RID: 31906 RVA: 0x0019F0B0 File Offset: 0x0019D2B0
[Token(Token = "0x6007CA2")]
[Address(RVA = "0x2029350", Offset = "0x2027D50", VA = "0x182029350")]
internal void lm_init()
{
int num = this.w_size;
short[] array = this.head;
num += num;
this.window_size = num;
int num2 = this.hash_size;
int num3 = 0;
array[0] = (short)num3;
if (this.hash_size > 0)
{
short[] array2 = this.head;
num3++;
array2[0] = (short)num3;
int num4 = this.hash_size;
}
Deflate.Config[] array3 = Deflate.config_table;
int num5 = this.level;
int max_lazy = array3[num5].max_lazy;
this.max_lazy_match = max_lazy;
int good_length = Deflate.config_table[num5].good_length;
this.good_match = good_length;
int nice_length = Deflate.config_table[num5].nice_length;
this.nice_match = nice_length;
int max_chain = Deflate.config_table[num5].max_chain;
this.match_available = num3;
this.block_start = num3;
this.lookahead = num3;
this.ins_h = num3;
this.max_chain_length = max_chain;
this.prev_length = (int)((ulong)2L);
this.match_length = (int)((ulong)2L);
}
// Token: 0x06007CA3 RID: 31907 RVA: 0x0019F1BC File Offset: 0x0019D3BC
[Token(Token = "0x6007CA3")]
[Address(RVA = "0x202A890", Offset = "0x2029290", VA = "0x18202A890")]
internal void tr_init()
{
ZTree ztree = this.l_desc;
short[] array = this.dyn_ltree;
ztree.dyn_tree = array;
ZTree ztree2 = this.l_desc;
StaticTree static_l_desc = StaticTree.static_l_desc;
ztree2.stat_desc = static_l_desc;
ZTree ztree3 = this.d_desc;
short[] array2 = this.dyn_dtree;
ztree3.dyn_tree = array2;
ZTree ztree4 = this.d_desc;
StaticTree static_d_desc = StaticTree.static_d_desc;
ztree4.stat_desc = static_d_desc;
ZTree ztree5 = this.bl_desc;
short[] array3 = this.bl_tree;
ztree5.dyn_tree = array3;
ZTree ztree6 = this.bl_desc;
StaticTree static_bl_desc = StaticTree.static_bl_desc;
ztree6.stat_desc = static_bl_desc;
int num = 0;
this.bi_buf = (uint)num;
this.last_eob_len = (int)((ulong)8L);
this.init_block();
}
// Token: 0x06007CA4 RID: 31908 RVA: 0x0019F274 File Offset: 0x0019D474
[Token(Token = "0x6007CA4")]
[Address(RVA = "0x2029220", Offset = "0x2027C20", VA = "0x182029220")]
internal void init_block()
{
int num = 0;
short[] array = this.dyn_ltree;
num += 2;
array[0] = (short)num;
short[] array2 = this.dyn_dtree;
num += 2;
array2[0] = (short)num;
short[] array3 = this.bl_tree;
num += 2;
array3[0] = (short)num;
uint num2;
this.dyn_ltree[128] = (short)num2;
this.opt_len = num;
this.matches = num;
this.last_lit = num;
}
// Token: 0x06007CA5 RID: 31909 RVA: 0x0019F2EC File Offset: 0x0019D4EC
[Token(Token = "0x6007CA5")]
[Address(RVA = "0x2029BA0", Offset = "0x20285A0", VA = "0x182029BA0")]
internal void pqdownheap(short[] tree, int k)
{
int[] array = this.heap;
int num = this.heap_len;
int num2 = array[k];
int length = this.heap.Length;
int num3 = k + 1;
byte[] array2 = this.depth;
if (Deflate.smaller(tree, num3, k, array2))
{
}
int[] array3 = this.heap;
byte[] array4 = this.depth;
if (!Deflate.smaller(tree, num2, k, array4))
{
int[] array5 = this.heap;
int length2 = array5.Length;
int num4;
array5[0] = num4;
int num5 = this.heap_len;
}
int[] array6 = this.heap;
array6[0] = num2;
}
// Token: 0x06007CA6 RID: 31910 RVA: 0x0019F390 File Offset: 0x0019D590
[Token(Token = "0x6007CA6")]
[Address(RVA = "0x202A7D0", Offset = "0x20291D0", VA = "0x18202A7D0")]
internal static bool smaller(short[] tree, int n, int m, byte[] depth)
{
int length = tree.Length;
short num;
short num2;
if (num < num2)
{
return true;
}
if (num != num2)
{
}
int length2 = depth.Length;
throw new NullReferenceException();
}
// Token: 0x06007CA7 RID: 31911 RVA: 0x0019F3C0 File Offset: 0x0019D5C0
[Token(Token = "0x6007CA7")]
[Address(RVA = "0x2029F90", Offset = "0x2028990", VA = "0x182029F90")]
internal void scan_tree(short[] tree, int max_code)
{
int length = tree.Length;
int i = 0;
uint num;
tree[0] = (short)num;
int num2 = 0;
num2 += 3;
uint num3;
if (1U < num3)
{
}
if (tree == 0)
{
short[] array = this.bl_tree;
if (1UL > (ulong)10L)
{
}
}
if (tree != num)
{
short[] array2 = this.bl_tree;
}
short[] array3 = this.bl_tree;
short[] array4 = this.bl_tree;
i++;
num2 += 2;
while (i <= max_code)
{
}
}
// Token: 0x06007CA8 RID: 31912 RVA: 0x0019F430 File Offset: 0x0019D630
[Token(Token = "0x6007CA8")]
[Address(RVA = "0x2026C60", Offset = "0x2025660", VA = "0x182026C60")]
internal int build_bl_tree()
{
int max_code = this.l_desc.max_code;
short[] array = this.dyn_ltree;
this.scan_tree(array, max_code);
int max_code2 = this.d_desc.max_code;
short[] array2 = this.dyn_dtree;
this.scan_tree(array2, max_code2);
this.bl_desc.build_tree(this);
short[] array3 = this.bl_tree;
byte[] bl_order = ZTree.bl_order;
uint num;
if ("{il2cpp array field local12->}" == (ulong)0L)
{
while (num >= (uint)3)
{
}
}
byte b = (byte)((uint)b + num);
throw new NullReferenceException();
}
// Token: 0x06007CA9 RID: 31913 RVA: 0x0019F4AC File Offset: 0x0019D6AC
[Token(Token = "0x6007CA9")]
[Address(RVA = "0x202A1F0", Offset = "0x2028BF0", VA = "0x18202A1F0")]
internal void send_all_trees(int lcodes, int dcodes, int blcodes)
{
this.send_bits(lcodes, 5);
this.send_bits(lcodes, 5);
this.send_bits(lcodes, 4);
int num = 0;
if (blcodes > 0)
{
short[] array = this.bl_tree;
byte[] bl_order = ZTree.bl_order;
num++;
}
short[] array2 = this.dyn_ltree;
int num2 = lcodes - 1;
this.send_tree(array2, num2);
short[] array3 = this.dyn_dtree;
this.send_tree(array3, num2);
}
// Token: 0x06007CAA RID: 31914 RVA: 0x0019F518 File Offset: 0x0019D718
[Token(Token = "0x6007CAA")]
[Address(RVA = "0x202A4D0", Offset = "0x2028ED0", VA = "0x18202A4D0")]
internal void send_tree(short[] tree, int max_code)
{
int num = 0;
int num2 = 0;
num2 += 3;
uint num3;
if (1U < num3)
{
}
short[] array = this.bl_tree;
if (1UL > (ulong)10L)
{
this.send_code((int)num3, array);
uint num4;
this.send_bits((int)num3, (int)num4);
}
uint num5;
this.send_code((int)num5, array);
this.send_bits((int)num5, 3);
short[] array2 = this.bl_tree;
this.send_code((int)num3, array2);
short[] array3 = this.bl_tree;
this.send_code(16, array3);
this.send_bits(16, 2);
short[] array4 = this.bl_tree;
this.send_code(16, array4);
while (num2 != 0)
{
}
num++;
num2 += 2;
}
// Token: 0x06007CAB RID: 31915 RVA: 0x0019F5BC File Offset: 0x0019D7BC
[Token(Token = "0x6007CAB")]
[Address(RVA = "0x2029E80", Offset = "0x2028880", VA = "0x182029E80")]
internal void put_byte(byte[] p, int start, int len)
{
byte[] array = this.pending_buf;
int num = this.pending;
Array.Copy(p, start, array, num, len);
}
// Token: 0x06007CAC RID: 31916 RVA: 0x0019F5E4 File Offset: 0x0019D7E4
[Token(Token = "0x6007CAC")]
[Address(RVA = "0x2029ED0", Offset = "0x20288D0", VA = "0x182029ED0")]
internal void put_byte(byte c)
{
int num = this.pending;
byte[] array = this.pending_buf;
int num2 = num + 1;
this.pending = num2;
}
// Token: 0x06007CAD RID: 31917 RVA: 0x0019F610 File Offset: 0x0019D810
[Token(Token = "0x6007CAD")]
[Address(RVA = "0x2029F10", Offset = "0x2028910", VA = "0x182029F10")]
internal void put_short(int w)
{
byte[] array = this.pending_buf;
int num = this.pending + 1;
this.pending = num;
int num2 = this.pending;
byte[] array2 = this.pending_buf;
int num3 = num2 + 1;
this.pending = num3;
}
// Token: 0x06007CAE RID: 31918 RVA: 0x0019F658 File Offset: 0x0019D858
[Token(Token = "0x6007CAE")]
[Address(RVA = "0x2029E00", Offset = "0x2028800", VA = "0x182029E00")]
internal void putShortMSB(int b)
{
int num = this.pending;
byte[] array = this.pending_buf;
int num2 = num + 1;
this.pending = num2;
int num3 = this.pending;
byte[] array2 = this.pending_buf;
int num4 = num3 + 1;
this.pending = num4;
}
// Token: 0x06007CAF RID: 31919 RVA: 0x0019F6A0 File Offset: 0x0019D8A0
[Token(Token = "0x6007CAF")]
[Address(RVA = "0x202A460", Offset = "0x2028E60", VA = "0x18202A460")]
internal void send_code(int c, short[] tree)
{
int length = tree.Length;
short num;
short num2;
this.send_bits((int)num, (int)num2);
}
// Token: 0x06007CB0 RID: 31920 RVA: 0x0019F6C4 File Offset: 0x0019D8C4
[Token(Token = "0x6007CB0")]
[Address(RVA = "0x202A370", Offset = "0x2028D70", VA = "0x18202A370")]
internal void send_bits(int val, int length)
{
int num = this.bi_valid;
uint num2;
num2 -= (uint)length;
this.bi_buf = (uint)val;
}
// Token: 0x06007CB1 RID: 31921 RVA: 0x0019F750 File Offset: 0x0019D950
[Token(Token = "0x6007CB1")]
[Address(RVA = "0x2025FF0", Offset = "0x20249F0", VA = "0x182025FF0")]
internal void _tr_align()
{
this.send_bits(2, 3);
short[] static_ltree = StaticTree.static_ltree;
int length = static_ltree.Length;
short num = static_ltree[128];
short num2 = static_ltree[128];
this.send_bits((int)num2, (int)num);
this.bi_flush();
int num3 = this.last_eob_len;
num3 += 11;
if (num3 < 9)
{
this.send_bits(2, 3);
short[] static_ltree2 = StaticTree.static_ltree;
int length2 = static_ltree2.Length;
short num4 = static_ltree2[128];
short num5 = static_ltree2[128];
this.send_bits((int)num5, (int)num4);
this.bi_flush();
}
this.last_eob_len = (int)((ulong)7L);
}
// Token: 0x06007CB2 RID: 31922 RVA: 0x0019F800 File Offset: 0x0019DA00
[Token(Token = "0x6007CB2")]
[Address(RVA = "0x2026750", Offset = "0x2025150", VA = "0x182026750")]
internal bool _tr_tally(int dist, int lc)
{
byte[] array = this.pending_buf;
int num = this.last_lit;
int num2 = this.d_buf;
byte[] array2 = this.pending_buf;
int num3 = this.d_buf;
num3++;
byte[] array3 = this.pending_buf;
num3 = this.l_buf;
short[] array4 = this.dyn_ltree;
if (dist != 0)
{
byte[] length_code = ZTree._length_code;
short[] array5 = this.dyn_dtree;
int num4 = ZTree.d_code(dist - 1);
num4 += num4;
}
if (this.last_lit == 8191 && this.level > 2)
{
int num5 = 0;
short[] array6 = this.dyn_dtree;
int[] extra_dbits = ZTree.extra_dbits;
num5 += 2;
num5++;
int num6 = extra_dbits[num5];
num6 += 5;
int num7 = num6 * num5;
int num8 = this.last_lit;
num8 -= array6;
if (this.matches < num8)
{
num8 -= array6;
}
}
int num9 = this.lit_bufsize;
throw new NullReferenceException();
}
// Token: 0x06007CB3 RID: 31923 RVA: 0x0019F8F4 File Offset: 0x0019DAF4
[Token(Token = "0x6007CB3")]
[Address(RVA = "0x2026DC0", Offset = "0x20257C0", VA = "0x182026DC0")]
internal void compress_block(short[] ltree, short[] dtree)
{
int num = 0;
if (this.last_lit != num)
{
byte[] array = this.pending_buf;
int num2 = this.d_buf;
int length = array.Length;
num2 += num;
int num3 = num2 + 1;
int num4 = this.l_buf;
num4 += num;
num += 2;
num++;
byte[] length_code = ZTree._length_code;
int length2 = ltree.Length;
short num5 = ltree[length_code];
short num6 = ltree[length_code];
this.send_bits((int)num6, (int)num5);
int[] extra_lbits = ZTree.extra_lbits;
int num7;
if (num7 != 0)
{
int[] base_length = ZTree.base_length;
byte b;
this.send_bits((int)b, num7);
}
byte b2;
int num8 = ZTree.d_code((int)b2);
this.send_bits(1, (int)num5);
if (ZTree.extra_dbits[num8] != 0)
{
int[] base_dist = ZTree.base_dist;
int length3 = ltree.Length;
num4++;
short num9 = ltree[num4];
short num10 = ltree[num4];
this.send_bits((int)num10, (int)num9);
}
if (num < this.last_lit)
{
}
}
int length4 = ltree.Length;
short num11 = ltree[128];
short num12 = ltree[128];
this.send_bits((int)num12, (int)num11);
this.last_eob_len = length4;
}
// Token: 0x06007CB4 RID: 31924 RVA: 0x0019FA28 File Offset: 0x0019DC28
[Token(Token = "0x6007CB4")]
[Address(RVA = "0x202A6D0", Offset = "0x20290D0", VA = "0x18202A6D0")]
internal void set_data_type()
{
short[] array = this.dyn_ltree;
int num = 0;
int length = array.Length;
num++;
num += 2;
num += this;
if (num < 128)
{
num++;
num += this;
}
if (num < 256)
{
num += this;
}
bool flag = num <= num;
this.data_type = (flag ? 1 : 0);
}
// Token: 0x06007CB5 RID: 31925 RVA: 0x0019FA84 File Offset: 0x0019DC84
[Token(Token = "0x6007CB5")]
[Address(RVA = "0x2026A90", Offset = "0x2025490", VA = "0x182026A90")]
internal void bi_flush()
{
if (this.bi_valid != 16)
{
int num = this.pending;
byte[] array = this.pending_buf;
uint num2 = this.bi_buf;
int num3 = num + 1;
this.pending = num3;
this.bi_buf = (uint)num3;
return;
}
int num4 = this.pending;
byte[] array2 = this.pending_buf;
uint num5 = this.bi_buf;
int num6 = num4 + 1;
this.pending = num6;
int num7 = this.pending;
byte[] array3 = this.pending_buf;
uint num8 = this.bi_buf;
int num9 = num7 + 1;
this.pending = num9;
int num10 = 0;
this.bi_buf = (uint)num10;
}
// Token: 0x06007CB6 RID: 31926 RVA: 0x0019FB20 File Offset: 0x0019DD20
[Token(Token = "0x6007CB6")]
[Address(RVA = "0x2026B80", Offset = "0x2025580", VA = "0x182026B80")]
internal void bi_windup()
{
if (this.bi_valid > 0)
{
int num = this.pending;
byte[] array = this.pending_buf;
uint num2 = this.bi_buf;
int num3 = num + 1;
this.pending = num3;
int num4 = 0;
this.bi_buf = (uint)num4;
return;
}
int num5 = 0;
this.bi_buf = (uint)num5;
}
// Token: 0x06007CB7 RID: 31927 RVA: 0x0019FBC0 File Offset: 0x0019DDC0
[Token(Token = "0x6007CB7")]
[Address(RVA = "0x2027270", Offset = "0x2025C70", VA = "0x182027270")]
internal void copy_block(int buf, int len, bool header)
{
int num = 0;
this.bi_windup();
this.last_eob_len = (int)((ulong)8L);
if (header)
{
this.put_short(num);
this.put_short(num);
}
int num2 = this.pending;
byte[] array = this.pending_buf;
Array.Copy(this.window, buf, array, num2, len);
}
// Token: 0x06007CB8 RID: 31928 RVA: 0x0019FC10 File Offset: 0x0019DE10
[Token(Token = "0x6007CB8")]
[Address(RVA = "0x20291C0", Offset = "0x2027BC0", VA = "0x1820291C0")]
internal void flush_block_only(bool eof)
{
int num = this.block_start;
int num2 = this.strstart;
num2 -= num;
this._tr_flush_block(num, num2, eof);
ZStream zstream = this.strm;
int num3 = this.strstart;
this.block_start = num3;
zstream.flush_pending();
}
// Token: 0x06007CB9 RID: 31929 RVA: 0x0019FC5C File Offset: 0x0019DE5C
[Token(Token = "0x6007CB9")]
[Address(RVA = "0x2028D20", Offset = "0x2027720", VA = "0x182028D20")]
internal int deflate_stored(int flush)
{
int num2;
do
{
int num = this.pending_buf_size;
num += -5;
num2 = 0;
int num3 = this.lookahead;
this.fill_window();
int num4 = this.lookahead;
if (num4 == 0)
{
if (flush == 0)
{
break;
}
if (num4 == 0)
{
goto IL_107;
}
}
int num5 = this.block_start;
int num6 = this.strstart;
this.lookahead = num2;
if (num4 != 0)
{
}
num6 -= this;
this.strstart = this;
this.lookahead = num6;
int num7 = 0;
num5 = num;
this._tr_flush_block(num5, num5, num7 != 0);
ZStream zstream = this.strm;
int num8 = this.strstart;
this.block_start = num8;
zstream.flush_pending();
if (this.strm.avail_out == num2)
{
break;
}
int num9 = this.strstart;
int num10 = this.w_size;
int num11 = this.block_start;
num9 -= num11;
int num12 = 0;
this._tr_flush_block(num11, num9, num12 != 0);
ZStream zstream2 = this.strm;
int num13 = this.strstart;
this.block_start = num13;
zstream2.flush_pending();
}
while (this.strm.avail_out != num2);
return 0;
IL_107:
bool flag = flush == 4;
this.flush_block_only(flag);
if (this.strm.avail_out != num2)
{
}
while (flush != 4)
{
}
throw new NullReferenceException();
}
// Token: 0x06007CBA RID: 31930 RVA: 0x0019FD98 File Offset: 0x0019DF98
[Token(Token = "0x6007CBA")]
[Address(RVA = "0x20266B0", Offset = "0x20250B0", VA = "0x1820266B0")]
internal void _tr_stored_block(int buf, int stored_len, bool eof)
{
this.send_bits(eof ? 1 : 0, 3);
int num = 0;
this.bi_windup();
this.last_eob_len = (int)((ulong)8L);
this.put_short(num);
this.put_short(num);
int num2 = this.pending;
byte[] array = this.pending_buf;
Array.Copy(this.window, buf, array, num2, stored_len);
}
// Token: 0x06007CBB RID: 31931 RVA: 0x0019FDF0 File Offset: 0x0019DFF0
[Token(Token = "0x6007CBB")]
[Address(RVA = "0x2026190", Offset = "0x2024B90", VA = "0x182026190")]
internal void _tr_flush_block(int buf, int stored_len, bool eof)
{
int num = 0;
int length = this.dyn_ltree.Length;
num++;
num += 2;
if (num < 128)
{
num++;
}
if (num < 256)
{
}
bool flag = num <= num;
this.data_type = (flag ? 1 : 0);
this.l_desc.build_tree(this);
this.d_desc.build_tree(this);
int max_code = this.l_desc.max_code;
short[] array = this.dyn_ltree;
this.scan_tree(array, max_code);
int max_code2 = this.d_desc.max_code;
short[] array2 = this.dyn_dtree;
this.scan_tree(array2, max_code2);
this.bl_desc.build_tree(this);
short[] array3 = this.bl_tree;
byte[] bl_order = ZTree.bl_order;
uint num2;
if ("{il2cpp array field local23->}" == num)
{
while (num2 >= (uint)3)
{
}
}
int num3 = this.static_len;
num2 += num2;
num3 += 10;
int num4 = this.opt_len;
num4 += 10;
if (num3 <= num4)
{
num4 = num3;
}
if (buf != -1)
{
num4 = buf;
this._tr_stored_block(num4, stored_len, eof);
}
if (this != num4)
{
this.send_bits(num4, 3);
ZTree ztree = this.l_desc;
ZTree ztree2 = this.d_desc;
uint num5 = num2 + 1U;
int max_code3 = ztree.max_code;
this.send_bits(num4, 5);
this.send_bits(num4, 5);
this.send_bits(num4, 4);
if (num5 > (uint)0)
{
short[] array4 = this.bl_tree;
byte[] bl_order2 = ZTree.bl_order;
this.send_bits(num4, 3);
num++;
}
short[] array5 = this.dyn_ltree;
this.send_tree(array5, max_code3);
short[] array6 = this.dyn_dtree;
this.send_tree(array6, max_code3);
}
short[] static_dtree = StaticTree.static_dtree;
short[] static_ltree = StaticTree.static_ltree;
this.compress_block(static_ltree, static_dtree);
this.init_block();
if (eof)
{
this.bi_windup();
}
}
// Token: 0x06007CBC RID: 31932 RVA: 0x0019FFB4 File Offset: 0x0019E1B4
[Token(Token = "0x6007CBC")]
[Address(RVA = "0x2028ED0", Offset = "0x20278D0", VA = "0x182028ED0")]
internal void fill_window()
{
int num2;
byte[] array4;
do
{
int num = this.lookahead;
num2 = 0;
int num3 = this.window_size;
int num4 = this.strstart;
num3 -= num4;
num3 -= num;
int num13;
if (num4 != 0 || num != 0 || this.w_size != -1)
{
int num5 = this.w_size;
byte[] array = this.window;
int num6 = 0;
Array.Copy(array, num5, array, num6, num5);
int num7 = this.hash_size;
num5 = num7;
short[] array2 = this.head;
short num8 = array2[num5];
int num9 = this.w_size;
num8 = (short)((int)num8 - num9);
array2[0] = (short)num2;
int num10 = num7 - 1;
while (num10 != 0)
{
}
int num11 = this.w_size;
num5 = num11;
short[] array3 = this.prev;
short num12 = array3[num5];
num13 = this.w_size;
num12 = (short)((int)num12 - num13);
array3[0] = (short)num2;
int num14 = num11 - 1;
while (num14 != 0)
{
}
}
ZStream zstream = this.strm;
int num15 = zstream.avail_in;
if (num15 == 0)
{
break;
}
array4 = this.window;
if (num15 != 0)
{
num15 -= num15;
zstream.avail_in = num15;
int next_in_index;
if (zstream.dstate.noheader == num2)
{
Adler32 adler = zstream._adler;
next_in_index = zstream.next_in_index;
byte[] next_in = zstream.next_in;
long adler2 = zstream.adler;
long num16 = adler.adler32(adler2, next_in, next_in_index, num15);
zstream.adler = num16;
}
int next_in_index2 = zstream.next_in_index;
Array.Copy(zstream.next_in, next_in_index2, array4, next_in_index, num15);
}
this.lookahead = array4;
byte[] array5 = this.window;
num13 = this.strstart;
byte b;
this.ins_h = (int)b;
num13++;
this.ins_h = (int)b;
}
while (array4 < (ulong)262L && this.strm.avail_in != num2);
}
// Token: 0x06007CBD RID: 31933 RVA: 0x001A0194 File Offset: 0x0019E394
[Token(Token = "0x6007CBD")]
[Address(RVA = "0x2027DB0", Offset = "0x20267B0", VA = "0x182027DB0")]
internal int deflate_fast(int flush)
{
int num;
do
{
num = 0;
if (this.lookahead < 262)
{
this.fill_window();
int num2 = this.lookahead;
if (num2 < 262 && flush == 0)
{
break;
}
if (num2 == 0)
{
goto IL_27F;
}
}
byte[] array = this.window;
int num3 = this.strstart;
int num4 = this.ins_h;
short[] array2 = this.head;
this.ins_h = num4;
short num5 = array2[num4];
short[] array3 = this.prev;
int num6 = this.w_mask;
array3[0] = num5;
short[] array4 = this.head;
int num7 = this.ins_h;
int num8 = this.strstart;
array4[0] = (short)num8;
int num9 = this.strstart;
num9 -= (int)num5;
int num10 = this.w_size;
if (this.strategy != 2)
{
int num11 = this.longest_match((int)num5);
this.match_length = num11;
}
bool flag;
int num14;
if (this.match_length < 3)
{
byte[] array5 = this.window;
int num12 = this.strstart;
int num13 = 0;
byte b;
flag = this._tr_tally(num13, (int)b);
num14 = this.strstart;
}
int num15 = this.strstart;
num14 += -3;
bool flag2 = this._tr_tally(num15, num14);
int num16 = this.match_length;
flag = flag2;
int num17 = this.lookahead;
num17 -= num16;
this.lookahead = num17;
int num18 = num16 - 1;
this.match_length = num18;
int num19 = this.strstart;
byte[] array6 = this.window;
int num20 = num19 + 1;
this.strstart = num20;
int num21 = this.ins_h;
short[] array7 = this.head;
this.ins_h = num21;
short num22 = array7[num21];
short[] array8 = this.prev;
int num23 = this.w_mask;
array8[0] = num22;
short[] array9 = this.head;
int num24 = this.ins_h;
num23 = num24;
int num25 = this.strstart;
array9[0] = (short)num25;
while (num24 != array9.Length)
{
}
int num26 = this.strstart;
byte[] array10 = this.window;
num26 += num23;
this.strstart = num26;
this.match_length = num;
num3 = num26;
byte b2 = array10[num3];
this.ins_h = (int)b2;
num3++;
this.ins_h = (int)b2;
while (!flag)
{
}
int num27 = this.block_start;
num26 -= num27;
int num28 = 0;
this._tr_flush_block(num27, num26, num28 != 0);
ZStream zstream = this.strm;
int num29 = this.strstart;
this.block_start = num29;
zstream.flush_pending();
}
while (this.strm.avail_out != num);
return 0;
IL_27F:
int num30 = this.block_start;
int num31 = this.strstart;
bool flag3 = flush == 4;
num31 -= num30;
this._tr_flush_block(num30, num31, flag3);
ZStream zstream2 = this.strm;
int num32 = this.strstart;
this.block_start = num32;
zstream2.flush_pending();
if (this.strm.avail_out != num)
{
}
throw new NullReferenceException();
}
// Token: 0x06007CBE RID: 31934 RVA: 0x001A047C File Offset: 0x0019E67C
[Token(Token = "0x6007CBE")]
[Address(RVA = "0x20287A0", Offset = "0x20271A0", VA = "0x1820287A0")]
internal int deflate_slow(int flush)
{
int num;
do
{
num = 0;
if (this.lookahead < 262)
{
this.fill_window();
int num2 = this.lookahead;
if (num2 < 262 && flush == 0)
{
break;
}
if (num2 == 0)
{
goto IL_277;
}
}
byte[] array = this.window;
int num3 = this.strstart;
int num4 = this.ins_h;
short[] array2 = this.head;
this.ins_h = num4;
short num5 = array2[num4];
short[] array3 = this.prev;
int num6 = this.w_mask;
array3[0] = num5;
short[] array4 = this.head;
int num7 = this.ins_h;
int num8 = this.strstart;
array4[0] = (short)num8;
int num9 = this.match_length;
int num10 = this.match_start;
this.prev_length = num9;
this.prev_match = num10;
this.match_length = 2;
if (num9 < this.max_lazy_match)
{
int num11 = this.strstart;
num11 -= (int)num5;
int num12 = this.w_size;
if (this.strategy != 2)
{
int num13 = this.longest_match((int)num5);
this.match_length = num13;
}
if (this.strategy == 1 || (2 == 3 && this.strstart > 4096))
{
this.match_length = 2;
}
}
int num14 = this.strstart;
num9 += -3;
int num15 = this.lookahead;
num15 += -3;
num15 += num14;
bool flag = this._tr_tally(num14, num9);
int num16 = this.prev_length;
this.prev_length = 1;
int num17 = this.strstart;
int num18 = num17 + 1;
this.strstart = num18;
byte[] array5 = this.window;
int num19 = this.ins_h;
short[] array6 = this.head;
this.ins_h = num19;
short num20 = array6[num19];
short[] array7 = this.prev;
int num21 = this.w_mask;
array7[0] = num20;
short[] array8 = this.head;
int num22 = this.ins_h;
int num23 = this.strstart;
array8[0] = (short)num23;
while (num22 != array8.Length)
{
}
int num24 = this.strstart;
num24++;
this.match_available = num;
this.match_length = 2;
this.strstart = num24;
while (!flag)
{
}
int num25 = this.block_start;
num24 -= num25;
int num26 = 0;
this._tr_flush_block(num25, num24, num26 != 0);
ZStream zstream = this.strm;
int num27 = this.strstart;
this.block_start = num27;
zstream.flush_pending();
}
while (this.strm.avail_out != num);
return 0;
IL_277:
if (this.match_available != num)
{
byte[] array9 = this.window;
int num28 = this.strstart;
int num29 = 0;
byte b;
bool flag2 = this._tr_tally(num29, (int)b);
this.match_available = num;
}
bool flag3 = flush == 4;
this.flush_block_only(flag3);
if (this.strm.avail_out != num)
{
}
throw new NullReferenceException();
}
// Token: 0x06007CBF RID: 31935 RVA: 0x001A0750 File Offset: 0x0019E950
[Token(Token = "0x6007CBF")]
[Address(RVA = "0x2029580", Offset = "0x2027F80", VA = "0x182029580")]
internal int longest_match(int cur_match)
{
int num = this.w_size;
int num2 = this.strstart;
int num3 = this.max_chain_length;
int num4 = this.prev_length;
num2 -= num;
num2 += 262;
int num5 = 0;
byte[] array = this.window;
int num6 = this.nice_match;
int length = array.Length;
int num7 = cur_match - 1;
int num8 = this.lookahead;
if (num6 <= num8)
{
}
int length2 = array.Length;
num8 = cur_match + 1;
int num9 = num2 + 1;
int length3 = array.Length;
num6 = num3;
int num10 = num6 + 1;
int num11 = cur_match + 1;
int num12 = cur_match + 1;
num12 = num3;
num12 += 3;
int num13 = cur_match + 1;
int num14 = cur_match + 1;
num14 = num3;
num14 += 5;
int num15 = cur_match + 1;
int num16 = cur_match + 1;
num16 = num3;
num16 += 7;
int num17 = cur_match + 1;
num3 += 8;
if (cur_match > num4)
{
this.match_start = cur_match;
int length4 = array.Length;
byte b2;
byte b = b2 - 1;
}
short[] array2 = this.prev;
int num18 = this.w_mask;
if ((int)array2[num18] > num5)
{
int num19 = num3 - 1;
if (num19 != 0)
{
}
}
return cur_match;
}
// Token: 0x06007CC0 RID: 31936 RVA: 0x001A087C File Offset: 0x0019EA7C
[Token(Token = "0x6007CC0")]
[Address(RVA = "0x20276C0", Offset = "0x20260C0", VA = "0x1820276C0")]
internal int deflateInit(ZStream strm, int level, int bits)
{
int num = 0;
ulong num2;
return this.deflateInit2(strm, level, 8, bits, (int)num2, num);
}
// Token: 0x06007CC1 RID: 31937 RVA: 0x001A0898 File Offset: 0x0019EA98
[Token(Token = "0x6007CC1")]
[Address(RVA = "0x2027690", Offset = "0x2026090", VA = "0x182027690")]
internal int deflateInit(ZStream strm, int level)
{
int num = 0;
ulong num2;
ulong num3;
return this.deflateInit2(strm, level, 8, (int)num2, (int)num3, num);
}
// Token: 0x06007CC2 RID: 31938 RVA: 0x001A08B4 File Offset: 0x0019EAB4
[Token(Token = "0x6007CC2")]
[Address(RVA = "0x2027340", Offset = "0x2025D40", VA = "0x182027340")]
internal int deflateInit2(ZStream strm, int level, int method, int windowBits, int memLevel, int strategy)
{
int num = 0;
strm.msg = num;
if (method == 8 && level <= 9)
{
strm.dstate = this;
this.w_bits = 0;
this.noheader = 0;
uint num2;
this.w_size = (int)num2;
this.hash_bits = 0;
uint num3 = num2 - 1U;
this.w_mask = (int)num3;
uint num4;
this.hash_size = (int)num4;
uint num5 = num4 - 1U;
this.hash_mask = (int)num5;
byte[] array = new byte[0];
int num6 = this.w_size;
this.window = array;
short[] array2 = new short[num6];
int num7 = this.hash_size;
this.prev = array2;
short[] array3 = new short[num7];
this.head = array3;
uint num8;
this.lit_bufsize = (int)num8;
byte[] array4 = new byte[1];
int num9 = this.lit_bufsize;
this.pending_buf = array4;
this.level = level;
this.strategy = 0;
this.method = (byte)method;
this.pending_buf_size = array4;
num9 -= (int)num8;
this.d_buf = num9;
this.l_buf = num9;
strm.total_out = (long)num;
strm.total_in = (long)num;
strm.msg = num;
strm.data_type = (int)((ulong)2L);
int num10 = this.noheader;
this.pending_out = num;
this.noheader = num;
uint num11;
this.status = (int)num11;
strm.adler = (long)((ulong)1L);
this.last_flush = num;
ZTree ztree = this.l_desc;
short[] array5 = this.dyn_ltree;
ztree.dyn_tree = array5;
ZTree ztree2 = this.l_desc;
StaticTree static_l_desc = StaticTree.static_l_desc;
ztree2.stat_desc = static_l_desc;
ZTree ztree3 = this.d_desc;
short[] array6 = this.dyn_dtree;
ztree3.dyn_tree = array6;
ZTree ztree4 = this.d_desc;
StaticTree static_d_desc = StaticTree.static_d_desc;
ztree4.stat_desc = static_d_desc;
ZTree ztree5 = this.bl_desc;
short[] array7 = this.bl_tree;
ztree5.dyn_tree = array7;
ZTree ztree6 = this.bl_desc;
StaticTree static_bl_desc = StaticTree.static_bl_desc;
ztree6.stat_desc = static_bl_desc;
this.bi_buf = (uint)num;
this.last_eob_len = (int)((ulong)8L);
this.init_block();
this.lm_init();
return 0;
}
throw new NullReferenceException();
}
// Token: 0x06007CC3 RID: 31939 RVA: 0x001A0AB4 File Offset: 0x0019ECB4
[Token(Token = "0x6007CC3")]
[Address(RVA = "0x20279D0", Offset = "0x20263D0", VA = "0x1820279D0")]
internal int deflateReset(ZStream strm)
{
int num = 0;
strm.data_type = (int)((ulong)2L);
strm.total_out = (long)num;
strm.total_in = (long)num;
strm.msg = num;
this.pending_out = num;
int num2 = this.noheader;
this.noheader = num;
this.status = (int)((uint)42);
strm.adler = (long)((ulong)1L);
this.last_flush = num;
ZTree ztree = this.l_desc;
short[] array = this.dyn_ltree;
ztree.dyn_tree = array;
ZTree ztree2 = this.l_desc;
StaticTree static_l_desc = StaticTree.static_l_desc;
ztree2.stat_desc = static_l_desc;
ZTree ztree3 = this.d_desc;
short[] array2 = this.dyn_dtree;
ztree3.dyn_tree = array2;
ZTree ztree4 = this.d_desc;
StaticTree static_d_desc = StaticTree.static_d_desc;
ztree4.stat_desc = static_d_desc;
ZTree ztree5 = this.bl_desc;
short[] array3 = this.bl_tree;
ztree5.dyn_tree = array3;
ZTree ztree6 = this.bl_desc;
StaticTree static_bl_desc = StaticTree.static_bl_desc;
ztree6.stat_desc = static_bl_desc;
this.bi_buf = (uint)num;
this.last_eob_len = (int)((ulong)8L);
this.init_block();
this.lm_init();
return 0;
}
// Token: 0x06007CC4 RID: 31940 RVA: 0x001A0BC4 File Offset: 0x0019EDC4
[Token(Token = "0x6007CC4")]
[Address(RVA = "0x2027300", Offset = "0x2025D00", VA = "0x182027300")]
internal int deflateEnd()
{
int num = this.status;
if (num != 42 && num != 113 && num != 666)
{
return -2;
}
int num2 = 0;
this.pending_buf = num2;
this.head = num2;
this.prev = num2;
this.window = num2;
return -3;
}
// Token: 0x06007CC5 RID: 31941 RVA: 0x001A0C10 File Offset: 0x0019EE10
[Token(Token = "0x6007CC5")]
[Address(RVA = "0x20276F0", Offset = "0x20260F0", VA = "0x1820276F0")]
internal int deflateParams(ZStream strm, int _level, int _strategy)
{
int num = 0;
if (_level <= 9 && _strategy <= 2)
{
Deflate.Config[] array = Deflate.config_table;
int num2 = this.level;
int length = array.Length;
int func = array[num2].func;
Deflate.Config config = array[_level];
if (func != config.func && strm.total_in != (long)num)
{
Deflate dstate = strm.dstate;
if (dstate != 0)
{
int num3 = dstate.deflate(strm, 1);
}
}
if (num2 != _level)
{
this.level = _level;
Deflate.Config[] array2 = Deflate.config_table;
int num4 = this.level;
int max_lazy = array2[num4].max_lazy;
this.max_lazy_match = max_lazy;
int good_length = Deflate.config_table[num4].good_length;
this.good_match = good_length;
int nice_length = Deflate.config_table[num4].nice_length;
this.nice_match = nice_length;
int max_chain = Deflate.config_table[num4].max_chain;
this.max_chain_length = max_chain;
}
this.strategy = _strategy;
}
return -2;
}
// Token: 0x06007CC6 RID: 31942 RVA: 0x001A0D18 File Offset: 0x0019EF18
[Token(Token = "0x6007CC6")]
[Address(RVA = "0x2027B70", Offset = "0x2026570", VA = "0x182027B70")]
internal int deflateSetDictionary(ZStream strm, byte[] dictionary, int dictLength)
{
int i = 0;
if (dictionary != 0 && this.status == 42)
{
Adler32 adler = strm._adler;
long adler2 = strm.adler;
int num = 0;
long num2 = adler.adler32(adler2, dictionary, num, dictLength);
strm.adler = num2;
int num3 = this.w_size;
num3 += -262;
if (dictLength > num3)
{
}
byte[] array = this.window;
int num4 = 0;
Array.Copy(dictionary, i, array, num4, dictLength);
byte[] array2 = this.window;
this.strstart = dictLength;
this.block_start = dictLength;
byte b = array2[0];
this.ins_h = (int)b;
this.ins_h = (int)b;
byte[] array3 = this.window;
int num5 = this.ins_h;
short[] array4 = this.head;
this.ins_h = num5;
short[] array5 = this.prev;
int num6 = this.w_mask;
short num7 = array4[num5];
array5[0] = num7;
short[] array6 = this.head;
int num8 = this.ins_h;
array6[0] = (short)i;
i++;
while (i <= dictLength)
{
}
}
throw new IndexOutOfRangeException();
}
// Token: 0x06007CC7 RID: 31943 RVA: 0x001A0E28 File Offset: 0x0019F028
[Token(Token = "0x6007CC7")]
[Address(RVA = "0x20282B0", Offset = "0x2026CB0", VA = "0x1820282B0")]
internal int deflate(ZStream strm, int flush)
{
if (flush <= 4)
{
if (strm.next_out != (ulong)0L && (strm.next_in != (ulong)0L || strm.avail_in == 0))
{
int num = this.status;
if (num != 666 || flush == 4)
{
if (strm.avail_out != 0)
{
int num2 = this.last_flush;
this.last_flush = flush;
this.strm = strm;
if (num == 42)
{
int num3 = this.level;
this.status = (int)((ulong)113L);
ulong num4;
num4 += (ulong)1L;
num4 += num4;
long num5 = (long)(num4 * (ulong)((uint)31));
this.putShortMSB((int)num5);
if (this.strstart != 0)
{
long adler = strm.adler;
this.putShortMSB((int)adler);
long adler2 = strm.adler;
this.putShortMSB((int)adler2);
}
strm.adler = (long)((ulong)1L);
}
if (this.pending == 0)
{
if (strm.avail_in != 0 || flush == 4)
{
goto IL_F9;
}
string[] array = Deflate.z_errmsg;
}
strm.flush_pending();
if (strm.avail_out == 0)
{
goto IL_259;
}
IL_F9:
string[] array2;
if (this.status == 666)
{
if (strm.avail_in == 0)
{
goto IL_11F;
}
array2 = Deflate.z_errmsg;
}
if (strm.avail_in != 0)
{
goto IL_13D;
}
IL_11F:
if (this.lookahead == 0 && (flush == 0 || array2 == (ulong)666L))
{
goto IL_204;
}
IL_13D:
Deflate.Config[] array3 = Deflate.config_table;
int num6 = this.level;
int func = array3[num6].func;
if (func != 0)
{
if (func != 0)
{
if (func != 1)
{
goto IL_19D;
}
int num7 = this.deflate_slow(flush);
}
int num8 = this.deflate_fast(flush);
}
int num9 = this.deflate_stored(flush);
if (num9 == 2 || num9 == 3)
{
this.status = (int)((ulong)666L);
}
IL_19D:
if (num9 == 0 || num9 == 2)
{
goto IL_250;
}
if (num9 == 1)
{
if (flush != num9)
{
int num10 = 0;
int num11 = 0;
int num12 = 0;
int num13 = 0;
this._tr_stored_block(num13, num12, num11 != 0);
if (flush == 3 && this.hash_size > num10)
{
short[] array4 = this.head;
num10++;
array4[0] = (short)num10;
}
}
strm.flush_pending();
if (strm.avail_out == 0)
{
goto IL_259;
}
}
IL_204:
if (flush != 4)
{
goto IL_259;
}
if (this.noheader == 0)
{
long adler3 = strm.adler;
this.putShortMSB((int)adler3);
long adler4 = strm.adler;
this.putShortMSB((int)adler4);
strm.flush_pending();
this.noheader = (int)((ulong)4294967295L);
if (this.pending != 0)
{
goto IL_259;
}
}
IL_250:
if (strm.avail_out == 0)
{
}
}
IL_259:
string text = Deflate.z_errmsg[7];
strm.msg = text;
}
}
string text2 = Deflate.z_errmsg[4];
strm.msg = text2;
}
throw new IndexOutOfRangeException();
}
// Token: 0x040058A9 RID: 22697
[Token(Token = "0x40058A9")]
private const int MAX_MEM_LEVEL = 9;
// Token: 0x040058AA RID: 22698
[Token(Token = "0x40058AA")]
private const int Z_DEFAULT_COMPRESSION = -1;
// Token: 0x040058AB RID: 22699
[Token(Token = "0x40058AB")]
private const int MAX_WBITS = 15;
// Token: 0x040058AC RID: 22700
[Token(Token = "0x40058AC")]
private const int DEF_MEM_LEVEL = 8;
// Token: 0x040058AD RID: 22701
[Token(Token = "0x40058AD")]
private const int STORED = 0;
// Token: 0x040058AE RID: 22702
[Token(Token = "0x40058AE")]
private const int FAST = 1;
// Token: 0x040058AF RID: 22703
[Token(Token = "0x40058AF")]
private const int SLOW = 2;
// Token: 0x040058B0 RID: 22704
[Token(Token = "0x40058B0")]
private static readonly Deflate.Config[] config_table;
// Token: 0x040058B1 RID: 22705
[Token(Token = "0x40058B1")]
private static readonly string[] z_errmsg;
// Token: 0x040058B2 RID: 22706
[Token(Token = "0x40058B2")]
private const int NeedMore = 0;
// Token: 0x040058B3 RID: 22707
[Token(Token = "0x40058B3")]
private const int BlockDone = 1;
// Token: 0x040058B4 RID: 22708
[Token(Token = "0x40058B4")]
private const int FinishStarted = 2;
// Token: 0x040058B5 RID: 22709
[Token(Token = "0x40058B5")]
private const int FinishDone = 3;
// Token: 0x040058B6 RID: 22710
[Token(Token = "0x40058B6")]
private const int PRESET_DICT = 32;
// Token: 0x040058B7 RID: 22711
[Token(Token = "0x40058B7")]
private const int Z_FILTERED = 1;
// Token: 0x040058B8 RID: 22712
[Token(Token = "0x40058B8")]
private const int Z_HUFFMAN_ONLY = 2;
// Token: 0x040058B9 RID: 22713
[Token(Token = "0x40058B9")]
private const int Z_DEFAULT_STRATEGY = 0;
// Token: 0x040058BA RID: 22714
[Token(Token = "0x40058BA")]
private const int Z_NO_FLUSH = 0;
// Token: 0x040058BB RID: 22715
[Token(Token = "0x40058BB")]
private const int Z_PARTIAL_FLUSH = 1;
// Token: 0x040058BC RID: 22716
[Token(Token = "0x40058BC")]
private const int Z_SYNC_FLUSH = 2;
// Token: 0x040058BD RID: 22717
[Token(Token = "0x40058BD")]
private const int Z_FULL_FLUSH = 3;
// Token: 0x040058BE RID: 22718
[Token(Token = "0x40058BE")]
private const int Z_FINISH = 4;
// Token: 0x040058BF RID: 22719
[Token(Token = "0x40058BF")]
private const int Z_OK = 0;
// Token: 0x040058C0 RID: 22720
[Token(Token = "0x40058C0")]
private const int Z_STREAM_END = 1;
// Token: 0x040058C1 RID: 22721
[Token(Token = "0x40058C1")]
private const int Z_NEED_DICT = 2;
// Token: 0x040058C2 RID: 22722
[Token(Token = "0x40058C2")]
private const int Z_ERRNO = -1;
// Token: 0x040058C3 RID: 22723
[Token(Token = "0x40058C3")]
private const int Z_STREAM_ERROR = -2;
// Token: 0x040058C4 RID: 22724
[Token(Token = "0x40058C4")]
private const int Z_DATA_ERROR = -3;
// Token: 0x040058C5 RID: 22725
[Token(Token = "0x40058C5")]
private const int Z_MEM_ERROR = -4;
// Token: 0x040058C6 RID: 22726
[Token(Token = "0x40058C6")]
private const int Z_BUF_ERROR = -5;
// Token: 0x040058C7 RID: 22727
[Token(Token = "0x40058C7")]
private const int Z_VERSION_ERROR = -6;
// Token: 0x040058C8 RID: 22728
[Token(Token = "0x40058C8")]
private const int INIT_STATE = 42;
// Token: 0x040058C9 RID: 22729
[Token(Token = "0x40058C9")]
private const int BUSY_STATE = 113;
// Token: 0x040058CA RID: 22730
[Token(Token = "0x40058CA")]
private const int FINISH_STATE = 666;
// Token: 0x040058CB RID: 22731
[Token(Token = "0x40058CB")]
private const int Z_DEFLATED = 8;
// Token: 0x040058CC RID: 22732
[Token(Token = "0x40058CC")]
private const int STORED_BLOCK = 0;
// Token: 0x040058CD RID: 22733
[Token(Token = "0x40058CD")]
private const int STATIC_TREES = 1;
// Token: 0x040058CE RID: 22734
[Token(Token = "0x40058CE")]
private const int DYN_TREES = 2;
// Token: 0x040058CF RID: 22735
[Token(Token = "0x40058CF")]
private const int Z_BINARY = 0;
// Token: 0x040058D0 RID: 22736
[Token(Token = "0x40058D0")]
private const int Z_ASCII = 1;
// Token: 0x040058D1 RID: 22737
[Token(Token = "0x40058D1")]
private const int Z_UNKNOWN = 2;
// Token: 0x040058D2 RID: 22738
[Token(Token = "0x40058D2")]
private const int Buf_size = 16;
// Token: 0x040058D3 RID: 22739
[Token(Token = "0x40058D3")]
private const int REP_3_6 = 16;
// Token: 0x040058D4 RID: 22740
[Token(Token = "0x40058D4")]
private const int REPZ_3_10 = 17;
// Token: 0x040058D5 RID: 22741
[Token(Token = "0x40058D5")]
private const int REPZ_11_138 = 18;
// Token: 0x040058D6 RID: 22742
[Token(Token = "0x40058D6")]
private const int MIN_MATCH = 3;
// Token: 0x040058D7 RID: 22743
[Token(Token = "0x40058D7")]
private const int MAX_MATCH = 258;
// Token: 0x040058D8 RID: 22744
[Token(Token = "0x40058D8")]
private const int MIN_LOOKAHEAD = 262;
// Token: 0x040058D9 RID: 22745
[Token(Token = "0x40058D9")]
private const int MAX_BITS = 15;
// Token: 0x040058DA RID: 22746
[Token(Token = "0x40058DA")]
private const int D_CODES = 30;
// Token: 0x040058DB RID: 22747
[Token(Token = "0x40058DB")]
private const int BL_CODES = 19;
// Token: 0x040058DC RID: 22748
[Token(Token = "0x40058DC")]
private const int LENGTH_CODES = 29;
// Token: 0x040058DD RID: 22749
[Token(Token = "0x40058DD")]
private const int LITERALS = 256;
// Token: 0x040058DE RID: 22750
[Token(Token = "0x40058DE")]
private const int L_CODES = 286;
// Token: 0x040058DF RID: 22751
[Token(Token = "0x40058DF")]
private const int HEAP_SIZE = 573;
// Token: 0x040058E0 RID: 22752
[Token(Token = "0x40058E0")]
private const int END_BLOCK = 256;
// Token: 0x040058E1 RID: 22753
[global::Cpp2IlInjected.FieldOffset(Offset = "0x10")]
[Token(Token = "0x40058E1")]
internal ZStream strm;
// Token: 0x040058E2 RID: 22754
[global::Cpp2IlInjected.FieldOffset(Offset = "0x18")]
[Token(Token = "0x40058E2")]
internal int status;
// Token: 0x040058E3 RID: 22755
[global::Cpp2IlInjected.FieldOffset(Offset = "0x20")]
[Token(Token = "0x40058E3")]
internal byte[] pending_buf;
// Token: 0x040058E4 RID: 22756
[global::Cpp2IlInjected.FieldOffset(Offset = "0x28")]
[Token(Token = "0x40058E4")]
internal int pending_buf_size;
// Token: 0x040058E5 RID: 22757
[global::Cpp2IlInjected.FieldOffset(Offset = "0x2C")]
[Token(Token = "0x40058E5")]
internal int pending_out;
// Token: 0x040058E6 RID: 22758
[global::Cpp2IlInjected.FieldOffset(Offset = "0x30")]
[Token(Token = "0x40058E6")]
internal int pending;
// Token: 0x040058E7 RID: 22759
[global::Cpp2IlInjected.FieldOffset(Offset = "0x34")]
[Token(Token = "0x40058E7")]
internal int noheader;
// Token: 0x040058E8 RID: 22760
[global::Cpp2IlInjected.FieldOffset(Offset = "0x38")]
[Token(Token = "0x40058E8")]
internal byte data_type;
// Token: 0x040058E9 RID: 22761
[global::Cpp2IlInjected.FieldOffset(Offset = "0x39")]
[Token(Token = "0x40058E9")]
internal byte method;
// Token: 0x040058EA RID: 22762
[global::Cpp2IlInjected.FieldOffset(Offset = "0x3C")]
[Token(Token = "0x40058EA")]
internal int last_flush;
// Token: 0x040058EB RID: 22763
[global::Cpp2IlInjected.FieldOffset(Offset = "0x40")]
[Token(Token = "0x40058EB")]
internal int w_size;
// Token: 0x040058EC RID: 22764
[global::Cpp2IlInjected.FieldOffset(Offset = "0x44")]
[Token(Token = "0x40058EC")]
internal int w_bits;
// Token: 0x040058ED RID: 22765
[global::Cpp2IlInjected.FieldOffset(Offset = "0x48")]
[Token(Token = "0x40058ED")]
internal int w_mask;
// Token: 0x040058EE RID: 22766
[global::Cpp2IlInjected.FieldOffset(Offset = "0x50")]
[Token(Token = "0x40058EE")]
internal byte[] window;
// Token: 0x040058EF RID: 22767
[global::Cpp2IlInjected.FieldOffset(Offset = "0x58")]
[Token(Token = "0x40058EF")]
internal int window_size;
// Token: 0x040058F0 RID: 22768
[global::Cpp2IlInjected.FieldOffset(Offset = "0x60")]
[Token(Token = "0x40058F0")]
internal short[] prev;
// Token: 0x040058F1 RID: 22769
[global::Cpp2IlInjected.FieldOffset(Offset = "0x68")]
[Token(Token = "0x40058F1")]
internal short[] head;
// Token: 0x040058F2 RID: 22770
[global::Cpp2IlInjected.FieldOffset(Offset = "0x70")]
[Token(Token = "0x40058F2")]
internal int ins_h;
// Token: 0x040058F3 RID: 22771
[global::Cpp2IlInjected.FieldOffset(Offset = "0x74")]
[Token(Token = "0x40058F3")]
internal int hash_size;
// Token: 0x040058F4 RID: 22772
[global::Cpp2IlInjected.FieldOffset(Offset = "0x78")]
[Token(Token = "0x40058F4")]
internal int hash_bits;
// Token: 0x040058F5 RID: 22773
[global::Cpp2IlInjected.FieldOffset(Offset = "0x7C")]
[Token(Token = "0x40058F5")]
internal int hash_mask;
// Token: 0x040058F6 RID: 22774
[global::Cpp2IlInjected.FieldOffset(Offset = "0x80")]
[Token(Token = "0x40058F6")]
internal int hash_shift;
// Token: 0x040058F7 RID: 22775
[global::Cpp2IlInjected.FieldOffset(Offset = "0x84")]
[Token(Token = "0x40058F7")]
internal int block_start;
// Token: 0x040058F8 RID: 22776
[global::Cpp2IlInjected.FieldOffset(Offset = "0x88")]
[Token(Token = "0x40058F8")]
internal int match_length;
// Token: 0x040058F9 RID: 22777
[global::Cpp2IlInjected.FieldOffset(Offset = "0x8C")]
[Token(Token = "0x40058F9")]
internal int prev_match;
// Token: 0x040058FA RID: 22778
[global::Cpp2IlInjected.FieldOffset(Offset = "0x90")]
[Token(Token = "0x40058FA")]
internal int match_available;
// Token: 0x040058FB RID: 22779
[global::Cpp2IlInjected.FieldOffset(Offset = "0x94")]
[Token(Token = "0x40058FB")]
internal int strstart;
// Token: 0x040058FC RID: 22780
[global::Cpp2IlInjected.FieldOffset(Offset = "0x98")]
[Token(Token = "0x40058FC")]
internal int match_start;
// Token: 0x040058FD RID: 22781
[global::Cpp2IlInjected.FieldOffset(Offset = "0x9C")]
[Token(Token = "0x40058FD")]
internal int lookahead;
// Token: 0x040058FE RID: 22782
[global::Cpp2IlInjected.FieldOffset(Offset = "0xA0")]
[Token(Token = "0x40058FE")]
internal int prev_length;
// Token: 0x040058FF RID: 22783
[global::Cpp2IlInjected.FieldOffset(Offset = "0xA4")]
[Token(Token = "0x40058FF")]
internal int max_chain_length;
// Token: 0x04005900 RID: 22784
[global::Cpp2IlInjected.FieldOffset(Offset = "0xA8")]
[Token(Token = "0x4005900")]
internal int max_lazy_match;
// Token: 0x04005901 RID: 22785
[global::Cpp2IlInjected.FieldOffset(Offset = "0xAC")]
[Token(Token = "0x4005901")]
internal int level;
// Token: 0x04005902 RID: 22786
[global::Cpp2IlInjected.FieldOffset(Offset = "0xB0")]
[Token(Token = "0x4005902")]
internal int strategy;
// Token: 0x04005903 RID: 22787
[global::Cpp2IlInjected.FieldOffset(Offset = "0xB4")]
[Token(Token = "0x4005903")]
internal int good_match;
// Token: 0x04005904 RID: 22788
[global::Cpp2IlInjected.FieldOffset(Offset = "0xB8")]
[Token(Token = "0x4005904")]
internal int nice_match;
// Token: 0x04005905 RID: 22789
[global::Cpp2IlInjected.FieldOffset(Offset = "0xC0")]
[Token(Token = "0x4005905")]
internal short[] dyn_ltree;
// Token: 0x04005906 RID: 22790
[global::Cpp2IlInjected.FieldOffset(Offset = "0xC8")]
[Token(Token = "0x4005906")]
internal short[] dyn_dtree;
// Token: 0x04005907 RID: 22791
[global::Cpp2IlInjected.FieldOffset(Offset = "0xD0")]
[Token(Token = "0x4005907")]
internal short[] bl_tree;
// Token: 0x04005908 RID: 22792
[global::Cpp2IlInjected.FieldOffset(Offset = "0xD8")]
[Token(Token = "0x4005908")]
internal ZTree l_desc;
// Token: 0x04005909 RID: 22793
[global::Cpp2IlInjected.FieldOffset(Offset = "0xE0")]
[Token(Token = "0x4005909")]
internal ZTree d_desc;
// Token: 0x0400590A RID: 22794
[global::Cpp2IlInjected.FieldOffset(Offset = "0xE8")]
[Token(Token = "0x400590A")]
internal ZTree bl_desc;
// Token: 0x0400590B RID: 22795
[global::Cpp2IlInjected.FieldOffset(Offset = "0xF0")]
[Token(Token = "0x400590B")]
internal short[] bl_count;
// Token: 0x0400590C RID: 22796
[global::Cpp2IlInjected.FieldOffset(Offset = "0xF8")]
[Token(Token = "0x400590C")]
internal int[] heap;
// Token: 0x0400590D RID: 22797
[global::Cpp2IlInjected.FieldOffset(Offset = "0x100")]
[Token(Token = "0x400590D")]
internal int heap_len;
// Token: 0x0400590E RID: 22798
[global::Cpp2IlInjected.FieldOffset(Offset = "0x104")]
[Token(Token = "0x400590E")]
internal int heap_max;
// Token: 0x0400590F RID: 22799
[global::Cpp2IlInjected.FieldOffset(Offset = "0x108")]
[Token(Token = "0x400590F")]
internal byte[] depth;
// Token: 0x04005910 RID: 22800
[global::Cpp2IlInjected.FieldOffset(Offset = "0x110")]
[Token(Token = "0x4005910")]
internal int l_buf;
// Token: 0x04005911 RID: 22801
[global::Cpp2IlInjected.FieldOffset(Offset = "0x114")]
[Token(Token = "0x4005911")]
internal int lit_bufsize;
// Token: 0x04005912 RID: 22802
[global::Cpp2IlInjected.FieldOffset(Offset = "0x118")]
[Token(Token = "0x4005912")]
internal int last_lit;
// Token: 0x04005913 RID: 22803
[global::Cpp2IlInjected.FieldOffset(Offset = "0x11C")]
[Token(Token = "0x4005913")]
internal int d_buf;
// Token: 0x04005914 RID: 22804
[global::Cpp2IlInjected.FieldOffset(Offset = "0x120")]
[Token(Token = "0x4005914")]
internal int opt_len;
// Token: 0x04005915 RID: 22805
[global::Cpp2IlInjected.FieldOffset(Offset = "0x124")]
[Token(Token = "0x4005915")]
internal int static_len;
// Token: 0x04005916 RID: 22806
[global::Cpp2IlInjected.FieldOffset(Offset = "0x128")]
[Token(Token = "0x4005916")]
internal int matches;
// Token: 0x04005917 RID: 22807
[global::Cpp2IlInjected.FieldOffset(Offset = "0x12C")]
[Token(Token = "0x4005917")]
internal int last_eob_len;
// Token: 0x04005918 RID: 22808
[global::Cpp2IlInjected.FieldOffset(Offset = "0x130")]
[Token(Token = "0x4005918")]
internal uint bi_buf;
// Token: 0x04005919 RID: 22809
[global::Cpp2IlInjected.FieldOffset(Offset = "0x134")]
[Token(Token = "0x4005919")]
internal int bi_valid;
// Token: 0x0200134E RID: 4942
[Token(Token = "0x200134E")]
internal class Config
{
// Token: 0x06007CC8 RID: 31944 RVA: 0x001A10C0 File Offset: 0x0019F2C0
[Token(Token = "0x6007CC8")]
[Address(RVA = "0xE250B0", Offset = "0xE23AB0", VA = "0x180E250B0")]
internal Config(int good_length, int max_lazy, int nice_length, int max_chain, int func)
{
this.max_chain = 0;
this.good_length = good_length;
this.nice_length = nice_length;
this.func = 0;
this.max_lazy = max_lazy;
}
// Token: 0x0400591A RID: 22810
[global::Cpp2IlInjected.FieldOffset(Offset = "0x10")]
[Token(Token = "0x400591A")]
internal int good_length;
// Token: 0x0400591B RID: 22811
[global::Cpp2IlInjected.FieldOffset(Offset = "0x14")]
[Token(Token = "0x400591B")]
internal int max_lazy;
// Token: 0x0400591C RID: 22812
[global::Cpp2IlInjected.FieldOffset(Offset = "0x18")]
[Token(Token = "0x400591C")]
internal int nice_length;
// Token: 0x0400591D RID: 22813
[global::Cpp2IlInjected.FieldOffset(Offset = "0x1C")]
[Token(Token = "0x400591D")]
internal int max_chain;
// Token: 0x0400591E RID: 22814
[global::Cpp2IlInjected.FieldOffset(Offset = "0x20")]
[Token(Token = "0x400591E")]
internal int func;
}
}
}
@@ -0,0 +1,827 @@
using System;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib
{
// Token: 0x0200134F RID: 4943
[Token(Token = "0x200134F")]
[StructLayout(3)]
internal sealed class InfBlocks
{
// Token: 0x06007CC9 RID: 31945 RVA: 0x001A10F8 File Offset: 0x0019F2F8
[Token(Token = "0x6007CC9")]
[Address(RVA = "0x202C310", Offset = "0x202AD10", VA = "0x18202C310")]
internal InfBlocks(ZStream z, object checkfn, int w)
{
int[] array = new int[1];
this.bb = array;
int[] array2 = new int[1];
this.tb = array2;
int num = 0;
InfCodes infCodes;
infCodes.free(num);
this.codes = infCodes;
InfTree infTree = new InfTree();
this.inftree = infTree;
base..ctor();
int[] array3 = new int[4320];
this.hufts = array3;
byte[] array4 = new byte[w];
this.window = array4;
this.end = w;
this.checkfn = checkfn;
int num2 = 0;
this.mode = num2;
this.bitk = num2;
this.read = num2;
if (checkfn != 0)
{
this.check = (long)((ulong)1L);
z.adler = (long)((ulong)1L);
}
}
// Token: 0x06007CCA RID: 31946 RVA: 0x001A11B0 File Offset: 0x0019F3B0
[Token(Token = "0x6007CCA")]
[Address(RVA = "0x202DAF0", Offset = "0x202C4F0", VA = "0x18202DAF0")]
internal void reset(ZStream z, long[] c)
{
if (c != 0)
{
long num = this.check;
c[0] = num;
}
if (this.mode == 6)
{
}
int num2 = 0;
this.mode = num2;
this.bitk = num2;
this.read = num2;
if (this.checkfn != num2)
{
this.check = (long)((ulong)1L);
z.adler = (long)((ulong)1L);
}
}
// Token: 0x06007CCB RID: 31947 RVA: 0x001A1214 File Offset: 0x0019F414
[Token(Token = "0x6007CCB")]
[Address(RVA = "0x202C630", Offset = "0x202B030", VA = "0x18202C630")]
internal int proc(ZStream z, int r)
{
int num = this.write;
int num2 = this.read;
int num3 = z.next_in_index;
int avail_in = z.avail_in;
int num4 = this.bitb;
int num5 = this.bitk;
if (num < num2)
{
num2 -= num;
}
int num6 = this.end;
num6 -= num;
int num7 = this.mode;
int num19;
if (num7 <= 9)
{
if (num5 >= 3)
{
goto IL_77;
}
if (avail_in != 0)
{
byte[] next_in = z.next_in;
num3++;
num5 += 8;
goto IL_77;
}
goto IL_79C;
IL_87A:
uint num8;
while (num8 != (uint)(-3))
{
}
this.blens = (ulong)0L;
this.mode = (int)((ulong)9L);
int num9;
this.bitb = num9;
int num10;
this.bitk = num10;
int num11;
this.write = num11;
goto IL_8AC;
IL_77:
num7 = num4;
num5 = num4;
this.last = num7;
if (num5 != 3)
{
if (num5 != 3)
{
if (num5 != 3)
{
if (num5 != 1)
{
goto IL_1A6;
}
this.mode = (int)((ulong)9L);
z.msg = "invalid block type";
this.bitk = "invalid block type";
}
this.mode = 3;
}
int[] array = new int[1];
int[] array2 = new int[1];
int[][] array3 = new int[1][];
int[][] array4 = new int[1][];
array[0] = (int)((ulong)9L);
array2[0] = (int)((ulong)5L);
int[] fixed_tl = InfTree.fixed_tl;
if (fixed_tl != 0)
{
}
array3[0] = fixed_tl;
int[] fixed_td = InfTree.fixed_td;
if (fixed_td != 0)
{
}
array4[0] = fixed_td;
int num12 = array[0];
int num13 = array2[0];
int[] array5 = array3[0];
InfCodes infCodes = this.codes;
infCodes.mode = (int)((ulong)0L);
infCodes.lbits = (byte)num12;
infCodes.dbits = (byte)num13;
infCodes.ltree = array5;
infCodes.ltree_index = (int)((ulong)0L);
infCodes.dtree = fixed_td;
infCodes.dtree_index = (int)((ulong)0L);
infCodes.tree = (ulong)0L;
this.mode = (int)((ulong)6L);
IL_1A6:
int i = this.mode;
while (i <= 9)
{
}
goto IL_1B4;
}
this.mode = (int)((ulong)1L);
int num14 = 0;
this.left = 0;
int num15 = 0;
uint num16;
this.mode = (int)num16;
int num17 = this.last;
this.mode = num17;
int num18 = this.end;
int num21;
int num22;
if (num19 == num18)
{
int num20 = this.read;
if (num20 != 0)
{
num21 = 0;
if (num20 > 0)
{
num22 = num20 - 1;
}
if (num22 != 0)
{
goto IL_295;
}
}
}
this.write = num21;
int num23 = this.write;
int num24 = this.read;
int num25 = this.end;
if (num23 < num24)
{
num22 = num24;
num22 -= num23;
}
num22 = num25;
num22 -= num23;
int num26;
int num27;
if (num23 == num25 && num24 != 0)
{
num26 = 0;
num27 = num24 - 1;
if (num24 <= 0)
{
num27 = num25;
}
}
if (num27 == 0)
{
goto IL_784;
}
IL_295:
int num28;
if (num28 <= num27)
{
num27 = num28;
}
num26 += num27;
num27 -= num27;
while (num28 != num27)
{
}
this.mode = num28;
if (num14 < 14)
{
num14 += 8;
}
this.table = num15;
if (num15 > 29 || num15 > 29)
{
goto IL_7B4;
}
if (this.blens != 0)
{
int num29 = 0;
int[] array6 = this.blens;
num29++;
}
int[] array7 = new int[0];
this.blens = array7;
this.index = (int)((ulong)0L);
this.mode = (int)((ulong)4L);
int num30 = this.table;
int num31 = this.index;
num30 += 4;
int num36;
if (num31 < num30)
{
if (num14 < 3)
{
num14 += 8;
}
int[] array8 = this.blens;
int num32 = this.index;
int[] array9 = InfBlocks.border;
int num33 = num32 + 1;
this.index = num33;
int num34 = array9[num32];
array8[0] = num15;
int num35 = this.table;
num36 = this.index;
num35 += 4;
}
if (num36 < 19)
{
int[] array10 = this.blens;
int num37 = this.index;
int[] array11 = InfBlocks.border;
int num38 = num37 + 1;
this.index = num38;
num38 = num37;
int num39 = array11[num38];
int num40 = this.index;
}
int[] array12 = this.bb;
int[] array13 = this.tb;
InfTree infTree = this.inftree;
int[] array14 = this.bb;
int[] array15 = this.hufts;
infTree.initWorkArea(19);
int[] hn = infTree.hn;
int num41 = 0;
hn[0] = num41;
int[] v = infTree.v;
int[] hn2 = infTree.hn;
int num42;
if (num42 == -3 || num42 == -5 || "{il2cpp array field local78->}" == (ulong)0L)
{
goto IL_7F4;
}
if (num42 != 0)
{
goto IL_7EE;
}
this.index = num42;
this.mode = (int)((ulong)5L);
int num43 = this.table;
num42 = num43;
num43 += 258;
num42 += num43;
int num49;
if (this.index < num42)
{
int num44 = this.bb[0];
if (num14 < num44)
{
num14 += 8;
}
int[] array16 = this.tb;
int[] array17 = this.hufts;
int num45 = array16[0];
int[] array18 = InfBlocks.inflate_mask;
int length = array18.Length;
int num46 = array18[num44];
num46 += num45;
int[] array19 = this.tb;
int[] array20 = this.hufts;
int num47;
if (num47 != 18)
{
}
if (num14 < array18)
{
num14 += 8;
}
int num48;
num14 -= num48;
int[] array21 = InfBlocks.inflate_mask;
num49 = this.index;
uint num50;
num14 -= (int)num50;
int num51 = array21[(int)num50];
uint num52;
num52 += (uint)num51;
int num53 = this.table;
num53 += 258;
num53 += num53;
if (num47 == 16)
{
int[] array22 = this.blens;
int num54 = num49 - 1;
}
int num55 = 0;
int[] array23 = this.blens;
num49++;
uint num56 = num52 - 1U;
array23[0] = num55;
while (num56 != (uint)0)
{
}
this.index = num49;
int num57 = this.index;
num14 -= num48;
int[] array24 = this.blens;
int num58 = num57 + 1;
this.index = num58;
array24[0] = num47;
int num59 = this.index;
int num60 = this.table;
num58 = num60;
num60 += 258;
num58 += num60;
}
int[] array25 = this.tb;
int[] array26 = new int[1];
int[] array27 = new int[1];
int[] array28 = new int[1];
int[] array29 = new int[1];
array26[0] = (int)((ulong)9L);
array27[0] = (int)((ulong)6L);
InfTree infTree2 = this.inftree;
int num61 = this.table;
num49 = num61;
int[] array30 = this.hufts;
num61 += 257;
num49++;
int num62;
if (num62 != 0)
{
goto IL_87A;
}
int num63 = array26[0];
int num64 = array27[0];
int[] array31 = this.hufts;
int num65 = array28[0];
int num66 = array29[0];
InfCodes infCodes2 = this.codes;
infCodes2.dbits = (byte)num64;
infCodes2.mode = (int)((ulong)0L);
infCodes2.lbits = (byte)num63;
infCodes2.ltree = array31;
infCodes2.ltree_index = num65;
infCodes2.dtree = array31;
infCodes2.dtree_index = num66;
infCodes2.tree = (ulong)0L;
this.mode = (int)((ulong)6L);
this.bitb = num15;
this.bitk = num14;
InfCodes infCodes3 = this.codes;
this.write = num26;
int num67;
if (num67 != 1)
{
goto IL_8F0;
}
int num68 = 0;
num11 = this.write;
int num69 = this.read;
num9 = this.bitb;
num10 = this.bitk;
if (num11 < num69)
{
num69 -= num11;
}
int num70 = this.end;
num70 -= num11;
if (this.last != num68)
{
goto IL_8AC;
}
this.mode = num68;
this.mode = (int)((ulong)9L);
IL_784:
this.bitb = num9;
this.bitk = num10;
this.write = num11;
IL_79C:
this.bitb = num9;
this.bitk = num10;
this.write = num11;
IL_7B4:
this.mode = (int)((ulong)9L);
this.bitk = num10;
this.bitb = num9;
this.write = num11;
this.bitb = num9;
this.bitk = num10;
this.write = num11;
IL_7EE:
if (num11 != -3)
{
goto IL_807;
}
IL_7F4:
this.blens = (ulong)0L;
this.mode = (int)((ulong)9L);
IL_807:
this.bitb = num9;
this.bitk = num10;
this.write = num11;
this.bitb = num9;
this.bitk = num10;
this.write = num11;
this.bitb = num9;
this.bitk = num10;
this.write = num11;
this.blens = (ulong)0L;
this.mode = (int)((ulong)9L);
this.bitb = num9;
this.bitk = num10;
this.write = num11;
goto IL_87A;
IL_8AC:
this.mode = (int)((ulong)7L);
this.write = num11;
int num71 = this.write;
while (this.read != num71)
{
}
this.mode = (int)((ulong)8L);
this.bitb = num9;
this.bitk = num10;
this.write = num71;
IL_8F0:
throw new NullReferenceException();
}
IL_1B4:
this.bitb = num4;
this.bitk = num5;
this.write = num;
num19 = 0;
int num72;
return num72;
}
// Token: 0x06007CCC RID: 31948 RVA: 0x001A1B18 File Offset: 0x0019FD18
[Token(Token = "0x6007CCC")]
[Address(RVA = "0x202C450", Offset = "0x202AE50", VA = "0x18202C450")]
internal void free(ZStream z)
{
if (this.mode == 6)
{
}
int num = 0;
this.mode = num;
this.bitk = num;
this.read = num;
if (this.checkfn != num)
{
this.check = (long)((ulong)1L);
z.adler = (long)((ulong)1L);
}
this.window = num;
this.hufts = num;
}
// Token: 0x06007CCD RID: 31949 RVA: 0x001A1B74 File Offset: 0x0019FD74
[Token(Token = "0x6007CCD")]
[Address(RVA = "0x202DB70", Offset = "0x202C570", VA = "0x18202DB70")]
internal void set_dictionary(byte[] d, int start, int n)
{
byte[] array = this.window;
int num = 0;
Array.Copy(d, start, array, num, n);
this.write = n;
this.read = n;
}
// Token: 0x06007CCE RID: 31950 RVA: 0x001A1BA4 File Offset: 0x0019FDA4
[Token(Token = "0x6007CCE")]
[Address(RVA = "0x1F15570", Offset = "0x1F13F70", VA = "0x181F15570")]
internal int sync_point()
{
/*
An exception occurred when decompiling this method (06007CCE)
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib.InfBlocks::sync_point()
---> System.Exception: Basic block has to end with unconditional control flow.
{
Block_0:
stloc:bool(var_0_09, ceq:bool(ldfld:int32(InfBlocks::mode, ldloc:InfBlocks(this)), ldc.i4:int32(1)))
}
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.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: 0x06007CCF RID: 31951 RVA: 0x001A1BBC File Offset: 0x0019FDBC
[Token(Token = "0x6007CCF")]
[Address(RVA = "0x202C4B0", Offset = "0x202AEB0", VA = "0x18202C4B0")]
internal int inflate_flush(ZStream z, int r)
{
int num = this.read;
int num2 = this.write;
int num3 = z.next_out_index;
if (num > num2)
{
}
int num4 = z.avail_out;
num2 -= num;
if (num2 <= num4)
{
num4 = num2;
}
int num5 = 0;
if (num4 != 0)
{
}
num4 -= num4;
z.avail_out = num4;
if (this.checkfn != num5)
{
Adler32 adler = z._adler;
byte[] array = this.window;
long num6 = this.check;
long num7 = adler.adler32(num6, array, num, num4);
this.check = num7;
z.adler = num7;
}
byte[] next_out = z.next_out;
num = num3;
Array.Copy(this.window, num, next_out, num, num4);
int num8 = this.end;
num3 += num4;
num += num4;
if (num == num8)
{
if (this.write == num8)
{
this.write = num5;
}
int num9 = z.avail_out;
if (num5 != 0)
{
}
num9 -= num5;
z.avail_out = num9;
if (this.checkfn != num5)
{
Adler32 adler2 = z._adler;
byte[] array2 = this.window;
int num10 = 0;
long num11 = this.check;
long num12 = adler2.adler32(num11, array2, num10, num5);
this.check = num12;
z.adler = num12;
}
byte[] next_out2 = z.next_out;
byte[] array3 = this.window;
int num13 = 0;
Array.Copy(array3, num13, next_out2, num3, num5);
num3 += num5;
}
z.next_out_index = num3;
this.read = num5;
return num5;
}
// Token: 0x06007CD0 RID: 31952 RVA: 0x001A1D30 File Offset: 0x0019FF30
// Note: this type is marked as 'beforefieldinit'.
[Token(Token = "0x6007CD0")]
[Address(RVA = "0x202C270", Offset = "0x202AC70", VA = "0x18202C270")]
static InfBlocks()
{
int[] array = new int[17];
RuntimeHelpers.InitializeArray(array, fieldof(<PrivateImplementationDetails>.F584B6C7CCA3CD4ECC3B9B1E20D2F2EFB73DBBDF).FieldHandle);
InfBlocks.inflate_mask = array;
int[] array2 = new int[19];
RuntimeHelpers.InitializeArray(array2, fieldof(<PrivateImplementationDetails>.1FDC8DB567F5AAA7068D0D2A601CD71657CBDF38).FieldHandle);
InfBlocks.border = array2;
}
// Token: 0x0400591F RID: 22815
[Token(Token = "0x400591F")]
private const int MANY = 1440;
// Token: 0x04005920 RID: 22816
[Token(Token = "0x4005920")]
private static readonly int[] inflate_mask;
// Token: 0x04005921 RID: 22817
[Token(Token = "0x4005921")]
private static readonly int[] border;
// Token: 0x04005922 RID: 22818
[Token(Token = "0x4005922")]
private const int Z_OK = 0;
// Token: 0x04005923 RID: 22819
[Token(Token = "0x4005923")]
private const int Z_STREAM_END = 1;
// Token: 0x04005924 RID: 22820
[Token(Token = "0x4005924")]
private const int Z_NEED_DICT = 2;
// Token: 0x04005925 RID: 22821
[Token(Token = "0x4005925")]
private const int Z_ERRNO = -1;
// Token: 0x04005926 RID: 22822
[Token(Token = "0x4005926")]
private const int Z_STREAM_ERROR = -2;
// Token: 0x04005927 RID: 22823
[Token(Token = "0x4005927")]
private const int Z_DATA_ERROR = -3;
// Token: 0x04005928 RID: 22824
[Token(Token = "0x4005928")]
private const int Z_MEM_ERROR = -4;
// Token: 0x04005929 RID: 22825
[Token(Token = "0x4005929")]
private const int Z_BUF_ERROR = -5;
// Token: 0x0400592A RID: 22826
[Token(Token = "0x400592A")]
private const int Z_VERSION_ERROR = -6;
// Token: 0x0400592B RID: 22827
[Token(Token = "0x400592B")]
private const int TYPE = 0;
// Token: 0x0400592C RID: 22828
[Token(Token = "0x400592C")]
private const int LENS = 1;
// Token: 0x0400592D RID: 22829
[Token(Token = "0x400592D")]
private const int STORED = 2;
// Token: 0x0400592E RID: 22830
[Token(Token = "0x400592E")]
private const int TABLE = 3;
// Token: 0x0400592F RID: 22831
[Token(Token = "0x400592F")]
private const int BTREE = 4;
// Token: 0x04005930 RID: 22832
[Token(Token = "0x4005930")]
private const int DTREE = 5;
// Token: 0x04005931 RID: 22833
[Token(Token = "0x4005931")]
private const int CODES = 6;
// Token: 0x04005932 RID: 22834
[Token(Token = "0x4005932")]
private const int DRY = 7;
// Token: 0x04005933 RID: 22835
[Token(Token = "0x4005933")]
private const int DONE = 8;
// Token: 0x04005934 RID: 22836
[Token(Token = "0x4005934")]
private const int BAD = 9;
// Token: 0x04005935 RID: 22837
[global::Cpp2IlInjected.FieldOffset(Offset = "0x10")]
[Token(Token = "0x4005935")]
internal int mode;
// Token: 0x04005936 RID: 22838
[global::Cpp2IlInjected.FieldOffset(Offset = "0x14")]
[Token(Token = "0x4005936")]
internal int left;
// Token: 0x04005937 RID: 22839
[global::Cpp2IlInjected.FieldOffset(Offset = "0x18")]
[Token(Token = "0x4005937")]
internal int table;
// Token: 0x04005938 RID: 22840
[global::Cpp2IlInjected.FieldOffset(Offset = "0x1C")]
[Token(Token = "0x4005938")]
internal int index;
// Token: 0x04005939 RID: 22841
[global::Cpp2IlInjected.FieldOffset(Offset = "0x20")]
[Token(Token = "0x4005939")]
internal int[] blens;
// Token: 0x0400593A RID: 22842
[global::Cpp2IlInjected.FieldOffset(Offset = "0x28")]
[Token(Token = "0x400593A")]
internal int[] bb;
// Token: 0x0400593B RID: 22843
[global::Cpp2IlInjected.FieldOffset(Offset = "0x30")]
[Token(Token = "0x400593B")]
internal int[] tb;
// Token: 0x0400593C RID: 22844
[global::Cpp2IlInjected.FieldOffset(Offset = "0x38")]
[Token(Token = "0x400593C")]
internal InfCodes codes;
// Token: 0x0400593D RID: 22845
[global::Cpp2IlInjected.FieldOffset(Offset = "0x40")]
[Token(Token = "0x400593D")]
private int last;
// Token: 0x0400593E RID: 22846
[global::Cpp2IlInjected.FieldOffset(Offset = "0x44")]
[Token(Token = "0x400593E")]
internal int bitk;
// Token: 0x0400593F RID: 22847
[global::Cpp2IlInjected.FieldOffset(Offset = "0x48")]
[Token(Token = "0x400593F")]
internal int bitb;
// Token: 0x04005940 RID: 22848
[global::Cpp2IlInjected.FieldOffset(Offset = "0x50")]
[Token(Token = "0x4005940")]
internal int[] hufts;
// Token: 0x04005941 RID: 22849
[global::Cpp2IlInjected.FieldOffset(Offset = "0x58")]
[Token(Token = "0x4005941")]
internal byte[] window;
// Token: 0x04005942 RID: 22850
[global::Cpp2IlInjected.FieldOffset(Offset = "0x60")]
[Token(Token = "0x4005942")]
internal int end;
// Token: 0x04005943 RID: 22851
[global::Cpp2IlInjected.FieldOffset(Offset = "0x64")]
[Token(Token = "0x4005943")]
internal int read;
// Token: 0x04005944 RID: 22852
[global::Cpp2IlInjected.FieldOffset(Offset = "0x68")]
[Token(Token = "0x4005944")]
internal int write;
// Token: 0x04005945 RID: 22853
[global::Cpp2IlInjected.FieldOffset(Offset = "0x70")]
[Token(Token = "0x4005945")]
internal object checkfn;
// Token: 0x04005946 RID: 22854
[global::Cpp2IlInjected.FieldOffset(Offset = "0x78")]
[Token(Token = "0x4005946")]
internal long check;
// Token: 0x04005947 RID: 22855
[global::Cpp2IlInjected.FieldOffset(Offset = "0x80")]
[Token(Token = "0x4005947")]
internal InfTree inftree;
}
}
@@ -0,0 +1,536 @@
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;
}
}
@@ -0,0 +1,447 @@
using System;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib
{
// Token: 0x02001351 RID: 4945
[Token(Token = "0x2001351")]
[StructLayout(3)]
internal sealed class InfTree
{
// Token: 0x06007CD7 RID: 31959 RVA: 0x001A238C File Offset: 0x001A058C
[Token(Token = "0x6007CD7")]
[Address(RVA = "0x202F620", Offset = "0x202E020", VA = "0x18202F620")]
private int huft_build(int[] b, int bindex, int n, int s, int[] d, int[] e, int[] t, int[] m, int[] hp, int[] hn, int[] v)
{
int[] array;
do
{
array = this.c;
}
while (b[bindex] != array.Length);
int length = this.c.Length;
if ("{il2cpp array field local14->}" != n)
{
uint num;
if ("{il2cpp array field local14->}" == (ulong)0L)
{
num += (uint)1;
while (num <= (uint)15)
{
}
}
if ("{il2cpp array field local14->}" == (ulong)0L)
{
while ("{il2cpp array field local14->}" != (ulong)0L)
{
}
}
uint num2;
uint num3;
if (num < num2)
{
int[] array2 = this.c;
num += (uint)1;
num3 += num3;
}
this.c[0] = (int)num3;
int num4 = 0;
int[] array3 = this.x;
uint num5 = num2 - 1U;
array3[0] = num4;
if (num5 != (uint)0)
{
int[] array4 = this.c;
int[] array5 = this.x;
int num6;
num6 += num4;
array5[0] = num6;
while (1 != array5.Length)
{
}
}
int num7 = b[bindex];
if (num7 != 0)
{
int[] array6 = this.x;
int num8 = array6[num7] + 1;
array6[0] = num8;
}
int[] array7 = this.x;
int length2 = array7.Length;
int num9 = array7[(int)num2];
int num10 = 0;
int num11 = 0;
array7[0] = num10;
int[] array8 = this.u;
int num12 = 0;
array8[0] = num11;
int num13 = this.c[(int)num];
int num14 = num13 - 1;
if (num13 != 0)
{
int num15 = num14 + 1;
if (num > (uint)num13)
{
uint num16;
num16 += (uint)1;
num13 = num9;
uint num17;
num17 -= (uint)num14;
if (num9 < num15)
{
int num18 = num9 + 1;
num9 = num18;
if (num18 < num15)
{
int[] array9 = this.c;
num17 += num17;
num += (uint)1;
int num19 = array9[(int)num];
if (num17 > (uint)num19)
{
num18++;
num17 -= (uint)num19;
num9 = num18;
}
}
}
this.u[0] = num12;
if (num16 == (uint)0)
{
}
this.x[0] = num10;
this.r[0] = num9;
this.r[0] = (int)num;
int[] array10 = this.u;
num13 -= (int)num;
int[] array11 = this.r;
num12 -= num10;
array11[1] = num12;
int num20 = this.u[(int)num16];
num20 += num10;
int[] array12 = this.r;
}
int[] array13 = this.r;
num -= (uint)num13;
array13[0] = (int)num;
if (num11 < num9)
{
int[] array14 = this.r;
num11++;
int num21;
num21 += 80;
array14[0] = num21;
int[] array15 = this.r;
int[] array16 = this.r;
num11++;
uint num22;
array16[0] = (int)num22;
this.r[1] = (int)num22;
}
int[] array17 = this.r;
uint num23;
if (num10 < (int)num23)
{
int[] array18 = this.r;
uint num24;
num10 += (int)num24;
}
uint num25;
if (num10 != (int)num25)
{
while (num10 != (int)num25)
{
}
}
int[] array19 = this.x;
uint num26;
if (num26 != "{il2cpp array field local78->}")
{
num13 -= (int)num;
}
while (num14 != 0)
{
}
}
num += (uint)1;
while (num <= num2)
{
}
if (num2 != (uint)1)
{
}
}
throw new NullReferenceException();
}
// Token: 0x06007CD8 RID: 31960 RVA: 0x001A2698 File Offset: 0x001A0898
[Token(Token = "0x6007CD8")]
[Address(RVA = "0x2030200", Offset = "0x202EC00", VA = "0x182030200")]
internal int inflate_trees_bits(int[] c, int[] bb, int[] tb, int[] hp, ZStream z)
{
this.initWorkArea(19);
int[] array = this.hn;
int num = 0;
array[0] = num;
int[] array2 = this.v;
int[] array3 = this.hn;
int num2;
if (num2 == -3 || num2 == -5 || "{il2cpp array field bb->}" == (ulong)0L)
{
}
return num2;
}
// Token: 0x06007CD9 RID: 31961 RVA: 0x001A26EC File Offset: 0x001A08EC
[Token(Token = "0x6007CD9")]
[Address(RVA = "0x2030350", Offset = "0x202ED50", VA = "0x182030350")]
internal int inflate_trees_dynamic(int nl, int nd, int[] c, int[] bl, int[] bd, int[] tl, int[] td, int[] hp, ZStream z)
{
this.initWorkArea(288);
int[] array = this.hn;
int num = 0;
array[0] = num;
int[] array2 = this.hn;
int[] array3 = InfTree.cplens;
int[] array4 = InfTree.cplext;
int[] array5 = this.v;
int num2;
if (num2 == 0)
{
this.initWorkArea(288);
int[] array6 = this.hn;
int[] array7 = InfTree.cpdist;
int[] array8 = InfTree.cpdext;
int[] array9 = this.v;
int num3;
if (num3 == 0)
{
}
if (num3 == -3 || num3 == -5 || num3 != -4)
{
}
return num3;
}
if (num2 != -3)
{
while (num2 == -4)
{
}
}
throw new NullReferenceException();
}
// Token: 0x06007CDA RID: 31962 RVA: 0x001A278C File Offset: 0x001A098C
[Token(Token = "0x6007CDA")]
[Address(RVA = "0x2030660", Offset = "0x202F060", VA = "0x182030660")]
internal static int inflate_trees_fixed(int[] bl, int[] bd, int[][] tl, int[][] td, ZStream z)
{
int[] array = InfTree.fixed_tl;
if (array != 0)
{
}
tl[0] = array;
int[] array2 = InfTree.fixed_td;
if (array2 != 0)
{
}
int num = 0;
td[0] = array2;
return num;
}
// Token: 0x06007CDB RID: 31963 RVA: 0x001A27C8 File Offset: 0x001A09C8
[Token(Token = "0x6007CDB")]
[Address(RVA = "0x20307F0", Offset = "0x202F1F0", VA = "0x1820307F0")]
private void initWorkArea(int vsize)
{
if (this.cplens == (ulong)0L)
{
int[] array = new int[1];
this.hn = array;
int[] array2 = new int[vsize];
this.v = array2;
int[] array3 = new int[16];
this.c = array3;
int[] array4 = new int[3];
this.r = array4;
int[] array5 = new int[15];
this.u = array5;
int[] array6 = new int[16];
this.x = array6;
}
if (this.v.Length < vsize)
{
int[] array7 = new int[vsize];
this.v = array7;
}
int num = 0;
if (vsize > 0)
{
int[] array8 = this.v;
num++;
array8[0] = num;
}
int[] array9 = this.c;
num++;
array9[0] = num;
int[] array10 = this.r;
num++;
array10[0] = num;
int[] array11 = this.u;
int num2 = 0;
int[] array12 = this.c;
int num3 = 0;
ulong num4;
Array.Copy(array12, num3, array11, num2, (int)num4);
int[] array13 = this.x;
int num5 = 0;
int[] array14 = this.c;
int num6 = 0;
ulong num7;
Array.Copy(array14, num6, array13, num5, (int)num7);
}
// Token: 0x06007CDC RID: 31964 RVA: 0x001A28F8 File Offset: 0x001A0AF8
[Token(Token = "0x6007CDC")]
[Address(RVA = "0x3C1670", Offset = "0x3C0070", VA = "0x1803C1670")]
public InfTree()
{
}
// Token: 0x06007CDD RID: 31965 RVA: 0x001A290C File Offset: 0x001A0B0C
// Note: this type is marked as 'beforefieldinit'.
[Token(Token = "0x6007CDD")]
[Address(RVA = "0x202F4A0", Offset = "0x202DEA0", VA = "0x18202F4A0")]
static InfTree()
{
int[] array = new int[1536];
RuntimeHelpers.InitializeArray(array, fieldof(<PrivateImplementationDetails>.A474A0BEC4E2CE8491839502AE85F6EA8504C6BD).FieldHandle);
InfTree.fixed_tl = array;
int[] array2 = new int[96];
RuntimeHelpers.InitializeArray(array2, fieldof(<PrivateImplementationDetails>.1B180C6E41F096D53222F5E8EF558B78182CA401).FieldHandle);
InfTree.fixed_td = array2;
int[] array3 = new int[31];
RuntimeHelpers.InitializeArray(array3, fieldof(<PrivateImplementationDetails>.8ED8F61DAA454B49CD5059AE4486C59174324E9E).FieldHandle);
InfTree.cplens = array3;
int[] array4 = new int[31];
RuntimeHelpers.InitializeArray(array4, fieldof(<PrivateImplementationDetails>.DACFCC5E985D9E113ABB74724C5D3CC4FDC4FB8A).FieldHandle);
InfTree.cplext = array4;
int[] array5 = new int[30];
RuntimeHelpers.InitializeArray(array5, fieldof(<PrivateImplementationDetails>.D068832E6B13A623916709C1E0E25ADCBE7B455F).FieldHandle);
InfTree.cpdist = array5;
int[] array6 = new int[30];
RuntimeHelpers.InitializeArray(array6, fieldof(<PrivateImplementationDetails>.79D521E6E3E55103005E9CC3FA43B3174FAF090F).FieldHandle);
InfTree.cpdext = array6;
}
// Token: 0x0400596A RID: 22890
[Token(Token = "0x400596A")]
private const int MANY = 1440;
// Token: 0x0400596B RID: 22891
[Token(Token = "0x400596B")]
private const int Z_OK = 0;
// Token: 0x0400596C RID: 22892
[Token(Token = "0x400596C")]
private const int Z_STREAM_END = 1;
// Token: 0x0400596D RID: 22893
[Token(Token = "0x400596D")]
private const int Z_NEED_DICT = 2;
// Token: 0x0400596E RID: 22894
[Token(Token = "0x400596E")]
private const int Z_ERRNO = -1;
// Token: 0x0400596F RID: 22895
[Token(Token = "0x400596F")]
private const int Z_STREAM_ERROR = -2;
// Token: 0x04005970 RID: 22896
[Token(Token = "0x4005970")]
private const int Z_DATA_ERROR = -3;
// Token: 0x04005971 RID: 22897
[Token(Token = "0x4005971")]
private const int Z_MEM_ERROR = -4;
// Token: 0x04005972 RID: 22898
[Token(Token = "0x4005972")]
private const int Z_BUF_ERROR = -5;
// Token: 0x04005973 RID: 22899
[Token(Token = "0x4005973")]
private const int Z_VERSION_ERROR = -6;
// Token: 0x04005974 RID: 22900
[Token(Token = "0x4005974")]
private const int fixed_bl = 9;
// Token: 0x04005975 RID: 22901
[Token(Token = "0x4005975")]
private const int fixed_bd = 5;
// Token: 0x04005976 RID: 22902
[Token(Token = "0x4005976")]
private static readonly int[] fixed_tl;
// Token: 0x04005977 RID: 22903
[Token(Token = "0x4005977")]
private static readonly int[] fixed_td;
// Token: 0x04005978 RID: 22904
[Token(Token = "0x4005978")]
private static readonly int[] cplens;
// Token: 0x04005979 RID: 22905
[Token(Token = "0x4005979")]
private static readonly int[] cplext;
// Token: 0x0400597A RID: 22906
[Token(Token = "0x400597A")]
private static readonly int[] cpdist;
// Token: 0x0400597B RID: 22907
[Token(Token = "0x400597B")]
private static readonly int[] cpdext;
// Token: 0x0400597C RID: 22908
[Token(Token = "0x400597C")]
private const int BMAX = 15;
// Token: 0x0400597D RID: 22909
[global::Cpp2IlInjected.FieldOffset(Offset = "0x10")]
[Token(Token = "0x400597D")]
private int[] hn;
// Token: 0x0400597E RID: 22910
[global::Cpp2IlInjected.FieldOffset(Offset = "0x18")]
[Token(Token = "0x400597E")]
private int[] v;
// Token: 0x0400597F RID: 22911
[global::Cpp2IlInjected.FieldOffset(Offset = "0x20")]
[Token(Token = "0x400597F")]
private int[] c;
// Token: 0x04005980 RID: 22912
[global::Cpp2IlInjected.FieldOffset(Offset = "0x28")]
[Token(Token = "0x4005980")]
private int[] r;
// Token: 0x04005981 RID: 22913
[global::Cpp2IlInjected.FieldOffset(Offset = "0x30")]
[Token(Token = "0x4005981")]
private int[] u;
// Token: 0x04005982 RID: 22914
[global::Cpp2IlInjected.FieldOffset(Offset = "0x38")]
[Token(Token = "0x4005982")]
private int[] x;
}
}
@@ -0,0 +1,622 @@
using System;
using System.Runtime.InteropServices;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib
{
// Token: 0x02001352 RID: 4946
[Token(Token = "0x2001352")]
[StructLayout(3)]
internal sealed class Inflate
{
// Token: 0x06007CDE RID: 31966 RVA: 0x001A29B8 File Offset: 0x001A0BB8
[Token(Token = "0x6007CDE")]
[Address(RVA = "0x2030D00", Offset = "0x202F700", VA = "0x182030D00")]
internal int inflateReset(ZStream z)
{
if (z != 0)
{
Inflate istate = z.istate;
if (istate != 0)
{
int num = 0;
z.total_out = (long)num;
z.total_in = (long)num;
z.msg = num;
istate.mode = this;
InfBlocks infBlocks = z.istate.blocks;
if (infBlocks.mode == 6)
{
}
infBlocks.mode = num;
infBlocks.bitk = num;
infBlocks.read = num;
if (infBlocks.checkfn != num)
{
infBlocks.check = (long)((ulong)1L);
z.adler = (long)((ulong)1L);
}
return 0;
}
}
return -2;
}
// Token: 0x06007CDF RID: 31967 RVA: 0x001A2A44 File Offset: 0x001A0C44
[Token(Token = "0x6007CDF")]
[Address(RVA = "0x2030AB0", Offset = "0x202F4B0", VA = "0x182030AB0")]
internal int inflateEnd(ZStream z)
{
InfBlocks infBlocks = this.blocks;
int num = 0;
if (infBlocks != 0)
{
if (infBlocks.mode == 6)
{
}
infBlocks.mode = num;
infBlocks.bitk = num;
infBlocks.read = num;
if (infBlocks.checkfn != num)
{
infBlocks.check = (long)((ulong)1L);
z.adler = (long)((ulong)1L);
}
infBlocks.window = num;
infBlocks.hufts = num;
}
this.blocks = num;
return 0;
}
// Token: 0x06007CE0 RID: 31968 RVA: 0x001A2AB4 File Offset: 0x001A0CB4
[Token(Token = "0x6007CE0")]
[Address(RVA = "0x2030B20", Offset = "0x202F520", VA = "0x182030B20")]
internal int inflateInit(ZStream z, int w)
{
int num = 0;
z.msg = num;
this.blocks = num;
this.nowrap = num;
this.nowrap = (int)((ulong)1L);
this.wbits = w;
Inflate istate = z.istate;
int[] array = new int[1];
InfBlocks infBlocks;
infBlocks.bb = array;
int[] array2 = new int[1];
infBlocks.tb = array2;
int num2 = 0;
InfCodes infCodes;
infCodes.free(num2);
infBlocks.codes = infCodes;
InfTree infTree = new InfTree();
infBlocks.inftree = infTree;
int[] array3 = new int[4320];
infBlocks.hufts = array3;
byte[] array4 = new byte[1];
infBlocks.window = array4;
infBlocks.end = (int)((uint)1);
infBlocks.checkfn = this;
infBlocks.mode = num;
infBlocks.bitk = num;
infBlocks.read = num;
if (this != 0)
{
infBlocks.check = (long)((ulong)1L);
z.adler = (long)((ulong)1L);
}
istate.blocks = infBlocks;
int num3 = this.inflateReset(z);
return 0;
}
// Token: 0x06007CE1 RID: 31969 RVA: 0x001A2BA8 File Offset: 0x001A0DA8
[Token(Token = "0x6007CE1")]
[Address(RVA = "0x2031120", Offset = "0x202FB20", VA = "0x182031120")]
internal int inflate(ZStream z, int f)
{
if (z != 0 && z.istate != (ulong)0L && z.next_in != (ulong)0L)
{
int num = 0;
if (z.istate.mode <= 13)
{
int avail_in = z.avail_in;
if (avail_in != 0)
{
z.avail_in = avail_in;
int next_in_index = z.next_in_index;
byte[] next_in = z.next_in;
Inflate istate = z.istate;
int num2 = next_in_index + 1;
z.next_in_index = num2;
byte b;
istate.method = (int)b;
Inflate istate2 = z.istate;
int num3 = istate2.method;
num3 += 8;
istate2.mode = (int)((ulong)1L);
int avail_in2 = z.avail_in;
if (avail_in2 != 0)
{
z.avail_in = avail_in2;
int next_in_index2 = z.next_in_index;
byte[] next_in2 = z.next_in;
int num4 = next_in_index2 + 1;
z.next_in_index = num4;
Inflate istate3 = z.istate;
int num5 = istate3.method;
byte b2;
num5 += (int)b2;
ulong num6;
num6 += num6;
long num7 = (long)(num6 * (ulong)((uint)31));
if ((long)num5 == num7)
{
istate3.mode = (int)((ulong)7L);
z.istate.mode = (int)((ulong)13L);
}
istate.mode = (int)((ulong)13L);
int num8;
if (num8 != -3)
{
if (num != 1)
{
goto IL_360;
}
Inflate istate4 = z.istate;
InfBlocks infBlocks = istate4.blocks;
long[] array = istate4.was;
infBlocks.reset(z, array);
Inflate istate5 = z.istate;
Inflate istate11;
if (istate5.nowrap == num)
{
istate5.mode = (int)((ulong)8L);
int avail_in3 = z.avail_in;
if (avail_in3 == 0)
{
goto IL_360;
}
z.avail_in = avail_in3;
int next_in_index3 = z.next_in_index;
byte[] next_in3 = z.next_in;
Inflate istate6 = z.istate;
int num9 = next_in_index3 + 1;
z.next_in_index = num9;
byte b3;
istate6.need = (long)b3;
z.istate.mode = (int)((ulong)9L);
int avail_in4 = z.avail_in;
if (avail_in4 == 0)
{
goto IL_360;
}
z.avail_in = avail_in4;
Inflate istate7 = z.istate;
int next_in_index4 = z.next_in_index;
byte[] next_in4 = z.next_in;
long num10 = istate7.need;
int num11 = next_in_index4 + 1;
z.next_in_index = num11;
byte b4 = (byte)((long)b4 + num10);
istate7.need = (long)b4;
z.istate.mode = (int)((ulong)10L);
int avail_in5 = z.avail_in;
if (avail_in5 == 0)
{
goto IL_360;
}
z.avail_in = avail_in5;
Inflate istate8 = z.istate;
int next_in_index5 = z.next_in_index;
byte[] next_in5 = z.next_in;
long num12 = istate8.need;
int num13 = next_in_index5 + 1;
z.next_in_index = num13;
byte b5 = (byte)((long)b5 + num12);
istate8.need = (long)b5;
z.istate.mode = (int)((ulong)11L);
int avail_in6 = z.avail_in;
if (avail_in6 == 0)
{
goto IL_360;
}
z.avail_in = avail_in6;
Inflate istate9 = z.istate;
int next_in_index6 = z.next_in_index;
byte[] next_in6 = z.next_in;
long num14 = istate9.need;
int num15 = next_in_index6 + 1;
z.next_in_index = num15;
byte b6 = (byte)((long)b6 + num14);
istate9.need = (long)b6;
Inflate istate10 = z.istate;
long[] array2 = istate10.was;
long num16 = istate10.need;
if ("{il2cpp array field local64->}" == num16)
{
goto IL_39B;
}
istate10.mode = (int)((ulong)13L);
z.msg = "incorrect data check";
istate11 = z.istate;
istate11.marker = (int)((ulong)5L);
}
istate11.mode = (int)((ulong)12L);
}
z.istate.mode = (int)((ulong)13L);
z.istate.marker = num;
}
}
IL_360:
int avail_in7 = z.avail_in;
while (avail_in7 == 0)
{
}
z.avail_in = avail_in7;
int next_in_index7 = z.next_in_index;
byte[] next_in7 = z.next_in;
Inflate istate12 = z.istate;
int num17 = next_in_index7 + 1;
z.next_in_index = num17;
IL_39B:
byte b7;
istate12.need = (long)b7;
z.istate.mode = (int)((ulong)3L);
int avail_in8 = z.avail_in;
while (avail_in8 == 0)
{
}
z.avail_in = avail_in8;
Inflate istate13 = z.istate;
int next_in_index8 = z.next_in_index;
byte[] next_in8 = z.next_in;
long num18 = istate13.need;
int num19 = next_in_index8 + 1;
z.next_in_index = num19;
byte b8 = (byte)((long)b8 + num18);
istate13.need = (long)b8;
z.istate.mode = (int)((ulong)4L);
int avail_in9 = z.avail_in;
while (avail_in9 == 0)
{
}
z.avail_in = avail_in9;
Inflate istate14 = z.istate;
int next_in_index9 = z.next_in_index;
byte[] next_in9 = z.next_in;
long num20 = istate14.need;
int num21 = next_in_index9 + 1;
z.next_in_index = num21;
byte b9 = (byte)((long)b9 + num20);
istate14.need = (long)b9;
z.istate.mode = (int)((ulong)5L);
int avail_in10 = z.avail_in;
while (avail_in10 == 0)
{
}
z.avail_in = avail_in10;
Inflate istate15 = z.istate;
int next_in_index10 = z.next_in_index;
byte[] next_in10 = z.next_in;
long num22 = istate15.need;
int num23 = next_in_index10 + 1;
z.next_in_index = num23;
byte b10 = (byte)((long)b10 + num22);
istate15.need = (long)b10;
Inflate istate16 = z.istate;
long num24 = istate16.need;
z.adler = num24;
istate16.mode = (int)((ulong)6L);
istate15.mode = (int)((ulong)13L);
z.msg = "need dictionary";
z.istate.marker = num;
}
}
throw new NullReferenceException();
}
// Token: 0x06007CE2 RID: 31970 RVA: 0x001A30CC File Offset: 0x001A12CC
[Token(Token = "0x6007CE2")]
[Address(RVA = "0x2030DA0", Offset = "0x202F7A0", VA = "0x182030DA0")]
internal int inflateSetDictionary(ZStream z, byte[] dictionary, int dictLength)
{
if (z != 0)
{
Inflate istate = z.istate;
if (istate != 0 && istate.mode == 6)
{
Adler32 adler = z._adler;
int num = 0;
uint num2;
if (adler.adler32((long)num2, dictionary, num, dictLength) == z.adler)
{
Inflate istate2 = z.istate;
z.adler = (long)num2;
uint num3 = num2 - 1U;
InfBlocks infBlocks = istate2.blocks;
byte[] window = infBlocks.window;
int num4 = 0;
Array.Copy(dictionary, dictLength, window, num4, (int)num3);
infBlocks.write = (int)num3;
infBlocks.read = (int)num3;
z.istate.mode = (int)((ulong)7L);
return 0;
}
}
}
throw new NullReferenceException();
}
// Token: 0x06007CE3 RID: 31971 RVA: 0x001A3174 File Offset: 0x001A1374
[Token(Token = "0x6007CE3")]
[Address(RVA = "0x2030EF0", Offset = "0x202F8F0", VA = "0x182030EF0")]
internal int inflateSync(ZStream z)
{
if (z != 0)
{
Inflate istate = z.istate;
if (istate != 0)
{
if (istate.mode != 13)
{
istate.mode = (int)((ulong)13L);
z.istate.marker = (int)((ulong)0L);
}
int avail_in = z.avail_in;
if (avail_in != 0)
{
Inflate istate2 = z.istate;
int num = z.next_in_index;
int num2 = istate2.marker;
int num4;
if (num2 < 4)
{
byte b = z.next_in[num];
byte[] array = Inflate.mark;
byte[] next_in = z.next_in;
if ("{il2cpp array field local11->}" == (ulong)0L)
{
uint num3;
num3 -= (uint)num2;
}
num4 = 0;
num4++;
num++;
while ("{il2cpp array field local11->}" != (ulong)0L)
{
}
}
Inflate istate3 = z.istate;
z.next_in_index = num;
z.avail_in = avail_in;
istate3.marker = num4;
if (num4 == 4)
{
long total_in = z.total_in;
long total_out = z.total_out;
int num5 = this.inflateReset(z);
Inflate istate4 = z.istate;
z.total_in = total_in;
z.total_out = total_out;
istate4.mode = (int)((ulong)7L);
return 0;
}
}
}
}
throw new IndexOutOfRangeException();
}
// Token: 0x06007CE4 RID: 31972 RVA: 0x001A328C File Offset: 0x001A148C
[Token(Token = "0x6007CE4")]
[Address(RVA = "0x2030EC0", Offset = "0x202F8C0", VA = "0x182030EC0")]
internal int inflateSyncPoint(ZStream z)
{
if (z != 0)
{
Inflate istate = z.istate;
if (istate != 0)
{
InfBlocks infBlocks = istate.blocks;
if (infBlocks != 0)
{
bool flag = infBlocks.mode == 1;
}
}
}
return -2;
}
// Token: 0x06007CE5 RID: 31973 RVA: 0x001A32C0 File Offset: 0x001A14C0
[Token(Token = "0x6007CE5")]
[Address(RVA = "0x2030A60", Offset = "0x202F460", VA = "0x182030A60")]
public Inflate()
{
long[] array = new long[1];
this.was = array;
base..ctor();
}
// Token: 0x06007CE6 RID: 31974 RVA: 0x001A32E4 File Offset: 0x001A14E4
// Note: this type is marked as 'beforefieldinit'.
[Token(Token = "0x6007CE6")]
[Address(RVA = "0x20309D0", Offset = "0x202F3D0", VA = "0x1820309D0")]
static Inflate()
{
byte[] array = new byte[4];
array[0] = (byte)((ulong)255L);
array[0] = (byte)((ulong)255L);
Inflate.mark = array;
}
// Token: 0x04005983 RID: 22915
[Token(Token = "0x4005983")]
private const int MAX_WBITS = 15;
// Token: 0x04005984 RID: 22916
[Token(Token = "0x4005984")]
private const int PRESET_DICT = 32;
// Token: 0x04005985 RID: 22917
[Token(Token = "0x4005985")]
internal const int Z_NO_FLUSH = 0;
// Token: 0x04005986 RID: 22918
[Token(Token = "0x4005986")]
internal const int Z_PARTIAL_FLUSH = 1;
// Token: 0x04005987 RID: 22919
[Token(Token = "0x4005987")]
internal const int Z_SYNC_FLUSH = 2;
// Token: 0x04005988 RID: 22920
[Token(Token = "0x4005988")]
internal const int Z_FULL_FLUSH = 3;
// Token: 0x04005989 RID: 22921
[Token(Token = "0x4005989")]
internal const int Z_FINISH = 4;
// Token: 0x0400598A RID: 22922
[Token(Token = "0x400598A")]
private const int Z_DEFLATED = 8;
// Token: 0x0400598B RID: 22923
[Token(Token = "0x400598B")]
private const int Z_OK = 0;
// Token: 0x0400598C RID: 22924
[Token(Token = "0x400598C")]
private const int Z_STREAM_END = 1;
// Token: 0x0400598D RID: 22925
[Token(Token = "0x400598D")]
private const int Z_NEED_DICT = 2;
// Token: 0x0400598E RID: 22926
[Token(Token = "0x400598E")]
private const int Z_ERRNO = -1;
// Token: 0x0400598F RID: 22927
[Token(Token = "0x400598F")]
private const int Z_STREAM_ERROR = -2;
// Token: 0x04005990 RID: 22928
[Token(Token = "0x4005990")]
private const int Z_DATA_ERROR = -3;
// Token: 0x04005991 RID: 22929
[Token(Token = "0x4005991")]
private const int Z_MEM_ERROR = -4;
// Token: 0x04005992 RID: 22930
[Token(Token = "0x4005992")]
private const int Z_BUF_ERROR = -5;
// Token: 0x04005993 RID: 22931
[Token(Token = "0x4005993")]
private const int Z_VERSION_ERROR = -6;
// Token: 0x04005994 RID: 22932
[Token(Token = "0x4005994")]
private const int METHOD = 0;
// Token: 0x04005995 RID: 22933
[Token(Token = "0x4005995")]
private const int FLAG = 1;
// Token: 0x04005996 RID: 22934
[Token(Token = "0x4005996")]
private const int DICT4 = 2;
// Token: 0x04005997 RID: 22935
[Token(Token = "0x4005997")]
private const int DICT3 = 3;
// Token: 0x04005998 RID: 22936
[Token(Token = "0x4005998")]
private const int DICT2 = 4;
// Token: 0x04005999 RID: 22937
[Token(Token = "0x4005999")]
private const int DICT1 = 5;
// Token: 0x0400599A RID: 22938
[Token(Token = "0x400599A")]
private const int DICT0 = 6;
// Token: 0x0400599B RID: 22939
[Token(Token = "0x400599B")]
private const int BLOCKS = 7;
// Token: 0x0400599C RID: 22940
[Token(Token = "0x400599C")]
private const int CHECK4 = 8;
// Token: 0x0400599D RID: 22941
[Token(Token = "0x400599D")]
private const int CHECK3 = 9;
// Token: 0x0400599E RID: 22942
[Token(Token = "0x400599E")]
private const int CHECK2 = 10;
// Token: 0x0400599F RID: 22943
[Token(Token = "0x400599F")]
private const int CHECK1 = 11;
// Token: 0x040059A0 RID: 22944
[Token(Token = "0x40059A0")]
private const int DONE = 12;
// Token: 0x040059A1 RID: 22945
[Token(Token = "0x40059A1")]
private const int BAD = 13;
// Token: 0x040059A2 RID: 22946
[global::Cpp2IlInjected.FieldOffset(Offset = "0x10")]
[Token(Token = "0x40059A2")]
internal int mode;
// Token: 0x040059A3 RID: 22947
[global::Cpp2IlInjected.FieldOffset(Offset = "0x14")]
[Token(Token = "0x40059A3")]
internal int method;
// Token: 0x040059A4 RID: 22948
[global::Cpp2IlInjected.FieldOffset(Offset = "0x18")]
[Token(Token = "0x40059A4")]
internal long[] was;
// Token: 0x040059A5 RID: 22949
[global::Cpp2IlInjected.FieldOffset(Offset = "0x20")]
[Token(Token = "0x40059A5")]
internal long need;
// Token: 0x040059A6 RID: 22950
[global::Cpp2IlInjected.FieldOffset(Offset = "0x28")]
[Token(Token = "0x40059A6")]
internal int marker;
// Token: 0x040059A7 RID: 22951
[global::Cpp2IlInjected.FieldOffset(Offset = "0x2C")]
[Token(Token = "0x40059A7")]
internal int nowrap;
// Token: 0x040059A8 RID: 22952
[global::Cpp2IlInjected.FieldOffset(Offset = "0x30")]
[Token(Token = "0x40059A8")]
internal int wbits;
// Token: 0x040059A9 RID: 22953
[global::Cpp2IlInjected.FieldOffset(Offset = "0x38")]
[Token(Token = "0x40059A9")]
internal InfBlocks blocks;
// Token: 0x040059AA RID: 22954
[Token(Token = "0x40059AA")]
private static readonly byte[] mark;
}
}
@@ -0,0 +1,115 @@
using System;
using System.Runtime.InteropServices;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib
{
// Token: 0x02001353 RID: 4947
[Token(Token = "0x2001353")]
[StructLayout(3)]
public sealed class JZlib
{
// Token: 0x06007CE7 RID: 31975 RVA: 0x001A3320 File Offset: 0x001A1520
[Token(Token = "0x6007CE7")]
[Address(RVA = "0x2031950", Offset = "0x2030350", VA = "0x182031950")]
public static string version()
{
return "1.0.7";
}
// Token: 0x06007CE8 RID: 31976 RVA: 0x001A3334 File Offset: 0x001A1534
[Token(Token = "0x6007CE8")]
[Address(RVA = "0x3C1670", Offset = "0x3C0070", VA = "0x1803C1670")]
public JZlib()
{
}
// Token: 0x040059AB RID: 22955
[Token(Token = "0x40059AB")]
private const string _version = "1.0.7";
// Token: 0x040059AC RID: 22956
[Token(Token = "0x40059AC")]
public const int Z_NO_COMPRESSION = 0;
// Token: 0x040059AD RID: 22957
[Token(Token = "0x40059AD")]
public const int Z_BEST_SPEED = 1;
// Token: 0x040059AE RID: 22958
[Token(Token = "0x40059AE")]
public const int Z_BEST_COMPRESSION = 9;
// Token: 0x040059AF RID: 22959
[Token(Token = "0x40059AF")]
public const int Z_DEFAULT_COMPRESSION = -1;
// Token: 0x040059B0 RID: 22960
[Token(Token = "0x40059B0")]
public const int Z_FILTERED = 1;
// Token: 0x040059B1 RID: 22961
[Token(Token = "0x40059B1")]
public const int Z_HUFFMAN_ONLY = 2;
// Token: 0x040059B2 RID: 22962
[Token(Token = "0x40059B2")]
public const int Z_DEFAULT_STRATEGY = 0;
// Token: 0x040059B3 RID: 22963
[Token(Token = "0x40059B3")]
public const int Z_NO_FLUSH = 0;
// Token: 0x040059B4 RID: 22964
[Token(Token = "0x40059B4")]
public const int Z_PARTIAL_FLUSH = 1;
// Token: 0x040059B5 RID: 22965
[Token(Token = "0x40059B5")]
public const int Z_SYNC_FLUSH = 2;
// Token: 0x040059B6 RID: 22966
[Token(Token = "0x40059B6")]
public const int Z_FULL_FLUSH = 3;
// Token: 0x040059B7 RID: 22967
[Token(Token = "0x40059B7")]
public const int Z_FINISH = 4;
// Token: 0x040059B8 RID: 22968
[Token(Token = "0x40059B8")]
public const int Z_OK = 0;
// Token: 0x040059B9 RID: 22969
[Token(Token = "0x40059B9")]
public const int Z_STREAM_END = 1;
// Token: 0x040059BA RID: 22970
[Token(Token = "0x40059BA")]
public const int Z_NEED_DICT = 2;
// Token: 0x040059BB RID: 22971
[Token(Token = "0x40059BB")]
public const int Z_ERRNO = -1;
// Token: 0x040059BC RID: 22972
[Token(Token = "0x40059BC")]
public const int Z_STREAM_ERROR = -2;
// Token: 0x040059BD RID: 22973
[Token(Token = "0x40059BD")]
public const int Z_DATA_ERROR = -3;
// Token: 0x040059BE RID: 22974
[Token(Token = "0x40059BE")]
public const int Z_MEM_ERROR = -4;
// Token: 0x040059BF RID: 22975
[Token(Token = "0x40059BF")]
public const int Z_BUF_ERROR = -5;
// Token: 0x040059C0 RID: 22976
[Token(Token = "0x40059C0")]
public const int Z_VERSION_ERROR = -6;
}
}
@@ -0,0 +1,138 @@
using System;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib
{
// Token: 0x02001354 RID: 4948
[Token(Token = "0x2001354")]
[StructLayout(3)]
internal sealed class StaticTree
{
// Token: 0x06007CE9 RID: 31977 RVA: 0x001A3348 File Offset: 0x001A1548
[Token(Token = "0x6007CE9")]
[Address(RVA = "0xE339C0", Offset = "0xE323C0", VA = "0x180E339C0")]
internal StaticTree(short[] static_tree, int[] extra_bits, int extra_base, int elems, int max_length)
{
this.elems = 0;
this.static_tree = static_tree;
this.extra_base = extra_base;
this.max_length = 0;
this.extra_bits = extra_bits;
}
// Token: 0x06007CEA RID: 31978 RVA: 0x001A3380 File Offset: 0x001A1580
// Note: this type is marked as 'beforefieldinit'.
[Token(Token = "0x6007CEA")]
[Address(RVA = "0x2033B60", Offset = "0x2032560", VA = "0x182033B60")]
static StaticTree()
{
short[] array = new short[576];
RuntimeHelpers.InitializeArray(array, fieldof(<PrivateImplementationDetails>.EB6F545AEF284339D25594F900E7A395212460EB).FieldHandle);
StaticTree.static_ltree = array;
short[] array2 = new short[60];
RuntimeHelpers.InitializeArray(array2, fieldof(<PrivateImplementationDetails>.850D4DC092689E1F0D8A70B6281848B27DEC0014).FieldHandle);
StaticTree.static_dtree = array2;
short[] array3 = StaticTree.static_ltree;
int[] extra_lbits = ZTree.extra_lbits;
StaticTree staticTree;
staticTree.static_tree = array3;
staticTree.extra_bits = extra_lbits;
staticTree.extra_base = (int)((ulong)257L);
staticTree.elems = (int)((ulong)286L);
staticTree.max_length = (int)((ulong)15L);
StaticTree.static_l_desc = staticTree;
short[] array4 = StaticTree.static_dtree;
int[] extra_dbits = ZTree.extra_dbits;
StaticTree staticTree2;
staticTree2.static_tree = array4;
staticTree2.extra_bits = extra_dbits;
staticTree2.extra_base = (int)((ulong)0L);
staticTree2.elems = (int)((ulong)30L);
staticTree2.max_length = (int)((ulong)15L);
StaticTree.static_d_desc = staticTree2;
int[] extra_blbits = ZTree.extra_blbits;
StaticTree staticTree3;
staticTree3.extra_bits = extra_blbits;
staticTree3.static_tree = (ulong)0L;
staticTree3.extra_base = (int)((ulong)0L);
staticTree3.elems = (int)((ulong)19L);
staticTree3.max_length = (int)((ulong)7L);
StaticTree.static_bl_desc = staticTree3;
}
// Token: 0x040059C1 RID: 22977
[Token(Token = "0x40059C1")]
private const int MAX_BITS = 15;
// Token: 0x040059C2 RID: 22978
[Token(Token = "0x40059C2")]
private const int BL_CODES = 19;
// Token: 0x040059C3 RID: 22979
[Token(Token = "0x40059C3")]
private const int D_CODES = 30;
// Token: 0x040059C4 RID: 22980
[Token(Token = "0x40059C4")]
private const int LITERALS = 256;
// Token: 0x040059C5 RID: 22981
[Token(Token = "0x40059C5")]
private const int LENGTH_CODES = 29;
// Token: 0x040059C6 RID: 22982
[Token(Token = "0x40059C6")]
private const int L_CODES = 286;
// Token: 0x040059C7 RID: 22983
[Token(Token = "0x40059C7")]
internal const int MAX_BL_BITS = 7;
// Token: 0x040059C8 RID: 22984
[Token(Token = "0x40059C8")]
internal static readonly short[] static_ltree;
// Token: 0x040059C9 RID: 22985
[Token(Token = "0x40059C9")]
internal static readonly short[] static_dtree;
// Token: 0x040059CA RID: 22986
[Token(Token = "0x40059CA")]
internal static readonly StaticTree static_l_desc;
// Token: 0x040059CB RID: 22987
[Token(Token = "0x40059CB")]
internal static readonly StaticTree static_d_desc;
// Token: 0x040059CC RID: 22988
[Token(Token = "0x40059CC")]
internal static readonly StaticTree static_bl_desc;
// Token: 0x040059CD RID: 22989
[global::Cpp2IlInjected.FieldOffset(Offset = "0x10")]
[Token(Token = "0x40059CD")]
internal short[] static_tree;
// Token: 0x040059CE RID: 22990
[global::Cpp2IlInjected.FieldOffset(Offset = "0x18")]
[Token(Token = "0x40059CE")]
internal int[] extra_bits;
// Token: 0x040059CF RID: 22991
[global::Cpp2IlInjected.FieldOffset(Offset = "0x20")]
[Token(Token = "0x40059CF")]
internal int extra_base;
// Token: 0x040059D0 RID: 22992
[global::Cpp2IlInjected.FieldOffset(Offset = "0x24")]
[Token(Token = "0x40059D0")]
internal int elems;
// Token: 0x040059D1 RID: 22993
[global::Cpp2IlInjected.FieldOffset(Offset = "0x28")]
[Token(Token = "0x40059D1")]
internal int max_length;
}
}
@@ -0,0 +1,332 @@
using System;
using System.IO;
using System.Runtime.InteropServices;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib
{
// Token: 0x02001355 RID: 4949
[Token(Token = "0x2001355")]
[Obsolete]
[StructLayout(3)]
public class ZDeflaterOutputStream : Stream
{
// Token: 0x06007CEB RID: 31979 RVA: 0x001A3494 File Offset: 0x001A1694
[Token(Token = "0x6007CEB")]
[Address(RVA = "0x2035D80", Offset = "0x2034780", VA = "0x182035D80")]
public ZDeflaterOutputStream(Stream outp)
{
}
// Token: 0x06007CEC RID: 31980 RVA: 0x001A34A4 File Offset: 0x001A16A4
[Token(Token = "0x6007CEC")]
[Address(RVA = "0x2035C30", Offset = "0x2034630", VA = "0x182035C30")]
public ZDeflaterOutputStream(Stream outp, int level)
{
}
// Token: 0x06007CED RID: 31981 RVA: 0x001A34B4 File Offset: 0x001A16B4
[Token(Token = "0x6007CED")]
[Address(RVA = "0x2035C50", Offset = "0x2034650", VA = "0x182035C50")]
public ZDeflaterOutputStream(Stream outp, int level, bool nowrap)
{
ZStream zstream = new ZStream();
Adler32 adler = new Adler32();
zstream._adler = adler;
this.z = zstream;
byte[] array = new byte[4192];
this.buf = array;
byte[] array2 = new byte[1];
this.buf1 = array2;
base..ctor();
ZStream zstream2 = this.z;
this.outp = outp;
int num = zstream2.deflateInit(level, 15, nowrap);
}
// Token: 0x17001449 RID: 5193
// (get) Token: 0x06007CEE RID: 31982 RVA: 0x001A3524 File Offset: 0x001A1724
[Token(Token = "0x17001449")]
public override bool CanRead
{
[Token(Token = "0x6007CEE")]
[Address(RVA = "0x413970", Offset = "0x412370", VA = "0x180413970", Slot = "7")]
get
{
}
}
// Token: 0x1700144A RID: 5194
// (get) Token: 0x06007CEF RID: 31983 RVA: 0x001A3534 File Offset: 0x001A1734
[Token(Token = "0x1700144A")]
public override bool CanSeek
{
[Token(Token = "0x6007CEF")]
[Address(RVA = "0x413970", Offset = "0x412370", VA = "0x180413970", Slot = "8")]
get
{
}
}
// Token: 0x1700144B RID: 5195
// (get) Token: 0x06007CF0 RID: 31984 RVA: 0x001A3544 File Offset: 0x001A1744
[Token(Token = "0x1700144B")]
public override bool CanWrite
{
[Token(Token = "0x6007CF0")]
[Address(RVA = "0x4405A0", Offset = "0x43EFA0", VA = "0x1804405A0", Slot = "9")]
get
{
return true;
}
}
// Token: 0x1700144C RID: 5196
// (get) Token: 0x06007CF1 RID: 31985 RVA: 0x001A3554 File Offset: 0x001A1754
[Token(Token = "0x1700144C")]
public override long Length
{
[Token(Token = "0x6007CF1")]
[Address(RVA = "0x3F8880", Offset = "0x3F7280", VA = "0x1803F8880", Slot = "10")]
get
{
}
}
// Token: 0x1700144D RID: 5197
// (get) Token: 0x06007CF2 RID: 31986 RVA: 0x001A3564 File Offset: 0x001A1764
// (set) Token: 0x06007CF3 RID: 31987 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x1700144D")]
public override long Position
{
[Token(Token = "0x6007CF2")]
[Address(RVA = "0x3F8880", Offset = "0x3F7280", VA = "0x1803F8880", Slot = "11")]
get
{
}
[Token(Token = "0x6007CF3")]
[Address(RVA = "0x3C9F60", Offset = "0x3C8960", VA = "0x1803C9F60", Slot = "12")]
set
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
}
// Token: 0x06007CF4 RID: 31988 RVA: 0x001A3574 File Offset: 0x001A1774
[Token(Token = "0x6007CF4")]
[Address(RVA = "0x2035A50", Offset = "0x2034450", VA = "0x182035A50", Slot = "29")]
public override void Write(byte[] b, int off, int len)
{
if (len != 0)
{
this.z.next_in = b;
this.z.next_in_index = off;
this.z.avail_in = len;
ZStream zstream = this.z;
int num = 0;
byte[] array = this.buf;
zstream.next_out = array;
this.z.next_out_index = num;
this.z.avail_out = (int)((ulong)4192L);
ZStream zstream2 = this.z;
Deflate dstate = zstream2.dstate;
if (dstate != 0)
{
int num2 = this.flushLevel;
if (dstate.deflate(zstream2, num2) == 0)
{
ZStream zstream3 = this.z;
int avail_out = zstream3.avail_out;
if (avail_out < 4192)
{
Stream stream = this.outp;
uint num3;
num3 -= (uint)avail_out;
int num4 = stream.ReadByte();
}
if (zstream3.avail_out == num)
{
return;
}
return;
}
}
throw new NullReferenceException();
}
}
// Token: 0x06007CF5 RID: 31989 RVA: 0x001A365C File Offset: 0x001A185C
[Token(Token = "0x6007CF5")]
[Address(RVA = "0x3F8880", Offset = "0x3F7280", VA = "0x1803F8880", Slot = "25")]
public override long Seek(long offset, SeekOrigin origin)
{
}
// Token: 0x06007CF6 RID: 31990 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x6007CF6")]
[Address(RVA = "0x3C9F60", Offset = "0x3C8960", VA = "0x1803C9F60", Slot = "26")]
public override void SetLength(long value)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06007CF7 RID: 31991 RVA: 0x001A366C File Offset: 0x001A186C
[Token(Token = "0x6007CF7")]
[Address(RVA = "0x3F8880", Offset = "0x3F7280", VA = "0x1803F8880", Slot = "27")]
public override int Read(byte[] buffer, int offset, int count)
{
return 0;
}
// Token: 0x06007CF8 RID: 31992 RVA: 0x001A367C File Offset: 0x001A187C
[Token(Token = "0x6007CF8")]
[Address(RVA = "0x20359C0", Offset = "0x20343C0", VA = "0x1820359C0", Slot = "17")]
public override void Flush()
{
bool canRead = this.outp.CanRead;
}
// Token: 0x06007CF9 RID: 31993 RVA: 0x001A369C File Offset: 0x001A189C
[Token(Token = "0x6007CF9")]
[Address(RVA = "0x20359F0", Offset = "0x20343F0", VA = "0x1820359F0", Slot = "30")]
public override void WriteByte(byte b)
{
this.buf1[0] = b;
int num = this.ReadByte();
}
// Token: 0x06007CFA RID: 31994 RVA: 0x001A36C4 File Offset: 0x001A18C4
[Token(Token = "0x6007CFA")]
[Address(RVA = "0x2035810", Offset = "0x2034210", VA = "0x182035810")]
public void Finish()
{
ZStream zstream = this.z;
int num = 0;
byte[] array = this.buf;
zstream.next_out = array;
this.z.next_out_index = num;
this.z.avail_out = (int)((ulong)4192L);
ZStream zstream2 = this.z;
Deflate dstate = zstream2.dstate;
if (dstate != 0 && dstate.deflate(zstream2, 4) <= 1)
{
ZStream zstream3 = this.z;
uint num2;
if (num2 > (uint)0)
{
int num3 = this.outp.ReadByte();
}
if (zstream3.avail_out == num)
{
}
((IDisposable)this).Dispose();
return;
}
throw new NullReferenceException();
}
// Token: 0x06007CFB RID: 31995 RVA: 0x001A3760 File Offset: 0x001A1960
[Token(Token = "0x6007CFB")]
[Address(RVA = "0x20357A0", Offset = "0x20341A0", VA = "0x1820357A0")]
public void End()
{
ZStream zstream = this.z;
if (zstream != 0)
{
Deflate dstate = zstream.dstate;
int num = 0;
if (dstate != 0)
{
int status = dstate.status;
if (status == 42 || status == 113 || status == 666)
{
dstate.pending_buf = num;
dstate.head = num;
dstate.prev = num;
dstate.window = num;
}
zstream.dstate = num;
}
zstream.next_in = num;
zstream.next_out = num;
zstream.msg = num;
zstream._adler = num;
this.z = num;
}
}
// Token: 0x06007CFC RID: 31996 RVA: 0x001A37EC File Offset: 0x001A19EC
[Token(Token = "0x6007CFC")]
[Address(RVA = "0x2035600", Offset = "0x2034000", VA = "0x182035600", Slot = "15")]
public override void Close()
{
int num2;
do
{
int num = 0;
this.Finish();
num++;
num2 = 0;
int num3 = 0;
ZStream zstream = this.z;
if (zstream != 0)
{
Deflate dstate = zstream.dstate;
if (dstate != 0)
{
int status = dstate.status;
if (status == 42 || status == 113 || status == 666)
{
dstate.pending_buf = num3;
dstate.head = num3;
dstate.prev = num3;
dstate.window = num3;
}
zstream.dstate = num3;
}
zstream.next_in = num3;
zstream.next_out = num3;
zstream.msg = num3;
zstream._adler = num3;
this.z = num3;
}
int writeTimeout = this.outp.WriteTimeout;
this.outp = num3;
if (num != -1)
{
}
}
while (num2 != 0);
base.Close();
}
// Token: 0x040059D2 RID: 22994
[global::Cpp2IlInjected.FieldOffset(Offset = "0x28")]
[Token(Token = "0x40059D2")]
protected ZStream z;
// Token: 0x040059D3 RID: 22995
[global::Cpp2IlInjected.FieldOffset(Offset = "0x30")]
[Token(Token = "0x40059D3")]
protected int flushLevel;
// Token: 0x040059D4 RID: 22996
[Token(Token = "0x40059D4")]
private const int BUFSIZE = 4192;
// Token: 0x040059D5 RID: 22997
[global::Cpp2IlInjected.FieldOffset(Offset = "0x38")]
[Token(Token = "0x40059D5")]
protected byte[] buf;
// Token: 0x040059D6 RID: 22998
[global::Cpp2IlInjected.FieldOffset(Offset = "0x40")]
[Token(Token = "0x40059D6")]
private byte[] buf1;
// Token: 0x040059D7 RID: 22999
[global::Cpp2IlInjected.FieldOffset(Offset = "0x48")]
[Token(Token = "0x40059D7")]
protected Stream outp;
}
}
@@ -0,0 +1,268 @@
using System;
using System.IO;
using System.Runtime.InteropServices;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib
{
// Token: 0x02001356 RID: 4950
[Token(Token = "0x2001356")]
[Obsolete]
[StructLayout(3)]
public class ZInflaterInputStream : Stream
{
// Token: 0x06007CFD RID: 31997 RVA: 0x001A38B8 File Offset: 0x001A1AB8
[Token(Token = "0x6007CFD")]
[Address(RVA = "0x2036090", Offset = "0x2034A90", VA = "0x182036090")]
public ZInflaterInputStream(Stream inp)
{
ZStream zstream = new ZStream();
Adler32 adler = new Adler32();
zstream._adler = adler;
this.z = zstream;
byte[] array = new byte[4192];
this.buf = array;
byte[] array2 = new byte[1];
this.buf1 = array2;
base..ctor();
ZStream zstream2 = this.z;
this.inp = inp;
int num = 0;
int num2 = zstream2.inflateInit(15, num != 0);
ZStream zstream3 = this.z;
byte[] array3 = this.buf;
zstream3.next_in = array3;
ZStream zstream4 = this.z;
int num3 = 0;
zstream4.next_in_index = num3;
this.z.avail_in = num3;
}
// Token: 0x06007CFE RID: 31998 RVA: 0x001A3964 File Offset: 0x001A1B64
[Token(Token = "0x6007CFE")]
[Address(RVA = "0x20361D0", Offset = "0x2034BD0", VA = "0x1820361D0")]
public ZInflaterInputStream(Stream inp, bool nowrap)
{
ZStream zstream = new ZStream();
Adler32 adler = new Adler32();
zstream._adler = adler;
this.z = zstream;
byte[] array = new byte[4192];
this.buf = array;
byte[] array2 = new byte[1];
this.buf1 = array2;
base..ctor();
ZStream zstream2 = this.z;
this.inp = inp;
int num = zstream2.inflateInit(15, nowrap);
ZStream zstream3 = this.z;
byte[] array3 = this.buf;
zstream3.next_in = array3;
ZStream zstream4 = this.z;
int num2 = 0;
zstream4.next_in_index = num2;
this.z.avail_in = num2;
}
// Token: 0x1700144E RID: 5198
// (get) Token: 0x06007CFF RID: 31999 RVA: 0x001A3A0C File Offset: 0x001A1C0C
[Token(Token = "0x1700144E")]
public override bool CanRead
{
[Token(Token = "0x6007CFF")]
[Address(RVA = "0x4405A0", Offset = "0x43EFA0", VA = "0x1804405A0", Slot = "7")]
get
{
return true;
}
}
// Token: 0x1700144F RID: 5199
// (get) Token: 0x06007D00 RID: 32000 RVA: 0x001A3A1C File Offset: 0x001A1C1C
[Token(Token = "0x1700144F")]
public override bool CanSeek
{
[Token(Token = "0x6007D00")]
[Address(RVA = "0x413970", Offset = "0x412370", VA = "0x180413970", Slot = "8")]
get
{
}
}
// Token: 0x17001450 RID: 5200
// (get) Token: 0x06007D01 RID: 32001 RVA: 0x001A3A2C File Offset: 0x001A1C2C
[Token(Token = "0x17001450")]
public override bool CanWrite
{
[Token(Token = "0x6007D01")]
[Address(RVA = "0x413970", Offset = "0x412370", VA = "0x180413970", Slot = "9")]
get
{
}
}
// Token: 0x17001451 RID: 5201
// (get) Token: 0x06007D02 RID: 32002 RVA: 0x001A3A3C File Offset: 0x001A1C3C
[Token(Token = "0x17001451")]
public override long Length
{
[Token(Token = "0x6007D02")]
[Address(RVA = "0x3F8880", Offset = "0x3F7280", VA = "0x1803F8880", Slot = "10")]
get
{
}
}
// Token: 0x17001452 RID: 5202
// (get) Token: 0x06007D03 RID: 32003 RVA: 0x001A3A4C File Offset: 0x001A1C4C
// (set) Token: 0x06007D04 RID: 32004 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x17001452")]
public override long Position
{
[Token(Token = "0x6007D03")]
[Address(RVA = "0x3F8880", Offset = "0x3F7280", VA = "0x1803F8880", Slot = "11")]
get
{
}
[Token(Token = "0x6007D04")]
[Address(RVA = "0x3C9F60", Offset = "0x3C8960", VA = "0x1803C9F60", Slot = "12")]
set
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
}
// Token: 0x06007D05 RID: 32005 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x6007D05")]
[Address(RVA = "0x3C9F60", Offset = "0x3C8960", VA = "0x1803C9F60", Slot = "29")]
public override void Write(byte[] b, int off, int len)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06007D06 RID: 32006 RVA: 0x001A3A5C File Offset: 0x001A1C5C
[Token(Token = "0x6007D06")]
[Address(RVA = "0x3F8880", Offset = "0x3F7280", VA = "0x1803F8880", Slot = "25")]
public override long Seek(long offset, SeekOrigin origin)
{
}
// Token: 0x06007D07 RID: 32007 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x6007D07")]
[Address(RVA = "0x3C9F60", Offset = "0x3C8960", VA = "0x1803C9F60", Slot = "26")]
public override void SetLength(long value)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06007D08 RID: 32008 RVA: 0x001A3A6C File Offset: 0x001A1C6C
[Token(Token = "0x6007D08")]
[Address(RVA = "0x2035E90", Offset = "0x2034890", VA = "0x182035E90", Slot = "27")]
public override int Read(byte[] b, int off, int len)
{
if (len != 0)
{
this.z.next_out = b;
this.z.next_out_index = off;
this.z.avail_out = len;
ZStream zstream = this.z;
int num = 0;
if (zstream.avail_in == num && (this.nomoreinput ? 1 : 0) == num)
{
zstream.next_in_index = num;
Stream stream = this.inp;
ZStream zstream2 = this.z;
this.z.avail_in = num;
this.nomoreinput = true;
}
Inflate istate = zstream.istate;
if (istate != 0)
{
int num2 = this.flushLevel;
int num3 = istate.inflate(zstream, num2);
}
bool flag = this.nomoreinput;
uint num4;
if (!flag || num4 != (uint)(-5))
{
if (num4 > (uint)1)
{
throw new NullReferenceException();
}
if (((flag || num4 == (uint)1) && this.z.avail_out == len) || this.z.avail_out != len || num4 == (uint)0)
{
}
}
}
return 0;
}
// Token: 0x06007D09 RID: 32009 RVA: 0x001A3B68 File Offset: 0x001A1D68
[Token(Token = "0x6007D09")]
[Address(RVA = "0x20359C0", Offset = "0x20343C0", VA = "0x1820359C0", Slot = "17")]
public override void Flush()
{
bool canRead = this.inp.CanRead;
}
// Token: 0x06007D0A RID: 32010 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x6007D0A")]
[Address(RVA = "0x3C9F60", Offset = "0x3C8960", VA = "0x1803C9F60", Slot = "30")]
public override void WriteByte(byte b)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06007D0B RID: 32011 RVA: 0x001A3B88 File Offset: 0x001A1D88
[Token(Token = "0x6007D0B")]
[Address(RVA = "0x2035DA0", Offset = "0x20347A0", VA = "0x182035DA0", Slot = "15")]
public override void Close()
{
int writeTimeout = this.inp.WriteTimeout;
base.Close();
}
// Token: 0x06007D0C RID: 32012 RVA: 0x001A3BB0 File Offset: 0x001A1DB0
[Token(Token = "0x6007D0C")]
[Address(RVA = "0x2035E20", Offset = "0x2034820", VA = "0x182035E20", Slot = "28")]
public override int ReadByte()
{
byte b = this.buf1[0];
return -1;
}
// Token: 0x040059D8 RID: 23000
[global::Cpp2IlInjected.FieldOffset(Offset = "0x28")]
[Token(Token = "0x40059D8")]
protected ZStream z;
// Token: 0x040059D9 RID: 23001
[global::Cpp2IlInjected.FieldOffset(Offset = "0x30")]
[Token(Token = "0x40059D9")]
protected int flushLevel;
// Token: 0x040059DA RID: 23002
[Token(Token = "0x40059DA")]
private const int BUFSIZE = 4192;
// Token: 0x040059DB RID: 23003
[global::Cpp2IlInjected.FieldOffset(Offset = "0x38")]
[Token(Token = "0x40059DB")]
protected byte[] buf;
// Token: 0x040059DC RID: 23004
[global::Cpp2IlInjected.FieldOffset(Offset = "0x40")]
[Token(Token = "0x40059DC")]
private byte[] buf1;
// Token: 0x040059DD RID: 23005
[global::Cpp2IlInjected.FieldOffset(Offset = "0x48")]
[Token(Token = "0x40059DD")]
protected Stream inp;
// Token: 0x040059DE RID: 23006
[global::Cpp2IlInjected.FieldOffset(Offset = "0x50")]
[Token(Token = "0x40059DE")]
private bool nomoreinput;
}
}
@@ -0,0 +1,549 @@
using System;
using System.IO;
using System.Runtime.InteropServices;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib
{
// Token: 0x02001357 RID: 4951
[Token(Token = "0x2001357")]
[StructLayout(3)]
public class ZInputStream : Stream
{
// Token: 0x06007D0D RID: 32013 RVA: 0x001A3BD4 File Offset: 0x001A1DD4
[Token(Token = "0x6007D0D")]
[Address(RVA = "0x20363B0", Offset = "0x2034DB0", VA = "0x1820363B0")]
private static ZStream GetDefaultZStream(bool nowrap)
{
ZStream zstream = new ZStream();
Adler32 adler = new Adler32();
zstream._adler = adler;
int num = zstream.inflateInit(15, nowrap);
return zstream;
}
// Token: 0x06007D0E RID: 32014 RVA: 0x001A3C00 File Offset: 0x001A1E00
[Token(Token = "0x6007D0E")]
[Address(RVA = "0x2036D40", Offset = "0x2035740", VA = "0x182036D40")]
public ZInputStream(Stream input)
{
ZStream zstream = new ZStream();
Adler32 adler = new Adler32();
zstream._adler = adler;
int num = 0;
int num2 = zstream.inflateInit(15, num != 0);
byte[] array = new byte[512];
this.buf = array;
byte[] array2 = new byte[1];
this.buf1 = array2;
base..ctor();
if (zstream.istate == (ulong)0L && zstream.dstate == (ulong)0L)
{
int num3 = 0;
int num4 = zstream.inflateInit(15, num3 != 0);
}
this.input = input;
this.z = zstream;
bool flag = zstream.istate == (ulong)0L;
this.compress = flag;
byte[] array3 = this.buf;
zstream.next_in = array3;
ZStream zstream2 = this.z;
int num5 = 0;
zstream2.next_in_index = num5;
this.z.avail_in = num5;
}
// Token: 0x06007D0F RID: 32015 RVA: 0x001A3CD8 File Offset: 0x001A1ED8
[Token(Token = "0x6007D0F")]
[Address(RVA = "0x2036BB0", Offset = "0x20355B0", VA = "0x182036BB0")]
public ZInputStream(Stream input, bool nowrap)
{
ZStream zstream = new ZStream();
Adler32 adler = new Adler32();
zstream._adler = adler;
int num = zstream.inflateInit(15, nowrap);
byte[] array = new byte[512];
this.buf = array;
byte[] array2 = new byte[1];
this.buf1 = array2;
base..ctor();
if (zstream.istate == (ulong)0L && zstream.dstate == (ulong)0L)
{
int num2 = 0;
int num3 = zstream.inflateInit(15, num2 != 0);
}
this.input = input;
this.z = zstream;
bool flag = zstream.istate == (ulong)0L;
this.compress = flag;
byte[] array3 = this.buf;
zstream.next_in = array3;
ZStream zstream2 = this.z;
int num4 = 0;
zstream2.next_in_index = num4;
this.z.avail_in = num4;
}
// Token: 0x06007D10 RID: 32016 RVA: 0x001A3DAC File Offset: 0x001A1FAC
[Token(Token = "0x6007D10")]
[Address(RVA = "0x20367A0", Offset = "0x20351A0", VA = "0x1820367A0")]
public ZInputStream(Stream input, ZStream z)
{
byte[] array = new byte[512];
this.buf = array;
byte[] array2 = new byte[1];
this.buf1 = array2;
base..ctor();
if (z == 0)
{
ZStream zstream = new ZStream();
Adler32 adler = new Adler32();
zstream._adler = adler;
}
if (z.istate == (ulong)0L && z.dstate == (ulong)0L)
{
int num = 0;
int num2 = z.inflateInit(15, num != 0);
}
this.input = input;
bool flag = z.istate == (ulong)0L;
this.z = z;
this.compress = flag;
byte[] array3 = this.buf;
z.next_in = array3;
ZStream zstream2 = this.z;
int num3 = 0;
zstream2.next_in_index = num3;
this.z.avail_in = num3;
}
// Token: 0x06007D11 RID: 32017 RVA: 0x001A3E78 File Offset: 0x001A2078
[Token(Token = "0x6007D11")]
[Address(RVA = "0x2036900", Offset = "0x2035300", VA = "0x182036900")]
public ZInputStream(Stream input, int level)
{
byte[] array = new byte[512];
this.buf = array;
byte[] array2 = new byte[1];
this.buf1 = array2;
base..ctor();
this.input = input;
this.compress = true;
ZStream zstream = new ZStream();
Adler32 adler = new Adler32();
zstream._adler = adler;
int num = 0;
this.z = zstream;
int num2 = 0;
int num3 = zstream.deflateInit(level, 15, num2 != 0);
ZStream zstream2 = this.z;
byte[] array3 = this.buf;
zstream2.next_in = array3;
this.z.next_in_index = num;
this.z.avail_in = num;
}
// Token: 0x06007D12 RID: 32018 RVA: 0x001A3F20 File Offset: 0x001A2120
[Token(Token = "0x6007D12")]
[Address(RVA = "0x2036A50", Offset = "0x2035450", VA = "0x182036A50")]
public ZInputStream(Stream input, int level, bool nowrap)
{
byte[] array = new byte[512];
this.buf = array;
byte[] array2 = new byte[1];
this.buf1 = array2;
base..ctor();
this.input = input;
this.compress = true;
ZStream zstream = new ZStream();
Adler32 adler = new Adler32();
zstream._adler = adler;
int num = 0;
this.z = zstream;
int num2 = zstream.deflateInit(level, 15, nowrap);
ZStream zstream2 = this.z;
byte[] array3 = this.buf;
zstream2.next_in = array3;
this.z.next_in_index = num;
this.z.avail_in = num;
}
// Token: 0x17001453 RID: 5203
// (get) Token: 0x06007D13 RID: 32019 RVA: 0x001A3FC4 File Offset: 0x001A21C4
[Token(Token = "0x17001453")]
public sealed override bool CanRead
{
[Token(Token = "0x6007D13")]
[Address(RVA = "0x2036EC0", Offset = "0x20358C0", VA = "0x182036EC0", Slot = "7")]
get
{
return !this.closed;
}
}
// Token: 0x17001454 RID: 5204
// (get) Token: 0x06007D14 RID: 32020 RVA: 0x001A3FDC File Offset: 0x001A21DC
[Token(Token = "0x17001454")]
public sealed override bool CanSeek
{
[Token(Token = "0x6007D14")]
[Address(RVA = "0x413970", Offset = "0x412370", VA = "0x180413970", Slot = "8")]
get
{
}
}
// Token: 0x17001455 RID: 5205
// (get) Token: 0x06007D15 RID: 32021 RVA: 0x001A3FEC File Offset: 0x001A21EC
[Token(Token = "0x17001455")]
public sealed override bool CanWrite
{
[Token(Token = "0x6007D15")]
[Address(RVA = "0x413970", Offset = "0x412370", VA = "0x180413970", Slot = "9")]
get
{
}
}
// Token: 0x06007D16 RID: 32022 RVA: 0x001A3FFC File Offset: 0x001A21FC
[Token(Token = "0x6007D16")]
[Address(RVA = "0x2036320", Offset = "0x2034D20", VA = "0x182036320", Slot = "15")]
public override void Close()
{
if (!this.closed)
{
Stream stream = this.input;
this.closed = true;
int writeTimeout = stream.WriteTimeout;
base.Close();
}
}
// Token: 0x06007D17 RID: 32023 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x6007D17")]
[Address(RVA = "0x3C9F60", Offset = "0x3C8960", VA = "0x1803C9F60", Slot = "17")]
public sealed override void Flush()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x17001456 RID: 5206
// (get) Token: 0x06007D18 RID: 32024 RVA: 0x001A4034 File Offset: 0x001A2234
// (set) Token: 0x06007D19 RID: 32025 RVA: 0x001A4048 File Offset: 0x001A2248
[Token(Token = "0x17001456")]
public virtual int FlushMode
{
[Token(Token = "0x6007D18")]
[Address(RVA = "0x3EDF60", Offset = "0x3EC960", VA = "0x1803EDF60", Slot = "31")]
get
{
return this.flushLevel;
}
[Token(Token = "0x6007D19")]
[Address(RVA = "0x7B2580", Offset = "0x7B0F80", VA = "0x1807B2580", Slot = "32")]
set
{
this.flushLevel = value;
}
}
// Token: 0x17001457 RID: 5207
// (get) Token: 0x06007D1A RID: 32026 RVA: 0x001A405C File Offset: 0x001A225C
[Token(Token = "0x17001457")]
public sealed override long Length
{
[Token(Token = "0x6007D1A")]
[Address(RVA = "0x2036ED0", Offset = "0x20358D0", VA = "0x182036ED0", Slot = "10")]
get
{
/*
An exception occurred when decompiling this method (06007D1A)
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int64 BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib.ZInputStream::get_Length()
---> System.Exception: Basic block has to end with unconditional control flow.
{
Block_0:
stloc:NotSupportedException(var_0_05, newobj:NotSupportedException(NotSupportedException::.ctor))
}
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.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: 0x17001458 RID: 5208
// (get) Token: 0x06007D1B RID: 32027 RVA: 0x001A4070 File Offset: 0x001A2270
// (set) Token: 0x06007D1C RID: 32028 RVA: 0x001A4084 File Offset: 0x001A2284
[Token(Token = "0x17001458")]
public sealed override long Position
{
[Token(Token = "0x6007D1B")]
[Address(RVA = "0x2036F20", Offset = "0x2035920", VA = "0x182036F20", Slot = "11")]
get
{
/*
An exception occurred when decompiling this method (06007D1B)
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int64 BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib.ZInputStream::get_Position()
---> System.Exception: Basic block has to end with unconditional control flow.
{
Block_0:
stloc:NotSupportedException(var_0_05, newobj:NotSupportedException(NotSupportedException::.ctor))
}
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.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(Token = "0x6007D1C")]
[Address(RVA = "0x2036F90", Offset = "0x2035990", VA = "0x182036F90", Slot = "12")]
set
{
/*
An exception occurred when decompiling this method (06007D1C)
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib.ZInputStream::set_Position(System.Int64)
---> System.Exception: Basic block has to end with unconditional control flow.
{
Block_0:
stloc:NotSupportedException(var_0_05, newobj:NotSupportedException(NotSupportedException::.ctor))
}
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.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: 0x06007D1D RID: 32029 RVA: 0x001A4098 File Offset: 0x001A2298
[Token(Token = "0x6007D1D")]
[Address(RVA = "0x2036460", Offset = "0x2034E60", VA = "0x182036460", Slot = "27")]
public override int Read(byte[] b, int off, int len)
{
if (len != 0)
{
this.z.next_out = b;
this.z.next_out_index = off;
this.z.avail_out = len;
ZStream zstream = this.z;
int num = 0;
if (zstream.avail_in == num && (this.nomoreinput ? 1 : 0) == num)
{
zstream.next_in_index = num;
byte[] array = this.buf;
ZStream zstream2 = this.z;
Stream stream = this.input;
this.z.avail_in = num;
this.nomoreinput = true;
}
if ((this.compress ? 1 : 0) != num)
{
Deflate dstate = zstream.dstate;
if (dstate == 0)
{
goto IL_C1;
}
int num2 = this.flushLevel;
int num3 = dstate.deflate(zstream, num2);
}
Inflate istate = zstream.istate;
if (istate != 0)
{
int num4 = this.flushLevel;
int num5 = istate.inflate(zstream, num4);
}
IL_C1:
bool flag = this.nomoreinput;
uint num6;
if (!flag || num6 != (uint)(-5))
{
if (num6 > (uint)1)
{
throw new NullReferenceException();
}
if (((flag || num6 == (uint)1) && this.z.avail_out == len) || this.z.avail_out != len || num6 == (uint)0)
{
}
}
}
return 0;
}
// Token: 0x06007D1E RID: 32030 RVA: 0x001A41C4 File Offset: 0x001A23C4
[Token(Token = "0x6007D1E")]
[Address(RVA = "0x2035E20", Offset = "0x2034820", VA = "0x182035E20", Slot = "28")]
public override int ReadByte()
{
byte b = this.buf1[0];
return -1;
}
// Token: 0x06007D1F RID: 32031 RVA: 0x001A41E8 File Offset: 0x001A23E8
[Token(Token = "0x6007D1F")]
[Address(RVA = "0x20366B0", Offset = "0x20350B0", VA = "0x1820366B0", Slot = "25")]
public sealed override long Seek(long offset, SeekOrigin origin)
{
/*
An exception occurred when decompiling this method (06007D1F)
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int64 BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib.ZInputStream::Seek(System.Int64,System.IO.SeekOrigin)
---> System.Exception: Basic block has to end with unconditional control flow.
{
Block_0:
stloc:NotSupportedException(var_0_05, newobj:NotSupportedException(NotSupportedException::.ctor))
}
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.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: 0x06007D20 RID: 32032 RVA: 0x001A41FC File Offset: 0x001A23FC
[Token(Token = "0x6007D20")]
[Address(RVA = "0x2036700", Offset = "0x2035100", VA = "0x182036700", Slot = "26")]
public sealed override void SetLength(long value)
{
/*
An exception occurred when decompiling this method (06007D20)
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib.ZInputStream::SetLength(System.Int64)
---> System.Exception: Basic block has to end with unconditional control flow.
{
Block_0:
stloc:NotSupportedException(var_0_05, newobj:NotSupportedException(NotSupportedException::.ctor))
}
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.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: 0x17001459 RID: 5209
// (get) Token: 0x06007D21 RID: 32033 RVA: 0x001A4210 File Offset: 0x001A2410
[Token(Token = "0x17001459")]
public virtual long TotalIn
{
[Token(Token = "0x6007D21")]
[Address(RVA = "0x2036F70", Offset = "0x2035970", VA = "0x182036F70", Slot = "33")]
get
{
return this.z.total_in;
}
}
// Token: 0x1700145A RID: 5210
// (get) Token: 0x06007D22 RID: 32034 RVA: 0x001A4230 File Offset: 0x001A2430
[Token(Token = "0x1700145A")]
public virtual long TotalOut
{
[Token(Token = "0x6007D22")]
[Address(RVA = "0x6BC910", Offset = "0x6BB310", VA = "0x1806BC910", Slot = "34")]
get
{
return this.z.total_out;
}
}
// Token: 0x06007D23 RID: 32035 RVA: 0x001A4250 File Offset: 0x001A2450
[Token(Token = "0x6007D23")]
[Address(RVA = "0x2036750", Offset = "0x2035150", VA = "0x182036750", Slot = "29")]
public sealed override void Write(byte[] buffer, int offset, int count)
{
/*
An exception occurred when decompiling this method (06007D23)
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib.ZInputStream::Write(System.Byte[],System.Int32,System.Int32)
---> System.Exception: Basic block has to end with unconditional control flow.
{
Block_0:
stloc:NotSupportedException(var_0_05, newobj:NotSupportedException(NotSupportedException::.ctor))
}
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.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: 0x040059DF RID: 23007
[Token(Token = "0x40059DF")]
private const int BufferSize = 512;
// Token: 0x040059E0 RID: 23008
[global::Cpp2IlInjected.FieldOffset(Offset = "0x28")]
[Token(Token = "0x40059E0")]
protected ZStream z;
// Token: 0x040059E1 RID: 23009
[global::Cpp2IlInjected.FieldOffset(Offset = "0x30")]
[Token(Token = "0x40059E1")]
protected int flushLevel;
// Token: 0x040059E2 RID: 23010
[global::Cpp2IlInjected.FieldOffset(Offset = "0x38")]
[Token(Token = "0x40059E2")]
protected byte[] buf;
// Token: 0x040059E3 RID: 23011
[global::Cpp2IlInjected.FieldOffset(Offset = "0x40")]
[Token(Token = "0x40059E3")]
protected byte[] buf1;
// Token: 0x040059E4 RID: 23012
[global::Cpp2IlInjected.FieldOffset(Offset = "0x48")]
[Token(Token = "0x40059E4")]
protected bool compress;
// Token: 0x040059E5 RID: 23013
[global::Cpp2IlInjected.FieldOffset(Offset = "0x50")]
[Token(Token = "0x40059E5")]
protected Stream input;
// Token: 0x040059E6 RID: 23014
[global::Cpp2IlInjected.FieldOffset(Offset = "0x58")]
[Token(Token = "0x40059E6")]
protected bool closed;
// Token: 0x040059E7 RID: 23015
[global::Cpp2IlInjected.FieldOffset(Offset = "0x59")]
[Token(Token = "0x40059E7")]
private bool nomoreinput;
}
}
@@ -0,0 +1,640 @@
using System;
using System.IO;
using System.Runtime.InteropServices;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib
{
// Token: 0x02001358 RID: 4952
[Token(Token = "0x2001358")]
[StructLayout(3)]
public class ZOutputStream : Stream
{
// Token: 0x06007D24 RID: 32036 RVA: 0x001A4264 File Offset: 0x001A2464
[Token(Token = "0x6007D24")]
[Address(RVA = "0x2037420", Offset = "0x2035E20", VA = "0x182037420")]
private static ZStream GetDefaultZStream(bool nowrap)
{
ZStream zstream = new ZStream();
Adler32 adler = new Adler32();
zstream._adler = adler;
int num = zstream.inflateInit(15, nowrap);
return zstream;
}
// Token: 0x06007D25 RID: 32037 RVA: 0x001A4290 File Offset: 0x001A2490
[Token(Token = "0x6007D25")]
[Address(RVA = "0x2037900", Offset = "0x2036300", VA = "0x182037900")]
public ZOutputStream(Stream output)
{
ZStream zstream = new ZStream();
Adler32 adler = new Adler32();
zstream._adler = adler;
int num = 0;
int num2 = zstream.inflateInit(15, num != 0);
byte[] array = new byte[512];
this.buf = array;
byte[] array2 = new byte[1];
this.buf1 = array2;
base..ctor();
if (zstream.istate == (ulong)0L && zstream.dstate == (ulong)0L)
{
int num3 = 0;
int num4 = zstream.inflateInit(15, num3 != 0);
}
this.output = output;
bool flag = zstream.istate == (ulong)0L;
this.z = zstream;
this.compress = flag;
}
// Token: 0x06007D26 RID: 32038 RVA: 0x001A4330 File Offset: 0x001A2530
[Token(Token = "0x6007D26")]
[Address(RVA = "0x2037A50", Offset = "0x2036450", VA = "0x182037A50")]
public ZOutputStream(Stream output, bool nowrap)
{
ZStream zstream = new ZStream();
Adler32 adler = new Adler32();
zstream._adler = adler;
int num = zstream.inflateInit(15, nowrap);
byte[] array = new byte[512];
this.buf = array;
byte[] array2 = new byte[1];
this.buf1 = array2;
base..ctor();
if (zstream.istate == (ulong)0L && zstream.dstate == (ulong)0L)
{
int num2 = 0;
int num3 = zstream.inflateInit(15, num2 != 0);
}
this.output = output;
this.z = zstream;
bool flag = zstream.istate == (ulong)0L;
this.compress = flag;
}
// Token: 0x06007D27 RID: 32039 RVA: 0x001A43CC File Offset: 0x001A25CC
[Token(Token = "0x6007D27")]
[Address(RVA = "0x20377D0", Offset = "0x20361D0", VA = "0x1820377D0")]
public ZOutputStream(Stream output, ZStream z)
{
byte[] array = new byte[512];
this.buf = array;
byte[] array2 = new byte[1];
this.buf1 = array2;
base..ctor();
if (z == 0)
{
ZStream zstream = new ZStream();
Adler32 adler = new Adler32();
zstream._adler = adler;
}
if (z.istate == (ulong)0L && z.dstate == (ulong)0L)
{
int num = 0;
int num2 = z.inflateInit(15, num != 0);
}
this.output = output;
bool flag = z.istate == (ulong)0L;
this.z = z;
this.compress = flag;
}
// Token: 0x06007D28 RID: 32040 RVA: 0x001A4460 File Offset: 0x001A2660
[Token(Token = "0x6007D28")]
[Address(RVA = "0x2037BB0", Offset = "0x20365B0", VA = "0x182037BB0")]
public ZOutputStream(Stream output, int level)
{
byte[] array = new byte[512];
this.buf = array;
byte[] array2 = new byte[1];
this.buf1 = array2;
base..ctor();
this.output = output;
this.compress = true;
ZStream zstream = new ZStream();
Adler32 adler = new Adler32();
zstream._adler = adler;
int num = 0;
this.z = zstream;
int num2 = zstream.deflateInit(level, 15, num != 0);
}
// Token: 0x06007D29 RID: 32041 RVA: 0x001A44CC File Offset: 0x001A26CC
[Token(Token = "0x6007D29")]
[Address(RVA = "0x2037CD0", Offset = "0x20366D0", VA = "0x182037CD0")]
public ZOutputStream(Stream output, int level, bool nowrap)
{
byte[] array = new byte[512];
this.buf = array;
byte[] array2 = new byte[1];
this.buf1 = array2;
base..ctor();
this.output = output;
this.compress = true;
ZStream zstream = new ZStream();
Adler32 adler = new Adler32();
zstream._adler = adler;
this.z = zstream;
int num = zstream.deflateInit(level, 15, nowrap);
}
// Token: 0x1700145B RID: 5211
// (get) Token: 0x06007D2A RID: 32042 RVA: 0x001A4534 File Offset: 0x001A2734
[Token(Token = "0x1700145B")]
public sealed override bool CanRead
{
[Token(Token = "0x6007D2A")]
[Address(RVA = "0x413970", Offset = "0x412370", VA = "0x180413970", Slot = "7")]
get
{
}
}
// Token: 0x1700145C RID: 5212
// (get) Token: 0x06007D2B RID: 32043 RVA: 0x001A4544 File Offset: 0x001A2744
[Token(Token = "0x1700145C")]
public sealed override bool CanSeek
{
[Token(Token = "0x6007D2B")]
[Address(RVA = "0x413970", Offset = "0x412370", VA = "0x180413970", Slot = "8")]
get
{
}
}
// Token: 0x1700145D RID: 5213
// (get) Token: 0x06007D2C RID: 32044 RVA: 0x001A4554 File Offset: 0x001A2754
[Token(Token = "0x1700145D")]
public sealed override bool CanWrite
{
[Token(Token = "0x6007D2C")]
[Address(RVA = "0x2036EC0", Offset = "0x20358C0", VA = "0x182036EC0", Slot = "9")]
get
{
return !this.closed;
}
}
// Token: 0x06007D2D RID: 32045 RVA: 0x001A456C File Offset: 0x001A276C
[Token(Token = "0x6007D2D")]
[Address(RVA = "0x2036FE0", Offset = "0x20359E0", VA = "0x182036FE0", Slot = "15")]
public override void Close()
{
if (!this.closed)
{
this.DoClose();
base.Close();
return;
}
}
// Token: 0x06007D2E RID: 32046 RVA: 0x001A4590 File Offset: 0x001A2790
[Token(Token = "0x6007D2E")]
[Address(RVA = "0x2037010", Offset = "0x2035A10", VA = "0x182037010")]
private void DoClose()
{
int num;
do
{
num = 0;
this.End();
int num2 = 0;
num2++;
this.closed = true;
int writeTimeout = this.output.WriteTimeout;
this.output = (ulong)0L;
if (num2 != -1)
{
}
}
while (num != 0);
}
// Token: 0x06007D2F RID: 32047 RVA: 0x001A45D0 File Offset: 0x001A27D0
[Token(Token = "0x6007D2F")]
[Address(RVA = "0x2037150", Offset = "0x2035B50", VA = "0x182037150", Slot = "31")]
public virtual void End()
{
ZStream zstream = this.z;
if (zstream != 0)
{
int num = 0;
if ((this.compress ? 1 : 0) == num)
{
Inflate istate = zstream.istate;
if (istate == 0)
{
goto IL_85;
}
int num2 = istate.inflateEnd(zstream);
zstream.istate = num;
}
Deflate dstate = zstream.dstate;
if (dstate != 0)
{
int status = dstate.status;
if (status == 42 || status == 113 || status == 666)
{
dstate.pending_buf = num;
dstate.head = num;
dstate.prev = num;
dstate.window = num;
}
zstream.dstate = num;
}
IL_85:
ZStream zstream2 = this.z;
zstream2.next_in = num;
zstream2.next_out = num;
zstream2.msg = num;
zstream2._adler = num;
this.z = num;
}
}
// Token: 0x06007D30 RID: 32048 RVA: 0x001A4698 File Offset: 0x001A2898
[Token(Token = "0x6007D30")]
[Address(RVA = "0x2037200", Offset = "0x2035C00", VA = "0x182037200", Slot = "32")]
public virtual void Finish()
{
int num;
for (;;)
{
ZStream zstream = this.z;
num = 0;
byte[] array = this.buf;
zstream.next_out = array;
this.z.next_out_index = num;
byte[] array2 = this.buf;
ZStream zstream2 = this.z;
int length = array2.Length;
zstream2.avail_out = length;
ZStream zstream3 = this.z;
if ((this.compress ? 1 : 0) == num)
{
goto IL_6E;
}
Deflate dstate = zstream3.dstate;
if (dstate != 0)
{
int num2 = dstate.deflate(zstream3, 4);
goto IL_6E;
}
IL_88:
uint num3;
if (num3 > (uint)1)
{
goto IL_CD;
}
byte[] array3 = this.buf;
ZStream zstream4 = this.z;
if (array3.Length > 0)
{
break;
}
continue;
IL_6E:
Inflate istate = zstream3.istate;
if (istate != 0)
{
int num4 = istate.inflate(zstream3, 4);
goto IL_88;
}
goto IL_88;
}
int num5 = this.output.ReadByte();
if (this.z.avail_out == num)
{
}
((IDisposable)this).Dispose();
return;
IL_CD:
if (this.compress)
{
}
throw new NullReferenceException();
}
// Token: 0x06007D31 RID: 32049 RVA: 0x001A4798 File Offset: 0x001A2998
[Token(Token = "0x6007D31")]
[Address(RVA = "0x20373F0", Offset = "0x2035DF0", VA = "0x1820373F0", Slot = "17")]
public override void Flush()
{
bool canRead = this.output.CanRead;
}
// Token: 0x1700145E RID: 5214
// (get) Token: 0x06007D32 RID: 32050 RVA: 0x001A47B8 File Offset: 0x001A29B8
// (set) Token: 0x06007D33 RID: 32051 RVA: 0x001A47CC File Offset: 0x001A29CC
[Token(Token = "0x1700145E")]
public virtual int FlushMode
{
[Token(Token = "0x6007D32")]
[Address(RVA = "0x3EDF60", Offset = "0x3EC960", VA = "0x1803EDF60", Slot = "33")]
get
{
return this.flushLevel;
}
[Token(Token = "0x6007D33")]
[Address(RVA = "0x7B2580", Offset = "0x7B0F80", VA = "0x1807B2580", Slot = "34")]
set
{
this.flushLevel = value;
}
}
// Token: 0x1700145F RID: 5215
// (get) Token: 0x06007D34 RID: 32052 RVA: 0x001A47E0 File Offset: 0x001A29E0
[Token(Token = "0x1700145F")]
public sealed override long Length
{
[Token(Token = "0x6007D34")]
[Address(RVA = "0x2037E00", Offset = "0x2036800", VA = "0x182037E00", Slot = "10")]
get
{
/*
An exception occurred when decompiling this method (06007D34)
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int64 BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib.ZOutputStream::get_Length()
---> System.Exception: Basic block has to end with unconditional control flow.
{
Block_0:
stloc:NotSupportedException(var_0_05, newobj:NotSupportedException(NotSupportedException::.ctor))
}
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.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: 0x17001460 RID: 5216
// (get) Token: 0x06007D35 RID: 32053 RVA: 0x001A47F4 File Offset: 0x001A29F4
// (set) Token: 0x06007D36 RID: 32054 RVA: 0x001A4808 File Offset: 0x001A2A08
[Token(Token = "0x17001460")]
public sealed override long Position
{
[Token(Token = "0x6007D35")]
[Address(RVA = "0x2037E50", Offset = "0x2036850", VA = "0x182037E50", Slot = "11")]
get
{
/*
An exception occurred when decompiling this method (06007D35)
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int64 BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib.ZOutputStream::get_Position()
---> System.Exception: Basic block has to end with unconditional control flow.
{
Block_0:
stloc:NotSupportedException(var_0_05, newobj:NotSupportedException(NotSupportedException::.ctor))
}
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.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(Token = "0x6007D36")]
[Address(RVA = "0x2037EA0", Offset = "0x20368A0", VA = "0x182037EA0", Slot = "12")]
set
{
/*
An exception occurred when decompiling this method (06007D36)
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib.ZOutputStream::set_Position(System.Int64)
---> System.Exception: Basic block has to end with unconditional control flow.
{
Block_0:
stloc:NotSupportedException(var_0_05, newobj:NotSupportedException(NotSupportedException::.ctor))
}
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.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: 0x06007D37 RID: 32055 RVA: 0x001A481C File Offset: 0x001A2A1C
[Token(Token = "0x6007D37")]
[Address(RVA = "0x20374D0", Offset = "0x2035ED0", VA = "0x1820374D0", Slot = "27")]
public sealed override int Read(byte[] buffer, int offset, int count)
{
/*
An exception occurred when decompiling this method (06007D37)
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib.ZOutputStream::Read(System.Byte[],System.Int32,System.Int32)
---> System.Exception: Basic block has to end with unconditional control flow.
{
Block_0:
stloc:NotSupportedException(var_0_05, newobj:NotSupportedException(NotSupportedException::.ctor))
}
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.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: 0x06007D38 RID: 32056 RVA: 0x001A4830 File Offset: 0x001A2A30
[Token(Token = "0x6007D38")]
[Address(RVA = "0x2037520", Offset = "0x2035F20", VA = "0x182037520", Slot = "25")]
public sealed override long Seek(long offset, SeekOrigin origin)
{
/*
An exception occurred when decompiling this method (06007D38)
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int64 BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib.ZOutputStream::Seek(System.Int64,System.IO.SeekOrigin)
---> System.Exception: Basic block has to end with unconditional control flow.
{
Block_0:
stloc:NotSupportedException(var_0_05, newobj:NotSupportedException(NotSupportedException::.ctor))
}
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.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: 0x06007D39 RID: 32057 RVA: 0x001A4844 File Offset: 0x001A2A44
[Token(Token = "0x6007D39")]
[Address(RVA = "0x2037570", Offset = "0x2035F70", VA = "0x182037570", Slot = "26")]
public sealed override void SetLength(long value)
{
/*
An exception occurred when decompiling this method (06007D39)
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib.ZOutputStream::SetLength(System.Int64)
---> System.Exception: Basic block has to end with unconditional control flow.
{
Block_0:
stloc:NotSupportedException(var_0_05, newobj:NotSupportedException(NotSupportedException::.ctor))
}
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.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: 0x17001461 RID: 5217
// (get) Token: 0x06007D3A RID: 32058 RVA: 0x001A4858 File Offset: 0x001A2A58
[Token(Token = "0x17001461")]
public virtual long TotalIn
{
[Token(Token = "0x6007D3A")]
[Address(RVA = "0x2036F70", Offset = "0x2035970", VA = "0x182036F70", Slot = "35")]
get
{
return this.z.total_in;
}
}
// Token: 0x17001462 RID: 5218
// (get) Token: 0x06007D3B RID: 32059 RVA: 0x001A4878 File Offset: 0x001A2A78
[Token(Token = "0x17001462")]
public virtual long TotalOut
{
[Token(Token = "0x6007D3B")]
[Address(RVA = "0x6BC910", Offset = "0x6BB310", VA = "0x1806BC910", Slot = "36")]
get
{
return this.z.total_out;
}
}
// Token: 0x06007D3C RID: 32060 RVA: 0x001A4898 File Offset: 0x001A2A98
[Token(Token = "0x6007D3C")]
[Address(RVA = "0x20375C0", Offset = "0x2035FC0", VA = "0x1820375C0", Slot = "29")]
public override void Write(byte[] b, int off, int len)
{
if (len != 0)
{
this.z.next_in = b;
this.z.next_in_index = off;
this.z.avail_in = len;
ZStream zstream = this.z;
int num = 0;
byte[] array = this.buf;
zstream.next_out = array;
this.z.next_out_index = num;
byte[] array2 = this.buf;
ZStream zstream2 = this.z;
int length = array2.Length;
zstream2.avail_out = length;
ZStream zstream3 = this.z;
if ((this.compress ? 1 : 0) != num)
{
Deflate dstate = zstream3.dstate;
if (dstate == 0)
{
goto IL_C5;
}
int num2 = this.flushLevel;
int num3 = dstate.deflate(zstream3, num2);
}
Inflate istate = zstream3.istate;
if (istate != 0)
{
int num4 = this.flushLevel;
int num5 = istate.inflate(zstream3, num4);
}
IL_C5:
uint num6;
if (num6 != (uint)0)
{
if ("{il2cpp field on {'constant25' (constant value of type Cpp2IL.Core.Analysis.ResultModels.StackPointer)}, offset 0x48}" != (ulong)0L)
{
}
throw new NullReferenceException();
}
byte[] array3 = this.buf;
ZStream zstream4 = this.z;
int num7 = this.output.ReadByte();
if (this.z.avail_out == num)
{
}
}
}
// Token: 0x06007D3D RID: 32061 RVA: 0x001A49CC File Offset: 0x001A2BCC
[Token(Token = "0x6007D3D")]
[Address(RVA = "0x20359F0", Offset = "0x20343F0", VA = "0x1820359F0", Slot = "30")]
public override void WriteByte(byte b)
{
this.buf1[0] = b;
int num = this.ReadByte();
}
// Token: 0x040059E8 RID: 23016
[Token(Token = "0x40059E8")]
private const int BufferSize = 512;
// Token: 0x040059E9 RID: 23017
[global::Cpp2IlInjected.FieldOffset(Offset = "0x28")]
[Token(Token = "0x40059E9")]
protected ZStream z;
// Token: 0x040059EA RID: 23018
[global::Cpp2IlInjected.FieldOffset(Offset = "0x30")]
[Token(Token = "0x40059EA")]
protected int flushLevel;
// Token: 0x040059EB RID: 23019
[global::Cpp2IlInjected.FieldOffset(Offset = "0x38")]
[Token(Token = "0x40059EB")]
protected byte[] buf;
// Token: 0x040059EC RID: 23020
[global::Cpp2IlInjected.FieldOffset(Offset = "0x40")]
[Token(Token = "0x40059EC")]
protected byte[] buf1;
// Token: 0x040059ED RID: 23021
[global::Cpp2IlInjected.FieldOffset(Offset = "0x48")]
[Token(Token = "0x40059ED")]
protected bool compress;
// Token: 0x040059EE RID: 23022
[global::Cpp2IlInjected.FieldOffset(Offset = "0x50")]
[Token(Token = "0x40059EE")]
protected Stream output;
// Token: 0x040059EF RID: 23023
[global::Cpp2IlInjected.FieldOffset(Offset = "0x58")]
[Token(Token = "0x40059EF")]
protected bool closed;
}
}
@@ -0,0 +1,502 @@
using System;
using System.Runtime.InteropServices;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib
{
// Token: 0x02001359 RID: 4953
[Token(Token = "0x2001359")]
[StructLayout(3)]
public sealed class ZStream
{
// Token: 0x06007D3E RID: 32062 RVA: 0x001A49F4 File Offset: 0x001A2BF4
[Token(Token = "0x6007D3E")]
[Address(RVA = "0x2038640", Offset = "0x2037040", VA = "0x182038640")]
public int inflateInit()
{
int num = 0;
return this.inflateInit(15, num != 0);
}
// Token: 0x06007D3F RID: 32063 RVA: 0x001A4A0C File Offset: 0x001A2C0C
[Token(Token = "0x6007D3F")]
[Address(RVA = "0x2038620", Offset = "0x2037020", VA = "0x182038620")]
public int inflateInit(bool nowrap)
{
return this.inflateInit(15, nowrap);
}
// Token: 0x06007D40 RID: 32064 RVA: 0x001A4A24 File Offset: 0x001A2C24
[Token(Token = "0x6007D40")]
[Address(RVA = "0x2038630", Offset = "0x2037030", VA = "0x182038630")]
public int inflateInit(int w)
{
int num = 0;
return this.inflateInit(w, num != 0);
}
// Token: 0x06007D41 RID: 32065 RVA: 0x001A4A3C File Offset: 0x001A2C3C
[Token(Token = "0x6007D41")]
[Address(RVA = "0x20383E0", Offset = "0x2036DE0", VA = "0x1820383E0")]
public int inflateInit(int w, bool nowrap)
{
Inflate inflate = new Inflate();
long[] array = new long[1];
inflate.was = array;
this.istate = inflate;
int num = 0;
this.msg = num;
inflate.blocks = num;
inflate.nowrap = num;
inflate.nowrap = (int)((ulong)1L);
if (array <= (ulong)7L)
{
inflate.wbits = w;
Inflate inflate2 = this.istate;
int[] array2 = new int[1];
InfBlocks infBlocks;
infBlocks.bb = array2;
int[] array3 = new int[1];
infBlocks.tb = array3;
int num2 = 0;
InfCodes infCodes;
infCodes.free(num2);
infBlocks.codes = infCodes;
InfTree infTree = new InfTree();
infBlocks.inftree = infTree;
int[] array4 = new int[4320];
infBlocks.hufts = array4;
byte[] array5 = new byte[1];
infBlocks.window = array5;
infBlocks.end = (int)((uint)1);
infBlocks.checkfn = num;
infBlocks.mode = num;
infBlocks.bitk = num;
infBlocks.read = num;
if (num != 0)
{
infBlocks.check = (long)((ulong)1L);
}
inflate2.blocks = infBlocks;
int num3 = inflate.inflateReset(this);
}
return -2;
}
// Token: 0x06007D42 RID: 32066 RVA: 0x001A4B58 File Offset: 0x001A2D58
[Token(Token = "0x6007D42")]
[Address(RVA = "0x20387B0", Offset = "0x20371B0", VA = "0x1820387B0")]
public int inflate(int f)
{
Inflate inflate = this.istate;
if (inflate != 0)
{
return inflate.inflate(this, f);
}
return -2;
}
// Token: 0x06007D43 RID: 32067 RVA: 0x001A4B7C File Offset: 0x001A2D7C
[Token(Token = "0x6007D43")]
[Address(RVA = "0x20383A0", Offset = "0x2036DA0", VA = "0x1820383A0")]
public int inflateEnd()
{
Inflate inflate = this.istate;
if (inflate != 0)
{
int num = inflate.inflateEnd(this);
this.istate = (ulong)0L;
return num;
}
return -2;
}
// Token: 0x06007D44 RID: 32068 RVA: 0x001A4BAC File Offset: 0x001A2DAC
[Token(Token = "0x6007D44")]
[Address(RVA = "0x2038790", Offset = "0x2037190", VA = "0x182038790")]
public int inflateSync()
{
Inflate inflate = this.istate;
if (inflate != 0)
{
return inflate.inflateSync(this);
}
return -2;
}
// Token: 0x06007D45 RID: 32069 RVA: 0x001A4BD0 File Offset: 0x001A2DD0
[Token(Token = "0x6007D45")]
[Address(RVA = "0x2038650", Offset = "0x2037050", VA = "0x182038650")]
public int inflateSetDictionary(byte[] dictionary, int dictLength)
{
Inflate inflate = this.istate;
if (inflate != 0 && inflate.mode == 6)
{
Adler32 adler = this._adler;
int num = 0;
uint num2;
if (adler.adler32((long)num2, dictionary, num, dictLength) == this.adler)
{
Inflate inflate2 = this.istate;
this.adler = (long)num2;
uint num3 = num2 - 1U;
InfBlocks blocks = inflate2.blocks;
byte[] window = blocks.window;
int num4 = 0;
Array.Copy(dictionary, dictLength, window, num4, (int)num3);
blocks.write = (int)num3;
blocks.read = (int)num3;
this.istate.mode = (int)((ulong)7L);
}
}
throw new NullReferenceException();
}
// Token: 0x06007D46 RID: 32070 RVA: 0x001A4C70 File Offset: 0x001A2E70
[Token(Token = "0x6007D46")]
[Address(RVA = "0x2038190", Offset = "0x2036B90", VA = "0x182038190")]
public int deflateInit(int level)
{
int num = 0;
return this.deflateInit(level, 15, num != 0);
}
// Token: 0x06007D47 RID: 32071 RVA: 0x001A4C8C File Offset: 0x001A2E8C
[Token(Token = "0x6007D47")]
[Address(RVA = "0x20381B0", Offset = "0x2036BB0", VA = "0x1820381B0")]
public int deflateInit(int level, bool nowrap)
{
return this.deflateInit(level, 15, nowrap);
}
// Token: 0x06007D48 RID: 32072 RVA: 0x001A4CA4 File Offset: 0x001A2EA4
[Token(Token = "0x6007D48")]
[Address(RVA = "0x2038170", Offset = "0x2036B70", VA = "0x182038170")]
public int deflateInit(int level, int bits)
{
int num = 0;
return this.deflateInit(level, bits, num != 0);
}
// Token: 0x06007D49 RID: 32073 RVA: 0x001A4CBC File Offset: 0x001A2EBC
[Token(Token = "0x6007D49")]
[Address(RVA = "0x2037FB0", Offset = "0x20369B0", VA = "0x182037FB0")]
public int deflateInit(int level, int bits, bool nowrap)
{
Deflate deflate = new Deflate();
ZTree ztree = new ZTree();
deflate.l_desc = ztree;
ZTree ztree2 = new ZTree();
deflate.d_desc = ztree2;
ZTree ztree3 = new ZTree();
deflate.bl_desc = ztree3;
short[] array = new short[16];
deflate.bl_count = array;
int[] array2 = new int[573];
deflate.heap = array2;
byte[] array3 = new byte[573];
deflate.depth = array3;
short[] array4 = new short[1146];
deflate.dyn_ltree = array4;
short[] array5 = new short[122];
deflate.dyn_dtree = array5;
short[] array6 = new short[78];
deflate.bl_tree = array6;
this.dstate = deflate;
int num = 0;
ulong num2;
return deflate.deflateInit2(this, bits, 8, bits, (int)num2, num);
}
// Token: 0x06007D4A RID: 32074 RVA: 0x001A4D80 File Offset: 0x001A2F80
[Token(Token = "0x6007D4A")]
[Address(RVA = "0x2038260", Offset = "0x2036C60", VA = "0x182038260")]
public int deflate(int flush)
{
Deflate deflate = this.dstate;
if (deflate != 0)
{
return deflate.deflate(this, flush);
}
return -2;
}
// Token: 0x06007D4B RID: 32075 RVA: 0x001A4DA4 File Offset: 0x001A2FA4
[Token(Token = "0x6007D4B")]
[Address(RVA = "0x2037F50", Offset = "0x2036950", VA = "0x182037F50")]
public int deflateEnd()
{
Deflate deflate = this.dstate;
if (deflate == 0)
{
return -2;
}
int status = deflate.status;
int num = 0;
if (status != 42 && status != 113 && status != 666)
{
this.dstate = num;
return -2;
}
deflate.pending_buf = num;
deflate.head = num;
deflate.prev = num;
deflate.window = num;
this.dstate = num;
return -3;
}
// Token: 0x06007D4C RID: 32076 RVA: 0x001A4E0C File Offset: 0x001A300C
[Token(Token = "0x6007D4C")]
[Address(RVA = "0x20381E0", Offset = "0x2036BE0", VA = "0x1820381E0")]
public int deflateParams(int level, int strategy)
{
Deflate deflate = this.dstate;
if (deflate != 0)
{
return deflate.deflateParams(this, strategy, strategy);
}
return -2;
}
// Token: 0x06007D4D RID: 32077 RVA: 0x001A4E30 File Offset: 0x001A3030
[Token(Token = "0x6007D4D")]
[Address(RVA = "0x2038220", Offset = "0x2036C20", VA = "0x182038220")]
public int deflateSetDictionary(byte[] dictionary, int dictLength)
{
Deflate deflate = this.dstate;
if (deflate != 0)
{
return deflate.deflateSetDictionary(this, dictionary, dictLength);
}
return -2;
}
// Token: 0x06007D4E RID: 32078 RVA: 0x001A4E54 File Offset: 0x001A3054
[Token(Token = "0x6007D4E")]
[Address(RVA = "0x2038280", Offset = "0x2036C80", VA = "0x182038280")]
internal void flush_pending()
{
Deflate deflate = this.dstate;
int num = this.avail_out;
int pending;
if (deflate.pending <= num)
{
pending = deflate.pending;
}
if (pending != 0)
{
byte[] pending_buf = deflate.pending_buf;
int length = pending_buf.Length;
int pending_out = deflate.pending_out;
if (length > pending_out)
{
byte[] array = this.next_out;
int num2 = this.next_out_index;
if (array.Length > num2)
{
}
}
int num3 = this.next_out_index;
byte[] array2 = this.next_out;
Array.Copy(pending_buf, pending_out, array2, num3, pending);
Deflate deflate2 = this.dstate;
Deflate deflate3 = this.dstate;
Deflate deflate4 = this.dstate;
if (deflate4.pending == 0)
{
deflate4.pending_out = (int)((ulong)0L);
}
}
}
// Token: 0x06007D4F RID: 32079 RVA: 0x001A4F10 File Offset: 0x001A3110
[Token(Token = "0x6007D4F")]
[Address(RVA = "0x20387D0", Offset = "0x20371D0", VA = "0x1820387D0")]
internal int read_buf(byte[] buf, int start, int size)
{
int num = this.avail_in;
if (num > size)
{
num = size;
}
if (num != 0)
{
num -= num;
this.avail_in = num;
if (this.dstate.noheader == 0)
{
Adler32 adler = this._adler;
int num2 = this.next_in_index;
byte[] array = this.next_in;
long num3 = this.adler;
long num4 = adler.adler32(num3, array, num2, num);
this.adler = num4;
}
int num5 = this.next_in_index;
Array.Copy(this.next_in, num5, buf, size, num);
}
return 0;
}
// Token: 0x06007D50 RID: 32080 RVA: 0x001A4F9C File Offset: 0x001A319C
[Token(Token = "0x6007D50")]
[Address(RVA = "0x2038380", Offset = "0x2036D80", VA = "0x182038380")]
public void free()
{
int num = 0;
this.next_in = num;
this.next_out = num;
this.msg = num;
this._adler = num;
}
// Token: 0x06007D51 RID: 32081 RVA: 0x001A4FC8 File Offset: 0x001A31C8
[Token(Token = "0x6007D51")]
[Address(RVA = "0x2037EF0", Offset = "0x20368F0", VA = "0x182037EF0")]
public ZStream()
{
Adler32 adler = new Adler32();
this._adler = adler;
base..ctor();
}
// Token: 0x040059F0 RID: 23024
[Token(Token = "0x40059F0")]
private const int MAX_WBITS = 15;
// Token: 0x040059F1 RID: 23025
[Token(Token = "0x40059F1")]
private const int DEF_WBITS = 15;
// Token: 0x040059F2 RID: 23026
[Token(Token = "0x40059F2")]
private const int Z_NO_FLUSH = 0;
// Token: 0x040059F3 RID: 23027
[Token(Token = "0x40059F3")]
private const int Z_PARTIAL_FLUSH = 1;
// Token: 0x040059F4 RID: 23028
[Token(Token = "0x40059F4")]
private const int Z_SYNC_FLUSH = 2;
// Token: 0x040059F5 RID: 23029
[Token(Token = "0x40059F5")]
private const int Z_FULL_FLUSH = 3;
// Token: 0x040059F6 RID: 23030
[Token(Token = "0x40059F6")]
private const int Z_FINISH = 4;
// Token: 0x040059F7 RID: 23031
[Token(Token = "0x40059F7")]
private const int MAX_MEM_LEVEL = 9;
// Token: 0x040059F8 RID: 23032
[Token(Token = "0x40059F8")]
private const int Z_OK = 0;
// Token: 0x040059F9 RID: 23033
[Token(Token = "0x40059F9")]
private const int Z_STREAM_END = 1;
// Token: 0x040059FA RID: 23034
[Token(Token = "0x40059FA")]
private const int Z_NEED_DICT = 2;
// Token: 0x040059FB RID: 23035
[Token(Token = "0x40059FB")]
private const int Z_ERRNO = -1;
// Token: 0x040059FC RID: 23036
[Token(Token = "0x40059FC")]
private const int Z_STREAM_ERROR = -2;
// Token: 0x040059FD RID: 23037
[Token(Token = "0x40059FD")]
private const int Z_DATA_ERROR = -3;
// Token: 0x040059FE RID: 23038
[Token(Token = "0x40059FE")]
private const int Z_MEM_ERROR = -4;
// Token: 0x040059FF RID: 23039
[Token(Token = "0x40059FF")]
private const int Z_BUF_ERROR = -5;
// Token: 0x04005A00 RID: 23040
[Token(Token = "0x4005A00")]
private const int Z_VERSION_ERROR = -6;
// Token: 0x04005A01 RID: 23041
[global::Cpp2IlInjected.FieldOffset(Offset = "0x10")]
[Token(Token = "0x4005A01")]
public byte[] next_in;
// Token: 0x04005A02 RID: 23042
[global::Cpp2IlInjected.FieldOffset(Offset = "0x18")]
[Token(Token = "0x4005A02")]
public int next_in_index;
// Token: 0x04005A03 RID: 23043
[global::Cpp2IlInjected.FieldOffset(Offset = "0x1C")]
[Token(Token = "0x4005A03")]
public int avail_in;
// Token: 0x04005A04 RID: 23044
[global::Cpp2IlInjected.FieldOffset(Offset = "0x20")]
[Token(Token = "0x4005A04")]
public long total_in;
// Token: 0x04005A05 RID: 23045
[global::Cpp2IlInjected.FieldOffset(Offset = "0x28")]
[Token(Token = "0x4005A05")]
public byte[] next_out;
// Token: 0x04005A06 RID: 23046
[global::Cpp2IlInjected.FieldOffset(Offset = "0x30")]
[Token(Token = "0x4005A06")]
public int next_out_index;
// Token: 0x04005A07 RID: 23047
[global::Cpp2IlInjected.FieldOffset(Offset = "0x34")]
[Token(Token = "0x4005A07")]
public int avail_out;
// Token: 0x04005A08 RID: 23048
[global::Cpp2IlInjected.FieldOffset(Offset = "0x38")]
[Token(Token = "0x4005A08")]
public long total_out;
// Token: 0x04005A09 RID: 23049
[global::Cpp2IlInjected.FieldOffset(Offset = "0x40")]
[Token(Token = "0x4005A09")]
public string msg;
// Token: 0x04005A0A RID: 23050
[global::Cpp2IlInjected.FieldOffset(Offset = "0x48")]
[Token(Token = "0x4005A0A")]
internal Deflate dstate;
// Token: 0x04005A0B RID: 23051
[global::Cpp2IlInjected.FieldOffset(Offset = "0x50")]
[Token(Token = "0x4005A0B")]
internal Inflate istate;
// Token: 0x04005A0C RID: 23052
[global::Cpp2IlInjected.FieldOffset(Offset = "0x58")]
[Token(Token = "0x4005A0C")]
internal int data_type;
// Token: 0x04005A0D RID: 23053
[global::Cpp2IlInjected.FieldOffset(Offset = "0x60")]
[Token(Token = "0x4005A0D")]
public long adler;
// Token: 0x04005A0E RID: 23054
[global::Cpp2IlInjected.FieldOffset(Offset = "0x68")]
[Token(Token = "0x4005A0E")]
internal Adler32 _adler;
}
}
@@ -0,0 +1,399 @@
using System;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib
{
// Token: 0x0200135A RID: 4954
[Token(Token = "0x200135A")]
[StructLayout(3)]
internal sealed class ZTree
{
// Token: 0x06007D52 RID: 32082 RVA: 0x001A4FE8 File Offset: 0x001A31E8
[Token(Token = "0x6007D52")]
[Address(RVA = "0x2039140", Offset = "0x2037B40", VA = "0x182039140")]
internal static int d_code(int dist)
{
if (dist < 256)
{
byte[] dist_code = ZTree._dist_code;
}
byte[] dist_code2 = ZTree._dist_code;
throw new NullReferenceException();
}
// Token: 0x06007D53 RID: 32083 RVA: 0x001A5010 File Offset: 0x001A3210
[Token(Token = "0x6007D53")]
[Address(RVA = "0x2039230", Offset = "0x2037C30", VA = "0x182039230")]
internal void gen_bitlen(Deflate s)
{
StaticTree staticTree = this.stat_desc;
short[] array = this.dyn_tree;
short[] static_tree = staticTree.static_tree;
int i = 0;
int[] extra_bits = staticTree.extra_bits;
int extra_base = staticTree.extra_base;
int num = staticTree.max_length;
short[] bl_count = s.bl_count;
i++;
bl_count[0] = (short)i;
while (i <= 15)
{
}
int[] heap = s.heap;
int num2 = s.heap_max;
num2++;
array[0] = (short)i;
int num3 = s.heap_max;
num3++;
if (num3 < 573)
{
int[] heap2 = s.heap;
int num4 = array.Length;
num2 = num3;
int num5 = heap2[num2];
num2 += num2;
num2++;
num2++;
num4 = num;
if (num2 <= num)
{
num4 = num2;
}
array[0] = (short)num4;
short[] bl_count2 = s.bl_count;
num5 -= extra_base;
int num6 = extra_bits[num5];
int num7 = num5 * num5;
if (static_tree != 0)
{
num7 += num6;
}
num3++;
if (i != 0)
{
short[] bl_count3 = s.bl_count;
int num8 = num - 1;
short num9 = bl_count3[num8];
bl_count3[0] = num9;
short[] bl_count4 = s.bl_count;
num8++;
short[] bl_count5 = s.bl_count;
if (num != 0)
{
short[] bl_count6 = s.bl_count;
if (num8 != 0)
{
int[] heap3 = s.heap;
num = num3;
int num10 = heap3[num];
int num11 = array.Length;
num10 += num10;
int num12 = num10 + 1;
if (num4 != num)
{
num11 = num;
num11 -= num4;
array[0] = (short)num;
}
while (num8 != 0)
{
}
}
while (num8 != 0)
{
}
}
}
}
}
// Token: 0x06007D54 RID: 32084 RVA: 0x001A51C8 File Offset: 0x001A33C8
[Token(Token = "0x6007D54")]
[Address(RVA = "0x2038A80", Offset = "0x2037480", VA = "0x182038A80")]
internal void build_tree(Deflate s)
{
StaticTree staticTree = this.stat_desc;
short[] array = this.dyn_tree;
short[] static_tree = staticTree.static_tree;
int num = staticTree.elems;
int num2 = 0;
s.heap_max = (int)((ulong)573L);
s.heap_len = num2;
if (num > 0)
{
int length = array.Length;
if ("{il2cpp array field local3->}" == num2)
{
num2++;
array[0] = (short)num2;
}
int heap_len = s.heap_len;
int[] heap = s.heap;
int num3 = heap_len + 1;
s.heap_len = num3;
int num4 = heap_len + 1;
heap[0] = num2;
byte[] depth = s.depth;
num2++;
num2 += 2;
}
int num5 = s.heap_len;
if (num5 < 2)
{
int[] heap2 = s.heap;
int num6 = num5 + 1;
s.heap_len = num6;
if (num2 < 2)
{
}
num5++;
heap2[0] = num2;
uint num7;
array[0] = (short)num7;
byte[] depth2 = s.depth;
while (static_tree == 0)
{
}
}
this.max_code = 1;
int i = s.heap_len;
i -= 0;
s.pqdownheap(array, i);
while (i >= 1)
{
}
int[] heap3 = s.heap;
int heap_len2 = s.heap_len;
int num8 = heap3[0];
int num9 = heap_len2 - 1;
s.heap_len = num9;
int length2 = heap3.Length;
int num10 = heap3[heap_len2];
heap3[0] = num10;
uint num11;
s.pqdownheap(array, (int)num11);
int[] heap4 = s.heap;
int heap_max = s.heap_max;
int num12 = heap4[0];
int num13 = heap_max - 1;
s.heap_max = num13;
int num14 = heap_max - 1;
heap4[0] = num8;
int heap_max2 = s.heap_max;
int[] heap5 = s.heap;
int num15 = heap_max2 - 1;
s.heap_max = num15;
int num16 = heap_max2 - 1;
heap5[0] = num12;
int length3 = array.Length;
short num17 = array[heap5];
array[0] = num17;
int length4 = s.depth.Length;
byte b2;
byte b3;
byte b = Math.Max(b2, b3);
array[0] = (short)num;
int num18 = heap_max2 + 1;
array[0] = (short)num;
i += 2;
int[] heap6 = s.heap;
num++;
heap6[0] = num;
s.pqdownheap(array, 1);
while (s.heap_len >= 2)
{
}
int heap_max3 = s.heap_max;
int[] heap7 = s.heap;
int num19 = heap_max3 - 1;
s.heap_max = num19;
int num20 = s.heap[0];
int num21 = heap_max3 - 1;
heap7[0] = num20;
short[] bl_count = s.bl_count;
int num22;
ZTree.gen_codes(array, num22, bl_count);
}
// Token: 0x06007D55 RID: 32085 RVA: 0x001A5468 File Offset: 0x001A3668
[Token(Token = "0x6007D55")]
[Address(RVA = "0x20396E0", Offset = "0x20380E0", VA = "0x1820396E0")]
internal static void gen_codes(short[] tree, int max_code, short[] bl_count)
{
short[] array = new short[16];
int i = 0;
i += i;
array[0] = (short)i;
while (1UL <= (ulong)15L)
{
}
if (bl_count != 0)
{
short num = array[bl_count] + 1;
array[0] = num;
int num2 = 0;
num2 += num2;
tree[0] = (short)num2;
}
i++;
i += 2;
while (i <= max_code)
{
}
}
// Token: 0x06007D56 RID: 32086 RVA: 0x001A54D0 File Offset: 0x001A36D0
[Token(Token = "0x6007D56")]
[Address(RVA = "0xE33D40", Offset = "0xE32740", VA = "0x180E33D40")]
internal static int bi_reverse(int code, int len)
{
int num = 0;
int num2 = len - 1;
return num + num;
}
// Token: 0x06007D57 RID: 32087 RVA: 0x001A54E8 File Offset: 0x001A36E8
[Token(Token = "0x6007D57")]
[Address(RVA = "0x3C1670", Offset = "0x3C0070", VA = "0x1803C1670")]
public ZTree()
{
}
// Token: 0x06007D58 RID: 32088 RVA: 0x001A54FC File Offset: 0x001A36FC
// Note: this type is marked as 'beforefieldinit'.
[Token(Token = "0x6007D58")]
[Address(RVA = "0x2038890", Offset = "0x2037290", VA = "0x182038890")]
static ZTree()
{
int[] array = new int[29];
RuntimeHelpers.InitializeArray(array, fieldof(<PrivateImplementationDetails>.67C0E784F3654B008A81E2988588CF4956CCF3DA).FieldHandle);
ZTree.extra_lbits = array;
int[] array2 = new int[30];
RuntimeHelpers.InitializeArray(array2, fieldof(<PrivateImplementationDetails>.79D521E6E3E55103005E9CC3FA43B3174FAF090F).FieldHandle);
ZTree.extra_dbits = array2;
int[] array3 = new int[19];
RuntimeHelpers.InitializeArray(array3, fieldof(<PrivateImplementationDetails>.8457F44B035C9073EE2D1F132D0A8AF5631DCDC8).FieldHandle);
ZTree.extra_blbits = array3;
byte[] array4 = new byte[19];
RuntimeHelpers.InitializeArray(array4, fieldof(<PrivateImplementationDetails>.9F8365E9D6C62D3B47026EC465B05A7B5526B5CD).FieldHandle);
ZTree.bl_order = array4;
byte[] array5 = new byte[512];
RuntimeHelpers.InitializeArray(array5, fieldof(<PrivateImplementationDetails>.3544182260B8A15D332367E48C7530FC0E901FD3).FieldHandle);
ZTree._dist_code = array5;
byte[] array6 = new byte[256];
RuntimeHelpers.InitializeArray(array6, fieldof(<PrivateImplementationDetails>.6A316789EED01119DE92841832701A40AB0CABD6).FieldHandle);
ZTree._length_code = array6;
int[] array7 = new int[29];
RuntimeHelpers.InitializeArray(array7, fieldof(<PrivateImplementationDetails>.2E868D9F2085DF93F11F58DE61C05E0D8A8F4A71).FieldHandle);
ZTree.base_length = array7;
int[] array8 = new int[30];
RuntimeHelpers.InitializeArray(array8, fieldof(<PrivateImplementationDetails>.5581A70566F03554D8048EDBFC6E6B399AF9BCB1).FieldHandle);
ZTree.base_dist = array8;
}
// Token: 0x04005A0F RID: 23055
[Token(Token = "0x4005A0F")]
private const int MAX_BITS = 15;
// Token: 0x04005A10 RID: 23056
[Token(Token = "0x4005A10")]
private const int BL_CODES = 19;
// Token: 0x04005A11 RID: 23057
[Token(Token = "0x4005A11")]
private const int D_CODES = 30;
// Token: 0x04005A12 RID: 23058
[Token(Token = "0x4005A12")]
private const int LITERALS = 256;
// Token: 0x04005A13 RID: 23059
[Token(Token = "0x4005A13")]
private const int LENGTH_CODES = 29;
// Token: 0x04005A14 RID: 23060
[Token(Token = "0x4005A14")]
private const int L_CODES = 286;
// Token: 0x04005A15 RID: 23061
[Token(Token = "0x4005A15")]
private const int HEAP_SIZE = 573;
// Token: 0x04005A16 RID: 23062
[Token(Token = "0x4005A16")]
internal const int MAX_BL_BITS = 7;
// Token: 0x04005A17 RID: 23063
[Token(Token = "0x4005A17")]
internal const int END_BLOCK = 256;
// Token: 0x04005A18 RID: 23064
[Token(Token = "0x4005A18")]
internal const int REP_3_6 = 16;
// Token: 0x04005A19 RID: 23065
[Token(Token = "0x4005A19")]
internal const int REPZ_3_10 = 17;
// Token: 0x04005A1A RID: 23066
[Token(Token = "0x4005A1A")]
internal const int REPZ_11_138 = 18;
// Token: 0x04005A1B RID: 23067
[Token(Token = "0x4005A1B")]
internal static readonly int[] extra_lbits;
// Token: 0x04005A1C RID: 23068
[Token(Token = "0x4005A1C")]
internal static readonly int[] extra_dbits;
// Token: 0x04005A1D RID: 23069
[Token(Token = "0x4005A1D")]
internal static readonly int[] extra_blbits;
// Token: 0x04005A1E RID: 23070
[Token(Token = "0x4005A1E")]
internal static readonly byte[] bl_order;
// Token: 0x04005A1F RID: 23071
[Token(Token = "0x4005A1F")]
internal const int Buf_size = 16;
// Token: 0x04005A20 RID: 23072
[Token(Token = "0x4005A20")]
internal const int DIST_CODE_LEN = 512;
// Token: 0x04005A21 RID: 23073
[Token(Token = "0x4005A21")]
internal static readonly byte[] _dist_code;
// Token: 0x04005A22 RID: 23074
[Token(Token = "0x4005A22")]
internal static readonly byte[] _length_code;
// Token: 0x04005A23 RID: 23075
[Token(Token = "0x4005A23")]
internal static readonly int[] base_length;
// Token: 0x04005A24 RID: 23076
[Token(Token = "0x4005A24")]
internal static readonly int[] base_dist;
// Token: 0x04005A25 RID: 23077
[global::Cpp2IlInjected.FieldOffset(Offset = "0x10")]
[Token(Token = "0x4005A25")]
internal short[] dyn_tree;
// Token: 0x04005A26 RID: 23078
[global::Cpp2IlInjected.FieldOffset(Offset = "0x18")]
[Token(Token = "0x4005A26")]
internal int max_code;
// Token: 0x04005A27 RID: 23079
[global::Cpp2IlInjected.FieldOffset(Offset = "0x20")]
[Token(Token = "0x4005A27")]
internal StaticTree stat_desc;
}
}