This commit is contained in:
niko
2026-04-12 16:51:38 +02:00
parent 1b6f6d81d0
commit c12fbe3fc6
17828 changed files with 2994770 additions and 0 deletions
@@ -0,0 +1,67 @@
using System;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib
{
// Token: 0x02001A09 RID: 6665
[Token(Token = "0x2001A09")]
internal sealed class Adler32
{
// Token: 0x06009C46 RID: 40006 RVA: 0x001FF59C File Offset: 0x001FD79C
[Token(Token = "0x6009C46")]
[Address(RVA = "0x4DB730", Offset = "0x4DA730", VA = "0x1804DB730")]
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: 0x06009C47 RID: 40007 RVA: 0x001FF6A0 File Offset: 0x001FD8A0
[Token(Token = "0x6009C47")]
[Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")]
public Adler32()
{
}
// Token: 0x040068A3 RID: 26787
[Token(Token = "0x40068A3")]
private const int BASE = 65521;
// Token: 0x040068A4 RID: 26788
[Token(Token = "0x40068A4")]
private const int NMAX = 5552;
}
}
@@ -0,0 +1,2192 @@
using System;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib
{
// Token: 0x02001A0A RID: 6666
[Token(Token = "0x2001A0A")]
public sealed class Deflate
{
// Token: 0x06009C48 RID: 40008 RVA: 0x001FF6B4 File Offset: 0x001FD8B4
[Token(Token = "0x6009C48")]
[Address(RVA = "0x4E13F0", Offset = "0x4E03F0", VA = "0x1804E13F0")]
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: 0x06009C49 RID: 40009 RVA: 0x001FFA60 File Offset: 0x001FDC60
[Token(Token = "0x6009C49")]
[Address(RVA = "0x4E1DF0", Offset = "0x4E0DF0", VA = "0x1804E1DF0")]
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: 0x06009C4A RID: 40010 RVA: 0x001FFB08 File Offset: 0x001FDD08
[Token(Token = "0x6009C4A")]
[Address(RVA = "0x4E51D0", Offset = "0x4E41D0", VA = "0x1804E51D0")]
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: 0x06009C4B RID: 40011 RVA: 0x001FFC14 File Offset: 0x001FDE14
[Token(Token = "0x6009C4B")]
[Address(RVA = "0x4E6710", Offset = "0x4E5710", VA = "0x1804E6710")]
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: 0x06009C4C RID: 40012 RVA: 0x001FFCCC File Offset: 0x001FDECC
[Token(Token = "0x6009C4C")]
[Address(RVA = "0x4E50A0", Offset = "0x4E40A0", VA = "0x1804E50A0")]
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: 0x06009C4D RID: 40013 RVA: 0x001FFD44 File Offset: 0x001FDF44
[Token(Token = "0x6009C4D")]
[Address(RVA = "0x4E5A20", Offset = "0x4E4A20", VA = "0x1804E5A20")]
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: 0x06009C4E RID: 40014 RVA: 0x001FFDE8 File Offset: 0x001FDFE8
[Token(Token = "0x6009C4E")]
[Address(RVA = "0x4E6650", Offset = "0x4E5650", VA = "0x1804E6650")]
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: 0x06009C4F RID: 40015 RVA: 0x001FFE18 File Offset: 0x001FE018
[Token(Token = "0x6009C4F")]
[Address(RVA = "0x4E5E10", Offset = "0x4E4E10", VA = "0x1804E5E10")]
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: 0x06009C50 RID: 40016 RVA: 0x001FFE88 File Offset: 0x001FE088
[Token(Token = "0x6009C50")]
[Address(RVA = "0x4E2B90", Offset = "0x4E1B90", VA = "0x1804E2B90")]
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: 0x06009C51 RID: 40017 RVA: 0x001FFF04 File Offset: 0x001FE104
[Token(Token = "0x6009C51")]
[Address(RVA = "0x4E6070", Offset = "0x4E5070", VA = "0x1804E6070")]
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: 0x06009C52 RID: 40018 RVA: 0x001FFF70 File Offset: 0x001FE170
[Token(Token = "0x6009C52")]
[Address(RVA = "0x4E6350", Offset = "0x4E5350", VA = "0x1804E6350")]
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: 0x06009C53 RID: 40019 RVA: 0x00200014 File Offset: 0x001FE214
[Token(Token = "0x6009C53")]
[Address(RVA = "0x4E5D00", Offset = "0x4E4D00", VA = "0x1804E5D00")]
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: 0x06009C54 RID: 40020 RVA: 0x0020003C File Offset: 0x001FE23C
[Token(Token = "0x6009C54")]
[Address(RVA = "0x4E5D50", Offset = "0x4E4D50", VA = "0x1804E5D50")]
internal void put_byte(byte c)
{
int num = this.pending;
byte[] array = this.pending_buf;
int num2 = num + 1;
this.pending = num2;
}
// Token: 0x06009C55 RID: 40021 RVA: 0x00200068 File Offset: 0x001FE268
[Token(Token = "0x6009C55")]
[Address(RVA = "0x4E5D90", Offset = "0x4E4D90", VA = "0x1804E5D90")]
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: 0x06009C56 RID: 40022 RVA: 0x002000B0 File Offset: 0x001FE2B0
[Token(Token = "0x6009C56")]
[Address(RVA = "0x4E5C80", Offset = "0x4E4C80", VA = "0x1804E5C80")]
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: 0x06009C57 RID: 40023 RVA: 0x002000F8 File Offset: 0x001FE2F8
[Token(Token = "0x6009C57")]
[Address(RVA = "0x4E62E0", Offset = "0x4E52E0", VA = "0x1804E62E0")]
internal void send_code(int c, short[] tree)
{
int length = tree.Length;
short num;
short num2;
this.send_bits((int)num, (int)num2);
}
// Token: 0x06009C58 RID: 40024 RVA: 0x0020011C File Offset: 0x001FE31C
[Token(Token = "0x6009C58")]
[Address(RVA = "0x4E61F0", Offset = "0x4E51F0", VA = "0x1804E61F0")]
internal void send_bits(int val, int length)
{
int num = this.bi_valid;
uint num2;
num2 -= (uint)length;
this.bi_buf = (uint)val;
}
// Token: 0x06009C59 RID: 40025 RVA: 0x002001A8 File Offset: 0x001FE3A8
[Token(Token = "0x6009C59")]
[Address(RVA = "0x4E1F20", Offset = "0x4E0F20", VA = "0x1804E1F20")]
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: 0x06009C5A RID: 40026 RVA: 0x00200258 File Offset: 0x001FE458
[Token(Token = "0x6009C5A")]
[Address(RVA = "0x4E2680", Offset = "0x4E1680", VA = "0x1804E2680")]
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: 0x06009C5B RID: 40027 RVA: 0x0020034C File Offset: 0x001FE54C
[Token(Token = "0x6009C5B")]
[Address(RVA = "0x4E2CF0", Offset = "0x4E1CF0", VA = "0x1804E2CF0")]
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: 0x06009C5C RID: 40028 RVA: 0x00200480 File Offset: 0x001FE680
[Token(Token = "0x6009C5C")]
[Address(RVA = "0x4E6550", Offset = "0x4E5550", VA = "0x1804E6550")]
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: 0x06009C5D RID: 40029 RVA: 0x002004DC File Offset: 0x001FE6DC
[Token(Token = "0x6009C5D")]
[Address(RVA = "0x4E29C0", Offset = "0x4E19C0", VA = "0x1804E29C0")]
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: 0x06009C5E RID: 40030 RVA: 0x00200578 File Offset: 0x001FE778
[Token(Token = "0x6009C5E")]
[Address(RVA = "0x4E2AB0", Offset = "0x4E1AB0", VA = "0x1804E2AB0")]
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: 0x06009C5F RID: 40031 RVA: 0x00200618 File Offset: 0x001FE818
[Token(Token = "0x6009C5F")]
[Address(RVA = "0x4E31A0", Offset = "0x4E21A0", VA = "0x1804E31A0")]
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: 0x06009C60 RID: 40032 RVA: 0x00200668 File Offset: 0x001FE868
[Token(Token = "0x6009C60")]
[Address(RVA = "0x4E5040", Offset = "0x4E4040", VA = "0x1804E5040")]
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: 0x06009C61 RID: 40033 RVA: 0x002006B4 File Offset: 0x001FE8B4
[Token(Token = "0x6009C61")]
[Address(RVA = "0x4E4C30", Offset = "0x4E3C30", VA = "0x1804E4C30")]
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: 0x06009C62 RID: 40034 RVA: 0x002007F0 File Offset: 0x001FE9F0
[Token(Token = "0x6009C62")]
[Address(RVA = "0x4E25E0", Offset = "0x4E15E0", VA = "0x1804E25E0")]
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: 0x06009C63 RID: 40035 RVA: 0x00200848 File Offset: 0x001FEA48
[Token(Token = "0x6009C63")]
[Address(RVA = "0x4E20C0", Offset = "0x4E10C0", VA = "0x1804E20C0")]
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: 0x06009C64 RID: 40036 RVA: 0x00200A0C File Offset: 0x001FEC0C
[Token(Token = "0x6009C64")]
[Address(RVA = "0x4E4DE0", Offset = "0x4E3DE0", VA = "0x1804E4DE0")]
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: 0x06009C65 RID: 40037 RVA: 0x00200B7C File Offset: 0x001FED7C
[Token(Token = "0x6009C65")]
[Address(RVA = "0x4E3CC0", Offset = "0x4E2CC0", VA = "0x1804E3CC0")]
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: 0x06009C66 RID: 40038 RVA: 0x00200E64 File Offset: 0x001FF064
[Token(Token = "0x6009C66")]
[Address(RVA = "0x4E46B0", Offset = "0x4E36B0", VA = "0x1804E46B0")]
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: 0x06009C67 RID: 40039 RVA: 0x00201138 File Offset: 0x001FF338
[Token(Token = "0x6009C67")]
[Address(RVA = "0x4E5400", Offset = "0x4E4400", VA = "0x1804E5400")]
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: 0x06009C68 RID: 40040 RVA: 0x00201264 File Offset: 0x001FF464
[Token(Token = "0x6009C68")]
[Address(RVA = "0x4E35F0", Offset = "0x4E25F0", VA = "0x1804E35F0")]
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: 0x06009C69 RID: 40041 RVA: 0x00201280 File Offset: 0x001FF480
[Token(Token = "0x6009C69")]
[Address(RVA = "0x4E35C0", Offset = "0x4E25C0", VA = "0x1804E35C0")]
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: 0x06009C6A RID: 40042 RVA: 0x0020129C File Offset: 0x001FF49C
[Token(Token = "0x6009C6A")]
[Address(RVA = "0x4E3270", Offset = "0x4E2270", VA = "0x1804E3270")]
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: 0x06009C6B RID: 40043 RVA: 0x0020149C File Offset: 0x001FF69C
[Token(Token = "0x6009C6B")]
[Address(RVA = "0x4E38E0", Offset = "0x4E28E0", VA = "0x1804E38E0")]
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: 0x06009C6C RID: 40044 RVA: 0x002015AC File Offset: 0x001FF7AC
[Token(Token = "0x6009C6C")]
[Address(RVA = "0x4E3230", Offset = "0x4E2230", VA = "0x1804E3230")]
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: 0x06009C6D RID: 40045 RVA: 0x002015F8 File Offset: 0x001FF7F8
[Token(Token = "0x6009C6D")]
[Address(RVA = "0x4E3620", Offset = "0x4E2620", VA = "0x1804E3620")]
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: 0x06009C6E RID: 40046 RVA: 0x002016F0 File Offset: 0x001FF8F0
[Token(Token = "0x6009C6E")]
[Address(RVA = "0x4E3A80", Offset = "0x4E2A80", VA = "0x1804E3A80")]
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: 0x06009C6F RID: 40047 RVA: 0x00201800 File Offset: 0x001FFA00
[Token(Token = "0x6009C6F")]
[Address(RVA = "0x4E41C0", Offset = "0x4E31C0", VA = "0x1804E41C0")]
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: 0x040068A5 RID: 26789
[Token(Token = "0x40068A5")]
private const int MAX_MEM_LEVEL = 9;
// Token: 0x040068A6 RID: 26790
[Token(Token = "0x40068A6")]
private const int Z_DEFAULT_COMPRESSION = -1;
// Token: 0x040068A7 RID: 26791
[Token(Token = "0x40068A7")]
private const int MAX_WBITS = 15;
// Token: 0x040068A8 RID: 26792
[Token(Token = "0x40068A8")]
private const int DEF_MEM_LEVEL = 8;
// Token: 0x040068A9 RID: 26793
[Token(Token = "0x40068A9")]
private const int STORED = 0;
// Token: 0x040068AA RID: 26794
[Token(Token = "0x40068AA")]
private const int FAST = 1;
// Token: 0x040068AB RID: 26795
[Token(Token = "0x40068AB")]
private const int SLOW = 2;
// Token: 0x040068AC RID: 26796
[Token(Token = "0x40068AC")]
private static readonly Deflate.Config[] config_table;
// Token: 0x040068AD RID: 26797
[Token(Token = "0x40068AD")]
private static readonly string[] z_errmsg;
// Token: 0x040068AE RID: 26798
[Token(Token = "0x40068AE")]
private const int NeedMore = 0;
// Token: 0x040068AF RID: 26799
[Token(Token = "0x40068AF")]
private const int BlockDone = 1;
// Token: 0x040068B0 RID: 26800
[Token(Token = "0x40068B0")]
private const int FinishStarted = 2;
// Token: 0x040068B1 RID: 26801
[Token(Token = "0x40068B1")]
private const int FinishDone = 3;
// Token: 0x040068B2 RID: 26802
[Token(Token = "0x40068B2")]
private const int PRESET_DICT = 32;
// Token: 0x040068B3 RID: 26803
[Token(Token = "0x40068B3")]
private const int Z_FILTERED = 1;
// Token: 0x040068B4 RID: 26804
[Token(Token = "0x40068B4")]
private const int Z_HUFFMAN_ONLY = 2;
// Token: 0x040068B5 RID: 26805
[Token(Token = "0x40068B5")]
private const int Z_DEFAULT_STRATEGY = 0;
// Token: 0x040068B6 RID: 26806
[Token(Token = "0x40068B6")]
private const int Z_NO_FLUSH = 0;
// Token: 0x040068B7 RID: 26807
[Token(Token = "0x40068B7")]
private const int Z_PARTIAL_FLUSH = 1;
// Token: 0x040068B8 RID: 26808
[Token(Token = "0x40068B8")]
private const int Z_SYNC_FLUSH = 2;
// Token: 0x040068B9 RID: 26809
[Token(Token = "0x40068B9")]
private const int Z_FULL_FLUSH = 3;
// Token: 0x040068BA RID: 26810
[Token(Token = "0x40068BA")]
private const int Z_FINISH = 4;
// Token: 0x040068BB RID: 26811
[Token(Token = "0x40068BB")]
private const int Z_OK = 0;
// Token: 0x040068BC RID: 26812
[Token(Token = "0x40068BC")]
private const int Z_STREAM_END = 1;
// Token: 0x040068BD RID: 26813
[Token(Token = "0x40068BD")]
private const int Z_NEED_DICT = 2;
// Token: 0x040068BE RID: 26814
[Token(Token = "0x40068BE")]
private const int Z_ERRNO = -1;
// Token: 0x040068BF RID: 26815
[Token(Token = "0x40068BF")]
private const int Z_STREAM_ERROR = -2;
// Token: 0x040068C0 RID: 26816
[Token(Token = "0x40068C0")]
private const int Z_DATA_ERROR = -3;
// Token: 0x040068C1 RID: 26817
[Token(Token = "0x40068C1")]
private const int Z_MEM_ERROR = -4;
// Token: 0x040068C2 RID: 26818
[Token(Token = "0x40068C2")]
private const int Z_BUF_ERROR = -5;
// Token: 0x040068C3 RID: 26819
[Token(Token = "0x40068C3")]
private const int Z_VERSION_ERROR = -6;
// Token: 0x040068C4 RID: 26820
[Token(Token = "0x40068C4")]
private const int INIT_STATE = 42;
// Token: 0x040068C5 RID: 26821
[Token(Token = "0x40068C5")]
private const int BUSY_STATE = 113;
// Token: 0x040068C6 RID: 26822
[Token(Token = "0x40068C6")]
private const int FINISH_STATE = 666;
// Token: 0x040068C7 RID: 26823
[Token(Token = "0x40068C7")]
private const int Z_DEFLATED = 8;
// Token: 0x040068C8 RID: 26824
[Token(Token = "0x40068C8")]
private const int STORED_BLOCK = 0;
// Token: 0x040068C9 RID: 26825
[Token(Token = "0x40068C9")]
private const int STATIC_TREES = 1;
// Token: 0x040068CA RID: 26826
[Token(Token = "0x40068CA")]
private const int DYN_TREES = 2;
// Token: 0x040068CB RID: 26827
[Token(Token = "0x40068CB")]
private const int Z_BINARY = 0;
// Token: 0x040068CC RID: 26828
[Token(Token = "0x40068CC")]
private const int Z_ASCII = 1;
// Token: 0x040068CD RID: 26829
[Token(Token = "0x40068CD")]
private const int Z_UNKNOWN = 2;
// Token: 0x040068CE RID: 26830
[Token(Token = "0x40068CE")]
private const int Buf_size = 16;
// Token: 0x040068CF RID: 26831
[Token(Token = "0x40068CF")]
private const int REP_3_6 = 16;
// Token: 0x040068D0 RID: 26832
[Token(Token = "0x40068D0")]
private const int REPZ_3_10 = 17;
// Token: 0x040068D1 RID: 26833
[Token(Token = "0x40068D1")]
private const int REPZ_11_138 = 18;
// Token: 0x040068D2 RID: 26834
[Token(Token = "0x40068D2")]
private const int MIN_MATCH = 3;
// Token: 0x040068D3 RID: 26835
[Token(Token = "0x40068D3")]
private const int MAX_MATCH = 258;
// Token: 0x040068D4 RID: 26836
[Token(Token = "0x40068D4")]
private const int MIN_LOOKAHEAD = 262;
// Token: 0x040068D5 RID: 26837
[Token(Token = "0x40068D5")]
private const int MAX_BITS = 15;
// Token: 0x040068D6 RID: 26838
[Token(Token = "0x40068D6")]
private const int D_CODES = 30;
// Token: 0x040068D7 RID: 26839
[Token(Token = "0x40068D7")]
private const int BL_CODES = 19;
// Token: 0x040068D8 RID: 26840
[Token(Token = "0x40068D8")]
private const int LENGTH_CODES = 29;
// Token: 0x040068D9 RID: 26841
[Token(Token = "0x40068D9")]
private const int LITERALS = 256;
// Token: 0x040068DA RID: 26842
[Token(Token = "0x40068DA")]
private const int L_CODES = 286;
// Token: 0x040068DB RID: 26843
[Token(Token = "0x40068DB")]
private const int HEAP_SIZE = 573;
// Token: 0x040068DC RID: 26844
[Token(Token = "0x40068DC")]
private const int END_BLOCK = 256;
// Token: 0x040068DD RID: 26845
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x40068DD")]
internal ZStream strm;
// Token: 0x040068DE RID: 26846
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x40068DE")]
internal int status;
// Token: 0x040068DF RID: 26847
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x40068DF")]
internal byte[] pending_buf;
// Token: 0x040068E0 RID: 26848
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x40068E0")]
internal int pending_buf_size;
// Token: 0x040068E1 RID: 26849
[FieldOffset(Offset = "0x2C")]
[Token(Token = "0x40068E1")]
internal int pending_out;
// Token: 0x040068E2 RID: 26850
[FieldOffset(Offset = "0x30")]
[Token(Token = "0x40068E2")]
internal int pending;
// Token: 0x040068E3 RID: 26851
[FieldOffset(Offset = "0x34")]
[Token(Token = "0x40068E3")]
internal int noheader;
// Token: 0x040068E4 RID: 26852
[FieldOffset(Offset = "0x38")]
[Token(Token = "0x40068E4")]
internal byte data_type;
// Token: 0x040068E5 RID: 26853
[FieldOffset(Offset = "0x39")]
[Token(Token = "0x40068E5")]
internal byte method;
// Token: 0x040068E6 RID: 26854
[FieldOffset(Offset = "0x3C")]
[Token(Token = "0x40068E6")]
internal int last_flush;
// Token: 0x040068E7 RID: 26855
[FieldOffset(Offset = "0x40")]
[Token(Token = "0x40068E7")]
internal int w_size;
// Token: 0x040068E8 RID: 26856
[FieldOffset(Offset = "0x44")]
[Token(Token = "0x40068E8")]
internal int w_bits;
// Token: 0x040068E9 RID: 26857
[FieldOffset(Offset = "0x48")]
[Token(Token = "0x40068E9")]
internal int w_mask;
// Token: 0x040068EA RID: 26858
[FieldOffset(Offset = "0x50")]
[Token(Token = "0x40068EA")]
internal byte[] window;
// Token: 0x040068EB RID: 26859
[FieldOffset(Offset = "0x58")]
[Token(Token = "0x40068EB")]
internal int window_size;
// Token: 0x040068EC RID: 26860
[FieldOffset(Offset = "0x60")]
[Token(Token = "0x40068EC")]
internal short[] prev;
// Token: 0x040068ED RID: 26861
[FieldOffset(Offset = "0x68")]
[Token(Token = "0x40068ED")]
internal short[] head;
// Token: 0x040068EE RID: 26862
[FieldOffset(Offset = "0x70")]
[Token(Token = "0x40068EE")]
internal int ins_h;
// Token: 0x040068EF RID: 26863
[FieldOffset(Offset = "0x74")]
[Token(Token = "0x40068EF")]
internal int hash_size;
// Token: 0x040068F0 RID: 26864
[FieldOffset(Offset = "0x78")]
[Token(Token = "0x40068F0")]
internal int hash_bits;
// Token: 0x040068F1 RID: 26865
[FieldOffset(Offset = "0x7C")]
[Token(Token = "0x40068F1")]
internal int hash_mask;
// Token: 0x040068F2 RID: 26866
[FieldOffset(Offset = "0x80")]
[Token(Token = "0x40068F2")]
internal int hash_shift;
// Token: 0x040068F3 RID: 26867
[FieldOffset(Offset = "0x84")]
[Token(Token = "0x40068F3")]
internal int block_start;
// Token: 0x040068F4 RID: 26868
[FieldOffset(Offset = "0x88")]
[Token(Token = "0x40068F4")]
internal int match_length;
// Token: 0x040068F5 RID: 26869
[FieldOffset(Offset = "0x8C")]
[Token(Token = "0x40068F5")]
internal int prev_match;
// Token: 0x040068F6 RID: 26870
[FieldOffset(Offset = "0x90")]
[Token(Token = "0x40068F6")]
internal int match_available;
// Token: 0x040068F7 RID: 26871
[FieldOffset(Offset = "0x94")]
[Token(Token = "0x40068F7")]
internal int strstart;
// Token: 0x040068F8 RID: 26872
[FieldOffset(Offset = "0x98")]
[Token(Token = "0x40068F8")]
internal int match_start;
// Token: 0x040068F9 RID: 26873
[FieldOffset(Offset = "0x9C")]
[Token(Token = "0x40068F9")]
internal int lookahead;
// Token: 0x040068FA RID: 26874
[FieldOffset(Offset = "0xA0")]
[Token(Token = "0x40068FA")]
internal int prev_length;
// Token: 0x040068FB RID: 26875
[FieldOffset(Offset = "0xA4")]
[Token(Token = "0x40068FB")]
internal int max_chain_length;
// Token: 0x040068FC RID: 26876
[FieldOffset(Offset = "0xA8")]
[Token(Token = "0x40068FC")]
internal int max_lazy_match;
// Token: 0x040068FD RID: 26877
[FieldOffset(Offset = "0xAC")]
[Token(Token = "0x40068FD")]
internal int level;
// Token: 0x040068FE RID: 26878
[FieldOffset(Offset = "0xB0")]
[Token(Token = "0x40068FE")]
internal int strategy;
// Token: 0x040068FF RID: 26879
[FieldOffset(Offset = "0xB4")]
[Token(Token = "0x40068FF")]
internal int good_match;
// Token: 0x04006900 RID: 26880
[FieldOffset(Offset = "0xB8")]
[Token(Token = "0x4006900")]
internal int nice_match;
// Token: 0x04006901 RID: 26881
[FieldOffset(Offset = "0xC0")]
[Token(Token = "0x4006901")]
internal short[] dyn_ltree;
// Token: 0x04006902 RID: 26882
[FieldOffset(Offset = "0xC8")]
[Token(Token = "0x4006902")]
internal short[] dyn_dtree;
// Token: 0x04006903 RID: 26883
[FieldOffset(Offset = "0xD0")]
[Token(Token = "0x4006903")]
internal short[] bl_tree;
// Token: 0x04006904 RID: 26884
[FieldOffset(Offset = "0xD8")]
[Token(Token = "0x4006904")]
internal ZTree l_desc;
// Token: 0x04006905 RID: 26885
[FieldOffset(Offset = "0xE0")]
[Token(Token = "0x4006905")]
internal ZTree d_desc;
// Token: 0x04006906 RID: 26886
[FieldOffset(Offset = "0xE8")]
[Token(Token = "0x4006906")]
internal ZTree bl_desc;
// Token: 0x04006907 RID: 26887
[FieldOffset(Offset = "0xF0")]
[Token(Token = "0x4006907")]
internal short[] bl_count;
// Token: 0x04006908 RID: 26888
[FieldOffset(Offset = "0xF8")]
[Token(Token = "0x4006908")]
internal int[] heap;
// Token: 0x04006909 RID: 26889
[FieldOffset(Offset = "0x100")]
[Token(Token = "0x4006909")]
internal int heap_len;
// Token: 0x0400690A RID: 26890
[FieldOffset(Offset = "0x104")]
[Token(Token = "0x400690A")]
internal int heap_max;
// Token: 0x0400690B RID: 26891
[FieldOffset(Offset = "0x108")]
[Token(Token = "0x400690B")]
internal byte[] depth;
// Token: 0x0400690C RID: 26892
[FieldOffset(Offset = "0x110")]
[Token(Token = "0x400690C")]
internal int l_buf;
// Token: 0x0400690D RID: 26893
[FieldOffset(Offset = "0x114")]
[Token(Token = "0x400690D")]
internal int lit_bufsize;
// Token: 0x0400690E RID: 26894
[FieldOffset(Offset = "0x118")]
[Token(Token = "0x400690E")]
internal int last_lit;
// Token: 0x0400690F RID: 26895
[FieldOffset(Offset = "0x11C")]
[Token(Token = "0x400690F")]
internal int d_buf;
// Token: 0x04006910 RID: 26896
[FieldOffset(Offset = "0x120")]
[Token(Token = "0x4006910")]
internal int opt_len;
// Token: 0x04006911 RID: 26897
[FieldOffset(Offset = "0x124")]
[Token(Token = "0x4006911")]
internal int static_len;
// Token: 0x04006912 RID: 26898
[FieldOffset(Offset = "0x128")]
[Token(Token = "0x4006912")]
internal int matches;
// Token: 0x04006913 RID: 26899
[FieldOffset(Offset = "0x12C")]
[Token(Token = "0x4006913")]
internal int last_eob_len;
// Token: 0x04006914 RID: 26900
[FieldOffset(Offset = "0x130")]
[Token(Token = "0x4006914")]
internal uint bi_buf;
// Token: 0x04006915 RID: 26901
[FieldOffset(Offset = "0x134")]
[Token(Token = "0x4006915")]
internal int bi_valid;
// Token: 0x02001A0B RID: 6667
[Token(Token = "0x2001A0B")]
internal class Config
{
// Token: 0x06009C70 RID: 40048 RVA: 0x00201A98 File Offset: 0x001FFC98
[Token(Token = "0x6009C70")]
[Address(RVA = "0x4E0F80", Offset = "0x4DFF80", VA = "0x1804E0F80")]
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: 0x04006916 RID: 26902
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x4006916")]
internal int good_length;
// Token: 0x04006917 RID: 26903
[FieldOffset(Offset = "0x14")]
[Token(Token = "0x4006917")]
internal int max_lazy;
// Token: 0x04006918 RID: 26904
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x4006918")]
internal int nice_length;
// Token: 0x04006919 RID: 26905
[FieldOffset(Offset = "0x1C")]
[Token(Token = "0x4006919")]
internal int max_chain;
// Token: 0x0400691A RID: 26906
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x400691A")]
internal int func;
}
}
}
@@ -0,0 +1,825 @@
using System;
using System.Runtime.CompilerServices;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib
{
// Token: 0x02001A0C RID: 6668
[Token(Token = "0x2001A0C")]
internal sealed class InfBlocks
{
// Token: 0x06009C71 RID: 40049 RVA: 0x00201AD0 File Offset: 0x001FFCD0
[Token(Token = "0x6009C71")]
[Address(RVA = "0x4E9670", Offset = "0x4E8670", VA = "0x1804E9670")]
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: 0x06009C72 RID: 40050 RVA: 0x00201B88 File Offset: 0x001FFD88
[Token(Token = "0x6009C72")]
[Address(RVA = "0x4EAE50", Offset = "0x4E9E50", VA = "0x1804EAE50")]
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: 0x06009C73 RID: 40051 RVA: 0x00201BEC File Offset: 0x001FFDEC
[Token(Token = "0x6009C73")]
[Address(RVA = "0x4E9990", Offset = "0x4E8990", VA = "0x1804E9990")]
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: 0x06009C74 RID: 40052 RVA: 0x002024F0 File Offset: 0x002006F0
[Token(Token = "0x6009C74")]
[Address(RVA = "0x4E97B0", Offset = "0x4E87B0", VA = "0x1804E97B0")]
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: 0x06009C75 RID: 40053 RVA: 0x0020254C File Offset: 0x0020074C
[Token(Token = "0x6009C75")]
[Address(RVA = "0x4EAED0", Offset = "0x4E9ED0", VA = "0x1804EAED0")]
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: 0x06009C76 RID: 40054 RVA: 0x0020257C File Offset: 0x0020077C
[Token(Token = "0x6009C76")]
[Address(RVA = "0x4EAF20", Offset = "0x4E9F20", VA = "0x1804EAF20")]
internal int sync_point()
{
/*
An exception occurred when decompiling this method (06009C76)
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: 0x06009C77 RID: 40055 RVA: 0x00202594 File Offset: 0x00200794
[Token(Token = "0x6009C77")]
[Address(RVA = "0x4E9810", Offset = "0x4E8810", VA = "0x1804E9810")]
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: 0x06009C78 RID: 40056 RVA: 0x00202708 File Offset: 0x00200908
// Note: this type is marked as 'beforefieldinit'.
[Token(Token = "0x6009C78")]
[Address(RVA = "0x4E95D0", Offset = "0x4E85D0", VA = "0x1804E95D0")]
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: 0x0400691B RID: 26907
[Token(Token = "0x400691B")]
private const int MANY = 1440;
// Token: 0x0400691C RID: 26908
[Token(Token = "0x400691C")]
private static readonly int[] inflate_mask;
// Token: 0x0400691D RID: 26909
[Token(Token = "0x400691D")]
private static readonly int[] border;
// Token: 0x0400691E RID: 26910
[Token(Token = "0x400691E")]
private const int Z_OK = 0;
// Token: 0x0400691F RID: 26911
[Token(Token = "0x400691F")]
private const int Z_STREAM_END = 1;
// Token: 0x04006920 RID: 26912
[Token(Token = "0x4006920")]
private const int Z_NEED_DICT = 2;
// Token: 0x04006921 RID: 26913
[Token(Token = "0x4006921")]
private const int Z_ERRNO = -1;
// Token: 0x04006922 RID: 26914
[Token(Token = "0x4006922")]
private const int Z_STREAM_ERROR = -2;
// Token: 0x04006923 RID: 26915
[Token(Token = "0x4006923")]
private const int Z_DATA_ERROR = -3;
// Token: 0x04006924 RID: 26916
[Token(Token = "0x4006924")]
private const int Z_MEM_ERROR = -4;
// Token: 0x04006925 RID: 26917
[Token(Token = "0x4006925")]
private const int Z_BUF_ERROR = -5;
// Token: 0x04006926 RID: 26918
[Token(Token = "0x4006926")]
private const int Z_VERSION_ERROR = -6;
// Token: 0x04006927 RID: 26919
[Token(Token = "0x4006927")]
private const int TYPE = 0;
// Token: 0x04006928 RID: 26920
[Token(Token = "0x4006928")]
private const int LENS = 1;
// Token: 0x04006929 RID: 26921
[Token(Token = "0x4006929")]
private const int STORED = 2;
// Token: 0x0400692A RID: 26922
[Token(Token = "0x400692A")]
private const int TABLE = 3;
// Token: 0x0400692B RID: 26923
[Token(Token = "0x400692B")]
private const int BTREE = 4;
// Token: 0x0400692C RID: 26924
[Token(Token = "0x400692C")]
private const int DTREE = 5;
// Token: 0x0400692D RID: 26925
[Token(Token = "0x400692D")]
private const int CODES = 6;
// Token: 0x0400692E RID: 26926
[Token(Token = "0x400692E")]
private const int DRY = 7;
// Token: 0x0400692F RID: 26927
[Token(Token = "0x400692F")]
private const int DONE = 8;
// Token: 0x04006930 RID: 26928
[Token(Token = "0x4006930")]
private const int BAD = 9;
// Token: 0x04006931 RID: 26929
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x4006931")]
internal int mode;
// Token: 0x04006932 RID: 26930
[FieldOffset(Offset = "0x14")]
[Token(Token = "0x4006932")]
internal int left;
// Token: 0x04006933 RID: 26931
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x4006933")]
internal int table;
// Token: 0x04006934 RID: 26932
[FieldOffset(Offset = "0x1C")]
[Token(Token = "0x4006934")]
internal int index;
// Token: 0x04006935 RID: 26933
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x4006935")]
internal int[] blens;
// Token: 0x04006936 RID: 26934
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x4006936")]
internal int[] bb;
// Token: 0x04006937 RID: 26935
[FieldOffset(Offset = "0x30")]
[Token(Token = "0x4006937")]
internal int[] tb;
// Token: 0x04006938 RID: 26936
[FieldOffset(Offset = "0x38")]
[Token(Token = "0x4006938")]
internal InfCodes codes;
// Token: 0x04006939 RID: 26937
[FieldOffset(Offset = "0x40")]
[Token(Token = "0x4006939")]
private int last;
// Token: 0x0400693A RID: 26938
[FieldOffset(Offset = "0x44")]
[Token(Token = "0x400693A")]
internal int bitk;
// Token: 0x0400693B RID: 26939
[FieldOffset(Offset = "0x48")]
[Token(Token = "0x400693B")]
internal int bitb;
// Token: 0x0400693C RID: 26940
[FieldOffset(Offset = "0x50")]
[Token(Token = "0x400693C")]
internal int[] hufts;
// Token: 0x0400693D RID: 26941
[FieldOffset(Offset = "0x58")]
[Token(Token = "0x400693D")]
internal byte[] window;
// Token: 0x0400693E RID: 26942
[FieldOffset(Offset = "0x60")]
[Token(Token = "0x400693E")]
internal int end;
// Token: 0x0400693F RID: 26943
[FieldOffset(Offset = "0x64")]
[Token(Token = "0x400693F")]
internal int read;
// Token: 0x04006940 RID: 26944
[FieldOffset(Offset = "0x68")]
[Token(Token = "0x4006940")]
internal int write;
// Token: 0x04006941 RID: 26945
[FieldOffset(Offset = "0x70")]
[Token(Token = "0x4006941")]
internal object checkfn;
// Token: 0x04006942 RID: 26946
[FieldOffset(Offset = "0x78")]
[Token(Token = "0x4006942")]
internal long check;
// Token: 0x04006943 RID: 26947
[FieldOffset(Offset = "0x80")]
[Token(Token = "0x4006943")]
internal InfTree inftree;
}
}
@@ -0,0 +1,534 @@
using System;
using System.Runtime.CompilerServices;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib
{
// Token: 0x02001A0D RID: 6669
[Token(Token = "0x2001A0D")]
internal sealed class InfCodes
{
// Token: 0x06009C79 RID: 40057 RVA: 0x00202748 File Offset: 0x00200948
[Token(Token = "0x6009C79")]
[Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")]
internal InfCodes()
{
int num = 0;
this.free(num);
}
// Token: 0x06009C7A RID: 40058 RVA: 0x00202760 File Offset: 0x00200960
[Token(Token = "0x6009C7A")]
[Address(RVA = "0x4EBB60", Offset = "0x4EAB60", VA = "0x1804EBB60")]
internal void init(int bl, int bd, int[] tl, int tl_index, int[] td, int td_index, ZStream z)
{
int num = 0;
this.ltree_index = 0;
this.dtree = 0;
this.dtree_index = 0;
this.mode = num;
this.lbits = (byte)bl;
this.dbits = (byte)bd;
this.ltree = tl;
this.tree = num;
}
// Token: 0x06009C7B RID: 40059 RVA: 0x002027A8 File Offset: 0x002009A8
[Token(Token = "0x6009C7B")]
[Address(RVA = "0x4EBB90", Offset = "0x4EAB90", VA = "0x1804EBB90")]
internal int proc(InfBlocks s, ZStream z, int r)
{
int next_in_index = z.next_in_index;
int avail_in = z.avail_in;
int write = s.write;
int num = s.read;
int bitb = s.bitb;
int bitk = s.bitk;
if (write < num)
{
num -= write;
}
int num2 = s.end;
num2 -= write;
s.bitb = bitb;
s.bitk = bitk;
z.avail_in = avail_in;
z.next_in_index = next_in_index;
s.write = write;
int write2 = s.write;
int num3 = s.read;
int bitb2 = s.bitb;
int num4 = z.next_in_index;
int avail_in2 = z.avail_in;
int num5 = s.bitk;
if (write2 < num3)
{
num3 -= write2;
}
int num6 = s.end;
num6 -= write2;
int num7;
if (num7 != 0)
{
}
uint num8;
int num9;
if (num5 < (int)num8)
{
if (avail_in2 == 0)
{
goto IL_373;
}
num9 = 0;
byte[] next_in = z.next_in;
num4++;
num5 += 8;
}
int num10 = InfCodes.inflate_mask[(int)num8];
byte b;
num10 += (int)b;
num5 -= num9;
uint num11;
if (num5 < (int)num11)
{
if (avail_in2 == 0)
{
goto IL_373;
}
byte[] next_in2 = z.next_in;
num4++;
num5 += 8;
}
int num12 = InfCodes.inflate_mask[(int)num11];
byte b2;
num12 += (int)b2;
num5 -= (int)num11;
if (num5 < (int)num11)
{
if (avail_in2 == 0)
{
goto IL_373;
}
byte[] next_in3 = z.next_in;
num4++;
num5 += 8;
}
int num13 = InfCodes.inflate_mask[(int)num11];
byte b3;
num13 += (int)b3;
num5 -= r;
uint num14;
int num15;
if (num5 < (int)num14)
{
if (avail_in2 == 0)
{
goto IL_373;
}
num15 = 0;
byte[] next_in4 = z.next_in;
num4++;
num5 += 8;
}
int num16 = InfCodes.inflate_mask[(int)num14];
byte b4;
num16 += (int)b4;
num5 -= (int)num14;
int num18;
int num19;
int num20;
if (num6 == 0)
{
int num17 = s.end;
if (write2 == num17)
{
int read = s.read;
if (read != 0)
{
if (read > 0)
{
}
if (num17 != 0)
{
goto IL_258;
}
}
}
s.write = write2;
num18 = s.inflate_flush(z, num15);
int write3 = s.write;
int end = s.end;
int read2 = s.read;
if (write3 < read2)
{
num17 = read2;
num17 -= write3;
}
num17 -= write3;
if (write3 == end && read2 != 0)
{
num19 = 0;
num20 = read2 - 1;
if (read2 <= 0)
{
}
}
if (num20 == 0)
{
goto IL_3BD;
}
}
IL_258:
byte[] window = s.window;
int num21 = write2 + 1;
num19++;
int length = window.Length;
int end2 = s.end;
int i;
if (num20 == 0)
{
int end3 = s.end;
int num22;
if (num19 == end3)
{
int read3 = s.read;
if (read3 != 0)
{
num22 = 0;
int num23;
if (read3 > 0)
{
num23 = read3 - 1;
}
if (num23 != 0)
{
goto IL_32A;
}
}
}
s.write = num22;
num21 = num18;
int num24 = s.inflate_flush(z, num21);
int read4 = s.read;
int write4 = s.write;
if (write4 < read4)
{
int num23 = read4;
num23 -= write4;
}
int num25 = s.end;
num25 -= write4;
int end4 = s.end;
int num26;
if (write4 == end4 && read4 != 0)
{
i = 0;
num26 = read4 - 1;
num26 = end4;
}
if (num26 == 0)
{
goto IL_3D3;
}
}
IL_32A:
byte[] window2 = s.window;
int num27 = 0;
i++;
while (i <= 9)
{
}
s.bitb = bitb2;
s.bitk = num5;
z.avail_in = avail_in2;
z.next_in_index = num4;
s.write = i;
return s.inflate_flush(z, -2);
IL_373:
s.bitb = -2;
s.bitk = 0;
z.avail_in = (int)((ulong)0L);
z.next_in_index = 0;
s.write = 0;
z.msg = "invalid literal/length code";
s.bitb = 0;
z.msg = "invalid distance code";
s.bitb = 0;
IL_3BD:
s.bitb = bitb2;
s.bitk = 0;
z.avail_in = 0;
IL_3D3:
s.bitb = bitb2;
s.bitk = 0;
z.avail_in = 0;
z.next_in_index = 0;
s.write = 0;
s.write = 0;
int num28 = s.inflate_flush(z, num27);
int write5 = s.write;
while (s.read != write5)
{
}
s.bitb = bitb2;
s.bitk = 0;
z.avail_in = 0;
z.next_in_index = 0;
s.write = write5;
s.bitb = 1;
s.bitk = 0;
z.avail_in = 0;
z.next_in_index = 0;
s.write = write5;
throw new NullReferenceException();
}
// Token: 0x06009C7C RID: 40060 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x6009C7C")]
[Address(RVA = "0x4242D0", Offset = "0x4232D0", VA = "0x1804242D0")]
internal void free(ZStream z)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06009C7D RID: 40061 RVA: 0x00202C20 File Offset: 0x00200E20
[Token(Token = "0x6009C7D")]
[Address(RVA = "0x4EAF90", Offset = "0x4E9F90", VA = "0x1804EAF90")]
internal int inflate_fast(int bl, int bd, int[] tl, int tl_index, int[] td, int td_index, InfBlocks s, ZStream z)
{
int[] array = InfCodes.inflate_mask;
int length = array.Length;
int num = array[bl];
int num2 = array[bd];
int num12;
if (bl != 0)
{
int num3 = bd + 1;
if (bl == 16)
{
if (bl != 64)
{
goto IL_FE;
}
int num4 = InfCodes.inflate_mask[bl];
num4 += bd;
while (bl != 0)
{
}
int num5 = bd + 1;
}
int num6 = InfCodes.inflate_mask[bl];
num6 += bd;
int num7 = bd + 1;
if (bl == 16)
{
if (bl != 64)
{
goto IL_10A;
}
int num8 = InfCodes.inflate_mask[bl];
num8 += bd;
}
int num9 = InfCodes.inflate_mask[bl];
num9 += bd;
int num10;
if (num6 > bd)
{
num6 -= bd;
num10 = bd - 1;
while (num10 != 0)
{
}
int num11 = 0;
num12 = 0;
if (num11 == 1)
{
goto IL_F0;
}
num12 += 2;
}
num10 -= num12;
if (num10 > 0 && num6 > num10)
{
num12++;
int num13 = num6 - 1;
num6 = num13;
while (num13 != 0)
{
}
}
IL_F0:
Array.Copy(num12, num12, num12, 1, num6);
}
IL_FE:
if (num12 == 32)
{
}
uint num14;
num14 -= tl;
IL_10A:
throw new NullReferenceException();
}
// Token: 0x06009C7E RID: 40062 RVA: 0x00202D3C File Offset: 0x00200F3C
// Note: this type is marked as 'beforefieldinit'.
[Token(Token = "0x6009C7E")]
[Address(RVA = "0x4EAF30", Offset = "0x4E9F30", VA = "0x1804EAF30")]
static InfCodes()
{
int[] array = new int[17];
RuntimeHelpers.InitializeArray(array, fieldof(<PrivateImplementationDetails>.F584B6C7CCA3CD4ECC3B9B1E20D2F2EFB73DBBDF).FieldHandle);
InfCodes.inflate_mask = array;
}
// Token: 0x04006944 RID: 26948
[Token(Token = "0x4006944")]
private static readonly int[] inflate_mask;
// Token: 0x04006945 RID: 26949
[Token(Token = "0x4006945")]
private const int Z_OK = 0;
// Token: 0x04006946 RID: 26950
[Token(Token = "0x4006946")]
private const int Z_STREAM_END = 1;
// Token: 0x04006947 RID: 26951
[Token(Token = "0x4006947")]
private const int Z_NEED_DICT = 2;
// Token: 0x04006948 RID: 26952
[Token(Token = "0x4006948")]
private const int Z_ERRNO = -1;
// Token: 0x04006949 RID: 26953
[Token(Token = "0x4006949")]
private const int Z_STREAM_ERROR = -2;
// Token: 0x0400694A RID: 26954
[Token(Token = "0x400694A")]
private const int Z_DATA_ERROR = -3;
// Token: 0x0400694B RID: 26955
[Token(Token = "0x400694B")]
private const int Z_MEM_ERROR = -4;
// Token: 0x0400694C RID: 26956
[Token(Token = "0x400694C")]
private const int Z_BUF_ERROR = -5;
// Token: 0x0400694D RID: 26957
[Token(Token = "0x400694D")]
private const int Z_VERSION_ERROR = -6;
// Token: 0x0400694E RID: 26958
[Token(Token = "0x400694E")]
private const int START = 0;
// Token: 0x0400694F RID: 26959
[Token(Token = "0x400694F")]
private const int LEN = 1;
// Token: 0x04006950 RID: 26960
[Token(Token = "0x4006950")]
private const int LENEXT = 2;
// Token: 0x04006951 RID: 26961
[Token(Token = "0x4006951")]
private const int DIST = 3;
// Token: 0x04006952 RID: 26962
[Token(Token = "0x4006952")]
private const int DISTEXT = 4;
// Token: 0x04006953 RID: 26963
[Token(Token = "0x4006953")]
private const int COPY = 5;
// Token: 0x04006954 RID: 26964
[Token(Token = "0x4006954")]
private const int LIT = 6;
// Token: 0x04006955 RID: 26965
[Token(Token = "0x4006955")]
private const int WASH = 7;
// Token: 0x04006956 RID: 26966
[Token(Token = "0x4006956")]
private const int END = 8;
// Token: 0x04006957 RID: 26967
[Token(Token = "0x4006957")]
private const int BADCODE = 9;
// Token: 0x04006958 RID: 26968
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x4006958")]
private int mode;
// Token: 0x04006959 RID: 26969
[FieldOffset(Offset = "0x14")]
[Token(Token = "0x4006959")]
private int len;
// Token: 0x0400695A RID: 26970
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x400695A")]
private int[] tree;
// Token: 0x0400695B RID: 26971
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x400695B")]
private int tree_index;
// Token: 0x0400695C RID: 26972
[FieldOffset(Offset = "0x24")]
[Token(Token = "0x400695C")]
private int need;
// Token: 0x0400695D RID: 26973
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x400695D")]
private int lit;
// Token: 0x0400695E RID: 26974
[FieldOffset(Offset = "0x2C")]
[Token(Token = "0x400695E")]
private int get;
// Token: 0x0400695F RID: 26975
[FieldOffset(Offset = "0x30")]
[Token(Token = "0x400695F")]
private int dist;
// Token: 0x04006960 RID: 26976
[FieldOffset(Offset = "0x34")]
[Token(Token = "0x4006960")]
private byte lbits;
// Token: 0x04006961 RID: 26977
[FieldOffset(Offset = "0x35")]
[Token(Token = "0x4006961")]
private byte dbits;
// Token: 0x04006962 RID: 26978
[FieldOffset(Offset = "0x38")]
[Token(Token = "0x4006962")]
private int[] ltree;
// Token: 0x04006963 RID: 26979
[FieldOffset(Offset = "0x40")]
[Token(Token = "0x4006963")]
private int ltree_index;
// Token: 0x04006964 RID: 26980
[FieldOffset(Offset = "0x48")]
[Token(Token = "0x4006964")]
private int[] dtree;
// Token: 0x04006965 RID: 26981
[FieldOffset(Offset = "0x50")]
[Token(Token = "0x4006965")]
private int dtree_index;
}
}
@@ -0,0 +1,445 @@
using System;
using System.Runtime.CompilerServices;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib
{
// Token: 0x02001A0E RID: 6670
[Token(Token = "0x2001A0E")]
internal sealed class InfTree
{
// Token: 0x06009C7F RID: 40063 RVA: 0x00202D64 File Offset: 0x00200F64
[Token(Token = "0x6009C7F")]
[Address(RVA = "0x4EC9C0", Offset = "0x4EB9C0", VA = "0x1804EC9C0")]
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: 0x06009C80 RID: 40064 RVA: 0x00203070 File Offset: 0x00201270
[Token(Token = "0x6009C80")]
[Address(RVA = "0x4ED5A0", Offset = "0x4EC5A0", VA = "0x1804ED5A0")]
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: 0x06009C81 RID: 40065 RVA: 0x002030C4 File Offset: 0x002012C4
[Token(Token = "0x6009C81")]
[Address(RVA = "0x4ED6F0", Offset = "0x4EC6F0", VA = "0x1804ED6F0")]
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: 0x06009C82 RID: 40066 RVA: 0x00203164 File Offset: 0x00201364
[Token(Token = "0x6009C82")]
[Address(RVA = "0x4EDA00", Offset = "0x4ECA00", VA = "0x1804EDA00")]
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: 0x06009C83 RID: 40067 RVA: 0x002031A0 File Offset: 0x002013A0
[Token(Token = "0x6009C83")]
[Address(RVA = "0x4EDB90", Offset = "0x4ECB90", VA = "0x1804EDB90")]
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: 0x06009C84 RID: 40068 RVA: 0x002032D0 File Offset: 0x002014D0
[Token(Token = "0x6009C84")]
[Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")]
public InfTree()
{
}
// Token: 0x06009C85 RID: 40069 RVA: 0x002032E4 File Offset: 0x002014E4
// Note: this type is marked as 'beforefieldinit'.
[Token(Token = "0x6009C85")]
[Address(RVA = "0x4EC840", Offset = "0x4EB840", VA = "0x1804EC840")]
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: 0x04006966 RID: 26982
[Token(Token = "0x4006966")]
private const int MANY = 1440;
// Token: 0x04006967 RID: 26983
[Token(Token = "0x4006967")]
private const int Z_OK = 0;
// Token: 0x04006968 RID: 26984
[Token(Token = "0x4006968")]
private const int Z_STREAM_END = 1;
// Token: 0x04006969 RID: 26985
[Token(Token = "0x4006969")]
private const int Z_NEED_DICT = 2;
// Token: 0x0400696A RID: 26986
[Token(Token = "0x400696A")]
private const int Z_ERRNO = -1;
// Token: 0x0400696B RID: 26987
[Token(Token = "0x400696B")]
private const int Z_STREAM_ERROR = -2;
// Token: 0x0400696C RID: 26988
[Token(Token = "0x400696C")]
private const int Z_DATA_ERROR = -3;
// Token: 0x0400696D RID: 26989
[Token(Token = "0x400696D")]
private const int Z_MEM_ERROR = -4;
// Token: 0x0400696E RID: 26990
[Token(Token = "0x400696E")]
private const int Z_BUF_ERROR = -5;
// Token: 0x0400696F RID: 26991
[Token(Token = "0x400696F")]
private const int Z_VERSION_ERROR = -6;
// Token: 0x04006970 RID: 26992
[Token(Token = "0x4006970")]
private const int fixed_bl = 9;
// Token: 0x04006971 RID: 26993
[Token(Token = "0x4006971")]
private const int fixed_bd = 5;
// Token: 0x04006972 RID: 26994
[Token(Token = "0x4006972")]
private static readonly int[] fixed_tl;
// Token: 0x04006973 RID: 26995
[Token(Token = "0x4006973")]
private static readonly int[] fixed_td;
// Token: 0x04006974 RID: 26996
[Token(Token = "0x4006974")]
private static readonly int[] cplens;
// Token: 0x04006975 RID: 26997
[Token(Token = "0x4006975")]
private static readonly int[] cplext;
// Token: 0x04006976 RID: 26998
[Token(Token = "0x4006976")]
private static readonly int[] cpdist;
// Token: 0x04006977 RID: 26999
[Token(Token = "0x4006977")]
private static readonly int[] cpdext;
// Token: 0x04006978 RID: 27000
[Token(Token = "0x4006978")]
private const int BMAX = 15;
// Token: 0x04006979 RID: 27001
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x4006979")]
private int[] hn;
// Token: 0x0400697A RID: 27002
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x400697A")]
private int[] v;
// Token: 0x0400697B RID: 27003
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x400697B")]
private int[] c;
// Token: 0x0400697C RID: 27004
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x400697C")]
private int[] r;
// Token: 0x0400697D RID: 27005
[FieldOffset(Offset = "0x30")]
[Token(Token = "0x400697D")]
private int[] u;
// Token: 0x0400697E RID: 27006
[FieldOffset(Offset = "0x38")]
[Token(Token = "0x400697E")]
private int[] x;
}
}
@@ -0,0 +1,571 @@
using System;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib
{
// Token: 0x02001A0F RID: 6671
[Token(Token = "0x2001A0F")]
internal sealed class Inflate
{
// Token: 0x06009C86 RID: 40070 RVA: 0x00203390 File Offset: 0x00201590
[Token(Token = "0x6009C86")]
[Address(RVA = "0x411770", Offset = "0x410770", VA = "0x180411770")]
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: 0x06009C87 RID: 40071 RVA: 0x002033E0 File Offset: 0x002015E0
[Token(Token = "0x6009C87")]
[Address(RVA = "0x411630", Offset = "0x410630", VA = "0x180411630")]
internal int inflateEnd(ZStream z)
{
InfBlocks infBlocks = this.blocks;
if (infBlocks != 0)
{
infBlocks.free(z);
}
int num = 0;
this.blocks = num;
return num;
}
// Token: 0x06009C88 RID: 40072 RVA: 0x0020340C File Offset: 0x0020160C
[Token(Token = "0x6009C88")]
[Address(RVA = "0x411660", Offset = "0x410660", VA = "0x180411660")]
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: 0x06009C89 RID: 40073 RVA: 0x0020346C File Offset: 0x0020166C
[Token(Token = "0x6009C89")]
[Address(RVA = "0x411B80", Offset = "0x410B80", VA = "0x180411B80")]
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: 0x06009C8A RID: 40074 RVA: 0x00203990 File Offset: 0x00201B90
[Token(Token = "0x6009C8A")]
[Address(RVA = "0x4117E0", Offset = "0x4107E0", VA = "0x1804117E0")]
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: 0x06009C8B RID: 40075 RVA: 0x00203A18 File Offset: 0x00201C18
[Token(Token = "0x6009C8B")]
[Address(RVA = "0x411950", Offset = "0x410950", VA = "0x180411950")]
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: 0x06009C8C RID: 40076 RVA: 0x00203B30 File Offset: 0x00201D30
[Token(Token = "0x6009C8C")]
[Address(RVA = "0x411920", Offset = "0x410920", VA = "0x180411920")]
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: 0x06009C8D RID: 40077 RVA: 0x00203B60 File Offset: 0x00201D60
[Token(Token = "0x6009C8D")]
[Address(RVA = "0x4115E0", Offset = "0x4105E0", VA = "0x1804115E0")]
public Inflate()
{
long[] array = new long[1];
this.was = array;
base..ctor();
}
// Token: 0x06009C8E RID: 40078 RVA: 0x00203B84 File Offset: 0x00201D84
// Note: this type is marked as 'beforefieldinit'.
[Token(Token = "0x6009C8E")]
[Address(RVA = "0x411550", Offset = "0x410550", VA = "0x180411550")]
static Inflate()
{
byte[] array = new byte[4];
array[0] = (byte)((ulong)255L);
array[0] = (byte)((ulong)255L);
Inflate.mark = array;
}
// Token: 0x0400697F RID: 27007
[Token(Token = "0x400697F")]
private const int MAX_WBITS = 15;
// Token: 0x04006980 RID: 27008
[Token(Token = "0x4006980")]
private const int PRESET_DICT = 32;
// Token: 0x04006981 RID: 27009
[Token(Token = "0x4006981")]
internal const int Z_NO_FLUSH = 0;
// Token: 0x04006982 RID: 27010
[Token(Token = "0x4006982")]
internal const int Z_PARTIAL_FLUSH = 1;
// Token: 0x04006983 RID: 27011
[Token(Token = "0x4006983")]
internal const int Z_SYNC_FLUSH = 2;
// Token: 0x04006984 RID: 27012
[Token(Token = "0x4006984")]
internal const int Z_FULL_FLUSH = 3;
// Token: 0x04006985 RID: 27013
[Token(Token = "0x4006985")]
internal const int Z_FINISH = 4;
// Token: 0x04006986 RID: 27014
[Token(Token = "0x4006986")]
private const int Z_DEFLATED = 8;
// Token: 0x04006987 RID: 27015
[Token(Token = "0x4006987")]
private const int Z_OK = 0;
// Token: 0x04006988 RID: 27016
[Token(Token = "0x4006988")]
private const int Z_STREAM_END = 1;
// Token: 0x04006989 RID: 27017
[Token(Token = "0x4006989")]
private const int Z_NEED_DICT = 2;
// Token: 0x0400698A RID: 27018
[Token(Token = "0x400698A")]
private const int Z_ERRNO = -1;
// Token: 0x0400698B RID: 27019
[Token(Token = "0x400698B")]
private const int Z_STREAM_ERROR = -2;
// Token: 0x0400698C RID: 27020
[Token(Token = "0x400698C")]
private const int Z_DATA_ERROR = -3;
// Token: 0x0400698D RID: 27021
[Token(Token = "0x400698D")]
private const int Z_MEM_ERROR = -4;
// Token: 0x0400698E RID: 27022
[Token(Token = "0x400698E")]
private const int Z_BUF_ERROR = -5;
// Token: 0x0400698F RID: 27023
[Token(Token = "0x400698F")]
private const int Z_VERSION_ERROR = -6;
// Token: 0x04006990 RID: 27024
[Token(Token = "0x4006990")]
private const int METHOD = 0;
// Token: 0x04006991 RID: 27025
[Token(Token = "0x4006991")]
private const int FLAG = 1;
// Token: 0x04006992 RID: 27026
[Token(Token = "0x4006992")]
private const int DICT4 = 2;
// Token: 0x04006993 RID: 27027
[Token(Token = "0x4006993")]
private const int DICT3 = 3;
// Token: 0x04006994 RID: 27028
[Token(Token = "0x4006994")]
private const int DICT2 = 4;
// Token: 0x04006995 RID: 27029
[Token(Token = "0x4006995")]
private const int DICT1 = 5;
// Token: 0x04006996 RID: 27030
[Token(Token = "0x4006996")]
private const int DICT0 = 6;
// Token: 0x04006997 RID: 27031
[Token(Token = "0x4006997")]
private const int BLOCKS = 7;
// Token: 0x04006998 RID: 27032
[Token(Token = "0x4006998")]
private const int CHECK4 = 8;
// Token: 0x04006999 RID: 27033
[Token(Token = "0x4006999")]
private const int CHECK3 = 9;
// Token: 0x0400699A RID: 27034
[Token(Token = "0x400699A")]
private const int CHECK2 = 10;
// Token: 0x0400699B RID: 27035
[Token(Token = "0x400699B")]
private const int CHECK1 = 11;
// Token: 0x0400699C RID: 27036
[Token(Token = "0x400699C")]
private const int DONE = 12;
// Token: 0x0400699D RID: 27037
[Token(Token = "0x400699D")]
private const int BAD = 13;
// Token: 0x0400699E RID: 27038
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x400699E")]
internal int mode;
// Token: 0x0400699F RID: 27039
[FieldOffset(Offset = "0x14")]
[Token(Token = "0x400699F")]
internal int method;
// Token: 0x040069A0 RID: 27040
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x40069A0")]
internal long[] was;
// Token: 0x040069A1 RID: 27041
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x40069A1")]
internal long need;
// Token: 0x040069A2 RID: 27042
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x40069A2")]
internal int marker;
// Token: 0x040069A3 RID: 27043
[FieldOffset(Offset = "0x2C")]
[Token(Token = "0x40069A3")]
internal int nowrap;
// Token: 0x040069A4 RID: 27044
[FieldOffset(Offset = "0x30")]
[Token(Token = "0x40069A4")]
internal int wbits;
// Token: 0x040069A5 RID: 27045
[FieldOffset(Offset = "0x38")]
[Token(Token = "0x40069A5")]
internal InfBlocks blocks;
// Token: 0x040069A6 RID: 27046
[Token(Token = "0x40069A6")]
private static readonly byte[] mark;
}
}
@@ -0,0 +1,113 @@
using System;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib
{
// Token: 0x02001A10 RID: 6672
[Token(Token = "0x2001A10")]
public sealed class JZlib
{
// Token: 0x06009C8F RID: 40079 RVA: 0x00203BC0 File Offset: 0x00201DC0
[Token(Token = "0x6009C8F")]
[Address(RVA = "0x412380", Offset = "0x411380", VA = "0x180412380")]
public static string version()
{
return "1.0.7";
}
// Token: 0x06009C90 RID: 40080 RVA: 0x00203BD4 File Offset: 0x00201DD4
[Token(Token = "0x6009C90")]
[Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")]
public JZlib()
{
}
// Token: 0x040069A7 RID: 27047
[Token(Token = "0x40069A7")]
private const string _version = "1.0.7";
// Token: 0x040069A8 RID: 27048
[Token(Token = "0x40069A8")]
public const int Z_NO_COMPRESSION = 0;
// Token: 0x040069A9 RID: 27049
[Token(Token = "0x40069A9")]
public const int Z_BEST_SPEED = 1;
// Token: 0x040069AA RID: 27050
[Token(Token = "0x40069AA")]
public const int Z_BEST_COMPRESSION = 9;
// Token: 0x040069AB RID: 27051
[Token(Token = "0x40069AB")]
public const int Z_DEFAULT_COMPRESSION = -1;
// Token: 0x040069AC RID: 27052
[Token(Token = "0x40069AC")]
public const int Z_FILTERED = 1;
// Token: 0x040069AD RID: 27053
[Token(Token = "0x40069AD")]
public const int Z_HUFFMAN_ONLY = 2;
// Token: 0x040069AE RID: 27054
[Token(Token = "0x40069AE")]
public const int Z_DEFAULT_STRATEGY = 0;
// Token: 0x040069AF RID: 27055
[Token(Token = "0x40069AF")]
public const int Z_NO_FLUSH = 0;
// Token: 0x040069B0 RID: 27056
[Token(Token = "0x40069B0")]
public const int Z_PARTIAL_FLUSH = 1;
// Token: 0x040069B1 RID: 27057
[Token(Token = "0x40069B1")]
public const int Z_SYNC_FLUSH = 2;
// Token: 0x040069B2 RID: 27058
[Token(Token = "0x40069B2")]
public const int Z_FULL_FLUSH = 3;
// Token: 0x040069B3 RID: 27059
[Token(Token = "0x40069B3")]
public const int Z_FINISH = 4;
// Token: 0x040069B4 RID: 27060
[Token(Token = "0x40069B4")]
public const int Z_OK = 0;
// Token: 0x040069B5 RID: 27061
[Token(Token = "0x40069B5")]
public const int Z_STREAM_END = 1;
// Token: 0x040069B6 RID: 27062
[Token(Token = "0x40069B6")]
public const int Z_NEED_DICT = 2;
// Token: 0x040069B7 RID: 27063
[Token(Token = "0x40069B7")]
public const int Z_ERRNO = -1;
// Token: 0x040069B8 RID: 27064
[Token(Token = "0x40069B8")]
public const int Z_STREAM_ERROR = -2;
// Token: 0x040069B9 RID: 27065
[Token(Token = "0x40069B9")]
public const int Z_DATA_ERROR = -3;
// Token: 0x040069BA RID: 27066
[Token(Token = "0x40069BA")]
public const int Z_MEM_ERROR = -4;
// Token: 0x040069BB RID: 27067
[Token(Token = "0x40069BB")]
public const int Z_BUF_ERROR = -5;
// Token: 0x040069BC RID: 27068
[Token(Token = "0x40069BC")]
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: 0x02001A11 RID: 6673
[Token(Token = "0x2001A11")]
internal sealed class StaticTree
{
// Token: 0x06009C91 RID: 40081 RVA: 0x00203BE8 File Offset: 0x00201DE8
[Token(Token = "0x6009C91")]
[Address(RVA = "0x412D50", Offset = "0x411D50", VA = "0x180412D50")]
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: 0x06009C92 RID: 40082 RVA: 0x00203C20 File Offset: 0x00201E20
// Note: this type is marked as 'beforefieldinit'.
[Token(Token = "0x6009C92")]
[Address(RVA = "0x412B50", Offset = "0x411B50", VA = "0x180412B50")]
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: 0x040069BD RID: 27069
[Token(Token = "0x40069BD")]
private const int MAX_BITS = 15;
// Token: 0x040069BE RID: 27070
[Token(Token = "0x40069BE")]
private const int BL_CODES = 19;
// Token: 0x040069BF RID: 27071
[Token(Token = "0x40069BF")]
private const int D_CODES = 30;
// Token: 0x040069C0 RID: 27072
[Token(Token = "0x40069C0")]
private const int LITERALS = 256;
// Token: 0x040069C1 RID: 27073
[Token(Token = "0x40069C1")]
private const int LENGTH_CODES = 29;
// Token: 0x040069C2 RID: 27074
[Token(Token = "0x40069C2")]
private const int L_CODES = 286;
// Token: 0x040069C3 RID: 27075
[Token(Token = "0x40069C3")]
internal const int MAX_BL_BITS = 7;
// Token: 0x040069C4 RID: 27076
[Token(Token = "0x40069C4")]
internal static readonly short[] static_ltree;
// Token: 0x040069C5 RID: 27077
[Token(Token = "0x40069C5")]
internal static readonly short[] static_dtree;
// Token: 0x040069C6 RID: 27078
[Token(Token = "0x40069C6")]
internal static readonly StaticTree static_l_desc;
// Token: 0x040069C7 RID: 27079
[Token(Token = "0x40069C7")]
internal static readonly StaticTree static_d_desc;
// Token: 0x040069C8 RID: 27080
[Token(Token = "0x40069C8")]
internal static readonly StaticTree static_bl_desc;
// Token: 0x040069C9 RID: 27081
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x40069C9")]
internal short[] static_tree;
// Token: 0x040069CA RID: 27082
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x40069CA")]
internal int[] extra_bits;
// Token: 0x040069CB RID: 27083
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x40069CB")]
internal int extra_base;
// Token: 0x040069CC RID: 27084
[FieldOffset(Offset = "0x24")]
[Token(Token = "0x40069CC")]
internal int elems;
// Token: 0x040069CD RID: 27085
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x40069CD")]
internal int max_length;
}
}
@@ -0,0 +1,311 @@
using System;
using System.IO;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib
{
// Token: 0x02001A12 RID: 6674
[Token(Token = "0x2001A12")]
[Obsolete]
public class ZDeflaterOutputStream : Stream
{
// Token: 0x06009C93 RID: 40083 RVA: 0x00203D34 File Offset: 0x00201F34
[Token(Token = "0x6009C93")]
[Address(RVA = "0x424670", Offset = "0x423670", VA = "0x180424670")]
public ZDeflaterOutputStream(Stream outp)
{
}
// Token: 0x06009C94 RID: 40084 RVA: 0x00203D44 File Offset: 0x00201F44
[Token(Token = "0x6009C94")]
[Address(RVA = "0x424520", Offset = "0x423520", VA = "0x180424520")]
public ZDeflaterOutputStream(Stream outp, int level)
{
}
// Token: 0x06009C95 RID: 40085 RVA: 0x00203D54 File Offset: 0x00201F54
[Token(Token = "0x6009C95")]
[Address(RVA = "0x424540", Offset = "0x423540", VA = "0x180424540")]
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: 0x170018E7 RID: 6375
// (get) Token: 0x06009C96 RID: 40086 RVA: 0x00203DC4 File Offset: 0x00201FC4
[Token(Token = "0x170018E7")]
public override bool CanRead
{
[Token(Token = "0x6009C96")]
[Address(RVA = "0x424690", Offset = "0x423690", VA = "0x180424690", Slot = "7")]
get
{
}
}
// Token: 0x170018E8 RID: 6376
// (get) Token: 0x06009C97 RID: 40087 RVA: 0x00203DD4 File Offset: 0x00201FD4
[Token(Token = "0x170018E8")]
public override bool CanSeek
{
[Token(Token = "0x6009C97")]
[Address(RVA = "0x424690", Offset = "0x423690", VA = "0x180424690", Slot = "8")]
get
{
}
}
// Token: 0x170018E9 RID: 6377
// (get) Token: 0x06009C98 RID: 40088 RVA: 0x00203DE4 File Offset: 0x00201FE4
[Token(Token = "0x170018E9")]
public override bool CanWrite
{
[Token(Token = "0x6009C98")]
[Address(RVA = "0x4246A0", Offset = "0x4236A0", VA = "0x1804246A0", Slot = "9")]
get
{
return true;
}
}
// Token: 0x170018EA RID: 6378
// (get) Token: 0x06009C99 RID: 40089 RVA: 0x00203DF4 File Offset: 0x00201FF4
[Token(Token = "0x170018EA")]
public override long Length
{
[Token(Token = "0x6009C99")]
[Address(RVA = "0x4242C0", Offset = "0x4232C0", VA = "0x1804242C0", Slot = "10")]
get
{
}
}
// Token: 0x170018EB RID: 6379
// (get) Token: 0x06009C9A RID: 40090 RVA: 0x00203E04 File Offset: 0x00202004
// (set) Token: 0x06009C9B RID: 40091 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x170018EB")]
public override long Position
{
[Token(Token = "0x6009C9A")]
[Address(RVA = "0x4242C0", Offset = "0x4232C0", VA = "0x1804242C0", Slot = "11")]
get
{
}
[Token(Token = "0x6009C9B")]
[Address(RVA = "0x4242D0", Offset = "0x4232D0", VA = "0x1804242D0", Slot = "12")]
set
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
}
// Token: 0x06009C9C RID: 40092 RVA: 0x00203E14 File Offset: 0x00202014
[Token(Token = "0x6009C9C")]
[Address(RVA = "0x424340", Offset = "0x423340", VA = "0x180424340", 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: 0x06009C9D RID: 40093 RVA: 0x00203EFC File Offset: 0x002020FC
[Token(Token = "0x6009C9D")]
[Address(RVA = "0x4242C0", Offset = "0x4232C0", VA = "0x1804242C0", Slot = "25")]
public override long Seek(long offset, SeekOrigin origin)
{
}
// Token: 0x06009C9E RID: 40094 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x6009C9E")]
[Address(RVA = "0x4242D0", Offset = "0x4232D0", VA = "0x1804242D0", Slot = "26")]
public override void SetLength(long value)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06009C9F RID: 40095 RVA: 0x00203F0C File Offset: 0x0020210C
[Token(Token = "0x6009C9F")]
[Address(RVA = "0x4242C0", Offset = "0x4232C0", VA = "0x1804242C0", Slot = "27")]
public override int Read(byte[] buffer, int offset, int count)
{
return 0;
}
// Token: 0x06009CA0 RID: 40096 RVA: 0x00203F1C File Offset: 0x0020211C
[Token(Token = "0x6009CA0")]
[Address(RVA = "0x424290", Offset = "0x423290", VA = "0x180424290", Slot = "17")]
public override void Flush()
{
bool canRead = this.outp.CanRead;
}
// Token: 0x06009CA1 RID: 40097 RVA: 0x00203F3C File Offset: 0x0020213C
[Token(Token = "0x6009CA1")]
[Address(RVA = "0x4242E0", Offset = "0x4232E0", VA = "0x1804242E0", Slot = "30")]
public override void WriteByte(byte b)
{
this.buf1[0] = b;
int num = this.ReadByte();
}
// Token: 0x06009CA2 RID: 40098 RVA: 0x00203F64 File Offset: 0x00202164
[Token(Token = "0x6009CA2")]
[Address(RVA = "0x4240E0", Offset = "0x4230E0", VA = "0x1804240E0")]
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: 0x06009CA3 RID: 40099 RVA: 0x00204000 File Offset: 0x00202200
[Token(Token = "0x6009CA3")]
[Address(RVA = "0x424070", Offset = "0x423070", VA = "0x180424070")]
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: 0x06009CA4 RID: 40100 RVA: 0x0020405C File Offset: 0x0020225C
[Token(Token = "0x6009CA4")]
[Address(RVA = "0x423F40", Offset = "0x422F40", VA = "0x180423F40", 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: 0x040069CE RID: 27086
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x40069CE")]
protected ZStream z;
// Token: 0x040069CF RID: 27087
[FieldOffset(Offset = "0x30")]
[Token(Token = "0x40069CF")]
protected int flushLevel;
// Token: 0x040069D0 RID: 27088
[Token(Token = "0x40069D0")]
private const int BUFSIZE = 4192;
// Token: 0x040069D1 RID: 27089
[FieldOffset(Offset = "0x38")]
[Token(Token = "0x40069D1")]
protected byte[] buf;
// Token: 0x040069D2 RID: 27090
[FieldOffset(Offset = "0x40")]
[Token(Token = "0x40069D2")]
private byte[] buf1;
// Token: 0x040069D3 RID: 27091
[FieldOffset(Offset = "0x48")]
[Token(Token = "0x40069D3")]
protected Stream outp;
}
}
@@ -0,0 +1,266 @@
using System;
using System.IO;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib
{
// Token: 0x02001A13 RID: 6675
[Token(Token = "0x2001A13")]
[Obsolete]
public class ZInflaterInputStream : Stream
{
// Token: 0x06009CA5 RID: 40101 RVA: 0x002040D8 File Offset: 0x002022D8
[Token(Token = "0x6009CA5")]
[Address(RVA = "0x424990", Offset = "0x423990", VA = "0x180424990")]
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: 0x06009CA6 RID: 40102 RVA: 0x00204184 File Offset: 0x00202384
[Token(Token = "0x6009CA6")]
[Address(RVA = "0x424AD0", Offset = "0x423AD0", VA = "0x180424AD0")]
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: 0x170018EC RID: 6380
// (get) Token: 0x06009CA7 RID: 40103 RVA: 0x0020422C File Offset: 0x0020242C
[Token(Token = "0x170018EC")]
public override bool CanRead
{
[Token(Token = "0x6009CA7")]
[Address(RVA = "0x4246A0", Offset = "0x4236A0", VA = "0x1804246A0", Slot = "7")]
get
{
return true;
}
}
// Token: 0x170018ED RID: 6381
// (get) Token: 0x06009CA8 RID: 40104 RVA: 0x0020423C File Offset: 0x0020243C
[Token(Token = "0x170018ED")]
public override bool CanSeek
{
[Token(Token = "0x6009CA8")]
[Address(RVA = "0x424690", Offset = "0x423690", VA = "0x180424690", Slot = "8")]
get
{
}
}
// Token: 0x170018EE RID: 6382
// (get) Token: 0x06009CA9 RID: 40105 RVA: 0x0020424C File Offset: 0x0020244C
[Token(Token = "0x170018EE")]
public override bool CanWrite
{
[Token(Token = "0x6009CA9")]
[Address(RVA = "0x424690", Offset = "0x423690", VA = "0x180424690", Slot = "9")]
get
{
}
}
// Token: 0x170018EF RID: 6383
// (get) Token: 0x06009CAA RID: 40106 RVA: 0x0020425C File Offset: 0x0020245C
[Token(Token = "0x170018EF")]
public override long Length
{
[Token(Token = "0x6009CAA")]
[Address(RVA = "0x4242C0", Offset = "0x4232C0", VA = "0x1804242C0", Slot = "10")]
get
{
}
}
// Token: 0x170018F0 RID: 6384
// (get) Token: 0x06009CAB RID: 40107 RVA: 0x0020426C File Offset: 0x0020246C
// (set) Token: 0x06009CAC RID: 40108 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x170018F0")]
public override long Position
{
[Token(Token = "0x6009CAB")]
[Address(RVA = "0x4242C0", Offset = "0x4232C0", VA = "0x1804242C0", Slot = "11")]
get
{
}
[Token(Token = "0x6009CAC")]
[Address(RVA = "0x4242D0", Offset = "0x4232D0", VA = "0x1804242D0", Slot = "12")]
set
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
}
// Token: 0x06009CAD RID: 40109 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x6009CAD")]
[Address(RVA = "0x4242D0", Offset = "0x4232D0", VA = "0x1804242D0", 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: 0x06009CAE RID: 40110 RVA: 0x0020427C File Offset: 0x0020247C
[Token(Token = "0x6009CAE")]
[Address(RVA = "0x4242C0", Offset = "0x4232C0", VA = "0x1804242C0", Slot = "25")]
public override long Seek(long offset, SeekOrigin origin)
{
}
// Token: 0x06009CAF RID: 40111 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x6009CAF")]
[Address(RVA = "0x4242D0", Offset = "0x4232D0", VA = "0x1804242D0", Slot = "26")]
public override void SetLength(long value)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06009CB0 RID: 40112 RVA: 0x0020428C File Offset: 0x0020248C
[Token(Token = "0x6009CB0")]
[Address(RVA = "0x424790", Offset = "0x423790", VA = "0x180424790", 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: 0x06009CB1 RID: 40113 RVA: 0x00204388 File Offset: 0x00202588
[Token(Token = "0x6009CB1")]
[Address(RVA = "0x424290", Offset = "0x423290", VA = "0x180424290", Slot = "17")]
public override void Flush()
{
bool canRead = this.inp.CanRead;
}
// Token: 0x06009CB2 RID: 40114 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x6009CB2")]
[Address(RVA = "0x4242D0", Offset = "0x4232D0", VA = "0x1804242D0", Slot = "30")]
public override void WriteByte(byte b)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06009CB3 RID: 40115 RVA: 0x002043A8 File Offset: 0x002025A8
[Token(Token = "0x6009CB3")]
[Address(RVA = "0x4246B0", Offset = "0x4236B0", VA = "0x1804246B0", Slot = "15")]
public override void Close()
{
Platform.Dispose(this.inp);
base.Close();
}
// Token: 0x06009CB4 RID: 40116 RVA: 0x002043C8 File Offset: 0x002025C8
[Token(Token = "0x6009CB4")]
[Address(RVA = "0x424720", Offset = "0x423720", VA = "0x180424720", Slot = "28")]
public override int ReadByte()
{
byte b = this.buf1[0];
return -1;
}
// Token: 0x040069D4 RID: 27092
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x40069D4")]
protected ZStream z;
// Token: 0x040069D5 RID: 27093
[FieldOffset(Offset = "0x30")]
[Token(Token = "0x40069D5")]
protected int flushLevel;
// Token: 0x040069D6 RID: 27094
[Token(Token = "0x40069D6")]
private const int BUFSIZE = 4192;
// Token: 0x040069D7 RID: 27095
[FieldOffset(Offset = "0x38")]
[Token(Token = "0x40069D7")]
protected byte[] buf;
// Token: 0x040069D8 RID: 27096
[FieldOffset(Offset = "0x40")]
[Token(Token = "0x40069D8")]
private byte[] buf1;
// Token: 0x040069D9 RID: 27097
[FieldOffset(Offset = "0x48")]
[Token(Token = "0x40069D9")]
protected Stream inp;
// Token: 0x040069DA RID: 27098
[FieldOffset(Offset = "0x50")]
[Token(Token = "0x40069DA")]
private bool nomoreinput;
}
}
@@ -0,0 +1,547 @@
using System;
using System.IO;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib
{
// Token: 0x02001A14 RID: 6676
[Token(Token = "0x2001A14")]
public class ZInputStream : Stream
{
// Token: 0x06009CB5 RID: 40117 RVA: 0x002043EC File Offset: 0x002025EC
[Token(Token = "0x6009CB5")]
[Address(RVA = "0x424CA0", Offset = "0x423CA0", VA = "0x180424CA0")]
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: 0x06009CB6 RID: 40118 RVA: 0x00204418 File Offset: 0x00202618
[Token(Token = "0x6009CB6")]
[Address(RVA = "0x425630", Offset = "0x424630", VA = "0x180425630")]
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: 0x06009CB7 RID: 40119 RVA: 0x002044F0 File Offset: 0x002026F0
[Token(Token = "0x6009CB7")]
[Address(RVA = "0x4254A0", Offset = "0x4244A0", VA = "0x1804254A0")]
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: 0x06009CB8 RID: 40120 RVA: 0x002045C4 File Offset: 0x002027C4
[Token(Token = "0x6009CB8")]
[Address(RVA = "0x425090", Offset = "0x424090", VA = "0x180425090")]
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: 0x06009CB9 RID: 40121 RVA: 0x00204690 File Offset: 0x00202890
[Token(Token = "0x6009CB9")]
[Address(RVA = "0x4251F0", Offset = "0x4241F0", VA = "0x1804251F0")]
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: 0x06009CBA RID: 40122 RVA: 0x00204738 File Offset: 0x00202938
[Token(Token = "0x6009CBA")]
[Address(RVA = "0x425340", Offset = "0x424340", VA = "0x180425340")]
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: 0x170018F1 RID: 6385
// (get) Token: 0x06009CBB RID: 40123 RVA: 0x002047DC File Offset: 0x002029DC
[Token(Token = "0x170018F1")]
public sealed override bool CanRead
{
[Token(Token = "0x6009CBB")]
[Address(RVA = "0x4257B0", Offset = "0x4247B0", VA = "0x1804257B0", Slot = "7")]
get
{
return !this.closed;
}
}
// Token: 0x170018F2 RID: 6386
// (get) Token: 0x06009CBC RID: 40124 RVA: 0x002047F4 File Offset: 0x002029F4
[Token(Token = "0x170018F2")]
public sealed override bool CanSeek
{
[Token(Token = "0x6009CBC")]
[Address(RVA = "0x424690", Offset = "0x423690", VA = "0x180424690", Slot = "8")]
get
{
}
}
// Token: 0x170018F3 RID: 6387
// (get) Token: 0x06009CBD RID: 40125 RVA: 0x00204804 File Offset: 0x00202A04
[Token(Token = "0x170018F3")]
public sealed override bool CanWrite
{
[Token(Token = "0x6009CBD")]
[Address(RVA = "0x424690", Offset = "0x423690", VA = "0x180424690", Slot = "9")]
get
{
}
}
// Token: 0x06009CBE RID: 40126 RVA: 0x00204814 File Offset: 0x00202A14
[Token(Token = "0x6009CBE")]
[Address(RVA = "0x424C20", Offset = "0x423C20", VA = "0x180424C20", Slot = "15")]
public override void Close()
{
if (!this.closed)
{
Stream stream = this.input;
this.closed = true;
Platform.Dispose(stream);
base.Close();
}
}
// Token: 0x06009CBF RID: 40127 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x6009CBF")]
[Address(RVA = "0x4242D0", Offset = "0x4232D0", VA = "0x1804242D0", Slot = "17")]
public sealed override void Flush()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x170018F4 RID: 6388
// (get) Token: 0x06009CC0 RID: 40128 RVA: 0x00204844 File Offset: 0x00202A44
// (set) Token: 0x06009CC1 RID: 40129 RVA: 0x00204858 File Offset: 0x00202A58
[Token(Token = "0x170018F4")]
public virtual int FlushMode
{
[Token(Token = "0x6009CC0")]
[Address(RVA = "0x4257C0", Offset = "0x4247C0", VA = "0x1804257C0", Slot = "31")]
get
{
return this.flushLevel;
}
[Token(Token = "0x6009CC1")]
[Address(RVA = "0x4258B0", Offset = "0x4248B0", VA = "0x1804258B0", Slot = "32")]
set
{
this.flushLevel = value;
}
}
// Token: 0x170018F5 RID: 6389
// (get) Token: 0x06009CC2 RID: 40130 RVA: 0x0020486C File Offset: 0x00202A6C
[Token(Token = "0x170018F5")]
public sealed override long Length
{
[Token(Token = "0x6009CC2")]
[Address(RVA = "0x4257D0", Offset = "0x4247D0", VA = "0x1804257D0", Slot = "10")]
get
{
/*
An exception occurred when decompiling this method (06009CC2)
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: 0x170018F6 RID: 6390
// (get) Token: 0x06009CC3 RID: 40131 RVA: 0x00204880 File Offset: 0x00202A80
// (set) Token: 0x06009CC4 RID: 40132 RVA: 0x00204894 File Offset: 0x00202A94
[Token(Token = "0x170018F6")]
public sealed override long Position
{
[Token(Token = "0x6009CC3")]
[Address(RVA = "0x425820", Offset = "0x424820", VA = "0x180425820", Slot = "11")]
get
{
/*
An exception occurred when decompiling this method (06009CC3)
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 = "0x6009CC4")]
[Address(RVA = "0x4258C0", Offset = "0x4248C0", VA = "0x1804258C0", Slot = "12")]
set
{
/*
An exception occurred when decompiling this method (06009CC4)
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: 0x06009CC5 RID: 40133 RVA: 0x002048A8 File Offset: 0x00202AA8
[Token(Token = "0x6009CC5")]
[Address(RVA = "0x424D50", Offset = "0x423D50", VA = "0x180424D50", 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: 0x06009CC6 RID: 40134 RVA: 0x002049D4 File Offset: 0x00202BD4
[Token(Token = "0x6009CC6")]
[Address(RVA = "0x424720", Offset = "0x423720", VA = "0x180424720", Slot = "28")]
public override int ReadByte()
{
byte b = this.buf1[0];
return -1;
}
// Token: 0x06009CC7 RID: 40135 RVA: 0x002049F8 File Offset: 0x00202BF8
[Token(Token = "0x6009CC7")]
[Address(RVA = "0x424FA0", Offset = "0x423FA0", VA = "0x180424FA0", Slot = "25")]
public sealed override long Seek(long offset, SeekOrigin origin)
{
/*
An exception occurred when decompiling this method (06009CC7)
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: 0x06009CC8 RID: 40136 RVA: 0x00204A0C File Offset: 0x00202C0C
[Token(Token = "0x6009CC8")]
[Address(RVA = "0x424FF0", Offset = "0x423FF0", VA = "0x180424FF0", Slot = "26")]
public sealed override void SetLength(long value)
{
/*
An exception occurred when decompiling this method (06009CC8)
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: 0x170018F7 RID: 6391
// (get) Token: 0x06009CC9 RID: 40137 RVA: 0x00204A20 File Offset: 0x00202C20
[Token(Token = "0x170018F7")]
public virtual long TotalIn
{
[Token(Token = "0x6009CC9")]
[Address(RVA = "0x425870", Offset = "0x424870", VA = "0x180425870", Slot = "33")]
get
{
return this.z.total_in;
}
}
// Token: 0x170018F8 RID: 6392
// (get) Token: 0x06009CCA RID: 40138 RVA: 0x00204A40 File Offset: 0x00202C40
[Token(Token = "0x170018F8")]
public virtual long TotalOut
{
[Token(Token = "0x6009CCA")]
[Address(RVA = "0x425890", Offset = "0x424890", VA = "0x180425890", Slot = "34")]
get
{
return this.z.total_out;
}
}
// Token: 0x06009CCB RID: 40139 RVA: 0x00204A60 File Offset: 0x00202C60
[Token(Token = "0x6009CCB")]
[Address(RVA = "0x425040", Offset = "0x424040", VA = "0x180425040", Slot = "29")]
public sealed override void Write(byte[] buffer, int offset, int count)
{
/*
An exception occurred when decompiling this method (06009CCB)
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: 0x040069DB RID: 27099
[Token(Token = "0x40069DB")]
private const int BufferSize = 512;
// Token: 0x040069DC RID: 27100
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x40069DC")]
protected ZStream z;
// Token: 0x040069DD RID: 27101
[FieldOffset(Offset = "0x30")]
[Token(Token = "0x40069DD")]
protected int flushLevel;
// Token: 0x040069DE RID: 27102
[FieldOffset(Offset = "0x38")]
[Token(Token = "0x40069DE")]
protected byte[] buf;
// Token: 0x040069DF RID: 27103
[FieldOffset(Offset = "0x40")]
[Token(Token = "0x40069DF")]
protected byte[] buf1;
// Token: 0x040069E0 RID: 27104
[FieldOffset(Offset = "0x48")]
[Token(Token = "0x40069E0")]
protected bool compress;
// Token: 0x040069E1 RID: 27105
[FieldOffset(Offset = "0x50")]
[Token(Token = "0x40069E1")]
protected Stream input;
// Token: 0x040069E2 RID: 27106
[FieldOffset(Offset = "0x58")]
[Token(Token = "0x40069E2")]
protected bool closed;
// Token: 0x040069E3 RID: 27107
[FieldOffset(Offset = "0x59")]
[Token(Token = "0x40069E3")]
private bool nomoreinput;
}
}
@@ -0,0 +1,631 @@
using System;
using System.IO;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib
{
// Token: 0x02001A15 RID: 6677
[Token(Token = "0x2001A15")]
public class ZOutputStream : Stream
{
// Token: 0x06009CCC RID: 40140 RVA: 0x00204A74 File Offset: 0x00202C74
[Token(Token = "0x6009CCC")]
[Address(RVA = "0x425D10", Offset = "0x424D10", VA = "0x180425D10")]
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: 0x06009CCD RID: 40141 RVA: 0x00204AA0 File Offset: 0x00202CA0
[Token(Token = "0x6009CCD")]
[Address(RVA = "0x4261F0", Offset = "0x4251F0", VA = "0x1804261F0")]
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: 0x06009CCE RID: 40142 RVA: 0x00204B40 File Offset: 0x00202D40
[Token(Token = "0x6009CCE")]
[Address(RVA = "0x426340", Offset = "0x425340", VA = "0x180426340")]
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: 0x06009CCF RID: 40143 RVA: 0x00204BDC File Offset: 0x00202DDC
[Token(Token = "0x6009CCF")]
[Address(RVA = "0x4260C0", Offset = "0x4250C0", VA = "0x1804260C0")]
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: 0x06009CD0 RID: 40144 RVA: 0x00204C70 File Offset: 0x00202E70
[Token(Token = "0x6009CD0")]
[Address(RVA = "0x4264A0", Offset = "0x4254A0", VA = "0x1804264A0")]
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: 0x06009CD1 RID: 40145 RVA: 0x00204CDC File Offset: 0x00202EDC
[Token(Token = "0x6009CD1")]
[Address(RVA = "0x4265C0", Offset = "0x4255C0", VA = "0x1804265C0")]
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: 0x170018F9 RID: 6393
// (get) Token: 0x06009CD2 RID: 40146 RVA: 0x00204D44 File Offset: 0x00202F44
[Token(Token = "0x170018F9")]
public sealed override bool CanRead
{
[Token(Token = "0x6009CD2")]
[Address(RVA = "0x424690", Offset = "0x423690", VA = "0x180424690", Slot = "7")]
get
{
}
}
// Token: 0x170018FA RID: 6394
// (get) Token: 0x06009CD3 RID: 40147 RVA: 0x00204D54 File Offset: 0x00202F54
[Token(Token = "0x170018FA")]
public sealed override bool CanSeek
{
[Token(Token = "0x6009CD3")]
[Address(RVA = "0x424690", Offset = "0x423690", VA = "0x180424690", Slot = "8")]
get
{
}
}
// Token: 0x170018FB RID: 6395
// (get) Token: 0x06009CD4 RID: 40148 RVA: 0x00204D64 File Offset: 0x00202F64
[Token(Token = "0x170018FB")]
public sealed override bool CanWrite
{
[Token(Token = "0x6009CD4")]
[Address(RVA = "0x4257B0", Offset = "0x4247B0", VA = "0x1804257B0", Slot = "9")]
get
{
return !this.closed;
}
}
// Token: 0x06009CD5 RID: 40149 RVA: 0x00204D7C File Offset: 0x00202F7C
[Token(Token = "0x6009CD5")]
[Address(RVA = "0x425910", Offset = "0x424910", VA = "0x180425910", Slot = "15")]
public override void Close()
{
if (!this.closed)
{
this.DoClose();
base.Close();
return;
}
}
// Token: 0x06009CD6 RID: 40150 RVA: 0x00204DA0 File Offset: 0x00202FA0
[Token(Token = "0x6009CD6")]
[Address(RVA = "0x425940", Offset = "0x424940", VA = "0x180425940")]
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: 0x06009CD7 RID: 40151 RVA: 0x00204DD4 File Offset: 0x00202FD4
[Token(Token = "0x6009CD7")]
[Address(RVA = "0x425A50", Offset = "0x424A50", VA = "0x180425A50", 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: 0x06009CD8 RID: 40152 RVA: 0x00204E78 File Offset: 0x00203078
[Token(Token = "0x6009CD8")]
[Address(RVA = "0x425AF0", Offset = "0x424AF0", VA = "0x180425AF0", 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: 0x06009CD9 RID: 40153 RVA: 0x00204F78 File Offset: 0x00203178
[Token(Token = "0x6009CD9")]
[Address(RVA = "0x425CE0", Offset = "0x424CE0", VA = "0x180425CE0", Slot = "17")]
public override void Flush()
{
bool canRead = this.output.CanRead;
}
// Token: 0x170018FC RID: 6396
// (get) Token: 0x06009CDA RID: 40154 RVA: 0x00204F98 File Offset: 0x00203198
// (set) Token: 0x06009CDB RID: 40155 RVA: 0x00204FAC File Offset: 0x002031AC
[Token(Token = "0x170018FC")]
public virtual int FlushMode
{
[Token(Token = "0x6009CDA")]
[Address(RVA = "0x4257C0", Offset = "0x4247C0", VA = "0x1804257C0", Slot = "33")]
get
{
return this.flushLevel;
}
[Token(Token = "0x6009CDB")]
[Address(RVA = "0x4258B0", Offset = "0x4248B0", VA = "0x1804258B0", Slot = "34")]
set
{
this.flushLevel = value;
}
}
// Token: 0x170018FD RID: 6397
// (get) Token: 0x06009CDC RID: 40156 RVA: 0x00204FC0 File Offset: 0x002031C0
[Token(Token = "0x170018FD")]
public sealed override long Length
{
[Token(Token = "0x6009CDC")]
[Address(RVA = "0x4266F0", Offset = "0x4256F0", VA = "0x1804266F0", Slot = "10")]
get
{
/*
An exception occurred when decompiling this method (06009CDC)
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: 0x170018FE RID: 6398
// (get) Token: 0x06009CDD RID: 40157 RVA: 0x00204FD4 File Offset: 0x002031D4
// (set) Token: 0x06009CDE RID: 40158 RVA: 0x00204FE8 File Offset: 0x002031E8
[Token(Token = "0x170018FE")]
public sealed override long Position
{
[Token(Token = "0x6009CDD")]
[Address(RVA = "0x426740", Offset = "0x425740", VA = "0x180426740", Slot = "11")]
get
{
/*
An exception occurred when decompiling this method (06009CDD)
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 = "0x6009CDE")]
[Address(RVA = "0x426790", Offset = "0x425790", VA = "0x180426790", Slot = "12")]
set
{
/*
An exception occurred when decompiling this method (06009CDE)
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: 0x06009CDF RID: 40159 RVA: 0x00204FFC File Offset: 0x002031FC
[Token(Token = "0x6009CDF")]
[Address(RVA = "0x425DC0", Offset = "0x424DC0", VA = "0x180425DC0", Slot = "27")]
public sealed override int Read(byte[] buffer, int offset, int count)
{
/*
An exception occurred when decompiling this method (06009CDF)
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: 0x06009CE0 RID: 40160 RVA: 0x00205010 File Offset: 0x00203210
[Token(Token = "0x6009CE0")]
[Address(RVA = "0x425E10", Offset = "0x424E10", VA = "0x180425E10", Slot = "25")]
public sealed override long Seek(long offset, SeekOrigin origin)
{
/*
An exception occurred when decompiling this method (06009CE0)
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: 0x06009CE1 RID: 40161 RVA: 0x00205024 File Offset: 0x00203224
[Token(Token = "0x6009CE1")]
[Address(RVA = "0x425E60", Offset = "0x424E60", VA = "0x180425E60", Slot = "26")]
public sealed override void SetLength(long value)
{
/*
An exception occurred when decompiling this method (06009CE1)
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: 0x170018FF RID: 6399
// (get) Token: 0x06009CE2 RID: 40162 RVA: 0x00205038 File Offset: 0x00203238
[Token(Token = "0x170018FF")]
public virtual long TotalIn
{
[Token(Token = "0x6009CE2")]
[Address(RVA = "0x425870", Offset = "0x424870", VA = "0x180425870", Slot = "35")]
get
{
return this.z.total_in;
}
}
// Token: 0x17001900 RID: 6400
// (get) Token: 0x06009CE3 RID: 40163 RVA: 0x00205058 File Offset: 0x00203258
[Token(Token = "0x17001900")]
public virtual long TotalOut
{
[Token(Token = "0x6009CE3")]
[Address(RVA = "0x425890", Offset = "0x424890", VA = "0x180425890", Slot = "36")]
get
{
return this.z.total_out;
}
}
// Token: 0x06009CE4 RID: 40164 RVA: 0x00205078 File Offset: 0x00203278
[Token(Token = "0x6009CE4")]
[Address(RVA = "0x425EB0", Offset = "0x424EB0", VA = "0x180425EB0", 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: 0x06009CE5 RID: 40165 RVA: 0x002051AC File Offset: 0x002033AC
[Token(Token = "0x6009CE5")]
[Address(RVA = "0x4242E0", Offset = "0x4232E0", VA = "0x1804242E0", Slot = "30")]
public override void WriteByte(byte b)
{
this.buf1[0] = b;
int num = this.ReadByte();
}
// Token: 0x040069E4 RID: 27108
[Token(Token = "0x40069E4")]
private const int BufferSize = 512;
// Token: 0x040069E5 RID: 27109
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x40069E5")]
protected ZStream z;
// Token: 0x040069E6 RID: 27110
[FieldOffset(Offset = "0x30")]
[Token(Token = "0x40069E6")]
protected int flushLevel;
// Token: 0x040069E7 RID: 27111
[FieldOffset(Offset = "0x38")]
[Token(Token = "0x40069E7")]
protected byte[] buf;
// Token: 0x040069E8 RID: 27112
[FieldOffset(Offset = "0x40")]
[Token(Token = "0x40069E8")]
protected byte[] buf1;
// Token: 0x040069E9 RID: 27113
[FieldOffset(Offset = "0x48")]
[Token(Token = "0x40069E9")]
protected bool compress;
// Token: 0x040069EA RID: 27114
[FieldOffset(Offset = "0x50")]
[Token(Token = "0x40069EA")]
protected Stream output;
// Token: 0x040069EB RID: 27115
[FieldOffset(Offset = "0x58")]
[Token(Token = "0x40069EB")]
protected bool closed;
}
}
@@ -0,0 +1,452 @@
using System;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib
{
// Token: 0x02001A16 RID: 6678
[Token(Token = "0x2001A16")]
public sealed class ZStream
{
// Token: 0x06009CE6 RID: 40166 RVA: 0x002051D4 File Offset: 0x002033D4
[Token(Token = "0x6009CE6")]
[Address(RVA = "0x426E10", Offset = "0x425E10", VA = "0x180426E10")]
public int inflateInit()
{
int num = 0;
return this.inflateInit(15, num != 0);
}
// Token: 0x06009CE7 RID: 40167 RVA: 0x002051EC File Offset: 0x002033EC
[Token(Token = "0x6009CE7")]
[Address(RVA = "0x426DF0", Offset = "0x425DF0", VA = "0x180426DF0")]
public int inflateInit(bool nowrap)
{
return this.inflateInit(15, nowrap);
}
// Token: 0x06009CE8 RID: 40168 RVA: 0x00205204 File Offset: 0x00203404
[Token(Token = "0x6009CE8")]
[Address(RVA = "0x426E00", Offset = "0x425E00", VA = "0x180426E00")]
public int inflateInit(int w)
{
int num = 0;
return this.inflateInit(w, num != 0);
}
// Token: 0x06009CE9 RID: 40169 RVA: 0x0020521C File Offset: 0x0020341C
[Token(Token = "0x6009CE9")]
[Address(RVA = "0x426C90", Offset = "0x425C90", VA = "0x180426C90")]
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: 0x06009CEA RID: 40170 RVA: 0x0020529C File Offset: 0x0020349C
[Token(Token = "0x6009CEA")]
[Address(RVA = "0x426F80", Offset = "0x425F80", VA = "0x180426F80")]
public int inflate(int f)
{
Inflate inflate = this.istate;
if (inflate != 0)
{
return inflate.inflate(this, f);
}
return -2;
}
// Token: 0x06009CEB RID: 40171 RVA: 0x002052C0 File Offset: 0x002034C0
[Token(Token = "0x6009CEB")]
[Address(RVA = "0x426C40", Offset = "0x425C40", VA = "0x180426C40")]
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: 0x06009CEC RID: 40172 RVA: 0x00205300 File Offset: 0x00203500
[Token(Token = "0x6009CEC")]
[Address(RVA = "0x426F60", Offset = "0x425F60", VA = "0x180426F60")]
public int inflateSync()
{
Inflate inflate = this.istate;
if (inflate != 0)
{
return inflate.inflateSync(this);
}
return -2;
}
// Token: 0x06009CED RID: 40173 RVA: 0x00205324 File Offset: 0x00203524
[Token(Token = "0x6009CED")]
[Address(RVA = "0x426E20", Offset = "0x425E20", VA = "0x180426E20")]
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: 0x06009CEE RID: 40174 RVA: 0x002053A4 File Offset: 0x002035A4
[Token(Token = "0x6009CEE")]
[Address(RVA = "0x4269C0", Offset = "0x4259C0", VA = "0x1804269C0")]
public int deflateInit(int level)
{
Deflate deflate = new Deflate();
this.dstate = deflate;
return deflate.deflateInit(this, level, 15);
}
// Token: 0x06009CEF RID: 40175 RVA: 0x002053D0 File Offset: 0x002035D0
[Token(Token = "0x6009CEF")]
[Address(RVA = "0x426A50", Offset = "0x425A50", VA = "0x180426A50")]
public int deflateInit(int level, bool nowrap)
{
return this.deflateInit(level, 15, nowrap);
}
// Token: 0x06009CF0 RID: 40176 RVA: 0x002053E8 File Offset: 0x002035E8
[Token(Token = "0x6009CF0")]
[Address(RVA = "0x426930", Offset = "0x425930", VA = "0x180426930")]
public int deflateInit(int level, int bits)
{
Deflate deflate = new Deflate();
this.dstate = deflate;
return deflate.deflateInit(this, bits, bits);
}
// Token: 0x06009CF1 RID: 40177 RVA: 0x00205414 File Offset: 0x00203614
[Token(Token = "0x6009CF1")]
[Address(RVA = "0x426880", Offset = "0x425880", VA = "0x180426880")]
public int deflateInit(int level, int bits, bool nowrap)
{
Deflate deflate = new Deflate();
this.dstate = deflate;
return deflate.deflateInit(this, bits, bits);
}
// Token: 0x06009CF2 RID: 40178 RVA: 0x00205440 File Offset: 0x00203640
[Token(Token = "0x6009CF2")]
[Address(RVA = "0x426B00", Offset = "0x425B00", VA = "0x180426B00")]
public int deflate(int flush)
{
Deflate deflate = this.dstate;
if (deflate != 0)
{
return deflate.deflate(this, flush);
}
return -2;
}
// Token: 0x06009CF3 RID: 40179 RVA: 0x00205464 File Offset: 0x00203664
[Token(Token = "0x6009CF3")]
[Address(RVA = "0x426840", Offset = "0x425840", VA = "0x180426840")]
public int deflateEnd()
{
Deflate deflate = this.dstate;
if (deflate != 0)
{
int num = deflate.deflateEnd();
this.dstate = (ulong)0L;
return num;
}
return -2;
}
// Token: 0x06009CF4 RID: 40180 RVA: 0x00205490 File Offset: 0x00203690
[Token(Token = "0x6009CF4")]
[Address(RVA = "0x426A80", Offset = "0x425A80", VA = "0x180426A80")]
public int deflateParams(int level, int strategy)
{
Deflate deflate = this.dstate;
if (deflate != 0)
{
return deflate.deflateParams(this, strategy, strategy);
}
return -2;
}
// Token: 0x06009CF5 RID: 40181 RVA: 0x002054B4 File Offset: 0x002036B4
[Token(Token = "0x6009CF5")]
[Address(RVA = "0x426AC0", Offset = "0x425AC0", VA = "0x180426AC0")]
public int deflateSetDictionary(byte[] dictionary, int dictLength)
{
Deflate deflate = this.dstate;
if (deflate != 0)
{
return deflate.deflateSetDictionary(this, dictionary, dictLength);
}
return -2;
}
// Token: 0x06009CF6 RID: 40182 RVA: 0x002054D8 File Offset: 0x002036D8
[Token(Token = "0x6009CF6")]
[Address(RVA = "0x426B20", Offset = "0x425B20", VA = "0x180426B20")]
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: 0x06009CF7 RID: 40183 RVA: 0x00205594 File Offset: 0x00203794
[Token(Token = "0x6009CF7")]
[Address(RVA = "0x426FA0", Offset = "0x425FA0", VA = "0x180426FA0")]
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: 0x06009CF8 RID: 40184 RVA: 0x00205620 File Offset: 0x00203820
[Token(Token = "0x6009CF8")]
[Address(RVA = "0x426C20", Offset = "0x425C20", VA = "0x180426C20")]
public void free()
{
int num = 0;
this.next_in = num;
this.next_out = num;
this.msg = num;
this._adler = num;
}
// Token: 0x06009CF9 RID: 40185 RVA: 0x0020564C File Offset: 0x0020384C
[Token(Token = "0x6009CF9")]
[Address(RVA = "0x4267E0", Offset = "0x4257E0", VA = "0x1804267E0")]
public ZStream()
{
Adler32 adler = new Adler32();
this._adler = adler;
base..ctor();
}
// Token: 0x040069EC RID: 27116
[Token(Token = "0x40069EC")]
private const int MAX_WBITS = 15;
// Token: 0x040069ED RID: 27117
[Token(Token = "0x40069ED")]
private const int DEF_WBITS = 15;
// Token: 0x040069EE RID: 27118
[Token(Token = "0x40069EE")]
private const int Z_NO_FLUSH = 0;
// Token: 0x040069EF RID: 27119
[Token(Token = "0x40069EF")]
private const int Z_PARTIAL_FLUSH = 1;
// Token: 0x040069F0 RID: 27120
[Token(Token = "0x40069F0")]
private const int Z_SYNC_FLUSH = 2;
// Token: 0x040069F1 RID: 27121
[Token(Token = "0x40069F1")]
private const int Z_FULL_FLUSH = 3;
// Token: 0x040069F2 RID: 27122
[Token(Token = "0x40069F2")]
private const int Z_FINISH = 4;
// Token: 0x040069F3 RID: 27123
[Token(Token = "0x40069F3")]
private const int MAX_MEM_LEVEL = 9;
// Token: 0x040069F4 RID: 27124
[Token(Token = "0x40069F4")]
private const int Z_OK = 0;
// Token: 0x040069F5 RID: 27125
[Token(Token = "0x40069F5")]
private const int Z_STREAM_END = 1;
// Token: 0x040069F6 RID: 27126
[Token(Token = "0x40069F6")]
private const int Z_NEED_DICT = 2;
// Token: 0x040069F7 RID: 27127
[Token(Token = "0x40069F7")]
private const int Z_ERRNO = -1;
// Token: 0x040069F8 RID: 27128
[Token(Token = "0x40069F8")]
private const int Z_STREAM_ERROR = -2;
// Token: 0x040069F9 RID: 27129
[Token(Token = "0x40069F9")]
private const int Z_DATA_ERROR = -3;
// Token: 0x040069FA RID: 27130
[Token(Token = "0x40069FA")]
private const int Z_MEM_ERROR = -4;
// Token: 0x040069FB RID: 27131
[Token(Token = "0x40069FB")]
private const int Z_BUF_ERROR = -5;
// Token: 0x040069FC RID: 27132
[Token(Token = "0x40069FC")]
private const int Z_VERSION_ERROR = -6;
// Token: 0x040069FD RID: 27133
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x40069FD")]
public byte[] next_in;
// Token: 0x040069FE RID: 27134
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x40069FE")]
public int next_in_index;
// Token: 0x040069FF RID: 27135
[FieldOffset(Offset = "0x1C")]
[Token(Token = "0x40069FF")]
public int avail_in;
// Token: 0x04006A00 RID: 27136
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x4006A00")]
public long total_in;
// Token: 0x04006A01 RID: 27137
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x4006A01")]
public byte[] next_out;
// Token: 0x04006A02 RID: 27138
[FieldOffset(Offset = "0x30")]
[Token(Token = "0x4006A02")]
public int next_out_index;
// Token: 0x04006A03 RID: 27139
[FieldOffset(Offset = "0x34")]
[Token(Token = "0x4006A03")]
public int avail_out;
// Token: 0x04006A04 RID: 27140
[FieldOffset(Offset = "0x38")]
[Token(Token = "0x4006A04")]
public long total_out;
// Token: 0x04006A05 RID: 27141
[FieldOffset(Offset = "0x40")]
[Token(Token = "0x4006A05")]
public string msg;
// Token: 0x04006A06 RID: 27142
[FieldOffset(Offset = "0x48")]
[Token(Token = "0x4006A06")]
internal Deflate dstate;
// Token: 0x04006A07 RID: 27143
[FieldOffset(Offset = "0x50")]
[Token(Token = "0x4006A07")]
internal Inflate istate;
// Token: 0x04006A08 RID: 27144
[FieldOffset(Offset = "0x58")]
[Token(Token = "0x4006A08")]
internal int data_type;
// Token: 0x04006A09 RID: 27145
[FieldOffset(Offset = "0x60")]
[Token(Token = "0x4006A09")]
public long adler;
// Token: 0x04006A0A RID: 27146
[FieldOffset(Offset = "0x68")]
[Token(Token = "0x4006A0A")]
internal Adler32 _adler;
}
}
@@ -0,0 +1,397 @@
using System;
using System.Runtime.CompilerServices;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Zlib
{
// Token: 0x02001A17 RID: 6679
[Token(Token = "0x2001A17")]
internal sealed class ZTree
{
// Token: 0x06009CFA RID: 40186 RVA: 0x0020566C File Offset: 0x0020386C
[Token(Token = "0x6009CFA")]
[Address(RVA = "0x427940", Offset = "0x426940", VA = "0x180427940")]
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: 0x06009CFB RID: 40187 RVA: 0x00205694 File Offset: 0x00203894
[Token(Token = "0x6009CFB")]
[Address(RVA = "0x427A30", Offset = "0x426A30", VA = "0x180427A30")]
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: 0x06009CFC RID: 40188 RVA: 0x0020584C File Offset: 0x00203A4C
[Token(Token = "0x6009CFC")]
[Address(RVA = "0x427280", Offset = "0x426280", VA = "0x180427280")]
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: 0x06009CFD RID: 40189 RVA: 0x00205AEC File Offset: 0x00203CEC
[Token(Token = "0x6009CFD")]
[Address(RVA = "0x427EE0", Offset = "0x426EE0", VA = "0x180427EE0")]
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: 0x06009CFE RID: 40190 RVA: 0x00205B54 File Offset: 0x00203D54
[Token(Token = "0x6009CFE")]
[Address(RVA = "0x427250", Offset = "0x426250", VA = "0x180427250")]
internal static int bi_reverse(int code, int len)
{
int num = 0;
int num2 = len - 1;
return num + num;
}
// Token: 0x06009CFF RID: 40191 RVA: 0x00205B6C File Offset: 0x00203D6C
[Token(Token = "0x6009CFF")]
[Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")]
public ZTree()
{
}
// Token: 0x06009D00 RID: 40192 RVA: 0x00205B80 File Offset: 0x00203D80
// Note: this type is marked as 'beforefieldinit'.
[Token(Token = "0x6009D00")]
[Address(RVA = "0x427060", Offset = "0x426060", VA = "0x180427060")]
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: 0x04006A0B RID: 27147
[Token(Token = "0x4006A0B")]
private const int MAX_BITS = 15;
// Token: 0x04006A0C RID: 27148
[Token(Token = "0x4006A0C")]
private const int BL_CODES = 19;
// Token: 0x04006A0D RID: 27149
[Token(Token = "0x4006A0D")]
private const int D_CODES = 30;
// Token: 0x04006A0E RID: 27150
[Token(Token = "0x4006A0E")]
private const int LITERALS = 256;
// Token: 0x04006A0F RID: 27151
[Token(Token = "0x4006A0F")]
private const int LENGTH_CODES = 29;
// Token: 0x04006A10 RID: 27152
[Token(Token = "0x4006A10")]
private const int L_CODES = 286;
// Token: 0x04006A11 RID: 27153
[Token(Token = "0x4006A11")]
private const int HEAP_SIZE = 573;
// Token: 0x04006A12 RID: 27154
[Token(Token = "0x4006A12")]
internal const int MAX_BL_BITS = 7;
// Token: 0x04006A13 RID: 27155
[Token(Token = "0x4006A13")]
internal const int END_BLOCK = 256;
// Token: 0x04006A14 RID: 27156
[Token(Token = "0x4006A14")]
internal const int REP_3_6 = 16;
// Token: 0x04006A15 RID: 27157
[Token(Token = "0x4006A15")]
internal const int REPZ_3_10 = 17;
// Token: 0x04006A16 RID: 27158
[Token(Token = "0x4006A16")]
internal const int REPZ_11_138 = 18;
// Token: 0x04006A17 RID: 27159
[Token(Token = "0x4006A17")]
internal static readonly int[] extra_lbits;
// Token: 0x04006A18 RID: 27160
[Token(Token = "0x4006A18")]
internal static readonly int[] extra_dbits;
// Token: 0x04006A19 RID: 27161
[Token(Token = "0x4006A19")]
internal static readonly int[] extra_blbits;
// Token: 0x04006A1A RID: 27162
[Token(Token = "0x4006A1A")]
internal static readonly byte[] bl_order;
// Token: 0x04006A1B RID: 27163
[Token(Token = "0x4006A1B")]
internal const int Buf_size = 16;
// Token: 0x04006A1C RID: 27164
[Token(Token = "0x4006A1C")]
internal const int DIST_CODE_LEN = 512;
// Token: 0x04006A1D RID: 27165
[Token(Token = "0x4006A1D")]
internal static readonly byte[] _dist_code;
// Token: 0x04006A1E RID: 27166
[Token(Token = "0x4006A1E")]
internal static readonly byte[] _length_code;
// Token: 0x04006A1F RID: 27167
[Token(Token = "0x4006A1F")]
internal static readonly int[] base_length;
// Token: 0x04006A20 RID: 27168
[Token(Token = "0x4006A20")]
internal static readonly int[] base_dist;
// Token: 0x04006A21 RID: 27169
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x4006A21")]
internal short[] dyn_tree;
// Token: 0x04006A22 RID: 27170
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x4006A22")]
internal int max_code;
// Token: 0x04006A23 RID: 27171
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x4006A23")]
internal StaticTree stat_desc;
}
}