oh dear
This commit is contained in:
@@ -0,0 +1,20 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Authentication
|
||||
{
|
||||
// Token: 0x02001FC8 RID: 8136
|
||||
[Token(Token = "0x2001FC8")]
|
||||
public enum AuthenticationTypes
|
||||
{
|
||||
// Token: 0x04008412 RID: 33810
|
||||
[Token(Token = "0x4008412")]
|
||||
Unknown,
|
||||
// Token: 0x04008413 RID: 33811
|
||||
[Token(Token = "0x4008413")]
|
||||
Basic,
|
||||
// Token: 0x04008414 RID: 33812
|
||||
[Token(Token = "0x4008414")]
|
||||
Digest
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,74 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Authentication
|
||||
{
|
||||
// Token: 0x02001FC9 RID: 8137
|
||||
[Token(Token = "0x2001FC9")]
|
||||
public sealed class Credentials
|
||||
{
|
||||
// Token: 0x170020E5 RID: 8421
|
||||
// (get) Token: 0x0600CE98 RID: 52888 RVA: 0x002F9200 File Offset: 0x002F7400
|
||||
// (set) Token: 0x0600CE99 RID: 52889 RVA: 0x002F9214 File Offset: 0x002F7414
|
||||
[Token(Token = "0x170020E5")]
|
||||
public AuthenticationTypes Type
|
||||
{
|
||||
[Token(Token = "0x600CE98")]
|
||||
[Address(RVA = "0x3FA560", Offset = "0x3F9360", VA = "0x1803FA560")]
|
||||
get;
|
||||
[Token(Token = "0x600CE99")]
|
||||
[Address(RVA = "0x536480", Offset = "0x535280", VA = "0x180536480")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x170020E6 RID: 8422
|
||||
// (get) Token: 0x0600CE9A RID: 52890 RVA: 0x002F9228 File Offset: 0x002F7428
|
||||
// (set) Token: 0x0600CE9B RID: 52891 RVA: 0x002F923C File Offset: 0x002F743C
|
||||
[Token(Token = "0x170020E6")]
|
||||
public string UserName
|
||||
{
|
||||
[Token(Token = "0x600CE9A")]
|
||||
[Address(RVA = "0x3F5F40", Offset = "0x3F4D40", VA = "0x1803F5F40")]
|
||||
get;
|
||||
[Token(Token = "0x600CE9B")]
|
||||
[Address(RVA = "0x3F7210", Offset = "0x3F6010", VA = "0x1803F7210")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x170020E7 RID: 8423
|
||||
// (get) Token: 0x0600CE9C RID: 52892 RVA: 0x002F9250 File Offset: 0x002F7450
|
||||
// (set) Token: 0x0600CE9D RID: 52893 RVA: 0x002F9264 File Offset: 0x002F7464
|
||||
[Token(Token = "0x170020E7")]
|
||||
public string Password
|
||||
{
|
||||
[Token(Token = "0x600CE9C")]
|
||||
[Address(RVA = "0x3F6400", Offset = "0x3F5200", VA = "0x1803F6400")]
|
||||
get;
|
||||
[Token(Token = "0x600CE9D")]
|
||||
[Address(RVA = "0x460F90", Offset = "0x45FD90", VA = "0x180460F90")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x0600CE9E RID: 52894 RVA: 0x002F9278 File Offset: 0x002F7478
|
||||
[Token(Token = "0x600CE9E")]
|
||||
[Address(RVA = "0xA9F510", Offset = "0xA9E310", VA = "0x180A9F510")]
|
||||
public Credentials(string userName, string password)
|
||||
{
|
||||
this.UserName = userName;
|
||||
this.Password = password;
|
||||
this.Type = (AuthenticationTypes)((ulong)0L);
|
||||
}
|
||||
|
||||
// Token: 0x0600CE9F RID: 52895 RVA: 0x002F92A4 File Offset: 0x002F74A4
|
||||
[Token(Token = "0x600CE9F")]
|
||||
[Address(RVA = "0xA9F550", Offset = "0xA9E350", VA = "0x180A9F550")]
|
||||
public Credentials(AuthenticationTypes type, string userName, string password)
|
||||
{
|
||||
int num = 0;
|
||||
base.FieldGetter(num, userName, password);
|
||||
this.Type = type;
|
||||
this.UserName = userName;
|
||||
this.Password = password;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,480 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
using BestHTTP.Extensions;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Authentication
|
||||
{
|
||||
// Token: 0x02001FCA RID: 8138
|
||||
[Token(Token = "0x2001FCA")]
|
||||
public sealed class Digest
|
||||
{
|
||||
// Token: 0x170020E8 RID: 8424
|
||||
// (get) Token: 0x0600CEA0 RID: 52896 RVA: 0x002F92D4 File Offset: 0x002F74D4
|
||||
// (set) Token: 0x0600CEA1 RID: 52897 RVA: 0x002F92E8 File Offset: 0x002F74E8
|
||||
[Token(Token = "0x170020E8")]
|
||||
public Uri Uri
|
||||
{
|
||||
[Token(Token = "0x600CEA0")]
|
||||
[Address(RVA = "0x3F6E20", Offset = "0x3F5C20", VA = "0x1803F6E20")]
|
||||
get;
|
||||
[Token(Token = "0x600CEA1")]
|
||||
[Address(RVA = "0x3F7200", Offset = "0x3F6000", VA = "0x1803F7200")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x170020E9 RID: 8425
|
||||
// (get) Token: 0x0600CEA2 RID: 52898 RVA: 0x002F92FC File Offset: 0x002F74FC
|
||||
// (set) Token: 0x0600CEA3 RID: 52899 RVA: 0x002F9310 File Offset: 0x002F7510
|
||||
[Token(Token = "0x170020E9")]
|
||||
public AuthenticationTypes Type
|
||||
{
|
||||
[Token(Token = "0x600CEA2")]
|
||||
[Address(RVA = "0x40B720", Offset = "0x40A520", VA = "0x18040B720")]
|
||||
get;
|
||||
[Token(Token = "0x600CEA3")]
|
||||
[Address(RVA = "0x41F740", Offset = "0x41E540", VA = "0x18041F740")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x170020EA RID: 8426
|
||||
// (get) Token: 0x0600CEA4 RID: 52900 RVA: 0x002F9324 File Offset: 0x002F7524
|
||||
// (set) Token: 0x0600CEA5 RID: 52901 RVA: 0x002F9338 File Offset: 0x002F7538
|
||||
[Token(Token = "0x170020EA")]
|
||||
public string Realm
|
||||
{
|
||||
[Token(Token = "0x600CEA4")]
|
||||
[Address(RVA = "0x3F6400", Offset = "0x3F5200", VA = "0x1803F6400")]
|
||||
get;
|
||||
[Token(Token = "0x600CEA5")]
|
||||
[Address(RVA = "0x460F90", Offset = "0x45FD90", VA = "0x180460F90")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x170020EB RID: 8427
|
||||
// (get) Token: 0x0600CEA6 RID: 52902 RVA: 0x002F934C File Offset: 0x002F754C
|
||||
// (set) Token: 0x0600CEA7 RID: 52903 RVA: 0x002F9360 File Offset: 0x002F7560
|
||||
[Token(Token = "0x170020EB")]
|
||||
public bool Stale
|
||||
{
|
||||
[Token(Token = "0x600CEA6")]
|
||||
[Address(RVA = "0x494270", Offset = "0x493070", VA = "0x180494270")]
|
||||
get;
|
||||
[Token(Token = "0x600CEA7")]
|
||||
[Address(RVA = "0x494500", Offset = "0x493300", VA = "0x180494500")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x170020EC RID: 8428
|
||||
// (get) Token: 0x0600CEA8 RID: 52904 RVA: 0x002F9374 File Offset: 0x002F7574
|
||||
// (set) Token: 0x0600CEA9 RID: 52905 RVA: 0x002F9388 File Offset: 0x002F7588
|
||||
[Token(Token = "0x170020EC")]
|
||||
private string Nonce
|
||||
{
|
||||
[Token(Token = "0x600CEA8")]
|
||||
[Address(RVA = "0x3FA180", Offset = "0x3F8F80", VA = "0x1803FA180")]
|
||||
get;
|
||||
[Token(Token = "0x600CEA9")]
|
||||
[Address(RVA = "0x4437E0", Offset = "0x4425E0", VA = "0x1804437E0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x170020ED RID: 8429
|
||||
// (get) Token: 0x0600CEAA RID: 52906 RVA: 0x002F939C File Offset: 0x002F759C
|
||||
// (set) Token: 0x0600CEAB RID: 52907 RVA: 0x002F93B0 File Offset: 0x002F75B0
|
||||
[Token(Token = "0x170020ED")]
|
||||
private string Opaque
|
||||
{
|
||||
[Token(Token = "0x600CEAA")]
|
||||
[Address(RVA = "0x3F63D0", Offset = "0x3F51D0", VA = "0x1803F63D0")]
|
||||
get;
|
||||
[Token(Token = "0x600CEAB")]
|
||||
[Address(RVA = "0x5329E0", Offset = "0x5317E0", VA = "0x1805329E0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x170020EE RID: 8430
|
||||
// (get) Token: 0x0600CEAC RID: 52908 RVA: 0x002F93C4 File Offset: 0x002F75C4
|
||||
// (set) Token: 0x0600CEAD RID: 52909 RVA: 0x002F93D8 File Offset: 0x002F75D8
|
||||
[Token(Token = "0x170020EE")]
|
||||
private string Algorithm
|
||||
{
|
||||
[Token(Token = "0x600CEAC")]
|
||||
[Address(RVA = "0x408890", Offset = "0x407690", VA = "0x180408890")]
|
||||
get;
|
||||
[Token(Token = "0x600CEAD")]
|
||||
[Address(RVA = "0x403B30", Offset = "0x402930", VA = "0x180403B30")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x170020EF RID: 8431
|
||||
// (get) Token: 0x0600CEAE RID: 52910 RVA: 0x002F93EC File Offset: 0x002F75EC
|
||||
// (set) Token: 0x0600CEAF RID: 52911 RVA: 0x002F9400 File Offset: 0x002F7600
|
||||
[Token(Token = "0x170020EF")]
|
||||
public List<string> ProtectedUris
|
||||
{
|
||||
[Token(Token = "0x600CEAE")]
|
||||
[Address(RVA = "0x3FA170", Offset = "0x3F8F70", VA = "0x1803FA170")]
|
||||
get;
|
||||
[Token(Token = "0x600CEAF")]
|
||||
[Address(RVA = "0x46AA50", Offset = "0x469850", VA = "0x18046AA50")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x170020F0 RID: 8432
|
||||
// (get) Token: 0x0600CEB0 RID: 52912 RVA: 0x002F9414 File Offset: 0x002F7614
|
||||
// (set) Token: 0x0600CEB1 RID: 52913 RVA: 0x002F9428 File Offset: 0x002F7628
|
||||
[Token(Token = "0x170020F0")]
|
||||
private string QualityOfProtections
|
||||
{
|
||||
[Token(Token = "0x600CEB0")]
|
||||
[Address(RVA = "0x415290", Offset = "0x414090", VA = "0x180415290")]
|
||||
get;
|
||||
[Token(Token = "0x600CEB1")]
|
||||
[Address(RVA = "0x46AB00", Offset = "0x469900", VA = "0x18046AB00")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x170020F1 RID: 8433
|
||||
// (get) Token: 0x0600CEB2 RID: 52914 RVA: 0x002F943C File Offset: 0x002F763C
|
||||
// (set) Token: 0x0600CEB3 RID: 52915 RVA: 0x002F9450 File Offset: 0x002F7650
|
||||
[Token(Token = "0x170020F1")]
|
||||
private int NonceCount
|
||||
{
|
||||
[Token(Token = "0x600CEB2")]
|
||||
[Address(RVA = "0x3FA190", Offset = "0x3F8F90", VA = "0x1803FA190")]
|
||||
get;
|
||||
[Token(Token = "0x600CEB3")]
|
||||
[Address(RVA = "0x568560", Offset = "0x567360", VA = "0x180568560")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x170020F2 RID: 8434
|
||||
// (get) Token: 0x0600CEB4 RID: 52916 RVA: 0x002F9464 File Offset: 0x002F7664
|
||||
// (set) Token: 0x0600CEB5 RID: 52917 RVA: 0x002F9478 File Offset: 0x002F7678
|
||||
[Token(Token = "0x170020F2")]
|
||||
private string HA1Sess
|
||||
{
|
||||
[Token(Token = "0x600CEB4")]
|
||||
[Address(RVA = "0x423DE0", Offset = "0x422BE0", VA = "0x180423DE0")]
|
||||
get;
|
||||
[Token(Token = "0x600CEB5")]
|
||||
[Address(RVA = "0x567490", Offset = "0x566290", VA = "0x180567490")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x0600CEB6 RID: 52918 RVA: 0x002F948C File Offset: 0x002F768C
|
||||
[Token(Token = "0x600CEB6")]
|
||||
[Address(RVA = "0xAA12E0", Offset = "0xAA00E0", VA = "0x180AA12E0")]
|
||||
internal Digest(Uri uri)
|
||||
{
|
||||
this.Uri = uri;
|
||||
this.Algorithm = "md5";
|
||||
}
|
||||
|
||||
// Token: 0x0600CEB7 RID: 52919 RVA: 0x002F94B4 File Offset: 0x002F76B4
|
||||
[Token(Token = "0x600CEB7")]
|
||||
[Address(RVA = "0xAA0E60", Offset = "0xA9FC60", VA = "0x180AA0E60")]
|
||||
public void ParseChallange(string header)
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
this.<Type>k__BackingField = (AuthenticationTypes)num;
|
||||
this.<Stale>k__BackingField = num != 0;
|
||||
this.<Opaque>k__BackingField = num;
|
||||
this.<HA1Sess>k__BackingField = num;
|
||||
this.<NonceCount>k__BackingField = num;
|
||||
this.<QualityOfProtections>k__BackingField = num;
|
||||
List<string> list = this.<ProtectedUris>k__BackingField;
|
||||
if (list != 0)
|
||||
{
|
||||
list.Clear();
|
||||
}
|
||||
List<HeaderValue> <Values>k__BackingField = new WWWAuthenticateHeaderParser(header).<Values>k__BackingField;
|
||||
bool flag;
|
||||
if (flag)
|
||||
{
|
||||
int stringLength = header.m_stringLength;
|
||||
int stringLength2;
|
||||
if (flag > true)
|
||||
{
|
||||
if (flag > true)
|
||||
{
|
||||
if (flag)
|
||||
{
|
||||
while (!flag)
|
||||
{
|
||||
}
|
||||
this.<QualityOfProtections>k__BackingField = flag;
|
||||
}
|
||||
if (flag)
|
||||
{
|
||||
while (!flag)
|
||||
{
|
||||
}
|
||||
this.<Nonce>k__BackingField = flag;
|
||||
}
|
||||
while (!flag)
|
||||
{
|
||||
}
|
||||
while (!flag)
|
||||
{
|
||||
}
|
||||
this.<Type>k__BackingField = (AuthenticationTypes)((ulong)2L);
|
||||
}
|
||||
if (flag)
|
||||
{
|
||||
while (!flag)
|
||||
{
|
||||
}
|
||||
this.<Realm>k__BackingField = flag;
|
||||
}
|
||||
while (!flag)
|
||||
{
|
||||
}
|
||||
while (!flag)
|
||||
{
|
||||
}
|
||||
while (flag)
|
||||
{
|
||||
}
|
||||
if (this.<ProtectedUris>k__BackingField == (ulong)0L)
|
||||
{
|
||||
List<string> list2 = new List();
|
||||
this.<ProtectedUris>k__BackingField = list2;
|
||||
}
|
||||
string text;
|
||||
this.<ProtectedUris>k__BackingField.Add(text);
|
||||
string text2;
|
||||
stringLength2 = text2.m_stringLength;
|
||||
}
|
||||
bool flag2;
|
||||
if (stringLength2 > 474311018)
|
||||
{
|
||||
if (stringLength2 == 1749328254)
|
||||
{
|
||||
while (stringLength2 == 0)
|
||||
{
|
||||
}
|
||||
this.<Stale>k__BackingField = flag2;
|
||||
}
|
||||
while (!flag2)
|
||||
{
|
||||
}
|
||||
while (!flag2)
|
||||
{
|
||||
}
|
||||
this.<Opaque>k__BackingField = flag2;
|
||||
}
|
||||
if (flag2)
|
||||
{
|
||||
while (!flag2)
|
||||
{
|
||||
}
|
||||
this.<Type>k__BackingField = (AuthenticationTypes)((ulong)1L);
|
||||
}
|
||||
while (!flag2)
|
||||
{
|
||||
}
|
||||
while (!flag2)
|
||||
{
|
||||
}
|
||||
this.<Algorithm>k__BackingField = flag2;
|
||||
}
|
||||
}
|
||||
while (num != 0);
|
||||
}
|
||||
|
||||
// Token: 0x0600CEB8 RID: 52920 RVA: 0x002F9624 File Offset: 0x002F7824
|
||||
[Token(Token = "0x600CEB8")]
|
||||
[Address(RVA = "0xA9FF40", Offset = "0xA9ED40", VA = "0x180A9FF40")]
|
||||
public string GenerateResponseHeader(HTTPRequest request, Credentials credentials, bool isProxy = false)
|
||||
{
|
||||
string text8;
|
||||
string requestPathAndQueryURL;
|
||||
for (;;)
|
||||
{
|
||||
AuthenticationTypes authenticationTypes = this.<Type>k__BackingField;
|
||||
if (authenticationTypes == AuthenticationTypes.Basic)
|
||||
{
|
||||
Encoding utf = Encoding.UTF8;
|
||||
string <Password>k__BackingField = credentials.<Password>k__BackingField;
|
||||
string <UserName>k__BackingField = credentials.<UserName>k__BackingField;
|
||||
string text = string.Format("{0}:{1}", <UserName>k__BackingField, <Password>k__BackingField);
|
||||
string text3;
|
||||
string text2 = "Basic " + text3;
|
||||
}
|
||||
if (authenticationTypes != AuthenticationTypes.Digest)
|
||||
{
|
||||
goto IL_492;
|
||||
}
|
||||
int num = this.<NonceCount>k__BackingField;
|
||||
num++;
|
||||
this.<NonceCount>k__BackingField = num;
|
||||
request.Finalize();
|
||||
string text4 = this.<NonceCount>k__BackingField.ToString("X8");
|
||||
string text5 = this.<Algorithm>k__BackingField.TrimAndLower();
|
||||
if (string.Equals(text5, "md5"))
|
||||
{
|
||||
string <Password>k__BackingField2 = credentials.<Password>k__BackingField;
|
||||
string text6 = this.<Realm>k__BackingField;
|
||||
string <UserName>k__BackingField2 = credentials.<UserName>k__BackingField;
|
||||
string text7 = string.Format("{0}:{1}:{2}", <UserName>k__BackingField2, text6, <Password>k__BackingField2).CalculateMD5Hash();
|
||||
}
|
||||
if (!string.Equals(text5, "md5-sess"))
|
||||
{
|
||||
goto IL_48C;
|
||||
}
|
||||
if (string.IsNullOrEmpty(this.<HA1Sess>k__BackingField))
|
||||
{
|
||||
break;
|
||||
}
|
||||
text8 = this.<HA1Sess>k__BackingField;
|
||||
string text9 = this.<QualityOfProtections>k__BackingField;
|
||||
if (text9 != 0)
|
||||
{
|
||||
string text10 = text9.TrimAndLower();
|
||||
}
|
||||
int num2 = 0;
|
||||
if (isProxy)
|
||||
{
|
||||
string host = request.CurrentUri.Host;
|
||||
int port = request.CurrentUri.Port;
|
||||
int num3;
|
||||
string text11 = host + ":" + num3;
|
||||
}
|
||||
int hashCode = request.<MethodType>k__BackingField.GetHashCode();
|
||||
requestPathAndQueryURL = request.CurrentUri.GetRequestPathAndQueryURL();
|
||||
if (num2 == 0)
|
||||
{
|
||||
goto IL_328;
|
||||
}
|
||||
bool flag;
|
||||
byte[] array;
|
||||
if (!flag)
|
||||
{
|
||||
bool flag2;
|
||||
if (!flag2)
|
||||
{
|
||||
goto Block_9;
|
||||
}
|
||||
}
|
||||
else if (array == 0)
|
||||
{
|
||||
goto Block_10;
|
||||
}
|
||||
}
|
||||
object[] array2 = new object[5];
|
||||
string <UserName>k__BackingField3 = credentials.<UserName>k__BackingField;
|
||||
throw new ArrayTypeMismatchException();
|
||||
Block_9:
|
||||
string text12 = (string.Empty + ":" + requestPathAndQueryURL).CalculateMD5Hash();
|
||||
object[] array3 = new object[6];
|
||||
throw new ArrayTypeMismatchException();
|
||||
Block_10:
|
||||
string text13 = VariableSizedBufferPool.NoData.CalculateMD5Hash();
|
||||
string text15;
|
||||
string text14 = string.Format("{0}:{1}:{2}", text15, requestPathAndQueryURL, text13).CalculateMD5Hash();
|
||||
object[] array4 = new object[6];
|
||||
throw new ArrayTypeMismatchException();
|
||||
IL_328:
|
||||
HTTPMethods httpmethods;
|
||||
int hashCode2 = httpmethods.GetHashCode();
|
||||
Uri uri;
|
||||
string requestPathAndQueryURL2 = uri.GetRequestPathAndQueryURL();
|
||||
string text17;
|
||||
string text16 = (text17 + ":" + requestPathAndQueryURL2).CalculateMD5Hash();
|
||||
string text18 = this.<Nonce>k__BackingField;
|
||||
string text19 = string.Format("{0}:{1}:{2}", text8, text18, text16).CalculateMD5Hash();
|
||||
object[] array5 = new object[6];
|
||||
if (text17 != 0)
|
||||
{
|
||||
}
|
||||
array5[0] = text17;
|
||||
string text20 = this.<Realm>k__BackingField;
|
||||
if (text20 != 0)
|
||||
{
|
||||
}
|
||||
array5[1] = text20;
|
||||
string text21 = this.<Nonce>k__BackingField;
|
||||
if (text21 != 0)
|
||||
{
|
||||
}
|
||||
array5[2] = text21;
|
||||
if (requestPathAndQueryURL != 0)
|
||||
{
|
||||
}
|
||||
array5[3] = requestPathAndQueryURL;
|
||||
if (text8 != 0)
|
||||
{
|
||||
}
|
||||
array5[4] = text8;
|
||||
if (text19 != 0)
|
||||
{
|
||||
}
|
||||
array5[5] = text19;
|
||||
string text22 = string.Format("Digest username=\"{0}\", realm=\"{1}\", nonce=\"{2}\", uri=\"{3}\", cnonce=\"{4}\", response=\"{5}\"", array5);
|
||||
string text23;
|
||||
if ("auth-int" != 0)
|
||||
{
|
||||
string[] array6 = new string[5];
|
||||
if (text22 != 0)
|
||||
{
|
||||
}
|
||||
array6[0] = text22;
|
||||
if (", qop=\"" != 0)
|
||||
{
|
||||
}
|
||||
array6[1] = ", qop=\"";
|
||||
array6[2] = "auth-int";
|
||||
if ("\", nc=" != 0)
|
||||
{
|
||||
}
|
||||
array6[3] = "\", nc=";
|
||||
if ("\", nc=" != 0)
|
||||
{
|
||||
}
|
||||
array6[4] = "\", nc=";
|
||||
text23 = string.Concat(array6);
|
||||
}
|
||||
string text24 = this.<Opaque>k__BackingField;
|
||||
if (text23 == 0)
|
||||
{
|
||||
string text25 = this.<Opaque>k__BackingField;
|
||||
string text26 = text23 + ", opaque=\"" + text25 + "\"";
|
||||
}
|
||||
IL_48C:
|
||||
return string.Empty;
|
||||
IL_492:
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CEB9 RID: 52921 RVA: 0x002F9C18 File Offset: 0x002F7E18
|
||||
[Token(Token = "0x600CEB9")]
|
||||
[Address(RVA = "0xAA0D50", Offset = "0xA9FB50", VA = "0x180AA0D50")]
|
||||
public bool IsUriProtected(Uri uri)
|
||||
{
|
||||
string host = uri.Host;
|
||||
string host2 = this.<Uri>k__BackingField.Host;
|
||||
if (string.CompareOrdinal(host, host2) == 0)
|
||||
{
|
||||
int hashCode = uri.GetHashCode();
|
||||
if (this.<ProtectedUris>k__BackingField != 0)
|
||||
{
|
||||
int num = 0;
|
||||
bool flag;
|
||||
if (!flag)
|
||||
{
|
||||
List<string> list = this.<ProtectedUris>k__BackingField;
|
||||
num++;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,125 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Threading;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Authentication
|
||||
{
|
||||
// Token: 0x02001FCB RID: 8139
|
||||
[Token(Token = "0x2001FCB")]
|
||||
public static class DigestStore
|
||||
{
|
||||
// Token: 0x0600CEBA RID: 52922 RVA: 0x002F9C70 File Offset: 0x002F7E70
|
||||
[Token(Token = "0x600CEBA")]
|
||||
[Address(RVA = "0xA9FA30", Offset = "0xA9E830", VA = "0x180A9FA30")]
|
||||
public static Digest Get(Uri uri)
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
object locker = DigestStore.Locker;
|
||||
int num2 = 0;
|
||||
Dictionary<string, Digest> digests = DigestStore.Digests;
|
||||
string host = uri.Host;
|
||||
if (digests.TryGetValue(host, num2))
|
||||
{
|
||||
string host2 = uri.Host;
|
||||
string host3 = uri.Host;
|
||||
bool flag;
|
||||
if (string.CompareOrdinal(host2, host3) == 0 && uri.GetHashCode() != 0 && num < uri.m_originalUnicodeString && !flag)
|
||||
{
|
||||
num++;
|
||||
}
|
||||
}
|
||||
Monitor.Exit(locker);
|
||||
}
|
||||
while (num != 0);
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CEBB RID: 52923 RVA: 0x002F9D0C File Offset: 0x002F7F0C
|
||||
[Token(Token = "0x600CEBB")]
|
||||
[Address(RVA = "0xA9F800", Offset = "0xA9E600", VA = "0x180A9F800")]
|
||||
public static Digest GetOrCreate(Uri uri)
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
object locker = DigestStore.Locker;
|
||||
int num2 = 0;
|
||||
Dictionary<string, Digest> digests = DigestStore.Digests;
|
||||
string host = uri.Host;
|
||||
if (!digests.TryGetValue(host, num2))
|
||||
{
|
||||
Dictionary<string, Digest> digests2 = DigestStore.Digests;
|
||||
string host2 = uri.Host;
|
||||
Digest digest;
|
||||
digest.<Uri>k__BackingField = uri;
|
||||
digest.<Algorithm>k__BackingField = "md5";
|
||||
digests2.Add(host2, digest);
|
||||
}
|
||||
Monitor.Exit(locker);
|
||||
}
|
||||
while (num != 0);
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CEBC RID: 52924 RVA: 0x002F9D88 File Offset: 0x002F7F88
|
||||
[Token(Token = "0x600CEBC")]
|
||||
[Address(RVA = "0xA9FCA0", Offset = "0xA9EAA0", VA = "0x180A9FCA0")]
|
||||
public static void Remove(Uri uri)
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
object locker = DigestStore.Locker;
|
||||
Dictionary<string, Digest> digests = DigestStore.Digests;
|
||||
string host = uri.Host;
|
||||
bool flag = digests.Remove(host);
|
||||
Monitor.Exit(locker);
|
||||
}
|
||||
while (num != 0);
|
||||
}
|
||||
|
||||
// Token: 0x0600CEBD RID: 52925 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600CEBD")]
|
||||
[Address(RVA = "0xA9F620", Offset = "0xA9E420", VA = "0x180A9F620")]
|
||||
public static string FindBest(List<string> authHeaders)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x0600CEBE RID: 52926 RVA: 0x002F9DCC File Offset: 0x002F7FCC
|
||||
// Note: this type is marked as 'beforefieldinit'.
|
||||
[Token(Token = "0x600CEBE")]
|
||||
[Address(RVA = "0xA9FDE0", Offset = "0xA9EBE0", VA = "0x180A9FDE0")]
|
||||
static DigestStore()
|
||||
{
|
||||
string[] array = new string[2];
|
||||
if ("digest" != 0)
|
||||
{
|
||||
}
|
||||
array[0] = "digest";
|
||||
if ("basic" != 0)
|
||||
{
|
||||
}
|
||||
array[1] = "basic";
|
||||
DigestStore.SupportedAlgorithms = array;
|
||||
}
|
||||
|
||||
// Token: 0x04008423 RID: 33827
|
||||
[Token(Token = "0x4008423")]
|
||||
private static Dictionary<string, Digest> Digests = new Dictionary();
|
||||
|
||||
// Token: 0x04008424 RID: 33828
|
||||
[Token(Token = "0x4008424")]
|
||||
private static object Locker = new object();
|
||||
|
||||
// Token: 0x04008425 RID: 33829
|
||||
[Token(Token = "0x4008425")]
|
||||
private static string[] SupportedAlgorithms;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,637 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using BestHTTP.Extensions;
|
||||
using BestHTTP.PlatformSupport.FileSystem;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Caching
|
||||
{
|
||||
// Token: 0x02001FC1 RID: 8129
|
||||
[Token(Token = "0x2001FC1")]
|
||||
public class HTTPCacheFileInfo : IComparable<HTTPCacheFileInfo>
|
||||
{
|
||||
// Token: 0x170020D2 RID: 8402
|
||||
// (get) Token: 0x0600CE3E RID: 52798 RVA: 0x002F7658 File Offset: 0x002F5858
|
||||
// (set) Token: 0x0600CE3F RID: 52799 RVA: 0x002F766C File Offset: 0x002F586C
|
||||
[Token(Token = "0x170020D2")]
|
||||
internal Uri Uri
|
||||
{
|
||||
[Token(Token = "0x600CE3E")]
|
||||
[Address(RVA = "0x3F6E20", Offset = "0x3F5C20", VA = "0x1803F6E20")]
|
||||
get;
|
||||
[Token(Token = "0x600CE3F")]
|
||||
[Address(RVA = "0x3F7200", Offset = "0x3F6000", VA = "0x1803F7200")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x170020D3 RID: 8403
|
||||
// (get) Token: 0x0600CE40 RID: 52800 RVA: 0x002F7680 File Offset: 0x002F5880
|
||||
// (set) Token: 0x0600CE41 RID: 52801 RVA: 0x002F7694 File Offset: 0x002F5894
|
||||
[Token(Token = "0x170020D3")]
|
||||
internal DateTime LastAccess
|
||||
{
|
||||
[Token(Token = "0x600CE40")]
|
||||
[Address(RVA = "0x3F5F40", Offset = "0x3F4D40", VA = "0x1803F5F40")]
|
||||
get;
|
||||
[Token(Token = "0x600CE41")]
|
||||
[Address(RVA = "0x3F7210", Offset = "0x3F6010", VA = "0x1803F7210")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x170020D4 RID: 8404
|
||||
// (get) Token: 0x0600CE42 RID: 52802 RVA: 0x002F76A8 File Offset: 0x002F58A8
|
||||
// (set) Token: 0x0600CE43 RID: 52803 RVA: 0x002F76BC File Offset: 0x002F58BC
|
||||
[Token(Token = "0x170020D4")]
|
||||
public int BodyLength
|
||||
{
|
||||
[Token(Token = "0x600CE42")]
|
||||
[Address(RVA = "0x3F7310", Offset = "0x3F6110", VA = "0x1803F7310")]
|
||||
get;
|
||||
[Token(Token = "0x600CE43")]
|
||||
[Address(RVA = "0x420360", Offset = "0x41F160", VA = "0x180420360")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x170020D5 RID: 8405
|
||||
// (get) Token: 0x0600CE44 RID: 52804 RVA: 0x002F76D0 File Offset: 0x002F58D0
|
||||
// (set) Token: 0x0600CE45 RID: 52805 RVA: 0x002F76E4 File Offset: 0x002F58E4
|
||||
[Token(Token = "0x170020D5")]
|
||||
private string ETag
|
||||
{
|
||||
[Token(Token = "0x600CE44")]
|
||||
[Address(RVA = "0x3F63E0", Offset = "0x3F51E0", VA = "0x1803F63E0")]
|
||||
get;
|
||||
[Token(Token = "0x600CE45")]
|
||||
[Address(RVA = "0x409C60", Offset = "0x408A60", VA = "0x180409C60")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x170020D6 RID: 8406
|
||||
// (get) Token: 0x0600CE46 RID: 52806 RVA: 0x002F76F8 File Offset: 0x002F58F8
|
||||
// (set) Token: 0x0600CE47 RID: 52807 RVA: 0x002F770C File Offset: 0x002F590C
|
||||
[Token(Token = "0x170020D6")]
|
||||
private string LastModified
|
||||
{
|
||||
[Token(Token = "0x600CE46")]
|
||||
[Address(RVA = "0x3FA180", Offset = "0x3F8F80", VA = "0x1803FA180")]
|
||||
get;
|
||||
[Token(Token = "0x600CE47")]
|
||||
[Address(RVA = "0x4437E0", Offset = "0x4425E0", VA = "0x1804437E0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x170020D7 RID: 8407
|
||||
// (get) Token: 0x0600CE48 RID: 52808 RVA: 0x002F7720 File Offset: 0x002F5920
|
||||
// (set) Token: 0x0600CE49 RID: 52809 RVA: 0x002F7734 File Offset: 0x002F5934
|
||||
[Token(Token = "0x170020D7")]
|
||||
private DateTime Expires
|
||||
{
|
||||
[Token(Token = "0x600CE48")]
|
||||
[Address(RVA = "0x3F63D0", Offset = "0x3F51D0", VA = "0x1803F63D0")]
|
||||
get;
|
||||
[Token(Token = "0x600CE49")]
|
||||
[Address(RVA = "0x5329E0", Offset = "0x5317E0", VA = "0x1805329E0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x170020D8 RID: 8408
|
||||
// (get) Token: 0x0600CE4A RID: 52810 RVA: 0x002F7748 File Offset: 0x002F5948
|
||||
// (set) Token: 0x0600CE4B RID: 52811 RVA: 0x002F775C File Offset: 0x002F595C
|
||||
[Token(Token = "0x170020D8")]
|
||||
private long Age
|
||||
{
|
||||
[Token(Token = "0x600CE4A")]
|
||||
[Address(RVA = "0x408890", Offset = "0x407690", VA = "0x180408890")]
|
||||
get;
|
||||
[Token(Token = "0x600CE4B")]
|
||||
[Address(RVA = "0x403B30", Offset = "0x402930", VA = "0x180403B30")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x170020D9 RID: 8409
|
||||
// (get) Token: 0x0600CE4C RID: 52812 RVA: 0x002F7770 File Offset: 0x002F5970
|
||||
// (set) Token: 0x0600CE4D RID: 52813 RVA: 0x002F7784 File Offset: 0x002F5984
|
||||
[Token(Token = "0x170020D9")]
|
||||
private long MaxAge
|
||||
{
|
||||
[Token(Token = "0x600CE4C")]
|
||||
[Address(RVA = "0x3FA170", Offset = "0x3F8F70", VA = "0x1803FA170")]
|
||||
get;
|
||||
[Token(Token = "0x600CE4D")]
|
||||
[Address(RVA = "0x46AA50", Offset = "0x469850", VA = "0x18046AA50")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x170020DA RID: 8410
|
||||
// (get) Token: 0x0600CE4E RID: 52814 RVA: 0x002F7798 File Offset: 0x002F5998
|
||||
// (set) Token: 0x0600CE4F RID: 52815 RVA: 0x002F77AC File Offset: 0x002F59AC
|
||||
[Token(Token = "0x170020DA")]
|
||||
private DateTime Date
|
||||
{
|
||||
[Token(Token = "0x600CE4E")]
|
||||
[Address(RVA = "0x415290", Offset = "0x414090", VA = "0x180415290")]
|
||||
get;
|
||||
[Token(Token = "0x600CE4F")]
|
||||
[Address(RVA = "0x46AB00", Offset = "0x469900", VA = "0x18046AB00")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x170020DB RID: 8411
|
||||
// (get) Token: 0x0600CE50 RID: 52816 RVA: 0x002F77C0 File Offset: 0x002F59C0
|
||||
// (set) Token: 0x0600CE51 RID: 52817 RVA: 0x002F77D4 File Offset: 0x002F59D4
|
||||
[Token(Token = "0x170020DB")]
|
||||
private bool MustRevalidate
|
||||
{
|
||||
[Token(Token = "0x600CE50")]
|
||||
[Address(RVA = "0x40FFA0", Offset = "0x40EDA0", VA = "0x18040FFA0")]
|
||||
get;
|
||||
[Token(Token = "0x600CE51")]
|
||||
[Address(RVA = "0x410010", Offset = "0x40EE10", VA = "0x180410010")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x170020DC RID: 8412
|
||||
// (get) Token: 0x0600CE52 RID: 52818 RVA: 0x002F77E8 File Offset: 0x002F59E8
|
||||
// (set) Token: 0x0600CE53 RID: 52819 RVA: 0x002F77FC File Offset: 0x002F59FC
|
||||
[Token(Token = "0x170020DC")]
|
||||
private DateTime Received
|
||||
{
|
||||
[Token(Token = "0x600CE52")]
|
||||
[Address(RVA = "0x423DE0", Offset = "0x422BE0", VA = "0x180423DE0")]
|
||||
get;
|
||||
[Token(Token = "0x600CE53")]
|
||||
[Address(RVA = "0x567490", Offset = "0x566290", VA = "0x180567490")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x170020DD RID: 8413
|
||||
// (get) Token: 0x0600CE54 RID: 52820 RVA: 0x002F7810 File Offset: 0x002F5A10
|
||||
// (set) Token: 0x0600CE55 RID: 52821 RVA: 0x002F7824 File Offset: 0x002F5A24
|
||||
[Token(Token = "0x170020DD")]
|
||||
private string ConstructedPath
|
||||
{
|
||||
[Token(Token = "0x600CE54")]
|
||||
[Address(RVA = "0x423E10", Offset = "0x422C10", VA = "0x180423E10")]
|
||||
get;
|
||||
[Token(Token = "0x600CE55")]
|
||||
[Address(RVA = "0x687270", Offset = "0x686070", VA = "0x180687270")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x170020DE RID: 8414
|
||||
// (get) Token: 0x0600CE56 RID: 52822 RVA: 0x002F7838 File Offset: 0x002F5A38
|
||||
// (set) Token: 0x0600CE57 RID: 52823 RVA: 0x002F784C File Offset: 0x002F5A4C
|
||||
[Token(Token = "0x170020DE")]
|
||||
internal ulong MappedNameIDX
|
||||
{
|
||||
[Token(Token = "0x600CE56")]
|
||||
[Address(RVA = "0x4335D0", Offset = "0x4323D0", VA = "0x1804335D0")]
|
||||
get;
|
||||
[Token(Token = "0x600CE57")]
|
||||
[Address(RVA = "0x703580", Offset = "0x702380", VA = "0x180703580")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x0600CE58 RID: 52824 RVA: 0x002F7860 File Offset: 0x002F5A60
|
||||
[Token(Token = "0x600CE58")]
|
||||
[Address(RVA = "0xAA4B80", Offset = "0xAA3980", VA = "0x180AA4B80")]
|
||||
internal HTTPCacheFileInfo(Uri uri)
|
||||
{
|
||||
DateTime utcNow = DateTime.UtcNow;
|
||||
}
|
||||
|
||||
// Token: 0x0600CE59 RID: 52825 RVA: 0x002F7878 File Offset: 0x002F5A78
|
||||
[Token(Token = "0x600CE59")]
|
||||
[Address(RVA = "0xAA4C00", Offset = "0xAA3A00", VA = "0x180AA4C00")]
|
||||
internal HTTPCacheFileInfo(Uri uri, DateTime lastAcces, int bodyLength)
|
||||
{
|
||||
this.Uri = uri;
|
||||
this.LastAccess = lastAcces;
|
||||
this.BodyLength = bodyLength;
|
||||
this.MaxAge = (long)((ulong)(-1L));
|
||||
ulong nameIdx = HTTPCacheService.GetNameIdx();
|
||||
this.MappedNameIDX = nameIdx;
|
||||
}
|
||||
|
||||
// Token: 0x0600CE5A RID: 52826 RVA: 0x002F78B8 File Offset: 0x002F5AB8
|
||||
[Token(Token = "0x600CE5A")]
|
||||
[Address(RVA = "0xAA49A0", Offset = "0xAA37A0", VA = "0x180AA49A0")]
|
||||
internal HTTPCacheFileInfo(Uri uri, BinaryReader reader, int version)
|
||||
{
|
||||
this.Uri = uri;
|
||||
DateTime dateTime = DateTime.FromBinary((long)reader.ReadUInt32());
|
||||
this.LastAccess = dateTime;
|
||||
ushort num = reader.ReadUInt16();
|
||||
this.BodyLength = (int)num;
|
||||
if (version != 1)
|
||||
{
|
||||
if (version != 2)
|
||||
{
|
||||
return;
|
||||
}
|
||||
long num2 = reader.ReadInt64();
|
||||
this.MappedNameIDX = (ulong)num2;
|
||||
}
|
||||
decimal num3 = reader.ReadDecimal();
|
||||
this.ETag = num3;
|
||||
decimal num4 = reader.ReadDecimal();
|
||||
this.LastModified = num4;
|
||||
DateTime dateTime2 = DateTime.FromBinary((long)reader.ReadUInt32());
|
||||
this.Expires = dateTime2;
|
||||
uint num5 = reader.ReadUInt32();
|
||||
this.Age = (long)num5;
|
||||
uint num6 = reader.ReadUInt32();
|
||||
this.MaxAge = (long)num6;
|
||||
DateTime dateTime3 = DateTime.FromBinary((long)reader.ReadUInt32());
|
||||
this.Date = dateTime3;
|
||||
int num7 = reader.Read();
|
||||
this.MustRevalidate = num7 != 0;
|
||||
DateTime dateTime4 = DateTime.FromBinary((long)reader.ReadUInt32());
|
||||
this.Received = dateTime4;
|
||||
}
|
||||
|
||||
// Token: 0x0600CE5B RID: 52827 RVA: 0x002F79A0 File Offset: 0x002F5BA0
|
||||
[Token(Token = "0x600CE5B")]
|
||||
[Address(RVA = "0xAA3D60", Offset = "0xAA2B60", VA = "0x180AA3D60")]
|
||||
internal void SaveTo(BinaryWriter writer)
|
||||
{
|
||||
DateTime dateTime = this.<LastAccess>k__BackingField;
|
||||
long num;
|
||||
writer.Write((uint)num);
|
||||
int num2 = this.<BodyLength>k__BackingField;
|
||||
writer.Write((ushort)num2);
|
||||
ulong num3 = this.<MappedNameIDX>k__BackingField;
|
||||
writer.Write((long)num3);
|
||||
string text = this.<ETag>k__BackingField;
|
||||
writer.Write(text);
|
||||
string text2 = this.<LastModified>k__BackingField;
|
||||
writer.Write(text2);
|
||||
DateTime dateTime2 = this.<Expires>k__BackingField;
|
||||
long num4;
|
||||
writer.Write((uint)num4);
|
||||
long num5 = this.<Age>k__BackingField;
|
||||
writer.Write((uint)num5);
|
||||
long num6 = this.<MaxAge>k__BackingField;
|
||||
writer.Write((uint)num6);
|
||||
DateTime dateTime3 = this.<Date>k__BackingField;
|
||||
long num7;
|
||||
writer.Write((uint)num7);
|
||||
writer.Flush();
|
||||
DateTime dateTime4 = this.<Received>k__BackingField;
|
||||
long num8;
|
||||
writer.Write((uint)num8);
|
||||
}
|
||||
|
||||
// Token: 0x0600CE5C RID: 52828 RVA: 0x002F7A54 File Offset: 0x002F5C54
|
||||
[Token(Token = "0x600CE5C")]
|
||||
[Address(RVA = "0xAA31E0", Offset = "0xAA1FE0", VA = "0x180AA31E0")]
|
||||
public string GetPath()
|
||||
{
|
||||
string text = this.<ConstructedPath>k__BackingField;
|
||||
if (text == 0)
|
||||
{
|
||||
string <CacheFolder>k__BackingField = HTTPCacheService.<CacheFolder>k__BackingField;
|
||||
ulong num = this.<MappedNameIDX>k__BackingField;
|
||||
string text3;
|
||||
string text2 = Path.Combine(<CacheFolder>k__BackingField, text3);
|
||||
this.<ConstructedPath>k__BackingField = text2;
|
||||
}
|
||||
return text;
|
||||
}
|
||||
|
||||
// Token: 0x0600CE5D RID: 52829 RVA: 0x002F7A8C File Offset: 0x002F5C8C
|
||||
[Token(Token = "0x600CE5D")]
|
||||
[Address(RVA = "0xAA39F0", Offset = "0xAA27F0", VA = "0x180AA39F0")]
|
||||
public bool IsExists()
|
||||
{
|
||||
if (HTTPCacheService.IsSupported)
|
||||
{
|
||||
IIOService ioservice = HTTPManager.IOService;
|
||||
string path = this.GetPath();
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CE5E RID: 52830 RVA: 0x002F7AB8 File Offset: 0x002F5CB8
|
||||
[Token(Token = "0x600CE5E")]
|
||||
[Address(RVA = "0xAA2ED0", Offset = "0xAA1CD0", VA = "0x180AA2ED0")]
|
||||
internal void Delete()
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
if (!HTTPCacheService.IsSupported)
|
||||
{
|
||||
break;
|
||||
}
|
||||
string path = this.GetPath();
|
||||
IIOService ioservice = HTTPManager.IOService;
|
||||
this.<BodyLength>k__BackingField = (int)((ulong)4294967295L);
|
||||
string empty = string.Empty;
|
||||
this.<ETag>k__BackingField = empty;
|
||||
DateTime dateTime = DateTime.FromBinary(0L);
|
||||
this.<Expires>k__BackingField = dateTime;
|
||||
string empty2 = string.Empty;
|
||||
this.<LastModified>k__BackingField = empty2;
|
||||
this.<Age>k__BackingField = (long)((ulong)0L);
|
||||
this.<MaxAge>k__BackingField = (long)((ulong)(-1L));
|
||||
DateTime dateTime2 = DateTime.FromBinary(0L);
|
||||
this.<Date>k__BackingField = dateTime2;
|
||||
this.<MustRevalidate>k__BackingField = false;
|
||||
DateTime dateTime3 = DateTime.FromBinary(0L);
|
||||
this.<Received>k__BackingField = dateTime3;
|
||||
}
|
||||
while (num != 0);
|
||||
}
|
||||
|
||||
// Token: 0x0600CE5F RID: 52831 RVA: 0x002F7B68 File Offset: 0x002F5D68
|
||||
[Token(Token = "0x600CE5F")]
|
||||
[Address(RVA = "0xAA3CA0", Offset = "0xAA2AA0", VA = "0x180AA3CA0")]
|
||||
private void Reset()
|
||||
{
|
||||
this.<BodyLength>k__BackingField = (int)((ulong)4294967295L);
|
||||
string empty = string.Empty;
|
||||
this.<ETag>k__BackingField = empty;
|
||||
DateTime dateTime = DateTime.FromBinary(0L);
|
||||
this.<Expires>k__BackingField = dateTime;
|
||||
string empty2 = string.Empty;
|
||||
int num = 0;
|
||||
this.<LastModified>k__BackingField = empty2;
|
||||
this.<Age>k__BackingField = (long)((ulong)0L);
|
||||
this.<MaxAge>k__BackingField = (long)((ulong)(-1L));
|
||||
DateTime dateTime2 = DateTime.FromBinary((long)num);
|
||||
this.<Date>k__BackingField = dateTime2;
|
||||
int num2 = 0;
|
||||
this.<MustRevalidate>k__BackingField = false;
|
||||
DateTime dateTime3 = DateTime.FromBinary((long)num2);
|
||||
this.<Received>k__BackingField = dateTime3;
|
||||
}
|
||||
|
||||
// Token: 0x0600CE60 RID: 52832 RVA: 0x002F7BEC File Offset: 0x002F5DEC
|
||||
[Token(Token = "0x600CE60")]
|
||||
[Address(RVA = "0xAA3EE0", Offset = "0xAA2CE0", VA = "0x180AA3EE0")]
|
||||
private void SetUpCachingValues(HTTPResponse response)
|
||||
{
|
||||
response.<CacheFileInfo>k__BackingField = this;
|
||||
string text = response.GetFirstHeaderValue("ETag").ToStrOrEmpty();
|
||||
this.<ETag>k__BackingField = text;
|
||||
string firstHeaderValue = response.GetFirstHeaderValue("Expires");
|
||||
DateTime dateTime = DateTime.FromBinary(0L);
|
||||
DateTime dateTime2 = firstHeaderValue.ToDateTime(dateTime);
|
||||
this.<Expires>k__BackingField = dateTime2;
|
||||
string text2 = response.GetFirstHeaderValue("Last-Modified").ToStrOrEmpty();
|
||||
this.<LastModified>k__BackingField = text2;
|
||||
string firstHeaderValue2 = response.GetFirstHeaderValue("Age");
|
||||
int num = 0;
|
||||
long num2 = firstHeaderValue2.ToInt64((long)num);
|
||||
this.<Age>k__BackingField = num2;
|
||||
string firstHeaderValue3 = response.GetFirstHeaderValue("Date");
|
||||
DateTime dateTime3 = DateTime.FromBinary(0L);
|
||||
DateTime dateTime4 = firstHeaderValue3.ToDateTime(dateTime3);
|
||||
this.<Date>k__BackingField = dateTime4;
|
||||
string firstHeaderValue4 = response.GetFirstHeaderValue("cache-control");
|
||||
if (!string.IsNullOrEmpty(firstHeaderValue4))
|
||||
{
|
||||
string[] array = firstHeaderValue4.FindOption("max-age");
|
||||
if (array != 0)
|
||||
{
|
||||
string text3 = array[1];
|
||||
bool flag;
|
||||
if (flag)
|
||||
{
|
||||
this.<MaxAge>k__BackingField = (flag ? 1L : 0L);
|
||||
}
|
||||
}
|
||||
bool flag2 = firstHeaderValue4.ToLower().Contains("must-revalidate");
|
||||
this.<MustRevalidate>k__BackingField = flag2;
|
||||
}
|
||||
DateTime utcNow = DateTime.UtcNow;
|
||||
this.<Received>k__BackingField = utcNow;
|
||||
}
|
||||
|
||||
// Token: 0x0600CE61 RID: 52833 RVA: 0x002F7D14 File Offset: 0x002F5F14
|
||||
[Token(Token = "0x600CE61")]
|
||||
[Address(RVA = "0xAA4820", Offset = "0xAA3620", VA = "0x180AA4820")]
|
||||
internal bool WillExpireInTheFuture()
|
||||
{
|
||||
if (this.IsExists() && !this.<MustRevalidate>k__BackingField)
|
||||
{
|
||||
DateTime dateTime = this.<Expires>k__BackingField;
|
||||
DateTime utcNow = DateTime.UtcNow;
|
||||
return dateTime > utcNow;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600CE62 RID: 52834 RVA: 0x002F7DBC File Offset: 0x002F5FBC
|
||||
[Token(Token = "0x600CE62")]
|
||||
[Address(RVA = "0xAA4150", Offset = "0xAA2F50", VA = "0x180AA4150")]
|
||||
internal void SetUpRevalidationHeaders(HTTPRequest request)
|
||||
{
|
||||
bool flag = this.IsExists();
|
||||
if (flag)
|
||||
{
|
||||
string text = this.<ETag>k__BackingField;
|
||||
if (!flag)
|
||||
{
|
||||
string text2 = this.<ETag>k__BackingField;
|
||||
request.SetHeader("If-None-Match", text2);
|
||||
}
|
||||
string text3 = this.<LastModified>k__BackingField;
|
||||
if (!flag)
|
||||
{
|
||||
string text4 = this.<LastModified>k__BackingField;
|
||||
request.SetHeader("If-Modified-Since", text4);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600CE63 RID: 52835 RVA: 0x002F7E18 File Offset: 0x002F6018
|
||||
[Token(Token = "0x600CE63")]
|
||||
[Address(RVA = "0xAA30B0", Offset = "0xAA1EB0", VA = "0x180AA30B0")]
|
||||
public Stream GetBodyStream(out int length)
|
||||
{
|
||||
if (this.IsExists())
|
||||
{
|
||||
int num = this.<BodyLength>k__BackingField;
|
||||
length.m_value = num;
|
||||
DateTime utcNow = DateTime.UtcNow;
|
||||
this.<LastAccess>k__BackingField = utcNow;
|
||||
IIOService ioservice = HTTPManager.IOService;
|
||||
string path = this.GetPath();
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CE64 RID: 52836 RVA: 0x002F7E64 File Offset: 0x002F6064
|
||||
[Token(Token = "0x600CE64")]
|
||||
[Address(RVA = "0xAA3AC0", Offset = "0xAA28C0", VA = "0x180AA3AC0")]
|
||||
internal HTTPResponse ReadResponseTo(HTTPRequest request)
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
if (!this.IsExists())
|
||||
{
|
||||
break;
|
||||
}
|
||||
DateTime utcNow = DateTime.UtcNow;
|
||||
this.<LastAccess>k__BackingField = utcNow;
|
||||
IIOService ioservice = HTTPManager.IOService;
|
||||
string path = this.GetPath();
|
||||
HTTPResponse httpresponse;
|
||||
httpresponse.<CacheFileInfo>k__BackingField = this;
|
||||
httpresponse.Dispose();
|
||||
if (path != 0)
|
||||
{
|
||||
}
|
||||
}
|
||||
while (num != 0);
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CE65 RID: 52837 RVA: 0x002F7EC0 File Offset: 0x002F60C0
|
||||
[Token(Token = "0x600CE65")]
|
||||
[Address(RVA = "0xAA41F0", Offset = "0xAA2FF0", VA = "0x180AA41F0")]
|
||||
internal void Store(HTTPResponse response)
|
||||
{
|
||||
for (;;)
|
||||
{
|
||||
int num = 0;
|
||||
if (!HTTPCacheService.IsSupported)
|
||||
{
|
||||
return;
|
||||
}
|
||||
int num2 = this.GetPath().m_stringLength;
|
||||
IIOService ioservice = HTTPManager.IOService;
|
||||
this.Delete();
|
||||
IIOService ioservice2 = HTTPManager.IOService;
|
||||
string path = this.GetPath();
|
||||
object[] array = new object[2];
|
||||
int <StatusCode>k__BackingField = response.<StatusCode>k__BackingField;
|
||||
num2 = <StatusCode>k__BackingField;
|
||||
if (<StatusCode>k__BackingField != 0)
|
||||
{
|
||||
}
|
||||
array[0] = num2;
|
||||
string <Message>k__BackingField = response.<Message>k__BackingField;
|
||||
if (<Message>k__BackingField != 0)
|
||||
{
|
||||
}
|
||||
array[1] = <Message>k__BackingField;
|
||||
Dictionary<string, List<string>> <Headers>k__BackingField = response.<Headers>k__BackingField;
|
||||
bool flag;
|
||||
int num3;
|
||||
if (flag)
|
||||
{
|
||||
if (num < this.<LastAccess>k__BackingField)
|
||||
{
|
||||
break;
|
||||
}
|
||||
num3 = 0;
|
||||
}
|
||||
if (num3 != 0)
|
||||
{
|
||||
goto IL_116;
|
||||
}
|
||||
if (num3 != -1)
|
||||
{
|
||||
}
|
||||
byte[] <Data>k__BackingField = response.<Data>k__BackingField;
|
||||
if (path != 0)
|
||||
{
|
||||
}
|
||||
if (num3 == 0)
|
||||
{
|
||||
goto Block_4;
|
||||
}
|
||||
}
|
||||
object[] array2 = new object[2];
|
||||
throw new ArrayTypeMismatchException();
|
||||
Block_4:
|
||||
int length = response.<Data>k__BackingField.Length;
|
||||
DateTime utcNow = DateTime.UtcNow;
|
||||
return;
|
||||
IL_116:
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CE66 RID: 52838 RVA: 0x002F8008 File Offset: 0x002F6208
|
||||
[Token(Token = "0x600CE66")]
|
||||
[Address(RVA = "0xAA3300", Offset = "0xAA2100", VA = "0x180AA3300")]
|
||||
internal Stream GetSaveStream(HTTPResponse response)
|
||||
{
|
||||
for (;;)
|
||||
{
|
||||
int num = 0;
|
||||
if (!HTTPCacheService.IsSupported)
|
||||
{
|
||||
goto IL_EA;
|
||||
}
|
||||
DateTime utcNow = DateTime.UtcNow;
|
||||
this.<LastAccess>k__BackingField = utcNow;
|
||||
string path = this.GetPath();
|
||||
IIOService ioservice = HTTPManager.IOService;
|
||||
if (path != 0)
|
||||
{
|
||||
this.Delete();
|
||||
}
|
||||
int stringLength = path.m_stringLength;
|
||||
IIOService ioservice2 = HTTPManager.IOService;
|
||||
string path2 = this.GetPath();
|
||||
object[] array = new object[2];
|
||||
int <StatusCode>k__BackingField = response.<StatusCode>k__BackingField;
|
||||
if (<StatusCode>k__BackingField != 0)
|
||||
{
|
||||
}
|
||||
array[0] = <StatusCode>k__BackingField;
|
||||
string <Message>k__BackingField = response.<Message>k__BackingField;
|
||||
if (<Message>k__BackingField != 0)
|
||||
{
|
||||
}
|
||||
array[1] = <Message>k__BackingField;
|
||||
Dictionary<string, List<string>> <Headers>k__BackingField = response.<Headers>k__BackingField;
|
||||
bool flag;
|
||||
if (flag)
|
||||
{
|
||||
break;
|
||||
}
|
||||
if (num != 0)
|
||||
{
|
||||
goto IL_11D;
|
||||
}
|
||||
if (num != -1)
|
||||
{
|
||||
}
|
||||
if (path2 != 0)
|
||||
{
|
||||
}
|
||||
if (num == 0)
|
||||
{
|
||||
goto Block_4;
|
||||
}
|
||||
}
|
||||
object[] array2 = new object[2];
|
||||
throw new ArrayTypeMismatchException();
|
||||
Block_4:
|
||||
throw new NullReferenceException();
|
||||
IL_EA:
|
||||
throw new ArrayTypeMismatchException();
|
||||
IL_11D:
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CE67 RID: 52839 RVA: 0x002F8144 File Offset: 0x002F6344
|
||||
[Token(Token = "0x600CE67")]
|
||||
[Address(RVA = "0xAA2EA0", Offset = "0xAA1CA0", VA = "0x180AA2EA0", Slot = "4")]
|
||||
public int CompareTo(HTTPCacheFileInfo other)
|
||||
{
|
||||
DateTime dateTime = this.<LastAccess>k__BackingField;
|
||||
DateTime dateTime2 = other.<LastAccess>k__BackingField;
|
||||
int num;
|
||||
return num;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,76 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Threading;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Caching
|
||||
{
|
||||
// Token: 0x02001FC2 RID: 8130
|
||||
[Token(Token = "0x2001FC2")]
|
||||
internal sealed class HTTPCacheFileLock
|
||||
{
|
||||
// Token: 0x0600CE68 RID: 52840 RVA: 0x002F8168 File Offset: 0x002F6368
|
||||
[Token(Token = "0x600CE68")]
|
||||
[Address(RVA = "0xAA4CA0", Offset = "0xAA3AA0", VA = "0x180AA4CA0")]
|
||||
internal static object Acquire(Uri uri)
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
object syncRoot = HTTPCacheFileLock.SyncRoot;
|
||||
int num2 = 0;
|
||||
if (!HTTPCacheFileLock.FileLocks.TryGetValue(uri, num2))
|
||||
{
|
||||
Dictionary<Uri, object> fileLocks = HTTPCacheFileLock.FileLocks;
|
||||
object obj = new object();
|
||||
fileLocks.Add(uri, obj);
|
||||
}
|
||||
Monitor.Exit(syncRoot);
|
||||
}
|
||||
while (num != 0);
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CE69 RID: 52841 RVA: 0x002F81BC File Offset: 0x002F63BC
|
||||
[Token(Token = "0x600CE69")]
|
||||
[Address(RVA = "0xAA4F80", Offset = "0xAA3D80", VA = "0x180AA4F80")]
|
||||
internal static void Remove(Uri uri)
|
||||
{
|
||||
object syncRoot = HTTPCacheFileLock.SyncRoot;
|
||||
Dictionary<Uri, object> fileLocks = HTTPCacheFileLock.FileLocks;
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CE6A RID: 52842 RVA: 0x002F8204 File Offset: 0x002F6404
|
||||
[Token(Token = "0x600CE6A")]
|
||||
[Address(RVA = "0xAA4E60", Offset = "0xAA3C60", VA = "0x180AA4E60")]
|
||||
internal static void Clear()
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
object syncRoot = HTTPCacheFileLock.SyncRoot;
|
||||
HTTPCacheFileLock.FileLocks.Clear();
|
||||
Monitor.Exit(syncRoot);
|
||||
}
|
||||
while (num != 0);
|
||||
}
|
||||
|
||||
// Token: 0x0600CE6B RID: 52843 RVA: 0x002F8234 File Offset: 0x002F6434
|
||||
[Token(Token = "0x600CE6B")]
|
||||
[Address(RVA = "0x3F5100", Offset = "0x3F3F00", VA = "0x1803F5100")]
|
||||
public HTTPCacheFileLock()
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x040083FE RID: 33790
|
||||
[Token(Token = "0x40083FE")]
|
||||
private static Dictionary<Uri, object> FileLocks = new Dictionary();
|
||||
|
||||
// Token: 0x040083FF RID: 33791
|
||||
[Token(Token = "0x40083FF")]
|
||||
private static object SyncRoot = new object();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,47 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Caching
|
||||
{
|
||||
// Token: 0x02001FC3 RID: 8131
|
||||
[Token(Token = "0x2001FC3")]
|
||||
public sealed class HTTPCacheMaintananceParams
|
||||
{
|
||||
// Token: 0x170020DF RID: 8415
|
||||
// (get) Token: 0x0600CE6D RID: 52845 RVA: 0x002F826C File Offset: 0x002F646C
|
||||
// (set) Token: 0x0600CE6E RID: 52846 RVA: 0x002F8280 File Offset: 0x002F6480
|
||||
[Token(Token = "0x170020DF")]
|
||||
public TimeSpan DeleteOlder
|
||||
{
|
||||
[Token(Token = "0x600CE6D")]
|
||||
[Address(RVA = "0x3F6E20", Offset = "0x3F5C20", VA = "0x1803F6E20")]
|
||||
get;
|
||||
[Token(Token = "0x600CE6E")]
|
||||
[Address(RVA = "0x3F7200", Offset = "0x3F6000", VA = "0x1803F7200")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x170020E0 RID: 8416
|
||||
// (get) Token: 0x0600CE6F RID: 52847 RVA: 0x002F8294 File Offset: 0x002F6494
|
||||
// (set) Token: 0x0600CE70 RID: 52848 RVA: 0x002F82A8 File Offset: 0x002F64A8
|
||||
[Token(Token = "0x170020E0")]
|
||||
public ulong MaxCacheSize
|
||||
{
|
||||
[Token(Token = "0x600CE6F")]
|
||||
[Address(RVA = "0x3F5F40", Offset = "0x3F4D40", VA = "0x1803F5F40")]
|
||||
get;
|
||||
[Token(Token = "0x600CE70")]
|
||||
[Address(RVA = "0x3F7210", Offset = "0x3F6010", VA = "0x1803F7210")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x0600CE71 RID: 52849 RVA: 0x002F82BC File Offset: 0x002F64BC
|
||||
[Token(Token = "0x600CE71")]
|
||||
[Address(RVA = "0x4089A0", Offset = "0x4077A0", VA = "0x1804089A0")]
|
||||
public HTTPCacheMaintananceParams(TimeSpan deleteOlder, ulong maxCacheSize)
|
||||
{
|
||||
this.DeleteOlder = deleteOlder;
|
||||
this.MaxCacheSize = maxCacheSize;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,825 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Threading;
|
||||
using BestHTTP.Logger;
|
||||
using BestHTTP.PlatformSupport.FileSystem;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Caching
|
||||
{
|
||||
// Token: 0x02001FC5 RID: 8133
|
||||
[Token(Token = "0x2001FC5")]
|
||||
public static class HTTPCacheService
|
||||
{
|
||||
// Token: 0x170020E1 RID: 8417
|
||||
// (get) Token: 0x0600CE75 RID: 52853 RVA: 0x002F8328 File Offset: 0x002F6528
|
||||
[Token(Token = "0x170020E1")]
|
||||
public static bool IsSupported
|
||||
{
|
||||
[Token(Token = "0x600CE75")]
|
||||
[Address(RVA = "0xAA91B0", Offset = "0xAA7FB0", VA = "0x180AA91B0")]
|
||||
get
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
IIOService ioservice = HTTPManager.IOService;
|
||||
string rootCacheFolder = HTTPManager.GetRootCacheFolder();
|
||||
ILogger logger = HTTPManager.Logger;
|
||||
}
|
||||
while (num != 0);
|
||||
return HTTPCacheService.isSupported;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x170020E2 RID: 8418
|
||||
// (get) Token: 0x0600CE76 RID: 52854 RVA: 0x002F836C File Offset: 0x002F656C
|
||||
[Token(Token = "0x170020E2")]
|
||||
private static Dictionary<Uri, HTTPCacheFileInfo> Library
|
||||
{
|
||||
[Token(Token = "0x600CE76")]
|
||||
[Address(RVA = "0xAA9500", Offset = "0xAA8300", VA = "0x180AA9500")]
|
||||
get
|
||||
{
|
||||
HTTPCacheService.LoadLibrary();
|
||||
return HTTPCacheService.library;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x170020E3 RID: 8419
|
||||
// (get) Token: 0x0600CE77 RID: 52855 RVA: 0x002F8388 File Offset: 0x002F6588
|
||||
// (set) Token: 0x0600CE78 RID: 52856 RVA: 0x002F839C File Offset: 0x002F659C
|
||||
[Token(Token = "0x170020E3")]
|
||||
internal static string CacheFolder
|
||||
{
|
||||
[Token(Token = "0x600CE77")]
|
||||
[Address(RVA = "0xAA90F0", Offset = "0xAA7EF0", VA = "0x180AA90F0")]
|
||||
get;
|
||||
[Token(Token = "0x600CE78")]
|
||||
[Address(RVA = "0xAA9560", Offset = "0xAA8360", VA = "0x180AA9560")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x170020E4 RID: 8420
|
||||
// (get) Token: 0x0600CE79 RID: 52857 RVA: 0x002F83B0 File Offset: 0x002F65B0
|
||||
// (set) Token: 0x0600CE7A RID: 52858 RVA: 0x002F83C4 File Offset: 0x002F65C4
|
||||
[Token(Token = "0x170020E4")]
|
||||
private static string LibraryPath
|
||||
{
|
||||
[Token(Token = "0x600CE79")]
|
||||
[Address(RVA = "0xAA9440", Offset = "0xAA8240", VA = "0x180AA9440")]
|
||||
get;
|
||||
[Token(Token = "0x600CE7A")]
|
||||
[Address(RVA = "0xAA95C0", Offset = "0xAA83C0", VA = "0x180AA95C0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x0600CE7C RID: 52860 RVA: 0x002F83F0 File Offset: 0x002F65F0
|
||||
[Token(Token = "0x600CE7C")]
|
||||
[Address(RVA = "0xAA5460", Offset = "0xAA4260", VA = "0x180AA5460")]
|
||||
internal static void CheckSetup()
|
||||
{
|
||||
if (HTTPCacheService.IsSupported)
|
||||
{
|
||||
HTTPCacheService.SetupCacheFolder();
|
||||
HTTPCacheService.LoadLibrary();
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600CE7D RID: 52861 RVA: 0x002F8418 File Offset: 0x002F6618
|
||||
[Token(Token = "0x600CE7D")]
|
||||
[Address(RVA = "0xAA8830", Offset = "0xAA7630", VA = "0x180AA8830")]
|
||||
internal static void SetupCacheFolder()
|
||||
{
|
||||
if (HTTPCacheService.IsSupported)
|
||||
{
|
||||
bool flag = string.IsNullOrEmpty(HTTPCacheService.<CacheFolder>k__BackingField);
|
||||
if (flag || flag)
|
||||
{
|
||||
HTTPCacheService.<CacheFolder>k__BackingField = Path.Combine(HTTPManager.GetRootCacheFolder(), "HTTPCache");
|
||||
IIOService ioservice = HTTPManager.IOService;
|
||||
IIOService ioservice2 = HTTPManager.IOService;
|
||||
HTTPCacheService.<LibraryPath>k__BackingField = Path.Combine(HTTPManager.GetRootCacheFolder(), "Library");
|
||||
}
|
||||
ILogger logger = HTTPManager.Logger;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600CE7E RID: 52862 RVA: 0x002F8498 File Offset: 0x002F6698
|
||||
[Token(Token = "0x600CE7E")]
|
||||
[Address(RVA = "0xAA68A0", Offset = "0xAA56A0", VA = "0x180AA68A0")]
|
||||
internal static ulong GetNameIdx()
|
||||
{
|
||||
HTTPCacheService.LoadLibrary();
|
||||
Dictionary<Uri, HTTPCacheFileInfo> dictionary = HTTPCacheService.library;
|
||||
ulong nextNameIDX = HTTPCacheService.NextNameIDX;
|
||||
ulong num = HTTPCacheService.NextNameIDX;
|
||||
num += (ulong)1L;
|
||||
HTTPCacheService.NextNameIDX = num;
|
||||
HTTPCacheService.NextNameIDX = 0UL;
|
||||
Dictionary<ulong, HTTPCacheFileInfo> usedIndexes = HTTPCacheService.UsedIndexes;
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CE7F RID: 52863 RVA: 0x002F84FC File Offset: 0x002F66FC
|
||||
[Token(Token = "0x600CE7F")]
|
||||
[Address(RVA = "0xAA6A90", Offset = "0xAA5890", VA = "0x180AA6A90")]
|
||||
internal static bool HasEntity(Uri uri)
|
||||
{
|
||||
if (HTTPCacheService.IsSupported)
|
||||
{
|
||||
HTTPCacheService.LoadLibrary();
|
||||
Dictionary<Uri, HTTPCacheFileInfo> dictionary = HTTPCacheService.library;
|
||||
HTTPCacheService.LoadLibrary();
|
||||
Dictionary<Uri, HTTPCacheFileInfo> dictionary2 = HTTPCacheService.library;
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CE80 RID: 52864 RVA: 0x002F854C File Offset: 0x002F674C
|
||||
[Token(Token = "0x600CE80")]
|
||||
[Address(RVA = "0xAA57D0", Offset = "0xAA45D0", VA = "0x180AA57D0")]
|
||||
public static bool DeleteEntity(Uri uri, bool removeFromLibrary = true)
|
||||
{
|
||||
for (;;)
|
||||
{
|
||||
int num = 0;
|
||||
if (!HTTPCacheService.IsSupported)
|
||||
{
|
||||
break;
|
||||
}
|
||||
int num2 = 0;
|
||||
object obj = HTTPCacheFileLock.Acquire(uri);
|
||||
Monitor.Enter(obj, num2);
|
||||
HTTPCacheService.LoadLibrary();
|
||||
Dictionary<Uri, HTTPCacheFileInfo> dictionary = HTTPCacheService.library;
|
||||
int num3 = 0;
|
||||
Monitor.Enter(dictionary, num2);
|
||||
HTTPCacheService.LoadLibrary();
|
||||
bool flag = HTTPCacheService.library.TryGetValue(uri, num3);
|
||||
if (flag)
|
||||
{
|
||||
}
|
||||
if (removeFromLibrary != flag)
|
||||
{
|
||||
bool flag2 = HTTPCacheService.Library.Remove(uri);
|
||||
Dictionary<ulong, HTTPCacheFileInfo> usedIndexes = HTTPCacheService.UsedIndexes;
|
||||
}
|
||||
Monitor.Exit(dictionary);
|
||||
if (num == 0)
|
||||
{
|
||||
if (num != -1)
|
||||
{
|
||||
}
|
||||
Monitor.Exit(obj);
|
||||
if (num == 0)
|
||||
{
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CE81 RID: 52865 RVA: 0x002F8608 File Offset: 0x002F6808
|
||||
[Token(Token = "0x600CE81")]
|
||||
[Address(RVA = "0xAA6EE0", Offset = "0xAA5CE0", VA = "0x180AA6EE0")]
|
||||
internal static bool IsCachedEntityExpiresInTheFuture(HTTPRequest request)
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
if (!HTTPCacheService.IsSupported)
|
||||
{
|
||||
goto IL_BB;
|
||||
}
|
||||
HTTPCacheService.LoadLibrary();
|
||||
Dictionary<Uri, HTTPCacheFileInfo> dictionary = HTTPCacheService.library;
|
||||
int num2 = 0;
|
||||
HTTPCacheService.LoadLibrary();
|
||||
Dictionary<Uri, HTTPCacheFileInfo> dictionary2 = HTTPCacheService.library;
|
||||
Uri currentUri = request.CurrentUri;
|
||||
if (!dictionary2.TryGetValue(currentUri, num2))
|
||||
{
|
||||
}
|
||||
bool flag;
|
||||
if (flag && request.OnUpgraded == (ulong)0L)
|
||||
{
|
||||
if (request.<Callback>k__BackingField == (ulong)(-1L))
|
||||
{
|
||||
OnUploadProgressDelegate onUploadProgress = request.OnUploadProgress;
|
||||
DateTime utcNow = DateTime.UtcNow;
|
||||
}
|
||||
bool <DisableRetry>k__BackingField = request.<DisableRetry>k__BackingField;
|
||||
int num3 = 0;
|
||||
long num4 = Math.Max(0L, (long)num3);
|
||||
int <MaxFragmentQueueLength>k__BackingField = request.<MaxFragmentQueueLength>k__BackingField;
|
||||
long num5 = Math.Max(num4, (long)<MaxFragmentQueueLength>k__BackingField);
|
||||
DateTime utcNow2 = DateTime.UtcNow;
|
||||
TimeSpan timeSpan;
|
||||
timeSpan += num5;
|
||||
}
|
||||
Monitor.Exit(dictionary);
|
||||
}
|
||||
while (num != 0);
|
||||
if (num != -1)
|
||||
{
|
||||
}
|
||||
IL_BB:
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CE82 RID: 52866 RVA: 0x002F86E4 File Offset: 0x002F68E4
|
||||
[Token(Token = "0x600CE82")]
|
||||
[Address(RVA = "0xAA8570", Offset = "0xAA7370", VA = "0x180AA8570")]
|
||||
internal static void SetHeaders(HTTPRequest request)
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
if (!HTTPCacheService.IsSupported)
|
||||
{
|
||||
break;
|
||||
}
|
||||
bool flag = request.RemoveHeader("If-None-Match");
|
||||
bool flag2 = request.RemoveHeader("If-Modified-Since");
|
||||
HTTPCacheService.LoadLibrary();
|
||||
Dictionary<Uri, HTTPCacheFileInfo> dictionary = HTTPCacheService.library;
|
||||
int num2 = 0;
|
||||
HTTPCacheService.LoadLibrary();
|
||||
Dictionary<Uri, HTTPCacheFileInfo> dictionary2 = HTTPCacheService.library;
|
||||
Uri currentUri = request.CurrentUri;
|
||||
bool flag3;
|
||||
if (dictionary2.TryGetValue(currentUri, num2) && flag3)
|
||||
{
|
||||
int freeList = dictionary2.freeList;
|
||||
if (!flag3)
|
||||
{
|
||||
}
|
||||
IEqualityComparer comparer = dictionary2.comparer;
|
||||
if (!flag3)
|
||||
{
|
||||
}
|
||||
}
|
||||
Monitor.Exit(dictionary);
|
||||
}
|
||||
while (num != 0);
|
||||
}
|
||||
|
||||
// Token: 0x0600CE83 RID: 52867 RVA: 0x002F878C File Offset: 0x002F698C
|
||||
[Token(Token = "0x600CE83")]
|
||||
[Address(RVA = "0xAA6410", Offset = "0xAA5210", VA = "0x180AA6410")]
|
||||
internal static HTTPCacheFileInfo GetEntity(Uri uri)
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
if (!HTTPCacheService.IsSupported)
|
||||
{
|
||||
break;
|
||||
}
|
||||
HTTPCacheService.LoadLibrary();
|
||||
Dictionary<Uri, HTTPCacheFileInfo> dictionary = HTTPCacheService.library;
|
||||
int num2 = 0;
|
||||
HTTPCacheService.LoadLibrary();
|
||||
bool flag = HTTPCacheService.library.TryGetValue(uri, num2);
|
||||
Monitor.Exit(dictionary);
|
||||
}
|
||||
while (num != 0);
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CE84 RID: 52868 RVA: 0x002F87E0 File Offset: 0x002F69E0
|
||||
[Token(Token = "0x600CE84")]
|
||||
[Address(RVA = "0xAA6610", Offset = "0xAA5410", VA = "0x180AA6610")]
|
||||
internal static HTTPResponse GetFullResponse(HTTPRequest request)
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
if (!HTTPCacheService.IsSupported)
|
||||
{
|
||||
goto IL_4F;
|
||||
}
|
||||
HTTPCacheService.LoadLibrary();
|
||||
Dictionary<Uri, HTTPCacheFileInfo> dictionary = HTTPCacheService.library;
|
||||
int num2 = 0;
|
||||
HTTPCacheService.LoadLibrary();
|
||||
Dictionary<Uri, HTTPCacheFileInfo> dictionary2 = HTTPCacheService.library;
|
||||
Uri currentUri = request.CurrentUri;
|
||||
if (!dictionary2.TryGetValue(currentUri, num2))
|
||||
{
|
||||
}
|
||||
Monitor.Exit(dictionary);
|
||||
}
|
||||
while (num != 0);
|
||||
if (num != -1)
|
||||
{
|
||||
}
|
||||
IL_4F:
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CE85 RID: 52869 RVA: 0x002F8850 File Offset: 0x002F6A50
|
||||
[Token(Token = "0x600CE85")]
|
||||
[Address(RVA = "0xAA6C90", Offset = "0xAA5A90", VA = "0x180AA6C90")]
|
||||
internal static bool IsCacheble(Uri uri, HTTPMethods method, HTTPResponse response)
|
||||
{
|
||||
if (!HTTPCacheService.IsSupported || response == 0 || response.<StatusCode>k__BackingField > 199)
|
||||
{
|
||||
return;
|
||||
}
|
||||
List<string> headerValues = response.GetHeaderValues("cache-control");
|
||||
if (headerValues != 0)
|
||||
{
|
||||
Predicate<string> <>9__30_ = HTTPCacheService.<>c.<>9__30_0;
|
||||
if (<>9__30_ == 0)
|
||||
{
|
||||
HTTPCacheService.<>c.<>9__30_0 = delegate(string headerValue)
|
||||
{
|
||||
string text = headerValue.ToLower();
|
||||
return text.Contains("no-store") || text.Contains("no-cache");
|
||||
};
|
||||
}
|
||||
if (headerValues.Exists(<>9__30_))
|
||||
{
|
||||
return;
|
||||
}
|
||||
}
|
||||
List<string> headerValues2 = response.GetHeaderValues("pragma");
|
||||
if (headerValues2 != 0)
|
||||
{
|
||||
Predicate<string> predicate;
|
||||
if (HTTPCacheService.<>c.<>9__30_1 == 0)
|
||||
{
|
||||
predicate = delegate(string headerValue)
|
||||
{
|
||||
string text2 = headerValue.ToLower();
|
||||
return text2.Contains("no-store") || text2.Contains("no-cache");
|
||||
};
|
||||
HTTPCacheService.<>c.<>9__30_1 = predicate;
|
||||
}
|
||||
if (headerValues2.Exists(predicate))
|
||||
{
|
||||
return;
|
||||
}
|
||||
}
|
||||
if (response.GetHeaderValues("content-range") == 0)
|
||||
{
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600CE86 RID: 52870 RVA: 0x002F8908 File Offset: 0x002F6B08
|
||||
[Token(Token = "0x600CE86")]
|
||||
[Address(RVA = "0xAA8CA0", Offset = "0xAA7AA0", VA = "0x180AA8CA0")]
|
||||
internal static HTTPCacheFileInfo Store(Uri uri, HTTPMethods method, HTTPResponse response)
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
if (response == 0)
|
||||
{
|
||||
break;
|
||||
}
|
||||
byte[] <Data>k__BackingField = response.<Data>k__BackingField;
|
||||
if (<Data>k__BackingField == 0 || <Data>k__BackingField.Length == num || !HTTPCacheService.IsSupported)
|
||||
{
|
||||
break;
|
||||
}
|
||||
Dictionary<Uri, HTTPCacheFileInfo> dictionary = HTTPCacheService.Library;
|
||||
int num2 = 0;
|
||||
if (!HTTPCacheService.Library.TryGetValue(uri, num2))
|
||||
{
|
||||
Dictionary<Uri, HTTPCacheFileInfo> dictionary2 = HTTPCacheService.Library;
|
||||
HTTPCacheFileInfo httpcacheFileInfo = new HTTPCacheFileInfo(uri);
|
||||
dictionary2.Add(uri, httpcacheFileInfo);
|
||||
Dictionary<ulong, HTTPCacheFileInfo> usedIndexes = HTTPCacheService.UsedIndexes;
|
||||
ulong <MappedNameIDX>k__BackingField = httpcacheFileInfo.<MappedNameIDX>k__BackingField;
|
||||
usedIndexes.Add(<MappedNameIDX>k__BackingField, httpcacheFileInfo);
|
||||
}
|
||||
int num3 = 0;
|
||||
ILogger logger = HTTPManager.Logger;
|
||||
if (num < num3)
|
||||
{
|
||||
num += num;
|
||||
num++;
|
||||
}
|
||||
if (num == 0)
|
||||
{
|
||||
ILogger logger2 = HTTPManager.Logger;
|
||||
int hashCode = uri.GetHashCode();
|
||||
string text = string.Format("{0} - Saved to cache", hashCode);
|
||||
}
|
||||
Monitor.Exit(dictionary);
|
||||
}
|
||||
while (num != 0);
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CE87 RID: 52871 RVA: 0x002F8A1C File Offset: 0x002F6C1C
|
||||
[Token(Token = "0x600CE87")]
|
||||
[Address(RVA = "0xAA7A30", Offset = "0xAA6830", VA = "0x180AA7A30")]
|
||||
internal static Stream PrepareStreamed(Uri uri, HTTPResponse response)
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
if (!HTTPCacheService.IsSupported)
|
||||
{
|
||||
break;
|
||||
}
|
||||
HTTPCacheService.LoadLibrary();
|
||||
Dictionary<Uri, HTTPCacheFileInfo> dictionary = HTTPCacheService.library;
|
||||
int num2 = 0;
|
||||
HTTPCacheService.LoadLibrary();
|
||||
if (!HTTPCacheService.library.TryGetValue(uri, num2))
|
||||
{
|
||||
Dictionary<Uri, HTTPCacheFileInfo> dictionary2 = HTTPCacheService.Library;
|
||||
HTTPCacheFileInfo httpcacheFileInfo = new HTTPCacheFileInfo(uri);
|
||||
dictionary2.Add(uri, httpcacheFileInfo);
|
||||
Dictionary<ulong, HTTPCacheFileInfo> usedIndexes = HTTPCacheService.UsedIndexes;
|
||||
ulong <MappedNameIDX>k__BackingField = httpcacheFileInfo.<MappedNameIDX>k__BackingField;
|
||||
usedIndexes.Add(<MappedNameIDX>k__BackingField, httpcacheFileInfo);
|
||||
}
|
||||
Monitor.Exit(dictionary);
|
||||
}
|
||||
while (num != 0);
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CE88 RID: 52872 RVA: 0x002F8AC0 File Offset: 0x002F6CC0
|
||||
[Token(Token = "0x600CE88")]
|
||||
[Address(RVA = "0xAA5190", Offset = "0xAA3F90", VA = "0x180AA5190")]
|
||||
public static void BeginClear()
|
||||
{
|
||||
if (HTTPCacheService.IsSupported)
|
||||
{
|
||||
HTTPCacheService.SetupCacheFolder();
|
||||
WaitCallback <>9__33_ = HTTPCacheService.<>c.<>9__33_0;
|
||||
if (<>9__33_ == 0)
|
||||
{
|
||||
HTTPCacheService.<>c.<>9__33_0 = delegate(object param)
|
||||
{
|
||||
HTTPCacheService.ClearImpl(param);
|
||||
};
|
||||
}
|
||||
bool flag = ThreadPool.QueueUserWorkItem(<>9__33_);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600CE89 RID: 52873 RVA: 0x002F8B08 File Offset: 0x002F6D08
|
||||
[Token(Token = "0x600CE89")]
|
||||
[Address(RVA = "0xAA5500", Offset = "0xAA4300", VA = "0x180AA5500")]
|
||||
private static void ClearImpl(object param)
|
||||
{
|
||||
int num = 0;
|
||||
if (HTTPCacheService.IsSupported)
|
||||
{
|
||||
IIOService ioservice = HTTPManager.IOService;
|
||||
IIOService ioservice2 = HTTPManager.IOService;
|
||||
num++;
|
||||
num++;
|
||||
HTTPCacheService.UsedIndexes.Clear();
|
||||
HTTPCacheService.library.Clear();
|
||||
HTTPCacheService.SaveLibrary();
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600CE8A RID: 52874 RVA: 0x002F8B6C File Offset: 0x002F6D6C
|
||||
[Token(Token = "0x600CE8A")]
|
||||
[Address(RVA = "0xAA5300", Offset = "0xAA4100", VA = "0x180AA5300")]
|
||||
public static void BeginMaintainence(HTTPCacheMaintananceParams maintananceParam)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CE8A)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.Caching.HTTPCacheService::BeginMaintainence(BestHTTP.Caching.HTTPCacheMaintananceParams)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_3B:
|
||||
stloc:ArgumentNullException(var_4_45, newobj:ArgumentNullException(ArgumentNullException::.ctor, ldstr:string("maintananceParams == null")))
|
||||
}
|
||||
|
||||
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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: 0x0600CE8B RID: 52875 RVA: 0x002F8BC0 File Offset: 0x002F6DC0
|
||||
[Token(Token = "0x600CE8B")]
|
||||
[Address(RVA = "0xAA5F50", Offset = "0xAA4D50", VA = "0x180AA5F50")]
|
||||
public static int GetCacheEntityCount()
|
||||
{
|
||||
int num;
|
||||
int count;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
if (!HTTPCacheService.IsSupported)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
HTTPCacheService.CheckSetup();
|
||||
HTTPCacheService.LoadLibrary();
|
||||
Dictionary<Uri, HTTPCacheFileInfo> dictionary = HTTPCacheService.library;
|
||||
HTTPCacheService.LoadLibrary();
|
||||
count = HTTPCacheService.library.Count;
|
||||
Monitor.Exit(dictionary);
|
||||
}
|
||||
while (num != 0);
|
||||
return count;
|
||||
}
|
||||
|
||||
// Token: 0x0600CE8C RID: 52876 RVA: 0x002F8C18 File Offset: 0x002F6E18
|
||||
[Token(Token = "0x600CE8C")]
|
||||
[Address(RVA = "0xAA6130", Offset = "0xAA4F30", VA = "0x180AA6130")]
|
||||
public static ulong GetCacheSize()
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
if (!HTTPCacheService.IsSupported)
|
||||
{
|
||||
break;
|
||||
}
|
||||
HTTPCacheService.CheckSetup();
|
||||
HTTPCacheService.LoadLibrary();
|
||||
Dictionary<Uri, HTTPCacheFileInfo> dictionary = HTTPCacheService.library;
|
||||
HTTPCacheService.LoadLibrary();
|
||||
Dictionary<Uri, HTTPCacheFileInfo> dictionary2 = HTTPCacheService.library;
|
||||
bool flag;
|
||||
if (flag)
|
||||
{
|
||||
}
|
||||
if (num != 0)
|
||||
{
|
||||
goto IL_51;
|
||||
}
|
||||
if (num != -1)
|
||||
{
|
||||
}
|
||||
Monitor.Exit(dictionary);
|
||||
}
|
||||
while (num != 0);
|
||||
throw new NullReferenceException();
|
||||
IL_51:
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CE8D RID: 52877 RVA: 0x002F8C7C File Offset: 0x002F6E7C
|
||||
[Token(Token = "0x600CE8D")]
|
||||
[Address(RVA = "0xAA72C0", Offset = "0xAA60C0", VA = "0x180AA72C0")]
|
||||
private static void LoadLibrary()
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
if (!HTTPCacheService.IsSupported)
|
||||
{
|
||||
return;
|
||||
}
|
||||
HTTPCacheService.library = new Dictionary(new UriComparer());
|
||||
IIOService ioservice = HTTPManager.IOService;
|
||||
Dictionary<Uri, HTTPCacheFileInfo> dictionary = HTTPCacheService.library;
|
||||
IIOService ioservice2 = HTTPManager.IOService;
|
||||
BinaryReader binaryReader;
|
||||
ushort num2 = binaryReader.ReadUInt16();
|
||||
HTTPCacheService.NextNameIDX = (ulong)binaryReader.ReadInt64();
|
||||
ushort num3 = binaryReader.ReadUInt16();
|
||||
Uri uri;
|
||||
if (num < (int)num3)
|
||||
{
|
||||
decimal num4 = binaryReader.ReadDecimal();
|
||||
HTTPCacheFileInfo httpcacheFileInfo = new HTTPCacheFileInfo(uri, binaryReader, (int)num2);
|
||||
if (httpcacheFileInfo.IsExists())
|
||||
{
|
||||
HTTPCacheService.library.Add(uri, httpcacheFileInfo);
|
||||
Dictionary<ulong, HTTPCacheFileInfo> usedIndexes = HTTPCacheService.UsedIndexes;
|
||||
ulong <MappedNameIDX>k__BackingField = httpcacheFileInfo.<MappedNameIDX>k__BackingField;
|
||||
usedIndexes.Add(<MappedNameIDX>k__BackingField, httpcacheFileInfo);
|
||||
}
|
||||
num++;
|
||||
}
|
||||
if (binaryReader != 0)
|
||||
{
|
||||
}
|
||||
if (num != 0)
|
||||
{
|
||||
goto IL_142;
|
||||
}
|
||||
if (num != -1)
|
||||
{
|
||||
}
|
||||
num++;
|
||||
int num5;
|
||||
if (uri != 0)
|
||||
{
|
||||
num5 = 0;
|
||||
}
|
||||
if (num != 0)
|
||||
{
|
||||
goto IL_142;
|
||||
}
|
||||
if (num != -1)
|
||||
{
|
||||
}
|
||||
Monitor.Exit(num5);
|
||||
}
|
||||
while (num != 0);
|
||||
HTTPCacheService.DeleteUnusedFiles();
|
||||
if (HTTPCacheService.IsSupported)
|
||||
{
|
||||
HTTPCacheService.SetupCacheFolder();
|
||||
WaitCallback waitCallback;
|
||||
if (HTTPCacheService.<>c.<>9__33_0 == 0)
|
||||
{
|
||||
waitCallback = delegate(object param)
|
||||
{
|
||||
HTTPCacheService.ClearImpl(param);
|
||||
};
|
||||
HTTPCacheService.<>c.<>9__33_0 = waitCallback;
|
||||
}
|
||||
bool flag = ThreadPool.QueueUserWorkItem(waitCallback);
|
||||
}
|
||||
return;
|
||||
IL_142:
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CE8E RID: 52878 RVA: 0x002F8DD0 File Offset: 0x002F6FD0
|
||||
[Token(Token = "0x600CE8E")]
|
||||
[Address(RVA = "0xAA7D60", Offset = "0xAA6B60", VA = "0x180AA7D60")]
|
||||
internal static void SaveLibrary()
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
if (!HTTPCacheService.IsSupported)
|
||||
{
|
||||
break;
|
||||
}
|
||||
HTTPCacheService.LoadLibrary();
|
||||
Dictionary<Uri, HTTPCacheFileInfo> dictionary = HTTPCacheService.library;
|
||||
IIOService ioservice = HTTPManager.IOService;
|
||||
BinaryWriter binaryWriter;
|
||||
binaryWriter.Write(2);
|
||||
ulong nextNameIDX = HTTPCacheService.NextNameIDX;
|
||||
binaryWriter.Write((long)nextNameIDX);
|
||||
int count = HTTPCacheService.Library.Count;
|
||||
binaryWriter.Write((ushort)count);
|
||||
int num2 = 0;
|
||||
Dictionary<Uri, HTTPCacheFileInfo> dictionary2 = HTTPCacheService.Library;
|
||||
bool flag;
|
||||
if (flag)
|
||||
{
|
||||
int hashCode = num2.GetHashCode();
|
||||
}
|
||||
if (num != 0)
|
||||
{
|
||||
goto IL_AE;
|
||||
}
|
||||
if (num != -1)
|
||||
{
|
||||
}
|
||||
num++;
|
||||
if (binaryWriter != 0)
|
||||
{
|
||||
}
|
||||
if (num != 0)
|
||||
{
|
||||
goto IL_C0;
|
||||
}
|
||||
if (num != -1)
|
||||
{
|
||||
}
|
||||
num++;
|
||||
int num3 = 0;
|
||||
if (num != 0)
|
||||
{
|
||||
goto IL_C0;
|
||||
}
|
||||
if (num != -1)
|
||||
{
|
||||
}
|
||||
Monitor.Exit(num3);
|
||||
}
|
||||
while (num != 0);
|
||||
return;
|
||||
IL_AE:
|
||||
throw new NullReferenceException();
|
||||
IL_C0:
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CE8F RID: 52879 RVA: 0x002F8EA4 File Offset: 0x002F70A4
|
||||
[Token(Token = "0x600CE8F")]
|
||||
[Address(RVA = "0xAA8270", Offset = "0xAA7070", VA = "0x180AA8270")]
|
||||
internal static void SetBodyLength(Uri uri, int bodyLength)
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
if (!HTTPCacheService.IsSupported)
|
||||
{
|
||||
break;
|
||||
}
|
||||
HTTPCacheService.LoadLibrary();
|
||||
Dictionary<Uri, HTTPCacheFileInfo> dictionary = HTTPCacheService.library;
|
||||
int num2 = 0;
|
||||
HTTPCacheService.LoadLibrary();
|
||||
if (!HTTPCacheService.library.TryGetValue(uri, num2))
|
||||
{
|
||||
Dictionary<Uri, HTTPCacheFileInfo> dictionary2 = HTTPCacheService.Library;
|
||||
DateTime utcNow = DateTime.UtcNow;
|
||||
HTTPCacheFileInfo httpcacheFileInfo;
|
||||
dictionary2.Add(uri, httpcacheFileInfo);
|
||||
Dictionary<ulong, HTTPCacheFileInfo> usedIndexes = HTTPCacheService.UsedIndexes;
|
||||
ulong <MappedNameIDX>k__BackingField = httpcacheFileInfo.<MappedNameIDX>k__BackingField;
|
||||
usedIndexes.Add(<MappedNameIDX>k__BackingField, httpcacheFileInfo);
|
||||
}
|
||||
Monitor.Exit(dictionary);
|
||||
}
|
||||
while (num != 0);
|
||||
}
|
||||
|
||||
// Token: 0x0600CE90 RID: 52880 RVA: 0x002F8F48 File Offset: 0x002F7148
|
||||
[Token(Token = "0x600CE90")]
|
||||
[Address(RVA = "0xAA5B40", Offset = "0xAA4940", VA = "0x180AA5B40")]
|
||||
private static void DeleteUnusedFiles()
|
||||
{
|
||||
int num = 0;
|
||||
if (HTTPCacheService.IsSupported)
|
||||
{
|
||||
HTTPCacheService.CheckSetup();
|
||||
IIOService ioservice = HTTPManager.IOService;
|
||||
int num2 = 0;
|
||||
string fileName = Path.GetFileName(num);
|
||||
bool flag;
|
||||
if (flag)
|
||||
{
|
||||
Dictionary<Uri, HTTPCacheFileInfo> dictionary = HTTPCacheService.Library;
|
||||
Dictionary<ulong, HTTPCacheFileInfo> usedIndexes = HTTPCacheService.UsedIndexes;
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
IIOService ioservice2 = HTTPManager.IOService;
|
||||
num2++;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x04008402 RID: 33794
|
||||
[Token(Token = "0x4008402")]
|
||||
private const int LibraryVersion = 2;
|
||||
|
||||
// Token: 0x04008403 RID: 33795
|
||||
[Token(Token = "0x4008403")]
|
||||
private static bool isSupported;
|
||||
|
||||
// Token: 0x04008404 RID: 33796
|
||||
[Token(Token = "0x4008404")]
|
||||
private static bool IsSupportCheckDone;
|
||||
|
||||
// Token: 0x04008405 RID: 33797
|
||||
[Token(Token = "0x4008405")]
|
||||
private static Dictionary<Uri, HTTPCacheFileInfo> library;
|
||||
|
||||
// Token: 0x04008406 RID: 33798
|
||||
[Token(Token = "0x4008406")]
|
||||
private static Dictionary<ulong, HTTPCacheFileInfo> UsedIndexes = new Dictionary();
|
||||
|
||||
// Token: 0x04008409 RID: 33801
|
||||
[Token(Token = "0x4008409")]
|
||||
private static bool InClearThread;
|
||||
|
||||
// Token: 0x0400840A RID: 33802
|
||||
[Token(Token = "0x400840A")]
|
||||
private static bool InMaintainenceThread;
|
||||
|
||||
// Token: 0x0400840B RID: 33803
|
||||
[Token(Token = "0x400840B")]
|
||||
private static ulong NextNameIDX;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,36 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Caching
|
||||
{
|
||||
// Token: 0x02001FC4 RID: 8132
|
||||
[Token(Token = "0x2001FC4")]
|
||||
public sealed class UriComparer : IEqualityComparer<Uri>
|
||||
{
|
||||
// Token: 0x0600CE72 RID: 52850 RVA: 0x002F82E0 File Offset: 0x002F64E0
|
||||
[Token(Token = "0x600CE72")]
|
||||
[Address(RVA = "0x1974D60", Offset = "0x1973B60", VA = "0x181974D60", Slot = "4")]
|
||||
public bool Equals(Uri x, Uri y)
|
||||
{
|
||||
int num;
|
||||
return num == 0;
|
||||
}
|
||||
|
||||
// Token: 0x0600CE73 RID: 52851 RVA: 0x002F82F4 File Offset: 0x002F64F4
|
||||
[Token(Token = "0x600CE73")]
|
||||
[Address(RVA = "0x1974DE0", Offset = "0x1973BE0", VA = "0x181974DE0", Slot = "5")]
|
||||
public int GetHashCode(Uri uri)
|
||||
{
|
||||
OVRMesh.JAAHPDGFADH jaahpdgfadh = ((OVRMesh.PJPHJNNOBBH)uri.GetHashCode()).POCDCJMHEGL();
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CE74 RID: 52852 RVA: 0x002F8314 File Offset: 0x002F6514
|
||||
[Token(Token = "0x600CE74")]
|
||||
[Address(RVA = "0x3F5100", Offset = "0x3F3F00", VA = "0x1803F5100")]
|
||||
public UriComparer()
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,390 @@
|
||||
using System;
|
||||
using BestHTTP.Logger;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP
|
||||
{
|
||||
// Token: 0x0200188B RID: 6283
|
||||
[Token(Token = "0x200188B")]
|
||||
internal abstract class ConnectionBase : IDisposable
|
||||
{
|
||||
// Token: 0x1700172F RID: 5935
|
||||
// (get) Token: 0x060092E9 RID: 37609 RVA: 0x001E17C0 File Offset: 0x001DF9C0
|
||||
// (set) Token: 0x060092EA RID: 37610 RVA: 0x001E17D4 File Offset: 0x001DF9D4
|
||||
[Token(Token = "0x1700172F")]
|
||||
public string ServerAddress
|
||||
{
|
||||
[Token(Token = "0x60092E9")]
|
||||
[Address(RVA = "0x3F6E20", Offset = "0x3F5C20", VA = "0x1803F6E20")]
|
||||
get;
|
||||
[Token(Token = "0x60092EA")]
|
||||
[Address(RVA = "0x3F7200", Offset = "0x3F6000", VA = "0x1803F7200")]
|
||||
protected set;
|
||||
}
|
||||
|
||||
// Token: 0x17001730 RID: 5936
|
||||
// (get) Token: 0x060092EB RID: 37611 RVA: 0x001E17E8 File Offset: 0x001DF9E8
|
||||
// (set) Token: 0x060092EC RID: 37612 RVA: 0x001E17FC File Offset: 0x001DF9FC
|
||||
[Token(Token = "0x17001730")]
|
||||
public HTTPConnectionStates State
|
||||
{
|
||||
[Token(Token = "0x60092EB")]
|
||||
[Address(RVA = "0x40B720", Offset = "0x40A520", VA = "0x18040B720")]
|
||||
get;
|
||||
[Token(Token = "0x60092EC")]
|
||||
[Address(RVA = "0x41F740", Offset = "0x41E540", VA = "0x18041F740")]
|
||||
protected set;
|
||||
}
|
||||
|
||||
// Token: 0x17001731 RID: 5937
|
||||
// (get) Token: 0x060092ED RID: 37613 RVA: 0x001E1810 File Offset: 0x001DFA10
|
||||
[Token(Token = "0x17001731")]
|
||||
public bool IsFree
|
||||
{
|
||||
[Token(Token = "0x60092ED")]
|
||||
[Address(RVA = "0x1961C30", Offset = "0x1960A30", VA = "0x181961C30")]
|
||||
get
|
||||
{
|
||||
HTTPConnectionStates httpconnectionStates = this.<State>k__BackingField;
|
||||
return httpconnectionStates == HTTPConnectionStates.Initial || httpconnectionStates == HTTPConnectionStates.Free;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17001732 RID: 5938
|
||||
// (get) Token: 0x060092EE RID: 37614 RVA: 0x001E1830 File Offset: 0x001DFA30
|
||||
[Token(Token = "0x17001732")]
|
||||
public bool IsActive
|
||||
{
|
||||
[Token(Token = "0x60092EE")]
|
||||
[Address(RVA = "0x1961C10", Offset = "0x1960A10", VA = "0x181961C10")]
|
||||
get
|
||||
{
|
||||
HTTPConnectionStates httpconnectionStates = this.<State>k__BackingField;
|
||||
return 0 < 6;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17001733 RID: 5939
|
||||
// (get) Token: 0x060092EF RID: 37615 RVA: 0x001E1848 File Offset: 0x001DFA48
|
||||
// (set) Token: 0x060092F0 RID: 37616 RVA: 0x001E185C File Offset: 0x001DFA5C
|
||||
[Token(Token = "0x17001733")]
|
||||
public HTTPRequest CurrentRequest
|
||||
{
|
||||
[Token(Token = "0x60092EF")]
|
||||
[Address(RVA = "0x3F6400", Offset = "0x3F5200", VA = "0x1803F6400")]
|
||||
get;
|
||||
[Token(Token = "0x60092F0")]
|
||||
[Address(RVA = "0x460F90", Offset = "0x45FD90", VA = "0x180460F90")]
|
||||
protected set;
|
||||
}
|
||||
|
||||
// Token: 0x17001734 RID: 5940
|
||||
// (get) Token: 0x060092F1 RID: 37617 RVA: 0x001E1870 File Offset: 0x001DFA70
|
||||
[Token(Token = "0x17001734")]
|
||||
public virtual bool IsRemovable
|
||||
{
|
||||
[Token(Token = "0x60092F1")]
|
||||
[Address(RVA = "0x1961C50", Offset = "0x1960A50", VA = "0x181961C50", Slot = "5")]
|
||||
get
|
||||
{
|
||||
HTTPConnectionStates httpconnectionStates = this.<State>k__BackingField;
|
||||
if (httpconnectionStates == HTTPConnectionStates.Initial || httpconnectionStates != HTTPConnectionStates.Free)
|
||||
{
|
||||
}
|
||||
DateTime utcNow = DateTime.UtcNow;
|
||||
DateTime lastProcessTime = this.LastProcessTime;
|
||||
TimeSpan timeSpan = utcNow - lastProcessTime;
|
||||
TimeSpan <MaxConnectionIdleTime>k__BackingField = HTTPManager.<MaxConnectionIdleTime>k__BackingField;
|
||||
return timeSpan > <MaxConnectionIdleTime>k__BackingField;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17001735 RID: 5941
|
||||
// (get) Token: 0x060092F2 RID: 37618 RVA: 0x001E18B8 File Offset: 0x001DFAB8
|
||||
// (set) Token: 0x060092F3 RID: 37619 RVA: 0x001E18CC File Offset: 0x001DFACC
|
||||
[Token(Token = "0x17001735")]
|
||||
public DateTime StartTime
|
||||
{
|
||||
[Token(Token = "0x60092F2")]
|
||||
[Address(RVA = "0x3F63E0", Offset = "0x3F51E0", VA = "0x1803F63E0")]
|
||||
get;
|
||||
[Token(Token = "0x60092F3")]
|
||||
[Address(RVA = "0x409C60", Offset = "0x408A60", VA = "0x180409C60")]
|
||||
protected set;
|
||||
}
|
||||
|
||||
// Token: 0x17001736 RID: 5942
|
||||
// (get) Token: 0x060092F4 RID: 37620 RVA: 0x001E18E0 File Offset: 0x001DFAE0
|
||||
// (set) Token: 0x060092F5 RID: 37621 RVA: 0x001E18F4 File Offset: 0x001DFAF4
|
||||
[Token(Token = "0x17001736")]
|
||||
public DateTime TimedOutStart
|
||||
{
|
||||
[Token(Token = "0x60092F4")]
|
||||
[Address(RVA = "0x3FA180", Offset = "0x3F8F80", VA = "0x1803FA180")]
|
||||
get;
|
||||
[Token(Token = "0x60092F5")]
|
||||
[Address(RVA = "0x4437E0", Offset = "0x4425E0", VA = "0x1804437E0")]
|
||||
protected set;
|
||||
}
|
||||
|
||||
// Token: 0x17001737 RID: 5943
|
||||
// (get) Token: 0x060092F6 RID: 37622 RVA: 0x001E1908 File Offset: 0x001DFB08
|
||||
[Token(Token = "0x17001737")]
|
||||
public bool HasProxy
|
||||
{
|
||||
[Token(Token = "0x60092F6")]
|
||||
[Address(RVA = "0x1961BF0", Offset = "0x19609F0", VA = "0x181961BF0")]
|
||||
get
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (060092F6)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean BestHTTP.ConnectionBase::get_HasProxy()
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_00:
|
||||
brtrue(IL_00, cne:bool(ldfld:HTTPRequest(ConnectionBase::<CurrentRequest>k__BackingField, ldloc:ConnectionBase(this)), ldc.i4:int32[exp:HTTPRequest](0)))
|
||||
}
|
||||
|
||||
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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: 0x17001738 RID: 5944
|
||||
// (get) Token: 0x060092F7 RID: 37623 RVA: 0x001E1920 File Offset: 0x001DFB20
|
||||
// (set) Token: 0x060092F8 RID: 37624 RVA: 0x001E1934 File Offset: 0x001DFB34
|
||||
[Token(Token = "0x17001738")]
|
||||
public Uri LastProcessedUri
|
||||
{
|
||||
[Token(Token = "0x60092F7")]
|
||||
[Address(RVA = "0x3F63D0", Offset = "0x3F51D0", VA = "0x1803F63D0")]
|
||||
get;
|
||||
[Token(Token = "0x60092F8")]
|
||||
[Address(RVA = "0x5329E0", Offset = "0x5317E0", VA = "0x1805329E0")]
|
||||
protected set;
|
||||
}
|
||||
|
||||
// Token: 0x060092F9 RID: 37625 RVA: 0x001E1948 File Offset: 0x001DFB48
|
||||
[Token(Token = "0x60092F9")]
|
||||
[Address(RVA = "0x1961AE0", Offset = "0x19608E0", VA = "0x181961AE0")]
|
||||
public ConnectionBase(string serverAddress)
|
||||
{
|
||||
int num = 0;
|
||||
this.ThreadFunc(num);
|
||||
this.ServerAddress = serverAddress;
|
||||
this.State = (HTTPConnectionStates)((ulong)0L);
|
||||
DateTime utcNow = DateTime.UtcNow;
|
||||
this.LastProcessTime = utcNow;
|
||||
this.IsThreaded = true;
|
||||
}
|
||||
|
||||
// Token: 0x060092FA RID: 37626 RVA: 0x001E1984 File Offset: 0x001DFB84
|
||||
[Token(Token = "0x60092FA")]
|
||||
[Address(RVA = "0x1961B60", Offset = "0x1960960", VA = "0x181961B60")]
|
||||
public ConnectionBase(string serverAddress, bool threaded)
|
||||
{
|
||||
int num = 0;
|
||||
this.ThreadFunc(num);
|
||||
this.ServerAddress = serverAddress;
|
||||
this.State = (HTTPConnectionStates)((ulong)0L);
|
||||
DateTime utcNow = DateTime.UtcNow;
|
||||
this.LastProcessTime = utcNow;
|
||||
this.IsThreaded = threaded;
|
||||
}
|
||||
|
||||
// Token: 0x060092FB RID: 37627
|
||||
[Token(Token = "0x60092FB")]
|
||||
[Address(Slot = "6")]
|
||||
internal abstract void Abort(HTTPConnectionStates hTTPConnectionStates);
|
||||
|
||||
// Token: 0x060092FC RID: 37628 RVA: 0x001E19C0 File Offset: 0x001DFBC0
|
||||
[Token(Token = "0x60092FC")]
|
||||
[Address(RVA = "0x1961860", Offset = "0x1960660", VA = "0x181961860")]
|
||||
internal void Process(HTTPRequest request)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (060092FC)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.ConnectionBase::Process(BestHTTP.HTTPRequest)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_41:
|
||||
stloc:Exception(var_4_4B, newobj:Exception(Exception::.ctor, ldstr:string("Connection already processing a request!")))
|
||||
}
|
||||
|
||||
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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: 0x060092FD RID: 37629 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x60092FD")]
|
||||
[Address(RVA = "0x402080", Offset = "0x400E80", VA = "0x180402080", Slot = "7")]
|
||||
protected virtual void ThreadFunc(object param)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x060092FE RID: 37630 RVA: 0x001E1A1C File Offset: 0x001DFC1C
|
||||
[Token(Token = "0x60092FE")]
|
||||
[Address(RVA = "0x1961620", Offset = "0x1960420", VA = "0x181961620")]
|
||||
internal void HandleProgressCallback()
|
||||
{
|
||||
ILogger logger = HTTPManager.Logger;
|
||||
ILogger logger2 = HTTPManager.Logger;
|
||||
this.<CurrentRequest>k__BackingField.<UploadProgressChanged>k__BackingField = false;
|
||||
}
|
||||
|
||||
// Token: 0x060092FF RID: 37631 RVA: 0x001E1A68 File Offset: 0x001DFC68
|
||||
[Token(Token = "0x60092FF")]
|
||||
[Address(RVA = "0x1961520", Offset = "0x1960320", VA = "0x181961520")]
|
||||
internal void HandleCallback()
|
||||
{
|
||||
this.HandleProgressCallback();
|
||||
HTTPRequest httprequest = this.<CurrentRequest>k__BackingField;
|
||||
if (this.<State>k__BackingField != HTTPConnectionStates.Upgraded)
|
||||
{
|
||||
httprequest.CallCallback();
|
||||
}
|
||||
if (httprequest != 0)
|
||||
{
|
||||
HTTPResponse <Response>k__BackingField = httprequest.<Response>k__BackingField;
|
||||
if (<Response>k__BackingField != 0 && <Response>k__BackingField.<IsUpgraded>k__BackingField)
|
||||
{
|
||||
httprequest.UpgradeCallback();
|
||||
}
|
||||
}
|
||||
this.<State>k__BackingField = (HTTPConnectionStates)((ulong)4L);
|
||||
ILogger logger = HTTPManager.Logger;
|
||||
}
|
||||
|
||||
// Token: 0x06009300 RID: 37632 RVA: 0x001E1ACC File Offset: 0x001DFCCC
|
||||
[Token(Token = "0x6009300")]
|
||||
[Address(RVA = "0x1961A20", Offset = "0x1960820", VA = "0x181961A20")]
|
||||
internal void Recycle(HTTPConnectionRecycledDelegate onConnectionRecycled)
|
||||
{
|
||||
this.OnConnectionRecycled = onConnectionRecycled;
|
||||
if (this.<State>k__BackingField == HTTPConnectionStates.Redirected)
|
||||
{
|
||||
DateTime minValue = DateTime.MinValue;
|
||||
this.LastProcessTime = minValue;
|
||||
HTTPRequest httprequest = this.<CurrentRequest>k__BackingField;
|
||||
this.<State>k__BackingField = (HTTPConnectionStates)((ulong)6L);
|
||||
if (httprequest != 0)
|
||||
{
|
||||
httprequest.Dispose();
|
||||
}
|
||||
HTTPConnectionRecycledDelegate onConnectionRecycled2 = this.OnConnectionRecycled;
|
||||
this.<CurrentRequest>k__BackingField = (ulong)0L;
|
||||
this.OnConnectionRecycled = (ulong)0L;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x06009301 RID: 37633 RVA: 0x001E1B2C File Offset: 0x001DFD2C
|
||||
[Token(Token = "0x6009301")]
|
||||
[Address(RVA = "0x1961970", Offset = "0x1960770", VA = "0x181961970")]
|
||||
protected void RecycleNow()
|
||||
{
|
||||
if (this.<State>k__BackingField <= HTTPConnectionStates.Processing)
|
||||
{
|
||||
DateTime minValue = DateTime.MinValue;
|
||||
this.LastProcessTime = minValue;
|
||||
}
|
||||
HTTPRequest httprequest = this.<CurrentRequest>k__BackingField;
|
||||
this.<State>k__BackingField = (HTTPConnectionStates)((ulong)6L);
|
||||
if (httprequest != 0)
|
||||
{
|
||||
httprequest.Dispose();
|
||||
}
|
||||
HTTPConnectionRecycledDelegate onConnectionRecycled = this.OnConnectionRecycled;
|
||||
this.<CurrentRequest>k__BackingField = (ulong)0L;
|
||||
if (onConnectionRecycled != 0)
|
||||
{
|
||||
onConnectionRecycled(this);
|
||||
this.OnConnectionRecycled = (ulong)0L;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17001739 RID: 5945
|
||||
// (get) Token: 0x06009302 RID: 37634 RVA: 0x001E1B90 File Offset: 0x001DFD90
|
||||
// (set) Token: 0x06009303 RID: 37635 RVA: 0x001E1BA4 File Offset: 0x001DFDA4
|
||||
[Token(Token = "0x17001739")]
|
||||
private protected bool IsDisposed
|
||||
{
|
||||
[Token(Token = "0x6009302")]
|
||||
[Address(RVA = "0x781F10", Offset = "0x780D10", VA = "0x180781F10")]
|
||||
protected get;
|
||||
[Token(Token = "0x6009303")]
|
||||
[Address(RVA = "0x536B80", Offset = "0x535980", VA = "0x180536B80")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x06009304 RID: 37636 RVA: 0x001E1BB8 File Offset: 0x001DFDB8
|
||||
[Token(Token = "0x6009304")]
|
||||
[Address(RVA = "0x1961430", Offset = "0x1960230", VA = "0x181961430", Slot = "4")]
|
||||
public void Dispose()
|
||||
{
|
||||
GC.SuppressFinalize(this);
|
||||
}
|
||||
|
||||
// Token: 0x06009305 RID: 37637 RVA: 0x001E1BCC File Offset: 0x001DFDCC
|
||||
[Token(Token = "0x6009305")]
|
||||
[Address(RVA = "0x1961420", Offset = "0x1960220", VA = "0x181961420", Slot = "8")]
|
||||
protected virtual void Dispose(bool disposing)
|
||||
{
|
||||
this.<IsDisposed>k__BackingField = true;
|
||||
}
|
||||
|
||||
// Token: 0x06009306 RID: 37638 RVA: 0x001E1BE0 File Offset: 0x001DFDE0
|
||||
[Token(Token = "0x6009306")]
|
||||
[Address(RVA = "0x19614A0", Offset = "0x19602A0", VA = "0x1819614A0", Slot = "1")]
|
||||
protected override void Finalize()
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
int num2 = 0;
|
||||
this.ThreadFunc(num2);
|
||||
int num3 = 0;
|
||||
this.ThreadFunc(num3);
|
||||
}
|
||||
while (num != 0);
|
||||
}
|
||||
|
||||
// Token: 0x04006474 RID: 25716
|
||||
[FieldOffset(Offset = "0x40")]
|
||||
[Token(Token = "0x4006474")]
|
||||
protected DateTime LastProcessTime;
|
||||
|
||||
// Token: 0x04006475 RID: 25717
|
||||
[FieldOffset(Offset = "0x48")]
|
||||
[Token(Token = "0x4006475")]
|
||||
protected HTTPConnectionRecycledDelegate OnConnectionRecycled;
|
||||
|
||||
// Token: 0x04006476 RID: 25718
|
||||
[FieldOffset(Offset = "0x50")]
|
||||
[Token(Token = "0x4006476")]
|
||||
private bool IsThreaded;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,573 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using BestHTTP.Extensions;
|
||||
using BestHTTP.Logger;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Cookies
|
||||
{
|
||||
// Token: 0x02001FBE RID: 8126
|
||||
[Token(Token = "0x2001FBE")]
|
||||
public sealed class Cookie : IComparable<Cookie>, IEquatable<Cookie>
|
||||
{
|
||||
// Token: 0x170020C4 RID: 8388
|
||||
// (get) Token: 0x0600CDFF RID: 52735 RVA: 0x002F6504 File Offset: 0x002F4704
|
||||
// (set) Token: 0x0600CE00 RID: 52736 RVA: 0x002F6518 File Offset: 0x002F4718
|
||||
[Token(Token = "0x170020C4")]
|
||||
public string Name
|
||||
{
|
||||
[Token(Token = "0x600CDFF")]
|
||||
[Address(RVA = "0x3F6E20", Offset = "0x3F5C20", VA = "0x1803F6E20")]
|
||||
get;
|
||||
[Token(Token = "0x600CE00")]
|
||||
[Address(RVA = "0x3F7200", Offset = "0x3F6000", VA = "0x1803F7200")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x170020C5 RID: 8389
|
||||
// (get) Token: 0x0600CE01 RID: 52737 RVA: 0x002F652C File Offset: 0x002F472C
|
||||
// (set) Token: 0x0600CE02 RID: 52738 RVA: 0x002F6540 File Offset: 0x002F4740
|
||||
[Token(Token = "0x170020C5")]
|
||||
public string Value
|
||||
{
|
||||
[Token(Token = "0x600CE01")]
|
||||
[Address(RVA = "0x3F5F40", Offset = "0x3F4D40", VA = "0x1803F5F40")]
|
||||
get;
|
||||
[Token(Token = "0x600CE02")]
|
||||
[Address(RVA = "0x3F7210", Offset = "0x3F6010", VA = "0x1803F7210")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x170020C6 RID: 8390
|
||||
// (get) Token: 0x0600CE03 RID: 52739 RVA: 0x002F6554 File Offset: 0x002F4754
|
||||
// (set) Token: 0x0600CE04 RID: 52740 RVA: 0x002F6568 File Offset: 0x002F4768
|
||||
[Token(Token = "0x170020C6")]
|
||||
public DateTime Date
|
||||
{
|
||||
[Token(Token = "0x600CE03")]
|
||||
[Address(RVA = "0x3F6400", Offset = "0x3F5200", VA = "0x1803F6400")]
|
||||
get;
|
||||
[Token(Token = "0x600CE04")]
|
||||
[Address(RVA = "0x460F90", Offset = "0x45FD90", VA = "0x180460F90")]
|
||||
internal set;
|
||||
}
|
||||
|
||||
// Token: 0x170020C7 RID: 8391
|
||||
// (get) Token: 0x0600CE05 RID: 52741 RVA: 0x002F657C File Offset: 0x002F477C
|
||||
// (set) Token: 0x0600CE06 RID: 52742 RVA: 0x002F6590 File Offset: 0x002F4790
|
||||
[Token(Token = "0x170020C7")]
|
||||
public DateTime LastAccess
|
||||
{
|
||||
[Token(Token = "0x600CE05")]
|
||||
[Address(RVA = "0x3F63E0", Offset = "0x3F51E0", VA = "0x1803F63E0")]
|
||||
get;
|
||||
[Token(Token = "0x600CE06")]
|
||||
[Address(RVA = "0x409C60", Offset = "0x408A60", VA = "0x180409C60")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x170020C8 RID: 8392
|
||||
// (get) Token: 0x0600CE07 RID: 52743 RVA: 0x002F65A4 File Offset: 0x002F47A4
|
||||
// (set) Token: 0x0600CE08 RID: 52744 RVA: 0x002F65B8 File Offset: 0x002F47B8
|
||||
[Token(Token = "0x170020C8")]
|
||||
public DateTime Expires
|
||||
{
|
||||
[Token(Token = "0x600CE07")]
|
||||
[Address(RVA = "0x3FA180", Offset = "0x3F8F80", VA = "0x1803FA180")]
|
||||
get;
|
||||
[Token(Token = "0x600CE08")]
|
||||
[Address(RVA = "0x4437E0", Offset = "0x4425E0", VA = "0x1804437E0")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x170020C9 RID: 8393
|
||||
// (get) Token: 0x0600CE09 RID: 52745 RVA: 0x002F65CC File Offset: 0x002F47CC
|
||||
// (set) Token: 0x0600CE0A RID: 52746 RVA: 0x002F65E0 File Offset: 0x002F47E0
|
||||
[Token(Token = "0x170020C9")]
|
||||
public long MaxAge
|
||||
{
|
||||
[Token(Token = "0x600CE09")]
|
||||
[Address(RVA = "0x3F63D0", Offset = "0x3F51D0", VA = "0x1803F63D0")]
|
||||
get;
|
||||
[Token(Token = "0x600CE0A")]
|
||||
[Address(RVA = "0x5329E0", Offset = "0x5317E0", VA = "0x1805329E0")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x170020CA RID: 8394
|
||||
// (get) Token: 0x0600CE0B RID: 52747 RVA: 0x002F65F4 File Offset: 0x002F47F4
|
||||
// (set) Token: 0x0600CE0C RID: 52748 RVA: 0x002F6608 File Offset: 0x002F4808
|
||||
[Token(Token = "0x170020CA")]
|
||||
public bool IsSession
|
||||
{
|
||||
[Token(Token = "0x600CE0B")]
|
||||
[Address(RVA = "0x4363F0", Offset = "0x4351F0", VA = "0x1804363F0")]
|
||||
get;
|
||||
[Token(Token = "0x600CE0C")]
|
||||
[Address(RVA = "0x4366B0", Offset = "0x4354B0", VA = "0x1804366B0")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x170020CB RID: 8395
|
||||
// (get) Token: 0x0600CE0D RID: 52749 RVA: 0x002F661C File Offset: 0x002F481C
|
||||
// (set) Token: 0x0600CE0E RID: 52750 RVA: 0x002F6630 File Offset: 0x002F4830
|
||||
[Token(Token = "0x170020CB")]
|
||||
public string Domain
|
||||
{
|
||||
[Token(Token = "0x600CE0D")]
|
||||
[Address(RVA = "0x3FA170", Offset = "0x3F8F70", VA = "0x1803FA170")]
|
||||
get;
|
||||
[Token(Token = "0x600CE0E")]
|
||||
[Address(RVA = "0x46AA50", Offset = "0x469850", VA = "0x18046AA50")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x170020CC RID: 8396
|
||||
// (get) Token: 0x0600CE0F RID: 52751 RVA: 0x002F6644 File Offset: 0x002F4844
|
||||
// (set) Token: 0x0600CE10 RID: 52752 RVA: 0x002F6658 File Offset: 0x002F4858
|
||||
[Token(Token = "0x170020CC")]
|
||||
public string Path
|
||||
{
|
||||
[Token(Token = "0x600CE0F")]
|
||||
[Address(RVA = "0x415290", Offset = "0x414090", VA = "0x180415290")]
|
||||
get;
|
||||
[Token(Token = "0x600CE10")]
|
||||
[Address(RVA = "0x46AB00", Offset = "0x469900", VA = "0x18046AB00")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x170020CD RID: 8397
|
||||
// (get) Token: 0x0600CE11 RID: 52753 RVA: 0x002F666C File Offset: 0x002F486C
|
||||
// (set) Token: 0x0600CE12 RID: 52754 RVA: 0x002F6680 File Offset: 0x002F4880
|
||||
[Token(Token = "0x170020CD")]
|
||||
public bool IsSecure
|
||||
{
|
||||
[Token(Token = "0x600CE11")]
|
||||
[Address(RVA = "0x40FFA0", Offset = "0x40EDA0", VA = "0x18040FFA0")]
|
||||
get;
|
||||
[Token(Token = "0x600CE12")]
|
||||
[Address(RVA = "0x410010", Offset = "0x40EE10", VA = "0x180410010")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x170020CE RID: 8398
|
||||
// (get) Token: 0x0600CE13 RID: 52755 RVA: 0x002F6694 File Offset: 0x002F4894
|
||||
// (set) Token: 0x0600CE14 RID: 52756 RVA: 0x002F66A8 File Offset: 0x002F48A8
|
||||
[Token(Token = "0x170020CE")]
|
||||
public bool IsHttpOnly
|
||||
{
|
||||
[Token(Token = "0x600CE13")]
|
||||
[Address(RVA = "0x46A7B0", Offset = "0x4695B0", VA = "0x18046A7B0")]
|
||||
get;
|
||||
[Token(Token = "0x600CE14")]
|
||||
[Address(RVA = "0xD53F10", Offset = "0xD52D10", VA = "0x180D53F10")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x0600CE15 RID: 52757 RVA: 0x002F66BC File Offset: 0x002F48BC
|
||||
[Token(Token = "0x600CE15")]
|
||||
[Address(RVA = "0x1965C50", Offset = "0x1964A50", VA = "0x181965C50")]
|
||||
public Cookie(string name, string value)
|
||||
{
|
||||
string empty = string.Empty;
|
||||
}
|
||||
|
||||
// Token: 0x0600CE16 RID: 52758 RVA: 0x002F66D0 File Offset: 0x002F48D0
|
||||
[Token(Token = "0x600CE16")]
|
||||
[Address(RVA = "0x1965F40", Offset = "0x1964D40", VA = "0x181965F40")]
|
||||
public Cookie(string name, string value, string path)
|
||||
{
|
||||
string empty = string.Empty;
|
||||
}
|
||||
|
||||
// Token: 0x0600CE17 RID: 52759 RVA: 0x002F66E4 File Offset: 0x002F48E4
|
||||
[Token(Token = "0x600CE17")]
|
||||
[Address(RVA = "0x1965E90", Offset = "0x1964C90", VA = "0x181965E90")]
|
||||
public Cookie(string name, string value, string path, string domain)
|
||||
{
|
||||
int num = 0;
|
||||
base.FieldGetter(num, value, path);
|
||||
this.IsSession = true;
|
||||
this.MaxAge = (long)((ulong)(-1L));
|
||||
DateTime utcNow = DateTime.UtcNow;
|
||||
this.LastAccess = utcNow;
|
||||
this.Name = name;
|
||||
this.Value = value;
|
||||
this.Domain = 0;
|
||||
this.Path = path;
|
||||
}
|
||||
|
||||
// Token: 0x0600CE18 RID: 52760 RVA: 0x002F6738 File Offset: 0x002F4938
|
||||
[Token(Token = "0x600CE18")]
|
||||
[Address(RVA = "0x1965CD0", Offset = "0x1964AD0", VA = "0x181965CD0")]
|
||||
public Cookie(Uri uri, string name, string value, DateTime expires, bool isSession = true)
|
||||
{
|
||||
string absolutePath = uri.AbsolutePath;
|
||||
string host = uri.Host;
|
||||
this.Expires = 0;
|
||||
this.IsSession = false;
|
||||
DateTime utcNow = DateTime.UtcNow;
|
||||
this.Date = utcNow;
|
||||
}
|
||||
|
||||
// Token: 0x0600CE19 RID: 52761 RVA: 0x002F6778 File Offset: 0x002F4978
|
||||
[Token(Token = "0x600CE19")]
|
||||
[Address(RVA = "0x1965DB0", Offset = "0x1964BB0", VA = "0x181965DB0")]
|
||||
public Cookie(Uri uri, string name, string value, long maxAge = -1L, bool isSession = true)
|
||||
{
|
||||
string absolutePath = uri.AbsolutePath;
|
||||
string host = uri.Host;
|
||||
this.MaxAge = 0L;
|
||||
this.IsSession = false;
|
||||
DateTime utcNow = DateTime.UtcNow;
|
||||
this.Date = utcNow;
|
||||
}
|
||||
|
||||
// Token: 0x0600CE1A RID: 52762 RVA: 0x002F67B8 File Offset: 0x002F49B8
|
||||
[Token(Token = "0x600CE1A")]
|
||||
[Address(RVA = "0x1965FC0", Offset = "0x1964DC0", VA = "0x181965FC0")]
|
||||
internal Cookie()
|
||||
{
|
||||
this.IsSession = true;
|
||||
this.MaxAge = (long)((ulong)(-1L));
|
||||
DateTime utcNow = DateTime.UtcNow;
|
||||
this.LastAccess = utcNow;
|
||||
}
|
||||
|
||||
// Token: 0x0600CE1B RID: 52763 RVA: 0x002F67EC File Offset: 0x002F49EC
|
||||
[Token(Token = "0x600CE1B")]
|
||||
[Address(RVA = "0x1965B40", Offset = "0x1964940", VA = "0x181965B40")]
|
||||
public bool WillExpireInTheFuture()
|
||||
{
|
||||
if (!this.<IsSession>k__BackingField)
|
||||
{
|
||||
DateTime utcNow = DateTime.UtcNow;
|
||||
DateTime dateTime = this.<Date>k__BackingField;
|
||||
TimeSpan timeSpan = utcNow - dateTime;
|
||||
int num = 0;
|
||||
return Math.Max(0L, (long)num) < this.<MaxAge>k__BackingField;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
// Token: 0x0600CE1C RID: 52764 RVA: 0x002F684C File Offset: 0x002F4A4C
|
||||
[Token(Token = "0x600CE1C")]
|
||||
[Address(RVA = "0x1964D00", Offset = "0x1963B00", VA = "0x181964D00")]
|
||||
public uint GuessSize()
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CE1C)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.UInt32 BestHTTP.Cookies.Cookie::GuessSize()
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_6C:
|
||||
stloc:int32(var_8, add:int32(ldloc:int32(var_8), ldc.i4:int32(35)))
|
||||
stloc:int32(var_8, add:int32(ldloc:int32(var_8), ldloc:int32(var_1_08)))
|
||||
stloc:int32(var_8, add:int32(ldloc:int32(var_8), ldloc:int32(var_1_08)))
|
||||
stloc:int32(var_8, add:int32(ldloc:int32(var_8), ldloc:int32(var_1_08)))
|
||||
}
|
||||
|
||||
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: 0x0600CE1D RID: 52765 RVA: 0x002F68E0 File Offset: 0x002F4AE0
|
||||
[Token(Token = "0x600CE1D")]
|
||||
[Address(RVA = "0x19650F0", Offset = "0x1963EF0", VA = "0x1819650F0")]
|
||||
public static Cookie Parse(string header, Uri defaultDomain)
|
||||
{
|
||||
int num = 0;
|
||||
Cookie cookie = new Cookie();
|
||||
cookie.<IsSession>k__BackingField = true;
|
||||
cookie.<MaxAge>k__BackingField = (long)((ulong)(-1L));
|
||||
DateTime utcNow = DateTime.UtcNow;
|
||||
cookie.<LastAccess>k__BackingField = utcNow;
|
||||
List<HeaderValue> list = Cookie.ParseCookieHeader(header);
|
||||
bool flag;
|
||||
if (flag)
|
||||
{
|
||||
int stringLength = header.m_stringLength;
|
||||
string text;
|
||||
if (string.Equals(text, "path"))
|
||||
{
|
||||
if (!string.IsNullOrEmpty(text))
|
||||
{
|
||||
bool flag2 = text.StartsWith("/");
|
||||
if (flag2)
|
||||
{
|
||||
cookie.<Path>k__BackingField = flag2;
|
||||
}
|
||||
}
|
||||
cookie.<Path>k__BackingField = "/";
|
||||
}
|
||||
if (string.Equals(text, "domain") && !string.IsNullOrEmpty(text))
|
||||
{
|
||||
string text2;
|
||||
if (text.StartsWith("."))
|
||||
{
|
||||
text2 = text.Substring(1);
|
||||
}
|
||||
cookie.<Domain>k__BackingField = text2;
|
||||
}
|
||||
if (string.Equals(text, "expires"))
|
||||
{
|
||||
DateTime dateTime = DateTime.FromBinary(0L);
|
||||
DateTime dateTime2 = text.ToDateTime(dateTime);
|
||||
cookie.<Expires>k__BackingField = dateTime2;
|
||||
cookie.<IsSession>k__BackingField = false;
|
||||
}
|
||||
if (string.Equals(text, "max-age"))
|
||||
{
|
||||
long num2;
|
||||
cookie.<MaxAge>k__BackingField = num2;
|
||||
cookie.<IsSession>k__BackingField = false;
|
||||
}
|
||||
if (string.Equals(text, "secure"))
|
||||
{
|
||||
cookie.<IsSecure>k__BackingField = true;
|
||||
}
|
||||
bool flag3 = string.Equals(text, "httponly");
|
||||
if (flag3)
|
||||
{
|
||||
cookie.<IsHttpOnly>k__BackingField = true;
|
||||
}
|
||||
cookie.<Name>k__BackingField = flag3;
|
||||
cookie.<Value>k__BackingField = flag3;
|
||||
}
|
||||
if (num == 0)
|
||||
{
|
||||
if (num != -1)
|
||||
{
|
||||
}
|
||||
cookie.<IsSession>k__BackingField = true;
|
||||
string text3 = cookie.<Domain>k__BackingField;
|
||||
string host = defaultDomain.Host;
|
||||
cookie.<Domain>k__BackingField = host;
|
||||
string text4 = cookie.<Path>k__BackingField;
|
||||
if (host != 0)
|
||||
{
|
||||
string absolutePath = defaultDomain.AbsolutePath;
|
||||
cookie.<Path>k__BackingField = absolutePath;
|
||||
}
|
||||
DateTime utcNow2 = DateTime.UtcNow;
|
||||
cookie.<LastAccess>k__BackingField = utcNow2;
|
||||
cookie.<Date>k__BackingField = utcNow2;
|
||||
ILogger logger = HTTPManager.Logger;
|
||||
string[] array = new string[6];
|
||||
throw new ArrayTypeMismatchException();
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CE1E RID: 52766 RVA: 0x002F6B90 File Offset: 0x002F4D90
|
||||
[Token(Token = "0x600CE1E")]
|
||||
[Address(RVA = "0x1965900", Offset = "0x1964700", VA = "0x181965900")]
|
||||
internal void SaveTo(BinaryWriter stream)
|
||||
{
|
||||
stream.Write(1);
|
||||
string text = this.<Name>k__BackingField;
|
||||
if (text == 0)
|
||||
{
|
||||
}
|
||||
stream.Write(text);
|
||||
string empty;
|
||||
if (this.<Value>k__BackingField == 0)
|
||||
{
|
||||
empty = string.Empty;
|
||||
}
|
||||
stream.Write(empty);
|
||||
DateTime dateTime = this.<Date>k__BackingField;
|
||||
long num;
|
||||
stream.Write((uint)num);
|
||||
DateTime dateTime2 = this.<LastAccess>k__BackingField;
|
||||
long num2;
|
||||
stream.Write((uint)num2);
|
||||
DateTime dateTime3 = this.<Expires>k__BackingField;
|
||||
long num3;
|
||||
stream.Write((uint)num3);
|
||||
long num4 = this.<MaxAge>k__BackingField;
|
||||
stream.Write((uint)num4);
|
||||
stream.Flush();
|
||||
string empty2;
|
||||
if (this.<Domain>k__BackingField == 0)
|
||||
{
|
||||
empty2 = string.Empty;
|
||||
}
|
||||
stream.Write(empty2);
|
||||
string empty3;
|
||||
if (this.<Path>k__BackingField == 0)
|
||||
{
|
||||
empty3 = string.Empty;
|
||||
}
|
||||
stream.Write(empty3);
|
||||
stream.Flush();
|
||||
stream.Flush();
|
||||
}
|
||||
|
||||
// Token: 0x0600CE1F RID: 52767 RVA: 0x002F6C54 File Offset: 0x002F4E54
|
||||
[Token(Token = "0x600CE1F")]
|
||||
[Address(RVA = "0x1964D60", Offset = "0x1963B60", VA = "0x181964D60")]
|
||||
internal void LoadFrom(BinaryReader stream)
|
||||
{
|
||||
ushort num = stream.ReadUInt16();
|
||||
decimal num2 = stream.ReadDecimal();
|
||||
this.<Name>k__BackingField = num2;
|
||||
decimal num3 = stream.ReadDecimal();
|
||||
this.<Value>k__BackingField = num3;
|
||||
DateTime dateTime = DateTime.FromBinary((long)stream.ReadUInt32());
|
||||
this.<Date>k__BackingField = dateTime;
|
||||
DateTime dateTime2 = DateTime.FromBinary((long)stream.ReadUInt32());
|
||||
this.<LastAccess>k__BackingField = dateTime2;
|
||||
DateTime dateTime3 = DateTime.FromBinary((long)stream.ReadUInt32());
|
||||
this.<Expires>k__BackingField = dateTime3;
|
||||
uint num4 = stream.ReadUInt32();
|
||||
this.<MaxAge>k__BackingField = (long)num4;
|
||||
int num5 = stream.Read();
|
||||
this.<IsSession>k__BackingField = num5 != 0;
|
||||
decimal num6 = stream.ReadDecimal();
|
||||
this.<Domain>k__BackingField = num6;
|
||||
decimal num7 = stream.ReadDecimal();
|
||||
this.<Path>k__BackingField = num7;
|
||||
int num8 = stream.Read();
|
||||
this.<IsSecure>k__BackingField = num8 != 0;
|
||||
int num9 = stream.Read();
|
||||
this.<IsHttpOnly>k__BackingField = num9 != 0;
|
||||
}
|
||||
|
||||
// Token: 0x0600CE20 RID: 52768 RVA: 0x002F6D28 File Offset: 0x002F4F28
|
||||
[Token(Token = "0x600CE20")]
|
||||
[Address(RVA = "0x1965B00", Offset = "0x1964900", VA = "0x181965B00", Slot = "3")]
|
||||
public override string ToString()
|
||||
{
|
||||
string text = this.<Value>k__BackingField;
|
||||
return this.<Name>k__BackingField + "=" + text;
|
||||
}
|
||||
|
||||
// Token: 0x0600CE21 RID: 52769 RVA: 0x002F6D50 File Offset: 0x002F4F50
|
||||
[Token(Token = "0x600CE21")]
|
||||
[Address(RVA = "0x1964C50", Offset = "0x1963A50", VA = "0x181964C50", Slot = "0")]
|
||||
public override bool Equals(object obj)
|
||||
{
|
||||
if (obj != 0)
|
||||
{
|
||||
bool flag;
|
||||
return flag;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600CE22 RID: 52770 RVA: 0x002F6D64 File Offset: 0x002F4F64
|
||||
[Token(Token = "0x600CE22")]
|
||||
[Address(RVA = "0x1964B90", Offset = "0x1963990", VA = "0x181964B90", Slot = "5")]
|
||||
public bool Equals(Cookie cookie)
|
||||
{
|
||||
if (cookie != 0)
|
||||
{
|
||||
if (this != cookie)
|
||||
{
|
||||
string text = this.<Name>k__BackingField;
|
||||
string text2 = cookie.<Name>k__BackingField;
|
||||
if (!text.Equals(text2, StringComparison.Ordinal))
|
||||
{
|
||||
goto IL_76;
|
||||
}
|
||||
string text3 = this.<Domain>k__BackingField;
|
||||
if (text3 != 0 || cookie.<Domain>k__BackingField != text3)
|
||||
{
|
||||
string text4 = cookie.<Domain>k__BackingField;
|
||||
if (!text3.Equals(text4, StringComparison.Ordinal))
|
||||
{
|
||||
goto IL_76;
|
||||
}
|
||||
}
|
||||
string text5 = this.<Path>k__BackingField;
|
||||
if (text5 != 0 || cookie.<Path>k__BackingField != text5)
|
||||
{
|
||||
string text6 = cookie.<Path>k__BackingField;
|
||||
return text5.Equals(text6, StringComparison.Ordinal);
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
IL_76:
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CE23 RID: 52771 RVA: 0x002F6DF0 File Offset: 0x002F4FF0
|
||||
[Token(Token = "0x600CE23")]
|
||||
[Address(RVA = "0x1964CC0", Offset = "0x1963AC0", VA = "0x181964CC0", Slot = "2")]
|
||||
public override int GetHashCode()
|
||||
{
|
||||
OVRMesh.JAAHPDGFADH jaahpdgfadh = ((OVRMesh.PJPHJNNOBBH)this.GetHashCode()).POCDCJMHEGL();
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CE24 RID: 52772 RVA: 0x002F6E10 File Offset: 0x002F5010
|
||||
[Token(Token = "0x600CE24")]
|
||||
[Address(RVA = "0x1965870", Offset = "0x1964670", VA = "0x181965870")]
|
||||
private static string ReadValue(string str, ref int pos)
|
||||
{
|
||||
string empty = string.Empty;
|
||||
if (str != 0)
|
||||
{
|
||||
}
|
||||
return empty;
|
||||
}
|
||||
|
||||
// Token: 0x0600CE25 RID: 52773 RVA: 0x002F6E28 File Offset: 0x002F5028
|
||||
[Token(Token = "0x600CE25")]
|
||||
[Address(RVA = "0x1964F00", Offset = "0x1963D00", VA = "0x181964F00")]
|
||||
private static List<HeaderValue> ParseCookieHeader(string str)
|
||||
{
|
||||
List<HeaderValue> list = new List();
|
||||
if (str != 0)
|
||||
{
|
||||
int num = 0;
|
||||
if (num < str.m_stringLength)
|
||||
{
|
||||
Func<char, bool> <>9__61_ = Cookie.<>c.<>9__61_0;
|
||||
if (<>9__61_ == 0)
|
||||
{
|
||||
Cookie.<>c.<>9__61_0 = delegate(char ch)
|
||||
{
|
||||
bool flag;
|
||||
return flag;
|
||||
};
|
||||
}
|
||||
HeaderValue headerValue = new HeaderValue(Extensions.Read(str, num, <>9__61_, true).Trim());
|
||||
if (num < str.m_stringLength)
|
||||
{
|
||||
char c = str[num];
|
||||
string text = Cookie.ReadValue(str, num);
|
||||
headerValue.<Value>k__BackingField = text;
|
||||
}
|
||||
list.Add(headerValue);
|
||||
}
|
||||
}
|
||||
return list;
|
||||
}
|
||||
|
||||
// Token: 0x0600CE26 RID: 52774 RVA: 0x002F6EB0 File Offset: 0x002F50B0
|
||||
[Token(Token = "0x600CE26")]
|
||||
[Address(RVA = "0x1964B60", Offset = "0x1963960", VA = "0x181964B60", Slot = "4")]
|
||||
public int CompareTo(Cookie other)
|
||||
{
|
||||
DateTime dateTime = this.<LastAccess>k__BackingField;
|
||||
DateTime dateTime2 = other.<LastAccess>k__BackingField;
|
||||
int num;
|
||||
return num;
|
||||
}
|
||||
|
||||
// Token: 0x040083DA RID: 33754
|
||||
[Token(Token = "0x40083DA")]
|
||||
private const int Version = 1;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,549 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Threading;
|
||||
using BestHTTP.Logger;
|
||||
using BestHTTP.PlatformSupport.FileSystem;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Cookies
|
||||
{
|
||||
// Token: 0x02001FC0 RID: 8128
|
||||
[Token(Token = "0x2001FC0")]
|
||||
public static class CookieJar
|
||||
{
|
||||
// Token: 0x170020CF RID: 8399
|
||||
// (get) Token: 0x0600CE2A RID: 52778 RVA: 0x002F6F10 File Offset: 0x002F5110
|
||||
[Token(Token = "0x170020CF")]
|
||||
public static bool IsSavingSupported
|
||||
{
|
||||
[Token(Token = "0x600CE2A")]
|
||||
[Address(RVA = "0x1964750", Offset = "0x1963550", VA = "0x181964750")]
|
||||
get
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
IIOService ioservice = HTTPManager.IOService;
|
||||
string rootCacheFolder = HTTPManager.GetRootCacheFolder();
|
||||
ILogger logger = HTTPManager.Logger;
|
||||
}
|
||||
while (num != 0);
|
||||
return CookieJar._isSavingSupported;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x170020D0 RID: 8400
|
||||
// (get) Token: 0x0600CE2B RID: 52779 RVA: 0x002F6F54 File Offset: 0x002F5154
|
||||
// (set) Token: 0x0600CE2C RID: 52780 RVA: 0x002F6F68 File Offset: 0x002F5168
|
||||
[Token(Token = "0x170020D0")]
|
||||
private static string CookieFolder
|
||||
{
|
||||
[Token(Token = "0x600CE2B")]
|
||||
[Address(RVA = "0x1964690", Offset = "0x1963490", VA = "0x181964690")]
|
||||
get;
|
||||
[Token(Token = "0x600CE2C")]
|
||||
[Address(RVA = "0x1964AA0", Offset = "0x19638A0", VA = "0x181964AA0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x170020D1 RID: 8401
|
||||
// (get) Token: 0x0600CE2D RID: 52781 RVA: 0x002F6F7C File Offset: 0x002F517C
|
||||
// (set) Token: 0x0600CE2E RID: 52782 RVA: 0x002F6F90 File Offset: 0x002F5190
|
||||
[Token(Token = "0x170020D1")]
|
||||
private static string LibraryPath
|
||||
{
|
||||
[Token(Token = "0x600CE2D")]
|
||||
[Address(RVA = "0x19649E0", Offset = "0x19637E0", VA = "0x1819649E0")]
|
||||
get;
|
||||
[Token(Token = "0x600CE2E")]
|
||||
[Address(RVA = "0x1964B00", Offset = "0x1963900", VA = "0x181964B00")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x0600CE2F RID: 52783 RVA: 0x002F6FA4 File Offset: 0x002F51A4
|
||||
[Token(Token = "0x600CE2F")]
|
||||
[Address(RVA = "0x1964320", Offset = "0x1963120", VA = "0x181964320")]
|
||||
internal static void SetupFolder()
|
||||
{
|
||||
if (CookieJar.IsSavingSupported)
|
||||
{
|
||||
bool flag = string.IsNullOrEmpty(CookieJar.<CookieFolder>k__BackingField);
|
||||
if (flag || flag)
|
||||
{
|
||||
CookieJar.<CookieFolder>k__BackingField = Path.Combine(HTTPManager.GetRootCacheFolder(), "Cookies");
|
||||
CookieJar.<LibraryPath>k__BackingField = Path.Combine(CookieJar.<CookieFolder>k__BackingField, "Library");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600CE30 RID: 52784 RVA: 0x002F6FF8 File Offset: 0x002F51F8
|
||||
[Token(Token = "0x600CE30")]
|
||||
[Address(RVA = "0x1963EB0", Offset = "0x1962CB0", VA = "0x181963EB0")]
|
||||
internal static void Set(HTTPResponse response)
|
||||
{
|
||||
while (response != 0)
|
||||
{
|
||||
object locker = CookieJar.Locker;
|
||||
CookieJar.Maintain();
|
||||
List<Cookie> list = new List();
|
||||
List<string> headerValues = response.GetHeaderValues("set-cookie");
|
||||
if (headerValues != 0)
|
||||
{
|
||||
bool flag;
|
||||
if (flag)
|
||||
{
|
||||
Uri currentUri = response.baseRequest.CurrentUri;
|
||||
Cookie cookie;
|
||||
if (cookie == 0)
|
||||
{
|
||||
goto IL_90;
|
||||
}
|
||||
if (!string.IsNullOrEmpty(cookie.<Value>k__BackingField))
|
||||
{
|
||||
int num = 0;
|
||||
if (cookie.WillExpireInTheFuture())
|
||||
{
|
||||
Cookie cookie2;
|
||||
if (cookie2 != 0)
|
||||
{
|
||||
DateTime <Date>k__BackingField = cookie2.<Date>k__BackingField;
|
||||
cookie.<Date>k__BackingField = <Date>k__BackingField;
|
||||
CookieJar.Cookies[num] = cookie;
|
||||
list.Add(cookie);
|
||||
goto IL_90;
|
||||
}
|
||||
goto IL_90;
|
||||
}
|
||||
}
|
||||
IL_9C:
|
||||
while (cookie == (ulong)(-1L))
|
||||
{
|
||||
}
|
||||
List<Cookie> cookies = CookieJar.Cookies;
|
||||
goto IL_AA;
|
||||
IL_90:
|
||||
CookieJar.Cookies.Add(cookie);
|
||||
goto IL_9C;
|
||||
}
|
||||
IL_AA:
|
||||
int num2 = 0;
|
||||
if (response != 0)
|
||||
{
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
if (num2 != -1)
|
||||
{
|
||||
}
|
||||
response.<Cookies>k__BackingField = list;
|
||||
num2++;
|
||||
}
|
||||
Monitor.Exit(headerValues);
|
||||
if (headerValues == 0)
|
||||
{
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600CE31 RID: 52785 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600CE31")]
|
||||
[Address(RVA = "0x1962E90", Offset = "0x1961C90", VA = "0x181962E90")]
|
||||
internal static void Maintain()
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x0600CE32 RID: 52786 RVA: 0x002F7108 File Offset: 0x002F5308
|
||||
[Token(Token = "0x600CE32")]
|
||||
[Address(RVA = "0x1963360", Offset = "0x1962160", VA = "0x181963360")]
|
||||
internal static void Persist()
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
if (!CookieJar.IsSavingSupported)
|
||||
{
|
||||
break;
|
||||
}
|
||||
object locker = CookieJar.Locker;
|
||||
CookieJar.Maintain();
|
||||
IIOService ioservice = HTTPManager.IOService;
|
||||
IIOService ioservice2 = HTTPManager.IOService;
|
||||
IIOService ioservice3 = HTTPManager.IOService;
|
||||
BinaryWriter binaryWriter;
|
||||
binaryWriter.Write(1);
|
||||
int num2 = 0;
|
||||
List<Cookie> cookies = CookieJar.Cookies;
|
||||
bool flag;
|
||||
if (flag)
|
||||
{
|
||||
num2++;
|
||||
}
|
||||
int num3 = 0;
|
||||
if (num != 0)
|
||||
{
|
||||
goto IL_D0;
|
||||
}
|
||||
if (num3 != -1)
|
||||
{
|
||||
}
|
||||
binaryWriter.Write((ushort)num2);
|
||||
List<Cookie> cookies2 = CookieJar.Cookies;
|
||||
bool flag2;
|
||||
if (flag2)
|
||||
{
|
||||
}
|
||||
num3++;
|
||||
if (num != 0)
|
||||
{
|
||||
goto IL_D6;
|
||||
}
|
||||
if (num3 != -1)
|
||||
{
|
||||
}
|
||||
num3++;
|
||||
if (binaryWriter != 0)
|
||||
{
|
||||
}
|
||||
if (num != 0)
|
||||
{
|
||||
goto IL_EE;
|
||||
}
|
||||
if (num3 != -1)
|
||||
{
|
||||
}
|
||||
num3++;
|
||||
if (num2 != 0)
|
||||
{
|
||||
}
|
||||
if (num != 0)
|
||||
{
|
||||
goto IL_EE;
|
||||
}
|
||||
if (num3 != -1)
|
||||
{
|
||||
}
|
||||
num3++;
|
||||
num3++;
|
||||
Monitor.Exit(num3);
|
||||
}
|
||||
while (num != 0);
|
||||
return;
|
||||
IL_D0:
|
||||
throw new NullReferenceException();
|
||||
IL_D6:
|
||||
throw new NullReferenceException();
|
||||
IL_EE:
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CE33 RID: 52787 RVA: 0x002F7210 File Offset: 0x002F5410
|
||||
[Token(Token = "0x600CE33")]
|
||||
[Address(RVA = "0x19627E0", Offset = "0x19615E0", VA = "0x1819627E0")]
|
||||
internal static void Load()
|
||||
{
|
||||
for (;;)
|
||||
{
|
||||
int num = 0;
|
||||
if (!CookieJar.IsSavingSupported)
|
||||
{
|
||||
break;
|
||||
}
|
||||
object locker = CookieJar.Locker;
|
||||
CookieJar.SetupFolder();
|
||||
CookieJar.Cookies.Clear();
|
||||
IIOService ioservice = HTTPManager.IOService;
|
||||
IIOService ioservice2 = HTTPManager.IOService;
|
||||
IIOService ioservice3 = HTTPManager.IOService;
|
||||
IIOService ioservice4 = HTTPManager.IOService;
|
||||
BinaryReader binaryReader;
|
||||
ushort num2 = binaryReader.ReadUInt16();
|
||||
ushort num3 = binaryReader.ReadUInt16();
|
||||
int num4 = 0;
|
||||
if (num4 < (int)num3)
|
||||
{
|
||||
Cookie cookie = new Cookie();
|
||||
cookie.LoadFrom(binaryReader);
|
||||
if (cookie.WillExpireInTheFuture())
|
||||
{
|
||||
CookieJar.Cookies.Add(cookie);
|
||||
}
|
||||
num4++;
|
||||
}
|
||||
int num5 = 0;
|
||||
if (binaryReader != 0)
|
||||
{
|
||||
}
|
||||
if (num != 0)
|
||||
{
|
||||
goto IL_EE;
|
||||
}
|
||||
if (num5 != -1)
|
||||
{
|
||||
}
|
||||
num5++;
|
||||
if (num != 0)
|
||||
{
|
||||
goto IL_EE;
|
||||
}
|
||||
if (num5 != -1)
|
||||
{
|
||||
}
|
||||
num5++;
|
||||
int num6 = 0;
|
||||
CookieJar.Cookies.Clear();
|
||||
num6++;
|
||||
if (num == 0)
|
||||
{
|
||||
if (num6 != -1)
|
||||
{
|
||||
}
|
||||
if (num == 0)
|
||||
{
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
return;
|
||||
IL_EE:
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CE34 RID: 52788 RVA: 0x002F7328 File Offset: 0x002F5528
|
||||
[Token(Token = "0x600CE34")]
|
||||
[Address(RVA = "0x1962560", Offset = "0x1961360", VA = "0x181962560")]
|
||||
public static List<Cookie> Get(Uri uri)
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
object locker = CookieJar.Locker;
|
||||
CookieJar.Load();
|
||||
List<Cookie> cookies = CookieJar.Cookies;
|
||||
List<Cookie> cookies2 = CookieJar.Cookies;
|
||||
bool flag;
|
||||
if (flag)
|
||||
{
|
||||
int num2 = 0;
|
||||
if (uri.Host.IndexOf(num2) != -1)
|
||||
{
|
||||
int num3 = 0;
|
||||
if (uri.AbsolutePath.StartsWith(num3) && num == 0)
|
||||
{
|
||||
List<Cookie> list = new List();
|
||||
}
|
||||
}
|
||||
}
|
||||
num++;
|
||||
Monitor.Exit(locker);
|
||||
}
|
||||
while (num != 0);
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CE35 RID: 52789 RVA: 0x002F73C0 File Offset: 0x002F55C0
|
||||
[Token(Token = "0x600CE35")]
|
||||
[Address(RVA = "0x1963C90", Offset = "0x1962A90", VA = "0x181963C90")]
|
||||
public static void Set(Uri uri, Cookie cookie)
|
||||
{
|
||||
CookieJar.Set(cookie);
|
||||
}
|
||||
|
||||
// Token: 0x0600CE36 RID: 52790 RVA: 0x002F73D4 File Offset: 0x002F55D4
|
||||
[Token(Token = "0x600CE36")]
|
||||
[Address(RVA = "0x1963CF0", Offset = "0x1962AF0", VA = "0x181963CF0")]
|
||||
public static void Set(Cookie cookie)
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
object locker = CookieJar.Locker;
|
||||
CookieJar.Load();
|
||||
CookieJar.Cookies.Add(cookie);
|
||||
List<Cookie> cookies = CookieJar.Cookies;
|
||||
Monitor.Exit(locker);
|
||||
}
|
||||
while (num != 0);
|
||||
}
|
||||
|
||||
// Token: 0x0600CE37 RID: 52791 RVA: 0x002F7418 File Offset: 0x002F5618
|
||||
[Token(Token = "0x600CE37")]
|
||||
[Address(RVA = "0x1962450", Offset = "0x1961250", VA = "0x181962450")]
|
||||
public static List<Cookie> GetAll()
|
||||
{
|
||||
int num;
|
||||
List<Cookie> cookies;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
object locker = CookieJar.Locker;
|
||||
CookieJar.Load();
|
||||
cookies = CookieJar.Cookies;
|
||||
Monitor.Exit(locker);
|
||||
}
|
||||
while (num != 0);
|
||||
return cookies;
|
||||
}
|
||||
|
||||
// Token: 0x0600CE38 RID: 52792 RVA: 0x002F7448 File Offset: 0x002F5648
|
||||
[Token(Token = "0x600CE38")]
|
||||
[Address(RVA = "0x1961D70", Offset = "0x1960B70", VA = "0x181961D70")]
|
||||
public static void Clear()
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
object locker = CookieJar.Locker;
|
||||
CookieJar.Load();
|
||||
CookieJar.Cookies.Clear();
|
||||
Monitor.Exit(locker);
|
||||
}
|
||||
while (num != 0);
|
||||
}
|
||||
|
||||
// Token: 0x0600CE39 RID: 52793 RVA: 0x002F7480 File Offset: 0x002F5680
|
||||
[Token(Token = "0x600CE39")]
|
||||
[Address(RVA = "0x1961E90", Offset = "0x1960C90", VA = "0x181961E90")]
|
||||
public static void Clear(TimeSpan olderThan)
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
object locker = CookieJar.Locker;
|
||||
CookieJar.Load();
|
||||
List<Cookie> cookies = CookieJar.Cookies;
|
||||
List<Cookie> cookies2 = CookieJar.Cookies;
|
||||
bool flag;
|
||||
if (flag)
|
||||
{
|
||||
object locker2 = CookieJar.Locker;
|
||||
DateTime utcNow = DateTime.UtcNow;
|
||||
DateTime dateTime;
|
||||
if (!(dateTime < utcNow))
|
||||
{
|
||||
num++;
|
||||
}
|
||||
}
|
||||
CookieJar.Cookies.RemoveAt(num);
|
||||
Monitor.Exit(locker);
|
||||
}
|
||||
while (num != 0);
|
||||
}
|
||||
|
||||
// Token: 0x0600CE3A RID: 52794 RVA: 0x002F74FC File Offset: 0x002F56FC
|
||||
[Token(Token = "0x600CE3A")]
|
||||
[Address(RVA = "0x1962100", Offset = "0x1960F00", VA = "0x181962100")]
|
||||
public static void Clear(string domain)
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
object locker = CookieJar.Locker;
|
||||
CookieJar.Load();
|
||||
List<Cookie> cookies = CookieJar.Cookies;
|
||||
List<Cookie> cookies2 = CookieJar.Cookies;
|
||||
bool flag;
|
||||
int num2;
|
||||
if (flag && num2 == -1)
|
||||
{
|
||||
num++;
|
||||
}
|
||||
CookieJar.Cookies.RemoveAt(num);
|
||||
Monitor.Exit(locker);
|
||||
}
|
||||
while (num != 0);
|
||||
}
|
||||
|
||||
// Token: 0x0600CE3B RID: 52795 RVA: 0x002F7568 File Offset: 0x002F5768
|
||||
[Token(Token = "0x600CE3B")]
|
||||
[Address(RVA = "0x1963A10", Offset = "0x1962810", VA = "0x181963A10")]
|
||||
public static void Remove(Uri uri, string name)
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
object locker = CookieJar.Locker;
|
||||
CookieJar.Load();
|
||||
List<Cookie> cookies = CookieJar.Cookies;
|
||||
List<Cookie> cookies2 = CookieJar.Cookies;
|
||||
if (CookieJar.<CookieFolder>k__BackingField.Equals(name, StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
int num2 = 0;
|
||||
if (uri.Host.IndexOf(num2) != -1)
|
||||
{
|
||||
CookieJar.Cookies.RemoveAt(num);
|
||||
}
|
||||
}
|
||||
num++;
|
||||
Monitor.Exit(locker);
|
||||
}
|
||||
while (num != 0);
|
||||
}
|
||||
|
||||
// Token: 0x0600CE3C RID: 52796 RVA: 0x002F75F8 File Offset: 0x002F57F8
|
||||
[Token(Token = "0x600CE3C")]
|
||||
[Address(RVA = "0x1962340", Offset = "0x1961140", VA = "0x181962340")]
|
||||
private static Cookie Find(Cookie cookie, out int idx)
|
||||
{
|
||||
int num = 0;
|
||||
List<Cookie> cookies = CookieJar.Cookies;
|
||||
List<Cookie> cookies2 = CookieJar.Cookies;
|
||||
bool flag;
|
||||
if (!flag)
|
||||
{
|
||||
num++;
|
||||
}
|
||||
idx.m_value = num;
|
||||
return typeof(CookieJar).TypeHandle;
|
||||
}
|
||||
|
||||
// Token: 0x0600CE3D RID: 52797 RVA: 0x002F7630 File Offset: 0x002F5830
|
||||
// Note: this type is marked as 'beforefieldinit'.
|
||||
[Token(Token = "0x600CE3D")]
|
||||
[Address(RVA = "0x19645D0", Offset = "0x19633D0", VA = "0x1819645D0")]
|
||||
static CookieJar()
|
||||
{
|
||||
TimeSpan timeSpan;
|
||||
CookieJar.AccessThreshold = timeSpan;
|
||||
CookieJar.Cookies = new List();
|
||||
CookieJar.Locker = new object();
|
||||
}
|
||||
|
||||
// Token: 0x040083E8 RID: 33768
|
||||
[Token(Token = "0x40083E8")]
|
||||
private const int Version = 1;
|
||||
|
||||
// Token: 0x040083E9 RID: 33769
|
||||
[Token(Token = "0x40083E9")]
|
||||
public static TimeSpan AccessThreshold;
|
||||
|
||||
// Token: 0x040083EA RID: 33770
|
||||
[Token(Token = "0x40083EA")]
|
||||
private static List<Cookie> Cookies;
|
||||
|
||||
// Token: 0x040083ED RID: 33773
|
||||
[Token(Token = "0x40083ED")]
|
||||
private static object Locker;
|
||||
|
||||
// Token: 0x040083EE RID: 33774
|
||||
[Token(Token = "0x40083EE")]
|
||||
private static bool _isSavingSupported;
|
||||
|
||||
// Token: 0x040083EF RID: 33775
|
||||
[Token(Token = "0x40083EF")]
|
||||
private static bool IsSupportCheckDone;
|
||||
|
||||
// Token: 0x040083F0 RID: 33776
|
||||
[Token(Token = "0x40083F0")]
|
||||
private static bool Loaded;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,499 @@
|
||||
using System;
|
||||
using System.IO;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Decompression.Crc
|
||||
{
|
||||
// Token: 0x02001FBD RID: 8125
|
||||
[Token(Token = "0x2001FBD")]
|
||||
internal class CRC32
|
||||
{
|
||||
// Token: 0x170020C2 RID: 8386
|
||||
// (get) Token: 0x0600CDEC RID: 52716 RVA: 0x002F5FE4 File Offset: 0x002F41E4
|
||||
[Token(Token = "0x170020C2")]
|
||||
public long TotalBytesRead
|
||||
{
|
||||
[Token(Token = "0x600CDEC")]
|
||||
[Address(RVA = "0x3F5F40", Offset = "0x3F4D40", VA = "0x1803F5F40")]
|
||||
get
|
||||
{
|
||||
return this._TotalBytesRead;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x170020C3 RID: 8387
|
||||
// (get) Token: 0x0600CDED RID: 52717 RVA: 0x002F5FF8 File Offset: 0x002F41F8
|
||||
[Token(Token = "0x170020C3")]
|
||||
public int Crc32Result
|
||||
{
|
||||
[Token(Token = "0x600CDED")]
|
||||
[Address(RVA = "0x5F70B0", Offset = "0x5F5EB0", VA = "0x1805F70B0")]
|
||||
get
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CDED)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 BestHTTP.Decompression.Crc.CRC32::get_Crc32Result()
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
Block_0:
|
||||
stloc:uint32(var_0_06, ldfld:uint32(CRC32::_register, ldloc:CRC32(this)))
|
||||
}
|
||||
|
||||
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: 0x0600CDEE RID: 52718 RVA: 0x002F600C File Offset: 0x002F420C
|
||||
[Token(Token = "0x600CDEE")]
|
||||
[Address(RVA = "0x1960510", Offset = "0x195F310", VA = "0x181960510")]
|
||||
public int GetCrc32(Stream input)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CDEE)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 BestHTTP.Decompression.Crc.CRC32::GetCrc32(System.IO.Stream)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_23:
|
||||
stloc:Exception(var_4_2D, newobj:Exception(Exception::.ctor, ldstr:string("The input stream must not be null.")))
|
||||
}
|
||||
|
||||
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: 0x0600CDEF RID: 52719 RVA: 0x002F6048 File Offset: 0x002F4248
|
||||
[Token(Token = "0x600CDEF")]
|
||||
[Address(RVA = "0x1960390", Offset = "0x195F190", VA = "0x181960390")]
|
||||
public int GetCrc32AndCopy(Stream input, Stream output)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CDEF)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 BestHTTP.Decompression.Crc.CRC32::GetCrc32AndCopy(System.IO.Stream,System.IO.Stream)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_3B:
|
||||
stloc:Exception(var_6_45, newobj:Exception(Exception::.ctor, ldstr:string("The input stream must not be null.")))
|
||||
}
|
||||
|
||||
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: 0x0600CDF0 RID: 52720 RVA: 0x002F609C File Offset: 0x002F429C
|
||||
[Token(Token = "0x600CDF0")]
|
||||
[Address(RVA = "0x5F68D0", Offset = "0x5F56D0", VA = "0x1805F68D0")]
|
||||
public int ComputeCrc32(int W, byte B)
|
||||
{
|
||||
uint num = this.crc32Table[W];
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CDF1 RID: 52721 RVA: 0x002F60BC File Offset: 0x002F42BC
|
||||
[Token(Token = "0x600CDF1")]
|
||||
[Address(RVA = "0x5F68D0", Offset = "0x5F56D0", VA = "0x1805F68D0")]
|
||||
internal int _InternalComputeCrc32(uint W, byte B)
|
||||
{
|
||||
uint num = this.crc32Table[(int)W];
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CDF2 RID: 52722 RVA: 0x002F60DC File Offset: 0x002F42DC
|
||||
[Token(Token = "0x600CDF2")]
|
||||
[Address(RVA = "0x1960650", Offset = "0x195F450", VA = "0x181960650")]
|
||||
public void SlurpBlock(byte[] block, int offset, int count)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CDF2)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.Decompression.Crc.CRC32::SlurpBlock(System.Byte[],System.Int32,System.Int32)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_36:
|
||||
stloc:Exception(var_4_40, newobj:Exception(Exception::.ctor, ldstr:string("The data buffer must not be null.")))
|
||||
}
|
||||
|
||||
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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: 0x0600CDF3 RID: 52723 RVA: 0x002F612C File Offset: 0x002F432C
|
||||
[Token(Token = "0x600CDF3")]
|
||||
[Address(RVA = "0x1960880", Offset = "0x195F680", VA = "0x181960880")]
|
||||
public void UpdateCRC(byte b)
|
||||
{
|
||||
uint register = this._register;
|
||||
uint[] array = this.crc32Table;
|
||||
if (!this.reverseBits)
|
||||
{
|
||||
uint num = array[(int)register];
|
||||
this._register = num;
|
||||
return;
|
||||
}
|
||||
uint num2 = array[(int)register];
|
||||
this._register = num2;
|
||||
}
|
||||
|
||||
// Token: 0x0600CDF4 RID: 52724 RVA: 0x002F6178 File Offset: 0x002F4378
|
||||
[Token(Token = "0x600CDF4")]
|
||||
[Address(RVA = "0x19607B0", Offset = "0x195F5B0", VA = "0x1819607B0")]
|
||||
public void UpdateCRC(byte b, int n)
|
||||
{
|
||||
if (n > 0)
|
||||
{
|
||||
int num = n - 1;
|
||||
uint[] array = this.crc32Table;
|
||||
if (!this.reverseBits)
|
||||
{
|
||||
}
|
||||
uint register = this._register;
|
||||
uint num2 = array[(int)register];
|
||||
this._register = num2;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600CDF5 RID: 52725 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600CDF5")]
|
||||
[Address(RVA = "0x5F6D20", Offset = "0x5F5B20", VA = "0x1805F6D20")]
|
||||
private static uint ReverseBits(uint data)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x0600CDF6 RID: 52726 RVA: 0x002F61BC File Offset: 0x002F43BC
|
||||
[Token(Token = "0x600CDF6")]
|
||||
[Address(RVA = "0x5F6D80", Offset = "0x5F5B80", VA = "0x1805F6D80")]
|
||||
private static byte ReverseBits(byte data)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CDF6)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Byte BestHTTP.Decompression.Crc.CRC32::ReverseBits(System.Byte)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
Block_0:
|
||||
stloc:int64(var_0_0F, mul:uint32[exp:int64](mul:uint32(ldloc:uint8[exp:uint32](data), conv.u4:uint32(ldc.i4:int32[exp:uint32](131586))), conv.u4:uint32(ldc.i4:int32[exp:uint32](16781313))))
|
||||
}
|
||||
|
||||
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: 0x0600CDF7 RID: 52727 RVA: 0x002F61D8 File Offset: 0x002F43D8
|
||||
[Token(Token = "0x600CDF7")]
|
||||
[Address(RVA = "0x1960240", Offset = "0x195F040", VA = "0x181960240")]
|
||||
private void GenerateLookupTable()
|
||||
{
|
||||
uint[] array = new uint[256];
|
||||
this.crc32Table = array;
|
||||
int num = 0;
|
||||
if (num == 1)
|
||||
{
|
||||
}
|
||||
uint num2 = this.dwPolynomial;
|
||||
while (num != 1)
|
||||
{
|
||||
}
|
||||
uint[] array2 = this.crc32Table;
|
||||
ulong num3;
|
||||
if ((this.reverseBits ? 1UL : 0UL) == num3)
|
||||
{
|
||||
array2[0] = num2;
|
||||
}
|
||||
long num4 = (long)(num * (int)((uint)131586));
|
||||
num2 += num2;
|
||||
long num5 = num4 * (long)((uint)16781313);
|
||||
array2[0] = (uint)num;
|
||||
num++;
|
||||
while (num5 != (long)array2.Length)
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600CDF8 RID: 52728 RVA: 0x002F6260 File Offset: 0x002F4460
|
||||
[Token(Token = "0x600CDF8")]
|
||||
[Address(RVA = "0x5F7180", Offset = "0x5F5F80", VA = "0x1805F7180")]
|
||||
private uint gf2_matrix_times(uint[] matrix, uint vec)
|
||||
{
|
||||
int num = 0;
|
||||
if (vec != (uint)0)
|
||||
{
|
||||
if (vec != (uint)1)
|
||||
{
|
||||
}
|
||||
num++;
|
||||
while (vec >= (uint)2)
|
||||
{
|
||||
}
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CDF9 RID: 52729 RVA: 0x002F6288 File Offset: 0x002F4488
|
||||
[Token(Token = "0x600CDF9")]
|
||||
[Address(RVA = "0x5F70C0", Offset = "0x5F5EC0", VA = "0x1805F70C0")]
|
||||
private void gf2_matrix_square(uint[] square, uint[] mat)
|
||||
{
|
||||
int num = 0;
|
||||
int length = mat.Length;
|
||||
int num2 = 0;
|
||||
uint num3;
|
||||
if (num3 != (uint)0)
|
||||
{
|
||||
if (num3 != (uint)1)
|
||||
{
|
||||
}
|
||||
num2++;
|
||||
while (num3 >= (uint)2)
|
||||
{
|
||||
}
|
||||
}
|
||||
num++;
|
||||
}
|
||||
|
||||
// Token: 0x0600CDFA RID: 52730 RVA: 0x002F62C0 File Offset: 0x002F44C0
|
||||
[Token(Token = "0x600CDFA")]
|
||||
[Address(RVA = "0x195FE20", Offset = "0x195EC20", VA = "0x18195FE20")]
|
||||
public void Combine(int crc, int length)
|
||||
{
|
||||
uint[] array = new uint[32];
|
||||
uint[] array2 = new uint[32];
|
||||
if (length != 0)
|
||||
{
|
||||
uint register = this._register;
|
||||
uint num = this.dwPolynomial;
|
||||
array2[0] = num;
|
||||
uint num2;
|
||||
num2 += (uint)1;
|
||||
array2[0] = num2;
|
||||
num2 += num2;
|
||||
int num3 = 0;
|
||||
int length2 = array2.Length;
|
||||
int num4 = 0;
|
||||
uint num5;
|
||||
if (num5 != (uint)0)
|
||||
{
|
||||
if (num5 != (uint)1)
|
||||
{
|
||||
}
|
||||
num4++;
|
||||
while (num5 >= (uint)2)
|
||||
{
|
||||
}
|
||||
}
|
||||
num3++;
|
||||
int num6 = 0;
|
||||
int length3 = array.Length;
|
||||
int num7 = 0;
|
||||
uint num8;
|
||||
if (num8 != (uint)0)
|
||||
{
|
||||
if (num8 != (uint)1)
|
||||
{
|
||||
}
|
||||
num7++;
|
||||
while (num8 >= (uint)2)
|
||||
{
|
||||
}
|
||||
}
|
||||
num6++;
|
||||
int num9 = 0;
|
||||
int length4 = array2.Length;
|
||||
int num10 = 0;
|
||||
uint num11;
|
||||
if (num11 != (uint)0)
|
||||
{
|
||||
if (num11 != (uint)1)
|
||||
{
|
||||
}
|
||||
num10++;
|
||||
while (num11 >= (uint)2)
|
||||
{
|
||||
}
|
||||
}
|
||||
num9++;
|
||||
int i;
|
||||
if (length != 1)
|
||||
{
|
||||
i = 0;
|
||||
int num12 = 0;
|
||||
if (register != (uint)0)
|
||||
{
|
||||
if (register != (uint)1)
|
||||
{
|
||||
}
|
||||
num12++;
|
||||
while (register >= (uint)2)
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
int num16;
|
||||
if (register != (uint)2)
|
||||
{
|
||||
int num13 = 0;
|
||||
int length5 = array.Length;
|
||||
int num14 = 0;
|
||||
uint num15;
|
||||
if (num15 != (uint)0)
|
||||
{
|
||||
num11 = num15;
|
||||
if (num15 != (uint)1)
|
||||
{
|
||||
}
|
||||
num14++;
|
||||
while (num11 >= (uint)2)
|
||||
{
|
||||
}
|
||||
}
|
||||
num13++;
|
||||
if (length != 1)
|
||||
{
|
||||
num16 = 0;
|
||||
int num17 = 0;
|
||||
if (i != 0)
|
||||
{
|
||||
if (i != 1)
|
||||
{
|
||||
}
|
||||
num17++;
|
||||
while (i >= 2)
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
while (i != 2)
|
||||
{
|
||||
}
|
||||
}
|
||||
this._register = (uint)num16;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600CDFB RID: 52731 RVA: 0x002F6424 File Offset: 0x002F4624
|
||||
[Token(Token = "0x600CDFB")]
|
||||
[Address(RVA = "0x1960A90", Offset = "0x195F890", VA = "0x181960A90")]
|
||||
public CRC32()
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0600CDFC RID: 52732 RVA: 0x002F6434 File Offset: 0x002F4634
|
||||
[Token(Token = "0x600CDFC")]
|
||||
[Address(RVA = "0x1960AA0", Offset = "0x195F8A0", VA = "0x181960AA0")]
|
||||
public CRC32(bool reverseBits)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0600CDFD RID: 52733 RVA: 0x002F6444 File Offset: 0x002F4644
|
||||
[Token(Token = "0x600CDFD")]
|
||||
[Address(RVA = "0x1960920", Offset = "0x195F720", VA = "0x181960920")]
|
||||
public CRC32(int polynomial, bool reverseBits)
|
||||
{
|
||||
this._register = (uint)((ulong)4294967295L);
|
||||
base..ctor();
|
||||
this.reverseBits = reverseBits;
|
||||
this.dwPolynomial = (uint)polynomial;
|
||||
uint[] array = new uint[256];
|
||||
this.crc32Table = array;
|
||||
int num = 0;
|
||||
if (num != 1)
|
||||
{
|
||||
}
|
||||
while (num != 1)
|
||||
{
|
||||
}
|
||||
uint[] array2 = this.crc32Table;
|
||||
ulong num2;
|
||||
if ((this.reverseBits ? 1UL : 0UL) == num2)
|
||||
{
|
||||
array2[0] = (uint)num;
|
||||
}
|
||||
long num3 = (long)(num * (int)((uint)131586));
|
||||
num += num;
|
||||
long num4 = num3 * (long)((uint)16781313);
|
||||
array2[0] = (uint)num;
|
||||
num++;
|
||||
while (num4 != (long)array2.Length)
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600CDFE RID: 52734 RVA: 0x002F64E4 File Offset: 0x002F46E4
|
||||
[Token(Token = "0x600CDFE")]
|
||||
[Address(RVA = "0x1960640", Offset = "0x195F440", VA = "0x181960640")]
|
||||
public void Reset()
|
||||
{
|
||||
this._register = (uint)((ulong)4294967295L);
|
||||
}
|
||||
|
||||
// Token: 0x040083D4 RID: 33748
|
||||
[FieldOffset(Offset = "0x10")]
|
||||
[Token(Token = "0x40083D4")]
|
||||
private uint dwPolynomial;
|
||||
|
||||
// Token: 0x040083D5 RID: 33749
|
||||
[FieldOffset(Offset = "0x18")]
|
||||
[Token(Token = "0x40083D5")]
|
||||
private long _TotalBytesRead;
|
||||
|
||||
// Token: 0x040083D6 RID: 33750
|
||||
[FieldOffset(Offset = "0x20")]
|
||||
[Token(Token = "0x40083D6")]
|
||||
private bool reverseBits;
|
||||
|
||||
// Token: 0x040083D7 RID: 33751
|
||||
[FieldOffset(Offset = "0x28")]
|
||||
[Token(Token = "0x40083D7")]
|
||||
private uint[] crc32Table;
|
||||
|
||||
// Token: 0x040083D8 RID: 33752
|
||||
[Token(Token = "0x40083D8")]
|
||||
private const int BUFFER_SIZE = 8192;
|
||||
|
||||
// Token: 0x040083D9 RID: 33753
|
||||
[FieldOffset(Offset = "0x30")]
|
||||
[Token(Token = "0x40083D9")]
|
||||
private uint _register;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,59 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Decompression.Zlib
|
||||
{
|
||||
// Token: 0x02001FB7 RID: 8119
|
||||
[Token(Token = "0x2001FB7")]
|
||||
public sealed class Adler
|
||||
{
|
||||
// Token: 0x0600CDBC RID: 52668 RVA: 0x002F4CD8 File Offset: 0x002F2ED8
|
||||
[Token(Token = "0x600CDBC")]
|
||||
[Address(RVA = "0x195DE50", Offset = "0x195CC50", VA = "0x18195DE50")]
|
||||
public static uint Adler32(uint adler, byte[] buf, int index, int len)
|
||||
{
|
||||
if (buf != 0 && len > 0)
|
||||
{
|
||||
int i = Adler.NMAX;
|
||||
int length = buf.Length;
|
||||
int num = index + 1;
|
||||
byte b2;
|
||||
byte b = b2 + 1;
|
||||
b2 = (byte)((uint)b2 + adler);
|
||||
b2 = (byte)((uint)b2 + adler);
|
||||
b2 = (byte)((uint)b2 + adler);
|
||||
b2 = (byte)((uint)b2 + adler);
|
||||
b2 = (byte)((uint)b2 + adler);
|
||||
while (i >= 16)
|
||||
{
|
||||
}
|
||||
if (i != 0)
|
||||
{
|
||||
int length2 = buf.Length;
|
||||
b2 = b;
|
||||
int num2 = i - 1;
|
||||
while (num2 != 0)
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
uint num3;
|
||||
return num3;
|
||||
}
|
||||
|
||||
// Token: 0x0600CDBD RID: 52669 RVA: 0x002F4D54 File Offset: 0x002F2F54
|
||||
[Token(Token = "0x600CDBD")]
|
||||
[Address(RVA = "0x3F5100", Offset = "0x3F3F00", VA = "0x1803F5100")]
|
||||
public Adler()
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0400839E RID: 33694
|
||||
[Token(Token = "0x400839E")]
|
||||
private static readonly uint BASE;
|
||||
|
||||
// Token: 0x0400839F RID: 33695
|
||||
[Token(Token = "0x400839F")]
|
||||
private static readonly int NMAX;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Decompression.Zlib
|
||||
{
|
||||
// Token: 0x02001FA0 RID: 8096
|
||||
[Token(Token = "0x2001FA0")]
|
||||
internal enum BlockState
|
||||
{
|
||||
// Token: 0x0400828E RID: 33422
|
||||
[Token(Token = "0x400828E")]
|
||||
NeedMore,
|
||||
// Token: 0x0400828F RID: 33423
|
||||
[Token(Token = "0x400828F")]
|
||||
BlockDone,
|
||||
// Token: 0x04008290 RID: 33424
|
||||
[Token(Token = "0x4008290")]
|
||||
FinishStarted,
|
||||
// Token: 0x04008291 RID: 33425
|
||||
[Token(Token = "0x4008291")]
|
||||
FinishDone
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,53 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Decompression.Zlib
|
||||
{
|
||||
// Token: 0x02001FB0 RID: 8112
|
||||
[Token(Token = "0x2001FB0")]
|
||||
public enum CompressionLevel
|
||||
{
|
||||
// Token: 0x04008375 RID: 33653
|
||||
[Token(Token = "0x4008375")]
|
||||
None,
|
||||
// Token: 0x04008376 RID: 33654
|
||||
[Token(Token = "0x4008376")]
|
||||
Level0 = 0,
|
||||
// Token: 0x04008377 RID: 33655
|
||||
[Token(Token = "0x4008377")]
|
||||
BestSpeed,
|
||||
// Token: 0x04008378 RID: 33656
|
||||
[Token(Token = "0x4008378")]
|
||||
Level1 = 1,
|
||||
// Token: 0x04008379 RID: 33657
|
||||
[Token(Token = "0x4008379")]
|
||||
Level2,
|
||||
// Token: 0x0400837A RID: 33658
|
||||
[Token(Token = "0x400837A")]
|
||||
Level3,
|
||||
// Token: 0x0400837B RID: 33659
|
||||
[Token(Token = "0x400837B")]
|
||||
Level4,
|
||||
// Token: 0x0400837C RID: 33660
|
||||
[Token(Token = "0x400837C")]
|
||||
Level5,
|
||||
// Token: 0x0400837D RID: 33661
|
||||
[Token(Token = "0x400837D")]
|
||||
Default,
|
||||
// Token: 0x0400837E RID: 33662
|
||||
[Token(Token = "0x400837E")]
|
||||
Level6 = 6,
|
||||
// Token: 0x0400837F RID: 33663
|
||||
[Token(Token = "0x400837F")]
|
||||
Level7,
|
||||
// Token: 0x04008380 RID: 33664
|
||||
[Token(Token = "0x4008380")]
|
||||
Level8,
|
||||
// Token: 0x04008381 RID: 33665
|
||||
[Token(Token = "0x4008381")]
|
||||
BestCompression,
|
||||
// Token: 0x04008382 RID: 33666
|
||||
[Token(Token = "0x4008382")]
|
||||
Level9 = 9
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Decompression.Zlib
|
||||
{
|
||||
// Token: 0x02001FB2 RID: 8114
|
||||
[Token(Token = "0x2001FB2")]
|
||||
public enum CompressionMode
|
||||
{
|
||||
// Token: 0x04008388 RID: 33672
|
||||
[Token(Token = "0x4008388")]
|
||||
Compress,
|
||||
// Token: 0x04008389 RID: 33673
|
||||
[Token(Token = "0x4008389")]
|
||||
Decompress
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Decompression.Zlib
|
||||
{
|
||||
// Token: 0x02001FB1 RID: 8113
|
||||
[Token(Token = "0x2001FB1")]
|
||||
public enum CompressionStrategy
|
||||
{
|
||||
// Token: 0x04008384 RID: 33668
|
||||
[Token(Token = "0x4008384")]
|
||||
Default,
|
||||
// Token: 0x04008385 RID: 33669
|
||||
[Token(Token = "0x4008385")]
|
||||
Filtered,
|
||||
// Token: 0x04008386 RID: 33670
|
||||
[Token(Token = "0x4008386")]
|
||||
HuffmanOnly
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Decompression.Zlib
|
||||
{
|
||||
// Token: 0x02001FA1 RID: 8097
|
||||
[Token(Token = "0x2001FA1")]
|
||||
internal enum DeflateFlavor
|
||||
{
|
||||
// Token: 0x04008293 RID: 33427
|
||||
[Token(Token = "0x4008293")]
|
||||
Store,
|
||||
// Token: 0x04008294 RID: 33428
|
||||
[Token(Token = "0x4008294")]
|
||||
Fast,
|
||||
// Token: 0x04008295 RID: 33429
|
||||
[Token(Token = "0x4008295")]
|
||||
Slow
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,2197 @@
|
||||
using System;
|
||||
using BestHTTP.Extensions;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Decompression.Zlib
|
||||
{
|
||||
// Token: 0x02001FA2 RID: 8098
|
||||
[Token(Token = "0x2001FA2")]
|
||||
internal sealed class DeflateManager
|
||||
{
|
||||
// Token: 0x0600CD25 RID: 52517 RVA: 0x002EEEA0 File Offset: 0x002ED0A0
|
||||
[Token(Token = "0x600CD25")]
|
||||
[Address(RVA = "0x19693D0", Offset = "0x19681D0", VA = "0x1819693D0")]
|
||||
internal DeflateManager()
|
||||
{
|
||||
ZTree ztree = new ZTree();
|
||||
this.treeLiterals = ztree;
|
||||
ZTree ztree2 = new ZTree();
|
||||
this.treeDistances = ztree2;
|
||||
ZTree ztree3 = new ZTree();
|
||||
this.treeBitLengths = ztree3;
|
||||
int num = InternalConstants.MAX_BITS;
|
||||
num++;
|
||||
short[] array = new short[num];
|
||||
this.bl_count = array;
|
||||
int[] array2 = new int[InternalConstants.L_CODES];
|
||||
this.heap = array2;
|
||||
sbyte[] array3 = new sbyte[InternalConstants.L_CODES];
|
||||
this.depth = array3;
|
||||
this._WantRfc1950HeaderBytes = true;
|
||||
base..ctor();
|
||||
int num2 = DeflateManager.HEAP_SIZE;
|
||||
num2 += num2;
|
||||
short[] array4 = new short[num2];
|
||||
this.dyn_ltree = array4;
|
||||
short[] array5 = new short[InternalConstants.D_CODES];
|
||||
this.dyn_dtree = array5;
|
||||
short[] array6 = new short[InternalConstants.BL_CODES];
|
||||
this.bl_tree = array6;
|
||||
}
|
||||
|
||||
// Token: 0x0600CD26 RID: 52518 RVA: 0x002EEF6C File Offset: 0x002ED16C
|
||||
[Token(Token = "0x600CD26")]
|
||||
[Address(RVA = "0x1968B40", Offset = "0x1967940", VA = "0x181968B40")]
|
||||
private void _InitializeLazyMatch()
|
||||
{
|
||||
int num = this.w_size;
|
||||
int num2 = this.hash_size;
|
||||
num += num;
|
||||
short[] array = this.head;
|
||||
int num3 = 0;
|
||||
this.window_size = num;
|
||||
Array.Clear(array, num3, num2);
|
||||
int num4 = (int)this.compressionLevel;
|
||||
DeflateManager.Config config;
|
||||
this.config = config;
|
||||
this.SetDeflater();
|
||||
int num5 = 0;
|
||||
this.strstart = num5;
|
||||
this.block_start = num5;
|
||||
this.lookahead = num5;
|
||||
int min_MATCH = DeflateManager.MIN_MATCH;
|
||||
this.match_available = num5;
|
||||
this.prev_length = min_MATCH;
|
||||
this.match_length = min_MATCH;
|
||||
this.ins_h = num5;
|
||||
}
|
||||
|
||||
// Token: 0x0600CD27 RID: 52519 RVA: 0x002EEFFC File Offset: 0x002ED1FC
|
||||
[Token(Token = "0x600CD27")]
|
||||
[Address(RVA = "0x1968C30", Offset = "0x1967A30", VA = "0x181968C30")]
|
||||
private void _InitializeTreeData()
|
||||
{
|
||||
ZTree ztree = this.treeLiterals;
|
||||
short[] array = this.dyn_ltree;
|
||||
ztree.dyn_tree = array;
|
||||
ZTree ztree2 = this.treeLiterals;
|
||||
StaticTree literals = StaticTree.Literals;
|
||||
ztree2.staticTree = literals;
|
||||
ZTree ztree3 = this.treeDistances;
|
||||
short[] array2 = this.dyn_dtree;
|
||||
ztree3.dyn_tree = array2;
|
||||
ZTree ztree4 = this.treeDistances;
|
||||
StaticTree distances = StaticTree.Distances;
|
||||
ztree4.staticTree = distances;
|
||||
ZTree ztree5 = this.treeBitLengths;
|
||||
short[] array3 = this.bl_tree;
|
||||
ztree5.dyn_tree = array3;
|
||||
ZTree ztree6 = this.treeBitLengths;
|
||||
StaticTree bitLengths = StaticTree.BitLengths;
|
||||
ztree6.staticTree = bitLengths;
|
||||
int num = 0;
|
||||
this.bi_buf = (short)num;
|
||||
this.bi_valid = num;
|
||||
this.last_eob_len = (int)((ulong)8L);
|
||||
this._InitializeBlocks();
|
||||
}
|
||||
|
||||
// Token: 0x0600CD28 RID: 52520 RVA: 0x002EF0BC File Offset: 0x002ED2BC
|
||||
[Token(Token = "0x600CD28")]
|
||||
[Address(RVA = "0x1968920", Offset = "0x1967720", VA = "0x181968920")]
|
||||
internal void _InitializeBlocks()
|
||||
{
|
||||
int num = 0;
|
||||
short[] array = this.dyn_ltree;
|
||||
num++;
|
||||
num += 2;
|
||||
array[0] = (short)num;
|
||||
if ("{il2cpp array field local2->}" == (ulong)2L || "{il2cpp array field local2->}" == num)
|
||||
{
|
||||
}
|
||||
short[] array2 = this.dyn_dtree;
|
||||
num++;
|
||||
num += 2;
|
||||
array2[0] = (short)num;
|
||||
short[] array3 = this.bl_tree;
|
||||
num++;
|
||||
num += 2;
|
||||
array3[0] = (short)num;
|
||||
short[] array4 = this.dyn_ltree;
|
||||
int num2 = DeflateManager.END_BLOCK;
|
||||
num2 += num2;
|
||||
uint num3;
|
||||
array4[0] = (short)num3;
|
||||
this.opt_len = num;
|
||||
this.matches = num;
|
||||
this.last_lit = num;
|
||||
}
|
||||
|
||||
// Token: 0x0600CD29 RID: 52521 RVA: 0x002EF160 File Offset: 0x002ED360
|
||||
[Token(Token = "0x600CD29")]
|
||||
[Address(RVA = "0x196B330", Offset = "0x196A130", VA = "0x18196B330")]
|
||||
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;
|
||||
sbyte[] array2 = this.depth;
|
||||
if (DeflateManager._IsSmaller(tree, num3, k, array2))
|
||||
{
|
||||
}
|
||||
int[] array3 = this.heap;
|
||||
sbyte[] array4 = this.depth;
|
||||
if (!DeflateManager._IsSmaller(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: 0x0600CD2A RID: 52522 RVA: 0x002EF204 File Offset: 0x002ED404
|
||||
[Token(Token = "0x600CD2A")]
|
||||
[Address(RVA = "0x1968D70", Offset = "0x1967B70", VA = "0x181968D70")]
|
||||
internal static bool _IsSmaller(short[] tree, int n, int m, sbyte[] depth)
|
||||
{
|
||||
int length = tree.Length;
|
||||
short num;
|
||||
short num2;
|
||||
if (num < num2)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
if (num != num2)
|
||||
{
|
||||
}
|
||||
int length2 = depth.Length;
|
||||
bool flag;
|
||||
return flag;
|
||||
}
|
||||
|
||||
// Token: 0x0600CD2B RID: 52523 RVA: 0x002EF234 File Offset: 0x002ED434
|
||||
[Token(Token = "0x600CD2B")]
|
||||
[Address(RVA = "0x196B5E0", Offset = "0x196A3E0", VA = "0x18196B5E0")]
|
||||
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)
|
||||
{
|
||||
}
|
||||
short[] array = this.bl_tree;
|
||||
if (1UL > (ulong)10L)
|
||||
{
|
||||
int num4 = InternalConstants.REPZ_11_138;
|
||||
num4 += num4;
|
||||
}
|
||||
int num5 = InternalConstants.REPZ_3_10;
|
||||
num5 += num5;
|
||||
short[] array2 = this.bl_tree;
|
||||
short[] array3 = this.bl_tree;
|
||||
int num6 = InternalConstants.REP_3_6;
|
||||
num6 += num6;
|
||||
short[] array4 = this.bl_tree;
|
||||
i++;
|
||||
num2 += 2;
|
||||
while (i <= max_code)
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600CD2C RID: 52524 RVA: 0x002EF2C8 File Offset: 0x002ED4C8
|
||||
[Token(Token = "0x600CD2C")]
|
||||
[Address(RVA = "0x196A870", Offset = "0x1969670", VA = "0x18196A870")]
|
||||
internal int build_bl_tree()
|
||||
{
|
||||
int max_code = this.treeLiterals.max_code;
|
||||
short[] array = this.dyn_ltree;
|
||||
this.scan_tree(array, max_code);
|
||||
int max_code2 = this.treeDistances.max_code;
|
||||
short[] array2 = this.dyn_dtree;
|
||||
this.scan_tree(array2, max_code2);
|
||||
this.treeBitLengths.build_tree(this);
|
||||
int i = InternalConstants.BL_CODES;
|
||||
short[] array3 = this.bl_tree;
|
||||
sbyte[] array4 = ZTree.bl_order;
|
||||
i++;
|
||||
if ("{il2cpp array field local12->}" == (ulong)0L)
|
||||
{
|
||||
while (i >= 3)
|
||||
{
|
||||
}
|
||||
}
|
||||
array4 += i;
|
||||
return i;
|
||||
}
|
||||
|
||||
// Token: 0x0600CD2D RID: 52525 RVA: 0x002EF354 File Offset: 0x002ED554
|
||||
[Token(Token = "0x600CD2D")]
|
||||
[Address(RVA = "0x196B920", Offset = "0x196A720", VA = "0x18196B920")]
|
||||
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;
|
||||
sbyte[] bl_order = ZTree.bl_order;
|
||||
num++;
|
||||
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: 0x0600CD2E RID: 52526 RVA: 0x002EF3C4 File Offset: 0x002ED5C4
|
||||
[Token(Token = "0x600CD2E")]
|
||||
[Address(RVA = "0x196C1E0", Offset = "0x196AFE0", VA = "0x18196C1E0")]
|
||||
internal void send_tree(short[] tree, int max_code)
|
||||
{
|
||||
int num = 0;
|
||||
int num2 = 0;
|
||||
num2 += 3;
|
||||
uint num3;
|
||||
if (1U < num3)
|
||||
{
|
||||
}
|
||||
if (1UL > (ulong)10L)
|
||||
{
|
||||
short[] array = this.bl_tree;
|
||||
int repz_11_ = InternalConstants.REPZ_11_138;
|
||||
this.send_code(repz_11_, array);
|
||||
uint num4;
|
||||
this.send_bits(repz_11_, (int)num4);
|
||||
}
|
||||
short[] array2 = this.bl_tree;
|
||||
int repz_3_ = InternalConstants.REPZ_3_10;
|
||||
this.send_code(repz_3_, array2);
|
||||
this.send_bits(repz_3_, 3);
|
||||
short[] array3 = this.bl_tree;
|
||||
this.send_code((int)num3, array3);
|
||||
short[] array4 = this.bl_tree;
|
||||
int rep_3_ = InternalConstants.REP_3_6;
|
||||
this.send_code(rep_3_, array4);
|
||||
this.send_bits(rep_3_, 2);
|
||||
short[] array5 = this.bl_tree;
|
||||
this.send_code(rep_3_, array5);
|
||||
num++;
|
||||
num2 += 2;
|
||||
}
|
||||
|
||||
// Token: 0x0600CD2F RID: 52527 RVA: 0x002EF484 File Offset: 0x002ED684
|
||||
[Token(Token = "0x600CD2F")]
|
||||
[Address(RVA = "0x196B590", Offset = "0x196A390", VA = "0x18196B590")]
|
||||
private void put_bytes(byte[] p, int start, int len)
|
||||
{
|
||||
byte[] array = this.pending;
|
||||
int num = this.pendingCount;
|
||||
Array.Copy(p, start, array, num, len);
|
||||
}
|
||||
|
||||
// Token: 0x0600CD30 RID: 52528 RVA: 0x002EF4AC File Offset: 0x002ED6AC
|
||||
[Token(Token = "0x600CD30")]
|
||||
[Address(RVA = "0x196BC40", Offset = "0x196AA40", VA = "0x18196BC40")]
|
||||
internal void send_code(int c, short[] tree)
|
||||
{
|
||||
int length = tree.Length;
|
||||
short num;
|
||||
short num2;
|
||||
this.send_bits((int)num, (int)num2);
|
||||
}
|
||||
|
||||
// Token: 0x0600CD31 RID: 52529 RVA: 0x002EF4D0 File Offset: 0x002ED6D0
|
||||
[Token(Token = "0x600CD31")]
|
||||
[Address(RVA = "0x196BAA0", Offset = "0x196A8A0", VA = "0x18196BAA0")]
|
||||
internal void send_bits(int value, int length)
|
||||
{
|
||||
int num = this.bi_valid;
|
||||
int num2 = this.bi_valid;
|
||||
int num3 = DeflateManager.Buf_size;
|
||||
num3 -= length;
|
||||
this.bi_buf = (short)value;
|
||||
this.bi_valid = value;
|
||||
}
|
||||
|
||||
// Token: 0x0600CD32 RID: 52530 RVA: 0x002EF518 File Offset: 0x002ED718
|
||||
[Token(Token = "0x600CD32")]
|
||||
[Address(RVA = "0x19699A0", Offset = "0x19687A0", VA = "0x1819699A0")]
|
||||
internal void _tr_align()
|
||||
{
|
||||
int num = DeflateManager.STATIC_TREES;
|
||||
num += num;
|
||||
this.send_bits(num, 3);
|
||||
int length = StaticTree.lengthAndLiteralsTreeCodes.Length;
|
||||
short num2;
|
||||
short num3;
|
||||
this.send_bits((int)num2, (int)num3);
|
||||
this.bi_flush();
|
||||
int num4 = this.last_eob_len;
|
||||
num4 += 11;
|
||||
if (num4 < 9)
|
||||
{
|
||||
int num5 = DeflateManager.STATIC_TREES;
|
||||
num5 += num5;
|
||||
this.send_bits(num5, 3);
|
||||
int length2 = StaticTree.lengthAndLiteralsTreeCodes.Length;
|
||||
short num6;
|
||||
short num7;
|
||||
this.send_bits((int)num6, (int)num7);
|
||||
this.bi_flush();
|
||||
}
|
||||
this.last_eob_len = (int)((ulong)7L);
|
||||
}
|
||||
|
||||
// Token: 0x0600CD33 RID: 52531 RVA: 0x002EF5A8 File Offset: 0x002ED7A8
|
||||
[Token(Token = "0x600CD33")]
|
||||
[Address(RVA = "0x196A2A0", Offset = "0x19690A0", VA = "0x18196A2A0")]
|
||||
internal bool _tr_tally(int dist, int lc)
|
||||
{
|
||||
byte[] array = this.pending;
|
||||
int num = this.last_lit;
|
||||
int distanceOffset = this._distanceOffset;
|
||||
byte[] array2 = this.pending;
|
||||
int num2 = this._distanceOffset;
|
||||
num2++;
|
||||
byte[] array3 = this.pending;
|
||||
num2 = this._lengthOffset;
|
||||
short[] array4 = this.dyn_ltree;
|
||||
if (dist != 0)
|
||||
{
|
||||
sbyte[] lengthCode = ZTree.LengthCode;
|
||||
int num3 = InternalConstants.LITERALS;
|
||||
num3 += typeof(InternalConstants).TypeHandle;
|
||||
int num4 = dist - 1;
|
||||
short[] array5 = this.dyn_dtree;
|
||||
int num5 = ZTree.DistanceCode(num4);
|
||||
num5 += num5;
|
||||
}
|
||||
int num9;
|
||||
if (this.last_lit == 8191 && this.compressionLevel > CompressionLevel.Level2)
|
||||
{
|
||||
int num6 = 0;
|
||||
short[] array6 = this.dyn_dtree;
|
||||
int[] extraDistanceBits = ZTree.ExtraDistanceBits;
|
||||
num6++;
|
||||
int num7 = extraDistanceBits[num6];
|
||||
num7 += 5;
|
||||
int num8 = num7 * num6;
|
||||
num6 += 2;
|
||||
num9 = this.last_lit;
|
||||
num9 -= typeof(InternalConstants).TypeHandle;
|
||||
if (this.matches < num9)
|
||||
{
|
||||
num9 -= typeof(InternalConstants).TypeHandle;
|
||||
if (lc < num9)
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
int num10 = this.lit_bufsize - 1;
|
||||
while (num9 == num10)
|
||||
{
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CD34 RID: 52532 RVA: 0x002EF6C4 File Offset: 0x002ED8C4
|
||||
[Token(Token = "0x600CD34")]
|
||||
[Address(RVA = "0x196BCB0", Offset = "0x196AAB0", VA = "0x18196BCB0")]
|
||||
internal void send_compressed_block(short[] ltree, short[] dtree)
|
||||
{
|
||||
int num = 0;
|
||||
if (this.last_lit != num)
|
||||
{
|
||||
int num2 = this._distanceOffset;
|
||||
byte[] array = this.pending;
|
||||
num2 += num;
|
||||
int length = array.Length;
|
||||
int num3 = num2 + 1;
|
||||
int num4 = this._lengthOffset;
|
||||
num4 += num;
|
||||
num += 2;
|
||||
num++;
|
||||
sbyte[] lengthCode = ZTree.LengthCode;
|
||||
int num5 = InternalConstants.LITERALS;
|
||||
num5 += num5;
|
||||
int length2 = ltree.Length;
|
||||
num5 += 3;
|
||||
short num6 = ltree[num5];
|
||||
short num7 = ltree[array];
|
||||
this.send_bits((int)num7, (int)num6);
|
||||
int[] extraLengthBits = ZTree.ExtraLengthBits;
|
||||
int num8;
|
||||
if (num8 != 0)
|
||||
{
|
||||
int[] lengthBase = ZTree.LengthBase;
|
||||
byte b;
|
||||
this.send_bits((int)b, num8);
|
||||
}
|
||||
byte b2;
|
||||
int num9 = ZTree.DistanceCode((int)b2);
|
||||
this.send_bits(1, (int)num6);
|
||||
if (ZTree.ExtraDistanceBits[num9] != 0)
|
||||
{
|
||||
int[] distanceBase = ZTree.DistanceBase;
|
||||
int length3 = ltree.Length;
|
||||
num4++;
|
||||
short num10 = ltree[num4];
|
||||
short num11 = ltree[num4];
|
||||
this.send_bits((int)num11, (int)num10);
|
||||
}
|
||||
if (num < this.last_lit)
|
||||
{
|
||||
}
|
||||
}
|
||||
int num12 = DeflateManager.END_BLOCK;
|
||||
num12 += num12;
|
||||
int length4 = ltree.Length;
|
||||
short num13 = ltree[num12];
|
||||
num12++;
|
||||
short num14 = ltree[num12];
|
||||
this.send_bits((int)num13, (int)num14);
|
||||
int num15 = DeflateManager.END_BLOCK;
|
||||
num15 += num15;
|
||||
num15++;
|
||||
this.last_eob_len = num15;
|
||||
}
|
||||
|
||||
// Token: 0x0600CD35 RID: 52533 RVA: 0x002EF82C File Offset: 0x002EDA2C
|
||||
[Token(Token = "0x600CD35")]
|
||||
[Address(RVA = "0x196C4B0", Offset = "0x196B2B0", VA = "0x18196C4B0")]
|
||||
internal void set_data_type()
|
||||
{
|
||||
short[] array = this.dyn_ltree;
|
||||
int num = 0;
|
||||
int length = array.Length;
|
||||
num++;
|
||||
num += 2;
|
||||
if (num < 128)
|
||||
{
|
||||
num++;
|
||||
}
|
||||
short[] array2 = this.dyn_ltree;
|
||||
num++;
|
||||
num += array2;
|
||||
if (num > num)
|
||||
{
|
||||
}
|
||||
int z_ASCII = DeflateManager.Z_ASCII;
|
||||
this.data_type = (sbyte)z_ASCII;
|
||||
}
|
||||
|
||||
// Token: 0x0600CD36 RID: 52534 RVA: 0x002EF888 File Offset: 0x002EDA88
|
||||
[Token(Token = "0x600CD36")]
|
||||
[Address(RVA = "0x196A670", Offset = "0x1969470", VA = "0x18196A670")]
|
||||
internal void bi_flush()
|
||||
{
|
||||
if (this.bi_valid != 16)
|
||||
{
|
||||
int num = this.pendingCount;
|
||||
byte[] array = this.pending;
|
||||
short num2 = this.bi_buf;
|
||||
int num3 = num + 1;
|
||||
this.pendingCount = num3;
|
||||
this.bi_buf = (short)num3;
|
||||
return;
|
||||
}
|
||||
int num4 = this.pendingCount;
|
||||
byte[] array2 = this.pending;
|
||||
short num5 = this.bi_buf;
|
||||
int num6 = num4 + 1;
|
||||
this.pendingCount = num6;
|
||||
int num7 = this.pendingCount;
|
||||
byte[] array3 = this.pending;
|
||||
short num8 = this.bi_buf;
|
||||
int num9 = num7 + 1;
|
||||
this.pendingCount = num9;
|
||||
int num10 = 0;
|
||||
this.bi_buf = (short)num10;
|
||||
this.bi_valid = num10;
|
||||
}
|
||||
|
||||
// Token: 0x0600CD37 RID: 52535 RVA: 0x002EF92C File Offset: 0x002EDB2C
|
||||
[Token(Token = "0x600CD37")]
|
||||
[Address(RVA = "0x196A770", Offset = "0x1969570", VA = "0x18196A770")]
|
||||
internal void bi_windup()
|
||||
{
|
||||
if (this.bi_valid > 0)
|
||||
{
|
||||
int num = this.pendingCount;
|
||||
byte[] array = this.pending;
|
||||
short num2 = this.bi_buf;
|
||||
int num3 = num + 1;
|
||||
this.pendingCount = num3;
|
||||
int num4 = 0;
|
||||
this.bi_buf = (short)num4;
|
||||
this.bi_valid = num4;
|
||||
return;
|
||||
}
|
||||
int num5 = 0;
|
||||
this.bi_buf = (short)num5;
|
||||
this.bi_valid = num5;
|
||||
}
|
||||
|
||||
// Token: 0x0600CD38 RID: 52536 RVA: 0x002EF9E0 File Offset: 0x002EDBE0
|
||||
[Token(Token = "0x600CD38")]
|
||||
[Address(RVA = "0x196AA00", Offset = "0x1969800", VA = "0x18196AA00")]
|
||||
internal void copy_block(int buf, int len, bool header)
|
||||
{
|
||||
this.bi_windup();
|
||||
this.last_eob_len = (int)((ulong)8L);
|
||||
if (header)
|
||||
{
|
||||
int num = this.pendingCount;
|
||||
byte[] array = this.pending;
|
||||
int num2 = num + 1;
|
||||
this.pendingCount = num2;
|
||||
int num3 = this.pendingCount;
|
||||
byte[] array2 = this.pending;
|
||||
int num4 = num3 + 1;
|
||||
this.pendingCount = num4;
|
||||
int num5 = this.pendingCount;
|
||||
byte[] array3 = this.pending;
|
||||
int num6 = num5 + 1;
|
||||
this.pendingCount = num6;
|
||||
int num7 = this.pendingCount;
|
||||
byte[] array4 = this.pending;
|
||||
int num8 = num7 + 1;
|
||||
this.pendingCount = num8;
|
||||
}
|
||||
int num9 = this.pendingCount;
|
||||
byte[] array5 = this.pending;
|
||||
Array.Copy(this.window, buf, array5, num9, len);
|
||||
}
|
||||
|
||||
// Token: 0x0600CD39 RID: 52537 RVA: 0x002EFA98 File Offset: 0x002EDC98
|
||||
[Token(Token = "0x600CD39")]
|
||||
[Address(RVA = "0x196AB60", Offset = "0x1969960", VA = "0x18196AB60")]
|
||||
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);
|
||||
ZlibCodec codec = this._codec;
|
||||
int num3 = this.strstart;
|
||||
this.block_start = num3;
|
||||
codec.flush_pending();
|
||||
}
|
||||
|
||||
// Token: 0x0600CD3A RID: 52538 RVA: 0x002EFAE4 File Offset: 0x002EDCE4
|
||||
[Token(Token = "0x600CD3A")]
|
||||
[Address(RVA = "0x1966700", Offset = "0x1965500", VA = "0x181966700")]
|
||||
internal BlockState DeflateNone(FlushType flush)
|
||||
{
|
||||
int num3;
|
||||
do
|
||||
{
|
||||
int num = this.pending.Length;
|
||||
num += -5;
|
||||
uint num2;
|
||||
if (num < (int)num2)
|
||||
{
|
||||
}
|
||||
num3 = 0;
|
||||
int num4 = this.lookahead;
|
||||
this._fillWindow();
|
||||
int num5 = this.lookahead;
|
||||
if (num5 == 0)
|
||||
{
|
||||
if (flush == FlushType.None)
|
||||
{
|
||||
break;
|
||||
}
|
||||
if (num5 == 0)
|
||||
{
|
||||
break;
|
||||
}
|
||||
}
|
||||
int num6 = this.block_start;
|
||||
int num7 = this.strstart;
|
||||
this.lookahead = num3;
|
||||
if (num5 != 0)
|
||||
{
|
||||
}
|
||||
num7 -= this;
|
||||
this.strstart = this;
|
||||
this.lookahead = num7;
|
||||
int num8 = 0;
|
||||
this._tr_flush_block(num6, (int)num2, num8 != 0);
|
||||
ZlibCodec codec = this._codec;
|
||||
int num9 = this.strstart;
|
||||
this.block_start = num9;
|
||||
codec.flush_pending();
|
||||
if (this._codec.AvailableBytesOut == num3)
|
||||
{
|
||||
break;
|
||||
}
|
||||
int num10 = this.strstart;
|
||||
int num11 = this.block_start;
|
||||
int num12 = this.w_size;
|
||||
num10 -= num11;
|
||||
int num13 = this.block_start;
|
||||
int num14 = this.strstart;
|
||||
int num15 = 0;
|
||||
num14 -= num13;
|
||||
this._tr_flush_block(num13, num14, num15 != 0);
|
||||
ZlibCodec codec2 = this._codec;
|
||||
int num16 = this.strstart;
|
||||
this.block_start = num16;
|
||||
codec2.flush_pending();
|
||||
}
|
||||
while (this._codec.AvailableBytesOut != num3);
|
||||
bool flag = flush == FlushType.Finish;
|
||||
this.flush_block_only(flag);
|
||||
ZlibCodec codec3 = this._codec;
|
||||
while (flush != FlushType.Finish)
|
||||
{
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CD3B RID: 52539 RVA: 0x002EFC38 File Offset: 0x002EDE38
|
||||
[Token(Token = "0x600CD3B")]
|
||||
[Address(RVA = "0x196A0E0", Offset = "0x1968EE0", VA = "0x18196A0E0")]
|
||||
internal void _tr_stored_block(int buf, int stored_len, bool eof)
|
||||
{
|
||||
this.send_bits(buf, 3);
|
||||
this.bi_windup();
|
||||
int num = this.pendingCount;
|
||||
byte[] array = this.pending;
|
||||
this.last_eob_len = (int)((ulong)8L);
|
||||
int num2 = num + 1;
|
||||
this.pendingCount = num2;
|
||||
int num3 = this.pendingCount;
|
||||
byte[] array2 = this.pending;
|
||||
int num4 = num3 + 1;
|
||||
this.pendingCount = num4;
|
||||
int num5 = this.pendingCount;
|
||||
byte[] array3 = this.pending;
|
||||
int num6 = num5 + 1;
|
||||
this.pendingCount = num6;
|
||||
int num7 = this.pendingCount;
|
||||
byte[] array4 = this.pending;
|
||||
int num8 = num7 + 1;
|
||||
this.pendingCount = num8;
|
||||
int num9 = this.pendingCount;
|
||||
byte[] array5 = this.pending;
|
||||
Array.Copy(this.window, buf, array5, num9, stored_len);
|
||||
}
|
||||
|
||||
// Token: 0x0600CD3C RID: 52540 RVA: 0x002EFCF4 File Offset: 0x002EDEF4
|
||||
[Token(Token = "0x600CD3C")]
|
||||
[Address(RVA = "0x1969BD0", Offset = "0x19689D0", VA = "0x181969BD0")]
|
||||
internal void _tr_flush_block(int buf, int stored_len, bool eof)
|
||||
{
|
||||
int num = 0;
|
||||
this.set_data_type();
|
||||
this.treeLiterals.build_tree(this);
|
||||
this.treeDistances.build_tree(this);
|
||||
int max_code = this.treeLiterals.max_code;
|
||||
short[] array = this.dyn_ltree;
|
||||
this.scan_tree(array, max_code);
|
||||
int max_code2 = this.treeDistances.max_code;
|
||||
short[] array2 = this.dyn_dtree;
|
||||
this.scan_tree(array2, max_code2);
|
||||
this.treeBitLengths.build_tree(this);
|
||||
int i = InternalConstants.BL_CODES;
|
||||
short[] array3 = this.bl_tree;
|
||||
sbyte[] bl_order = ZTree.bl_order;
|
||||
i++;
|
||||
if ("{il2cpp array field local22->}" == num)
|
||||
{
|
||||
while (i >= 3)
|
||||
{
|
||||
}
|
||||
}
|
||||
int num2 = this.static_len;
|
||||
i += i;
|
||||
num2 += 10;
|
||||
int num3 = this.opt_len;
|
||||
num3 += 10;
|
||||
if (num2 <= num3)
|
||||
{
|
||||
num3 = num2;
|
||||
}
|
||||
if (buf != -1)
|
||||
{
|
||||
num3 = buf;
|
||||
this._tr_stored_block(num3, stored_len, eof);
|
||||
}
|
||||
if (this != num3)
|
||||
{
|
||||
this.send_bits(num3, 3);
|
||||
ZTree ztree = this.treeLiterals;
|
||||
ZTree ztree2 = this.treeDistances;
|
||||
int num4 = i + 1;
|
||||
int max_code3 = ztree.max_code;
|
||||
this.send_bits(num3, 5);
|
||||
this.send_bits(num3, 5);
|
||||
this.send_bits(num3, 4);
|
||||
if (num4 > 0)
|
||||
{
|
||||
short[] array4 = this.bl_tree;
|
||||
sbyte[] bl_order2 = ZTree.bl_order;
|
||||
num++;
|
||||
this.send_bits(num3, 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[] distTreeCodes = StaticTree.distTreeCodes;
|
||||
short[] lengthAndLiteralsTreeCodes = StaticTree.lengthAndLiteralsTreeCodes;
|
||||
this.send_compressed_block(lengthAndLiteralsTreeCodes, distTreeCodes);
|
||||
this._InitializeBlocks();
|
||||
if (eof)
|
||||
{
|
||||
this.bi_windup();
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600CD3D RID: 52541 RVA: 0x002EFE94 File Offset: 0x002EE094
|
||||
[Token(Token = "0x600CD3D")]
|
||||
[Address(RVA = "0x19695B0", Offset = "0x19683B0", VA = "0x1819695B0")]
|
||||
private void _fillWindow()
|
||||
{
|
||||
do
|
||||
{
|
||||
int num = 0;
|
||||
int num2 = this.window_size;
|
||||
int num3 = this.strstart;
|
||||
num2 -= num3;
|
||||
int num4 = this.lookahead;
|
||||
num2 -= num4;
|
||||
int num7;
|
||||
if (num3 != 0 || num4 != 0 || this.w_size != -1)
|
||||
{
|
||||
int num5 = this.w_size;
|
||||
num5 += num5;
|
||||
byte[] array = this.window;
|
||||
int num6 = 0;
|
||||
num7 = this.w_size;
|
||||
Array.Copy(array, num7, array, num6, num7);
|
||||
int num8 = this.hash_size;
|
||||
num7 = num8;
|
||||
short[] array2 = this.head;
|
||||
short num9 = array2[num7];
|
||||
int num10 = this.w_size;
|
||||
num9 = (short)((int)num9 - num10);
|
||||
array2[0] = (short)num;
|
||||
int num11 = num8 - 1;
|
||||
while (num11 != 0)
|
||||
{
|
||||
}
|
||||
int num12 = this.w_size;
|
||||
num7 = num12;
|
||||
short[] array3 = this.prev;
|
||||
short num13 = array3[num7];
|
||||
int num14 = this.w_size;
|
||||
num13 = (short)((int)num13 - num14);
|
||||
array3[0] = (short)num;
|
||||
int num15 = num12 - 1;
|
||||
while (num15 != 0)
|
||||
{
|
||||
}
|
||||
}
|
||||
ZlibCodec codec = this._codec;
|
||||
if (codec.AvailableBytesIn == 0)
|
||||
{
|
||||
break;
|
||||
}
|
||||
int num16 = this.lookahead;
|
||||
byte[] array4 = this.window;
|
||||
int num17 = this.strstart;
|
||||
int num18 = codec.AvailableBytesIn;
|
||||
if (num18 != 0)
|
||||
{
|
||||
num18 -= num18;
|
||||
codec.AvailableBytesIn = num18;
|
||||
if (codec.dstate._WantRfc1950HeaderBytes)
|
||||
{
|
||||
uint adler = codec._Adler32;
|
||||
byte[] inputBuffer = codec.InputBuffer;
|
||||
uint num19 = Adler.Adler32(adler, inputBuffer, num7, num18);
|
||||
codec._Adler32 = num19;
|
||||
}
|
||||
int nextIn = codec.NextIn;
|
||||
num16 += num17;
|
||||
Array.Copy(codec.InputBuffer, nextIn, array4, num16, num18);
|
||||
}
|
||||
int num20 = this.lookahead;
|
||||
byte[] array5 = this.window;
|
||||
int num21 = this.strstart;
|
||||
byte b;
|
||||
this.ins_h = (int)b;
|
||||
int num22 = num21 + 1;
|
||||
this.ins_h = (int)b;
|
||||
int num23 = this.lookahead;
|
||||
}
|
||||
while (this._codec.AvailableBytesIn != 0);
|
||||
}
|
||||
|
||||
// Token: 0x0600CD3E RID: 52542 RVA: 0x002F008C File Offset: 0x002EE28C
|
||||
[Token(Token = "0x600CD3E")]
|
||||
[Address(RVA = "0x1966030", Offset = "0x1964E30", VA = "0x181966030")]
|
||||
internal BlockState DeflateFast(FlushType flush)
|
||||
{
|
||||
do
|
||||
{
|
||||
int num = this.lookahead;
|
||||
this._fillWindow();
|
||||
int num2 = this.lookahead;
|
||||
if (flush == FlushType.None)
|
||||
{
|
||||
break;
|
||||
}
|
||||
if (this.lookahead == 0)
|
||||
{
|
||||
break;
|
||||
}
|
||||
int num3 = this.lookahead;
|
||||
int num4 = this.ins_h;
|
||||
byte[] array = this.window;
|
||||
int num5 = this.strstart;
|
||||
int num6 = DeflateManager.MIN_MATCH;
|
||||
num6 += num5;
|
||||
short[] array2 = this.head;
|
||||
this.ins_h = num4;
|
||||
short num7 = array2[num4];
|
||||
short[] array3 = this.prev;
|
||||
int num8 = this.w_mask;
|
||||
array3[0] = num7;
|
||||
short[] array4 = this.head;
|
||||
num8 = this.ins_h;
|
||||
int num9 = this.strstart;
|
||||
array4[0] = (short)num9;
|
||||
int num10 = this.strstart;
|
||||
int num11 = this.w_size;
|
||||
num10 -= (int)num7;
|
||||
if (this.compressionStrategy != CompressionStrategy.HuffmanOnly)
|
||||
{
|
||||
int num12 = this.longest_match((int)num7);
|
||||
this.match_length = num12;
|
||||
}
|
||||
int num13 = this.match_length;
|
||||
byte[] array5 = this.window;
|
||||
int num14 = this.strstart;
|
||||
int num15 = 0;
|
||||
byte b;
|
||||
bool flag = this._tr_tally(num15, (int)b);
|
||||
int num16 = this.strstart;
|
||||
int num17 = this.strstart;
|
||||
int num18 = this.match_start;
|
||||
if (this.treeBitLengths == (ulong)0L)
|
||||
{
|
||||
}
|
||||
num17 -= num18;
|
||||
bool flag2 = this._tr_tally(num17, num16);
|
||||
int num19 = this.lookahead;
|
||||
flag = flag2;
|
||||
int num20 = this.match_length;
|
||||
num19 -= num20;
|
||||
DeflateManager.Config config = this.config;
|
||||
this.lookahead = num19;
|
||||
int num21 = this.strstart;
|
||||
int num22 = this.ins_h;
|
||||
byte[] array6 = this.window;
|
||||
int num23 = DeflateManager.MIN_MATCH;
|
||||
num23 += num21;
|
||||
short[] array7 = this.head;
|
||||
this.ins_h = num22;
|
||||
short num24 = array7[num22];
|
||||
short[] array8 = this.prev;
|
||||
int num25 = this.w_mask;
|
||||
array8[0] = num24;
|
||||
short[] array9 = this.head;
|
||||
int num26 = this.ins_h;
|
||||
int num27 = this.strstart;
|
||||
array9[0] = (short)num27;
|
||||
while (num26 != array9.Length)
|
||||
{
|
||||
}
|
||||
int num28 = this.strstart;
|
||||
int num29 = 0;
|
||||
byte[] array10 = this.window;
|
||||
this.strstart = num28;
|
||||
this.match_length = num29;
|
||||
byte b2;
|
||||
this.ins_h = (int)b2;
|
||||
num28++;
|
||||
this.ins_h = (int)b2;
|
||||
while (!flag)
|
||||
{
|
||||
}
|
||||
int num30 = this.block_start;
|
||||
num28 -= num30;
|
||||
int num31 = 0;
|
||||
this._tr_flush_block(num30, num28, num31 != 0);
|
||||
ZlibCodec codec = this._codec;
|
||||
int num32 = this.strstart;
|
||||
this.block_start = num32;
|
||||
codec.flush_pending();
|
||||
}
|
||||
while (this._codec.AvailableBytesOut != 0);
|
||||
int num33 = this.block_start;
|
||||
int num34 = this.strstart;
|
||||
bool flag3 = flush == FlushType.Finish;
|
||||
num34 -= num33;
|
||||
this._tr_flush_block(num33, num34, flag3);
|
||||
ZlibCodec codec2 = this._codec;
|
||||
int num35 = this.strstart;
|
||||
this.block_start = num35;
|
||||
codec2.flush_pending();
|
||||
if (this._codec.AvailableBytesOut != 0)
|
||||
{
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CD3F RID: 52543 RVA: 0x002F037C File Offset: 0x002EE57C
|
||||
[Token(Token = "0x600CD3F")]
|
||||
[Address(RVA = "0x1966940", Offset = "0x1965740", VA = "0x181966940")]
|
||||
internal BlockState DeflateSlow(FlushType flush)
|
||||
{
|
||||
int num = 0;
|
||||
int num2 = this.lookahead;
|
||||
this._fillWindow();
|
||||
int num3 = this.lookahead;
|
||||
if (flush != FlushType.None)
|
||||
{
|
||||
if (this.lookahead != 0)
|
||||
{
|
||||
int num4 = this.lookahead;
|
||||
int num5 = this.ins_h;
|
||||
byte[] array = this.window;
|
||||
int num6 = this.strstart;
|
||||
int num7 = DeflateManager.MIN_MATCH;
|
||||
num7 += num6;
|
||||
short[] array2 = this.head;
|
||||
this.ins_h = num5;
|
||||
short num8 = array2[num5];
|
||||
short[] array3 = this.prev;
|
||||
int num9 = this.w_mask;
|
||||
array3[0] = num8;
|
||||
short[] array4 = this.head;
|
||||
num9 = this.ins_h;
|
||||
int num10 = this.strstart;
|
||||
array4[0] = (short)num10;
|
||||
int num11 = this.match_length;
|
||||
this.prev_length = num11;
|
||||
int num12 = this.match_start;
|
||||
this.prev_match = num12;
|
||||
int min_MATCH = DeflateManager.MIN_MATCH;
|
||||
this.match_length = min_MATCH;
|
||||
int maxLazy = this.config.MaxLazy;
|
||||
if (this.prev_length < maxLazy)
|
||||
{
|
||||
int num13 = this.strstart;
|
||||
int num14 = this.w_size;
|
||||
num13 -= (int)num8;
|
||||
if (this.compressionStrategy != CompressionStrategy.HuffmanOnly)
|
||||
{
|
||||
int num15 = this.longest_match((int)num8);
|
||||
this.match_length = num15;
|
||||
}
|
||||
int num16 = this.match_length;
|
||||
if (this.compressionStrategy == CompressionStrategy.Filtered || this.strstart > 4096)
|
||||
{
|
||||
int min_MATCH2 = DeflateManager.MIN_MATCH;
|
||||
this.match_length = min_MATCH2;
|
||||
}
|
||||
}
|
||||
int num17 = this.prev_length;
|
||||
int num18 = this.prev_length;
|
||||
int num19 = this.strstart;
|
||||
int num20 = this.lookahead;
|
||||
int num21 = this.strstart;
|
||||
int num22 = this.prev_length;
|
||||
num20 += num19;
|
||||
bool flag = this._tr_tally(num21, num22);
|
||||
int num23 = this.prev_length;
|
||||
this.prev_length = 1;
|
||||
int num24 = this.strstart;
|
||||
num24++;
|
||||
this.strstart = num24;
|
||||
int num25 = this.ins_h;
|
||||
byte[] array5 = this.window;
|
||||
int num26 = DeflateManager.MIN_MATCH;
|
||||
num26 += num24;
|
||||
short[] array6 = this.head;
|
||||
this.ins_h = num25;
|
||||
short num27 = array6[num25];
|
||||
short[] array7 = this.prev;
|
||||
int num28 = this.w_mask;
|
||||
array7[0] = num27;
|
||||
short[] array8 = this.head;
|
||||
int num29 = this.ins_h;
|
||||
int num30 = this.strstart;
|
||||
array8[0] = (short)num30;
|
||||
while (num29 != array8.Length)
|
||||
{
|
||||
}
|
||||
int num31 = 0;
|
||||
this.match_available = num31;
|
||||
int num32 = this.strstart;
|
||||
num32++;
|
||||
int min_MATCH3 = DeflateManager.MIN_MATCH;
|
||||
this.strstart = num32;
|
||||
this.match_length = min_MATCH3;
|
||||
while (!flag)
|
||||
{
|
||||
}
|
||||
int num33 = this.block_start;
|
||||
num32 -= num33;
|
||||
int num34 = 0;
|
||||
this._tr_flush_block(num33, num32, num34 != 0);
|
||||
ZlibCodec codec = this._codec;
|
||||
int num35 = this.strstart;
|
||||
this.block_start = num35;
|
||||
codec.flush_pending();
|
||||
if (this._codec.AvailableBytesOut == num31)
|
||||
{
|
||||
goto IL_393;
|
||||
}
|
||||
if (this.match_available == 0)
|
||||
{
|
||||
this.match_available = 1;
|
||||
}
|
||||
byte[] array9 = this.window;
|
||||
int num36 = this.strstart;
|
||||
int num37 = 0;
|
||||
byte b;
|
||||
if (this._tr_tally(num37, (int)b))
|
||||
{
|
||||
int num38 = this.block_start;
|
||||
int num39 = this.strstart;
|
||||
int num40 = 0;
|
||||
num39 -= num38;
|
||||
this._tr_flush_block(num38, num39, num40 != 0);
|
||||
ZlibCodec codec2 = this._codec;
|
||||
int num41 = this.strstart;
|
||||
this.block_start = num41;
|
||||
codec2.flush_pending();
|
||||
}
|
||||
if (this._codec.AvailableBytesOut == 0)
|
||||
{
|
||||
goto IL_393;
|
||||
}
|
||||
}
|
||||
if (this.match_available != 0)
|
||||
{
|
||||
byte[] array10 = this.window;
|
||||
int num42 = this.strstart;
|
||||
int num43 = 0;
|
||||
byte b2;
|
||||
bool flag2 = this._tr_tally(num43, (int)b2);
|
||||
this.match_available = num;
|
||||
}
|
||||
bool flag3 = flush == FlushType.Finish;
|
||||
this.flush_block_only(flag3);
|
||||
if (this._codec.AvailableBytesOut != 0)
|
||||
{
|
||||
}
|
||||
}
|
||||
IL_393:
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CD40 RID: 52544 RVA: 0x002F0724 File Offset: 0x002EE924
|
||||
[Token(Token = "0x600CD40")]
|
||||
[Address(RVA = "0x196ABD0", Offset = "0x19699D0", VA = "0x18196ABD0")]
|
||||
internal int longest_match(int cur_match)
|
||||
{
|
||||
DeflateManager.Config config = this.config;
|
||||
int num = this.strstart;
|
||||
int num2 = this.prev_length;
|
||||
int num3 = this.w_size;
|
||||
if (num > num3)
|
||||
{
|
||||
int num4 = this.strstart;
|
||||
int num5 = this.w_size;
|
||||
int num6 = DeflateManager.MIN_LOOKAHEAD;
|
||||
num6 -= num5;
|
||||
num6 += num4;
|
||||
}
|
||||
int niceLength = this.config.NiceLength;
|
||||
int num7 = this.w_mask;
|
||||
int num8 = this.strstart;
|
||||
int num9 = this.window.Length;
|
||||
DeflateManager.Config config2 = this.config;
|
||||
int num10 = this.lookahead;
|
||||
if (niceLength <= num10)
|
||||
{
|
||||
}
|
||||
int num11 = this.prev_length;
|
||||
byte[] array = this.window;
|
||||
int num12 = array.Length;
|
||||
byte b;
|
||||
if ("{il2cpp array field local22->}" == b)
|
||||
{
|
||||
num9 = num;
|
||||
int num13 = num9 + 1;
|
||||
num += 2;
|
||||
num++;
|
||||
num9 = num12;
|
||||
int num14 = num9 + 1;
|
||||
byte b2 = array[num14];
|
||||
num++;
|
||||
int num15 = num + 1;
|
||||
num = num15;
|
||||
num15 = num12;
|
||||
num15 += 3;
|
||||
num++;
|
||||
int num16 = num + 1;
|
||||
num = num16;
|
||||
num16 = num12;
|
||||
num16 += 5;
|
||||
num++;
|
||||
int num17 = num + 1;
|
||||
num = num17;
|
||||
num17 = num12;
|
||||
num17 += 7;
|
||||
byte b3 = array[num17];
|
||||
int num18 = num + 1;
|
||||
num = num18;
|
||||
num12 += 8;
|
||||
int num19 = DeflateManager.MAX_MATCH;
|
||||
num19 -= num8;
|
||||
num19 += num;
|
||||
num = num8;
|
||||
num -= num19;
|
||||
if (num19 > num2)
|
||||
{
|
||||
num2 = num19;
|
||||
this.match_start = cur_match;
|
||||
int length = this.window.Length;
|
||||
int num20 = cur_match - 1;
|
||||
}
|
||||
}
|
||||
short[] array2 = this.prev;
|
||||
ulong num21;
|
||||
if ((ulong)array2[num7] > num21)
|
||||
{
|
||||
int num22 = niceLength - 1;
|
||||
while (num22 != 0)
|
||||
{
|
||||
}
|
||||
}
|
||||
int num23 = this.lookahead;
|
||||
if (num2 > num23)
|
||||
{
|
||||
num2 = num23;
|
||||
}
|
||||
return num2;
|
||||
}
|
||||
|
||||
// Token: 0x170020A0 RID: 8352
|
||||
// (get) Token: 0x0600CD41 RID: 52545 RVA: 0x002F08EC File Offset: 0x002EEAEC
|
||||
// (set) Token: 0x0600CD42 RID: 52546 RVA: 0x002F0900 File Offset: 0x002EEB00
|
||||
[Token(Token = "0x170020A0")]
|
||||
internal bool WantRfc1950HeaderBytes
|
||||
{
|
||||
[Token(Token = "0x600CD41")]
|
||||
[Address(RVA = "0x196ABC0", Offset = "0x19699C0", VA = "0x18196ABC0")]
|
||||
get
|
||||
{
|
||||
return this._WantRfc1950HeaderBytes;
|
||||
}
|
||||
[Token(Token = "0x600CD42")]
|
||||
[Address(RVA = "0x196C4A0", Offset = "0x196B2A0", VA = "0x18196C4A0")]
|
||||
set
|
||||
{
|
||||
this._WantRfc1950HeaderBytes = value;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600CD43 RID: 52547 RVA: 0x002F0914 File Offset: 0x002EEB14
|
||||
[Token(Token = "0x600CD43")]
|
||||
[Address(RVA = "0x1967CC0", Offset = "0x1966AC0", VA = "0x181967CC0")]
|
||||
internal int Initialize(ZlibCodec codec, CompressionLevel level)
|
||||
{
|
||||
int mem_LEVEL_DEFAULT = DeflateManager.MEM_LEVEL_DEFAULT;
|
||||
int num;
|
||||
return num;
|
||||
}
|
||||
|
||||
// Token: 0x0600CD44 RID: 52548 RVA: 0x002F092C File Offset: 0x002EEB2C
|
||||
[Token(Token = "0x600CD44")]
|
||||
[Address(RVA = "0x1967C10", Offset = "0x1966A10", VA = "0x181967C10")]
|
||||
internal int Initialize(ZlibCodec codec, CompressionLevel level, int bits)
|
||||
{
|
||||
int mem_LEVEL_DEFAULT = DeflateManager.MEM_LEVEL_DEFAULT;
|
||||
int num;
|
||||
return num;
|
||||
}
|
||||
|
||||
// Token: 0x0600CD45 RID: 52549 RVA: 0x002F0944 File Offset: 0x002EEB44
|
||||
[Token(Token = "0x600CD45")]
|
||||
[Address(RVA = "0x1968010", Offset = "0x1966E10", VA = "0x181968010")]
|
||||
internal int Initialize(ZlibCodec codec, CompressionLevel level, int bits, CompressionStrategy compressionStrategy)
|
||||
{
|
||||
int mem_LEVEL_DEFAULT = DeflateManager.MEM_LEVEL_DEFAULT;
|
||||
int num;
|
||||
return num;
|
||||
}
|
||||
|
||||
// Token: 0x0600CD46 RID: 52550 RVA: 0x002F0958 File Offset: 0x002EEB58
|
||||
[Token(Token = "0x600CD46")]
|
||||
[Address(RVA = "0x1967D60", Offset = "0x1966B60", VA = "0x181967D60")]
|
||||
internal int Initialize(ZlibCodec codec, CompressionLevel level, int windowBits, int memLevel, CompressionStrategy strategy)
|
||||
{
|
||||
this._codec = codec;
|
||||
codec.Message = (ulong)0L;
|
||||
this._codec.dstate = this;
|
||||
this.w_bits = windowBits;
|
||||
this.hash_bits = windowBits;
|
||||
uint num;
|
||||
this.w_size = (int)num;
|
||||
uint num2 = num - 1U;
|
||||
this.hash_size = (int)num;
|
||||
this.w_mask = (int)num2;
|
||||
uint num3 = num - 1U;
|
||||
this.hash_mask = (int)num3;
|
||||
int min_MATCH = DeflateManager.MIN_MATCH;
|
||||
int num4 = windowBits - 1;
|
||||
num4 += min_MATCH;
|
||||
this.hash_shift = num4;
|
||||
int num5 = 0;
|
||||
byte[] array = VariableSizedBufferPool.Get((long)num4, num5 != 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;
|
||||
this.lit_bufsize = (int)num;
|
||||
byte[] array4;
|
||||
this.pending = array4;
|
||||
int num8 = this.lit_bufsize;
|
||||
this._distanceOffset = num8;
|
||||
this.compressionLevel = level;
|
||||
this._lengthOffset = num8;
|
||||
this.compressionStrategy = CompressionStrategy.Default;
|
||||
this.Reset();
|
||||
return 0;
|
||||
}
|
||||
|
||||
// Token: 0x0600CD47 RID: 52551 RVA: 0x002F0A5C File Offset: 0x002EEC5C
|
||||
[Token(Token = "0x600CD47")]
|
||||
[Address(RVA = "0x19680C0", Offset = "0x1966EC0", VA = "0x1819680C0")]
|
||||
internal void Reset()
|
||||
{
|
||||
ZlibCodec codec = this._codec;
|
||||
int num = 0;
|
||||
codec.TotalBytesOut = (long)num;
|
||||
codec.TotalBytesIn = (long)num;
|
||||
this._codec.Message = num;
|
||||
this.nextPending = num;
|
||||
this.Rfc1950BytesEmitted = num != 0;
|
||||
if ((this._WantRfc1950HeaderBytes ? 1 : 0) != num)
|
||||
{
|
||||
}
|
||||
int busy_STATE = DeflateManager.BUSY_STATE;
|
||||
this.status = busy_STATE;
|
||||
this._codec._Adler32 = (uint)((ulong)1L);
|
||||
this.last_flush = num;
|
||||
ZTree ztree = this.treeLiterals;
|
||||
short[] array = this.dyn_ltree;
|
||||
ztree.dyn_tree = array;
|
||||
ZTree ztree2 = this.treeLiterals;
|
||||
StaticTree literals = StaticTree.Literals;
|
||||
ztree2.staticTree = literals;
|
||||
ZTree ztree3 = this.treeDistances;
|
||||
short[] array2 = this.dyn_dtree;
|
||||
ztree3.dyn_tree = array2;
|
||||
ZTree ztree4 = this.treeDistances;
|
||||
StaticTree distances = StaticTree.Distances;
|
||||
ztree4.staticTree = distances;
|
||||
ZTree ztree5 = this.treeBitLengths;
|
||||
short[] array3 = this.bl_tree;
|
||||
ztree5.dyn_tree = array3;
|
||||
ZTree ztree6 = this.treeBitLengths;
|
||||
StaticTree bitLengths = StaticTree.BitLengths;
|
||||
ztree6.staticTree = bitLengths;
|
||||
this.bi_buf = (short)num;
|
||||
this.bi_valid = num;
|
||||
this.last_eob_len = (int)((ulong)8L);
|
||||
this._InitializeBlocks();
|
||||
int num2 = this.w_size;
|
||||
int num3 = this.hash_size;
|
||||
num2 += num2;
|
||||
short[] array4 = this.head;
|
||||
int num4 = 0;
|
||||
this.window_size = num2;
|
||||
Array.Clear(array4, num4, num3);
|
||||
int num5 = (int)this.compressionLevel;
|
||||
DeflateManager.Config config;
|
||||
this.config = config;
|
||||
this.SetDeflater();
|
||||
this.strstart = num;
|
||||
this.block_start = num;
|
||||
this.lookahead = num;
|
||||
int min_MATCH = DeflateManager.MIN_MATCH;
|
||||
this.match_available = num;
|
||||
this.ins_h = num;
|
||||
this.prev_length = min_MATCH;
|
||||
this.match_length = min_MATCH;
|
||||
}
|
||||
|
||||
// Token: 0x0600CD48 RID: 52552 RVA: 0x002F0C00 File Offset: 0x002EEE00
|
||||
[Token(Token = "0x600CD48")]
|
||||
[Address(RVA = "0x1967AB0", Offset = "0x19668B0", VA = "0x181967AB0")]
|
||||
internal int End()
|
||||
{
|
||||
int num = this.status;
|
||||
int num2 = this.status;
|
||||
int num3 = this.status;
|
||||
return -2;
|
||||
}
|
||||
|
||||
// Token: 0x0600CD49 RID: 52553 RVA: 0x002F0C2C File Offset: 0x002EEE2C
|
||||
[Token(Token = "0x600CD49")]
|
||||
[Address(RVA = "0x19683E0", Offset = "0x19671E0", VA = "0x1819683E0")]
|
||||
private void SetDeflater()
|
||||
{
|
||||
DeflateFlavor flavor = this.config.Flavor;
|
||||
if (flavor == DeflateFlavor.Store || flavor == DeflateFlavor.Store || flavor == DeflateFlavor.Fast)
|
||||
{
|
||||
DeflateManager.CompressFunc compressFunc;
|
||||
compressFunc.method_ptr = ldftn(DeflateNone);
|
||||
compressFunc.method = ldftn(DeflateNone);
|
||||
compressFunc.m_target = this;
|
||||
this.DeflateFunction = compressFunc;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600CD4A RID: 52554 RVA: 0x002F0C80 File Offset: 0x002EEE80
|
||||
[Token(Token = "0x600CD4A")]
|
||||
[Address(RVA = "0x1968830", Offset = "0x1967630", VA = "0x181968830")]
|
||||
internal int SetParams(CompressionLevel level, CompressionStrategy strategy)
|
||||
{
|
||||
int num = 0;
|
||||
if (this.compressionLevel != level)
|
||||
{
|
||||
DeflateFlavor flavor = this.config.Flavor;
|
||||
DeflateManager.Config config;
|
||||
if (config.Flavor != flavor)
|
||||
{
|
||||
ZlibCodec codec = this._codec;
|
||||
if (codec.TotalBytesIn != (long)num)
|
||||
{
|
||||
int num2 = codec.Deflate(FlushType.Partial);
|
||||
}
|
||||
}
|
||||
this.compressionLevel = level;
|
||||
this.config = config;
|
||||
this.SetDeflater();
|
||||
}
|
||||
this.compressionStrategy = strategy;
|
||||
return num;
|
||||
}
|
||||
|
||||
// Token: 0x0600CD4B RID: 52555 RVA: 0x002F0CF4 File Offset: 0x002EEEF4
|
||||
[Token(Token = "0x600CD4B")]
|
||||
[Address(RVA = "0x1968480", Offset = "0x1967280", VA = "0x181968480")]
|
||||
internal int SetDictionary(byte[] dictionary)
|
||||
{
|
||||
int num = 0;
|
||||
int length = dictionary.Length;
|
||||
int num2 = this.status;
|
||||
ZlibCodec codec = this._codec;
|
||||
uint adler = codec._Adler32;
|
||||
int length2 = dictionary.Length;
|
||||
int num3 = 0;
|
||||
uint num4 = Adler.Adler32(adler, dictionary, num3, length2);
|
||||
codec._Adler32 = num4;
|
||||
int num5 = this.w_size;
|
||||
if (length > num5)
|
||||
{
|
||||
int num6 = this.w_size;
|
||||
int num7 = dictionary.Length;
|
||||
num7 -= num6;
|
||||
}
|
||||
byte[] array = this.window;
|
||||
int num8 = 0;
|
||||
Array.Copy(dictionary, num, array, num8, length);
|
||||
byte[] array2 = this.window;
|
||||
this.strstart = length;
|
||||
this.block_start = length;
|
||||
byte b = array2[0];
|
||||
this.ins_h = (int)b;
|
||||
this.ins_h = (int)b;
|
||||
int num9 = this.ins_h;
|
||||
byte[] array3 = this.window;
|
||||
int num10 = DeflateManager.MIN_MATCH;
|
||||
num10 += num;
|
||||
short[] array4 = this.head;
|
||||
this.ins_h = num9;
|
||||
short[] array5 = this.prev;
|
||||
int num11 = this.w_mask;
|
||||
short num12 = array4[num9];
|
||||
array5[0] = num12;
|
||||
short[] array6 = this.head;
|
||||
int num13 = this.ins_h;
|
||||
array6[0] = (short)num;
|
||||
num++;
|
||||
return 0;
|
||||
}
|
||||
|
||||
// Token: 0x0600CD4C RID: 52556 RVA: 0x002F0E24 File Offset: 0x002EF024
|
||||
[Token(Token = "0x600CD4C")]
|
||||
[Address(RVA = "0x1967160", Offset = "0x1965F60", VA = "0x181967160")]
|
||||
internal int Deflate(FlushType flush)
|
||||
{
|
||||
for (;;)
|
||||
{
|
||||
ZlibCodec codec = this._codec;
|
||||
if (codec.OutputBuffer != (ulong)0L && (codec.InputBuffer != (ulong)0L || codec.AvailableBytesIn == 0))
|
||||
{
|
||||
int num = this.status;
|
||||
if (flush == FlushType.Finish && this._codec.AvailableBytesOut != 0)
|
||||
{
|
||||
int num2 = this.last_flush;
|
||||
int num3 = this.status;
|
||||
this.last_flush = (int)flush;
|
||||
CompressionLevel compressionLevel = this.compressionLevel;
|
||||
if (this.strstart != 0)
|
||||
{
|
||||
int preset_DICT = DeflateManager.PRESET_DICT;
|
||||
}
|
||||
ulong num4;
|
||||
num4 += (ulong)1L;
|
||||
num4 += num4;
|
||||
long num5 = (long)(num4 * (ulong)((uint)31));
|
||||
int num6 = this.pendingCount;
|
||||
byte[] array = this.pending;
|
||||
int busy_STATE = DeflateManager.BUSY_STATE;
|
||||
this.status = busy_STATE;
|
||||
int num7 = num6 + 1;
|
||||
this.pendingCount = num7;
|
||||
int num8 = this.pendingCount;
|
||||
byte[] array2 = this.pending;
|
||||
int num9 = num8 + 1;
|
||||
this.pendingCount = num9;
|
||||
if (this.strstart != 0)
|
||||
{
|
||||
int num10 = this.pendingCount;
|
||||
byte[] array3 = this.pending;
|
||||
int num11 = num10 + 1;
|
||||
this.pendingCount = num11;
|
||||
uint adler = this._codec._Adler32;
|
||||
int num12 = this.pendingCount;
|
||||
byte[] array4 = this.pending;
|
||||
int num13 = num12 + 1;
|
||||
this.pendingCount = num13;
|
||||
uint adler2 = this._codec._Adler32;
|
||||
int num14 = this.pendingCount;
|
||||
byte[] array5 = this.pending;
|
||||
int num15 = num14 + 1;
|
||||
this.pendingCount = num15;
|
||||
uint adler3 = this._codec._Adler32;
|
||||
int num16 = this.pendingCount;
|
||||
byte[] array6 = this.pending;
|
||||
int num17 = num16 + 1;
|
||||
this.pendingCount = num17;
|
||||
uint adler4 = this._codec._Adler32;
|
||||
}
|
||||
this._codec._Adler32 = (uint)((ulong)1L);
|
||||
ZlibCodec codec2 = this._codec;
|
||||
if (this.Z_ASCII != 0 || (codec2.AvailableBytesIn == 0 && flush != FlushType.Finish))
|
||||
{
|
||||
codec2.flush_pending();
|
||||
if (this._codec.AvailableBytesOut == 0)
|
||||
{
|
||||
goto IL_38C;
|
||||
}
|
||||
}
|
||||
int num18 = this.status;
|
||||
if (this._codec.AvailableBytesIn == 0)
|
||||
{
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if (this._codec.AvailableBytesIn == 0 && this.lookahead == 0)
|
||||
{
|
||||
if (flush == FlushType.None)
|
||||
{
|
||||
goto IL_2A6;
|
||||
}
|
||||
int num19 = this.status;
|
||||
}
|
||||
DeflateManager.CompressFunc deflateFunction = this.DeflateFunction;
|
||||
BlockState blockState;
|
||||
int num20 = (int)blockState;
|
||||
if (blockState == BlockState.FinishStarted || blockState == BlockState.FinishDone)
|
||||
{
|
||||
int finish_STATE = DeflateManager.FINISH_STATE;
|
||||
this.status = finish_STATE;
|
||||
}
|
||||
if (num20 == 0 || num20 == 2)
|
||||
{
|
||||
goto IL_38C;
|
||||
}
|
||||
if (num20 == 1)
|
||||
{
|
||||
if (flush != (FlushType)num20)
|
||||
{
|
||||
int num21 = 0;
|
||||
int num22 = 0;
|
||||
int num23 = 0;
|
||||
int num24 = 0;
|
||||
this._tr_stored_block(num24, num23, num22 != 0);
|
||||
if (flush == FlushType.Full && this.hash_size > num21)
|
||||
{
|
||||
short[] array7 = this.head;
|
||||
num21++;
|
||||
array7[0] = (short)num21;
|
||||
}
|
||||
}
|
||||
this._codec.flush_pending();
|
||||
if (this._codec.AvailableBytesOut == 0)
|
||||
{
|
||||
goto IL_38C;
|
||||
}
|
||||
}
|
||||
IL_2A6:
|
||||
if (flush == FlushType.Finish && this._WantRfc1950HeaderBytes && !this.Rfc1950BytesEmitted)
|
||||
{
|
||||
int num25 = this.pendingCount;
|
||||
byte[] array8 = this.pending;
|
||||
int num26 = num25 + 1;
|
||||
this.pendingCount = num26;
|
||||
uint adler5 = this._codec._Adler32;
|
||||
int num27 = this.pendingCount;
|
||||
byte[] array9 = this.pending;
|
||||
int num28 = num27 + 1;
|
||||
this.pendingCount = num28;
|
||||
uint adler6 = this._codec._Adler32;
|
||||
int num29 = this.pendingCount;
|
||||
byte[] array10 = this.pending;
|
||||
int num30 = num29 + 1;
|
||||
this.pendingCount = num30;
|
||||
uint adler7 = this._codec._Adler32;
|
||||
int num31 = this.pendingCount;
|
||||
byte[] array11 = this.pending;
|
||||
int num32 = num31 + 1;
|
||||
this.pendingCount = num32;
|
||||
uint adler8 = this._codec._Adler32;
|
||||
this._codec.flush_pending();
|
||||
this.Rfc1950BytesEmitted = true;
|
||||
if (this.Z_ASCII == 0)
|
||||
{
|
||||
}
|
||||
}
|
||||
IL_38C:
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CD4D RID: 52557 RVA: 0x002F11C4 File Offset: 0x002EF3C4
|
||||
// Note: this type is marked as 'beforefieldinit'.
|
||||
[Token(Token = "0x600CD4D")]
|
||||
[Address(RVA = "0x1968E30", Offset = "0x1967C30", VA = "0x181968E30")]
|
||||
static DeflateManager()
|
||||
{
|
||||
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] = "";
|
||||
int num = 0;
|
||||
DeflateManager._ErrorMessage = array;
|
||||
DeflateManager.STORED_BLOCK = num;
|
||||
DeflateManager.Z_BINARY = num;
|
||||
int num2 = DeflateManager.MIN_MATCH;
|
||||
int num3 = DeflateManager.MAX_MATCH;
|
||||
num2++;
|
||||
num3 += num2;
|
||||
DeflateManager.MIN_LOOKAHEAD = num3;
|
||||
}
|
||||
|
||||
// Token: 0x04008296 RID: 33430
|
||||
[Token(Token = "0x4008296")]
|
||||
private static readonly int MEM_LEVEL_MAX;
|
||||
|
||||
// Token: 0x04008297 RID: 33431
|
||||
[Token(Token = "0x4008297")]
|
||||
private static readonly int MEM_LEVEL_DEFAULT;
|
||||
|
||||
// Token: 0x04008298 RID: 33432
|
||||
[FieldOffset(Offset = "0x10")]
|
||||
[Token(Token = "0x4008298")]
|
||||
private DeflateManager.CompressFunc DeflateFunction;
|
||||
|
||||
// Token: 0x04008299 RID: 33433
|
||||
[Token(Token = "0x4008299")]
|
||||
private static readonly string[] _ErrorMessage;
|
||||
|
||||
// Token: 0x0400829A RID: 33434
|
||||
[Token(Token = "0x400829A")]
|
||||
private static readonly int PRESET_DICT;
|
||||
|
||||
// Token: 0x0400829B RID: 33435
|
||||
[Token(Token = "0x400829B")]
|
||||
private static readonly int INIT_STATE;
|
||||
|
||||
// Token: 0x0400829C RID: 33436
|
||||
[Token(Token = "0x400829C")]
|
||||
private static readonly int BUSY_STATE;
|
||||
|
||||
// Token: 0x0400829D RID: 33437
|
||||
[Token(Token = "0x400829D")]
|
||||
private static readonly int FINISH_STATE;
|
||||
|
||||
// Token: 0x0400829E RID: 33438
|
||||
[Token(Token = "0x400829E")]
|
||||
private static readonly int Z_DEFLATED;
|
||||
|
||||
// Token: 0x0400829F RID: 33439
|
||||
[Token(Token = "0x400829F")]
|
||||
private static readonly int STORED_BLOCK;
|
||||
|
||||
// Token: 0x040082A0 RID: 33440
|
||||
[Token(Token = "0x40082A0")]
|
||||
private static readonly int STATIC_TREES;
|
||||
|
||||
// Token: 0x040082A1 RID: 33441
|
||||
[Token(Token = "0x40082A1")]
|
||||
private static readonly int DYN_TREES;
|
||||
|
||||
// Token: 0x040082A2 RID: 33442
|
||||
[Token(Token = "0x40082A2")]
|
||||
private static readonly int Z_BINARY;
|
||||
|
||||
// Token: 0x040082A3 RID: 33443
|
||||
[Token(Token = "0x40082A3")]
|
||||
private static readonly int Z_ASCII;
|
||||
|
||||
// Token: 0x040082A4 RID: 33444
|
||||
[Token(Token = "0x40082A4")]
|
||||
private static readonly int Z_UNKNOWN;
|
||||
|
||||
// Token: 0x040082A5 RID: 33445
|
||||
[Token(Token = "0x40082A5")]
|
||||
private static readonly int Buf_size;
|
||||
|
||||
// Token: 0x040082A6 RID: 33446
|
||||
[Token(Token = "0x40082A6")]
|
||||
private static readonly int MIN_MATCH;
|
||||
|
||||
// Token: 0x040082A7 RID: 33447
|
||||
[Token(Token = "0x40082A7")]
|
||||
private static readonly int MAX_MATCH;
|
||||
|
||||
// Token: 0x040082A8 RID: 33448
|
||||
[Token(Token = "0x40082A8")]
|
||||
private static readonly int MIN_LOOKAHEAD;
|
||||
|
||||
// Token: 0x040082A9 RID: 33449
|
||||
[Token(Token = "0x40082A9")]
|
||||
private static readonly int HEAP_SIZE;
|
||||
|
||||
// Token: 0x040082AA RID: 33450
|
||||
[Token(Token = "0x40082AA")]
|
||||
private static readonly int END_BLOCK;
|
||||
|
||||
// Token: 0x040082AB RID: 33451
|
||||
[FieldOffset(Offset = "0x18")]
|
||||
[Token(Token = "0x40082AB")]
|
||||
internal ZlibCodec _codec;
|
||||
|
||||
// Token: 0x040082AC RID: 33452
|
||||
[FieldOffset(Offset = "0x20")]
|
||||
[Token(Token = "0x40082AC")]
|
||||
internal int status;
|
||||
|
||||
// Token: 0x040082AD RID: 33453
|
||||
[FieldOffset(Offset = "0x28")]
|
||||
[Token(Token = "0x40082AD")]
|
||||
internal byte[] pending;
|
||||
|
||||
// Token: 0x040082AE RID: 33454
|
||||
[FieldOffset(Offset = "0x30")]
|
||||
[Token(Token = "0x40082AE")]
|
||||
internal int nextPending;
|
||||
|
||||
// Token: 0x040082AF RID: 33455
|
||||
[FieldOffset(Offset = "0x34")]
|
||||
[Token(Token = "0x40082AF")]
|
||||
internal int pendingCount;
|
||||
|
||||
// Token: 0x040082B0 RID: 33456
|
||||
[FieldOffset(Offset = "0x38")]
|
||||
[Token(Token = "0x40082B0")]
|
||||
internal sbyte data_type;
|
||||
|
||||
// Token: 0x040082B1 RID: 33457
|
||||
[FieldOffset(Offset = "0x3C")]
|
||||
[Token(Token = "0x40082B1")]
|
||||
internal int last_flush;
|
||||
|
||||
// Token: 0x040082B2 RID: 33458
|
||||
[FieldOffset(Offset = "0x40")]
|
||||
[Token(Token = "0x40082B2")]
|
||||
internal int w_size;
|
||||
|
||||
// Token: 0x040082B3 RID: 33459
|
||||
[FieldOffset(Offset = "0x44")]
|
||||
[Token(Token = "0x40082B3")]
|
||||
internal int w_bits;
|
||||
|
||||
// Token: 0x040082B4 RID: 33460
|
||||
[FieldOffset(Offset = "0x48")]
|
||||
[Token(Token = "0x40082B4")]
|
||||
internal int w_mask;
|
||||
|
||||
// Token: 0x040082B5 RID: 33461
|
||||
[FieldOffset(Offset = "0x50")]
|
||||
[Token(Token = "0x40082B5")]
|
||||
internal byte[] window;
|
||||
|
||||
// Token: 0x040082B6 RID: 33462
|
||||
[FieldOffset(Offset = "0x58")]
|
||||
[Token(Token = "0x40082B6")]
|
||||
internal int window_size;
|
||||
|
||||
// Token: 0x040082B7 RID: 33463
|
||||
[FieldOffset(Offset = "0x60")]
|
||||
[Token(Token = "0x40082B7")]
|
||||
internal short[] prev;
|
||||
|
||||
// Token: 0x040082B8 RID: 33464
|
||||
[FieldOffset(Offset = "0x68")]
|
||||
[Token(Token = "0x40082B8")]
|
||||
internal short[] head;
|
||||
|
||||
// Token: 0x040082B9 RID: 33465
|
||||
[FieldOffset(Offset = "0x70")]
|
||||
[Token(Token = "0x40082B9")]
|
||||
internal int ins_h;
|
||||
|
||||
// Token: 0x040082BA RID: 33466
|
||||
[FieldOffset(Offset = "0x74")]
|
||||
[Token(Token = "0x40082BA")]
|
||||
internal int hash_size;
|
||||
|
||||
// Token: 0x040082BB RID: 33467
|
||||
[FieldOffset(Offset = "0x78")]
|
||||
[Token(Token = "0x40082BB")]
|
||||
internal int hash_bits;
|
||||
|
||||
// Token: 0x040082BC RID: 33468
|
||||
[FieldOffset(Offset = "0x7C")]
|
||||
[Token(Token = "0x40082BC")]
|
||||
internal int hash_mask;
|
||||
|
||||
// Token: 0x040082BD RID: 33469
|
||||
[FieldOffset(Offset = "0x80")]
|
||||
[Token(Token = "0x40082BD")]
|
||||
internal int hash_shift;
|
||||
|
||||
// Token: 0x040082BE RID: 33470
|
||||
[FieldOffset(Offset = "0x84")]
|
||||
[Token(Token = "0x40082BE")]
|
||||
internal int block_start;
|
||||
|
||||
// Token: 0x040082BF RID: 33471
|
||||
[FieldOffset(Offset = "0x88")]
|
||||
[Token(Token = "0x40082BF")]
|
||||
private DeflateManager.Config config;
|
||||
|
||||
// Token: 0x040082C0 RID: 33472
|
||||
[FieldOffset(Offset = "0x90")]
|
||||
[Token(Token = "0x40082C0")]
|
||||
internal int match_length;
|
||||
|
||||
// Token: 0x040082C1 RID: 33473
|
||||
[FieldOffset(Offset = "0x94")]
|
||||
[Token(Token = "0x40082C1")]
|
||||
internal int prev_match;
|
||||
|
||||
// Token: 0x040082C2 RID: 33474
|
||||
[FieldOffset(Offset = "0x98")]
|
||||
[Token(Token = "0x40082C2")]
|
||||
internal int match_available;
|
||||
|
||||
// Token: 0x040082C3 RID: 33475
|
||||
[FieldOffset(Offset = "0x9C")]
|
||||
[Token(Token = "0x40082C3")]
|
||||
internal int strstart;
|
||||
|
||||
// Token: 0x040082C4 RID: 33476
|
||||
[FieldOffset(Offset = "0xA0")]
|
||||
[Token(Token = "0x40082C4")]
|
||||
internal int match_start;
|
||||
|
||||
// Token: 0x040082C5 RID: 33477
|
||||
[FieldOffset(Offset = "0xA4")]
|
||||
[Token(Token = "0x40082C5")]
|
||||
internal int lookahead;
|
||||
|
||||
// Token: 0x040082C6 RID: 33478
|
||||
[FieldOffset(Offset = "0xA8")]
|
||||
[Token(Token = "0x40082C6")]
|
||||
internal int prev_length;
|
||||
|
||||
// Token: 0x040082C7 RID: 33479
|
||||
[FieldOffset(Offset = "0xAC")]
|
||||
[Token(Token = "0x40082C7")]
|
||||
internal CompressionLevel compressionLevel;
|
||||
|
||||
// Token: 0x040082C8 RID: 33480
|
||||
[FieldOffset(Offset = "0xB0")]
|
||||
[Token(Token = "0x40082C8")]
|
||||
internal CompressionStrategy compressionStrategy;
|
||||
|
||||
// Token: 0x040082C9 RID: 33481
|
||||
[FieldOffset(Offset = "0xB8")]
|
||||
[Token(Token = "0x40082C9")]
|
||||
internal short[] dyn_ltree;
|
||||
|
||||
// Token: 0x040082CA RID: 33482
|
||||
[FieldOffset(Offset = "0xC0")]
|
||||
[Token(Token = "0x40082CA")]
|
||||
internal short[] dyn_dtree;
|
||||
|
||||
// Token: 0x040082CB RID: 33483
|
||||
[FieldOffset(Offset = "0xC8")]
|
||||
[Token(Token = "0x40082CB")]
|
||||
internal short[] bl_tree;
|
||||
|
||||
// Token: 0x040082CC RID: 33484
|
||||
[FieldOffset(Offset = "0xD0")]
|
||||
[Token(Token = "0x40082CC")]
|
||||
internal ZTree treeLiterals;
|
||||
|
||||
// Token: 0x040082CD RID: 33485
|
||||
[FieldOffset(Offset = "0xD8")]
|
||||
[Token(Token = "0x40082CD")]
|
||||
internal ZTree treeDistances;
|
||||
|
||||
// Token: 0x040082CE RID: 33486
|
||||
[FieldOffset(Offset = "0xE0")]
|
||||
[Token(Token = "0x40082CE")]
|
||||
internal ZTree treeBitLengths;
|
||||
|
||||
// Token: 0x040082CF RID: 33487
|
||||
[FieldOffset(Offset = "0xE8")]
|
||||
[Token(Token = "0x40082CF")]
|
||||
internal short[] bl_count;
|
||||
|
||||
// Token: 0x040082D0 RID: 33488
|
||||
[FieldOffset(Offset = "0xF0")]
|
||||
[Token(Token = "0x40082D0")]
|
||||
internal int[] heap;
|
||||
|
||||
// Token: 0x040082D1 RID: 33489
|
||||
[FieldOffset(Offset = "0xF8")]
|
||||
[Token(Token = "0x40082D1")]
|
||||
internal int heap_len;
|
||||
|
||||
// Token: 0x040082D2 RID: 33490
|
||||
[FieldOffset(Offset = "0xFC")]
|
||||
[Token(Token = "0x40082D2")]
|
||||
internal int heap_max;
|
||||
|
||||
// Token: 0x040082D3 RID: 33491
|
||||
[FieldOffset(Offset = "0x100")]
|
||||
[Token(Token = "0x40082D3")]
|
||||
internal sbyte[] depth;
|
||||
|
||||
// Token: 0x040082D4 RID: 33492
|
||||
[FieldOffset(Offset = "0x108")]
|
||||
[Token(Token = "0x40082D4")]
|
||||
internal int _lengthOffset;
|
||||
|
||||
// Token: 0x040082D5 RID: 33493
|
||||
[FieldOffset(Offset = "0x10C")]
|
||||
[Token(Token = "0x40082D5")]
|
||||
internal int lit_bufsize;
|
||||
|
||||
// Token: 0x040082D6 RID: 33494
|
||||
[FieldOffset(Offset = "0x110")]
|
||||
[Token(Token = "0x40082D6")]
|
||||
internal int last_lit;
|
||||
|
||||
// Token: 0x040082D7 RID: 33495
|
||||
[FieldOffset(Offset = "0x114")]
|
||||
[Token(Token = "0x40082D7")]
|
||||
internal int _distanceOffset;
|
||||
|
||||
// Token: 0x040082D8 RID: 33496
|
||||
[FieldOffset(Offset = "0x118")]
|
||||
[Token(Token = "0x40082D8")]
|
||||
internal int opt_len;
|
||||
|
||||
// Token: 0x040082D9 RID: 33497
|
||||
[FieldOffset(Offset = "0x11C")]
|
||||
[Token(Token = "0x40082D9")]
|
||||
internal int static_len;
|
||||
|
||||
// Token: 0x040082DA RID: 33498
|
||||
[FieldOffset(Offset = "0x120")]
|
||||
[Token(Token = "0x40082DA")]
|
||||
internal int matches;
|
||||
|
||||
// Token: 0x040082DB RID: 33499
|
||||
[FieldOffset(Offset = "0x124")]
|
||||
[Token(Token = "0x40082DB")]
|
||||
internal int last_eob_len;
|
||||
|
||||
// Token: 0x040082DC RID: 33500
|
||||
[FieldOffset(Offset = "0x128")]
|
||||
[Token(Token = "0x40082DC")]
|
||||
internal short bi_buf;
|
||||
|
||||
// Token: 0x040082DD RID: 33501
|
||||
[FieldOffset(Offset = "0x12C")]
|
||||
[Token(Token = "0x40082DD")]
|
||||
internal int bi_valid;
|
||||
|
||||
// Token: 0x040082DE RID: 33502
|
||||
[FieldOffset(Offset = "0x130")]
|
||||
[Token(Token = "0x40082DE")]
|
||||
private bool Rfc1950BytesEmitted;
|
||||
|
||||
// Token: 0x040082DF RID: 33503
|
||||
[FieldOffset(Offset = "0x131")]
|
||||
[Token(Token = "0x40082DF")]
|
||||
private bool _WantRfc1950HeaderBytes;
|
||||
|
||||
// Token: 0x02001FA3 RID: 8099
|
||||
[Token(Token = "0x2001FA3")]
|
||||
internal sealed class CompressFunc : MulticastDelegate
|
||||
{
|
||||
// Token: 0x0600CD4E RID: 52558 RVA: 0x002F12DC File Offset: 0x002EF4DC
|
||||
[Token(Token = "0x600CD4E")]
|
||||
[Address(RVA = "0x448ED0", Offset = "0x447CD0", VA = "0x180448ED0")]
|
||||
public CompressFunc(object @object, IntPtr method)
|
||||
{
|
||||
this.method = method;
|
||||
this.m_target = @object;
|
||||
}
|
||||
|
||||
// Token: 0x0600CD4F RID: 52559 RVA: 0x002F12F8 File Offset: 0x002EF4F8
|
||||
[Token(Token = "0x600CD4F")]
|
||||
[Address(RVA = "0x1960B40", Offset = "0x195F940", VA = "0x181960B40", Slot = "13")]
|
||||
public BlockState Invoke(FlushType flush)
|
||||
{
|
||||
uint num;
|
||||
do
|
||||
{
|
||||
Delegate[] delegates = this.delegates;
|
||||
if (delegates != 0)
|
||||
{
|
||||
}
|
||||
}
|
||||
while (num == (uint)0);
|
||||
throw new ExecutionEngineException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CD50 RID: 52560 RVA: 0x002F137C File Offset: 0x002EF57C
|
||||
[Token(Token = "0x600CD50")]
|
||||
[Address(RVA = "0x1960AC0", Offset = "0x195F8C0", VA = "0x181960AC0", Slot = "14")]
|
||||
public IAsyncResult BeginInvoke(FlushType flush, AsyncCallback callback, object @object)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0600CD51 RID: 52561 RVA: 0x002F138C File Offset: 0x002EF58C
|
||||
[Token(Token = "0x600CD51")]
|
||||
[Address(RVA = "0x458BC0", Offset = "0x4579C0", VA = "0x180458BC0", Slot = "15")]
|
||||
public BlockState EndInvoke(IAsyncResult result)
|
||||
{
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x02001FA4 RID: 8100
|
||||
[Token(Token = "0x2001FA4")]
|
||||
internal class Config
|
||||
{
|
||||
// Token: 0x0600CD52 RID: 52562 RVA: 0x002F13A0 File Offset: 0x002EF5A0
|
||||
[Token(Token = "0x600CD52")]
|
||||
[Address(RVA = "0x18D7470", Offset = "0x18D6270", VA = "0x1818D7470")]
|
||||
private Config(int goodLength, int maxLazy, int niceLength, int maxChainLength, DeflateFlavor flavor)
|
||||
{
|
||||
this.MaxChainLength = 0;
|
||||
this.GoodLength = goodLength;
|
||||
this.NiceLength = niceLength;
|
||||
this.Flavor = DeflateFlavor.Store;
|
||||
this.MaxLazy = maxLazy;
|
||||
}
|
||||
|
||||
// Token: 0x0600CD53 RID: 52563 RVA: 0x002F13D8 File Offset: 0x002EF5D8
|
||||
[Token(Token = "0x600CD53")]
|
||||
[Address(RVA = "0x1960E20", Offset = "0x195FC20", VA = "0x181960E20")]
|
||||
public static DeflateManager.Config Lookup(CompressionLevel level)
|
||||
{
|
||||
return DeflateManager.Config.Table[(int)level];
|
||||
}
|
||||
|
||||
// Token: 0x0600CD54 RID: 52564 RVA: 0x002F13F8 File Offset: 0x002EF5F8
|
||||
[Token(Token = "0x600CD54")]
|
||||
[Address(RVA = "0x1960EB0", Offset = "0x195FCB0", VA = "0x181960EB0")]
|
||||
static Config()
|
||||
{
|
||||
DeflateManager.Config[] array = new DeflateManager.Config[10];
|
||||
int num = 0;
|
||||
DeflateManager.Config config;
|
||||
config.GoodLength = num;
|
||||
config.NiceLength = num;
|
||||
config.Flavor = (DeflateFlavor)num;
|
||||
array[0] = config;
|
||||
DeflateManager.Config config2;
|
||||
config2.GoodLength = (int)((ulong)4L);
|
||||
config2.MaxLazy = (int)((ulong)4L);
|
||||
config2.NiceLength = (int)((ulong)8L);
|
||||
config2.MaxChainLength = (int)((ulong)4L);
|
||||
config2.Flavor = (DeflateFlavor)((ulong)1L);
|
||||
array[1] = config2;
|
||||
DeflateManager.Config config3;
|
||||
config3.GoodLength = (int)((ulong)4L);
|
||||
config3.MaxLazy = (int)((ulong)5L);
|
||||
config3.NiceLength = (int)((ulong)16L);
|
||||
config3.MaxChainLength = (int)((ulong)8L);
|
||||
config3.Flavor = (DeflateFlavor)((ulong)1L);
|
||||
array[2] = config3;
|
||||
DeflateManager.Config config4;
|
||||
config4.GoodLength = (int)((ulong)4L);
|
||||
config4.MaxLazy = (int)((ulong)6L);
|
||||
config4.NiceLength = (int)((ulong)32L);
|
||||
config4.MaxChainLength = (int)((ulong)32L);
|
||||
config4.Flavor = (DeflateFlavor)((ulong)1L);
|
||||
array[3] = config4;
|
||||
DeflateManager.Config config5;
|
||||
config5.GoodLength = (int)((ulong)4L);
|
||||
config5.MaxLazy = (int)((ulong)4L);
|
||||
config5.NiceLength = (int)((ulong)16L);
|
||||
config5.MaxChainLength = (int)((ulong)16L);
|
||||
config5.Flavor = (DeflateFlavor)((ulong)2L);
|
||||
array[4] = config5;
|
||||
DeflateManager.Config config6;
|
||||
config6.GoodLength = (int)((ulong)8L);
|
||||
config6.MaxLazy = (int)((ulong)16L);
|
||||
config6.NiceLength = (int)((ulong)32L);
|
||||
config6.MaxChainLength = (int)((ulong)32L);
|
||||
config6.Flavor = (DeflateFlavor)((ulong)2L);
|
||||
array[5] = config6;
|
||||
DeflateManager.Config config7;
|
||||
config7.GoodLength = (int)((ulong)8L);
|
||||
config7.MaxLazy = (int)((ulong)16L);
|
||||
config7.NiceLength = (int)((ulong)128L);
|
||||
config7.MaxChainLength = (int)((ulong)128L);
|
||||
config7.Flavor = (DeflateFlavor)((ulong)2L);
|
||||
array[6] = config7;
|
||||
DeflateManager.Config config8;
|
||||
config8.GoodLength = (int)((ulong)8L);
|
||||
config8.MaxLazy = (int)((ulong)32L);
|
||||
config8.NiceLength = (int)((ulong)128L);
|
||||
config8.MaxChainLength = (int)((ulong)256L);
|
||||
config8.Flavor = (DeflateFlavor)((ulong)2L);
|
||||
array[7] = config8;
|
||||
DeflateManager.Config config9;
|
||||
config9.GoodLength = (int)((ulong)32L);
|
||||
config9.MaxLazy = (int)((ulong)128L);
|
||||
config9.NiceLength = (int)((ulong)258L);
|
||||
config9.MaxChainLength = (int)((ulong)1024L);
|
||||
config9.Flavor = (DeflateFlavor)((ulong)2L);
|
||||
array[8] = config9;
|
||||
DeflateManager.Config config10;
|
||||
config10.GoodLength = (int)((ulong)32L);
|
||||
config10.MaxLazy = (int)((ulong)258L);
|
||||
config10.NiceLength = (int)((ulong)258L);
|
||||
config10.MaxChainLength = (int)((ulong)4096L);
|
||||
config10.Flavor = (DeflateFlavor)((ulong)2L);
|
||||
array[9] = config10;
|
||||
DeflateManager.Config.Table = array;
|
||||
}
|
||||
|
||||
// Token: 0x040082E0 RID: 33504
|
||||
[FieldOffset(Offset = "0x10")]
|
||||
[Token(Token = "0x40082E0")]
|
||||
internal int GoodLength;
|
||||
|
||||
// Token: 0x040082E1 RID: 33505
|
||||
[FieldOffset(Offset = "0x14")]
|
||||
[Token(Token = "0x40082E1")]
|
||||
internal int MaxLazy;
|
||||
|
||||
// Token: 0x040082E2 RID: 33506
|
||||
[FieldOffset(Offset = "0x18")]
|
||||
[Token(Token = "0x40082E2")]
|
||||
internal int NiceLength;
|
||||
|
||||
// Token: 0x040082E3 RID: 33507
|
||||
[FieldOffset(Offset = "0x1C")]
|
||||
[Token(Token = "0x40082E3")]
|
||||
internal int MaxChainLength;
|
||||
|
||||
// Token: 0x040082E4 RID: 33508
|
||||
[FieldOffset(Offset = "0x20")]
|
||||
[Token(Token = "0x40082E4")]
|
||||
internal DeflateFlavor Flavor;
|
||||
|
||||
// Token: 0x040082E5 RID: 33509
|
||||
[Token(Token = "0x40082E5")]
|
||||
private static readonly DeflateManager.Config[] Table;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,529 @@
|
||||
using System;
|
||||
using System.IO;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Decompression.Zlib
|
||||
{
|
||||
// Token: 0x02001FA5 RID: 8101
|
||||
[Token(Token = "0x2001FA5")]
|
||||
public class DeflateStream : Stream
|
||||
{
|
||||
// Token: 0x0600CD55 RID: 52565 RVA: 0x002F167C File Offset: 0x002EF87C
|
||||
[Token(Token = "0x600CD55")]
|
||||
[Address(RVA = "0x196C980", Offset = "0x196B780", VA = "0x18196C980")]
|
||||
public DeflateStream(Stream stream, CompressionMode mode)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0600CD56 RID: 52566 RVA: 0x002F168C File Offset: 0x002EF88C
|
||||
[Token(Token = "0x600CD56")]
|
||||
[Address(RVA = "0x196C9B0", Offset = "0x196B7B0", VA = "0x18196C9B0")]
|
||||
public DeflateStream(Stream stream, CompressionMode mode, CompressionLevel level)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0600CD57 RID: 52567 RVA: 0x002F169C File Offset: 0x002EF89C
|
||||
[Token(Token = "0x600CD57")]
|
||||
[Address(RVA = "0x196C9D0", Offset = "0x196B7D0", VA = "0x18196C9D0")]
|
||||
public DeflateStream(Stream stream, CompressionMode mode, bool leaveOpen)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0600CD58 RID: 52568 RVA: 0x002F16AC File Offset: 0x002EF8AC
|
||||
[Token(Token = "0x600CD58")]
|
||||
[Address(RVA = "0x196CB30", Offset = "0x196B930", VA = "0x18196CB30")]
|
||||
public DeflateStream(Stream stream, CompressionMode mode, CompressionLevel level, bool leaveOpen)
|
||||
{
|
||||
this._innerStream = stream;
|
||||
ZlibBaseStream zlibBaseStream;
|
||||
this._baseStream = zlibBaseStream;
|
||||
}
|
||||
|
||||
// Token: 0x0600CD59 RID: 52569 RVA: 0x002F16D0 File Offset: 0x002EF8D0
|
||||
[Token(Token = "0x600CD59")]
|
||||
[Address(RVA = "0x196CA00", Offset = "0x196B800", VA = "0x18196CA00")]
|
||||
public DeflateStream(Stream stream, CompressionMode mode, CompressionLevel level, bool leaveOpen, int windowBits)
|
||||
{
|
||||
this._innerStream = stream;
|
||||
ZlibBaseStream zlibBaseStream;
|
||||
zlibBaseStream._streamMode = (ZlibBaseStream.StreamMode)((ulong)2L);
|
||||
zlibBaseStream._bufferSize = (int)((ulong)16384L);
|
||||
byte[] array = new byte[1];
|
||||
zlibBaseStream._buf1 = array;
|
||||
zlibBaseStream._leaveOpen = false;
|
||||
zlibBaseStream.windowBitsMax = 0;
|
||||
zlibBaseStream._flushMode = (FlushType)((ulong)0L);
|
||||
zlibBaseStream._stream = stream;
|
||||
zlibBaseStream._compressionMode = mode;
|
||||
zlibBaseStream._flavor = (ZlibStreamFlavor)((ulong)1951L);
|
||||
zlibBaseStream._level = level;
|
||||
this._baseStream = zlibBaseStream;
|
||||
}
|
||||
|
||||
// Token: 0x170020A1 RID: 8353
|
||||
// (get) Token: 0x0600CD5A RID: 52570 RVA: 0x002F1754 File Offset: 0x002EF954
|
||||
// (set) Token: 0x0600CD5B RID: 52571 RVA: 0x002F1774 File Offset: 0x002EF974
|
||||
[Token(Token = "0x170020A1")]
|
||||
public virtual FlushType FlushMode
|
||||
{
|
||||
[Token(Token = "0x600CD5A")]
|
||||
[Address(RVA = "0x196CD40", Offset = "0x196BB40", VA = "0x18196CD40", Slot = "31")]
|
||||
get
|
||||
{
|
||||
return this._baseStream._flushMode;
|
||||
}
|
||||
[Token(Token = "0x600CD5B")]
|
||||
[Address(RVA = "0x196CFE0", Offset = "0x196BDE0", VA = "0x18196CFE0", Slot = "32")]
|
||||
set
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CD5B)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.Decompression.Zlib.DeflateStream::set_FlushMode(BestHTTP.Decompression.Zlib.FlushType)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_18:
|
||||
stloc:ObjectDisposedException(var_1_22, newobj:ObjectDisposedException(ObjectDisposedException::.ctor, ldstr:string("DeflateStream")))
|
||||
}
|
||||
|
||||
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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: 0x170020A2 RID: 8354
|
||||
// (get) Token: 0x0600CD5C RID: 52572 RVA: 0x002F17A4 File Offset: 0x002EF9A4
|
||||
// (set) Token: 0x0600CD5D RID: 52573 RVA: 0x002F17C4 File Offset: 0x002EF9C4
|
||||
[Token(Token = "0x170020A2")]
|
||||
public int BufferSize
|
||||
{
|
||||
[Token(Token = "0x600CD5C")]
|
||||
[Address(RVA = "0x196CC00", Offset = "0x196BA00", VA = "0x18196CC00")]
|
||||
get
|
||||
{
|
||||
return this._baseStream._bufferSize;
|
||||
}
|
||||
[Token(Token = "0x600CD5D")]
|
||||
[Address(RVA = "0x196CE90", Offset = "0x196BC90", VA = "0x18196CE90")]
|
||||
set
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CD5D)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.Decompression.Zlib.DeflateStream::set_BufferSize(System.Int32)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_23:
|
||||
stloc:ObjectDisposedException(var_1_2D, newobj:ObjectDisposedException(ObjectDisposedException::.ctor, ldstr:string("DeflateStream")))
|
||||
}
|
||||
|
||||
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: 0x170020A3 RID: 8355
|
||||
// (get) Token: 0x0600CD5E RID: 52574 RVA: 0x002F1800 File Offset: 0x002EFA00
|
||||
// (set) Token: 0x0600CD5F RID: 52575 RVA: 0x002F1820 File Offset: 0x002EFA20
|
||||
[Token(Token = "0x170020A3")]
|
||||
public CompressionStrategy Strategy
|
||||
{
|
||||
[Token(Token = "0x600CD5E")]
|
||||
[Address(RVA = "0x196CE10", Offset = "0x196BC10", VA = "0x18196CE10")]
|
||||
get
|
||||
{
|
||||
return this._baseStream.Strategy;
|
||||
}
|
||||
[Token(Token = "0x600CD5F")]
|
||||
[Address(RVA = "0x196D0B0", Offset = "0x196BEB0", VA = "0x18196D0B0")]
|
||||
set
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CD5F)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.Decompression.Zlib.DeflateStream::set_Strategy(BestHTTP.Decompression.Zlib.CompressionStrategy)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_18:
|
||||
stloc:ObjectDisposedException(var_1_22, newobj:ObjectDisposedException(ObjectDisposedException::.ctor, ldstr:string("DeflateStream")))
|
||||
}
|
||||
|
||||
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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: 0x170020A4 RID: 8356
|
||||
// (get) Token: 0x0600CD60 RID: 52576 RVA: 0x002F1850 File Offset: 0x002EFA50
|
||||
[Token(Token = "0x170020A4")]
|
||||
public virtual long TotalIn
|
||||
{
|
||||
[Token(Token = "0x600CD60")]
|
||||
[Address(RVA = "0x196CE30", Offset = "0x196BC30", VA = "0x18196CE30", Slot = "33")]
|
||||
get
|
||||
{
|
||||
return this._baseStream._z.TotalBytesIn;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x170020A5 RID: 8357
|
||||
// (get) Token: 0x0600CD61 RID: 52577 RVA: 0x002F1874 File Offset: 0x002EFA74
|
||||
[Token(Token = "0x170020A5")]
|
||||
public virtual long TotalOut
|
||||
{
|
||||
[Token(Token = "0x600CD61")]
|
||||
[Address(RVA = "0x196CE60", Offset = "0x196BC60", VA = "0x18196CE60", Slot = "34")]
|
||||
get
|
||||
{
|
||||
return this._baseStream._z.TotalBytesOut;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600CD62 RID: 52578 RVA: 0x002F1898 File Offset: 0x002EFA98
|
||||
[Token(Token = "0x600CD62")]
|
||||
[Address(RVA = "0x196C690", Offset = "0x196B490", VA = "0x18196C690", Slot = "16")]
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
if ((this._disposed ? 1 : 0) == num)
|
||||
{
|
||||
if (disposing)
|
||||
{
|
||||
ZlibBaseStream baseStream = this._baseStream;
|
||||
if (baseStream != 0)
|
||||
{
|
||||
int writeTimeout = baseStream.WriteTimeout;
|
||||
}
|
||||
}
|
||||
this._disposed = true;
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
while (num != 0);
|
||||
}
|
||||
|
||||
// Token: 0x170020A6 RID: 8358
|
||||
// (get) Token: 0x0600CD63 RID: 52579 RVA: 0x002F18D8 File Offset: 0x002EFAD8
|
||||
[Token(Token = "0x170020A6")]
|
||||
public override bool CanRead
|
||||
{
|
||||
[Token(Token = "0x600CD63")]
|
||||
[Address(RVA = "0x196CC20", Offset = "0x196BA20", VA = "0x18196CC20", Slot = "7")]
|
||||
get
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CD63)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean BestHTTP.Decompression.Zlib.DeflateStream::get_CanRead()
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_1A:
|
||||
stloc:ObjectDisposedException(var_0_24, newobj:ObjectDisposedException(ObjectDisposedException::.ctor, ldstr:string("DeflateStream")))
|
||||
}
|
||||
|
||||
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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: 0x170020A7 RID: 8359
|
||||
// (get) Token: 0x0600CD64 RID: 52580 RVA: 0x002F190C File Offset: 0x002EFB0C
|
||||
[Token(Token = "0x170020A7")]
|
||||
public override bool CanSeek
|
||||
{
|
||||
[Token(Token = "0x600CD64")]
|
||||
[Address(RVA = "0x403930", Offset = "0x402730", VA = "0x180403930", Slot = "8")]
|
||||
get
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x170020A8 RID: 8360
|
||||
// (get) Token: 0x0600CD65 RID: 52581 RVA: 0x002F191C File Offset: 0x002EFB1C
|
||||
[Token(Token = "0x170020A8")]
|
||||
public override bool CanWrite
|
||||
{
|
||||
[Token(Token = "0x600CD65")]
|
||||
[Address(RVA = "0x196CCB0", Offset = "0x196BAB0", VA = "0x18196CCB0", Slot = "9")]
|
||||
get
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CD65)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean BestHTTP.Decompression.Zlib.DeflateStream::get_CanWrite()
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_1A:
|
||||
stloc:ObjectDisposedException(var_0_24, newobj:ObjectDisposedException(ObjectDisposedException::.ctor, ldstr:string("DeflateStream")))
|
||||
}
|
||||
|
||||
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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: 0x0600CD66 RID: 52582 RVA: 0x002F1950 File Offset: 0x002EFB50
|
||||
[Token(Token = "0x600CD66")]
|
||||
[Address(RVA = "0x196C730", Offset = "0x196B530", VA = "0x18196C730", Slot = "17")]
|
||||
public override void Flush()
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CD66)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.Decompression.Zlib.DeflateStream::Flush()
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_15:
|
||||
stloc:ObjectDisposedException(var_0_1F, newobj:ObjectDisposedException(ObjectDisposedException::.ctor, ldstr:string("DeflateStream")))
|
||||
}
|
||||
|
||||
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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: 0x170020A9 RID: 8361
|
||||
// (get) Token: 0x0600CD67 RID: 52583 RVA: 0x002F197C File Offset: 0x002EFB7C
|
||||
[Token(Token = "0x170020A9")]
|
||||
public override long Length
|
||||
{
|
||||
[Token(Token = "0x600CD67")]
|
||||
[Address(RVA = "0x196CD60", Offset = "0x196BB60", VA = "0x18196CD60", Slot = "10")]
|
||||
get
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CD67)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int64 BestHTTP.Decompression.Zlib.DeflateStream::get_Length()
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
Block_0:
|
||||
stloc:NotImplementedException(var_0_05, newobj:NotImplementedException(NotImplementedException::.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: 0x170020AA RID: 8362
|
||||
// (get) Token: 0x0600CD68 RID: 52584 RVA: 0x002F1990 File Offset: 0x002EFB90
|
||||
// (set) Token: 0x0600CD69 RID: 52585 RVA: 0x002F19D4 File Offset: 0x002EFBD4
|
||||
[Token(Token = "0x170020AA")]
|
||||
public override long Position
|
||||
{
|
||||
[Token(Token = "0x600CD68")]
|
||||
[Address(RVA = "0x196CDB0", Offset = "0x196BBB0", VA = "0x18196CDB0", Slot = "11")]
|
||||
get
|
||||
{
|
||||
ZlibBaseStream baseStream = this._baseStream;
|
||||
ZlibBaseStream.StreamMode streamMode = baseStream._streamMode;
|
||||
if (streamMode != ZlibBaseStream.StreamMode.Writer)
|
||||
{
|
||||
if (streamMode != ZlibBaseStream.StreamMode.Reader)
|
||||
{
|
||||
}
|
||||
return baseStream._z.TotalBytesIn;
|
||||
}
|
||||
return baseStream._z.TotalBytesOut;
|
||||
}
|
||||
[Token(Token = "0x600CD69")]
|
||||
[Address(RVA = "0x196D060", Offset = "0x196BE60", VA = "0x18196D060", Slot = "12")]
|
||||
set
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CD69)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.Decompression.Zlib.DeflateStream::set_Position(System.Int64)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
Block_0:
|
||||
stloc:NotImplementedException(var_0_05, newobj:NotImplementedException(NotImplementedException::.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: 0x0600CD6A RID: 52586 RVA: 0x002F19E8 File Offset: 0x002EFBE8
|
||||
[Token(Token = "0x600CD6A")]
|
||||
[Address(RVA = "0x196C7B0", Offset = "0x196B5B0", VA = "0x18196C7B0", Slot = "27")]
|
||||
public override int Read(byte[] buffer, int offset, int count)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CD6A)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 BestHTTP.Decompression.Zlib.DeflateStream::Read(System.Byte[],System.Int32,System.Int32)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_18:
|
||||
stloc:ObjectDisposedException(var_0_22, newobj:ObjectDisposedException(ObjectDisposedException::.ctor, ldstr:string("DeflateStream")))
|
||||
}
|
||||
|
||||
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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: 0x0600CD6B RID: 52587 RVA: 0x002F1A18 File Offset: 0x002EFC18
|
||||
[Token(Token = "0x600CD6B")]
|
||||
[Address(RVA = "0x196C870", Offset = "0x196B670", VA = "0x18196C870", Slot = "25")]
|
||||
public override long Seek(long offset, SeekOrigin origin)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CD6B)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int64 BestHTTP.Decompression.Zlib.DeflateStream::Seek(System.Int64,System.IO.SeekOrigin)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
Block_0:
|
||||
stloc:NotImplementedException(var_0_05, newobj:NotImplementedException(NotImplementedException::.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: 0x0600CD6C RID: 52588 RVA: 0x002F1A2C File Offset: 0x002EFC2C
|
||||
[Token(Token = "0x600CD6C")]
|
||||
[Address(RVA = "0x44E4A0", Offset = "0x44D2A0", VA = "0x18044E4A0", Slot = "26")]
|
||||
public override void SetLength(long value)
|
||||
{
|
||||
((IDisposable)this._baseStream).Dispose();
|
||||
}
|
||||
|
||||
// Token: 0x0600CD6D RID: 52589 RVA: 0x002F1A4C File Offset: 0x002EFC4C
|
||||
[Token(Token = "0x600CD6D")]
|
||||
[Address(RVA = "0x196C8C0", Offset = "0x196B6C0", VA = "0x18196C8C0", Slot = "29")]
|
||||
public override void Write(byte[] buffer, int offset, int count)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CD6D)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.Decompression.Zlib.DeflateStream::Write(System.Byte[],System.Int32,System.Int32)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_19:
|
||||
stloc:ObjectDisposedException(var_1_23, newobj:ObjectDisposedException(ObjectDisposedException::.ctor, ldstr:string("DeflateStream")))
|
||||
}
|
||||
|
||||
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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: 0x040082E6 RID: 33510
|
||||
[FieldOffset(Offset = "0x28")]
|
||||
[Token(Token = "0x40082E6")]
|
||||
internal ZlibBaseStream _baseStream;
|
||||
|
||||
// Token: 0x040082E7 RID: 33511
|
||||
[FieldOffset(Offset = "0x30")]
|
||||
[Token(Token = "0x40082E7")]
|
||||
internal Stream _innerStream;
|
||||
|
||||
// Token: 0x040082E8 RID: 33512
|
||||
[FieldOffset(Offset = "0x38")]
|
||||
[Token(Token = "0x40082E8")]
|
||||
private bool _disposed;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,26 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Decompression.Zlib
|
||||
{
|
||||
// Token: 0x02001FAF RID: 8111
|
||||
[Token(Token = "0x2001FAF")]
|
||||
public enum FlushType
|
||||
{
|
||||
// Token: 0x0400836F RID: 33647
|
||||
[Token(Token = "0x400836F")]
|
||||
None,
|
||||
// Token: 0x04008370 RID: 33648
|
||||
[Token(Token = "0x4008370")]
|
||||
Partial,
|
||||
// Token: 0x04008371 RID: 33649
|
||||
[Token(Token = "0x4008371")]
|
||||
Sync,
|
||||
// Token: 0x04008372 RID: 33650
|
||||
[Token(Token = "0x4008372")]
|
||||
Full,
|
||||
// Token: 0x04008373 RID: 33651
|
||||
[Token(Token = "0x4008373")]
|
||||
Finish
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,662 @@
|
||||
using System;
|
||||
using System.IO;
|
||||
using System.Text;
|
||||
using BestHTTP.Decompression.Crc;
|
||||
using BestHTTP.Extensions;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Decompression.Zlib
|
||||
{
|
||||
// Token: 0x02001FA6 RID: 8102
|
||||
[Token(Token = "0x2001FA6")]
|
||||
public class GZipStream : Stream
|
||||
{
|
||||
// Token: 0x170020AB RID: 8363
|
||||
// (get) Token: 0x0600CD6E RID: 52590 RVA: 0x002F1A7C File Offset: 0x002EFC7C
|
||||
// (set) Token: 0x0600CD6F RID: 52591 RVA: 0x002F1A90 File Offset: 0x002EFC90
|
||||
[Token(Token = "0x170020AB")]
|
||||
public string Comment
|
||||
{
|
||||
[Token(Token = "0x600CD6E")]
|
||||
[Address(RVA = "0x423D40", Offset = "0x422B40", VA = "0x180423D40")]
|
||||
get
|
||||
{
|
||||
return this._Comment;
|
||||
}
|
||||
[Token(Token = "0x600CD6F")]
|
||||
[Address(RVA = "0x196E140", Offset = "0x196CF40", VA = "0x18196E140")]
|
||||
set
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CD6F)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.Decompression.Zlib.GZipStream::set_Comment(System.String)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_11:
|
||||
stloc:ObjectDisposedException(var_0_1B, newobj:ObjectDisposedException(ObjectDisposedException::.ctor, ldstr:string("GZipStream")))
|
||||
}
|
||||
|
||||
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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: 0x170020AC RID: 8364
|
||||
// (get) Token: 0x0600CD70 RID: 52592 RVA: 0x002F1AB8 File Offset: 0x002EFCB8
|
||||
// (set) Token: 0x0600CD71 RID: 52593 RVA: 0x002F1ACC File Offset: 0x002EFCCC
|
||||
[Token(Token = "0x170020AC")]
|
||||
public string FileName
|
||||
{
|
||||
[Token(Token = "0x600CD70")]
|
||||
[Address(RVA = "0x415290", Offset = "0x414090", VA = "0x180415290")]
|
||||
get
|
||||
{
|
||||
return this._FileName;
|
||||
}
|
||||
[Token(Token = "0x600CD71")]
|
||||
[Address(RVA = "0x196E1C0", Offset = "0x196CFC0", VA = "0x18196E1C0")]
|
||||
set
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CD71)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.Decompression.Zlib.GZipStream::set_FileName(System.String)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_84:
|
||||
stloc:Exception(var_3_8E, newobj:Exception(Exception::.ctor, ldstr:string("Illegal filename")))
|
||||
}
|
||||
|
||||
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: 0x170020AD RID: 8365
|
||||
// (get) Token: 0x0600CD72 RID: 52594 RVA: 0x002F1B68 File Offset: 0x002EFD68
|
||||
[Token(Token = "0x170020AD")]
|
||||
public int Crc32
|
||||
{
|
||||
[Token(Token = "0x600CD72")]
|
||||
[Address(RVA = "0xD17AD0", Offset = "0xD168D0", VA = "0x180D17AD0")]
|
||||
get
|
||||
{
|
||||
return this._Crc32;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600CD73 RID: 52595 RVA: 0x002F1B7C File Offset: 0x002EFD7C
|
||||
[Token(Token = "0x600CD73")]
|
||||
[Address(RVA = "0x196DC20", Offset = "0x196CA20", VA = "0x18196DC20")]
|
||||
public GZipStream(Stream stream, CompressionMode mode)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0600CD74 RID: 52596 RVA: 0x002F1B8C File Offset: 0x002EFD8C
|
||||
[Token(Token = "0x600CD74")]
|
||||
[Address(RVA = "0x196DD20", Offset = "0x196CB20", VA = "0x18196DD20")]
|
||||
public GZipStream(Stream stream, CompressionMode mode, CompressionLevel level)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0600CD75 RID: 52597 RVA: 0x002F1B9C File Offset: 0x002EFD9C
|
||||
[Token(Token = "0x600CD75")]
|
||||
[Address(RVA = "0x196DD40", Offset = "0x196CB40", VA = "0x18196DD40")]
|
||||
public GZipStream(Stream stream, CompressionMode mode, bool leaveOpen)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0600CD76 RID: 52598 RVA: 0x002F1BAC File Offset: 0x002EFDAC
|
||||
[Token(Token = "0x600CD76")]
|
||||
[Address(RVA = "0x196DC50", Offset = "0x196CA50", VA = "0x18196DC50")]
|
||||
public GZipStream(Stream stream, CompressionMode mode, CompressionLevel level, bool leaveOpen)
|
||||
{
|
||||
ZlibBaseStream zlibBaseStream;
|
||||
this._baseStream = zlibBaseStream;
|
||||
}
|
||||
|
||||
// Token: 0x170020AE RID: 8366
|
||||
// (get) Token: 0x0600CD77 RID: 52599 RVA: 0x002F1BC8 File Offset: 0x002EFDC8
|
||||
// (set) Token: 0x0600CD78 RID: 52600 RVA: 0x002F1BE8 File Offset: 0x002EFDE8
|
||||
[Token(Token = "0x170020AE")]
|
||||
public virtual FlushType FlushMode
|
||||
{
|
||||
[Token(Token = "0x600CD77")]
|
||||
[Address(RVA = "0x196DEB0", Offset = "0x196CCB0", VA = "0x18196DEB0", Slot = "31")]
|
||||
get
|
||||
{
|
||||
return this._baseStream._flushMode;
|
||||
}
|
||||
[Token(Token = "0x600CD78")]
|
||||
[Address(RVA = "0x196E330", Offset = "0x196D130", VA = "0x18196E330", Slot = "32")]
|
||||
set
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CD78)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.Decompression.Zlib.GZipStream::set_FlushMode(BestHTTP.Decompression.Zlib.FlushType)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_18:
|
||||
stloc:ObjectDisposedException(var_1_22, newobj:ObjectDisposedException(ObjectDisposedException::.ctor, ldstr:string("GZipStream")))
|
||||
}
|
||||
|
||||
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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: 0x170020AF RID: 8367
|
||||
// (get) Token: 0x0600CD79 RID: 52601 RVA: 0x002F1C18 File Offset: 0x002EFE18
|
||||
// (set) Token: 0x0600CD7A RID: 52602 RVA: 0x002F1C38 File Offset: 0x002EFE38
|
||||
[Token(Token = "0x170020AF")]
|
||||
public int BufferSize
|
||||
{
|
||||
[Token(Token = "0x600CD79")]
|
||||
[Address(RVA = "0x196DD70", Offset = "0x196CB70", VA = "0x18196DD70")]
|
||||
get
|
||||
{
|
||||
return this._baseStream._bufferSize;
|
||||
}
|
||||
[Token(Token = "0x600CD7A")]
|
||||
[Address(RVA = "0x196DFF0", Offset = "0x196CDF0", VA = "0x18196DFF0")]
|
||||
set
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CD7A)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.Decompression.Zlib.GZipStream::set_BufferSize(System.Int32)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_23:
|
||||
stloc:ObjectDisposedException(var_1_2D, newobj:ObjectDisposedException(ObjectDisposedException::.ctor, ldstr:string("GZipStream")))
|
||||
}
|
||||
|
||||
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: 0x170020B0 RID: 8368
|
||||
// (get) Token: 0x0600CD7B RID: 52603 RVA: 0x002F1C74 File Offset: 0x002EFE74
|
||||
[Token(Token = "0x170020B0")]
|
||||
public virtual long TotalIn
|
||||
{
|
||||
[Token(Token = "0x600CD7B")]
|
||||
[Address(RVA = "0x196DF90", Offset = "0x196CD90", VA = "0x18196DF90", Slot = "33")]
|
||||
get
|
||||
{
|
||||
return this._baseStream._z.TotalBytesIn;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x170020B1 RID: 8369
|
||||
// (get) Token: 0x0600CD7C RID: 52604 RVA: 0x002F1C98 File Offset: 0x002EFE98
|
||||
[Token(Token = "0x170020B1")]
|
||||
public virtual long TotalOut
|
||||
{
|
||||
[Token(Token = "0x600CD7C")]
|
||||
[Address(RVA = "0x196DFC0", Offset = "0x196CDC0", VA = "0x18196DFC0", Slot = "34")]
|
||||
get
|
||||
{
|
||||
return this._baseStream._z.TotalBytesOut;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600CD7D RID: 52605 RVA: 0x002F1CBC File Offset: 0x002EFEBC
|
||||
[Token(Token = "0x600CD7D")]
|
||||
[Address(RVA = "0x196D130", Offset = "0x196BF30", VA = "0x18196D130", Slot = "16")]
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
int num = 0;
|
||||
if ((this._disposed ? 1 : 0) == num)
|
||||
{
|
||||
if (disposing)
|
||||
{
|
||||
ZlibBaseStream baseStream = this._baseStream;
|
||||
if (baseStream != 0)
|
||||
{
|
||||
int writeTimeout = baseStream.WriteTimeout;
|
||||
CRC32 crc = this._baseStream.crc;
|
||||
if (crc == 0)
|
||||
{
|
||||
goto IL_53;
|
||||
}
|
||||
uint register = crc._register;
|
||||
this._Crc32 = (int)register;
|
||||
}
|
||||
}
|
||||
this._disposed = true;
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
if (num != 0)
|
||||
{
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
IL_53:
|
||||
this._Crc32 = num;
|
||||
}
|
||||
|
||||
// Token: 0x170020B2 RID: 8370
|
||||
// (get) Token: 0x0600CD7E RID: 52606 RVA: 0x002F1D2C File Offset: 0x002EFF2C
|
||||
[Token(Token = "0x170020B2")]
|
||||
public override bool CanRead
|
||||
{
|
||||
[Token(Token = "0x600CD7E")]
|
||||
[Address(RVA = "0x196DD90", Offset = "0x196CB90", VA = "0x18196DD90", Slot = "7")]
|
||||
get
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CD7E)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean BestHTTP.Decompression.Zlib.GZipStream::get_CanRead()
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_1A:
|
||||
stloc:ObjectDisposedException(var_0_24, newobj:ObjectDisposedException(ObjectDisposedException::.ctor, ldstr:string("GZipStream")))
|
||||
}
|
||||
|
||||
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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: 0x170020B3 RID: 8371
|
||||
// (get) Token: 0x0600CD7F RID: 52607 RVA: 0x002F1D60 File Offset: 0x002EFF60
|
||||
[Token(Token = "0x170020B3")]
|
||||
public override bool CanSeek
|
||||
{
|
||||
[Token(Token = "0x600CD7F")]
|
||||
[Address(RVA = "0x403930", Offset = "0x402730", VA = "0x180403930", Slot = "8")]
|
||||
get
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x170020B4 RID: 8372
|
||||
// (get) Token: 0x0600CD80 RID: 52608 RVA: 0x002F1D70 File Offset: 0x002EFF70
|
||||
[Token(Token = "0x170020B4")]
|
||||
public override bool CanWrite
|
||||
{
|
||||
[Token(Token = "0x600CD80")]
|
||||
[Address(RVA = "0x196DE20", Offset = "0x196CC20", VA = "0x18196DE20", Slot = "9")]
|
||||
get
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CD80)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean BestHTTP.Decompression.Zlib.GZipStream::get_CanWrite()
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_1A:
|
||||
stloc:ObjectDisposedException(var_0_24, newobj:ObjectDisposedException(ObjectDisposedException::.ctor, ldstr:string("GZipStream")))
|
||||
}
|
||||
|
||||
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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: 0x0600CD81 RID: 52609 RVA: 0x002F1DA4 File Offset: 0x002EFFA4
|
||||
[Token(Token = "0x600CD81")]
|
||||
[Address(RVA = "0x196D6D0", Offset = "0x196C4D0", VA = "0x18196D6D0", Slot = "17")]
|
||||
public override void Flush()
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CD81)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.Decompression.Zlib.GZipStream::Flush()
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_15:
|
||||
stloc:ObjectDisposedException(var_0_1F, newobj:ObjectDisposedException(ObjectDisposedException::.ctor, ldstr:string("GZipStream")))
|
||||
}
|
||||
|
||||
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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: 0x170020B5 RID: 8373
|
||||
// (get) Token: 0x0600CD82 RID: 52610 RVA: 0x002F1DD0 File Offset: 0x002EFFD0
|
||||
[Token(Token = "0x170020B5")]
|
||||
public override long Length
|
||||
{
|
||||
[Token(Token = "0x600CD82")]
|
||||
[Address(RVA = "0x196DED0", Offset = "0x196CCD0", VA = "0x18196DED0", Slot = "10")]
|
||||
get
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CD82)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int64 BestHTTP.Decompression.Zlib.GZipStream::get_Length()
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
Block_0:
|
||||
stloc:NotImplementedException(var_0_05, newobj:NotImplementedException(NotImplementedException::.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: 0x170020B6 RID: 8374
|
||||
// (get) Token: 0x0600CD83 RID: 52611 RVA: 0x002F1DE4 File Offset: 0x002EFFE4
|
||||
// (set) Token: 0x0600CD84 RID: 52612 RVA: 0x002F1E30 File Offset: 0x002F0030
|
||||
[Token(Token = "0x170020B6")]
|
||||
public override long Position
|
||||
{
|
||||
[Token(Token = "0x600CD83")]
|
||||
[Address(RVA = "0x196DF20", Offset = "0x196CD20", VA = "0x18196DF20", Slot = "11")]
|
||||
get
|
||||
{
|
||||
ZlibBaseStream baseStream = this._baseStream;
|
||||
ZlibBaseStream.StreamMode streamMode = baseStream._streamMode;
|
||||
if (streamMode != ZlibBaseStream.StreamMode.Writer)
|
||||
{
|
||||
if (streamMode != ZlibBaseStream.StreamMode.Reader)
|
||||
{
|
||||
}
|
||||
ZlibCodec z = baseStream._z;
|
||||
int gzipHeaderByteCount = baseStream._gzipHeaderByteCount;
|
||||
}
|
||||
ZlibCodec z2 = baseStream._z;
|
||||
int headerByteCount = this._headerByteCount;
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
[Token(Token = "0x600CD84")]
|
||||
[Address(RVA = "0x196E3B0", Offset = "0x196D1B0", VA = "0x18196E3B0", Slot = "12")]
|
||||
set
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CD84)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.Decompression.Zlib.GZipStream::set_Position(System.Int64)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
Block_0:
|
||||
stloc:NotImplementedException(var_0_05, newobj:NotImplementedException(NotImplementedException::.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: 0x0600CD85 RID: 52613 RVA: 0x002F1E44 File Offset: 0x002F0044
|
||||
[Token(Token = "0x600CD85")]
|
||||
[Address(RVA = "0x196D750", Offset = "0x196C550", VA = "0x18196D750", Slot = "27")]
|
||||
public override int Read(byte[] buffer, int offset, int count)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CD85)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 BestHTTP.Decompression.Zlib.GZipStream::Read(System.Byte[],System.Int32,System.Int32)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_E4:
|
||||
stloc:ObjectDisposedException(var_8_EE, newobj:ObjectDisposedException(ObjectDisposedException::.ctor, ldstr:string("GZipStream")))
|
||||
}
|
||||
|
||||
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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: 0x0600CD86 RID: 52614 RVA: 0x002F1F40 File Offset: 0x002F0140
|
||||
[Token(Token = "0x600CD86")]
|
||||
[Address(RVA = "0x196D9F0", Offset = "0x196C7F0", VA = "0x18196D9F0", Slot = "25")]
|
||||
public override long Seek(long offset, SeekOrigin origin)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CD86)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int64 BestHTTP.Decompression.Zlib.GZipStream::Seek(System.Int64,System.IO.SeekOrigin)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
Block_0:
|
||||
stloc:NotImplementedException(var_0_05, newobj:NotImplementedException(NotImplementedException::.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: 0x0600CD87 RID: 52615 RVA: 0x002F1F54 File Offset: 0x002F0154
|
||||
[Token(Token = "0x600CD87")]
|
||||
[Address(RVA = "0x196DA40", Offset = "0x196C840", VA = "0x18196DA40", Slot = "26")]
|
||||
public override void SetLength(long value)
|
||||
{
|
||||
((IDisposable)this._baseStream).Dispose();
|
||||
}
|
||||
|
||||
// Token: 0x0600CD88 RID: 52616 RVA: 0x002F1F74 File Offset: 0x002F0174
|
||||
[Token(Token = "0x600CD88")]
|
||||
[Address(RVA = "0x196DA70", Offset = "0x196C870", VA = "0x18196DA70", Slot = "29")]
|
||||
public override void Write(byte[] buffer, int offset, int count)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CD88)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.Decompression.Zlib.GZipStream::Write(System.Byte[],System.Int32,System.Int32)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_46:
|
||||
stloc:InvalidOperationException(var_4_4B, newobj:InvalidOperationException(InvalidOperationException::.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: 0x0600CD89 RID: 52617 RVA: 0x002F1FD0 File Offset: 0x002F01D0
|
||||
[Token(Token = "0x600CD89")]
|
||||
[Address(RVA = "0x196D200", Offset = "0x196C000", VA = "0x18196D200")]
|
||||
private int EmitHeader()
|
||||
{
|
||||
if (this._Comment == 0)
|
||||
{
|
||||
}
|
||||
string comment = this._Comment;
|
||||
Encoding encoding = GZipStream.iso8859dash1;
|
||||
if (this._FileName == 0)
|
||||
{
|
||||
}
|
||||
string fileName = this._FileName;
|
||||
Encoding encoding2 = GZipStream.iso8859dash1;
|
||||
int num;
|
||||
if (this._Comment == (ulong)0L)
|
||||
{
|
||||
num = 0;
|
||||
}
|
||||
num++;
|
||||
int num2;
|
||||
if (this._FileName == (ulong)0L)
|
||||
{
|
||||
num2 = 0;
|
||||
}
|
||||
num2++;
|
||||
int num3 = 0;
|
||||
byte[] array;
|
||||
array[0] = (byte)num3;
|
||||
DateTime now = DateTime.Now;
|
||||
int num4 = 0;
|
||||
this.LastModified = num4;
|
||||
DateTime unixEpoch = GZipStream._unixEpoch;
|
||||
DateTime dateTime;
|
||||
TimeSpan timeSpan = dateTime - unixEpoch;
|
||||
int num5 = 0;
|
||||
int num6 = 0;
|
||||
byte[] array2;
|
||||
ulong num7;
|
||||
Array.Copy(array2, num6, array, 4, (int)num7);
|
||||
array[1] = (byte)num5;
|
||||
if (num2 != 0)
|
||||
{
|
||||
num2 += 9;
|
||||
}
|
||||
if (num != 0)
|
||||
{
|
||||
}
|
||||
int num8 = this._baseStream._stream.ReadByte();
|
||||
VariableSizedBufferPool.Release(array);
|
||||
return array.Length;
|
||||
}
|
||||
|
||||
// Token: 0x040082E9 RID: 33513
|
||||
[FieldOffset(Offset = "0x28")]
|
||||
[Token(Token = "0x40082E9")]
|
||||
public DateTime? LastModified;
|
||||
|
||||
// Token: 0x040082EA RID: 33514
|
||||
[FieldOffset(Offset = "0x38")]
|
||||
[Token(Token = "0x40082EA")]
|
||||
private int _headerByteCount;
|
||||
|
||||
// Token: 0x040082EB RID: 33515
|
||||
[FieldOffset(Offset = "0x40")]
|
||||
[Token(Token = "0x40082EB")]
|
||||
internal ZlibBaseStream _baseStream;
|
||||
|
||||
// Token: 0x040082EC RID: 33516
|
||||
[FieldOffset(Offset = "0x48")]
|
||||
[Token(Token = "0x40082EC")]
|
||||
private bool _disposed;
|
||||
|
||||
// Token: 0x040082ED RID: 33517
|
||||
[FieldOffset(Offset = "0x49")]
|
||||
[Token(Token = "0x40082ED")]
|
||||
private bool _firstReadDone;
|
||||
|
||||
// Token: 0x040082EE RID: 33518
|
||||
[FieldOffset(Offset = "0x50")]
|
||||
[Token(Token = "0x40082EE")]
|
||||
private string _FileName;
|
||||
|
||||
// Token: 0x040082EF RID: 33519
|
||||
[FieldOffset(Offset = "0x58")]
|
||||
[Token(Token = "0x40082EF")]
|
||||
private string _Comment;
|
||||
|
||||
// Token: 0x040082F0 RID: 33520
|
||||
[FieldOffset(Offset = "0x60")]
|
||||
[Token(Token = "0x40082F0")]
|
||||
private int _Crc32;
|
||||
|
||||
// Token: 0x040082F1 RID: 33521
|
||||
[Token(Token = "0x40082F1")]
|
||||
internal static readonly DateTime _unixEpoch = 0;
|
||||
|
||||
// Token: 0x040082F2 RID: 33522
|
||||
[Token(Token = "0x40082F2")]
|
||||
internal static readonly Encoding iso8859dash1 = Encoding.GetEncoding("iso-8859-1");
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,441 @@
|
||||
using System;
|
||||
using System.Runtime.CompilerServices;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Decompression.Zlib
|
||||
{
|
||||
// Token: 0x02001FA7 RID: 8103
|
||||
[Token(Token = "0x2001FA7")]
|
||||
internal sealed class InfTree
|
||||
{
|
||||
// Token: 0x0600CD8B RID: 52619 RVA: 0x002F20E4 File Offset: 0x002F02E4
|
||||
[Token(Token = "0x600CD8B")]
|
||||
[Address(RVA = "0x196E5E0", Offset = "0x196D3E0", VA = "0x18196E5E0")]
|
||||
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)
|
||||
{
|
||||
}
|
||||
int[] array10 = this.x;
|
||||
array10[0] = num10;
|
||||
this.r[0] = array10;
|
||||
this.r[0] = array10;
|
||||
int[] array11 = this.u;
|
||||
num13 -= (int)num;
|
||||
int[] array12 = this.r;
|
||||
num12 -= num10;
|
||||
array12[1] = num12;
|
||||
int num20 = this.u[(int)num16];
|
||||
num20 += num10;
|
||||
int[] array13 = this.r;
|
||||
}
|
||||
int[] array14 = this.r;
|
||||
num -= (uint)num13;
|
||||
array14[0] = (int)num;
|
||||
if (num11 < num9)
|
||||
{
|
||||
int[] array15 = this.r;
|
||||
num11++;
|
||||
int num21;
|
||||
num21 += 80;
|
||||
array15[0] = array14;
|
||||
int num22;
|
||||
this.r[1] = num22;
|
||||
int[] array16 = this.r;
|
||||
num11++;
|
||||
uint num23;
|
||||
array16[0] = (int)num23;
|
||||
this.r[1] = (int)num23;
|
||||
}
|
||||
int[] array17 = this.r;
|
||||
num -= (uint)num13;
|
||||
uint num24;
|
||||
if (num10 < (int)num24)
|
||||
{
|
||||
int[] array18 = this.r;
|
||||
uint num25;
|
||||
num10 += (int)num25;
|
||||
}
|
||||
uint num26;
|
||||
if (num10 != (int)num26)
|
||||
{
|
||||
while (num10 != (int)num26)
|
||||
{
|
||||
}
|
||||
}
|
||||
int[] array19 = this.x;
|
||||
uint num27;
|
||||
if (num27 != "{il2cpp array field local79->}")
|
||||
{
|
||||
num13 -= (int)num;
|
||||
}
|
||||
while (num14 != 0)
|
||||
{
|
||||
}
|
||||
}
|
||||
num += (uint)1;
|
||||
while (num <= num2)
|
||||
{
|
||||
}
|
||||
if (num2 != (uint)1)
|
||||
{
|
||||
}
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CD8C RID: 52620 RVA: 0x002F2400 File Offset: 0x002F0600
|
||||
[Token(Token = "0x600CD8C")]
|
||||
[Address(RVA = "0x196F1C0", Offset = "0x196DFC0", VA = "0x18196F1C0")]
|
||||
internal int inflate_trees_bits(int[] c, int[] bb, int[] tb, int[] hp, ZlibCodec 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: 0x0600CD8D RID: 52621 RVA: 0x002F2454 File Offset: 0x002F0654
|
||||
[Token(Token = "0x600CD8D")]
|
||||
[Address(RVA = "0x196F310", Offset = "0x196E110", VA = "0x18196F310")]
|
||||
internal int inflate_trees_dynamic(int nl, int nd, int[] c, int[] bl, int[] bd, int[] tl, int[] td, int[] hp, ZlibCodec 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: 0x0600CD8E RID: 52622 RVA: 0x002F24F4 File Offset: 0x002F06F4
|
||||
[Token(Token = "0x600CD8E")]
|
||||
[Address(RVA = "0x196F620", Offset = "0x196E420", VA = "0x18196F620")]
|
||||
internal static int inflate_trees_fixed(int[] bl, int[] bd, int[][] tl, int[][] td, ZlibCodec 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: 0x0600CD8F RID: 52623 RVA: 0x002F2530 File Offset: 0x002F0730
|
||||
[Token(Token = "0x600CD8F")]
|
||||
[Address(RVA = "0x196F7B0", Offset = "0x196E5B0", VA = "0x18196F7B0")]
|
||||
private void initWorkArea(int vsize)
|
||||
{
|
||||
if (this.cplens != (ulong)0L)
|
||||
{
|
||||
int[] array = this.v;
|
||||
if (array.Length < vsize)
|
||||
{
|
||||
int[] array2 = new int[vsize];
|
||||
this.v = array2;
|
||||
}
|
||||
int num = 0;
|
||||
Array.Clear(array, num, vsize);
|
||||
int[] array3 = this.c;
|
||||
int num2 = 0;
|
||||
Array.Clear(array3, num2, 16);
|
||||
int[] array4 = this.r;
|
||||
int num3 = 0;
|
||||
array4[0] = num3;
|
||||
this.r[0] = num3;
|
||||
this.r[1] = num3;
|
||||
int[] array5 = this.u;
|
||||
int num4 = 0;
|
||||
Array.Clear(array5, num4, 15);
|
||||
int[] array6 = this.x;
|
||||
int num5 = 0;
|
||||
Array.Clear(array6, num5, 16);
|
||||
return;
|
||||
}
|
||||
int[] array7 = new int[1];
|
||||
this.hn = array7;
|
||||
int[] array8 = new int[vsize];
|
||||
this.v = array8;
|
||||
int[] array9 = new int[16];
|
||||
this.c = array9;
|
||||
int[] array10 = new int[3];
|
||||
this.r = array10;
|
||||
int[] array11 = new int[15];
|
||||
this.u = array11;
|
||||
int[] array12 = new int[16];
|
||||
this.x = array12;
|
||||
}
|
||||
|
||||
// Token: 0x0600CD90 RID: 52624 RVA: 0x002F2650 File Offset: 0x002F0850
|
||||
[Token(Token = "0x600CD90")]
|
||||
[Address(RVA = "0x3F5100", Offset = "0x3F3F00", VA = "0x1803F5100")]
|
||||
public InfTree()
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0600CD91 RID: 52625 RVA: 0x002F2664 File Offset: 0x002F0864
|
||||
// Note: this type is marked as 'beforefieldinit'.
|
||||
[Token(Token = "0x600CD91")]
|
||||
[Address(RVA = "0x196E460", Offset = "0x196D260", VA = "0x18196E460")]
|
||||
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: 0x040082F3 RID: 33523
|
||||
[Token(Token = "0x40082F3")]
|
||||
private const int MANY = 1440;
|
||||
|
||||
// Token: 0x040082F4 RID: 33524
|
||||
[Token(Token = "0x40082F4")]
|
||||
private const int Z_OK = 0;
|
||||
|
||||
// Token: 0x040082F5 RID: 33525
|
||||
[Token(Token = "0x40082F5")]
|
||||
private const int Z_STREAM_END = 1;
|
||||
|
||||
// Token: 0x040082F6 RID: 33526
|
||||
[Token(Token = "0x40082F6")]
|
||||
private const int Z_NEED_DICT = 2;
|
||||
|
||||
// Token: 0x040082F7 RID: 33527
|
||||
[Token(Token = "0x40082F7")]
|
||||
private const int Z_ERRNO = -1;
|
||||
|
||||
// Token: 0x040082F8 RID: 33528
|
||||
[Token(Token = "0x40082F8")]
|
||||
private const int Z_STREAM_ERROR = -2;
|
||||
|
||||
// Token: 0x040082F9 RID: 33529
|
||||
[Token(Token = "0x40082F9")]
|
||||
private const int Z_DATA_ERROR = -3;
|
||||
|
||||
// Token: 0x040082FA RID: 33530
|
||||
[Token(Token = "0x40082FA")]
|
||||
private const int Z_MEM_ERROR = -4;
|
||||
|
||||
// Token: 0x040082FB RID: 33531
|
||||
[Token(Token = "0x40082FB")]
|
||||
private const int Z_BUF_ERROR = -5;
|
||||
|
||||
// Token: 0x040082FC RID: 33532
|
||||
[Token(Token = "0x40082FC")]
|
||||
private const int Z_VERSION_ERROR = -6;
|
||||
|
||||
// Token: 0x040082FD RID: 33533
|
||||
[Token(Token = "0x40082FD")]
|
||||
internal const int fixed_bl = 9;
|
||||
|
||||
// Token: 0x040082FE RID: 33534
|
||||
[Token(Token = "0x40082FE")]
|
||||
internal const int fixed_bd = 5;
|
||||
|
||||
// Token: 0x040082FF RID: 33535
|
||||
[Token(Token = "0x40082FF")]
|
||||
internal static readonly int[] fixed_tl;
|
||||
|
||||
// Token: 0x04008300 RID: 33536
|
||||
[Token(Token = "0x4008300")]
|
||||
internal static readonly int[] fixed_td;
|
||||
|
||||
// Token: 0x04008301 RID: 33537
|
||||
[Token(Token = "0x4008301")]
|
||||
internal static readonly int[] cplens;
|
||||
|
||||
// Token: 0x04008302 RID: 33538
|
||||
[Token(Token = "0x4008302")]
|
||||
internal static readonly int[] cplext;
|
||||
|
||||
// Token: 0x04008303 RID: 33539
|
||||
[Token(Token = "0x4008303")]
|
||||
internal static readonly int[] cpdist;
|
||||
|
||||
// Token: 0x04008304 RID: 33540
|
||||
[Token(Token = "0x4008304")]
|
||||
internal static readonly int[] cpdext;
|
||||
|
||||
// Token: 0x04008305 RID: 33541
|
||||
[Token(Token = "0x4008305")]
|
||||
internal const int BMAX = 15;
|
||||
|
||||
// Token: 0x04008306 RID: 33542
|
||||
[FieldOffset(Offset = "0x10")]
|
||||
[Token(Token = "0x4008306")]
|
||||
internal int[] hn;
|
||||
|
||||
// Token: 0x04008307 RID: 33543
|
||||
[FieldOffset(Offset = "0x18")]
|
||||
[Token(Token = "0x4008307")]
|
||||
internal int[] v;
|
||||
|
||||
// Token: 0x04008308 RID: 33544
|
||||
[FieldOffset(Offset = "0x20")]
|
||||
[Token(Token = "0x4008308")]
|
||||
internal int[] c;
|
||||
|
||||
// Token: 0x04008309 RID: 33545
|
||||
[FieldOffset(Offset = "0x28")]
|
||||
[Token(Token = "0x4008309")]
|
||||
internal int[] r;
|
||||
|
||||
// Token: 0x0400830A RID: 33546
|
||||
[FieldOffset(Offset = "0x30")]
|
||||
[Token(Token = "0x400830A")]
|
||||
internal int[] u;
|
||||
|
||||
// Token: 0x0400830B RID: 33547
|
||||
[FieldOffset(Offset = "0x38")]
|
||||
[Token(Token = "0x400830B")]
|
||||
internal int[] x;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,352 @@
|
||||
using System;
|
||||
using System.Runtime.CompilerServices;
|
||||
using BestHTTP.Extensions;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Decompression.Zlib
|
||||
{
|
||||
// Token: 0x02001FA8 RID: 8104
|
||||
[Token(Token = "0x2001FA8")]
|
||||
internal sealed class InflateBlocks
|
||||
{
|
||||
// Token: 0x0600CD92 RID: 52626 RVA: 0x002F2710 File Offset: 0x002F0910
|
||||
[Token(Token = "0x600CD92")]
|
||||
[Address(RVA = "0x1971390", Offset = "0x1970190", VA = "0x181971390")]
|
||||
internal InflateBlocks(ZlibCodec codec, object checkfn, int w)
|
||||
{
|
||||
int[] array = new int[1];
|
||||
this.bb = array;
|
||||
int[] array2 = new int[1];
|
||||
this.tb = array2;
|
||||
InflateCodes inflateCodes = new InflateCodes();
|
||||
this.codes = inflateCodes;
|
||||
InfTree infTree = new InfTree();
|
||||
this.inftree = infTree;
|
||||
base..ctor();
|
||||
this._codec = codec;
|
||||
int[] array3 = new int[4320];
|
||||
this.hufts = array3;
|
||||
byte[] array4 = VariableSizedBufferPool.Get((long)w, true);
|
||||
this.window = array4;
|
||||
this.end = w;
|
||||
this.checkfn = checkfn;
|
||||
this.mode = (InflateBlocks.InflateBlockMode)((ulong)0L);
|
||||
uint num = this.Reset();
|
||||
}
|
||||
|
||||
// Token: 0x0600CD93 RID: 52627 RVA: 0x002F27A4 File Offset: 0x002F09A4
|
||||
[Token(Token = "0x600CD93")]
|
||||
[Address(RVA = "0x1971220", Offset = "0x1970020", VA = "0x181971220")]
|
||||
internal uint Reset()
|
||||
{
|
||||
uint num = this.check;
|
||||
int num2 = 0;
|
||||
this.mode = (InflateBlocks.InflateBlockMode)num2;
|
||||
this.bitk = num2;
|
||||
this.readAt = num2;
|
||||
if (this.checkfn != num2)
|
||||
{
|
||||
ZlibCodec codec = this._codec;
|
||||
this.check = (uint)((ulong)1L);
|
||||
codec._Adler32 = (uint)((ulong)1L);
|
||||
}
|
||||
return num;
|
||||
}
|
||||
|
||||
// Token: 0x0600CD94 RID: 52628 RVA: 0x002F27F8 File Offset: 0x002F09F8
|
||||
[Token(Token = "0x600CD94")]
|
||||
[Address(RVA = "0x196FBA0", Offset = "0x196E9A0", VA = "0x18196FBA0")]
|
||||
internal int Process(int r)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CD94)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 BestHTTP.Decompression.Zlib.InflateBlocks::Process(System.Int32)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_B98:
|
||||
stloc:ZlibCodec(var_179_B9E, ldfld:ZlibCodec(InflateBlocks::_codec, ldloc:InflateBlocks(this)))
|
||||
stfld:int32(InflateBlocks::bitb, ldloc:InflateBlocks(this), ldc.i4:int32(0))
|
||||
stfld:int32(InflateBlocks::bitk, ldloc:InflateBlocks(this), ldc.i4:int32(0))
|
||||
stfld:int32(ZlibCodec::AvailableBytesIn, ldloc:ZlibCodec(var_179_B9E), ldc.i4:int32(0))
|
||||
}
|
||||
|
||||
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: 0x0600CD95 RID: 52629 RVA: 0x002F33BC File Offset: 0x002F15BC
|
||||
[Token(Token = "0x600CD95")]
|
||||
[Address(RVA = "0x196FB20", Offset = "0x196E920", VA = "0x18196FB20")]
|
||||
internal void Free()
|
||||
{
|
||||
uint num = this.Reset();
|
||||
VariableSizedBufferPool.Release(this.window);
|
||||
int num2 = 0;
|
||||
this.window = num2;
|
||||
this.hufts = num2;
|
||||
}
|
||||
|
||||
// Token: 0x0600CD96 RID: 52630 RVA: 0x002F33EC File Offset: 0x002F15EC
|
||||
[Token(Token = "0x600CD96")]
|
||||
[Address(RVA = "0x19712E0", Offset = "0x19700E0", VA = "0x1819712E0")]
|
||||
internal void SetDictionary(byte[] d, int start, int n)
|
||||
{
|
||||
byte[] array = this.window;
|
||||
int num = 0;
|
||||
Array.Copy(d, start, array, num, n);
|
||||
this.writeAt = n;
|
||||
this.readAt = n;
|
||||
}
|
||||
|
||||
// Token: 0x0600CD97 RID: 52631 RVA: 0x002F341C File Offset: 0x002F161C
|
||||
[Token(Token = "0x600CD97")]
|
||||
[Address(RVA = "0x18E13F0", Offset = "0x18E01F0", VA = "0x1818E13F0")]
|
||||
internal int SyncPoint()
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CD97)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 BestHTTP.Decompression.Zlib.InflateBlocks::SyncPoint()
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
Block_0:
|
||||
stloc:bool(var_0_09, ceq:bool(ldfld:InflateBlockMode(InflateBlocks::mode, ldloc:InflateBlocks(this)), ldc.i4:InflateBlockMode(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: 0x0600CD98 RID: 52632 RVA: 0x002F3434 File Offset: 0x002F1634
|
||||
[Token(Token = "0x600CD98")]
|
||||
[Address(RVA = "0x196F970", Offset = "0x196E770", VA = "0x18196F970")]
|
||||
internal int Flush(int r)
|
||||
{
|
||||
int num = this.readAt;
|
||||
int num2 = 0;
|
||||
int num3 = this.writeAt;
|
||||
if (num2 != 0 || num > num3)
|
||||
{
|
||||
}
|
||||
num3 -= num;
|
||||
if (num3 != 0)
|
||||
{
|
||||
ZlibCodec codec = this._codec;
|
||||
int num4 = codec.AvailableBytesOut;
|
||||
if (num3 > num4)
|
||||
{
|
||||
num3 = num4;
|
||||
}
|
||||
if (num3 != 0)
|
||||
{
|
||||
}
|
||||
num4 -= num3;
|
||||
codec.AvailableBytesOut = num4;
|
||||
ZlibCodec codec2 = this._codec;
|
||||
if (this.checkfn != num2)
|
||||
{
|
||||
int num5 = this.readAt;
|
||||
ZlibCodec codec3 = this._codec;
|
||||
uint num6 = this.check;
|
||||
byte[] array = this.window;
|
||||
uint num7 = Adler.Adler32(num6, array, num5, num3);
|
||||
this.check = num7;
|
||||
codec3._Adler32 = num7;
|
||||
}
|
||||
ZlibCodec codec4 = this._codec;
|
||||
int nextOut = codec4.NextOut;
|
||||
byte[] outputBuffer = codec4.OutputBuffer;
|
||||
int num8 = this.readAt;
|
||||
Array.Copy(this.window, num8, outputBuffer, nextOut, num3);
|
||||
ZlibCodec codec5 = this._codec;
|
||||
int num9 = this.readAt;
|
||||
int num10 = this.end;
|
||||
num9 += num3;
|
||||
this.readAt = num9;
|
||||
if (num9 == num10 && num2 == 0)
|
||||
{
|
||||
this.readAt = num2;
|
||||
if (this.writeAt != num10)
|
||||
{
|
||||
goto IL_11C;
|
||||
}
|
||||
this.writeAt = num2;
|
||||
}
|
||||
num2++;
|
||||
IL_11C:
|
||||
num2++;
|
||||
}
|
||||
return num2;
|
||||
}
|
||||
|
||||
// Token: 0x0600CD99 RID: 52633 RVA: 0x002F3568 File Offset: 0x002F1768
|
||||
// Note: this type is marked as 'beforefieldinit'.
|
||||
[Token(Token = "0x600CD99")]
|
||||
[Address(RVA = "0x1971330", Offset = "0x1970130", VA = "0x181971330")]
|
||||
static InflateBlocks()
|
||||
{
|
||||
int[] array = new int[19];
|
||||
RuntimeHelpers.InitializeArray(array, fieldof(<PrivateImplementationDetails>.1FDC8DB567F5AAA7068D0D2A601CD71657CBDF38).FieldHandle);
|
||||
InflateBlocks.border = array;
|
||||
}
|
||||
|
||||
// Token: 0x0400830C RID: 33548
|
||||
[Token(Token = "0x400830C")]
|
||||
private const int MANY = 1440;
|
||||
|
||||
// Token: 0x0400830D RID: 33549
|
||||
[Token(Token = "0x400830D")]
|
||||
internal static readonly int[] border;
|
||||
|
||||
// Token: 0x0400830E RID: 33550
|
||||
[FieldOffset(Offset = "0x10")]
|
||||
[Token(Token = "0x400830E")]
|
||||
private InflateBlocks.InflateBlockMode mode;
|
||||
|
||||
// Token: 0x0400830F RID: 33551
|
||||
[FieldOffset(Offset = "0x14")]
|
||||
[Token(Token = "0x400830F")]
|
||||
internal int left;
|
||||
|
||||
// Token: 0x04008310 RID: 33552
|
||||
[FieldOffset(Offset = "0x18")]
|
||||
[Token(Token = "0x4008310")]
|
||||
internal int table;
|
||||
|
||||
// Token: 0x04008311 RID: 33553
|
||||
[FieldOffset(Offset = "0x1C")]
|
||||
[Token(Token = "0x4008311")]
|
||||
internal int index;
|
||||
|
||||
// Token: 0x04008312 RID: 33554
|
||||
[FieldOffset(Offset = "0x20")]
|
||||
[Token(Token = "0x4008312")]
|
||||
internal int[] blens;
|
||||
|
||||
// Token: 0x04008313 RID: 33555
|
||||
[FieldOffset(Offset = "0x28")]
|
||||
[Token(Token = "0x4008313")]
|
||||
internal int[] bb;
|
||||
|
||||
// Token: 0x04008314 RID: 33556
|
||||
[FieldOffset(Offset = "0x30")]
|
||||
[Token(Token = "0x4008314")]
|
||||
internal int[] tb;
|
||||
|
||||
// Token: 0x04008315 RID: 33557
|
||||
[FieldOffset(Offset = "0x38")]
|
||||
[Token(Token = "0x4008315")]
|
||||
internal InflateCodes codes;
|
||||
|
||||
// Token: 0x04008316 RID: 33558
|
||||
[FieldOffset(Offset = "0x40")]
|
||||
[Token(Token = "0x4008316")]
|
||||
internal int last;
|
||||
|
||||
// Token: 0x04008317 RID: 33559
|
||||
[FieldOffset(Offset = "0x48")]
|
||||
[Token(Token = "0x4008317")]
|
||||
internal ZlibCodec _codec;
|
||||
|
||||
// Token: 0x04008318 RID: 33560
|
||||
[FieldOffset(Offset = "0x50")]
|
||||
[Token(Token = "0x4008318")]
|
||||
internal int bitk;
|
||||
|
||||
// Token: 0x04008319 RID: 33561
|
||||
[FieldOffset(Offset = "0x54")]
|
||||
[Token(Token = "0x4008319")]
|
||||
internal int bitb;
|
||||
|
||||
// Token: 0x0400831A RID: 33562
|
||||
[FieldOffset(Offset = "0x58")]
|
||||
[Token(Token = "0x400831A")]
|
||||
internal int[] hufts;
|
||||
|
||||
// Token: 0x0400831B RID: 33563
|
||||
[FieldOffset(Offset = "0x60")]
|
||||
[Token(Token = "0x400831B")]
|
||||
internal byte[] window;
|
||||
|
||||
// Token: 0x0400831C RID: 33564
|
||||
[FieldOffset(Offset = "0x68")]
|
||||
[Token(Token = "0x400831C")]
|
||||
internal int end;
|
||||
|
||||
// Token: 0x0400831D RID: 33565
|
||||
[FieldOffset(Offset = "0x6C")]
|
||||
[Token(Token = "0x400831D")]
|
||||
internal int readAt;
|
||||
|
||||
// Token: 0x0400831E RID: 33566
|
||||
[FieldOffset(Offset = "0x70")]
|
||||
[Token(Token = "0x400831E")]
|
||||
internal int writeAt;
|
||||
|
||||
// Token: 0x0400831F RID: 33567
|
||||
[FieldOffset(Offset = "0x78")]
|
||||
[Token(Token = "0x400831F")]
|
||||
internal object checkfn;
|
||||
|
||||
// Token: 0x04008320 RID: 33568
|
||||
[FieldOffset(Offset = "0x80")]
|
||||
[Token(Token = "0x4008320")]
|
||||
internal uint check;
|
||||
|
||||
// Token: 0x04008321 RID: 33569
|
||||
[FieldOffset(Offset = "0x88")]
|
||||
[Token(Token = "0x4008321")]
|
||||
internal InfTree inftree;
|
||||
|
||||
// Token: 0x02001FA9 RID: 8105
|
||||
[Token(Token = "0x2001FA9")]
|
||||
private enum InflateBlockMode
|
||||
{
|
||||
// Token: 0x04008323 RID: 33571
|
||||
[Token(Token = "0x4008323")]
|
||||
TYPE,
|
||||
// Token: 0x04008324 RID: 33572
|
||||
[Token(Token = "0x4008324")]
|
||||
LENS,
|
||||
// Token: 0x04008325 RID: 33573
|
||||
[Token(Token = "0x4008325")]
|
||||
STORED,
|
||||
// Token: 0x04008326 RID: 33574
|
||||
[Token(Token = "0x4008326")]
|
||||
TABLE,
|
||||
// Token: 0x04008327 RID: 33575
|
||||
[Token(Token = "0x4008327")]
|
||||
BTREE,
|
||||
// Token: 0x04008328 RID: 33576
|
||||
[Token(Token = "0x4008328")]
|
||||
DTREE,
|
||||
// Token: 0x04008329 RID: 33577
|
||||
[Token(Token = "0x4008329")]
|
||||
CODES,
|
||||
// Token: 0x0400832A RID: 33578
|
||||
[Token(Token = "0x400832A")]
|
||||
DRY,
|
||||
// Token: 0x0400832B RID: 33579
|
||||
[Token(Token = "0x400832B")]
|
||||
DONE,
|
||||
// Token: 0x0400832C RID: 33580
|
||||
[Token(Token = "0x400832C")]
|
||||
BAD
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,431 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Decompression.Zlib
|
||||
{
|
||||
// Token: 0x02001FAB RID: 8107
|
||||
[Token(Token = "0x2001FAB")]
|
||||
internal sealed class InflateCodes
|
||||
{
|
||||
// Token: 0x0600CD9B RID: 52635 RVA: 0x002F35B0 File Offset: 0x002F17B0
|
||||
[Token(Token = "0x600CD9B")]
|
||||
[Address(RVA = "0x3F5100", Offset = "0x3F3F00", VA = "0x1803F5100")]
|
||||
internal InflateCodes()
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0600CD9C RID: 52636 RVA: 0x002F35C4 File Offset: 0x002F17C4
|
||||
[Token(Token = "0x600CD9C")]
|
||||
[Address(RVA = "0x18E2030", Offset = "0x18E0E30", VA = "0x1818E2030")]
|
||||
internal void Init(int bl, int bd, int[] tl, int tl_index, int[] td, int td_index)
|
||||
{
|
||||
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: 0x0600CD9D RID: 52637 RVA: 0x002F360C File Offset: 0x002F180C
|
||||
[Token(Token = "0x600CD9D")]
|
||||
[Address(RVA = "0x1972090", Offset = "0x1970E90", VA = "0x181972090")]
|
||||
internal int Process(InflateBlocks blocks, int r)
|
||||
{
|
||||
ZlibCodec codec = blocks._codec;
|
||||
int writeAt = blocks.writeAt;
|
||||
int num = blocks.readAt;
|
||||
int bitb = blocks.bitb;
|
||||
int nextIn = codec.NextIn;
|
||||
int availableBytesIn = codec.AvailableBytesIn;
|
||||
int bitk = blocks.bitk;
|
||||
if (writeAt < num)
|
||||
{
|
||||
num -= writeAt;
|
||||
}
|
||||
int num2 = blocks.end;
|
||||
num2 -= writeAt;
|
||||
blocks.bitb = bitb;
|
||||
blocks.bitk = bitk;
|
||||
codec.AvailableBytesIn = availableBytesIn;
|
||||
codec.NextIn = nextIn;
|
||||
blocks.writeAt = writeAt;
|
||||
int writeAt2 = blocks.writeAt;
|
||||
int num3 = blocks.readAt;
|
||||
int bitb2 = blocks.bitb;
|
||||
int num4 = codec.NextIn;
|
||||
int availableBytesIn2 = codec.AvailableBytesIn;
|
||||
int num5 = blocks.bitk;
|
||||
if (writeAt2 < num3)
|
||||
{
|
||||
num3 -= writeAt2;
|
||||
}
|
||||
int num6 = blocks.end;
|
||||
num6 -= writeAt2;
|
||||
int num7;
|
||||
if (num7 != 0)
|
||||
{
|
||||
}
|
||||
uint num8;
|
||||
if (num5 < (int)num8)
|
||||
{
|
||||
if (availableBytesIn2 == 0)
|
||||
{
|
||||
goto IL_31B;
|
||||
}
|
||||
byte[] inputBuffer = codec.InputBuffer;
|
||||
num4++;
|
||||
num5 += 8;
|
||||
}
|
||||
uint num9;
|
||||
int num10;
|
||||
if (num5 < (int)num9)
|
||||
{
|
||||
if (availableBytesIn2 == 0)
|
||||
{
|
||||
goto IL_31B;
|
||||
}
|
||||
num10 = 0;
|
||||
byte[] inputBuffer2 = codec.InputBuffer;
|
||||
num4++;
|
||||
num5 += 8;
|
||||
}
|
||||
num5 -= (int)num9;
|
||||
if (num5 < (int)num9)
|
||||
{
|
||||
if (availableBytesIn2 == 0)
|
||||
{
|
||||
goto IL_349;
|
||||
}
|
||||
byte[] inputBuffer3 = codec.InputBuffer;
|
||||
num4++;
|
||||
num5 += 8;
|
||||
}
|
||||
num5 -= num10;
|
||||
uint num11;
|
||||
int num12;
|
||||
if (num5 < (int)num11)
|
||||
{
|
||||
if (availableBytesIn2 == 0)
|
||||
{
|
||||
goto IL_31B;
|
||||
}
|
||||
num12 = 0;
|
||||
byte[] inputBuffer4 = codec.InputBuffer;
|
||||
num4++;
|
||||
num5 += 8;
|
||||
}
|
||||
num5 -= (int)num11;
|
||||
int num14;
|
||||
int num15;
|
||||
int num16;
|
||||
if (num6 == 0)
|
||||
{
|
||||
int num13 = blocks.end;
|
||||
if (writeAt2 == num13)
|
||||
{
|
||||
int readAt = blocks.readAt;
|
||||
if (readAt != 0)
|
||||
{
|
||||
if (readAt > 0)
|
||||
{
|
||||
}
|
||||
if (num13 != 0)
|
||||
{
|
||||
goto IL_203;
|
||||
}
|
||||
}
|
||||
}
|
||||
blocks.writeAt = writeAt2;
|
||||
num14 = blocks.Flush(num12);
|
||||
int writeAt3 = blocks.writeAt;
|
||||
int end = blocks.end;
|
||||
int readAt2 = blocks.readAt;
|
||||
if (writeAt3 < readAt2)
|
||||
{
|
||||
num13 = readAt2;
|
||||
num13 -= writeAt3;
|
||||
}
|
||||
num13 -= writeAt3;
|
||||
if (writeAt3 == end && readAt2 != 0)
|
||||
{
|
||||
num15 = 0;
|
||||
num16 = readAt2 - 1;
|
||||
if (readAt2 <= 0)
|
||||
{
|
||||
}
|
||||
}
|
||||
if (num16 == 0)
|
||||
{
|
||||
goto IL_358;
|
||||
}
|
||||
}
|
||||
IL_203:
|
||||
byte[] window = blocks.window;
|
||||
int num17 = writeAt2 + 1;
|
||||
num15++;
|
||||
int length = window.Length;
|
||||
int end2 = blocks.end;
|
||||
int i;
|
||||
if (num16 == 0)
|
||||
{
|
||||
int end3 = blocks.end;
|
||||
int num18;
|
||||
if (num15 == end3)
|
||||
{
|
||||
int readAt3 = blocks.readAt;
|
||||
if (readAt3 != 0)
|
||||
{
|
||||
num18 = 0;
|
||||
int num19;
|
||||
if (readAt3 > 0)
|
||||
{
|
||||
num19 = readAt3 - 1;
|
||||
}
|
||||
if (num19 != 0)
|
||||
{
|
||||
goto IL_2D0;
|
||||
}
|
||||
}
|
||||
}
|
||||
blocks.writeAt = num18;
|
||||
int num20 = blocks.Flush(num14);
|
||||
int readAt4 = blocks.readAt;
|
||||
num14 = num20;
|
||||
int writeAt4 = blocks.writeAt;
|
||||
if (writeAt4 < readAt4)
|
||||
{
|
||||
int num19 = readAt4;
|
||||
num19 -= writeAt4;
|
||||
}
|
||||
int num21 = blocks.end;
|
||||
num21 -= writeAt4;
|
||||
int end4 = blocks.end;
|
||||
int num22;
|
||||
if (writeAt4 == end4 && readAt4 != 0)
|
||||
{
|
||||
i = 0;
|
||||
num22 = readAt4 - 1;
|
||||
num22 = end4;
|
||||
}
|
||||
if (num22 == 0)
|
||||
{
|
||||
goto IL_36E;
|
||||
}
|
||||
}
|
||||
IL_2D0:
|
||||
byte[] window2 = blocks.window;
|
||||
int num23 = 0;
|
||||
i++;
|
||||
while (i <= 9)
|
||||
{
|
||||
}
|
||||
blocks.bitb = bitb2;
|
||||
blocks.bitk = num5;
|
||||
codec.AvailableBytesIn = availableBytesIn2;
|
||||
int num24 = 0;
|
||||
codec.NextIn = num4;
|
||||
blocks.writeAt = i;
|
||||
return blocks.Flush(-2);
|
||||
IL_31B:
|
||||
blocks.bitb = num24;
|
||||
blocks.bitk = 0;
|
||||
blocks.writeAt = 0;
|
||||
blocks.bitb = 0;
|
||||
blocks.bitk = 0;
|
||||
int num25 = 0;
|
||||
blocks.writeAt = 0;
|
||||
IL_349:
|
||||
blocks.bitb = num25;
|
||||
blocks.bitk = 0;
|
||||
IL_358:
|
||||
blocks.bitb = bitb2;
|
||||
blocks.bitk = 0;
|
||||
blocks.writeAt = 0;
|
||||
IL_36E:
|
||||
blocks.bitb = bitb2;
|
||||
blocks.bitk = 0;
|
||||
blocks.writeAt = 0;
|
||||
blocks.writeAt = 0;
|
||||
int num26 = blocks.Flush(num23);
|
||||
int writeAt5 = blocks.writeAt;
|
||||
while (blocks.readAt != writeAt5)
|
||||
{
|
||||
}
|
||||
blocks.bitb = bitb2;
|
||||
blocks.bitk = 0;
|
||||
int num27 = 0;
|
||||
blocks.writeAt = writeAt5;
|
||||
blocks.bitb = num27;
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CD9E RID: 52638 RVA: 0x002F39E8 File Offset: 0x002F1BE8
|
||||
[Token(Token = "0x600CD9E")]
|
||||
[Address(RVA = "0x19714C0", Offset = "0x19702C0", VA = "0x1819714C0")]
|
||||
internal int InflateFast(int bl, int bd, int[] tl, int tl_index, int[] td, int td_index, InflateBlocks s, ZlibCodec z)
|
||||
{
|
||||
int num6;
|
||||
if (bl != 0)
|
||||
{
|
||||
int num = bd + 1;
|
||||
if (bl == 16)
|
||||
{
|
||||
if (bl != 64)
|
||||
{
|
||||
goto IL_67;
|
||||
}
|
||||
while (bl != 0)
|
||||
{
|
||||
}
|
||||
int num2 = bd + 1;
|
||||
}
|
||||
int num3 = bd + 1;
|
||||
if (bl == 16 && bl != 64)
|
||||
{
|
||||
goto IL_73;
|
||||
}
|
||||
int num4 = bd - 1;
|
||||
while (num4 != 0)
|
||||
{
|
||||
}
|
||||
int num5 = 0;
|
||||
num6 = 0;
|
||||
if (num5 != 1)
|
||||
{
|
||||
num6 += 2;
|
||||
num4 -= num6;
|
||||
if (num4 > 0)
|
||||
{
|
||||
num6++;
|
||||
while (num4 != 0)
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
Array.Copy(num6, num6, num6, 1, num4);
|
||||
}
|
||||
IL_67:
|
||||
if (num6 == 32)
|
||||
{
|
||||
}
|
||||
uint num7;
|
||||
num7 -= tl;
|
||||
IL_73:
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0400832E RID: 33582
|
||||
[Token(Token = "0x400832E")]
|
||||
private const int START = 0;
|
||||
|
||||
// Token: 0x0400832F RID: 33583
|
||||
[Token(Token = "0x400832F")]
|
||||
private const int LEN = 1;
|
||||
|
||||
// Token: 0x04008330 RID: 33584
|
||||
[Token(Token = "0x4008330")]
|
||||
private const int LENEXT = 2;
|
||||
|
||||
// Token: 0x04008331 RID: 33585
|
||||
[Token(Token = "0x4008331")]
|
||||
private const int DIST = 3;
|
||||
|
||||
// Token: 0x04008332 RID: 33586
|
||||
[Token(Token = "0x4008332")]
|
||||
private const int DISTEXT = 4;
|
||||
|
||||
// Token: 0x04008333 RID: 33587
|
||||
[Token(Token = "0x4008333")]
|
||||
private const int COPY = 5;
|
||||
|
||||
// Token: 0x04008334 RID: 33588
|
||||
[Token(Token = "0x4008334")]
|
||||
private const int LIT = 6;
|
||||
|
||||
// Token: 0x04008335 RID: 33589
|
||||
[Token(Token = "0x4008335")]
|
||||
private const int WASH = 7;
|
||||
|
||||
// Token: 0x04008336 RID: 33590
|
||||
[Token(Token = "0x4008336")]
|
||||
private const int END = 8;
|
||||
|
||||
// Token: 0x04008337 RID: 33591
|
||||
[Token(Token = "0x4008337")]
|
||||
private const int BADCODE = 9;
|
||||
|
||||
// Token: 0x04008338 RID: 33592
|
||||
[FieldOffset(Offset = "0x10")]
|
||||
[Token(Token = "0x4008338")]
|
||||
internal int mode;
|
||||
|
||||
// Token: 0x04008339 RID: 33593
|
||||
[FieldOffset(Offset = "0x14")]
|
||||
[Token(Token = "0x4008339")]
|
||||
internal int len;
|
||||
|
||||
// Token: 0x0400833A RID: 33594
|
||||
[FieldOffset(Offset = "0x18")]
|
||||
[Token(Token = "0x400833A")]
|
||||
internal int[] tree;
|
||||
|
||||
// Token: 0x0400833B RID: 33595
|
||||
[FieldOffset(Offset = "0x20")]
|
||||
[Token(Token = "0x400833B")]
|
||||
internal int tree_index;
|
||||
|
||||
// Token: 0x0400833C RID: 33596
|
||||
[FieldOffset(Offset = "0x24")]
|
||||
[Token(Token = "0x400833C")]
|
||||
internal int need;
|
||||
|
||||
// Token: 0x0400833D RID: 33597
|
||||
[FieldOffset(Offset = "0x28")]
|
||||
[Token(Token = "0x400833D")]
|
||||
internal int lit;
|
||||
|
||||
// Token: 0x0400833E RID: 33598
|
||||
[FieldOffset(Offset = "0x2C")]
|
||||
[Token(Token = "0x400833E")]
|
||||
internal int bitsToGet;
|
||||
|
||||
// Token: 0x0400833F RID: 33599
|
||||
[FieldOffset(Offset = "0x30")]
|
||||
[Token(Token = "0x400833F")]
|
||||
internal int dist;
|
||||
|
||||
// Token: 0x04008340 RID: 33600
|
||||
[FieldOffset(Offset = "0x34")]
|
||||
[Token(Token = "0x4008340")]
|
||||
internal byte lbits;
|
||||
|
||||
// Token: 0x04008341 RID: 33601
|
||||
[FieldOffset(Offset = "0x35")]
|
||||
[Token(Token = "0x4008341")]
|
||||
internal byte dbits;
|
||||
|
||||
// Token: 0x04008342 RID: 33602
|
||||
[FieldOffset(Offset = "0x38")]
|
||||
[Token(Token = "0x4008342")]
|
||||
internal int[] ltree;
|
||||
|
||||
// Token: 0x04008343 RID: 33603
|
||||
[FieldOffset(Offset = "0x40")]
|
||||
[Token(Token = "0x4008343")]
|
||||
internal int ltree_index;
|
||||
|
||||
// Token: 0x04008344 RID: 33604
|
||||
[FieldOffset(Offset = "0x48")]
|
||||
[Token(Token = "0x4008344")]
|
||||
internal int[] dtree;
|
||||
|
||||
// Token: 0x04008345 RID: 33605
|
||||
[FieldOffset(Offset = "0x50")]
|
||||
[Token(Token = "0x4008345")]
|
||||
internal int dtree_index;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,358 @@
|
||||
using System;
|
||||
using BestHTTP.Extensions;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Decompression.Zlib
|
||||
{
|
||||
// Token: 0x02001FAC RID: 8108
|
||||
[Token(Token = "0x2001FAC")]
|
||||
internal sealed class InflateManager
|
||||
{
|
||||
// Token: 0x170020B7 RID: 8375
|
||||
// (get) Token: 0x0600CD9F RID: 52639 RVA: 0x002F3A70 File Offset: 0x002F1C70
|
||||
// (set) Token: 0x0600CDA0 RID: 52640 RVA: 0x002F3A84 File Offset: 0x002F1C84
|
||||
[Token(Token = "0x170020B7")]
|
||||
internal bool HandleRfc1950HeaderBytes
|
||||
{
|
||||
[Token(Token = "0x600CD9F")]
|
||||
[Address(RVA = "0x4364F0", Offset = "0x4352F0", VA = "0x1804364F0")]
|
||||
get
|
||||
{
|
||||
return this._handleRfc1950HeaderBytes;
|
||||
}
|
||||
[Token(Token = "0x600CDA0")]
|
||||
[Address(RVA = "0x436790", Offset = "0x435590", VA = "0x180436790")]
|
||||
set
|
||||
{
|
||||
this._handleRfc1950HeaderBytes = value;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600CDA1 RID: 52641 RVA: 0x002F3A98 File Offset: 0x002F1C98
|
||||
[Token(Token = "0x600CDA1")]
|
||||
[Address(RVA = "0x106D240", Offset = "0x106C040", VA = "0x18106D240")]
|
||||
public InflateManager()
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0600CDA2 RID: 52642 RVA: 0x002F3AB4 File Offset: 0x002F1CB4
|
||||
[Token(Token = "0x600CDA2")]
|
||||
[Address(RVA = "0x1973E60", Offset = "0x1972C60", VA = "0x181973E60")]
|
||||
public InflateManager(bool expectRfc1950HeaderBytes)
|
||||
{
|
||||
this._handleRfc1950HeaderBytes = expectRfc1950HeaderBytes;
|
||||
}
|
||||
|
||||
// Token: 0x0600CDA3 RID: 52643 RVA: 0x002F3AD8 File Offset: 0x002F1CD8
|
||||
[Token(Token = "0x600CDA3")]
|
||||
[Address(RVA = "0x1973950", Offset = "0x1972750", VA = "0x181973950")]
|
||||
internal int Reset()
|
||||
{
|
||||
ZlibCodec codec = this._codec;
|
||||
int num = 0;
|
||||
codec.TotalBytesOut = (long)num;
|
||||
codec.TotalBytesIn = (long)num;
|
||||
this._codec.Message = num;
|
||||
this.mode = (InflateManager.InflateManagerMode)((uint)7);
|
||||
uint num2 = this.blocks.Reset();
|
||||
return 0;
|
||||
}
|
||||
|
||||
// Token: 0x0600CDA4 RID: 52644 RVA: 0x002F3B24 File Offset: 0x002F1D24
|
||||
[Token(Token = "0x600CDA4")]
|
||||
[Address(RVA = "0x1972D60", Offset = "0x1971B60", VA = "0x181972D60")]
|
||||
internal int End()
|
||||
{
|
||||
InflateBlocks inflateBlocks = this.blocks;
|
||||
if (inflateBlocks != 0)
|
||||
{
|
||||
uint num = inflateBlocks.Reset();
|
||||
VariableSizedBufferPool.Release(inflateBlocks.window);
|
||||
int num2 = 0;
|
||||
inflateBlocks.window = num2;
|
||||
inflateBlocks.hufts = num2;
|
||||
this.blocks = num2;
|
||||
return num2;
|
||||
}
|
||||
int num3 = 0;
|
||||
this.blocks = num3;
|
||||
return num3;
|
||||
}
|
||||
|
||||
// Token: 0x0600CDA5 RID: 52645 RVA: 0x002F3B74 File Offset: 0x002F1D74
|
||||
[Token(Token = "0x600CDA5")]
|
||||
[Address(RVA = "0x1973730", Offset = "0x1972530", VA = "0x181973730")]
|
||||
internal int Initialize(ZlibCodec codec, int w)
|
||||
{
|
||||
this._codec = codec;
|
||||
int num = 0;
|
||||
codec.Message = num;
|
||||
this.blocks = num;
|
||||
this.wbits = w;
|
||||
int[] array = new int[1];
|
||||
InflateBlocks inflateBlocks;
|
||||
inflateBlocks.bb = array;
|
||||
int[] array2 = new int[1];
|
||||
inflateBlocks.tb = array2;
|
||||
InflateCodes inflateCodes = new InflateCodes();
|
||||
inflateBlocks.codes = inflateCodes;
|
||||
InfTree infTree = new InfTree();
|
||||
inflateBlocks.inftree = infTree;
|
||||
inflateBlocks._codec = codec;
|
||||
int[] array3 = new int[4320];
|
||||
inflateBlocks.hufts = array3;
|
||||
byte[] array4;
|
||||
inflateBlocks.window = array4;
|
||||
inflateBlocks.checkfn = num;
|
||||
inflateBlocks.mode = (InflateBlocks.InflateBlockMode)num;
|
||||
uint num2 = inflateBlocks.Reset();
|
||||
this.blocks = inflateBlocks;
|
||||
ZlibCodec codec2 = this._codec;
|
||||
codec2.TotalBytesOut = (long)num;
|
||||
codec2.TotalBytesIn = (long)num;
|
||||
this._codec.Message = num;
|
||||
this.mode = (InflateManager.InflateManagerMode)((uint)7);
|
||||
uint num3 = this.blocks.Reset();
|
||||
return 0;
|
||||
}
|
||||
|
||||
// Token: 0x0600CDA6 RID: 52646 RVA: 0x002F3C70 File Offset: 0x002F1E70
|
||||
[Token(Token = "0x600CDA6")]
|
||||
[Address(RVA = "0x1972E00", Offset = "0x1971C00", VA = "0x181972E00")]
|
||||
internal int Inflate(FlushType flush)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CDA6)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 BestHTTP.Decompression.Zlib.InflateManager::Inflate(BestHTTP.Decompression.Zlib.FlushType)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_5BD:
|
||||
stloc:ZlibException(var_104_5C7, newobj:ZlibException(ZlibException::.ctor, ldstr:string("Stream error.")))
|
||||
}
|
||||
|
||||
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: 0x0600CDA7 RID: 52647 RVA: 0x002F4248 File Offset: 0x002F2448
|
||||
[Token(Token = "0x600CDA7")]
|
||||
[Address(RVA = "0x19739A0", Offset = "0x19727A0", VA = "0x1819739A0")]
|
||||
internal int SetDictionary(byte[] dictionary)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CDA7)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 BestHTTP.Decompression.Zlib.InflateManager::SetDictionary(System.Byte[])
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_9A:
|
||||
stloc:ZlibException(var_14_A4, newobj:ZlibException(ZlibException::.ctor, ldstr:string("Stream error.")))
|
||||
}
|
||||
|
||||
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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: 0x0600CDA8 RID: 52648 RVA: 0x002F42FC File Offset: 0x002F24FC
|
||||
[Token(Token = "0x600CDA8")]
|
||||
[Address(RVA = "0x1973B60", Offset = "0x1972960", VA = "0x181973B60")]
|
||||
internal int Sync()
|
||||
{
|
||||
int num = 0;
|
||||
if (this.mode != InflateManager.InflateManagerMode.BAD)
|
||||
{
|
||||
this.mode = (InflateManager.InflateManagerMode)((ulong)13L);
|
||||
this.marker = num;
|
||||
}
|
||||
ZlibCodec codec = this._codec;
|
||||
int availableBytesIn = codec.AvailableBytesIn;
|
||||
if (availableBytesIn != 0)
|
||||
{
|
||||
int num2 = codec.NextIn;
|
||||
int num3 = this.marker;
|
||||
if (num3 < 4)
|
||||
{
|
||||
byte b = this._codec.InputBuffer[num2];
|
||||
byte[] array = InflateManager.mark;
|
||||
byte[] inputBuffer = this._codec.InputBuffer;
|
||||
if ("{il2cpp array field local11->}" == num)
|
||||
{
|
||||
uint num4;
|
||||
num4 -= (uint)num3;
|
||||
}
|
||||
num++;
|
||||
num2++;
|
||||
while ("{il2cpp array field local11->}" != num)
|
||||
{
|
||||
}
|
||||
}
|
||||
ZlibCodec codec2 = this._codec;
|
||||
this._codec.NextIn = num2;
|
||||
this._codec.AvailableBytesIn = availableBytesIn;
|
||||
this.marker = num;
|
||||
if (num == 4)
|
||||
{
|
||||
ZlibCodec codec3 = this._codec;
|
||||
long totalBytesIn = codec3.TotalBytesIn;
|
||||
long totalBytesOut = codec3.TotalBytesOut;
|
||||
codec3.TotalBytesOut = (long)num;
|
||||
codec3.TotalBytesIn = (long)num;
|
||||
this._codec.Message = num;
|
||||
uint num5;
|
||||
this.mode = (InflateManager.InflateManagerMode)num5;
|
||||
uint num6 = this.blocks.Reset();
|
||||
this._codec.TotalBytesIn = totalBytesIn;
|
||||
this._codec.TotalBytesOut = totalBytesOut;
|
||||
int num7 = 0;
|
||||
this.mode = (InflateManager.InflateManagerMode)num5;
|
||||
return num7;
|
||||
}
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CDA9 RID: 52649 RVA: 0x002F4438 File Offset: 0x002F2638
|
||||
[Token(Token = "0x600CDA9")]
|
||||
[Address(RVA = "0x1973B30", Offset = "0x1972930", VA = "0x181973B30")]
|
||||
internal int SyncPoint(ZlibCodec z)
|
||||
{
|
||||
bool flag = this.blocks.mode == InflateBlocks.InflateBlockMode.LENS;
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CDAA RID: 52650 RVA: 0x002F445C File Offset: 0x002F265C
|
||||
// Note: this type is marked as 'beforefieldinit'.
|
||||
[Token(Token = "0x600CDAA")]
|
||||
[Address(RVA = "0x1973DD0", Offset = "0x1972BD0", VA = "0x181973DD0")]
|
||||
static InflateManager()
|
||||
{
|
||||
byte[] array = new byte[4];
|
||||
array[0] = (byte)((ulong)255L);
|
||||
array[0] = (byte)((ulong)255L);
|
||||
InflateManager.mark = array;
|
||||
}
|
||||
|
||||
// Token: 0x04008346 RID: 33606
|
||||
[Token(Token = "0x4008346")]
|
||||
private const int PRESET_DICT = 32;
|
||||
|
||||
// Token: 0x04008347 RID: 33607
|
||||
[Token(Token = "0x4008347")]
|
||||
private const int Z_DEFLATED = 8;
|
||||
|
||||
// Token: 0x04008348 RID: 33608
|
||||
[FieldOffset(Offset = "0x10")]
|
||||
[Token(Token = "0x4008348")]
|
||||
private InflateManager.InflateManagerMode mode;
|
||||
|
||||
// Token: 0x04008349 RID: 33609
|
||||
[FieldOffset(Offset = "0x18")]
|
||||
[Token(Token = "0x4008349")]
|
||||
internal ZlibCodec _codec;
|
||||
|
||||
// Token: 0x0400834A RID: 33610
|
||||
[FieldOffset(Offset = "0x20")]
|
||||
[Token(Token = "0x400834A")]
|
||||
internal int method;
|
||||
|
||||
// Token: 0x0400834B RID: 33611
|
||||
[FieldOffset(Offset = "0x24")]
|
||||
[Token(Token = "0x400834B")]
|
||||
internal uint computedCheck;
|
||||
|
||||
// Token: 0x0400834C RID: 33612
|
||||
[FieldOffset(Offset = "0x28")]
|
||||
[Token(Token = "0x400834C")]
|
||||
internal uint expectedCheck;
|
||||
|
||||
// Token: 0x0400834D RID: 33613
|
||||
[FieldOffset(Offset = "0x2C")]
|
||||
[Token(Token = "0x400834D")]
|
||||
internal int marker;
|
||||
|
||||
// Token: 0x0400834E RID: 33614
|
||||
[FieldOffset(Offset = "0x30")]
|
||||
[Token(Token = "0x400834E")]
|
||||
private bool _handleRfc1950HeaderBytes = true;
|
||||
|
||||
// Token: 0x0400834F RID: 33615
|
||||
[FieldOffset(Offset = "0x34")]
|
||||
[Token(Token = "0x400834F")]
|
||||
internal int wbits;
|
||||
|
||||
// Token: 0x04008350 RID: 33616
|
||||
[FieldOffset(Offset = "0x38")]
|
||||
[Token(Token = "0x4008350")]
|
||||
internal InflateBlocks blocks;
|
||||
|
||||
// Token: 0x04008351 RID: 33617
|
||||
[Token(Token = "0x4008351")]
|
||||
private static readonly byte[] mark;
|
||||
|
||||
// Token: 0x02001FAD RID: 8109
|
||||
[Token(Token = "0x2001FAD")]
|
||||
private enum InflateManagerMode
|
||||
{
|
||||
// Token: 0x04008353 RID: 33619
|
||||
[Token(Token = "0x4008353")]
|
||||
METHOD,
|
||||
// Token: 0x04008354 RID: 33620
|
||||
[Token(Token = "0x4008354")]
|
||||
FLAG,
|
||||
// Token: 0x04008355 RID: 33621
|
||||
[Token(Token = "0x4008355")]
|
||||
DICT4,
|
||||
// Token: 0x04008356 RID: 33622
|
||||
[Token(Token = "0x4008356")]
|
||||
DICT3,
|
||||
// Token: 0x04008357 RID: 33623
|
||||
[Token(Token = "0x4008357")]
|
||||
DICT2,
|
||||
// Token: 0x04008358 RID: 33624
|
||||
[Token(Token = "0x4008358")]
|
||||
DICT1,
|
||||
// Token: 0x04008359 RID: 33625
|
||||
[Token(Token = "0x4008359")]
|
||||
DICT0,
|
||||
// Token: 0x0400835A RID: 33626
|
||||
[Token(Token = "0x400835A")]
|
||||
BLOCKS,
|
||||
// Token: 0x0400835B RID: 33627
|
||||
[Token(Token = "0x400835B")]
|
||||
CHECK4,
|
||||
// Token: 0x0400835C RID: 33628
|
||||
[Token(Token = "0x400835C")]
|
||||
CHECK3,
|
||||
// Token: 0x0400835D RID: 33629
|
||||
[Token(Token = "0x400835D")]
|
||||
CHECK2,
|
||||
// Token: 0x0400835E RID: 33630
|
||||
[Token(Token = "0x400835E")]
|
||||
CHECK1,
|
||||
// Token: 0x0400835F RID: 33631
|
||||
[Token(Token = "0x400835F")]
|
||||
DONE,
|
||||
// Token: 0x04008360 RID: 33632
|
||||
[Token(Token = "0x4008360")]
|
||||
BAD
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,63 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Decompression.Zlib
|
||||
{
|
||||
// Token: 0x02001FB5 RID: 8117
|
||||
[Token(Token = "0x2001FB5")]
|
||||
internal static class InternalConstants
|
||||
{
|
||||
// Token: 0x0600CDB9 RID: 52665 RVA: 0x002F4B40 File Offset: 0x002F2D40
|
||||
// Note: this type is marked as 'beforefieldinit'.
|
||||
[Token(Token = "0x600CDB9")]
|
||||
[Address(RVA = "0x1973E90", Offset = "0x1972C90", VA = "0x181973E90")]
|
||||
static InternalConstants()
|
||||
{
|
||||
int num = InternalConstants.LITERALS;
|
||||
int num2 = InternalConstants.LENGTH_CODES;
|
||||
num++;
|
||||
num2 += num;
|
||||
InternalConstants.L_CODES = num2;
|
||||
}
|
||||
|
||||
// Token: 0x0400838A RID: 33674
|
||||
[Token(Token = "0x400838A")]
|
||||
internal static readonly int MAX_BITS;
|
||||
|
||||
// Token: 0x0400838B RID: 33675
|
||||
[Token(Token = "0x400838B")]
|
||||
internal static readonly int BL_CODES;
|
||||
|
||||
// Token: 0x0400838C RID: 33676
|
||||
[Token(Token = "0x400838C")]
|
||||
internal static readonly int D_CODES;
|
||||
|
||||
// Token: 0x0400838D RID: 33677
|
||||
[Token(Token = "0x400838D")]
|
||||
internal static readonly int LITERALS;
|
||||
|
||||
// Token: 0x0400838E RID: 33678
|
||||
[Token(Token = "0x400838E")]
|
||||
internal static readonly int LENGTH_CODES;
|
||||
|
||||
// Token: 0x0400838F RID: 33679
|
||||
[Token(Token = "0x400838F")]
|
||||
internal static readonly int L_CODES;
|
||||
|
||||
// Token: 0x04008390 RID: 33680
|
||||
[Token(Token = "0x4008390")]
|
||||
internal static readonly int MAX_BL_BITS;
|
||||
|
||||
// Token: 0x04008391 RID: 33681
|
||||
[Token(Token = "0x4008391")]
|
||||
internal static readonly int REP_3_6;
|
||||
|
||||
// Token: 0x04008392 RID: 33682
|
||||
[Token(Token = "0x4008392")]
|
||||
internal static readonly int REPZ_3_10;
|
||||
|
||||
// Token: 0x04008393 RID: 33683
|
||||
[Token(Token = "0x4008393")]
|
||||
internal static readonly int REPZ_11_138;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
using System;
|
||||
using System.Runtime.CompilerServices;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Decompression.Zlib
|
||||
{
|
||||
// Token: 0x02001FAA RID: 8106
|
||||
[Token(Token = "0x2001FAA")]
|
||||
internal static class InternalInflateConstants
|
||||
{
|
||||
// Token: 0x0600CD9A RID: 52634 RVA: 0x002F3590 File Offset: 0x002F1790
|
||||
// Note: this type is marked as 'beforefieldinit'.
|
||||
[Token(Token = "0x600CD9A")]
|
||||
[Address(RVA = "0x1973F90", Offset = "0x1972D90", VA = "0x181973F90")]
|
||||
static InternalInflateConstants()
|
||||
{
|
||||
RuntimeHelpers.InitializeArray(new int[17], fieldof(<PrivateImplementationDetails>.F584B6C7CCA3CD4ECC3B9B1E20D2F2EFB73DBBDF).FieldHandle);
|
||||
}
|
||||
|
||||
// Token: 0x0400832D RID: 33581
|
||||
[Token(Token = "0x400832D")]
|
||||
internal static readonly int[] InflateMask;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,66 @@
|
||||
using System;
|
||||
using System.IO;
|
||||
using System.Text;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Decompression.Zlib
|
||||
{
|
||||
// Token: 0x02001FB4 RID: 8116
|
||||
[Token(Token = "0x2001FB4")]
|
||||
internal class SharedUtils
|
||||
{
|
||||
// Token: 0x0600CDB4 RID: 52660 RVA: 0x002F4AA8 File Offset: 0x002F2CA8
|
||||
[Token(Token = "0x600CDB4")]
|
||||
[Address(RVA = "0x1974140", Offset = "0x1972F40", VA = "0x181974140")]
|
||||
public static int URShift(int number, int bits)
|
||||
{
|
||||
return number;
|
||||
}
|
||||
|
||||
// Token: 0x0600CDB5 RID: 52661 RVA: 0x002F4AB8 File Offset: 0x002F2CB8
|
||||
[Token(Token = "0x600CDB5")]
|
||||
[Address(RVA = "0x1973FF0", Offset = "0x1972DF0", VA = "0x181973FF0")]
|
||||
public static int ReadInput(TextReader sourceTextReader, byte[] target, int start, int count)
|
||||
{
|
||||
int length = target.Length;
|
||||
if (length != 0)
|
||||
{
|
||||
char[] array = new char[length];
|
||||
if (sourceTextReader.Read() != 0)
|
||||
{
|
||||
if (start < array)
|
||||
{
|
||||
char c = array[start];
|
||||
}
|
||||
return start;
|
||||
}
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CDB6 RID: 52662 RVA: 0x002F4AF4 File Offset: 0x002F2CF4
|
||||
[Token(Token = "0x600CDB6")]
|
||||
[Address(RVA = "0x18E7E50", Offset = "0x18E6C50", VA = "0x1818E7E50")]
|
||||
internal static byte[] ToByteArray(string sourceString)
|
||||
{
|
||||
Encoding utf = Encoding.UTF8;
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CDB7 RID: 52663 RVA: 0x002F4B10 File Offset: 0x002F2D10
|
||||
[Token(Token = "0x600CDB7")]
|
||||
[Address(RVA = "0x1974100", Offset = "0x1972F00", VA = "0x181974100")]
|
||||
internal static char[] ToCharArray(byte[] byteArray)
|
||||
{
|
||||
Encoding utf = Encoding.UTF8;
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CDB8 RID: 52664 RVA: 0x002F4B2C File Offset: 0x002F2D2C
|
||||
[Token(Token = "0x600CDB8")]
|
||||
[Address(RVA = "0x3F5100", Offset = "0x3F3F00", VA = "0x1803F5100")]
|
||||
public SharedUtils()
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,116 @@
|
||||
using System;
|
||||
using System.Runtime.CompilerServices;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Decompression.Zlib
|
||||
{
|
||||
// Token: 0x02001FB6 RID: 8118
|
||||
[Token(Token = "0x2001FB6")]
|
||||
internal sealed class StaticTree
|
||||
{
|
||||
// Token: 0x0600CDBA RID: 52666 RVA: 0x002F4B68 File Offset: 0x002F2D68
|
||||
[Token(Token = "0x600CDBA")]
|
||||
[Address(RVA = "0x1625C10", Offset = "0x1624A10", VA = "0x181625C10")]
|
||||
private StaticTree(short[] treeCodes, int[] extraBits, int extraBase, int elems, int maxLength)
|
||||
{
|
||||
this.elems = 0;
|
||||
this.treeCodes = treeCodes;
|
||||
this.extraBase = extraBase;
|
||||
this.maxLength = 0;
|
||||
this.extraBits = extraBits;
|
||||
}
|
||||
|
||||
// Token: 0x0600CDBB RID: 52667 RVA: 0x002F4BA0 File Offset: 0x002F2DA0
|
||||
[Token(Token = "0x600CDBB")]
|
||||
[Address(RVA = "0x1974150", Offset = "0x1972F50", VA = "0x181974150")]
|
||||
static StaticTree()
|
||||
{
|
||||
short[] array = new short[576];
|
||||
RuntimeHelpers.InitializeArray(array, fieldof(<PrivateImplementationDetails>.EB6F545AEF284339D25594F900E7A395212460EB).FieldHandle);
|
||||
StaticTree.lengthAndLiteralsTreeCodes = array;
|
||||
short[] array2 = new short[60];
|
||||
RuntimeHelpers.InitializeArray(array2, fieldof(<PrivateImplementationDetails>.850D4DC092689E1F0D8A70B6281848B27DEC0014).FieldHandle);
|
||||
StaticTree.distTreeCodes = array2;
|
||||
short[] array3 = StaticTree.lengthAndLiteralsTreeCodes;
|
||||
int[] extraLengthBits = ZTree.ExtraLengthBits;
|
||||
int literals = InternalConstants.LITERALS;
|
||||
int l_CODES = InternalConstants.L_CODES;
|
||||
int max_BITS = InternalConstants.MAX_BITS;
|
||||
StaticTree staticTree;
|
||||
staticTree.treeCodes = array3;
|
||||
int num = literals + 1;
|
||||
staticTree.extraBase = num;
|
||||
staticTree.extraBits = extraLengthBits;
|
||||
staticTree.elems = l_CODES;
|
||||
staticTree.maxLength = max_BITS;
|
||||
StaticTree.Literals = staticTree;
|
||||
short[] array4 = StaticTree.distTreeCodes;
|
||||
int[] extraDistanceBits = ZTree.ExtraDistanceBits;
|
||||
int d_CODES = InternalConstants.D_CODES;
|
||||
int max_BITS2 = InternalConstants.MAX_BITS;
|
||||
StaticTree staticTree2;
|
||||
staticTree2.treeCodes = array4;
|
||||
int num2 = 0;
|
||||
staticTree2.extraBase = num2;
|
||||
staticTree2.extraBits = extraDistanceBits;
|
||||
staticTree2.elems = d_CODES;
|
||||
staticTree2.maxLength = max_BITS2;
|
||||
StaticTree.Distances = staticTree2;
|
||||
int[] extra_blbits = ZTree.extra_blbits;
|
||||
int bl_CODES = InternalConstants.BL_CODES;
|
||||
int max_BL_BITS = InternalConstants.MAX_BL_BITS;
|
||||
StaticTree staticTree3;
|
||||
staticTree3.extraBits = extra_blbits;
|
||||
staticTree3.elems = bl_CODES;
|
||||
staticTree3.treeCodes = num2;
|
||||
staticTree3.extraBase = num2;
|
||||
staticTree3.maxLength = max_BL_BITS;
|
||||
StaticTree.BitLengths = staticTree3;
|
||||
}
|
||||
|
||||
// Token: 0x04008394 RID: 33684
|
||||
[Token(Token = "0x4008394")]
|
||||
internal static readonly short[] lengthAndLiteralsTreeCodes;
|
||||
|
||||
// Token: 0x04008395 RID: 33685
|
||||
[Token(Token = "0x4008395")]
|
||||
internal static readonly short[] distTreeCodes;
|
||||
|
||||
// Token: 0x04008396 RID: 33686
|
||||
[Token(Token = "0x4008396")]
|
||||
internal static readonly StaticTree Literals;
|
||||
|
||||
// Token: 0x04008397 RID: 33687
|
||||
[Token(Token = "0x4008397")]
|
||||
internal static readonly StaticTree Distances;
|
||||
|
||||
// Token: 0x04008398 RID: 33688
|
||||
[Token(Token = "0x4008398")]
|
||||
internal static readonly StaticTree BitLengths;
|
||||
|
||||
// Token: 0x04008399 RID: 33689
|
||||
[FieldOffset(Offset = "0x10")]
|
||||
[Token(Token = "0x4008399")]
|
||||
internal short[] treeCodes;
|
||||
|
||||
// Token: 0x0400839A RID: 33690
|
||||
[FieldOffset(Offset = "0x18")]
|
||||
[Token(Token = "0x400839A")]
|
||||
internal int[] extraBits;
|
||||
|
||||
// Token: 0x0400839B RID: 33691
|
||||
[FieldOffset(Offset = "0x20")]
|
||||
[Token(Token = "0x400839B")]
|
||||
internal int extraBase;
|
||||
|
||||
// Token: 0x0400839C RID: 33692
|
||||
[FieldOffset(Offset = "0x24")]
|
||||
[Token(Token = "0x400839C")]
|
||||
internal int elems;
|
||||
|
||||
// Token: 0x0400839D RID: 33693
|
||||
[FieldOffset(Offset = "0x28")]
|
||||
[Token(Token = "0x400839D")]
|
||||
internal int maxLength;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,347 @@
|
||||
using System;
|
||||
using System.Runtime.CompilerServices;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Decompression.Zlib
|
||||
{
|
||||
// Token: 0x02001FAE RID: 8110
|
||||
[Token(Token = "0x2001FAE")]
|
||||
internal sealed class ZTree
|
||||
{
|
||||
// Token: 0x0600CDAB RID: 52651 RVA: 0x002F4498 File Offset: 0x002F2698
|
||||
[Token(Token = "0x600CDAB")]
|
||||
[Address(RVA = "0x1974E30", Offset = "0x1973C30", VA = "0x181974E30")]
|
||||
internal static int DistanceCode(int dist)
|
||||
{
|
||||
if (dist < 256)
|
||||
{
|
||||
sbyte[] dist_code = ZTree._dist_code;
|
||||
return dist;
|
||||
}
|
||||
sbyte[] dist_code2 = ZTree._dist_code;
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CDAC RID: 52652 RVA: 0x002F44C0 File Offset: 0x002F26C0
|
||||
[Token(Token = "0x600CDAC")]
|
||||
[Address(RVA = "0x1975850", Offset = "0x1974650", VA = "0x181975850")]
|
||||
internal void gen_bitlen(DeflateManager s)
|
||||
{
|
||||
StaticTree staticTree = this.staticTree;
|
||||
short[] array = this.dyn_tree;
|
||||
short[] treeCodes = staticTree.treeCodes;
|
||||
int num = 0;
|
||||
int[] extraBits = staticTree.extraBits;
|
||||
int extraBase = staticTree.extraBase;
|
||||
int num2 = staticTree.maxLength;
|
||||
int num3 = 0;
|
||||
short[] bl_count = s.bl_count;
|
||||
num++;
|
||||
bl_count[0] = (short)num3;
|
||||
int[] heap = s.heap;
|
||||
int num4 = s.heap_max;
|
||||
num4++;
|
||||
array[0] = (short)num3;
|
||||
int num5 = s.heap_max;
|
||||
num5++;
|
||||
int[] heap2 = s.heap;
|
||||
int num6 = array.Length;
|
||||
int num7 = heap2[num5];
|
||||
num5 += num5;
|
||||
num5++;
|
||||
num5++;
|
||||
num6 = num2;
|
||||
if (num5 <= num2)
|
||||
{
|
||||
num6 = num5;
|
||||
}
|
||||
array[0] = (short)num6;
|
||||
short[] bl_count2 = s.bl_count;
|
||||
num5 = num6;
|
||||
num7 -= extraBase;
|
||||
int num8 = extraBits[num7];
|
||||
int num9 = num7 * num7;
|
||||
while (treeCodes == 0)
|
||||
{
|
||||
}
|
||||
num9 += num8;
|
||||
if (num != 0)
|
||||
{
|
||||
short[] bl_count3 = s.bl_count;
|
||||
int num10 = num2 - 1;
|
||||
short num11 = bl_count3[num10];
|
||||
bl_count3[0] = num11;
|
||||
short[] bl_count4 = s.bl_count;
|
||||
num10++;
|
||||
short[] bl_count5 = s.bl_count;
|
||||
if (num2 != 0)
|
||||
{
|
||||
short[] bl_count6 = s.bl_count;
|
||||
if (num10 != 0)
|
||||
{
|
||||
int[] heap3 = s.heap;
|
||||
num2 = num5;
|
||||
int num12 = heap3[num2];
|
||||
int num13 = array.Length;
|
||||
num12 += num12;
|
||||
int num14 = num12 + 1;
|
||||
if (num6 != num2)
|
||||
{
|
||||
num13 = num2;
|
||||
num13 -= num6;
|
||||
array[0] = (short)num2;
|
||||
}
|
||||
while (num10 != 0)
|
||||
{
|
||||
}
|
||||
}
|
||||
while (num10 != 0)
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600CDAD RID: 52653 RVA: 0x002F4660 File Offset: 0x002F2860
|
||||
[Token(Token = "0x600CDAD")]
|
||||
[Address(RVA = "0x1975150", Offset = "0x1973F50", VA = "0x181975150")]
|
||||
internal void build_tree(DeflateManager s)
|
||||
{
|
||||
StaticTree staticTree = this.staticTree;
|
||||
short[] array = this.dyn_tree;
|
||||
short[] treeCodes = staticTree.treeCodes;
|
||||
int num = staticTree.elems;
|
||||
int num2 = 0;
|
||||
s.heap_len = num2;
|
||||
int heap_SIZE = ZTree.HEAP_SIZE;
|
||||
s.heap_max = heap_SIZE;
|
||||
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;
|
||||
sbyte[] 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;
|
||||
sbyte[] depth2 = s.depth;
|
||||
while (treeCodes == 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;
|
||||
sbyte b2;
|
||||
sbyte b3;
|
||||
byte b = Math.Max((byte)b2, (byte)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: 0x0600CDAE RID: 52654 RVA: 0x002F4904 File Offset: 0x002F2B04
|
||||
[Token(Token = "0x600CDAE")]
|
||||
[Address(RVA = "0x1975D70", Offset = "0x1974B70", VA = "0x181975D70")]
|
||||
internal static void gen_codes(short[] tree, int max_code, short[] bl_count)
|
||||
{
|
||||
int num = InternalConstants.MAX_BITS;
|
||||
num++;
|
||||
short[] array = new short[num];
|
||||
int i = 0;
|
||||
short num2;
|
||||
i += (int)num2;
|
||||
i += i;
|
||||
array[0] = (short)i;
|
||||
if (1 != 0)
|
||||
{
|
||||
short num4;
|
||||
short num3 = num4 + 1;
|
||||
array[0] = num3;
|
||||
int num5 = 0;
|
||||
num5 += num5;
|
||||
tree[0] = (short)num5;
|
||||
}
|
||||
i++;
|
||||
i += 2;
|
||||
while (i <= max_code)
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600CDAF RID: 52655 RVA: 0x002F496C File Offset: 0x002F2B6C
|
||||
[Token(Token = "0x600CDAF")]
|
||||
[Address(RVA = "0x1639D80", Offset = "0x1638B80", VA = "0x181639D80")]
|
||||
internal static int bi_reverse(int code, int len)
|
||||
{
|
||||
int num = 0;
|
||||
int num2 = len - 1;
|
||||
return num + num;
|
||||
}
|
||||
|
||||
// Token: 0x0600CDB0 RID: 52656 RVA: 0x002F4984 File Offset: 0x002F2B84
|
||||
[Token(Token = "0x600CDB0")]
|
||||
[Address(RVA = "0x3F5100", Offset = "0x3F3F00", VA = "0x1803F5100")]
|
||||
public ZTree()
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0600CDB1 RID: 52657 RVA: 0x002F4998 File Offset: 0x002F2B98
|
||||
// Note: this type is marked as 'beforefieldinit'.
|
||||
[Token(Token = "0x600CDB1")]
|
||||
[Address(RVA = "0x1974F20", Offset = "0x1973D20", VA = "0x181974F20")]
|
||||
static ZTree()
|
||||
{
|
||||
int[] array = new int[29];
|
||||
RuntimeHelpers.InitializeArray(array, fieldof(<PrivateImplementationDetails>.67C0E784F3654B008A81E2988588CF4956CCF3DA).FieldHandle);
|
||||
ZTree.ExtraLengthBits = array;
|
||||
int[] array2 = new int[30];
|
||||
RuntimeHelpers.InitializeArray(array2, fieldof(<PrivateImplementationDetails>.79D521E6E3E55103005E9CC3FA43B3174FAF090F).FieldHandle);
|
||||
ZTree.ExtraDistanceBits = array2;
|
||||
int[] array3 = new int[19];
|
||||
RuntimeHelpers.InitializeArray(array3, fieldof(<PrivateImplementationDetails>.8457F44B035C9073EE2D1F132D0A8AF5631DCDC8).FieldHandle);
|
||||
ZTree.extra_blbits = array3;
|
||||
sbyte[] array4 = new sbyte[19];
|
||||
RuntimeHelpers.InitializeArray(array4, fieldof(<PrivateImplementationDetails>.9F8365E9D6C62D3B47026EC465B05A7B5526B5CD).FieldHandle);
|
||||
ZTree.bl_order = array4;
|
||||
sbyte[] array5 = new sbyte[512];
|
||||
RuntimeHelpers.InitializeArray(array5, fieldof(<PrivateImplementationDetails>.3544182260B8A15D332367E48C7530FC0E901FD3).FieldHandle);
|
||||
ZTree._dist_code = array5;
|
||||
sbyte[] array6 = new sbyte[256];
|
||||
RuntimeHelpers.InitializeArray(array6, fieldof(<PrivateImplementationDetails>.6A316789EED01119DE92841832701A40AB0CABD6).FieldHandle);
|
||||
ZTree.LengthCode = array6;
|
||||
int[] array7 = new int[29];
|
||||
RuntimeHelpers.InitializeArray(array7, fieldof(<PrivateImplementationDetails>.2E868D9F2085DF93F11F58DE61C05E0D8A8F4A71).FieldHandle);
|
||||
ZTree.LengthBase = array7;
|
||||
int[] array8 = new int[30];
|
||||
RuntimeHelpers.InitializeArray(array8, fieldof(<PrivateImplementationDetails>.5581A70566F03554D8048EDBFC6E6B399AF9BCB1).FieldHandle);
|
||||
ZTree.DistanceBase = array8;
|
||||
}
|
||||
|
||||
// Token: 0x04008361 RID: 33633
|
||||
[Token(Token = "0x4008361")]
|
||||
private static readonly int HEAP_SIZE;
|
||||
|
||||
// Token: 0x04008362 RID: 33634
|
||||
[Token(Token = "0x4008362")]
|
||||
internal static readonly int[] ExtraLengthBits;
|
||||
|
||||
// Token: 0x04008363 RID: 33635
|
||||
[Token(Token = "0x4008363")]
|
||||
internal static readonly int[] ExtraDistanceBits;
|
||||
|
||||
// Token: 0x04008364 RID: 33636
|
||||
[Token(Token = "0x4008364")]
|
||||
internal static readonly int[] extra_blbits;
|
||||
|
||||
// Token: 0x04008365 RID: 33637
|
||||
[Token(Token = "0x4008365")]
|
||||
internal static readonly sbyte[] bl_order;
|
||||
|
||||
// Token: 0x04008366 RID: 33638
|
||||
[Token(Token = "0x4008366")]
|
||||
internal const int Buf_size = 16;
|
||||
|
||||
// Token: 0x04008367 RID: 33639
|
||||
[Token(Token = "0x4008367")]
|
||||
private static readonly sbyte[] _dist_code;
|
||||
|
||||
// Token: 0x04008368 RID: 33640
|
||||
[Token(Token = "0x4008368")]
|
||||
internal static readonly sbyte[] LengthCode;
|
||||
|
||||
// Token: 0x04008369 RID: 33641
|
||||
[Token(Token = "0x4008369")]
|
||||
internal static readonly int[] LengthBase;
|
||||
|
||||
// Token: 0x0400836A RID: 33642
|
||||
[Token(Token = "0x400836A")]
|
||||
internal static readonly int[] DistanceBase;
|
||||
|
||||
// Token: 0x0400836B RID: 33643
|
||||
[FieldOffset(Offset = "0x10")]
|
||||
[Token(Token = "0x400836B")]
|
||||
internal short[] dyn_tree;
|
||||
|
||||
// Token: 0x0400836C RID: 33644
|
||||
[FieldOffset(Offset = "0x18")]
|
||||
[Token(Token = "0x400836C")]
|
||||
internal int max_code;
|
||||
|
||||
// Token: 0x0400836D RID: 33645
|
||||
[FieldOffset(Offset = "0x20")]
|
||||
[Token(Token = "0x400836D")]
|
||||
internal StaticTree staticTree;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,723 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using BestHTTP.Decompression.Crc;
|
||||
using BestHTTP.Extensions;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Decompression.Zlib
|
||||
{
|
||||
// Token: 0x02001FB9 RID: 8121
|
||||
[Token(Token = "0x2001FB9")]
|
||||
internal class ZlibBaseStream : Stream
|
||||
{
|
||||
// Token: 0x170020B8 RID: 8376
|
||||
// (get) Token: 0x0600CDBF RID: 52671 RVA: 0x002F4D78 File Offset: 0x002F2F78
|
||||
[Token(Token = "0x170020B8")]
|
||||
internal int Crc32
|
||||
{
|
||||
[Token(Token = "0x600CDBF")]
|
||||
[Address(RVA = "0x1977D10", Offset = "0x1976B10", VA = "0x181977D10")]
|
||||
get
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CDBF)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 BestHTTP.Decompression.Zlib.ZlibBaseStream::get_Crc32()
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
Block_0:
|
||||
stloc:uint32(var_1_11, ldfld:uint32(CRC32::_register, ldloc:CRC32(var_0_06)))
|
||||
}
|
||||
|
||||
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: 0x0600CDC0 RID: 52672 RVA: 0x002F4D98 File Offset: 0x002F2F98
|
||||
[Token(Token = "0x600CDC0")]
|
||||
[Address(RVA = "0x1977190", Offset = "0x1975F90", VA = "0x181977190")]
|
||||
public ZlibBaseStream(Stream stream, CompressionMode compressionMode, CompressionLevel level, ZlibStreamFlavor flavor, bool leaveOpen)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0600CDC1 RID: 52673 RVA: 0x002F4DA8 File Offset: 0x002F2FA8
|
||||
[Token(Token = "0x600CDC1")]
|
||||
[Address(RVA = "0x19771C0", Offset = "0x1975FC0", VA = "0x1819771C0")]
|
||||
public ZlibBaseStream(Stream stream, CompressionMode compressionMode, CompressionLevel level, ZlibStreamFlavor flavor, bool leaveOpen, int windowBits)
|
||||
{
|
||||
this._streamMode = (ZlibBaseStream.StreamMode)((ulong)2L);
|
||||
this._bufferSize = (int)((ulong)16384L);
|
||||
byte[] array = new byte[1];
|
||||
this._buf1 = array;
|
||||
base..ctor();
|
||||
this._leaveOpen = false;
|
||||
this.windowBitsMax = 0;
|
||||
this._flushMode = (FlushType)((ulong)0L);
|
||||
this._stream = stream;
|
||||
this._compressionMode = compressionMode;
|
||||
this._flavor = (ZlibStreamFlavor)0;
|
||||
this._level = level;
|
||||
int num;
|
||||
CRC32 crc = new CRC32(-306674912, num != 0);
|
||||
num = 0;
|
||||
this.crc = crc;
|
||||
}
|
||||
|
||||
// Token: 0x170020B9 RID: 8377
|
||||
// (get) Token: 0x0600CDC2 RID: 52674 RVA: 0x002F4E30 File Offset: 0x002F3030
|
||||
[Token(Token = "0x170020B9")]
|
||||
protected internal bool _wantCompress
|
||||
{
|
||||
[Token(Token = "0x600CDC2")]
|
||||
[Address(RVA = "0x6DAE90", Offset = "0x6D9C90", VA = "0x1806DAE90")]
|
||||
get
|
||||
{
|
||||
return this._compressionMode == CompressionMode.Compress;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x170020BA RID: 8378
|
||||
// (get) Token: 0x0600CDC3 RID: 52675 RVA: 0x002F4E48 File Offset: 0x002F3048
|
||||
[Token(Token = "0x170020BA")]
|
||||
private ZlibCodec z
|
||||
{
|
||||
[Token(Token = "0x600CDC3")]
|
||||
[Address(RVA = "0x1977E20", Offset = "0x1976C20", VA = "0x181977E20")]
|
||||
get
|
||||
{
|
||||
if (this._z == (ulong)0L)
|
||||
{
|
||||
bool flag = this._flavor == ZlibStreamFlavor.ZLIB;
|
||||
ZlibCodec zlibCodec = new ZlibCodec();
|
||||
zlibCodec.CompressLevel = (CompressionLevel)((ulong)6L);
|
||||
zlibCodec.WindowBits = (int)((ulong)15L);
|
||||
this._z = zlibCodec;
|
||||
if (this._compressionMode != CompressionMode.Decompress)
|
||||
{
|
||||
CompressionStrategy strategy = this.Strategy;
|
||||
zlibCodec.Strategy = strategy;
|
||||
ZlibCodec z = this._z;
|
||||
int num = this.windowBitsMax;
|
||||
CompressionLevel level = this._level;
|
||||
z.WindowBits = num;
|
||||
z.CompressLevel = level;
|
||||
int num2 = z._InternalInitializeDeflate(flag);
|
||||
}
|
||||
int num3 = this.windowBitsMax;
|
||||
int num4 = zlibCodec.InitializeInflate(num3, flag);
|
||||
}
|
||||
return this._z;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x170020BB RID: 8379
|
||||
// (get) Token: 0x0600CDC4 RID: 52676 RVA: 0x002F4EF8 File Offset: 0x002F30F8
|
||||
[Token(Token = "0x170020BB")]
|
||||
private byte[] workingBuffer
|
||||
{
|
||||
[Token(Token = "0x600CDC4")]
|
||||
[Address(RVA = "0x1977DA0", Offset = "0x1976BA0", VA = "0x181977DA0")]
|
||||
get
|
||||
{
|
||||
if (this._workingBuffer == (ulong)0L)
|
||||
{
|
||||
byte[] array = VariableSizedBufferPool.Get((long)this._bufferSize, true);
|
||||
this._workingBuffer = array;
|
||||
}
|
||||
return this._workingBuffer;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600CDC5 RID: 52677 RVA: 0x002F4F2C File Offset: 0x002F312C
|
||||
[Token(Token = "0x600CDC5")]
|
||||
[Address(RVA = "0x1976910", Offset = "0x1975710", VA = "0x181976910", Slot = "29")]
|
||||
public override void Write(byte[] buffer, int offset, int count)
|
||||
{
|
||||
int num;
|
||||
ZlibCodec z3;
|
||||
do
|
||||
{
|
||||
CRC32 crc = this.crc;
|
||||
num = 0;
|
||||
if (crc != 0)
|
||||
{
|
||||
crc.SlurpBlock(buffer, offset, count);
|
||||
}
|
||||
ZlibBaseStream.StreamMode streamMode = this._streamMode;
|
||||
if (streamMode != ZlibBaseStream.StreamMode.Undefined && streamMode != ZlibBaseStream.StreamMode.Writer)
|
||||
{
|
||||
goto IL_14C;
|
||||
}
|
||||
this._streamMode = (ZlibBaseStream.StreamMode)num;
|
||||
if (count == 0)
|
||||
{
|
||||
return;
|
||||
}
|
||||
this.z.InputBuffer = buffer;
|
||||
this._z.NextIn = offset;
|
||||
this._z.AvailableBytesIn = count;
|
||||
ZlibCodec z = this._z;
|
||||
if (this._workingBuffer == num)
|
||||
{
|
||||
ulong num2;
|
||||
byte[] array = VariableSizedBufferPool.Get((long)this._bufferSize, num2 != 0UL);
|
||||
this._workingBuffer = array;
|
||||
}
|
||||
byte[] workingBuffer = this._workingBuffer;
|
||||
z.OutputBuffer = workingBuffer;
|
||||
this._z.NextOut = num;
|
||||
byte[] workingBuffer2 = this._workingBuffer;
|
||||
ZlibCodec z2 = this._z;
|
||||
int length = workingBuffer2.Length;
|
||||
z2.AvailableBytesOut = length;
|
||||
z3 = this._z;
|
||||
FlushType flushMode = this._flushMode;
|
||||
if (this._compressionMode == (CompressionMode)num && z3.dstate == 0)
|
||||
{
|
||||
goto IL_158;
|
||||
}
|
||||
}
|
||||
while (z3.istate == 0);
|
||||
int num3;
|
||||
if (num3 > 1)
|
||||
{
|
||||
goto IL_164;
|
||||
}
|
||||
byte[] workingBuffer3 = this._workingBuffer;
|
||||
ZlibCodec z4 = this._z;
|
||||
int num4 = this._stream.ReadByte();
|
||||
int availableBytesIn = this._z.AvailableBytesIn;
|
||||
if (availableBytesIn != 0)
|
||||
{
|
||||
}
|
||||
if (this._flavor != ZlibStreamFlavor.GZIP || this._compressionMode == (CompressionMode)num || availableBytesIn == 8)
|
||||
{
|
||||
}
|
||||
while (num == 0)
|
||||
{
|
||||
}
|
||||
return;
|
||||
IL_14C:
|
||||
ZlibException ex = new ZlibException("Cannot Write after Reading.");
|
||||
IL_158:
|
||||
ZlibException ex2 = new ZlibException("No Deflate State!");
|
||||
IL_164:
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CDC6 RID: 52678 RVA: 0x002F50AC File Offset: 0x002F32AC
|
||||
[Token(Token = "0x600CDC6")]
|
||||
[Address(RVA = "0x1977420", Offset = "0x1976220", VA = "0x181977420")]
|
||||
private void finish()
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CDC6)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.Decompression.Zlib.ZlibBaseStream::finish()
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_297:
|
||||
stloc:ZlibException(var_47_2AA, newobj:ZlibException(ZlibException::.ctor, call:string(string::Format, ldstr:string("Bad size in GZIP trailer. (actual({0})!=expected({1}))"), ldloc:ZlibException[exp:object](var_46), ldloc:ZlibException[exp:object](var_46))))
|
||||
}
|
||||
|
||||
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: 0x0600CDC7 RID: 52679 RVA: 0x002F5364 File Offset: 0x002F3564
|
||||
[Token(Token = "0x600CDC7")]
|
||||
[Address(RVA = "0x19772B0", Offset = "0x19760B0", VA = "0x1819772B0")]
|
||||
private void end()
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CDC7)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.Decompression.Zlib.ZlibBaseStream::end()
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_7A:
|
||||
stloc:ZlibException(var_5_84, newobj:ZlibException(ZlibException::.ctor, ldstr:string("No Deflate State!")))
|
||||
}
|
||||
|
||||
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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: 0x0600CDC8 RID: 52680 RVA: 0x002F53F8 File Offset: 0x002F35F8
|
||||
[Token(Token = "0x600CDC8")]
|
||||
[Address(RVA = "0x1975FA0", Offset = "0x1974DA0", VA = "0x181975FA0", Slot = "15")]
|
||||
public override void Close()
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CDC8)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.Decompression.Zlib.ZlibBaseStream::Close()
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_A0:
|
||||
stloc:ZlibException(var_6_AA, newobj:ZlibException(ZlibException::.ctor, ldstr:string("No Deflate State!")))
|
||||
}
|
||||
|
||||
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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: 0x0600CDC9 RID: 52681 RVA: 0x002F54B0 File Offset: 0x002F36B0
|
||||
[Token(Token = "0x600CDC9")]
|
||||
[Address(RVA = "0x1976190", Offset = "0x1974F90", VA = "0x181976190", Slot = "17")]
|
||||
public override void Flush()
|
||||
{
|
||||
bool canRead = this._stream.CanRead;
|
||||
}
|
||||
|
||||
// Token: 0x0600CDCA RID: 52682 RVA: 0x002F54D0 File Offset: 0x002F36D0
|
||||
[Token(Token = "0x600CDCA")]
|
||||
[Address(RVA = "0x1976880", Offset = "0x1975680", VA = "0x181976880", Slot = "25")]
|
||||
public override long Seek(long offset, SeekOrigin origin)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CDCA)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int64 BestHTTP.Decompression.Zlib.ZlibBaseStream::Seek(System.Int64,System.IO.SeekOrigin)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
Block_0:
|
||||
stloc:NotImplementedException(var_0_05, newobj:NotImplementedException(NotImplementedException::.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: 0x0600CDCB RID: 52683 RVA: 0x002F54E4 File Offset: 0x002F36E4
|
||||
[Token(Token = "0x600CDCB")]
|
||||
[Address(RVA = "0x19768D0", Offset = "0x19756D0", VA = "0x1819768D0", Slot = "26")]
|
||||
public override void SetLength(long value)
|
||||
{
|
||||
Stream stream = this._stream;
|
||||
this.nomoreinput = false;
|
||||
}
|
||||
|
||||
// Token: 0x0600CDCC RID: 52684 RVA: 0x002F5508 File Offset: 0x002F3708
|
||||
[Token(Token = "0x600CDCC")]
|
||||
[Address(RVA = "0x19761C0", Offset = "0x1974FC0", VA = "0x1819761C0")]
|
||||
private string ReadZeroTerminatedString()
|
||||
{
|
||||
List<byte> list = new List();
|
||||
Stream stream = this._stream;
|
||||
byte b = this._buf1[0];
|
||||
list.Add(b);
|
||||
byte[] array = list.ToArray();
|
||||
return GZipStream.iso8859dash1.GetString(array);
|
||||
}
|
||||
|
||||
// Token: 0x0600CDCD RID: 52685 RVA: 0x002F5550 File Offset: 0x002F3750
|
||||
[Token(Token = "0x600CDCD")]
|
||||
[Address(RVA = "0x1976CB0", Offset = "0x1975AB0", VA = "0x181976CB0")]
|
||||
private int _ReadAndValidateGzipHeader()
|
||||
{
|
||||
byte[] array;
|
||||
do
|
||||
{
|
||||
uint num;
|
||||
ulong num2;
|
||||
array = VariableSizedBufferPool.Get((long)num, num2 != 0UL);
|
||||
Stream stream = this._stream;
|
||||
int length = array.Length;
|
||||
}
|
||||
while ("{il2cpp array field local5->}" != (ulong)31L || "{il2cpp array field local5->}" != (ulong)139L || "{il2cpp array field local5->}" != (ulong)8L);
|
||||
int num3 = BitConverter.ToInt32(array, (int)8.487983164E-314);
|
||||
DateTime unixEpoch = GZipStream._unixEpoch;
|
||||
DateTime dateTime;
|
||||
this._GzipMtime = dateTime;
|
||||
int length2 = array.Length;
|
||||
if ("{il2cpp array field local5->}" != (ulong)4L)
|
||||
{
|
||||
Stream stream2 = this._stream;
|
||||
int length3 = array.Length;
|
||||
byte b = array[0];
|
||||
byte b2 = array[0];
|
||||
uint num4;
|
||||
byte b3 = (byte)((uint)b * num4);
|
||||
b3 += b2;
|
||||
Stream stream3 = this._stream;
|
||||
}
|
||||
if ("{il2cpp array field local5->}" != (ulong)8L)
|
||||
{
|
||||
string text = this.ReadZeroTerminatedString();
|
||||
this._GzipFileName = text;
|
||||
int length4 = array.Length;
|
||||
}
|
||||
if ("{il2cpp array field local5->}" != (ulong)16L)
|
||||
{
|
||||
string text2 = this.ReadZeroTerminatedString();
|
||||
this._GzipComment = text2;
|
||||
int length5 = array.Length;
|
||||
}
|
||||
if ("{il2cpp array field local5->}" != (ulong)2L)
|
||||
{
|
||||
}
|
||||
VariableSizedBufferPool.Release(array);
|
||||
VariableSizedBufferPool.Release(array);
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CDCE RID: 52686 RVA: 0x002F5664 File Offset: 0x002F3864
|
||||
[Token(Token = "0x600CDCE")]
|
||||
[Address(RVA = "0x1976350", Offset = "0x1975150", VA = "0x181976350", Slot = "27")]
|
||||
public override int Read(byte[] buffer, int offset, int count)
|
||||
{
|
||||
int num;
|
||||
int num4;
|
||||
bool flag;
|
||||
for (;;)
|
||||
{
|
||||
num = 0;
|
||||
if (this._streamMode == ZlibBaseStream.StreamMode.Undefined)
|
||||
{
|
||||
this._stream.Dispose();
|
||||
this._streamMode = (ZlibBaseStream.StreamMode)((ulong)1L);
|
||||
this.z.AvailableBytesIn = num;
|
||||
if (this._flavor == ZlibStreamFlavor.GZIP)
|
||||
{
|
||||
int num2 = this._ReadAndValidateGzipHeader();
|
||||
this._gzipHeaderByteCount = num2;
|
||||
if (num2 == 0)
|
||||
{
|
||||
goto IL_1D9;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (this._streamMode != ZlibBaseStream.StreamMode.Reader || count == 0 || ((this.nomoreinput ? 1 : 0) != num && this._compressionMode == (CompressionMode)num))
|
||||
{
|
||||
goto IL_1D9;
|
||||
}
|
||||
if (buffer != 0)
|
||||
{
|
||||
this._z.OutputBuffer = buffer;
|
||||
this._z.NextOut = offset;
|
||||
this._z.AvailableBytesOut = count;
|
||||
ZlibCodec z = this._z;
|
||||
byte[] workingBuffer = this.workingBuffer;
|
||||
z.InputBuffer = workingBuffer;
|
||||
ZlibCodec z2 = this._z;
|
||||
ZlibCodec z4;
|
||||
if (z2.AvailableBytesIn == num && (this.nomoreinput ? 1 : 0) == num)
|
||||
{
|
||||
z2.NextIn = num;
|
||||
byte[] workingBuffer2 = this._workingBuffer;
|
||||
ZlibCodec z3 = this._z;
|
||||
Stream stream = this._stream;
|
||||
int length = workingBuffer2.Length;
|
||||
z4 = this._z;
|
||||
if (z4.AvailableBytesIn == num)
|
||||
{
|
||||
this.nomoreinput = true;
|
||||
}
|
||||
}
|
||||
FlushType flushMode = this._flushMode;
|
||||
if (this._compressionMode == (CompressionMode)num)
|
||||
{
|
||||
int num3 = z4.Deflate(flushMode);
|
||||
}
|
||||
num4 = z4.Inflate(flushMode);
|
||||
flag = this.nomoreinput;
|
||||
if (flag && num4 == -5)
|
||||
{
|
||||
goto IL_1D9;
|
||||
}
|
||||
if (num4 <= 1)
|
||||
{
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
ZlibCodec z5;
|
||||
if ((!flag && num4 != 1) || this._z.AvailableBytesOut != count)
|
||||
{
|
||||
z5 = this._z;
|
||||
if (z5.AvailableBytesOut <= num || flag || num4 == 0)
|
||||
{
|
||||
}
|
||||
}
|
||||
if (z5.AvailableBytesOut <= num || !flag || this._compressionMode != (CompressionMode)num || z5.Deflate(FlushType.Finish) <= 1)
|
||||
{
|
||||
ZlibCodec z6 = this._z;
|
||||
CRC32 crc = this.crc;
|
||||
if (crc != 0)
|
||||
{
|
||||
crc.SlurpBlock(buffer, offset, count);
|
||||
}
|
||||
return count;
|
||||
}
|
||||
goto IL_1F1;
|
||||
IL_1D9:
|
||||
ZlibException ex = new ZlibException("Cannot Read after Writing.");
|
||||
ZlibException ex2 = new ZlibException("The stream is not readable.");
|
||||
IL_1F1:
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x170020BC RID: 8380
|
||||
// (get) Token: 0x0600CDCF RID: 52687 RVA: 0x002F587C File Offset: 0x002F3A7C
|
||||
[Token(Token = "0x170020BC")]
|
||||
public override bool CanRead
|
||||
{
|
||||
[Token(Token = "0x600CDCF")]
|
||||
[Address(RVA = "0x1977C80", Offset = "0x1976A80", VA = "0x181977C80", Slot = "7")]
|
||||
get
|
||||
{
|
||||
return this._stream.CanRead;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x170020BD RID: 8381
|
||||
// (get) Token: 0x0600CDD0 RID: 52688 RVA: 0x002F589C File Offset: 0x002F3A9C
|
||||
[Token(Token = "0x170020BD")]
|
||||
public override bool CanSeek
|
||||
{
|
||||
[Token(Token = "0x600CDD0")]
|
||||
[Address(RVA = "0x1977CB0", Offset = "0x1976AB0", VA = "0x181977CB0", Slot = "8")]
|
||||
get
|
||||
{
|
||||
return this._stream.CanRead;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x170020BE RID: 8382
|
||||
// (get) Token: 0x0600CDD1 RID: 52689 RVA: 0x002F58BC File Offset: 0x002F3ABC
|
||||
[Token(Token = "0x170020BE")]
|
||||
public override bool CanWrite
|
||||
{
|
||||
[Token(Token = "0x600CDD1")]
|
||||
[Address(RVA = "0x1977CE0", Offset = "0x1976AE0", VA = "0x181977CE0", Slot = "9")]
|
||||
get
|
||||
{
|
||||
return this._stream.CanRead;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x170020BF RID: 8383
|
||||
// (get) Token: 0x0600CDD2 RID: 52690 RVA: 0x002F58DC File Offset: 0x002F3ADC
|
||||
[Token(Token = "0x170020BF")]
|
||||
public override long Length
|
||||
{
|
||||
[Token(Token = "0x600CDD2")]
|
||||
[Address(RVA = "0x1977D20", Offset = "0x1976B20", VA = "0x181977D20", Slot = "10")]
|
||||
get
|
||||
{
|
||||
bool canRead = this._stream.CanRead;
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x170020C0 RID: 8384
|
||||
// (get) Token: 0x0600CDD3 RID: 52691 RVA: 0x002F58FC File Offset: 0x002F3AFC
|
||||
// (set) Token: 0x0600CDD4 RID: 52692 RVA: 0x002F5910 File Offset: 0x002F3B10
|
||||
[Token(Token = "0x170020C0")]
|
||||
public override long Position
|
||||
{
|
||||
[Token(Token = "0x600CDD3")]
|
||||
[Address(RVA = "0x1977D50", Offset = "0x1976B50", VA = "0x181977D50", Slot = "11")]
|
||||
get
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CDD3)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int64 BestHTTP.Decompression.Zlib.ZlibBaseStream::get_Position()
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
Block_0:
|
||||
stloc:NotImplementedException(var_0_05, newobj:NotImplementedException(NotImplementedException::.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 = "0x600CDD4")]
|
||||
[Address(RVA = "0x1977EF0", Offset = "0x1976CF0", VA = "0x181977EF0", Slot = "12")]
|
||||
set
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CDD4)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.Decompression.Zlib.ZlibBaseStream::set_Position(System.Int64)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
Block_0:
|
||||
stloc:NotImplementedException(var_0_05, newobj:NotImplementedException(NotImplementedException::.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: 0x040083A4 RID: 33700
|
||||
[FieldOffset(Offset = "0x28")]
|
||||
[Token(Token = "0x40083A4")]
|
||||
protected internal ZlibCodec _z;
|
||||
|
||||
// Token: 0x040083A5 RID: 33701
|
||||
[FieldOffset(Offset = "0x30")]
|
||||
[Token(Token = "0x40083A5")]
|
||||
protected internal ZlibBaseStream.StreamMode _streamMode;
|
||||
|
||||
// Token: 0x040083A6 RID: 33702
|
||||
[FieldOffset(Offset = "0x34")]
|
||||
[Token(Token = "0x40083A6")]
|
||||
protected internal FlushType _flushMode;
|
||||
|
||||
// Token: 0x040083A7 RID: 33703
|
||||
[FieldOffset(Offset = "0x38")]
|
||||
[Token(Token = "0x40083A7")]
|
||||
protected internal ZlibStreamFlavor _flavor;
|
||||
|
||||
// Token: 0x040083A8 RID: 33704
|
||||
[FieldOffset(Offset = "0x3C")]
|
||||
[Token(Token = "0x40083A8")]
|
||||
protected internal CompressionMode _compressionMode;
|
||||
|
||||
// Token: 0x040083A9 RID: 33705
|
||||
[FieldOffset(Offset = "0x40")]
|
||||
[Token(Token = "0x40083A9")]
|
||||
protected internal CompressionLevel _level;
|
||||
|
||||
// Token: 0x040083AA RID: 33706
|
||||
[FieldOffset(Offset = "0x44")]
|
||||
[Token(Token = "0x40083AA")]
|
||||
protected internal bool _leaveOpen;
|
||||
|
||||
// Token: 0x040083AB RID: 33707
|
||||
[FieldOffset(Offset = "0x48")]
|
||||
[Token(Token = "0x40083AB")]
|
||||
protected internal byte[] _workingBuffer;
|
||||
|
||||
// Token: 0x040083AC RID: 33708
|
||||
[FieldOffset(Offset = "0x50")]
|
||||
[Token(Token = "0x40083AC")]
|
||||
protected internal int _bufferSize;
|
||||
|
||||
// Token: 0x040083AD RID: 33709
|
||||
[FieldOffset(Offset = "0x54")]
|
||||
[Token(Token = "0x40083AD")]
|
||||
protected internal int windowBitsMax;
|
||||
|
||||
// Token: 0x040083AE RID: 33710
|
||||
[FieldOffset(Offset = "0x58")]
|
||||
[Token(Token = "0x40083AE")]
|
||||
protected internal byte[] _buf1;
|
||||
|
||||
// Token: 0x040083AF RID: 33711
|
||||
[FieldOffset(Offset = "0x60")]
|
||||
[Token(Token = "0x40083AF")]
|
||||
protected internal Stream _stream;
|
||||
|
||||
// Token: 0x040083B0 RID: 33712
|
||||
[FieldOffset(Offset = "0x68")]
|
||||
[Token(Token = "0x40083B0")]
|
||||
protected internal CompressionStrategy Strategy;
|
||||
|
||||
// Token: 0x040083B1 RID: 33713
|
||||
[FieldOffset(Offset = "0x70")]
|
||||
[Token(Token = "0x40083B1")]
|
||||
private CRC32 crc;
|
||||
|
||||
// Token: 0x040083B2 RID: 33714
|
||||
[FieldOffset(Offset = "0x78")]
|
||||
[Token(Token = "0x40083B2")]
|
||||
protected internal string _GzipFileName;
|
||||
|
||||
// Token: 0x040083B3 RID: 33715
|
||||
[FieldOffset(Offset = "0x80")]
|
||||
[Token(Token = "0x40083B3")]
|
||||
protected internal string _GzipComment;
|
||||
|
||||
// Token: 0x040083B4 RID: 33716
|
||||
[FieldOffset(Offset = "0x88")]
|
||||
[Token(Token = "0x40083B4")]
|
||||
protected internal DateTime _GzipMtime;
|
||||
|
||||
// Token: 0x040083B5 RID: 33717
|
||||
[FieldOffset(Offset = "0x90")]
|
||||
[Token(Token = "0x40083B5")]
|
||||
protected internal int _gzipHeaderByteCount;
|
||||
|
||||
// Token: 0x040083B6 RID: 33718
|
||||
[FieldOffset(Offset = "0x94")]
|
||||
[Token(Token = "0x40083B6")]
|
||||
private bool nomoreinput;
|
||||
|
||||
// Token: 0x02001FBA RID: 8122
|
||||
[Token(Token = "0x2001FBA")]
|
||||
internal enum StreamMode
|
||||
{
|
||||
// Token: 0x040083B8 RID: 33720
|
||||
[Token(Token = "0x40083B8")]
|
||||
Writer,
|
||||
// Token: 0x040083B9 RID: 33721
|
||||
[Token(Token = "0x40083B9")]
|
||||
Reader,
|
||||
// Token: 0x040083BA RID: 33722
|
||||
[Token(Token = "0x40083BA")]
|
||||
Undefined
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,580 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Decompression.Zlib
|
||||
{
|
||||
// Token: 0x02001FBB RID: 8123
|
||||
[Token(Token = "0x2001FBB")]
|
||||
internal sealed class ZlibCodec
|
||||
{
|
||||
// Token: 0x170020C1 RID: 8385
|
||||
// (get) Token: 0x0600CDD5 RID: 52693 RVA: 0x002F5924 File Offset: 0x002F3B24
|
||||
[Token(Token = "0x170020C1")]
|
||||
public int Adler32
|
||||
{
|
||||
[Token(Token = "0x600CDD5")]
|
||||
[Address(RVA = "0x3FA190", Offset = "0x3F8F90", VA = "0x1803FA190")]
|
||||
get
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CDD5)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 BestHTTP.Decompression.Zlib.ZlibCodec::get_Adler32()
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
Block_0:
|
||||
stloc:uint32(var_0_06, ldfld:uint32(ZlibCodec::_Adler32, ldloc:ZlibCodec(this)))
|
||||
}
|
||||
|
||||
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: 0x0600CDD6 RID: 52694 RVA: 0x002F5938 File Offset: 0x002F3B38
|
||||
[Token(Token = "0x600CDD6")]
|
||||
[Address(RVA = "0x19789F0", Offset = "0x19777F0", VA = "0x1819789F0")]
|
||||
public ZlibCodec()
|
||||
{
|
||||
this.CompressLevel = (CompressionLevel)((ulong)6L);
|
||||
this.WindowBits = (int)((ulong)15L);
|
||||
base..ctor();
|
||||
}
|
||||
|
||||
// Token: 0x0600CDD7 RID: 52695 RVA: 0x002F5960 File Offset: 0x002F3B60
|
||||
[Token(Token = "0x600CDD7")]
|
||||
[Address(RVA = "0x1978A10", Offset = "0x1977810", VA = "0x181978A10")]
|
||||
public ZlibCodec(CompressionMode mode)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CDD7)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.Decompression.Zlib.ZlibCodec::.ctor(BestHTTP.Decompression.Zlib.CompressionMode)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_56:
|
||||
stloc:ZlibException(var_4_60, newobj:ZlibException(ZlibException::.ctor, ldstr:string("Cannot initialize for deflate.")))
|
||||
}
|
||||
|
||||
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: 0x0600CDD8 RID: 52696 RVA: 0x002F59D0 File Offset: 0x002F3BD0
|
||||
[Token(Token = "0x600CDD8")]
|
||||
[Address(RVA = "0x19781B0", Offset = "0x1976FB0", VA = "0x1819781B0")]
|
||||
public int InitializeInflate()
|
||||
{
|
||||
int windowBits = this.WindowBits;
|
||||
return this.InitializeInflate(windowBits, true);
|
||||
}
|
||||
|
||||
// Token: 0x0600CDD9 RID: 52697 RVA: 0x002F59EC File Offset: 0x002F3BEC
|
||||
[Token(Token = "0x600CDD9")]
|
||||
[Address(RVA = "0x19781C0", Offset = "0x1976FC0", VA = "0x1819781C0")]
|
||||
public int InitializeInflate(bool expectRfc1950Header)
|
||||
{
|
||||
int windowBits = this.WindowBits;
|
||||
return this.InitializeInflate(windowBits, expectRfc1950Header);
|
||||
}
|
||||
|
||||
// Token: 0x0600CDDA RID: 52698 RVA: 0x002F5A08 File Offset: 0x002F3C08
|
||||
[Token(Token = "0x600CDDA")]
|
||||
[Address(RVA = "0x1978290", Offset = "0x1977090", VA = "0x181978290")]
|
||||
public int InitializeInflate(int windowBits)
|
||||
{
|
||||
this.WindowBits = windowBits;
|
||||
return this.InitializeInflate(windowBits, true);
|
||||
}
|
||||
|
||||
// Token: 0x0600CDDB RID: 52699 RVA: 0x002F5A24 File Offset: 0x002F3C24
|
||||
[Token(Token = "0x600CDDB")]
|
||||
[Address(RVA = "0x19781D0", Offset = "0x1976FD0", VA = "0x1819781D0")]
|
||||
public int InitializeInflate(int windowBits, bool expectRfc1950Header)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CDDB)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 BestHTTP.Decompression.Zlib.ZlibCodec::InitializeInflate(System.Int32,System.Boolean)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_36:
|
||||
stloc:ZlibException(var_1_40, newobj:ZlibException(ZlibException::.ctor, ldstr:string("You may not call InitializeInflate() after calling InitializeDeflate().")))
|
||||
}
|
||||
|
||||
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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: 0x0600CDDC RID: 52700 RVA: 0x002F5A74 File Offset: 0x002F3C74
|
||||
[Token(Token = "0x600CDDC")]
|
||||
[Address(RVA = "0x19780B0", Offset = "0x1976EB0", VA = "0x1819780B0")]
|
||||
public int Inflate(FlushType flush)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CDDC)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 BestHTTP.Decompression.Zlib.ZlibCodec::Inflate(BestHTTP.Decompression.Zlib.FlushType)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_0B:
|
||||
stloc:ZlibException(var_1_15, newobj:ZlibException(ZlibException::.ctor, ldstr:string("No Inflate State!")))
|
||||
}
|
||||
|
||||
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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: 0x0600CDDD RID: 52701 RVA: 0x002F5A98 File Offset: 0x002F3C98
|
||||
[Token(Token = "0x600CDDD")]
|
||||
[Address(RVA = "0x1978030", Offset = "0x1976E30", VA = "0x181978030")]
|
||||
public int EndInflate()
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CDDD)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 BestHTTP.Decompression.Zlib.ZlibCodec::EndInflate()
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_1D:
|
||||
stloc:ZlibException(var_2_27, newobj:ZlibException(ZlibException::.ctor, ldstr:string("No Inflate State!")))
|
||||
}
|
||||
|
||||
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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: 0x0600CDDE RID: 52702 RVA: 0x002F5ACC File Offset: 0x002F3CCC
|
||||
[Token(Token = "0x600CDDE")]
|
||||
[Address(RVA = "0x1978680", Offset = "0x1977480", VA = "0x181978680")]
|
||||
public int SyncInflate()
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CDDE)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 BestHTTP.Decompression.Zlib.ZlibCodec::SyncInflate()
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_12:
|
||||
stloc:ZlibException(var_1_1C, newobj:ZlibException(ZlibException::.ctor, ldstr:string("No Inflate State!")))
|
||||
}
|
||||
|
||||
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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: 0x0600CDDF RID: 52703 RVA: 0x002F5AF8 File Offset: 0x002F3CF8
|
||||
[Token(Token = "0x600CDDF")]
|
||||
[Address(RVA = "0x1978160", Offset = "0x1976F60", VA = "0x181978160")]
|
||||
public int InitializeDeflate()
|
||||
{
|
||||
return this._InternalInitializeDeflate(true);
|
||||
}
|
||||
|
||||
// Token: 0x0600CDE0 RID: 52704 RVA: 0x002F5B0C File Offset: 0x002F3D0C
|
||||
[Token(Token = "0x600CDE0")]
|
||||
[Address(RVA = "0x1978150", Offset = "0x1976F50", VA = "0x181978150")]
|
||||
public int InitializeDeflate(CompressionLevel level)
|
||||
{
|
||||
this.CompressLevel = level;
|
||||
return this._InternalInitializeDeflate(true);
|
||||
}
|
||||
|
||||
// Token: 0x0600CDE1 RID: 52705 RVA: 0x002F5B28 File Offset: 0x002F3D28
|
||||
[Token(Token = "0x600CDE1")]
|
||||
[Address(RVA = "0x1978190", Offset = "0x1976F90", VA = "0x181978190")]
|
||||
public int InitializeDeflate(CompressionLevel level, bool wantRfc1950Header)
|
||||
{
|
||||
this.CompressLevel = level;
|
||||
return this._InternalInitializeDeflate(wantRfc1950Header);
|
||||
}
|
||||
|
||||
// Token: 0x0600CDE2 RID: 52706 RVA: 0x002F5B44 File Offset: 0x002F3D44
|
||||
[Token(Token = "0x600CDE2")]
|
||||
[Address(RVA = "0x1978130", Offset = "0x1976F30", VA = "0x181978130")]
|
||||
public int InitializeDeflate(CompressionLevel level, int bits)
|
||||
{
|
||||
this.CompressLevel = level;
|
||||
this.WindowBits = bits;
|
||||
return this._InternalInitializeDeflate(true);
|
||||
}
|
||||
|
||||
// Token: 0x0600CDE3 RID: 52707 RVA: 0x002F5B68 File Offset: 0x002F3D68
|
||||
[Token(Token = "0x600CDE3")]
|
||||
[Address(RVA = "0x1978170", Offset = "0x1976F70", VA = "0x181978170")]
|
||||
public int InitializeDeflate(CompressionLevel level, int bits, bool wantRfc1950Header)
|
||||
{
|
||||
this.CompressLevel = level;
|
||||
this.WindowBits = bits;
|
||||
return this._InternalInitializeDeflate(wantRfc1950Header);
|
||||
}
|
||||
|
||||
// Token: 0x0600CDE4 RID: 52708 RVA: 0x002F5B8C File Offset: 0x002F3D8C
|
||||
[Token(Token = "0x600CDE4")]
|
||||
[Address(RVA = "0x19786F0", Offset = "0x19774F0", VA = "0x1819786F0")]
|
||||
private int _InternalInitializeDeflate(bool wantRfc1950Header)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CDE4)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 BestHTTP.Decompression.Zlib.ZlibCodec::_InternalInitializeDeflate(System.Boolean)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_FF:
|
||||
stloc:ZlibException(var_18_109, newobj:ZlibException(ZlibException::.ctor, ldstr:string("You may not call InitializeDeflate() after calling InitializeInflate().")))
|
||||
}
|
||||
|
||||
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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: 0x0600CDE5 RID: 52709 RVA: 0x002F5CA4 File Offset: 0x002F3EA4
|
||||
[Token(Token = "0x600CDE5")]
|
||||
[Address(RVA = "0x1977F40", Offset = "0x1976D40", VA = "0x181977F40")]
|
||||
public int Deflate(FlushType flush)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CDE5)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 BestHTTP.Decompression.Zlib.ZlibCodec::Deflate(BestHTTP.Decompression.Zlib.FlushType)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_0B:
|
||||
stloc:ZlibException(var_1_15, newobj:ZlibException(ZlibException::.ctor, ldstr:string("No Deflate State!")))
|
||||
}
|
||||
|
||||
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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: 0x0600CDE6 RID: 52710 RVA: 0x002F5CC8 File Offset: 0x002F3EC8
|
||||
[Token(Token = "0x600CDE6")]
|
||||
[Address(RVA = "0x1977FC0", Offset = "0x1976DC0", VA = "0x181977FC0")]
|
||||
public int EndDeflate()
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CDE6)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 BestHTTP.Decompression.Zlib.ZlibCodec::EndDeflate()
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_16:
|
||||
stloc:ZlibException(var_0_20, newobj:ZlibException(ZlibException::.ctor, ldstr:string("No Deflate State!")))
|
||||
}
|
||||
|
||||
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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: 0x0600CDE7 RID: 52711 RVA: 0x002F5CF8 File Offset: 0x002F3EF8
|
||||
[Token(Token = "0x600CDE7")]
|
||||
[Address(RVA = "0x19782A0", Offset = "0x19770A0", VA = "0x1819782A0")]
|
||||
public void ResetDeflate()
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CDE7)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.Decompression.Zlib.ZlibCodec::ResetDeflate()
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_12:
|
||||
stloc:ZlibException(var_1_1C, newobj:ZlibException(ZlibException::.ctor, ldstr:string("No Deflate State!")))
|
||||
}
|
||||
|
||||
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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: 0x0600CDE8 RID: 52712 RVA: 0x002F5D24 File Offset: 0x002F3F24
|
||||
[Token(Token = "0x600CDE8")]
|
||||
[Address(RVA = "0x1978310", Offset = "0x1977110", VA = "0x181978310")]
|
||||
public int SetDeflateParams(CompressionLevel level, CompressionStrategy strategy)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CDE8)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 BestHTTP.Decompression.Zlib.ZlibCodec::SetDeflateParams(BestHTTP.Decompression.Zlib.CompressionLevel,BestHTTP.Decompression.Zlib.CompressionStrategy)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_6C:
|
||||
stloc:ZlibException(var_8_76, newobj:ZlibException(ZlibException::.ctor, ldstr:string("No Deflate State!")))
|
||||
}
|
||||
|
||||
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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: 0x0600CDE9 RID: 52713 RVA: 0x002F5DA8 File Offset: 0x002F3FA8
|
||||
[Token(Token = "0x600CDE9")]
|
||||
[Address(RVA = "0x1978470", Offset = "0x1977270", VA = "0x181978470")]
|
||||
public int SetDictionary(byte[] dictionary)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CDE9)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 BestHTTP.Decompression.Zlib.ZlibCodec::SetDictionary(System.Byte[])
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_C6:
|
||||
stloc:ZlibException(var_16_D0, newobj:ZlibException(ZlibException::.ctor, ldstr:string("Stream error.")))
|
||||
}
|
||||
|
||||
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: 0x0600CDEA RID: 52714 RVA: 0x002F5E88 File Offset: 0x002F4088
|
||||
[Token(Token = "0x600CDEA")]
|
||||
[Address(RVA = "0x1978B30", Offset = "0x1977930", VA = "0x181978B30")]
|
||||
internal void flush_pending()
|
||||
{
|
||||
DeflateManager deflateManager = this.dstate;
|
||||
int availableBytesOut = this.AvailableBytesOut;
|
||||
int pendingCount;
|
||||
if (deflateManager.Z_ASCII <= availableBytesOut)
|
||||
{
|
||||
pendingCount = deflateManager.pendingCount;
|
||||
}
|
||||
if (pendingCount != 0)
|
||||
{
|
||||
byte[] pending = deflateManager.pending;
|
||||
int length = pending.Length;
|
||||
int nextPending = deflateManager.nextPending;
|
||||
if (length > nextPending)
|
||||
{
|
||||
byte[] outputBuffer = this.OutputBuffer;
|
||||
int length2 = outputBuffer.Length;
|
||||
int nextOut = this.NextOut;
|
||||
if (length2 > nextOut)
|
||||
{
|
||||
int num = 0;
|
||||
Array.Copy(pending, nextPending, outputBuffer, nextOut, pendingCount);
|
||||
DeflateManager deflateManager2 = this.dstate;
|
||||
DeflateManager deflateManager3 = this.dstate;
|
||||
DeflateManager deflateManager4 = this.dstate;
|
||||
if (deflateManager4.Z_ASCII == num)
|
||||
{
|
||||
deflateManager4.nextPending = num;
|
||||
return;
|
||||
}
|
||||
return;
|
||||
}
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600CDEB RID: 52715 RVA: 0x002F5F6C File Offset: 0x002F416C
|
||||
[Token(Token = "0x600CDEB")]
|
||||
[Address(RVA = "0x1978D10", Offset = "0x1977B10", VA = "0x181978D10")]
|
||||
internal int read_buf(byte[] buf, int start, int size)
|
||||
{
|
||||
int num = this.AvailableBytesIn;
|
||||
if (num > size)
|
||||
{
|
||||
num = size;
|
||||
}
|
||||
if (num != 0)
|
||||
{
|
||||
num -= num;
|
||||
this.AvailableBytesIn = num;
|
||||
if (this.dstate._WantRfc1950HeaderBytes)
|
||||
{
|
||||
uint adler = this._Adler32;
|
||||
byte[] inputBuffer = this.InputBuffer;
|
||||
uint num2 = Adler.Adler32(adler, inputBuffer, start, size);
|
||||
this._Adler32 = num2;
|
||||
}
|
||||
int nextIn = this.NextIn;
|
||||
Array.Copy(this.InputBuffer, nextIn, buf, size, num);
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
// Token: 0x040083BB RID: 33723
|
||||
[FieldOffset(Offset = "0x10")]
|
||||
[Token(Token = "0x40083BB")]
|
||||
public byte[] InputBuffer;
|
||||
|
||||
// Token: 0x040083BC RID: 33724
|
||||
[FieldOffset(Offset = "0x18")]
|
||||
[Token(Token = "0x40083BC")]
|
||||
public int NextIn;
|
||||
|
||||
// Token: 0x040083BD RID: 33725
|
||||
[FieldOffset(Offset = "0x1C")]
|
||||
[Token(Token = "0x40083BD")]
|
||||
public int AvailableBytesIn;
|
||||
|
||||
// Token: 0x040083BE RID: 33726
|
||||
[FieldOffset(Offset = "0x20")]
|
||||
[Token(Token = "0x40083BE")]
|
||||
public long TotalBytesIn;
|
||||
|
||||
// Token: 0x040083BF RID: 33727
|
||||
[FieldOffset(Offset = "0x28")]
|
||||
[Token(Token = "0x40083BF")]
|
||||
public byte[] OutputBuffer;
|
||||
|
||||
// Token: 0x040083C0 RID: 33728
|
||||
[FieldOffset(Offset = "0x30")]
|
||||
[Token(Token = "0x40083C0")]
|
||||
public int NextOut;
|
||||
|
||||
// Token: 0x040083C1 RID: 33729
|
||||
[FieldOffset(Offset = "0x34")]
|
||||
[Token(Token = "0x40083C1")]
|
||||
public int AvailableBytesOut;
|
||||
|
||||
// Token: 0x040083C2 RID: 33730
|
||||
[FieldOffset(Offset = "0x38")]
|
||||
[Token(Token = "0x40083C2")]
|
||||
public long TotalBytesOut;
|
||||
|
||||
// Token: 0x040083C3 RID: 33731
|
||||
[FieldOffset(Offset = "0x40")]
|
||||
[Token(Token = "0x40083C3")]
|
||||
public string Message;
|
||||
|
||||
// Token: 0x040083C4 RID: 33732
|
||||
[FieldOffset(Offset = "0x48")]
|
||||
[Token(Token = "0x40083C4")]
|
||||
internal DeflateManager dstate;
|
||||
|
||||
// Token: 0x040083C5 RID: 33733
|
||||
[FieldOffset(Offset = "0x50")]
|
||||
[Token(Token = "0x40083C5")]
|
||||
internal InflateManager istate;
|
||||
|
||||
// Token: 0x040083C6 RID: 33734
|
||||
[FieldOffset(Offset = "0x58")]
|
||||
[Token(Token = "0x40083C6")]
|
||||
internal uint _Adler32;
|
||||
|
||||
// Token: 0x040083C7 RID: 33735
|
||||
[FieldOffset(Offset = "0x5C")]
|
||||
[Token(Token = "0x40083C7")]
|
||||
public CompressionLevel CompressLevel;
|
||||
|
||||
// Token: 0x040083C8 RID: 33736
|
||||
[FieldOffset(Offset = "0x60")]
|
||||
[Token(Token = "0x40083C8")]
|
||||
public int WindowBits;
|
||||
|
||||
// Token: 0x040083C9 RID: 33737
|
||||
[FieldOffset(Offset = "0x64")]
|
||||
[Token(Token = "0x40083C9")]
|
||||
public CompressionStrategy Strategy;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,50 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Decompression.Zlib
|
||||
{
|
||||
// Token: 0x02001FBC RID: 8124
|
||||
[Token(Token = "0x2001FBC")]
|
||||
public static class ZlibConstants
|
||||
{
|
||||
// Token: 0x040083CA RID: 33738
|
||||
[Token(Token = "0x40083CA")]
|
||||
public const int WindowBitsMax = 15;
|
||||
|
||||
// Token: 0x040083CB RID: 33739
|
||||
[Token(Token = "0x40083CB")]
|
||||
public const int WindowBitsDefault = 15;
|
||||
|
||||
// Token: 0x040083CC RID: 33740
|
||||
[Token(Token = "0x40083CC")]
|
||||
public const int Z_OK = 0;
|
||||
|
||||
// Token: 0x040083CD RID: 33741
|
||||
[Token(Token = "0x40083CD")]
|
||||
public const int Z_STREAM_END = 1;
|
||||
|
||||
// Token: 0x040083CE RID: 33742
|
||||
[Token(Token = "0x40083CE")]
|
||||
public const int Z_NEED_DICT = 2;
|
||||
|
||||
// Token: 0x040083CF RID: 33743
|
||||
[Token(Token = "0x40083CF")]
|
||||
public const int Z_STREAM_ERROR = -2;
|
||||
|
||||
// Token: 0x040083D0 RID: 33744
|
||||
[Token(Token = "0x40083D0")]
|
||||
public const int Z_DATA_ERROR = -3;
|
||||
|
||||
// Token: 0x040083D1 RID: 33745
|
||||
[Token(Token = "0x40083D1")]
|
||||
public const int Z_BUF_ERROR = -5;
|
||||
|
||||
// Token: 0x040083D2 RID: 33746
|
||||
[Token(Token = "0x40083D2")]
|
||||
public const int WorkingBufferSizeDefault = 16384;
|
||||
|
||||
// Token: 0x040083D3 RID: 33747
|
||||
[Token(Token = "0x40083D3")]
|
||||
public const int WorkingBufferSizeMin = 1024;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,27 @@
|
||||
using System;
|
||||
using System.Runtime.InteropServices;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Decompression.Zlib
|
||||
{
|
||||
// Token: 0x02001FB3 RID: 8115
|
||||
[Token(Token = "0x2001FB3")]
|
||||
[Guid("ebc25cf6-9120-4283-b972-0e5520d0000E")]
|
||||
internal class ZlibException : Exception
|
||||
{
|
||||
// Token: 0x0600CDB2 RID: 52658 RVA: 0x002F4A80 File Offset: 0x002F2C80
|
||||
[Token(Token = "0x600CDB2")]
|
||||
[Address(RVA = "0x1978E20", Offset = "0x1977C20", VA = "0x181978E20")]
|
||||
public ZlibException()
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0600CDB3 RID: 52659 RVA: 0x002F4A94 File Offset: 0x002F2C94
|
||||
[Token(Token = "0x600CDB3")]
|
||||
[Address(RVA = "0x1978E80", Offset = "0x1977C80", VA = "0x181978E80")]
|
||||
public ZlibException(string s)
|
||||
: base(s)
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Decompression.Zlib
|
||||
{
|
||||
// Token: 0x02001FB8 RID: 8120
|
||||
[Token(Token = "0x2001FB8")]
|
||||
internal enum ZlibStreamFlavor
|
||||
{
|
||||
// Token: 0x040083A1 RID: 33697
|
||||
[Token(Token = "0x40083A1")]
|
||||
ZLIB = 1950,
|
||||
// Token: 0x040083A2 RID: 33698
|
||||
[Token(Token = "0x40083A2")]
|
||||
DEFLATE,
|
||||
// Token: 0x040083A3 RID: 33699
|
||||
[Token(Token = "0x40083A3")]
|
||||
GZIP
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Extensions
|
||||
{
|
||||
// Token: 0x02001F9B RID: 8091
|
||||
[Token(Token = "0x2001F9B")]
|
||||
internal struct BufferDesc
|
||||
{
|
||||
// Token: 0x0600CD03 RID: 52483 RVA: 0x002EE5D4 File Offset: 0x002EC7D4
|
||||
[Token(Token = "0x600CD03")]
|
||||
[Address(RVA = "0x195E3A0", Offset = "0x195D1A0", VA = "0x18195E3A0")]
|
||||
public BufferDesc(byte[] buff)
|
||||
{
|
||||
this.buffer = buff;
|
||||
DateTime utcNow = DateTime.UtcNow;
|
||||
this.released = utcNow;
|
||||
}
|
||||
|
||||
// Token: 0x0600CD04 RID: 52484 RVA: 0x002EE5F8 File Offset: 0x002EC7F8
|
||||
// Note: this type is marked as 'beforefieldinit'.
|
||||
[Token(Token = "0x600CD04")]
|
||||
[Address(RVA = "0x195E310", Offset = "0x195D110", VA = "0x18195E310")]
|
||||
static BufferDesc()
|
||||
{
|
||||
DateTime utcNow = DateTime.UtcNow;
|
||||
ulong num;
|
||||
BufferDesc.Empty = num;
|
||||
}
|
||||
|
||||
// Token: 0x04008276 RID: 33398
|
||||
[Token(Token = "0x4008276")]
|
||||
public static readonly BufferDesc Empty;
|
||||
|
||||
// Token: 0x04008277 RID: 33399
|
||||
[FieldOffset(Offset = "0x0")]
|
||||
[Token(Token = "0x4008277")]
|
||||
public byte[] buffer;
|
||||
|
||||
// Token: 0x04008278 RID: 33400
|
||||
[FieldOffset(Offset = "0x8")]
|
||||
[Token(Token = "0x4008278")]
|
||||
public DateTime released;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,738 @@
|
||||
using System;
|
||||
using System.IO;
|
||||
using Cpp2IlInjected;
|
||||
using UnityEngine;
|
||||
|
||||
namespace BestHTTP.Extensions
|
||||
{
|
||||
// Token: 0x02001F8D RID: 8077
|
||||
[Token(Token = "0x2001F8D")]
|
||||
public sealed class BufferPoolMemoryStream : Stream
|
||||
{
|
||||
// Token: 0x0600CC86 RID: 52358 RVA: 0x002ECEFC File Offset: 0x002EB0FC
|
||||
[Token(Token = "0x600CC86")]
|
||||
[Address(RVA = "0x195F6D0", Offset = "0x195E4D0", VA = "0x18195F6D0")]
|
||||
public BufferPoolMemoryStream()
|
||||
{
|
||||
this.canWrite = true;
|
||||
byte[] noData = VariableSizedBufferPool.NoData;
|
||||
this.internalBuffer = noData;
|
||||
int num = noData.Length;
|
||||
this.capacity = num;
|
||||
this.expandable = true;
|
||||
this.allowGetBuffer = true;
|
||||
}
|
||||
|
||||
// Token: 0x0600CC87 RID: 52359 RVA: 0x002ECF48 File Offset: 0x002EB148
|
||||
[Token(Token = "0x600CC87")]
|
||||
[Address(RVA = "0x195F500", Offset = "0x195E300", VA = "0x18195F500")]
|
||||
public BufferPoolMemoryStream(int capacity)
|
||||
{
|
||||
this.canWrite = true;
|
||||
if (capacity > 0)
|
||||
{
|
||||
byte[] array = VariableSizedBufferPool.Get((long)capacity, true);
|
||||
}
|
||||
byte[] noData = VariableSizedBufferPool.NoData;
|
||||
this.internalBuffer = noData;
|
||||
int num = noData.Length;
|
||||
this.capacity = num;
|
||||
this.expandable = true;
|
||||
this.allowGetBuffer = true;
|
||||
}
|
||||
|
||||
// Token: 0x0600CC88 RID: 52360 RVA: 0x002ECFA4 File Offset: 0x002EB1A4
|
||||
[Token(Token = "0x600CC88")]
|
||||
[Address(RVA = "0x195F780", Offset = "0x195E580", VA = "0x18195F780")]
|
||||
public BufferPoolMemoryStream(byte[] buffer)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CC88)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.Extensions.BufferPoolMemoryStream::.ctor(System.Byte[])
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_20:
|
||||
stloc:ArgumentNullException(var_5_2A, newobj:ArgumentNullException(ArgumentNullException::.ctor, ldstr:string("buffer")))
|
||||
}
|
||||
|
||||
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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: 0x0600CC89 RID: 52361 RVA: 0x002ECFDC File Offset: 0x002EB1DC
|
||||
[Token(Token = "0x600CC89")]
|
||||
[Address(RVA = "0x195F430", Offset = "0x195E230", VA = "0x18195F430")]
|
||||
public BufferPoolMemoryStream(byte[] buffer, bool writable)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CC89)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.Extensions.BufferPoolMemoryStream::.ctor(System.Byte[],System.Boolean)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_1F:
|
||||
stloc:ArgumentNullException(var_4_29, newobj:ArgumentNullException(ArgumentNullException::.ctor, ldstr:string("buffer")))
|
||||
}
|
||||
|
||||
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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: 0x0600CC8A RID: 52362 RVA: 0x002ED014 File Offset: 0x002EB214
|
||||
[Token(Token = "0x600CC8A")]
|
||||
[Address(RVA = "0x195F390", Offset = "0x195E190", VA = "0x18195F390")]
|
||||
public BufferPoolMemoryStream(byte[] buffer, int index, int count)
|
||||
{
|
||||
ulong num;
|
||||
ulong num2;
|
||||
this.InternalConstructor(buffer, index, count, num != 0UL, num2 != 0UL);
|
||||
}
|
||||
|
||||
// Token: 0x0600CC8B RID: 52363 RVA: 0x002ED034 File Offset: 0x002EB234
|
||||
[Token(Token = "0x600CC8B")]
|
||||
[Address(RVA = "0x195F840", Offset = "0x195E640", VA = "0x18195F840")]
|
||||
public BufferPoolMemoryStream(byte[] buffer, int index, int count, bool writable)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0600CC8C RID: 52364 RVA: 0x002ED048 File Offset: 0x002EB248
|
||||
[Token(Token = "0x600CC8C")]
|
||||
[Address(RVA = "0x195F620", Offset = "0x195E420", VA = "0x18195F620")]
|
||||
public BufferPoolMemoryStream(byte[] buffer, int index, int count, bool writable, bool publiclyVisible)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0600CC8D RID: 52365 RVA: 0x002ED05C File Offset: 0x002EB25C
|
||||
[Token(Token = "0x600CC8D")]
|
||||
[Address(RVA = "0x195E700", Offset = "0x195D500", VA = "0x18195E700")]
|
||||
private void InternalConstructor(byte[] buffer, int index, int count, bool writable, bool publicallyVisible)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CC8D)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.Extensions.BufferPoolMemoryStream::InternalConstructor(System.Byte[],System.Int32,System.Int32,System.Boolean,System.Boolean)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_48:
|
||||
stloc:ArgumentNullException(var_1_52, newobj:ArgumentNullException(ArgumentNullException::.ctor, ldstr:string("buffer")))
|
||||
}
|
||||
|
||||
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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: 0x0600CC8E RID: 52366 RVA: 0x002ED0BC File Offset: 0x002EB2BC
|
||||
[Token(Token = "0x600CC8E")]
|
||||
[Address(RVA = "0x195E4C0", Offset = "0x195D2C0", VA = "0x18195E4C0")]
|
||||
private void CheckIfClosedThrowDisposed()
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CC8E)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.Extensions.BufferPoolMemoryStream::CheckIfClosedThrowDisposed()
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_0A:
|
||||
stloc:ObjectDisposedException(var_0_14, newobj:ObjectDisposedException(ObjectDisposedException::.ctor, ldstr:string("MemoryStream")))
|
||||
}
|
||||
|
||||
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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: 0x17002086 RID: 8326
|
||||
// (get) Token: 0x0600CC8F RID: 52367 RVA: 0x002ED0E0 File Offset: 0x002EB2E0
|
||||
[Token(Token = "0x17002086")]
|
||||
public override bool CanRead
|
||||
{
|
||||
[Token(Token = "0x600CC8F")]
|
||||
[Address(RVA = "0x195F8E0", Offset = "0x195E6E0", VA = "0x18195F8E0", Slot = "7")]
|
||||
get
|
||||
{
|
||||
return !this.streamClosed;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17002087 RID: 8327
|
||||
// (get) Token: 0x0600CC90 RID: 52368 RVA: 0x002ED0F8 File Offset: 0x002EB2F8
|
||||
[Token(Token = "0x17002087")]
|
||||
public override bool CanSeek
|
||||
{
|
||||
[Token(Token = "0x600CC90")]
|
||||
[Address(RVA = "0x195F8E0", Offset = "0x195E6E0", VA = "0x18195F8E0", Slot = "8")]
|
||||
get
|
||||
{
|
||||
return !this.streamClosed;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17002088 RID: 8328
|
||||
// (get) Token: 0x0600CC91 RID: 52369 RVA: 0x002ED110 File Offset: 0x002EB310
|
||||
[Token(Token = "0x17002088")]
|
||||
public override bool CanWrite
|
||||
{
|
||||
[Token(Token = "0x600CC91")]
|
||||
[Address(RVA = "0x195F8F0", Offset = "0x195E6F0", VA = "0x18195F8F0", Slot = "9")]
|
||||
get
|
||||
{
|
||||
if (this.streamClosed)
|
||||
{
|
||||
}
|
||||
return this.canWrite;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17002089 RID: 8329
|
||||
// (get) Token: 0x0600CC92 RID: 52370 RVA: 0x002ED130 File Offset: 0x002EB330
|
||||
// (set) Token: 0x0600CC93 RID: 52371 RVA: 0x002ED158 File Offset: 0x002EB358
|
||||
[Token(Token = "0x17002089")]
|
||||
public int Capacity
|
||||
{
|
||||
[Token(Token = "0x600CC92")]
|
||||
[Address(RVA = "0x195F900", Offset = "0x195E700", VA = "0x18195F900")]
|
||||
get
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CC92)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 BestHTTP.Extensions.BufferPoolMemoryStream::get_Capacity()
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_10:
|
||||
stloc:ObjectDisposedException(var_0_1A, newobj:ObjectDisposedException(ObjectDisposedException::.ctor, ldstr:string("MemoryStream")))
|
||||
}
|
||||
|
||||
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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 = "0x600CC93")]
|
||||
[Address(RVA = "0x195FA50", Offset = "0x195E850", VA = "0x18195FA50")]
|
||||
set
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CC93)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.Extensions.BufferPoolMemoryStream::set_Capacity(System.Int32)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_6E:
|
||||
stloc:ObjectDisposedException(var_6_78, newobj:ObjectDisposedException(ObjectDisposedException::.ctor, ldstr:string("MemoryStream")))
|
||||
}
|
||||
|
||||
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: 0x1700208A RID: 8330
|
||||
// (get) Token: 0x0600CC94 RID: 52372 RVA: 0x002ED1E0 File Offset: 0x002EB3E0
|
||||
[Token(Token = "0x1700208A")]
|
||||
public override long Length
|
||||
{
|
||||
[Token(Token = "0x600CC94")]
|
||||
[Address(RVA = "0x195F970", Offset = "0x195E770", VA = "0x18195F970", Slot = "10")]
|
||||
get
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CC94)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int64 BestHTTP.Extensions.BufferPoolMemoryStream::get_Length()
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_10:
|
||||
stloc:ObjectDisposedException(var_1_1A, newobj:ObjectDisposedException(ObjectDisposedException::.ctor, ldstr:string("MemoryStream")))
|
||||
}
|
||||
|
||||
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: 0x1700208B RID: 8331
|
||||
// (get) Token: 0x0600CC95 RID: 52373 RVA: 0x002ED208 File Offset: 0x002EB408
|
||||
// (set) Token: 0x0600CC96 RID: 52374 RVA: 0x002ED230 File Offset: 0x002EB430
|
||||
[Token(Token = "0x1700208B")]
|
||||
public override long Position
|
||||
{
|
||||
[Token(Token = "0x600CC95")]
|
||||
[Address(RVA = "0x195F9E0", Offset = "0x195E7E0", VA = "0x18195F9E0", Slot = "11")]
|
||||
get
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CC95)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int64 BestHTTP.Extensions.BufferPoolMemoryStream::get_Position()
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_10:
|
||||
stloc:ObjectDisposedException(var_1_1A, newobj:ObjectDisposedException(ObjectDisposedException::.ctor, ldstr:string("MemoryStream")))
|
||||
}
|
||||
|
||||
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 = "0x600CC96")]
|
||||
[Address(RVA = "0x195FD00", Offset = "0x195EB00", VA = "0x18195FD00", Slot = "12")]
|
||||
set
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CC96)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.Extensions.BufferPoolMemoryStream::set_Position(System.Int64)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_1C:
|
||||
stloc:ObjectDisposedException(var_1_26, newobj:ObjectDisposedException(ObjectDisposedException::.ctor, ldstr:string("MemoryStream")))
|
||||
}
|
||||
|
||||
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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: 0x0600CC97 RID: 52375 RVA: 0x002ED264 File Offset: 0x002EB464
|
||||
[Token(Token = "0x600CC97")]
|
||||
[Address(RVA = "0x195E530", Offset = "0x195D330", VA = "0x18195E530", Slot = "16")]
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
byte[] array = this.internalBuffer;
|
||||
this.expandable = false;
|
||||
if (array != 0)
|
||||
{
|
||||
VariableSizedBufferPool.Release(array);
|
||||
}
|
||||
this.internalBuffer = (ulong)0L;
|
||||
}
|
||||
|
||||
// Token: 0x0600CC98 RID: 52376 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600CC98")]
|
||||
[Address(RVA = "0x402080", Offset = "0x400E80", VA = "0x180402080", Slot = "17")]
|
||||
public override void Flush()
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x0600CC99 RID: 52377 RVA: 0x002ED294 File Offset: 0x002EB494
|
||||
[Token(Token = "0x600CC99")]
|
||||
[Address(RVA = "0x195E6A0", Offset = "0x195D4A0", VA = "0x18195E6A0")]
|
||||
public byte[] GetBuffer()
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CC99)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Byte[] BestHTTP.Extensions.BufferPoolMemoryStream::GetBuffer()
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_10:
|
||||
stloc:UnauthorizedAccessException(var_0_15, newobj:UnauthorizedAccessException(UnauthorizedAccessException::.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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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: 0x0600CC9A RID: 52378 RVA: 0x002ED2B8 File Offset: 0x002EB4B8
|
||||
[Token(Token = "0x600CC9A")]
|
||||
[Address(RVA = "0x195E8E0", Offset = "0x195D6E0", VA = "0x18195E8E0", Slot = "27")]
|
||||
public override int Read(byte[] buffer, int offset, int count)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CC9A)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 BestHTTP.Extensions.BufferPoolMemoryStream::Read(System.Byte[],System.Int32,System.Int32)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_4B:
|
||||
stloc:ObjectDisposedException(var_4_55, newobj:ObjectDisposedException(ObjectDisposedException::.ctor, ldstr:string("MemoryStream")))
|
||||
}
|
||||
|
||||
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: 0x0600CC9B RID: 52379 RVA: 0x002ED31C File Offset: 0x002EB51C
|
||||
[Token(Token = "0x600CC9B")]
|
||||
[Address(RVA = "0x195E830", Offset = "0x195D630", VA = "0x18195E830", Slot = "28")]
|
||||
public override int ReadByte()
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CC9B)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 BestHTTP.Extensions.BufferPoolMemoryStream::ReadByte()
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_2D:
|
||||
stloc:ObjectDisposedException(var_4_37, newobj:ObjectDisposedException(ObjectDisposedException::.ctor, ldstr:string("MemoryStream")))
|
||||
}
|
||||
|
||||
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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: 0x0600CC9C RID: 52380 RVA: 0x002ED364 File Offset: 0x002EB564
|
||||
[Token(Token = "0x600CC9C")]
|
||||
[Address(RVA = "0x195EA90", Offset = "0x195D890", VA = "0x18195EA90", Slot = "25")]
|
||||
public override long Seek(long offset, SeekOrigin loc)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CC9C)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int64 BestHTTP.Extensions.BufferPoolMemoryStream::Seek(System.Int64,System.IO.SeekOrigin)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_34:
|
||||
stloc:ArgumentException(var_3_43, newobj:ArgumentException(ArgumentException::.ctor, ldstr:string("loc"), ldstr:string("Invalid SeekOrigin")))
|
||||
}
|
||||
|
||||
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: 0x0600CC9D RID: 52381 RVA: 0x002ED3B4 File Offset: 0x002EB5B4
|
||||
[Token(Token = "0x600CC9D")]
|
||||
[Address(RVA = "0x195E410", Offset = "0x195D210", VA = "0x18195E410")]
|
||||
private int CalculateNewCapacity(int minimum)
|
||||
{
|
||||
int num = this.capacity;
|
||||
num += num;
|
||||
if (minimum >= num)
|
||||
{
|
||||
num = minimum;
|
||||
}
|
||||
if (!Mathf.IsPowerOfTwo(num))
|
||||
{
|
||||
return Mathf.NextPowerOfTwo(num);
|
||||
}
|
||||
return num;
|
||||
}
|
||||
|
||||
// Token: 0x0600CC9E RID: 52382 RVA: 0x002ED3E4 File Offset: 0x002EB5E4
|
||||
[Token(Token = "0x600CC9E")]
|
||||
[Address(RVA = "0x195E5B0", Offset = "0x195D3B0", VA = "0x18195E5B0")]
|
||||
private void Expand(int newSize)
|
||||
{
|
||||
int num = this.capacity;
|
||||
int num2 = this.dirty_bytes;
|
||||
if (num2 > 0)
|
||||
{
|
||||
int num3 = this.length;
|
||||
Array.Clear(this.internalBuffer, num3, num2);
|
||||
this.dirty_bytes = (int)((ulong)0L);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600CC9F RID: 52383 RVA: 0x002ED42C File Offset: 0x002EB62C
|
||||
[Token(Token = "0x600CC9F")]
|
||||
[Address(RVA = "0x195EC60", Offset = "0x195DA60", VA = "0x18195EC60", Slot = "26")]
|
||||
public override void SetLength(long value)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CC9F)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.Extensions.BufferPoolMemoryStream::SetLength(System.Int64)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_57:
|
||||
stloc:ObjectDisposedException(var_3_61, newobj:ObjectDisposedException(ObjectDisposedException::.ctor, ldstr:string("MemoryStream")))
|
||||
}
|
||||
|
||||
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: 0x0600CCA0 RID: 52384 RVA: 0x002ED49C File Offset: 0x002EB69C
|
||||
[Token(Token = "0x600CCA0")]
|
||||
[Address(RVA = "0x195EEC0", Offset = "0x195DCC0", VA = "0x18195EEC0")]
|
||||
public byte[] ToArray()
|
||||
{
|
||||
int num = this.length;
|
||||
if (num > 0)
|
||||
{
|
||||
int num2 = 0;
|
||||
byte[] array = VariableSizedBufferPool.Get((long)num, num2 != 0);
|
||||
}
|
||||
byte[] noData = VariableSizedBufferPool.NoData;
|
||||
byte[] array2 = this.internalBuffer;
|
||||
if (array2 != 0)
|
||||
{
|
||||
int num3 = this.initialIndex;
|
||||
int num4 = 0;
|
||||
Buffer.BlockCopy(array2, num3, noData, num4, num);
|
||||
}
|
||||
return noData;
|
||||
}
|
||||
|
||||
// Token: 0x0600CCA1 RID: 52385 RVA: 0x002ED4EC File Offset: 0x002EB6EC
|
||||
[Token(Token = "0x600CCA1")]
|
||||
[Address(RVA = "0x195EDE0", Offset = "0x195DBE0", VA = "0x18195EDE0")]
|
||||
public byte[] ToArray(bool canBeLarger)
|
||||
{
|
||||
int num = this.length;
|
||||
if (num > 0)
|
||||
{
|
||||
byte[] array = VariableSizedBufferPool.Get((long)num, canBeLarger);
|
||||
}
|
||||
byte[] noData = VariableSizedBufferPool.NoData;
|
||||
byte[] array2 = this.internalBuffer;
|
||||
if (array2 != 0)
|
||||
{
|
||||
int num2 = this.initialIndex;
|
||||
int num3 = 0;
|
||||
Buffer.BlockCopy(array2, num2, noData, num3, num);
|
||||
}
|
||||
return noData;
|
||||
}
|
||||
|
||||
// Token: 0x0600CCA2 RID: 52386 RVA: 0x002ED538 File Offset: 0x002EB738
|
||||
[Token(Token = "0x600CCA2")]
|
||||
[Address(RVA = "0x195F1A0", Offset = "0x195DFA0", VA = "0x18195F1A0", Slot = "29")]
|
||||
public override void Write(byte[] buffer, int offset, int count)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CCA2)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.Extensions.BufferPoolMemoryStream::Write(System.Byte[],System.Int32,System.Int32)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_59:
|
||||
stloc:ObjectDisposedException(var_6_63, newobj:ObjectDisposedException(ObjectDisposedException::.ctor, ldstr:string("MemoryStream")))
|
||||
}
|
||||
|
||||
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: 0x0600CCA3 RID: 52387 RVA: 0x002ED5AC File Offset: 0x002EB7AC
|
||||
[Token(Token = "0x600CCA3")]
|
||||
[Address(RVA = "0x195EF90", Offset = "0x195DD90", VA = "0x18195EF90", Slot = "30")]
|
||||
public override void WriteByte(byte value)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CCA3)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.Extensions.BufferPoolMemoryStream::WriteByte(System.Byte)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_58:
|
||||
stloc:NotSupportedException(var_6_62, newobj:NotSupportedException(NotSupportedException::.ctor, ldstr:string("Cannot write to this stream.")))
|
||||
}
|
||||
|
||||
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: 0x0600CCA4 RID: 52388 RVA: 0x002ED61C File Offset: 0x002EB81C
|
||||
[Token(Token = "0x600CCA4")]
|
||||
[Address(RVA = "0x195F0B0", Offset = "0x195DEB0", VA = "0x18195F0B0")]
|
||||
public void WriteTo(Stream stream)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CCA4)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.Extensions.BufferPoolMemoryStream::WriteTo(System.IO.Stream)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_32:
|
||||
stloc:ArgumentNullException(var_4_3C, newobj:ArgumentNullException(ArgumentNullException::.ctor, ldstr:string("stream")))
|
||||
}
|
||||
|
||||
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: 0x04008250 RID: 33360
|
||||
[FieldOffset(Offset = "0x28")]
|
||||
[Token(Token = "0x4008250")]
|
||||
private bool canWrite;
|
||||
|
||||
// Token: 0x04008251 RID: 33361
|
||||
[FieldOffset(Offset = "0x29")]
|
||||
[Token(Token = "0x4008251")]
|
||||
private bool allowGetBuffer;
|
||||
|
||||
// Token: 0x04008252 RID: 33362
|
||||
[FieldOffset(Offset = "0x2C")]
|
||||
[Token(Token = "0x4008252")]
|
||||
private int capacity;
|
||||
|
||||
// Token: 0x04008253 RID: 33363
|
||||
[FieldOffset(Offset = "0x30")]
|
||||
[Token(Token = "0x4008253")]
|
||||
private int length;
|
||||
|
||||
// Token: 0x04008254 RID: 33364
|
||||
[FieldOffset(Offset = "0x38")]
|
||||
[Token(Token = "0x4008254")]
|
||||
private byte[] internalBuffer;
|
||||
|
||||
// Token: 0x04008255 RID: 33365
|
||||
[FieldOffset(Offset = "0x40")]
|
||||
[Token(Token = "0x4008255")]
|
||||
private int initialIndex;
|
||||
|
||||
// Token: 0x04008256 RID: 33366
|
||||
[FieldOffset(Offset = "0x44")]
|
||||
[Token(Token = "0x4008256")]
|
||||
private bool expandable;
|
||||
|
||||
// Token: 0x04008257 RID: 33367
|
||||
[FieldOffset(Offset = "0x45")]
|
||||
[Token(Token = "0x4008257")]
|
||||
private bool streamClosed;
|
||||
|
||||
// Token: 0x04008258 RID: 33368
|
||||
[FieldOffset(Offset = "0x48")]
|
||||
[Token(Token = "0x4008258")]
|
||||
private int position;
|
||||
|
||||
// Token: 0x04008259 RID: 33369
|
||||
[FieldOffset(Offset = "0x4C")]
|
||||
[Token(Token = "0x4008259")]
|
||||
private int dirty_bytes;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,43 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Extensions
|
||||
{
|
||||
// Token: 0x02001F9A RID: 8090
|
||||
[Token(Token = "0x2001F9A")]
|
||||
internal struct BufferStore
|
||||
{
|
||||
// Token: 0x0600CD01 RID: 52481 RVA: 0x002EE580 File Offset: 0x002EC780
|
||||
[Token(Token = "0x600CD01")]
|
||||
[Address(RVA = "0x1712790", Offset = "0x1711590", VA = "0x181712790")]
|
||||
public BufferStore(long size)
|
||||
{
|
||||
this.Size = size;
|
||||
List<BufferDesc> list = new List();
|
||||
this.buffers = list;
|
||||
}
|
||||
|
||||
// Token: 0x0600CD02 RID: 52482 RVA: 0x002EE5A4 File Offset: 0x002EC7A4
|
||||
[Token(Token = "0x600CD02")]
|
||||
[Address(RVA = "0x17126C0", Offset = "0x17114C0", VA = "0x1817126C0")]
|
||||
public BufferStore(long size, byte[] buffer)
|
||||
{
|
||||
this.Size = size;
|
||||
List<BufferDesc> list = new List();
|
||||
int num = 0;
|
||||
this.buffers = list;
|
||||
list.Add(num);
|
||||
}
|
||||
|
||||
// Token: 0x04008274 RID: 33396
|
||||
[FieldOffset(Offset = "0x0")]
|
||||
[Token(Token = "0x4008274")]
|
||||
public readonly long Size;
|
||||
|
||||
// Token: 0x04008275 RID: 33397
|
||||
[FieldOffset(Offset = "0x8")]
|
||||
[Token(Token = "0x4008275")]
|
||||
public List<BufferDesc> buffers;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,95 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Extensions
|
||||
{
|
||||
// Token: 0x02001F8E RID: 8078
|
||||
[Token(Token = "0x2001F8E")]
|
||||
public sealed class CircularBuffer<T>
|
||||
{
|
||||
// Token: 0x1700208C RID: 8332
|
||||
// (get) Token: 0x0600CCA5 RID: 52389 RVA: 0x002ED668 File Offset: 0x002EB868
|
||||
// (set) Token: 0x0600CCA6 RID: 52390 RVA: 0x002ED67C File Offset: 0x002EB87C
|
||||
[Token(Token = "0x1700208C")]
|
||||
public int Capacity
|
||||
{
|
||||
[Token(Token = "0x600CCA5")]
|
||||
[Address(RVA = "0x3FA560", Offset = "0x3F9360", VA = "0x1803FA560")]
|
||||
get;
|
||||
[Token(Token = "0x600CCA6")]
|
||||
[Address(RVA = "0x536480", Offset = "0x535280", VA = "0x180536480")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x1700208D RID: 8333
|
||||
// (get) Token: 0x0600CCA7 RID: 52391 RVA: 0x002ED690 File Offset: 0x002EB890
|
||||
// (set) Token: 0x0600CCA8 RID: 52392 RVA: 0x002ED6A4 File Offset: 0x002EB8A4
|
||||
[Token(Token = "0x1700208D")]
|
||||
public int Count
|
||||
{
|
||||
[Token(Token = "0x600CCA7")]
|
||||
[Address(RVA = "0x495080", Offset = "0x493E80", VA = "0x180495080")]
|
||||
get;
|
||||
[Token(Token = "0x600CCA8")]
|
||||
[Address(RVA = "0x52EC20", Offset = "0x52DA20", VA = "0x18052EC20")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x1700208E RID: 8334
|
||||
[Token(Token = "0x1700208E")]
|
||||
public T this[int idx]
|
||||
{
|
||||
[Token(Token = "0x600CCA9")]
|
||||
[Address(RVA = "0x2A33050", Offset = "0x2A31E50", VA = "0x182A33050")]
|
||||
get
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
[Token(Token = "0x600CCAA")]
|
||||
[Address(RVA = "0x2A331C0", Offset = "0x2A31FC0", VA = "0x182A331C0")]
|
||||
set
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600CCAB RID: 52395 RVA: 0x002ED6B8 File Offset: 0x002EB8B8
|
||||
[Token(Token = "0x600CCAB")]
|
||||
[Address(RVA = "0x2A32FF0", Offset = "0x2A31DF0", VA = "0x182A32FF0")]
|
||||
public CircularBuffer(int capacity)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0600CCAC RID: 52396 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600CCAC")]
|
||||
[Address(RVA = "0x2A32CA0", Offset = "0x2A31AA0", VA = "0x182A32CA0")]
|
||||
public void Add(T element)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x0600CCAD RID: 52397 RVA: 0x002ED6D4 File Offset: 0x002EB8D4
|
||||
[Token(Token = "0x600CCAD")]
|
||||
[Address(RVA = "0x2A32FE0", Offset = "0x2A31DE0", VA = "0x182A32FE0")]
|
||||
public void Clear()
|
||||
{
|
||||
int num = 0;
|
||||
this.startIdx = num;
|
||||
}
|
||||
|
||||
// Token: 0x0400825C RID: 33372
|
||||
[FieldOffset(Offset = "0x0")]
|
||||
[Token(Token = "0x400825C")]
|
||||
private T[] buffer;
|
||||
|
||||
// Token: 0x0400825D RID: 33373
|
||||
[FieldOffset(Offset = "0x0")]
|
||||
[Token(Token = "0x400825D")]
|
||||
private int startIdx;
|
||||
|
||||
// Token: 0x0400825E RID: 33374
|
||||
[FieldOffset(Offset = "0x0")]
|
||||
[Token(Token = "0x400825E")]
|
||||
private int endIdx;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Extensions
|
||||
{
|
||||
// Token: 0x02001F92 RID: 8082
|
||||
[Token(Token = "0x2001F92")]
|
||||
public static class ExceptionHelper
|
||||
{
|
||||
// Token: 0x0600CCD5 RID: 52437 RVA: 0x002EDEA4 File Offset: 0x002EC0A4
|
||||
[Token(Token = "0x600CCD5")]
|
||||
[Address(RVA = "0x17127F0", Offset = "0x17115F0", VA = "0x1817127F0")]
|
||||
public static Exception ServerClosedTCPStream()
|
||||
{
|
||||
return new Exception("TCP Stream closed unexpectedly by the remote server");
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,513 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Runtime.InteropServices;
|
||||
using System.Security.Cryptography;
|
||||
using System.Text;
|
||||
using System.Text.RegularExpressions;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Extensions
|
||||
{
|
||||
// Token: 0x02001F8F RID: 8079
|
||||
[Token(Token = "0x2001F8F")]
|
||||
public static class Extensions
|
||||
{
|
||||
// Token: 0x0600CCAE RID: 52398 RVA: 0x002ED6EC File Offset: 0x002EB8EC
|
||||
[Token(Token = "0x600CCAE")]
|
||||
[Address(RVA = "0x1712840", Offset = "0x1711640", VA = "0x181712840")]
|
||||
public static string AsciiToString(this byte[] bytes)
|
||||
{
|
||||
int length;
|
||||
StringBuilder stringBuilder = new StringBuilder(length);
|
||||
length = bytes.Length;
|
||||
int num = 0;
|
||||
int length2 = bytes.Length;
|
||||
if (num < length2)
|
||||
{
|
||||
byte b;
|
||||
StringBuilder stringBuilder2 = stringBuilder.Append((char)b);
|
||||
num++;
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CCAF RID: 52399 RVA: 0x002ED728 File Offset: 0x002EB928
|
||||
[Token(Token = "0x600CCAF")]
|
||||
[Address(RVA = "0x1712CF0", Offset = "0x1711AF0", VA = "0x181712CF0")]
|
||||
public static byte[] GetASCIIBytes(this string str)
|
||||
{
|
||||
int stringLength = str.m_stringLength;
|
||||
int num = 0;
|
||||
byte[] array = VariableSizedBufferPool.Get((long)stringLength, num != 0);
|
||||
int num2 = 0;
|
||||
if (num2 < str.m_stringLength)
|
||||
{
|
||||
char c = str[num2];
|
||||
num2++;
|
||||
}
|
||||
return array;
|
||||
}
|
||||
|
||||
// Token: 0x0600CCB0 RID: 52400 RVA: 0x002ED768 File Offset: 0x002EB968
|
||||
[Token(Token = "0x600CCB0")]
|
||||
[Address(RVA = "0x1713B60", Offset = "0x1712960", VA = "0x181713B60")]
|
||||
public static void SendAsASCII(this BinaryWriter stream, string str)
|
||||
{
|
||||
int num = 0;
|
||||
if (num < str.m_stringLength)
|
||||
{
|
||||
char c = str[num];
|
||||
stream.Write(c != '\0');
|
||||
num++;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600CCB1 RID: 52401 RVA: 0x002ED79C File Offset: 0x002EB99C
|
||||
[Token(Token = "0x600CCB1")]
|
||||
[Address(RVA = "0x17140B0", Offset = "0x1712EB0", VA = "0x1817140B0")]
|
||||
public static void WriteLine(this Stream fs)
|
||||
{
|
||||
int num = fs.ReadByte();
|
||||
}
|
||||
|
||||
// Token: 0x0600CCB2 RID: 52402 RVA: 0x002ED7B8 File Offset: 0x002EB9B8
|
||||
[Token(Token = "0x600CCB2")]
|
||||
[Address(RVA = "0x1714230", Offset = "0x1713030", VA = "0x181714230")]
|
||||
public static void WriteLine(this Stream fs, string line)
|
||||
{
|
||||
byte[] asciibytes = line.GetASCIIBytes();
|
||||
int num = fs.ReadByte();
|
||||
fs.WriteLine();
|
||||
VariableSizedBufferPool.Release(asciibytes);
|
||||
}
|
||||
|
||||
// Token: 0x0600CCB3 RID: 52403 RVA: 0x002ED7E8 File Offset: 0x002EB9E8
|
||||
[Token(Token = "0x600CCB3")]
|
||||
[Address(RVA = "0x1714140", Offset = "0x1712F40", VA = "0x181714140")]
|
||||
public static void WriteLine(this Stream fs, string format, params object[] values)
|
||||
{
|
||||
byte[] asciibytes = string.Format(format, values).GetASCIIBytes();
|
||||
int num = fs.ReadByte();
|
||||
fs.WriteLine();
|
||||
VariableSizedBufferPool.Release(asciibytes);
|
||||
}
|
||||
|
||||
// Token: 0x0600CCB4 RID: 52404 RVA: 0x002ED81C File Offset: 0x002EBA1C
|
||||
[Token(Token = "0x600CCB4")]
|
||||
[Address(RVA = "0x1712DD0", Offset = "0x1711BD0", VA = "0x181712DD0")]
|
||||
public static string GetRequestPathAndQueryURL(this Uri uri)
|
||||
{
|
||||
string parts = uri.GetParts(UriComponents.PathAndQuery, UriFormat.UriEscaped);
|
||||
return "/";
|
||||
}
|
||||
|
||||
// Token: 0x0600CCB5 RID: 52405 RVA: 0x002ED840 File Offset: 0x002EBA40
|
||||
[Token(Token = "0x600CCB5")]
|
||||
[Address(RVA = "0x1712B50", Offset = "0x1711950", VA = "0x181712B50")]
|
||||
public static string[] FindOption(this string str, string option)
|
||||
{
|
||||
string text = str.ToLower();
|
||||
(new char[1])[0] = (char)((uint)44);
|
||||
string text2 = option.ToLower();
|
||||
int num = 0;
|
||||
string[] array;
|
||||
int length = array.Length;
|
||||
if (num < length)
|
||||
{
|
||||
string text3 = array[num];
|
||||
int num2 = 0;
|
||||
if (!text3.Contains(text2))
|
||||
{
|
||||
num++;
|
||||
}
|
||||
string text4 = array[num];
|
||||
return text4.Split(new char[] { (char)((uint)61) }, (StringSplitOptions)num2);
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CCB6 RID: 52406 RVA: 0x002ED8C4 File Offset: 0x002EBAC4
|
||||
[Token(Token = "0x600CCB6")]
|
||||
[Address(RVA = "0x6D84B0", Offset = "0x6D72B0", VA = "0x1806D84B0")]
|
||||
public static void WriteArray(this Stream stream, byte[] array)
|
||||
{
|
||||
int num = stream.ReadByte();
|
||||
}
|
||||
|
||||
// Token: 0x0600CCB7 RID: 52407 RVA: 0x002ED8E0 File Offset: 0x002EBAE0
|
||||
[Token(Token = "0x600CCB7")]
|
||||
[Address(RVA = "0x1712E40", Offset = "0x1711C40", VA = "0x181712E40")]
|
||||
public static bool IsHostIsAnIPAddress(this Uri uri)
|
||||
{
|
||||
int num = 0;
|
||||
if (!(uri == num))
|
||||
{
|
||||
string host = uri.Host;
|
||||
if (!string.IsNullOrEmpty(host))
|
||||
{
|
||||
string text = host.Trim();
|
||||
bool flag;
|
||||
if (flag)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
bool flag2;
|
||||
if (!string.IsNullOrEmpty(uri.Host) && flag2)
|
||||
{
|
||||
bool flag3;
|
||||
return flag3;
|
||||
}
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CCB8 RID: 52408 RVA: 0x002ED938 File Offset: 0x002EBB38
|
||||
[Token(Token = "0x600CCB8")]
|
||||
[Address(RVA = "0x1713050", Offset = "0x1711E50", VA = "0x181713050")]
|
||||
public static bool IsIpV4AddressValid(string address)
|
||||
{
|
||||
if (string.IsNullOrEmpty(address))
|
||||
{
|
||||
}
|
||||
string text = address.Trim();
|
||||
bool flag;
|
||||
return flag;
|
||||
}
|
||||
|
||||
// Token: 0x0600CCB9 RID: 52409 RVA: 0x002ED960 File Offset: 0x002EBB60
|
||||
[Token(Token = "0x600CCB9")]
|
||||
[Address(RVA = "0x1713100", Offset = "0x1711F00", VA = "0x181713100")]
|
||||
public static bool IsIpV6AddressValid(string address)
|
||||
{
|
||||
bool flag;
|
||||
if (!string.IsNullOrEmpty(address) && flag)
|
||||
{
|
||||
bool flag2;
|
||||
return flag2;
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CCBA RID: 52410 RVA: 0x002ED984 File Offset: 0x002EBB84
|
||||
[Token(Token = "0x600CCBA")]
|
||||
[Address(RVA = "0x1713D40", Offset = "0x1712B40", VA = "0x181713D40")]
|
||||
public static int ToInt32(this string str, int defaultValue = 0)
|
||||
{
|
||||
if (str != 0)
|
||||
{
|
||||
return int.Parse(str);
|
||||
}
|
||||
return defaultValue;
|
||||
}
|
||||
|
||||
// Token: 0x0600CCBB RID: 52411 RVA: 0x002ED9A0 File Offset: 0x002EBBA0
|
||||
[Token(Token = "0x600CCBB")]
|
||||
[Address(RVA = "0x1713DC0", Offset = "0x1712BC0", VA = "0x181713DC0")]
|
||||
public static long ToInt64(this string str, long defaultValue = 0L)
|
||||
{
|
||||
if (str != 0)
|
||||
{
|
||||
return long.Parse(str);
|
||||
}
|
||||
return defaultValue;
|
||||
}
|
||||
|
||||
// Token: 0x0600CCBC RID: 52412 RVA: 0x002ED9BC File Offset: 0x002EBBBC
|
||||
[Token(Token = "0x600CCBC")]
|
||||
[Address(RVA = "0x1713C90", Offset = "0x1712A90", VA = "0x181713C90")]
|
||||
public static DateTime ToDateTime(this string str, [Optional] DateTime defaultValue)
|
||||
{
|
||||
if (str != 0)
|
||||
{
|
||||
bool flag = DateTime.TryParse(str, defaultValue);
|
||||
DateTime dateTime;
|
||||
return dateTime;
|
||||
}
|
||||
return defaultValue;
|
||||
}
|
||||
|
||||
// Token: 0x0600CCBD RID: 52413 RVA: 0x002ED9D8 File Offset: 0x002EBBD8
|
||||
[Token(Token = "0x600CCBD")]
|
||||
[Address(RVA = "0x1713E40", Offset = "0x1712C40", VA = "0x181713E40")]
|
||||
public static string ToStrOrEmpty(this string str)
|
||||
{
|
||||
if (str != 0)
|
||||
{
|
||||
return str;
|
||||
}
|
||||
return string.Empty;
|
||||
}
|
||||
|
||||
// Token: 0x0600CCBE RID: 52414 RVA: 0x002ED9F0 File Offset: 0x002EBBF0
|
||||
[Token(Token = "0x600CCBE")]
|
||||
[Address(RVA = "0x1712AB0", Offset = "0x17118B0", VA = "0x181712AB0")]
|
||||
public static string CalculateMD5Hash(this string input)
|
||||
{
|
||||
byte[] asciibytes = input.GetASCIIBytes();
|
||||
string text = asciibytes.CalculateMD5Hash();
|
||||
VariableSizedBufferPool.Release(asciibytes);
|
||||
return text;
|
||||
}
|
||||
|
||||
// Token: 0x0600CCBF RID: 52415 RVA: 0x002EDA14 File Offset: 0x002EBC14
|
||||
[Token(Token = "0x600CCBF")]
|
||||
[Address(RVA = "0x1712910", Offset = "0x1711710", VA = "0x181712910")]
|
||||
public static string CalculateMD5Hash(this byte[] input)
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
MD5 md = MD5.Create();
|
||||
byte[] array = md.ComputeHash(input);
|
||||
int length;
|
||||
StringBuilder stringBuilder = new StringBuilder(length);
|
||||
length = array.Length;
|
||||
if (num < array.Length)
|
||||
{
|
||||
num += 32;
|
||||
num += array;
|
||||
string text;
|
||||
StringBuilder stringBuilder2 = stringBuilder.Append(text);
|
||||
num++;
|
||||
}
|
||||
VariableSizedBufferPool.Release(array);
|
||||
int hashCode = stringBuilder.GetHashCode();
|
||||
if (md != 0)
|
||||
{
|
||||
}
|
||||
}
|
||||
while (num != 0);
|
||||
throw new IndexOutOfRangeException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CCC0 RID: 52416 RVA: 0x002EDA9C File Offset: 0x002EBC9C
|
||||
[Token(Token = "0x600CCC0")]
|
||||
[Address(RVA = "0x1713A70", Offset = "0x1712870", VA = "0x181713A70")]
|
||||
internal static string Read(this string str, ref int pos, char block, bool needResult = true)
|
||||
{
|
||||
Func<char, bool> func = (char ch) => ch != block;
|
||||
return Extensions.Read(str, ref pos, func, needResult);
|
||||
}
|
||||
|
||||
// Token: 0x0600CCC1 RID: 52417 RVA: 0x002EDAD4 File Offset: 0x002EBCD4
|
||||
[Token(Token = "0x600CCC1")]
|
||||
[Address(RVA = "0x1713960", Offset = "0x1712760", VA = "0x181713960")]
|
||||
internal static string Read(this string str, ref int pos, Func<char, bool> block, bool needResult = true)
|
||||
{
|
||||
int stringLength = str.m_stringLength;
|
||||
str.SkipWhiteSpace(ref pos);
|
||||
char c;
|
||||
if (block(c) != 0)
|
||||
{
|
||||
}
|
||||
if (needResult)
|
||||
{
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CCC2 RID: 52418 RVA: 0x002EDB04 File Offset: 0x002EBD04
|
||||
[Token(Token = "0x600CCC2")]
|
||||
[Address(RVA = "0x17137A0", Offset = "0x17125A0", VA = "0x1817137A0")]
|
||||
internal static string ReadPossibleQuotedText(this string str, ref int pos)
|
||||
{
|
||||
string empty = string.Empty;
|
||||
if (str != 0)
|
||||
{
|
||||
Func<char, bool> <>9__21_ = Extensions.<>c.<>9__21_0;
|
||||
if (<>9__21_ == 0)
|
||||
{
|
||||
Extensions.<>c.<>9__21_0 = delegate(char ch)
|
||||
{
|
||||
bool flag;
|
||||
return flag;
|
||||
};
|
||||
}
|
||||
string text = Extensions.Read(str, ref pos, <>9__21_, true);
|
||||
}
|
||||
return empty;
|
||||
}
|
||||
|
||||
// Token: 0x0600CCC3 RID: 52419 RVA: 0x002EDB54 File Offset: 0x002EBD54
|
||||
[Token(Token = "0x600CCC3")]
|
||||
[Address(RVA = "0x1713BF0", Offset = "0x17129F0", VA = "0x181713BF0")]
|
||||
internal static void SkipWhiteSpace(this string str, ref int pos)
|
||||
{
|
||||
char c;
|
||||
if (char.IsWhiteSpace(c))
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600CCC4 RID: 52420 RVA: 0x002EDB70 File Offset: 0x002EBD70
|
||||
[Token(Token = "0x600CCC4")]
|
||||
[Address(RVA = "0x1713E90", Offset = "0x1712C90", VA = "0x181713E90")]
|
||||
internal static string TrimAndLower(this string str)
|
||||
{
|
||||
if (str != 0)
|
||||
{
|
||||
char[] array = new char[str.m_stringLength];
|
||||
int num = 0;
|
||||
int num2 = 0;
|
||||
if (0 < str.m_stringLength)
|
||||
{
|
||||
char c = str[num2];
|
||||
if (!char.IsWhiteSpace(c) && !char.IsControl(c))
|
||||
{
|
||||
num++;
|
||||
char c2 = char.ToLowerInvariant(c);
|
||||
array[0] = c2;
|
||||
}
|
||||
num2++;
|
||||
}
|
||||
string text;
|
||||
return text;
|
||||
}
|
||||
throw new IndexOutOfRangeException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CCC5 RID: 52421 RVA: 0x002EDBE0 File Offset: 0x002EBDE0
|
||||
[Token(Token = "0x600CCC5")]
|
||||
[Address(RVA = "0x17135C0", Offset = "0x17123C0", VA = "0x1817135C0")]
|
||||
internal static char? Peek(this string str, int pos)
|
||||
{
|
||||
if (pos < str.m_stringLength)
|
||||
{
|
||||
char c = str[pos];
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CCC6 RID: 52422 RVA: 0x002EDC08 File Offset: 0x002EBE08
|
||||
[Token(Token = "0x600CCC6")]
|
||||
[Address(RVA = "0x17131A0", Offset = "0x1711FA0", VA = "0x1817131A0")]
|
||||
internal static List<HeaderValue> ParseOptionalHeader(this string str)
|
||||
{
|
||||
List<HeaderValue> list = new List();
|
||||
if (str != 0)
|
||||
{
|
||||
int num = 0;
|
||||
if (num < str.m_stringLength)
|
||||
{
|
||||
Func<char, bool> <>9__25_ = Extensions.<>c.<>9__25_0;
|
||||
if (<>9__25_ == 0)
|
||||
{
|
||||
Extensions.<>c.<>9__25_0 = delegate(char ch)
|
||||
{
|
||||
bool flag;
|
||||
return flag;
|
||||
};
|
||||
}
|
||||
string text = Extensions.Read(str, num, <>9__25_, true).TrimAndLower();
|
||||
HeaderValue headerValue = new HeaderValue();
|
||||
headerValue.<Key>k__BackingField = text;
|
||||
char c = str[-1];
|
||||
string text2 = str.ReadPossibleQuotedText(num);
|
||||
headerValue.<Value>k__BackingField = text2;
|
||||
list.Add(headerValue);
|
||||
}
|
||||
}
|
||||
return list;
|
||||
}
|
||||
|
||||
// Token: 0x0600CCC7 RID: 52423 RVA: 0x002EDC94 File Offset: 0x002EBE94
|
||||
[Token(Token = "0x600CCC7")]
|
||||
[Address(RVA = "0x17133A0", Offset = "0x17121A0", VA = "0x1817133A0")]
|
||||
internal static List<HeaderValue> ParseQualityParams(this string str)
|
||||
{
|
||||
List<HeaderValue> list = new List();
|
||||
if (str != 0)
|
||||
{
|
||||
int num = 0;
|
||||
if (num < str.m_stringLength)
|
||||
{
|
||||
Func<char, bool> <>9__26_ = Extensions.<>c.<>9__26_0;
|
||||
if (<>9__26_ == 0)
|
||||
{
|
||||
Extensions.<>c.<>9__26_0 = delegate(char ch)
|
||||
{
|
||||
bool flag;
|
||||
return flag;
|
||||
};
|
||||
}
|
||||
string text = Extensions.Read(str, num, <>9__26_, true).TrimAndLower();
|
||||
HeaderValue headerValue = new HeaderValue();
|
||||
headerValue.<Key>k__BackingField = text;
|
||||
char c = str[-1];
|
||||
string text2;
|
||||
headerValue.<Value>k__BackingField = text2;
|
||||
list.Add(headerValue);
|
||||
}
|
||||
}
|
||||
return list;
|
||||
}
|
||||
|
||||
// Token: 0x0600CCC8 RID: 52424 RVA: 0x002EDD18 File Offset: 0x002EBF18
|
||||
[Token(Token = "0x600CCC8")]
|
||||
[Address(RVA = "0x1713650", Offset = "0x1712450", VA = "0x181713650")]
|
||||
public static void ReadBuffer(this Stream stream, byte[] buffer)
|
||||
{
|
||||
int num = 0;
|
||||
int num2 = buffer.Length;
|
||||
num2 -= num;
|
||||
}
|
||||
|
||||
// Token: 0x0600CCC9 RID: 52425 RVA: 0x002EDD38 File Offset: 0x002EBF38
|
||||
[Token(Token = "0x600CCC9")]
|
||||
[Address(RVA = "0x17136F0", Offset = "0x17124F0", VA = "0x1817136F0")]
|
||||
public static void ReadBuffer(this Stream stream, byte[] buffer, int length)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0600CCCA RID: 52426 RVA: 0x002EDD50 File Offset: 0x002EBF50
|
||||
[Token(Token = "0x600CCCA")]
|
||||
[Address(RVA = "0x17144C0", Offset = "0x17132C0", VA = "0x1817144C0")]
|
||||
public static void WriteString(this BufferPoolMemoryStream ms, string str)
|
||||
{
|
||||
object obj = Encoding.UTF8.Clone();
|
||||
byte[] bytes = Encoding.UTF8.GetBytes(str);
|
||||
int num = ms.ReadByte();
|
||||
byte[] array;
|
||||
VariableSizedBufferPool.Release(array);
|
||||
}
|
||||
|
||||
// Token: 0x0600CCCB RID: 52427 RVA: 0x002EDD90 File Offset: 0x002EBF90
|
||||
[Token(Token = "0x600CCCB")]
|
||||
[Address(RVA = "0x1714020", Offset = "0x1712E20", VA = "0x181714020")]
|
||||
public static void WriteLine(this BufferPoolMemoryStream ms)
|
||||
{
|
||||
byte[] eol = HTTPRequest.EOL;
|
||||
int num = ms.ReadByte();
|
||||
}
|
||||
|
||||
// Token: 0x0600CCCC RID: 52428 RVA: 0x002EDDB0 File Offset: 0x002EBFB0
|
||||
[Token(Token = "0x600CCCC")]
|
||||
[Address(RVA = "0x1714300", Offset = "0x1713100", VA = "0x181714300")]
|
||||
public static void WriteLine(this BufferPoolMemoryStream ms, string str)
|
||||
{
|
||||
object obj = Encoding.UTF8.Clone();
|
||||
byte[] bytes = Encoding.UTF8.GetBytes(str);
|
||||
int num = ms.ReadByte();
|
||||
byte[] array;
|
||||
VariableSizedBufferPool.Release(array);
|
||||
byte[] eol = HTTPRequest.EOL;
|
||||
int num2 = ms.ReadByte();
|
||||
}
|
||||
|
||||
// Token: 0x0600CCCD RID: 52429 RVA: 0x002EDDFC File Offset: 0x002EBFFC
|
||||
// Note: this type is marked as 'beforefieldinit'.
|
||||
[Token(Token = "0x600CCCD")]
|
||||
[Address(RVA = "0x17145E0", Offset = "0x17133E0", VA = "0x1817145E0")]
|
||||
static Extensions()
|
||||
{
|
||||
Regex regex = new Regex("\\b(?:\\d{1,3}\\.){3}\\d{1,3}\\b", RegexOptions.IgnoreCase);
|
||||
}
|
||||
|
||||
// Token: 0x0400825F RID: 33375
|
||||
[Token(Token = "0x400825F")]
|
||||
private static readonly Regex validIpV4AddressRegex;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,34 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using BestHTTP.Logger;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Extensions
|
||||
{
|
||||
// Token: 0x02001F93 RID: 8083
|
||||
[Token(Token = "0x2001F93")]
|
||||
public sealed class HeaderParser : KeyValuePairList
|
||||
{
|
||||
// Token: 0x0600CCD6 RID: 52438 RVA: 0x002EDEBC File Offset: 0x002EC0BC
|
||||
[Token(Token = "0x600CCD6")]
|
||||
[Address(RVA = "0x17280F0", Offset = "0x1726EF0", VA = "0x1817280F0")]
|
||||
public HeaderParser(string headerStr)
|
||||
{
|
||||
List<HeaderValue> list = this.Parse(headerStr);
|
||||
this.<Values>k__BackingField = list;
|
||||
}
|
||||
|
||||
// Token: 0x0600CCD7 RID: 52439 RVA: 0x002EDEE0 File Offset: 0x002EC0E0
|
||||
[Token(Token = "0x600CCD7")]
|
||||
[Address(RVA = "0x1727F80", Offset = "0x1726D80", VA = "0x181727F80")]
|
||||
private List<HeaderValue> Parse(string headerStr)
|
||||
{
|
||||
List<HeaderValue> list = new List();
|
||||
int stringLength = headerStr.m_stringLength;
|
||||
HeaderValue headerValue = new HeaderValue();
|
||||
list.Add(headerValue);
|
||||
ILogger logger = HTTPManager.Logger;
|
||||
return list;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,171 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Extensions
|
||||
{
|
||||
// Token: 0x02001F94 RID: 8084
|
||||
[Token(Token = "0x2001F94")]
|
||||
public sealed class HeaderValue
|
||||
{
|
||||
// Token: 0x1700208F RID: 8335
|
||||
// (get) Token: 0x0600CCD8 RID: 52440 RVA: 0x002EDF2C File Offset: 0x002EC12C
|
||||
// (set) Token: 0x0600CCD9 RID: 52441 RVA: 0x002EDF40 File Offset: 0x002EC140
|
||||
[Token(Token = "0x1700208F")]
|
||||
public string Key
|
||||
{
|
||||
[Token(Token = "0x600CCD8")]
|
||||
[Address(RVA = "0x3F6E20", Offset = "0x3F5C20", VA = "0x1803F6E20")]
|
||||
get;
|
||||
[Token(Token = "0x600CCD9")]
|
||||
[Address(RVA = "0x3F7200", Offset = "0x3F6000", VA = "0x1803F7200")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17002090 RID: 8336
|
||||
// (get) Token: 0x0600CCDA RID: 52442 RVA: 0x002EDF54 File Offset: 0x002EC154
|
||||
// (set) Token: 0x0600CCDB RID: 52443 RVA: 0x002EDF68 File Offset: 0x002EC168
|
||||
[Token(Token = "0x17002090")]
|
||||
public string Value
|
||||
{
|
||||
[Token(Token = "0x600CCDA")]
|
||||
[Address(RVA = "0x3F5F40", Offset = "0x3F4D40", VA = "0x1803F5F40")]
|
||||
get;
|
||||
[Token(Token = "0x600CCDB")]
|
||||
[Address(RVA = "0x3F7210", Offset = "0x3F6010", VA = "0x1803F7210")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17002091 RID: 8337
|
||||
// (get) Token: 0x0600CCDC RID: 52444 RVA: 0x002EDF7C File Offset: 0x002EC17C
|
||||
// (set) Token: 0x0600CCDD RID: 52445 RVA: 0x002EDF90 File Offset: 0x002EC190
|
||||
[Token(Token = "0x17002091")]
|
||||
public List<HeaderValue> Options
|
||||
{
|
||||
[Token(Token = "0x600CCDC")]
|
||||
[Address(RVA = "0x3F6400", Offset = "0x3F5200", VA = "0x1803F6400")]
|
||||
get;
|
||||
[Token(Token = "0x600CCDD")]
|
||||
[Address(RVA = "0x460F90", Offset = "0x45FD90", VA = "0x180460F90")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17002092 RID: 8338
|
||||
// (get) Token: 0x0600CCDE RID: 52446 RVA: 0x002EDFA4 File Offset: 0x002EC1A4
|
||||
[Token(Token = "0x17002092")]
|
||||
public bool HasValue
|
||||
{
|
||||
[Token(Token = "0x600CCDE")]
|
||||
[Address(RVA = "0x1728620", Offset = "0x1727420", VA = "0x181728620")]
|
||||
get
|
||||
{
|
||||
return !string.IsNullOrEmpty(this.<Value>k__BackingField);
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600CCDF RID: 52447 RVA: 0x002EDFC0 File Offset: 0x002EC1C0
|
||||
[Token(Token = "0x600CCDF")]
|
||||
[Address(RVA = "0x3F5100", Offset = "0x3F3F00", VA = "0x1803F5100")]
|
||||
public HeaderValue()
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0600CCE0 RID: 52448 RVA: 0x002EDFD4 File Offset: 0x002EC1D4
|
||||
[Token(Token = "0x600CCE0")]
|
||||
[Address(RVA = "0x3FFB80", Offset = "0x3FE980", VA = "0x1803FFB80")]
|
||||
public HeaderValue(string key)
|
||||
{
|
||||
this.Key = key;
|
||||
}
|
||||
|
||||
// Token: 0x0600CCE1 RID: 52449 RVA: 0x002EDFF0 File Offset: 0x002EC1F0
|
||||
[Token(Token = "0x600CCE1")]
|
||||
[Address(RVA = "0x1728480", Offset = "0x1727280", VA = "0x181728480")]
|
||||
public void Parse(string headerStr, ref int pos)
|
||||
{
|
||||
this.ParseImplementation(headerStr, ref pos, true);
|
||||
}
|
||||
|
||||
// Token: 0x0600CCE2 RID: 52450 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600CCE2")]
|
||||
[Address(RVA = "0x1728530", Offset = "0x1727330", VA = "0x181728530")]
|
||||
public bool TryGetOption(string key, out HeaderValue option)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x0600CCE3 RID: 52451 RVA: 0x002EE008 File Offset: 0x002EC208
|
||||
[Token(Token = "0x600CCE3")]
|
||||
[Address(RVA = "0x1728130", Offset = "0x1726F30", VA = "0x181728130")]
|
||||
private void ParseImplementation(string headerStr, ref int pos, bool isOptionIsAnOption)
|
||||
{
|
||||
Func<char, bool> <>9__18_ = HeaderValue.<>c.<>9__18_0;
|
||||
if (<>9__18_ == 0)
|
||||
{
|
||||
HeaderValue.<>c.<>9__18_0 = delegate(char ch)
|
||||
{
|
||||
bool flag3;
|
||||
return flag3;
|
||||
};
|
||||
}
|
||||
int num = 0;
|
||||
string text = Extensions.Read(headerStr, ref pos, <>9__18_, true);
|
||||
this.<Key>k__BackingField = text;
|
||||
char? c;
|
||||
char value = c.value;
|
||||
char value2 = c.value;
|
||||
bool flag = num == 61;
|
||||
if (!isOptionIsAnOption)
|
||||
{
|
||||
}
|
||||
bool flag2 = num == 59;
|
||||
if (num != 59)
|
||||
{
|
||||
if (!flag)
|
||||
{
|
||||
if (!flag2)
|
||||
{
|
||||
goto IL_B1;
|
||||
}
|
||||
HeaderValue headerValue = new HeaderValue();
|
||||
int num2 = 0;
|
||||
headerValue.ParseImplementation(headerStr, ref pos, num2 != 0);
|
||||
List<HeaderValue> list = this.<Options>k__BackingField;
|
||||
if (list == 0)
|
||||
{
|
||||
List<HeaderValue> list2 = new List();
|
||||
this.<Options>k__BackingField = list2;
|
||||
}
|
||||
list.Add(headerValue);
|
||||
}
|
||||
string text2 = headerStr.ReadPossibleQuotedText(ref pos);
|
||||
this.<Value>k__BackingField = text2;
|
||||
IL_B1:
|
||||
if (isOptionIsAnOption)
|
||||
{
|
||||
char? c2 = Extensions.Peek(headerStr, ref pos);
|
||||
char value3 = c2.value;
|
||||
char value4 = c2.value;
|
||||
while (num != 59)
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600CCE4 RID: 52452 RVA: 0x002EE0F0 File Offset: 0x002EC2F0
|
||||
[Token(Token = "0x600CCE4")]
|
||||
[Address(RVA = "0x17284A0", Offset = "0x17272A0", VA = "0x1817284A0", Slot = "3")]
|
||||
public override string ToString()
|
||||
{
|
||||
bool flag = string.IsNullOrEmpty(this.<Value>k__BackingField);
|
||||
string text = this.<Key>k__BackingField;
|
||||
if (flag)
|
||||
{
|
||||
return text;
|
||||
}
|
||||
string text2;
|
||||
return text2;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,116 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Threading;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Extensions
|
||||
{
|
||||
// Token: 0x02001F97 RID: 8087
|
||||
[Token(Token = "0x2001F97")]
|
||||
public sealed class HeartbeatManager
|
||||
{
|
||||
// Token: 0x0600CCE9 RID: 52457 RVA: 0x002EE154 File Offset: 0x002EC354
|
||||
[Token(Token = "0x600CCE9")]
|
||||
[Address(RVA = "0x1728640", Offset = "0x1727440", VA = "0x181728640")]
|
||||
public void Subscribe(IHeartbeat heartbeat)
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
List<IHeartbeat> heartbeats = this.Heartbeats;
|
||||
if (!this.Heartbeats.Contains(heartbeat))
|
||||
{
|
||||
this.Heartbeats.Add(heartbeat);
|
||||
}
|
||||
Monitor.Exit(heartbeats);
|
||||
}
|
||||
while (num != 0);
|
||||
}
|
||||
|
||||
// Token: 0x0600CCEA RID: 52458 RVA: 0x002EE19C File Offset: 0x002EC39C
|
||||
[Token(Token = "0x600CCEA")]
|
||||
[Address(RVA = "0x1728730", Offset = "0x1727530", VA = "0x181728730")]
|
||||
public void Unsubscribe(IHeartbeat heartbeat)
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
List<IHeartbeat> heartbeats = this.Heartbeats;
|
||||
bool flag = this.Heartbeats.Remove(heartbeat);
|
||||
Monitor.Exit(heartbeats);
|
||||
}
|
||||
while (num != 0);
|
||||
}
|
||||
|
||||
// Token: 0x0600CCEB RID: 52459 RVA: 0x002EE1D0 File Offset: 0x002EC3D0
|
||||
[Token(Token = "0x600CCEB")]
|
||||
[Address(RVA = "0x1728800", Offset = "0x1727600", VA = "0x181728800")]
|
||||
public void Update()
|
||||
{
|
||||
int num = 0;
|
||||
DateTime lastUpdate = this.LastUpdate;
|
||||
DateTime minValue = DateTime.MinValue;
|
||||
if (!(lastUpdate == minValue))
|
||||
{
|
||||
DateTime utcNow = DateTime.UtcNow;
|
||||
DateTime lastUpdate2 = this.LastUpdate;
|
||||
TimeSpan timeSpan = utcNow - lastUpdate2;
|
||||
DateTime utcNow2 = DateTime.UtcNow;
|
||||
this.LastUpdate = utcNow2;
|
||||
List<IHeartbeat> heartbeats = this.Heartbeats;
|
||||
IHeartbeat[] updateArray = this.UpdateArray;
|
||||
if (updateArray != 0)
|
||||
{
|
||||
int size = this.Heartbeats._size;
|
||||
if (updateArray.Length >= size)
|
||||
{
|
||||
goto IL_7F;
|
||||
}
|
||||
}
|
||||
List<IHeartbeat> heartbeats2 = this.Heartbeats;
|
||||
IL_7F:
|
||||
int size2 = this.Heartbeats._size;
|
||||
List<IHeartbeat> heartbeats3 = this.Heartbeats;
|
||||
int num2 = 0;
|
||||
Monitor.Exit(heartbeats);
|
||||
if (num != 0)
|
||||
{
|
||||
throw new IndexOutOfRangeException();
|
||||
}
|
||||
IHeartbeat heartbeat = this.UpdateArray[num2];
|
||||
num2++;
|
||||
}
|
||||
DateTime utcNow3 = DateTime.UtcNow;
|
||||
this.LastUpdate = utcNow3;
|
||||
}
|
||||
|
||||
// Token: 0x0600CCEC RID: 52460 RVA: 0x002EE2D0 File Offset: 0x002EC4D0
|
||||
[Token(Token = "0x600CCEC")]
|
||||
[Address(RVA = "0x1728A80", Offset = "0x1727880", VA = "0x181728A80")]
|
||||
public HeartbeatManager()
|
||||
{
|
||||
List<IHeartbeat> list = new List();
|
||||
this.Heartbeats = list;
|
||||
DateTime minValue = DateTime.MinValue;
|
||||
this.LastUpdate = minValue;
|
||||
base..ctor();
|
||||
}
|
||||
|
||||
// Token: 0x0400826A RID: 33386
|
||||
[FieldOffset(Offset = "0x10")]
|
||||
[Token(Token = "0x400826A")]
|
||||
private List<IHeartbeat> Heartbeats;
|
||||
|
||||
// Token: 0x0400826B RID: 33387
|
||||
[FieldOffset(Offset = "0x18")]
|
||||
[Token(Token = "0x400826B")]
|
||||
private IHeartbeat[] UpdateArray;
|
||||
|
||||
// Token: 0x0400826C RID: 33388
|
||||
[FieldOffset(Offset = "0x20")]
|
||||
[Token(Token = "0x400826C")]
|
||||
private DateTime LastUpdate;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Extensions
|
||||
{
|
||||
// Token: 0x02001F96 RID: 8086
|
||||
[Token(Token = "0x2001F96")]
|
||||
public interface IHeartbeat
|
||||
{
|
||||
// Token: 0x0600CCE8 RID: 52456
|
||||
[Token(Token = "0x600CCE8")]
|
||||
[Address(Slot = "0")]
|
||||
void OnHeartbeatUpdate(TimeSpan dif);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,40 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Extensions
|
||||
{
|
||||
// Token: 0x02001F98 RID: 8088
|
||||
[Token(Token = "0x2001F98")]
|
||||
public class KeyValuePairList
|
||||
{
|
||||
// Token: 0x17002093 RID: 8339
|
||||
// (get) Token: 0x0600CCED RID: 52461 RVA: 0x002EE300 File Offset: 0x002EC500
|
||||
// (set) Token: 0x0600CCEE RID: 52462 RVA: 0x002EE314 File Offset: 0x002EC514
|
||||
[Token(Token = "0x17002093")]
|
||||
public List<HeaderValue> Values
|
||||
{
|
||||
[Token(Token = "0x600CCED")]
|
||||
[Address(RVA = "0x3F6E20", Offset = "0x3F5C20", VA = "0x1803F6E20")]
|
||||
get;
|
||||
[Token(Token = "0x600CCEE")]
|
||||
[Address(RVA = "0x3F7200", Offset = "0x3F6000", VA = "0x1803F7200")]
|
||||
protected set;
|
||||
}
|
||||
|
||||
// Token: 0x0600CCEF RID: 52463 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600CCEF")]
|
||||
[Address(RVA = "0x1728B20", Offset = "0x1727920", VA = "0x181728B20")]
|
||||
public bool TryGet(string valueKeyName, out HeaderValue param)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x0600CCF0 RID: 52464 RVA: 0x002EE328 File Offset: 0x002EC528
|
||||
[Token(Token = "0x600CCF0")]
|
||||
[Address(RVA = "0x3F5100", Offset = "0x3F3F00", VA = "0x1803F5100")]
|
||||
public KeyValuePairList()
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,385 @@
|
||||
using System;
|
||||
using System.IO;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Extensions
|
||||
{
|
||||
// Token: 0x02001F99 RID: 8089
|
||||
[Token(Token = "0x2001F99")]
|
||||
public class ReadOnlyBufferedStream : Stream
|
||||
{
|
||||
// Token: 0x17002094 RID: 8340
|
||||
// (get) Token: 0x0600CCF1 RID: 52465 RVA: 0x002EE33C File Offset: 0x002EC53C
|
||||
// (set) Token: 0x0600CCF2 RID: 52466 RVA: 0x002EE350 File Offset: 0x002EC550
|
||||
[Token(Token = "0x17002094")]
|
||||
public bool CheckForDataAvailability
|
||||
{
|
||||
[Token(Token = "0x600CCF1")]
|
||||
[Address(RVA = "0x494270", Offset = "0x493070", VA = "0x180494270")]
|
||||
get;
|
||||
[Token(Token = "0x600CCF2")]
|
||||
[Address(RVA = "0x494500", Offset = "0x493300", VA = "0x180494500")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x0600CCF3 RID: 52467 RVA: 0x002EE364 File Offset: 0x002EC564
|
||||
[Token(Token = "0x600CCF3")]
|
||||
[Address(RVA = "0x17292A0", Offset = "0x17280A0", VA = "0x1817292A0")]
|
||||
public ReadOnlyBufferedStream(Stream nstream)
|
||||
{
|
||||
this.stream = nstream;
|
||||
byte[] array;
|
||||
this.buf = array;
|
||||
}
|
||||
|
||||
// Token: 0x0600CCF4 RID: 52468 RVA: 0x002EE388 File Offset: 0x002EC588
|
||||
[Token(Token = "0x600CCF4")]
|
||||
[Address(RVA = "0x1729030", Offset = "0x1727E30", VA = "0x181729030", Slot = "27")]
|
||||
public override int Read(byte[] buffer, int offset, int size)
|
||||
{
|
||||
int num2;
|
||||
do
|
||||
{
|
||||
int num = this.available;
|
||||
num2 = 0;
|
||||
if (size <= num)
|
||||
{
|
||||
break;
|
||||
}
|
||||
if (num > 0)
|
||||
{
|
||||
int num3 = this.pos;
|
||||
Array.Copy(this.buf, num3, buffer, size, num);
|
||||
int num4 = this.available;
|
||||
this.available = num2;
|
||||
}
|
||||
Stream stream = this.stream;
|
||||
int length = this.buf.Length;
|
||||
this.pos = num2;
|
||||
int num5 = 0;
|
||||
Array.Copy(this.buf, num5, buffer, offset, size);
|
||||
}
|
||||
while (num2 <= 0);
|
||||
int num6 = this.pos;
|
||||
Array.Copy(this.buf, num6, buffer, size, size);
|
||||
return size;
|
||||
}
|
||||
|
||||
// Token: 0x0600CCF5 RID: 52469 RVA: 0x002EE428 File Offset: 0x002EC628
|
||||
[Token(Token = "0x600CCF5")]
|
||||
[Address(RVA = "0x1728F00", Offset = "0x1727D00", VA = "0x181728F00", Slot = "28")]
|
||||
public override int ReadByte()
|
||||
{
|
||||
int num = this.available;
|
||||
Stream stream = this.stream;
|
||||
byte[] array = this.buf;
|
||||
this.pos = (int)((ulong)0L);
|
||||
this.pos = (int)((ulong)1L);
|
||||
byte b = this.buf[0];
|
||||
return -1;
|
||||
}
|
||||
|
||||
// Token: 0x0600CCF6 RID: 52470 RVA: 0x002EE494 File Offset: 0x002EC694
|
||||
[Token(Token = "0x600CCF6")]
|
||||
[Address(RVA = "0x1728E40", Offset = "0x1727C40", VA = "0x181728E40", Slot = "16")]
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
byte[] array = this.buf;
|
||||
if (array != 0)
|
||||
{
|
||||
VariableSizedBufferPool.Release(array);
|
||||
}
|
||||
this.buf = (ulong)0L;
|
||||
}
|
||||
|
||||
// Token: 0x17002095 RID: 8341
|
||||
// (get) Token: 0x0600CCF7 RID: 52471 RVA: 0x002EE4BC File Offset: 0x002EC6BC
|
||||
[Token(Token = "0x17002095")]
|
||||
public override bool CanRead
|
||||
{
|
||||
[Token(Token = "0x600CCF7")]
|
||||
[Address(RVA = "0x460D40", Offset = "0x45FB40", VA = "0x180460D40", Slot = "7")]
|
||||
get
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17002096 RID: 8342
|
||||
// (get) Token: 0x0600CCF8 RID: 52472 RVA: 0x002EE4CC File Offset: 0x002EC6CC
|
||||
[Token(Token = "0x17002096")]
|
||||
public override bool CanSeek
|
||||
{
|
||||
[Token(Token = "0x600CCF8")]
|
||||
[Address(RVA = "0x1729340", Offset = "0x1728140", VA = "0x181729340", Slot = "8")]
|
||||
get
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CCF8)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean BestHTTP.Extensions.ReadOnlyBufferedStream::get_CanSeek()
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
Block_0:
|
||||
stloc:NotImplementedException(var_0_05, newobj:NotImplementedException(NotImplementedException::.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: 0x17002097 RID: 8343
|
||||
// (get) Token: 0x0600CCF9 RID: 52473 RVA: 0x002EE4E0 File Offset: 0x002EC6E0
|
||||
[Token(Token = "0x17002097")]
|
||||
public override bool CanWrite
|
||||
{
|
||||
[Token(Token = "0x600CCF9")]
|
||||
[Address(RVA = "0x1729390", Offset = "0x1728190", VA = "0x181729390", Slot = "9")]
|
||||
get
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CCF9)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean BestHTTP.Extensions.ReadOnlyBufferedStream::get_CanWrite()
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
Block_0:
|
||||
stloc:NotImplementedException(var_0_05, newobj:NotImplementedException(NotImplementedException::.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: 0x17002098 RID: 8344
|
||||
// (get) Token: 0x0600CCFA RID: 52474 RVA: 0x002EE4F4 File Offset: 0x002EC6F4
|
||||
[Token(Token = "0x17002098")]
|
||||
public override long Length
|
||||
{
|
||||
[Token(Token = "0x600CCFA")]
|
||||
[Address(RVA = "0x17293E0", Offset = "0x17281E0", VA = "0x1817293E0", Slot = "10")]
|
||||
get
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CCFA)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int64 BestHTTP.Extensions.ReadOnlyBufferedStream::get_Length()
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
Block_0:
|
||||
stloc:NotImplementedException(var_0_05, newobj:NotImplementedException(NotImplementedException::.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: 0x17002099 RID: 8345
|
||||
// (get) Token: 0x0600CCFB RID: 52475 RVA: 0x002EE508 File Offset: 0x002EC708
|
||||
// (set) Token: 0x0600CCFC RID: 52476 RVA: 0x002EE51C File Offset: 0x002EC71C
|
||||
[Token(Token = "0x17002099")]
|
||||
public override long Position
|
||||
{
|
||||
[Token(Token = "0x600CCFB")]
|
||||
[Address(RVA = "0x1729430", Offset = "0x1728230", VA = "0x181729430", Slot = "11")]
|
||||
get
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CCFB)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int64 BestHTTP.Extensions.ReadOnlyBufferedStream::get_Position()
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
Block_0:
|
||||
stloc:NotImplementedException(var_0_05, newobj:NotImplementedException(NotImplementedException::.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 = "0x600CCFC")]
|
||||
[Address(RVA = "0x1729480", Offset = "0x1728280", VA = "0x181729480", Slot = "12")]
|
||||
set
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CCFC)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.Extensions.ReadOnlyBufferedStream::set_Position(System.Int64)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
Block_0:
|
||||
stloc:NotImplementedException(var_0_05, newobj:NotImplementedException(NotImplementedException::.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: 0x0600CCFD RID: 52477 RVA: 0x002EE530 File Offset: 0x002EC730
|
||||
[Token(Token = "0x600CCFD")]
|
||||
[Address(RVA = "0x1728EB0", Offset = "0x1727CB0", VA = "0x181728EB0", Slot = "17")]
|
||||
public override void Flush()
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CCFD)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.Extensions.ReadOnlyBufferedStream::Flush()
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
Block_0:
|
||||
stloc:NotImplementedException(var_0_05, newobj:NotImplementedException(NotImplementedException::.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: 0x0600CCFE RID: 52478 RVA: 0x002EE544 File Offset: 0x002EC744
|
||||
[Token(Token = "0x600CCFE")]
|
||||
[Address(RVA = "0x17291B0", Offset = "0x1727FB0", VA = "0x1817291B0", Slot = "25")]
|
||||
public override long Seek(long offset, SeekOrigin origin)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CCFE)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int64 BestHTTP.Extensions.ReadOnlyBufferedStream::Seek(System.Int64,System.IO.SeekOrigin)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
Block_0:
|
||||
stloc:NotImplementedException(var_0_05, newobj:NotImplementedException(NotImplementedException::.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: 0x0600CCFF RID: 52479 RVA: 0x002EE558 File Offset: 0x002EC758
|
||||
[Token(Token = "0x600CCFF")]
|
||||
[Address(RVA = "0x1729200", Offset = "0x1728000", VA = "0x181729200", Slot = "26")]
|
||||
public override void SetLength(long value)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CCFF)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.Extensions.ReadOnlyBufferedStream::SetLength(System.Int64)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
Block_0:
|
||||
stloc:NotImplementedException(var_0_05, newobj:NotImplementedException(NotImplementedException::.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: 0x0600CD00 RID: 52480 RVA: 0x002EE56C File Offset: 0x002EC76C
|
||||
[Token(Token = "0x600CD00")]
|
||||
[Address(RVA = "0x1729250", Offset = "0x1728050", VA = "0x181729250", Slot = "29")]
|
||||
public override void Write(byte[] buffer, int offset, int count)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CD00)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.Extensions.ReadOnlyBufferedStream::Write(System.Byte[],System.Int32,System.Int32)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
Block_0:
|
||||
stloc:NotImplementedException(var_0_05, newobj:NotImplementedException(NotImplementedException::.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: 0x0400826F RID: 33391
|
||||
[FieldOffset(Offset = "0x30")]
|
||||
[Token(Token = "0x400826F")]
|
||||
private Stream stream;
|
||||
|
||||
// Token: 0x04008270 RID: 33392
|
||||
[Token(Token = "0x4008270")]
|
||||
public const int READBUFFER = 8192;
|
||||
|
||||
// Token: 0x04008271 RID: 33393
|
||||
[FieldOffset(Offset = "0x38")]
|
||||
[Token(Token = "0x4008271")]
|
||||
private byte[] buf;
|
||||
|
||||
// Token: 0x04008272 RID: 33394
|
||||
[FieldOffset(Offset = "0x40")]
|
||||
[Token(Token = "0x4008272")]
|
||||
private int available;
|
||||
|
||||
// Token: 0x04008273 RID: 33395
|
||||
[FieldOffset(Offset = "0x44")]
|
||||
[Token(Token = "0x4008273")]
|
||||
private int pos;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,423 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
using System.Threading;
|
||||
using BestHTTP.Logger;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Extensions
|
||||
{
|
||||
// Token: 0x02001F9C RID: 8092
|
||||
[Token(Token = "0x2001F9C")]
|
||||
public static class VariableSizedBufferPool
|
||||
{
|
||||
// Token: 0x1700209A RID: 8346
|
||||
// (get) Token: 0x0600CD05 RID: 52485 RVA: 0x002EE614 File Offset: 0x002EC814
|
||||
// (set) Token: 0x0600CD06 RID: 52486 RVA: 0x002EE628 File Offset: 0x002EC828
|
||||
[Token(Token = "0x1700209A")]
|
||||
public static bool IsEnabled
|
||||
{
|
||||
[Token(Token = "0x600CD05")]
|
||||
[Address(RVA = "0x172BBE0", Offset = "0x172A9E0", VA = "0x18172BBE0")]
|
||||
get
|
||||
{
|
||||
return VariableSizedBufferPool._isEnabled;
|
||||
}
|
||||
[Token(Token = "0x600CD06")]
|
||||
[Address(RVA = "0x172BC50", Offset = "0x172AA50", VA = "0x18172BC50")]
|
||||
set
|
||||
{
|
||||
VariableSizedBufferPool._isEnabled = value;
|
||||
if (!VariableSizedBufferPool._isEnabled)
|
||||
{
|
||||
VariableSizedBufferPool.Clear();
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600CD07 RID: 52487 RVA: 0x002EE64C File Offset: 0x002EC84C
|
||||
[Token(Token = "0x600CD07")]
|
||||
[Address(RVA = "0x172B9C0", Offset = "0x172A7C0", VA = "0x18172B9C0")]
|
||||
static VariableSizedBufferPool()
|
||||
{
|
||||
TimeSpan timeSpan;
|
||||
VariableSizedBufferPool.RemoveOlderThan = timeSpan;
|
||||
TimeSpan timeSpan2;
|
||||
VariableSizedBufferPool.RunMaintenanceEvery = timeSpan2;
|
||||
VariableSizedBufferPool.MaxBufferSize = (long)((ulong)long.MaxValue);
|
||||
VariableSizedBufferPool.FreeBuffers = new List();
|
||||
VariableSizedBufferPool.lastMaintenance = DateTime.MinValue;
|
||||
int num = 0;
|
||||
VariableSizedBufferPool.PoolSize = num;
|
||||
VariableSizedBufferPool.GetBuffers = (uint)num;
|
||||
VariableSizedBufferPool.ReleaseBuffers = (uint)num;
|
||||
VariableSizedBufferPool.statiscticsBuilder = new StringBuilder();
|
||||
}
|
||||
|
||||
// Token: 0x0600CD08 RID: 52488 RVA: 0x002EE6B4 File Offset: 0x002EC8B4
|
||||
[Token(Token = "0x600CD08")]
|
||||
[Address(RVA = "0x172A980", Offset = "0x1729780", VA = "0x18172A980")]
|
||||
public static byte[] Get(long size, bool canBeLarger)
|
||||
{
|
||||
for (;;)
|
||||
{
|
||||
int num = 0;
|
||||
if (!VariableSizedBufferPool._isEnabled)
|
||||
{
|
||||
break;
|
||||
}
|
||||
List<BufferStore> freeBuffers = VariableSizedBufferPool.FreeBuffers;
|
||||
Monitor.Enter(freeBuffers, canBeLarger);
|
||||
List<BufferStore> freeBuffers2 = VariableSizedBufferPool.FreeBuffers;
|
||||
List<BufferStore> freeBuffers3 = VariableSizedBufferPool.FreeBuffers;
|
||||
List<BufferStore> freeBuffers4 = VariableSizedBufferPool.FreeBuffers;
|
||||
int num2 = 0;
|
||||
ThrowHelper.ThrowArgumentOutOfRangeException();
|
||||
num += 2;
|
||||
num += num;
|
||||
if ((long)num2 == size || (canBeLarger && (long)num2 > size))
|
||||
{
|
||||
ThrowHelper.ThrowArgumentOutOfRangeException();
|
||||
}
|
||||
num++;
|
||||
int poolSize;
|
||||
if (num != 0)
|
||||
{
|
||||
VariableSizedBufferPool.GetBuffers += 1U;
|
||||
poolSize = VariableSizedBufferPool.PoolSize;
|
||||
VariableSizedBufferPool.PoolSize = poolSize;
|
||||
}
|
||||
if (canBeLarger)
|
||||
{
|
||||
int num3 = poolSize - 1;
|
||||
if (poolSize != num3)
|
||||
{
|
||||
uint num4;
|
||||
num4 += num4;
|
||||
while (num4 <= (uint)poolSize)
|
||||
{
|
||||
}
|
||||
byte[] array = new byte[VariableSizedBufferPool.MinBufferSize];
|
||||
byte[] array2 = new byte[size];
|
||||
Monitor.Exit(freeBuffers);
|
||||
if (num == 0)
|
||||
{
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return new byte[size];
|
||||
}
|
||||
|
||||
// Token: 0x0600CD09 RID: 52489 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600CD09")]
|
||||
[Address(RVA = "0x172B790", Offset = "0x172A590", VA = "0x18172B790")]
|
||||
public static void Release(List<byte[]> buffers)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x0600CD0A RID: 52490 RVA: 0x002EE7A8 File Offset: 0x002EC9A8
|
||||
[Token(Token = "0x600CD0A")]
|
||||
[Address(RVA = "0x172B540", Offset = "0x172A340", VA = "0x18172B540")]
|
||||
public static void Release(byte[] buffer)
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
if (!VariableSizedBufferPool._isEnabled || buffer == 0 || buffer.Length == 0)
|
||||
{
|
||||
break;
|
||||
}
|
||||
List<BufferStore> freeBuffers = VariableSizedBufferPool.FreeBuffers;
|
||||
long maxPoolSize = VariableSizedBufferPool.MaxPoolSize;
|
||||
VariableSizedBufferPool.PoolSize = typeof(VariableSizedBufferPool).TypeHandle;
|
||||
VariableSizedBufferPool.ReleaseBuffers += 1U;
|
||||
VariableSizedBufferPool.AddFreeBuffer(buffer);
|
||||
Monitor.Exit(freeBuffers);
|
||||
}
|
||||
while (num != 0);
|
||||
}
|
||||
|
||||
// Token: 0x0600CD0B RID: 52491 RVA: 0x002EE800 File Offset: 0x002ECA00
|
||||
[Token(Token = "0x600CD0B")]
|
||||
[Address(RVA = "0x172B870", Offset = "0x172A670", VA = "0x18172B870")]
|
||||
public static byte[] Resize(ref byte[] buffer, int newSize, bool canBeLarger)
|
||||
{
|
||||
if (VariableSizedBufferPool._isEnabled)
|
||||
{
|
||||
byte[] array = VariableSizedBufferPool.Get((long)newSize, canBeLarger);
|
||||
int num = Math.Min(array.Length, canBeLarger ? 1 : 0);
|
||||
buffer.m_value = array;
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CD0C RID: 52492 RVA: 0x002EE838 File Offset: 0x002ECA38
|
||||
[Token(Token = "0x600CD0C")]
|
||||
[Address(RVA = "0x172A500", Offset = "0x1729300", VA = "0x18172A500")]
|
||||
public static string GetStatistics(bool showEmptyBuffers = true)
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
List<BufferStore> freeBuffers = VariableSizedBufferPool.FreeBuffers;
|
||||
StringBuilder stringBuilder = VariableSizedBufferPool.statiscticsBuilder;
|
||||
int num2 = 0;
|
||||
stringBuilder.Length = num2;
|
||||
uint num3;
|
||||
StringBuilder stringBuilder2 = VariableSizedBufferPool.statiscticsBuilder.AppendFormat("Pooled array reused count: {0:N0}\n", num3);
|
||||
StringBuilder stringBuilder3 = VariableSizedBufferPool.statiscticsBuilder;
|
||||
StringBuilder stringBuilder4 = VariableSizedBufferPool.statiscticsBuilder;
|
||||
StringBuilder stringBuilder5 = VariableSizedBufferPool.statiscticsBuilder;
|
||||
int size = VariableSizedBufferPool.FreeBuffers._size;
|
||||
StringBuilder stringBuilder6 = stringBuilder5.AppendFormat("Buffers: {0}\n", size);
|
||||
List<BufferStore> freeBuffers2 = VariableSizedBufferPool.FreeBuffers;
|
||||
List<BufferStore> freeBuffers3 = VariableSizedBufferPool.FreeBuffers;
|
||||
ThrowHelper.ThrowArgumentOutOfRangeException();
|
||||
num += 2;
|
||||
num += num;
|
||||
if (!showEmptyBuffers)
|
||||
{
|
||||
}
|
||||
StringBuilder stringBuilder7 = VariableSizedBufferPool.statiscticsBuilder;
|
||||
num++;
|
||||
int hashCode = VariableSizedBufferPool.statiscticsBuilder.GetHashCode();
|
||||
Monitor.Exit(freeBuffers);
|
||||
}
|
||||
while (num != 0);
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CD0D RID: 52493 RVA: 0x002EE930 File Offset: 0x002ECB30
|
||||
[Token(Token = "0x600CD0D")]
|
||||
[Address(RVA = "0x172A1E0", Offset = "0x1728FE0", VA = "0x18172A1E0")]
|
||||
public static void Clear()
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
List<BufferStore> freeBuffers = VariableSizedBufferPool.FreeBuffers;
|
||||
VariableSizedBufferPool.FreeBuffers.Clear();
|
||||
VariableSizedBufferPool.PoolSize = num;
|
||||
Monitor.Exit(freeBuffers);
|
||||
}
|
||||
while (num != 0);
|
||||
}
|
||||
|
||||
// Token: 0x0600CD0E RID: 52494 RVA: 0x002EE968 File Offset: 0x002ECB68
|
||||
[Token(Token = "0x600CD0E")]
|
||||
[Address(RVA = "0x172AF00", Offset = "0x1729D00", VA = "0x18172AF00")]
|
||||
internal static void Maintain()
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
DateTime utcNow = DateTime.UtcNow;
|
||||
if (!VariableSizedBufferPool._isEnabled)
|
||||
{
|
||||
break;
|
||||
}
|
||||
DateTime dateTime = VariableSizedBufferPool.lastMaintenance;
|
||||
TimeSpan runMaintenanceEvery = VariableSizedBufferPool.RunMaintenanceEvery;
|
||||
if (dateTime + runMaintenanceEvery > utcNow)
|
||||
{
|
||||
break;
|
||||
}
|
||||
VariableSizedBufferPool.lastMaintenance = utcNow;
|
||||
TimeSpan removeOlderThan = VariableSizedBufferPool.RemoveOlderThan;
|
||||
DateTime dateTime2 = utcNow - removeOlderThan;
|
||||
List<BufferStore> freeBuffers = VariableSizedBufferPool.FreeBuffers;
|
||||
if (HTTPManager.Logger == 0)
|
||||
{
|
||||
ILogger logger = HTTPManager.Logger;
|
||||
ulong num2;
|
||||
string statistics = VariableSizedBufferPool.GetStatistics(num2 != 0UL);
|
||||
string text = "Before Maintain: " + statistics;
|
||||
}
|
||||
List<BufferStore> freeBuffers2 = VariableSizedBufferPool.FreeBuffers;
|
||||
List<BufferStore> list = VariableSizedBufferPool.FreeBuffers;
|
||||
ThrowHelper.ThrowArgumentOutOfRangeException();
|
||||
num += 2;
|
||||
num += num;
|
||||
ThrowHelper.ThrowArgumentOutOfRangeException();
|
||||
list += list;
|
||||
bool flag;
|
||||
if (!flag)
|
||||
{
|
||||
}
|
||||
int num3 = VariableSizedBufferPool.PoolSize;
|
||||
num3 -= typeof(VariableSizedBufferPool).TypeHandle;
|
||||
VariableSizedBufferPool.PoolSize = num3;
|
||||
if (!runMaintenanceEvery._legacyConfigChecked)
|
||||
{
|
||||
VariableSizedBufferPool.FreeBuffers.RemoveAt(num);
|
||||
}
|
||||
num++;
|
||||
if (HTTPManager.Logger == 0)
|
||||
{
|
||||
ILogger logger2 = HTTPManager.Logger;
|
||||
ulong num4;
|
||||
string statistics2 = VariableSizedBufferPool.GetStatistics(num4 != 0UL);
|
||||
string text2 = "After Maintain: " + statistics2;
|
||||
}
|
||||
Monitor.Exit(freeBuffers);
|
||||
}
|
||||
while (num != 0);
|
||||
}
|
||||
|
||||
// Token: 0x0600CD0F RID: 52495 RVA: 0x002EEAC4 File Offset: 0x002ECCC4
|
||||
[Token(Token = "0x600CD0F")]
|
||||
[Address(RVA = "0x172AEF0", Offset = "0x1729CF0", VA = "0x18172AEF0")]
|
||||
private static bool IsPowerOfTwo(long x)
|
||||
{
|
||||
long num = x - 1L;
|
||||
return x == num;
|
||||
}
|
||||
|
||||
// Token: 0x0600CD10 RID: 52496 RVA: 0x002EEADC File Offset: 0x002ECCDC
|
||||
[Token(Token = "0x600CD10")]
|
||||
[Address(RVA = "0x172B520", Offset = "0x172A320", VA = "0x18172B520")]
|
||||
private static long NextPowerOf2(long x)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CD10)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int64 BestHTTP.Extensions.VariableSizedBufferPool::NextPowerOf2(System.Int64)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_04:
|
||||
brtrue(IL_04, cle:bool(ldloc:uint32[exp:int64](var_0), ldloc:int64(x)))
|
||||
}
|
||||
|
||||
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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: 0x0600CD11 RID: 52497 RVA: 0x002EEAF0 File Offset: 0x002ECCF0
|
||||
[Token(Token = "0x600CD11")]
|
||||
[Address(RVA = "0x172A310", Offset = "0x1729110", VA = "0x18172A310")]
|
||||
private static BufferDesc FindFreeBuffer(long size, bool canBeLarger)
|
||||
{
|
||||
int num = 0;
|
||||
List<BufferStore> freeBuffers = VariableSizedBufferPool.FreeBuffers;
|
||||
List<BufferStore> freeBuffers2 = VariableSizedBufferPool.FreeBuffers;
|
||||
int num2 = 0;
|
||||
ThrowHelper.ThrowArgumentOutOfRangeException();
|
||||
if (num2 != (canBeLarger ? 1 : 0))
|
||||
{
|
||||
num++;
|
||||
}
|
||||
int num3 = 0;
|
||||
ThrowHelper.ThrowArgumentOutOfRangeException();
|
||||
num3 += num3;
|
||||
size.m_value = 0L;
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CD12 RID: 52498 RVA: 0x002EEB38 File Offset: 0x002ECD38
|
||||
[Token(Token = "0x600CD12")]
|
||||
[Address(RVA = "0x1729E90", Offset = "0x1728C90", VA = "0x181729E90")]
|
||||
private static void AddFreeBuffer(byte[] buffer)
|
||||
{
|
||||
int length = buffer.Length;
|
||||
int num = 0;
|
||||
List<BufferStore> freeBuffers = VariableSizedBufferPool.FreeBuffers;
|
||||
List<BufferStore> freeBuffers2 = VariableSizedBufferPool.FreeBuffers;
|
||||
ThrowHelper.ThrowArgumentOutOfRangeException();
|
||||
if ("{il2cpp array field local7->}" != length)
|
||||
{
|
||||
num++;
|
||||
uint num2;
|
||||
num2 += (uint)16;
|
||||
int num3 = 0;
|
||||
VariableSizedBufferPool.FreeBuffers.Insert(num, num3);
|
||||
return;
|
||||
}
|
||||
ThrowHelper.ThrowArgumentOutOfRangeException();
|
||||
if (typeof(VariableSizedBufferPool).TypeHandle != buffer)
|
||||
{
|
||||
}
|
||||
ILogger logger = HTTPManager.Logger;
|
||||
int num4 = 0;
|
||||
VariableSizedBufferPool.FreeBuffers.Add(num4);
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x04008279 RID: 33401
|
||||
[Token(Token = "0x4008279")]
|
||||
public static readonly byte[] NoData = new byte[0];
|
||||
|
||||
// Token: 0x0400827A RID: 33402
|
||||
[Token(Token = "0x400827A")]
|
||||
public static bool _isEnabled;
|
||||
|
||||
// Token: 0x0400827B RID: 33403
|
||||
[Token(Token = "0x400827B")]
|
||||
public static TimeSpan RemoveOlderThan;
|
||||
|
||||
// Token: 0x0400827C RID: 33404
|
||||
[Token(Token = "0x400827C")]
|
||||
public static TimeSpan RunMaintenanceEvery;
|
||||
|
||||
// Token: 0x0400827D RID: 33405
|
||||
[Token(Token = "0x400827D")]
|
||||
public static long MinBufferSize;
|
||||
|
||||
// Token: 0x0400827E RID: 33406
|
||||
[Token(Token = "0x400827E")]
|
||||
public static long MaxBufferSize;
|
||||
|
||||
// Token: 0x0400827F RID: 33407
|
||||
[Token(Token = "0x400827F")]
|
||||
public static long MaxPoolSize;
|
||||
|
||||
// Token: 0x04008280 RID: 33408
|
||||
[Token(Token = "0x4008280")]
|
||||
public static bool RemoveEmptyLists;
|
||||
|
||||
// Token: 0x04008281 RID: 33409
|
||||
[Token(Token = "0x4008281")]
|
||||
public static bool IsDoubleReleaseCheckEnabled;
|
||||
|
||||
// Token: 0x04008282 RID: 33410
|
||||
[Token(Token = "0x4008282")]
|
||||
private static List<BufferStore> FreeBuffers;
|
||||
|
||||
// Token: 0x04008283 RID: 33411
|
||||
[Token(Token = "0x4008283")]
|
||||
private static DateTime lastMaintenance;
|
||||
|
||||
// Token: 0x04008284 RID: 33412
|
||||
[Token(Token = "0x4008284")]
|
||||
private static int PoolSize;
|
||||
|
||||
// Token: 0x04008285 RID: 33413
|
||||
[Token(Token = "0x4008285")]
|
||||
private static uint GetBuffers;
|
||||
|
||||
// Token: 0x04008286 RID: 33414
|
||||
[Token(Token = "0x4008286")]
|
||||
private static uint ReleaseBuffers;
|
||||
|
||||
// Token: 0x04008287 RID: 33415
|
||||
[Token(Token = "0x4008287")]
|
||||
private static StringBuilder statiscticsBuilder;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,57 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Extensions
|
||||
{
|
||||
// Token: 0x02001F9D RID: 8093
|
||||
[Token(Token = "0x2001F9D")]
|
||||
public sealed class WWWAuthenticateHeaderParser : KeyValuePairList
|
||||
{
|
||||
// Token: 0x0600CD13 RID: 52499 RVA: 0x002EEBB8 File Offset: 0x002ECDB8
|
||||
[Token(Token = "0x600CD13")]
|
||||
[Address(RVA = "0x172BF40", Offset = "0x172AD40", VA = "0x18172BF40")]
|
||||
public WWWAuthenticateHeaderParser(string headerValue)
|
||||
{
|
||||
List<HeaderValue> list = this.ParseQuotedHeader(headerValue);
|
||||
this.<Values>k__BackingField = list;
|
||||
}
|
||||
|
||||
// Token: 0x0600CD14 RID: 52500 RVA: 0x002EEBDC File Offset: 0x002ECDDC
|
||||
[Token(Token = "0x600CD14")]
|
||||
[Address(RVA = "0x172BD00", Offset = "0x172AB00", VA = "0x18172BD00")]
|
||||
private List<HeaderValue> ParseQuotedHeader(string str)
|
||||
{
|
||||
List<HeaderValue> list = new List();
|
||||
if (str != 0)
|
||||
{
|
||||
int num = 0;
|
||||
Func<char, bool> <>9__1_ = WWWAuthenticateHeaderParser.<>c.<>9__1_0;
|
||||
if (<>9__1_ == 0)
|
||||
{
|
||||
WWWAuthenticateHeaderParser.<>c.<>9__1_0 = delegate(char ch)
|
||||
{
|
||||
if (char.IsWhiteSpace(ch))
|
||||
{
|
||||
}
|
||||
return !char.IsControl(ch);
|
||||
};
|
||||
}
|
||||
string text = Extensions.Read(str, num, <>9__1_, true).TrimAndLower();
|
||||
list.Add(new HeaderValue
|
||||
{
|
||||
<Key>k__BackingField = text
|
||||
});
|
||||
int stringLength = str.m_stringLength;
|
||||
string text3;
|
||||
string text2 = text3.TrimAndLower();
|
||||
HeaderValue headerValue = new HeaderValue();
|
||||
headerValue.<Key>k__BackingField = text2;
|
||||
str.SkipWhiteSpace(num);
|
||||
string text4 = str.ReadPossibleQuotedText(num);
|
||||
headerValue.<Value>k__BackingField = text4;
|
||||
}
|
||||
return list;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,224 @@
|
||||
using System;
|
||||
using System.IO;
|
||||
using BestHTTP.Logger;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Extensions
|
||||
{
|
||||
// Token: 0x02001F9F RID: 8095
|
||||
[Token(Token = "0x2001F9F")]
|
||||
public sealed class WriteOnlyBufferedStream : Stream
|
||||
{
|
||||
// Token: 0x1700209B RID: 8347
|
||||
// (get) Token: 0x0600CD18 RID: 52504 RVA: 0x002EECD0 File Offset: 0x002ECED0
|
||||
[Token(Token = "0x1700209B")]
|
||||
public override bool CanRead
|
||||
{
|
||||
[Token(Token = "0x600CD18")]
|
||||
[Address(RVA = "0x403930", Offset = "0x402730", VA = "0x180403930", Slot = "7")]
|
||||
get
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x1700209C RID: 8348
|
||||
// (get) Token: 0x0600CD19 RID: 52505 RVA: 0x002EECE0 File Offset: 0x002ECEE0
|
||||
[Token(Token = "0x1700209C")]
|
||||
public override bool CanSeek
|
||||
{
|
||||
[Token(Token = "0x600CD19")]
|
||||
[Address(RVA = "0x403930", Offset = "0x402730", VA = "0x180403930", Slot = "8")]
|
||||
get
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x1700209D RID: 8349
|
||||
// (get) Token: 0x0600CD1A RID: 52506 RVA: 0x002EECF0 File Offset: 0x002ECEF0
|
||||
[Token(Token = "0x1700209D")]
|
||||
public override bool CanWrite
|
||||
{
|
||||
[Token(Token = "0x600CD1A")]
|
||||
[Address(RVA = "0x460D40", Offset = "0x45FB40", VA = "0x180460D40", Slot = "9")]
|
||||
get
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x1700209E RID: 8350
|
||||
// (get) Token: 0x0600CD1B RID: 52507 RVA: 0x002EED00 File Offset: 0x002ECF00
|
||||
[Token(Token = "0x1700209E")]
|
||||
public override long Length
|
||||
{
|
||||
[Token(Token = "0x600CD1B")]
|
||||
[Address(RVA = "0x172C300", Offset = "0x172B100", VA = "0x18172C300", Slot = "10")]
|
||||
get
|
||||
{
|
||||
int length = this.buffer.Length;
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x1700209F RID: 8351
|
||||
// (get) Token: 0x0600CD1C RID: 52508 RVA: 0x002EED20 File Offset: 0x002ECF20
|
||||
// (set) Token: 0x0600CD1D RID: 52509 RVA: 0x002EED34 File Offset: 0x002ECF34
|
||||
[Token(Token = "0x1700209F")]
|
||||
public override long Position
|
||||
{
|
||||
[Token(Token = "0x600CD1C")]
|
||||
[Address(RVA = "0x172C320", Offset = "0x172B120", VA = "0x18172C320", Slot = "11")]
|
||||
get
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CD1C)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int64 BestHTTP.Extensions.WriteOnlyBufferedStream::get_Position()
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
Block_0:
|
||||
stloc:int32(var_0_06, ldfld:int32(WriteOnlyBufferedStream::_position, ldloc:WriteOnlyBufferedStream(this)))
|
||||
}
|
||||
|
||||
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 = "0x600CD1D")]
|
||||
[Address(RVA = "0x172C330", Offset = "0x172B130", VA = "0x18172C330", Slot = "12")]
|
||||
set
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CD1D)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.Extensions.WriteOnlyBufferedStream::set_Position(System.Int64)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
Block_0:
|
||||
stloc:NotImplementedException(var_0_0A, newobj:NotImplementedException(NotImplementedException::.ctor, ldstr:string("Position set")))
|
||||
}
|
||||
|
||||
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: 0x0600CD1E RID: 52510 RVA: 0x002EED4C File Offset: 0x002ECF4C
|
||||
[Token(Token = "0x600CD1E")]
|
||||
[Address(RVA = "0x172C250", Offset = "0x172B050", VA = "0x18172C250")]
|
||||
public WriteOnlyBufferedStream(Stream stream, int bufferSize)
|
||||
{
|
||||
this.stream = stream;
|
||||
byte[] array = VariableSizedBufferPool.Get((long)bufferSize, true);
|
||||
this.buffer = array;
|
||||
this._position = (int)((ulong)0L);
|
||||
}
|
||||
|
||||
// Token: 0x0600CD1F RID: 52511 RVA: 0x002EED80 File Offset: 0x002ECF80
|
||||
[Token(Token = "0x600CD1F")]
|
||||
[Address(RVA = "0x172C000", Offset = "0x172AE00", VA = "0x18172C000", Slot = "17")]
|
||||
public override void Flush()
|
||||
{
|
||||
if (this._position > 0)
|
||||
{
|
||||
if (HTTPManager.Logger == 0)
|
||||
{
|
||||
ILogger logger = HTTPManager.Logger;
|
||||
int position = this._position;
|
||||
}
|
||||
int num = this.stream.ReadByte();
|
||||
this._position = (int)((ulong)0L);
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600CD20 RID: 52512 RVA: 0x002EEDCC File Offset: 0x002ECFCC
|
||||
[Token(Token = "0x600CD20")]
|
||||
[Address(RVA = "0x172C140", Offset = "0x172AF40", VA = "0x18172C140", Slot = "29")]
|
||||
public override void Write(byte[] bufferFrom, int offset, int count)
|
||||
{
|
||||
if (count > 0)
|
||||
{
|
||||
byte[] array = this.buffer;
|
||||
int position = this._position;
|
||||
int num = array.Length;
|
||||
num -= position;
|
||||
int num2 = Math.Min(count, num);
|
||||
int position2 = this._position;
|
||||
byte[] array2 = this.buffer;
|
||||
Array.Copy(bufferFrom, offset, array2, position2, num2);
|
||||
int num3 = this._position;
|
||||
byte[] array3 = this.buffer;
|
||||
num3 += num2;
|
||||
this._position = num3;
|
||||
if (num3 == array3.Length)
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600CD21 RID: 52513 RVA: 0x002EEE50 File Offset: 0x002ED050
|
||||
[Token(Token = "0x600CD21")]
|
||||
[Address(RVA = "0x43E630", Offset = "0x43D430", VA = "0x18043E630", Slot = "27")]
|
||||
public override int Read(byte[] buffer, int offset, int count)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
// Token: 0x0600CD22 RID: 52514 RVA: 0x002EEE60 File Offset: 0x002ED060
|
||||
[Token(Token = "0x600CD22")]
|
||||
[Address(RVA = "0x43E630", Offset = "0x43D430", VA = "0x18043E630", Slot = "25")]
|
||||
public override long Seek(long offset, SeekOrigin origin)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0600CD23 RID: 52515 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600CD23")]
|
||||
[Address(RVA = "0x402080", Offset = "0x400E80", VA = "0x180402080", Slot = "26")]
|
||||
public override void SetLength(long value)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x0600CD24 RID: 52516 RVA: 0x002EEE70 File Offset: 0x002ED070
|
||||
[Token(Token = "0x600CD24")]
|
||||
[Address(RVA = "0x172BF80", Offset = "0x172AD80", VA = "0x18172BF80", Slot = "16")]
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
this.SetLength(disposing ? 1L : 0L);
|
||||
byte[] array = this.buffer;
|
||||
if (array != 0)
|
||||
{
|
||||
VariableSizedBufferPool.Release(array);
|
||||
}
|
||||
this.buffer = (ulong)0L;
|
||||
}
|
||||
|
||||
// Token: 0x0400828A RID: 33418
|
||||
[FieldOffset(Offset = "0x28")]
|
||||
[Token(Token = "0x400828A")]
|
||||
private int _position;
|
||||
|
||||
// Token: 0x0400828B RID: 33419
|
||||
[FieldOffset(Offset = "0x30")]
|
||||
[Token(Token = "0x400828B")]
|
||||
private byte[] buffer;
|
||||
|
||||
// Token: 0x0400828C RID: 33420
|
||||
[FieldOffset(Offset = "0x38")]
|
||||
[Token(Token = "0x400828C")]
|
||||
private Stream stream;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,147 @@
|
||||
using System;
|
||||
using System.IO;
|
||||
using BestHTTP.PlatformSupport.FileSystem;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP
|
||||
{
|
||||
// Token: 0x0200188D RID: 6285
|
||||
[Token(Token = "0x200188D")]
|
||||
internal sealed class FileConnection : ConnectionBase
|
||||
{
|
||||
// Token: 0x06009315 RID: 37653 RVA: 0x001E1EFC File Offset: 0x001E00FC
|
||||
[Token(Token = "0x6009315")]
|
||||
[Address(RVA = "0x1714D10", Offset = "0x1713B10", VA = "0x181714D10")]
|
||||
public FileConnection(string serverAddress)
|
||||
: base(serverAddress)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x06009316 RID: 37654 RVA: 0x001E1F10 File Offset: 0x001E0110
|
||||
[Token(Token = "0x6009316")]
|
||||
[Address(RVA = "0x1714640", Offset = "0x1713440", VA = "0x181714640", Slot = "6")]
|
||||
internal override void Abort(HTTPConnectionStates newState)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (06009316)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.FileConnection::Abort(BestHTTP.HTTPConnectionStates)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_1C:
|
||||
stloc:NotImplementedException(var_3_21, newobj:NotImplementedException(NotImplementedException::.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: 0x06009317 RID: 37655 RVA: 0x001E1F40 File Offset: 0x001E0140
|
||||
[Token(Token = "0x6009317")]
|
||||
[Address(RVA = "0x17146D0", Offset = "0x17134D0", VA = "0x1817146D0", Slot = "7")]
|
||||
protected override void ThreadFunc(object param)
|
||||
{
|
||||
int num;
|
||||
HTTPRequest <CurrentRequest>k__BackingField5;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
IIOService ioservice = HTTPManager.IOService;
|
||||
HTTPRequest <CurrentRequest>k__BackingField = this.<CurrentRequest>k__BackingField;
|
||||
if (<CurrentRequest>k__BackingField.<IsRedirected>k__BackingField)
|
||||
{
|
||||
}
|
||||
string localPath = <CurrentRequest>k__BackingField.<Uri>k__BackingField.LocalPath;
|
||||
num += num;
|
||||
num++;
|
||||
Stream[] array = new Stream[2];
|
||||
MemoryStream memoryStream = new MemoryStream();
|
||||
if (memoryStream != 0)
|
||||
{
|
||||
}
|
||||
array[0] = memoryStream;
|
||||
if (num != 0)
|
||||
{
|
||||
}
|
||||
array[1] = num;
|
||||
StreamList streamList = new StreamList(array);
|
||||
streamList.Write("HTTP/1.1 200 Ok\r\n");
|
||||
streamList.Write("Content-Type: application/octet-stream\r\n");
|
||||
string text2;
|
||||
string text = "Content-Length: " + text2 + "\r\n";
|
||||
streamList.Write(text);
|
||||
streamList.Write("\r\n");
|
||||
HTTPResponse httpresponse;
|
||||
this.<CurrentRequest>k__BackingField.<Response>k__BackingField = httpresponse;
|
||||
this.<CurrentRequest>k__BackingField.<Response>k__BackingField.Dispose();
|
||||
this.<CurrentRequest>k__BackingField.<Response>k__BackingField = num;
|
||||
if (streamList != 0)
|
||||
{
|
||||
}
|
||||
if (num != 0)
|
||||
{
|
||||
goto IL_1DE;
|
||||
}
|
||||
if (num != -1)
|
||||
{
|
||||
}
|
||||
num++;
|
||||
if (num != 0)
|
||||
{
|
||||
}
|
||||
if (num != 0)
|
||||
{
|
||||
goto IL_1E4;
|
||||
}
|
||||
if (num != -1)
|
||||
{
|
||||
}
|
||||
num++;
|
||||
HTTPRequest <CurrentRequest>k__BackingField2 = this.<CurrentRequest>k__BackingField;
|
||||
HTTPRequest <CurrentRequest>k__BackingField3;
|
||||
if (<CurrentRequest>k__BackingField2 != 0)
|
||||
{
|
||||
int num2 = 0;
|
||||
<CurrentRequest>k__BackingField2.<Response>k__BackingField = num2;
|
||||
if (this.<State>k__BackingField == HTTPConnectionStates.AbortRequested)
|
||||
{
|
||||
<CurrentRequest>k__BackingField3 = this.<CurrentRequest>k__BackingField;
|
||||
<CurrentRequest>k__BackingField3.<State>k__BackingField = (HTTPRequestStates)((ulong)5L);
|
||||
}
|
||||
}
|
||||
HTTPRequest <CurrentRequest>k__BackingField4;
|
||||
if (<CurrentRequest>k__BackingField3 == (ulong)8L)
|
||||
{
|
||||
<CurrentRequest>k__BackingField4 = this.<CurrentRequest>k__BackingField;
|
||||
<CurrentRequest>k__BackingField4.<State>k__BackingField = (HTTPRequestStates)((ulong)7L);
|
||||
}
|
||||
this.<CurrentRequest>k__BackingField.<Exception>k__BackingField = <CurrentRequest>k__BackingField4;
|
||||
this.<CurrentRequest>k__BackingField.<State>k__BackingField = (HTTPRequestStates)((ulong)4L);
|
||||
this.<State>k__BackingField = (HTTPConnectionStates)((ulong)9L);
|
||||
<CurrentRequest>k__BackingField5 = this.<CurrentRequest>k__BackingField;
|
||||
if (<CurrentRequest>k__BackingField5.<State>k__BackingField == HTTPRequestStates.Processing)
|
||||
{
|
||||
if (<CurrentRequest>k__BackingField5.<Response>k__BackingField != (ulong)0L)
|
||||
{
|
||||
break;
|
||||
}
|
||||
<CurrentRequest>k__BackingField5.<State>k__BackingField = (HTTPRequestStates)((ulong)4L);
|
||||
}
|
||||
}
|
||||
while (num != 0);
|
||||
<CurrentRequest>k__BackingField5.<State>k__BackingField = (HTTPRequestStates)((ulong)3L);
|
||||
return;
|
||||
IL_1DE:
|
||||
throw new NullReferenceException();
|
||||
IL_1E4:
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,127 @@
|
||||
using System;
|
||||
using System.Text;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Forms
|
||||
{
|
||||
// Token: 0x02001F7F RID: 8063
|
||||
[Token(Token = "0x2001F7F")]
|
||||
public class HTTPFieldData
|
||||
{
|
||||
// Token: 0x17002073 RID: 8307
|
||||
// (get) Token: 0x0600CC2A RID: 52266 RVA: 0x002EC390 File Offset: 0x002EA590
|
||||
// (set) Token: 0x0600CC2B RID: 52267 RVA: 0x002EC3A4 File Offset: 0x002EA5A4
|
||||
[Token(Token = "0x17002073")]
|
||||
public string Name
|
||||
{
|
||||
[Token(Token = "0x600CC2A")]
|
||||
[Address(RVA = "0x3F6E20", Offset = "0x3F5C20", VA = "0x1803F6E20")]
|
||||
get;
|
||||
[Token(Token = "0x600CC2B")]
|
||||
[Address(RVA = "0x3F7200", Offset = "0x3F6000", VA = "0x1803F7200")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17002074 RID: 8308
|
||||
// (get) Token: 0x0600CC2C RID: 52268 RVA: 0x002EC3B8 File Offset: 0x002EA5B8
|
||||
// (set) Token: 0x0600CC2D RID: 52269 RVA: 0x002EC3CC File Offset: 0x002EA5CC
|
||||
[Token(Token = "0x17002074")]
|
||||
public string FileName
|
||||
{
|
||||
[Token(Token = "0x600CC2C")]
|
||||
[Address(RVA = "0x3F5F40", Offset = "0x3F4D40", VA = "0x1803F5F40")]
|
||||
get;
|
||||
[Token(Token = "0x600CC2D")]
|
||||
[Address(RVA = "0x3F7210", Offset = "0x3F6010", VA = "0x1803F7210")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17002075 RID: 8309
|
||||
// (get) Token: 0x0600CC2E RID: 52270 RVA: 0x002EC3E0 File Offset: 0x002EA5E0
|
||||
// (set) Token: 0x0600CC2F RID: 52271 RVA: 0x002EC3F4 File Offset: 0x002EA5F4
|
||||
[Token(Token = "0x17002075")]
|
||||
public string MimeType
|
||||
{
|
||||
[Token(Token = "0x600CC2E")]
|
||||
[Address(RVA = "0x3F6400", Offset = "0x3F5200", VA = "0x1803F6400")]
|
||||
get;
|
||||
[Token(Token = "0x600CC2F")]
|
||||
[Address(RVA = "0x460F90", Offset = "0x45FD90", VA = "0x180460F90")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17002076 RID: 8310
|
||||
// (get) Token: 0x0600CC30 RID: 52272 RVA: 0x002EC408 File Offset: 0x002EA608
|
||||
// (set) Token: 0x0600CC31 RID: 52273 RVA: 0x002EC41C File Offset: 0x002EA61C
|
||||
[Token(Token = "0x17002076")]
|
||||
public Encoding Encoding
|
||||
{
|
||||
[Token(Token = "0x600CC30")]
|
||||
[Address(RVA = "0x3F63E0", Offset = "0x3F51E0", VA = "0x1803F63E0")]
|
||||
get;
|
||||
[Token(Token = "0x600CC31")]
|
||||
[Address(RVA = "0x409C60", Offset = "0x408A60", VA = "0x180409C60")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17002077 RID: 8311
|
||||
// (get) Token: 0x0600CC32 RID: 52274 RVA: 0x002EC430 File Offset: 0x002EA630
|
||||
// (set) Token: 0x0600CC33 RID: 52275 RVA: 0x002EC444 File Offset: 0x002EA644
|
||||
[Token(Token = "0x17002077")]
|
||||
public string Text
|
||||
{
|
||||
[Token(Token = "0x600CC32")]
|
||||
[Address(RVA = "0x3FA180", Offset = "0x3F8F80", VA = "0x1803FA180")]
|
||||
get;
|
||||
[Token(Token = "0x600CC33")]
|
||||
[Address(RVA = "0x4437E0", Offset = "0x4425E0", VA = "0x1804437E0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17002078 RID: 8312
|
||||
// (get) Token: 0x0600CC34 RID: 52276 RVA: 0x002EC458 File Offset: 0x002EA658
|
||||
// (set) Token: 0x0600CC35 RID: 52277 RVA: 0x002EC46C File Offset: 0x002EA66C
|
||||
[Token(Token = "0x17002078")]
|
||||
public byte[] Binary
|
||||
{
|
||||
[Token(Token = "0x600CC34")]
|
||||
[Address(RVA = "0x3F63D0", Offset = "0x3F51D0", VA = "0x1803F63D0")]
|
||||
get;
|
||||
[Token(Token = "0x600CC35")]
|
||||
[Address(RVA = "0x5329E0", Offset = "0x5317E0", VA = "0x1805329E0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17002079 RID: 8313
|
||||
// (get) Token: 0x0600CC36 RID: 52278 RVA: 0x002EC480 File Offset: 0x002EA680
|
||||
[Token(Token = "0x17002079")]
|
||||
public byte[] Payload
|
||||
{
|
||||
[Token(Token = "0x600CC36")]
|
||||
[Address(RVA = "0x1717FF0", Offset = "0x1716DF0", VA = "0x181717FF0")]
|
||||
get
|
||||
{
|
||||
byte[] array = this.<Binary>k__BackingField;
|
||||
if (array == 0)
|
||||
{
|
||||
if (this.<Encoding>k__BackingField == 0)
|
||||
{
|
||||
Encoding utf = Encoding.UTF8;
|
||||
this.<Encoding>k__BackingField = utf;
|
||||
}
|
||||
string text = this.<Text>k__BackingField;
|
||||
int num;
|
||||
this.<Binary>k__BackingField = num;
|
||||
}
|
||||
return array;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600CC37 RID: 52279 RVA: 0x002EC4C4 File Offset: 0x002EA6C4
|
||||
[Token(Token = "0x600CC37")]
|
||||
[Address(RVA = "0x3F5100", Offset = "0x3F3F00", VA = "0x1803F5100")]
|
||||
public HTTPFieldData()
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,240 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Forms
|
||||
{
|
||||
// Token: 0x02001F80 RID: 8064
|
||||
[Token(Token = "0x2001F80")]
|
||||
public class HTTPFormBase
|
||||
{
|
||||
// Token: 0x1700207A RID: 8314
|
||||
// (get) Token: 0x0600CC38 RID: 52280 RVA: 0x002EC4D8 File Offset: 0x002EA6D8
|
||||
// (set) Token: 0x0600CC39 RID: 52281 RVA: 0x002EC4EC File Offset: 0x002EA6EC
|
||||
[Token(Token = "0x1700207A")]
|
||||
public List<HTTPFieldData> Fields
|
||||
{
|
||||
[Token(Token = "0x600CC38")]
|
||||
[Address(RVA = "0x3F6E20", Offset = "0x3F5C20", VA = "0x1803F6E20")]
|
||||
get;
|
||||
[Token(Token = "0x600CC39")]
|
||||
[Address(RVA = "0x3F7200", Offset = "0x3F6000", VA = "0x1803F7200")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x1700207B RID: 8315
|
||||
// (get) Token: 0x0600CC3A RID: 52282 RVA: 0x002EC500 File Offset: 0x002EA700
|
||||
[Token(Token = "0x1700207B")]
|
||||
public bool IsEmpty
|
||||
{
|
||||
[Token(Token = "0x600CC3A")]
|
||||
[Address(RVA = "0x1718440", Offset = "0x1717240", VA = "0x181718440")]
|
||||
get
|
||||
{
|
||||
bool flag;
|
||||
return this.<Fields>k__BackingField == 0 || flag;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x1700207C RID: 8316
|
||||
// (get) Token: 0x0600CC3B RID: 52283 RVA: 0x002EC51C File Offset: 0x002EA71C
|
||||
// (set) Token: 0x0600CC3C RID: 52284 RVA: 0x002EC530 File Offset: 0x002EA730
|
||||
[Token(Token = "0x1700207C")]
|
||||
public bool IsChanged
|
||||
{
|
||||
[Token(Token = "0x600CC3B")]
|
||||
[Address(RVA = "0x42C2C0", Offset = "0x42B0C0", VA = "0x18042C2C0")]
|
||||
get;
|
||||
[Token(Token = "0x600CC3C")]
|
||||
[Address(RVA = "0x43DE90", Offset = "0x43CC90", VA = "0x18043DE90")]
|
||||
protected set;
|
||||
}
|
||||
|
||||
// Token: 0x1700207D RID: 8317
|
||||
// (get) Token: 0x0600CC3D RID: 52285 RVA: 0x002EC544 File Offset: 0x002EA744
|
||||
// (set) Token: 0x0600CC3E RID: 52286 RVA: 0x002EC558 File Offset: 0x002EA758
|
||||
[Token(Token = "0x1700207D")]
|
||||
public bool HasBinary
|
||||
{
|
||||
[Token(Token = "0x600CC3D")]
|
||||
[Address(RVA = "0x50FC80", Offset = "0x50EA80", VA = "0x18050FC80")]
|
||||
get;
|
||||
[Token(Token = "0x600CC3E")]
|
||||
[Address(RVA = "0x745E50", Offset = "0x744C50", VA = "0x180745E50")]
|
||||
protected set;
|
||||
}
|
||||
|
||||
// Token: 0x1700207E RID: 8318
|
||||
// (get) Token: 0x0600CC3F RID: 52287 RVA: 0x002EC56C File Offset: 0x002EA76C
|
||||
// (set) Token: 0x0600CC40 RID: 52288 RVA: 0x002EC580 File Offset: 0x002EA780
|
||||
[Token(Token = "0x1700207E")]
|
||||
public bool HasLongValue
|
||||
{
|
||||
[Token(Token = "0x600CC3F")]
|
||||
[Address(RVA = "0x761D60", Offset = "0x760B60", VA = "0x180761D60")]
|
||||
get;
|
||||
[Token(Token = "0x600CC40")]
|
||||
[Address(RVA = "0x745E60", Offset = "0x744C60", VA = "0x180745E60")]
|
||||
protected set;
|
||||
}
|
||||
|
||||
// Token: 0x0600CC41 RID: 52289 RVA: 0x002EC594 File Offset: 0x002EA794
|
||||
[Token(Token = "0x600CC41")]
|
||||
[Address(RVA = "0x1718040", Offset = "0x1716E40", VA = "0x181718040")]
|
||||
public void AddBinaryData(string fieldName, byte[] content)
|
||||
{
|
||||
int num = 0;
|
||||
int num2 = 0;
|
||||
this.AddBinaryData(fieldName, content, num2, num);
|
||||
}
|
||||
|
||||
// Token: 0x0600CC42 RID: 52290 RVA: 0x002EC5B0 File Offset: 0x002EA7B0
|
||||
[Token(Token = "0x600CC42")]
|
||||
[Address(RVA = "0x1718060", Offset = "0x1716E60", VA = "0x181718060")]
|
||||
public void AddBinaryData(string fieldName, byte[] content, string fileName)
|
||||
{
|
||||
int num = 0;
|
||||
this.AddBinaryData(fieldName, content, fileName, num);
|
||||
}
|
||||
|
||||
// Token: 0x0600CC43 RID: 52291 RVA: 0x002EC5CC File Offset: 0x002EA7CC
|
||||
[Token(Token = "0x600CC43")]
|
||||
[Address(RVA = "0x1718080", Offset = "0x1716E80", VA = "0x181718080")]
|
||||
public void AddBinaryData(string fieldName, byte[] content, string fileName, string mimeType)
|
||||
{
|
||||
if (this.<Fields>k__BackingField == (ulong)0L)
|
||||
{
|
||||
List<HTTPFieldData> list = new List();
|
||||
this.<Fields>k__BackingField = list;
|
||||
}
|
||||
HTTPFieldData httpfieldData = new HTTPFieldData();
|
||||
httpfieldData.<Name>k__BackingField = fieldName;
|
||||
string text;
|
||||
if (fileName == 0)
|
||||
{
|
||||
text = fieldName + ".dat";
|
||||
}
|
||||
httpfieldData.<FileName>k__BackingField = text;
|
||||
httpfieldData.<MimeType>k__BackingField = 0;
|
||||
httpfieldData.<Binary>k__BackingField = content;
|
||||
this.<Fields>k__BackingField.Add(httpfieldData);
|
||||
this.<IsChanged>k__BackingField = true;
|
||||
}
|
||||
|
||||
// Token: 0x0600CC44 RID: 52292 RVA: 0x002EC63C File Offset: 0x002EA83C
|
||||
[Token(Token = "0x600CC44")]
|
||||
[Address(RVA = "0x17182C0", Offset = "0x17170C0", VA = "0x1817182C0")]
|
||||
public void AddField(string fieldName, string value)
|
||||
{
|
||||
Encoding utf = Encoding.UTF8;
|
||||
this.AddField(fieldName, value, utf);
|
||||
}
|
||||
|
||||
// Token: 0x0600CC45 RID: 52293 RVA: 0x002EC65C File Offset: 0x002EA85C
|
||||
[Token(Token = "0x600CC45")]
|
||||
[Address(RVA = "0x1718190", Offset = "0x1716F90", VA = "0x181718190")]
|
||||
public void AddField(string fieldName, string value, Encoding e)
|
||||
{
|
||||
if (this.<Fields>k__BackingField == (ulong)0L)
|
||||
{
|
||||
List<HTTPFieldData> list = new List();
|
||||
this.<Fields>k__BackingField = list;
|
||||
}
|
||||
int num = 0;
|
||||
HTTPFieldData httpfieldData;
|
||||
httpfieldData.FieldGetter(num, value, e);
|
||||
httpfieldData.<Name>k__BackingField = fieldName;
|
||||
int num2 = 0;
|
||||
httpfieldData.<FileName>k__BackingField = num2;
|
||||
if (e != 0)
|
||||
{
|
||||
string headerName = e.HeaderName;
|
||||
string text = "text/plain; charset=" + headerName;
|
||||
httpfieldData.<MimeType>k__BackingField = text;
|
||||
}
|
||||
httpfieldData.<Text>k__BackingField = value;
|
||||
httpfieldData.<Encoding>k__BackingField = e;
|
||||
this.<Fields>k__BackingField.Add(httpfieldData);
|
||||
this.<IsChanged>k__BackingField = true;
|
||||
bool flag = value.m_stringLength != 256;
|
||||
this.<HasLongValue>k__BackingField = flag;
|
||||
}
|
||||
|
||||
// Token: 0x0600CC46 RID: 52294 RVA: 0x002EC700 File Offset: 0x002EA900
|
||||
[Token(Token = "0x600CC46")]
|
||||
[Address(RVA = "0x1718310", Offset = "0x1717110", VA = "0x181718310", Slot = "4")]
|
||||
public virtual void CopyFrom(HTTPFormBase fields)
|
||||
{
|
||||
List<HTTPFieldData> list = new List(fields.<Fields>k__BackingField);
|
||||
this.<Fields>k__BackingField = list;
|
||||
bool flag = fields.<HasBinary>k__BackingField;
|
||||
this.<HasBinary>k__BackingField = flag;
|
||||
bool flag2 = fields.<HasLongValue>k__BackingField;
|
||||
this.<HasLongValue>k__BackingField = flag2;
|
||||
}
|
||||
|
||||
// Token: 0x0600CC47 RID: 52295 RVA: 0x002EC744 File Offset: 0x002EA944
|
||||
[Token(Token = "0x600CC47")]
|
||||
[Address(RVA = "0x17183F0", Offset = "0x17171F0", VA = "0x1817183F0", Slot = "5")]
|
||||
public virtual void PrepareRequest(HTTPRequest request)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CC47)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.Forms.HTTPFormBase::PrepareRequest(BestHTTP.HTTPRequest)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
Block_0:
|
||||
stloc:NotImplementedException(var_0_05, newobj:NotImplementedException(NotImplementedException::.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: 0x0600CC48 RID: 52296 RVA: 0x002EC758 File Offset: 0x002EA958
|
||||
[Token(Token = "0x600CC48")]
|
||||
[Address(RVA = "0x17183A0", Offset = "0x17171A0", VA = "0x1817183A0", Slot = "6")]
|
||||
public virtual byte[] GetData()
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CC48)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Byte[] BestHTTP.Forms.HTTPFormBase::GetData()
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
Block_0:
|
||||
stloc:NotImplementedException(var_0_05, newobj:NotImplementedException(NotImplementedException::.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: 0x0600CC49 RID: 52297 RVA: 0x002EC76C File Offset: 0x002EA96C
|
||||
[Token(Token = "0x600CC49")]
|
||||
[Address(RVA = "0x3F5100", Offset = "0x3F3F00", VA = "0x1803F5100")]
|
||||
public HTTPFormBase()
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x04008230 RID: 33328
|
||||
[Token(Token = "0x4008230")]
|
||||
private const int LongLength = 256;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Forms
|
||||
{
|
||||
// Token: 0x02001F81 RID: 8065
|
||||
[Token(Token = "0x2001F81")]
|
||||
public enum HTTPFormUsage
|
||||
{
|
||||
// Token: 0x04008236 RID: 33334
|
||||
[Token(Token = "0x4008236")]
|
||||
Automatic,
|
||||
// Token: 0x04008237 RID: 33335
|
||||
[Token(Token = "0x4008237")]
|
||||
UrlEncoded,
|
||||
// Token: 0x04008238 RID: 33336
|
||||
[Token(Token = "0x4008238")]
|
||||
Multipart,
|
||||
// Token: 0x04008239 RID: 33337
|
||||
[Token(Token = "0x4008239")]
|
||||
RawJSon
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,49 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Forms
|
||||
{
|
||||
// Token: 0x02001F82 RID: 8066
|
||||
[Token(Token = "0x2001F82")]
|
||||
public sealed class HTTPMultiPartForm : HTTPFormBase
|
||||
{
|
||||
// Token: 0x0600CC4A RID: 52298 RVA: 0x002EC780 File Offset: 0x002EA980
|
||||
[Token(Token = "0x600CC4A")]
|
||||
[Address(RVA = "0x171D330", Offset = "0x171C130", VA = "0x18171D330")]
|
||||
public HTTPMultiPartForm()
|
||||
{
|
||||
this.Finalize();
|
||||
string text2;
|
||||
string text = "BestHTTP_HTTPMultiPartForm_" + text2;
|
||||
this.Boundary = text;
|
||||
}
|
||||
|
||||
// Token: 0x0600CC4B RID: 52299 RVA: 0x002EC7AC File Offset: 0x002EA9AC
|
||||
[Token(Token = "0x600CC4B")]
|
||||
[Address(RVA = "0x171D2C0", Offset = "0x171C0C0", VA = "0x18171D2C0", Slot = "5")]
|
||||
public override void PrepareRequest(HTTPRequest request)
|
||||
{
|
||||
string boundary = this.Boundary;
|
||||
string text = "multipart/form-data; boundary=\"" + boundary + "\"";
|
||||
request.SetHeader("Content-Type", text);
|
||||
}
|
||||
|
||||
// Token: 0x0600CC4C RID: 52300 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600CC4C")]
|
||||
[Address(RVA = "0x171CEB0", Offset = "0x171BCB0", VA = "0x18171CEB0", Slot = "6")]
|
||||
public override byte[] GetData()
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x0400823A RID: 33338
|
||||
[FieldOffset(Offset = "0x20")]
|
||||
[Token(Token = "0x400823A")]
|
||||
private string Boundary;
|
||||
|
||||
// Token: 0x0400823B RID: 33339
|
||||
[FieldOffset(Offset = "0x28")]
|
||||
[Token(Token = "0x400823B")]
|
||||
private byte[] CachedData;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,62 @@
|
||||
using System;
|
||||
using System.Text;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Forms
|
||||
{
|
||||
// Token: 0x02001F83 RID: 8067
|
||||
[Token(Token = "0x2001F83")]
|
||||
public sealed class HTTPUrlEncodedForm : HTTPFormBase
|
||||
{
|
||||
// Token: 0x0600CC4D RID: 52301 RVA: 0x002EC7E4 File Offset: 0x002EA9E4
|
||||
[Token(Token = "0x600CC4D")]
|
||||
[Address(RVA = "0x1727F30", Offset = "0x1726D30", VA = "0x181727F30", Slot = "5")]
|
||||
public override void PrepareRequest(HTTPRequest request)
|
||||
{
|
||||
request.SetHeader("Content-Type", "application/x-www-form-urlencoded");
|
||||
}
|
||||
|
||||
// Token: 0x0600CC4E RID: 52302 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600CC4E")]
|
||||
[Address(RVA = "0x1727D30", Offset = "0x1726B30", VA = "0x181727D30", Slot = "6")]
|
||||
public override byte[] GetData()
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x0600CC4F RID: 52303 RVA: 0x002EC808 File Offset: 0x002EAA08
|
||||
[Token(Token = "0x600CC4F")]
|
||||
[Address(RVA = "0x1727BD0", Offset = "0x17269D0", VA = "0x181727BD0")]
|
||||
public static string EscapeString(string originalString)
|
||||
{
|
||||
int stringLength = originalString.m_stringLength;
|
||||
int num = 0;
|
||||
uint num2;
|
||||
string text = originalString.Substring(num, (int)num2);
|
||||
string text2 = Uri.EscapeDataString(originalString.Substring(num));
|
||||
StringBuilder stringBuilder2;
|
||||
StringBuilder stringBuilder = stringBuilder2.Append(text2);
|
||||
num++;
|
||||
num += 256;
|
||||
int hashCode = stringBuilder2.GetHashCode();
|
||||
string text3 = Uri.EscapeDataString(originalString);
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CC50 RID: 52304 RVA: 0x002EC864 File Offset: 0x002EAA64
|
||||
[Token(Token = "0x600CC50")]
|
||||
[Address(RVA = "0x3F5100", Offset = "0x3F3F00", VA = "0x1803F5100")]
|
||||
public HTTPUrlEncodedForm()
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0400823C RID: 33340
|
||||
[Token(Token = "0x400823C")]
|
||||
private const int EscapeTreshold = 256;
|
||||
|
||||
// Token: 0x0400823D RID: 33341
|
||||
[FieldOffset(Offset = "0x20")]
|
||||
[Token(Token = "0x400823D")]
|
||||
private byte[] CachedData;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,63 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using BestHTTP.JSON;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Forms
|
||||
{
|
||||
// Token: 0x02001F84 RID: 8068
|
||||
[Token(Token = "0x2001F84")]
|
||||
public sealed class RawJsonForm : HTTPFormBase
|
||||
{
|
||||
// Token: 0x0600CC51 RID: 52305 RVA: 0x002EC878 File Offset: 0x002EAA78
|
||||
[Token(Token = "0x600CC51")]
|
||||
[Address(RVA = "0x1728DF0", Offset = "0x1727BF0", VA = "0x181728DF0", Slot = "5")]
|
||||
public override void PrepareRequest(HTTPRequest request)
|
||||
{
|
||||
request.SetHeader("Content-Type", "application/json");
|
||||
}
|
||||
|
||||
// Token: 0x0600CC52 RID: 52306 RVA: 0x002EC89C File Offset: 0x002EAA9C
|
||||
[Token(Token = "0x600CC52")]
|
||||
[Address(RVA = "0x1728C00", Offset = "0x1727A00", VA = "0x181728C00", Slot = "6")]
|
||||
public override byte[] GetData()
|
||||
{
|
||||
byte[] cachedData = this.CachedData;
|
||||
if (cachedData != 0)
|
||||
{
|
||||
}
|
||||
List<HTTPFieldData> <Fields>k__BackingField = this.<Fields>k__BackingField;
|
||||
Func<HTTPFieldData, string> <>9__2_ = RawJsonForm.<>c.<>9__2_0;
|
||||
if (<>9__2_ == 0)
|
||||
{
|
||||
RawJsonForm.<>c.<>9__2_0 = (HTTPFieldData x) => x.<Name>k__BackingField;
|
||||
}
|
||||
Func<HTTPFieldData, string> func;
|
||||
if (RawJsonForm.<>c.<>9__2_1 == 0)
|
||||
{
|
||||
func = (HTTPFieldData x) => x.<Text>k__BackingField;
|
||||
RawJsonForm.<>c.<>9__2_1 = func;
|
||||
}
|
||||
string text = Json.Encode(Enumerable.ToDictionary<HTTPFieldData, string, string>(<Fields>k__BackingField, <>9__2_, func));
|
||||
this.<IsChanged>k__BackingField = false;
|
||||
Encoding utf = Encoding.UTF8;
|
||||
int num;
|
||||
this.CachedData = num;
|
||||
return cachedData;
|
||||
}
|
||||
|
||||
// Token: 0x0600CC53 RID: 52307 RVA: 0x002EC928 File Offset: 0x002EAB28
|
||||
[Token(Token = "0x600CC53")]
|
||||
[Address(RVA = "0x3F5100", Offset = "0x3F3F00", VA = "0x1803F5100")]
|
||||
public RawJsonForm()
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0400823E RID: 33342
|
||||
[FieldOffset(Offset = "0x20")]
|
||||
[Token(Token = "0x400823E")]
|
||||
private byte[] CachedData;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,66 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Cpp2IlInjected;
|
||||
using UnityEngine;
|
||||
|
||||
namespace BestHTTP.Forms
|
||||
{
|
||||
// Token: 0x02001F86 RID: 8070
|
||||
[Token(Token = "0x2001F86")]
|
||||
public sealed class UnityForm : HTTPFormBase
|
||||
{
|
||||
// Token: 0x1700207F RID: 8319
|
||||
// (get) Token: 0x0600CC58 RID: 52312 RVA: 0x002EC9A0 File Offset: 0x002EABA0
|
||||
// (set) Token: 0x0600CC59 RID: 52313 RVA: 0x002EC9B4 File Offset: 0x002EABB4
|
||||
[Token(Token = "0x1700207F")]
|
||||
public WWWForm Form
|
||||
{
|
||||
[Token(Token = "0x600CC58")]
|
||||
[Address(RVA = "0x3F6400", Offset = "0x3F5200", VA = "0x1803F6400")]
|
||||
get;
|
||||
[Token(Token = "0x600CC59")]
|
||||
[Address(RVA = "0x460F90", Offset = "0x45FD90", VA = "0x180460F90")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x0600CC5A RID: 52314 RVA: 0x002EC9C8 File Offset: 0x002EABC8
|
||||
[Token(Token = "0x600CC5A")]
|
||||
[Address(RVA = "0x3F5100", Offset = "0x3F3F00", VA = "0x1803F5100")]
|
||||
public UnityForm()
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0600CC5B RID: 52315 RVA: 0x002EC9DC File Offset: 0x002EABDC
|
||||
[Token(Token = "0x600CC5B")]
|
||||
[Address(RVA = "0x4A24B0", Offset = "0x4A12B0", VA = "0x1804A24B0")]
|
||||
public UnityForm(WWWForm form)
|
||||
{
|
||||
this.Form = form;
|
||||
}
|
||||
|
||||
// Token: 0x0600CC5C RID: 52316 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600CC5C")]
|
||||
[Address(RVA = "0x1729C40", Offset = "0x1728A40", VA = "0x181729C40", Slot = "4")]
|
||||
public override void CopyFrom(HTTPFormBase fields)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x0600CC5D RID: 52317 RVA: 0x002EC9F8 File Offset: 0x002EABF8
|
||||
[Token(Token = "0x600CC5D")]
|
||||
[Address(RVA = "0x1729DC0", Offset = "0x1728BC0", VA = "0x181729DC0", Slot = "5")]
|
||||
public override void PrepareRequest(HTTPRequest request)
|
||||
{
|
||||
Dictionary<string, string> headers = this.<Form>k__BackingField.headers;
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CC5E RID: 52318 RVA: 0x002ECA48 File Offset: 0x002EAC48
|
||||
[Token(Token = "0x600CC5E")]
|
||||
[Address(RVA = "0x1729DA0", Offset = "0x1728BA0", VA = "0x181729DA0", Slot = "6")]
|
||||
public override byte[] GetData()
|
||||
{
|
||||
return this.<Form>k__BackingField.data;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,400 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Runtime.InteropServices;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Futures
|
||||
{
|
||||
// Token: 0x02001F8C RID: 8076
|
||||
[Token(Token = "0x2001F8C")]
|
||||
public class Future<T> : IFuture<T>
|
||||
{
|
||||
// Token: 0x17002083 RID: 8323
|
||||
// (get) Token: 0x0600CC72 RID: 52338 RVA: 0x002ECC3C File Offset: 0x002EAE3C
|
||||
[Token(Token = "0x17002083")]
|
||||
public FutureState state
|
||||
{
|
||||
[Token(Token = "0x600CC72")]
|
||||
[Address(RVA = "0x1D99560", Offset = "0x1D98360", VA = "0x181D99560", Slot = "4")]
|
||||
get
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CC72)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling BestHTTP.Futures.FutureState BestHTTP.Futures.Future`1::get_state()
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
Block_0:
|
||||
stloc:int32(var_0_06, ldfld:FutureState[exp:int32](Future`1::_state, ldloc:Future`1(this)))
|
||||
}
|
||||
|
||||
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: 0x17002084 RID: 8324
|
||||
// (get) Token: 0x0600CC73 RID: 52339 RVA: 0x002ECC50 File Offset: 0x002EAE50
|
||||
[Token(Token = "0x17002084")]
|
||||
public T value
|
||||
{
|
||||
[Token(Token = "0x600CC73")]
|
||||
[Address(RVA = "0x2A35D20", Offset = "0x2A34B20", VA = "0x182A35D20", Slot = "5")]
|
||||
get
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CC73)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling T BestHTTP.Futures.Future`1::get_value()
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_19:
|
||||
stloc:InvalidOperationException(var_0_23, newobj:InvalidOperationException(InvalidOperationException::.ctor, ldstr:string("value is not available unless state is Success or Processing.")))
|
||||
}
|
||||
|
||||
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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: 0x17002085 RID: 8325
|
||||
// (get) Token: 0x0600CC74 RID: 52340 RVA: 0x002ECC80 File Offset: 0x002EAE80
|
||||
[Token(Token = "0x17002085")]
|
||||
public Exception error
|
||||
{
|
||||
[Token(Token = "0x600CC74")]
|
||||
[Address(RVA = "0x2A35CA0", Offset = "0x2A34AA0", VA = "0x182A35CA0", Slot = "6")]
|
||||
get
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CC74)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Exception BestHTTP.Futures.Future`1::get_error()
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_09:
|
||||
stloc:InvalidOperationException(var_0_13, newobj:InvalidOperationException(InvalidOperationException::.ctor, ldstr:string("error is not available unless state is Error.")))
|
||||
}
|
||||
|
||||
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: 0x0600CC75 RID: 52341 RVA: 0x002ECCA0 File Offset: 0x002EAEA0
|
||||
[Token(Token = "0x600CC75")]
|
||||
[Address(RVA = "0x2A35980", Offset = "0x2A34780", VA = "0x182A35980")]
|
||||
public Future()
|
||||
{
|
||||
List<FutureErrorCallback> list = new List();
|
||||
base..ctor();
|
||||
this._state = (FutureState)((ulong)0L);
|
||||
}
|
||||
|
||||
// Token: 0x0600CC76 RID: 52342 RVA: 0x002ECCC4 File Offset: 0x002EAEC4
|
||||
[Token(Token = "0x600CC76")]
|
||||
[Address(RVA = "0x2A35310", Offset = "0x2A34110", VA = "0x182A35310", Slot = "7")]
|
||||
public IFuture<T> OnItem(FutureValueCallback<T> callback)
|
||||
{
|
||||
bool flag;
|
||||
if (this._state >= FutureState.Success || !flag)
|
||||
{
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CC77 RID: 52343 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600CC77")]
|
||||
[Address(RVA = "0x2A353A0", Offset = "0x2A341A0", VA = "0x182A353A0", Slot = "8")]
|
||||
public IFuture<T> OnSuccess(FutureValueCallback<T> callback)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x0600CC78 RID: 52344 RVA: 0x002ECCE4 File Offset: 0x002EAEE4
|
||||
[Token(Token = "0x600CC78")]
|
||||
[Address(RVA = "0x2A350E0", Offset = "0x2A33EE0", VA = "0x182A350E0", Slot = "9")]
|
||||
public IFuture<T> OnError(FutureErrorCallback callback)
|
||||
{
|
||||
bool flag;
|
||||
if (this._state == FutureState.Error || (this._state != FutureState.Success && !flag))
|
||||
{
|
||||
Exception error = this.error;
|
||||
callback(error);
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CC79 RID: 52345 RVA: 0x002ECD1C File Offset: 0x002EAF1C
|
||||
[Token(Token = "0x600CC79")]
|
||||
[Address(RVA = "0x2A34F60", Offset = "0x2A33D60", VA = "0x182A34F60", Slot = "10")]
|
||||
public IFuture<T> OnComplete(FutureCallback<T> callback)
|
||||
{
|
||||
bool flag;
|
||||
if (this._state == FutureState.Success || this._state == FutureState.Error || !flag)
|
||||
{
|
||||
callback.Invoke(this);
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CC7A RID: 52346 RVA: 0x002ECD4C File Offset: 0x002EAF4C
|
||||
[Token(Token = "0x600CC7A")]
|
||||
[Address(RVA = "0x2A35560", Offset = "0x2A34360", VA = "0x182A35560")]
|
||||
public IFuture<T> Process(Func<T> func)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CC7A)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling BestHTTP.Futures.IFuture`1<T> BestHTTP.Futures.Future`1::Process(System.Func`1<T>)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_19:
|
||||
stloc:InvalidOperationException(var_3_23, newobj:InvalidOperationException(InvalidOperationException::.ctor, ldstr:string("Cannot process a future that isn't in the Pending state.")))
|
||||
}
|
||||
|
||||
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: 0x0600CC7B RID: 52347 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600CC7B")]
|
||||
[Address(RVA = "0x2A35720", Offset = "0x2A34520", VA = "0x182A35720")]
|
||||
private void ThreadFunc(object param)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x0600CC7C RID: 52348 RVA: 0x002ECD7C File Offset: 0x002EAF7C
|
||||
[Token(Token = "0x600CC7C")]
|
||||
[Address(RVA = "0x2A33D80", Offset = "0x2A32B80", VA = "0x182A33D80")]
|
||||
public void Assign(T value)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CC7C)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.Futures.Future`1::Assign(T)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_1A:
|
||||
stloc:InvalidOperationException(var_1_24, newobj:InvalidOperationException(InvalidOperationException::.ctor, ldstr:string("Cannot assign a value to a future that isn't in the Pending or Processing state.")))
|
||||
}
|
||||
|
||||
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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: 0x0600CC7D RID: 52349 RVA: 0x002ECDB0 File Offset: 0x002EAFB0
|
||||
[Token(Token = "0x600CC7D")]
|
||||
[Address(RVA = "0x2A33F00", Offset = "0x2A32D00", VA = "0x182A33F00")]
|
||||
public void BeginProcess([Optional] T initialItem)
|
||||
{
|
||||
this._state = (FutureState)((ulong)1L);
|
||||
this._value = initialItem;
|
||||
}
|
||||
|
||||
// Token: 0x0600CC7E RID: 52350 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600CC7E")]
|
||||
[Address(RVA = "0x2A33B60", Offset = "0x2A32960", VA = "0x182A33B60")]
|
||||
public void AssignItem(T value)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x0600CC7F RID: 52351 RVA: 0x002ECDD0 File Offset: 0x002EAFD0
|
||||
[Token(Token = "0x600CC7F")]
|
||||
[Address(RVA = "0x2A34240", Offset = "0x2A33040", VA = "0x182A34240")]
|
||||
public void Fail(Exception error)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CC7F)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.Futures.Future`1::Fail(System.Exception)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_1A:
|
||||
stloc:InvalidOperationException(var_1_24, newobj:InvalidOperationException(InvalidOperationException::.ctor, ldstr:string("Cannot fail future that isn't in the Pending or Processing state.")))
|
||||
}
|
||||
|
||||
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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: 0x0600CC80 RID: 52352 RVA: 0x002ECE04 File Offset: 0x002EB004
|
||||
[Token(Token = "0x600CC80")]
|
||||
[Address(RVA = "0x2A338A0", Offset = "0x2A326A0", VA = "0x182A338A0")]
|
||||
private void AssignImpl(T value)
|
||||
{
|
||||
this._value = value;
|
||||
this._state = (FutureState)((ulong)2L);
|
||||
FutureState state = ((IFuture)this).state;
|
||||
}
|
||||
|
||||
// Token: 0x0600CC81 RID: 52353 RVA: 0x002ECE28 File Offset: 0x002EB028
|
||||
[Token(Token = "0x600CC81")]
|
||||
[Address(RVA = "0x2A340E0", Offset = "0x2A32EE0", VA = "0x182A340E0")]
|
||||
private void FailImpl(Exception error)
|
||||
{
|
||||
int num = 0;
|
||||
this._value = num;
|
||||
this._state = (FutureState)((ulong)3L);
|
||||
FutureState state = ((IFuture)this).state;
|
||||
}
|
||||
|
||||
// Token: 0x0600CC82 RID: 52354 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600CC82")]
|
||||
[Address(RVA = "0x2A34D40", Offset = "0x2A33B40", VA = "0x182A34D40")]
|
||||
private void FlushSuccessCallbacks()
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x0600CC83 RID: 52355 RVA: 0x002ECE50 File Offset: 0x002EB050
|
||||
[Token(Token = "0x600CC83")]
|
||||
[Address(RVA = "0x2A34930", Offset = "0x2A33730", VA = "0x182A34930")]
|
||||
private void FlushErrorCallbacks()
|
||||
{
|
||||
int num;
|
||||
int num2;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
bool flag;
|
||||
if (flag)
|
||||
{
|
||||
Exception error = this.error;
|
||||
}
|
||||
num2 = 0;
|
||||
num2 += num2;
|
||||
num2++;
|
||||
}
|
||||
while (num != 0);
|
||||
num2 += num2;
|
||||
num2 += 19;
|
||||
num2 += typeof(List<FutureErrorCallback>.Enumerator).TypeHandle;
|
||||
}
|
||||
|
||||
// Token: 0x0600CC84 RID: 52356 RVA: 0x002ECEA4 File Offset: 0x002EB0A4
|
||||
[Token(Token = "0x600CC84")]
|
||||
[Address(RVA = "0x2A34300", Offset = "0x2A33100", VA = "0x182A34300")]
|
||||
private void FlushComplationCallbacks()
|
||||
{
|
||||
int num;
|
||||
int num2;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
bool flag;
|
||||
if (flag)
|
||||
{
|
||||
}
|
||||
num2 = 0;
|
||||
num2 += num2;
|
||||
num2++;
|
||||
}
|
||||
while (num != 0);
|
||||
num2 += num2;
|
||||
num2 += 19;
|
||||
num2 += typeof(List<FutureCallback<T>>.Enumerator).TypeHandle;
|
||||
this.ClearCallbacks();
|
||||
}
|
||||
|
||||
// Token: 0x0600CC85 RID: 52357 RVA: 0x002ECEE8 File Offset: 0x002EB0E8
|
||||
[Token(Token = "0x600CC85")]
|
||||
[Address(RVA = "0x2A34020", Offset = "0x2A32E20", VA = "0x182A34020")]
|
||||
private void ClearCallbacks()
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x04008248 RID: 33352
|
||||
[global::Cpp2IlInjected.FieldOffset(Offset = "0x0")]
|
||||
[Token(Token = "0x4008248")]
|
||||
private FutureState _state;
|
||||
|
||||
// Token: 0x04008249 RID: 33353
|
||||
[global::Cpp2IlInjected.FieldOffset(Offset = "0x0")]
|
||||
[Token(Token = "0x4008249")]
|
||||
private T _value;
|
||||
|
||||
// Token: 0x0400824A RID: 33354
|
||||
[global::Cpp2IlInjected.FieldOffset(Offset = "0x0")]
|
||||
[Token(Token = "0x400824A")]
|
||||
private Exception _error;
|
||||
|
||||
// Token: 0x0400824B RID: 33355
|
||||
[global::Cpp2IlInjected.FieldOffset(Offset = "0x0")]
|
||||
[Token(Token = "0x400824B")]
|
||||
private Func<T> _processFunc;
|
||||
|
||||
// Token: 0x0400824C RID: 33356
|
||||
[global::Cpp2IlInjected.FieldOffset(Offset = "0x0")]
|
||||
[Token(Token = "0x400824C")]
|
||||
private readonly List<FutureValueCallback<T>> _itemCallbacks;
|
||||
|
||||
// Token: 0x0400824D RID: 33357
|
||||
[global::Cpp2IlInjected.FieldOffset(Offset = "0x0")]
|
||||
[Token(Token = "0x400824D")]
|
||||
private readonly List<FutureValueCallback<T>> _successCallbacks;
|
||||
|
||||
// Token: 0x0400824E RID: 33358
|
||||
[global::Cpp2IlInjected.FieldOffset(Offset = "0x0")]
|
||||
[Token(Token = "0x400824E")]
|
||||
private readonly List<FutureErrorCallback> _errorCallbacks;
|
||||
|
||||
// Token: 0x0400824F RID: 33359
|
||||
[global::Cpp2IlInjected.FieldOffset(Offset = "0x0")]
|
||||
[Token(Token = "0x400824F")]
|
||||
private readonly List<FutureCallback<T>> _complationCallbacks;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Futures
|
||||
{
|
||||
// Token: 0x02001F89 RID: 8073
|
||||
[Token(Token = "0x2001F89")]
|
||||
public sealed class FutureCallback<T> : MulticastDelegate
|
||||
{
|
||||
// Token: 0x0600CC66 RID: 52326 RVA: 0x002ECA68 File Offset: 0x002EAC68
|
||||
[Token(Token = "0x600CC66")]
|
||||
[Address(RVA = "0x448ED0", Offset = "0x447CD0", VA = "0x180448ED0")]
|
||||
public FutureCallback(object @object, IntPtr method)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0600CC67 RID: 52327 RVA: 0x002ECA78 File Offset: 0x002EAC78
|
||||
[Token(Token = "0x600CC67")]
|
||||
[Address(RVA = "0x14771B0", Offset = "0x1475FB0", VA = "0x1814771B0", Slot = "13")]
|
||||
public void Invoke(IFuture<T> future)
|
||||
{
|
||||
uint num;
|
||||
if (num != (uint)0)
|
||||
{
|
||||
throw new ExecutionEngineException();
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600CC68 RID: 52328 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600CC68")]
|
||||
[Address(RVA = "0x457150", Offset = "0x455F50", VA = "0x180457150", Slot = "14")]
|
||||
public IAsyncResult BeginInvoke(IFuture<T> future, AsyncCallback callback, object @object)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x0600CC69 RID: 52329 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600CC69")]
|
||||
[Address(RVA = "0x448B70", Offset = "0x447970", VA = "0x180448B70", Slot = "15")]
|
||||
public void EndInvoke(IAsyncResult result)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,50 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Futures
|
||||
{
|
||||
// Token: 0x02001F8B RID: 8075
|
||||
[Token(Token = "0x2001F8B")]
|
||||
public sealed class FutureErrorCallback : MulticastDelegate
|
||||
{
|
||||
// Token: 0x0600CC6E RID: 52334 RVA: 0x002ECB6C File Offset: 0x002EAD6C
|
||||
[Token(Token = "0x600CC6E")]
|
||||
[Address(RVA = "0x448ED0", Offset = "0x447CD0", VA = "0x180448ED0")]
|
||||
public FutureErrorCallback(object @object, IntPtr method)
|
||||
{
|
||||
this.method = method;
|
||||
this.m_target = @object;
|
||||
}
|
||||
|
||||
// Token: 0x0600CC6F RID: 52335 RVA: 0x002ECB88 File Offset: 0x002EAD88
|
||||
[Token(Token = "0x600CC6F")]
|
||||
[Address(RVA = "0x747410", Offset = "0x746210", VA = "0x180747410", Slot = "13")]
|
||||
public void Invoke(Exception error)
|
||||
{
|
||||
if (this.delegates != 0)
|
||||
{
|
||||
}
|
||||
uint num;
|
||||
if (num != (uint)0)
|
||||
{
|
||||
throw new ExecutionEngineException();
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600CC70 RID: 52336 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600CC70")]
|
||||
[Address(RVA = "0x457150", Offset = "0x455F50", VA = "0x180457150", Slot = "14")]
|
||||
public IAsyncResult BeginInvoke(Exception error, AsyncCallback callback, object @object)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x0600CC71 RID: 52337 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600CC71")]
|
||||
[Address(RVA = "0x448B70", Offset = "0x447970", VA = "0x180448B70", Slot = "15")]
|
||||
public void EndInvoke(IAsyncResult result)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Futures
|
||||
{
|
||||
// Token: 0x02001F87 RID: 8071
|
||||
[Token(Token = "0x2001F87")]
|
||||
public enum FutureState
|
||||
{
|
||||
// Token: 0x04008244 RID: 33348
|
||||
[Token(Token = "0x4008244")]
|
||||
Pending,
|
||||
// Token: 0x04008245 RID: 33349
|
||||
[Token(Token = "0x4008245")]
|
||||
Processing,
|
||||
// Token: 0x04008246 RID: 33350
|
||||
[Token(Token = "0x4008246")]
|
||||
Success,
|
||||
// Token: 0x04008247 RID: 33351
|
||||
[Token(Token = "0x4008247")]
|
||||
Error
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,44 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Futures
|
||||
{
|
||||
// Token: 0x02001F8A RID: 8074
|
||||
[Token(Token = "0x2001F8A")]
|
||||
public sealed class FutureValueCallback<T> : MulticastDelegate
|
||||
{
|
||||
// Token: 0x0600CC6A RID: 52330 RVA: 0x002ECAE0 File Offset: 0x002EACE0
|
||||
[Token(Token = "0x600CC6A")]
|
||||
[Address(RVA = "0x448ED0", Offset = "0x447CD0", VA = "0x180448ED0")]
|
||||
public FutureValueCallback(object @object, IntPtr method)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0600CC6B RID: 52331 RVA: 0x002ECAF0 File Offset: 0x002EACF0
|
||||
[Token(Token = "0x600CC6B")]
|
||||
[Address(RVA = "0x76A610", Offset = "0x769410", VA = "0x18076A610", Slot = "13")]
|
||||
public void Invoke(T value)
|
||||
{
|
||||
uint num;
|
||||
if (num != (uint)0)
|
||||
{
|
||||
throw new ExecutionEngineException();
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600CC6C RID: 52332 RVA: 0x002ECB5C File Offset: 0x002EAD5C
|
||||
[Token(Token = "0x600CC6C")]
|
||||
[Address(RVA = "0x2A33820", Offset = "0x2A32620", VA = "0x182A33820", Slot = "14")]
|
||||
public IAsyncResult BeginInvoke(T value, AsyncCallback callback, object @object)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0600CC6D RID: 52333 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600CC6D")]
|
||||
[Address(RVA = "0x448B70", Offset = "0x447970", VA = "0x180448B70", Slot = "15")]
|
||||
public void EndInvoke(IAsyncResult result)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,60 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Futures
|
||||
{
|
||||
// Token: 0x02001F88 RID: 8072
|
||||
[Token(Token = "0x2001F88")]
|
||||
public interface IFuture<T>
|
||||
{
|
||||
// Token: 0x17002080 RID: 8320
|
||||
// (get) Token: 0x0600CC5F RID: 52319
|
||||
[Token(Token = "0x17002080")]
|
||||
FutureState state
|
||||
{
|
||||
[Token(Token = "0x600CC5F")]
|
||||
[Address(Slot = "0")]
|
||||
get;
|
||||
}
|
||||
|
||||
// Token: 0x17002081 RID: 8321
|
||||
// (get) Token: 0x0600CC60 RID: 52320
|
||||
[Token(Token = "0x17002081")]
|
||||
T value
|
||||
{
|
||||
[Token(Token = "0x600CC60")]
|
||||
[Address(Slot = "1")]
|
||||
get;
|
||||
}
|
||||
|
||||
// Token: 0x17002082 RID: 8322
|
||||
// (get) Token: 0x0600CC61 RID: 52321
|
||||
[Token(Token = "0x17002082")]
|
||||
Exception error
|
||||
{
|
||||
[Token(Token = "0x600CC61")]
|
||||
[Address(Slot = "2")]
|
||||
get;
|
||||
}
|
||||
|
||||
// Token: 0x0600CC62 RID: 52322
|
||||
[Token(Token = "0x600CC62")]
|
||||
[Address(Slot = "3")]
|
||||
IFuture<T> OnItem(FutureValueCallback<T> callback);
|
||||
|
||||
// Token: 0x0600CC63 RID: 52323
|
||||
[Token(Token = "0x600CC63")]
|
||||
[Address(Slot = "4")]
|
||||
IFuture<T> OnSuccess(FutureValueCallback<T> callback);
|
||||
|
||||
// Token: 0x0600CC64 RID: 52324
|
||||
[Token(Token = "0x600CC64")]
|
||||
[Address(Slot = "5")]
|
||||
IFuture<T> OnError(FutureErrorCallback callback);
|
||||
|
||||
// Token: 0x0600CC65 RID: 52325
|
||||
[Token(Token = "0x600CC65")]
|
||||
[Address(Slot = "6")]
|
||||
IFuture<T> OnComplete(FutureCallback<T> callback);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,882 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Net.Security;
|
||||
using System.Security.Cryptography.X509Certificates;
|
||||
using System.Threading;
|
||||
using BestHTTP.Authentication;
|
||||
using BestHTTP.Caching;
|
||||
using BestHTTP.Cookies;
|
||||
using BestHTTP.Extensions;
|
||||
using BestHTTP.Logger;
|
||||
using BestHTTP.PlatformSupport.TcpClient.General;
|
||||
using BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls;
|
||||
using BestHTTP.SecureProtocol.Org.BouncyCastle.Security;
|
||||
using Cpp2IlInjected;
|
||||
using Org.BouncyCastle.Crypto.Tls;
|
||||
|
||||
namespace BestHTTP
|
||||
{
|
||||
// Token: 0x02001890 RID: 6288
|
||||
[Token(Token = "0x2001890")]
|
||||
internal sealed class HTTPConnection : ConnectionBase
|
||||
{
|
||||
// Token: 0x17001741 RID: 5953
|
||||
// (get) Token: 0x0600931E RID: 37662 RVA: 0x001E21C0 File Offset: 0x001E03C0
|
||||
[Token(Token = "0x17001741")]
|
||||
public override bool IsRemovable
|
||||
{
|
||||
[Token(Token = "0x600931E")]
|
||||
[Address(RVA = "0x1717F00", Offset = "0x1716D00", VA = "0x181717F00", Slot = "5")]
|
||||
get
|
||||
{
|
||||
if (!base.IsRemovable)
|
||||
{
|
||||
if (base.IsFree && this.KeepAlive != (ulong)0L)
|
||||
{
|
||||
DateTime utcNow = DateTime.UtcNow;
|
||||
DateTime lastProcessTime = this.LastProcessTime;
|
||||
TimeSpan timeSpan = utcNow - lastProcessTime;
|
||||
TimeSpan <TimeOut>k__BackingField = this.KeepAlive.<TimeOut>k__BackingField;
|
||||
if (!(timeSpan >= <TimeOut>k__BackingField))
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600931F RID: 37663 RVA: 0x001E2224 File Offset: 0x001E0424
|
||||
[Token(Token = "0x600931F")]
|
||||
[Address(RVA = "0x1714D10", Offset = "0x1713B10", VA = "0x181714D10")]
|
||||
internal HTTPConnection(string serverAddress)
|
||||
: base(serverAddress)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x06009320 RID: 37664 RVA: 0x001E2238 File Offset: 0x001E0438
|
||||
[Token(Token = "0x6009320")]
|
||||
[Address(RVA = "0x17166A0", Offset = "0x17154A0", VA = "0x1817166A0", Slot = "7")]
|
||||
protected override void ThreadFunc(object param)
|
||||
{
|
||||
for (;;)
|
||||
{
|
||||
int num = 0;
|
||||
if (!this.TryLoadAllFromCache())
|
||||
{
|
||||
TcpClient client = this.Client;
|
||||
if (client != 0 && !client.IsConnected())
|
||||
{
|
||||
this.Close();
|
||||
}
|
||||
if (num == 1)
|
||||
{
|
||||
this.Close();
|
||||
Thread.Sleep(100);
|
||||
}
|
||||
HTTPRequest <CurrentRequest>k__BackingField = this.<CurrentRequest>k__BackingField;
|
||||
if (<CurrentRequest>k__BackingField.<IsRedirected>k__BackingField)
|
||||
{
|
||||
}
|
||||
Uri <Uri>k__BackingField = <CurrentRequest>k__BackingField.<Uri>k__BackingField;
|
||||
this.<LastProcessedUri>k__BackingField = <Uri>k__BackingField;
|
||||
this.Connect();
|
||||
uint num2;
|
||||
num2 += (uint)1;
|
||||
if (num != 0)
|
||||
{
|
||||
goto IL_721;
|
||||
}
|
||||
if (num2 != (uint)(-1))
|
||||
{
|
||||
}
|
||||
HTTPRequest <CurrentRequest>k__BackingField2 = this.<CurrentRequest>k__BackingField;
|
||||
if (!<CurrentRequest>k__BackingField2.disableCache)
|
||||
{
|
||||
HTTPCacheService.SetHeaders(<CurrentRequest>k__BackingField2);
|
||||
}
|
||||
TcpClient client2 = this.Client;
|
||||
bool <TryToMinimizeTCPLatency>k__BackingField = this.<CurrentRequest>k__BackingField.<TryToMinimizeTCPLatency>k__BackingField;
|
||||
client2.NoDelay = <TryToMinimizeTCPLatency>k__BackingField;
|
||||
HTTPRequest <CurrentRequest>k__BackingField3 = this.<CurrentRequest>k__BackingField;
|
||||
Stream stream = this.Stream;
|
||||
<CurrentRequest>k__BackingField3.SendOutTo(stream);
|
||||
num2 += (uint)1;
|
||||
if (num != 0)
|
||||
{
|
||||
goto IL_727;
|
||||
}
|
||||
if (num2 != (uint)(-1))
|
||||
{
|
||||
}
|
||||
bool flag = this.Receive();
|
||||
num2 += (uint)1;
|
||||
if (num != 0)
|
||||
{
|
||||
goto IL_727;
|
||||
}
|
||||
if (num2 != (uint)(-1))
|
||||
{
|
||||
}
|
||||
HTTPConnectionStates <State>k__BackingField = this.<State>k__BackingField;
|
||||
if (<State>k__BackingField == HTTPConnectionStates.TimedOut || <State>k__BackingField == HTTPConnectionStates.AbortRequested)
|
||||
{
|
||||
goto IL_88D;
|
||||
}
|
||||
if (flag || this.<CurrentRequest>k__BackingField.<DisableRetry>k__BackingField == flag)
|
||||
{
|
||||
}
|
||||
HTTPRequest <CurrentRequest>k__BackingField4 = this.<CurrentRequest>k__BackingField;
|
||||
if (<CurrentRequest>k__BackingField4.<Response>k__BackingField != (ulong)0L)
|
||||
{
|
||||
int num3;
|
||||
if (<CurrentRequest>k__BackingField4.<IsCookiesEnabled>k__BackingField)
|
||||
{
|
||||
CookieJar.Set(this.<CurrentRequest>k__BackingField.<Response>k__BackingField);
|
||||
CookieJar.Persist();
|
||||
num2 += (uint)1;
|
||||
num3 = 0;
|
||||
if (num != 0)
|
||||
{
|
||||
goto IL_733;
|
||||
}
|
||||
if (num2 != (uint)(-1))
|
||||
{
|
||||
}
|
||||
}
|
||||
HTTPRequest <CurrentRequest>k__BackingField5 = this.<CurrentRequest>k__BackingField;
|
||||
int <StatusCode>k__BackingField = <CurrentRequest>k__BackingField5.<Response>k__BackingField.<StatusCode>k__BackingField;
|
||||
if (<StatusCode>k__BackingField <= 308)
|
||||
{
|
||||
goto IL_319;
|
||||
}
|
||||
if (<StatusCode>k__BackingField == 401)
|
||||
{
|
||||
string text = DigestStore.FindBest(<CurrentRequest>k__BackingField5.<Response>k__BackingField.GetHeaderValues("www-authenticate"));
|
||||
if (!string.IsNullOrEmpty(text))
|
||||
{
|
||||
HTTPRequest <CurrentRequest>k__BackingField6 = this.<CurrentRequest>k__BackingField;
|
||||
if (<CurrentRequest>k__BackingField6.<IsRedirected>k__BackingField)
|
||||
{
|
||||
}
|
||||
Digest orCreate = DigestStore.GetOrCreate(<CurrentRequest>k__BackingField6.<Uri>k__BackingField);
|
||||
orCreate.ParseChallange(text);
|
||||
HTTPRequest <CurrentRequest>k__BackingField7 = this.<CurrentRequest>k__BackingField;
|
||||
if (<CurrentRequest>k__BackingField7.<Credentials>k__BackingField != (ulong)0L)
|
||||
{
|
||||
if (<CurrentRequest>k__BackingField7.<IsRedirected>k__BackingField)
|
||||
{
|
||||
}
|
||||
Uri <Uri>k__BackingField2 = <CurrentRequest>k__BackingField7.<Uri>k__BackingField;
|
||||
if (!orCreate.IsUriProtected(<Uri>k__BackingField2) || !this.<CurrentRequest>k__BackingField.HasHeader("Authorization") || orCreate.<Stale>k__BackingField)
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
HTTPRequest <CurrentRequest>k__BackingField8 = this.<CurrentRequest>k__BackingField;
|
||||
if (<CurrentRequest>k__BackingField8.useStreaming || <CurrentRequest>k__BackingField8.disableCache || <CurrentRequest>k__BackingField8.<Response>k__BackingField == (ulong)0L || !HTTPCacheService.IsSupported)
|
||||
{
|
||||
goto IL_4C9;
|
||||
}
|
||||
if (!this.<CurrentRequest>k__BackingField.<IsRedirected>k__BackingField)
|
||||
{
|
||||
goto IL_45E;
|
||||
}
|
||||
}
|
||||
while ("Authorization" != (ulong)407L)
|
||||
{
|
||||
}
|
||||
List<string> list;
|
||||
string text2 = DigestStore.FindBest(list);
|
||||
if (string.IsNullOrEmpty(text2))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
Digest orCreate2 = DigestStore.GetOrCreate(this.<CurrentRequest>k__BackingField.<Proxy>k__BackingField.<Address>k__BackingField);
|
||||
orCreate2.ParseChallange(text2);
|
||||
Proxy <Proxy>k__BackingField = this.<CurrentRequest>k__BackingField.<Proxy>k__BackingField;
|
||||
while (<Proxy>k__BackingField.<Credentials>k__BackingField == (ulong)0L)
|
||||
{
|
||||
}
|
||||
Uri <Address>k__BackingField = <Proxy>k__BackingField.<Address>k__BackingField;
|
||||
if (!orCreate2.IsUriProtected(<Address>k__BackingField))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
HTTPRequest <CurrentRequest>k__BackingField9 = this.<CurrentRequest>k__BackingField;
|
||||
bool flag2 = <CurrentRequest>k__BackingField9.HasHeader("Proxy-Authorization");
|
||||
if (flag2)
|
||||
{
|
||||
while (!orCreate2.<Stale>k__BackingField)
|
||||
{
|
||||
}
|
||||
goto IL_319;
|
||||
}
|
||||
goto IL_319;
|
||||
IL_4C9:
|
||||
HTTPResponse <Response>k__BackingField = this.<CurrentRequest>k__BackingField.<Response>k__BackingField;
|
||||
if (<Response>k__BackingField != 0 && <Response>k__BackingField.<IsClosedManually>k__BackingField)
|
||||
{
|
||||
goto IL_51C;
|
||||
}
|
||||
if (<Response>k__BackingField == 0)
|
||||
{
|
||||
}
|
||||
uint num4;
|
||||
if (num4 != (uint)0)
|
||||
{
|
||||
goto IL_522;
|
||||
}
|
||||
List<string> list2;
|
||||
if (num4 != (uint)0 && list2 != 0)
|
||||
{
|
||||
KeepAliveHeader keepAliveHeader;
|
||||
if (this.KeepAlive == 0)
|
||||
{
|
||||
keepAliveHeader = new KeepAliveHeader();
|
||||
this.KeepAlive = keepAliveHeader;
|
||||
}
|
||||
keepAliveHeader.Parse(list2);
|
||||
goto IL_51C;
|
||||
}
|
||||
goto IL_51C;
|
||||
IL_45E:
|
||||
HTTPRequest <CurrentRequest>k__BackingField10;
|
||||
Uri <Uri>k__BackingField3 = <CurrentRequest>k__BackingField10.<Uri>k__BackingField;
|
||||
HTTPMethods <MethodType>k__BackingField = <CurrentRequest>k__BackingField10.<MethodType>k__BackingField;
|
||||
HTTPResponse <Response>k__BackingField2 = <CurrentRequest>k__BackingField10.<Response>k__BackingField;
|
||||
if (HTTPCacheService.IsCacheble(<Uri>k__BackingField3, <MethodType>k__BackingField, <Response>k__BackingField2))
|
||||
{
|
||||
HTTPRequest <CurrentRequest>k__BackingField11 = this.<CurrentRequest>k__BackingField;
|
||||
if (<CurrentRequest>k__BackingField11.<IsRedirected>k__BackingField)
|
||||
{
|
||||
}
|
||||
Uri <Uri>k__BackingField4 = <CurrentRequest>k__BackingField11.<Uri>k__BackingField;
|
||||
HTTPMethods <MethodType>k__BackingField2 = <CurrentRequest>k__BackingField11.<MethodType>k__BackingField;
|
||||
HTTPResponse <Response>k__BackingField3 = <CurrentRequest>k__BackingField11.<Response>k__BackingField;
|
||||
HTTPCacheFileInfo httpcacheFileInfo = HTTPCacheService.Store(<Uri>k__BackingField4, <MethodType>k__BackingField2, <Response>k__BackingField3);
|
||||
HTTPCacheService.SaveLibrary();
|
||||
goto IL_4C9;
|
||||
}
|
||||
goto IL_4C9;
|
||||
IL_319:
|
||||
if (flag2 > true)
|
||||
{
|
||||
while (flag2 > true)
|
||||
{
|
||||
}
|
||||
}
|
||||
int i = <CurrentRequest>k__BackingField9.<RedirectCount>k__BackingField;
|
||||
while (i >= <CurrentRequest>k__BackingField9.<MaxRedirects>k__BackingField)
|
||||
{
|
||||
}
|
||||
i++;
|
||||
<CurrentRequest>k__BackingField9.<RedirectCount>k__BackingField = i;
|
||||
string firstHeaderValue = this.<CurrentRequest>k__BackingField.<Response>k__BackingField.GetFirstHeaderValue("location");
|
||||
if (!string.IsNullOrEmpty(firstHeaderValue))
|
||||
{
|
||||
Uri redirectUri = this.GetRedirectUri(firstHeaderValue);
|
||||
if (HTTPManager.Logger == 0)
|
||||
{
|
||||
ILogger logger = HTTPManager.Logger;
|
||||
HTTPRequest <CurrentRequest>k__BackingField12 = this.<CurrentRequest>k__BackingField;
|
||||
if (<CurrentRequest>k__BackingField12.<IsRedirected>k__BackingField)
|
||||
{
|
||||
}
|
||||
int hashCode = <CurrentRequest>k__BackingField12.<Uri>k__BackingField.GetHashCode();
|
||||
string text3 = string.Format("{0} - Redirected to Location: '{1}' redirectUri: '{1}'", hashCode, firstHeaderValue, redirectUri);
|
||||
}
|
||||
HTTPRequest <CurrentRequest>k__BackingField13 = this.<CurrentRequest>k__BackingField;
|
||||
OnBeforeRedirectionDelegate onBeforeRedirection = <CurrentRequest>k__BackingField13.onBeforeRedirection;
|
||||
if (onBeforeRedirection != 0)
|
||||
{
|
||||
HTTPResponse <Response>k__BackingField4 = <CurrentRequest>k__BackingField13.<Response>k__BackingField;
|
||||
if (!onBeforeRedirection(<CurrentRequest>k__BackingField13, <Response>k__BackingField4, redirectUri))
|
||||
{
|
||||
ILogger logger2 = HTTPManager.Logger;
|
||||
}
|
||||
}
|
||||
Dictionary<string, List<string>> <Headers>k__BackingField = this.<CurrentRequest>k__BackingField.<Headers>k__BackingField;
|
||||
if (<Headers>k__BackingField != 0)
|
||||
{
|
||||
bool flag3 = <Headers>k__BackingField.Remove("Host");
|
||||
}
|
||||
HTTPRequest <CurrentRequest>k__BackingField14 = this.<CurrentRequest>k__BackingField;
|
||||
if (<CurrentRequest>k__BackingField14.<IsRedirected>k__BackingField)
|
||||
{
|
||||
}
|
||||
int hashCode2 = <CurrentRequest>k__BackingField14.<Uri>k__BackingField.GetHashCode();
|
||||
this.<CurrentRequest>k__BackingField.<RedirectUri>k__BackingField = redirectUri;
|
||||
this.<CurrentRequest>k__BackingField.<Response>k__BackingField = num3;
|
||||
<CurrentRequest>k__BackingField10 = this.<CurrentRequest>k__BackingField;
|
||||
<CurrentRequest>k__BackingField10.<IsRedirected>k__BackingField = true;
|
||||
goto IL_45E;
|
||||
}
|
||||
goto IL_79F;
|
||||
}
|
||||
IL_51C:
|
||||
uint num5;
|
||||
while (num5 != (uint)0)
|
||||
{
|
||||
}
|
||||
IL_522:
|
||||
this.Close();
|
||||
this.Close();
|
||||
HTTPConnectionStates <State>k__BackingField2 = this.<State>k__BackingField;
|
||||
if (<State>k__BackingField2 == HTTPConnectionStates.TimedOut || <State>k__BackingField2 == HTTPConnectionStates.AbortRequested || this.<CurrentRequest>k__BackingField.<DisableRetry>k__BackingField)
|
||||
{
|
||||
goto IL_8AB;
|
||||
}
|
||||
}
|
||||
HTTPRequest <CurrentRequest>k__BackingField15 = this.<CurrentRequest>k__BackingField;
|
||||
int num6 = 0;
|
||||
<CurrentRequest>k__BackingField15.<Response>k__BackingField = num6;
|
||||
this.<CurrentRequest>k__BackingField.<Exception>k__BackingField = <CurrentRequest>k__BackingField15;
|
||||
this.<CurrentRequest>k__BackingField.<State>k__BackingField = (HTTPRequestStates)((ulong)6L);
|
||||
this.Close();
|
||||
HTTPRequest <CurrentRequest>k__BackingField16 = this.<CurrentRequest>k__BackingField;
|
||||
if (<CurrentRequest>k__BackingField16 == 0)
|
||||
{
|
||||
goto IL_609;
|
||||
}
|
||||
Uri <Uri>k__BackingField5;
|
||||
if (<CurrentRequest>k__BackingField16.useStreaming)
|
||||
{
|
||||
if (<CurrentRequest>k__BackingField16.<IsRedirected>k__BackingField)
|
||||
{
|
||||
}
|
||||
<Uri>k__BackingField5 = <CurrentRequest>k__BackingField16.<Uri>k__BackingField;
|
||||
ulong num7;
|
||||
bool flag4 = HTTPCacheService.DeleteEntity(<Uri>k__BackingField5, num7 != 0UL);
|
||||
}
|
||||
HTTPRequest <CurrentRequest>k__BackingField17 = this.<CurrentRequest>k__BackingField;
|
||||
int num8 = 0;
|
||||
<CurrentRequest>k__BackingField17.<Response>k__BackingField = num8;
|
||||
HTTPConnectionStates <State>k__BackingField3 = this.<State>k__BackingField;
|
||||
if (<Uri>k__BackingField5 != 0)
|
||||
{
|
||||
if (<Uri>k__BackingField5 == 0)
|
||||
{
|
||||
goto IL_612;
|
||||
}
|
||||
if (<Uri>k__BackingField5 != (ulong)1L)
|
||||
{
|
||||
this.<CurrentRequest>k__BackingField.<Exception>k__BackingField = <State>k__BackingField3;
|
||||
this.<CurrentRequest>k__BackingField.<State>k__BackingField = (HTTPRequestStates)((ulong)4L);
|
||||
goto IL_609;
|
||||
}
|
||||
}
|
||||
IL_620:
|
||||
uint num9;
|
||||
this.<CurrentRequest>k__BackingField.<State>k__BackingField = (HTTPRequestStates)num9;
|
||||
object locker = HTTPManager.Locker;
|
||||
int num10;
|
||||
Monitor.Enter(locker, num10);
|
||||
HTTPRequest <CurrentRequest>k__BackingField18 = this.<CurrentRequest>k__BackingField;
|
||||
HTTPResponse <Response>k__BackingField5;
|
||||
if (<CurrentRequest>k__BackingField18 != 0)
|
||||
{
|
||||
<Response>k__BackingField5 = <CurrentRequest>k__BackingField18.<Response>k__BackingField;
|
||||
if (<Response>k__BackingField5 != 0 && <Response>k__BackingField5.<IsUpgraded>k__BackingField)
|
||||
{
|
||||
this.<State>k__BackingField = (HTTPConnectionStates)((ulong)3L);
|
||||
}
|
||||
}
|
||||
uint num11;
|
||||
<CurrentRequest>k__BackingField18.<MethodType>k__BackingField = (HTTPMethods)num11;
|
||||
byte[] <RawData>k__BackingField = <CurrentRequest>k__BackingField18.<RawData>k__BackingField;
|
||||
Exception ex;
|
||||
if ("{il2cpp array field local192->}" == (ulong)2L && <Response>k__BackingField5 == (ulong)4294967291L && "{il2cpp array field local192->}" == (ulong)0L)
|
||||
{
|
||||
HTTPRequestStates httprequestStates;
|
||||
int hashCode3 = httprequestStates.GetHashCode();
|
||||
HTTPRequestStates httprequestStates2 = httprequestStates;
|
||||
ex = new Exception(string.Format("Remote server closed the connection before sending response header! Previous request state: {0}. Connection state: {1}", hashCode3, httprequestStates2));
|
||||
<RawData>k__BackingField[12] = ex;
|
||||
this.<CurrentRequest>k__BackingField.<State>k__BackingField = (HTTPRequestStates)((ulong)4L);
|
||||
}
|
||||
if (this.<CurrentRequest>k__BackingField.<State>k__BackingField == HTTPRequestStates.ConnectionTimedOut)
|
||||
{
|
||||
this.<State>k__BackingField = (HTTPConnectionStates)num11;
|
||||
}
|
||||
DateTime utcNow = DateTime.UtcNow;
|
||||
this.LastProcessTime = utcNow;
|
||||
base.RecycleNow();
|
||||
Monitor.Exit(locker);
|
||||
if (ex == 0 && num11 == (uint)0)
|
||||
{
|
||||
break;
|
||||
}
|
||||
continue;
|
||||
IL_612:
|
||||
this.<CurrentRequest>k__BackingField.<State>k__BackingField = (HTTPRequestStates)((ulong)7L);
|
||||
goto IL_620;
|
||||
IL_609:
|
||||
num10 = 0;
|
||||
this.Close();
|
||||
goto IL_612;
|
||||
}
|
||||
return;
|
||||
IL_721:
|
||||
throw new NullReferenceException();
|
||||
IL_727:
|
||||
throw new NullReferenceException();
|
||||
IL_733:
|
||||
throw new NullReferenceException();
|
||||
IL_79F:
|
||||
throw new NullReferenceException();
|
||||
IL_88D:
|
||||
Exception ex2 = new Exception("AbortRequested");
|
||||
throw new NullReferenceException();
|
||||
IL_8AB:
|
||||
Exception ex3 = new Exception("AbortRequested");
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x06009321 RID: 37665 RVA: 0x001E2B4C File Offset: 0x001E0D4C
|
||||
[Token(Token = "0x6009321")]
|
||||
[Address(RVA = "0x1714EB0", Offset = "0x1713CB0", VA = "0x181714EB0")]
|
||||
private void Connect()
|
||||
{
|
||||
int num;
|
||||
TcpClient client5;
|
||||
TlsClientProtocol tlsClientProtocol;
|
||||
List<string> list;
|
||||
Uri <Uri>k__BackingField2;
|
||||
for (;;)
|
||||
{
|
||||
HTTPRequest <CurrentRequest>k__BackingField = this.<CurrentRequest>k__BackingField;
|
||||
num = 0;
|
||||
if (<CurrentRequest>k__BackingField.<Proxy>k__BackingField != 0)
|
||||
{
|
||||
}
|
||||
if ((<CurrentRequest>k__BackingField.<IsRedirected>k__BackingField ? 1 : 0) != num)
|
||||
{
|
||||
}
|
||||
Uri <Uri>k__BackingField = <CurrentRequest>k__BackingField.<Uri>k__BackingField;
|
||||
TcpClient tcpClient;
|
||||
if (this.Client == 0)
|
||||
{
|
||||
tcpClient = new TcpClient();
|
||||
this.Client = tcpClient;
|
||||
}
|
||||
if (tcpClient.Connected)
|
||||
{
|
||||
if (HTTPManager.Logger > (ulong)1L)
|
||||
{
|
||||
goto IL_239;
|
||||
}
|
||||
ILogger logger = HTTPManager.Logger;
|
||||
string host = <Uri>k__BackingField.Host;
|
||||
int port = <Uri>k__BackingField.Port;
|
||||
}
|
||||
HTTPRequest <CurrentRequest>k__BackingField2 = this.<CurrentRequest>k__BackingField;
|
||||
TcpClient client = this.Client;
|
||||
TimeSpan <ConnectTimeout>k__BackingField = <CurrentRequest>k__BackingField2.<ConnectTimeout>k__BackingField;
|
||||
client.<ConnectTimeout>k__BackingField = <ConnectTimeout>k__BackingField;
|
||||
if (HTTPManager.Logger == 0)
|
||||
{
|
||||
ILogger logger2 = HTTPManager.Logger;
|
||||
HTTPRequest <CurrentRequest>k__BackingField3 = this.<CurrentRequest>k__BackingField;
|
||||
if ((<CurrentRequest>k__BackingField3.<IsRedirected>k__BackingField ? 1 : 0) == num)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
int hashCode = <CurrentRequest>k__BackingField3.<RedirectUri>k__BackingField.m_String.GetHashCode();
|
||||
string host2 = <Uri>k__BackingField.Host;
|
||||
int port2 = <Uri>k__BackingField.Port;
|
||||
string text2;
|
||||
string text = string.Format("'{0}' - Connecting to {1}:{2}", hashCode, host2, text2);
|
||||
}
|
||||
TcpClient client2 = this.Client;
|
||||
int sendBufferSize = HTTPManager.SendBufferSize;
|
||||
client2.SendBufferSize = sendBufferSize;
|
||||
TcpClient client3 = this.Client;
|
||||
int receiveBufferSize = HTTPManager.ReceiveBufferSize;
|
||||
client3.ReceiveBufferSize = receiveBufferSize;
|
||||
if (HTTPManager.Logger == 0)
|
||||
{
|
||||
ILogger logger3 = HTTPManager.Logger;
|
||||
object[] array = new object[4];
|
||||
HTTPRequest <CurrentRequest>k__BackingField4 = this.<CurrentRequest>k__BackingField;
|
||||
if ((<CurrentRequest>k__BackingField4.<IsRedirected>k__BackingField ? 1 : 0) == num)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
int hashCode2 = <CurrentRequest>k__BackingField4.<RedirectUri>k__BackingField.m_String.GetHashCode();
|
||||
if (hashCode2 != 0)
|
||||
{
|
||||
}
|
||||
array[0] = hashCode2;
|
||||
int sendBufferSize2 = this.Client.SendBufferSize;
|
||||
string text3;
|
||||
if (text3 != 0)
|
||||
{
|
||||
}
|
||||
array[1] = text3;
|
||||
int receiveBufferSize2 = this.Client.ReceiveBufferSize;
|
||||
string text4;
|
||||
if (text4 != 0)
|
||||
{
|
||||
}
|
||||
array[2] = text4;
|
||||
bool is_blocking = this.Client.client.is_blocking;
|
||||
string text5;
|
||||
if (text5 != 0)
|
||||
{
|
||||
}
|
||||
array[3] = text5;
|
||||
string text6 = string.Format("'{0}' - Buffer sizes - Send: {1} Receive: {2} Blocking: {3}", array);
|
||||
}
|
||||
TcpClient client4 = this.Client;
|
||||
string host3 = <Uri>k__BackingField.Host;
|
||||
int port3 = <Uri>k__BackingField.Port;
|
||||
client4.Connect(host3, port3);
|
||||
if (HTTPManager.Logger <= (ulong)1L)
|
||||
{
|
||||
ILogger logger4 = HTTPManager.Logger;
|
||||
string host4 = <Uri>k__BackingField.Host;
|
||||
int port4 = <Uri>k__BackingField.Port;
|
||||
string text8;
|
||||
string text7 = "Connected to " + host4 + ":" + text8;
|
||||
}
|
||||
IL_239:
|
||||
DateTime utcNow = DateTime.UtcNow;
|
||||
this.<StartTime>k__BackingField = utcNow;
|
||||
if (this.Stream != num)
|
||||
{
|
||||
return;
|
||||
}
|
||||
HTTPRequest <CurrentRequest>k__BackingField5 = this.<CurrentRequest>k__BackingField;
|
||||
if ((<CurrentRequest>k__BackingField5.<IsRedirected>k__BackingField ? 1 : 0) != num)
|
||||
{
|
||||
}
|
||||
bool flag = HTTPProtocolFactory.IsSecureProtocol(<CurrentRequest>k__BackingField5.<Uri>k__BackingField);
|
||||
Stream stream = this.Client.GetStream();
|
||||
HTTPRequest <CurrentRequest>k__BackingField6 = this.<CurrentRequest>k__BackingField;
|
||||
this.Stream = stream;
|
||||
Proxy <Proxy>k__BackingField = <CurrentRequest>k__BackingField6.<Proxy>k__BackingField;
|
||||
if (<Proxy>k__BackingField != 0)
|
||||
{
|
||||
string text9 = <Proxy>k__BackingField.ToString();
|
||||
}
|
||||
if (!flag)
|
||||
{
|
||||
return;
|
||||
}
|
||||
HTTPRequest <CurrentRequest>k__BackingField7 = this.<CurrentRequest>k__BackingField;
|
||||
client5 = this.Client;
|
||||
if ((<CurrentRequest>k__BackingField7.<UseAlternateSSL>k__BackingField ? 1 : 0) == num)
|
||||
{
|
||||
break;
|
||||
}
|
||||
SecureRandom secureRandom = new SecureRandom();
|
||||
Stream stream2;
|
||||
tlsClientProtocol = new TlsClientProtocol(stream2, secureRandom);
|
||||
HTTPRequest <CurrentRequest>k__BackingField8 = this.<CurrentRequest>k__BackingField;
|
||||
if (<CurrentRequest>k__BackingField8.<CustomTLSServerNameList>k__BackingField != 0)
|
||||
{
|
||||
}
|
||||
if ((<CurrentRequest>k__BackingField8.<IsRedirected>k__BackingField ? 1 : 0) != num)
|
||||
{
|
||||
}
|
||||
if (!<CurrentRequest>k__BackingField8.<Uri>k__BackingField.IsHostIsAnIPAddress())
|
||||
{
|
||||
list = new List(1);
|
||||
HTTPRequest <CurrentRequest>k__BackingField9 = this.<CurrentRequest>k__BackingField;
|
||||
if ((<CurrentRequest>k__BackingField9.<IsRedirected>k__BackingField ? 1 : 0) != num)
|
||||
{
|
||||
}
|
||||
string host5 = <CurrentRequest>k__BackingField9.<Uri>k__BackingField.Host;
|
||||
list.Add(host5);
|
||||
}
|
||||
HTTPRequest <CurrentRequest>k__BackingField10 = this.<CurrentRequest>k__BackingField;
|
||||
if ((<CurrentRequest>k__BackingField10.<IsRedirected>k__BackingField ? 1 : 0) != num)
|
||||
{
|
||||
}
|
||||
<Uri>k__BackingField2 = <CurrentRequest>k__BackingField10.<Uri>k__BackingField;
|
||||
if (<CurrentRequest>k__BackingField10.<CustomCertificateVerifyer>k__BackingField == 0)
|
||||
{
|
||||
goto Block_14;
|
||||
}
|
||||
}
|
||||
Stream stream3 = client5.GetStream();
|
||||
RemoteCertificateValidationCallback remoteCertificateValidationCallback = delegate(object sender, X509Certificate cert, X509Chain chain, SslPolicyErrors errors)
|
||||
{
|
||||
HTTPRequest <CurrentRequest>k__BackingField12 = this.<CurrentRequest>k__BackingField;
|
||||
Func<HTTPRequest, X509Certificate, X509Chain, bool> customCertificationValidator = <CurrentRequest>k__BackingField12.CustomCertificationValidator;
|
||||
return customCertificationValidator == 0 || customCertificationValidator(<CurrentRequest>k__BackingField12, cert, chain) != null;
|
||||
};
|
||||
int num2;
|
||||
SslStream sslStream = new SslStream(stream3, num2 != 0, remoteCertificateValidationCallback);
|
||||
num2 = 0;
|
||||
if (sslStream == 0)
|
||||
{
|
||||
HTTPRequest <CurrentRequest>k__BackingField11 = this.<CurrentRequest>k__BackingField;
|
||||
if ((<CurrentRequest>k__BackingField11.<IsRedirected>k__BackingField ? 1 : 0) != num)
|
||||
{
|
||||
}
|
||||
string host6 = <CurrentRequest>k__BackingField11.<Uri>k__BackingField.Host;
|
||||
bool isAuthenticated = sslStream.IsAuthenticated;
|
||||
}
|
||||
this.Stream = sslStream;
|
||||
return;
|
||||
Block_14:
|
||||
AlwaysValidVerifyer alwaysValidVerifyer = new AlwaysValidVerifyer();
|
||||
IClientCredentialsProvider <CustomClientCredentialsProvider>k__BackingField = this.<CurrentRequest>k__BackingField.<CustomClientCredentialsProvider>k__BackingField;
|
||||
LegacyTlsClient legacyTlsClient = new LegacyTlsClient(<Uri>k__BackingField2, alwaysValidVerifyer, <CustomClientCredentialsProvider>k__BackingField, list);
|
||||
tlsClientProtocol.RefuseRenegotiation();
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x06009322 RID: 37666 RVA: 0x001E2F4C File Offset: 0x001E114C
|
||||
[Token(Token = "0x6009322")]
|
||||
[Address(RVA = "0x1716020", Offset = "0x1714E20", VA = "0x181716020")]
|
||||
private bool Receive()
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (06009322)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean BestHTTP.HTTPConnection::Receive()
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_22E:
|
||||
stloc:Exception(var_36_238, newobj:Exception(Exception::.ctor, ldstr:string("Malformed URI in GetProtocolFromUri")))
|
||||
}
|
||||
|
||||
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: 0x06009323 RID: 37667 RVA: 0x001E3194 File Offset: 0x001E1394
|
||||
[Token(Token = "0x6009323")]
|
||||
[Address(RVA = "0x1715B10", Offset = "0x1714910", VA = "0x181715B10")]
|
||||
private bool LoadFromCache(Uri uri)
|
||||
{
|
||||
int num;
|
||||
List<string> list;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
if (HTTPManager.Logger == 0)
|
||||
{
|
||||
ILogger logger = HTTPManager.Logger;
|
||||
HTTPRequest <CurrentRequest>k__BackingField = this.<CurrentRequest>k__BackingField;
|
||||
if ((<CurrentRequest>k__BackingField.<IsRedirected>k__BackingField ? 1 : 0) != num)
|
||||
{
|
||||
}
|
||||
int hashCode = <CurrentRequest>k__BackingField.<Uri>k__BackingField.GetHashCode();
|
||||
int hashCode2 = uri.GetHashCode();
|
||||
string text = string.Format("{0} - LoadFromCache for Uri: {1}", hashCode, hashCode2);
|
||||
}
|
||||
HTTPCacheFileInfo entity = HTTPCacheService.GetEntity(uri);
|
||||
if (entity == 0)
|
||||
{
|
||||
goto IL_11F;
|
||||
}
|
||||
HTTPRequest <CurrentRequest>k__BackingField2 = this.<CurrentRequest>k__BackingField;
|
||||
HTTPResponse httpresponse = entity.ReadResponseTo(<CurrentRequest>k__BackingField2);
|
||||
HTTPRequest <CurrentRequest>k__BackingField3 = this.<CurrentRequest>k__BackingField;
|
||||
if (httpresponse != 0)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
<CurrentRequest>k__BackingField3.<Response>k__BackingField.<CacheFileInfo>k__BackingField = entity;
|
||||
Stream stream;
|
||||
if (stream != 0)
|
||||
{
|
||||
if (this.<CurrentRequest>k__BackingField.<Response>k__BackingField.GetHeaderValues("content-length") == 0)
|
||||
{
|
||||
Dictionary<string, List<string>> <Headers>k__BackingField = this.<CurrentRequest>k__BackingField.<Response>k__BackingField.<Headers>k__BackingField;
|
||||
list = new List(1);
|
||||
string text2;
|
||||
list.Add(text2);
|
||||
<Headers>k__BackingField.Add("content-length", list);
|
||||
}
|
||||
this.<CurrentRequest>k__BackingField.<Response>k__BackingField.<IsFromCache>k__BackingField = true;
|
||||
HTTPRequest <CurrentRequest>k__BackingField4 = this.<CurrentRequest>k__BackingField;
|
||||
if (!<CurrentRequest>k__BackingField4.cacheOnly)
|
||||
{
|
||||
HTTPResponse <Response>k__BackingField = <CurrentRequest>k__BackingField4.<Response>k__BackingField;
|
||||
}
|
||||
}
|
||||
if (stream != 0)
|
||||
{
|
||||
}
|
||||
}
|
||||
while (num != 0);
|
||||
if (num != -1)
|
||||
{
|
||||
}
|
||||
return true;
|
||||
IL_11F:
|
||||
int num2 = 0;
|
||||
ILogger logger2 = HTTPManager.Logger;
|
||||
int hashCode3 = num2.GetHashCode();
|
||||
int hashCode4 = list.GetHashCode();
|
||||
string text3 = string.Format("{0} - LoadFromCache for Uri: {1} - Cached entity not found!", hashCode3, hashCode4);
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x06009324 RID: 37668 RVA: 0x001E3300 File Offset: 0x001E1500
|
||||
[Token(Token = "0x6009324")]
|
||||
[Address(RVA = "0x1717A60", Offset = "0x1716860", VA = "0x181717A60")]
|
||||
private bool TryLoadAllFromCache()
|
||||
{
|
||||
if (!this.<CurrentRequest>k__BackingField.disableCache && HTTPCacheService.IsSupported)
|
||||
{
|
||||
HTTPRequest <CurrentRequest>k__BackingField = this.<CurrentRequest>k__BackingField;
|
||||
if (HTTPCacheService.IsCachedEntityExpiresInTheFuture(<CurrentRequest>k__BackingField))
|
||||
{
|
||||
if (HTTPManager.Logger == 0)
|
||||
{
|
||||
ILogger logger = HTTPManager.Logger;
|
||||
HTTPRequest <CurrentRequest>k__BackingField2 = this.<CurrentRequest>k__BackingField;
|
||||
if (<CurrentRequest>k__BackingField2.<IsRedirected>k__BackingField)
|
||||
{
|
||||
}
|
||||
int hashCode = <CurrentRequest>k__BackingField2.<Uri>k__BackingField.GetHashCode();
|
||||
string text = string.Format("{0} - TryLoadAllFromCache - whole response loading from cache", hashCode);
|
||||
}
|
||||
HTTPRequest <CurrentRequest>k__BackingField3 = this.<CurrentRequest>k__BackingField;
|
||||
HTTPResponse fullResponse = HTTPCacheService.GetFullResponse(<CurrentRequest>k__BackingField3);
|
||||
<CurrentRequest>k__BackingField3.<Response>k__BackingField = fullResponse;
|
||||
if (this.<CurrentRequest>k__BackingField.<Response>k__BackingField != (ulong)0L)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
if (<CurrentRequest>k__BackingField.<IsRedirected>k__BackingField)
|
||||
{
|
||||
}
|
||||
bool flag = HTTPCacheService.DeleteEntity(<CurrentRequest>k__BackingField.<Uri>k__BackingField, true);
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x06009325 RID: 37669 RVA: 0x001E33F4 File Offset: 0x001E15F4
|
||||
[Token(Token = "0x6009325")]
|
||||
[Address(RVA = "0x1717CF0", Offset = "0x1716AF0", VA = "0x181717CF0")]
|
||||
private void TryStoreInCache()
|
||||
{
|
||||
HTTPRequest <CurrentRequest>k__BackingField = this.<CurrentRequest>k__BackingField;
|
||||
if (!<CurrentRequest>k__BackingField.useStreaming && !<CurrentRequest>k__BackingField.disableCache && <CurrentRequest>k__BackingField.<Response>k__BackingField != (ulong)0L && HTTPCacheService.IsSupported)
|
||||
{
|
||||
HTTPRequest <CurrentRequest>k__BackingField2 = this.<CurrentRequest>k__BackingField;
|
||||
if (<CurrentRequest>k__BackingField2.<IsRedirected>k__BackingField)
|
||||
{
|
||||
}
|
||||
Uri <Uri>k__BackingField = <CurrentRequest>k__BackingField2.<Uri>k__BackingField;
|
||||
HTTPMethods <MethodType>k__BackingField = <CurrentRequest>k__BackingField2.<MethodType>k__BackingField;
|
||||
HTTPResponse <Response>k__BackingField = <CurrentRequest>k__BackingField2.<Response>k__BackingField;
|
||||
if (HTTPCacheService.IsCacheble(<Uri>k__BackingField, <MethodType>k__BackingField, <Response>k__BackingField))
|
||||
{
|
||||
HTTPRequest <CurrentRequest>k__BackingField3 = this.<CurrentRequest>k__BackingField;
|
||||
if (<CurrentRequest>k__BackingField3.<IsRedirected>k__BackingField)
|
||||
{
|
||||
}
|
||||
Uri <Uri>k__BackingField2 = <CurrentRequest>k__BackingField3.<Uri>k__BackingField;
|
||||
HTTPMethods <MethodType>k__BackingField2 = <CurrentRequest>k__BackingField3.<MethodType>k__BackingField;
|
||||
HTTPResponse <Response>k__BackingField2 = <CurrentRequest>k__BackingField3.<Response>k__BackingField;
|
||||
HTTPCacheFileInfo httpcacheFileInfo = HTTPCacheService.Store(<Uri>k__BackingField2, <MethodType>k__BackingField2, <Response>k__BackingField2);
|
||||
HTTPCacheService.SaveLibrary();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x06009326 RID: 37670 RVA: 0x001E34B4 File Offset: 0x001E16B4
|
||||
[Token(Token = "0x6009326")]
|
||||
[Address(RVA = "0x1715980", Offset = "0x1714780", VA = "0x181715980")]
|
||||
private Uri GetRedirectUri(string location)
|
||||
{
|
||||
int num;
|
||||
int num2;
|
||||
do
|
||||
{
|
||||
Uri uri = new Uri(location);
|
||||
if (uri.IsFile || string.Equals(uri.AbsolutePath, location))
|
||||
{
|
||||
}
|
||||
num = 0;
|
||||
num2 = 0;
|
||||
}
|
||||
while (!(num == num2));
|
||||
Uri <Uri>k__BackingField = this.<CurrentRequest>k__BackingField.<Uri>k__BackingField;
|
||||
string scheme = <Uri>k__BackingField.Scheme;
|
||||
string host = <Uri>k__BackingField.Host;
|
||||
int port = <Uri>k__BackingField.Port;
|
||||
return new UriBuilder(scheme, host, port, location).Uri;
|
||||
}
|
||||
|
||||
// Token: 0x06009327 RID: 37671 RVA: 0x001E3538 File Offset: 0x001E1738
|
||||
[Token(Token = "0x6009327")]
|
||||
[Address(RVA = "0x1714D20", Offset = "0x1713B20", VA = "0x181714D20", Slot = "6")]
|
||||
internal override void Abort(HTTPConnectionStates newState)
|
||||
{
|
||||
this.<State>k__BackingField = newState;
|
||||
if (newState == HTTPConnectionStates.TimedOut)
|
||||
{
|
||||
DateTime utcNow = DateTime.UtcNow;
|
||||
this.<TimedOutStart>k__BackingField = utcNow;
|
||||
}
|
||||
if (this.Stream != (ulong)0L)
|
||||
{
|
||||
this.Stream.Dispose();
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x06009328 RID: 37672 RVA: 0x001E3580 File Offset: 0x001E1780
|
||||
[Token(Token = "0x6009328")]
|
||||
[Address(RVA = "0x1714DD0", Offset = "0x1713BD0", VA = "0x181714DD0")]
|
||||
private void Close()
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
this.KeepAlive = num;
|
||||
this.<LastProcessedUri>k__BackingField = num;
|
||||
if (this.Client == num)
|
||||
{
|
||||
break;
|
||||
}
|
||||
this.Client.Close();
|
||||
this.Stream = (ulong)0L;
|
||||
this.Client = (ulong)0L;
|
||||
}
|
||||
while (num != 0);
|
||||
}
|
||||
|
||||
// Token: 0x06009329 RID: 37673 RVA: 0x001E35D0 File Offset: 0x001E17D0
|
||||
[Token(Token = "0x6009329")]
|
||||
[Address(RVA = "0x1715950", Offset = "0x1714750", VA = "0x181715950", Slot = "8")]
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
this.Close();
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
// Token: 0x04006481 RID: 25729
|
||||
[FieldOffset(Offset = "0x58")]
|
||||
[Token(Token = "0x4006481")]
|
||||
private TcpClient Client;
|
||||
|
||||
// Token: 0x04006482 RID: 25730
|
||||
[FieldOffset(Offset = "0x60")]
|
||||
[Token(Token = "0x4006482")]
|
||||
private Stream Stream;
|
||||
|
||||
// Token: 0x04006483 RID: 25731
|
||||
[FieldOffset(Offset = "0x68")]
|
||||
[Token(Token = "0x4006483")]
|
||||
private KeepAliveHeader KeepAlive;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,50 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP
|
||||
{
|
||||
// Token: 0x0200188A RID: 6282
|
||||
[Token(Token = "0x200188A")]
|
||||
internal sealed class HTTPConnectionRecycledDelegate : MulticastDelegate
|
||||
{
|
||||
// Token: 0x060092E5 RID: 37605 RVA: 0x001E16F0 File Offset: 0x001DF8F0
|
||||
[Token(Token = "0x60092E5")]
|
||||
[Address(RVA = "0x448ED0", Offset = "0x447CD0", VA = "0x180448ED0")]
|
||||
public HTTPConnectionRecycledDelegate(object @object, IntPtr method)
|
||||
{
|
||||
this.method = method;
|
||||
this.m_target = @object;
|
||||
}
|
||||
|
||||
// Token: 0x060092E6 RID: 37606 RVA: 0x001E170C File Offset: 0x001DF90C
|
||||
[Token(Token = "0x60092E6")]
|
||||
[Address(RVA = "0x747410", Offset = "0x746210", VA = "0x180747410", Slot = "13")]
|
||||
public void Invoke(ConnectionBase conn)
|
||||
{
|
||||
if (this.delegates != 0)
|
||||
{
|
||||
}
|
||||
uint num;
|
||||
if (num != (uint)0)
|
||||
{
|
||||
throw new ExecutionEngineException();
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x060092E7 RID: 37607 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x60092E7")]
|
||||
[Address(RVA = "0x457150", Offset = "0x455F50", VA = "0x180457150", Slot = "14")]
|
||||
public IAsyncResult BeginInvoke(ConnectionBase conn, AsyncCallback callback, object @object)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x060092E8 RID: 37608 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x60092E8")]
|
||||
[Address(RVA = "0x448B70", Offset = "0x447970", VA = "0x180448B70", Slot = "15")]
|
||||
public void EndInvoke(IAsyncResult result)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,41 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP
|
||||
{
|
||||
// Token: 0x02001891 RID: 6289
|
||||
[Token(Token = "0x2001891")]
|
||||
internal enum HTTPConnectionStates
|
||||
{
|
||||
// Token: 0x04006485 RID: 25733
|
||||
[Token(Token = "0x4006485")]
|
||||
Initial,
|
||||
// Token: 0x04006486 RID: 25734
|
||||
[Token(Token = "0x4006486")]
|
||||
Processing,
|
||||
// Token: 0x04006487 RID: 25735
|
||||
[Token(Token = "0x4006487")]
|
||||
Redirected,
|
||||
// Token: 0x04006488 RID: 25736
|
||||
[Token(Token = "0x4006488")]
|
||||
Upgraded,
|
||||
// Token: 0x04006489 RID: 25737
|
||||
[Token(Token = "0x4006489")]
|
||||
WaitForProtocolShutdown,
|
||||
// Token: 0x0400648A RID: 25738
|
||||
[Token(Token = "0x400648A")]
|
||||
WaitForRecycle,
|
||||
// Token: 0x0400648B RID: 25739
|
||||
[Token(Token = "0x400648B")]
|
||||
Free,
|
||||
// Token: 0x0400648C RID: 25740
|
||||
[Token(Token = "0x400648C")]
|
||||
AbortRequested,
|
||||
// Token: 0x0400648D RID: 25741
|
||||
[Token(Token = "0x400648D")]
|
||||
TimedOut,
|
||||
// Token: 0x0400648E RID: 25742
|
||||
[Token(Token = "0x400648E")]
|
||||
Closed
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,967 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Security.Cryptography.X509Certificates;
|
||||
using System.Threading;
|
||||
using BestHTTP.Caching;
|
||||
using BestHTTP.Cookies;
|
||||
using BestHTTP.Extensions;
|
||||
using BestHTTP.Logger;
|
||||
using BestHTTP.PlatformSupport.FileSystem;
|
||||
using BestHTTP.Statistics;
|
||||
using Cpp2IlInjected;
|
||||
using Org.BouncyCastle.Crypto.Tls;
|
||||
using UnityEngine;
|
||||
|
||||
namespace BestHTTP
|
||||
{
|
||||
// Token: 0x02001892 RID: 6290
|
||||
[Token(Token = "0x2001892")]
|
||||
public static class HTTPManager
|
||||
{
|
||||
// Token: 0x0600932B RID: 37675 RVA: 0x001E361C File Offset: 0x001E181C
|
||||
[Token(Token = "0x600932B")]
|
||||
[Address(RVA = "0x171B800", Offset = "0x171A600", VA = "0x18171B800")]
|
||||
static HTTPManager()
|
||||
{
|
||||
TimeSpan timeSpan;
|
||||
HTTPManager.MaxConnectionIdleTime = timeSpan;
|
||||
TimeSpan timeSpan2;
|
||||
HTTPManager.ConnectTimeout = timeSpan2;
|
||||
TimeSpan timeSpan3;
|
||||
HTTPManager.RequestTimeout = timeSpan3;
|
||||
HTTPManager.logger = new DefaultLogger();
|
||||
HTTPManager.IOService = new DefaultIOService();
|
||||
}
|
||||
|
||||
// Token: 0x17001742 RID: 5954
|
||||
// (get) Token: 0x0600932C RID: 37676 RVA: 0x001E368C File Offset: 0x001E188C
|
||||
// (set) Token: 0x0600932D RID: 37677 RVA: 0x001E36A0 File Offset: 0x001E18A0
|
||||
[Token(Token = "0x17001742")]
|
||||
public static byte MaxConnectionPerServer
|
||||
{
|
||||
[Token(Token = "0x600932C")]
|
||||
[Address(RVA = "0x171C4C0", Offset = "0x171B2C0", VA = "0x18171C4C0")]
|
||||
get
|
||||
{
|
||||
return HTTPManager.maxConnectionPerServer;
|
||||
}
|
||||
[Token(Token = "0x600932D")]
|
||||
[Address(RVA = "0x171CBE0", Offset = "0x171B9E0", VA = "0x18171CBE0")]
|
||||
set
|
||||
{
|
||||
HTTPManager.maxConnectionPerServer = value;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17001743 RID: 5955
|
||||
// (get) Token: 0x0600932E RID: 37678 RVA: 0x001E36C0 File Offset: 0x001E18C0
|
||||
// (set) Token: 0x0600932F RID: 37679 RVA: 0x001E36D4 File Offset: 0x001E18D4
|
||||
[Token(Token = "0x17001743")]
|
||||
public static bool KeepAliveDefaultValue
|
||||
{
|
||||
[Token(Token = "0x600932E")]
|
||||
[Address(RVA = "0x171C280", Offset = "0x171B080", VA = "0x18171C280")]
|
||||
get;
|
||||
[Token(Token = "0x600932F")]
|
||||
[Address(RVA = "0x171CAC0", Offset = "0x171B8C0", VA = "0x18171CAC0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001744 RID: 5956
|
||||
// (get) Token: 0x06009330 RID: 37680 RVA: 0x001E36E8 File Offset: 0x001E18E8
|
||||
// (set) Token: 0x06009331 RID: 37681 RVA: 0x001E36FC File Offset: 0x001E18FC
|
||||
[Token(Token = "0x17001744")]
|
||||
public static bool IsCachingDisabled
|
||||
{
|
||||
[Token(Token = "0x6009330")]
|
||||
[Address(RVA = "0x171C160", Offset = "0x171AF60", VA = "0x18171C160")]
|
||||
get;
|
||||
[Token(Token = "0x6009331")]
|
||||
[Address(RVA = "0x171C9A0", Offset = "0x171B7A0", VA = "0x18171C9A0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001745 RID: 5957
|
||||
// (get) Token: 0x06009332 RID: 37682 RVA: 0x001E3710 File Offset: 0x001E1910
|
||||
// (set) Token: 0x06009333 RID: 37683 RVA: 0x001E3724 File Offset: 0x001E1924
|
||||
[Token(Token = "0x17001745")]
|
||||
public static TimeSpan MaxConnectionIdleTime
|
||||
{
|
||||
[Token(Token = "0x6009332")]
|
||||
[Address(RVA = "0x171C460", Offset = "0x171B260", VA = "0x18171C460")]
|
||||
get;
|
||||
[Token(Token = "0x6009333")]
|
||||
[Address(RVA = "0x171CB80", Offset = "0x171B980", VA = "0x18171CB80")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001746 RID: 5958
|
||||
// (get) Token: 0x06009334 RID: 37684 RVA: 0x001E3738 File Offset: 0x001E1938
|
||||
// (set) Token: 0x06009335 RID: 37685 RVA: 0x001E374C File Offset: 0x001E194C
|
||||
[Token(Token = "0x17001746")]
|
||||
public static bool IsCookiesEnabled
|
||||
{
|
||||
[Token(Token = "0x6009334")]
|
||||
[Address(RVA = "0x171C1C0", Offset = "0x171AFC0", VA = "0x18171C1C0")]
|
||||
get;
|
||||
[Token(Token = "0x6009335")]
|
||||
[Address(RVA = "0x171CA00", Offset = "0x171B800", VA = "0x18171CA00")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001747 RID: 5959
|
||||
// (get) Token: 0x06009336 RID: 37686 RVA: 0x001E3760 File Offset: 0x001E1960
|
||||
// (set) Token: 0x06009337 RID: 37687 RVA: 0x001E3774 File Offset: 0x001E1974
|
||||
[Token(Token = "0x17001747")]
|
||||
public static uint CookieJarSize
|
||||
{
|
||||
[Token(Token = "0x6009336")]
|
||||
[Address(RVA = "0x171BE10", Offset = "0x171AC10", VA = "0x18171BE10")]
|
||||
get;
|
||||
[Token(Token = "0x6009337")]
|
||||
[Address(RVA = "0x171C7C0", Offset = "0x171B5C0", VA = "0x18171C7C0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001748 RID: 5960
|
||||
// (get) Token: 0x06009338 RID: 37688 RVA: 0x001E3788 File Offset: 0x001E1988
|
||||
// (set) Token: 0x06009339 RID: 37689 RVA: 0x001E379C File Offset: 0x001E199C
|
||||
[Token(Token = "0x17001748")]
|
||||
public static bool EnablePrivateBrowsing
|
||||
{
|
||||
[Token(Token = "0x6009338")]
|
||||
[Address(RVA = "0x171BF90", Offset = "0x171AD90", VA = "0x18171BF90")]
|
||||
get;
|
||||
[Token(Token = "0x6009339")]
|
||||
[Address(RVA = "0x171C940", Offset = "0x171B740", VA = "0x18171C940")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001749 RID: 5961
|
||||
// (get) Token: 0x0600933A RID: 37690 RVA: 0x001E37B0 File Offset: 0x001E19B0
|
||||
// (set) Token: 0x0600933B RID: 37691 RVA: 0x001E37C4 File Offset: 0x001E19C4
|
||||
[Token(Token = "0x17001749")]
|
||||
public static TimeSpan ConnectTimeout
|
||||
{
|
||||
[Token(Token = "0x600933A")]
|
||||
[Address(RVA = "0x171BDB0", Offset = "0x171ABB0", VA = "0x18171BDB0")]
|
||||
get;
|
||||
[Token(Token = "0x600933B")]
|
||||
[Address(RVA = "0x171C760", Offset = "0x171B560", VA = "0x18171C760")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x1700174A RID: 5962
|
||||
// (get) Token: 0x0600933C RID: 37692 RVA: 0x001E37D8 File Offset: 0x001E19D8
|
||||
// (set) Token: 0x0600933D RID: 37693 RVA: 0x001E37EC File Offset: 0x001E19EC
|
||||
[Token(Token = "0x1700174A")]
|
||||
public static TimeSpan RequestTimeout
|
||||
{
|
||||
[Token(Token = "0x600933C")]
|
||||
[Address(RVA = "0x171C640", Offset = "0x171B440", VA = "0x18171C640")]
|
||||
get;
|
||||
[Token(Token = "0x600933D")]
|
||||
[Address(RVA = "0x171CD90", Offset = "0x171BB90", VA = "0x18171CD90")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x1700174B RID: 5963
|
||||
// (get) Token: 0x0600933E RID: 37694 RVA: 0x001E3800 File Offset: 0x001E1A00
|
||||
// (set) Token: 0x0600933F RID: 37695 RVA: 0x001E3814 File Offset: 0x001E1A14
|
||||
[Token(Token = "0x1700174B")]
|
||||
public static Func<string> RootCacheFolderProvider
|
||||
{
|
||||
[Token(Token = "0x600933E")]
|
||||
[Address(RVA = "0x171C6A0", Offset = "0x171B4A0", VA = "0x18171C6A0")]
|
||||
get;
|
||||
[Token(Token = "0x600933F")]
|
||||
[Address(RVA = "0x171CDF0", Offset = "0x171BBF0", VA = "0x18171CDF0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x1700174C RID: 5964
|
||||
// (get) Token: 0x06009340 RID: 37696 RVA: 0x001E3828 File Offset: 0x001E1A28
|
||||
// (set) Token: 0x06009341 RID: 37697 RVA: 0x001E383C File Offset: 0x001E1A3C
|
||||
[Token(Token = "0x1700174C")]
|
||||
public static Proxy Proxy
|
||||
{
|
||||
[Token(Token = "0x6009340")]
|
||||
[Address(RVA = "0x171C5E0", Offset = "0x171B3E0", VA = "0x18171C5E0")]
|
||||
get;
|
||||
[Token(Token = "0x6009341")]
|
||||
[Address(RVA = "0x171CD30", Offset = "0x171BB30", VA = "0x18171CD30")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x1700174D RID: 5965
|
||||
// (get) Token: 0x06009342 RID: 37698 RVA: 0x001E3850 File Offset: 0x001E1A50
|
||||
[Token(Token = "0x1700174D")]
|
||||
public static HeartbeatManager Heartbeats
|
||||
{
|
||||
[Token(Token = "0x6009342")]
|
||||
[Address(RVA = "0x171BFF0", Offset = "0x171ADF0", VA = "0x18171BFF0")]
|
||||
get
|
||||
{
|
||||
HeartbeatManager heartbeatManager = new HeartbeatManager();
|
||||
List<IHeartbeat> list = new List();
|
||||
heartbeatManager.Heartbeats = list;
|
||||
DateTime minValue = DateTime.MinValue;
|
||||
heartbeatManager.LastUpdate = minValue;
|
||||
HTTPManager.heartbeats = heartbeatManager;
|
||||
return HTTPManager.heartbeats;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x1700174E RID: 5966
|
||||
// (get) Token: 0x06009343 RID: 37699 RVA: 0x001E3890 File Offset: 0x001E1A90
|
||||
// (set) Token: 0x06009344 RID: 37700 RVA: 0x001E38C8 File Offset: 0x001E1AC8
|
||||
[Token(Token = "0x1700174E")]
|
||||
public static BestHTTP.Logger.ILogger Logger
|
||||
{
|
||||
[Token(Token = "0x6009343")]
|
||||
[Address(RVA = "0x171C2E0", Offset = "0x171B0E0", VA = "0x18171C2E0")]
|
||||
get
|
||||
{
|
||||
HTTPManager.logger = new DefaultLogger();
|
||||
BestHTTP.Logger.ILogger logger = HTTPManager.logger;
|
||||
int num = 0;
|
||||
num += num;
|
||||
num++;
|
||||
return HTTPManager.logger;
|
||||
}
|
||||
[Token(Token = "0x6009344")]
|
||||
[Address(RVA = "0x171CB20", Offset = "0x171B920", VA = "0x18171CB20")]
|
||||
set
|
||||
{
|
||||
HTTPManager.logger = value;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x1700174F RID: 5967
|
||||
// (get) Token: 0x06009345 RID: 37701 RVA: 0x001E38DC File Offset: 0x001E1ADC
|
||||
// (set) Token: 0x06009346 RID: 37702 RVA: 0x001E38F0 File Offset: 0x001E1AF0
|
||||
[Token(Token = "0x1700174F")]
|
||||
public static ICertificateVerifyer DefaultCertificateVerifyer
|
||||
{
|
||||
[Token(Token = "0x6009345")]
|
||||
[Address(RVA = "0x171BE70", Offset = "0x171AC70", VA = "0x18171BE70")]
|
||||
get;
|
||||
[Token(Token = "0x6009346")]
|
||||
[Address(RVA = "0x171C820", Offset = "0x171B620", VA = "0x18171C820")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001750 RID: 5968
|
||||
// (get) Token: 0x06009347 RID: 37703 RVA: 0x001E3904 File Offset: 0x001E1B04
|
||||
// (set) Token: 0x06009348 RID: 37704 RVA: 0x001E3918 File Offset: 0x001E1B18
|
||||
[Token(Token = "0x17001750")]
|
||||
public static IClientCredentialsProvider DefaultClientCredentialsProvider
|
||||
{
|
||||
[Token(Token = "0x6009347")]
|
||||
[Address(RVA = "0x171BF30", Offset = "0x171AD30", VA = "0x18171BF30")]
|
||||
get;
|
||||
[Token(Token = "0x6009348")]
|
||||
[Address(RVA = "0x171C8E0", Offset = "0x171B6E0", VA = "0x18171C8E0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001751 RID: 5969
|
||||
// (get) Token: 0x06009349 RID: 37705 RVA: 0x001E392C File Offset: 0x001E1B2C
|
||||
// (set) Token: 0x0600934A RID: 37706 RVA: 0x001E3940 File Offset: 0x001E1B40
|
||||
[Token(Token = "0x17001751")]
|
||||
public static bool UseAlternateSSLDefaultValue
|
||||
{
|
||||
[Token(Token = "0x6009349")]
|
||||
[Address(RVA = "0x171C700", Offset = "0x171B500", VA = "0x18171C700")]
|
||||
get;
|
||||
[Token(Token = "0x600934A")]
|
||||
[Address(RVA = "0x171CE50", Offset = "0x171BC50", VA = "0x18171CE50")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001752 RID: 5970
|
||||
// (get) Token: 0x0600934B RID: 37707 RVA: 0x001E3954 File Offset: 0x001E1B54
|
||||
// (set) Token: 0x0600934C RID: 37708 RVA: 0x001E3968 File Offset: 0x001E1B68
|
||||
[Token(Token = "0x17001752")]
|
||||
public static Func<HTTPRequest, X509Certificate, X509Chain, bool> DefaultCertificationValidator
|
||||
{
|
||||
[Token(Token = "0x600934B")]
|
||||
[Address(RVA = "0x171BED0", Offset = "0x171ACD0", VA = "0x18171BED0")]
|
||||
get;
|
||||
[Token(Token = "0x600934C")]
|
||||
[Address(RVA = "0x171C880", Offset = "0x171B680", VA = "0x18171C880")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001753 RID: 5971
|
||||
// (get) Token: 0x0600934D RID: 37709 RVA: 0x001E397C File Offset: 0x001E1B7C
|
||||
// (set) Token: 0x0600934E RID: 37710 RVA: 0x001E3990 File Offset: 0x001E1B90
|
||||
[Token(Token = "0x17001753")]
|
||||
public static Action<HTTPRequest, Stream> OnSendingHeaders
|
||||
{
|
||||
[Token(Token = "0x600934D")]
|
||||
[Address(RVA = "0x171C580", Offset = "0x171B380", VA = "0x18171C580")]
|
||||
get;
|
||||
[Token(Token = "0x600934E")]
|
||||
[Address(RVA = "0x171CCD0", Offset = "0x171BAD0", VA = "0x18171CCD0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001754 RID: 5972
|
||||
// (get) Token: 0x0600934F RID: 37711 RVA: 0x001E39A4 File Offset: 0x001E1BA4
|
||||
// (set) Token: 0x06009350 RID: 37712 RVA: 0x001E39B8 File Offset: 0x001E1BB8
|
||||
[Token(Token = "0x17001754")]
|
||||
internal static int MaxPathLength
|
||||
{
|
||||
[Token(Token = "0x600934F")]
|
||||
[Address(RVA = "0x171C520", Offset = "0x171B320", VA = "0x18171C520")]
|
||||
get;
|
||||
[Token(Token = "0x6009350")]
|
||||
[Address(RVA = "0x171CC70", Offset = "0x171BA70", VA = "0x18171CC70")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001755 RID: 5973
|
||||
// (get) Token: 0x06009351 RID: 37713 RVA: 0x001E39CC File Offset: 0x001E1BCC
|
||||
// (set) Token: 0x06009352 RID: 37714 RVA: 0x001E39E0 File Offset: 0x001E1BE0
|
||||
[Token(Token = "0x17001755")]
|
||||
internal static bool IsQuitting
|
||||
{
|
||||
[Token(Token = "0x6009351")]
|
||||
[Address(RVA = "0x171C220", Offset = "0x171B020", VA = "0x18171C220")]
|
||||
get;
|
||||
[Token(Token = "0x6009352")]
|
||||
[Address(RVA = "0x171CA60", Offset = "0x171B860", VA = "0x18171CA60")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x06009353 RID: 37715 RVA: 0x001E39F4 File Offset: 0x001E1BF4
|
||||
[Token(Token = "0x6009353")]
|
||||
[Address(RVA = "0x17198E0", Offset = "0x17186E0", VA = "0x1817198E0")]
|
||||
[CBEAKPMNJOL(LGFJHLDANJN.Unity_AfterSceneLoad)]
|
||||
private static void InitializeOnLoad()
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x06009354 RID: 37716 RVA: 0x001E3A04 File Offset: 0x001E1C04
|
||||
[Token(Token = "0x6009354")]
|
||||
[Address(RVA = "0x171B760", Offset = "0x171A560", VA = "0x18171B760")]
|
||||
public static void Setup()
|
||||
{
|
||||
HTTPUpdateDelegator.CheckInstance();
|
||||
HTTPCacheService.CheckSetup();
|
||||
CookieJar.SetupFolder();
|
||||
}
|
||||
|
||||
// Token: 0x06009355 RID: 37717 RVA: 0x001E3A28 File Offset: 0x001E1C28
|
||||
[Token(Token = "0x6009355")]
|
||||
[Address(RVA = "0x171B2D0", Offset = "0x171A0D0", VA = "0x18171B2D0")]
|
||||
public static HTTPRequest SendRequest(string url, OnRequestFinishedDelegate callback)
|
||||
{
|
||||
int num;
|
||||
HTTPRequest httprequest = new HTTPRequest(new Uri(url), (HTTPMethods)num, callback);
|
||||
num = 0;
|
||||
return HTTPManager.SendRequest(httprequest);
|
||||
}
|
||||
|
||||
// Token: 0x06009356 RID: 37718 RVA: 0x001E3A4C File Offset: 0x001E1C4C
|
||||
[Token(Token = "0x6009356")]
|
||||
[Address(RVA = "0x171B380", Offset = "0x171A180", VA = "0x18171B380")]
|
||||
public static HTTPRequest SendRequest(string url, HTTPMethods methodType, OnRequestFinishedDelegate callback)
|
||||
{
|
||||
return HTTPManager.SendRequest(new HTTPRequest(new Uri(url), methodType, callback));
|
||||
}
|
||||
|
||||
// Token: 0x06009357 RID: 37719 RVA: 0x001E3A6C File Offset: 0x001E1C6C
|
||||
[Token(Token = "0x6009357")]
|
||||
[Address(RVA = "0x171B140", Offset = "0x1719F40", VA = "0x18171B140")]
|
||||
public static HTTPRequest SendRequest(string url, HTTPMethods methodType, bool isKeepAlive, OnRequestFinishedDelegate callback)
|
||||
{
|
||||
bool flag;
|
||||
return HTTPManager.SendRequest(new HTTPRequest(new Uri(url), methodType, isKeepAlive, flag, callback));
|
||||
}
|
||||
|
||||
// Token: 0x06009358 RID: 37720 RVA: 0x001E3A94 File Offset: 0x001E1C94
|
||||
[Token(Token = "0x6009358")]
|
||||
[Address(RVA = "0x171B440", Offset = "0x171A240", VA = "0x18171B440")]
|
||||
public static HTTPRequest SendRequest(string url, HTTPMethods methodType, bool isKeepAlive, bool disableCache, OnRequestFinishedDelegate callback)
|
||||
{
|
||||
Uri uri = new Uri(url);
|
||||
HTTPRequest httprequest;
|
||||
return HTTPManager.SendRequest(httprequest);
|
||||
}
|
||||
|
||||
// Token: 0x06009359 RID: 37721 RVA: 0x001E3AB0 File Offset: 0x001E1CB0
|
||||
[Token(Token = "0x6009359")]
|
||||
[Address(RVA = "0x171B520", Offset = "0x171A320", VA = "0x18171B520")]
|
||||
public static HTTPRequest SendRequest(HTTPRequest request)
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
object locker = HTTPManager.Locker;
|
||||
HTTPUpdateDelegator.CheckInstance();
|
||||
HTTPCacheService.CheckSetup();
|
||||
CookieJar.SetupFolder();
|
||||
HTTPManager.SendRequestImpl(request);
|
||||
request.<State>k__BackingField = (HTTPRequestStates)((ulong)1L);
|
||||
HTTPManager.RequestQueue.Add(request);
|
||||
Monitor.Exit(locker);
|
||||
}
|
||||
while (num != 0);
|
||||
return request;
|
||||
}
|
||||
|
||||
// Token: 0x0600935A RID: 37722 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600935A")]
|
||||
[Address(RVA = "0x17191B0", Offset = "0x1717FB0", VA = "0x1817191B0")]
|
||||
public static GeneralStatistics GetGeneralStatistics(StatisticsQueryFlags queryFlags)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x0600935B RID: 37723 RVA: 0x001E3B0C File Offset: 0x001E1D0C
|
||||
[Token(Token = "0x600935B")]
|
||||
[Address(RVA = "0x171ADF0", Offset = "0x1719BF0", VA = "0x18171ADF0")]
|
||||
private static void SendRequestImpl(HTTPRequest request)
|
||||
{
|
||||
int num;
|
||||
ConnectionBase conn3;
|
||||
do
|
||||
{
|
||||
ConnectionBase connectionBase = HTTPManager.FindOrCreateFreeConnection(request);
|
||||
ConnectionBase conn = connectionBase;
|
||||
num = 0;
|
||||
if (request != 0)
|
||||
{
|
||||
goto IL_CA;
|
||||
}
|
||||
if (num != -1)
|
||||
{
|
||||
}
|
||||
if (conn == (ulong)0L)
|
||||
{
|
||||
goto IL_A9;
|
||||
}
|
||||
List<ConnectionBase> activeConnections = HTTPManager.ActiveConnections;
|
||||
Predicate<ConnectionBase> predicate = (ConnectionBase c) => c == conn;
|
||||
if (activeConnections.Find(predicate) == 0)
|
||||
{
|
||||
List<ConnectionBase> activeConnections2 = HTTPManager.ActiveConnections;
|
||||
ConnectionBase conn4 = conn;
|
||||
activeConnections2.Add(conn4);
|
||||
}
|
||||
List<ConnectionBase> freeConnections = HTTPManager.FreeConnections;
|
||||
ConnectionBase conn2 = conn;
|
||||
bool flag = freeConnections.Remove(conn2);
|
||||
request.<State>k__BackingField = (HTTPRequestStates)((ulong)2L);
|
||||
conn3 = conn;
|
||||
conn3.Process(request);
|
||||
num++;
|
||||
}
|
||||
while (conn3 != 0);
|
||||
if (num != -1)
|
||||
{
|
||||
}
|
||||
IL_A9:
|
||||
request.<State>k__BackingField = (HTTPRequestStates)((ulong)1L);
|
||||
HTTPManager.RequestQueue.Add(request);
|
||||
return;
|
||||
IL_CA:
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600935C RID: 37724 RVA: 0x001E3C00 File Offset: 0x001E1E00
|
||||
[Token(Token = "0x600935C")]
|
||||
[Address(RVA = "0x17194D0", Offset = "0x17182D0", VA = "0x1817194D0")]
|
||||
private static string GetKeyForRequest(HTTPRequest request)
|
||||
{
|
||||
if (request.<IsRedirected>k__BackingField)
|
||||
{
|
||||
}
|
||||
UriBuilder uriBuilder;
|
||||
if (!request.<Uri>k__BackingField.IsFile)
|
||||
{
|
||||
Proxy proxy = request.<Proxy>k__BackingField;
|
||||
int num;
|
||||
if (proxy != 0)
|
||||
{
|
||||
string scheme = proxy.<Address>k__BackingField.Scheme;
|
||||
string host = request.<Proxy>k__BackingField.<Address>k__BackingField.Host;
|
||||
num = request.<Proxy>k__BackingField.<Address>k__BackingField.Port;
|
||||
int hashCode = new UriBuilder(scheme, host, num).Uri.GetHashCode();
|
||||
}
|
||||
string empty = string.Empty;
|
||||
if (request.<IsRedirected>k__BackingField)
|
||||
{
|
||||
}
|
||||
string scheme2 = request.<Uri>k__BackingField.Scheme;
|
||||
if (request.<IsRedirected>k__BackingField)
|
||||
{
|
||||
}
|
||||
string host2 = request.<Uri>k__BackingField.Host;
|
||||
if (request.<IsRedirected>k__BackingField)
|
||||
{
|
||||
}
|
||||
num = request.<Uri>k__BackingField.Port;
|
||||
uriBuilder = new UriBuilder(scheme2, host2, num);
|
||||
int hashCode2 = uriBuilder.Uri.GetHashCode();
|
||||
string text;
|
||||
return text;
|
||||
}
|
||||
int hashCode3 = uriBuilder._changed.GetHashCode();
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600935D RID: 37725 RVA: 0x001E3CEC File Offset: 0x001E1EEC
|
||||
[Token(Token = "0x600935D")]
|
||||
[Address(RVA = "0x1718A30", Offset = "0x1717830", VA = "0x181718A30")]
|
||||
private static ConnectionBase CreateConnection(HTTPRequest request, string serverUrl)
|
||||
{
|
||||
if (request.<IsRedirected>k__BackingField)
|
||||
{
|
||||
}
|
||||
if (request.<Uri>k__BackingField.IsFile && Application.platform != RuntimePlatform.WebGLPlayer)
|
||||
{
|
||||
FileConnection fileConnection = new FileConnection(serverUrl);
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600935E RID: 37726 RVA: 0x001E3D28 File Offset: 0x001E1F28
|
||||
[Token(Token = "0x600935E")]
|
||||
[Address(RVA = "0x1718AD0", Offset = "0x17178D0", VA = "0x181718AD0")]
|
||||
private static ConnectionBase FindOrCreateFreeConnection(HTTPRequest request)
|
||||
{
|
||||
int num = 0;
|
||||
string keyForRequest = HTTPManager.GetKeyForRequest(request);
|
||||
bool flag = HTTPManager.Connections.TryGetValue(keyForRequest, num);
|
||||
if (!flag)
|
||||
{
|
||||
Dictionary<string, List<ConnectionBase>> connections = HTTPManager.Connections;
|
||||
List<ConnectionBase> list = new List((int)HTTPManager.maxConnectionPerServer);
|
||||
connections.Add(keyForRequest, list);
|
||||
}
|
||||
uint num2;
|
||||
if (num < (flag ? 1 : 0))
|
||||
{
|
||||
ThrowHelper.ThrowArgumentOutOfRangeException();
|
||||
bool flag2;
|
||||
if (flag2)
|
||||
{
|
||||
num++;
|
||||
}
|
||||
num++;
|
||||
num2 += (uint)8;
|
||||
}
|
||||
byte b = HTTPManager.maxConnectionPerServer;
|
||||
if (num == 0)
|
||||
{
|
||||
ThrowHelper.ThrowArgumentOutOfRangeException();
|
||||
bool flag3;
|
||||
bool flag4;
|
||||
if (num != 0 && flag3 && flag4)
|
||||
{
|
||||
int num3 = 0;
|
||||
if (!(num == num3))
|
||||
{
|
||||
if (request.<IsRedirected>k__BackingField)
|
||||
{
|
||||
}
|
||||
string host = request.<Uri>k__BackingField.Host;
|
||||
string text;
|
||||
if (text.Equals(host, StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
num++;
|
||||
num2 += (uint)8;
|
||||
while (num != 0)
|
||||
{
|
||||
}
|
||||
if (num == 0)
|
||||
{
|
||||
byte b2 = HTTPManager.maxConnectionPerServer;
|
||||
if (num < (int)b2)
|
||||
{
|
||||
if (request.<IsRedirected>k__BackingField)
|
||||
{
|
||||
}
|
||||
if (!request.<Uri>k__BackingField.IsFile || Application.platform == RuntimePlatform.WebGLPlayer)
|
||||
{
|
||||
}
|
||||
HTTPConnection httpconnection = new HTTPConnection(keyForRequest);
|
||||
}
|
||||
}
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600935F RID: 37727 RVA: 0x001E3E30 File Offset: 0x001E2030
|
||||
[Token(Token = "0x600935F")]
|
||||
[Address(RVA = "0x1718950", Offset = "0x1717750", VA = "0x181718950")]
|
||||
private static bool CanProcessFromQueue()
|
||||
{
|
||||
int num = 0;
|
||||
List<HTTPRequest> requestQueue = HTTPManager.RequestQueue;
|
||||
List<HTTPRequest> requestQueue2 = HTTPManager.RequestQueue;
|
||||
ConnectionBase connectionBase;
|
||||
if (connectionBase == 0)
|
||||
{
|
||||
num++;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
// Token: 0x06009360 RID: 37728 RVA: 0x001E3E60 File Offset: 0x001E2060
|
||||
[Token(Token = "0x6009360")]
|
||||
[Address(RVA = "0x171AD00", Offset = "0x1719B00", VA = "0x18171AD00")]
|
||||
private static void RecycleConnection(ConnectionBase conn)
|
||||
{
|
||||
HTTPConnectionRecycledDelegate httpconnectionRecycledDelegate;
|
||||
httpconnectionRecycledDelegate.method_ptr = ldftn(OnConnectionRecylced);
|
||||
httpconnectionRecycledDelegate.method = ldftn(OnConnectionRecylced);
|
||||
httpconnectionRecycledDelegate.m_target = (ulong)0L;
|
||||
conn.Recycle(httpconnectionRecycledDelegate);
|
||||
}
|
||||
|
||||
// Token: 0x06009361 RID: 37729 RVA: 0x001E3E9C File Offset: 0x001E209C
|
||||
[Token(Token = "0x6009361")]
|
||||
[Address(RVA = "0x1719980", Offset = "0x1718780", VA = "0x181719980")]
|
||||
private static void OnConnectionRecylced(ConnectionBase conn)
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
List<ConnectionBase> recycledConnections = HTTPManager.RecycledConnections;
|
||||
HTTPManager.RecycledConnections.Add(conn);
|
||||
Monitor.Exit(recycledConnections);
|
||||
}
|
||||
while (num != 0);
|
||||
}
|
||||
|
||||
// Token: 0x06009362 RID: 37730 RVA: 0x001E3ECC File Offset: 0x001E20CC
|
||||
[Token(Token = "0x6009362")]
|
||||
[Address(RVA = "0x1718FF0", Offset = "0x1717DF0", VA = "0x181718FF0")]
|
||||
internal static ConnectionBase GetConnectionWith(HTTPRequest request)
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
object locker = HTTPManager.Locker;
|
||||
List<ConnectionBase> activeConnections = HTTPManager.ActiveConnections;
|
||||
List<ConnectionBase> activeConnections2 = HTTPManager.ActiveConnections;
|
||||
num++;
|
||||
Monitor.Exit(locker);
|
||||
}
|
||||
while (num != 0);
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x06009363 RID: 37731 RVA: 0x001E3F0C File Offset: 0x001E210C
|
||||
[Token(Token = "0x6009363")]
|
||||
[Address(RVA = "0x171AD70", Offset = "0x1719B70", VA = "0x18171AD70")]
|
||||
internal static bool RemoveFromQueue(HTTPRequest request)
|
||||
{
|
||||
return HTTPManager.RequestQueue.Remove(request);
|
||||
}
|
||||
|
||||
// Token: 0x06009364 RID: 37732 RVA: 0x001E3F2C File Offset: 0x001E212C
|
||||
[Token(Token = "0x6009364")]
|
||||
[Address(RVA = "0x1719730", Offset = "0x1718530", VA = "0x181719730")]
|
||||
internal static string GetRootCacheFolder()
|
||||
{
|
||||
return HTTPManager.<RootCacheFolderProvider>k__BackingField();
|
||||
}
|
||||
|
||||
// Token: 0x06009365 RID: 37733 RVA: 0x001E3F60 File Offset: 0x001E2160
|
||||
[Token(Token = "0x6009365")]
|
||||
[Address(RVA = "0x1719C50", Offset = "0x1718A50", VA = "0x181719C50")]
|
||||
public static void OnUpdate()
|
||||
{
|
||||
object locker;
|
||||
do
|
||||
{
|
||||
int num = 0;
|
||||
if (!Monitor.TryEnter(HTTPManager.Locker))
|
||||
{
|
||||
break;
|
||||
}
|
||||
List<ConnectionBase> activeConnections = HTTPManager.ActiveConnections;
|
||||
List<ConnectionBase> activeConnections2 = HTTPManager.ActiveConnections;
|
||||
bool flag = HTTPManager.<EnablePrivateBrowsing>k__BackingField;
|
||||
if (flag <= true)
|
||||
{
|
||||
TimeSpan timeSpan = HTTPManager.<ConnectTimeout>k__BackingField;
|
||||
bool flag2;
|
||||
if (flag2)
|
||||
{
|
||||
}
|
||||
TimeSpan timeSpan2 = HTTPManager.<ConnectTimeout>k__BackingField;
|
||||
DateTime utcNow = DateTime.UtcNow;
|
||||
TimeSpan timeSpan3 = HTTPManager.<ConnectTimeout>k__BackingField;
|
||||
TimeSpan timeSpan4;
|
||||
if (timeSpan4 > timeSpan3)
|
||||
{
|
||||
byte b = HTTPManager.maxConnectionPerServer;
|
||||
}
|
||||
num++;
|
||||
BestHTTP.Logger.ILogger logger = HTTPManager.Logger;
|
||||
num++;
|
||||
TimeSpan timeSpan5 = HTTPManager.<ConnectTimeout>k__BackingField;
|
||||
}
|
||||
num++;
|
||||
num++;
|
||||
TimeSpan timeSpan6 = HTTPManager.<ConnectTimeout>k__BackingField;
|
||||
if (flag)
|
||||
{
|
||||
while (!flag)
|
||||
{
|
||||
}
|
||||
}
|
||||
TimeSpan timeSpan7 = HTTPManager.<ConnectTimeout>k__BackingField;
|
||||
TimeSpan timeSpan8 = HTTPManager.<ConnectTimeout>k__BackingField;
|
||||
while (!flag)
|
||||
{
|
||||
}
|
||||
while (!flag)
|
||||
{
|
||||
}
|
||||
DateTime utcNow2 = DateTime.UtcNow;
|
||||
TimeSpan timeSpan9;
|
||||
TimeSpan timeSpan10;
|
||||
if (timeSpan9 > timeSpan10)
|
||||
{
|
||||
BestHTTP.Logger.ILogger logger2 = HTTPManager.Logger;
|
||||
TimeSpan timeSpan11 = HTTPManager.<ConnectTimeout>k__BackingField;
|
||||
TimeSpan timeSpan12 = HTTPManager.<ConnectTimeout>k__BackingField;
|
||||
}
|
||||
num++;
|
||||
BestHTTP.Logger.ILogger logger3 = HTTPManager.Logger;
|
||||
TimeSpan timeSpan13 = HTTPManager.<ConnectTimeout>k__BackingField;
|
||||
int num2 = 0;
|
||||
if (typeof(HTTPManager).TypeHandle != 0)
|
||||
{
|
||||
goto IL_2F0;
|
||||
}
|
||||
if (num != -1)
|
||||
{
|
||||
}
|
||||
int num3;
|
||||
if (Monitor.TryEnter(HTTPManager.RecycledConnections))
|
||||
{
|
||||
List<ConnectionBase> recycledConnections = HTTPManager.RecycledConnections;
|
||||
List<ConnectionBase> recycledConnections2 = HTTPManager.RecycledConnections;
|
||||
List<ConnectionBase> recycledConnections3 = HTTPManager.RecycledConnections;
|
||||
bool flag3;
|
||||
if (flag3)
|
||||
{
|
||||
List<ConnectionBase> activeConnections3 = HTTPManager.ActiveConnections;
|
||||
List<ConnectionBase> freeConnections = HTTPManager.FreeConnections;
|
||||
}
|
||||
num2++;
|
||||
HTTPManager.RecycledConnections.Clear();
|
||||
num++;
|
||||
num3 = 0;
|
||||
List<ConnectionBase> recycledConnections4 = HTTPManager.RecycledConnections;
|
||||
Monitor.Exit(recycledConnections4);
|
||||
if (recycledConnections4 != 0)
|
||||
{
|
||||
goto IL_31A;
|
||||
}
|
||||
if (num != -1)
|
||||
{
|
||||
}
|
||||
}
|
||||
List<ConnectionBase> freeConnections2 = HTTPManager.FreeConnections;
|
||||
List<ConnectionBase> freeConnections3 = HTTPManager.FreeConnections;
|
||||
List<ConnectionBase> freeConnections4 = HTTPManager.FreeConnections;
|
||||
byte b2 = HTTPManager.maxConnectionPerServer;
|
||||
Dictionary<string, List<ConnectionBase>> connections = HTTPManager.Connections;
|
||||
bool flag4;
|
||||
if (flag4)
|
||||
{
|
||||
}
|
||||
HTTPManager.FreeConnections.RemoveAt(num3);
|
||||
num3++;
|
||||
List<HTTPRequest> requestQueue = HTTPManager.RequestQueue;
|
||||
List<HTTPRequest> requestQueue2 = HTTPManager.RequestQueue;
|
||||
ConnectionBase connectionBase;
|
||||
if (connectionBase == 0)
|
||||
{
|
||||
num3++;
|
||||
}
|
||||
List<HTTPRequest> requestQueue3 = HTTPManager.RequestQueue;
|
||||
Predicate<HTTPRequest> predicate;
|
||||
if (HTTPManager.<>c.<>9__109_0 == 0)
|
||||
{
|
||||
predicate = delegate(HTTPRequest req)
|
||||
{
|
||||
throw new NullReferenceException();
|
||||
};
|
||||
HTTPManager.<>c.<>9__109_0 = predicate;
|
||||
}
|
||||
if (requestQueue3.Find(predicate) != 0)
|
||||
{
|
||||
List<HTTPRequest> requestQueue4 = HTTPManager.RequestQueue;
|
||||
Comparison<HTTPRequest> comparison;
|
||||
if (HTTPManager.<>c.<>9__109_1 == 0)
|
||||
{
|
||||
comparison = (HTTPRequest req1, HTTPRequest req2) => req1.<Priority>k__BackingField;
|
||||
HTTPManager.<>c.<>9__109_1 = comparison;
|
||||
}
|
||||
requestQueue4.Sort(comparison);
|
||||
}
|
||||
HTTPRequest[] array = HTTPManager.RequestQueue.ToArray();
|
||||
HTTPManager.RequestQueue.Clear();
|
||||
if (num3 < array.Length)
|
||||
{
|
||||
HTTPRequest httprequest = HTTPManager.SendRequest(array[num3]);
|
||||
num3++;
|
||||
}
|
||||
locker = HTTPManager.Locker;
|
||||
Monitor.Exit(locker);
|
||||
}
|
||||
while (locker != 0);
|
||||
HTTPManager.heartbeats.Update();
|
||||
VariableSizedBufferPool.Maintain();
|
||||
return;
|
||||
IL_2F0:
|
||||
throw new NullReferenceException();
|
||||
IL_31A:
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x06009366 RID: 37734 RVA: 0x001E42E0 File Offset: 0x001E24E0
|
||||
[Token(Token = "0x6009366")]
|
||||
[Address(RVA = "0x1719AB0", Offset = "0x17188B0", VA = "0x181719AB0")]
|
||||
public static void OnQuit()
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
object locker = HTTPManager.Locker;
|
||||
HTTPCacheService.SaveLibrary();
|
||||
CookieJar.Persist();
|
||||
HTTPManager.AbortAll(true);
|
||||
HTTPManager.OnUpdate();
|
||||
Monitor.Exit(locker);
|
||||
}
|
||||
while (num != 0);
|
||||
}
|
||||
|
||||
// Token: 0x06009367 RID: 37735 RVA: 0x001E431C File Offset: 0x001E251C
|
||||
[Token(Token = "0x6009367")]
|
||||
[Address(RVA = "0x1718490", Offset = "0x1717290", VA = "0x181718490")]
|
||||
public static void AbortAll(bool allowCallbacks = false)
|
||||
{
|
||||
do
|
||||
{
|
||||
int num = 0;
|
||||
object locker = HTTPManager.Locker;
|
||||
HTTPRequest[] array = HTTPManager.RequestQueue.ToArray();
|
||||
HTTPManager.RequestQueue.Clear();
|
||||
if (num < array.Length)
|
||||
{
|
||||
HTTPRequest httprequest = array[num];
|
||||
httprequest.<Callback>k__BackingField = num;
|
||||
httprequest.Abort();
|
||||
num++;
|
||||
num++;
|
||||
}
|
||||
Dictionary<string, List<ConnectionBase>> connections = HTTPManager.Connections;
|
||||
bool flag;
|
||||
if (flag)
|
||||
{
|
||||
bool flag2;
|
||||
if (!flag2 || flag2)
|
||||
{
|
||||
}
|
||||
if ((uint)(-1) != 0U)
|
||||
{
|
||||
goto IL_A2;
|
||||
}
|
||||
if ((ulong)((uint)(-1)) != (ulong)(-1L))
|
||||
{
|
||||
}
|
||||
}
|
||||
if ((uint)(-1) != 0U)
|
||||
{
|
||||
goto IL_AE;
|
||||
}
|
||||
if ((ulong)((uint)(-1)) != (ulong)(-1L))
|
||||
{
|
||||
}
|
||||
HTTPManager.Connections.Clear();
|
||||
}
|
||||
while ((uint)(-1) != 0U);
|
||||
return;
|
||||
IL_A2:
|
||||
throw new NullReferenceException();
|
||||
IL_AE:
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0400648F RID: 25743
|
||||
[Token(Token = "0x400648F")]
|
||||
private static byte maxConnectionPerServer;
|
||||
|
||||
// Token: 0x0400649A RID: 25754
|
||||
[Token(Token = "0x400649A")]
|
||||
private static HeartbeatManager heartbeats;
|
||||
|
||||
// Token: 0x0400649B RID: 25755
|
||||
[Token(Token = "0x400649B")]
|
||||
private static BestHTTP.Logger.ILogger logger;
|
||||
|
||||
// Token: 0x040064A1 RID: 25761
|
||||
[Token(Token = "0x40064A1")]
|
||||
public static bool TryToMinimizeTCPLatency;
|
||||
|
||||
// Token: 0x040064A2 RID: 25762
|
||||
[Token(Token = "0x40064A2")]
|
||||
public static int SendBufferSize;
|
||||
|
||||
// Token: 0x040064A3 RID: 25763
|
||||
[Token(Token = "0x40064A3")]
|
||||
public static int ReceiveBufferSize;
|
||||
|
||||
// Token: 0x040064A4 RID: 25764
|
||||
[Token(Token = "0x40064A4")]
|
||||
public static IIOService IOService;
|
||||
|
||||
// Token: 0x040064A6 RID: 25766
|
||||
[Token(Token = "0x40064A6")]
|
||||
private static Dictionary<string, List<ConnectionBase>> Connections = new Dictionary();
|
||||
|
||||
// Token: 0x040064A7 RID: 25767
|
||||
[Token(Token = "0x40064A7")]
|
||||
private static List<ConnectionBase> ActiveConnections = new List();
|
||||
|
||||
// Token: 0x040064A8 RID: 25768
|
||||
[Token(Token = "0x40064A8")]
|
||||
private static List<ConnectionBase> FreeConnections = new List();
|
||||
|
||||
// Token: 0x040064A9 RID: 25769
|
||||
[Token(Token = "0x40064A9")]
|
||||
private static List<ConnectionBase> RecycledConnections = new List();
|
||||
|
||||
// Token: 0x040064AA RID: 25770
|
||||
[Token(Token = "0x40064AA")]
|
||||
private static List<HTTPRequest> RequestQueue = new List();
|
||||
|
||||
// Token: 0x040064AB RID: 25771
|
||||
[Token(Token = "0x40064AB")]
|
||||
private static bool IsCallingCallbacks;
|
||||
|
||||
// Token: 0x040064AC RID: 25772
|
||||
[Token(Token = "0x40064AC")]
|
||||
internal static object Locker = new object();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,35 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP
|
||||
{
|
||||
// Token: 0x02001895 RID: 6293
|
||||
[Token(Token = "0x2001895")]
|
||||
public enum HTTPMethods : byte
|
||||
{
|
||||
// Token: 0x040064B3 RID: 25779
|
||||
[Token(Token = "0x40064B3")]
|
||||
Get,
|
||||
// Token: 0x040064B4 RID: 25780
|
||||
[Token(Token = "0x40064B4")]
|
||||
Head,
|
||||
// Token: 0x040064B5 RID: 25781
|
||||
[Token(Token = "0x40064B5")]
|
||||
Post,
|
||||
// Token: 0x040064B6 RID: 25782
|
||||
[Token(Token = "0x40064B6")]
|
||||
Put,
|
||||
// Token: 0x040064B7 RID: 25783
|
||||
[Token(Token = "0x40064B7")]
|
||||
Delete,
|
||||
// Token: 0x040064B8 RID: 25784
|
||||
[Token(Token = "0x40064B8")]
|
||||
Patch,
|
||||
// Token: 0x040064B9 RID: 25785
|
||||
[Token(Token = "0x40064B9")]
|
||||
Merge,
|
||||
// Token: 0x040064BA RID: 25786
|
||||
[Token(Token = "0x40064BA")]
|
||||
Options
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,96 @@
|
||||
using System;
|
||||
using System.IO;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP
|
||||
{
|
||||
// Token: 0x02001897 RID: 6295
|
||||
[Token(Token = "0x2001897")]
|
||||
public static class HTTPProtocolFactory
|
||||
{
|
||||
// Token: 0x0600936E RID: 37742 RVA: 0x001E447C File Offset: 0x001E267C
|
||||
[Token(Token = "0x600936E")]
|
||||
[Address(RVA = "0x171D4C0", Offset = "0x171C2C0", VA = "0x18171D4C0")]
|
||||
public static HTTPResponse Get(SupportedProtocols protocol, HTTPRequest request, Stream stream, bool isStreamed, bool isFromCache)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600936E)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling BestHTTP.HTTPResponse BestHTTP.HTTPProtocolFactory::Get(BestHTTP.SupportedProtocols,BestHTTP.HTTPRequest,System.IO.Stream,System.Boolean,System.Boolean)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
Block_0:
|
||||
stfld:Stream(ReadOnlyBufferedStream::stream, ldloc:ReadOnlyBufferedStream(var_0), ldloc:Stream(stream))
|
||||
stfld:uint8[](ReadOnlyBufferedStream::buf, ldloc:ReadOnlyBufferedStream(var_0), ldloc:uint8[](var_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: 0x0600936F RID: 37743 RVA: 0x001E449C File Offset: 0x001E269C
|
||||
[Token(Token = "0x600936F")]
|
||||
[Address(RVA = "0x171D3B0", Offset = "0x171C1B0", VA = "0x18171D3B0")]
|
||||
public static SupportedProtocols GetProtocolFromUri(Uri uri)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600936F)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling BestHTTP.SupportedProtocols BestHTTP.HTTPProtocolFactory::GetProtocolFromUri(System.Uri)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_41:
|
||||
stloc:Exception(var_2_4B, newobj:Exception(Exception::.ctor, ldstr:string("Malformed URI in GetProtocolFromUri")))
|
||||
}
|
||||
|
||||
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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: 0x06009370 RID: 37744 RVA: 0x001E44F4 File Offset: 0x001E26F4
|
||||
[Token(Token = "0x6009370")]
|
||||
[Address(RVA = "0x171D620", Offset = "0x171C420", VA = "0x18171D620")]
|
||||
public static bool IsSecureProtocol(Uri uri)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (06009370)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean BestHTTP.HTTPProtocolFactory::IsSecureProtocol(System.Uri)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_43:
|
||||
stloc:Exception(var_3_4D, newobj:Exception(Exception::.ctor, ldstr:string("Malformed URI in IsSecureProtocol")))
|
||||
}
|
||||
|
||||
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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
|
||||
*/;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,328 @@
|
||||
using System;
|
||||
using System.IO;
|
||||
using System.Text;
|
||||
using BestHTTP.Authentication;
|
||||
using BestHTTP.Extensions;
|
||||
using BestHTTP.Logger;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP
|
||||
{
|
||||
// Token: 0x02001899 RID: 6297
|
||||
[Token(Token = "0x2001899")]
|
||||
public sealed class HTTPProxy : Proxy
|
||||
{
|
||||
// Token: 0x17001758 RID: 5976
|
||||
// (get) Token: 0x06009378 RID: 37752 RVA: 0x001E45C4 File Offset: 0x001E27C4
|
||||
// (set) Token: 0x06009379 RID: 37753 RVA: 0x001E45D8 File Offset: 0x001E27D8
|
||||
[Token(Token = "0x17001758")]
|
||||
public bool IsTransparent
|
||||
{
|
||||
[Token(Token = "0x6009378")]
|
||||
[Address(RVA = "0x3F71D0", Offset = "0x3F5FD0", VA = "0x1803F71D0")]
|
||||
get;
|
||||
[Token(Token = "0x6009379")]
|
||||
[Address(RVA = "0x41EF80", Offset = "0x41DD80", VA = "0x18041EF80")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001759 RID: 5977
|
||||
// (get) Token: 0x0600937A RID: 37754 RVA: 0x001E45EC File Offset: 0x001E27EC
|
||||
// (set) Token: 0x0600937B RID: 37755 RVA: 0x001E4600 File Offset: 0x001E2800
|
||||
[Token(Token = "0x17001759")]
|
||||
public bool SendWholeUri
|
||||
{
|
||||
[Token(Token = "0x600937A")]
|
||||
[Address(RVA = "0x41ED50", Offset = "0x41DB50", VA = "0x18041ED50")]
|
||||
get;
|
||||
[Token(Token = "0x600937B")]
|
||||
[Address(RVA = "0x41EF90", Offset = "0x41DD90", VA = "0x18041EF90")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x1700175A RID: 5978
|
||||
// (get) Token: 0x0600937C RID: 37756 RVA: 0x001E4614 File Offset: 0x001E2814
|
||||
// (set) Token: 0x0600937D RID: 37757 RVA: 0x001E4628 File Offset: 0x001E2828
|
||||
[Token(Token = "0x1700175A")]
|
||||
public bool NonTransparentForHTTPS
|
||||
{
|
||||
[Token(Token = "0x600937C")]
|
||||
[Address(RVA = "0x439BB0", Offset = "0x4389B0", VA = "0x180439BB0")]
|
||||
get;
|
||||
[Token(Token = "0x600937D")]
|
||||
[Address(RVA = "0x439DF0", Offset = "0x438BF0", VA = "0x180439DF0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x0600937E RID: 37758 RVA: 0x001E463C File Offset: 0x001E283C
|
||||
[Token(Token = "0x600937E")]
|
||||
[Address(RVA = "0x171E970", Offset = "0x171D770", VA = "0x18171E970")]
|
||||
public HTTPProxy(Uri address)
|
||||
{
|
||||
int num = 0;
|
||||
base..ctor(address, num);
|
||||
this.IsTransparent = false;
|
||||
this.NonTransparentForHTTPS = true;
|
||||
}
|
||||
|
||||
// Token: 0x0600937F RID: 37759 RVA: 0x001E4664 File Offset: 0x001E2864
|
||||
[Token(Token = "0x600937F")]
|
||||
[Address(RVA = "0x171E9E0", Offset = "0x171D7E0", VA = "0x18171E9E0")]
|
||||
public HTTPProxy(Uri address, Credentials credentials)
|
||||
: base(address, credentials)
|
||||
{
|
||||
this.IsTransparent = false;
|
||||
this.NonTransparentForHTTPS = true;
|
||||
}
|
||||
|
||||
// Token: 0x06009380 RID: 37760 RVA: 0x001E4688 File Offset: 0x001E2888
|
||||
[Token(Token = "0x6009380")]
|
||||
[Address(RVA = "0x171EA50", Offset = "0x171D850", VA = "0x18171EA50")]
|
||||
public HTTPProxy(Uri address, Credentials credentials, bool isTransparent)
|
||||
: base(address, credentials)
|
||||
{
|
||||
this.IsTransparent = isTransparent;
|
||||
this.SendWholeUri = true;
|
||||
}
|
||||
|
||||
// Token: 0x06009381 RID: 37761 RVA: 0x001E46AC File Offset: 0x001E28AC
|
||||
[Token(Token = "0x6009381")]
|
||||
[Address(RVA = "0x171EA10", Offset = "0x171D810", VA = "0x18171EA10")]
|
||||
public HTTPProxy(Uri address, Credentials credentials, bool isTransparent, bool sendWholeUri)
|
||||
: base(address, credentials)
|
||||
{
|
||||
this.IsTransparent = isTransparent;
|
||||
this.SendWholeUri = false;
|
||||
this.NonTransparentForHTTPS = true;
|
||||
}
|
||||
|
||||
// Token: 0x06009382 RID: 37762 RVA: 0x001E46D8 File Offset: 0x001E28D8
|
||||
[Token(Token = "0x6009382")]
|
||||
[Address(RVA = "0x171E9A0", Offset = "0x171D7A0", VA = "0x18171E9A0")]
|
||||
public HTTPProxy(Uri address, Credentials credentials, bool isTransparent, bool sendWholeUri, bool nonTransparentForHTTPS)
|
||||
: base(address, credentials)
|
||||
{
|
||||
this.SendWholeUri = false;
|
||||
this.IsTransparent = isTransparent;
|
||||
this.NonTransparentForHTTPS = false;
|
||||
}
|
||||
|
||||
// Token: 0x06009383 RID: 37763 RVA: 0x001E4704 File Offset: 0x001E2904
|
||||
[Token(Token = "0x6009383")]
|
||||
[Address(RVA = "0x171E8A0", Offset = "0x171D6A0", VA = "0x18171E8A0", Slot = "5")]
|
||||
internal override string GetRequestPath(Uri uri)
|
||||
{
|
||||
if (this.<SendWholeUri>k__BackingField)
|
||||
{
|
||||
return uri.OriginalString;
|
||||
}
|
||||
string parts = uri.GetParts(UriComponents.PathAndQuery, UriFormat.UriEscaped);
|
||||
return "/";
|
||||
}
|
||||
|
||||
// Token: 0x06009384 RID: 37764 RVA: 0x001E4738 File Offset: 0x001E2938
|
||||
[Token(Token = "0x6009384")]
|
||||
[Address(RVA = "0x171D720", Offset = "0x171C520", VA = "0x18171D720", Slot = "4")]
|
||||
internal override void Connect(Stream stream, HTTPRequest request)
|
||||
{
|
||||
for (;;)
|
||||
{
|
||||
int num = 0;
|
||||
if ((request.<IsRedirected>k__BackingField ? 1 : 0) != num)
|
||||
{
|
||||
}
|
||||
bool flag = HTTPProtocolFactory.IsSecureProtocol(request.<Uri>k__BackingField);
|
||||
if ((this.<IsTransparent>k__BackingField ? 1 : 0) == num || (flag && (this.<NonTransparentForHTTPS>k__BackingField ? 1 : 0) != num))
|
||||
{
|
||||
int uploadChunkSize = HTTPRequest.UploadChunkSize;
|
||||
WriteOnlyBufferedStream writeOnlyBufferedStream = new WriteOnlyBufferedStream(stream, uploadChunkSize);
|
||||
Encoding utf = Encoding.UTF8;
|
||||
BinaryWriter binaryWriter = new BinaryWriter(writeOnlyBufferedStream, utf);
|
||||
if (request.<IsRedirected>k__BackingField)
|
||||
{
|
||||
}
|
||||
string host = request.<Uri>k__BackingField.Host;
|
||||
if (request.<IsRedirected>k__BackingField)
|
||||
{
|
||||
}
|
||||
int port = request.<Uri>k__BackingField.Port;
|
||||
string text2;
|
||||
string text = string.Format("CONNECT {0}:{1} HTTP/1.1", host, text2);
|
||||
ILogger logger = HTTPManager.Logger;
|
||||
int num2 = 0;
|
||||
string text3 = "Sending " + text;
|
||||
if (num < num2)
|
||||
{
|
||||
num += num;
|
||||
num++;
|
||||
}
|
||||
if (num < text.m_stringLength)
|
||||
{
|
||||
char c = text[num];
|
||||
binaryWriter.Write(c != '\0');
|
||||
num++;
|
||||
c += c;
|
||||
}
|
||||
byte[] eol = HTTPRequest.EOL;
|
||||
binaryWriter.Write(eol);
|
||||
char c2;
|
||||
binaryWriter.Write(c2 != '\0');
|
||||
num++;
|
||||
byte[] eol2 = HTTPRequest.EOL;
|
||||
binaryWriter.Write(eol2);
|
||||
char c3;
|
||||
binaryWriter.Write(c3 != '\0');
|
||||
num++;
|
||||
byte[] eol3 = HTTPRequest.EOL;
|
||||
binaryWriter.Write(eol3);
|
||||
if (request.<IsRedirected>k__BackingField)
|
||||
{
|
||||
}
|
||||
string host2 = request.<Uri>k__BackingField.Host;
|
||||
if (request.<IsRedirected>k__BackingField)
|
||||
{
|
||||
}
|
||||
int port2 = request.<Uri>k__BackingField.Port;
|
||||
string text5;
|
||||
string text4 = string.Format("Host: {0}:{1}", host2, text5);
|
||||
if (num < text4.m_stringLength)
|
||||
{
|
||||
char c4 = text4[num];
|
||||
binaryWriter.Write(c4 != '\0');
|
||||
num++;
|
||||
}
|
||||
byte[] eol4 = HTTPRequest.EOL;
|
||||
binaryWriter.Write(eol4);
|
||||
if (binaryWriter == 0)
|
||||
{
|
||||
goto IL_227;
|
||||
}
|
||||
Stream outStream = binaryWriter.OutStream;
|
||||
if (outStream != 0)
|
||||
{
|
||||
if (outStream == 0)
|
||||
{
|
||||
goto IL_281;
|
||||
}
|
||||
if (outStream != (ulong)1L)
|
||||
{
|
||||
goto IL_227;
|
||||
}
|
||||
}
|
||||
string text6;
|
||||
if (DigestStore.Get(num) != 0 && text6 == 0)
|
||||
{
|
||||
string text7 = string.Format("Proxy-Authorization: {0}", text6);
|
||||
if (HTTPManager.Logger <= (ulong)1L)
|
||||
{
|
||||
ILogger logger2 = HTTPManager.Logger;
|
||||
string text8 = "Sending proxy authorization header: " + text7;
|
||||
}
|
||||
byte[] asciibytes = text7.GetASCIIBytes();
|
||||
binaryWriter.Write(asciibytes);
|
||||
byte[] eol5 = HTTPRequest.EOL;
|
||||
binaryWriter.Write(eol5);
|
||||
VariableSizedBufferPool.Release(asciibytes);
|
||||
goto IL_227;
|
||||
}
|
||||
goto IL_227;
|
||||
IL_31E:
|
||||
HTTPResponse <ProxyResponse>k__BackingField = request.<ProxyResponse>k__BackingField;
|
||||
int num3 = <ProxyResponse>k__BackingField.<StatusCode>k__BackingField;
|
||||
if (num3 != 407)
|
||||
{
|
||||
int num4 = <ProxyResponse>k__BackingField.<StatusCode>k__BackingField;
|
||||
if (num3 > 99)
|
||||
{
|
||||
if (num4 != 304)
|
||||
{
|
||||
goto IL_450;
|
||||
}
|
||||
num4 += num4;
|
||||
num3 += 13;
|
||||
num3 += 19;
|
||||
}
|
||||
}
|
||||
string text9 = DigestStore.FindBest(<ProxyResponse>k__BackingField.GetHeaderValues("proxy-authenticate"));
|
||||
if (text9 != 0)
|
||||
{
|
||||
goto IL_4E8;
|
||||
}
|
||||
Digest digest;
|
||||
digest.ParseChallange(text9);
|
||||
bool flag2;
|
||||
if (!flag2)
|
||||
{
|
||||
goto IL_4E8;
|
||||
}
|
||||
if (request.<Headers>k__BackingField != 0)
|
||||
{
|
||||
break;
|
||||
}
|
||||
continue;
|
||||
IL_227:
|
||||
byte[] eol6 = HTTPRequest.EOL;
|
||||
binaryWriter.Write(eol6);
|
||||
HTTPResponse httpresponse;
|
||||
request.<ProxyResponse>k__BackingField = httpresponse;
|
||||
httpresponse.Dispose();
|
||||
ILogger logger3 = HTTPManager.Logger;
|
||||
ulong num5;
|
||||
if ((ulong)num < num5)
|
||||
{
|
||||
num += num;
|
||||
num++;
|
||||
}
|
||||
int num6 = 0;
|
||||
if (num > 1)
|
||||
{
|
||||
goto IL_31E;
|
||||
}
|
||||
ILogger logger4 = HTTPManager.Logger;
|
||||
object[] array = new object[6];
|
||||
if ("Proxy returned - status code: " != 0)
|
||||
{
|
||||
goto IL_281;
|
||||
}
|
||||
IL_2DC:
|
||||
if (request.<ProxyResponse>k__BackingField.<StatusCode>k__BackingField != 0)
|
||||
{
|
||||
}
|
||||
if (" message: " != 0)
|
||||
{
|
||||
}
|
||||
if (request.<ProxyResponse>k__BackingField.<Message>k__BackingField != 0)
|
||||
{
|
||||
}
|
||||
if (" Body: " != 0)
|
||||
{
|
||||
}
|
||||
if (request.<ProxyResponse>k__BackingField.DataAsText != 0)
|
||||
{
|
||||
}
|
||||
num += num;
|
||||
num++;
|
||||
goto IL_31E;
|
||||
IL_281:
|
||||
int num7 = 0;
|
||||
Encoding utf2 = Encoding.UTF8;
|
||||
string text10 = num7 + ":" + num6;
|
||||
string text12;
|
||||
string text11 = "Basic " + text12;
|
||||
byte[] asciibytes2 = string.Format("Proxy-Authorization: {0}", text11).GetASCIIBytes();
|
||||
binaryWriter.Write(asciibytes2);
|
||||
byte[] array2 = HTTPRequest.EOL;
|
||||
binaryWriter.Write(array2);
|
||||
array2 += array2;
|
||||
goto IL_2DC;
|
||||
}
|
||||
return;
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
IL_450:
|
||||
throw new NullReferenceException();
|
||||
IL_4E8:
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,129 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP
|
||||
{
|
||||
// Token: 0x0200189A RID: 6298
|
||||
[Token(Token = "0x200189A")]
|
||||
public sealed class HTTPRange
|
||||
{
|
||||
// Token: 0x1700175B RID: 5979
|
||||
// (get) Token: 0x06009385 RID: 37765 RVA: 0x001E4D18 File Offset: 0x001E2F18
|
||||
// (set) Token: 0x06009386 RID: 37766 RVA: 0x001E4D2C File Offset: 0x001E2F2C
|
||||
[Token(Token = "0x1700175B")]
|
||||
public int FirstBytePos
|
||||
{
|
||||
[Token(Token = "0x6009385")]
|
||||
[Address(RVA = "0x3FA560", Offset = "0x3F9360", VA = "0x1803FA560")]
|
||||
get;
|
||||
[Token(Token = "0x6009386")]
|
||||
[Address(RVA = "0x536480", Offset = "0x535280", VA = "0x180536480")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x1700175C RID: 5980
|
||||
// (get) Token: 0x06009387 RID: 37767 RVA: 0x001E4D40 File Offset: 0x001E2F40
|
||||
// (set) Token: 0x06009388 RID: 37768 RVA: 0x001E4D54 File Offset: 0x001E2F54
|
||||
[Token(Token = "0x1700175C")]
|
||||
public int LastBytePos
|
||||
{
|
||||
[Token(Token = "0x6009387")]
|
||||
[Address(RVA = "0x495080", Offset = "0x493E80", VA = "0x180495080")]
|
||||
get;
|
||||
[Token(Token = "0x6009388")]
|
||||
[Address(RVA = "0x52EC20", Offset = "0x52DA20", VA = "0x18052EC20")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x1700175D RID: 5981
|
||||
// (get) Token: 0x06009389 RID: 37769 RVA: 0x001E4D68 File Offset: 0x001E2F68
|
||||
// (set) Token: 0x0600938A RID: 37770 RVA: 0x001E4D7C File Offset: 0x001E2F7C
|
||||
[Token(Token = "0x1700175D")]
|
||||
public int ContentLength
|
||||
{
|
||||
[Token(Token = "0x6009389")]
|
||||
[Address(RVA = "0x40B720", Offset = "0x40A520", VA = "0x18040B720")]
|
||||
get;
|
||||
[Token(Token = "0x600938A")]
|
||||
[Address(RVA = "0x41F740", Offset = "0x41E540", VA = "0x18041F740")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x1700175E RID: 5982
|
||||
// (get) Token: 0x0600938B RID: 37771 RVA: 0x001E4D90 File Offset: 0x001E2F90
|
||||
// (set) Token: 0x0600938C RID: 37772 RVA: 0x001E4DA4 File Offset: 0x001E2FA4
|
||||
[Token(Token = "0x1700175E")]
|
||||
public bool IsValid
|
||||
{
|
||||
[Token(Token = "0x600938B")]
|
||||
[Address(RVA = "0x751340", Offset = "0x750140", VA = "0x180751340")]
|
||||
get;
|
||||
[Token(Token = "0x600938C")]
|
||||
[Address(RVA = "0x8EE5B0", Offset = "0x8ED3B0", VA = "0x1808EE5B0")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x0600938D RID: 37773 RVA: 0x001E4DB8 File Offset: 0x001E2FB8
|
||||
[Token(Token = "0x600938D")]
|
||||
[Address(RVA = "0x171ED10", Offset = "0x171DB10", VA = "0x18171ED10")]
|
||||
internal HTTPRange()
|
||||
{
|
||||
this.ContentLength = (int)((ulong)4294967295L);
|
||||
this.IsValid = false;
|
||||
}
|
||||
|
||||
// Token: 0x0600938E RID: 37774 RVA: 0x001E4DE4 File Offset: 0x001E2FE4
|
||||
[Token(Token = "0x600938E")]
|
||||
[Address(RVA = "0x171EC80", Offset = "0x171DA80", VA = "0x18171EC80")]
|
||||
internal HTTPRange(int contentLength)
|
||||
{
|
||||
this.ContentLength = contentLength;
|
||||
this.IsValid = false;
|
||||
}
|
||||
|
||||
// Token: 0x0600938F RID: 37775 RVA: 0x001E4E08 File Offset: 0x001E3008
|
||||
[Token(Token = "0x600938F")]
|
||||
[Address(RVA = "0x171ECB0", Offset = "0x171DAB0", VA = "0x18171ECB0")]
|
||||
internal HTTPRange(int firstBytePosition, int lastBytePosition, int contentLength)
|
||||
{
|
||||
this.FirstBytePos = firstBytePosition;
|
||||
this.LastBytePos = lastBytePosition;
|
||||
this.ContentLength = contentLength;
|
||||
if (firstBytePosition > lastBytePosition)
|
||||
{
|
||||
}
|
||||
bool flag = contentLength > lastBytePosition;
|
||||
this.IsValid = flag;
|
||||
}
|
||||
|
||||
// Token: 0x06009390 RID: 37776 RVA: 0x001E4E40 File Offset: 0x001E3040
|
||||
[Token(Token = "0x6009390")]
|
||||
[Address(RVA = "0x171EA80", Offset = "0x171D880", VA = "0x18171EA80", Slot = "3")]
|
||||
public override string ToString()
|
||||
{
|
||||
object[] array = new object[4];
|
||||
int num = this.<FirstBytePos>k__BackingField;
|
||||
if (array != 0)
|
||||
{
|
||||
}
|
||||
array[0] = array;
|
||||
int num2 = this.<LastBytePos>k__BackingField;
|
||||
if (num2 != 0)
|
||||
{
|
||||
}
|
||||
array[1] = num2;
|
||||
int num3 = this.<ContentLength>k__BackingField;
|
||||
num2 = num3;
|
||||
if (num3 != 0)
|
||||
{
|
||||
}
|
||||
array[2] = num2;
|
||||
bool flag = this.<IsValid>k__BackingField;
|
||||
if (flag)
|
||||
{
|
||||
}
|
||||
array[3] = flag;
|
||||
return string.Format("{0}-{1}/{2} (valid: {3})", array);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,1927 @@
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Runtime.CompilerServices;
|
||||
using System.Security.Cryptography.X509Certificates;
|
||||
using System.Text;
|
||||
using BestHTTP.Authentication;
|
||||
using BestHTTP.Cookies;
|
||||
using BestHTTP.Extensions;
|
||||
using BestHTTP.Forms;
|
||||
using BestHTTP.Logger;
|
||||
using Cpp2IlInjected;
|
||||
using Hjg.Pngcs.Chunks;
|
||||
using Org.BouncyCastle.Crypto.Tls;
|
||||
|
||||
namespace BestHTTP
|
||||
{
|
||||
// Token: 0x020018A2 RID: 6306
|
||||
[Token(Token = "0x20018A2")]
|
||||
public sealed class HTTPRequest : IEnumerator, IEnumerator<HTTPRequest>, IDisposable
|
||||
{
|
||||
// Token: 0x1700175F RID: 5983
|
||||
// (get) Token: 0x060093A9 RID: 37801 RVA: 0x001E5438 File Offset: 0x001E3638
|
||||
// (set) Token: 0x060093AA RID: 37802 RVA: 0x001E544C File Offset: 0x001E364C
|
||||
[Token(Token = "0x1700175F")]
|
||||
public Uri Uri
|
||||
{
|
||||
[Token(Token = "0x60093A9")]
|
||||
[Address(RVA = "0x3F6E20", Offset = "0x3F5C20", VA = "0x1803F6E20")]
|
||||
get;
|
||||
[Token(Token = "0x60093AA")]
|
||||
[Address(RVA = "0x3F7200", Offset = "0x3F6000", VA = "0x1803F7200")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001760 RID: 5984
|
||||
// (get) Token: 0x060093AB RID: 37803 RVA: 0x001E5460 File Offset: 0x001E3660
|
||||
// (set) Token: 0x060093AC RID: 37804 RVA: 0x001E5474 File Offset: 0x001E3674
|
||||
[Token(Token = "0x17001760")]
|
||||
public HTTPMethods MethodType
|
||||
{
|
||||
[Token(Token = "0x60093AB")]
|
||||
[Address(RVA = "0x42C2C0", Offset = "0x42B0C0", VA = "0x18042C2C0")]
|
||||
get;
|
||||
[Token(Token = "0x60093AC")]
|
||||
[Address(RVA = "0x43DE90", Offset = "0x43CC90", VA = "0x18043DE90")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001761 RID: 5985
|
||||
// (get) Token: 0x060093AD RID: 37805 RVA: 0x001E5488 File Offset: 0x001E3688
|
||||
// (set) Token: 0x060093AE RID: 37806 RVA: 0x001E549C File Offset: 0x001E369C
|
||||
[Token(Token = "0x17001761")]
|
||||
public byte[] RawData
|
||||
{
|
||||
[Token(Token = "0x60093AD")]
|
||||
[Address(RVA = "0x3F6400", Offset = "0x3F5200", VA = "0x1803F6400")]
|
||||
get;
|
||||
[Token(Token = "0x60093AE")]
|
||||
[Address(RVA = "0x460F90", Offset = "0x45FD90", VA = "0x180460F90")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001762 RID: 5986
|
||||
// (get) Token: 0x060093AF RID: 37807 RVA: 0x001E54B0 File Offset: 0x001E36B0
|
||||
// (set) Token: 0x060093B0 RID: 37808 RVA: 0x001E54C4 File Offset: 0x001E36C4
|
||||
[Token(Token = "0x17001762")]
|
||||
public Stream UploadStream
|
||||
{
|
||||
[Token(Token = "0x60093AF")]
|
||||
[Address(RVA = "0x3F63E0", Offset = "0x3F51E0", VA = "0x1803F63E0")]
|
||||
get;
|
||||
[Token(Token = "0x60093B0")]
|
||||
[Address(RVA = "0x409C60", Offset = "0x408A60", VA = "0x180409C60")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001763 RID: 5987
|
||||
// (get) Token: 0x060093B1 RID: 37809 RVA: 0x001E54D8 File Offset: 0x001E36D8
|
||||
// (set) Token: 0x060093B2 RID: 37810 RVA: 0x001E54EC File Offset: 0x001E36EC
|
||||
[Token(Token = "0x17001763")]
|
||||
public bool DisposeUploadStream
|
||||
{
|
||||
[Token(Token = "0x60093B1")]
|
||||
[Address(RVA = "0x4364F0", Offset = "0x4352F0", VA = "0x1804364F0")]
|
||||
get;
|
||||
[Token(Token = "0x60093B2")]
|
||||
[Address(RVA = "0x436790", Offset = "0x435590", VA = "0x180436790")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001764 RID: 5988
|
||||
// (get) Token: 0x060093B3 RID: 37811 RVA: 0x001E5500 File Offset: 0x001E3700
|
||||
// (set) Token: 0x060093B4 RID: 37812 RVA: 0x001E5514 File Offset: 0x001E3714
|
||||
[Token(Token = "0x17001764")]
|
||||
public bool UseUploadStreamLength
|
||||
{
|
||||
[Token(Token = "0x60093B3")]
|
||||
[Address(RVA = "0x4364D0", Offset = "0x4352D0", VA = "0x1804364D0")]
|
||||
get;
|
||||
[Token(Token = "0x60093B4")]
|
||||
[Address(RVA = "0x436770", Offset = "0x435570", VA = "0x180436770")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001765 RID: 5989
|
||||
// (get) Token: 0x060093B5 RID: 37813 RVA: 0x001E5528 File Offset: 0x001E3728
|
||||
// (set) Token: 0x060093B6 RID: 37814 RVA: 0x001E553C File Offset: 0x001E373C
|
||||
[Token(Token = "0x17001765")]
|
||||
public bool IsKeepAlive
|
||||
{
|
||||
[Token(Token = "0x60093B5")]
|
||||
[Address(RVA = "0x1723210", Offset = "0x1722010", VA = "0x181723210")]
|
||||
get
|
||||
{
|
||||
return this.isKeepAlive;
|
||||
}
|
||||
[Token(Token = "0x60093B6")]
|
||||
[Address(RVA = "0x1723640", Offset = "0x1722440", VA = "0x181723640")]
|
||||
set
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (060093B6)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.HTTPRequest::set_IsKeepAlive(System.Boolean)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_11:
|
||||
stloc:NotSupportedException(var_0_1B, newobj:NotSupportedException(NotSupportedException::.ctor, ldstr:string("Changing the IsKeepAlive property while processing the request is not supported.")))
|
||||
}
|
||||
|
||||
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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: 0x17001766 RID: 5990
|
||||
// (get) Token: 0x060093B7 RID: 37815 RVA: 0x001E5564 File Offset: 0x001E3764
|
||||
// (set) Token: 0x060093B8 RID: 37816 RVA: 0x001E5578 File Offset: 0x001E3778
|
||||
[Token(Token = "0x17001766")]
|
||||
public bool DisableCache
|
||||
{
|
||||
[Token(Token = "0x60093B7")]
|
||||
[Address(RVA = "0xA83900", Offset = "0xA82700", VA = "0x180A83900")]
|
||||
get
|
||||
{
|
||||
return this.disableCache;
|
||||
}
|
||||
[Token(Token = "0x60093B8")]
|
||||
[Address(RVA = "0x17235A0", Offset = "0x17223A0", VA = "0x1817235A0")]
|
||||
set
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (060093B8)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.HTTPRequest::set_DisableCache(System.Boolean)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_11:
|
||||
stloc:NotSupportedException(var_0_1B, newobj:NotSupportedException(NotSupportedException::.ctor, ldstr:string("Changing the DisableCache property while processing the request is not supported.")))
|
||||
}
|
||||
|
||||
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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: 0x17001767 RID: 5991
|
||||
// (get) Token: 0x060093B9 RID: 37817 RVA: 0x001E55A0 File Offset: 0x001E37A0
|
||||
// (set) Token: 0x060093BA RID: 37818 RVA: 0x001E55B4 File Offset: 0x001E37B4
|
||||
[Token(Token = "0x17001767")]
|
||||
public bool CacheOnly
|
||||
{
|
||||
[Token(Token = "0x60093B9")]
|
||||
[Address(RVA = "0x1723160", Offset = "0x1721F60", VA = "0x181723160")]
|
||||
get
|
||||
{
|
||||
return this.cacheOnly;
|
||||
}
|
||||
[Token(Token = "0x60093BA")]
|
||||
[Address(RVA = "0x1723520", Offset = "0x1722320", VA = "0x181723520")]
|
||||
set
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (060093BA)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.HTTPRequest::set_CacheOnly(System.Boolean)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_11:
|
||||
stloc:NotSupportedException(var_0_1B, newobj:NotSupportedException(NotSupportedException::.ctor, ldstr:string("Changing the CacheOnly property while processing the request is not supported.")))
|
||||
}
|
||||
|
||||
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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: 0x17001768 RID: 5992
|
||||
// (get) Token: 0x060093BB RID: 37819 RVA: 0x001E55DC File Offset: 0x001E37DC
|
||||
// (set) Token: 0x060093BC RID: 37820 RVA: 0x001E55F0 File Offset: 0x001E37F0
|
||||
[Token(Token = "0x17001768")]
|
||||
public bool UseStreaming
|
||||
{
|
||||
[Token(Token = "0x60093BB")]
|
||||
[Address(RVA = "0x16F7CF0", Offset = "0x16F6AF0", VA = "0x1816F7CF0")]
|
||||
get
|
||||
{
|
||||
return this.useStreaming;
|
||||
}
|
||||
[Token(Token = "0x60093BC")]
|
||||
[Address(RVA = "0x17237A0", Offset = "0x17225A0", VA = "0x1817237A0")]
|
||||
set
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (060093BC)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.HTTPRequest::set_UseStreaming(System.Boolean)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_11:
|
||||
stloc:NotSupportedException(var_0_1B, newobj:NotSupportedException(NotSupportedException::.ctor, ldstr:string("Changing the UseStreaming property while processing the request is not supported.")))
|
||||
}
|
||||
|
||||
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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: 0x17001769 RID: 5993
|
||||
// (get) Token: 0x060093BD RID: 37821 RVA: 0x001E5618 File Offset: 0x001E3818
|
||||
// (set) Token: 0x060093BE RID: 37822 RVA: 0x001E562C File Offset: 0x001E382C
|
||||
[Token(Token = "0x17001769")]
|
||||
public int StreamFragmentSize
|
||||
{
|
||||
[Token(Token = "0x60093BD")]
|
||||
[Address(RVA = "0x60CA70", Offset = "0x60B870", VA = "0x18060CA70")]
|
||||
get
|
||||
{
|
||||
return this.streamFragmentSize;
|
||||
}
|
||||
[Token(Token = "0x60093BE")]
|
||||
[Address(RVA = "0x17236F0", Offset = "0x17224F0", VA = "0x1817236F0")]
|
||||
set
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (060093BE)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.HTTPRequest::set_StreamFragmentSize(System.Int32)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_11:
|
||||
stloc:NotSupportedException(var_0_1B, newobj:NotSupportedException(NotSupportedException::.ctor, ldstr:string("Changing the StreamFragmentSize property while processing the request is not supported.")))
|
||||
}
|
||||
|
||||
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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: 0x1700176A RID: 5994
|
||||
// (get) Token: 0x060093BF RID: 37823 RVA: 0x001E5654 File Offset: 0x001E3854
|
||||
// (set) Token: 0x060093C0 RID: 37824 RVA: 0x001E5668 File Offset: 0x001E3868
|
||||
[Token(Token = "0x1700176A")]
|
||||
public int MaxFragmentQueueLength
|
||||
{
|
||||
[Token(Token = "0x60093BF")]
|
||||
[Address(RVA = "0x3F63F0", Offset = "0x3F51F0", VA = "0x1803F63F0")]
|
||||
get;
|
||||
[Token(Token = "0x60093C0")]
|
||||
[Address(RVA = "0x445D00", Offset = "0x444B00", VA = "0x180445D00")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x1700176B RID: 5995
|
||||
// (get) Token: 0x060093C1 RID: 37825 RVA: 0x001E567C File Offset: 0x001E387C
|
||||
// (set) Token: 0x060093C2 RID: 37826 RVA: 0x001E5690 File Offset: 0x001E3890
|
||||
[Token(Token = "0x1700176B")]
|
||||
public OnRequestFinishedDelegate Callback
|
||||
{
|
||||
[Token(Token = "0x60093C1")]
|
||||
[Address(RVA = "0x3FA170", Offset = "0x3F8F70", VA = "0x1803FA170")]
|
||||
get;
|
||||
[Token(Token = "0x60093C2")]
|
||||
[Address(RVA = "0x46AA50", Offset = "0x469850", VA = "0x18046AA50")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x1700176C RID: 5996
|
||||
// (get) Token: 0x060093C3 RID: 37827 RVA: 0x001E56A4 File Offset: 0x001E38A4
|
||||
// (set) Token: 0x060093C4 RID: 37828 RVA: 0x001E56B8 File Offset: 0x001E38B8
|
||||
[Token(Token = "0x1700176C")]
|
||||
public bool DisableRetry
|
||||
{
|
||||
[Token(Token = "0x60093C3")]
|
||||
[Address(RVA = "0x535D20", Offset = "0x534B20", VA = "0x180535D20")]
|
||||
get;
|
||||
[Token(Token = "0x60093C4")]
|
||||
[Address(RVA = "0x536540", Offset = "0x535340", VA = "0x180536540")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x1700176D RID: 5997
|
||||
// (get) Token: 0x060093C5 RID: 37829 RVA: 0x001E56CC File Offset: 0x001E38CC
|
||||
// (set) Token: 0x060093C6 RID: 37830 RVA: 0x001E56E0 File Offset: 0x001E38E0
|
||||
[Token(Token = "0x1700176D")]
|
||||
public bool IsRedirected
|
||||
{
|
||||
[Token(Token = "0x60093C5")]
|
||||
[Address(RVA = "0x774990", Offset = "0x773790", VA = "0x180774990")]
|
||||
get;
|
||||
[Token(Token = "0x60093C6")]
|
||||
[Address(RVA = "0x5E1250", Offset = "0x5E0050", VA = "0x1805E1250")]
|
||||
internal set;
|
||||
}
|
||||
|
||||
// Token: 0x1700176E RID: 5998
|
||||
// (get) Token: 0x060093C7 RID: 37831 RVA: 0x001E56F4 File Offset: 0x001E38F4
|
||||
// (set) Token: 0x060093C8 RID: 37832 RVA: 0x001E5708 File Offset: 0x001E3908
|
||||
[Token(Token = "0x1700176E")]
|
||||
public Uri RedirectUri
|
||||
{
|
||||
[Token(Token = "0x60093C7")]
|
||||
[Address(RVA = "0x423E10", Offset = "0x422C10", VA = "0x180423E10")]
|
||||
get;
|
||||
[Token(Token = "0x60093C8")]
|
||||
[Address(RVA = "0x687270", Offset = "0x686070", VA = "0x180687270")]
|
||||
internal set;
|
||||
}
|
||||
|
||||
// Token: 0x1700176F RID: 5999
|
||||
// (get) Token: 0x060093C9 RID: 37833 RVA: 0x001E571C File Offset: 0x001E391C
|
||||
[Token(Token = "0x1700176F")]
|
||||
public Uri CurrentUri
|
||||
{
|
||||
[Token(Token = "0x60093C9")]
|
||||
[Address(RVA = "0x17231E0", Offset = "0x1721FE0", VA = "0x1817231E0")]
|
||||
get
|
||||
{
|
||||
if (this.<IsRedirected>k__BackingField)
|
||||
{
|
||||
return this.<RedirectUri>k__BackingField;
|
||||
}
|
||||
return this.<Uri>k__BackingField;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17001770 RID: 6000
|
||||
// (get) Token: 0x060093CA RID: 37834 RVA: 0x001E5740 File Offset: 0x001E3940
|
||||
// (set) Token: 0x060093CB RID: 37835 RVA: 0x001E5754 File Offset: 0x001E3954
|
||||
[Token(Token = "0x17001770")]
|
||||
public HTTPResponse Response
|
||||
{
|
||||
[Token(Token = "0x60093CA")]
|
||||
[Address(RVA = "0x4335D0", Offset = "0x4323D0", VA = "0x1804335D0")]
|
||||
get;
|
||||
[Token(Token = "0x60093CB")]
|
||||
[Address(RVA = "0x703580", Offset = "0x702380", VA = "0x180703580")]
|
||||
internal set;
|
||||
}
|
||||
|
||||
// Token: 0x17001771 RID: 6001
|
||||
// (get) Token: 0x060093CC RID: 37836 RVA: 0x001E5768 File Offset: 0x001E3968
|
||||
// (set) Token: 0x060093CD RID: 37837 RVA: 0x001E577C File Offset: 0x001E397C
|
||||
[Token(Token = "0x17001771")]
|
||||
public HTTPResponse ProxyResponse
|
||||
{
|
||||
[Token(Token = "0x60093CC")]
|
||||
[Address(RVA = "0x4391F0", Offset = "0x437FF0", VA = "0x1804391F0")]
|
||||
get;
|
||||
[Token(Token = "0x60093CD")]
|
||||
[Address(RVA = "0x7D58F0", Offset = "0x7D46F0", VA = "0x1807D58F0")]
|
||||
internal set;
|
||||
}
|
||||
|
||||
// Token: 0x17001772 RID: 6002
|
||||
// (get) Token: 0x060093CE RID: 37838 RVA: 0x001E5790 File Offset: 0x001E3990
|
||||
// (set) Token: 0x060093CF RID: 37839 RVA: 0x001E57A4 File Offset: 0x001E39A4
|
||||
[Token(Token = "0x17001772")]
|
||||
public Exception Exception
|
||||
{
|
||||
[Token(Token = "0x60093CE")]
|
||||
[Address(RVA = "0x567CE0", Offset = "0x566AE0", VA = "0x180567CE0")]
|
||||
get;
|
||||
[Token(Token = "0x60093CF")]
|
||||
[Address(RVA = "0x567D20", Offset = "0x566B20", VA = "0x180567D20")]
|
||||
internal set;
|
||||
}
|
||||
|
||||
// Token: 0x17001773 RID: 6003
|
||||
// (get) Token: 0x060093D0 RID: 37840 RVA: 0x001E57B8 File Offset: 0x001E39B8
|
||||
// (set) Token: 0x060093D1 RID: 37841 RVA: 0x001E57CC File Offset: 0x001E39CC
|
||||
[Token(Token = "0x17001773")]
|
||||
public object Tag
|
||||
{
|
||||
[Token(Token = "0x60093D0")]
|
||||
[Address(RVA = "0x44EC80", Offset = "0x44DA80", VA = "0x18044EC80")]
|
||||
get;
|
||||
[Token(Token = "0x60093D1")]
|
||||
[Address(RVA = "0x567D10", Offset = "0x566B10", VA = "0x180567D10")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001774 RID: 6004
|
||||
// (get) Token: 0x060093D2 RID: 37842 RVA: 0x001E57E0 File Offset: 0x001E39E0
|
||||
// (set) Token: 0x060093D3 RID: 37843 RVA: 0x001E57F4 File Offset: 0x001E39F4
|
||||
[Token(Token = "0x17001774")]
|
||||
public Credentials Credentials
|
||||
{
|
||||
[Token(Token = "0x60093D2")]
|
||||
[Address(RVA = "0x44EC40", Offset = "0x44DA40", VA = "0x18044EC40")]
|
||||
get;
|
||||
[Token(Token = "0x60093D3")]
|
||||
[Address(RVA = "0x6A2D60", Offset = "0x6A1B60", VA = "0x1806A2D60")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001775 RID: 6005
|
||||
// (get) Token: 0x060093D4 RID: 37844 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x17001775")]
|
||||
public bool HasProxy
|
||||
{
|
||||
[Token(Token = "0x60093D4")]
|
||||
[Address(RVA = "0x1723200", Offset = "0x1722000", VA = "0x181723200")]
|
||||
get
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17001776 RID: 6006
|
||||
// (get) Token: 0x060093D5 RID: 37845 RVA: 0x001E5808 File Offset: 0x001E3A08
|
||||
// (set) Token: 0x060093D6 RID: 37846 RVA: 0x001E581C File Offset: 0x001E3A1C
|
||||
[Token(Token = "0x17001776")]
|
||||
public Proxy Proxy
|
||||
{
|
||||
[Token(Token = "0x60093D5")]
|
||||
[Address(RVA = "0x46AA30", Offset = "0x469830", VA = "0x18046AA30")]
|
||||
get;
|
||||
[Token(Token = "0x60093D6")]
|
||||
[Address(RVA = "0x7A45D0", Offset = "0x7A33D0", VA = "0x1807A45D0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001777 RID: 6007
|
||||
// (get) Token: 0x060093D7 RID: 37847 RVA: 0x001E5830 File Offset: 0x001E3A30
|
||||
// (set) Token: 0x060093D8 RID: 37848 RVA: 0x001E5844 File Offset: 0x001E3A44
|
||||
[Token(Token = "0x17001777")]
|
||||
public int MaxRedirects
|
||||
{
|
||||
[Token(Token = "0x60093D7")]
|
||||
[Address(RVA = "0x9F6FE0", Offset = "0x9F5DE0", VA = "0x1809F6FE0")]
|
||||
get;
|
||||
[Token(Token = "0x60093D8")]
|
||||
[Address(RVA = "0x17236C0", Offset = "0x17224C0", VA = "0x1817236C0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001778 RID: 6008
|
||||
// (get) Token: 0x060093D9 RID: 37849 RVA: 0x001E5858 File Offset: 0x001E3A58
|
||||
// (set) Token: 0x060093DA RID: 37850 RVA: 0x001E586C File Offset: 0x001E3A6C
|
||||
[Token(Token = "0x17001778")]
|
||||
public bool UseAlternateSSL
|
||||
{
|
||||
[Token(Token = "0x60093D9")]
|
||||
[Address(RVA = "0x9F6FC0", Offset = "0x9F5DC0", VA = "0x1809F6FC0")]
|
||||
get;
|
||||
[Token(Token = "0x60093DA")]
|
||||
[Address(RVA = "0xBA8090", Offset = "0xBA6E90", VA = "0x180BA8090")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001779 RID: 6009
|
||||
// (get) Token: 0x060093DB RID: 37851 RVA: 0x001E5880 File Offset: 0x001E3A80
|
||||
// (set) Token: 0x060093DC RID: 37852 RVA: 0x001E5894 File Offset: 0x001E3A94
|
||||
[Token(Token = "0x17001779")]
|
||||
public bool IsCookiesEnabled
|
||||
{
|
||||
[Token(Token = "0x60093DB")]
|
||||
[Address(RVA = "0xA45A80", Offset = "0xA44880", VA = "0x180A45A80")]
|
||||
get;
|
||||
[Token(Token = "0x60093DC")]
|
||||
[Address(RVA = "0x1723630", Offset = "0x1722430", VA = "0x181723630")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x1700177A RID: 6010
|
||||
// (get) Token: 0x060093DD RID: 37853 RVA: 0x001E58A8 File Offset: 0x001E3AA8
|
||||
// (set) Token: 0x060093DE RID: 37854 RVA: 0x001E58D0 File Offset: 0x001E3AD0
|
||||
[Token(Token = "0x1700177A")]
|
||||
public List<Cookie> Cookies
|
||||
{
|
||||
[Token(Token = "0x60093DD")]
|
||||
[Address(RVA = "0x1723170", Offset = "0x1721F70", VA = "0x181723170")]
|
||||
get
|
||||
{
|
||||
List<Cookie> list = this.customCookies;
|
||||
if (list == 0)
|
||||
{
|
||||
List<Cookie> list2 = new List();
|
||||
this.customCookies = list2;
|
||||
}
|
||||
return list;
|
||||
}
|
||||
[Token(Token = "0x60093DE")]
|
||||
[Address(RVA = "0x536B60", Offset = "0x535960", VA = "0x180536B60")]
|
||||
set
|
||||
{
|
||||
this.customCookies = value;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x1700177B RID: 6011
|
||||
// (get) Token: 0x060093DF RID: 37855 RVA: 0x001E58E4 File Offset: 0x001E3AE4
|
||||
// (set) Token: 0x060093E0 RID: 37856 RVA: 0x001E58F8 File Offset: 0x001E3AF8
|
||||
[Token(Token = "0x1700177B")]
|
||||
public HTTPFormUsage FormUsage
|
||||
{
|
||||
[Token(Token = "0x60093DF")]
|
||||
[Address(RVA = "0x12683C0", Offset = "0x12671C0", VA = "0x1812683C0")]
|
||||
get;
|
||||
[Token(Token = "0x60093E0")]
|
||||
[Address(RVA = "0x1267D80", Offset = "0x1266B80", VA = "0x181267D80")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x1700177C RID: 6012
|
||||
// (get) Token: 0x060093E1 RID: 37857 RVA: 0x001E590C File Offset: 0x001E3B0C
|
||||
// (set) Token: 0x060093E2 RID: 37858 RVA: 0x001E5920 File Offset: 0x001E3B20
|
||||
[Token(Token = "0x1700177C")]
|
||||
public HTTPRequestStates State
|
||||
{
|
||||
[Token(Token = "0x60093E1")]
|
||||
[Address(RVA = "0x1723230", Offset = "0x1722030", VA = "0x181723230")]
|
||||
get;
|
||||
[Token(Token = "0x60093E2")]
|
||||
[Address(RVA = "0x17236E0", Offset = "0x17224E0", VA = "0x1817236E0")]
|
||||
internal set;
|
||||
}
|
||||
|
||||
// Token: 0x1700177D RID: 6013
|
||||
// (get) Token: 0x060093E3 RID: 37859 RVA: 0x001E5934 File Offset: 0x001E3B34
|
||||
// (set) Token: 0x060093E4 RID: 37860 RVA: 0x001E5948 File Offset: 0x001E3B48
|
||||
[Token(Token = "0x1700177D")]
|
||||
public int RedirectCount
|
||||
{
|
||||
[Token(Token = "0x60093E3")]
|
||||
[Address(RVA = "0xD510D0", Offset = "0xD4FED0", VA = "0x180D510D0")]
|
||||
get;
|
||||
[Token(Token = "0x60093E4")]
|
||||
[Address(RVA = "0xD52980", Offset = "0xD51780", VA = "0x180D52980")]
|
||||
internal set;
|
||||
}
|
||||
|
||||
// Token: 0x140000BB RID: 187
|
||||
// (add) Token: 0x060093E5 RID: 37861 RVA: 0x001E595C File Offset: 0x001E3B5C
|
||||
// (remove) Token: 0x060093E6 RID: 37862 RVA: 0x001E5978 File Offset: 0x001E3B78
|
||||
[Token(Token = "0x140000BB")]
|
||||
public event Func<HTTPRequest, X509Certificate, X509Chain, bool> CustomCertificationValidator
|
||||
{
|
||||
[Token(Token = "0x60093E5")]
|
||||
[Address(RVA = "0x1722F00", Offset = "0x1721D00", VA = "0x181722F00")]
|
||||
[CompilerGenerated]
|
||||
add
|
||||
{
|
||||
Delegate @delegate;
|
||||
while (@delegate != 0 && @delegate == 0)
|
||||
{
|
||||
}
|
||||
while (@delegate != this)
|
||||
{
|
||||
}
|
||||
}
|
||||
[Token(Token = "0x60093E6")]
|
||||
[Address(RVA = "0x17232C0", Offset = "0x17220C0", VA = "0x1817232C0")]
|
||||
[CompilerGenerated]
|
||||
remove
|
||||
{
|
||||
Delegate @delegate;
|
||||
while (@delegate != 0 && @delegate == 0)
|
||||
{
|
||||
}
|
||||
while (@delegate != this)
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x1700177E RID: 6014
|
||||
// (get) Token: 0x060093E7 RID: 37863 RVA: 0x001E5994 File Offset: 0x001E3B94
|
||||
// (set) Token: 0x060093E8 RID: 37864 RVA: 0x001E59A8 File Offset: 0x001E3BA8
|
||||
[Token(Token = "0x1700177E")]
|
||||
public TimeSpan ConnectTimeout
|
||||
{
|
||||
[Token(Token = "0x60093E7")]
|
||||
[Address(RVA = "0x7A5E90", Offset = "0x7A4C90", VA = "0x1807A5E90")]
|
||||
get;
|
||||
[Token(Token = "0x60093E8")]
|
||||
[Address(RVA = "0x8C1150", Offset = "0x8BFF50", VA = "0x1808C1150")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x1700177F RID: 6015
|
||||
// (get) Token: 0x060093E9 RID: 37865 RVA: 0x001E59BC File Offset: 0x001E3BBC
|
||||
// (set) Token: 0x060093EA RID: 37866 RVA: 0x001E59D0 File Offset: 0x001E3BD0
|
||||
[Token(Token = "0x1700177F")]
|
||||
public TimeSpan Timeout
|
||||
{
|
||||
[Token(Token = "0x60093E9")]
|
||||
[Address(RVA = "0x8C1910", Offset = "0x8C0710", VA = "0x1808C1910")]
|
||||
get;
|
||||
[Token(Token = "0x60093EA")]
|
||||
[Address(RVA = "0x8C0F40", Offset = "0x8BFD40", VA = "0x1808C0F40")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001780 RID: 6016
|
||||
// (get) Token: 0x060093EB RID: 37867 RVA: 0x001E59E4 File Offset: 0x001E3BE4
|
||||
// (set) Token: 0x060093EC RID: 37868 RVA: 0x001E59F8 File Offset: 0x001E3BF8
|
||||
[Token(Token = "0x17001780")]
|
||||
public bool EnableTimoutForStreaming
|
||||
{
|
||||
[Token(Token = "0x60093EB")]
|
||||
[Address(RVA = "0xBA80C0", Offset = "0xBA6EC0", VA = "0x180BA80C0")]
|
||||
get;
|
||||
[Token(Token = "0x60093EC")]
|
||||
[Address(RVA = "0xBA8110", Offset = "0xBA6F10", VA = "0x180BA8110")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001781 RID: 6017
|
||||
// (get) Token: 0x060093ED RID: 37869 RVA: 0x001E5A0C File Offset: 0x001E3C0C
|
||||
// (set) Token: 0x060093EE RID: 37870 RVA: 0x001E5A20 File Offset: 0x001E3C20
|
||||
[Token(Token = "0x17001781")]
|
||||
public bool EnableSafeReadOnUnknownContentLength
|
||||
{
|
||||
[Token(Token = "0x60093ED")]
|
||||
[Address(RVA = "0x17231F0", Offset = "0x1721FF0", VA = "0x1817231F0")]
|
||||
get;
|
||||
[Token(Token = "0x60093EE")]
|
||||
[Address(RVA = "0x1723620", Offset = "0x1722420", VA = "0x181723620")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001782 RID: 6018
|
||||
// (get) Token: 0x060093EF RID: 37871 RVA: 0x001E5A34 File Offset: 0x001E3C34
|
||||
// (set) Token: 0x060093F0 RID: 37872 RVA: 0x001E5A48 File Offset: 0x001E3C48
|
||||
[Token(Token = "0x17001782")]
|
||||
public int Priority
|
||||
{
|
||||
[Token(Token = "0x60093EF")]
|
||||
[Address(RVA = "0x15B8260", Offset = "0x15B7060", VA = "0x1815B8260")]
|
||||
get;
|
||||
[Token(Token = "0x60093F0")]
|
||||
[Address(RVA = "0x15B6F40", Offset = "0x15B5D40", VA = "0x1815B6F40")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001783 RID: 6019
|
||||
// (get) Token: 0x060093F1 RID: 37873 RVA: 0x001E5A5C File Offset: 0x001E3C5C
|
||||
// (set) Token: 0x060093F2 RID: 37874 RVA: 0x001E5A70 File Offset: 0x001E3C70
|
||||
[Token(Token = "0x17001783")]
|
||||
public ICertificateVerifyer CustomCertificateVerifyer
|
||||
{
|
||||
[Token(Token = "0x60093F1")]
|
||||
[Address(RVA = "0x9CD8C0", Offset = "0x9CC6C0", VA = "0x1809CD8C0")]
|
||||
get;
|
||||
[Token(Token = "0x60093F2")]
|
||||
[Address(RVA = "0xBA8070", Offset = "0xBA6E70", VA = "0x180BA8070")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001784 RID: 6020
|
||||
// (get) Token: 0x060093F3 RID: 37875 RVA: 0x001E5A84 File Offset: 0x001E3C84
|
||||
// (set) Token: 0x060093F4 RID: 37876 RVA: 0x001E5A98 File Offset: 0x001E3C98
|
||||
[Token(Token = "0x17001784")]
|
||||
public IClientCredentialsProvider CustomClientCredentialsProvider
|
||||
{
|
||||
[Token(Token = "0x60093F3")]
|
||||
[Address(RVA = "0x4CB300", Offset = "0x4CA100", VA = "0x1804CB300")]
|
||||
get;
|
||||
[Token(Token = "0x60093F4")]
|
||||
[Address(RVA = "0x533D70", Offset = "0x532B70", VA = "0x180533D70")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001785 RID: 6021
|
||||
// (get) Token: 0x060093F5 RID: 37877 RVA: 0x001E5AAC File Offset: 0x001E3CAC
|
||||
// (set) Token: 0x060093F6 RID: 37878 RVA: 0x001E5AC0 File Offset: 0x001E3CC0
|
||||
[Token(Token = "0x17001785")]
|
||||
public List<string> CustomTLSServerNameList
|
||||
{
|
||||
[Token(Token = "0x60093F5")]
|
||||
[Address(RVA = "0x8379C0", Offset = "0x8367C0", VA = "0x1808379C0")]
|
||||
get;
|
||||
[Token(Token = "0x60093F6")]
|
||||
[Address(RVA = "0xBA80D0", Offset = "0xBA6ED0", VA = "0x180BA80D0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001786 RID: 6022
|
||||
// (get) Token: 0x060093F7 RID: 37879 RVA: 0x001E5AD4 File Offset: 0x001E3CD4
|
||||
// (set) Token: 0x060093F8 RID: 37880 RVA: 0x001E5AE8 File Offset: 0x001E3CE8
|
||||
[Token(Token = "0x17001786")]
|
||||
public SupportedProtocols ProtocolHandler
|
||||
{
|
||||
[Token(Token = "0x60093F7")]
|
||||
[Address(RVA = "0x1723220", Offset = "0x1722020", VA = "0x181723220")]
|
||||
get;
|
||||
[Token(Token = "0x60093F8")]
|
||||
[Address(RVA = "0x17236D0", Offset = "0x17224D0", VA = "0x1817236D0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x140000BC RID: 188
|
||||
// (add) Token: 0x060093F9 RID: 37881 RVA: 0x001E5AFC File Offset: 0x001E3CFC
|
||||
// (remove) Token: 0x060093FA RID: 37882 RVA: 0x001E5B30 File Offset: 0x001E3D30
|
||||
[Token(Token = "0x140000BC")]
|
||||
public event OnBeforeRedirectionDelegate OnBeforeRedirection
|
||||
{
|
||||
[Token(Token = "0x60093F9")]
|
||||
[Address(RVA = "0x1723030", Offset = "0x1721E30", VA = "0x181723030")]
|
||||
add
|
||||
{
|
||||
Delegate @delegate;
|
||||
for (;;)
|
||||
{
|
||||
@delegate = Delegate.Combine(this.onBeforeRedirection, value);
|
||||
if (@delegate == 0)
|
||||
{
|
||||
break;
|
||||
}
|
||||
if (@delegate != 0)
|
||||
{
|
||||
goto Block_1;
|
||||
}
|
||||
}
|
||||
this.onBeforeRedirection = @delegate;
|
||||
return;
|
||||
Block_1:
|
||||
this.onBeforeRedirection = @delegate;
|
||||
}
|
||||
[Token(Token = "0x60093FA")]
|
||||
[Address(RVA = "0x17233F0", Offset = "0x17221F0", VA = "0x1817233F0")]
|
||||
remove
|
||||
{
|
||||
Delegate @delegate;
|
||||
for (;;)
|
||||
{
|
||||
@delegate = Delegate.Remove(this.onBeforeRedirection, value);
|
||||
if (@delegate == 0)
|
||||
{
|
||||
break;
|
||||
}
|
||||
if (@delegate != 0)
|
||||
{
|
||||
goto Block_1;
|
||||
}
|
||||
}
|
||||
this.onBeforeRedirection = @delegate;
|
||||
return;
|
||||
Block_1:
|
||||
this.onBeforeRedirection = @delegate;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x140000BD RID: 189
|
||||
// (add) Token: 0x060093FB RID: 37883 RVA: 0x001E5B64 File Offset: 0x001E3D64
|
||||
// (remove) Token: 0x060093FC RID: 37884 RVA: 0x001E5B98 File Offset: 0x001E3D98
|
||||
[Token(Token = "0x140000BD")]
|
||||
public event OnBeforeHeaderSendDelegate OnBeforeHeaderSend
|
||||
{
|
||||
[Token(Token = "0x60093FB")]
|
||||
[Address(RVA = "0x1722FA0", Offset = "0x1721DA0", VA = "0x181722FA0")]
|
||||
add
|
||||
{
|
||||
Delegate @delegate;
|
||||
for (;;)
|
||||
{
|
||||
@delegate = Delegate.Combine(this._onBeforeHeaderSend, value);
|
||||
if (@delegate == 0)
|
||||
{
|
||||
break;
|
||||
}
|
||||
if (@delegate != 0)
|
||||
{
|
||||
goto Block_1;
|
||||
}
|
||||
}
|
||||
this._onBeforeHeaderSend = @delegate;
|
||||
return;
|
||||
Block_1:
|
||||
this._onBeforeHeaderSend = @delegate;
|
||||
}
|
||||
[Token(Token = "0x60093FC")]
|
||||
[Address(RVA = "0x1723360", Offset = "0x1722160", VA = "0x181723360")]
|
||||
remove
|
||||
{
|
||||
Delegate @delegate;
|
||||
for (;;)
|
||||
{
|
||||
@delegate = Delegate.Remove(this._onBeforeHeaderSend, value);
|
||||
if (@delegate == 0)
|
||||
{
|
||||
break;
|
||||
}
|
||||
if (@delegate != 0)
|
||||
{
|
||||
goto Block_1;
|
||||
}
|
||||
}
|
||||
this._onBeforeHeaderSend = @delegate;
|
||||
return;
|
||||
Block_1:
|
||||
this._onBeforeHeaderSend = @delegate;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x140000BE RID: 190
|
||||
// (add) Token: 0x060093FD RID: 37885 RVA: 0x001E5BCC File Offset: 0x001E3DCC
|
||||
// (remove) Token: 0x060093FE RID: 37886 RVA: 0x001E5BE8 File Offset: 0x001E3DE8
|
||||
[Token(Token = "0x140000BE")]
|
||||
public event Action<HTTPRequest, Stream> OnSendingHeaders
|
||||
{
|
||||
[Token(Token = "0x60093FD")]
|
||||
[Address(RVA = "0x17230C0", Offset = "0x1721EC0", VA = "0x1817230C0")]
|
||||
[CompilerGenerated]
|
||||
add
|
||||
{
|
||||
Delegate @delegate;
|
||||
while (@delegate != 0 && @delegate == 0)
|
||||
{
|
||||
}
|
||||
while (@delegate != this)
|
||||
{
|
||||
}
|
||||
}
|
||||
[Token(Token = "0x60093FE")]
|
||||
[Address(RVA = "0x1723480", Offset = "0x1722280", VA = "0x181723480")]
|
||||
[CompilerGenerated]
|
||||
remove
|
||||
{
|
||||
Delegate @delegate;
|
||||
while (@delegate != 0 && @delegate == 0)
|
||||
{
|
||||
}
|
||||
while (@delegate != this)
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17001787 RID: 6023
|
||||
// (get) Token: 0x060093FF RID: 37887 RVA: 0x001E5C04 File Offset: 0x001E3E04
|
||||
// (set) Token: 0x06009400 RID: 37888 RVA: 0x001E5C18 File Offset: 0x001E3E18
|
||||
[Token(Token = "0x17001787")]
|
||||
public bool TryToMinimizeTCPLatency
|
||||
{
|
||||
[Token(Token = "0x60093FF")]
|
||||
[Address(RVA = "0x75B800", Offset = "0x75A600", VA = "0x18075B800")]
|
||||
get;
|
||||
[Token(Token = "0x6009400")]
|
||||
[Address(RVA = "0x9CDC70", Offset = "0x9CCA70", VA = "0x1809CDC70")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001788 RID: 6024
|
||||
// (get) Token: 0x06009401 RID: 37889 RVA: 0x001E5C2C File Offset: 0x001E3E2C
|
||||
// (set) Token: 0x06009402 RID: 37890 RVA: 0x001E5C40 File Offset: 0x001E3E40
|
||||
[Token(Token = "0x17001788")]
|
||||
internal long Downloaded
|
||||
{
|
||||
[Token(Token = "0x6009401")]
|
||||
[Address(RVA = "0x469010", Offset = "0x467E10", VA = "0x180469010")]
|
||||
get;
|
||||
[Token(Token = "0x6009402")]
|
||||
[Address(RVA = "0xBDFE50", Offset = "0xBDEC50", VA = "0x180BDFE50")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001789 RID: 6025
|
||||
// (get) Token: 0x06009403 RID: 37891 RVA: 0x001E5C54 File Offset: 0x001E3E54
|
||||
// (set) Token: 0x06009404 RID: 37892 RVA: 0x001E5C68 File Offset: 0x001E3E68
|
||||
[Token(Token = "0x17001789")]
|
||||
internal long DownloadLength
|
||||
{
|
||||
[Token(Token = "0x6009403")]
|
||||
[Address(RVA = "0x836950", Offset = "0x835750", VA = "0x180836950")]
|
||||
get;
|
||||
[Token(Token = "0x6009404")]
|
||||
[Address(RVA = "0xBDFD70", Offset = "0xBDEB70", VA = "0x180BDFD70")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x1700178A RID: 6026
|
||||
// (get) Token: 0x06009405 RID: 37893 RVA: 0x001E5C7C File Offset: 0x001E3E7C
|
||||
// (set) Token: 0x06009406 RID: 37894 RVA: 0x001E5C90 File Offset: 0x001E3E90
|
||||
[Token(Token = "0x1700178A")]
|
||||
internal bool DownloadProgressChanged
|
||||
{
|
||||
[Token(Token = "0x6009405")]
|
||||
[Address(RVA = "0xE96510", Offset = "0xE95310", VA = "0x180E96510")]
|
||||
get;
|
||||
[Token(Token = "0x6009406")]
|
||||
[Address(RVA = "0x16ACF30", Offset = "0x16ABD30", VA = "0x1816ACF30")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x1700178B RID: 6027
|
||||
// (get) Token: 0x06009407 RID: 37895 RVA: 0x001E5CA4 File Offset: 0x001E3EA4
|
||||
[Token(Token = "0x1700178B")]
|
||||
internal long UploadStreamLength
|
||||
{
|
||||
[Token(Token = "0x6009407")]
|
||||
[Address(RVA = "0x1723240", Offset = "0x1722040", VA = "0x181723240")]
|
||||
get
|
||||
{
|
||||
if (this.<UploadStream>k__BackingField != (ulong)0L && this.<UseUploadStreamLength>k__BackingField)
|
||||
{
|
||||
bool canWrite = this.<UploadStream>k__BackingField.CanWrite;
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x1700178C RID: 6028
|
||||
// (get) Token: 0x06009408 RID: 37896 RVA: 0x001E5CD8 File Offset: 0x001E3ED8
|
||||
// (set) Token: 0x06009409 RID: 37897 RVA: 0x001E5CEC File Offset: 0x001E3EEC
|
||||
[Token(Token = "0x1700178C")]
|
||||
internal long Uploaded
|
||||
{
|
||||
[Token(Token = "0x6009408")]
|
||||
[Address(RVA = "0x837B00", Offset = "0x836900", VA = "0x180837B00")]
|
||||
get;
|
||||
[Token(Token = "0x6009409")]
|
||||
[Address(RVA = "0xBDCC20", Offset = "0xBDBA20", VA = "0x180BDCC20")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x1700178D RID: 6029
|
||||
// (get) Token: 0x0600940A RID: 37898 RVA: 0x001E5D00 File Offset: 0x001E3F00
|
||||
// (set) Token: 0x0600940B RID: 37899 RVA: 0x001E5D14 File Offset: 0x001E3F14
|
||||
[Token(Token = "0x1700178D")]
|
||||
internal long UploadLength
|
||||
{
|
||||
[Token(Token = "0x600940A")]
|
||||
[Address(RVA = "0x837AF0", Offset = "0x8368F0", VA = "0x180837AF0")]
|
||||
get;
|
||||
[Token(Token = "0x600940B")]
|
||||
[Address(RVA = "0xAF1020", Offset = "0xAEFE20", VA = "0x180AF1020")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x1700178E RID: 6030
|
||||
// (get) Token: 0x0600940C RID: 37900 RVA: 0x001E5D28 File Offset: 0x001E3F28
|
||||
// (set) Token: 0x0600940D RID: 37901 RVA: 0x001E5D3C File Offset: 0x001E3F3C
|
||||
[Token(Token = "0x1700178E")]
|
||||
internal bool UploadProgressChanged
|
||||
{
|
||||
[Token(Token = "0x600940C")]
|
||||
[Address(RVA = "0x60CD90", Offset = "0x60BB90", VA = "0x18060CD90")]
|
||||
get;
|
||||
[Token(Token = "0x600940D")]
|
||||
[Address(RVA = "0x104DBC0", Offset = "0x104C9C0", VA = "0x18104DBC0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x1700178F RID: 6031
|
||||
// (get) Token: 0x0600940E RID: 37902 RVA: 0x001E5D50 File Offset: 0x001E3F50
|
||||
// (set) Token: 0x0600940F RID: 37903 RVA: 0x001E5D64 File Offset: 0x001E3F64
|
||||
[Token(Token = "0x1700178F")]
|
||||
private Dictionary<string, List<string>> Headers
|
||||
{
|
||||
[Token(Token = "0x600940E")]
|
||||
[Address(RVA = "0x5F4D40", Offset = "0x5F3B40", VA = "0x1805F4D40")]
|
||||
get;
|
||||
[Token(Token = "0x600940F")]
|
||||
[Address(RVA = "0xBDB940", Offset = "0xBDA740", VA = "0x180BDB940")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x06009410 RID: 37904 RVA: 0x001E5D78 File Offset: 0x001E3F78
|
||||
[Token(Token = "0x6009410")]
|
||||
[Address(RVA = "0x1722840", Offset = "0x1721640", VA = "0x181722840")]
|
||||
public HTTPRequest(Uri uri)
|
||||
{
|
||||
bool <KeepAliveDefaultValue>k__BackingField = HTTPManager.<KeepAliveDefaultValue>k__BackingField;
|
||||
bool <IsCachingDisabled>k__BackingField = HTTPManager.<IsCachingDisabled>k__BackingField;
|
||||
}
|
||||
|
||||
// Token: 0x06009411 RID: 37905 RVA: 0x001E5D98 File Offset: 0x001E3F98
|
||||
[Token(Token = "0x6009411")]
|
||||
[Address(RVA = "0x1722370", Offset = "0x1721170", VA = "0x181722370")]
|
||||
public HTTPRequest(Uri uri, OnRequestFinishedDelegate callback)
|
||||
{
|
||||
bool <KeepAliveDefaultValue>k__BackingField = HTTPManager.<KeepAliveDefaultValue>k__BackingField;
|
||||
bool <IsCachingDisabled>k__BackingField = HTTPManager.<IsCachingDisabled>k__BackingField;
|
||||
}
|
||||
|
||||
// Token: 0x06009412 RID: 37906 RVA: 0x001E5DB4 File Offset: 0x001E3FB4
|
||||
[Token(Token = "0x6009412")]
|
||||
[Address(RVA = "0x1722750", Offset = "0x1721550", VA = "0x181722750")]
|
||||
public HTTPRequest(Uri uri, bool isKeepAlive, OnRequestFinishedDelegate callback)
|
||||
{
|
||||
bool <IsCachingDisabled>k__BackingField = HTTPManager.<IsCachingDisabled>k__BackingField;
|
||||
}
|
||||
|
||||
// Token: 0x06009413 RID: 37907 RVA: 0x001E5DCC File Offset: 0x001E3FCC
|
||||
[Token(Token = "0x6009413")]
|
||||
[Address(RVA = "0x1722340", Offset = "0x1721140", VA = "0x181722340")]
|
||||
public HTTPRequest(Uri uri, bool isKeepAlive, bool disableCache, OnRequestFinishedDelegate callback)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x06009414 RID: 37908 RVA: 0x001E5DDC File Offset: 0x001E3FDC
|
||||
[Token(Token = "0x6009414")]
|
||||
[Address(RVA = "0x17224A0", Offset = "0x17212A0", VA = "0x1817224A0")]
|
||||
public HTTPRequest(Uri uri, HTTPMethods methodType)
|
||||
{
|
||||
bool <KeepAliveDefaultValue>k__BackingField = HTTPManager.<KeepAliveDefaultValue>k__BackingField;
|
||||
}
|
||||
|
||||
// Token: 0x06009415 RID: 37909 RVA: 0x001E5DF8 File Offset: 0x001E3FF8
|
||||
[Token(Token = "0x6009415")]
|
||||
[Address(RVA = "0x17225F0", Offset = "0x17213F0", VA = "0x1817225F0")]
|
||||
public HTTPRequest(Uri uri, HTTPMethods methodType, OnRequestFinishedDelegate callback)
|
||||
{
|
||||
bool <KeepAliveDefaultValue>k__BackingField = HTTPManager.<KeepAliveDefaultValue>k__BackingField;
|
||||
}
|
||||
|
||||
// Token: 0x06009416 RID: 37910 RVA: 0x001E5E14 File Offset: 0x001E4014
|
||||
[Token(Token = "0x6009416")]
|
||||
[Address(RVA = "0x1722230", Offset = "0x1721030", VA = "0x181722230")]
|
||||
public HTTPRequest(Uri uri, HTTPMethods methodType, bool isKeepAlive, OnRequestFinishedDelegate callback)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x06009417 RID: 37911 RVA: 0x001E5E28 File Offset: 0x001E4028
|
||||
[Token(Token = "0x6009417")]
|
||||
[Address(RVA = "0x1722960", Offset = "0x1721760", VA = "0x181722960")]
|
||||
public HTTPRequest(Uri uri, HTTPMethods methodType, bool isKeepAlive, bool disableCache, OnRequestFinishedDelegate callback)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (06009417)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.HTTPRequest::.ctor(System.Uri,BestHTTP.HTTPMethods,System.Boolean,System.Boolean,BestHTTP.OnRequestFinishedDelegate)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_165:
|
||||
stloc:NotSupportedException(var_15_16F, newobj:NotSupportedException(NotSupportedException::.ctor, ldstr:string("Changing the StreamFragmentSize property while processing the request is not supported.")))
|
||||
}
|
||||
|
||||
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: 0x06009418 RID: 37912 RVA: 0x001E5FA8 File Offset: 0x001E41A8
|
||||
[Token(Token = "0x6009418")]
|
||||
[Address(RVA = "0x171F200", Offset = "0x171E000", VA = "0x18171F200")]
|
||||
public void AddField(string fieldName, string value)
|
||||
{
|
||||
Encoding utf = Encoding.UTF8;
|
||||
HTTPFormBase fieldCollector = this.FieldCollector;
|
||||
if (fieldCollector == 0)
|
||||
{
|
||||
HTTPFormBase httpformBase = new HTTPFormBase();
|
||||
this.FieldCollector = httpformBase;
|
||||
}
|
||||
fieldCollector.AddField(fieldName, value, utf);
|
||||
}
|
||||
|
||||
// Token: 0x06009419 RID: 37913 RVA: 0x001E5FE4 File Offset: 0x001E41E4
|
||||
[Token(Token = "0x6009419")]
|
||||
[Address(RVA = "0x171F2C0", Offset = "0x171E0C0", VA = "0x18171F2C0")]
|
||||
public void AddField(string fieldName, string value, Encoding e)
|
||||
{
|
||||
HTTPFormBase fieldCollector = this.FieldCollector;
|
||||
if (fieldCollector == 0)
|
||||
{
|
||||
int num = 0;
|
||||
HTTPFormBase httpformBase;
|
||||
httpformBase.FieldGetter(num, value, e);
|
||||
this.FieldCollector = httpformBase;
|
||||
}
|
||||
fieldCollector.AddField(fieldName, value, e);
|
||||
}
|
||||
|
||||
// Token: 0x0600941A RID: 37914 RVA: 0x001E6020 File Offset: 0x001E4220
|
||||
[Token(Token = "0x600941A")]
|
||||
[Address(RVA = "0x171F110", Offset = "0x171DF10", VA = "0x18171F110")]
|
||||
public void AddBinaryData(string fieldName, byte[] content)
|
||||
{
|
||||
int num = 0;
|
||||
int num2 = 0;
|
||||
this.AddBinaryData(fieldName, content, num2, num);
|
||||
}
|
||||
|
||||
// Token: 0x0600941B RID: 37915 RVA: 0x001E603C File Offset: 0x001E423C
|
||||
[Token(Token = "0x600941B")]
|
||||
[Address(RVA = "0x171F130", Offset = "0x171DF30", VA = "0x18171F130")]
|
||||
public void AddBinaryData(string fieldName, byte[] content, string fileName)
|
||||
{
|
||||
int num = 0;
|
||||
this.AddBinaryData(fieldName, content, fileName, num);
|
||||
}
|
||||
|
||||
// Token: 0x0600941C RID: 37916 RVA: 0x001E6058 File Offset: 0x001E4258
|
||||
[Token(Token = "0x600941C")]
|
||||
[Address(RVA = "0x171F150", Offset = "0x171DF50", VA = "0x18171F150")]
|
||||
public void AddBinaryData(string fieldName, byte[] content, string fileName, string mimeType)
|
||||
{
|
||||
if (this.FieldCollector == 0)
|
||||
{
|
||||
HTTPFormBase httpformBase = new HTTPFormBase();
|
||||
this.FieldCollector = httpformBase;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600941D RID: 37917 RVA: 0x001E6084 File Offset: 0x001E4284
|
||||
[Token(Token = "0x600941D")]
|
||||
[Address(RVA = "0xBDFD30", Offset = "0xBDEB30", VA = "0x180BDFD30")]
|
||||
public void SetForm(HTTPFormBase form)
|
||||
{
|
||||
this.FormImpl = form;
|
||||
}
|
||||
|
||||
// Token: 0x0600941E RID: 37918 RVA: 0x001E6098 File Offset: 0x001E4298
|
||||
[Token(Token = "0x600941E")]
|
||||
[Address(RVA = "0x1720850", Offset = "0x171F650", VA = "0x181720850")]
|
||||
public List<HTTPFieldData> GetFormFields()
|
||||
{
|
||||
HTTPFormBase fieldCollector = this.FieldCollector;
|
||||
if (fieldCollector != 0 && fieldCollector.<Fields>k__BackingField != 0)
|
||||
{
|
||||
return new List(this.FieldCollector.<Fields>k__BackingField);
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600941F RID: 37919 RVA: 0x001E60D4 File Offset: 0x001E42D4
|
||||
[Token(Token = "0x600941F")]
|
||||
[Address(RVA = "0x171F620", Offset = "0x171E420", VA = "0x18171F620")]
|
||||
public void ClearForm()
|
||||
{
|
||||
int num = 0;
|
||||
this.FormImpl = num;
|
||||
this.FieldCollector = num;
|
||||
}
|
||||
|
||||
// Token: 0x06009420 RID: 37920 RVA: 0x001E60F4 File Offset: 0x001E42F4
|
||||
[Token(Token = "0x6009420")]
|
||||
[Address(RVA = "0x1720AF0", Offset = "0x171F8F0", VA = "0x181720AF0")]
|
||||
private HTTPFormBase SelectFormImplementation()
|
||||
{
|
||||
HTTPFormBase formImpl = this.FormImpl;
|
||||
if (formImpl == 0)
|
||||
{
|
||||
HTTPFormBase fieldCollector = this.FieldCollector;
|
||||
if (fieldCollector == 0)
|
||||
{
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
HTTPFormUsage httpformUsage = this.<FormUsage>k__BackingField;
|
||||
if (httpformUsage != HTTPFormUsage.Automatic)
|
||||
{
|
||||
if (httpformUsage == HTTPFormUsage.Automatic || httpformUsage == HTTPFormUsage.Automatic)
|
||||
{
|
||||
goto IL_41;
|
||||
}
|
||||
RawJsonForm rawJsonForm = new RawJsonForm();
|
||||
}
|
||||
if (fieldCollector.<HasBinary>k__BackingField || !fieldCollector.<HasLongValue>k__BackingField)
|
||||
{
|
||||
}
|
||||
IL_41:
|
||||
HTTPMultiPartForm httpmultiPartForm = new HTTPMultiPartForm();
|
||||
httpmultiPartForm.Finalize();
|
||||
string text2;
|
||||
string text = "BestHTTP_HTTPMultiPartForm_" + text2;
|
||||
httpmultiPartForm.Boundary = text;
|
||||
this.FormImpl = httpmultiPartForm;
|
||||
string text3 = httpmultiPartForm.ToString();
|
||||
}
|
||||
return formImpl;
|
||||
}
|
||||
|
||||
// Token: 0x06009421 RID: 37921 RVA: 0x001E6184 File Offset: 0x001E4384
|
||||
[Token(Token = "0x6009421")]
|
||||
[Address(RVA = "0x171F370", Offset = "0x171E170", VA = "0x18171F370")]
|
||||
public void AddHeader(string name, string value)
|
||||
{
|
||||
if (this.<Headers>k__BackingField == 0)
|
||||
{
|
||||
Dictionary<string, List<string>> dictionary = new Dictionary();
|
||||
this.<Headers>k__BackingField = dictionary;
|
||||
}
|
||||
bool flag;
|
||||
List<string> list;
|
||||
if (!flag)
|
||||
{
|
||||
Dictionary<string, List<string>> dictionary2 = this.<Headers>k__BackingField;
|
||||
list = new List(1);
|
||||
dictionary2.Add(name, list);
|
||||
}
|
||||
list.Add(value);
|
||||
}
|
||||
|
||||
// Token: 0x06009422 RID: 37922 RVA: 0x001E61D4 File Offset: 0x001E43D4
|
||||
[Token(Token = "0x6009422")]
|
||||
[Address(RVA = "0x17217F0", Offset = "0x17205F0", VA = "0x1817217F0")]
|
||||
public void SetHeader(string name, string value)
|
||||
{
|
||||
if (this.<Headers>k__BackingField == 0)
|
||||
{
|
||||
Dictionary<string, List<string>> dictionary = new Dictionary();
|
||||
this.<Headers>k__BackingField = dictionary;
|
||||
}
|
||||
bool flag;
|
||||
List<string> list;
|
||||
if (!flag)
|
||||
{
|
||||
Dictionary<string, List<string>> dictionary2 = this.<Headers>k__BackingField;
|
||||
list = new List(1);
|
||||
dictionary2.Add(name, list);
|
||||
}
|
||||
list.Clear();
|
||||
list.Add(value);
|
||||
}
|
||||
|
||||
// Token: 0x06009423 RID: 37923 RVA: 0x001E6228 File Offset: 0x001E4428
|
||||
[Token(Token = "0x6009423")]
|
||||
[Address(RVA = "0x17209F0", Offset = "0x171F7F0", VA = "0x1817209F0")]
|
||||
public bool RemoveHeader(string name)
|
||||
{
|
||||
Dictionary<string, List<string>> dictionary = this.<Headers>k__BackingField;
|
||||
if (dictionary != 0)
|
||||
{
|
||||
return dictionary.Remove(name);
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x06009424 RID: 37924 RVA: 0x001E624C File Offset: 0x001E444C
|
||||
[Token(Token = "0x6009424")]
|
||||
[Address(RVA = "0x1720980", Offset = "0x171F780", VA = "0x181720980")]
|
||||
public bool HasHeader(string name)
|
||||
{
|
||||
Dictionary<string, List<string>> dictionary = this.<Headers>k__BackingField;
|
||||
if (dictionary == 0)
|
||||
{
|
||||
}
|
||||
return dictionary.ContainsKey(name);
|
||||
}
|
||||
|
||||
// Token: 0x06009425 RID: 37925 RVA: 0x001E6270 File Offset: 0x001E4470
|
||||
[Token(Token = "0x6009425")]
|
||||
[Address(RVA = "0x17207B0", Offset = "0x171F5B0", VA = "0x1817207B0")]
|
||||
public string GetFirstHeaderValue(string name)
|
||||
{
|
||||
bool flag;
|
||||
if (this.<Headers>k__BackingField != 0 && flag && flag > false && !flag)
|
||||
{
|
||||
ThrowHelper.ThrowArgumentOutOfRangeException();
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x06009426 RID: 37926 RVA: 0x001E62A0 File Offset: 0x001E44A0
|
||||
[Token(Token = "0x6009426")]
|
||||
[Address(RVA = "0x1720900", Offset = "0x171F700", VA = "0x181720900")]
|
||||
public List<string> GetHeaderValues(string name)
|
||||
{
|
||||
bool flag;
|
||||
if (this.<Headers>k__BackingField == 0 || flag)
|
||||
{
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x06009427 RID: 37927 RVA: 0x001E62C4 File Offset: 0x001E44C4
|
||||
[Token(Token = "0x6009427")]
|
||||
[Address(RVA = "0x1720A50", Offset = "0x171F850", VA = "0x181720A50")]
|
||||
public void RemoveHeaders()
|
||||
{
|
||||
Dictionary<string, List<string>> dictionary = this.<Headers>k__BackingField;
|
||||
if (dictionary != 0)
|
||||
{
|
||||
dictionary.Clear();
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x06009428 RID: 37928 RVA: 0x001E62E4 File Offset: 0x001E44E4
|
||||
[Token(Token = "0x6009428")]
|
||||
[Address(RVA = "0x17219C0", Offset = "0x17207C0", VA = "0x1817219C0")]
|
||||
public void SetRangeHeader(int firstBytePos)
|
||||
{
|
||||
string text = string.Format("bytes={0}-", firstBytePos);
|
||||
this.SetHeader("Range", text);
|
||||
}
|
||||
|
||||
// Token: 0x06009429 RID: 37929 RVA: 0x001E630C File Offset: 0x001E450C
|
||||
[Token(Token = "0x6009429")]
|
||||
[Address(RVA = "0x1721920", Offset = "0x1720720", VA = "0x181721920")]
|
||||
public void SetRangeHeader(int firstBytePos, int lastBytePos)
|
||||
{
|
||||
string text = string.Format("bytes={0}-{1}", firstBytePos, lastBytePos);
|
||||
this.SetHeader("Range", text);
|
||||
}
|
||||
|
||||
// Token: 0x0600942A RID: 37930 RVA: 0x001E6334 File Offset: 0x001E4534
|
||||
[Token(Token = "0x600942A")]
|
||||
[Address(RVA = "0x1720650", Offset = "0x171F450", VA = "0x181720650")]
|
||||
public void EnumerateHeaders(OnHeaderEnumerationDelegate callback)
|
||||
{
|
||||
int num = 0;
|
||||
this.EnumerateHeaders(callback, num != 0);
|
||||
}
|
||||
|
||||
// Token: 0x0600942B RID: 37931 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600942B")]
|
||||
[Address(RVA = "0x171F8D0", Offset = "0x171E6D0", VA = "0x18171F8D0")]
|
||||
public void EnumerateHeaders(OnHeaderEnumerationDelegate callback, bool callBeforeSendCallback)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x0600942C RID: 37932 RVA: 0x001E634C File Offset: 0x001E454C
|
||||
[Token(Token = "0x600942C")]
|
||||
[Address(RVA = "0x1720C50", Offset = "0x171FA50", VA = "0x181720C50")]
|
||||
private void SendHeaders(Stream stream)
|
||||
{
|
||||
OnHeaderEnumerationDelegate onHeaderEnumerationDelegate = delegate(string header, List<string> values)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
};
|
||||
this.EnumerateHeaders(onHeaderEnumerationDelegate, true);
|
||||
Action<HTTPRequest, Stream> onSendingHeaders = this.OnSendingHeaders;
|
||||
if (onSendingHeaders != 0)
|
||||
{
|
||||
Stream stream2 = stream;
|
||||
onSendingHeaders(this, stream2);
|
||||
}
|
||||
ILogger logger = HTTPManager.Logger;
|
||||
}
|
||||
|
||||
// Token: 0x0600942D RID: 37933 RVA: 0x001E63AC File Offset: 0x001E45AC
|
||||
[Token(Token = "0x600942D")]
|
||||
[Address(RVA = "0x171F6E0", Offset = "0x171E4E0", VA = "0x18171F6E0")]
|
||||
public string DumpHeaders()
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
BufferPoolMemoryStream bufferPoolMemoryStream = new BufferPoolMemoryStream(5120);
|
||||
this.SendHeaders(bufferPoolMemoryStream);
|
||||
byte[] array = bufferPoolMemoryStream.ToArray();
|
||||
int length;
|
||||
StringBuilder stringBuilder = new StringBuilder(length);
|
||||
length = array.Length;
|
||||
int length2 = array.Length;
|
||||
if (num < length2)
|
||||
{
|
||||
byte b;
|
||||
StringBuilder stringBuilder2 = stringBuilder.Append((char)b);
|
||||
num++;
|
||||
}
|
||||
int hashCode = stringBuilder.GetHashCode();
|
||||
if (bufferPoolMemoryStream != 0)
|
||||
{
|
||||
}
|
||||
}
|
||||
while (num != 0);
|
||||
throw new IndexOutOfRangeException();
|
||||
}
|
||||
|
||||
// Token: 0x0600942E RID: 37934 RVA: 0x001E6434 File Offset: 0x001E4634
|
||||
[Token(Token = "0x600942E")]
|
||||
[Address(RVA = "0x1720710", Offset = "0x171F510", VA = "0x181720710")]
|
||||
public byte[] GetEntityBody()
|
||||
{
|
||||
byte[] array = this.<RawData>k__BackingField;
|
||||
if (array == 0)
|
||||
{
|
||||
if (this.FormImpl == array)
|
||||
{
|
||||
HTTPFormBase fieldCollector = this.FieldCollector;
|
||||
if (fieldCollector == 0 || fieldCollector.<Fields>k__BackingField == 0)
|
||||
{
|
||||
goto IL_38;
|
||||
}
|
||||
}
|
||||
HTTPFormBase httpformBase = this.SelectFormImplementation();
|
||||
if (this.FormImpl == 0)
|
||||
{
|
||||
}
|
||||
IL_38:;
|
||||
}
|
||||
return array;
|
||||
}
|
||||
|
||||
// Token: 0x0600942F RID: 37935 RVA: 0x001E647C File Offset: 0x001E467C
|
||||
[Token(Token = "0x600942F")]
|
||||
[Address(RVA = "0x1720DA0", Offset = "0x171FBA0", VA = "0x181720DA0")]
|
||||
internal void SendOutTo(Stream stream)
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
if (this.<Proxy>k__BackingField == 0 || (this.<IsRedirected>k__BackingField ? 1 : 0) != num)
|
||||
{
|
||||
}
|
||||
if (this.<IsRedirected>k__BackingField)
|
||||
{
|
||||
}
|
||||
string parts = this.<Uri>k__BackingField.GetParts(UriComponents.PathAndQuery, UriFormat.UriEscaped);
|
||||
string[] methodNames = HTTPRequest.MethodNames;
|
||||
HTTPMethods httpmethods = this.<MethodType>k__BackingField;
|
||||
string text = methodNames[(int)httpmethods];
|
||||
string text2 = string.Format("{0} {1} HTTP/1.1", text, "/");
|
||||
if (HTTPManager.Logger <= (ulong)1L)
|
||||
{
|
||||
ILogger logger = HTTPManager.Logger;
|
||||
string text3 = string.Format("Sending request: '{0}'", text2);
|
||||
}
|
||||
WriteOnlyBufferedStream writeOnlyBufferedStream;
|
||||
int num2 = writeOnlyBufferedStream.ReadByte();
|
||||
byte[] eol = HTTPRequest.EOL;
|
||||
int num3 = writeOnlyBufferedStream.ReadByte();
|
||||
byte[] array;
|
||||
VariableSizedBufferPool.Release(array);
|
||||
this.SendHeaders(writeOnlyBufferedStream);
|
||||
byte[] eol2 = HTTPRequest.EOL;
|
||||
int num4 = writeOnlyBufferedStream.ReadByte();
|
||||
if (this.<RawData>k__BackingField == 0)
|
||||
{
|
||||
if (this.FormImpl != 0)
|
||||
{
|
||||
}
|
||||
if (this.<UploadStream>k__BackingField == (ulong)0L)
|
||||
{
|
||||
}
|
||||
}
|
||||
if (this.<UploadStream>k__BackingField != 0)
|
||||
{
|
||||
long uploadStreamLength;
|
||||
if (this.<UseUploadStreamLength>k__BackingField)
|
||||
{
|
||||
uploadStreamLength = this.UploadStreamLength;
|
||||
}
|
||||
this.<UploadLength>k__BackingField = uploadStreamLength;
|
||||
}
|
||||
MemoryStream memoryStream;
|
||||
this.<UploadLength>k__BackingField = memoryStream;
|
||||
this.<Uploaded>k__BackingField = (long)num;
|
||||
ulong num5;
|
||||
byte[] array2 = VariableSizedBufferPool.Get((long)HTTPRequest.UploadChunkSize, num5 != 0UL);
|
||||
if (!this.<UseUploadStreamLength>k__BackingField)
|
||||
{
|
||||
string text4;
|
||||
byte[] asciibytes = text4.GetASCIIBytes();
|
||||
ChunkHelper.WriteBytesToStream(writeOnlyBufferedStream, asciibytes);
|
||||
byte[] eol3 = HTTPRequest.EOL;
|
||||
ChunkHelper.WriteBytesToStream(writeOnlyBufferedStream, eol3);
|
||||
VariableSizedBufferPool.Release(asciibytes);
|
||||
}
|
||||
int num6 = writeOnlyBufferedStream.ReadByte();
|
||||
if (!this.<UseUploadStreamLength>k__BackingField)
|
||||
{
|
||||
}
|
||||
this.<UploadProgressChanged>k__BackingField = true;
|
||||
VariableSizedBufferPool.Release(array2);
|
||||
if (!this.<UseUploadStreamLength>k__BackingField)
|
||||
{
|
||||
int num7 = writeOnlyBufferedStream.ReadByte();
|
||||
byte[] eol4 = HTTPRequest.EOL;
|
||||
int num8 = writeOnlyBufferedStream.ReadByte();
|
||||
byte[] eol5 = HTTPRequest.EOL;
|
||||
int num9 = writeOnlyBufferedStream.ReadByte();
|
||||
byte[] array3;
|
||||
VariableSizedBufferPool.Release(array3);
|
||||
}
|
||||
if (this.<UploadStream>k__BackingField != (ulong)0L)
|
||||
{
|
||||
}
|
||||
memoryStream.Dispose();
|
||||
if (writeOnlyBufferedStream != 0)
|
||||
{
|
||||
}
|
||||
if (num != 0)
|
||||
{
|
||||
goto IL_238;
|
||||
}
|
||||
if (num != -1)
|
||||
{
|
||||
}
|
||||
ILogger logger2 = HTTPManager.Logger;
|
||||
Stream stream2 = this.<UploadStream>k__BackingField;
|
||||
if (stream2 != 0 && this.<DisposeUploadStream>k__BackingField)
|
||||
{
|
||||
stream2.Dispose();
|
||||
}
|
||||
}
|
||||
while (num != 0);
|
||||
return;
|
||||
IL_238:
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x06009430 RID: 37936 RVA: 0x001E66D8 File Offset: 0x001E48D8
|
||||
[Token(Token = "0x6009430")]
|
||||
[Address(RVA = "0x1721A40", Offset = "0x1720840", VA = "0x181721A40")]
|
||||
internal void UpgradeCallback()
|
||||
{
|
||||
HTTPResponse httpresponse = this.<Response>k__BackingField;
|
||||
if (httpresponse != 0 && httpresponse.<IsUpgraded>k__BackingField)
|
||||
{
|
||||
OnRequestFinishedDelegate onUpgraded = this.OnUpgraded;
|
||||
if (onUpgraded != 0)
|
||||
{
|
||||
HTTPResponse httpresponse2 = this.<Response>k__BackingField;
|
||||
onUpgraded(this, httpresponse2);
|
||||
}
|
||||
ILogger logger = HTTPManager.Logger;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x06009431 RID: 37937 RVA: 0x001E6724 File Offset: 0x001E4924
|
||||
[Token(Token = "0x6009431")]
|
||||
[Address(RVA = "0x171F490", Offset = "0x171E290", VA = "0x18171F490")]
|
||||
internal void CallCallback()
|
||||
{
|
||||
OnRequestFinishedDelegate onRequestFinishedDelegate = this.<Callback>k__BackingField;
|
||||
if (onRequestFinishedDelegate != 0)
|
||||
{
|
||||
HTTPResponse httpresponse = this.<Response>k__BackingField;
|
||||
onRequestFinishedDelegate(this, httpresponse);
|
||||
}
|
||||
ILogger logger = HTTPManager.Logger;
|
||||
}
|
||||
|
||||
// Token: 0x06009432 RID: 37938 RVA: 0x001E675C File Offset: 0x001E495C
|
||||
[Token(Token = "0x6009432")]
|
||||
[Address(RVA = "0x171F5E0", Offset = "0x171E3E0", VA = "0x18171F5E0")]
|
||||
internal bool CallOnBeforeRedirection(Uri redirectUri)
|
||||
{
|
||||
OnBeforeRedirectionDelegate onBeforeRedirectionDelegate = this.onBeforeRedirection;
|
||||
if (onBeforeRedirectionDelegate == 0)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
HTTPResponse httpresponse = this.<Response>k__BackingField;
|
||||
return onBeforeRedirectionDelegate(this, httpresponse, redirectUri);
|
||||
}
|
||||
|
||||
// Token: 0x06009433 RID: 37939 RVA: 0x001E6788 File Offset: 0x001E4988
|
||||
[Token(Token = "0x6009433")]
|
||||
[Address(RVA = "0x1720660", Offset = "0x171F460", VA = "0x181720660")]
|
||||
internal void FinishStreaming()
|
||||
{
|
||||
HTTPResponse httpresponse = this.<Response>k__BackingField;
|
||||
if (httpresponse != 0 && this.useStreaming)
|
||||
{
|
||||
if (HTTPManager.Logger == 0)
|
||||
{
|
||||
httpresponse.VerboseLogging("FinishStreaming");
|
||||
}
|
||||
httpresponse.<IsStreamingFinished>k__BackingField = true;
|
||||
httpresponse.Dispose();
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x06009434 RID: 37940 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x6009434")]
|
||||
[Address(RVA = "0x402080", Offset = "0x400E80", VA = "0x180402080")]
|
||||
internal void Prepare()
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x06009435 RID: 37941 RVA: 0x001E67D4 File Offset: 0x001E49D4
|
||||
[Token(Token = "0x6009435")]
|
||||
[Address(RVA = "0x171F560", Offset = "0x171E360", VA = "0x18171F560")]
|
||||
internal bool CallCustomCertificationValidator(X509Certificate cert, X509Chain chain)
|
||||
{
|
||||
Func<HTTPRequest, X509Certificate, X509Chain, bool> customCertificationValidator = this.CustomCertificationValidator;
|
||||
return customCertificationValidator == 0 || customCertificationValidator(this, cert, chain) != null;
|
||||
}
|
||||
|
||||
// Token: 0x06009436 RID: 37942 RVA: 0x001E67F8 File Offset: 0x001E49F8
|
||||
[Token(Token = "0x6009436")]
|
||||
[Address(RVA = "0x1721790", Offset = "0x1720590", VA = "0x181721790")]
|
||||
public HTTPRequest Send()
|
||||
{
|
||||
return HTTPManager.SendRequest(this);
|
||||
}
|
||||
|
||||
// Token: 0x06009437 RID: 37943 RVA: 0x001E680C File Offset: 0x001E4A0C
|
||||
[Token(Token = "0x6009437")]
|
||||
[Address(RVA = "0x171ED40", Offset = "0x171DB40", VA = "0x18171ED40")]
|
||||
public void Abort()
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (06009437)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.HTTPRequest::Abort()
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_C0:
|
||||
stloc:Exception(var_12_CA, newobj:Exception(Exception::.ctor, ldstr:string("Wasn't able to acquire a thread lock. Abort failed!")))
|
||||
}
|
||||
|
||||
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: 0x06009438 RID: 37944 RVA: 0x001E68E4 File Offset: 0x001E4AE4
|
||||
[Token(Token = "0x6009438")]
|
||||
[Address(RVA = "0x171F640", Offset = "0x171E440", VA = "0x18171F640")]
|
||||
public void Clear()
|
||||
{
|
||||
int num = 0;
|
||||
this.FormImpl = num;
|
||||
this.FieldCollector = num;
|
||||
Dictionary<string, List<string>> dictionary = this.<Headers>k__BackingField;
|
||||
if (dictionary != 0)
|
||||
{
|
||||
dictionary.Clear();
|
||||
}
|
||||
this.<IsRedirected>k__BackingField = num != 0;
|
||||
this.<RedirectCount>k__BackingField = num;
|
||||
this.<DownloadLength>k__BackingField = (long)num;
|
||||
this.<Downloaded>k__BackingField = (long)num;
|
||||
}
|
||||
|
||||
// Token: 0x06009439 RID: 37945 RVA: 0x001E6930 File Offset: 0x001E4B30
|
||||
[Token(Token = "0x6009439")]
|
||||
[Address(RVA = "0x1721B20", Offset = "0x1720920", VA = "0x181721B20")]
|
||||
private void VerboseLogging(string str)
|
||||
{
|
||||
ILogger logger = HTTPManager.Logger;
|
||||
if (this.<IsRedirected>k__BackingField)
|
||||
{
|
||||
}
|
||||
int hashCode = this.<Uri>k__BackingField.GetHashCode();
|
||||
}
|
||||
|
||||
// Token: 0x17001790 RID: 6032
|
||||
// (get) Token: 0x0600943A RID: 37946 RVA: 0x001E6960 File Offset: 0x001E4B60
|
||||
[Token(Token = "0x17001790")]
|
||||
public object Current
|
||||
{
|
||||
[Token(Token = "0x600943A")]
|
||||
[Address(RVA = "0x43E630", Offset = "0x43D430", VA = "0x18043E630", Slot = "5")]
|
||||
get
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600943B RID: 37947 RVA: 0x001E6970 File Offset: 0x001E4B70
|
||||
[Token(Token = "0x600943B")]
|
||||
[Address(RVA = "0x17209E0", Offset = "0x171F7E0", VA = "0x1817209E0", Slot = "4")]
|
||||
public bool MoveNext()
|
||||
{
|
||||
return this.<State>k__BackingField < HTTPRequestStates.Finished;
|
||||
}
|
||||
|
||||
// Token: 0x0600943C RID: 37948 RVA: 0x001E6988 File Offset: 0x001E4B88
|
||||
[Token(Token = "0x600943C")]
|
||||
[Address(RVA = "0x1720AA0", Offset = "0x171F8A0", VA = "0x181720AA0", Slot = "6")]
|
||||
public void Reset()
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600943C)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.HTTPRequest::Reset()
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
Block_0:
|
||||
stloc:NotImplementedException(var_0_05, newobj:NotImplementedException(NotImplementedException::.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: 0x17001791 RID: 6033
|
||||
// (get) Token: 0x0600943D RID: 37949 RVA: 0x001E699C File Offset: 0x001E4B9C
|
||||
[Token(Token = "0x17001791")]
|
||||
HTTPRequest IEnumerator<HTTPRequest>.Current
|
||||
{
|
||||
[Token(Token = "0x600943D")]
|
||||
[Address(RVA = "0x434BD0", Offset = "0x4339D0", VA = "0x180434BD0", Slot = "7")]
|
||||
get
|
||||
{
|
||||
return this;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600943E RID: 37950 RVA: 0x001E69AC File Offset: 0x001E4BAC
|
||||
[Token(Token = "0x600943E")]
|
||||
[Address(RVA = "0x171F6C0", Offset = "0x171E4C0", VA = "0x18171F6C0", Slot = "8")]
|
||||
public void Dispose()
|
||||
{
|
||||
HTTPResponse httpresponse = this.<Response>k__BackingField;
|
||||
if (httpresponse != 0)
|
||||
{
|
||||
httpresponse.Dispose();
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600943F RID: 37951 RVA: 0x001E69CC File Offset: 0x001E4BCC
|
||||
// Note: this type is marked as 'beforefieldinit'.
|
||||
[Token(Token = "0x600943F")]
|
||||
[Address(RVA = "0x1721C00", Offset = "0x1720A00", VA = "0x181721C00")]
|
||||
static HTTPRequest()
|
||||
{
|
||||
byte[] array = new byte[2];
|
||||
array[0] = (byte)((ulong)13L);
|
||||
array[0] = (byte)((ulong)10L);
|
||||
HTTPRequest.EOL = array;
|
||||
string[] array2 = new string[8];
|
||||
int num = array2.GetHashCode();
|
||||
string text;
|
||||
if (text != 0)
|
||||
{
|
||||
}
|
||||
array2[0] = text;
|
||||
HTTPMethods httpmethods;
|
||||
num = httpmethods.GetHashCode();
|
||||
string text2;
|
||||
if (text2 != 0)
|
||||
{
|
||||
}
|
||||
array2[1] = text2;
|
||||
num = text2.GetHashCode();
|
||||
string text3;
|
||||
if (text3 != 0)
|
||||
{
|
||||
}
|
||||
array2[2] = text3;
|
||||
num = text3.GetHashCode();
|
||||
string text4;
|
||||
if (text4 != 0)
|
||||
{
|
||||
}
|
||||
array2[3] = text4;
|
||||
num = text4.GetHashCode();
|
||||
string text5;
|
||||
if (text5 != 0)
|
||||
{
|
||||
}
|
||||
array2[4] = text5;
|
||||
num = text5.GetHashCode();
|
||||
string text6;
|
||||
if (text6 != 0)
|
||||
{
|
||||
}
|
||||
array2[5] = text6;
|
||||
num = text6.GetHashCode();
|
||||
string text7;
|
||||
if (text7 != 0)
|
||||
{
|
||||
}
|
||||
array2[6] = text7;
|
||||
num = text7.GetHashCode();
|
||||
string text8;
|
||||
if (text8 != 0)
|
||||
{
|
||||
}
|
||||
array2[7] = text8;
|
||||
HTTPRequest.MethodNames = array2;
|
||||
}
|
||||
|
||||
// Token: 0x040064D1 RID: 25809
|
||||
[Token(Token = "0x40064D1")]
|
||||
public static readonly byte[] EOL;
|
||||
|
||||
// Token: 0x040064D2 RID: 25810
|
||||
[Token(Token = "0x40064D2")]
|
||||
public static readonly string[] MethodNames;
|
||||
|
||||
// Token: 0x040064D3 RID: 25811
|
||||
[Token(Token = "0x40064D3")]
|
||||
public static int UploadChunkSize;
|
||||
|
||||
// Token: 0x040064DA RID: 25818
|
||||
[FieldOffset(Offset = "0x38")]
|
||||
[Token(Token = "0x40064DA")]
|
||||
public OnUploadProgressDelegate OnUploadProgress;
|
||||
|
||||
// Token: 0x040064DD RID: 25821
|
||||
[FieldOffset(Offset = "0x50")]
|
||||
[Token(Token = "0x40064DD")]
|
||||
public OnDownloadProgressDelegate OnProgress;
|
||||
|
||||
// Token: 0x040064DE RID: 25822
|
||||
[FieldOffset(Offset = "0x58")]
|
||||
[Token(Token = "0x40064DE")]
|
||||
public OnRequestFinishedDelegate OnUpgraded;
|
||||
|
||||
// Token: 0x040064EB RID: 25835
|
||||
[FieldOffset(Offset = "0xA8")]
|
||||
[Token(Token = "0x40064EB")]
|
||||
private List<Cookie> customCookies;
|
||||
|
||||
// Token: 0x040064F9 RID: 25849
|
||||
[FieldOffset(Offset = "0x100")]
|
||||
[Token(Token = "0x40064F9")]
|
||||
private OnBeforeRedirectionDelegate onBeforeRedirection;
|
||||
|
||||
// Token: 0x040064FA RID: 25850
|
||||
[FieldOffset(Offset = "0x108")]
|
||||
[Token(Token = "0x40064FA")]
|
||||
private OnBeforeHeaderSendDelegate _onBeforeHeaderSend;
|
||||
|
||||
// Token: 0x04006503 RID: 25859
|
||||
[FieldOffset(Offset = "0x149")]
|
||||
[Token(Token = "0x4006503")]
|
||||
private bool isKeepAlive;
|
||||
|
||||
// Token: 0x04006504 RID: 25860
|
||||
[FieldOffset(Offset = "0x14A")]
|
||||
[Token(Token = "0x4006504")]
|
||||
private bool disableCache;
|
||||
|
||||
// Token: 0x04006505 RID: 25861
|
||||
[FieldOffset(Offset = "0x14B")]
|
||||
[Token(Token = "0x4006505")]
|
||||
private bool cacheOnly;
|
||||
|
||||
// Token: 0x04006506 RID: 25862
|
||||
[FieldOffset(Offset = "0x14C")]
|
||||
[Token(Token = "0x4006506")]
|
||||
private int streamFragmentSize;
|
||||
|
||||
// Token: 0x04006507 RID: 25863
|
||||
[FieldOffset(Offset = "0x150")]
|
||||
[Token(Token = "0x4006507")]
|
||||
private bool useStreaming;
|
||||
|
||||
// Token: 0x04006509 RID: 25865
|
||||
[FieldOffset(Offset = "0x160")]
|
||||
[Token(Token = "0x4006509")]
|
||||
private HTTPFormBase FieldCollector;
|
||||
|
||||
// Token: 0x0400650A RID: 25866
|
||||
[FieldOffset(Offset = "0x168")]
|
||||
[Token(Token = "0x400650A")]
|
||||
private HTTPFormBase FormImpl;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,35 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP
|
||||
{
|
||||
// Token: 0x0200189B RID: 6299
|
||||
[Token(Token = "0x200189B")]
|
||||
public enum HTTPRequestStates
|
||||
{
|
||||
// Token: 0x040064C9 RID: 25801
|
||||
[Token(Token = "0x40064C9")]
|
||||
Initial,
|
||||
// Token: 0x040064CA RID: 25802
|
||||
[Token(Token = "0x40064CA")]
|
||||
Queued,
|
||||
// Token: 0x040064CB RID: 25803
|
||||
[Token(Token = "0x40064CB")]
|
||||
Processing,
|
||||
// Token: 0x040064CC RID: 25804
|
||||
[Token(Token = "0x40064CC")]
|
||||
Finished,
|
||||
// Token: 0x040064CD RID: 25805
|
||||
[Token(Token = "0x40064CD")]
|
||||
Error,
|
||||
// Token: 0x040064CE RID: 25806
|
||||
[Token(Token = "0x40064CE")]
|
||||
Aborted,
|
||||
// Token: 0x040064CF RID: 25807
|
||||
[Token(Token = "0x40064CF")]
|
||||
ConnectionTimedOut,
|
||||
// Token: 0x040064D0 RID: 25808
|
||||
[Token(Token = "0x40064D0")]
|
||||
TimedOut
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,1450 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Text;
|
||||
using System.Threading;
|
||||
using BestHTTP.Caching;
|
||||
using BestHTTP.Cookies;
|
||||
using BestHTTP.Decompression.Zlib;
|
||||
using BestHTTP.Extensions;
|
||||
using BestHTTP.Logger;
|
||||
using Cpp2IlInjected;
|
||||
using UnityEngine;
|
||||
|
||||
namespace BestHTTP
|
||||
{
|
||||
// Token: 0x020018A6 RID: 6310
|
||||
[Token(Token = "0x20018A6")]
|
||||
public class HTTPResponse : IDisposable
|
||||
{
|
||||
// Token: 0x17001793 RID: 6035
|
||||
// (get) Token: 0x06009446 RID: 37958 RVA: 0x001E6B14 File Offset: 0x001E4D14
|
||||
// (set) Token: 0x06009447 RID: 37959 RVA: 0x001E6B28 File Offset: 0x001E4D28
|
||||
[Token(Token = "0x17001793")]
|
||||
public int VersionMajor
|
||||
{
|
||||
[Token(Token = "0x6009446")]
|
||||
[Address(RVA = "0x3FA560", Offset = "0x3F9360", VA = "0x1803FA560")]
|
||||
get;
|
||||
[Token(Token = "0x6009447")]
|
||||
[Address(RVA = "0x536480", Offset = "0x535280", VA = "0x180536480")]
|
||||
protected set;
|
||||
}
|
||||
|
||||
// Token: 0x17001794 RID: 6036
|
||||
// (get) Token: 0x06009448 RID: 37960 RVA: 0x001E6B3C File Offset: 0x001E4D3C
|
||||
// (set) Token: 0x06009449 RID: 37961 RVA: 0x001E6B50 File Offset: 0x001E4D50
|
||||
[Token(Token = "0x17001794")]
|
||||
public int VersionMinor
|
||||
{
|
||||
[Token(Token = "0x6009448")]
|
||||
[Address(RVA = "0x495080", Offset = "0x493E80", VA = "0x180495080")]
|
||||
get;
|
||||
[Token(Token = "0x6009449")]
|
||||
[Address(RVA = "0x52EC20", Offset = "0x52DA20", VA = "0x18052EC20")]
|
||||
protected set;
|
||||
}
|
||||
|
||||
// Token: 0x17001795 RID: 6037
|
||||
// (get) Token: 0x0600944A RID: 37962 RVA: 0x001E6B64 File Offset: 0x001E4D64
|
||||
// (set) Token: 0x0600944B RID: 37963 RVA: 0x001E6B78 File Offset: 0x001E4D78
|
||||
[Token(Token = "0x17001795")]
|
||||
public int StatusCode
|
||||
{
|
||||
[Token(Token = "0x600944A")]
|
||||
[Address(RVA = "0x40B720", Offset = "0x40A520", VA = "0x18040B720")]
|
||||
get;
|
||||
[Token(Token = "0x600944B")]
|
||||
[Address(RVA = "0x41F740", Offset = "0x41E540", VA = "0x18041F740")]
|
||||
protected set;
|
||||
}
|
||||
|
||||
// Token: 0x17001796 RID: 6038
|
||||
// (get) Token: 0x0600944C RID: 37964 RVA: 0x001E6B8C File Offset: 0x001E4D8C
|
||||
[Token(Token = "0x17001796")]
|
||||
public bool IsSuccess
|
||||
{
|
||||
[Token(Token = "0x600944C")]
|
||||
[Address(RVA = "0x1727BB0", Offset = "0x17269B0", VA = "0x181727BB0")]
|
||||
get
|
||||
{
|
||||
int num = this.<StatusCode>k__BackingField;
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17001797 RID: 6039
|
||||
// (get) Token: 0x0600944D RID: 37965 RVA: 0x001E6BAC File Offset: 0x001E4DAC
|
||||
// (set) Token: 0x0600944E RID: 37966 RVA: 0x001E6BC0 File Offset: 0x001E4DC0
|
||||
[Token(Token = "0x17001797")]
|
||||
public string Message
|
||||
{
|
||||
[Token(Token = "0x600944D")]
|
||||
[Address(RVA = "0x3F6400", Offset = "0x3F5200", VA = "0x1803F6400")]
|
||||
get;
|
||||
[Token(Token = "0x600944E")]
|
||||
[Address(RVA = "0x460F90", Offset = "0x45FD90", VA = "0x180460F90")]
|
||||
protected set;
|
||||
}
|
||||
|
||||
// Token: 0x17001798 RID: 6040
|
||||
// (get) Token: 0x0600944F RID: 37967 RVA: 0x001E6BD4 File Offset: 0x001E4DD4
|
||||
// (set) Token: 0x06009450 RID: 37968 RVA: 0x001E6BE8 File Offset: 0x001E4DE8
|
||||
[Token(Token = "0x17001798")]
|
||||
public bool IsStreamed
|
||||
{
|
||||
[Token(Token = "0x600944F")]
|
||||
[Address(RVA = "0x494270", Offset = "0x493070", VA = "0x180494270")]
|
||||
get;
|
||||
[Token(Token = "0x6009450")]
|
||||
[Address(RVA = "0x494500", Offset = "0x493300", VA = "0x180494500")]
|
||||
protected set;
|
||||
}
|
||||
|
||||
// Token: 0x17001799 RID: 6041
|
||||
// (get) Token: 0x06009451 RID: 37969 RVA: 0x001E6BFC File Offset: 0x001E4DFC
|
||||
// (set) Token: 0x06009452 RID: 37970 RVA: 0x001E6C10 File Offset: 0x001E4E10
|
||||
[Token(Token = "0x17001799")]
|
||||
public bool IsStreamingFinished
|
||||
{
|
||||
[Token(Token = "0x6009451")]
|
||||
[Address(RVA = "0x494260", Offset = "0x493060", VA = "0x180494260")]
|
||||
get;
|
||||
[Token(Token = "0x6009452")]
|
||||
[Address(RVA = "0x4944F0", Offset = "0x4932F0", VA = "0x1804944F0")]
|
||||
internal set;
|
||||
}
|
||||
|
||||
// Token: 0x1700179A RID: 6042
|
||||
// (get) Token: 0x06009453 RID: 37971 RVA: 0x001E6C24 File Offset: 0x001E4E24
|
||||
// (set) Token: 0x06009454 RID: 37972 RVA: 0x001E6C38 File Offset: 0x001E4E38
|
||||
[Token(Token = "0x1700179A")]
|
||||
public bool IsFromCache
|
||||
{
|
||||
[Token(Token = "0x6009453")]
|
||||
[Address(RVA = "0x494240", Offset = "0x493040", VA = "0x180494240")]
|
||||
get;
|
||||
[Token(Token = "0x6009454")]
|
||||
[Address(RVA = "0x6CEB60", Offset = "0x6CD960", VA = "0x1806CEB60")]
|
||||
internal set;
|
||||
}
|
||||
|
||||
// Token: 0x1700179B RID: 6043
|
||||
// (get) Token: 0x06009455 RID: 37973 RVA: 0x001E6C4C File Offset: 0x001E4E4C
|
||||
// (set) Token: 0x06009456 RID: 37974 RVA: 0x001E6C60 File Offset: 0x001E4E60
|
||||
[Token(Token = "0x1700179B")]
|
||||
public HTTPCacheFileInfo CacheFileInfo
|
||||
{
|
||||
[Token(Token = "0x6009455")]
|
||||
[Address(RVA = "0x3FA180", Offset = "0x3F8F80", VA = "0x1803FA180")]
|
||||
get;
|
||||
[Token(Token = "0x6009456")]
|
||||
[Address(RVA = "0x4437E0", Offset = "0x4425E0", VA = "0x1804437E0")]
|
||||
internal set;
|
||||
}
|
||||
|
||||
// Token: 0x1700179C RID: 6044
|
||||
// (get) Token: 0x06009457 RID: 37975 RVA: 0x001E6C74 File Offset: 0x001E4E74
|
||||
// (set) Token: 0x06009458 RID: 37976 RVA: 0x001E6C88 File Offset: 0x001E4E88
|
||||
[Token(Token = "0x1700179C")]
|
||||
public bool IsCacheOnly
|
||||
{
|
||||
[Token(Token = "0x6009457")]
|
||||
[Address(RVA = "0x43A970", Offset = "0x439770", VA = "0x18043A970")]
|
||||
get;
|
||||
[Token(Token = "0x6009458")]
|
||||
[Address(RVA = "0x43ABB0", Offset = "0x4399B0", VA = "0x18043ABB0")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x1700179D RID: 6045
|
||||
// (get) Token: 0x06009459 RID: 37977 RVA: 0x001E6C9C File Offset: 0x001E4E9C
|
||||
// (set) Token: 0x0600945A RID: 37978 RVA: 0x001E6CB0 File Offset: 0x001E4EB0
|
||||
[Token(Token = "0x1700179D")]
|
||||
public Dictionary<string, List<string>> Headers
|
||||
{
|
||||
[Token(Token = "0x6009459")]
|
||||
[Address(RVA = "0x408890", Offset = "0x407690", VA = "0x180408890")]
|
||||
get;
|
||||
[Token(Token = "0x600945A")]
|
||||
[Address(RVA = "0x403B30", Offset = "0x402930", VA = "0x180403B30")]
|
||||
protected set;
|
||||
}
|
||||
|
||||
// Token: 0x1700179E RID: 6046
|
||||
// (get) Token: 0x0600945B RID: 37979 RVA: 0x001E6CC4 File Offset: 0x001E4EC4
|
||||
// (set) Token: 0x0600945C RID: 37980 RVA: 0x001E6CD8 File Offset: 0x001E4ED8
|
||||
[Token(Token = "0x1700179E")]
|
||||
public byte[] Data
|
||||
{
|
||||
[Token(Token = "0x600945B")]
|
||||
[Address(RVA = "0x3FA170", Offset = "0x3F8F70", VA = "0x1803FA170")]
|
||||
get;
|
||||
[Token(Token = "0x600945C")]
|
||||
[Address(RVA = "0x46AA50", Offset = "0x469850", VA = "0x18046AA50")]
|
||||
internal set;
|
||||
}
|
||||
|
||||
// Token: 0x1700179F RID: 6047
|
||||
// (get) Token: 0x0600945D RID: 37981 RVA: 0x001E6CEC File Offset: 0x001E4EEC
|
||||
// (set) Token: 0x0600945E RID: 37982 RVA: 0x001E6D00 File Offset: 0x001E4F00
|
||||
[Token(Token = "0x1700179F")]
|
||||
public bool IsUpgraded
|
||||
{
|
||||
[Token(Token = "0x600945D")]
|
||||
[Address(RVA = "0x7722A0", Offset = "0x7710A0", VA = "0x1807722A0")]
|
||||
get;
|
||||
[Token(Token = "0x600945E")]
|
||||
[Address(RVA = "0x781F80", Offset = "0x780D80", VA = "0x180781F80")]
|
||||
protected set;
|
||||
}
|
||||
|
||||
// Token: 0x170017A0 RID: 6048
|
||||
// (get) Token: 0x0600945F RID: 37983 RVA: 0x001E6D14 File Offset: 0x001E4F14
|
||||
// (set) Token: 0x06009460 RID: 37984 RVA: 0x001E6D28 File Offset: 0x001E4F28
|
||||
[Token(Token = "0x170017A0")]
|
||||
public List<Cookie> Cookies
|
||||
{
|
||||
[Token(Token = "0x600945F")]
|
||||
[Address(RVA = "0x423D40", Offset = "0x422B40", VA = "0x180423D40")]
|
||||
get;
|
||||
[Token(Token = "0x6009460")]
|
||||
[Address(RVA = "0x466B90", Offset = "0x465990", VA = "0x180466B90")]
|
||||
internal set;
|
||||
}
|
||||
|
||||
// Token: 0x170017A1 RID: 6049
|
||||
// (get) Token: 0x06009461 RID: 37985 RVA: 0x001E6D3C File Offset: 0x001E4F3C
|
||||
[Token(Token = "0x170017A1")]
|
||||
public string DataAsText
|
||||
{
|
||||
[Token(Token = "0x6009461")]
|
||||
[Address(RVA = "0x1727A40", Offset = "0x1726840", VA = "0x181727A40")]
|
||||
get
|
||||
{
|
||||
if (this.<Data>k__BackingField == (ulong)0L)
|
||||
{
|
||||
return string.Empty;
|
||||
}
|
||||
if (string.IsNullOrEmpty(this.dataAsText))
|
||||
{
|
||||
Encoding utf = Encoding.UTF8;
|
||||
byte[] array = this.<Data>k__BackingField;
|
||||
string @string = utf.GetString(array);
|
||||
this.dataAsText = @string;
|
||||
return @string;
|
||||
}
|
||||
return this.dataAsText;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x170017A2 RID: 6050
|
||||
// (get) Token: 0x06009462 RID: 37986 RVA: 0x001E6D94 File Offset: 0x001E4F94
|
||||
[Token(Token = "0x170017A2")]
|
||||
public Texture2D DataAsTexture2D
|
||||
{
|
||||
[Token(Token = "0x6009462")]
|
||||
[Address(RVA = "0x1727AE0", Offset = "0x17268E0", VA = "0x181727AE0")]
|
||||
get
|
||||
{
|
||||
if (this.<Data>k__BackingField != (ulong)0L)
|
||||
{
|
||||
Texture2D texture2D = this.texture;
|
||||
int num = 0;
|
||||
if (!(texture2D != num))
|
||||
{
|
||||
int num2;
|
||||
int num3;
|
||||
ulong num4;
|
||||
Texture2D texture2D2 = new Texture2D(num2, num3, (TextureFormat)((uint)5), num4 != 0UL);
|
||||
num3 = 0;
|
||||
num2 = 0;
|
||||
byte[] array = this.<Data>k__BackingField;
|
||||
this.texture = texture2D2;
|
||||
bool flag = texture2D2.LoadImage(array);
|
||||
}
|
||||
return this.texture;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x170017A3 RID: 6051
|
||||
// (get) Token: 0x06009463 RID: 37987 RVA: 0x001E6DF8 File Offset: 0x001E4FF8
|
||||
// (set) Token: 0x06009464 RID: 37988 RVA: 0x001E6E0C File Offset: 0x001E500C
|
||||
[Token(Token = "0x170017A3")]
|
||||
public bool IsClosedManually
|
||||
{
|
||||
[Token(Token = "0x6009463")]
|
||||
[Address(RVA = "0x567CF0", Offset = "0x566AF0", VA = "0x180567CF0")]
|
||||
get;
|
||||
[Token(Token = "0x6009464")]
|
||||
[Address(RVA = "0x567D40", Offset = "0x566B40", VA = "0x180567D40")]
|
||||
protected set;
|
||||
}
|
||||
|
||||
// Token: 0x06009465 RID: 37989 RVA: 0x001E6E20 File Offset: 0x001E5020
|
||||
[Token(Token = "0x6009465")]
|
||||
[Address(RVA = "0x1727980", Offset = "0x1726780", VA = "0x181727980")]
|
||||
public HTTPResponse(HTTPRequest request, Stream stream, bool isStreamed, bool isFromCache)
|
||||
{
|
||||
object obj = new object();
|
||||
this.SyncRoot = obj;
|
||||
base..ctor();
|
||||
this.IsFromCache = false;
|
||||
this.baseRequest = request;
|
||||
this.Stream = stream;
|
||||
this.IsStreamed = isStreamed;
|
||||
bool cacheOnly = request.cacheOnly;
|
||||
this.IsCacheOnly = cacheOnly;
|
||||
this.IsClosedManually = false;
|
||||
}
|
||||
|
||||
// Token: 0x06009466 RID: 37990 RVA: 0x001E6E78 File Offset: 0x001E5078
|
||||
[Token(Token = "0x6009466")]
|
||||
[Address(RVA = "0x1726F40", Offset = "0x1725D40", VA = "0x181726F40", Slot = "5")]
|
||||
public virtual bool Receive(int forceReadRawContentLength = -1, bool readPayloadData = true)
|
||||
{
|
||||
for (;;)
|
||||
{
|
||||
if (HTTPManager.Logger == 0)
|
||||
{
|
||||
string text;
|
||||
this.VerboseLogging(text);
|
||||
}
|
||||
Stream stream = this.Stream;
|
||||
string text3;
|
||||
string text2;
|
||||
if (HTTPManager.Logger == 0)
|
||||
{
|
||||
text2 = string.Format("Status Line: '{0}'", text3);
|
||||
this.VerboseLogging(text2);
|
||||
}
|
||||
if (text2 == 0)
|
||||
{
|
||||
char[] array = new char[2];
|
||||
array[0] = (char)((uint)47);
|
||||
array[0] = (char)((uint)46);
|
||||
string[] array2 = text3.Split(array);
|
||||
int num = int.Parse(array2[1]);
|
||||
this.<VersionMajor>k__BackingField = num;
|
||||
int num2 = int.Parse(array2[2]);
|
||||
this.<VersionMinor>k__BackingField = num2;
|
||||
BestHTTP.Logger.ILogger logger = HTTPManager.Logger;
|
||||
int num3 = 0;
|
||||
if (logger == 0)
|
||||
{
|
||||
string text4 = num3.ToString();
|
||||
string text5 = this.<VersionMinor>k__BackingField.ToString();
|
||||
string text6 = string.Format("HTTP Version: '{0}.{1}'", text4, text5);
|
||||
this.VerboseLogging(text6);
|
||||
}
|
||||
Stream stream2 = this.Stream;
|
||||
string text8;
|
||||
if (HTTPManager.Logger == 0)
|
||||
{
|
||||
string text7 = string.Format("Status Code: '{0}'", text8);
|
||||
this.VerboseLogging(text7);
|
||||
}
|
||||
bool flag;
|
||||
if (!this.baseRequest.<DisableRetry>k__BackingField && !flag)
|
||||
{
|
||||
goto IL_291;
|
||||
}
|
||||
int num4 = int.Parse(text8);
|
||||
this.<StatusCode>k__BackingField = num4;
|
||||
int stringLength = text8.m_stringLength;
|
||||
if (stringLength > 0)
|
||||
{
|
||||
char c = text8[stringLength];
|
||||
int stringLength2 = text8.m_stringLength;
|
||||
char c2 = text8[stringLength2];
|
||||
Stream stream3 = this.Stream;
|
||||
string text9;
|
||||
this.<Message>k__BackingField = text9;
|
||||
if (HTTPManager.Logger != 0)
|
||||
{
|
||||
goto IL_1DF;
|
||||
}
|
||||
string text10 = this.<Message>k__BackingField;
|
||||
string text11 = string.Format("Status Message: '{0}'", text10);
|
||||
this.VerboseLogging(text11);
|
||||
}
|
||||
BestHTTP.Logger.ILogger logger2 = HTTPManager.Logger;
|
||||
HTTPRequest httprequest = this.baseRequest;
|
||||
if (!httprequest.<IsRedirected>k__BackingField)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
int hashCode = httprequest.<RedirectUri>k__BackingField.m_String.GetHashCode();
|
||||
string text12 = string.Format("{0} - Skipping Status Message reading!", hashCode);
|
||||
string empty = string.Empty;
|
||||
this.<Message>k__BackingField = empty;
|
||||
IL_1DF:
|
||||
Stream stream4 = this.Stream;
|
||||
this.ReadHeaders(stream4);
|
||||
if (this.<StatusCode>k__BackingField != 101)
|
||||
{
|
||||
}
|
||||
if (this.HasHeaderWithValue("connection", "upgrade"))
|
||||
{
|
||||
}
|
||||
bool flag2 = this.GetHeaderValues("upgrade") != 0;
|
||||
this.<IsUpgraded>k__BackingField = flag2;
|
||||
if (flag2 && HTTPManager.Logger == 0)
|
||||
{
|
||||
this.VerboseLogging("Request Upgraded!");
|
||||
}
|
||||
if (readPayloadData)
|
||||
{
|
||||
break;
|
||||
}
|
||||
}
|
||||
HTTPRequest httprequest2 = this.baseRequest;
|
||||
if (!httprequest2.<DisableRetry>k__BackingField && !httprequest2.<DisableRetry>k__BackingField)
|
||||
{
|
||||
goto Block_13;
|
||||
}
|
||||
}
|
||||
return this.ReadPayload(forceReadRawContentLength);
|
||||
Block_13:
|
||||
int num5 = 0;
|
||||
BestHTTP.Logger.ILogger logger3 = HTTPManager.Logger;
|
||||
int hashCode2 = num5.GetHashCode();
|
||||
string text13 = string.Format("{0} - Failed to read Status Line! Retry is enabled, returning with false.", hashCode2);
|
||||
IL_291:
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x06009467 RID: 37991 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x6009467")]
|
||||
[Address(RVA = "0x1725CA0", Offset = "0x1724AA0", VA = "0x181725CA0")]
|
||||
protected bool ReadPayload(int forceReadRawContentLength)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x06009468 RID: 37992 RVA: 0x001E711C File Offset: 0x001E531C
|
||||
[Token(Token = "0x6009468")]
|
||||
[Address(RVA = "0x1725B50", Offset = "0x1724950", VA = "0x181725B50")]
|
||||
protected void ReadHeaders(Stream stream)
|
||||
{
|
||||
string empty2;
|
||||
string text4;
|
||||
do
|
||||
{
|
||||
string empty = string.Empty;
|
||||
string text;
|
||||
if (!(text != empty))
|
||||
{
|
||||
break;
|
||||
}
|
||||
string text3;
|
||||
if (HTTPManager.Logger == 0)
|
||||
{
|
||||
string text2 = string.Format("Header - '{0}': '{1}'", text, text3);
|
||||
this.VerboseLogging(text2);
|
||||
}
|
||||
this.AddHeader(text, text3);
|
||||
empty2 = string.Empty;
|
||||
}
|
||||
while (text4 != empty2);
|
||||
}
|
||||
|
||||
// Token: 0x06009469 RID: 37993 RVA: 0x001E717C File Offset: 0x001E537C
|
||||
[Token(Token = "0x6009469")]
|
||||
[Address(RVA = "0x1723820", Offset = "0x1722620", VA = "0x181723820")]
|
||||
protected void AddHeader(string name, string value)
|
||||
{
|
||||
string text = name.ToLower();
|
||||
if (this.<Headers>k__BackingField == 0)
|
||||
{
|
||||
Dictionary<string, List<string>> dictionary = new Dictionary();
|
||||
this.<Headers>k__BackingField = dictionary;
|
||||
}
|
||||
bool flag;
|
||||
List<string> list;
|
||||
if (!flag)
|
||||
{
|
||||
Dictionary<string, List<string>> dictionary2 = this.<Headers>k__BackingField;
|
||||
list = new List(1);
|
||||
dictionary2.Add(text, list);
|
||||
}
|
||||
list.Add(value);
|
||||
}
|
||||
|
||||
// Token: 0x0600946A RID: 37994 RVA: 0x001E71D4 File Offset: 0x001E53D4
|
||||
[Token(Token = "0x600946A")]
|
||||
[Address(RVA = "0x1724A00", Offset = "0x1723800", VA = "0x181724A00")]
|
||||
public List<string> GetHeaderValues(string name)
|
||||
{
|
||||
if (this.<Headers>k__BackingField != (ulong)0L)
|
||||
{
|
||||
string text = name.ToLower();
|
||||
Dictionary<string, List<string>> dictionary = this.<Headers>k__BackingField;
|
||||
bool flag;
|
||||
if (flag)
|
||||
{
|
||||
}
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600946B RID: 37995 RVA: 0x001E7208 File Offset: 0x001E5408
|
||||
[Token(Token = "0x600946B")]
|
||||
[Address(RVA = "0x1724950", Offset = "0x1723750", VA = "0x181724950")]
|
||||
public string GetFirstHeaderValue(string name)
|
||||
{
|
||||
if (this.<Headers>k__BackingField != (ulong)0L)
|
||||
{
|
||||
string text = name.ToLower();
|
||||
Dictionary<string, List<string>> dictionary = this.<Headers>k__BackingField;
|
||||
bool flag;
|
||||
if (!flag || flag)
|
||||
{
|
||||
}
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600946C RID: 37996 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600946C")]
|
||||
[Address(RVA = "0x1724F30", Offset = "0x1723D30", VA = "0x181724F30")]
|
||||
public bool HasHeaderWithValue(string headerName, string value)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x0600946D RID: 37997 RVA: 0x001E7240 File Offset: 0x001E5440
|
||||
[Token(Token = "0x600946D")]
|
||||
[Address(RVA = "0x1724FE0", Offset = "0x1723DE0", VA = "0x181724FE0")]
|
||||
public bool HasHeader(string headerName)
|
||||
{
|
||||
return this.GetHeaderValues(headerName) != 0;
|
||||
}
|
||||
|
||||
// Token: 0x0600946E RID: 37998 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600946E")]
|
||||
[Address(RVA = "0x1724AA0", Offset = "0x17238A0", VA = "0x181724AA0")]
|
||||
public HTTPRange GetRange()
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x0600946F RID: 37999 RVA: 0x001E725C File Offset: 0x001E545C
|
||||
[Token(Token = "0x600946F")]
|
||||
[Address(RVA = "0x17263F0", Offset = "0x17251F0", VA = "0x1817263F0")]
|
||||
public static string ReadTo(Stream stream, byte blocker)
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
uint num2;
|
||||
ulong num3;
|
||||
byte[] array = VariableSizedBufferPool.Get((long)num2, num3 != 0UL);
|
||||
int num4;
|
||||
uint num5;
|
||||
if (num4 != (int)blocker && num4 != -1 && !char.IsWhiteSpace((char)num5))
|
||||
{
|
||||
num++;
|
||||
}
|
||||
bool flag;
|
||||
if (num <= 0 || flag)
|
||||
{
|
||||
}
|
||||
Encoding utf = Encoding.UTF8;
|
||||
}
|
||||
while (num != 0);
|
||||
string text;
|
||||
return text;
|
||||
}
|
||||
|
||||
// Token: 0x06009470 RID: 38000 RVA: 0x001E72D0 File Offset: 0x001E54D0
|
||||
[Token(Token = "0x6009470")]
|
||||
[Address(RVA = "0x17266C0", Offset = "0x17254C0", VA = "0x1817266C0")]
|
||||
public static string ReadTo(Stream stream, byte blocker1, byte blocker2)
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
uint num2;
|
||||
ulong num3;
|
||||
byte[] array = VariableSizedBufferPool.Get((long)num2, num3 != 0UL);
|
||||
int num4;
|
||||
uint num5;
|
||||
if (num4 != (int)blocker1 && num4 != (int)blocker1 && num4 != -1 && !char.IsWhiteSpace((char)num5))
|
||||
{
|
||||
num++;
|
||||
}
|
||||
if (num <= 0 || char.IsWhiteSpace((char)blocker1))
|
||||
{
|
||||
}
|
||||
Encoding utf = Encoding.UTF8;
|
||||
}
|
||||
while (num != 0);
|
||||
string text;
|
||||
return text;
|
||||
}
|
||||
|
||||
// Token: 0x06009471 RID: 38001 RVA: 0x001E734C File Offset: 0x001E554C
|
||||
[Token(Token = "0x6009471")]
|
||||
[Address(RVA = "0x17250E0", Offset = "0x1723EE0", VA = "0x1817250E0")]
|
||||
public static string NoTrimReadTo(Stream stream, byte blocker1, byte blocker2)
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
uint num2;
|
||||
ulong num3;
|
||||
byte[] array = VariableSizedBufferPool.Get((long)num2, num3 != 0UL);
|
||||
int num4;
|
||||
uint num5;
|
||||
if (num4 != (int)blocker1 && num4 != (int)blocker1 && num4 != -1 && !char.IsWhiteSpace((char)num5))
|
||||
{
|
||||
num++;
|
||||
}
|
||||
Encoding utf = Encoding.UTF8;
|
||||
}
|
||||
while (num != 0);
|
||||
string text;
|
||||
return text;
|
||||
}
|
||||
|
||||
// Token: 0x06009472 RID: 38002 RVA: 0x001E73B0 File Offset: 0x001E55B0
|
||||
[Token(Token = "0x6009472")]
|
||||
[Address(RVA = "0x1725350", Offset = "0x1724150", VA = "0x181725350")]
|
||||
protected int ReadChunkLength(Stream stream)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (06009472)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 BestHTTP.HTTPResponse::ReadChunkLength(System.IO.Stream)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_3E:
|
||||
stloc:Exception(var_5_4E, newobj:Exception(Exception::.ctor, call:string(string::Format, ldstr:string("Can't parse '{0}' as a hex number!"), ldloc:string[exp:object](var_3_20))))
|
||||
}
|
||||
|
||||
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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: 0x06009473 RID: 38003 RVA: 0x001E740C File Offset: 0x001E560C
|
||||
[Token(Token = "0x6009473")]
|
||||
[Address(RVA = "0x1725470", Offset = "0x1724270", VA = "0x181725470")]
|
||||
protected void ReadChunked(Stream stream)
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
this.BeginReceiveStreamFragments();
|
||||
string firstHeaderValue = this.GetFirstHeaderValue("Content-Length");
|
||||
int num2 = 0;
|
||||
if (!string.IsNullOrEmpty(firstHeaderValue))
|
||||
{
|
||||
bool flag = int.TryParse(firstHeaderValue, num2);
|
||||
}
|
||||
BestHTTP.Logger.ILogger logger = HTTPManager.Logger;
|
||||
if (logger == 0)
|
||||
{
|
||||
string text2;
|
||||
int num3;
|
||||
string text = string.Format("ReadChunked - hasContentLengthHeader: {0}, contentLengthHeader: {1} realLength: {2:N0}", text2, firstHeaderValue, num3);
|
||||
this.VerboseLogging(text);
|
||||
}
|
||||
BufferPoolMemoryStream bufferPoolMemoryStream = new BufferPoolMemoryStream();
|
||||
int num4 = this.ReadChunkLength(stream);
|
||||
if (HTTPManager.Logger == 0)
|
||||
{
|
||||
string text3;
|
||||
this.VerboseLogging(text3);
|
||||
}
|
||||
ulong num5;
|
||||
byte[] array = VariableSizedBufferPool.Get((long)Mathf.NextPowerOfTwo(num4), num5 != 0UL);
|
||||
this.baseRequest.<DownloadLength>k__BackingField = (long)num4;
|
||||
HTTPRequest httprequest = this.baseRequest;
|
||||
int num6 = this.<StatusCode>k__BackingField;
|
||||
if (num4 <= 99 || num6 != 304)
|
||||
{
|
||||
}
|
||||
uint num7;
|
||||
bool flag2 = num7 != (uint)0;
|
||||
httprequest.<DownloadProgressChanged>k__BackingField = flag2;
|
||||
if (this.<IsFromCache>k__BackingField)
|
||||
{
|
||||
}
|
||||
string firstHeaderValue2 = this.GetFirstHeaderValue("content-encoding");
|
||||
if (string.IsNullOrEmpty(firstHeaderValue2))
|
||||
{
|
||||
}
|
||||
bool flag3 = string.Equals(firstHeaderValue2, "gzip");
|
||||
HTTPRequest httprequest3;
|
||||
if (num4 != 0)
|
||||
{
|
||||
num4 -= num;
|
||||
stream.SetLength((long)num4);
|
||||
HTTPRequest httprequest2 = this.baseRequest;
|
||||
httprequest3 = this.baseRequest;
|
||||
if (!this.IsSuccess)
|
||||
{
|
||||
}
|
||||
uint num8;
|
||||
bool flag4 = num8 != (uint)0;
|
||||
httprequest3.<DownloadProgressChanged>k__BackingField = flag4;
|
||||
if (num < num4)
|
||||
{
|
||||
}
|
||||
if (!this.baseRequest.useStreaming)
|
||||
{
|
||||
int num9 = bufferPoolMemoryStream.ReadByte();
|
||||
}
|
||||
if (httprequest3 == 0)
|
||||
{
|
||||
}
|
||||
byte[] array2;
|
||||
if (array2 != 0)
|
||||
{
|
||||
int length = array2.Length;
|
||||
int num10 = 0;
|
||||
this.FeedStreamFragment(array2, num10, length);
|
||||
}
|
||||
ulong num11;
|
||||
string text4 = HTTPResponse.ReadTo(stream, (byte)num11);
|
||||
num4 = this.ReadChunkLength(stream);
|
||||
if (HTTPManager.Logger == 0)
|
||||
{
|
||||
string text5;
|
||||
this.VerboseLogging(text5);
|
||||
}
|
||||
HTTPRequest httprequest4 = this.baseRequest;
|
||||
HTTPRequest httprequest5 = this.baseRequest;
|
||||
if (this.IsSuccess)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
bool flag5 = this.<IsFromCache>k__BackingField;
|
||||
httprequest5.<DownloadProgressChanged>k__BackingField = flag5;
|
||||
}
|
||||
if (this.baseRequest.useStreaming)
|
||||
{
|
||||
byte[] array3;
|
||||
if (httprequest3 != 0 && array3 != 0)
|
||||
{
|
||||
int length2 = array3.Length;
|
||||
int num12 = 0;
|
||||
this.FeedStreamFragment(array3, num12, length2);
|
||||
}
|
||||
this.FlushRemainingFragmentBuffer();
|
||||
}
|
||||
this.ReadHeaders(stream);
|
||||
if (!this.baseRequest.useStreaming)
|
||||
{
|
||||
byte[] array4 = this.DecodeStream(bufferPoolMemoryStream);
|
||||
this.<Data>k__BackingField = array4;
|
||||
}
|
||||
if (bufferPoolMemoryStream != 0)
|
||||
{
|
||||
}
|
||||
}
|
||||
while (num != 0);
|
||||
this.CloseDecompressors();
|
||||
}
|
||||
|
||||
// Token: 0x06009474 RID: 38004 RVA: 0x001E76BC File Offset: 0x001E58BC
|
||||
[Token(Token = "0x6009474")]
|
||||
[Address(RVA = "0x1725E60", Offset = "0x1724C60", VA = "0x181725E60")]
|
||||
internal void ReadRaw(Stream stream, long contentLength)
|
||||
{
|
||||
for (;;)
|
||||
{
|
||||
int num = 0;
|
||||
this.BeginReceiveStreamFragments();
|
||||
HTTPRequest httprequest = this.baseRequest;
|
||||
httprequest.<DownloadLength>k__BackingField = contentLength;
|
||||
HTTPRequest httprequest2 = this.baseRequest;
|
||||
int num2 = this.<StatusCode>k__BackingField;
|
||||
if (httprequest <= (ulong)99L || num2 != 304)
|
||||
{
|
||||
}
|
||||
uint num3;
|
||||
bool flag = num3 != (uint)0;
|
||||
httprequest2.<DownloadProgressChanged>k__BackingField = flag;
|
||||
if (HTTPManager.Logger == 0)
|
||||
{
|
||||
string text;
|
||||
this.VerboseLogging(text);
|
||||
}
|
||||
if ((this.<IsFromCache>k__BackingField ? 1 : 0) != num)
|
||||
{
|
||||
}
|
||||
if (this.GetFirstHeaderValue("content-encoding") != 0)
|
||||
{
|
||||
}
|
||||
if (!this.baseRequest.useStreaming)
|
||||
{
|
||||
}
|
||||
BufferPoolMemoryStream bufferPoolMemoryStream = new BufferPoolMemoryStream((int)contentLength);
|
||||
int num4 = this.baseRequest.streamFragmentSize;
|
||||
uint num5;
|
||||
num4 = Math.Max(num4, (int)num5);
|
||||
ulong num6;
|
||||
byte[] array = VariableSizedBufferPool.Get((long)num4, num6 != 0UL);
|
||||
uint num8;
|
||||
uint num7 = Math.Min(num8, (uint)contentLength);
|
||||
int num9 = array.Length;
|
||||
num9 -= num;
|
||||
int num10 = Math.Min((int)num7, num9);
|
||||
if (num10 > 0)
|
||||
{
|
||||
num += num10;
|
||||
HTTPRequest httprequest3 = this.baseRequest;
|
||||
HTTPRequest httprequest4 = this.baseRequest;
|
||||
if (!this.IsSuccess)
|
||||
{
|
||||
}
|
||||
uint num11;
|
||||
bool flag2 = num11 != (uint)0;
|
||||
httprequest4.<DownloadProgressChanged>k__BackingField = flag2;
|
||||
if (num < array.Length)
|
||||
{
|
||||
}
|
||||
if (!this.baseRequest.useStreaming)
|
||||
{
|
||||
}
|
||||
int num12 = 0;
|
||||
this.FeedStreamFragment(array, num12, num);
|
||||
ulong num13;
|
||||
byte[] array2 = this.Decompress(array, num12, num, num13 != 0UL);
|
||||
while (array2 == 0)
|
||||
{
|
||||
}
|
||||
int length = array2.Length;
|
||||
int num14 = 0;
|
||||
this.FeedStreamFragment(array2, num14, length);
|
||||
VariableSizedBufferPool.Release(array);
|
||||
if (this.baseRequest.useStreaming)
|
||||
{
|
||||
byte[] array3;
|
||||
if (array3 != 0)
|
||||
{
|
||||
int length2 = array3.Length;
|
||||
int num15 = 0;
|
||||
this.FeedStreamFragment(array3, num15, length2);
|
||||
}
|
||||
this.FlushRemainingFragmentBuffer();
|
||||
}
|
||||
if (!this.baseRequest.useStreaming)
|
||||
{
|
||||
byte[] array4;
|
||||
this.<Data>k__BackingField = array4;
|
||||
}
|
||||
if (httprequest4 != 0)
|
||||
{
|
||||
}
|
||||
if (num == 0)
|
||||
{
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
this.CloseDecompressors();
|
||||
}
|
||||
|
||||
// Token: 0x06009475 RID: 38005 RVA: 0x001E7888 File Offset: 0x001E5A88
|
||||
[Token(Token = "0x6009475")]
|
||||
[Address(RVA = "0x17269A0", Offset = "0x17257A0", VA = "0x1817269A0")]
|
||||
protected void ReadUnknownSize(Stream stream)
|
||||
{
|
||||
for (;;)
|
||||
{
|
||||
if (this.<IsFromCache>k__BackingField)
|
||||
{
|
||||
}
|
||||
string firstHeaderValue = this.GetFirstHeaderValue("content-encoding");
|
||||
if (string.IsNullOrEmpty(firstHeaderValue))
|
||||
{
|
||||
}
|
||||
bool flag = string.Equals(firstHeaderValue, "gzip");
|
||||
BufferPoolMemoryStream bufferPoolMemoryStream = new BufferPoolMemoryStream();
|
||||
int num = this.baseRequest.streamFragmentSize;
|
||||
uint num2;
|
||||
num = Math.Max(num, (int)num2);
|
||||
int num3 = 0;
|
||||
byte[] array = VariableSizedBufferPool.Get((long)num, num3 != 0);
|
||||
if (HTTPManager.Logger == 0)
|
||||
{
|
||||
int length = array.Length;
|
||||
string text = string.Format("ReadUnknownSize - buffer size: {0:N0}", length);
|
||||
this.VerboseLogging(text);
|
||||
}
|
||||
int num4 = 0;
|
||||
int num5 = 0;
|
||||
if (stream == 0 || stream == 0 || (this.baseRequest.<EnableSafeReadOnUnknownContentLength>k__BackingField ? 1 : 0) == num5)
|
||||
{
|
||||
goto IL_B3;
|
||||
}
|
||||
if (num4 < array.Length)
|
||||
{
|
||||
num5++;
|
||||
num4++;
|
||||
goto IL_B3;
|
||||
}
|
||||
IL_C3:
|
||||
HTTPRequest httprequest = this.baseRequest;
|
||||
HTTPRequest httprequest2 = this.baseRequest;
|
||||
long <Downloaded>k__BackingField = httprequest2.<Downloaded>k__BackingField;
|
||||
httprequest2.<DownloadLength>k__BackingField = <Downloaded>k__BackingField;
|
||||
HTTPRequest httprequest3 = this.baseRequest;
|
||||
if (this.IsSuccess)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
bool flag2 = this.<IsFromCache>k__BackingField;
|
||||
httprequest3.<DownloadProgressChanged>k__BackingField = flag2;
|
||||
if (num4 < array.Length)
|
||||
{
|
||||
}
|
||||
if (!this.baseRequest.useStreaming)
|
||||
{
|
||||
int num6 = stream.ReadByte();
|
||||
}
|
||||
int num7 = 0;
|
||||
if (httprequest3 == 0)
|
||||
{
|
||||
this.FeedStreamFragment(array, num7, num4);
|
||||
}
|
||||
ulong num8;
|
||||
byte[] array2 = this.Decompress(array, num7, num4, num8 != 0UL);
|
||||
if (array2 != 0)
|
||||
{
|
||||
int length2 = array2.Length;
|
||||
int num9 = 0;
|
||||
this.FeedStreamFragment(array2, num9, length2);
|
||||
}
|
||||
VariableSizedBufferPool.Release(array);
|
||||
if (this.baseRequest.useStreaming)
|
||||
{
|
||||
byte[] array3;
|
||||
if (httprequest3 != 0 && array3 != 0)
|
||||
{
|
||||
int length3 = array3.Length;
|
||||
int num10 = 0;
|
||||
this.FeedStreamFragment(array3, num10, length3);
|
||||
}
|
||||
this.FlushRemainingFragmentBuffer();
|
||||
}
|
||||
if (!this.baseRequest.useStreaming)
|
||||
{
|
||||
byte[] array4;
|
||||
this.<Data>k__BackingField = array4;
|
||||
}
|
||||
int num11 = 0;
|
||||
if (stream != 0)
|
||||
{
|
||||
}
|
||||
if (num11 == 0)
|
||||
{
|
||||
break;
|
||||
}
|
||||
continue;
|
||||
IL_B3:
|
||||
int num12 = array.Length;
|
||||
num12 -= num4;
|
||||
goto IL_C3;
|
||||
}
|
||||
GZipStream gzipStream = this.decompressorGZipStream;
|
||||
if (gzipStream != 0)
|
||||
{
|
||||
gzipStream.Dispose();
|
||||
}
|
||||
this.decompressorGZipStream = (ulong)0L;
|
||||
BufferPoolMemoryStream bufferPoolMemoryStream2 = this.decompressorInputStream;
|
||||
if (bufferPoolMemoryStream2 != 0)
|
||||
{
|
||||
bufferPoolMemoryStream2.Dispose();
|
||||
}
|
||||
this.decompressorInputStream = (ulong)0L;
|
||||
BufferPoolMemoryStream bufferPoolMemoryStream3 = this.decompressorOutputStream;
|
||||
if (bufferPoolMemoryStream3 != 0)
|
||||
{
|
||||
bufferPoolMemoryStream3.Dispose();
|
||||
}
|
||||
this.decompressorOutputStream = (ulong)0L;
|
||||
}
|
||||
|
||||
// Token: 0x06009476 RID: 38006 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x6009476")]
|
||||
[Address(RVA = "0x1723D00", Offset = "0x1722B00", VA = "0x181723D00")]
|
||||
protected byte[] DecodeStream(BufferPoolMemoryStream streamToDecode)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x06009477 RID: 38007 RVA: 0x001E7B1C File Offset: 0x001E5D1C
|
||||
[Token(Token = "0x6009477")]
|
||||
[Address(RVA = "0x1723C90", Offset = "0x1722A90", VA = "0x181723C90")]
|
||||
private void CloseDecompressors()
|
||||
{
|
||||
GZipStream gzipStream = this.decompressorGZipStream;
|
||||
if (gzipStream != 0)
|
||||
{
|
||||
gzipStream.Dispose();
|
||||
}
|
||||
BufferPoolMemoryStream bufferPoolMemoryStream = this.decompressorInputStream;
|
||||
int num = 0;
|
||||
this.decompressorGZipStream = num;
|
||||
if (bufferPoolMemoryStream != 0)
|
||||
{
|
||||
bufferPoolMemoryStream.Dispose();
|
||||
}
|
||||
BufferPoolMemoryStream bufferPoolMemoryStream2 = this.decompressorOutputStream;
|
||||
this.decompressorInputStream = num;
|
||||
if (bufferPoolMemoryStream2 != 0)
|
||||
{
|
||||
bufferPoolMemoryStream2.Dispose();
|
||||
}
|
||||
this.decompressorOutputStream = num;
|
||||
}
|
||||
|
||||
// Token: 0x06009478 RID: 38008 RVA: 0x001E7B74 File Offset: 0x001E5D74
|
||||
[Token(Token = "0x6009478")]
|
||||
[Address(RVA = "0x1723FD0", Offset = "0x1722DD0", VA = "0x181723FD0")]
|
||||
private byte[] Decompress(byte[] data, int offset, int count, bool forceDecompress = false)
|
||||
{
|
||||
BufferPoolMemoryStream bufferPoolMemoryStream = this.decompressorInputStream;
|
||||
if (bufferPoolMemoryStream == 0)
|
||||
{
|
||||
BufferPoolMemoryStream bufferPoolMemoryStream2 = new BufferPoolMemoryStream(count);
|
||||
this.decompressorInputStream = bufferPoolMemoryStream2;
|
||||
}
|
||||
if (data != 0)
|
||||
{
|
||||
int num = bufferPoolMemoryStream.ReadByte();
|
||||
}
|
||||
BufferPoolMemoryStream bufferPoolMemoryStream3 = this.decompressorInputStream;
|
||||
if (bufferPoolMemoryStream3.CanWrite < false)
|
||||
{
|
||||
}
|
||||
long position = bufferPoolMemoryStream3.Position;
|
||||
GZipStream gzipStream;
|
||||
FlushType flushMode = gzipStream.FlushMode;
|
||||
BufferPoolMemoryStream bufferPoolMemoryStream4 = new BufferPoolMemoryStream();
|
||||
byte[] array;
|
||||
VariableSizedBufferPool.Release(array);
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x06009479 RID: 38009 RVA: 0x001E7BDC File Offset: 0x001E5DDC
|
||||
[Token(Token = "0x6009479")]
|
||||
[Address(RVA = "0x1723B60", Offset = "0x1722960", VA = "0x181723B60")]
|
||||
protected void BeginReceiveStreamFragments()
|
||||
{
|
||||
HTTPRequest httprequest = this.baseRequest;
|
||||
if (!httprequest.disableCache && httprequest.useStreaming && !this.<IsFromCache>k__BackingField)
|
||||
{
|
||||
if (httprequest.<IsRedirected>k__BackingField)
|
||||
{
|
||||
}
|
||||
Uri <Uri>k__BackingField = httprequest.<Uri>k__BackingField;
|
||||
HTTPMethods <MethodType>k__BackingField = httprequest.<MethodType>k__BackingField;
|
||||
if (HTTPCacheService.IsCacheble(<Uri>k__BackingField, <MethodType>k__BackingField, this))
|
||||
{
|
||||
HTTPRequest httprequest2 = this.baseRequest;
|
||||
if (httprequest2.<IsRedirected>k__BackingField)
|
||||
{
|
||||
}
|
||||
Stream stream = HTTPCacheService.PrepareStreamed(httprequest2.<Uri>k__BackingField, this);
|
||||
this.cacheStream = stream;
|
||||
}
|
||||
}
|
||||
this.allFragmentSize = (int)((ulong)0L);
|
||||
}
|
||||
|
||||
// Token: 0x0600947A RID: 38010 RVA: 0x001E7C64 File Offset: 0x001E5E64
|
||||
[Token(Token = "0x600947A")]
|
||||
[Address(RVA = "0x1724380", Offset = "0x1723180", VA = "0x181724380")]
|
||||
protected void FeedStreamFragment(byte[] buffer, int pos, int length)
|
||||
{
|
||||
int num = 0;
|
||||
if (buffer != 0 && length != 0)
|
||||
{
|
||||
if ((this.baseRequest.useStreaming ? 1 : 0) != num && this.FragmentQueueIsFull())
|
||||
{
|
||||
this.VerboseLogging("WaitWhileFragmentQueueIsFull");
|
||||
if (this.fragmentWaitEvent == 0)
|
||||
{
|
||||
int num2;
|
||||
AutoResetEvent autoResetEvent = new AutoResetEvent(num2 != 0);
|
||||
num2 = 0;
|
||||
this.fragmentWaitEvent = autoResetEvent;
|
||||
}
|
||||
AutoResetEvent autoResetEvent2 = this.fragmentWaitEvent;
|
||||
}
|
||||
byte[] array;
|
||||
if (this.fragmentBuffer == num)
|
||||
{
|
||||
int streamFragmentSize = this.baseRequest.streamFragmentSize;
|
||||
int num3 = 0;
|
||||
array = VariableSizedBufferPool.Get((long)streamFragmentSize, num3 != 0);
|
||||
this.fragmentBuffer = array;
|
||||
this.fragmentBufferDataLength = num;
|
||||
}
|
||||
HTTPRequest httprequest = this.baseRequest;
|
||||
int num4 = this.fragmentBufferDataLength;
|
||||
int num5 = httprequest.streamFragmentSize;
|
||||
if (array > num5)
|
||||
{
|
||||
num5 -= num4;
|
||||
num4 = num5;
|
||||
this.FeedStreamFragment(buffer, pos, num4);
|
||||
}
|
||||
byte[] array2 = this.fragmentBuffer;
|
||||
Array.Copy(buffer, pos, array2, num4, length);
|
||||
int num6 = this.fragmentBufferDataLength;
|
||||
HTTPRequest httprequest2 = this.baseRequest;
|
||||
num6 += length;
|
||||
this.fragmentBufferDataLength = num6;
|
||||
if (num6 == httprequest2.streamFragmentSize)
|
||||
{
|
||||
byte[] array3 = this.fragmentBuffer;
|
||||
this.AddStreamedFragment(array3);
|
||||
this.fragmentBuffer = num;
|
||||
this.fragmentBufferDataLength = num;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600947B RID: 38011 RVA: 0x001E7D8C File Offset: 0x001E5F8C
|
||||
[Token(Token = "0x600947B")]
|
||||
[Address(RVA = "0x1724650", Offset = "0x1723450", VA = "0x181724650")]
|
||||
protected void FlushRemainingFragmentBuffer()
|
||||
{
|
||||
int num = 0;
|
||||
if (this.fragmentBuffer != num)
|
||||
{
|
||||
byte[] array = this.fragmentBuffer;
|
||||
this.AddStreamedFragment(array);
|
||||
this.fragmentBuffer = num;
|
||||
this.fragmentBufferDataLength = num;
|
||||
}
|
||||
Stream stream = this.cacheStream;
|
||||
if (stream != 0)
|
||||
{
|
||||
stream.Dispose();
|
||||
HTTPRequest httprequest = this.baseRequest;
|
||||
this.cacheStream = num;
|
||||
if ((httprequest.<IsRedirected>k__BackingField ? 1 : 0) != num)
|
||||
{
|
||||
}
|
||||
Uri <Uri>k__BackingField = httprequest.<Uri>k__BackingField;
|
||||
int num2 = this.allFragmentSize;
|
||||
HTTPCacheService.SetBodyLength(<Uri>k__BackingField, num2);
|
||||
}
|
||||
AutoResetEvent autoResetEvent = this.fragmentWaitEvent;
|
||||
this.fragmentWaitEvent = num;
|
||||
if (autoResetEvent != 0)
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600947C RID: 38012 RVA: 0x001E7E20 File Offset: 0x001E6020
|
||||
[Token(Token = "0x600947C")]
|
||||
[Address(RVA = "0x1723940", Offset = "0x1722740", VA = "0x181723940")]
|
||||
protected void AddStreamedFragment(byte[] buffer)
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
object syncRoot = this.SyncRoot;
|
||||
if ((this.<IsCacheOnly>k__BackingField ? 1 : 0) == num)
|
||||
{
|
||||
List<byte[]> list = this.streamedFragments;
|
||||
if (list == 0)
|
||||
{
|
||||
List<byte[]> list2 = new List();
|
||||
this.streamedFragments = list2;
|
||||
}
|
||||
list.Add(buffer);
|
||||
}
|
||||
if (HTTPManager.Logger == 0 && buffer != 0 && this.streamedFragments != (ulong)0L)
|
||||
{
|
||||
int length = buffer.Length;
|
||||
List<byte[]> list3 = this.streamedFragments;
|
||||
string text = string.Format("AddStreamedFragment buffer length: {0:N0} streamedFragments: {1:N0}", length, length);
|
||||
this.VerboseLogging(text);
|
||||
}
|
||||
Stream stream = this.cacheStream;
|
||||
if (stream != 0)
|
||||
{
|
||||
int num2 = stream.ReadByte();
|
||||
int length2 = buffer.Length;
|
||||
}
|
||||
Monitor.Exit(syncRoot);
|
||||
}
|
||||
while (num != 0);
|
||||
}
|
||||
|
||||
// Token: 0x0600947D RID: 38013 RVA: 0x001E7EE4 File Offset: 0x001E60E4
|
||||
[Token(Token = "0x600947D")]
|
||||
[Address(RVA = "0x1727880", Offset = "0x1726680", VA = "0x181727880")]
|
||||
protected void WaitWhileFragmentQueueIsFull()
|
||||
{
|
||||
if (this.baseRequest.useStreaming && this.FragmentQueueIsFull())
|
||||
{
|
||||
this.VerboseLogging("WaitWhileFragmentQueueIsFull");
|
||||
if (this.fragmentWaitEvent == 0)
|
||||
{
|
||||
int num;
|
||||
AutoResetEvent autoResetEvent = new AutoResetEvent(num != 0);
|
||||
num = 0;
|
||||
this.fragmentWaitEvent = autoResetEvent;
|
||||
}
|
||||
AutoResetEvent autoResetEvent2 = this.fragmentWaitEvent;
|
||||
HTTPRequest httprequest = this.baseRequest;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600947E RID: 38014 RVA: 0x001E7F44 File Offset: 0x001E6144
|
||||
[Token(Token = "0x600947E")]
|
||||
[Address(RVA = "0x17247A0", Offset = "0x17235A0", VA = "0x1817247A0")]
|
||||
private bool FragmentQueueIsFull()
|
||||
{
|
||||
bool flag;
|
||||
for (;;)
|
||||
{
|
||||
int num = 0;
|
||||
object syncRoot = this.SyncRoot;
|
||||
List<byte[]> list = this.streamedFragments;
|
||||
if (list == 0)
|
||||
{
|
||||
}
|
||||
int size = list._size;
|
||||
int <MaxFragmentQueueLength>k__BackingField = this.baseRequest.<MaxFragmentQueueLength>k__BackingField;
|
||||
flag = size >= <MaxFragmentQueueLength>k__BackingField;
|
||||
if (HTTPManager.Logger == 0)
|
||||
{
|
||||
int size2 = this.streamedFragments._size;
|
||||
int <MaxFragmentQueueLength>k__BackingField2 = this.baseRequest.<MaxFragmentQueueLength>k__BackingField;
|
||||
string text = string.Format("HasFragmentsInQueue - {0} / {1}", size2, <MaxFragmentQueueLength>k__BackingField2);
|
||||
this.VerboseLogging(text);
|
||||
Monitor.Exit(syncRoot);
|
||||
if (num == 0)
|
||||
{
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
return flag;
|
||||
}
|
||||
|
||||
// Token: 0x0600947F RID: 38015 RVA: 0x001E7FE4 File Offset: 0x001E61E4
|
||||
[Token(Token = "0x600947F")]
|
||||
[Address(RVA = "0x1724CE0", Offset = "0x1723AE0", VA = "0x181724CE0")]
|
||||
public List<byte[]> GetStreamedFragments()
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
object syncRoot = this.SyncRoot;
|
||||
List<byte[]> list = this.streamedFragments;
|
||||
if (list != 0)
|
||||
{
|
||||
List<byte[]> list2 = new List(list);
|
||||
this.streamedFragments.Clear();
|
||||
if (this.fragmentWaitEvent != 0)
|
||||
{
|
||||
bool flag = this.fragmentWaitEvent.Set();
|
||||
}
|
||||
BestHTTP.Logger.ILogger logger = HTTPManager.Logger;
|
||||
int num2 = 0;
|
||||
if (logger == 0)
|
||||
{
|
||||
string text = num2.ToString();
|
||||
string text2 = string.Format("GetStreamedFragments - returning with {0:N0} fragments", text);
|
||||
this.VerboseLogging(text2);
|
||||
}
|
||||
}
|
||||
if (HTTPManager.Logger == 0)
|
||||
{
|
||||
this.VerboseLogging("GetStreamedFragments - no fragments, returning with null");
|
||||
}
|
||||
Monitor.Exit(syncRoot);
|
||||
}
|
||||
while (num != 0);
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x06009480 RID: 38016 RVA: 0x001E80A0 File Offset: 0x001E62A0
|
||||
[Token(Token = "0x6009480")]
|
||||
[Address(RVA = "0x1725000", Offset = "0x1723E00", VA = "0x181725000")]
|
||||
internal bool HasStreamedFragments()
|
||||
{
|
||||
int num;
|
||||
bool flag;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
object syncRoot = this.SyncRoot;
|
||||
List<byte[]> list = this.streamedFragments;
|
||||
if (list == 0)
|
||||
{
|
||||
}
|
||||
int size = list._size;
|
||||
HTTPRequest httprequest = this.baseRequest;
|
||||
flag = size >= httprequest.<MaxFragmentQueueLength>k__BackingField;
|
||||
Monitor.Exit(syncRoot);
|
||||
}
|
||||
while (num != 0);
|
||||
return flag;
|
||||
}
|
||||
|
||||
// Token: 0x06009481 RID: 38017 RVA: 0x001E80F4 File Offset: 0x001E62F4
|
||||
[Token(Token = "0x6009481")]
|
||||
[Address(RVA = "0x17245C0", Offset = "0x17233C0", VA = "0x1817245C0")]
|
||||
internal void FinishStreaming()
|
||||
{
|
||||
if (HTTPManager.Logger == 0)
|
||||
{
|
||||
this.VerboseLogging("FinishStreaming");
|
||||
}
|
||||
this.<IsStreamingFinished>k__BackingField = true;
|
||||
this.Dispose();
|
||||
}
|
||||
|
||||
// Token: 0x06009482 RID: 38018 RVA: 0x001E812C File Offset: 0x001E632C
|
||||
[Token(Token = "0x6009482")]
|
||||
[Address(RVA = "0x1727750", Offset = "0x1726550", VA = "0x181727750")]
|
||||
private void VerboseLogging(string str)
|
||||
{
|
||||
if (HTTPManager.Logger == 0)
|
||||
{
|
||||
BestHTTP.Logger.ILogger logger = HTTPManager.Logger;
|
||||
HTTPRequest httprequest = this.baseRequest;
|
||||
if (httprequest.<IsRedirected>k__BackingField)
|
||||
{
|
||||
}
|
||||
int hashCode = httprequest.<Uri>k__BackingField.GetHashCode();
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x06009483 RID: 38019 RVA: 0x001E8170 File Offset: 0x001E6370
|
||||
[Token(Token = "0x6009483")]
|
||||
[Address(RVA = "0x17242A0", Offset = "0x17230A0", VA = "0x1817242A0", Slot = "4")]
|
||||
public void Dispose()
|
||||
{
|
||||
Stream stream = this.Stream;
|
||||
if (stream == 0 || stream != 0)
|
||||
{
|
||||
}
|
||||
Stream stream2 = this.cacheStream;
|
||||
this.Stream = (ulong)0L;
|
||||
if (stream2 != 0)
|
||||
{
|
||||
stream2.Dispose();
|
||||
this.cacheStream = (ulong)0L;
|
||||
}
|
||||
GC.SuppressFinalize(this);
|
||||
}
|
||||
|
||||
// Token: 0x0400650E RID: 25870
|
||||
[Token(Token = "0x400650E")]
|
||||
internal const byte CR = 13;
|
||||
|
||||
// Token: 0x0400650F RID: 25871
|
||||
[Token(Token = "0x400650F")]
|
||||
internal const byte LF = 10;
|
||||
|
||||
// Token: 0x04006510 RID: 25872
|
||||
[Token(Token = "0x4006510")]
|
||||
public const int MinBufferSize = 4096;
|
||||
|
||||
// Token: 0x0400651E RID: 25886
|
||||
[FieldOffset(Offset = "0x60")]
|
||||
[Token(Token = "0x400651E")]
|
||||
protected string dataAsText;
|
||||
|
||||
// Token: 0x0400651F RID: 25887
|
||||
[FieldOffset(Offset = "0x68")]
|
||||
[Token(Token = "0x400651F")]
|
||||
protected Texture2D texture;
|
||||
|
||||
// Token: 0x04006521 RID: 25889
|
||||
[FieldOffset(Offset = "0x78")]
|
||||
[Token(Token = "0x4006521")]
|
||||
internal HTTPRequest baseRequest;
|
||||
|
||||
// Token: 0x04006522 RID: 25890
|
||||
[FieldOffset(Offset = "0x80")]
|
||||
[Token(Token = "0x4006522")]
|
||||
protected Stream Stream;
|
||||
|
||||
// Token: 0x04006523 RID: 25891
|
||||
[FieldOffset(Offset = "0x88")]
|
||||
[Token(Token = "0x4006523")]
|
||||
protected List<byte[]> streamedFragments;
|
||||
|
||||
// Token: 0x04006524 RID: 25892
|
||||
[FieldOffset(Offset = "0x90")]
|
||||
[Token(Token = "0x4006524")]
|
||||
protected object SyncRoot;
|
||||
|
||||
// Token: 0x04006525 RID: 25893
|
||||
[FieldOffset(Offset = "0x98")]
|
||||
[Token(Token = "0x4006525")]
|
||||
protected byte[] fragmentBuffer;
|
||||
|
||||
// Token: 0x04006526 RID: 25894
|
||||
[FieldOffset(Offset = "0xA0")]
|
||||
[Token(Token = "0x4006526")]
|
||||
protected int fragmentBufferDataLength;
|
||||
|
||||
// Token: 0x04006527 RID: 25895
|
||||
[FieldOffset(Offset = "0xA8")]
|
||||
[Token(Token = "0x4006527")]
|
||||
protected Stream cacheStream;
|
||||
|
||||
// Token: 0x04006528 RID: 25896
|
||||
[FieldOffset(Offset = "0xB0")]
|
||||
[Token(Token = "0x4006528")]
|
||||
protected int allFragmentSize;
|
||||
|
||||
// Token: 0x04006529 RID: 25897
|
||||
[FieldOffset(Offset = "0xB8")]
|
||||
[Token(Token = "0x4006529")]
|
||||
private BufferPoolMemoryStream decompressorInputStream;
|
||||
|
||||
// Token: 0x0400652A RID: 25898
|
||||
[FieldOffset(Offset = "0xC0")]
|
||||
[Token(Token = "0x400652A")]
|
||||
private BufferPoolMemoryStream decompressorOutputStream;
|
||||
|
||||
// Token: 0x0400652B RID: 25899
|
||||
[FieldOffset(Offset = "0xC8")]
|
||||
[Token(Token = "0x400652B")]
|
||||
private GZipStream decompressorGZipStream;
|
||||
|
||||
// Token: 0x0400652C RID: 25900
|
||||
[Token(Token = "0x400652C")]
|
||||
private const int MinLengthToDecompress = 256;
|
||||
|
||||
// Token: 0x0400652D RID: 25901
|
||||
[FieldOffset(Offset = "0xD0")]
|
||||
[Token(Token = "0x400652D")]
|
||||
private AutoResetEvent fragmentWaitEvent;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,207 @@
|
||||
using System;
|
||||
using System.Threading;
|
||||
using BestHTTP.Caching;
|
||||
using BestHTTP.Cookies;
|
||||
using BestHTTP.Logger;
|
||||
using Cpp2IlInjected;
|
||||
using UnityEngine;
|
||||
|
||||
namespace BestHTTP
|
||||
{
|
||||
// Token: 0x020018A7 RID: 6311
|
||||
[Token(Token = "0x20018A7")]
|
||||
[ExecuteInEditMode]
|
||||
public sealed class HTTPUpdateDelegator : MonoBehaviour
|
||||
{
|
||||
// Token: 0x170017A4 RID: 6052
|
||||
// (get) Token: 0x06009484 RID: 38020 RVA: 0x001E81B8 File Offset: 0x001E63B8
|
||||
// (set) Token: 0x06009485 RID: 38021 RVA: 0x001E81CC File Offset: 0x001E63CC
|
||||
[Token(Token = "0x170017A4")]
|
||||
public static HTTPUpdateDelegator Instance
|
||||
{
|
||||
[Token(Token = "0x6009484")]
|
||||
[Address(RVA = "0x264EA90", Offset = "0x264D890", VA = "0x18264EA90")]
|
||||
get;
|
||||
[Token(Token = "0x6009485")]
|
||||
[Address(RVA = "0x264ECD0", Offset = "0x264DAD0", VA = "0x18264ECD0")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x170017A5 RID: 6053
|
||||
// (get) Token: 0x06009486 RID: 38022 RVA: 0x001E81E0 File Offset: 0x001E63E0
|
||||
// (set) Token: 0x06009487 RID: 38023 RVA: 0x001E81F4 File Offset: 0x001E63F4
|
||||
[Token(Token = "0x170017A5")]
|
||||
public static bool IsCreated
|
||||
{
|
||||
[Token(Token = "0x6009486")]
|
||||
[Address(RVA = "0x264EAF0", Offset = "0x264D8F0", VA = "0x18264EAF0")]
|
||||
get;
|
||||
[Token(Token = "0x6009487")]
|
||||
[Address(RVA = "0x264ED90", Offset = "0x264DB90", VA = "0x18264ED90")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x170017A6 RID: 6054
|
||||
// (get) Token: 0x06009488 RID: 38024 RVA: 0x001E8208 File Offset: 0x001E6408
|
||||
// (set) Token: 0x06009489 RID: 38025 RVA: 0x001E821C File Offset: 0x001E641C
|
||||
[Token(Token = "0x170017A6")]
|
||||
public static bool IsThreaded
|
||||
{
|
||||
[Token(Token = "0x6009488")]
|
||||
[Address(RVA = "0x264EBB0", Offset = "0x264D9B0", VA = "0x18264EBB0")]
|
||||
get;
|
||||
[Token(Token = "0x6009489")]
|
||||
[Address(RVA = "0x264EE50", Offset = "0x264DC50", VA = "0x18264EE50")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x170017A7 RID: 6055
|
||||
// (get) Token: 0x0600948A RID: 38026 RVA: 0x001E8230 File Offset: 0x001E6430
|
||||
// (set) Token: 0x0600948B RID: 38027 RVA: 0x001E8244 File Offset: 0x001E6444
|
||||
[Token(Token = "0x170017A7")]
|
||||
public static bool IsThreadRunning
|
||||
{
|
||||
[Token(Token = "0x600948A")]
|
||||
[Address(RVA = "0x264EB50", Offset = "0x264D950", VA = "0x18264EB50")]
|
||||
get;
|
||||
[Token(Token = "0x600948B")]
|
||||
[Address(RVA = "0x264EDF0", Offset = "0x264DBF0", VA = "0x18264EDF0")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x170017A8 RID: 6056
|
||||
// (get) Token: 0x0600948C RID: 38028 RVA: 0x001E8258 File Offset: 0x001E6458
|
||||
// (set) Token: 0x0600948D RID: 38029 RVA: 0x001E826C File Offset: 0x001E646C
|
||||
[Token(Token = "0x170017A8")]
|
||||
public static int ThreadFrequencyInMS
|
||||
{
|
||||
[Token(Token = "0x600948C")]
|
||||
[Address(RVA = "0x264EC10", Offset = "0x264DA10", VA = "0x18264EC10")]
|
||||
get;
|
||||
[Token(Token = "0x600948D")]
|
||||
[Address(RVA = "0x264EEB0", Offset = "0x264DCB0", VA = "0x18264EEB0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x0600948F RID: 38031 RVA: 0x001E8290 File Offset: 0x001E6490
|
||||
[Token(Token = "0x600948F")]
|
||||
[Address(RVA = "0x264DBA0", Offset = "0x264C9A0", VA = "0x18264DBA0")]
|
||||
public static void CheckInstance()
|
||||
{
|
||||
GameObject gameObject = GameObject.Find("HTTP Update Delegator");
|
||||
int num = 0;
|
||||
if (gameObject != num)
|
||||
{
|
||||
HTTPUpdateDelegator component = gameObject.GetComponent<HTTPUpdateDelegator>();
|
||||
}
|
||||
HTTPUpdateDelegator httpupdateDelegator = HTTPUpdateDelegator.<Instance>k__BackingField;
|
||||
int num2 = 0;
|
||||
if (httpupdateDelegator == num2)
|
||||
{
|
||||
HTTPUpdateDelegator httpupdateDelegator2 = new GameObject("HTTP Update Delegator")
|
||||
{
|
||||
hideFlags = HideFlags.DontSave
|
||||
}.AddComponent<HTTPUpdateDelegator>();
|
||||
}
|
||||
BestHTTP.Logger.ILogger logger = HTTPManager.Logger;
|
||||
BestHTTP.Logger.ILogger logger2 = HTTPManager.Logger;
|
||||
}
|
||||
|
||||
// Token: 0x06009490 RID: 38032 RVA: 0x001E831C File Offset: 0x001E651C
|
||||
[Token(Token = "0x6009490")]
|
||||
[Address(RVA = "0x264E3D0", Offset = "0x264D1D0", VA = "0x18264E3D0")]
|
||||
private void Setup()
|
||||
{
|
||||
HTTPCacheService.SetupCacheFolder();
|
||||
CookieJar.SetupFolder();
|
||||
CookieJar.Load();
|
||||
bool flag = ThreadPool.QueueUserWorkItem(new WaitCallback(this.ThreadFunc));
|
||||
if (!Application.isEditor || Application.isPlaying)
|
||||
{
|
||||
global::UnityEngine.Object.DontDestroyOnLoad(base.gameObject);
|
||||
}
|
||||
BestHTTP.Logger.ILogger logger = HTTPManager.Logger;
|
||||
}
|
||||
|
||||
// Token: 0x06009491 RID: 38033 RVA: 0x001E8384 File Offset: 0x001E6584
|
||||
[Token(Token = "0x6009491")]
|
||||
[Address(RVA = "0x264E5D0", Offset = "0x264D3D0", VA = "0x18264E5D0")]
|
||||
private void ThreadFunc(object obj)
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
BestHTTP.Logger.ILogger logger = HTTPManager.Logger;
|
||||
HTTPManager.OnUpdate();
|
||||
BestHTTP.Logger.ILogger logger2 = HTTPManager.Logger;
|
||||
}
|
||||
while (num != 0);
|
||||
}
|
||||
|
||||
// Token: 0x06009492 RID: 38034 RVA: 0x001E83B4 File Offset: 0x001E65B4
|
||||
[Token(Token = "0x6009492")]
|
||||
[Address(RVA = "0x264E850", Offset = "0x264D650", VA = "0x18264E850")]
|
||||
private void Update()
|
||||
{
|
||||
bool flag;
|
||||
bool flag2;
|
||||
if (!flag || !flag2)
|
||||
{
|
||||
this.Setup();
|
||||
HTTPManager.OnUpdate();
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x06009493 RID: 38035 RVA: 0x001E83DC File Offset: 0x001E65DC
|
||||
[Token(Token = "0x6009493")]
|
||||
[Address(RVA = "0x264E340", Offset = "0x264D140", VA = "0x18264E340")]
|
||||
private void OnDisable()
|
||||
{
|
||||
BestHTTP.Logger.ILogger logger = HTTPManager.Logger;
|
||||
this.OnApplicationQuit();
|
||||
}
|
||||
|
||||
// Token: 0x06009494 RID: 38036 RVA: 0x001E8400 File Offset: 0x001E6600
|
||||
[Token(Token = "0x6009494")]
|
||||
[Address(RVA = "0x264DF40", Offset = "0x264CD40", VA = "0x18264DF40")]
|
||||
private void OnApplicationPause(bool isPaused)
|
||||
{
|
||||
HTTPUpdateDelegator.OnApplicationForegroundStateChanged(isPaused);
|
||||
}
|
||||
|
||||
// Token: 0x06009495 RID: 38037 RVA: 0x001E8420 File Offset: 0x001E6620
|
||||
[Token(Token = "0x6009495")]
|
||||
[Address(RVA = "0x264DFF0", Offset = "0x264CDF0", VA = "0x18264DFF0")]
|
||||
private void OnApplicationQuit()
|
||||
{
|
||||
BestHTTP.Logger.ILogger logger = HTTPManager.Logger;
|
||||
if (HTTPUpdateDelegator.OnBeforeApplicationQuit() != 0)
|
||||
{
|
||||
}
|
||||
BestHTTP.Logger.ILogger logger2 = HTTPManager.Logger;
|
||||
BestHTTP.Logger.ILogger logger3 = HTTPManager.Logger;
|
||||
string empty = string.Empty;
|
||||
HTTPManager.OnQuit();
|
||||
}
|
||||
|
||||
// Token: 0x06009496 RID: 38038 RVA: 0x001E847C File Offset: 0x001E667C
|
||||
[Token(Token = "0x6009496")]
|
||||
[Address(RVA = "0x74EA40", Offset = "0x74D840", VA = "0x18074EA40")]
|
||||
public HTTPUpdateDelegator()
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x04006533 RID: 25907
|
||||
[Token(Token = "0x4006533")]
|
||||
public static Func<bool> OnBeforeApplicationQuit;
|
||||
|
||||
// Token: 0x04006534 RID: 25908
|
||||
[Token(Token = "0x4006534")]
|
||||
public static Action<bool> OnApplicationForegroundStateChanged;
|
||||
|
||||
// Token: 0x04006535 RID: 25909
|
||||
[Token(Token = "0x4006535")]
|
||||
private static bool IsSetupCalled;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP
|
||||
{
|
||||
// Token: 0x020018A5 RID: 6309
|
||||
[Token(Token = "0x20018A5")]
|
||||
public interface IProtocol
|
||||
{
|
||||
// Token: 0x17001792 RID: 6034
|
||||
// (get) Token: 0x06009444 RID: 37956
|
||||
[Token(Token = "0x17001792")]
|
||||
bool IsClosed
|
||||
{
|
||||
[Token(Token = "0x6009444")]
|
||||
[Address(Slot = "0")]
|
||||
get;
|
||||
}
|
||||
|
||||
// Token: 0x06009445 RID: 37957
|
||||
[Token(Token = "0x6009445")]
|
||||
[Address(Slot = "1")]
|
||||
void HandleEvents();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,481 @@
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.Globalization;
|
||||
using System.Text;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.JSON
|
||||
{
|
||||
// Token: 0x02001F7E RID: 8062
|
||||
[Token(Token = "0x2001F7E")]
|
||||
public class Json
|
||||
{
|
||||
// Token: 0x0600CC18 RID: 52248 RVA: 0x002EBD48 File Offset: 0x002E9F48
|
||||
[Token(Token = "0x600CC18")]
|
||||
[Address(RVA = "0x264F3E0", Offset = "0x264E1E0", VA = "0x18264F3E0")]
|
||||
public static object Decode(string json)
|
||||
{
|
||||
if (json == 0)
|
||||
{
|
||||
}
|
||||
char[] array = json.ToCharArray();
|
||||
object obj;
|
||||
return obj;
|
||||
}
|
||||
|
||||
// Token: 0x0600CC19 RID: 52249 RVA: 0x002EBD64 File Offset: 0x002E9F64
|
||||
[Token(Token = "0x600CC19")]
|
||||
[Address(RVA = "0x264F430", Offset = "0x264E230", VA = "0x18264F430")]
|
||||
public static object Decode(string json, ref bool success)
|
||||
{
|
||||
if (json == 0)
|
||||
{
|
||||
}
|
||||
char[] array = json.ToCharArray();
|
||||
object obj;
|
||||
return obj;
|
||||
}
|
||||
|
||||
// Token: 0x0600CC1A RID: 52250 RVA: 0x002EBD80 File Offset: 0x002E9F80
|
||||
[Token(Token = "0x600CC1A")]
|
||||
[Address(RVA = "0x264F510", Offset = "0x264E310", VA = "0x18264F510")]
|
||||
public static string Encode(object json)
|
||||
{
|
||||
StringBuilder stringBuilder = new StringBuilder(2000);
|
||||
if (Json.SerializeValue(json, stringBuilder))
|
||||
{
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CC1B RID: 52251 RVA: 0x002EBDAC File Offset: 0x002E9FAC
|
||||
[Token(Token = "0x600CC1B")]
|
||||
[Address(RVA = "0x264FC40", Offset = "0x264EA40", VA = "0x18264FC40")]
|
||||
protected static Dictionary<string, object> ParseObject(char[] json, ref int index, ref bool success)
|
||||
{
|
||||
Dictionary<string, object> dictionary = new Dictionary();
|
||||
int num = Json.NextToken(json, ref index);
|
||||
int num2;
|
||||
if (num2 != 0)
|
||||
{
|
||||
if (num2 != 6)
|
||||
{
|
||||
if (num2 == 2)
|
||||
{
|
||||
goto IL_49;
|
||||
}
|
||||
string text = Json.ParseString(json, ref index, ref success);
|
||||
if (Json.NextToken(json, ref index) != 5)
|
||||
{
|
||||
goto IL_52;
|
||||
}
|
||||
object obj = Json.ParseValue(json, ref index, ref success);
|
||||
dictionary[text] = obj;
|
||||
}
|
||||
int num3 = Json.NextToken(json, ref index);
|
||||
IL_49:
|
||||
int num4 = Json.NextToken(json, ref index);
|
||||
}
|
||||
IL_52:
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CC1C RID: 52252 RVA: 0x002EBE14 File Offset: 0x002EA014
|
||||
[Token(Token = "0x600CC1C")]
|
||||
[Address(RVA = "0x264F9D0", Offset = "0x264E7D0", VA = "0x18264F9D0")]
|
||||
protected static List<object> ParseArray(char[] json, ref int index, ref bool success)
|
||||
{
|
||||
List<object> list = new List();
|
||||
int num = Json.NextToken(json, ref index);
|
||||
int num2;
|
||||
if (num2 != 0)
|
||||
{
|
||||
while (num2 == 6)
|
||||
{
|
||||
}
|
||||
if (num2 != 4)
|
||||
{
|
||||
object obj = Json.ParseValue(json, ref index, ref success);
|
||||
list.Add(obj);
|
||||
}
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CC1D RID: 52253 RVA: 0x002EBE54 File Offset: 0x002EA054
|
||||
[Token(Token = "0x600CC1D")]
|
||||
[Address(RVA = "0x2650090", Offset = "0x264EE90", VA = "0x182650090")]
|
||||
protected static object ParseValue(char[] json, ref int index, ref bool success)
|
||||
{
|
||||
int num;
|
||||
if (num <= 11)
|
||||
{
|
||||
Dictionary<string, object> dictionary = new Dictionary();
|
||||
int num2 = Json.NextToken(json, ref index);
|
||||
int num3;
|
||||
if (num3 != 0)
|
||||
{
|
||||
while (num3 == 6)
|
||||
{
|
||||
}
|
||||
if (num3 != 2)
|
||||
{
|
||||
string text = Json.ParseString(json, ref index, ref success);
|
||||
if (Json.NextToken(json, ref index) == 5)
|
||||
{
|
||||
object obj = Json.ParseValue(json, ref index, ref success);
|
||||
dictionary[text] = obj;
|
||||
}
|
||||
}
|
||||
}
|
||||
int num4 = 0;
|
||||
success.m_value = num4 != 0;
|
||||
List<object> list = new List();
|
||||
int num5 = Json.NextToken(json, ref index);
|
||||
int num6;
|
||||
if (num6 != 0)
|
||||
{
|
||||
while (num6 == 6)
|
||||
{
|
||||
}
|
||||
if (num6 != 4)
|
||||
{
|
||||
object obj2 = Json.ParseValue(json, ref index, ref success);
|
||||
list.Add(obj2);
|
||||
}
|
||||
}
|
||||
string text2 = Json.ParseString(json, ref index, ref success);
|
||||
Json.EatWhitespace(json, ref index);
|
||||
int length = json.Length;
|
||||
int num7;
|
||||
if (num7 != -1)
|
||||
{
|
||||
}
|
||||
CultureInfo invariantCulture = CultureInfo.InvariantCulture;
|
||||
bool flag;
|
||||
success.m_value = flag;
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CC1E RID: 52254 RVA: 0x002EBF28 File Offset: 0x002EA128
|
||||
[Token(Token = "0x600CC1E")]
|
||||
[Address(RVA = "0x264FD70", Offset = "0x264EB70", VA = "0x18264FD70")]
|
||||
protected static string ParseString(char[] json, ref int index, ref bool success)
|
||||
{
|
||||
int num = 0;
|
||||
uint num2;
|
||||
StringBuilder stringBuilder = new StringBuilder((int)num2);
|
||||
Json.EatWhitespace(json, ref index);
|
||||
index.m_value = stringBuilder;
|
||||
index.m_value = stringBuilder;
|
||||
int length = json.Length;
|
||||
if (stringBuilder != length)
|
||||
{
|
||||
index.m_value = length;
|
||||
int num3 = json.Length;
|
||||
num3 -= length;
|
||||
CultureInfo invariantCulture = CultureInfo.InvariantCulture;
|
||||
bool flag;
|
||||
success.m_value = flag;
|
||||
if (flag)
|
||||
{
|
||||
string text = char.ConvertFromUtf32(num);
|
||||
StringBuilder stringBuilder2 = stringBuilder.Append(text);
|
||||
}
|
||||
return "";
|
||||
}
|
||||
success.m_value = num != 0;
|
||||
throw new IndexOutOfRangeException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CC1F RID: 52255 RVA: 0x002EBFC0 File Offset: 0x002EA1C0
|
||||
[Token(Token = "0x600CC1F")]
|
||||
[Address(RVA = "0x264FAD0", Offset = "0x264E8D0", VA = "0x18264FAD0")]
|
||||
protected static double ParseNumber(char[] json, ref int index, ref bool success)
|
||||
{
|
||||
Json.EatWhitespace(json, ref index);
|
||||
int length = json.Length;
|
||||
int num;
|
||||
if (num != -1)
|
||||
{
|
||||
}
|
||||
CultureInfo invariantCulture = CultureInfo.InvariantCulture;
|
||||
bool flag;
|
||||
success.m_value = flag;
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CC20 RID: 52256 RVA: 0x002EBFFC File Offset: 0x002EA1FC
|
||||
[Token(Token = "0x600CC20")]
|
||||
[Address(RVA = "0x264F5A0", Offset = "0x264E3A0", VA = "0x18264F5A0")]
|
||||
protected static int GetLastIndexOfNumber(char[] json, int index)
|
||||
{
|
||||
int length = json.Length;
|
||||
if (index < length)
|
||||
{
|
||||
char c = json[index];
|
||||
int num;
|
||||
if (num != -1)
|
||||
{
|
||||
}
|
||||
}
|
||||
return index - 1;
|
||||
}
|
||||
|
||||
// Token: 0x0600CC21 RID: 52257 RVA: 0x002EC02C File Offset: 0x002EA22C
|
||||
[Token(Token = "0x600CC21")]
|
||||
[Address(RVA = "0x264F480", Offset = "0x264E280", VA = "0x18264F480")]
|
||||
protected static void EatWhitespace(char[] json, ref int index)
|
||||
{
|
||||
int length = json.Length;
|
||||
int num;
|
||||
if (num != -1)
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600CC22 RID: 52258 RVA: 0x002EC04C File Offset: 0x002EA24C
|
||||
[Token(Token = "0x600CC22")]
|
||||
[Address(RVA = "0x264F630", Offset = "0x264E430", VA = "0x18264F630")]
|
||||
protected static int LookAhead(char[] json, int index)
|
||||
{
|
||||
return Json.NextToken(json, index);
|
||||
}
|
||||
|
||||
// Token: 0x0600CC23 RID: 52259 RVA: 0x002EC060 File Offset: 0x002EA260
|
||||
[Token(Token = "0x600CC23")]
|
||||
[Address(RVA = "0x264F650", Offset = "0x264E450", VA = "0x18264F650")]
|
||||
protected static int NextToken(char[] json, ref int index)
|
||||
{
|
||||
Json.EatWhitespace(json, ref index);
|
||||
char c;
|
||||
index.m_value = (int)c;
|
||||
uint num;
|
||||
index.m_value = (int)num;
|
||||
uint num2;
|
||||
index.m_value = (int)num2;
|
||||
uint num3;
|
||||
index.m_value = (int)num3;
|
||||
return 0;
|
||||
}
|
||||
|
||||
// Token: 0x0600CC24 RID: 52260 RVA: 0x002EC09C File Offset: 0x002EA29C
|
||||
[Token(Token = "0x600CC24")]
|
||||
[Address(RVA = "0x2650A90", Offset = "0x264F890", VA = "0x182650A90")]
|
||||
protected static bool SerializeValue(object value, StringBuilder builder)
|
||||
{
|
||||
for (;;)
|
||||
{
|
||||
int num = 0;
|
||||
if (value == 0 || value == 0 || value != 0)
|
||||
{
|
||||
if (value != 0)
|
||||
{
|
||||
if (value != 0)
|
||||
{
|
||||
StringBuilder stringBuilder = builder.Append("true");
|
||||
}
|
||||
if (value != 0)
|
||||
{
|
||||
StringBuilder stringBuilder2 = builder.Append("false");
|
||||
}
|
||||
}
|
||||
if (value != 0)
|
||||
{
|
||||
}
|
||||
StringBuilder stringBuilder3 = builder.Append("null");
|
||||
double num2 = Convert.ToDouble(value);
|
||||
CultureInfo invariantCulture = CultureInfo.InvariantCulture;
|
||||
string text = Convert.ToString(num2, invariantCulture);
|
||||
StringBuilder stringBuilder4 = builder.Append("[");
|
||||
if (num < stringBuilder4)
|
||||
{
|
||||
if ((ulong)1L == 0UL)
|
||||
{
|
||||
StringBuilder stringBuilder5 = builder.Append(", ");
|
||||
}
|
||||
if (!Json.SerializeValue(stringBuilder4, builder))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
num++;
|
||||
}
|
||||
if (value != 0)
|
||||
{
|
||||
}
|
||||
StringBuilder stringBuilder6 = builder.Append("{");
|
||||
if (stringBuilder6 == 0)
|
||||
{
|
||||
break;
|
||||
}
|
||||
int hashCode = stringBuilder6.GetHashCode();
|
||||
if ((ulong)1L == 0UL)
|
||||
{
|
||||
StringBuilder stringBuilder7 = builder.Append(", ");
|
||||
}
|
||||
StringBuilder stringBuilder8 = builder.Append(":");
|
||||
if (Json.SerializeValue(hashCode, builder))
|
||||
{
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
StringBuilder stringBuilder9 = builder.Append("}");
|
||||
return true;
|
||||
}
|
||||
|
||||
// Token: 0x0600CC25 RID: 52261 RVA: 0x002EC198 File Offset: 0x002EA398
|
||||
[Token(Token = "0x600CC25")]
|
||||
[Address(RVA = "0x2650680", Offset = "0x264F480", VA = "0x182650680")]
|
||||
protected static bool SerializeObject(IDictionary anObject, StringBuilder builder)
|
||||
{
|
||||
StringBuilder stringBuilder = builder.Append("{");
|
||||
if (stringBuilder != 0)
|
||||
{
|
||||
int hashCode = stringBuilder.GetHashCode();
|
||||
if ((ulong)1L == 0UL)
|
||||
{
|
||||
StringBuilder stringBuilder2 = builder.Append(", ");
|
||||
}
|
||||
StringBuilder stringBuilder3 = builder.Append(":");
|
||||
if (Json.SerializeValue(hashCode, builder))
|
||||
{
|
||||
}
|
||||
}
|
||||
StringBuilder stringBuilder4 = builder.Append("}");
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CC26 RID: 52262 RVA: 0x002EC1FC File Offset: 0x002EA3FC
|
||||
[Token(Token = "0x600CC26")]
|
||||
[Address(RVA = "0x26504C0", Offset = "0x264F2C0", VA = "0x1826504C0")]
|
||||
protected static bool SerializeArray(IList anArray, StringBuilder builder)
|
||||
{
|
||||
StringBuilder stringBuilder = builder.Append("[");
|
||||
int num = 0;
|
||||
if (num < stringBuilder)
|
||||
{
|
||||
if ((ulong)1L == 0UL)
|
||||
{
|
||||
StringBuilder stringBuilder2 = builder.Append(", ");
|
||||
}
|
||||
if (Json.SerializeValue(stringBuilder, builder))
|
||||
{
|
||||
num++;
|
||||
}
|
||||
}
|
||||
StringBuilder stringBuilder3 = builder.Append("]");
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CC27 RID: 52263 RVA: 0x002EC250 File Offset: 0x002EA450
|
||||
[Token(Token = "0x600CC27")]
|
||||
[Address(RVA = "0x26507F0", Offset = "0x264F5F0", VA = "0x1826507F0")]
|
||||
protected static bool SerializeString(string aString, StringBuilder builder)
|
||||
{
|
||||
StringBuilder stringBuilder = builder.Append("\"");
|
||||
char[] array = aString.ToCharArray();
|
||||
int num = 0;
|
||||
int length = array.Length;
|
||||
if (num < length)
|
||||
{
|
||||
char c = array[num];
|
||||
string text = Convert.ToString((int)Convert.ToChar((ushort)c), 16);
|
||||
string text3;
|
||||
string text2 = "\\u" + text3;
|
||||
StringBuilder stringBuilder2 = builder.Append(text2);
|
||||
num++;
|
||||
StringBuilder stringBuilder3 = builder.Append(c);
|
||||
num++;
|
||||
StringBuilder stringBuilder4 = builder.Append("\\t");
|
||||
num++;
|
||||
StringBuilder stringBuilder5 = builder.Append("\\r");
|
||||
num++;
|
||||
StringBuilder stringBuilder6 = builder.Append("\\n");
|
||||
num++;
|
||||
StringBuilder stringBuilder7 = builder.Append("\\f");
|
||||
num++;
|
||||
StringBuilder stringBuilder8 = builder.Append("\\b");
|
||||
num++;
|
||||
StringBuilder stringBuilder9 = builder.Append("\\\\");
|
||||
num++;
|
||||
StringBuilder stringBuilder10 = builder.Append("\\\"");
|
||||
num++;
|
||||
}
|
||||
StringBuilder stringBuilder11 = builder.Append("\"");
|
||||
return true;
|
||||
}
|
||||
|
||||
// Token: 0x0600CC28 RID: 52264 RVA: 0x002EC350 File Offset: 0x002EA550
|
||||
[Token(Token = "0x600CC28")]
|
||||
[Address(RVA = "0x26505D0", Offset = "0x264F3D0", VA = "0x1826505D0")]
|
||||
protected static bool SerializeNumber(double number, StringBuilder builder)
|
||||
{
|
||||
CultureInfo invariantCulture = CultureInfo.InvariantCulture;
|
||||
string text = Convert.ToString(number, invariantCulture);
|
||||
StringBuilder stringBuilder = builder.Append(text);
|
||||
return true;
|
||||
}
|
||||
|
||||
// Token: 0x0600CC29 RID: 52265 RVA: 0x002EC37C File Offset: 0x002EA57C
|
||||
[Token(Token = "0x600CC29")]
|
||||
[Address(RVA = "0x3F5100", Offset = "0x3F3F00", VA = "0x1803F5100")]
|
||||
public Json()
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0400821D RID: 33309
|
||||
[Token(Token = "0x400821D")]
|
||||
private const int TOKEN_NONE = 0;
|
||||
|
||||
// Token: 0x0400821E RID: 33310
|
||||
[Token(Token = "0x400821E")]
|
||||
private const int TOKEN_CURLY_OPEN = 1;
|
||||
|
||||
// Token: 0x0400821F RID: 33311
|
||||
[Token(Token = "0x400821F")]
|
||||
private const int TOKEN_CURLY_CLOSE = 2;
|
||||
|
||||
// Token: 0x04008220 RID: 33312
|
||||
[Token(Token = "0x4008220")]
|
||||
private const int TOKEN_SQUARED_OPEN = 3;
|
||||
|
||||
// Token: 0x04008221 RID: 33313
|
||||
[Token(Token = "0x4008221")]
|
||||
private const int TOKEN_SQUARED_CLOSE = 4;
|
||||
|
||||
// Token: 0x04008222 RID: 33314
|
||||
[Token(Token = "0x4008222")]
|
||||
private const int TOKEN_COLON = 5;
|
||||
|
||||
// Token: 0x04008223 RID: 33315
|
||||
[Token(Token = "0x4008223")]
|
||||
private const int TOKEN_COMMA = 6;
|
||||
|
||||
// Token: 0x04008224 RID: 33316
|
||||
[Token(Token = "0x4008224")]
|
||||
private const int TOKEN_STRING = 7;
|
||||
|
||||
// Token: 0x04008225 RID: 33317
|
||||
[Token(Token = "0x4008225")]
|
||||
private const int TOKEN_NUMBER = 8;
|
||||
|
||||
// Token: 0x04008226 RID: 33318
|
||||
[Token(Token = "0x4008226")]
|
||||
private const int TOKEN_TRUE = 9;
|
||||
|
||||
// Token: 0x04008227 RID: 33319
|
||||
[Token(Token = "0x4008227")]
|
||||
private const int TOKEN_FALSE = 10;
|
||||
|
||||
// Token: 0x04008228 RID: 33320
|
||||
[Token(Token = "0x4008228")]
|
||||
private const int TOKEN_NULL = 11;
|
||||
|
||||
// Token: 0x04008229 RID: 33321
|
||||
[Token(Token = "0x4008229")]
|
||||
private const int BUILDER_CAPACITY = 2000;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,54 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP
|
||||
{
|
||||
// Token: 0x0200188E RID: 6286
|
||||
[Token(Token = "0x200188E")]
|
||||
internal sealed class KeepAliveHeader
|
||||
{
|
||||
// Token: 0x1700173F RID: 5951
|
||||
// (get) Token: 0x06009318 RID: 37656 RVA: 0x001E215C File Offset: 0x001E035C
|
||||
// (set) Token: 0x06009319 RID: 37657 RVA: 0x001E2170 File Offset: 0x001E0370
|
||||
[Token(Token = "0x1700173F")]
|
||||
public TimeSpan TimeOut
|
||||
{
|
||||
[Token(Token = "0x6009318")]
|
||||
[Address(RVA = "0x3F6E20", Offset = "0x3F5C20", VA = "0x1803F6E20")]
|
||||
get;
|
||||
[Token(Token = "0x6009319")]
|
||||
[Address(RVA = "0x3F7200", Offset = "0x3F6000", VA = "0x1803F7200")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x17001740 RID: 5952
|
||||
// (get) Token: 0x0600931A RID: 37658 RVA: 0x001E2184 File Offset: 0x001E0384
|
||||
// (set) Token: 0x0600931B RID: 37659 RVA: 0x001E2198 File Offset: 0x001E0398
|
||||
[Token(Token = "0x17001740")]
|
||||
public int MaxRequests
|
||||
{
|
||||
[Token(Token = "0x600931A")]
|
||||
[Address(RVA = "0x40B720", Offset = "0x40A520", VA = "0x18040B720")]
|
||||
get;
|
||||
[Token(Token = "0x600931B")]
|
||||
[Address(RVA = "0x41F740", Offset = "0x41E540", VA = "0x18041F740")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x0600931C RID: 37660 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600931C")]
|
||||
[Address(RVA = "0x2650F50", Offset = "0x264FD50", VA = "0x182650F50")]
|
||||
public void Parse(List<string> headerValues)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x0600931D RID: 37661 RVA: 0x001E21AC File Offset: 0x001E03AC
|
||||
[Token(Token = "0x600931D")]
|
||||
[Address(RVA = "0x3F5100", Offset = "0x3F3F00", VA = "0x1803F5100")]
|
||||
public KeepAliveHeader()
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,211 @@
|
||||
using System;
|
||||
using System.Text;
|
||||
using Cpp2IlInjected;
|
||||
using UnityEngine;
|
||||
|
||||
namespace BestHTTP.Logger
|
||||
{
|
||||
// Token: 0x02001F7B RID: 8059
|
||||
[Token(Token = "0x2001F7B")]
|
||||
public class DefaultLogger : ILogger
|
||||
{
|
||||
// Token: 0x17002067 RID: 8295
|
||||
// (get) Token: 0x0600CBF4 RID: 52212 RVA: 0x002EBA10 File Offset: 0x002E9C10
|
||||
// (set) Token: 0x0600CBF5 RID: 52213 RVA: 0x002EBA24 File Offset: 0x002E9C24
|
||||
[Token(Token = "0x17002067")]
|
||||
public Loglevels Level
|
||||
{
|
||||
[Token(Token = "0x600CBF4")]
|
||||
[Address(RVA = "0x42D5E0", Offset = "0x42C3E0", VA = "0x18042D5E0", Slot = "4")]
|
||||
get;
|
||||
[Token(Token = "0x600CBF5")]
|
||||
[Address(RVA = "0x495D50", Offset = "0x494B50", VA = "0x180495D50", Slot = "5")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17002068 RID: 8296
|
||||
// (get) Token: 0x0600CBF6 RID: 52214 RVA: 0x002EBA38 File Offset: 0x002E9C38
|
||||
// (set) Token: 0x0600CBF7 RID: 52215 RVA: 0x002EBA4C File Offset: 0x002E9C4C
|
||||
[Token(Token = "0x17002068")]
|
||||
public string FormatVerbose
|
||||
{
|
||||
[Token(Token = "0x600CBF6")]
|
||||
[Address(RVA = "0x3F5F40", Offset = "0x3F4D40", VA = "0x1803F5F40", Slot = "6")]
|
||||
get;
|
||||
[Token(Token = "0x600CBF7")]
|
||||
[Address(RVA = "0x3F7210", Offset = "0x3F6010", VA = "0x1803F7210", Slot = "7")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17002069 RID: 8297
|
||||
// (get) Token: 0x0600CBF8 RID: 52216 RVA: 0x002EBA60 File Offset: 0x002E9C60
|
||||
// (set) Token: 0x0600CBF9 RID: 52217 RVA: 0x002EBA74 File Offset: 0x002E9C74
|
||||
[Token(Token = "0x17002069")]
|
||||
public string FormatInfo
|
||||
{
|
||||
[Token(Token = "0x600CBF8")]
|
||||
[Address(RVA = "0x3F6400", Offset = "0x3F5200", VA = "0x1803F6400", Slot = "8")]
|
||||
get;
|
||||
[Token(Token = "0x600CBF9")]
|
||||
[Address(RVA = "0x460F90", Offset = "0x45FD90", VA = "0x180460F90", Slot = "9")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x1700206A RID: 8298
|
||||
// (get) Token: 0x0600CBFA RID: 52218 RVA: 0x002EBA88 File Offset: 0x002E9C88
|
||||
// (set) Token: 0x0600CBFB RID: 52219 RVA: 0x002EBA9C File Offset: 0x002E9C9C
|
||||
[Token(Token = "0x1700206A")]
|
||||
public string FormatWarn
|
||||
{
|
||||
[Token(Token = "0x600CBFA")]
|
||||
[Address(RVA = "0x3F63E0", Offset = "0x3F51E0", VA = "0x1803F63E0", Slot = "10")]
|
||||
get;
|
||||
[Token(Token = "0x600CBFB")]
|
||||
[Address(RVA = "0x409C60", Offset = "0x408A60", VA = "0x180409C60", Slot = "11")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x1700206B RID: 8299
|
||||
// (get) Token: 0x0600CBFC RID: 52220 RVA: 0x002EBAB0 File Offset: 0x002E9CB0
|
||||
// (set) Token: 0x0600CBFD RID: 52221 RVA: 0x002EBAC4 File Offset: 0x002E9CC4
|
||||
[Token(Token = "0x1700206B")]
|
||||
public string FormatErr
|
||||
{
|
||||
[Token(Token = "0x600CBFC")]
|
||||
[Address(RVA = "0x3FA180", Offset = "0x3F8F80", VA = "0x1803FA180", Slot = "12")]
|
||||
get;
|
||||
[Token(Token = "0x600CBFD")]
|
||||
[Address(RVA = "0x4437E0", Offset = "0x4425E0", VA = "0x1804437E0", Slot = "13")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x1700206C RID: 8300
|
||||
// (get) Token: 0x0600CBFE RID: 52222 RVA: 0x002EBAD8 File Offset: 0x002E9CD8
|
||||
// (set) Token: 0x0600CBFF RID: 52223 RVA: 0x002EBAEC File Offset: 0x002E9CEC
|
||||
[Token(Token = "0x1700206C")]
|
||||
public string FormatEx
|
||||
{
|
||||
[Token(Token = "0x600CBFE")]
|
||||
[Address(RVA = "0x3F63D0", Offset = "0x3F51D0", VA = "0x1803F63D0", Slot = "14")]
|
||||
get;
|
||||
[Token(Token = "0x600CBFF")]
|
||||
[Address(RVA = "0x5329E0", Offset = "0x5317E0", VA = "0x1805329E0", Slot = "15")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x0600CC00 RID: 52224 RVA: 0x002EBB00 File Offset: 0x002E9D00
|
||||
[Token(Token = "0x600CC00")]
|
||||
[Address(RVA = "0x264C8E0", Offset = "0x264B6E0", VA = "0x18264C8E0")]
|
||||
public DefaultLogger()
|
||||
{
|
||||
this.FormatVerbose = "[{0}] D [{1}]: {2}";
|
||||
this.FormatInfo = "[{0}] I [{1}]: {2}";
|
||||
this.FormatWarn = "[{0}] W [{1}]: {2}";
|
||||
this.FormatErr = "[{0}] Err [{1}]: {2}";
|
||||
this.FormatEx = "[{0}] Ex [{1}]: {2} - Message: {3} StackTrace: {4}";
|
||||
bool flag = !Debug.isDebugBuild;
|
||||
this.Level = (flag ? Loglevels.Information : Loglevels.All);
|
||||
}
|
||||
|
||||
// Token: 0x0600CC01 RID: 52225 RVA: 0x002EBB5C File Offset: 0x002E9D5C
|
||||
[Token(Token = "0x600CC01")]
|
||||
[Address(RVA = "0x264C740", Offset = "0x264B540", VA = "0x18264C740", Slot = "16")]
|
||||
public void Verbose(string division, string verb)
|
||||
{
|
||||
string text = this.<FormatVerbose>k__BackingField;
|
||||
string formattedTime = this.GetFormattedTime();
|
||||
Debug.Log(string.Format(text, formattedTime, division, verb));
|
||||
}
|
||||
|
||||
// Token: 0x0600CC02 RID: 52226 RVA: 0x002EBB88 File Offset: 0x002E9D88
|
||||
[Token(Token = "0x600CC02")]
|
||||
[Address(RVA = "0x264C670", Offset = "0x264B470", VA = "0x18264C670", Slot = "17")]
|
||||
public void Information(string division, string info)
|
||||
{
|
||||
string text = this.<FormatInfo>k__BackingField;
|
||||
string formattedTime = this.GetFormattedTime();
|
||||
Debug.Log(string.Format(text, formattedTime, division, info));
|
||||
}
|
||||
|
||||
// Token: 0x0600CC03 RID: 52227 RVA: 0x002EBBB4 File Offset: 0x002E9DB4
|
||||
[Token(Token = "0x600CC03")]
|
||||
[Address(RVA = "0x264C810", Offset = "0x264B610", VA = "0x18264C810", Slot = "18")]
|
||||
public void Warning(string division, string warn)
|
||||
{
|
||||
string text = this.<FormatWarn>k__BackingField;
|
||||
string formattedTime = this.GetFormattedTime();
|
||||
Debug.LogWarning(string.Format(text, formattedTime, division, warn));
|
||||
}
|
||||
|
||||
// Token: 0x0600CC04 RID: 52228 RVA: 0x002EBBE0 File Offset: 0x002E9DE0
|
||||
[Token(Token = "0x600CC04")]
|
||||
[Address(RVA = "0x264C140", Offset = "0x264AF40", VA = "0x18264C140", Slot = "19")]
|
||||
public void Error(string division, string err)
|
||||
{
|
||||
string text = this.<FormatErr>k__BackingField;
|
||||
string formattedTime = this.GetFormattedTime();
|
||||
Debug.LogError(string.Format(text, formattedTime, division, err));
|
||||
}
|
||||
|
||||
// Token: 0x0600CC05 RID: 52229 RVA: 0x002EBC0C File Offset: 0x002E9E0C
|
||||
[Token(Token = "0x600CC05")]
|
||||
[Address(RVA = "0x264C210", Offset = "0x264B010", VA = "0x18264C210", Slot = "20")]
|
||||
public void Exception(string division, string msg, Exception ex)
|
||||
{
|
||||
if (ex != 0)
|
||||
{
|
||||
StringBuilder stringBuilder = new StringBuilder();
|
||||
if (ex != 0)
|
||||
{
|
||||
Exception innerException = ex.InnerException;
|
||||
string text;
|
||||
StringBuilder stringBuilder2 = stringBuilder.AppendFormat("{0}: {1} {2}", text, text, innerException);
|
||||
if (ex._innerException != 0)
|
||||
{
|
||||
StringBuilder stringBuilder3 = stringBuilder.AppendLine();
|
||||
}
|
||||
}
|
||||
int hashCode = stringBuilder.GetHashCode();
|
||||
}
|
||||
string text2 = this.<FormatEx>k__BackingField;
|
||||
object[] array = new object[5];
|
||||
DateTime now = DateTime.Now;
|
||||
string text3;
|
||||
if (text3 != 0)
|
||||
{
|
||||
}
|
||||
array[0] = text3;
|
||||
if (division != 0)
|
||||
{
|
||||
}
|
||||
array[1] = division;
|
||||
if (text3 != 0)
|
||||
{
|
||||
}
|
||||
array[2] = text3;
|
||||
if ("null" != 0)
|
||||
{
|
||||
}
|
||||
array[3] = "null";
|
||||
if (ex != 0)
|
||||
{
|
||||
Exception innerException2 = ex.InnerException;
|
||||
}
|
||||
if ("null" != 0)
|
||||
{
|
||||
}
|
||||
array[4] = "null";
|
||||
Debug.LogError(string.Format(text2, array));
|
||||
}
|
||||
|
||||
// Token: 0x0600CC06 RID: 52230 RVA: 0x002EBD30 File Offset: 0x002E9F30
|
||||
[Token(Token = "0x600CC06")]
|
||||
[Address(RVA = "0x264C5F0", Offset = "0x264B3F0", VA = "0x18264C5F0")]
|
||||
private string GetFormattedTime()
|
||||
{
|
||||
DateTime now = DateTime.Now;
|
||||
string text;
|
||||
return text;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,119 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Logger
|
||||
{
|
||||
// Token: 0x02001F7D RID: 8061
|
||||
[Token(Token = "0x2001F7D")]
|
||||
public interface ILogger
|
||||
{
|
||||
// Token: 0x1700206D RID: 8301
|
||||
// (get) Token: 0x0600CC07 RID: 52231
|
||||
// (set) Token: 0x0600CC08 RID: 52232
|
||||
[Token(Token = "0x1700206D")]
|
||||
Loglevels Level
|
||||
{
|
||||
[Token(Token = "0x600CC07")]
|
||||
[Address(Slot = "0")]
|
||||
get;
|
||||
[Token(Token = "0x600CC08")]
|
||||
[Address(Slot = "1")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x1700206E RID: 8302
|
||||
// (get) Token: 0x0600CC09 RID: 52233
|
||||
// (set) Token: 0x0600CC0A RID: 52234
|
||||
[Token(Token = "0x1700206E")]
|
||||
string FormatVerbose
|
||||
{
|
||||
[Token(Token = "0x600CC09")]
|
||||
[Address(Slot = "2")]
|
||||
get;
|
||||
[Token(Token = "0x600CC0A")]
|
||||
[Address(Slot = "3")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x1700206F RID: 8303
|
||||
// (get) Token: 0x0600CC0B RID: 52235
|
||||
// (set) Token: 0x0600CC0C RID: 52236
|
||||
[Token(Token = "0x1700206F")]
|
||||
string FormatInfo
|
||||
{
|
||||
[Token(Token = "0x600CC0B")]
|
||||
[Address(Slot = "4")]
|
||||
get;
|
||||
[Token(Token = "0x600CC0C")]
|
||||
[Address(Slot = "5")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17002070 RID: 8304
|
||||
// (get) Token: 0x0600CC0D RID: 52237
|
||||
// (set) Token: 0x0600CC0E RID: 52238
|
||||
[Token(Token = "0x17002070")]
|
||||
string FormatWarn
|
||||
{
|
||||
[Token(Token = "0x600CC0D")]
|
||||
[Address(Slot = "6")]
|
||||
get;
|
||||
[Token(Token = "0x600CC0E")]
|
||||
[Address(Slot = "7")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17002071 RID: 8305
|
||||
// (get) Token: 0x0600CC0F RID: 52239
|
||||
// (set) Token: 0x0600CC10 RID: 52240
|
||||
[Token(Token = "0x17002071")]
|
||||
string FormatErr
|
||||
{
|
||||
[Token(Token = "0x600CC0F")]
|
||||
[Address(Slot = "8")]
|
||||
get;
|
||||
[Token(Token = "0x600CC10")]
|
||||
[Address(Slot = "9")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17002072 RID: 8306
|
||||
// (get) Token: 0x0600CC11 RID: 52241
|
||||
// (set) Token: 0x0600CC12 RID: 52242
|
||||
[Token(Token = "0x17002072")]
|
||||
string FormatEx
|
||||
{
|
||||
[Token(Token = "0x600CC11")]
|
||||
[Address(Slot = "10")]
|
||||
get;
|
||||
[Token(Token = "0x600CC12")]
|
||||
[Address(Slot = "11")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x0600CC13 RID: 52243
|
||||
[Token(Token = "0x600CC13")]
|
||||
[Address(Slot = "12")]
|
||||
void Verbose(string division, string verb);
|
||||
|
||||
// Token: 0x0600CC14 RID: 52244
|
||||
[Token(Token = "0x600CC14")]
|
||||
[Address(Slot = "13")]
|
||||
void Information(string division, string info);
|
||||
|
||||
// Token: 0x0600CC15 RID: 52245
|
||||
[Token(Token = "0x600CC15")]
|
||||
[Address(Slot = "14")]
|
||||
void Warning(string division, string warn);
|
||||
|
||||
// Token: 0x0600CC16 RID: 52246
|
||||
[Token(Token = "0x600CC16")]
|
||||
[Address(Slot = "15")]
|
||||
void Error(string division, string err);
|
||||
|
||||
// Token: 0x0600CC17 RID: 52247
|
||||
[Token(Token = "0x600CC17")]
|
||||
[Address(Slot = "16")]
|
||||
void Exception(string division, string msg, Exception ex);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,29 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Logger
|
||||
{
|
||||
// Token: 0x02001F7C RID: 8060
|
||||
[Token(Token = "0x2001F7C")]
|
||||
public enum Loglevels : byte
|
||||
{
|
||||
// Token: 0x04008217 RID: 33303
|
||||
[Token(Token = "0x4008217")]
|
||||
All,
|
||||
// Token: 0x04008218 RID: 33304
|
||||
[Token(Token = "0x4008218")]
|
||||
Information,
|
||||
// Token: 0x04008219 RID: 33305
|
||||
[Token(Token = "0x4008219")]
|
||||
Warning,
|
||||
// Token: 0x0400821A RID: 33306
|
||||
[Token(Token = "0x400821A")]
|
||||
Error,
|
||||
// Token: 0x0400821B RID: 33307
|
||||
[Token(Token = "0x400821B")]
|
||||
Exception,
|
||||
// Token: 0x0400821C RID: 33308
|
||||
[Token(Token = "0x400821C")]
|
||||
None
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,50 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP
|
||||
{
|
||||
// Token: 0x020018A1 RID: 6305
|
||||
[Token(Token = "0x20018A1")]
|
||||
public sealed class OnBeforeHeaderSendDelegate : MulticastDelegate
|
||||
{
|
||||
// Token: 0x060093A5 RID: 37797 RVA: 0x001E532C File Offset: 0x001E352C
|
||||
[Token(Token = "0x60093A5")]
|
||||
[Address(RVA = "0x448ED0", Offset = "0x447CD0", VA = "0x180448ED0")]
|
||||
public OnBeforeHeaderSendDelegate(object @object, IntPtr method)
|
||||
{
|
||||
this.method = method;
|
||||
this.m_target = @object;
|
||||
}
|
||||
|
||||
// Token: 0x060093A6 RID: 37798 RVA: 0x001E5348 File Offset: 0x001E3548
|
||||
[Token(Token = "0x60093A6")]
|
||||
[Address(RVA = "0x4D7E10", Offset = "0x4D6C10", VA = "0x1804D7E10", Slot = "13")]
|
||||
public void Invoke(HTTPRequest req)
|
||||
{
|
||||
if (this.delegates != 0)
|
||||
{
|
||||
}
|
||||
uint num;
|
||||
if (num != (uint)0)
|
||||
{
|
||||
throw new ExecutionEngineException();
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x060093A7 RID: 37799 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x60093A7")]
|
||||
[Address(RVA = "0x457150", Offset = "0x455F50", VA = "0x180457150", Slot = "14")]
|
||||
public IAsyncResult BeginInvoke(HTTPRequest req, AsyncCallback callback, object @object)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x060093A8 RID: 37800 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x60093A8")]
|
||||
[Address(RVA = "0x448B70", Offset = "0x447970", VA = "0x180448B70", Slot = "15")]
|
||||
public void EndInvoke(IAsyncResult result)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,50 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP
|
||||
{
|
||||
// Token: 0x0200189F RID: 6303
|
||||
[Token(Token = "0x200189F")]
|
||||
public sealed class OnBeforeRedirectionDelegate : MulticastDelegate
|
||||
{
|
||||
// Token: 0x0600939D RID: 37789 RVA: 0x001E50DC File Offset: 0x001E32DC
|
||||
[Token(Token = "0x600939D")]
|
||||
[Address(RVA = "0x448ED0", Offset = "0x447CD0", VA = "0x180448ED0")]
|
||||
public OnBeforeRedirectionDelegate(object @object, IntPtr method)
|
||||
{
|
||||
this.method = method;
|
||||
this.m_target = @object;
|
||||
}
|
||||
|
||||
// Token: 0x0600939E RID: 37790 RVA: 0x001E50F8 File Offset: 0x001E32F8
|
||||
[Token(Token = "0x600939E")]
|
||||
[Address(RVA = "0xF21290", Offset = "0xF20090", VA = "0x180F21290", Slot = "13")]
|
||||
public bool Invoke(HTTPRequest originalRequest, HTTPResponse response, Uri redirectUri)
|
||||
{
|
||||
if (this.delegates != 0)
|
||||
{
|
||||
}
|
||||
uint num;
|
||||
if (num != (uint)0)
|
||||
{
|
||||
throw new ExecutionEngineException();
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600939F RID: 37791 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600939F")]
|
||||
[Address(RVA = "0xDF4DC0", Offset = "0xDF3BC0", VA = "0x180DF4DC0", Slot = "14")]
|
||||
public IAsyncResult BeginInvoke(HTTPRequest originalRequest, HTTPResponse response, Uri redirectUri, AsyncCallback callback, object @object)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x060093A0 RID: 37792 RVA: 0x001E51FC File Offset: 0x001E33FC
|
||||
[Token(Token = "0x60093A0")]
|
||||
[Address(RVA = "0x451890", Offset = "0x450690", VA = "0x180451890", Slot = "15")]
|
||||
public bool EndInvoke(IAsyncResult result)
|
||||
{
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,50 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP
|
||||
{
|
||||
// Token: 0x0200189D RID: 6301
|
||||
[Token(Token = "0x200189D")]
|
||||
public sealed class OnDownloadProgressDelegate : MulticastDelegate
|
||||
{
|
||||
// Token: 0x06009395 RID: 37781 RVA: 0x001E4FD4 File Offset: 0x001E31D4
|
||||
[Token(Token = "0x6009395")]
|
||||
[Address(RVA = "0x448ED0", Offset = "0x447CD0", VA = "0x180448ED0")]
|
||||
public OnDownloadProgressDelegate(object @object, IntPtr method)
|
||||
{
|
||||
this.method = method;
|
||||
this.m_target = @object;
|
||||
}
|
||||
|
||||
// Token: 0x06009396 RID: 37782 RVA: 0x001E4FF0 File Offset: 0x001E31F0
|
||||
[Token(Token = "0x6009396")]
|
||||
[Address(RVA = "0x2651A40", Offset = "0x2650840", VA = "0x182651A40", Slot = "13")]
|
||||
public void Invoke(HTTPRequest originalRequest, long downloaded, long downloadLength)
|
||||
{
|
||||
if (this.delegates != 0)
|
||||
{
|
||||
}
|
||||
uint num;
|
||||
if (num != (uint)0)
|
||||
{
|
||||
throw new ExecutionEngineException();
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x06009397 RID: 37783 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x6009397")]
|
||||
[Address(RVA = "0x26519A0", Offset = "0x26507A0", VA = "0x1826519A0", Slot = "14")]
|
||||
public IAsyncResult BeginInvoke(HTTPRequest originalRequest, long downloaded, long downloadLength, AsyncCallback callback, object @object)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x06009398 RID: 37784 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x6009398")]
|
||||
[Address(RVA = "0x448B70", Offset = "0x447970", VA = "0x180448B70", Slot = "15")]
|
||||
public void EndInvoke(IAsyncResult result)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,51 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP
|
||||
{
|
||||
// Token: 0x020018A0 RID: 6304
|
||||
[Token(Token = "0x20018A0")]
|
||||
public sealed class OnHeaderEnumerationDelegate : MulticastDelegate
|
||||
{
|
||||
// Token: 0x060093A1 RID: 37793 RVA: 0x001E5210 File Offset: 0x001E3410
|
||||
[Token(Token = "0x60093A1")]
|
||||
[Address(RVA = "0x448ED0", Offset = "0x447CD0", VA = "0x180448ED0")]
|
||||
public OnHeaderEnumerationDelegate(object @object, IntPtr method)
|
||||
{
|
||||
this.method = method;
|
||||
this.m_target = @object;
|
||||
}
|
||||
|
||||
// Token: 0x060093A2 RID: 37794 RVA: 0x001E522C File Offset: 0x001E342C
|
||||
[Token(Token = "0x60093A2")]
|
||||
[Address(RVA = "0x48FFD0", Offset = "0x48EDD0", VA = "0x18048FFD0", Slot = "13")]
|
||||
public void Invoke(string header, List<string> values)
|
||||
{
|
||||
if (this.delegates != 0)
|
||||
{
|
||||
}
|
||||
uint num;
|
||||
if (num != (uint)0)
|
||||
{
|
||||
throw new ExecutionEngineException();
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x060093A3 RID: 37795 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x60093A3")]
|
||||
[Address(RVA = "0x457420", Offset = "0x456220", VA = "0x180457420", Slot = "14")]
|
||||
public IAsyncResult BeginInvoke(string header, List<string> values, AsyncCallback callback, object @object)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x060093A4 RID: 37796 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x60093A4")]
|
||||
[Address(RVA = "0x448B70", Offset = "0x447970", VA = "0x180448B70", Slot = "15")]
|
||||
public void EndInvoke(IAsyncResult result)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,50 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP
|
||||
{
|
||||
// Token: 0x0200189C RID: 6300
|
||||
[Token(Token = "0x200189C")]
|
||||
public sealed class OnRequestFinishedDelegate : MulticastDelegate
|
||||
{
|
||||
// Token: 0x06009391 RID: 37777 RVA: 0x001E4EB8 File Offset: 0x001E30B8
|
||||
[Token(Token = "0x6009391")]
|
||||
[Address(RVA = "0x448ED0", Offset = "0x447CD0", VA = "0x180448ED0")]
|
||||
public OnRequestFinishedDelegate(object @object, IntPtr method)
|
||||
{
|
||||
this.method = method;
|
||||
this.m_target = @object;
|
||||
}
|
||||
|
||||
// Token: 0x06009392 RID: 37778 RVA: 0x001E4ED4 File Offset: 0x001E30D4
|
||||
[Token(Token = "0x6009392")]
|
||||
[Address(RVA = "0x48FFD0", Offset = "0x48EDD0", VA = "0x18048FFD0", Slot = "13")]
|
||||
public void Invoke(HTTPRequest originalRequest, HTTPResponse response)
|
||||
{
|
||||
if (this.delegates != 0)
|
||||
{
|
||||
}
|
||||
uint num;
|
||||
if (num != (uint)0)
|
||||
{
|
||||
throw new ExecutionEngineException();
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x06009393 RID: 37779 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x6009393")]
|
||||
[Address(RVA = "0x457420", Offset = "0x456220", VA = "0x180457420", Slot = "14")]
|
||||
public IAsyncResult BeginInvoke(HTTPRequest originalRequest, HTTPResponse response, AsyncCallback callback, object @object)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x06009394 RID: 37780 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x6009394")]
|
||||
[Address(RVA = "0x448B70", Offset = "0x447970", VA = "0x180448B70", Slot = "15")]
|
||||
public void EndInvoke(IAsyncResult result)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,50 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP
|
||||
{
|
||||
// Token: 0x0200189E RID: 6302
|
||||
[Token(Token = "0x200189E")]
|
||||
public sealed class OnUploadProgressDelegate : MulticastDelegate
|
||||
{
|
||||
// Token: 0x06009399 RID: 37785 RVA: 0x001E5058 File Offset: 0x001E3258
|
||||
[Token(Token = "0x6009399")]
|
||||
[Address(RVA = "0x448ED0", Offset = "0x447CD0", VA = "0x180448ED0")]
|
||||
public OnUploadProgressDelegate(object @object, IntPtr method)
|
||||
{
|
||||
this.method = method;
|
||||
this.m_target = @object;
|
||||
}
|
||||
|
||||
// Token: 0x0600939A RID: 37786 RVA: 0x001E5074 File Offset: 0x001E3274
|
||||
[Token(Token = "0x600939A")]
|
||||
[Address(RVA = "0x2651A40", Offset = "0x2650840", VA = "0x182651A40", Slot = "13")]
|
||||
public void Invoke(HTTPRequest originalRequest, long uploaded, long uploadLength)
|
||||
{
|
||||
if (this.delegates != 0)
|
||||
{
|
||||
}
|
||||
uint num;
|
||||
if (num != (uint)0)
|
||||
{
|
||||
throw new ExecutionEngineException();
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600939B RID: 37787 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600939B")]
|
||||
[Address(RVA = "0x2651D40", Offset = "0x2650B40", VA = "0x182651D40", Slot = "14")]
|
||||
public IAsyncResult BeginInvoke(HTTPRequest originalRequest, long uploaded, long uploadLength, AsyncCallback callback, object @object)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x0600939C RID: 37788 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600939C")]
|
||||
[Address(RVA = "0x448B70", Offset = "0x447970", VA = "0x180448B70", Slot = "15")]
|
||||
public void EndInvoke(IAsyncResult result)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,98 @@
|
||||
using System;
|
||||
using System.IO;
|
||||
using BestHTTP.Logger;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.PlatformSupport.FileSystem
|
||||
{
|
||||
// Token: 0x02001F78 RID: 8056
|
||||
[Token(Token = "0x2001F78")]
|
||||
public sealed class DefaultIOService : IIOService
|
||||
{
|
||||
// Token: 0x0600CBE7 RID: 52199 RVA: 0x002EB8AC File Offset: 0x002E9AAC
|
||||
[Token(Token = "0x600CBE7")]
|
||||
[Address(RVA = "0x264B9E0", Offset = "0x264A7E0", VA = "0x18264B9E0", Slot = "9")]
|
||||
public Stream CreateFileStream(string path, FileStreamModes mode)
|
||||
{
|
||||
if (HTTPManager.Logger == 0)
|
||||
{
|
||||
ILogger logger = HTTPManager.Logger;
|
||||
}
|
||||
FileStream fileStream = new FileStream(path, FileMode.Append);
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CBE8 RID: 52200 RVA: 0x002EB8F0 File Offset: 0x002E9AF0
|
||||
[Token(Token = "0x600CBE8")]
|
||||
[Address(RVA = "0x264BC00", Offset = "0x264AA00", VA = "0x18264BC00", Slot = "4")]
|
||||
public void DirectoryCreate(string path)
|
||||
{
|
||||
if (HTTPManager.Logger == 0)
|
||||
{
|
||||
ILogger logger = HTTPManager.Logger;
|
||||
string text = string.Format("DirectoryCreate path: '{0}'", path);
|
||||
}
|
||||
DirectoryInfo directoryInfo = Directory.CreateDirectory(path);
|
||||
}
|
||||
|
||||
// Token: 0x0600CBE9 RID: 52201 RVA: 0x002EB92C File Offset: 0x002E9B2C
|
||||
[Token(Token = "0x600CBE9")]
|
||||
[Address(RVA = "0x264BCF0", Offset = "0x264AAF0", VA = "0x18264BCF0", Slot = "5")]
|
||||
public bool DirectoryExists(string path)
|
||||
{
|
||||
bool flag = Directory.Exists(path);
|
||||
if (HTTPManager.Logger == 0)
|
||||
{
|
||||
ILogger logger = HTTPManager.Logger;
|
||||
}
|
||||
return flag;
|
||||
}
|
||||
|
||||
// Token: 0x0600CBEA RID: 52202 RVA: 0x002EB95C File Offset: 0x002E9B5C
|
||||
[Token(Token = "0x600CBEA")]
|
||||
[Address(RVA = "0x264C020", Offset = "0x264AE20", VA = "0x18264C020", Slot = "6")]
|
||||
public string[] GetFiles(string path)
|
||||
{
|
||||
string[] files = Directory.GetFiles(path);
|
||||
if (HTTPManager.Logger == 0)
|
||||
{
|
||||
ILogger logger = HTTPManager.Logger;
|
||||
int length = files.Length;
|
||||
}
|
||||
return files;
|
||||
}
|
||||
|
||||
// Token: 0x0600CBEB RID: 52203 RVA: 0x002EB994 File Offset: 0x002E9B94
|
||||
[Token(Token = "0x600CBEB")]
|
||||
[Address(RVA = "0x264BE10", Offset = "0x264AC10", VA = "0x18264BE10", Slot = "7")]
|
||||
public void FileDelete(string path)
|
||||
{
|
||||
if (HTTPManager.Logger == 0)
|
||||
{
|
||||
ILogger logger = HTTPManager.Logger;
|
||||
string text = string.Format("FileDelete path: '{0}'", path);
|
||||
}
|
||||
File.Delete(path);
|
||||
}
|
||||
|
||||
// Token: 0x0600CBEC RID: 52204 RVA: 0x002EB9CC File Offset: 0x002E9BCC
|
||||
[Token(Token = "0x600CBEC")]
|
||||
[Address(RVA = "0x264BF00", Offset = "0x264AD00", VA = "0x18264BF00", Slot = "8")]
|
||||
public bool FileExists(string path)
|
||||
{
|
||||
bool flag = File.Exists(path);
|
||||
if (HTTPManager.Logger == 0)
|
||||
{
|
||||
ILogger logger = HTTPManager.Logger;
|
||||
}
|
||||
return flag;
|
||||
}
|
||||
|
||||
// Token: 0x0600CBED RID: 52205 RVA: 0x002EB9FC File Offset: 0x002E9BFC
|
||||
[Token(Token = "0x600CBED")]
|
||||
[Address(RVA = "0x3F5100", Offset = "0x3F3F00", VA = "0x1803F5100")]
|
||||
public DefaultIOService()
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.PlatformSupport.FileSystem
|
||||
{
|
||||
// Token: 0x02001F79 RID: 8057
|
||||
[Token(Token = "0x2001F79")]
|
||||
public enum FileStreamModes
|
||||
{
|
||||
// Token: 0x0400820D RID: 33293
|
||||
[Token(Token = "0x400820D")]
|
||||
Create,
|
||||
// Token: 0x0400820E RID: 33294
|
||||
[Token(Token = "0x400820E")]
|
||||
Open,
|
||||
// Token: 0x0400820F RID: 33295
|
||||
[Token(Token = "0x400820F")]
|
||||
Append
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,41 @@
|
||||
using System;
|
||||
using System.IO;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.PlatformSupport.FileSystem
|
||||
{
|
||||
// Token: 0x02001F7A RID: 8058
|
||||
[Token(Token = "0x2001F7A")]
|
||||
public interface IIOService
|
||||
{
|
||||
// Token: 0x0600CBEE RID: 52206
|
||||
[Token(Token = "0x600CBEE")]
|
||||
[Address(Slot = "0")]
|
||||
void DirectoryCreate(string path);
|
||||
|
||||
// Token: 0x0600CBEF RID: 52207
|
||||
[Token(Token = "0x600CBEF")]
|
||||
[Address(Slot = "1")]
|
||||
bool DirectoryExists(string path);
|
||||
|
||||
// Token: 0x0600CBF0 RID: 52208
|
||||
[Token(Token = "0x600CBF0")]
|
||||
[Address(Slot = "2")]
|
||||
string[] GetFiles(string path);
|
||||
|
||||
// Token: 0x0600CBF1 RID: 52209
|
||||
[Token(Token = "0x600CBF1")]
|
||||
[Address(Slot = "3")]
|
||||
void FileDelete(string path);
|
||||
|
||||
// Token: 0x0600CBF2 RID: 52210
|
||||
[Token(Token = "0x600CBF2")]
|
||||
[Address(Slot = "4")]
|
||||
bool FileExists(string path);
|
||||
|
||||
// Token: 0x0600CBF3 RID: 52211
|
||||
[Token(Token = "0x600CBF3")]
|
||||
[Address(Slot = "5")]
|
||||
Stream CreateFileStream(string path, FileStreamModes mode);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,781 @@
|
||||
using System;
|
||||
using System.IO;
|
||||
using System.Net;
|
||||
using System.Net.Sockets;
|
||||
using System.Threading;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.PlatformSupport.TcpClient.General
|
||||
{
|
||||
// Token: 0x02001F74 RID: 8052
|
||||
[Token(Token = "0x2001F74")]
|
||||
public class TcpClient : IDisposable
|
||||
{
|
||||
// Token: 0x0600CBB7 RID: 52151 RVA: 0x002EADE0 File Offset: 0x002E8FE0
|
||||
[Token(Token = "0x600CBB7")]
|
||||
[Address(RVA = "0x26558B0", Offset = "0x26546B0", VA = "0x1826558B0")]
|
||||
private void Init(AddressFamily family)
|
||||
{
|
||||
Socket socket = this.client;
|
||||
this.active = false;
|
||||
if (socket != 0)
|
||||
{
|
||||
socket.Close();
|
||||
this.client = (ulong)0L;
|
||||
}
|
||||
Socket socket2;
|
||||
this.client = socket2;
|
||||
}
|
||||
|
||||
// Token: 0x0600CBB8 RID: 52152 RVA: 0x002EAE18 File Offset: 0x002E9018
|
||||
[Token(Token = "0x600CBB8")]
|
||||
[Address(RVA = "0x2655CE0", Offset = "0x2654AE0", VA = "0x182655CE0")]
|
||||
public TcpClient()
|
||||
{
|
||||
this.Init(AddressFamily.InterNetwork);
|
||||
TimeSpan timeSpan;
|
||||
this.ConnectTimeout = timeSpan;
|
||||
}
|
||||
|
||||
// Token: 0x0600CBB9 RID: 52153 RVA: 0x002EAE3C File Offset: 0x002E903C
|
||||
[Token(Token = "0x600CBB9")]
|
||||
[Address(RVA = "0x2655C20", Offset = "0x2654A20", VA = "0x182655C20")]
|
||||
public TcpClient(AddressFamily family)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CBB9)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.PlatformSupport.TcpClient.General.TcpClient::.ctor(System.Net.Sockets.AddressFamily)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_19:
|
||||
stloc:ArgumentException(var_2_28, newobj:ArgumentException(ArgumentException::.ctor, ldstr:string("Family must be InterNetwork or InterNetworkV6"), ldstr:string("family")))
|
||||
}
|
||||
|
||||
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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: 0x0600CBBA RID: 52154 RVA: 0x002EAE74 File Offset: 0x002E9074
|
||||
[Token(Token = "0x600CBBA")]
|
||||
[Address(RVA = "0x2655D60", Offset = "0x2654B60", VA = "0x182655D60")]
|
||||
public TcpClient(IPEndPoint localEP)
|
||||
{
|
||||
string text = localEP.ToString();
|
||||
TimeSpan timeSpan;
|
||||
this.ConnectTimeout = timeSpan;
|
||||
}
|
||||
|
||||
// Token: 0x0600CBBB RID: 52155 RVA: 0x002EAE9C File Offset: 0x002E909C
|
||||
[Token(Token = "0x600CBBB")]
|
||||
[Address(RVA = "0x2655E00", Offset = "0x2654C00", VA = "0x182655E00")]
|
||||
public TcpClient(string hostname, int port)
|
||||
{
|
||||
TimeSpan timeSpan;
|
||||
this.ConnectTimeout = timeSpan;
|
||||
this.Connect(hostname, port);
|
||||
}
|
||||
|
||||
// Token: 0x1700205B RID: 8283
|
||||
// (get) Token: 0x0600CBBC RID: 52156 RVA: 0x002EAEC0 File Offset: 0x002E90C0
|
||||
// (set) Token: 0x0600CBBD RID: 52157 RVA: 0x002EAED4 File Offset: 0x002E90D4
|
||||
[Token(Token = "0x1700205B")]
|
||||
protected bool Active
|
||||
{
|
||||
[Token(Token = "0x600CBBC")]
|
||||
[Address(RVA = "0x42C2C0", Offset = "0x42B0C0", VA = "0x18042C2C0")]
|
||||
get
|
||||
{
|
||||
return this.active;
|
||||
}
|
||||
[Token(Token = "0x600CBBD")]
|
||||
[Address(RVA = "0x43DE90", Offset = "0x43CC90", VA = "0x18043DE90")]
|
||||
set
|
||||
{
|
||||
this.active = value;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x1700205C RID: 8284
|
||||
// (get) Token: 0x0600CBBE RID: 52158 RVA: 0x002EAEE8 File Offset: 0x002E90E8
|
||||
// (set) Token: 0x0600CBBF RID: 52159 RVA: 0x002EAEFC File Offset: 0x002E90FC
|
||||
[Token(Token = "0x1700205C")]
|
||||
public Socket Client
|
||||
{
|
||||
[Token(Token = "0x600CBBE")]
|
||||
[Address(RVA = "0x3F6400", Offset = "0x3F5200", VA = "0x1803F6400")]
|
||||
get
|
||||
{
|
||||
return this.client;
|
||||
}
|
||||
[Token(Token = "0x600CBBF")]
|
||||
[Address(RVA = "0x2655BA0", Offset = "0x26549A0", VA = "0x182655BA0")]
|
||||
set
|
||||
{
|
||||
this.client = value;
|
||||
this.stream = (ulong)0L;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x1700205D RID: 8285
|
||||
// (get) Token: 0x0600CBC0 RID: 52160 RVA: 0x002EAF1C File Offset: 0x002E911C
|
||||
[Token(Token = "0x1700205D")]
|
||||
public int Available
|
||||
{
|
||||
[Token(Token = "0x600CBC0")]
|
||||
[Address(RVA = "0x2655E90", Offset = "0x2654C90", VA = "0x182655E90")]
|
||||
get
|
||||
{
|
||||
return this.client.Available;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x1700205E RID: 8286
|
||||
// (get) Token: 0x0600CBC1 RID: 52161 RVA: 0x002EAF3C File Offset: 0x002E913C
|
||||
[Token(Token = "0x1700205E")]
|
||||
public bool Connected
|
||||
{
|
||||
[Token(Token = "0x600CBC1")]
|
||||
[Address(RVA = "0x2655EB0", Offset = "0x2654CB0", VA = "0x182655EB0")]
|
||||
get
|
||||
{
|
||||
return this.client.is_connected;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600CBC2 RID: 52162 RVA: 0x002EAF5C File Offset: 0x002E915C
|
||||
[Token(Token = "0x600CBC2")]
|
||||
[Address(RVA = "0x2655940", Offset = "0x2654740", VA = "0x182655940")]
|
||||
public bool IsConnected()
|
||||
{
|
||||
Socket socket = this.client;
|
||||
int num = 0;
|
||||
if (socket.Poll(1, (SelectMode)num))
|
||||
{
|
||||
int available = this.client.Available;
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x1700205F RID: 8287
|
||||
// (get) Token: 0x0600CBC3 RID: 52163 RVA: 0x002EAF98 File Offset: 0x002E9198
|
||||
// (set) Token: 0x0600CBC4 RID: 52164 RVA: 0x002EAFB8 File Offset: 0x002E91B8
|
||||
[Token(Token = "0x1700205F")]
|
||||
public bool ExclusiveAddressUse
|
||||
{
|
||||
[Token(Token = "0x600CBC3")]
|
||||
[Address(RVA = "0x2655ED0", Offset = "0x2654CD0", VA = "0x182655ED0")]
|
||||
get
|
||||
{
|
||||
return this.client.ExclusiveAddressUse;
|
||||
}
|
||||
[Token(Token = "0x600CBC4")]
|
||||
[Address(RVA = "0x2656270", Offset = "0x2655070", VA = "0x182656270")]
|
||||
set
|
||||
{
|
||||
this.client.ExclusiveAddressUse = value;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600CBC5 RID: 52165 RVA: 0x002EAFD8 File Offset: 0x002E91D8
|
||||
[Token(Token = "0x600CBC5")]
|
||||
[Address(RVA = "0x2655BA0", Offset = "0x26549A0", VA = "0x182655BA0")]
|
||||
internal void SetTcpClient(Socket s)
|
||||
{
|
||||
this.client = s;
|
||||
this.stream = (ulong)0L;
|
||||
}
|
||||
|
||||
// Token: 0x17002060 RID: 8288
|
||||
// (get) Token: 0x0600CBC6 RID: 52166 RVA: 0x002EAFF8 File Offset: 0x002E91F8
|
||||
// (set) Token: 0x0600CBC7 RID: 52167 RVA: 0x002EB038 File Offset: 0x002E9238
|
||||
[Token(Token = "0x17002060")]
|
||||
public LingerOption LingerState
|
||||
{
|
||||
[Token(Token = "0x600CBC6")]
|
||||
[Address(RVA = "0x2655EF0", Offset = "0x2654CF0", VA = "0x182655EF0")]
|
||||
get
|
||||
{
|
||||
while (this.values == (TcpClient.Properties)1)
|
||||
{
|
||||
object socketOption = this.client.GetSocketOption((SocketOptionLevel)((uint)65535), (SocketOptionName)((uint)128));
|
||||
if (socketOption == 0)
|
||||
{
|
||||
}
|
||||
if (socketOption != 0)
|
||||
{
|
||||
break;
|
||||
}
|
||||
}
|
||||
return this.linger_state;
|
||||
}
|
||||
[Token(Token = "0x600CBC7")]
|
||||
[Address(RVA = "0x2656290", Offset = "0x2655090", VA = "0x182656290")]
|
||||
set
|
||||
{
|
||||
Socket socket = this.client;
|
||||
if (socket.is_connected)
|
||||
{
|
||||
socket.SetSocketOption((SocketOptionLevel)((uint)65535), (SocketOptionName)((uint)128), value);
|
||||
return;
|
||||
}
|
||||
this.linger_state = value;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17002061 RID: 8289
|
||||
// (get) Token: 0x0600CBC8 RID: 52168 RVA: 0x002EB078 File Offset: 0x002E9278
|
||||
// (set) Token: 0x0600CBC9 RID: 52169 RVA: 0x002EB0A4 File Offset: 0x002E92A4
|
||||
[Token(Token = "0x17002061")]
|
||||
public bool NoDelay
|
||||
{
|
||||
[Token(Token = "0x600CBC8")]
|
||||
[Address(RVA = "0x2655FA0", Offset = "0x2654DA0", VA = "0x182655FA0")]
|
||||
get
|
||||
{
|
||||
if (this.values == (TcpClient.Properties)2)
|
||||
{
|
||||
object socketOption = this.client.GetSocketOption(SocketOptionLevel.Tcp, SocketOptionName.Debug);
|
||||
}
|
||||
return this.no_delay;
|
||||
}
|
||||
[Token(Token = "0x600CBC9")]
|
||||
[Address(RVA = "0x26562E0", Offset = "0x26550E0", VA = "0x1826562E0")]
|
||||
set
|
||||
{
|
||||
if (this.client.is_connected)
|
||||
{
|
||||
return;
|
||||
}
|
||||
this.no_delay = value;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17002062 RID: 8290
|
||||
// (get) Token: 0x0600CBCA RID: 52170 RVA: 0x002EB0D0 File Offset: 0x002E92D0
|
||||
// (set) Token: 0x0600CBCB RID: 52171 RVA: 0x002EB108 File Offset: 0x002E9308
|
||||
[Token(Token = "0x17002062")]
|
||||
public int ReceiveBufferSize
|
||||
{
|
||||
[Token(Token = "0x600CBCA")]
|
||||
[Address(RVA = "0x2656030", Offset = "0x2654E30", VA = "0x182656030")]
|
||||
get
|
||||
{
|
||||
if (this.values == (TcpClient.Properties)4)
|
||||
{
|
||||
object socketOption = this.client.GetSocketOption((SocketOptionLevel)((uint)65535), (SocketOptionName)((uint)4098));
|
||||
}
|
||||
return this.recv_buffer_size;
|
||||
}
|
||||
[Token(Token = "0x600CBCB")]
|
||||
[Address(RVA = "0x2656330", Offset = "0x2655130", VA = "0x182656330")]
|
||||
set
|
||||
{
|
||||
Socket socket = this.client;
|
||||
if (socket.is_connected)
|
||||
{
|
||||
socket.SetSocketOption((SocketOptionLevel)((uint)65535), (SocketOptionName)((uint)4098), value);
|
||||
return;
|
||||
}
|
||||
this.recv_buffer_size = value;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17002063 RID: 8291
|
||||
// (get) Token: 0x0600CBCC RID: 52172 RVA: 0x002EB148 File Offset: 0x002E9348
|
||||
// (set) Token: 0x0600CBCD RID: 52173 RVA: 0x002EB180 File Offset: 0x002E9380
|
||||
[Token(Token = "0x17002063")]
|
||||
public int ReceiveTimeout
|
||||
{
|
||||
[Token(Token = "0x600CBCC")]
|
||||
[Address(RVA = "0x26560C0", Offset = "0x2654EC0", VA = "0x1826560C0")]
|
||||
get
|
||||
{
|
||||
if (this.values == (TcpClient.Properties)8)
|
||||
{
|
||||
object socketOption = this.client.GetSocketOption((SocketOptionLevel)((uint)65535), (SocketOptionName)((uint)4102));
|
||||
}
|
||||
return this.recv_timeout;
|
||||
}
|
||||
[Token(Token = "0x600CBCD")]
|
||||
[Address(RVA = "0x2656380", Offset = "0x2655180", VA = "0x182656380")]
|
||||
set
|
||||
{
|
||||
Socket socket = this.client;
|
||||
if (socket.is_connected)
|
||||
{
|
||||
socket.SetSocketOption((SocketOptionLevel)((uint)65535), (SocketOptionName)((uint)4102), value);
|
||||
return;
|
||||
}
|
||||
this.recv_timeout = value;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17002064 RID: 8292
|
||||
// (get) Token: 0x0600CBCE RID: 52174 RVA: 0x002EB1C0 File Offset: 0x002E93C0
|
||||
// (set) Token: 0x0600CBCF RID: 52175 RVA: 0x002EB1F8 File Offset: 0x002E93F8
|
||||
[Token(Token = "0x17002064")]
|
||||
public int SendBufferSize
|
||||
{
|
||||
[Token(Token = "0x600CBCE")]
|
||||
[Address(RVA = "0x2656150", Offset = "0x2654F50", VA = "0x182656150")]
|
||||
get
|
||||
{
|
||||
if (this.values == (TcpClient.Properties)16)
|
||||
{
|
||||
object socketOption = this.client.GetSocketOption((SocketOptionLevel)((uint)65535), (SocketOptionName)((uint)4097));
|
||||
}
|
||||
return this.send_buffer_size;
|
||||
}
|
||||
[Token(Token = "0x600CBCF")]
|
||||
[Address(RVA = "0x26563D0", Offset = "0x26551D0", VA = "0x1826563D0")]
|
||||
set
|
||||
{
|
||||
Socket socket = this.client;
|
||||
if (socket.is_connected)
|
||||
{
|
||||
socket.SetSocketOption((SocketOptionLevel)((uint)65535), (SocketOptionName)((uint)4097), value);
|
||||
return;
|
||||
}
|
||||
this.send_buffer_size = value;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17002065 RID: 8293
|
||||
// (get) Token: 0x0600CBD0 RID: 52176 RVA: 0x002EB238 File Offset: 0x002E9438
|
||||
// (set) Token: 0x0600CBD1 RID: 52177 RVA: 0x002EB270 File Offset: 0x002E9470
|
||||
[Token(Token = "0x17002065")]
|
||||
public int SendTimeout
|
||||
{
|
||||
[Token(Token = "0x600CBD0")]
|
||||
[Address(RVA = "0x26561E0", Offset = "0x2654FE0", VA = "0x1826561E0")]
|
||||
get
|
||||
{
|
||||
if (this.values == (TcpClient.Properties)32)
|
||||
{
|
||||
object socketOption = this.client.GetSocketOption((SocketOptionLevel)((uint)65535), (SocketOptionName)((uint)4101));
|
||||
}
|
||||
return this.send_timeout;
|
||||
}
|
||||
[Token(Token = "0x600CBD1")]
|
||||
[Address(RVA = "0x2656420", Offset = "0x2655220", VA = "0x182656420")]
|
||||
set
|
||||
{
|
||||
Socket socket = this.client;
|
||||
if (socket.is_connected)
|
||||
{
|
||||
socket.SetSocketOption((SocketOptionLevel)((uint)65535), (SocketOptionName)((uint)4101), value);
|
||||
return;
|
||||
}
|
||||
this.send_timeout = value;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17002066 RID: 8294
|
||||
// (get) Token: 0x0600CBD2 RID: 52178 RVA: 0x002EB2B0 File Offset: 0x002E94B0
|
||||
// (set) Token: 0x0600CBD3 RID: 52179 RVA: 0x002EB2C4 File Offset: 0x002E94C4
|
||||
[Token(Token = "0x17002066")]
|
||||
public TimeSpan ConnectTimeout
|
||||
{
|
||||
[Token(Token = "0x600CBD2")]
|
||||
[Address(RVA = "0x415290", Offset = "0x414090", VA = "0x180415290")]
|
||||
get;
|
||||
[Token(Token = "0x600CBD3")]
|
||||
[Address(RVA = "0x46AB00", Offset = "0x469900", VA = "0x18046AB00")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x0600CBD4 RID: 52180 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600CBD4")]
|
||||
[Address(RVA = "0x2654E00", Offset = "0x2653C00", VA = "0x182654E00")]
|
||||
public void Close()
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x0600CBD5 RID: 52181 RVA: 0x002EB2D8 File Offset: 0x002E94D8
|
||||
[Token(Token = "0x600CBD5")]
|
||||
[Address(RVA = "0x2654E40", Offset = "0x2653C40", VA = "0x182654E40")]
|
||||
public void Connect(IPEndPoint remoteEP)
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
TimeSpan timeSpan = this.<ConnectTimeout>k__BackingField;
|
||||
TimeSpan zero = TimeSpan.Zero;
|
||||
if (!(timeSpan > zero))
|
||||
{
|
||||
this.client.Connect(remoteEP);
|
||||
this.active = true;
|
||||
}
|
||||
int num2;
|
||||
ManualResetEvent manualResetEvent = new ManualResetEvent(num2 != 0);
|
||||
num2 = 0;
|
||||
ManualResetEvent mre = manualResetEvent;
|
||||
Socket socket = this.client;
|
||||
AsyncCallback asyncCallback = delegate(IAsyncResult res)
|
||||
{
|
||||
bool flag2 = mre.Set();
|
||||
};
|
||||
int num3 = 0;
|
||||
IAsyncResult asyncResult = socket.BeginConnect(remoteEP, asyncCallback, num3);
|
||||
ManualResetEvent mre2 = mre;
|
||||
TimeSpan timeSpan2 = this.<ConnectTimeout>k__BackingField;
|
||||
bool flag = mre2.WaitOne(timeSpan2);
|
||||
this.active = flag;
|
||||
if (!flag)
|
||||
{
|
||||
goto IL_B6;
|
||||
}
|
||||
this.client.EndConnect(asyncResult);
|
||||
this.CheckDisposed();
|
||||
}
|
||||
while (num != 0);
|
||||
return;
|
||||
IL_B6:
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CBD6 RID: 52182 RVA: 0x002EB3C4 File Offset: 0x002E95C4
|
||||
[Token(Token = "0x600CBD6")]
|
||||
[Address(RVA = "0x2655080", Offset = "0x2653E80", VA = "0x182655080")]
|
||||
public void Connect(IPAddress address, int port)
|
||||
{
|
||||
IPEndPoint ipendPoint = new IPEndPoint(address, port);
|
||||
this.Connect(ipendPoint);
|
||||
}
|
||||
|
||||
// Token: 0x0600CBD7 RID: 52183 RVA: 0x002EB3E0 File Offset: 0x002E95E0
|
||||
[Token(Token = "0x600CBD7")]
|
||||
[Address(RVA = "0x26559E0", Offset = "0x26547E0", VA = "0x1826559E0")]
|
||||
private void SetOptions()
|
||||
{
|
||||
TcpClient.Properties properties = this.values;
|
||||
int num = 0;
|
||||
this.values = (TcpClient.Properties)num;
|
||||
if (properties != (TcpClient.Properties)1)
|
||||
{
|
||||
Socket socket = this.client;
|
||||
if ((socket.is_connected ? 1 : 0) != num)
|
||||
{
|
||||
LingerOption lingerOption = this.linger_state;
|
||||
socket.SetSocketOption((SocketOptionLevel)((uint)65535), (SocketOptionName)((uint)128), lingerOption);
|
||||
}
|
||||
this.values = (TcpClient.Properties)((ulong)1L);
|
||||
}
|
||||
if (properties != (TcpClient.Properties)2 && (this.client.is_connected ? 1 : 0) != num)
|
||||
{
|
||||
bool flag = (this.no_delay ? 1 : 0) != num;
|
||||
}
|
||||
if (properties != (TcpClient.Properties)4)
|
||||
{
|
||||
Socket socket2 = this.client;
|
||||
if ((socket2.is_connected ? 1 : 0) != num)
|
||||
{
|
||||
int num2 = this.recv_buffer_size;
|
||||
socket2.SetSocketOption((SocketOptionLevel)((uint)65535), (SocketOptionName)((uint)4098), num2);
|
||||
}
|
||||
}
|
||||
if (properties != (TcpClient.Properties)8)
|
||||
{
|
||||
Socket socket3 = this.client;
|
||||
if ((socket3.is_connected ? 1 : 0) != num)
|
||||
{
|
||||
int num3 = this.recv_timeout;
|
||||
socket3.SetSocketOption((SocketOptionLevel)((uint)65535), (SocketOptionName)((uint)4102), num3);
|
||||
}
|
||||
}
|
||||
if (properties != (TcpClient.Properties)16)
|
||||
{
|
||||
Socket socket4 = this.client;
|
||||
if ((socket4.is_connected ? 1 : 0) != num)
|
||||
{
|
||||
int num4 = this.send_buffer_size;
|
||||
socket4.SetSocketOption((SocketOptionLevel)((uint)65535), (SocketOptionName)((uint)4097), num4);
|
||||
}
|
||||
}
|
||||
if (properties != (TcpClient.Properties)32)
|
||||
{
|
||||
Socket socket5 = this.client;
|
||||
int num5 = this.send_timeout;
|
||||
if ((socket5.is_connected ? 1 : 0) == num)
|
||||
{
|
||||
return;
|
||||
}
|
||||
socket5.SetSocketOption((SocketOptionLevel)((uint)65535), (SocketOptionName)((uint)4101), num5);
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600CBD8 RID: 52184 RVA: 0x002EB530 File Offset: 0x002E9730
|
||||
[Token(Token = "0x600CBD8")]
|
||||
[Address(RVA = "0x2655100", Offset = "0x2653F00", VA = "0x182655100")]
|
||||
public void Connect(string hostname, int port)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CBD8)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.PlatformSupport.TcpClient.General.TcpClient::Connect(System.String,System.Int32)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_A5:
|
||||
stloc:TimeoutException(var_14_AF, newobj:TimeoutException(TimeoutException::.ctor, ldstr:string("DNS resolve timed out!")))
|
||||
}
|
||||
|
||||
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: 0x0600CBD9 RID: 52185 RVA: 0x002EB5F0 File Offset: 0x002E97F0
|
||||
[Token(Token = "0x600CBD9")]
|
||||
[Address(RVA = "0x26553A0", Offset = "0x26541A0", VA = "0x1826553A0")]
|
||||
public void Connect(IPAddress[] ipAddresses, int port)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CBD9)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.PlatformSupport.TcpClient.General.TcpClient::Connect(System.Net.IPAddress[],System.Int32)
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_D8:
|
||||
stloc:ArgumentNullException(var_15_E2, newobj:ArgumentNullException(ArgumentNullException::.ctor, ldstr:string("ipAddresses")))
|
||||
}
|
||||
|
||||
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: 0x0600CBDA RID: 52186 RVA: 0x002EB6E0 File Offset: 0x002E98E0
|
||||
[Token(Token = "0x600CBDA")]
|
||||
[Address(RVA = "0x2655740", Offset = "0x2654540", VA = "0x182655740")]
|
||||
public void EndConnect(IAsyncResult asyncResult)
|
||||
{
|
||||
this.client.EndConnect(asyncResult);
|
||||
}
|
||||
|
||||
// Token: 0x0600CBDB RID: 52187 RVA: 0x002EB700 File Offset: 0x002E9900
|
||||
[Token(Token = "0x600CBDB")]
|
||||
[Address(RVA = "0x2654D10", Offset = "0x2653B10", VA = "0x182654D10")]
|
||||
public IAsyncResult BeginConnect(IPAddress address, int port, AsyncCallback requestCallback, object state)
|
||||
{
|
||||
Socket socket = this.client;
|
||||
IAsyncResult asyncResult;
|
||||
return asyncResult;
|
||||
}
|
||||
|
||||
// Token: 0x0600CBDC RID: 52188 RVA: 0x002EB71C File Offset: 0x002E991C
|
||||
[Token(Token = "0x600CBDC")]
|
||||
[Address(RVA = "0x2654CE0", Offset = "0x2653AE0", VA = "0x182654CE0")]
|
||||
public IAsyncResult BeginConnect(IPAddress[] addresses, int port, AsyncCallback requestCallback, object state)
|
||||
{
|
||||
Socket socket = this.client;
|
||||
IAsyncResult asyncResult;
|
||||
return asyncResult;
|
||||
}
|
||||
|
||||
// Token: 0x0600CBDD RID: 52189 RVA: 0x002EB738 File Offset: 0x002E9938
|
||||
[Token(Token = "0x600CBDD")]
|
||||
[Address(RVA = "0x2654D40", Offset = "0x2653B40", VA = "0x182654D40")]
|
||||
public IAsyncResult BeginConnect(string host, int port, AsyncCallback requestCallback, object state)
|
||||
{
|
||||
Socket socket = this.client;
|
||||
IAsyncResult asyncResult;
|
||||
return asyncResult;
|
||||
}
|
||||
|
||||
// Token: 0x0600CBDE RID: 52190 RVA: 0x002EB754 File Offset: 0x002E9954
|
||||
[Token(Token = "0x600CBDE")]
|
||||
[Address(RVA = "0x2655BB0", Offset = "0x26549B0", VA = "0x182655BB0", Slot = "4")]
|
||||
void IDisposable.Dispose()
|
||||
{
|
||||
this.System.IDisposable.Dispose();
|
||||
GC.SuppressFinalize(this);
|
||||
}
|
||||
|
||||
// Token: 0x0600CBDF RID: 52191 RVA: 0x002EB770 File Offset: 0x002E9970
|
||||
[Token(Token = "0x600CBDF")]
|
||||
[Address(RVA = "0x26556E0", Offset = "0x26544E0", VA = "0x1826556E0", Slot = "5")]
|
||||
protected virtual void Dispose(bool disposing)
|
||||
{
|
||||
if (!this.disposed)
|
||||
{
|
||||
this.disposed = true;
|
||||
if (disposing)
|
||||
{
|
||||
NetworkStream networkStream = this.stream;
|
||||
this.stream = (ulong)0L;
|
||||
if (networkStream == 0)
|
||||
{
|
||||
Socket socket = this.client;
|
||||
if (socket != 0)
|
||||
{
|
||||
socket.Close();
|
||||
this.client = (ulong)0L;
|
||||
return;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
int writeTimeout = networkStream.WriteTimeout;
|
||||
this.active = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600CBE0 RID: 52192 RVA: 0x002EB7D0 File Offset: 0x002E99D0
|
||||
[Token(Token = "0x600CBE0")]
|
||||
[Address(RVA = "0x2655760", Offset = "0x2654560", VA = "0x182655760", Slot = "1")]
|
||||
protected override void Finalize()
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
this.System.IDisposable.Dispose();
|
||||
base..ctor();
|
||||
}
|
||||
while (num != 0);
|
||||
}
|
||||
|
||||
// Token: 0x0600CBE1 RID: 52193 RVA: 0x002EB7F0 File Offset: 0x002E99F0
|
||||
[Token(Token = "0x600CBE1")]
|
||||
[Address(RVA = "0x26557E0", Offset = "0x26545E0", VA = "0x1826557E0")]
|
||||
public Stream GetStream()
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CBE1)
|
||||
|
||||
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.IO.Stream BestHTTP.PlatformSupport.TcpClient.General.TcpClient::GetStream()
|
||||
|
||||
---> System.Exception: Basic block has to end with unconditional control flow.
|
||||
{
|
||||
IL_1F:
|
||||
call:void(TcpClient::CheckDisposed, ldloc:TcpClient(this))
|
||||
brtrue(IL_00, cne:bool(ldloc:int32(var_0_01), ldc.i4:int32(0)))
|
||||
}
|
||||
|
||||
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
||||
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
||||
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: 0x0600CBE2 RID: 52194 RVA: 0x002EB828 File Offset: 0x002E9A28
|
||||
[Token(Token = "0x600CBE2")]
|
||||
[Address(RVA = "0x2654D70", Offset = "0x2653B70", VA = "0x182654D70")]
|
||||
private void CheckDisposed()
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x040081F7 RID: 33271
|
||||
[FieldOffset(Offset = "0x10")]
|
||||
[Token(Token = "0x40081F7")]
|
||||
private NetworkStream stream;
|
||||
|
||||
// Token: 0x040081F8 RID: 33272
|
||||
[FieldOffset(Offset = "0x18")]
|
||||
[Token(Token = "0x40081F8")]
|
||||
private bool active;
|
||||
|
||||
// Token: 0x040081F9 RID: 33273
|
||||
[FieldOffset(Offset = "0x20")]
|
||||
[Token(Token = "0x40081F9")]
|
||||
private Socket client;
|
||||
|
||||
// Token: 0x040081FA RID: 33274
|
||||
[FieldOffset(Offset = "0x28")]
|
||||
[Token(Token = "0x40081FA")]
|
||||
private bool disposed;
|
||||
|
||||
// Token: 0x040081FB RID: 33275
|
||||
[FieldOffset(Offset = "0x2C")]
|
||||
[Token(Token = "0x40081FB")]
|
||||
private TcpClient.Properties values;
|
||||
|
||||
// Token: 0x040081FC RID: 33276
|
||||
[FieldOffset(Offset = "0x30")]
|
||||
[Token(Token = "0x40081FC")]
|
||||
private int recv_timeout;
|
||||
|
||||
// Token: 0x040081FD RID: 33277
|
||||
[FieldOffset(Offset = "0x34")]
|
||||
[Token(Token = "0x40081FD")]
|
||||
private int send_timeout;
|
||||
|
||||
// Token: 0x040081FE RID: 33278
|
||||
[FieldOffset(Offset = "0x38")]
|
||||
[Token(Token = "0x40081FE")]
|
||||
private int recv_buffer_size;
|
||||
|
||||
// Token: 0x040081FF RID: 33279
|
||||
[FieldOffset(Offset = "0x3C")]
|
||||
[Token(Token = "0x40081FF")]
|
||||
private int send_buffer_size;
|
||||
|
||||
// Token: 0x04008200 RID: 33280
|
||||
[FieldOffset(Offset = "0x40")]
|
||||
[Token(Token = "0x4008200")]
|
||||
private LingerOption linger_state;
|
||||
|
||||
// Token: 0x04008201 RID: 33281
|
||||
[FieldOffset(Offset = "0x48")]
|
||||
[Token(Token = "0x4008201")]
|
||||
private bool no_delay;
|
||||
|
||||
// Token: 0x02001F75 RID: 8053
|
||||
[Token(Token = "0x2001F75")]
|
||||
private enum Properties : uint
|
||||
{
|
||||
// Token: 0x04008204 RID: 33284
|
||||
[Token(Token = "0x4008204")]
|
||||
LingerState = 1U,
|
||||
// Token: 0x04008205 RID: 33285
|
||||
[Token(Token = "0x4008205")]
|
||||
NoDelay,
|
||||
// Token: 0x04008206 RID: 33286
|
||||
[Token(Token = "0x4008206")]
|
||||
ReceiveBufferSize = 4U,
|
||||
// Token: 0x04008207 RID: 33287
|
||||
[Token(Token = "0x4008207")]
|
||||
ReceiveTimeout = 8U,
|
||||
// Token: 0x04008208 RID: 33288
|
||||
[Token(Token = "0x4008208")]
|
||||
SendBufferSize = 16U,
|
||||
// Token: 0x04008209 RID: 33289
|
||||
[Token(Token = "0x4008209")]
|
||||
SendTimeout = 32U
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,59 @@
|
||||
using System;
|
||||
using System.IO;
|
||||
using BestHTTP.Authentication;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP
|
||||
{
|
||||
// Token: 0x02001898 RID: 6296
|
||||
[Token(Token = "0x2001898")]
|
||||
public abstract class Proxy
|
||||
{
|
||||
// Token: 0x17001756 RID: 5974
|
||||
// (get) Token: 0x06009371 RID: 37745 RVA: 0x001E4550 File Offset: 0x001E2750
|
||||
// (set) Token: 0x06009372 RID: 37746 RVA: 0x001E4564 File Offset: 0x001E2764
|
||||
[Token(Token = "0x17001756")]
|
||||
public Uri Address
|
||||
{
|
||||
[Token(Token = "0x6009371")]
|
||||
[Address(RVA = "0x3F6E20", Offset = "0x3F5C20", VA = "0x1803F6E20")]
|
||||
get;
|
||||
[Token(Token = "0x6009372")]
|
||||
[Address(RVA = "0x3F7200", Offset = "0x3F6000", VA = "0x1803F7200")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001757 RID: 5975
|
||||
// (get) Token: 0x06009373 RID: 37747 RVA: 0x001E4578 File Offset: 0x001E2778
|
||||
// (set) Token: 0x06009374 RID: 37748 RVA: 0x001E458C File Offset: 0x001E278C
|
||||
[Token(Token = "0x17001757")]
|
||||
public Credentials Credentials
|
||||
{
|
||||
[Token(Token = "0x6009373")]
|
||||
[Address(RVA = "0x3F5F40", Offset = "0x3F4D40", VA = "0x1803F5F40")]
|
||||
get;
|
||||
[Token(Token = "0x6009374")]
|
||||
[Address(RVA = "0x3F7210", Offset = "0x3F6010", VA = "0x1803F7210")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x06009375 RID: 37749 RVA: 0x001E45A0 File Offset: 0x001E27A0
|
||||
[Token(Token = "0x6009375")]
|
||||
[Address(RVA = "0x4089A0", Offset = "0x4077A0", VA = "0x1804089A0")]
|
||||
internal Proxy(Uri address, Credentials credentials)
|
||||
{
|
||||
this.Address = address;
|
||||
this.Credentials = credentials;
|
||||
}
|
||||
|
||||
// Token: 0x06009376 RID: 37750
|
||||
[Token(Token = "0x6009376")]
|
||||
[Address(Slot = "4")]
|
||||
internal abstract void Connect(Stream stream, HTTPRequest request);
|
||||
|
||||
// Token: 0x06009377 RID: 37751
|
||||
[Token(Token = "0x6009377")]
|
||||
[Address(Slot = "5")]
|
||||
internal abstract string GetRequestPath(Uri uri);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP
|
||||
{
|
||||
// Token: 0x0200188F RID: 6287
|
||||
[Token(Token = "0x200188F")]
|
||||
internal enum RetryCauses
|
||||
{
|
||||
// Token: 0x0400647D RID: 25725
|
||||
[Token(Token = "0x400647D")]
|
||||
None,
|
||||
// Token: 0x0400647E RID: 25726
|
||||
[Token(Token = "0x400647E")]
|
||||
Reconnect,
|
||||
// Token: 0x0400647F RID: 25727
|
||||
[Token(Token = "0x400647F")]
|
||||
Authenticate,
|
||||
// Token: 0x04006480 RID: 25728
|
||||
[Token(Token = "0x4006480")]
|
||||
ProxyAuthenticate
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP
|
||||
{
|
||||
// Token: 0x020018AB RID: 6315
|
||||
[Token(Token = "0x20018AB")]
|
||||
internal enum SOCKSAddressTypes
|
||||
{
|
||||
// Token: 0x04006549 RID: 25929
|
||||
[Token(Token = "0x4006549")]
|
||||
IPV4,
|
||||
// Token: 0x0400654A RID: 25930
|
||||
[Token(Token = "0x400654A")]
|
||||
DomainName = 3,
|
||||
// Token: 0x0400654B RID: 25931
|
||||
[Token(Token = "0x400654B")]
|
||||
IPv6
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP
|
||||
{
|
||||
// Token: 0x020018A9 RID: 6313
|
||||
[Token(Token = "0x20018A9")]
|
||||
internal enum SOCKSMethods : byte
|
||||
{
|
||||
// Token: 0x0400653A RID: 25914
|
||||
[Token(Token = "0x400653A")]
|
||||
NoAuthenticationRequired,
|
||||
// Token: 0x0400653B RID: 25915
|
||||
[Token(Token = "0x400653B")]
|
||||
GSSAPI,
|
||||
// Token: 0x0400653C RID: 25916
|
||||
[Token(Token = "0x400653C")]
|
||||
UsernameAndPassword,
|
||||
// Token: 0x0400653D RID: 25917
|
||||
[Token(Token = "0x400653D")]
|
||||
NoAcceptableMethods = 255
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,171 @@
|
||||
using System;
|
||||
using System.IO;
|
||||
using System.Net;
|
||||
using System.Text;
|
||||
using BestHTTP.Authentication;
|
||||
using BestHTTP.Extensions;
|
||||
using BestHTTP.Logger;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP
|
||||
{
|
||||
// Token: 0x020018AC RID: 6316
|
||||
[Token(Token = "0x20018AC")]
|
||||
public sealed class SOCKSProxy : Proxy
|
||||
{
|
||||
// Token: 0x06009497 RID: 38039 RVA: 0x001E8490 File Offset: 0x001E6690
|
||||
[Token(Token = "0x6009497")]
|
||||
[Address(RVA = "0x4089A0", Offset = "0x4077A0", VA = "0x1804089A0")]
|
||||
public SOCKSProxy(Uri address, Credentials credentials)
|
||||
{
|
||||
this.<Address>k__BackingField = address;
|
||||
this.<Credentials>k__BackingField = credentials;
|
||||
}
|
||||
|
||||
// Token: 0x06009498 RID: 38040 RVA: 0x001E84B4 File Offset: 0x001E66B4
|
||||
[Token(Token = "0x6009498")]
|
||||
[Address(RVA = "0x2654AF0", Offset = "0x26538F0", VA = "0x182654AF0", Slot = "5")]
|
||||
internal override string GetRequestPath(Uri uri)
|
||||
{
|
||||
return uri.GetRequestPathAndQueryURL();
|
||||
}
|
||||
|
||||
// Token: 0x06009499 RID: 38041 RVA: 0x001E84C8 File Offset: 0x001E66C8
|
||||
[Token(Token = "0x6009499")]
|
||||
[Address(RVA = "0x26539D0", Offset = "0x26527D0", VA = "0x1826539D0", Slot = "4")]
|
||||
internal override void Connect(Stream stream, HTTPRequest request)
|
||||
{
|
||||
byte[] array;
|
||||
for (;;)
|
||||
{
|
||||
array = new byte[1024];
|
||||
array[0] = (byte)((ulong)5L);
|
||||
if (HTTPManager.Logger == 0)
|
||||
{
|
||||
int num = 0;
|
||||
ILogger logger = HTTPManager.Logger;
|
||||
string text = num.ToString();
|
||||
string text3;
|
||||
string text2 = string.Format("Sending method negotiation - count: {0} buffer: {1} ", text, text3);
|
||||
}
|
||||
int num2 = stream.ReadByte();
|
||||
if (HTTPManager.Logger == 0)
|
||||
{
|
||||
int num3 = 0;
|
||||
ILogger logger2 = HTTPManager.Logger;
|
||||
string text4 = num3.ToString();
|
||||
string text6;
|
||||
string text5 = string.Format("Negotiation response - count: {0} buffer: {1} ", text4, text6);
|
||||
}
|
||||
int length = array.Length;
|
||||
byte b = array[0];
|
||||
byte b2 = array[0];
|
||||
ILogger logger3 = HTTPManager.Logger;
|
||||
if (typeof(ILogger).TypeHandle == 0)
|
||||
{
|
||||
goto IL_186;
|
||||
}
|
||||
if (typeof(ILogger).TypeHandle != 0 && (typeof(ILogger).TypeHandle == (ulong)1L || typeof(ILogger).TypeHandle != (ulong)255L))
|
||||
{
|
||||
Credentials <Credentials>k__BackingField = this.<Credentials>k__BackingField;
|
||||
string <UserName>k__BackingField = <Credentials>k__BackingField.<UserName>k__BackingField;
|
||||
string <Password>k__BackingField = <Credentials>k__BackingField.<Password>k__BackingField;
|
||||
ILogger logger4 = HTTPManager.Logger;
|
||||
array[0] = (byte)((ulong)1L);
|
||||
Credentials <Credentials>k__BackingField2 = this.<Credentials>k__BackingField;
|
||||
int num4 = 0;
|
||||
Credentials <Credentials>k__BackingField3 = this.<Credentials>k__BackingField;
|
||||
if (HTTPManager.Logger == 0)
|
||||
{
|
||||
int num5 = 0;
|
||||
ILogger logger5 = HTTPManager.Logger;
|
||||
string text7 = num5.ToString();
|
||||
string text9;
|
||||
string text8 = string.Format("Sending username and password sub-negotiation - count: {0} buffer: {1} ", text7, text9);
|
||||
}
|
||||
int num6 = stream.ReadByte();
|
||||
if (HTTPManager.Logger == 0)
|
||||
{
|
||||
int num7 = 0;
|
||||
ILogger logger6 = HTTPManager.Logger;
|
||||
string text10 = num7.ToString();
|
||||
string text12;
|
||||
string text11 = string.Format("Username and password sub-negotiation response - count: {0} buffer: {1} ", text10, text12);
|
||||
}
|
||||
if ("{il2cpp array field local5->}" == num4)
|
||||
{
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
ILogger logger7 = HTTPManager.Logger;
|
||||
IL_186:
|
||||
array[0] = (byte)((ulong)5L);
|
||||
Uri currentUri = request.CurrentUri;
|
||||
if (!currentUri.IsHostIsAnIPAddress())
|
||||
{
|
||||
currentUri.m_Syntax = (ulong)3L;
|
||||
string host = request.CurrentUri.Host;
|
||||
}
|
||||
string host2 = request.CurrentUri.Host;
|
||||
bool flag = Extensions.IsIpV4AddressValid(host2);
|
||||
int length2 = IPAddress.Parse(request.CurrentUri.Host).GetAddressBytes().Length;
|
||||
int port = request.CurrentUri.Port;
|
||||
int port2 = request.CurrentUri.Port;
|
||||
if (HTTPManager.Logger == 0)
|
||||
{
|
||||
int num8 = 0;
|
||||
ILogger logger8 = HTTPManager.Logger;
|
||||
string text13 = num8.ToString();
|
||||
string text15;
|
||||
string text14 = string.Format("Sending connect request - count: {0} buffer: {1} ", text13, text15);
|
||||
}
|
||||
int num9 = stream.ReadByte();
|
||||
if (HTTPManager.Logger == 0)
|
||||
{
|
||||
int num10 = 0;
|
||||
ILogger logger9 = HTTPManager.Logger;
|
||||
string text16 = num10.ToString();
|
||||
string text18;
|
||||
string text17 = string.Format("Connect response - count: {0} buffer: {1} ", text16, text18);
|
||||
}
|
||||
int length3 = array.Length;
|
||||
byte b3 = array[0];
|
||||
ILogger logger10 = HTTPManager.Logger;
|
||||
}
|
||||
|
||||
// Token: 0x0600949A RID: 38042 RVA: 0x001E8768 File Offset: 0x001E6968
|
||||
[Token(Token = "0x600949A")]
|
||||
[Address(RVA = "0x2654BA0", Offset = "0x26539A0", VA = "0x182654BA0")]
|
||||
private void WriteString(byte[] buffer, ref int count, string str)
|
||||
{
|
||||
Encoding utf = Encoding.UTF8;
|
||||
count.m_value = utf;
|
||||
}
|
||||
|
||||
// Token: 0x0600949B RID: 38043 RVA: 0x001E878C File Offset: 0x001E698C
|
||||
[Token(Token = "0x600949B")]
|
||||
[Address(RVA = "0x2654B50", Offset = "0x2653950", VA = "0x182654B50")]
|
||||
private void WriteBytes(byte[] buffer, ref int count, byte[] bytes)
|
||||
{
|
||||
int length = bytes.Length;
|
||||
int length2 = bytes.Length;
|
||||
}
|
||||
|
||||
// Token: 0x0600949C RID: 38044 RVA: 0x001E87B0 File Offset: 0x001E69B0
|
||||
[Token(Token = "0x600949C")]
|
||||
[Address(RVA = "0x26538E0", Offset = "0x26526E0", VA = "0x1826538E0")]
|
||||
private string BufferToHexStr(byte[] buffer, int count)
|
||||
{
|
||||
int num = 0;
|
||||
if (count > 0)
|
||||
{
|
||||
StringBuilder stringBuilder2;
|
||||
string text;
|
||||
StringBuilder stringBuilder = stringBuilder2.AppendFormat("0x{0} ", text);
|
||||
num++;
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,38 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP
|
||||
{
|
||||
// Token: 0x020018AA RID: 6314
|
||||
[Token(Token = "0x20018AA")]
|
||||
internal enum SOCKSReplies : byte
|
||||
{
|
||||
// Token: 0x0400653F RID: 25919
|
||||
[Token(Token = "0x400653F")]
|
||||
Succeeded,
|
||||
// Token: 0x04006540 RID: 25920
|
||||
[Token(Token = "0x4006540")]
|
||||
GeneralSOCKSServerFailure,
|
||||
// Token: 0x04006541 RID: 25921
|
||||
[Token(Token = "0x4006541")]
|
||||
ConnectionNotAllowedByRuleset,
|
||||
// Token: 0x04006542 RID: 25922
|
||||
[Token(Token = "0x4006542")]
|
||||
NetworkUnreachable,
|
||||
// Token: 0x04006543 RID: 25923
|
||||
[Token(Token = "0x4006543")]
|
||||
HostUnreachable,
|
||||
// Token: 0x04006544 RID: 25924
|
||||
[Token(Token = "0x4006544")]
|
||||
ConnectionRefused,
|
||||
// Token: 0x04006545 RID: 25925
|
||||
[Token(Token = "0x4006545")]
|
||||
TTLExpired,
|
||||
// Token: 0x04006546 RID: 25926
|
||||
[Token(Token = "0x4006546")]
|
||||
CommandNotSupported,
|
||||
// Token: 0x04006547 RID: 25927
|
||||
[Token(Token = "0x4006547")]
|
||||
AddressTypeNotSupported
|
||||
}
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user