This commit is contained in:
niko
2026-04-10 22:50:51 +02:00
parent 6d1607d5a2
commit f18d448581
17033 changed files with 2863270 additions and 0 deletions
@@ -0,0 +1,67 @@
using System;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib
{
// Token: 0x02001929 RID: 6441
[Token(Token = "0x2001929")]
internal sealed class Adler32
{
// Token: 0x06009878 RID: 39032 RVA: 0x001F6504 File Offset: 0x001F4704
[Token(Token = "0x6009878")]
[Address(RVA = "0x18D1BE0", Offset = "0x18D09E0", VA = "0x1818D1BE0")]
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: 0x06009879 RID: 39033 RVA: 0x001F6608 File Offset: 0x001F4808
[Token(Token = "0x6009879")]
[Address(RVA = "0x3F5100", Offset = "0x3F3F00", VA = "0x1803F5100")]
public Adler32()
{
}
// Token: 0x040066EA RID: 26346
[Token(Token = "0x40066EA")]
private const int BASE = 65521;
// Token: 0x040066EB RID: 26347
[Token(Token = "0x40066EB")]
private const int NMAX = 5552;
}
}
@@ -0,0 +1,2192 @@
using System;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib
{
// Token: 0x0200192A RID: 6442
[Token(Token = "0x200192A")]
public sealed class Deflate
{
// Token: 0x0600987A RID: 39034 RVA: 0x001F661C File Offset: 0x001F481C
[Token(Token = "0x600987A")]
[Address(RVA = "0x18D78E0", Offset = "0x18D66E0", VA = "0x1818D78E0")]
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: 0x0600987B RID: 39035 RVA: 0x001F69C8 File Offset: 0x001F4BC8
[Token(Token = "0x600987B")]
[Address(RVA = "0x18D82E0", Offset = "0x18D70E0", VA = "0x1818D82E0")]
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: 0x0600987C RID: 39036 RVA: 0x001F6A70 File Offset: 0x001F4C70
[Token(Token = "0x600987C")]
[Address(RVA = "0x18DB6C0", Offset = "0x18DA4C0", VA = "0x1818DB6C0")]
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: 0x0600987D RID: 39037 RVA: 0x001F6B7C File Offset: 0x001F4D7C
[Token(Token = "0x600987D")]
[Address(RVA = "0x18DCC00", Offset = "0x18DBA00", VA = "0x1818DCC00")]
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: 0x0600987E RID: 39038 RVA: 0x001F6C34 File Offset: 0x001F4E34
[Token(Token = "0x600987E")]
[Address(RVA = "0x18DB590", Offset = "0x18DA390", VA = "0x1818DB590")]
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: 0x0600987F RID: 39039 RVA: 0x001F6CAC File Offset: 0x001F4EAC
[Token(Token = "0x600987F")]
[Address(RVA = "0x18DBF10", Offset = "0x18DAD10", VA = "0x1818DBF10")]
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: 0x06009880 RID: 39040 RVA: 0x001F6D50 File Offset: 0x001F4F50
[Token(Token = "0x6009880")]
[Address(RVA = "0x18DCB40", Offset = "0x18DB940", VA = "0x1818DCB40")]
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: 0x06009881 RID: 39041 RVA: 0x001F6D80 File Offset: 0x001F4F80
[Token(Token = "0x6009881")]
[Address(RVA = "0x18DC300", Offset = "0x18DB100", VA = "0x1818DC300")]
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: 0x06009882 RID: 39042 RVA: 0x001F6DF0 File Offset: 0x001F4FF0
[Token(Token = "0x6009882")]
[Address(RVA = "0x18D9080", Offset = "0x18D7E80", VA = "0x1818D9080")]
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: 0x06009883 RID: 39043 RVA: 0x001F6E6C File Offset: 0x001F506C
[Token(Token = "0x6009883")]
[Address(RVA = "0x18DC560", Offset = "0x18DB360", VA = "0x1818DC560")]
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: 0x06009884 RID: 39044 RVA: 0x001F6ED8 File Offset: 0x001F50D8
[Token(Token = "0x6009884")]
[Address(RVA = "0x18DC840", Offset = "0x18DB640", VA = "0x1818DC840")]
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: 0x06009885 RID: 39045 RVA: 0x001F6F7C File Offset: 0x001F517C
[Token(Token = "0x6009885")]
[Address(RVA = "0x18DC1F0", Offset = "0x18DAFF0", VA = "0x1818DC1F0")]
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: 0x06009886 RID: 39046 RVA: 0x001F6FA4 File Offset: 0x001F51A4
[Token(Token = "0x6009886")]
[Address(RVA = "0x18DC240", Offset = "0x18DB040", VA = "0x1818DC240")]
internal void put_byte(byte c)
{
int num = this.pending;
byte[] array = this.pending_buf;
int num2 = num + 1;
this.pending = num2;
}
// Token: 0x06009887 RID: 39047 RVA: 0x001F6FD0 File Offset: 0x001F51D0
[Token(Token = "0x6009887")]
[Address(RVA = "0x18DC280", Offset = "0x18DB080", VA = "0x1818DC280")]
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: 0x06009888 RID: 39048 RVA: 0x001F7018 File Offset: 0x001F5218
[Token(Token = "0x6009888")]
[Address(RVA = "0x18DC170", Offset = "0x18DAF70", VA = "0x1818DC170")]
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: 0x06009889 RID: 39049 RVA: 0x001F7060 File Offset: 0x001F5260
[Token(Token = "0x6009889")]
[Address(RVA = "0x18DC7D0", Offset = "0x18DB5D0", VA = "0x1818DC7D0")]
internal void send_code(int c, short[] tree)
{
int length = tree.Length;
short num;
short num2;
this.send_bits((int)num, (int)num2);
}
// Token: 0x0600988A RID: 39050 RVA: 0x001F7084 File Offset: 0x001F5284
[Token(Token = "0x600988A")]
[Address(RVA = "0x18DC6E0", Offset = "0x18DB4E0", VA = "0x1818DC6E0")]
internal void send_bits(int val, int length)
{
int num = this.bi_valid;
uint num2;
num2 -= (uint)length;
this.bi_buf = (uint)val;
}
// Token: 0x0600988B RID: 39051 RVA: 0x001F7110 File Offset: 0x001F5310
[Token(Token = "0x600988B")]
[Address(RVA = "0x18D8410", Offset = "0x18D7210", VA = "0x1818D8410")]
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: 0x0600988C RID: 39052 RVA: 0x001F71C0 File Offset: 0x001F53C0
[Token(Token = "0x600988C")]
[Address(RVA = "0x18D8B70", Offset = "0x18D7970", VA = "0x1818D8B70")]
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: 0x0600988D RID: 39053 RVA: 0x001F72B4 File Offset: 0x001F54B4
[Token(Token = "0x600988D")]
[Address(RVA = "0x18D91E0", Offset = "0x18D7FE0", VA = "0x1818D91E0")]
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: 0x0600988E RID: 39054 RVA: 0x001F73E8 File Offset: 0x001F55E8
[Token(Token = "0x600988E")]
[Address(RVA = "0x18DCA40", Offset = "0x18DB840", VA = "0x1818DCA40")]
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: 0x0600988F RID: 39055 RVA: 0x001F7444 File Offset: 0x001F5644
[Token(Token = "0x600988F")]
[Address(RVA = "0x18D8EB0", Offset = "0x18D7CB0", VA = "0x1818D8EB0")]
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: 0x06009890 RID: 39056 RVA: 0x001F74E0 File Offset: 0x001F56E0
[Token(Token = "0x6009890")]
[Address(RVA = "0x18D8FA0", Offset = "0x18D7DA0", VA = "0x1818D8FA0")]
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: 0x06009891 RID: 39057 RVA: 0x001F7580 File Offset: 0x001F5780
[Token(Token = "0x6009891")]
[Address(RVA = "0x18D9690", Offset = "0x18D8490", VA = "0x1818D9690")]
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: 0x06009892 RID: 39058 RVA: 0x001F75D0 File Offset: 0x001F57D0
[Token(Token = "0x6009892")]
[Address(RVA = "0x18DB530", Offset = "0x18DA330", VA = "0x1818DB530")]
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: 0x06009893 RID: 39059 RVA: 0x001F761C File Offset: 0x001F581C
[Token(Token = "0x6009893")]
[Address(RVA = "0x18DB120", Offset = "0x18D9F20", VA = "0x1818DB120")]
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: 0x06009894 RID: 39060 RVA: 0x001F7758 File Offset: 0x001F5958
[Token(Token = "0x6009894")]
[Address(RVA = "0x18D8AD0", Offset = "0x18D78D0", VA = "0x1818D8AD0")]
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: 0x06009895 RID: 39061 RVA: 0x001F77B0 File Offset: 0x001F59B0
[Token(Token = "0x6009895")]
[Address(RVA = "0x18D85B0", Offset = "0x18D73B0", VA = "0x1818D85B0")]
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: 0x06009896 RID: 39062 RVA: 0x001F7974 File Offset: 0x001F5B74
[Token(Token = "0x6009896")]
[Address(RVA = "0x18DB2D0", Offset = "0x18DA0D0", VA = "0x1818DB2D0")]
internal void fill_window()
{
int num2;
int num18;
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;
if (zstream.avail_in == num2)
{
break;
}
int num15 = this.lookahead;
byte[] array4 = this.window;
uint num17;
int num16 = zstream.read_buf(array4, num15, (int)num17);
num18 = this.lookahead;
byte[] array5 = this.window;
num13 = this.strstart;
byte b;
this.ins_h = (int)b;
num13++;
this.ins_h = (int)b;
}
while (num18 < 262 && this.strm.avail_in != num2);
}
// Token: 0x06009897 RID: 39063 RVA: 0x001F7AE4 File Offset: 0x001F5CE4
[Token(Token = "0x6009897")]
[Address(RVA = "0x18DA1B0", Offset = "0x18D8FB0", VA = "0x1818DA1B0")]
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: 0x06009898 RID: 39064 RVA: 0x001F7DCC File Offset: 0x001F5FCC
[Token(Token = "0x6009898")]
[Address(RVA = "0x18DABA0", Offset = "0x18D99A0", VA = "0x1818DABA0")]
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: 0x06009899 RID: 39065 RVA: 0x001F80A0 File Offset: 0x001F62A0
[Token(Token = "0x6009899")]
[Address(RVA = "0x18DB8F0", Offset = "0x18DA6F0", VA = "0x1818DB8F0")]
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: 0x0600989A RID: 39066 RVA: 0x001F81CC File Offset: 0x001F63CC
[Token(Token = "0x600989A")]
[Address(RVA = "0x18D9AE0", Offset = "0x18D88E0", VA = "0x1818D9AE0")]
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: 0x0600989B RID: 39067 RVA: 0x001F81E8 File Offset: 0x001F63E8
[Token(Token = "0x600989B")]
[Address(RVA = "0x18D9AB0", Offset = "0x18D88B0", VA = "0x1818D9AB0")]
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: 0x0600989C RID: 39068 RVA: 0x001F8204 File Offset: 0x001F6404
[Token(Token = "0x600989C")]
[Address(RVA = "0x18D9760", Offset = "0x18D8560", VA = "0x1818D9760")]
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: 0x0600989D RID: 39069 RVA: 0x001F8404 File Offset: 0x001F6604
[Token(Token = "0x600989D")]
[Address(RVA = "0x18D9DD0", Offset = "0x18D8BD0", VA = "0x1818D9DD0")]
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: 0x0600989E RID: 39070 RVA: 0x001F8514 File Offset: 0x001F6714
[Token(Token = "0x600989E")]
[Address(RVA = "0x18D9720", Offset = "0x18D8520", VA = "0x1818D9720")]
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: 0x0600989F RID: 39071 RVA: 0x001F8560 File Offset: 0x001F6760
[Token(Token = "0x600989F")]
[Address(RVA = "0x18D9B10", Offset = "0x18D8910", VA = "0x1818D9B10")]
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)
{
int num3 = strm.deflate(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: 0x060098A0 RID: 39072 RVA: 0x001F8658 File Offset: 0x001F6858
[Token(Token = "0x60098A0")]
[Address(RVA = "0x18D9F70", Offset = "0x18D8D70", VA = "0x1818D9F70")]
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: 0x060098A1 RID: 39073 RVA: 0x001F8768 File Offset: 0x001F6968
[Token(Token = "0x60098A1")]
[Address(RVA = "0x18DA6B0", Offset = "0x18D94B0", VA = "0x1818DA6B0")]
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: 0x040066EC RID: 26348
[Token(Token = "0x40066EC")]
private const int MAX_MEM_LEVEL = 9;
// Token: 0x040066ED RID: 26349
[Token(Token = "0x40066ED")]
private const int Z_DEFAULT_COMPRESSION = -1;
// Token: 0x040066EE RID: 26350
[Token(Token = "0x40066EE")]
private const int MAX_WBITS = 15;
// Token: 0x040066EF RID: 26351
[Token(Token = "0x40066EF")]
private const int DEF_MEM_LEVEL = 8;
// Token: 0x040066F0 RID: 26352
[Token(Token = "0x40066F0")]
private const int STORED = 0;
// Token: 0x040066F1 RID: 26353
[Token(Token = "0x40066F1")]
private const int FAST = 1;
// Token: 0x040066F2 RID: 26354
[Token(Token = "0x40066F2")]
private const int SLOW = 2;
// Token: 0x040066F3 RID: 26355
[Token(Token = "0x40066F3")]
private static readonly Deflate.Config[] config_table;
// Token: 0x040066F4 RID: 26356
[Token(Token = "0x40066F4")]
private static readonly string[] z_errmsg;
// Token: 0x040066F5 RID: 26357
[Token(Token = "0x40066F5")]
private const int NeedMore = 0;
// Token: 0x040066F6 RID: 26358
[Token(Token = "0x40066F6")]
private const int BlockDone = 1;
// Token: 0x040066F7 RID: 26359
[Token(Token = "0x40066F7")]
private const int FinishStarted = 2;
// Token: 0x040066F8 RID: 26360
[Token(Token = "0x40066F8")]
private const int FinishDone = 3;
// Token: 0x040066F9 RID: 26361
[Token(Token = "0x40066F9")]
private const int PRESET_DICT = 32;
// Token: 0x040066FA RID: 26362
[Token(Token = "0x40066FA")]
private const int Z_FILTERED = 1;
// Token: 0x040066FB RID: 26363
[Token(Token = "0x40066FB")]
private const int Z_HUFFMAN_ONLY = 2;
// Token: 0x040066FC RID: 26364
[Token(Token = "0x40066FC")]
private const int Z_DEFAULT_STRATEGY = 0;
// Token: 0x040066FD RID: 26365
[Token(Token = "0x40066FD")]
private const int Z_NO_FLUSH = 0;
// Token: 0x040066FE RID: 26366
[Token(Token = "0x40066FE")]
private const int Z_PARTIAL_FLUSH = 1;
// Token: 0x040066FF RID: 26367
[Token(Token = "0x40066FF")]
private const int Z_SYNC_FLUSH = 2;
// Token: 0x04006700 RID: 26368
[Token(Token = "0x4006700")]
private const int Z_FULL_FLUSH = 3;
// Token: 0x04006701 RID: 26369
[Token(Token = "0x4006701")]
private const int Z_FINISH = 4;
// Token: 0x04006702 RID: 26370
[Token(Token = "0x4006702")]
private const int Z_OK = 0;
// Token: 0x04006703 RID: 26371
[Token(Token = "0x4006703")]
private const int Z_STREAM_END = 1;
// Token: 0x04006704 RID: 26372
[Token(Token = "0x4006704")]
private const int Z_NEED_DICT = 2;
// Token: 0x04006705 RID: 26373
[Token(Token = "0x4006705")]
private const int Z_ERRNO = -1;
// Token: 0x04006706 RID: 26374
[Token(Token = "0x4006706")]
private const int Z_STREAM_ERROR = -2;
// Token: 0x04006707 RID: 26375
[Token(Token = "0x4006707")]
private const int Z_DATA_ERROR = -3;
// Token: 0x04006708 RID: 26376
[Token(Token = "0x4006708")]
private const int Z_MEM_ERROR = -4;
// Token: 0x04006709 RID: 26377
[Token(Token = "0x4006709")]
private const int Z_BUF_ERROR = -5;
// Token: 0x0400670A RID: 26378
[Token(Token = "0x400670A")]
private const int Z_VERSION_ERROR = -6;
// Token: 0x0400670B RID: 26379
[Token(Token = "0x400670B")]
private const int INIT_STATE = 42;
// Token: 0x0400670C RID: 26380
[Token(Token = "0x400670C")]
private const int BUSY_STATE = 113;
// Token: 0x0400670D RID: 26381
[Token(Token = "0x400670D")]
private const int FINISH_STATE = 666;
// Token: 0x0400670E RID: 26382
[Token(Token = "0x400670E")]
private const int Z_DEFLATED = 8;
// Token: 0x0400670F RID: 26383
[Token(Token = "0x400670F")]
private const int STORED_BLOCK = 0;
// Token: 0x04006710 RID: 26384
[Token(Token = "0x4006710")]
private const int STATIC_TREES = 1;
// Token: 0x04006711 RID: 26385
[Token(Token = "0x4006711")]
private const int DYN_TREES = 2;
// Token: 0x04006712 RID: 26386
[Token(Token = "0x4006712")]
private const int Z_BINARY = 0;
// Token: 0x04006713 RID: 26387
[Token(Token = "0x4006713")]
private const int Z_ASCII = 1;
// Token: 0x04006714 RID: 26388
[Token(Token = "0x4006714")]
private const int Z_UNKNOWN = 2;
// Token: 0x04006715 RID: 26389
[Token(Token = "0x4006715")]
private const int Buf_size = 16;
// Token: 0x04006716 RID: 26390
[Token(Token = "0x4006716")]
private const int REP_3_6 = 16;
// Token: 0x04006717 RID: 26391
[Token(Token = "0x4006717")]
private const int REPZ_3_10 = 17;
// Token: 0x04006718 RID: 26392
[Token(Token = "0x4006718")]
private const int REPZ_11_138 = 18;
// Token: 0x04006719 RID: 26393
[Token(Token = "0x4006719")]
private const int MIN_MATCH = 3;
// Token: 0x0400671A RID: 26394
[Token(Token = "0x400671A")]
private const int MAX_MATCH = 258;
// Token: 0x0400671B RID: 26395
[Token(Token = "0x400671B")]
private const int MIN_LOOKAHEAD = 262;
// Token: 0x0400671C RID: 26396
[Token(Token = "0x400671C")]
private const int MAX_BITS = 15;
// Token: 0x0400671D RID: 26397
[Token(Token = "0x400671D")]
private const int D_CODES = 30;
// Token: 0x0400671E RID: 26398
[Token(Token = "0x400671E")]
private const int BL_CODES = 19;
// Token: 0x0400671F RID: 26399
[Token(Token = "0x400671F")]
private const int LENGTH_CODES = 29;
// Token: 0x04006720 RID: 26400
[Token(Token = "0x4006720")]
private const int LITERALS = 256;
// Token: 0x04006721 RID: 26401
[Token(Token = "0x4006721")]
private const int L_CODES = 286;
// Token: 0x04006722 RID: 26402
[Token(Token = "0x4006722")]
private const int HEAP_SIZE = 573;
// Token: 0x04006723 RID: 26403
[Token(Token = "0x4006723")]
private const int END_BLOCK = 256;
// Token: 0x04006724 RID: 26404
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x4006724")]
internal ZStream strm;
// Token: 0x04006725 RID: 26405
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x4006725")]
internal int status;
// Token: 0x04006726 RID: 26406
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x4006726")]
internal byte[] pending_buf;
// Token: 0x04006727 RID: 26407
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x4006727")]
internal int pending_buf_size;
// Token: 0x04006728 RID: 26408
[FieldOffset(Offset = "0x2C")]
[Token(Token = "0x4006728")]
internal int pending_out;
// Token: 0x04006729 RID: 26409
[FieldOffset(Offset = "0x30")]
[Token(Token = "0x4006729")]
internal int pending;
// Token: 0x0400672A RID: 26410
[FieldOffset(Offset = "0x34")]
[Token(Token = "0x400672A")]
internal int noheader;
// Token: 0x0400672B RID: 26411
[FieldOffset(Offset = "0x38")]
[Token(Token = "0x400672B")]
internal byte data_type;
// Token: 0x0400672C RID: 26412
[FieldOffset(Offset = "0x39")]
[Token(Token = "0x400672C")]
internal byte method;
// Token: 0x0400672D RID: 26413
[FieldOffset(Offset = "0x3C")]
[Token(Token = "0x400672D")]
internal int last_flush;
// Token: 0x0400672E RID: 26414
[FieldOffset(Offset = "0x40")]
[Token(Token = "0x400672E")]
internal int w_size;
// Token: 0x0400672F RID: 26415
[FieldOffset(Offset = "0x44")]
[Token(Token = "0x400672F")]
internal int w_bits;
// Token: 0x04006730 RID: 26416
[FieldOffset(Offset = "0x48")]
[Token(Token = "0x4006730")]
internal int w_mask;
// Token: 0x04006731 RID: 26417
[FieldOffset(Offset = "0x50")]
[Token(Token = "0x4006731")]
internal byte[] window;
// Token: 0x04006732 RID: 26418
[FieldOffset(Offset = "0x58")]
[Token(Token = "0x4006732")]
internal int window_size;
// Token: 0x04006733 RID: 26419
[FieldOffset(Offset = "0x60")]
[Token(Token = "0x4006733")]
internal short[] prev;
// Token: 0x04006734 RID: 26420
[FieldOffset(Offset = "0x68")]
[Token(Token = "0x4006734")]
internal short[] head;
// Token: 0x04006735 RID: 26421
[FieldOffset(Offset = "0x70")]
[Token(Token = "0x4006735")]
internal int ins_h;
// Token: 0x04006736 RID: 26422
[FieldOffset(Offset = "0x74")]
[Token(Token = "0x4006736")]
internal int hash_size;
// Token: 0x04006737 RID: 26423
[FieldOffset(Offset = "0x78")]
[Token(Token = "0x4006737")]
internal int hash_bits;
// Token: 0x04006738 RID: 26424
[FieldOffset(Offset = "0x7C")]
[Token(Token = "0x4006738")]
internal int hash_mask;
// Token: 0x04006739 RID: 26425
[FieldOffset(Offset = "0x80")]
[Token(Token = "0x4006739")]
internal int hash_shift;
// Token: 0x0400673A RID: 26426
[FieldOffset(Offset = "0x84")]
[Token(Token = "0x400673A")]
internal int block_start;
// Token: 0x0400673B RID: 26427
[FieldOffset(Offset = "0x88")]
[Token(Token = "0x400673B")]
internal int match_length;
// Token: 0x0400673C RID: 26428
[FieldOffset(Offset = "0x8C")]
[Token(Token = "0x400673C")]
internal int prev_match;
// Token: 0x0400673D RID: 26429
[FieldOffset(Offset = "0x90")]
[Token(Token = "0x400673D")]
internal int match_available;
// Token: 0x0400673E RID: 26430
[FieldOffset(Offset = "0x94")]
[Token(Token = "0x400673E")]
internal int strstart;
// Token: 0x0400673F RID: 26431
[FieldOffset(Offset = "0x98")]
[Token(Token = "0x400673F")]
internal int match_start;
// Token: 0x04006740 RID: 26432
[FieldOffset(Offset = "0x9C")]
[Token(Token = "0x4006740")]
internal int lookahead;
// Token: 0x04006741 RID: 26433
[FieldOffset(Offset = "0xA0")]
[Token(Token = "0x4006741")]
internal int prev_length;
// Token: 0x04006742 RID: 26434
[FieldOffset(Offset = "0xA4")]
[Token(Token = "0x4006742")]
internal int max_chain_length;
// Token: 0x04006743 RID: 26435
[FieldOffset(Offset = "0xA8")]
[Token(Token = "0x4006743")]
internal int max_lazy_match;
// Token: 0x04006744 RID: 26436
[FieldOffset(Offset = "0xAC")]
[Token(Token = "0x4006744")]
internal int level;
// Token: 0x04006745 RID: 26437
[FieldOffset(Offset = "0xB0")]
[Token(Token = "0x4006745")]
internal int strategy;
// Token: 0x04006746 RID: 26438
[FieldOffset(Offset = "0xB4")]
[Token(Token = "0x4006746")]
internal int good_match;
// Token: 0x04006747 RID: 26439
[FieldOffset(Offset = "0xB8")]
[Token(Token = "0x4006747")]
internal int nice_match;
// Token: 0x04006748 RID: 26440
[FieldOffset(Offset = "0xC0")]
[Token(Token = "0x4006748")]
internal short[] dyn_ltree;
// Token: 0x04006749 RID: 26441
[FieldOffset(Offset = "0xC8")]
[Token(Token = "0x4006749")]
internal short[] dyn_dtree;
// Token: 0x0400674A RID: 26442
[FieldOffset(Offset = "0xD0")]
[Token(Token = "0x400674A")]
internal short[] bl_tree;
// Token: 0x0400674B RID: 26443
[FieldOffset(Offset = "0xD8")]
[Token(Token = "0x400674B")]
internal ZTree l_desc;
// Token: 0x0400674C RID: 26444
[FieldOffset(Offset = "0xE0")]
[Token(Token = "0x400674C")]
internal ZTree d_desc;
// Token: 0x0400674D RID: 26445
[FieldOffset(Offset = "0xE8")]
[Token(Token = "0x400674D")]
internal ZTree bl_desc;
// Token: 0x0400674E RID: 26446
[FieldOffset(Offset = "0xF0")]
[Token(Token = "0x400674E")]
internal short[] bl_count;
// Token: 0x0400674F RID: 26447
[FieldOffset(Offset = "0xF8")]
[Token(Token = "0x400674F")]
internal int[] heap;
// Token: 0x04006750 RID: 26448
[FieldOffset(Offset = "0x100")]
[Token(Token = "0x4006750")]
internal int heap_len;
// Token: 0x04006751 RID: 26449
[FieldOffset(Offset = "0x104")]
[Token(Token = "0x4006751")]
internal int heap_max;
// Token: 0x04006752 RID: 26450
[FieldOffset(Offset = "0x108")]
[Token(Token = "0x4006752")]
internal byte[] depth;
// Token: 0x04006753 RID: 26451
[FieldOffset(Offset = "0x110")]
[Token(Token = "0x4006753")]
internal int l_buf;
// Token: 0x04006754 RID: 26452
[FieldOffset(Offset = "0x114")]
[Token(Token = "0x4006754")]
internal int lit_bufsize;
// Token: 0x04006755 RID: 26453
[FieldOffset(Offset = "0x118")]
[Token(Token = "0x4006755")]
internal int last_lit;
// Token: 0x04006756 RID: 26454
[FieldOffset(Offset = "0x11C")]
[Token(Token = "0x4006756")]
internal int d_buf;
// Token: 0x04006757 RID: 26455
[FieldOffset(Offset = "0x120")]
[Token(Token = "0x4006757")]
internal int opt_len;
// Token: 0x04006758 RID: 26456
[FieldOffset(Offset = "0x124")]
[Token(Token = "0x4006758")]
internal int static_len;
// Token: 0x04006759 RID: 26457
[FieldOffset(Offset = "0x128")]
[Token(Token = "0x4006759")]
internal int matches;
// Token: 0x0400675A RID: 26458
[FieldOffset(Offset = "0x12C")]
[Token(Token = "0x400675A")]
internal int last_eob_len;
// Token: 0x0400675B RID: 26459
[FieldOffset(Offset = "0x130")]
[Token(Token = "0x400675B")]
internal uint bi_buf;
// Token: 0x0400675C RID: 26460
[FieldOffset(Offset = "0x134")]
[Token(Token = "0x400675C")]
internal int bi_valid;
// Token: 0x0200192B RID: 6443
[Token(Token = "0x200192B")]
internal class Config
{
// Token: 0x060098A2 RID: 39074 RVA: 0x001F8A00 File Offset: 0x001F6C00
[Token(Token = "0x60098A2")]
[Address(RVA = "0x18D7470", Offset = "0x18D6270", VA = "0x1818D7470")]
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: 0x0400675D RID: 26461
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x400675D")]
internal int good_length;
// Token: 0x0400675E RID: 26462
[FieldOffset(Offset = "0x14")]
[Token(Token = "0x400675E")]
internal int max_lazy;
// Token: 0x0400675F RID: 26463
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x400675F")]
internal int nice_length;
// Token: 0x04006760 RID: 26464
[FieldOffset(Offset = "0x1C")]
[Token(Token = "0x4006760")]
internal int max_chain;
// Token: 0x04006761 RID: 26465
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x4006761")]
internal int func;
}
}
}
@@ -0,0 +1,825 @@
using System;
using System.Runtime.CompilerServices;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib
{
// Token: 0x0200192C RID: 6444
[Token(Token = "0x200192C")]
internal sealed class InfBlocks
{
// Token: 0x060098A3 RID: 39075 RVA: 0x001F8A38 File Offset: 0x001F6C38
[Token(Token = "0x60098A3")]
[Address(RVA = "0x18DFB40", Offset = "0x18DE940", VA = "0x1818DFB40")]
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: 0x060098A4 RID: 39076 RVA: 0x001F8AF0 File Offset: 0x001F6CF0
[Token(Token = "0x60098A4")]
[Address(RVA = "0x18E1320", Offset = "0x18E0120", VA = "0x1818E1320")]
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: 0x060098A5 RID: 39077 RVA: 0x001F8B54 File Offset: 0x001F6D54
[Token(Token = "0x60098A5")]
[Address(RVA = "0x18DFE60", Offset = "0x18DEC60", VA = "0x1818DFE60")]
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: 0x060098A6 RID: 39078 RVA: 0x001F9458 File Offset: 0x001F7658
[Token(Token = "0x60098A6")]
[Address(RVA = "0x18DFC80", Offset = "0x18DEA80", VA = "0x1818DFC80")]
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: 0x060098A7 RID: 39079 RVA: 0x001F94B4 File Offset: 0x001F76B4
[Token(Token = "0x60098A7")]
[Address(RVA = "0x18E13A0", Offset = "0x18E01A0", VA = "0x1818E13A0")]
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: 0x060098A8 RID: 39080 RVA: 0x001F94E4 File Offset: 0x001F76E4
[Token(Token = "0x60098A8")]
[Address(RVA = "0x18E13F0", Offset = "0x18E01F0", VA = "0x1818E13F0")]
internal int sync_point()
{
/*
An exception occurred when decompiling this method (060098A8)
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: 0x060098A9 RID: 39081 RVA: 0x001F94FC File Offset: 0x001F76FC
[Token(Token = "0x60098A9")]
[Address(RVA = "0x18DFCE0", Offset = "0x18DEAE0", VA = "0x1818DFCE0")]
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: 0x060098AA RID: 39082 RVA: 0x001F9670 File Offset: 0x001F7870
// Note: this type is marked as 'beforefieldinit'.
[Token(Token = "0x60098AA")]
[Address(RVA = "0x18DFAA0", Offset = "0x18DE8A0", VA = "0x1818DFAA0")]
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: 0x04006762 RID: 26466
[Token(Token = "0x4006762")]
private const int MANY = 1440;
// Token: 0x04006763 RID: 26467
[Token(Token = "0x4006763")]
private static readonly int[] inflate_mask;
// Token: 0x04006764 RID: 26468
[Token(Token = "0x4006764")]
private static readonly int[] border;
// Token: 0x04006765 RID: 26469
[Token(Token = "0x4006765")]
private const int Z_OK = 0;
// Token: 0x04006766 RID: 26470
[Token(Token = "0x4006766")]
private const int Z_STREAM_END = 1;
// Token: 0x04006767 RID: 26471
[Token(Token = "0x4006767")]
private const int Z_NEED_DICT = 2;
// Token: 0x04006768 RID: 26472
[Token(Token = "0x4006768")]
private const int Z_ERRNO = -1;
// Token: 0x04006769 RID: 26473
[Token(Token = "0x4006769")]
private const int Z_STREAM_ERROR = -2;
// Token: 0x0400676A RID: 26474
[Token(Token = "0x400676A")]
private const int Z_DATA_ERROR = -3;
// Token: 0x0400676B RID: 26475
[Token(Token = "0x400676B")]
private const int Z_MEM_ERROR = -4;
// Token: 0x0400676C RID: 26476
[Token(Token = "0x400676C")]
private const int Z_BUF_ERROR = -5;
// Token: 0x0400676D RID: 26477
[Token(Token = "0x400676D")]
private const int Z_VERSION_ERROR = -6;
// Token: 0x0400676E RID: 26478
[Token(Token = "0x400676E")]
private const int TYPE = 0;
// Token: 0x0400676F RID: 26479
[Token(Token = "0x400676F")]
private const int LENS = 1;
// Token: 0x04006770 RID: 26480
[Token(Token = "0x4006770")]
private const int STORED = 2;
// Token: 0x04006771 RID: 26481
[Token(Token = "0x4006771")]
private const int TABLE = 3;
// Token: 0x04006772 RID: 26482
[Token(Token = "0x4006772")]
private const int BTREE = 4;
// Token: 0x04006773 RID: 26483
[Token(Token = "0x4006773")]
private const int DTREE = 5;
// Token: 0x04006774 RID: 26484
[Token(Token = "0x4006774")]
private const int CODES = 6;
// Token: 0x04006775 RID: 26485
[Token(Token = "0x4006775")]
private const int DRY = 7;
// Token: 0x04006776 RID: 26486
[Token(Token = "0x4006776")]
private const int DONE = 8;
// Token: 0x04006777 RID: 26487
[Token(Token = "0x4006777")]
private const int BAD = 9;
// Token: 0x04006778 RID: 26488
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x4006778")]
internal int mode;
// Token: 0x04006779 RID: 26489
[FieldOffset(Offset = "0x14")]
[Token(Token = "0x4006779")]
internal int left;
// Token: 0x0400677A RID: 26490
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x400677A")]
internal int table;
// Token: 0x0400677B RID: 26491
[FieldOffset(Offset = "0x1C")]
[Token(Token = "0x400677B")]
internal int index;
// Token: 0x0400677C RID: 26492
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x400677C")]
internal int[] blens;
// Token: 0x0400677D RID: 26493
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x400677D")]
internal int[] bb;
// Token: 0x0400677E RID: 26494
[FieldOffset(Offset = "0x30")]
[Token(Token = "0x400677E")]
internal int[] tb;
// Token: 0x0400677F RID: 26495
[FieldOffset(Offset = "0x38")]
[Token(Token = "0x400677F")]
internal InfCodes codes;
// Token: 0x04006780 RID: 26496
[FieldOffset(Offset = "0x40")]
[Token(Token = "0x4006780")]
private int last;
// Token: 0x04006781 RID: 26497
[FieldOffset(Offset = "0x44")]
[Token(Token = "0x4006781")]
internal int bitk;
// Token: 0x04006782 RID: 26498
[FieldOffset(Offset = "0x48")]
[Token(Token = "0x4006782")]
internal int bitb;
// Token: 0x04006783 RID: 26499
[FieldOffset(Offset = "0x50")]
[Token(Token = "0x4006783")]
internal int[] hufts;
// Token: 0x04006784 RID: 26500
[FieldOffset(Offset = "0x58")]
[Token(Token = "0x4006784")]
internal byte[] window;
// Token: 0x04006785 RID: 26501
[FieldOffset(Offset = "0x60")]
[Token(Token = "0x4006785")]
internal int end;
// Token: 0x04006786 RID: 26502
[FieldOffset(Offset = "0x64")]
[Token(Token = "0x4006786")]
internal int read;
// Token: 0x04006787 RID: 26503
[FieldOffset(Offset = "0x68")]
[Token(Token = "0x4006787")]
internal int write;
// Token: 0x04006788 RID: 26504
[FieldOffset(Offset = "0x70")]
[Token(Token = "0x4006788")]
internal object checkfn;
// Token: 0x04006789 RID: 26505
[FieldOffset(Offset = "0x78")]
[Token(Token = "0x4006789")]
internal long check;
// Token: 0x0400678A RID: 26506
[FieldOffset(Offset = "0x80")]
[Token(Token = "0x400678A")]
internal InfTree inftree;
}
}
@@ -0,0 +1,534 @@
using System;
using System.Runtime.CompilerServices;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib
{
// Token: 0x0200192D RID: 6445
[Token(Token = "0x200192D")]
internal sealed class InfCodes
{
// Token: 0x060098AB RID: 39083 RVA: 0x001F96B0 File Offset: 0x001F78B0
[Token(Token = "0x60098AB")]
[Address(RVA = "0x3F5100", Offset = "0x3F3F00", VA = "0x1803F5100")]
internal InfCodes()
{
int num = 0;
this.free(num);
}
// Token: 0x060098AC RID: 39084 RVA: 0x001F96C8 File Offset: 0x001F78C8
[Token(Token = "0x60098AC")]
[Address(RVA = "0x18E2030", Offset = "0x18E0E30", VA = "0x1818E2030")]
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: 0x060098AD RID: 39085 RVA: 0x001F9710 File Offset: 0x001F7910
[Token(Token = "0x60098AD")]
[Address(RVA = "0x18E2060", Offset = "0x18E0E60", VA = "0x1818E2060")]
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: 0x060098AE RID: 39086 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x60098AE")]
[Address(RVA = "0x402080", Offset = "0x400E80", VA = "0x180402080")]
internal void free(ZStream z)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x060098AF RID: 39087 RVA: 0x001F9B88 File Offset: 0x001F7D88
[Token(Token = "0x60098AF")]
[Address(RVA = "0x18E1460", Offset = "0x18E0260", VA = "0x1818E1460")]
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: 0x060098B0 RID: 39088 RVA: 0x001F9CA4 File Offset: 0x001F7EA4
// Note: this type is marked as 'beforefieldinit'.
[Token(Token = "0x60098B0")]
[Address(RVA = "0x18E1400", Offset = "0x18E0200", VA = "0x1818E1400")]
static InfCodes()
{
int[] array = new int[17];
RuntimeHelpers.InitializeArray(array, fieldof(<PrivateImplementationDetails>.F584B6C7CCA3CD4ECC3B9B1E20D2F2EFB73DBBDF).FieldHandle);
InfCodes.inflate_mask = array;
}
// Token: 0x0400678B RID: 26507
[Token(Token = "0x400678B")]
private static readonly int[] inflate_mask;
// Token: 0x0400678C RID: 26508
[Token(Token = "0x400678C")]
private const int Z_OK = 0;
// Token: 0x0400678D RID: 26509
[Token(Token = "0x400678D")]
private const int Z_STREAM_END = 1;
// Token: 0x0400678E RID: 26510
[Token(Token = "0x400678E")]
private const int Z_NEED_DICT = 2;
// Token: 0x0400678F RID: 26511
[Token(Token = "0x400678F")]
private const int Z_ERRNO = -1;
// Token: 0x04006790 RID: 26512
[Token(Token = "0x4006790")]
private const int Z_STREAM_ERROR = -2;
// Token: 0x04006791 RID: 26513
[Token(Token = "0x4006791")]
private const int Z_DATA_ERROR = -3;
// Token: 0x04006792 RID: 26514
[Token(Token = "0x4006792")]
private const int Z_MEM_ERROR = -4;
// Token: 0x04006793 RID: 26515
[Token(Token = "0x4006793")]
private const int Z_BUF_ERROR = -5;
// Token: 0x04006794 RID: 26516
[Token(Token = "0x4006794")]
private const int Z_VERSION_ERROR = -6;
// Token: 0x04006795 RID: 26517
[Token(Token = "0x4006795")]
private const int START = 0;
// Token: 0x04006796 RID: 26518
[Token(Token = "0x4006796")]
private const int LEN = 1;
// Token: 0x04006797 RID: 26519
[Token(Token = "0x4006797")]
private const int LENEXT = 2;
// Token: 0x04006798 RID: 26520
[Token(Token = "0x4006798")]
private const int DIST = 3;
// Token: 0x04006799 RID: 26521
[Token(Token = "0x4006799")]
private const int DISTEXT = 4;
// Token: 0x0400679A RID: 26522
[Token(Token = "0x400679A")]
private const int COPY = 5;
// Token: 0x0400679B RID: 26523
[Token(Token = "0x400679B")]
private const int LIT = 6;
// Token: 0x0400679C RID: 26524
[Token(Token = "0x400679C")]
private const int WASH = 7;
// Token: 0x0400679D RID: 26525
[Token(Token = "0x400679D")]
private const int END = 8;
// Token: 0x0400679E RID: 26526
[Token(Token = "0x400679E")]
private const int BADCODE = 9;
// Token: 0x0400679F RID: 26527
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x400679F")]
private int mode;
// Token: 0x040067A0 RID: 26528
[FieldOffset(Offset = "0x14")]
[Token(Token = "0x40067A0")]
private int len;
// Token: 0x040067A1 RID: 26529
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x40067A1")]
private int[] tree;
// Token: 0x040067A2 RID: 26530
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x40067A2")]
private int tree_index;
// Token: 0x040067A3 RID: 26531
[FieldOffset(Offset = "0x24")]
[Token(Token = "0x40067A3")]
private int need;
// Token: 0x040067A4 RID: 26532
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x40067A4")]
private int lit;
// Token: 0x040067A5 RID: 26533
[FieldOffset(Offset = "0x2C")]
[Token(Token = "0x40067A5")]
private int get;
// Token: 0x040067A6 RID: 26534
[FieldOffset(Offset = "0x30")]
[Token(Token = "0x40067A6")]
private int dist;
// Token: 0x040067A7 RID: 26535
[FieldOffset(Offset = "0x34")]
[Token(Token = "0x40067A7")]
private byte lbits;
// Token: 0x040067A8 RID: 26536
[FieldOffset(Offset = "0x35")]
[Token(Token = "0x40067A8")]
private byte dbits;
// Token: 0x040067A9 RID: 26537
[FieldOffset(Offset = "0x38")]
[Token(Token = "0x40067A9")]
private int[] ltree;
// Token: 0x040067AA RID: 26538
[FieldOffset(Offset = "0x40")]
[Token(Token = "0x40067AA")]
private int ltree_index;
// Token: 0x040067AB RID: 26539
[FieldOffset(Offset = "0x48")]
[Token(Token = "0x40067AB")]
private int[] dtree;
// Token: 0x040067AC RID: 26540
[FieldOffset(Offset = "0x50")]
[Token(Token = "0x40067AC")]
private int dtree_index;
}
}
@@ -0,0 +1,445 @@
using System;
using System.Runtime.CompilerServices;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib
{
// Token: 0x0200192E RID: 6446
[Token(Token = "0x200192E")]
internal sealed class InfTree
{
// Token: 0x060098B1 RID: 39089 RVA: 0x001F9CCC File Offset: 0x001F7ECC
[Token(Token = "0x60098B1")]
[Address(RVA = "0x18E2E90", Offset = "0x18E1C90", VA = "0x1818E2E90")]
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: 0x060098B2 RID: 39090 RVA: 0x001F9FD8 File Offset: 0x001F81D8
[Token(Token = "0x60098B2")]
[Address(RVA = "0x18E3A70", Offset = "0x18E2870", VA = "0x1818E3A70")]
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: 0x060098B3 RID: 39091 RVA: 0x001FA02C File Offset: 0x001F822C
[Token(Token = "0x60098B3")]
[Address(RVA = "0x18E3BC0", Offset = "0x18E29C0", VA = "0x1818E3BC0")]
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: 0x060098B4 RID: 39092 RVA: 0x001FA0CC File Offset: 0x001F82CC
[Token(Token = "0x60098B4")]
[Address(RVA = "0x18E3ED0", Offset = "0x18E2CD0", VA = "0x1818E3ED0")]
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: 0x060098B5 RID: 39093 RVA: 0x001FA108 File Offset: 0x001F8308
[Token(Token = "0x60098B5")]
[Address(RVA = "0x18E4060", Offset = "0x18E2E60", VA = "0x1818E4060")]
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: 0x060098B6 RID: 39094 RVA: 0x001FA238 File Offset: 0x001F8438
[Token(Token = "0x60098B6")]
[Address(RVA = "0x3F5100", Offset = "0x3F3F00", VA = "0x1803F5100")]
public InfTree()
{
}
// Token: 0x060098B7 RID: 39095 RVA: 0x001FA24C File Offset: 0x001F844C
// Note: this type is marked as 'beforefieldinit'.
[Token(Token = "0x60098B7")]
[Address(RVA = "0x18E2D10", Offset = "0x18E1B10", VA = "0x1818E2D10")]
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: 0x040067AD RID: 26541
[Token(Token = "0x40067AD")]
private const int MANY = 1440;
// Token: 0x040067AE RID: 26542
[Token(Token = "0x40067AE")]
private const int Z_OK = 0;
// Token: 0x040067AF RID: 26543
[Token(Token = "0x40067AF")]
private const int Z_STREAM_END = 1;
// Token: 0x040067B0 RID: 26544
[Token(Token = "0x40067B0")]
private const int Z_NEED_DICT = 2;
// Token: 0x040067B1 RID: 26545
[Token(Token = "0x40067B1")]
private const int Z_ERRNO = -1;
// Token: 0x040067B2 RID: 26546
[Token(Token = "0x40067B2")]
private const int Z_STREAM_ERROR = -2;
// Token: 0x040067B3 RID: 26547
[Token(Token = "0x40067B3")]
private const int Z_DATA_ERROR = -3;
// Token: 0x040067B4 RID: 26548
[Token(Token = "0x40067B4")]
private const int Z_MEM_ERROR = -4;
// Token: 0x040067B5 RID: 26549
[Token(Token = "0x40067B5")]
private const int Z_BUF_ERROR = -5;
// Token: 0x040067B6 RID: 26550
[Token(Token = "0x40067B6")]
private const int Z_VERSION_ERROR = -6;
// Token: 0x040067B7 RID: 26551
[Token(Token = "0x40067B7")]
private const int fixed_bl = 9;
// Token: 0x040067B8 RID: 26552
[Token(Token = "0x40067B8")]
private const int fixed_bd = 5;
// Token: 0x040067B9 RID: 26553
[Token(Token = "0x40067B9")]
private static readonly int[] fixed_tl;
// Token: 0x040067BA RID: 26554
[Token(Token = "0x40067BA")]
private static readonly int[] fixed_td;
// Token: 0x040067BB RID: 26555
[Token(Token = "0x40067BB")]
private static readonly int[] cplens;
// Token: 0x040067BC RID: 26556
[Token(Token = "0x40067BC")]
private static readonly int[] cplext;
// Token: 0x040067BD RID: 26557
[Token(Token = "0x40067BD")]
private static readonly int[] cpdist;
// Token: 0x040067BE RID: 26558
[Token(Token = "0x40067BE")]
private static readonly int[] cpdext;
// Token: 0x040067BF RID: 26559
[Token(Token = "0x40067BF")]
private const int BMAX = 15;
// Token: 0x040067C0 RID: 26560
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x40067C0")]
private int[] hn;
// Token: 0x040067C1 RID: 26561
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x40067C1")]
private int[] v;
// Token: 0x040067C2 RID: 26562
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x40067C2")]
private int[] c;
// Token: 0x040067C3 RID: 26563
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x40067C3")]
private int[] r;
// Token: 0x040067C4 RID: 26564
[FieldOffset(Offset = "0x30")]
[Token(Token = "0x40067C4")]
private int[] u;
// Token: 0x040067C5 RID: 26565
[FieldOffset(Offset = "0x38")]
[Token(Token = "0x40067C5")]
private int[] x;
}
}
@@ -0,0 +1,571 @@
using System;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib
{
// Token: 0x0200192F RID: 6447
[Token(Token = "0x200192F")]
internal sealed class Inflate
{
// Token: 0x060098B8 RID: 39096 RVA: 0x001FA2F8 File Offset: 0x001F84F8
[Token(Token = "0x60098B8")]
[Address(RVA = "0x1624640", Offset = "0x1623440", VA = "0x181624640")]
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;
return 0;
}
}
return -2;
}
// Token: 0x060098B9 RID: 39097 RVA: 0x001FA348 File Offset: 0x001F8548
[Token(Token = "0x60098B9")]
[Address(RVA = "0x1624500", Offset = "0x1623300", VA = "0x181624500")]
internal int inflateEnd(ZStream z)
{
InfBlocks infBlocks = this.blocks;
if (infBlocks != 0)
{
infBlocks.free(z);
}
int num = 0;
this.blocks = num;
return num;
}
// Token: 0x060098BA RID: 39098 RVA: 0x001FA374 File Offset: 0x001F8574
[Token(Token = "0x60098BA")]
[Address(RVA = "0x1624530", Offset = "0x1623330", VA = "0x181624530")]
internal int inflateInit(ZStream z, int w)
{
int num = 0;
z.msg = num;
this.blocks = num;
this.nowrap = num;
this.nowrap = 1;
this.wbits = w;
Inflate istate = z.istate;
int num2 = istate.nowrap;
InfBlocks infBlocks = new InfBlocks(z, this, 1);
istate.blocks = infBlocks;
int num3 = this.inflateReset(z);
return 0;
}
// Token: 0x060098BB RID: 39099 RVA: 0x001FA3D4 File Offset: 0x001F85D4
[Token(Token = "0x60098BB")]
[Address(RVA = "0x1624A50", Offset = "0x1623850", VA = "0x181624A50")]
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: 0x060098BC RID: 39100 RVA: 0x001FA8F8 File Offset: 0x001F8AF8
[Token(Token = "0x60098BC")]
[Address(RVA = "0x16246B0", Offset = "0x16234B0", VA = "0x1816246B0")]
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)
{
Adler32 adler2 = z._adler;
Inflate istate2 = z.istate;
long num3;
z.adler = num3;
uint num4 = num2 - 1U;
istate2.blocks.set_dictionary(dictionary, dictLength, (int)num4);
z.istate.mode = (int)((ulong)7L);
return 0;
}
}
}
throw new NullReferenceException();
}
// Token: 0x060098BD RID: 39101 RVA: 0x001FA980 File Offset: 0x001F8B80
[Token(Token = "0x60098BD")]
[Address(RVA = "0x1624820", Offset = "0x1623620", VA = "0x181624820")]
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: 0x060098BE RID: 39102 RVA: 0x001FAA98 File Offset: 0x001F8C98
[Token(Token = "0x60098BE")]
[Address(RVA = "0x16247F0", Offset = "0x16235F0", VA = "0x1816247F0")]
internal int inflateSyncPoint(ZStream z)
{
if (z != 0)
{
Inflate istate = z.istate;
if (istate != 0)
{
InfBlocks infBlocks = istate.blocks;
if (infBlocks != 0)
{
return infBlocks.sync_point();
}
}
}
return -2;
}
// Token: 0x060098BF RID: 39103 RVA: 0x001FAAC8 File Offset: 0x001F8CC8
[Token(Token = "0x60098BF")]
[Address(RVA = "0x16244B0", Offset = "0x16232B0", VA = "0x1816244B0")]
public Inflate()
{
long[] array = new long[1];
this.was = array;
base..ctor();
}
// Token: 0x060098C0 RID: 39104 RVA: 0x001FAAEC File Offset: 0x001F8CEC
// Note: this type is marked as 'beforefieldinit'.
[Token(Token = "0x60098C0")]
[Address(RVA = "0x1624420", Offset = "0x1623220", VA = "0x181624420")]
static Inflate()
{
byte[] array = new byte[4];
array[0] = (byte)((ulong)255L);
array[0] = (byte)((ulong)255L);
Inflate.mark = array;
}
// Token: 0x040067C6 RID: 26566
[Token(Token = "0x40067C6")]
private const int MAX_WBITS = 15;
// Token: 0x040067C7 RID: 26567
[Token(Token = "0x40067C7")]
private const int PRESET_DICT = 32;
// Token: 0x040067C8 RID: 26568
[Token(Token = "0x40067C8")]
internal const int Z_NO_FLUSH = 0;
// Token: 0x040067C9 RID: 26569
[Token(Token = "0x40067C9")]
internal const int Z_PARTIAL_FLUSH = 1;
// Token: 0x040067CA RID: 26570
[Token(Token = "0x40067CA")]
internal const int Z_SYNC_FLUSH = 2;
// Token: 0x040067CB RID: 26571
[Token(Token = "0x40067CB")]
internal const int Z_FULL_FLUSH = 3;
// Token: 0x040067CC RID: 26572
[Token(Token = "0x40067CC")]
internal const int Z_FINISH = 4;
// Token: 0x040067CD RID: 26573
[Token(Token = "0x40067CD")]
private const int Z_DEFLATED = 8;
// Token: 0x040067CE RID: 26574
[Token(Token = "0x40067CE")]
private const int Z_OK = 0;
// Token: 0x040067CF RID: 26575
[Token(Token = "0x40067CF")]
private const int Z_STREAM_END = 1;
// Token: 0x040067D0 RID: 26576
[Token(Token = "0x40067D0")]
private const int Z_NEED_DICT = 2;
// Token: 0x040067D1 RID: 26577
[Token(Token = "0x40067D1")]
private const int Z_ERRNO = -1;
// Token: 0x040067D2 RID: 26578
[Token(Token = "0x40067D2")]
private const int Z_STREAM_ERROR = -2;
// Token: 0x040067D3 RID: 26579
[Token(Token = "0x40067D3")]
private const int Z_DATA_ERROR = -3;
// Token: 0x040067D4 RID: 26580
[Token(Token = "0x40067D4")]
private const int Z_MEM_ERROR = -4;
// Token: 0x040067D5 RID: 26581
[Token(Token = "0x40067D5")]
private const int Z_BUF_ERROR = -5;
// Token: 0x040067D6 RID: 26582
[Token(Token = "0x40067D6")]
private const int Z_VERSION_ERROR = -6;
// Token: 0x040067D7 RID: 26583
[Token(Token = "0x40067D7")]
private const int METHOD = 0;
// Token: 0x040067D8 RID: 26584
[Token(Token = "0x40067D8")]
private const int FLAG = 1;
// Token: 0x040067D9 RID: 26585
[Token(Token = "0x40067D9")]
private const int DICT4 = 2;
// Token: 0x040067DA RID: 26586
[Token(Token = "0x40067DA")]
private const int DICT3 = 3;
// Token: 0x040067DB RID: 26587
[Token(Token = "0x40067DB")]
private const int DICT2 = 4;
// Token: 0x040067DC RID: 26588
[Token(Token = "0x40067DC")]
private const int DICT1 = 5;
// Token: 0x040067DD RID: 26589
[Token(Token = "0x40067DD")]
private const int DICT0 = 6;
// Token: 0x040067DE RID: 26590
[Token(Token = "0x40067DE")]
private const int BLOCKS = 7;
// Token: 0x040067DF RID: 26591
[Token(Token = "0x40067DF")]
private const int CHECK4 = 8;
// Token: 0x040067E0 RID: 26592
[Token(Token = "0x40067E0")]
private const int CHECK3 = 9;
// Token: 0x040067E1 RID: 26593
[Token(Token = "0x40067E1")]
private const int CHECK2 = 10;
// Token: 0x040067E2 RID: 26594
[Token(Token = "0x40067E2")]
private const int CHECK1 = 11;
// Token: 0x040067E3 RID: 26595
[Token(Token = "0x40067E3")]
private const int DONE = 12;
// Token: 0x040067E4 RID: 26596
[Token(Token = "0x40067E4")]
private const int BAD = 13;
// Token: 0x040067E5 RID: 26597
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x40067E5")]
internal int mode;
// Token: 0x040067E6 RID: 26598
[FieldOffset(Offset = "0x14")]
[Token(Token = "0x40067E6")]
internal int method;
// Token: 0x040067E7 RID: 26599
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x40067E7")]
internal long[] was;
// Token: 0x040067E8 RID: 26600
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x40067E8")]
internal long need;
// Token: 0x040067E9 RID: 26601
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x40067E9")]
internal int marker;
// Token: 0x040067EA RID: 26602
[FieldOffset(Offset = "0x2C")]
[Token(Token = "0x40067EA")]
internal int nowrap;
// Token: 0x040067EB RID: 26603
[FieldOffset(Offset = "0x30")]
[Token(Token = "0x40067EB")]
internal int wbits;
// Token: 0x040067EC RID: 26604
[FieldOffset(Offset = "0x38")]
[Token(Token = "0x40067EC")]
internal InfBlocks blocks;
// Token: 0x040067ED RID: 26605
[Token(Token = "0x40067ED")]
private static readonly byte[] mark;
}
}
@@ -0,0 +1,113 @@
using System;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib
{
// Token: 0x02001930 RID: 6448
[Token(Token = "0x2001930")]
public sealed class JZlib
{
// Token: 0x060098C1 RID: 39105 RVA: 0x001FAB28 File Offset: 0x001F8D28
[Token(Token = "0x60098C1")]
[Address(RVA = "0x1625240", Offset = "0x1624040", VA = "0x181625240")]
public static string version()
{
return "1.0.7";
}
// Token: 0x060098C2 RID: 39106 RVA: 0x001FAB3C File Offset: 0x001F8D3C
[Token(Token = "0x60098C2")]
[Address(RVA = "0x3F5100", Offset = "0x3F3F00", VA = "0x1803F5100")]
public JZlib()
{
}
// Token: 0x040067EE RID: 26606
[Token(Token = "0x40067EE")]
private const string _version = "1.0.7";
// Token: 0x040067EF RID: 26607
[Token(Token = "0x40067EF")]
public const int Z_NO_COMPRESSION = 0;
// Token: 0x040067F0 RID: 26608
[Token(Token = "0x40067F0")]
public const int Z_BEST_SPEED = 1;
// Token: 0x040067F1 RID: 26609
[Token(Token = "0x40067F1")]
public const int Z_BEST_COMPRESSION = 9;
// Token: 0x040067F2 RID: 26610
[Token(Token = "0x40067F2")]
public const int Z_DEFAULT_COMPRESSION = -1;
// Token: 0x040067F3 RID: 26611
[Token(Token = "0x40067F3")]
public const int Z_FILTERED = 1;
// Token: 0x040067F4 RID: 26612
[Token(Token = "0x40067F4")]
public const int Z_HUFFMAN_ONLY = 2;
// Token: 0x040067F5 RID: 26613
[Token(Token = "0x40067F5")]
public const int Z_DEFAULT_STRATEGY = 0;
// Token: 0x040067F6 RID: 26614
[Token(Token = "0x40067F6")]
public const int Z_NO_FLUSH = 0;
// Token: 0x040067F7 RID: 26615
[Token(Token = "0x40067F7")]
public const int Z_PARTIAL_FLUSH = 1;
// Token: 0x040067F8 RID: 26616
[Token(Token = "0x40067F8")]
public const int Z_SYNC_FLUSH = 2;
// Token: 0x040067F9 RID: 26617
[Token(Token = "0x40067F9")]
public const int Z_FULL_FLUSH = 3;
// Token: 0x040067FA RID: 26618
[Token(Token = "0x40067FA")]
public const int Z_FINISH = 4;
// Token: 0x040067FB RID: 26619
[Token(Token = "0x40067FB")]
public const int Z_OK = 0;
// Token: 0x040067FC RID: 26620
[Token(Token = "0x40067FC")]
public const int Z_STREAM_END = 1;
// Token: 0x040067FD RID: 26621
[Token(Token = "0x40067FD")]
public const int Z_NEED_DICT = 2;
// Token: 0x040067FE RID: 26622
[Token(Token = "0x40067FE")]
public const int Z_ERRNO = -1;
// Token: 0x040067FF RID: 26623
[Token(Token = "0x40067FF")]
public const int Z_STREAM_ERROR = -2;
// Token: 0x04006800 RID: 26624
[Token(Token = "0x4006800")]
public const int Z_DATA_ERROR = -3;
// Token: 0x04006801 RID: 26625
[Token(Token = "0x4006801")]
public const int Z_MEM_ERROR = -4;
// Token: 0x04006802 RID: 26626
[Token(Token = "0x4006802")]
public const int Z_BUF_ERROR = -5;
// Token: 0x04006803 RID: 26627
[Token(Token = "0x4006803")]
public const int Z_VERSION_ERROR = -6;
}
}
@@ -0,0 +1,136 @@
using System;
using System.Runtime.CompilerServices;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib
{
// Token: 0x02001931 RID: 6449
[Token(Token = "0x2001931")]
internal sealed class StaticTree
{
// Token: 0x060098C3 RID: 39107 RVA: 0x001FAB50 File Offset: 0x001F8D50
[Token(Token = "0x60098C3")]
[Address(RVA = "0x1625C10", Offset = "0x1624A10", VA = "0x181625C10")]
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: 0x060098C4 RID: 39108 RVA: 0x001FAB88 File Offset: 0x001F8D88
// Note: this type is marked as 'beforefieldinit'.
[Token(Token = "0x60098C4")]
[Address(RVA = "0x1625A10", Offset = "0x1624810", VA = "0x181625A10")]
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: 0x04006804 RID: 26628
[Token(Token = "0x4006804")]
private const int MAX_BITS = 15;
// Token: 0x04006805 RID: 26629
[Token(Token = "0x4006805")]
private const int BL_CODES = 19;
// Token: 0x04006806 RID: 26630
[Token(Token = "0x4006806")]
private const int D_CODES = 30;
// Token: 0x04006807 RID: 26631
[Token(Token = "0x4006807")]
private const int LITERALS = 256;
// Token: 0x04006808 RID: 26632
[Token(Token = "0x4006808")]
private const int LENGTH_CODES = 29;
// Token: 0x04006809 RID: 26633
[Token(Token = "0x4006809")]
private const int L_CODES = 286;
// Token: 0x0400680A RID: 26634
[Token(Token = "0x400680A")]
internal const int MAX_BL_BITS = 7;
// Token: 0x0400680B RID: 26635
[Token(Token = "0x400680B")]
internal static readonly short[] static_ltree;
// Token: 0x0400680C RID: 26636
[Token(Token = "0x400680C")]
internal static readonly short[] static_dtree;
// Token: 0x0400680D RID: 26637
[Token(Token = "0x400680D")]
internal static readonly StaticTree static_l_desc;
// Token: 0x0400680E RID: 26638
[Token(Token = "0x400680E")]
internal static readonly StaticTree static_d_desc;
// Token: 0x0400680F RID: 26639
[Token(Token = "0x400680F")]
internal static readonly StaticTree static_bl_desc;
// Token: 0x04006810 RID: 26640
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x4006810")]
internal short[] static_tree;
// Token: 0x04006811 RID: 26641
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x4006811")]
internal int[] extra_bits;
// Token: 0x04006812 RID: 26642
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x4006812")]
internal int extra_base;
// Token: 0x04006813 RID: 26643
[FieldOffset(Offset = "0x24")]
[Token(Token = "0x4006813")]
internal int elems;
// Token: 0x04006814 RID: 26644
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x4006814")]
internal int max_length;
}
}
@@ -0,0 +1,311 @@
using System;
using System.IO;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib
{
// Token: 0x02001932 RID: 6450
[Token(Token = "0x2001932")]
[Obsolete]
public class ZDeflaterOutputStream : Stream
{
// Token: 0x060098C5 RID: 39109 RVA: 0x001FAC9C File Offset: 0x001F8E9C
[Token(Token = "0x60098C5")]
[Address(RVA = "0x1637200", Offset = "0x1636000", VA = "0x181637200")]
public ZDeflaterOutputStream(Stream outp)
{
}
// Token: 0x060098C6 RID: 39110 RVA: 0x001FACAC File Offset: 0x001F8EAC
[Token(Token = "0x60098C6")]
[Address(RVA = "0x16370B0", Offset = "0x1635EB0", VA = "0x1816370B0")]
public ZDeflaterOutputStream(Stream outp, int level)
{
}
// Token: 0x060098C7 RID: 39111 RVA: 0x001FACBC File Offset: 0x001F8EBC
[Token(Token = "0x60098C7")]
[Address(RVA = "0x16370D0", Offset = "0x1635ED0", VA = "0x1816370D0")]
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: 0x1700184A RID: 6218
// (get) Token: 0x060098C8 RID: 39112 RVA: 0x001FAD2C File Offset: 0x001F8F2C
[Token(Token = "0x1700184A")]
public override bool CanRead
{
[Token(Token = "0x60098C8")]
[Address(RVA = "0x403930", Offset = "0x402730", VA = "0x180403930", Slot = "7")]
get
{
}
}
// Token: 0x1700184B RID: 6219
// (get) Token: 0x060098C9 RID: 39113 RVA: 0x001FAD3C File Offset: 0x001F8F3C
[Token(Token = "0x1700184B")]
public override bool CanSeek
{
[Token(Token = "0x60098C9")]
[Address(RVA = "0x403930", Offset = "0x402730", VA = "0x180403930", Slot = "8")]
get
{
}
}
// Token: 0x1700184C RID: 6220
// (get) Token: 0x060098CA RID: 39114 RVA: 0x001FAD4C File Offset: 0x001F8F4C
[Token(Token = "0x1700184C")]
public override bool CanWrite
{
[Token(Token = "0x60098CA")]
[Address(RVA = "0x460D40", Offset = "0x45FB40", VA = "0x180460D40", Slot = "9")]
get
{
return true;
}
}
// Token: 0x1700184D RID: 6221
// (get) Token: 0x060098CB RID: 39115 RVA: 0x001FAD5C File Offset: 0x001F8F5C
[Token(Token = "0x1700184D")]
public override long Length
{
[Token(Token = "0x60098CB")]
[Address(RVA = "0x43E630", Offset = "0x43D430", VA = "0x18043E630", Slot = "10")]
get
{
}
}
// Token: 0x1700184E RID: 6222
// (get) Token: 0x060098CC RID: 39116 RVA: 0x001FAD6C File Offset: 0x001F8F6C
// (set) Token: 0x060098CD RID: 39117 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x1700184E")]
public override long Position
{
[Token(Token = "0x60098CC")]
[Address(RVA = "0x43E630", Offset = "0x43D430", VA = "0x18043E630", Slot = "11")]
get
{
}
[Token(Token = "0x60098CD")]
[Address(RVA = "0x402080", Offset = "0x400E80", VA = "0x180402080", Slot = "12")]
set
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
}
// Token: 0x060098CE RID: 39118 RVA: 0x001FAD7C File Offset: 0x001F8F7C
[Token(Token = "0x60098CE")]
[Address(RVA = "0x1636ED0", Offset = "0x1635CD0", VA = "0x181636ED0", 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: 0x060098CF RID: 39119 RVA: 0x001FAE64 File Offset: 0x001F9064
[Token(Token = "0x60098CF")]
[Address(RVA = "0x43E630", Offset = "0x43D430", VA = "0x18043E630", Slot = "25")]
public override long Seek(long offset, SeekOrigin origin)
{
}
// Token: 0x060098D0 RID: 39120 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x60098D0")]
[Address(RVA = "0x402080", Offset = "0x400E80", VA = "0x180402080", Slot = "26")]
public override void SetLength(long value)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x060098D1 RID: 39121 RVA: 0x001FAE74 File Offset: 0x001F9074
[Token(Token = "0x60098D1")]
[Address(RVA = "0x43E630", Offset = "0x43D430", VA = "0x18043E630", Slot = "27")]
public override int Read(byte[] buffer, int offset, int count)
{
return 0;
}
// Token: 0x060098D2 RID: 39122 RVA: 0x001FAE84 File Offset: 0x001F9084
[Token(Token = "0x60098D2")]
[Address(RVA = "0x1636E40", Offset = "0x1635C40", VA = "0x181636E40", Slot = "17")]
public override void Flush()
{
bool canRead = this.outp.CanRead;
}
// Token: 0x060098D3 RID: 39123 RVA: 0x001FAEA4 File Offset: 0x001F90A4
[Token(Token = "0x60098D3")]
[Address(RVA = "0x1636E70", Offset = "0x1635C70", VA = "0x181636E70", Slot = "30")]
public override void WriteByte(byte b)
{
this.buf1[0] = b;
int num = this.ReadByte();
}
// Token: 0x060098D4 RID: 39124 RVA: 0x001FAECC File Offset: 0x001F90CC
[Token(Token = "0x60098D4")]
[Address(RVA = "0x1636C90", Offset = "0x1635A90", VA = "0x181636C90")]
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: 0x060098D5 RID: 39125 RVA: 0x001FAF68 File Offset: 0x001F9168
[Token(Token = "0x60098D5")]
[Address(RVA = "0x1636C20", Offset = "0x1635A20", VA = "0x181636C20")]
public void End()
{
ZStream zstream = this.z;
if (zstream != 0)
{
Deflate dstate = zstream.dstate;
int num = 0;
if (dstate != 0)
{
int num2 = dstate.deflateEnd();
zstream.dstate = num;
}
zstream.next_in = num;
zstream.next_out = num;
zstream.msg = num;
zstream._adler = num;
this.z = num;
}
}
// Token: 0x060098D6 RID: 39126 RVA: 0x001FAFC4 File Offset: 0x001F91C4
[Token(Token = "0x60098D6")]
[Address(RVA = "0x1636AF0", Offset = "0x16358F0", VA = "0x181636AF0", Slot = "15")]
public override void Close()
{
int num;
do
{
this.Finish();
num = 0;
int num2 = 0;
ZStream zstream = this.z;
if (zstream != 0)
{
Deflate dstate = zstream.dstate;
if (dstate != 0)
{
int num3 = dstate.deflateEnd();
zstream.dstate = num2;
}
zstream.next_in = num2;
zstream.next_out = num2;
zstream.msg = num2;
zstream._adler = num2;
this.z = num2;
}
Platform.Dispose(this.outp);
this.outp = num2;
}
while (num != 0);
base.Close();
}
// Token: 0x04006815 RID: 26645
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x4006815")]
protected ZStream z;
// Token: 0x04006816 RID: 26646
[FieldOffset(Offset = "0x30")]
[Token(Token = "0x4006816")]
protected int flushLevel;
// Token: 0x04006817 RID: 26647
[Token(Token = "0x4006817")]
private const int BUFSIZE = 4192;
// Token: 0x04006818 RID: 26648
[FieldOffset(Offset = "0x38")]
[Token(Token = "0x4006818")]
protected byte[] buf;
// Token: 0x04006819 RID: 26649
[FieldOffset(Offset = "0x40")]
[Token(Token = "0x4006819")]
private byte[] buf1;
// Token: 0x0400681A RID: 26650
[FieldOffset(Offset = "0x48")]
[Token(Token = "0x400681A")]
protected Stream outp;
}
}
@@ -0,0 +1,266 @@
using System;
using System.IO;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib
{
// Token: 0x02001933 RID: 6451
[Token(Token = "0x2001933")]
[Obsolete]
public class ZInflaterInputStream : Stream
{
// Token: 0x060098D7 RID: 39127 RVA: 0x001FB040 File Offset: 0x001F9240
[Token(Token = "0x60098D7")]
[Address(RVA = "0x1637500", Offset = "0x1636300", VA = "0x181637500")]
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: 0x060098D8 RID: 39128 RVA: 0x001FB0EC File Offset: 0x001F92EC
[Token(Token = "0x60098D8")]
[Address(RVA = "0x1637640", Offset = "0x1636440", VA = "0x181637640")]
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: 0x1700184F RID: 6223
// (get) Token: 0x060098D9 RID: 39129 RVA: 0x001FB194 File Offset: 0x001F9394
[Token(Token = "0x1700184F")]
public override bool CanRead
{
[Token(Token = "0x60098D9")]
[Address(RVA = "0x460D40", Offset = "0x45FB40", VA = "0x180460D40", Slot = "7")]
get
{
return true;
}
}
// Token: 0x17001850 RID: 6224
// (get) Token: 0x060098DA RID: 39130 RVA: 0x001FB1A4 File Offset: 0x001F93A4
[Token(Token = "0x17001850")]
public override bool CanSeek
{
[Token(Token = "0x60098DA")]
[Address(RVA = "0x403930", Offset = "0x402730", VA = "0x180403930", Slot = "8")]
get
{
}
}
// Token: 0x17001851 RID: 6225
// (get) Token: 0x060098DB RID: 39131 RVA: 0x001FB1B4 File Offset: 0x001F93B4
[Token(Token = "0x17001851")]
public override bool CanWrite
{
[Token(Token = "0x60098DB")]
[Address(RVA = "0x403930", Offset = "0x402730", VA = "0x180403930", Slot = "9")]
get
{
}
}
// Token: 0x17001852 RID: 6226
// (get) Token: 0x060098DC RID: 39132 RVA: 0x001FB1C4 File Offset: 0x001F93C4
[Token(Token = "0x17001852")]
public override long Length
{
[Token(Token = "0x60098DC")]
[Address(RVA = "0x43E630", Offset = "0x43D430", VA = "0x18043E630", Slot = "10")]
get
{
}
}
// Token: 0x17001853 RID: 6227
// (get) Token: 0x060098DD RID: 39133 RVA: 0x001FB1D4 File Offset: 0x001F93D4
// (set) Token: 0x060098DE RID: 39134 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x17001853")]
public override long Position
{
[Token(Token = "0x60098DD")]
[Address(RVA = "0x43E630", Offset = "0x43D430", VA = "0x18043E630", Slot = "11")]
get
{
}
[Token(Token = "0x60098DE")]
[Address(RVA = "0x402080", Offset = "0x400E80", VA = "0x180402080", Slot = "12")]
set
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
}
// Token: 0x060098DF RID: 39135 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x60098DF")]
[Address(RVA = "0x402080", Offset = "0x400E80", VA = "0x180402080", 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: 0x060098E0 RID: 39136 RVA: 0x001FB1E4 File Offset: 0x001F93E4
[Token(Token = "0x60098E0")]
[Address(RVA = "0x43E630", Offset = "0x43D430", VA = "0x18043E630", Slot = "25")]
public override long Seek(long offset, SeekOrigin origin)
{
}
// Token: 0x060098E1 RID: 39137 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x60098E1")]
[Address(RVA = "0x402080", Offset = "0x400E80", VA = "0x180402080", Slot = "26")]
public override void SetLength(long value)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x060098E2 RID: 39138 RVA: 0x001FB1F4 File Offset: 0x001F93F4
[Token(Token = "0x60098E2")]
[Address(RVA = "0x1637300", Offset = "0x1636100", VA = "0x181637300", 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: 0x060098E3 RID: 39139 RVA: 0x001FB2F0 File Offset: 0x001F94F0
[Token(Token = "0x60098E3")]
[Address(RVA = "0x1636E40", Offset = "0x1635C40", VA = "0x181636E40", Slot = "17")]
public override void Flush()
{
bool canRead = this.inp.CanRead;
}
// Token: 0x060098E4 RID: 39140 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x60098E4")]
[Address(RVA = "0x402080", Offset = "0x400E80", VA = "0x180402080", Slot = "30")]
public override void WriteByte(byte b)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x060098E5 RID: 39141 RVA: 0x001FB310 File Offset: 0x001F9510
[Token(Token = "0x60098E5")]
[Address(RVA = "0x1637220", Offset = "0x1636020", VA = "0x181637220", Slot = "15")]
public override void Close()
{
Platform.Dispose(this.inp);
base.Close();
}
// Token: 0x060098E6 RID: 39142 RVA: 0x001FB330 File Offset: 0x001F9530
[Token(Token = "0x60098E6")]
[Address(RVA = "0x1637290", Offset = "0x1636090", VA = "0x181637290", Slot = "28")]
public override int ReadByte()
{
byte b = this.buf1[0];
return -1;
}
// Token: 0x0400681B RID: 26651
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x400681B")]
protected ZStream z;
// Token: 0x0400681C RID: 26652
[FieldOffset(Offset = "0x30")]
[Token(Token = "0x400681C")]
protected int flushLevel;
// Token: 0x0400681D RID: 26653
[Token(Token = "0x400681D")]
private const int BUFSIZE = 4192;
// Token: 0x0400681E RID: 26654
[FieldOffset(Offset = "0x38")]
[Token(Token = "0x400681E")]
protected byte[] buf;
// Token: 0x0400681F RID: 26655
[FieldOffset(Offset = "0x40")]
[Token(Token = "0x400681F")]
private byte[] buf1;
// Token: 0x04006820 RID: 26656
[FieldOffset(Offset = "0x48")]
[Token(Token = "0x4006820")]
protected Stream inp;
// Token: 0x04006821 RID: 26657
[FieldOffset(Offset = "0x50")]
[Token(Token = "0x4006821")]
private bool nomoreinput;
}
}
@@ -0,0 +1,547 @@
using System;
using System.IO;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib
{
// Token: 0x02001934 RID: 6452
[Token(Token = "0x2001934")]
public class ZInputStream : Stream
{
// Token: 0x060098E7 RID: 39143 RVA: 0x001FB354 File Offset: 0x001F9554
[Token(Token = "0x60098E7")]
[Address(RVA = "0x1637810", Offset = "0x1636610", VA = "0x181637810")]
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: 0x060098E8 RID: 39144 RVA: 0x001FB380 File Offset: 0x001F9580
[Token(Token = "0x60098E8")]
[Address(RVA = "0x16381A0", Offset = "0x1636FA0", VA = "0x1816381A0")]
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: 0x060098E9 RID: 39145 RVA: 0x001FB458 File Offset: 0x001F9658
[Token(Token = "0x60098E9")]
[Address(RVA = "0x1638010", Offset = "0x1636E10", VA = "0x181638010")]
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: 0x060098EA RID: 39146 RVA: 0x001FB52C File Offset: 0x001F972C
[Token(Token = "0x60098EA")]
[Address(RVA = "0x1637C00", Offset = "0x1636A00", VA = "0x181637C00")]
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: 0x060098EB RID: 39147 RVA: 0x001FB5F8 File Offset: 0x001F97F8
[Token(Token = "0x60098EB")]
[Address(RVA = "0x1637D60", Offset = "0x1636B60", VA = "0x181637D60")]
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: 0x060098EC RID: 39148 RVA: 0x001FB6A0 File Offset: 0x001F98A0
[Token(Token = "0x60098EC")]
[Address(RVA = "0x1637EB0", Offset = "0x1636CB0", VA = "0x181637EB0")]
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: 0x17001854 RID: 6228
// (get) Token: 0x060098ED RID: 39149 RVA: 0x001FB744 File Offset: 0x001F9944
[Token(Token = "0x17001854")]
public sealed override bool CanRead
{
[Token(Token = "0x60098ED")]
[Address(RVA = "0x1638320", Offset = "0x1637120", VA = "0x181638320", Slot = "7")]
get
{
return !this.closed;
}
}
// Token: 0x17001855 RID: 6229
// (get) Token: 0x060098EE RID: 39150 RVA: 0x001FB75C File Offset: 0x001F995C
[Token(Token = "0x17001855")]
public sealed override bool CanSeek
{
[Token(Token = "0x60098EE")]
[Address(RVA = "0x403930", Offset = "0x402730", VA = "0x180403930", Slot = "8")]
get
{
}
}
// Token: 0x17001856 RID: 6230
// (get) Token: 0x060098EF RID: 39151 RVA: 0x001FB76C File Offset: 0x001F996C
[Token(Token = "0x17001856")]
public sealed override bool CanWrite
{
[Token(Token = "0x60098EF")]
[Address(RVA = "0x403930", Offset = "0x402730", VA = "0x180403930", Slot = "9")]
get
{
}
}
// Token: 0x060098F0 RID: 39152 RVA: 0x001FB77C File Offset: 0x001F997C
[Token(Token = "0x60098F0")]
[Address(RVA = "0x1637790", Offset = "0x1636590", VA = "0x181637790", Slot = "15")]
public override void Close()
{
if (!this.closed)
{
Stream stream = this.input;
this.closed = true;
Platform.Dispose(stream);
base.Close();
}
}
// Token: 0x060098F1 RID: 39153 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x60098F1")]
[Address(RVA = "0x402080", Offset = "0x400E80", VA = "0x180402080", Slot = "17")]
public sealed override void Flush()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x17001857 RID: 6231
// (get) Token: 0x060098F2 RID: 39154 RVA: 0x001FB7AC File Offset: 0x001F99AC
// (set) Token: 0x060098F3 RID: 39155 RVA: 0x001FB7C0 File Offset: 0x001F99C0
[Token(Token = "0x17001857")]
public virtual int FlushMode
{
[Token(Token = "0x60098F2")]
[Address(RVA = "0x4730E0", Offset = "0x471EE0", VA = "0x1804730E0", Slot = "31")]
get
{
return this.flushLevel;
}
[Token(Token = "0x60098F3")]
[Address(RVA = "0x6CBD90", Offset = "0x6CAB90", VA = "0x1806CBD90", Slot = "32")]
set
{
this.flushLevel = value;
}
}
// Token: 0x17001858 RID: 6232
// (get) Token: 0x060098F4 RID: 39156 RVA: 0x001FB7D4 File Offset: 0x001F99D4
[Token(Token = "0x17001858")]
public sealed override long Length
{
[Token(Token = "0x60098F4")]
[Address(RVA = "0x1638330", Offset = "0x1637130", VA = "0x181638330", Slot = "10")]
get
{
/*
An exception occurred when decompiling this method (060098F4)
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: 0x17001859 RID: 6233
// (get) Token: 0x060098F5 RID: 39157 RVA: 0x001FB7E8 File Offset: 0x001F99E8
// (set) Token: 0x060098F6 RID: 39158 RVA: 0x001FB7FC File Offset: 0x001F99FC
[Token(Token = "0x17001859")]
public sealed override long Position
{
[Token(Token = "0x60098F5")]
[Address(RVA = "0x1638380", Offset = "0x1637180", VA = "0x181638380", Slot = "11")]
get
{
/*
An exception occurred when decompiling this method (060098F5)
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 = "0x60098F6")]
[Address(RVA = "0x16383F0", Offset = "0x16371F0", VA = "0x1816383F0", Slot = "12")]
set
{
/*
An exception occurred when decompiling this method (060098F6)
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: 0x060098F7 RID: 39159 RVA: 0x001FB810 File Offset: 0x001F9A10
[Token(Token = "0x60098F7")]
[Address(RVA = "0x16378C0", Offset = "0x16366C0", VA = "0x1816378C0", 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: 0x060098F8 RID: 39160 RVA: 0x001FB93C File Offset: 0x001F9B3C
[Token(Token = "0x60098F8")]
[Address(RVA = "0x1637290", Offset = "0x1636090", VA = "0x181637290", Slot = "28")]
public override int ReadByte()
{
byte b = this.buf1[0];
return -1;
}
// Token: 0x060098F9 RID: 39161 RVA: 0x001FB960 File Offset: 0x001F9B60
[Token(Token = "0x60098F9")]
[Address(RVA = "0x1637B10", Offset = "0x1636910", VA = "0x181637B10", Slot = "25")]
public sealed override long Seek(long offset, SeekOrigin origin)
{
/*
An exception occurred when decompiling this method (060098F9)
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: 0x060098FA RID: 39162 RVA: 0x001FB974 File Offset: 0x001F9B74
[Token(Token = "0x60098FA")]
[Address(RVA = "0x1637B60", Offset = "0x1636960", VA = "0x181637B60", Slot = "26")]
public sealed override void SetLength(long value)
{
/*
An exception occurred when decompiling this method (060098FA)
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: 0x1700185A RID: 6234
// (get) Token: 0x060098FB RID: 39163 RVA: 0x001FB988 File Offset: 0x001F9B88
[Token(Token = "0x1700185A")]
public virtual long TotalIn
{
[Token(Token = "0x60098FB")]
[Address(RVA = "0x16383D0", Offset = "0x16371D0", VA = "0x1816383D0", Slot = "33")]
get
{
return this.z.total_in;
}
}
// Token: 0x1700185B RID: 6235
// (get) Token: 0x060098FC RID: 39164 RVA: 0x001FB9A8 File Offset: 0x001F9BA8
[Token(Token = "0x1700185B")]
public virtual long TotalOut
{
[Token(Token = "0x60098FC")]
[Address(RVA = "0x130D260", Offset = "0x130C060", VA = "0x18130D260", Slot = "34")]
get
{
return this.z.total_out;
}
}
// Token: 0x060098FD RID: 39165 RVA: 0x001FB9C8 File Offset: 0x001F9BC8
[Token(Token = "0x60098FD")]
[Address(RVA = "0x1637BB0", Offset = "0x16369B0", VA = "0x181637BB0", Slot = "29")]
public sealed override void Write(byte[] buffer, int offset, int count)
{
/*
An exception occurred when decompiling this method (060098FD)
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: 0x04006822 RID: 26658
[Token(Token = "0x4006822")]
private const int BufferSize = 512;
// Token: 0x04006823 RID: 26659
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x4006823")]
protected ZStream z;
// Token: 0x04006824 RID: 26660
[FieldOffset(Offset = "0x30")]
[Token(Token = "0x4006824")]
protected int flushLevel;
// Token: 0x04006825 RID: 26661
[FieldOffset(Offset = "0x38")]
[Token(Token = "0x4006825")]
protected byte[] buf;
// Token: 0x04006826 RID: 26662
[FieldOffset(Offset = "0x40")]
[Token(Token = "0x4006826")]
protected byte[] buf1;
// Token: 0x04006827 RID: 26663
[FieldOffset(Offset = "0x48")]
[Token(Token = "0x4006827")]
protected bool compress;
// Token: 0x04006828 RID: 26664
[FieldOffset(Offset = "0x50")]
[Token(Token = "0x4006828")]
protected Stream input;
// Token: 0x04006829 RID: 26665
[FieldOffset(Offset = "0x58")]
[Token(Token = "0x4006829")]
protected bool closed;
// Token: 0x0400682A RID: 26666
[FieldOffset(Offset = "0x59")]
[Token(Token = "0x400682A")]
private bool nomoreinput;
}
}
@@ -0,0 +1,631 @@
using System;
using System.IO;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib
{
// Token: 0x02001935 RID: 6453
[Token(Token = "0x2001935")]
public class ZOutputStream : Stream
{
// Token: 0x060098FE RID: 39166 RVA: 0x001FB9DC File Offset: 0x001F9BDC
[Token(Token = "0x60098FE")]
[Address(RVA = "0x1638840", Offset = "0x1637640", VA = "0x181638840")]
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: 0x060098FF RID: 39167 RVA: 0x001FBA08 File Offset: 0x001F9C08
[Token(Token = "0x60098FF")]
[Address(RVA = "0x1638D20", Offset = "0x1637B20", VA = "0x181638D20")]
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: 0x06009900 RID: 39168 RVA: 0x001FBAA8 File Offset: 0x001F9CA8
[Token(Token = "0x6009900")]
[Address(RVA = "0x1638E70", Offset = "0x1637C70", VA = "0x181638E70")]
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: 0x06009901 RID: 39169 RVA: 0x001FBB44 File Offset: 0x001F9D44
[Token(Token = "0x6009901")]
[Address(RVA = "0x1638BF0", Offset = "0x16379F0", VA = "0x181638BF0")]
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: 0x06009902 RID: 39170 RVA: 0x001FBBD8 File Offset: 0x001F9DD8
[Token(Token = "0x6009902")]
[Address(RVA = "0x1638FD0", Offset = "0x1637DD0", VA = "0x181638FD0")]
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: 0x06009903 RID: 39171 RVA: 0x001FBC44 File Offset: 0x001F9E44
[Token(Token = "0x6009903")]
[Address(RVA = "0x16390F0", Offset = "0x1637EF0", VA = "0x1816390F0")]
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: 0x1700185C RID: 6236
// (get) Token: 0x06009904 RID: 39172 RVA: 0x001FBCAC File Offset: 0x001F9EAC
[Token(Token = "0x1700185C")]
public sealed override bool CanRead
{
[Token(Token = "0x6009904")]
[Address(RVA = "0x403930", Offset = "0x402730", VA = "0x180403930", Slot = "7")]
get
{
}
}
// Token: 0x1700185D RID: 6237
// (get) Token: 0x06009905 RID: 39173 RVA: 0x001FBCBC File Offset: 0x001F9EBC
[Token(Token = "0x1700185D")]
public sealed override bool CanSeek
{
[Token(Token = "0x6009905")]
[Address(RVA = "0x403930", Offset = "0x402730", VA = "0x180403930", Slot = "8")]
get
{
}
}
// Token: 0x1700185E RID: 6238
// (get) Token: 0x06009906 RID: 39174 RVA: 0x001FBCCC File Offset: 0x001F9ECC
[Token(Token = "0x1700185E")]
public sealed override bool CanWrite
{
[Token(Token = "0x6009906")]
[Address(RVA = "0x1638320", Offset = "0x1637120", VA = "0x181638320", Slot = "9")]
get
{
return !this.closed;
}
}
// Token: 0x06009907 RID: 39175 RVA: 0x001FBCE4 File Offset: 0x001F9EE4
[Token(Token = "0x6009907")]
[Address(RVA = "0x1638440", Offset = "0x1637240", VA = "0x181638440", Slot = "15")]
public override void Close()
{
if (!this.closed)
{
this.DoClose();
base.Close();
return;
}
}
// Token: 0x06009908 RID: 39176 RVA: 0x001FBD08 File Offset: 0x001F9F08
[Token(Token = "0x6009908")]
[Address(RVA = "0x1638470", Offset = "0x1637270", VA = "0x181638470")]
private void DoClose()
{
int num;
do
{
num = 0;
this.End();
this.closed = true;
Platform.Dispose(this.output);
this.output = (ulong)0L;
}
while (num != 0);
}
// Token: 0x06009909 RID: 39177 RVA: 0x001FBD3C File Offset: 0x001F9F3C
[Token(Token = "0x6009909")]
[Address(RVA = "0x1638580", Offset = "0x1637380", VA = "0x181638580", 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_61;
}
InfBlocks blocks = istate.blocks;
if (blocks != 0)
{
blocks.free(zstream);
}
istate.blocks = num;
zstream.istate = num;
}
Deflate dstate = zstream.dstate;
if (dstate != 0)
{
int num2 = dstate.deflateEnd();
zstream.dstate = num;
}
IL_61:
ZStream zstream2 = this.z;
zstream2.next_in = num;
zstream2.next_out = num;
zstream2.msg = num;
zstream2._adler = num;
this.z = num;
}
}
// Token: 0x0600990A RID: 39178 RVA: 0x001FBDE0 File Offset: 0x001F9FE0
[Token(Token = "0x600990A")]
[Address(RVA = "0x1638620", Offset = "0x1637420", VA = "0x181638620", 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: 0x0600990B RID: 39179 RVA: 0x001FBEE0 File Offset: 0x001FA0E0
[Token(Token = "0x600990B")]
[Address(RVA = "0x1638810", Offset = "0x1637610", VA = "0x181638810", Slot = "17")]
public override void Flush()
{
bool canRead = this.output.CanRead;
}
// Token: 0x1700185F RID: 6239
// (get) Token: 0x0600990C RID: 39180 RVA: 0x001FBF00 File Offset: 0x001FA100
// (set) Token: 0x0600990D RID: 39181 RVA: 0x001FBF14 File Offset: 0x001FA114
[Token(Token = "0x1700185F")]
public virtual int FlushMode
{
[Token(Token = "0x600990C")]
[Address(RVA = "0x4730E0", Offset = "0x471EE0", VA = "0x1804730E0", Slot = "33")]
get
{
return this.flushLevel;
}
[Token(Token = "0x600990D")]
[Address(RVA = "0x6CBD90", Offset = "0x6CAB90", VA = "0x1806CBD90", Slot = "34")]
set
{
this.flushLevel = value;
}
}
// Token: 0x17001860 RID: 6240
// (get) Token: 0x0600990E RID: 39182 RVA: 0x001FBF28 File Offset: 0x001FA128
[Token(Token = "0x17001860")]
public sealed override long Length
{
[Token(Token = "0x600990E")]
[Address(RVA = "0x1639220", Offset = "0x1638020", VA = "0x181639220", Slot = "10")]
get
{
/*
An exception occurred when decompiling this method (0600990E)
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: 0x17001861 RID: 6241
// (get) Token: 0x0600990F RID: 39183 RVA: 0x001FBF3C File Offset: 0x001FA13C
// (set) Token: 0x06009910 RID: 39184 RVA: 0x001FBF50 File Offset: 0x001FA150
[Token(Token = "0x17001861")]
public sealed override long Position
{
[Token(Token = "0x600990F")]
[Address(RVA = "0x1639270", Offset = "0x1638070", VA = "0x181639270", Slot = "11")]
get
{
/*
An exception occurred when decompiling this method (0600990F)
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 = "0x6009910")]
[Address(RVA = "0x16392C0", Offset = "0x16380C0", VA = "0x1816392C0", Slot = "12")]
set
{
/*
An exception occurred when decompiling this method (06009910)
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: 0x06009911 RID: 39185 RVA: 0x001FBF64 File Offset: 0x001FA164
[Token(Token = "0x6009911")]
[Address(RVA = "0x16388F0", Offset = "0x16376F0", VA = "0x1816388F0", Slot = "27")]
public sealed override int Read(byte[] buffer, int offset, int count)
{
/*
An exception occurred when decompiling this method (06009911)
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: 0x06009912 RID: 39186 RVA: 0x001FBF78 File Offset: 0x001FA178
[Token(Token = "0x6009912")]
[Address(RVA = "0x1638940", Offset = "0x1637740", VA = "0x181638940", Slot = "25")]
public sealed override long Seek(long offset, SeekOrigin origin)
{
/*
An exception occurred when decompiling this method (06009912)
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: 0x06009913 RID: 39187 RVA: 0x001FBF8C File Offset: 0x001FA18C
[Token(Token = "0x6009913")]
[Address(RVA = "0x1638990", Offset = "0x1637790", VA = "0x181638990", Slot = "26")]
public sealed override void SetLength(long value)
{
/*
An exception occurred when decompiling this method (06009913)
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: 0x17001862 RID: 6242
// (get) Token: 0x06009914 RID: 39188 RVA: 0x001FBFA0 File Offset: 0x001FA1A0
[Token(Token = "0x17001862")]
public virtual long TotalIn
{
[Token(Token = "0x6009914")]
[Address(RVA = "0x16383D0", Offset = "0x16371D0", VA = "0x1816383D0", Slot = "35")]
get
{
return this.z.total_in;
}
}
// Token: 0x17001863 RID: 6243
// (get) Token: 0x06009915 RID: 39189 RVA: 0x001FBFC0 File Offset: 0x001FA1C0
[Token(Token = "0x17001863")]
public virtual long TotalOut
{
[Token(Token = "0x6009915")]
[Address(RVA = "0x130D260", Offset = "0x130C060", VA = "0x18130D260", Slot = "36")]
get
{
return this.z.total_out;
}
}
// Token: 0x06009916 RID: 39190 RVA: 0x001FBFE0 File Offset: 0x001FA1E0
[Token(Token = "0x6009916")]
[Address(RVA = "0x16389E0", Offset = "0x16377E0", VA = "0x1816389E0", 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: 0x06009917 RID: 39191 RVA: 0x001FC114 File Offset: 0x001FA314
[Token(Token = "0x6009917")]
[Address(RVA = "0x1636E70", Offset = "0x1635C70", VA = "0x181636E70", Slot = "30")]
public override void WriteByte(byte b)
{
this.buf1[0] = b;
int num = this.ReadByte();
}
// Token: 0x0400682B RID: 26667
[Token(Token = "0x400682B")]
private const int BufferSize = 512;
// Token: 0x0400682C RID: 26668
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x400682C")]
protected ZStream z;
// Token: 0x0400682D RID: 26669
[FieldOffset(Offset = "0x30")]
[Token(Token = "0x400682D")]
protected int flushLevel;
// Token: 0x0400682E RID: 26670
[FieldOffset(Offset = "0x38")]
[Token(Token = "0x400682E")]
protected byte[] buf;
// Token: 0x0400682F RID: 26671
[FieldOffset(Offset = "0x40")]
[Token(Token = "0x400682F")]
protected byte[] buf1;
// Token: 0x04006830 RID: 26672
[FieldOffset(Offset = "0x48")]
[Token(Token = "0x4006830")]
protected bool compress;
// Token: 0x04006831 RID: 26673
[FieldOffset(Offset = "0x50")]
[Token(Token = "0x4006831")]
protected Stream output;
// Token: 0x04006832 RID: 26674
[FieldOffset(Offset = "0x58")]
[Token(Token = "0x4006832")]
protected bool closed;
}
}
@@ -0,0 +1,452 @@
using System;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib
{
// Token: 0x02001936 RID: 6454
[Token(Token = "0x2001936")]
public sealed class ZStream
{
// Token: 0x06009918 RID: 39192 RVA: 0x001FC13C File Offset: 0x001FA33C
[Token(Token = "0x6009918")]
[Address(RVA = "0x1639940", Offset = "0x1638740", VA = "0x181639940")]
public int inflateInit()
{
int num = 0;
return this.inflateInit(15, num != 0);
}
// Token: 0x06009919 RID: 39193 RVA: 0x001FC154 File Offset: 0x001FA354
[Token(Token = "0x6009919")]
[Address(RVA = "0x1639920", Offset = "0x1638720", VA = "0x181639920")]
public int inflateInit(bool nowrap)
{
return this.inflateInit(15, nowrap);
}
// Token: 0x0600991A RID: 39194 RVA: 0x001FC16C File Offset: 0x001FA36C
[Token(Token = "0x600991A")]
[Address(RVA = "0x1639930", Offset = "0x1638730", VA = "0x181639930")]
public int inflateInit(int w)
{
int num = 0;
return this.inflateInit(w, num != 0);
}
// Token: 0x0600991B RID: 39195 RVA: 0x001FC184 File Offset: 0x001FA384
[Token(Token = "0x600991B")]
[Address(RVA = "0x16397C0", Offset = "0x16385C0", VA = "0x1816397C0")]
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 = 1;
if (array <= (ulong)7L)
{
inflate.wbits = w;
Inflate inflate2 = this.istate;
InfBlocks infBlocks = new InfBlocks(this, num, 1);
inflate2.blocks = infBlocks;
int num2 = inflate.inflateReset(this);
}
return -2;
}
// Token: 0x0600991C RID: 39196 RVA: 0x001FC204 File Offset: 0x001FA404
[Token(Token = "0x600991C")]
[Address(RVA = "0x1639AB0", Offset = "0x16388B0", VA = "0x181639AB0")]
public int inflate(int f)
{
Inflate inflate = this.istate;
if (inflate != 0)
{
return inflate.inflate(this, f);
}
return -2;
}
// Token: 0x0600991D RID: 39197 RVA: 0x001FC228 File Offset: 0x001FA428
[Token(Token = "0x600991D")]
[Address(RVA = "0x1639770", Offset = "0x1638570", VA = "0x181639770")]
public int inflateEnd()
{
Inflate inflate = this.istate;
if (inflate != 0)
{
InfBlocks blocks = inflate.blocks;
if (blocks != 0)
{
blocks.free(this);
}
int num = 0;
inflate.blocks = num;
this.istate = num;
return num;
}
return -2;
}
// Token: 0x0600991E RID: 39198 RVA: 0x001FC268 File Offset: 0x001FA468
[Token(Token = "0x600991E")]
[Address(RVA = "0x1639A90", Offset = "0x1638890", VA = "0x181639A90")]
public int inflateSync()
{
Inflate inflate = this.istate;
if (inflate != 0)
{
return inflate.inflateSync(this);
}
return -2;
}
// Token: 0x0600991F RID: 39199 RVA: 0x001FC28C File Offset: 0x001FA48C
[Token(Token = "0x600991F")]
[Address(RVA = "0x1639950", Offset = "0x1638750", VA = "0x181639950")]
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)
{
Adler32 adler2 = this._adler;
Inflate inflate2 = this.istate;
long num3;
this.adler = num3;
uint num4 = num2 - 1U;
inflate2.blocks.set_dictionary(dictionary, dictLength, (int)num4);
this.istate.mode = (int)((ulong)7L);
}
}
throw new NullReferenceException();
}
// Token: 0x06009920 RID: 39200 RVA: 0x001FC30C File Offset: 0x001FA50C
[Token(Token = "0x6009920")]
[Address(RVA = "0x16394F0", Offset = "0x16382F0", VA = "0x1816394F0")]
public int deflateInit(int level)
{
Deflate deflate = new Deflate();
this.dstate = deflate;
return deflate.deflateInit(this, level, 15);
}
// Token: 0x06009921 RID: 39201 RVA: 0x001FC338 File Offset: 0x001FA538
[Token(Token = "0x6009921")]
[Address(RVA = "0x1639580", Offset = "0x1638380", VA = "0x181639580")]
public int deflateInit(int level, bool nowrap)
{
return this.deflateInit(level, 15, nowrap);
}
// Token: 0x06009922 RID: 39202 RVA: 0x001FC350 File Offset: 0x001FA550
[Token(Token = "0x6009922")]
[Address(RVA = "0x1639460", Offset = "0x1638260", VA = "0x181639460")]
public int deflateInit(int level, int bits)
{
Deflate deflate = new Deflate();
this.dstate = deflate;
return deflate.deflateInit(this, bits, bits);
}
// Token: 0x06009923 RID: 39203 RVA: 0x001FC37C File Offset: 0x001FA57C
[Token(Token = "0x6009923")]
[Address(RVA = "0x16393B0", Offset = "0x16381B0", VA = "0x1816393B0")]
public int deflateInit(int level, int bits, bool nowrap)
{
Deflate deflate = new Deflate();
this.dstate = deflate;
return deflate.deflateInit(this, bits, bits);
}
// Token: 0x06009924 RID: 39204 RVA: 0x001FC3A8 File Offset: 0x001FA5A8
[Token(Token = "0x6009924")]
[Address(RVA = "0x1639630", Offset = "0x1638430", VA = "0x181639630")]
public int deflate(int flush)
{
Deflate deflate = this.dstate;
if (deflate != 0)
{
return deflate.deflate(this, flush);
}
return -2;
}
// Token: 0x06009925 RID: 39205 RVA: 0x001FC3CC File Offset: 0x001FA5CC
[Token(Token = "0x6009925")]
[Address(RVA = "0x1639370", Offset = "0x1638170", VA = "0x181639370")]
public int deflateEnd()
{
Deflate deflate = this.dstate;
if (deflate != 0)
{
int num = deflate.deflateEnd();
this.dstate = (ulong)0L;
return num;
}
return -2;
}
// Token: 0x06009926 RID: 39206 RVA: 0x001FC3F8 File Offset: 0x001FA5F8
[Token(Token = "0x6009926")]
[Address(RVA = "0x16395B0", Offset = "0x16383B0", VA = "0x1816395B0")]
public int deflateParams(int level, int strategy)
{
Deflate deflate = this.dstate;
if (deflate != 0)
{
return deflate.deflateParams(this, strategy, strategy);
}
return -2;
}
// Token: 0x06009927 RID: 39207 RVA: 0x001FC41C File Offset: 0x001FA61C
[Token(Token = "0x6009927")]
[Address(RVA = "0x16395F0", Offset = "0x16383F0", VA = "0x1816395F0")]
public int deflateSetDictionary(byte[] dictionary, int dictLength)
{
Deflate deflate = this.dstate;
if (deflate != 0)
{
return deflate.deflateSetDictionary(this, dictionary, dictLength);
}
return -2;
}
// Token: 0x06009928 RID: 39208 RVA: 0x001FC440 File Offset: 0x001FA640
[Token(Token = "0x6009928")]
[Address(RVA = "0x1639650", Offset = "0x1638450", VA = "0x181639650")]
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: 0x06009929 RID: 39209 RVA: 0x001FC4FC File Offset: 0x001FA6FC
[Token(Token = "0x6009929")]
[Address(RVA = "0x1639AD0", Offset = "0x16388D0", VA = "0x181639AD0")]
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: 0x0600992A RID: 39210 RVA: 0x001FC588 File Offset: 0x001FA788
[Token(Token = "0x600992A")]
[Address(RVA = "0x1639750", Offset = "0x1638550", VA = "0x181639750")]
public void free()
{
int num = 0;
this.next_in = num;
this.next_out = num;
this.msg = num;
this._adler = num;
}
// Token: 0x0600992B RID: 39211 RVA: 0x001FC5B4 File Offset: 0x001FA7B4
[Token(Token = "0x600992B")]
[Address(RVA = "0x1639310", Offset = "0x1638110", VA = "0x181639310")]
public ZStream()
{
Adler32 adler = new Adler32();
this._adler = adler;
base..ctor();
}
// Token: 0x04006833 RID: 26675
[Token(Token = "0x4006833")]
private const int MAX_WBITS = 15;
// Token: 0x04006834 RID: 26676
[Token(Token = "0x4006834")]
private const int DEF_WBITS = 15;
// Token: 0x04006835 RID: 26677
[Token(Token = "0x4006835")]
private const int Z_NO_FLUSH = 0;
// Token: 0x04006836 RID: 26678
[Token(Token = "0x4006836")]
private const int Z_PARTIAL_FLUSH = 1;
// Token: 0x04006837 RID: 26679
[Token(Token = "0x4006837")]
private const int Z_SYNC_FLUSH = 2;
// Token: 0x04006838 RID: 26680
[Token(Token = "0x4006838")]
private const int Z_FULL_FLUSH = 3;
// Token: 0x04006839 RID: 26681
[Token(Token = "0x4006839")]
private const int Z_FINISH = 4;
// Token: 0x0400683A RID: 26682
[Token(Token = "0x400683A")]
private const int MAX_MEM_LEVEL = 9;
// Token: 0x0400683B RID: 26683
[Token(Token = "0x400683B")]
private const int Z_OK = 0;
// Token: 0x0400683C RID: 26684
[Token(Token = "0x400683C")]
private const int Z_STREAM_END = 1;
// Token: 0x0400683D RID: 26685
[Token(Token = "0x400683D")]
private const int Z_NEED_DICT = 2;
// Token: 0x0400683E RID: 26686
[Token(Token = "0x400683E")]
private const int Z_ERRNO = -1;
// Token: 0x0400683F RID: 26687
[Token(Token = "0x400683F")]
private const int Z_STREAM_ERROR = -2;
// Token: 0x04006840 RID: 26688
[Token(Token = "0x4006840")]
private const int Z_DATA_ERROR = -3;
// Token: 0x04006841 RID: 26689
[Token(Token = "0x4006841")]
private const int Z_MEM_ERROR = -4;
// Token: 0x04006842 RID: 26690
[Token(Token = "0x4006842")]
private const int Z_BUF_ERROR = -5;
// Token: 0x04006843 RID: 26691
[Token(Token = "0x4006843")]
private const int Z_VERSION_ERROR = -6;
// Token: 0x04006844 RID: 26692
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x4006844")]
public byte[] next_in;
// Token: 0x04006845 RID: 26693
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x4006845")]
public int next_in_index;
// Token: 0x04006846 RID: 26694
[FieldOffset(Offset = "0x1C")]
[Token(Token = "0x4006846")]
public int avail_in;
// Token: 0x04006847 RID: 26695
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x4006847")]
public long total_in;
// Token: 0x04006848 RID: 26696
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x4006848")]
public byte[] next_out;
// Token: 0x04006849 RID: 26697
[FieldOffset(Offset = "0x30")]
[Token(Token = "0x4006849")]
public int next_out_index;
// Token: 0x0400684A RID: 26698
[FieldOffset(Offset = "0x34")]
[Token(Token = "0x400684A")]
public int avail_out;
// Token: 0x0400684B RID: 26699
[FieldOffset(Offset = "0x38")]
[Token(Token = "0x400684B")]
public long total_out;
// Token: 0x0400684C RID: 26700
[FieldOffset(Offset = "0x40")]
[Token(Token = "0x400684C")]
public string msg;
// Token: 0x0400684D RID: 26701
[FieldOffset(Offset = "0x48")]
[Token(Token = "0x400684D")]
internal Deflate dstate;
// Token: 0x0400684E RID: 26702
[FieldOffset(Offset = "0x50")]
[Token(Token = "0x400684E")]
internal Inflate istate;
// Token: 0x0400684F RID: 26703
[FieldOffset(Offset = "0x58")]
[Token(Token = "0x400684F")]
internal int data_type;
// Token: 0x04006850 RID: 26704
[FieldOffset(Offset = "0x60")]
[Token(Token = "0x4006850")]
public long adler;
// Token: 0x04006851 RID: 26705
[FieldOffset(Offset = "0x68")]
[Token(Token = "0x4006851")]
internal Adler32 _adler;
}
}
@@ -0,0 +1,397 @@
using System;
using System.Runtime.CompilerServices;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib
{
// Token: 0x02001937 RID: 6455
[Token(Token = "0x2001937")]
internal sealed class ZTree
{
// Token: 0x0600992C RID: 39212 RVA: 0x001FC5D4 File Offset: 0x001FA7D4
[Token(Token = "0x600992C")]
[Address(RVA = "0x163A470", Offset = "0x1639270", VA = "0x18163A470")]
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: 0x0600992D RID: 39213 RVA: 0x001FC5FC File Offset: 0x001FA7FC
[Token(Token = "0x600992D")]
[Address(RVA = "0x163A560", Offset = "0x1639360", VA = "0x18163A560")]
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: 0x0600992E RID: 39214 RVA: 0x001FC7B4 File Offset: 0x001FA9B4
[Token(Token = "0x600992E")]
[Address(RVA = "0x1639DB0", Offset = "0x1638BB0", VA = "0x181639DB0")]
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: 0x0600992F RID: 39215 RVA: 0x001FCA54 File Offset: 0x001FAC54
[Token(Token = "0x600992F")]
[Address(RVA = "0x163AA10", Offset = "0x1639810", VA = "0x18163AA10")]
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: 0x06009930 RID: 39216 RVA: 0x001FCABC File Offset: 0x001FACBC
[Token(Token = "0x6009930")]
[Address(RVA = "0x1639D80", Offset = "0x1638B80", VA = "0x181639D80")]
internal static int bi_reverse(int code, int len)
{
int num = 0;
int num2 = len - 1;
return num + num;
}
// Token: 0x06009931 RID: 39217 RVA: 0x001FCAD4 File Offset: 0x001FACD4
[Token(Token = "0x6009931")]
[Address(RVA = "0x3F5100", Offset = "0x3F3F00", VA = "0x1803F5100")]
public ZTree()
{
}
// Token: 0x06009932 RID: 39218 RVA: 0x001FCAE8 File Offset: 0x001FACE8
// Note: this type is marked as 'beforefieldinit'.
[Token(Token = "0x6009932")]
[Address(RVA = "0x1639B90", Offset = "0x1638990", VA = "0x181639B90")]
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: 0x04006852 RID: 26706
[Token(Token = "0x4006852")]
private const int MAX_BITS = 15;
// Token: 0x04006853 RID: 26707
[Token(Token = "0x4006853")]
private const int BL_CODES = 19;
// Token: 0x04006854 RID: 26708
[Token(Token = "0x4006854")]
private const int D_CODES = 30;
// Token: 0x04006855 RID: 26709
[Token(Token = "0x4006855")]
private const int LITERALS = 256;
// Token: 0x04006856 RID: 26710
[Token(Token = "0x4006856")]
private const int LENGTH_CODES = 29;
// Token: 0x04006857 RID: 26711
[Token(Token = "0x4006857")]
private const int L_CODES = 286;
// Token: 0x04006858 RID: 26712
[Token(Token = "0x4006858")]
private const int HEAP_SIZE = 573;
// Token: 0x04006859 RID: 26713
[Token(Token = "0x4006859")]
internal const int MAX_BL_BITS = 7;
// Token: 0x0400685A RID: 26714
[Token(Token = "0x400685A")]
internal const int END_BLOCK = 256;
// Token: 0x0400685B RID: 26715
[Token(Token = "0x400685B")]
internal const int REP_3_6 = 16;
// Token: 0x0400685C RID: 26716
[Token(Token = "0x400685C")]
internal const int REPZ_3_10 = 17;
// Token: 0x0400685D RID: 26717
[Token(Token = "0x400685D")]
internal const int REPZ_11_138 = 18;
// Token: 0x0400685E RID: 26718
[Token(Token = "0x400685E")]
internal static readonly int[] extra_lbits;
// Token: 0x0400685F RID: 26719
[Token(Token = "0x400685F")]
internal static readonly int[] extra_dbits;
// Token: 0x04006860 RID: 26720
[Token(Token = "0x4006860")]
internal static readonly int[] extra_blbits;
// Token: 0x04006861 RID: 26721
[Token(Token = "0x4006861")]
internal static readonly byte[] bl_order;
// Token: 0x04006862 RID: 26722
[Token(Token = "0x4006862")]
internal const int Buf_size = 16;
// Token: 0x04006863 RID: 26723
[Token(Token = "0x4006863")]
internal const int DIST_CODE_LEN = 512;
// Token: 0x04006864 RID: 26724
[Token(Token = "0x4006864")]
internal static readonly byte[] _dist_code;
// Token: 0x04006865 RID: 26725
[Token(Token = "0x4006865")]
internal static readonly byte[] _length_code;
// Token: 0x04006866 RID: 26726
[Token(Token = "0x4006866")]
internal static readonly int[] base_length;
// Token: 0x04006867 RID: 26727
[Token(Token = "0x4006867")]
internal static readonly int[] base_dist;
// Token: 0x04006868 RID: 26728
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x4006868")]
internal short[] dyn_tree;
// Token: 0x04006869 RID: 26729
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x4006869")]
internal int max_code;
// Token: 0x0400686A RID: 26730
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x400686A")]
internal StaticTree stat_desc;
}
}