m
This commit is contained in:
@@ -0,0 +1,20 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Authentication
|
||||
{
|
||||
// Token: 0x020020A8 RID: 8360
|
||||
[Token(Token = "0x20020A8")]
|
||||
public enum AuthenticationTypes
|
||||
{
|
||||
// Token: 0x040085CB RID: 34251
|
||||
[Token(Token = "0x40085CB")]
|
||||
Unknown,
|
||||
// Token: 0x040085CC RID: 34252
|
||||
[Token(Token = "0x40085CC")]
|
||||
Basic,
|
||||
// Token: 0x040085CD RID: 34253
|
||||
[Token(Token = "0x40085CD")]
|
||||
Digest
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,74 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Authentication
|
||||
{
|
||||
// Token: 0x020020A9 RID: 8361
|
||||
[Token(Token = "0x20020A9")]
|
||||
public sealed class Credentials
|
||||
{
|
||||
// Token: 0x17002182 RID: 8578
|
||||
// (get) Token: 0x0600D266 RID: 53862 RVA: 0x00301698 File Offset: 0x002FF898
|
||||
// (set) Token: 0x0600D267 RID: 53863 RVA: 0x003016AC File Offset: 0x002FF8AC
|
||||
[Token(Token = "0x17002182")]
|
||||
public AuthenticationTypes Type
|
||||
{
|
||||
[Token(Token = "0x600D266")]
|
||||
[Address(RVA = "0x40F000", Offset = "0x40E000", VA = "0x18040F000")]
|
||||
get;
|
||||
[Token(Token = "0x600D267")]
|
||||
[Address(RVA = "0x470D10", Offset = "0x46FD10", VA = "0x180470D10")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x17002183 RID: 8579
|
||||
// (get) Token: 0x0600D268 RID: 53864 RVA: 0x003016C0 File Offset: 0x002FF8C0
|
||||
// (set) Token: 0x0600D269 RID: 53865 RVA: 0x003016D4 File Offset: 0x002FF8D4
|
||||
[Token(Token = "0x17002183")]
|
||||
public string UserName
|
||||
{
|
||||
[Token(Token = "0x600D268")]
|
||||
[Address(RVA = "0x4157B0", Offset = "0x4147B0", VA = "0x1804157B0")]
|
||||
get;
|
||||
[Token(Token = "0x600D269")]
|
||||
[Address(RVA = "0x4157F0", Offset = "0x4147F0", VA = "0x1804157F0")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x17002184 RID: 8580
|
||||
// (get) Token: 0x0600D26A RID: 53866 RVA: 0x003016E8 File Offset: 0x002FF8E8
|
||||
// (set) Token: 0x0600D26B RID: 53867 RVA: 0x003016FC File Offset: 0x002FF8FC
|
||||
[Token(Token = "0x17002184")]
|
||||
public string Password
|
||||
{
|
||||
[Token(Token = "0x600D26A")]
|
||||
[Address(RVA = "0x4157C0", Offset = "0x4147C0", VA = "0x1804157C0")]
|
||||
get;
|
||||
[Token(Token = "0x600D26B")]
|
||||
[Address(RVA = "0x415810", Offset = "0x414810", VA = "0x180415810")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x0600D26C RID: 53868 RVA: 0x00301710 File Offset: 0x002FF910
|
||||
[Token(Token = "0x600D26C")]
|
||||
[Address(RVA = "0x169C830", Offset = "0x169B830", VA = "0x18169C830")]
|
||||
public Credentials(string userName, string password)
|
||||
{
|
||||
this.UserName = userName;
|
||||
this.Password = password;
|
||||
this.Type = (AuthenticationTypes)((ulong)0L);
|
||||
}
|
||||
|
||||
// Token: 0x0600D26D RID: 53869 RVA: 0x0030173C File Offset: 0x002FF93C
|
||||
[Token(Token = "0x600D26D")]
|
||||
[Address(RVA = "0xA83C00", Offset = "0xA82C00", VA = "0x180A83C00")]
|
||||
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: 0x020020AA RID: 8362
|
||||
[Token(Token = "0x20020AA")]
|
||||
public sealed class Digest
|
||||
{
|
||||
// Token: 0x17002185 RID: 8581
|
||||
// (get) Token: 0x0600D26E RID: 53870 RVA: 0x0030176C File Offset: 0x002FF96C
|
||||
// (set) Token: 0x0600D26F RID: 53871 RVA: 0x00301780 File Offset: 0x002FF980
|
||||
[Token(Token = "0x17002185")]
|
||||
public Uri Uri
|
||||
{
|
||||
[Token(Token = "0x600D26E")]
|
||||
[Address(RVA = "0x411530", Offset = "0x410530", VA = "0x180411530")]
|
||||
get;
|
||||
[Token(Token = "0x600D26F")]
|
||||
[Address(RVA = "0x415800", Offset = "0x414800", VA = "0x180415800")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x17002186 RID: 8582
|
||||
// (get) Token: 0x0600D270 RID: 53872 RVA: 0x00301794 File Offset: 0x002FF994
|
||||
// (set) Token: 0x0600D271 RID: 53873 RVA: 0x003017A8 File Offset: 0x002FF9A8
|
||||
[Token(Token = "0x17002186")]
|
||||
public AuthenticationTypes Type
|
||||
{
|
||||
[Token(Token = "0x600D270")]
|
||||
[Address(RVA = "0x411540", Offset = "0x410540", VA = "0x180411540")]
|
||||
get;
|
||||
[Token(Token = "0x600D271")]
|
||||
[Address(RVA = "0x5F1910", Offset = "0x5F0910", VA = "0x1805F1910")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x17002187 RID: 8583
|
||||
// (get) Token: 0x0600D272 RID: 53874 RVA: 0x003017BC File Offset: 0x002FF9BC
|
||||
// (set) Token: 0x0600D273 RID: 53875 RVA: 0x003017D0 File Offset: 0x002FF9D0
|
||||
[Token(Token = "0x17002187")]
|
||||
public string Realm
|
||||
{
|
||||
[Token(Token = "0x600D272")]
|
||||
[Address(RVA = "0x4157C0", Offset = "0x4147C0", VA = "0x1804157C0")]
|
||||
get;
|
||||
[Token(Token = "0x600D273")]
|
||||
[Address(RVA = "0x415810", Offset = "0x414810", VA = "0x180415810")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x17002188 RID: 8584
|
||||
// (get) Token: 0x0600D274 RID: 53876 RVA: 0x003017E4 File Offset: 0x002FF9E4
|
||||
// (set) Token: 0x0600D275 RID: 53877 RVA: 0x003017F8 File Offset: 0x002FF9F8
|
||||
[Token(Token = "0x17002188")]
|
||||
public bool Stale
|
||||
{
|
||||
[Token(Token = "0x600D274")]
|
||||
[Address(RVA = "0x51F260", Offset = "0x51E260", VA = "0x18051F260")]
|
||||
get;
|
||||
[Token(Token = "0x600D275")]
|
||||
[Address(RVA = "0x51F2B0", Offset = "0x51E2B0", VA = "0x18051F2B0")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x17002189 RID: 8585
|
||||
// (get) Token: 0x0600D276 RID: 53878 RVA: 0x0030180C File Offset: 0x002FFA0C
|
||||
// (set) Token: 0x0600D277 RID: 53879 RVA: 0x00301820 File Offset: 0x002FFA20
|
||||
[Token(Token = "0x17002189")]
|
||||
private string Nonce
|
||||
{
|
||||
[Token(Token = "0x600D276")]
|
||||
[Address(RVA = "0x4157E0", Offset = "0x4147E0", VA = "0x1804157E0")]
|
||||
get;
|
||||
[Token(Token = "0x600D277")]
|
||||
[Address(RVA = "0x415830", Offset = "0x414830", VA = "0x180415830")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x1700218A RID: 8586
|
||||
// (get) Token: 0x0600D278 RID: 53880 RVA: 0x00301834 File Offset: 0x002FFA34
|
||||
// (set) Token: 0x0600D279 RID: 53881 RVA: 0x00301848 File Offset: 0x002FFA48
|
||||
[Token(Token = "0x1700218A")]
|
||||
private string Opaque
|
||||
{
|
||||
[Token(Token = "0x600D278")]
|
||||
[Address(RVA = "0x41CEF0", Offset = "0x41BEF0", VA = "0x18041CEF0")]
|
||||
get;
|
||||
[Token(Token = "0x600D279")]
|
||||
[Address(RVA = "0x41CFF0", Offset = "0x41BFF0", VA = "0x18041CFF0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x1700218B RID: 8587
|
||||
// (get) Token: 0x0600D27A RID: 53882 RVA: 0x0030185C File Offset: 0x002FFA5C
|
||||
// (set) Token: 0x0600D27B RID: 53883 RVA: 0x00301870 File Offset: 0x002FFA70
|
||||
[Token(Token = "0x1700218B")]
|
||||
private string Algorithm
|
||||
{
|
||||
[Token(Token = "0x600D27A")]
|
||||
[Address(RVA = "0x417680", Offset = "0x416680", VA = "0x180417680")]
|
||||
get;
|
||||
[Token(Token = "0x600D27B")]
|
||||
[Address(RVA = "0x417960", Offset = "0x416960", VA = "0x180417960")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x1700218C RID: 8588
|
||||
// (get) Token: 0x0600D27C RID: 53884 RVA: 0x00301884 File Offset: 0x002FFA84
|
||||
// (set) Token: 0x0600D27D RID: 53885 RVA: 0x00301898 File Offset: 0x002FFA98
|
||||
[Token(Token = "0x1700218C")]
|
||||
public List<string> ProtectedUris
|
||||
{
|
||||
[Token(Token = "0x600D27C")]
|
||||
[Address(RVA = "0x4975A0", Offset = "0x4965A0", VA = "0x1804975A0")]
|
||||
get;
|
||||
[Token(Token = "0x600D27D")]
|
||||
[Address(RVA = "0x55BCF0", Offset = "0x55ACF0", VA = "0x18055BCF0")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x1700218D RID: 8589
|
||||
// (get) Token: 0x0600D27E RID: 53886 RVA: 0x003018AC File Offset: 0x002FFAAC
|
||||
// (set) Token: 0x0600D27F RID: 53887 RVA: 0x003018C0 File Offset: 0x002FFAC0
|
||||
[Token(Token = "0x1700218D")]
|
||||
private string QualityOfProtections
|
||||
{
|
||||
[Token(Token = "0x600D27E")]
|
||||
[Address(RVA = "0x4936E0", Offset = "0x4926E0", VA = "0x1804936E0")]
|
||||
get;
|
||||
[Token(Token = "0x600D27F")]
|
||||
[Address(RVA = "0x55BCE0", Offset = "0x55ACE0", VA = "0x18055BCE0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x1700218E RID: 8590
|
||||
// (get) Token: 0x0600D280 RID: 53888 RVA: 0x003018D4 File Offset: 0x002FFAD4
|
||||
// (set) Token: 0x0600D281 RID: 53889 RVA: 0x003018E8 File Offset: 0x002FFAE8
|
||||
[Token(Token = "0x1700218E")]
|
||||
private int NonceCount
|
||||
{
|
||||
[Token(Token = "0x600D280")]
|
||||
[Address(RVA = "0x56DD20", Offset = "0x56CD20", VA = "0x18056DD20")]
|
||||
get;
|
||||
[Token(Token = "0x600D281")]
|
||||
[Address(RVA = "0x56DEE0", Offset = "0x56CEE0", VA = "0x18056DEE0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x1700218F RID: 8591
|
||||
// (get) Token: 0x0600D282 RID: 53890 RVA: 0x003018FC File Offset: 0x002FFAFC
|
||||
// (set) Token: 0x0600D283 RID: 53891 RVA: 0x00301910 File Offset: 0x002FFB10
|
||||
[Token(Token = "0x1700218F")]
|
||||
private string HA1Sess
|
||||
{
|
||||
[Token(Token = "0x600D282")]
|
||||
[Address(RVA = "0x417720", Offset = "0x416720", VA = "0x180417720")]
|
||||
get;
|
||||
[Token(Token = "0x600D283")]
|
||||
[Address(RVA = "0x417A20", Offset = "0x416A20", VA = "0x180417A20")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x0600D284 RID: 53892 RVA: 0x00301924 File Offset: 0x002FFB24
|
||||
[Token(Token = "0x600D284")]
|
||||
[Address(RVA = "0x169E7E0", Offset = "0x169D7E0", VA = "0x18169E7E0")]
|
||||
internal Digest(Uri uri)
|
||||
{
|
||||
this.Uri = uri;
|
||||
this.Algorithm = "md5";
|
||||
}
|
||||
|
||||
// Token: 0x0600D285 RID: 53893 RVA: 0x0030194C File Offset: 0x002FFB4C
|
||||
[Token(Token = "0x600D285")]
|
||||
[Address(RVA = "0x169E360", Offset = "0x169D360", VA = "0x18169E360")]
|
||||
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: 0x0600D286 RID: 53894 RVA: 0x00301ABC File Offset: 0x002FFCBC
|
||||
[Token(Token = "0x600D286")]
|
||||
[Address(RVA = "0x169D440", Offset = "0x169C440", VA = "0x18169D440")]
|
||||
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: 0x0600D287 RID: 53895 RVA: 0x003020B0 File Offset: 0x003002B0
|
||||
[Token(Token = "0x600D287")]
|
||||
[Address(RVA = "0x169E250", Offset = "0x169D250", VA = "0x18169E250")]
|
||||
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,129 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Threading;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Authentication
|
||||
{
|
||||
// Token: 0x020020AB RID: 8363
|
||||
[Token(Token = "0x20020AB")]
|
||||
public static class DigestStore
|
||||
{
|
||||
// Token: 0x0600D288 RID: 53896 RVA: 0x00302108 File Offset: 0x00300308
|
||||
[Token(Token = "0x600D288")]
|
||||
[Address(RVA = "0x169CF30", Offset = "0x169BF30", VA = "0x18169CF30")]
|
||||
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: 0x0600D289 RID: 53897 RVA: 0x003021A4 File Offset: 0x003003A4
|
||||
[Token(Token = "0x600D289")]
|
||||
[Address(RVA = "0x169CD00", Offset = "0x169BD00", VA = "0x18169CD00")]
|
||||
public static Digest GetOrCreate(Uri uri)
|
||||
{
|
||||
for (;;)
|
||||
{
|
||||
int num = 0;
|
||||
object locker = DigestStore.Locker;
|
||||
int num2 = 0;
|
||||
Dictionary<string, Digest> digests = DigestStore.Digests;
|
||||
string host = uri.Host;
|
||||
if (!digests.TryGetValue(host, num2))
|
||||
{
|
||||
break;
|
||||
}
|
||||
Monitor.Exit(locker);
|
||||
if (num == 0)
|
||||
{
|
||||
goto Block_1;
|
||||
}
|
||||
}
|
||||
Dictionary<string, Digest> digests2 = DigestStore.Digests;
|
||||
string host2 = uri.Host;
|
||||
Digest digest;
|
||||
digest.<Uri>k__BackingField = uri;
|
||||
digest.<Algorithm>k__BackingField = "md5";
|
||||
throw new NullReferenceException();
|
||||
Block_1:
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600D28A RID: 53898 RVA: 0x0030221C File Offset: 0x0030041C
|
||||
[Token(Token = "0x600D28A")]
|
||||
[Address(RVA = "0x169D1A0", Offset = "0x169C1A0", VA = "0x18169D1A0")]
|
||||
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: 0x0600D28B RID: 53899 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600D28B")]
|
||||
[Address(RVA = "0x169CB20", Offset = "0x169BB20", VA = "0x18169CB20")]
|
||||
public static string FindBest(List<string> authHeaders)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x0600D28C RID: 53900 RVA: 0x00302260 File Offset: 0x00300460
|
||||
// Note: this type is marked as 'beforefieldinit'.
|
||||
[Token(Token = "0x600D28C")]
|
||||
[Address(RVA = "0x169D2E0", Offset = "0x169C2E0", VA = "0x18169D2E0")]
|
||||
static DigestStore()
|
||||
{
|
||||
string[] array = new string[2];
|
||||
if ("digest" != 0)
|
||||
{
|
||||
}
|
||||
array[0] = "digest";
|
||||
if ("basic" != 0)
|
||||
{
|
||||
}
|
||||
array[1] = "basic";
|
||||
DigestStore.SupportedAlgorithms = array;
|
||||
}
|
||||
|
||||
// Token: 0x040085DC RID: 34268
|
||||
[Token(Token = "0x40085DC")]
|
||||
private static Dictionary<string, Digest> Digests = new Dictionary();
|
||||
|
||||
// Token: 0x040085DD RID: 34269
|
||||
[Token(Token = "0x40085DD")]
|
||||
private static object Locker = new object();
|
||||
|
||||
// Token: 0x040085DE RID: 34270
|
||||
[Token(Token = "0x40085DE")]
|
||||
private static string[] SupportedAlgorithms;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,644 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using BestHTTP.Extensions;
|
||||
using BestHTTP.PlatformSupport.FileSystem;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Caching
|
||||
{
|
||||
// Token: 0x020020A1 RID: 8353
|
||||
[Token(Token = "0x20020A1")]
|
||||
public class HTTPCacheFileInfo : IComparable<HTTPCacheFileInfo>
|
||||
{
|
||||
// Token: 0x1700216F RID: 8559
|
||||
// (get) Token: 0x0600D20C RID: 53772 RVA: 0x002FFB84 File Offset: 0x002FDD84
|
||||
// (set) Token: 0x0600D20D RID: 53773 RVA: 0x002FFB98 File Offset: 0x002FDD98
|
||||
[Token(Token = "0x1700216F")]
|
||||
internal Uri Uri
|
||||
{
|
||||
[Token(Token = "0x600D20C")]
|
||||
[Address(RVA = "0x411530", Offset = "0x410530", VA = "0x180411530")]
|
||||
get;
|
||||
[Token(Token = "0x600D20D")]
|
||||
[Address(RVA = "0x415800", Offset = "0x414800", VA = "0x180415800")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17002170 RID: 8560
|
||||
// (get) Token: 0x0600D20E RID: 53774 RVA: 0x002FFBAC File Offset: 0x002FDDAC
|
||||
// (set) Token: 0x0600D20F RID: 53775 RVA: 0x002FFBC0 File Offset: 0x002FDDC0
|
||||
[Token(Token = "0x17002170")]
|
||||
internal DateTime LastAccess
|
||||
{
|
||||
[Token(Token = "0x600D20E")]
|
||||
[Address(RVA = "0x4157B0", Offset = "0x4147B0", VA = "0x1804157B0")]
|
||||
get;
|
||||
[Token(Token = "0x600D20F")]
|
||||
[Address(RVA = "0x4157F0", Offset = "0x4147F0", VA = "0x1804157F0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17002171 RID: 8561
|
||||
// (get) Token: 0x0600D210 RID: 53776 RVA: 0x002FFBD4 File Offset: 0x002FDDD4
|
||||
// (set) Token: 0x0600D211 RID: 53777 RVA: 0x002FFBE8 File Offset: 0x002FDDE8
|
||||
[Token(Token = "0x17002171")]
|
||||
public int BodyLength
|
||||
{
|
||||
[Token(Token = "0x600D210")]
|
||||
[Address(RVA = "0x470B70", Offset = "0x46FB70", VA = "0x180470B70")]
|
||||
get;
|
||||
[Token(Token = "0x600D211")]
|
||||
[Address(RVA = "0x62ADB0", Offset = "0x629DB0", VA = "0x18062ADB0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17002172 RID: 8562
|
||||
// (get) Token: 0x0600D212 RID: 53778 RVA: 0x002FFBFC File Offset: 0x002FDDFC
|
||||
// (set) Token: 0x0600D213 RID: 53779 RVA: 0x002FFC10 File Offset: 0x002FDE10
|
||||
[Token(Token = "0x17002172")]
|
||||
private string ETag
|
||||
{
|
||||
[Token(Token = "0x600D212")]
|
||||
[Address(RVA = "0x4157D0", Offset = "0x4147D0", VA = "0x1804157D0")]
|
||||
get;
|
||||
[Token(Token = "0x600D213")]
|
||||
[Address(RVA = "0x415820", Offset = "0x414820", VA = "0x180415820")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17002173 RID: 8563
|
||||
// (get) Token: 0x0600D214 RID: 53780 RVA: 0x002FFC24 File Offset: 0x002FDE24
|
||||
// (set) Token: 0x0600D215 RID: 53781 RVA: 0x002FFC38 File Offset: 0x002FDE38
|
||||
[Token(Token = "0x17002173")]
|
||||
private string LastModified
|
||||
{
|
||||
[Token(Token = "0x600D214")]
|
||||
[Address(RVA = "0x4157E0", Offset = "0x4147E0", VA = "0x1804157E0")]
|
||||
get;
|
||||
[Token(Token = "0x600D215")]
|
||||
[Address(RVA = "0x415830", Offset = "0x414830", VA = "0x180415830")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17002174 RID: 8564
|
||||
// (get) Token: 0x0600D216 RID: 53782 RVA: 0x002FFC4C File Offset: 0x002FDE4C
|
||||
// (set) Token: 0x0600D217 RID: 53783 RVA: 0x002FFC60 File Offset: 0x002FDE60
|
||||
[Token(Token = "0x17002174")]
|
||||
private DateTime Expires
|
||||
{
|
||||
[Token(Token = "0x600D216")]
|
||||
[Address(RVA = "0x41CEF0", Offset = "0x41BEF0", VA = "0x18041CEF0")]
|
||||
get;
|
||||
[Token(Token = "0x600D217")]
|
||||
[Address(RVA = "0x41CFF0", Offset = "0x41BFF0", VA = "0x18041CFF0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17002175 RID: 8565
|
||||
// (get) Token: 0x0600D218 RID: 53784 RVA: 0x002FFC74 File Offset: 0x002FDE74
|
||||
// (set) Token: 0x0600D219 RID: 53785 RVA: 0x002FFC88 File Offset: 0x002FDE88
|
||||
[Token(Token = "0x17002175")]
|
||||
private long Age
|
||||
{
|
||||
[Token(Token = "0x600D218")]
|
||||
[Address(RVA = "0x417680", Offset = "0x416680", VA = "0x180417680")]
|
||||
get;
|
||||
[Token(Token = "0x600D219")]
|
||||
[Address(RVA = "0x417960", Offset = "0x416960", VA = "0x180417960")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17002176 RID: 8566
|
||||
// (get) Token: 0x0600D21A RID: 53786 RVA: 0x002FFC9C File Offset: 0x002FDE9C
|
||||
// (set) Token: 0x0600D21B RID: 53787 RVA: 0x002FFCB0 File Offset: 0x002FDEB0
|
||||
[Token(Token = "0x17002176")]
|
||||
private long MaxAge
|
||||
{
|
||||
[Token(Token = "0x600D21A")]
|
||||
[Address(RVA = "0x4975A0", Offset = "0x4965A0", VA = "0x1804975A0")]
|
||||
get;
|
||||
[Token(Token = "0x600D21B")]
|
||||
[Address(RVA = "0x55BCF0", Offset = "0x55ACF0", VA = "0x18055BCF0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17002177 RID: 8567
|
||||
// (get) Token: 0x0600D21C RID: 53788 RVA: 0x002FFCC4 File Offset: 0x002FDEC4
|
||||
// (set) Token: 0x0600D21D RID: 53789 RVA: 0x002FFCD8 File Offset: 0x002FDED8
|
||||
[Token(Token = "0x17002177")]
|
||||
private DateTime Date
|
||||
{
|
||||
[Token(Token = "0x600D21C")]
|
||||
[Address(RVA = "0x4936E0", Offset = "0x4926E0", VA = "0x1804936E0")]
|
||||
get;
|
||||
[Token(Token = "0x600D21D")]
|
||||
[Address(RVA = "0x55BCE0", Offset = "0x55ACE0", VA = "0x18055BCE0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17002178 RID: 8568
|
||||
// (get) Token: 0x0600D21E RID: 53790 RVA: 0x002FFCEC File Offset: 0x002FDEEC
|
||||
// (set) Token: 0x0600D21F RID: 53791 RVA: 0x002FFD00 File Offset: 0x002FDF00
|
||||
[Token(Token = "0x17002178")]
|
||||
private bool MustRevalidate
|
||||
{
|
||||
[Token(Token = "0x600D21E")]
|
||||
[Address(RVA = "0x51F220", Offset = "0x51E220", VA = "0x18051F220")]
|
||||
get;
|
||||
[Token(Token = "0x600D21F")]
|
||||
[Address(RVA = "0x51DB50", Offset = "0x51CB50", VA = "0x18051DB50")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17002179 RID: 8569
|
||||
// (get) Token: 0x0600D220 RID: 53792 RVA: 0x002FFD14 File Offset: 0x002FDF14
|
||||
// (set) Token: 0x0600D221 RID: 53793 RVA: 0x002FFD28 File Offset: 0x002FDF28
|
||||
[Token(Token = "0x17002179")]
|
||||
private DateTime Received
|
||||
{
|
||||
[Token(Token = "0x600D220")]
|
||||
[Address(RVA = "0x417720", Offset = "0x416720", VA = "0x180417720")]
|
||||
get;
|
||||
[Token(Token = "0x600D221")]
|
||||
[Address(RVA = "0x417A20", Offset = "0x416A20", VA = "0x180417A20")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x1700217A RID: 8570
|
||||
// (get) Token: 0x0600D222 RID: 53794 RVA: 0x002FFD3C File Offset: 0x002FDF3C
|
||||
// (set) Token: 0x0600D223 RID: 53795 RVA: 0x002FFD50 File Offset: 0x002FDF50
|
||||
[Token(Token = "0x1700217A")]
|
||||
private string ConstructedPath
|
||||
{
|
||||
[Token(Token = "0x600D222")]
|
||||
[Address(RVA = "0x4177D0", Offset = "0x4167D0", VA = "0x1804177D0")]
|
||||
get;
|
||||
[Token(Token = "0x600D223")]
|
||||
[Address(RVA = "0x417AC0", Offset = "0x416AC0", VA = "0x180417AC0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x1700217B RID: 8571
|
||||
// (get) Token: 0x0600D224 RID: 53796 RVA: 0x002FFD64 File Offset: 0x002FDF64
|
||||
// (set) Token: 0x0600D225 RID: 53797 RVA: 0x002FFD78 File Offset: 0x002FDF78
|
||||
[Token(Token = "0x1700217B")]
|
||||
internal ulong MappedNameIDX
|
||||
{
|
||||
[Token(Token = "0x600D224")]
|
||||
[Address(RVA = "0x493640", Offset = "0x492640", VA = "0x180493640")]
|
||||
get;
|
||||
[Token(Token = "0x600D225")]
|
||||
[Address(RVA = "0x476170", Offset = "0x475170", VA = "0x180476170")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x0600D226 RID: 53798 RVA: 0x002FFD8C File Offset: 0x002FDF8C
|
||||
[Token(Token = "0x600D226")]
|
||||
[Address(RVA = "0x16A1F70", Offset = "0x16A0F70", VA = "0x1816A1F70")]
|
||||
internal HTTPCacheFileInfo(Uri uri)
|
||||
{
|
||||
DateTime utcNow = DateTime.UtcNow;
|
||||
base..ctor();
|
||||
this.Uri = uri;
|
||||
this.LastAccess = utcNow;
|
||||
this.BodyLength = (int)((ulong)4294967295L);
|
||||
this.MaxAge = (long)((ulong)(-1L));
|
||||
ulong nameIdx = HTTPCacheService.GetNameIdx();
|
||||
this.MappedNameIDX = nameIdx;
|
||||
}
|
||||
|
||||
// Token: 0x0600D227 RID: 53799 RVA: 0x002FFDE0 File Offset: 0x002FDFE0
|
||||
[Token(Token = "0x600D227")]
|
||||
[Address(RVA = "0x16A2040", Offset = "0x16A1040", VA = "0x1816A2040")]
|
||||
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: 0x0600D228 RID: 53800 RVA: 0x002FFE20 File Offset: 0x002FE020
|
||||
[Token(Token = "0x600D228")]
|
||||
[Address(RVA = "0x16A1D90", Offset = "0x16A0D90", VA = "0x1816A1D90")]
|
||||
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: 0x0600D229 RID: 53801 RVA: 0x002FFF08 File Offset: 0x002FE108
|
||||
[Token(Token = "0x600D229")]
|
||||
[Address(RVA = "0x16A1150", Offset = "0x16A0150", VA = "0x1816A1150")]
|
||||
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: 0x0600D22A RID: 53802 RVA: 0x002FFFBC File Offset: 0x002FE1BC
|
||||
[Token(Token = "0x600D22A")]
|
||||
[Address(RVA = "0x16A05D0", Offset = "0x169F5D0", VA = "0x1816A05D0")]
|
||||
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: 0x0600D22B RID: 53803 RVA: 0x002FFFF4 File Offset: 0x002FE1F4
|
||||
[Token(Token = "0x600D22B")]
|
||||
[Address(RVA = "0x16A0DE0", Offset = "0x169FDE0", VA = "0x1816A0DE0")]
|
||||
public bool IsExists()
|
||||
{
|
||||
if (HTTPCacheService.IsSupported)
|
||||
{
|
||||
IIOService ioservice = HTTPManager.IOService;
|
||||
string path = this.GetPath();
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600D22C RID: 53804 RVA: 0x00300020 File Offset: 0x002FE220
|
||||
[Token(Token = "0x600D22C")]
|
||||
[Address(RVA = "0x16A02C0", Offset = "0x169F2C0", VA = "0x1816A02C0")]
|
||||
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: 0x0600D22D RID: 53805 RVA: 0x003000D0 File Offset: 0x002FE2D0
|
||||
[Token(Token = "0x600D22D")]
|
||||
[Address(RVA = "0x16A1090", Offset = "0x16A0090", VA = "0x1816A1090")]
|
||||
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: 0x0600D22E RID: 53806 RVA: 0x00300154 File Offset: 0x002FE354
|
||||
[Token(Token = "0x600D22E")]
|
||||
[Address(RVA = "0x16A12D0", Offset = "0x16A02D0", VA = "0x1816A12D0")]
|
||||
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: 0x0600D22F RID: 53807 RVA: 0x0030027C File Offset: 0x002FE47C
|
||||
[Token(Token = "0x600D22F")]
|
||||
[Address(RVA = "0x16A1C10", Offset = "0x16A0C10", VA = "0x1816A1C10")]
|
||||
internal bool WillExpireInTheFuture()
|
||||
{
|
||||
if (this.IsExists() && !this.<MustRevalidate>k__BackingField)
|
||||
{
|
||||
DateTime dateTime = this.<Expires>k__BackingField;
|
||||
DateTime utcNow = DateTime.UtcNow;
|
||||
return dateTime > utcNow;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600D230 RID: 53808 RVA: 0x00300324 File Offset: 0x002FE524
|
||||
[Token(Token = "0x600D230")]
|
||||
[Address(RVA = "0x16A1540", Offset = "0x16A0540", VA = "0x1816A1540")]
|
||||
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: 0x0600D231 RID: 53809 RVA: 0x00300380 File Offset: 0x002FE580
|
||||
[Token(Token = "0x600D231")]
|
||||
[Address(RVA = "0x16A04A0", Offset = "0x169F4A0", VA = "0x1816A04A0")]
|
||||
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: 0x0600D232 RID: 53810 RVA: 0x003003CC File Offset: 0x002FE5CC
|
||||
[Token(Token = "0x600D232")]
|
||||
[Address(RVA = "0x16A0EB0", Offset = "0x169FEB0", VA = "0x1816A0EB0")]
|
||||
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: 0x0600D233 RID: 53811 RVA: 0x00300428 File Offset: 0x002FE628
|
||||
[Token(Token = "0x600D233")]
|
||||
[Address(RVA = "0x16A15E0", Offset = "0x16A05E0", VA = "0x1816A15E0")]
|
||||
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: 0x0600D234 RID: 53812 RVA: 0x00300570 File Offset: 0x002FE770
|
||||
[Token(Token = "0x600D234")]
|
||||
[Address(RVA = "0x16A06F0", Offset = "0x169F6F0", VA = "0x1816A06F0")]
|
||||
internal Stream GetSaveStream(HTTPResponse response)
|
||||
{
|
||||
for (;;)
|
||||
{
|
||||
int num = 0;
|
||||
if (!HTTPCacheService.IsSupported)
|
||||
{
|
||||
goto IL_F0;
|
||||
}
|
||||
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_123;
|
||||
}
|
||||
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_F0:
|
||||
throw new ArrayTypeMismatchException();
|
||||
IL_123:
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600D235 RID: 53813 RVA: 0x003006B4 File Offset: 0x002FE8B4
|
||||
[Token(Token = "0x600D235")]
|
||||
[Address(RVA = "0x16A0290", Offset = "0x169F290", VA = "0x1816A0290", 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,80 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Threading;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Caching
|
||||
{
|
||||
// Token: 0x020020A2 RID: 8354
|
||||
[Token(Token = "0x20020A2")]
|
||||
internal sealed class HTTPCacheFileLock
|
||||
{
|
||||
// Token: 0x0600D236 RID: 53814 RVA: 0x003006D8 File Offset: 0x002FE8D8
|
||||
[Token(Token = "0x600D236")]
|
||||
[Address(RVA = "0x2411CF0", Offset = "0x2410CF0", VA = "0x182411CF0")]
|
||||
internal static object Acquire(Uri uri)
|
||||
{
|
||||
for (;;)
|
||||
{
|
||||
int num = 0;
|
||||
object syncRoot = HTTPCacheFileLock.SyncRoot;
|
||||
int num2 = 0;
|
||||
if (!HTTPCacheFileLock.FileLocks.TryGetValue(uri, num2))
|
||||
{
|
||||
break;
|
||||
}
|
||||
Monitor.Exit(syncRoot);
|
||||
if (num == 0)
|
||||
{
|
||||
goto Block_1;
|
||||
}
|
||||
}
|
||||
Dictionary<Uri, object> fileLocks = HTTPCacheFileLock.FileLocks;
|
||||
object obj = new object();
|
||||
throw new NullReferenceException();
|
||||
Block_1:
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600D237 RID: 53815 RVA: 0x00300728 File Offset: 0x002FE928
|
||||
[Token(Token = "0x600D237")]
|
||||
[Address(RVA = "0x2411FD0", Offset = "0x2410FD0", VA = "0x182411FD0")]
|
||||
internal static void Remove(Uri uri)
|
||||
{
|
||||
object syncRoot = HTTPCacheFileLock.SyncRoot;
|
||||
Dictionary<Uri, object> fileLocks = HTTPCacheFileLock.FileLocks;
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600D238 RID: 53816 RVA: 0x00300770 File Offset: 0x002FE970
|
||||
[Token(Token = "0x600D238")]
|
||||
[Address(RVA = "0x2411EB0", Offset = "0x2410EB0", VA = "0x182411EB0")]
|
||||
internal static void Clear()
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
object syncRoot = HTTPCacheFileLock.SyncRoot;
|
||||
HTTPCacheFileLock.FileLocks.Clear();
|
||||
Monitor.Exit(syncRoot);
|
||||
}
|
||||
while (num != 0);
|
||||
}
|
||||
|
||||
// Token: 0x0600D239 RID: 53817 RVA: 0x003007A0 File Offset: 0x002FE9A0
|
||||
[Token(Token = "0x600D239")]
|
||||
[Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")]
|
||||
public HTTPCacheFileLock()
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x040085B7 RID: 34231
|
||||
[Token(Token = "0x40085B7")]
|
||||
private static Dictionary<Uri, object> FileLocks = new Dictionary();
|
||||
|
||||
// Token: 0x040085B8 RID: 34232
|
||||
[Token(Token = "0x40085B8")]
|
||||
private static object SyncRoot = new object();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,47 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Caching
|
||||
{
|
||||
// Token: 0x020020A3 RID: 8355
|
||||
[Token(Token = "0x20020A3")]
|
||||
public sealed class HTTPCacheMaintananceParams
|
||||
{
|
||||
// Token: 0x1700217C RID: 8572
|
||||
// (get) Token: 0x0600D23B RID: 53819 RVA: 0x003007D8 File Offset: 0x002FE9D8
|
||||
// (set) Token: 0x0600D23C RID: 53820 RVA: 0x003007EC File Offset: 0x002FE9EC
|
||||
[Token(Token = "0x1700217C")]
|
||||
public TimeSpan DeleteOlder
|
||||
{
|
||||
[Token(Token = "0x600D23B")]
|
||||
[Address(RVA = "0x411530", Offset = "0x410530", VA = "0x180411530")]
|
||||
get;
|
||||
[Token(Token = "0x600D23C")]
|
||||
[Address(RVA = "0x415800", Offset = "0x414800", VA = "0x180415800")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x1700217D RID: 8573
|
||||
// (get) Token: 0x0600D23D RID: 53821 RVA: 0x00300800 File Offset: 0x002FEA00
|
||||
// (set) Token: 0x0600D23E RID: 53822 RVA: 0x00300814 File Offset: 0x002FEA14
|
||||
[Token(Token = "0x1700217D")]
|
||||
public ulong MaxCacheSize
|
||||
{
|
||||
[Token(Token = "0x600D23D")]
|
||||
[Address(RVA = "0x4157B0", Offset = "0x4147B0", VA = "0x1804157B0")]
|
||||
get;
|
||||
[Token(Token = "0x600D23E")]
|
||||
[Address(RVA = "0x4157F0", Offset = "0x4147F0", VA = "0x1804157F0")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x0600D23F RID: 53823 RVA: 0x00300828 File Offset: 0x002FEA28
|
||||
[Token(Token = "0x600D23F")]
|
||||
[Address(RVA = "0x417DD0", Offset = "0x416DD0", VA = "0x180417DD0")]
|
||||
public HTTPCacheMaintananceParams(TimeSpan deleteOlder, ulong maxCacheSize)
|
||||
{
|
||||
this.DeleteOlder = deleteOlder;
|
||||
this.MaxCacheSize = maxCacheSize;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,801 @@
|
||||
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: 0x020020A5 RID: 8357
|
||||
[Token(Token = "0x20020A5")]
|
||||
public static class HTTPCacheService
|
||||
{
|
||||
// Token: 0x1700217E RID: 8574
|
||||
// (get) Token: 0x0600D243 RID: 53827 RVA: 0x00300894 File Offset: 0x002FEA94
|
||||
[Token(Token = "0x1700217E")]
|
||||
public static bool IsSupported
|
||||
{
|
||||
[Token(Token = "0x600D243")]
|
||||
[Address(RVA = "0x2415FC0", Offset = "0x2414FC0", VA = "0x182415FC0")]
|
||||
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: 0x1700217F RID: 8575
|
||||
// (get) Token: 0x0600D244 RID: 53828 RVA: 0x003008D8 File Offset: 0x002FEAD8
|
||||
[Token(Token = "0x1700217F")]
|
||||
private static Dictionary<Uri, HTTPCacheFileInfo> Library
|
||||
{
|
||||
[Token(Token = "0x600D244")]
|
||||
[Address(RVA = "0x2416310", Offset = "0x2415310", VA = "0x182416310")]
|
||||
get
|
||||
{
|
||||
HTTPCacheService.LoadLibrary();
|
||||
return HTTPCacheService.library;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17002180 RID: 8576
|
||||
// (get) Token: 0x0600D245 RID: 53829 RVA: 0x003008F4 File Offset: 0x002FEAF4
|
||||
// (set) Token: 0x0600D246 RID: 53830 RVA: 0x00300908 File Offset: 0x002FEB08
|
||||
[Token(Token = "0x17002180")]
|
||||
internal static string CacheFolder
|
||||
{
|
||||
[Token(Token = "0x600D245")]
|
||||
[Address(RVA = "0x2415F60", Offset = "0x2414F60", VA = "0x182415F60")]
|
||||
get;
|
||||
[Token(Token = "0x600D246")]
|
||||
[Address(RVA = "0x2416370", Offset = "0x2415370", VA = "0x182416370")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x17002181 RID: 8577
|
||||
// (get) Token: 0x0600D247 RID: 53831 RVA: 0x0030091C File Offset: 0x002FEB1C
|
||||
// (set) Token: 0x0600D248 RID: 53832 RVA: 0x00300930 File Offset: 0x002FEB30
|
||||
[Token(Token = "0x17002181")]
|
||||
private static string LibraryPath
|
||||
{
|
||||
[Token(Token = "0x600D247")]
|
||||
[Address(RVA = "0x2416250", Offset = "0x2415250", VA = "0x182416250")]
|
||||
get;
|
||||
[Token(Token = "0x600D248")]
|
||||
[Address(RVA = "0x24163D0", Offset = "0x24153D0", VA = "0x1824163D0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x0600D24A RID: 53834 RVA: 0x0030095C File Offset: 0x002FEB5C
|
||||
[Token(Token = "0x600D24A")]
|
||||
[Address(RVA = "0x24124B0", Offset = "0x24114B0", VA = "0x1824124B0")]
|
||||
internal static void CheckSetup()
|
||||
{
|
||||
if (HTTPCacheService.IsSupported)
|
||||
{
|
||||
HTTPCacheService.SetupCacheFolder();
|
||||
HTTPCacheService.LoadLibrary();
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600D24B RID: 53835 RVA: 0x00300984 File Offset: 0x002FEB84
|
||||
[Token(Token = "0x600D24B")]
|
||||
[Address(RVA = "0x24156A0", Offset = "0x24146A0", VA = "0x1824156A0")]
|
||||
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: 0x0600D24C RID: 53836 RVA: 0x00300A04 File Offset: 0x002FEC04
|
||||
[Token(Token = "0x600D24C")]
|
||||
[Address(RVA = "0x24138F0", Offset = "0x24128F0", VA = "0x1824138F0")]
|
||||
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: 0x0600D24D RID: 53837 RVA: 0x00300A68 File Offset: 0x002FEC68
|
||||
[Token(Token = "0x600D24D")]
|
||||
[Address(RVA = "0x2413AE0", Offset = "0x2412AE0", VA = "0x182413AE0")]
|
||||
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: 0x0600D24E RID: 53838 RVA: 0x00300AB8 File Offset: 0x002FECB8
|
||||
[Token(Token = "0x600D24E")]
|
||||
[Address(RVA = "0x2412820", Offset = "0x2411820", VA = "0x182412820")]
|
||||
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: 0x0600D24F RID: 53839 RVA: 0x00300B74 File Offset: 0x002FED74
|
||||
[Token(Token = "0x600D24F")]
|
||||
[Address(RVA = "0x2413F30", Offset = "0x2412F30", VA = "0x182413F30")]
|
||||
internal static bool IsCachedEntityExpiresInTheFuture(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: 0x0600D250 RID: 53840 RVA: 0x00300BE4 File Offset: 0x002FEDE4
|
||||
[Token(Token = "0x600D250")]
|
||||
[Address(RVA = "0x2415460", Offset = "0x2414460", VA = "0x182415460")]
|
||||
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;
|
||||
if (dictionary2.TryGetValue(currentUri, num2))
|
||||
{
|
||||
}
|
||||
Monitor.Exit(dictionary);
|
||||
}
|
||||
while (num != 0);
|
||||
}
|
||||
|
||||
// Token: 0x0600D251 RID: 53841 RVA: 0x00300C64 File Offset: 0x002FEE64
|
||||
[Token(Token = "0x600D251")]
|
||||
[Address(RVA = "0x2413460", Offset = "0x2412460", VA = "0x182413460")]
|
||||
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: 0x0600D252 RID: 53842 RVA: 0x00300CB8 File Offset: 0x002FEEB8
|
||||
[Token(Token = "0x600D252")]
|
||||
[Address(RVA = "0x2413660", Offset = "0x2412660", VA = "0x182413660")]
|
||||
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: 0x0600D253 RID: 53843 RVA: 0x00300D28 File Offset: 0x002FEF28
|
||||
[Token(Token = "0x600D253")]
|
||||
[Address(RVA = "0x2413CE0", Offset = "0x2412CE0", VA = "0x182413CE0")]
|
||||
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: 0x0600D254 RID: 53844 RVA: 0x00300DE0 File Offset: 0x002FEFE0
|
||||
[Token(Token = "0x600D254")]
|
||||
[Address(RVA = "0x2415B10", Offset = "0x2414B10", VA = "0x182415B10")]
|
||||
internal static HTTPCacheFileInfo Store(Uri uri, HTTPMethods method, HTTPResponse response)
|
||||
{
|
||||
for (;;)
|
||||
{
|
||||
int num = 0;
|
||||
if (response == 0)
|
||||
{
|
||||
goto IL_C0;
|
||||
}
|
||||
byte[] <Data>k__BackingField = response.<Data>k__BackingField;
|
||||
if (<Data>k__BackingField == 0 || <Data>k__BackingField.Length == num || !HTTPCacheService.IsSupported)
|
||||
{
|
||||
goto IL_C0;
|
||||
}
|
||||
Dictionary<Uri, HTTPCacheFileInfo> dictionary = HTTPCacheService.Library;
|
||||
int num2 = 0;
|
||||
if (!HTTPCacheService.Library.TryGetValue(uri, num2))
|
||||
{
|
||||
break;
|
||||
}
|
||||
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);
|
||||
if (num == 0)
|
||||
{
|
||||
goto IL_C0;
|
||||
}
|
||||
}
|
||||
Dictionary<Uri, HTTPCacheFileInfo> dictionary2 = HTTPCacheService.Library;
|
||||
HTTPCacheFileInfo httpcacheFileInfo = new HTTPCacheFileInfo(uri);
|
||||
throw new NullReferenceException();
|
||||
IL_C0:
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600D255 RID: 53845 RVA: 0x00300EE0 File Offset: 0x002FF0E0
|
||||
[Token(Token = "0x600D255")]
|
||||
[Address(RVA = "0x2414920", Offset = "0x2413920", VA = "0x182414920")]
|
||||
internal static Stream PrepareStreamed(Uri uri, HTTPResponse response)
|
||||
{
|
||||
for (;;)
|
||||
{
|
||||
int num = 0;
|
||||
if (!HTTPCacheService.IsSupported)
|
||||
{
|
||||
goto IL_63;
|
||||
}
|
||||
HTTPCacheService.LoadLibrary();
|
||||
Dictionary<Uri, HTTPCacheFileInfo> dictionary = HTTPCacheService.library;
|
||||
int num2 = 0;
|
||||
HTTPCacheService.LoadLibrary();
|
||||
if (!HTTPCacheService.library.TryGetValue(uri, num2))
|
||||
{
|
||||
break;
|
||||
}
|
||||
Monitor.Exit(dictionary);
|
||||
if (num == 0)
|
||||
{
|
||||
goto IL_63;
|
||||
}
|
||||
}
|
||||
Dictionary<Uri, HTTPCacheFileInfo> dictionary2 = HTTPCacheService.Library;
|
||||
HTTPCacheFileInfo httpcacheFileInfo = new HTTPCacheFileInfo(uri);
|
||||
throw new NullReferenceException();
|
||||
IL_63:
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600D256 RID: 53846 RVA: 0x00300F70 File Offset: 0x002FF170
|
||||
[Token(Token = "0x600D256")]
|
||||
[Address(RVA = "0x24121E0", Offset = "0x24111E0", VA = "0x1824121E0")]
|
||||
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: 0x0600D257 RID: 53847 RVA: 0x00300FB8 File Offset: 0x002FF1B8
|
||||
[Token(Token = "0x600D257")]
|
||||
[Address(RVA = "0x2412550", Offset = "0x2411550", VA = "0x182412550")]
|
||||
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: 0x0600D258 RID: 53848 RVA: 0x0030101C File Offset: 0x002FF21C
|
||||
[Token(Token = "0x600D258")]
|
||||
[Address(RVA = "0x2412350", Offset = "0x2411350", VA = "0x182412350")]
|
||||
public static void BeginMaintainence(HTTPCacheMaintananceParams maintananceParam)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D258)
|
||||
|
||||
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: 0x0600D259 RID: 53849 RVA: 0x00301070 File Offset: 0x002FF270
|
||||
[Token(Token = "0x600D259")]
|
||||
[Address(RVA = "0x2412FA0", Offset = "0x2411FA0", VA = "0x182412FA0")]
|
||||
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: 0x0600D25A RID: 53850 RVA: 0x003010C8 File Offset: 0x002FF2C8
|
||||
[Token(Token = "0x600D25A")]
|
||||
[Address(RVA = "0x2413180", Offset = "0x2412180", VA = "0x182413180")]
|
||||
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: 0x0600D25B RID: 53851 RVA: 0x0030112C File Offset: 0x002FF32C
|
||||
[Token(Token = "0x600D25B")]
|
||||
[Address(RVA = "0x24141B0", Offset = "0x24131B0", VA = "0x1824141B0")]
|
||||
private static void LoadLibrary()
|
||||
{
|
||||
for (;;)
|
||||
{
|
||||
int 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();
|
||||
if (new HTTPCacheFileInfo(uri, binaryReader, (int)num2).IsExists())
|
||||
{
|
||||
break;
|
||||
}
|
||||
num++;
|
||||
}
|
||||
if (binaryReader != 0)
|
||||
{
|
||||
}
|
||||
if (num != 0)
|
||||
{
|
||||
goto IL_12F;
|
||||
}
|
||||
if (num != -1)
|
||||
{
|
||||
}
|
||||
num++;
|
||||
int num5;
|
||||
if (uri != 0)
|
||||
{
|
||||
num5 = 0;
|
||||
}
|
||||
if (num != 0)
|
||||
{
|
||||
goto IL_12F;
|
||||
}
|
||||
if (num != -1)
|
||||
{
|
||||
}
|
||||
Monitor.Exit(num5);
|
||||
if (num == 0)
|
||||
{
|
||||
goto Block_6;
|
||||
}
|
||||
}
|
||||
Dictionary<Uri, HTTPCacheFileInfo> dictionary2 = HTTPCacheService.library;
|
||||
throw new NullReferenceException();
|
||||
Block_6:
|
||||
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_12F:
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600D25C RID: 53852 RVA: 0x00301270 File Offset: 0x002FF470
|
||||
[Token(Token = "0x600D25C")]
|
||||
[Address(RVA = "0x2414C50", Offset = "0x2413C50", VA = "0x182414C50")]
|
||||
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: 0x0600D25D RID: 53853 RVA: 0x00301344 File Offset: 0x002FF544
|
||||
[Token(Token = "0x600D25D")]
|
||||
[Address(RVA = "0x2415160", Offset = "0x2414160", VA = "0x182415160")]
|
||||
internal static void SetBodyLength(Uri uri, int bodyLength)
|
||||
{
|
||||
for (;;)
|
||||
{
|
||||
int num = 0;
|
||||
if (!HTTPCacheService.IsSupported)
|
||||
{
|
||||
return;
|
||||
}
|
||||
HTTPCacheService.LoadLibrary();
|
||||
Dictionary<Uri, HTTPCacheFileInfo> dictionary = HTTPCacheService.library;
|
||||
int num2 = 0;
|
||||
HTTPCacheService.LoadLibrary();
|
||||
if (!HTTPCacheService.library.TryGetValue(uri, num2))
|
||||
{
|
||||
break;
|
||||
}
|
||||
Monitor.Exit(dictionary);
|
||||
if (num == 0)
|
||||
{
|
||||
return;
|
||||
}
|
||||
}
|
||||
Dictionary<Uri, HTTPCacheFileInfo> dictionary2 = HTTPCacheService.Library;
|
||||
DateTime utcNow = DateTime.UtcNow;
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600D25E RID: 53854 RVA: 0x003013D4 File Offset: 0x002FF5D4
|
||||
[Token(Token = "0x600D25E")]
|
||||
[Address(RVA = "0x2412B90", Offset = "0x2411B90", VA = "0x182412B90")]
|
||||
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: 0x040085BB RID: 34235
|
||||
[Token(Token = "0x40085BB")]
|
||||
private const int LibraryVersion = 2;
|
||||
|
||||
// Token: 0x040085BC RID: 34236
|
||||
[Token(Token = "0x40085BC")]
|
||||
private static bool isSupported;
|
||||
|
||||
// Token: 0x040085BD RID: 34237
|
||||
[Token(Token = "0x40085BD")]
|
||||
private static bool IsSupportCheckDone;
|
||||
|
||||
// Token: 0x040085BE RID: 34238
|
||||
[Token(Token = "0x40085BE")]
|
||||
private static Dictionary<Uri, HTTPCacheFileInfo> library;
|
||||
|
||||
// Token: 0x040085BF RID: 34239
|
||||
[Token(Token = "0x40085BF")]
|
||||
private static Dictionary<ulong, HTTPCacheFileInfo> UsedIndexes = new Dictionary();
|
||||
|
||||
// Token: 0x040085C2 RID: 34242
|
||||
[Token(Token = "0x40085C2")]
|
||||
private static bool InClearThread;
|
||||
|
||||
// Token: 0x040085C3 RID: 34243
|
||||
[Token(Token = "0x40085C3")]
|
||||
private static bool InMaintainenceThread;
|
||||
|
||||
// Token: 0x040085C4 RID: 34244
|
||||
[Token(Token = "0x40085C4")]
|
||||
private static ulong NextNameIDX;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,36 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Caching
|
||||
{
|
||||
// Token: 0x020020A4 RID: 8356
|
||||
[Token(Token = "0x20020A4")]
|
||||
public sealed class UriComparer : IEqualityComparer<Uri>
|
||||
{
|
||||
// Token: 0x0600D240 RID: 53824 RVA: 0x0030084C File Offset: 0x002FEA4C
|
||||
[Token(Token = "0x600D240")]
|
||||
[Address(RVA = "0x241CDF0", Offset = "0x241BDF0", VA = "0x18241CDF0", Slot = "4")]
|
||||
public bool Equals(Uri x, Uri y)
|
||||
{
|
||||
int num;
|
||||
return num == 0;
|
||||
}
|
||||
|
||||
// Token: 0x0600D241 RID: 53825 RVA: 0x00300860 File Offset: 0x002FEA60
|
||||
[Token(Token = "0x600D241")]
|
||||
[Address(RVA = "0x241CE70", Offset = "0x241BE70", VA = "0x18241CE70", Slot = "5")]
|
||||
public int GetHashCode(Uri uri)
|
||||
{
|
||||
TypeCode typeCode = ((IConvertible)uri.GetHashCode()).GetTypeCode();
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600D242 RID: 53826 RVA: 0x00300880 File Offset: 0x002FEA80
|
||||
[Token(Token = "0x600D242")]
|
||||
[Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")]
|
||||
public UriComparer()
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,390 @@
|
||||
using System;
|
||||
using BestHTTP.Logger;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP
|
||||
{
|
||||
// Token: 0x0200196B RID: 6507
|
||||
[Token(Token = "0x200196B")]
|
||||
internal abstract class ConnectionBase : IDisposable
|
||||
{
|
||||
// Token: 0x170017CC RID: 6092
|
||||
// (get) Token: 0x060096B7 RID: 38583 RVA: 0x001EA884 File Offset: 0x001E8A84
|
||||
// (set) Token: 0x060096B8 RID: 38584 RVA: 0x001EA898 File Offset: 0x001E8A98
|
||||
[Token(Token = "0x170017CC")]
|
||||
public string ServerAddress
|
||||
{
|
||||
[Token(Token = "0x60096B7")]
|
||||
[Address(RVA = "0x411530", Offset = "0x410530", VA = "0x180411530")]
|
||||
get;
|
||||
[Token(Token = "0x60096B8")]
|
||||
[Address(RVA = "0x415800", Offset = "0x414800", VA = "0x180415800")]
|
||||
protected set;
|
||||
}
|
||||
|
||||
// Token: 0x170017CD RID: 6093
|
||||
// (get) Token: 0x060096B9 RID: 38585 RVA: 0x001EA8AC File Offset: 0x001E8AAC
|
||||
// (set) Token: 0x060096BA RID: 38586 RVA: 0x001EA8C0 File Offset: 0x001E8AC0
|
||||
[Token(Token = "0x170017CD")]
|
||||
public HTTPConnectionStates State
|
||||
{
|
||||
[Token(Token = "0x60096B9")]
|
||||
[Address(RVA = "0x411540", Offset = "0x410540", VA = "0x180411540")]
|
||||
get;
|
||||
[Token(Token = "0x60096BA")]
|
||||
[Address(RVA = "0x5F1910", Offset = "0x5F0910", VA = "0x1805F1910")]
|
||||
protected set;
|
||||
}
|
||||
|
||||
// Token: 0x170017CE RID: 6094
|
||||
// (get) Token: 0x060096BB RID: 38587 RVA: 0x001EA8D4 File Offset: 0x001E8AD4
|
||||
[Token(Token = "0x170017CE")]
|
||||
public bool IsFree
|
||||
{
|
||||
[Token(Token = "0x60096BB")]
|
||||
[Address(RVA = "0x2405B30", Offset = "0x2404B30", VA = "0x182405B30")]
|
||||
get
|
||||
{
|
||||
HTTPConnectionStates httpconnectionStates = this.<State>k__BackingField;
|
||||
return httpconnectionStates == HTTPConnectionStates.Initial || httpconnectionStates == HTTPConnectionStates.Free;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x170017CF RID: 6095
|
||||
// (get) Token: 0x060096BC RID: 38588 RVA: 0x001EA8F4 File Offset: 0x001E8AF4
|
||||
[Token(Token = "0x170017CF")]
|
||||
public bool IsActive
|
||||
{
|
||||
[Token(Token = "0x60096BC")]
|
||||
[Address(RVA = "0x2405B10", Offset = "0x2404B10", VA = "0x182405B10")]
|
||||
get
|
||||
{
|
||||
HTTPConnectionStates httpconnectionStates = this.<State>k__BackingField;
|
||||
return 0 < 6;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x170017D0 RID: 6096
|
||||
// (get) Token: 0x060096BD RID: 38589 RVA: 0x001EA90C File Offset: 0x001E8B0C
|
||||
// (set) Token: 0x060096BE RID: 38590 RVA: 0x001EA920 File Offset: 0x001E8B20
|
||||
[Token(Token = "0x170017D0")]
|
||||
public HTTPRequest CurrentRequest
|
||||
{
|
||||
[Token(Token = "0x60096BD")]
|
||||
[Address(RVA = "0x4157C0", Offset = "0x4147C0", VA = "0x1804157C0")]
|
||||
get;
|
||||
[Token(Token = "0x60096BE")]
|
||||
[Address(RVA = "0x415810", Offset = "0x414810", VA = "0x180415810")]
|
||||
protected set;
|
||||
}
|
||||
|
||||
// Token: 0x170017D1 RID: 6097
|
||||
// (get) Token: 0x060096BF RID: 38591 RVA: 0x001EA934 File Offset: 0x001E8B34
|
||||
[Token(Token = "0x170017D1")]
|
||||
public virtual bool IsRemovable
|
||||
{
|
||||
[Token(Token = "0x60096BF")]
|
||||
[Address(RVA = "0x2405B50", Offset = "0x2404B50", VA = "0x182405B50", 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: 0x170017D2 RID: 6098
|
||||
// (get) Token: 0x060096C0 RID: 38592 RVA: 0x001EA97C File Offset: 0x001E8B7C
|
||||
// (set) Token: 0x060096C1 RID: 38593 RVA: 0x001EA990 File Offset: 0x001E8B90
|
||||
[Token(Token = "0x170017D2")]
|
||||
public DateTime StartTime
|
||||
{
|
||||
[Token(Token = "0x60096C0")]
|
||||
[Address(RVA = "0x4157D0", Offset = "0x4147D0", VA = "0x1804157D0")]
|
||||
get;
|
||||
[Token(Token = "0x60096C1")]
|
||||
[Address(RVA = "0x415820", Offset = "0x414820", VA = "0x180415820")]
|
||||
protected set;
|
||||
}
|
||||
|
||||
// Token: 0x170017D3 RID: 6099
|
||||
// (get) Token: 0x060096C2 RID: 38594 RVA: 0x001EA9A4 File Offset: 0x001E8BA4
|
||||
// (set) Token: 0x060096C3 RID: 38595 RVA: 0x001EA9B8 File Offset: 0x001E8BB8
|
||||
[Token(Token = "0x170017D3")]
|
||||
public DateTime TimedOutStart
|
||||
{
|
||||
[Token(Token = "0x60096C2")]
|
||||
[Address(RVA = "0x4157E0", Offset = "0x4147E0", VA = "0x1804157E0")]
|
||||
get;
|
||||
[Token(Token = "0x60096C3")]
|
||||
[Address(RVA = "0x415830", Offset = "0x414830", VA = "0x180415830")]
|
||||
protected set;
|
||||
}
|
||||
|
||||
// Token: 0x170017D4 RID: 6100
|
||||
// (get) Token: 0x060096C4 RID: 38596 RVA: 0x001EA9CC File Offset: 0x001E8BCC
|
||||
[Token(Token = "0x170017D4")]
|
||||
public bool HasProxy
|
||||
{
|
||||
[Token(Token = "0x60096C4")]
|
||||
[Address(RVA = "0x2405AF0", Offset = "0x2404AF0", VA = "0x182405AF0")]
|
||||
get
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (060096C4)
|
||||
|
||||
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: 0x170017D5 RID: 6101
|
||||
// (get) Token: 0x060096C5 RID: 38597 RVA: 0x001EA9E4 File Offset: 0x001E8BE4
|
||||
// (set) Token: 0x060096C6 RID: 38598 RVA: 0x001EA9F8 File Offset: 0x001E8BF8
|
||||
[Token(Token = "0x170017D5")]
|
||||
public Uri LastProcessedUri
|
||||
{
|
||||
[Token(Token = "0x60096C5")]
|
||||
[Address(RVA = "0x41CEF0", Offset = "0x41BEF0", VA = "0x18041CEF0")]
|
||||
get;
|
||||
[Token(Token = "0x60096C6")]
|
||||
[Address(RVA = "0x41CFF0", Offset = "0x41BFF0", VA = "0x18041CFF0")]
|
||||
protected set;
|
||||
}
|
||||
|
||||
// Token: 0x060096C7 RID: 38599 RVA: 0x001EAA0C File Offset: 0x001E8C0C
|
||||
[Token(Token = "0x60096C7")]
|
||||
[Address(RVA = "0x24059E0", Offset = "0x24049E0", VA = "0x1824059E0")]
|
||||
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: 0x060096C8 RID: 38600 RVA: 0x001EAA48 File Offset: 0x001E8C48
|
||||
[Token(Token = "0x60096C8")]
|
||||
[Address(RVA = "0x2405A60", Offset = "0x2404A60", VA = "0x182405A60")]
|
||||
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: 0x060096C9 RID: 38601
|
||||
[Token(Token = "0x60096C9")]
|
||||
[Address(Slot = "6")]
|
||||
internal abstract void Abort(HTTPConnectionStates hTTPConnectionStates);
|
||||
|
||||
// Token: 0x060096CA RID: 38602 RVA: 0x001EAA84 File Offset: 0x001E8C84
|
||||
[Token(Token = "0x60096CA")]
|
||||
[Address(RVA = "0x2405760", Offset = "0x2404760", VA = "0x182405760")]
|
||||
internal void Process(HTTPRequest request)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (060096CA)
|
||||
|
||||
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: 0x060096CB RID: 38603 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x60096CB")]
|
||||
[Address(RVA = "0x4242D0", Offset = "0x4232D0", VA = "0x1804242D0", Slot = "7")]
|
||||
protected virtual void ThreadFunc(object param)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x060096CC RID: 38604 RVA: 0x001EAAE0 File Offset: 0x001E8CE0
|
||||
[Token(Token = "0x60096CC")]
|
||||
[Address(RVA = "0x2405520", Offset = "0x2404520", VA = "0x182405520")]
|
||||
internal void HandleProgressCallback()
|
||||
{
|
||||
ILogger logger = HTTPManager.Logger;
|
||||
ILogger logger2 = HTTPManager.Logger;
|
||||
this.<CurrentRequest>k__BackingField.<UploadProgressChanged>k__BackingField = false;
|
||||
}
|
||||
|
||||
// Token: 0x060096CD RID: 38605 RVA: 0x001EAB2C File Offset: 0x001E8D2C
|
||||
[Token(Token = "0x60096CD")]
|
||||
[Address(RVA = "0x2405420", Offset = "0x2404420", VA = "0x182405420")]
|
||||
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: 0x060096CE RID: 38606 RVA: 0x001EAB90 File Offset: 0x001E8D90
|
||||
[Token(Token = "0x60096CE")]
|
||||
[Address(RVA = "0x2405920", Offset = "0x2404920", VA = "0x182405920")]
|
||||
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: 0x060096CF RID: 38607 RVA: 0x001EABF0 File Offset: 0x001E8DF0
|
||||
[Token(Token = "0x60096CF")]
|
||||
[Address(RVA = "0x2405870", Offset = "0x2404870", VA = "0x182405870")]
|
||||
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: 0x170017D6 RID: 6102
|
||||
// (get) Token: 0x060096D0 RID: 38608 RVA: 0x001EAC54 File Offset: 0x001E8E54
|
||||
// (set) Token: 0x060096D1 RID: 38609 RVA: 0x001EAC68 File Offset: 0x001E8E68
|
||||
[Token(Token = "0x170017D6")]
|
||||
private protected bool IsDisposed
|
||||
{
|
||||
[Token(Token = "0x60096D0")]
|
||||
[Address(RVA = "0x794070", Offset = "0x793070", VA = "0x180794070")]
|
||||
protected get;
|
||||
[Token(Token = "0x60096D1")]
|
||||
[Address(RVA = "0x7937C0", Offset = "0x7927C0", VA = "0x1807937C0")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x060096D2 RID: 38610 RVA: 0x001EAC7C File Offset: 0x001E8E7C
|
||||
[Token(Token = "0x60096D2")]
|
||||
[Address(RVA = "0x2405330", Offset = "0x2404330", VA = "0x182405330", Slot = "4")]
|
||||
public void Dispose()
|
||||
{
|
||||
GC.SuppressFinalize(this);
|
||||
}
|
||||
|
||||
// Token: 0x060096D3 RID: 38611 RVA: 0x001EAC90 File Offset: 0x001E8E90
|
||||
[Token(Token = "0x60096D3")]
|
||||
[Address(RVA = "0x2405320", Offset = "0x2404320", VA = "0x182405320", Slot = "8")]
|
||||
protected virtual void Dispose(bool disposing)
|
||||
{
|
||||
this.<IsDisposed>k__BackingField = true;
|
||||
}
|
||||
|
||||
// Token: 0x060096D4 RID: 38612 RVA: 0x001EACA4 File Offset: 0x001E8EA4
|
||||
[Token(Token = "0x60096D4")]
|
||||
[Address(RVA = "0x24053A0", Offset = "0x24043A0", VA = "0x1824053A0", 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: 0x0400662D RID: 26157
|
||||
[FieldOffset(Offset = "0x40")]
|
||||
[Token(Token = "0x400662D")]
|
||||
protected DateTime LastProcessTime;
|
||||
|
||||
// Token: 0x0400662E RID: 26158
|
||||
[FieldOffset(Offset = "0x48")]
|
||||
[Token(Token = "0x400662E")]
|
||||
protected HTTPConnectionRecycledDelegate OnConnectionRecycled;
|
||||
|
||||
// Token: 0x0400662F RID: 26159
|
||||
[FieldOffset(Offset = "0x50")]
|
||||
[Token(Token = "0x400662F")]
|
||||
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: 0x0200209E RID: 8350
|
||||
[Token(Token = "0x200209E")]
|
||||
public sealed class Cookie : IComparable<Cookie>, IEquatable<Cookie>
|
||||
{
|
||||
// Token: 0x17002161 RID: 8545
|
||||
// (get) Token: 0x0600D1CD RID: 53709 RVA: 0x002FEA30 File Offset: 0x002FCC30
|
||||
// (set) Token: 0x0600D1CE RID: 53710 RVA: 0x002FEA44 File Offset: 0x002FCC44
|
||||
[Token(Token = "0x17002161")]
|
||||
public string Name
|
||||
{
|
||||
[Token(Token = "0x600D1CD")]
|
||||
[Address(RVA = "0x411530", Offset = "0x410530", VA = "0x180411530")]
|
||||
get;
|
||||
[Token(Token = "0x600D1CE")]
|
||||
[Address(RVA = "0x415800", Offset = "0x414800", VA = "0x180415800")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x17002162 RID: 8546
|
||||
// (get) Token: 0x0600D1CF RID: 53711 RVA: 0x002FEA58 File Offset: 0x002FCC58
|
||||
// (set) Token: 0x0600D1D0 RID: 53712 RVA: 0x002FEA6C File Offset: 0x002FCC6C
|
||||
[Token(Token = "0x17002162")]
|
||||
public string Value
|
||||
{
|
||||
[Token(Token = "0x600D1CF")]
|
||||
[Address(RVA = "0x4157B0", Offset = "0x4147B0", VA = "0x1804157B0")]
|
||||
get;
|
||||
[Token(Token = "0x600D1D0")]
|
||||
[Address(RVA = "0x4157F0", Offset = "0x4147F0", VA = "0x1804157F0")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x17002163 RID: 8547
|
||||
// (get) Token: 0x0600D1D1 RID: 53713 RVA: 0x002FEA80 File Offset: 0x002FCC80
|
||||
// (set) Token: 0x0600D1D2 RID: 53714 RVA: 0x002FEA94 File Offset: 0x002FCC94
|
||||
[Token(Token = "0x17002163")]
|
||||
public DateTime Date
|
||||
{
|
||||
[Token(Token = "0x600D1D1")]
|
||||
[Address(RVA = "0x4157C0", Offset = "0x4147C0", VA = "0x1804157C0")]
|
||||
get;
|
||||
[Token(Token = "0x600D1D2")]
|
||||
[Address(RVA = "0x415810", Offset = "0x414810", VA = "0x180415810")]
|
||||
internal set;
|
||||
}
|
||||
|
||||
// Token: 0x17002164 RID: 8548
|
||||
// (get) Token: 0x0600D1D3 RID: 53715 RVA: 0x002FEAA8 File Offset: 0x002FCCA8
|
||||
// (set) Token: 0x0600D1D4 RID: 53716 RVA: 0x002FEABC File Offset: 0x002FCCBC
|
||||
[Token(Token = "0x17002164")]
|
||||
public DateTime LastAccess
|
||||
{
|
||||
[Token(Token = "0x600D1D3")]
|
||||
[Address(RVA = "0x4157D0", Offset = "0x4147D0", VA = "0x1804157D0")]
|
||||
get;
|
||||
[Token(Token = "0x600D1D4")]
|
||||
[Address(RVA = "0x415820", Offset = "0x414820", VA = "0x180415820")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17002165 RID: 8549
|
||||
// (get) Token: 0x0600D1D5 RID: 53717 RVA: 0x002FEAD0 File Offset: 0x002FCCD0
|
||||
// (set) Token: 0x0600D1D6 RID: 53718 RVA: 0x002FEAE4 File Offset: 0x002FCCE4
|
||||
[Token(Token = "0x17002165")]
|
||||
public DateTime Expires
|
||||
{
|
||||
[Token(Token = "0x600D1D5")]
|
||||
[Address(RVA = "0x4157E0", Offset = "0x4147E0", VA = "0x1804157E0")]
|
||||
get;
|
||||
[Token(Token = "0x600D1D6")]
|
||||
[Address(RVA = "0x415830", Offset = "0x414830", VA = "0x180415830")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x17002166 RID: 8550
|
||||
// (get) Token: 0x0600D1D7 RID: 53719 RVA: 0x002FEAF8 File Offset: 0x002FCCF8
|
||||
// (set) Token: 0x0600D1D8 RID: 53720 RVA: 0x002FEB0C File Offset: 0x002FCD0C
|
||||
[Token(Token = "0x17002166")]
|
||||
public long MaxAge
|
||||
{
|
||||
[Token(Token = "0x600D1D7")]
|
||||
[Address(RVA = "0x41CEF0", Offset = "0x41BEF0", VA = "0x18041CEF0")]
|
||||
get;
|
||||
[Token(Token = "0x600D1D8")]
|
||||
[Address(RVA = "0x41CFF0", Offset = "0x41BFF0", VA = "0x18041CFF0")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x17002167 RID: 8551
|
||||
// (get) Token: 0x0600D1D9 RID: 53721 RVA: 0x002FEB20 File Offset: 0x002FCD20
|
||||
// (set) Token: 0x0600D1DA RID: 53722 RVA: 0x002FEB34 File Offset: 0x002FCD34
|
||||
[Token(Token = "0x17002167")]
|
||||
public bool IsSession
|
||||
{
|
||||
[Token(Token = "0x600D1D9")]
|
||||
[Address(RVA = "0x41CF00", Offset = "0x41BF00", VA = "0x18041CF00")]
|
||||
get;
|
||||
[Token(Token = "0x600D1DA")]
|
||||
[Address(RVA = "0x41D000", Offset = "0x41C000", VA = "0x18041D000")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x17002168 RID: 8552
|
||||
// (get) Token: 0x0600D1DB RID: 53723 RVA: 0x002FEB48 File Offset: 0x002FCD48
|
||||
// (set) Token: 0x0600D1DC RID: 53724 RVA: 0x002FEB5C File Offset: 0x002FCD5C
|
||||
[Token(Token = "0x17002168")]
|
||||
public string Domain
|
||||
{
|
||||
[Token(Token = "0x600D1DB")]
|
||||
[Address(RVA = "0x4975A0", Offset = "0x4965A0", VA = "0x1804975A0")]
|
||||
get;
|
||||
[Token(Token = "0x600D1DC")]
|
||||
[Address(RVA = "0x55BCF0", Offset = "0x55ACF0", VA = "0x18055BCF0")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x17002169 RID: 8553
|
||||
// (get) Token: 0x0600D1DD RID: 53725 RVA: 0x002FEB70 File Offset: 0x002FCD70
|
||||
// (set) Token: 0x0600D1DE RID: 53726 RVA: 0x002FEB84 File Offset: 0x002FCD84
|
||||
[Token(Token = "0x17002169")]
|
||||
public string Path
|
||||
{
|
||||
[Token(Token = "0x600D1DD")]
|
||||
[Address(RVA = "0x4936E0", Offset = "0x4926E0", VA = "0x1804936E0")]
|
||||
get;
|
||||
[Token(Token = "0x600D1DE")]
|
||||
[Address(RVA = "0x55BCE0", Offset = "0x55ACE0", VA = "0x18055BCE0")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x1700216A RID: 8554
|
||||
// (get) Token: 0x0600D1DF RID: 53727 RVA: 0x002FEB98 File Offset: 0x002FCD98
|
||||
// (set) Token: 0x0600D1E0 RID: 53728 RVA: 0x002FEBAC File Offset: 0x002FCDAC
|
||||
[Token(Token = "0x1700216A")]
|
||||
public bool IsSecure
|
||||
{
|
||||
[Token(Token = "0x600D1DF")]
|
||||
[Address(RVA = "0x51F220", Offset = "0x51E220", VA = "0x18051F220")]
|
||||
get;
|
||||
[Token(Token = "0x600D1E0")]
|
||||
[Address(RVA = "0x51DB50", Offset = "0x51CB50", VA = "0x18051DB50")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x1700216B RID: 8555
|
||||
// (get) Token: 0x0600D1E1 RID: 53729 RVA: 0x002FEBC0 File Offset: 0x002FCDC0
|
||||
// (set) Token: 0x0600D1E2 RID: 53730 RVA: 0x002FEBD4 File Offset: 0x002FCDD4
|
||||
[Token(Token = "0x1700216B")]
|
||||
public bool IsHttpOnly
|
||||
{
|
||||
[Token(Token = "0x600D1E1")]
|
||||
[Address(RVA = "0x538C50", Offset = "0x537C50", VA = "0x180538C50")]
|
||||
get;
|
||||
[Token(Token = "0x600D1E2")]
|
||||
[Address(RVA = "0x6A46A0", Offset = "0x6A36A0", VA = "0x1806A46A0")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x0600D1E3 RID: 53731 RVA: 0x002FEBE8 File Offset: 0x002FCDE8
|
||||
[Token(Token = "0x600D1E3")]
|
||||
[Address(RVA = "0x2409B10", Offset = "0x2408B10", VA = "0x182409B10")]
|
||||
public Cookie(string name, string value)
|
||||
{
|
||||
string empty = string.Empty;
|
||||
}
|
||||
|
||||
// Token: 0x0600D1E4 RID: 53732 RVA: 0x002FEBFC File Offset: 0x002FCDFC
|
||||
[Token(Token = "0x600D1E4")]
|
||||
[Address(RVA = "0x2409E00", Offset = "0x2408E00", VA = "0x182409E00")]
|
||||
public Cookie(string name, string value, string path)
|
||||
{
|
||||
string empty = string.Empty;
|
||||
}
|
||||
|
||||
// Token: 0x0600D1E5 RID: 53733 RVA: 0x002FEC10 File Offset: 0x002FCE10
|
||||
[Token(Token = "0x600D1E5")]
|
||||
[Address(RVA = "0x2409D50", Offset = "0x2408D50", VA = "0x182409D50")]
|
||||
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: 0x0600D1E6 RID: 53734 RVA: 0x002FEC64 File Offset: 0x002FCE64
|
||||
[Token(Token = "0x600D1E6")]
|
||||
[Address(RVA = "0x2409B90", Offset = "0x2408B90", VA = "0x182409B90")]
|
||||
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: 0x0600D1E7 RID: 53735 RVA: 0x002FECA4 File Offset: 0x002FCEA4
|
||||
[Token(Token = "0x600D1E7")]
|
||||
[Address(RVA = "0x2409C70", Offset = "0x2408C70", VA = "0x182409C70")]
|
||||
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: 0x0600D1E8 RID: 53736 RVA: 0x002FECE4 File Offset: 0x002FCEE4
|
||||
[Token(Token = "0x600D1E8")]
|
||||
[Address(RVA = "0x2409E80", Offset = "0x2408E80", VA = "0x182409E80")]
|
||||
internal Cookie()
|
||||
{
|
||||
this.IsSession = true;
|
||||
this.MaxAge = (long)((ulong)(-1L));
|
||||
DateTime utcNow = DateTime.UtcNow;
|
||||
this.LastAccess = utcNow;
|
||||
}
|
||||
|
||||
// Token: 0x0600D1E9 RID: 53737 RVA: 0x002FED18 File Offset: 0x002FCF18
|
||||
[Token(Token = "0x600D1E9")]
|
||||
[Address(RVA = "0x2409A00", Offset = "0x2408A00", VA = "0x182409A00")]
|
||||
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: 0x0600D1EA RID: 53738 RVA: 0x002FED78 File Offset: 0x002FCF78
|
||||
[Token(Token = "0x600D1EA")]
|
||||
[Address(RVA = "0x2408BC0", Offset = "0x2407BC0", VA = "0x182408BC0")]
|
||||
public uint GuessSize()
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D1EA)
|
||||
|
||||
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: 0x0600D1EB RID: 53739 RVA: 0x002FEE0C File Offset: 0x002FD00C
|
||||
[Token(Token = "0x600D1EB")]
|
||||
[Address(RVA = "0x2408FB0", Offset = "0x2407FB0", VA = "0x182408FB0")]
|
||||
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: 0x0600D1EC RID: 53740 RVA: 0x002FF0BC File Offset: 0x002FD2BC
|
||||
[Token(Token = "0x600D1EC")]
|
||||
[Address(RVA = "0x24097C0", Offset = "0x24087C0", VA = "0x1824097C0")]
|
||||
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: 0x0600D1ED RID: 53741 RVA: 0x002FF180 File Offset: 0x002FD380
|
||||
[Token(Token = "0x600D1ED")]
|
||||
[Address(RVA = "0x2408C20", Offset = "0x2407C20", VA = "0x182408C20")]
|
||||
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: 0x0600D1EE RID: 53742 RVA: 0x002FF254 File Offset: 0x002FD454
|
||||
[Token(Token = "0x600D1EE")]
|
||||
[Address(RVA = "0x24099C0", Offset = "0x24089C0", VA = "0x1824099C0", Slot = "3")]
|
||||
public override string ToString()
|
||||
{
|
||||
string text = this.<Value>k__BackingField;
|
||||
return this.<Name>k__BackingField + "=" + text;
|
||||
}
|
||||
|
||||
// Token: 0x0600D1EF RID: 53743 RVA: 0x002FF27C File Offset: 0x002FD47C
|
||||
[Token(Token = "0x600D1EF")]
|
||||
[Address(RVA = "0x2408B50", Offset = "0x2407B50", VA = "0x182408B50", Slot = "0")]
|
||||
public override bool Equals(object obj)
|
||||
{
|
||||
if (obj != 0)
|
||||
{
|
||||
bool flag;
|
||||
return flag;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600D1F0 RID: 53744 RVA: 0x002FF290 File Offset: 0x002FD490
|
||||
[Token(Token = "0x600D1F0")]
|
||||
[Address(RVA = "0x2408A90", Offset = "0x2407A90", VA = "0x182408A90", 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: 0x0600D1F1 RID: 53745 RVA: 0x002FF31C File Offset: 0x002FD51C
|
||||
[Token(Token = "0x600D1F1")]
|
||||
[Address(RVA = "0x8A4D10", Offset = "0x8A3D10", VA = "0x1808A4D10", Slot = "2")]
|
||||
public override int GetHashCode()
|
||||
{
|
||||
TypeCode typeCode = ((IConvertible)this.GetHashCode()).GetTypeCode();
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600D1F2 RID: 53746 RVA: 0x002FF33C File Offset: 0x002FD53C
|
||||
[Token(Token = "0x600D1F2")]
|
||||
[Address(RVA = "0x2409730", Offset = "0x2408730", VA = "0x182409730")]
|
||||
private static string ReadValue(string str, ref int pos)
|
||||
{
|
||||
string empty = string.Empty;
|
||||
if (str != 0)
|
||||
{
|
||||
}
|
||||
return empty;
|
||||
}
|
||||
|
||||
// Token: 0x0600D1F3 RID: 53747 RVA: 0x002FF354 File Offset: 0x002FD554
|
||||
[Token(Token = "0x600D1F3")]
|
||||
[Address(RVA = "0x2408DC0", Offset = "0x2407DC0", VA = "0x182408DC0")]
|
||||
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: 0x0600D1F4 RID: 53748 RVA: 0x002FF3DC File Offset: 0x002FD5DC
|
||||
[Token(Token = "0x600D1F4")]
|
||||
[Address(RVA = "0x2408A60", Offset = "0x2407A60", VA = "0x182408A60", Slot = "4")]
|
||||
public int CompareTo(Cookie other)
|
||||
{
|
||||
DateTime dateTime = this.<LastAccess>k__BackingField;
|
||||
DateTime dateTime2 = other.<LastAccess>k__BackingField;
|
||||
int num;
|
||||
return num;
|
||||
}
|
||||
|
||||
// Token: 0x04008593 RID: 34195
|
||||
[Token(Token = "0x4008593")]
|
||||
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: 0x020020A0 RID: 8352
|
||||
[Token(Token = "0x20020A0")]
|
||||
public static class CookieJar
|
||||
{
|
||||
// Token: 0x1700216C RID: 8556
|
||||
// (get) Token: 0x0600D1F8 RID: 53752 RVA: 0x002FF43C File Offset: 0x002FD63C
|
||||
[Token(Token = "0x1700216C")]
|
||||
public static bool IsSavingSupported
|
||||
{
|
||||
[Token(Token = "0x600D1F8")]
|
||||
[Address(RVA = "0x2408650", Offset = "0x2407650", VA = "0x182408650")]
|
||||
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: 0x1700216D RID: 8557
|
||||
// (get) Token: 0x0600D1F9 RID: 53753 RVA: 0x002FF480 File Offset: 0x002FD680
|
||||
// (set) Token: 0x0600D1FA RID: 53754 RVA: 0x002FF494 File Offset: 0x002FD694
|
||||
[Token(Token = "0x1700216D")]
|
||||
private static string CookieFolder
|
||||
{
|
||||
[Token(Token = "0x600D1F9")]
|
||||
[Address(RVA = "0x2408590", Offset = "0x2407590", VA = "0x182408590")]
|
||||
get;
|
||||
[Token(Token = "0x600D1FA")]
|
||||
[Address(RVA = "0x24089A0", Offset = "0x24079A0", VA = "0x1824089A0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x1700216E RID: 8558
|
||||
// (get) Token: 0x0600D1FB RID: 53755 RVA: 0x002FF4A8 File Offset: 0x002FD6A8
|
||||
// (set) Token: 0x0600D1FC RID: 53756 RVA: 0x002FF4BC File Offset: 0x002FD6BC
|
||||
[Token(Token = "0x1700216E")]
|
||||
private static string LibraryPath
|
||||
{
|
||||
[Token(Token = "0x600D1FB")]
|
||||
[Address(RVA = "0x24088E0", Offset = "0x24078E0", VA = "0x1824088E0")]
|
||||
get;
|
||||
[Token(Token = "0x600D1FC")]
|
||||
[Address(RVA = "0x2408A00", Offset = "0x2407A00", VA = "0x182408A00")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x0600D1FD RID: 53757 RVA: 0x002FF4D0 File Offset: 0x002FD6D0
|
||||
[Token(Token = "0x600D1FD")]
|
||||
[Address(RVA = "0x2408220", Offset = "0x2407220", VA = "0x182408220")]
|
||||
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: 0x0600D1FE RID: 53758 RVA: 0x002FF524 File Offset: 0x002FD724
|
||||
[Token(Token = "0x600D1FE")]
|
||||
[Address(RVA = "0x2407DB0", Offset = "0x2406DB0", VA = "0x182407DB0")]
|
||||
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: 0x0600D1FF RID: 53759 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600D1FF")]
|
||||
[Address(RVA = "0x2406D90", Offset = "0x2405D90", VA = "0x182406D90")]
|
||||
internal static void Maintain()
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x0600D200 RID: 53760 RVA: 0x002FF634 File Offset: 0x002FD834
|
||||
[Token(Token = "0x600D200")]
|
||||
[Address(RVA = "0x2407260", Offset = "0x2406260", VA = "0x182407260")]
|
||||
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: 0x0600D201 RID: 53761 RVA: 0x002FF73C File Offset: 0x002FD93C
|
||||
[Token(Token = "0x600D201")]
|
||||
[Address(RVA = "0x24066E0", Offset = "0x24056E0", VA = "0x1824066E0")]
|
||||
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: 0x0600D202 RID: 53762 RVA: 0x002FF854 File Offset: 0x002FDA54
|
||||
[Token(Token = "0x600D202")]
|
||||
[Address(RVA = "0x2406460", Offset = "0x2405460", VA = "0x182406460")]
|
||||
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: 0x0600D203 RID: 53763 RVA: 0x002FF8EC File Offset: 0x002FDAEC
|
||||
[Token(Token = "0x600D203")]
|
||||
[Address(RVA = "0x2407B90", Offset = "0x2406B90", VA = "0x182407B90")]
|
||||
public static void Set(Uri uri, Cookie cookie)
|
||||
{
|
||||
CookieJar.Set(cookie);
|
||||
}
|
||||
|
||||
// Token: 0x0600D204 RID: 53764 RVA: 0x002FF900 File Offset: 0x002FDB00
|
||||
[Token(Token = "0x600D204")]
|
||||
[Address(RVA = "0x2407BF0", Offset = "0x2406BF0", VA = "0x182407BF0")]
|
||||
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: 0x0600D205 RID: 53765 RVA: 0x002FF944 File Offset: 0x002FDB44
|
||||
[Token(Token = "0x600D205")]
|
||||
[Address(RVA = "0x2406350", Offset = "0x2405350", VA = "0x182406350")]
|
||||
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: 0x0600D206 RID: 53766 RVA: 0x002FF974 File Offset: 0x002FDB74
|
||||
[Token(Token = "0x600D206")]
|
||||
[Address(RVA = "0x2405C70", Offset = "0x2404C70", VA = "0x182405C70")]
|
||||
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: 0x0600D207 RID: 53767 RVA: 0x002FF9AC File Offset: 0x002FDBAC
|
||||
[Token(Token = "0x600D207")]
|
||||
[Address(RVA = "0x2405D90", Offset = "0x2404D90", VA = "0x182405D90")]
|
||||
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: 0x0600D208 RID: 53768 RVA: 0x002FFA28 File Offset: 0x002FDC28
|
||||
[Token(Token = "0x600D208")]
|
||||
[Address(RVA = "0x2406000", Offset = "0x2405000", VA = "0x182406000")]
|
||||
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: 0x0600D209 RID: 53769 RVA: 0x002FFA94 File Offset: 0x002FDC94
|
||||
[Token(Token = "0x600D209")]
|
||||
[Address(RVA = "0x2407910", Offset = "0x2406910", VA = "0x182407910")]
|
||||
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: 0x0600D20A RID: 53770 RVA: 0x002FFB24 File Offset: 0x002FDD24
|
||||
[Token(Token = "0x600D20A")]
|
||||
[Address(RVA = "0x2406240", Offset = "0x2405240", VA = "0x182406240")]
|
||||
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: 0x0600D20B RID: 53771 RVA: 0x002FFB5C File Offset: 0x002FDD5C
|
||||
// Note: this type is marked as 'beforefieldinit'.
|
||||
[Token(Token = "0x600D20B")]
|
||||
[Address(RVA = "0x24084D0", Offset = "0x24074D0", VA = "0x1824084D0")]
|
||||
static CookieJar()
|
||||
{
|
||||
TimeSpan timeSpan;
|
||||
CookieJar.AccessThreshold = timeSpan;
|
||||
CookieJar.Cookies = new List();
|
||||
CookieJar.Locker = new object();
|
||||
}
|
||||
|
||||
// Token: 0x040085A1 RID: 34209
|
||||
[Token(Token = "0x40085A1")]
|
||||
private const int Version = 1;
|
||||
|
||||
// Token: 0x040085A2 RID: 34210
|
||||
[Token(Token = "0x40085A2")]
|
||||
public static TimeSpan AccessThreshold;
|
||||
|
||||
// Token: 0x040085A3 RID: 34211
|
||||
[Token(Token = "0x40085A3")]
|
||||
private static List<Cookie> Cookies;
|
||||
|
||||
// Token: 0x040085A6 RID: 34214
|
||||
[Token(Token = "0x40085A6")]
|
||||
private static object Locker;
|
||||
|
||||
// Token: 0x040085A7 RID: 34215
|
||||
[Token(Token = "0x40085A7")]
|
||||
private static bool _isSavingSupported;
|
||||
|
||||
// Token: 0x040085A8 RID: 34216
|
||||
[Token(Token = "0x40085A8")]
|
||||
private static bool IsSupportCheckDone;
|
||||
|
||||
// Token: 0x040085A9 RID: 34217
|
||||
[Token(Token = "0x40085A9")]
|
||||
private static bool Loaded;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,482 @@
|
||||
using System;
|
||||
using System.IO;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Decompression.Crc
|
||||
{
|
||||
// Token: 0x0200209D RID: 8349
|
||||
[Token(Token = "0x200209D")]
|
||||
internal class CRC32
|
||||
{
|
||||
// Token: 0x1700215F RID: 8543
|
||||
// (get) Token: 0x0600D1BA RID: 53690 RVA: 0x002FE4F0 File Offset: 0x002FC6F0
|
||||
[Token(Token = "0x1700215F")]
|
||||
public long TotalBytesRead
|
||||
{
|
||||
[Token(Token = "0x600D1BA")]
|
||||
[Address(RVA = "0x4157B0", Offset = "0x4147B0", VA = "0x1804157B0")]
|
||||
get
|
||||
{
|
||||
return this._TotalBytesRead;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17002160 RID: 8544
|
||||
// (get) Token: 0x0600D1BB RID: 53691 RVA: 0x002FE504 File Offset: 0x002FC704
|
||||
[Token(Token = "0x17002160")]
|
||||
public int Crc32Result
|
||||
{
|
||||
[Token(Token = "0x600D1BB")]
|
||||
[Address(RVA = "0xF9F390", Offset = "0xF9E390", VA = "0x180F9F390")]
|
||||
get
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D1BB)
|
||||
|
||||
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: 0x0600D1BC RID: 53692 RVA: 0x002FE518 File Offset: 0x002FC718
|
||||
[Token(Token = "0x600D1BC")]
|
||||
[Address(RVA = "0x2404810", Offset = "0x2403810", VA = "0x182404810")]
|
||||
public int GetCrc32(Stream input)
|
||||
{
|
||||
int num = 0;
|
||||
return this.GetCrc32AndCopy(input, num);
|
||||
}
|
||||
|
||||
// Token: 0x0600D1BD RID: 53693 RVA: 0x002FE530 File Offset: 0x002FC730
|
||||
[Token(Token = "0x600D1BD")]
|
||||
[Address(RVA = "0x2404580", Offset = "0x2403580", VA = "0x182404580")]
|
||||
public int GetCrc32AndCopy(Stream input, Stream output)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D1BD)
|
||||
|
||||
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_80:
|
||||
stloc:Exception(var_10_8A, 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: 0x0600D1BE RID: 53694 RVA: 0x002FE5C8 File Offset: 0x002FC7C8
|
||||
[Token(Token = "0x600D1BE")]
|
||||
[Address(RVA = "0xF9EBB0", Offset = "0xF9DBB0", VA = "0x180F9EBB0")]
|
||||
public int ComputeCrc32(int W, byte B)
|
||||
{
|
||||
uint num = this.crc32Table[W];
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600D1BF RID: 53695 RVA: 0x002FE5E8 File Offset: 0x002FC7E8
|
||||
[Token(Token = "0x600D1BF")]
|
||||
[Address(RVA = "0xF9EBB0", Offset = "0xF9DBB0", VA = "0x180F9EBB0")]
|
||||
internal int _InternalComputeCrc32(uint W, byte B)
|
||||
{
|
||||
uint num = this.crc32Table[(int)W];
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600D1C0 RID: 53696 RVA: 0x002FE608 File Offset: 0x002FC808
|
||||
[Token(Token = "0x600D1C0")]
|
||||
[Address(RVA = "0x2404830", Offset = "0x2403830", VA = "0x182404830")]
|
||||
public void SlurpBlock(byte[] block, int offset, int count)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D1C0)
|
||||
|
||||
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: 0x0600D1C1 RID: 53697 RVA: 0x002FE658 File Offset: 0x002FC858
|
||||
[Token(Token = "0x600D1C1")]
|
||||
[Address(RVA = "0x2404A60", Offset = "0x2403A60", VA = "0x182404A60")]
|
||||
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: 0x0600D1C2 RID: 53698 RVA: 0x002FE6A4 File Offset: 0x002FC8A4
|
||||
[Token(Token = "0x600D1C2")]
|
||||
[Address(RVA = "0x2404990", Offset = "0x2403990", VA = "0x182404990")]
|
||||
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: 0x0600D1C3 RID: 53699 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600D1C3")]
|
||||
[Address(RVA = "0xF9F000", Offset = "0xF9E000", VA = "0x180F9F000")]
|
||||
private static uint ReverseBits(uint data)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x0600D1C4 RID: 53700 RVA: 0x002FE6E8 File Offset: 0x002FC8E8
|
||||
[Token(Token = "0x600D1C4")]
|
||||
[Address(RVA = "0xF9F060", Offset = "0xF9E060", VA = "0x180F9F060")]
|
||||
private static byte ReverseBits(byte data)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D1C4)
|
||||
|
||||
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: 0x0600D1C5 RID: 53701 RVA: 0x002FE704 File Offset: 0x002FC904
|
||||
[Token(Token = "0x600D1C5")]
|
||||
[Address(RVA = "0x2404430", Offset = "0x2403430", VA = "0x182404430")]
|
||||
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: 0x0600D1C6 RID: 53702 RVA: 0x002FE78C File Offset: 0x002FC98C
|
||||
[Token(Token = "0x600D1C6")]
|
||||
[Address(RVA = "0xF9F460", Offset = "0xF9E460", VA = "0x180F9F460")]
|
||||
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: 0x0600D1C7 RID: 53703 RVA: 0x002FE7B4 File Offset: 0x002FC9B4
|
||||
[Token(Token = "0x600D1C7")]
|
||||
[Address(RVA = "0xF9F3A0", Offset = "0xF9E3A0", VA = "0x180F9F3A0")]
|
||||
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: 0x0600D1C8 RID: 53704 RVA: 0x002FE7EC File Offset: 0x002FC9EC
|
||||
[Token(Token = "0x600D1C8")]
|
||||
[Address(RVA = "0x2404010", Offset = "0x2403010", VA = "0x182404010")]
|
||||
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: 0x0600D1C9 RID: 53705 RVA: 0x002FE950 File Offset: 0x002FCB50
|
||||
[Token(Token = "0x600D1C9")]
|
||||
[Address(RVA = "0x2404C70", Offset = "0x2403C70", VA = "0x182404C70")]
|
||||
public CRC32()
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0600D1CA RID: 53706 RVA: 0x002FE960 File Offset: 0x002FCB60
|
||||
[Token(Token = "0x600D1CA")]
|
||||
[Address(RVA = "0x2404C80", Offset = "0x2403C80", VA = "0x182404C80")]
|
||||
public CRC32(bool reverseBits)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0600D1CB RID: 53707 RVA: 0x002FE970 File Offset: 0x002FCB70
|
||||
[Token(Token = "0x600D1CB")]
|
||||
[Address(RVA = "0x2404B00", Offset = "0x2403B00", VA = "0x182404B00")]
|
||||
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: 0x0600D1CC RID: 53708 RVA: 0x002FEA10 File Offset: 0x002FCC10
|
||||
[Token(Token = "0x600D1CC")]
|
||||
[Address(RVA = "0x2404820", Offset = "0x2403820", VA = "0x182404820")]
|
||||
public void Reset()
|
||||
{
|
||||
this._register = (uint)((ulong)4294967295L);
|
||||
}
|
||||
|
||||
// Token: 0x0400858D RID: 34189
|
||||
[FieldOffset(Offset = "0x10")]
|
||||
[Token(Token = "0x400858D")]
|
||||
private uint dwPolynomial;
|
||||
|
||||
// Token: 0x0400858E RID: 34190
|
||||
[FieldOffset(Offset = "0x18")]
|
||||
[Token(Token = "0x400858E")]
|
||||
private long _TotalBytesRead;
|
||||
|
||||
// Token: 0x0400858F RID: 34191
|
||||
[FieldOffset(Offset = "0x20")]
|
||||
[Token(Token = "0x400858F")]
|
||||
private bool reverseBits;
|
||||
|
||||
// Token: 0x04008590 RID: 34192
|
||||
[FieldOffset(Offset = "0x28")]
|
||||
[Token(Token = "0x4008590")]
|
||||
private uint[] crc32Table;
|
||||
|
||||
// Token: 0x04008591 RID: 34193
|
||||
[Token(Token = "0x4008591")]
|
||||
private const int BUFFER_SIZE = 8192;
|
||||
|
||||
// Token: 0x04008592 RID: 34194
|
||||
[FieldOffset(Offset = "0x30")]
|
||||
[Token(Token = "0x4008592")]
|
||||
private uint _register;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,59 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Decompression.Zlib
|
||||
{
|
||||
// Token: 0x02002097 RID: 8343
|
||||
[Token(Token = "0x2002097")]
|
||||
public sealed class Adler
|
||||
{
|
||||
// Token: 0x0600D18A RID: 53642 RVA: 0x002FD348 File Offset: 0x002FB548
|
||||
[Token(Token = "0x600D18A")]
|
||||
[Address(RVA = "0x2403B50", Offset = "0x2402B50", VA = "0x182403B50")]
|
||||
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: 0x0600D18B RID: 53643 RVA: 0x002FD3C4 File Offset: 0x002FB5C4
|
||||
[Token(Token = "0x600D18B")]
|
||||
[Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")]
|
||||
public Adler()
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x04008557 RID: 34135
|
||||
[Token(Token = "0x4008557")]
|
||||
private static readonly uint BASE;
|
||||
|
||||
// Token: 0x04008558 RID: 34136
|
||||
[Token(Token = "0x4008558")]
|
||||
private static readonly int NMAX;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Decompression.Zlib
|
||||
{
|
||||
// Token: 0x02002080 RID: 8320
|
||||
[Token(Token = "0x2002080")]
|
||||
internal enum BlockState
|
||||
{
|
||||
// Token: 0x04008447 RID: 33863
|
||||
[Token(Token = "0x4008447")]
|
||||
NeedMore,
|
||||
// Token: 0x04008448 RID: 33864
|
||||
[Token(Token = "0x4008448")]
|
||||
BlockDone,
|
||||
// Token: 0x04008449 RID: 33865
|
||||
[Token(Token = "0x4008449")]
|
||||
FinishStarted,
|
||||
// Token: 0x0400844A RID: 33866
|
||||
[Token(Token = "0x400844A")]
|
||||
FinishDone
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,53 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Decompression.Zlib
|
||||
{
|
||||
// Token: 0x02002090 RID: 8336
|
||||
[Token(Token = "0x2002090")]
|
||||
public enum CompressionLevel
|
||||
{
|
||||
// Token: 0x0400852E RID: 34094
|
||||
[Token(Token = "0x400852E")]
|
||||
None,
|
||||
// Token: 0x0400852F RID: 34095
|
||||
[Token(Token = "0x400852F")]
|
||||
Level0 = 0,
|
||||
// Token: 0x04008530 RID: 34096
|
||||
[Token(Token = "0x4008530")]
|
||||
BestSpeed,
|
||||
// Token: 0x04008531 RID: 34097
|
||||
[Token(Token = "0x4008531")]
|
||||
Level1 = 1,
|
||||
// Token: 0x04008532 RID: 34098
|
||||
[Token(Token = "0x4008532")]
|
||||
Level2,
|
||||
// Token: 0x04008533 RID: 34099
|
||||
[Token(Token = "0x4008533")]
|
||||
Level3,
|
||||
// Token: 0x04008534 RID: 34100
|
||||
[Token(Token = "0x4008534")]
|
||||
Level4,
|
||||
// Token: 0x04008535 RID: 34101
|
||||
[Token(Token = "0x4008535")]
|
||||
Level5,
|
||||
// Token: 0x04008536 RID: 34102
|
||||
[Token(Token = "0x4008536")]
|
||||
Default,
|
||||
// Token: 0x04008537 RID: 34103
|
||||
[Token(Token = "0x4008537")]
|
||||
Level6 = 6,
|
||||
// Token: 0x04008538 RID: 34104
|
||||
[Token(Token = "0x4008538")]
|
||||
Level7,
|
||||
// Token: 0x04008539 RID: 34105
|
||||
[Token(Token = "0x4008539")]
|
||||
Level8,
|
||||
// Token: 0x0400853A RID: 34106
|
||||
[Token(Token = "0x400853A")]
|
||||
BestCompression,
|
||||
// Token: 0x0400853B RID: 34107
|
||||
[Token(Token = "0x400853B")]
|
||||
Level9 = 9
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Decompression.Zlib
|
||||
{
|
||||
// Token: 0x02002092 RID: 8338
|
||||
[Token(Token = "0x2002092")]
|
||||
public enum CompressionMode
|
||||
{
|
||||
// Token: 0x04008541 RID: 34113
|
||||
[Token(Token = "0x4008541")]
|
||||
Compress,
|
||||
// Token: 0x04008542 RID: 34114
|
||||
[Token(Token = "0x4008542")]
|
||||
Decompress
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Decompression.Zlib
|
||||
{
|
||||
// Token: 0x02002091 RID: 8337
|
||||
[Token(Token = "0x2002091")]
|
||||
public enum CompressionStrategy
|
||||
{
|
||||
// Token: 0x0400853D RID: 34109
|
||||
[Token(Token = "0x400853D")]
|
||||
Default,
|
||||
// Token: 0x0400853E RID: 34110
|
||||
[Token(Token = "0x400853E")]
|
||||
Filtered,
|
||||
// Token: 0x0400853F RID: 34111
|
||||
[Token(Token = "0x400853F")]
|
||||
HuffmanOnly
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Decompression.Zlib
|
||||
{
|
||||
// Token: 0x02002081 RID: 8321
|
||||
[Token(Token = "0x2002081")]
|
||||
internal enum DeflateFlavor
|
||||
{
|
||||
// Token: 0x0400844C RID: 33868
|
||||
[Token(Token = "0x400844C")]
|
||||
Store,
|
||||
// Token: 0x0400844D RID: 33869
|
||||
[Token(Token = "0x400844D")]
|
||||
Fast,
|
||||
// Token: 0x0400844E RID: 33870
|
||||
[Token(Token = "0x400844E")]
|
||||
Slow
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,2182 @@
|
||||
using System;
|
||||
using BestHTTP.Extensions;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Decompression.Zlib
|
||||
{
|
||||
// Token: 0x02002082 RID: 8322
|
||||
[Token(Token = "0x2002082")]
|
||||
internal sealed class DeflateManager
|
||||
{
|
||||
// Token: 0x0600D0F3 RID: 53491 RVA: 0x002F7600 File Offset: 0x002F5800
|
||||
[Token(Token = "0x600D0F3")]
|
||||
[Address(RVA = "0x240D290", Offset = "0x240C290", VA = "0x18240D290")]
|
||||
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: 0x0600D0F4 RID: 53492 RVA: 0x002F76CC File Offset: 0x002F58CC
|
||||
[Token(Token = "0x600D0F4")]
|
||||
[Address(RVA = "0x240CA00", Offset = "0x240BA00", VA = "0x18240CA00")]
|
||||
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: 0x0600D0F5 RID: 53493 RVA: 0x002F775C File Offset: 0x002F595C
|
||||
[Token(Token = "0x600D0F5")]
|
||||
[Address(RVA = "0x240CAF0", Offset = "0x240BAF0", VA = "0x18240CAF0")]
|
||||
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: 0x0600D0F6 RID: 53494 RVA: 0x002F781C File Offset: 0x002F5A1C
|
||||
[Token(Token = "0x600D0F6")]
|
||||
[Address(RVA = "0x240C7E0", Offset = "0x240B7E0", VA = "0x18240C7E0")]
|
||||
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: 0x0600D0F7 RID: 53495 RVA: 0x002F78C0 File Offset: 0x002F5AC0
|
||||
[Token(Token = "0x600D0F7")]
|
||||
[Address(RVA = "0x240EDB0", Offset = "0x240DDB0", VA = "0x18240EDB0")]
|
||||
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: 0x0600D0F8 RID: 53496 RVA: 0x002F7964 File Offset: 0x002F5B64
|
||||
[Token(Token = "0x600D0F8")]
|
||||
[Address(RVA = "0x240CC30", Offset = "0x240BC30", VA = "0x18240CC30")]
|
||||
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: 0x0600D0F9 RID: 53497 RVA: 0x002F7994 File Offset: 0x002F5B94
|
||||
[Token(Token = "0x600D0F9")]
|
||||
[Address(RVA = "0x240F010", Offset = "0x240E010", VA = "0x18240F010")]
|
||||
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: 0x0600D0FA RID: 53498 RVA: 0x002F7A28 File Offset: 0x002F5C28
|
||||
[Token(Token = "0x600D0FA")]
|
||||
[Address(RVA = "0x240E460", Offset = "0x240D460", VA = "0x18240E460")]
|
||||
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: 0x0600D0FB RID: 53499 RVA: 0x002F7AB4 File Offset: 0x002F5CB4
|
||||
[Token(Token = "0x600D0FB")]
|
||||
[Address(RVA = "0x240F350", Offset = "0x240E350", VA = "0x18240F350")]
|
||||
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: 0x0600D0FC RID: 53500 RVA: 0x002F7B24 File Offset: 0x002F5D24
|
||||
[Token(Token = "0x600D0FC")]
|
||||
[Address(RVA = "0x240FC10", Offset = "0x240EC10", VA = "0x18240FC10")]
|
||||
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: 0x0600D0FD RID: 53501 RVA: 0x002F7BE4 File Offset: 0x002F5DE4
|
||||
[Token(Token = "0x600D0FD")]
|
||||
[Address(RVA = "0x10A7EA0", Offset = "0x10A6EA0", VA = "0x1810A7EA0")]
|
||||
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: 0x0600D0FE RID: 53502 RVA: 0x002F7C0C File Offset: 0x002F5E0C
|
||||
[Token(Token = "0x600D0FE")]
|
||||
[Address(RVA = "0x240F670", Offset = "0x240E670", VA = "0x18240F670")]
|
||||
internal void send_code(int c, short[] tree)
|
||||
{
|
||||
int length = tree.Length;
|
||||
short num;
|
||||
short num2;
|
||||
this.send_bits((int)num, (int)num2);
|
||||
}
|
||||
|
||||
// Token: 0x0600D0FF RID: 53503 RVA: 0x002F7C30 File Offset: 0x002F5E30
|
||||
[Token(Token = "0x600D0FF")]
|
||||
[Address(RVA = "0x240F4D0", Offset = "0x240E4D0", VA = "0x18240F4D0")]
|
||||
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: 0x0600D100 RID: 53504 RVA: 0x002F7C78 File Offset: 0x002F5E78
|
||||
[Token(Token = "0x600D100")]
|
||||
[Address(RVA = "0x240D790", Offset = "0x240C790", VA = "0x18240D790")]
|
||||
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: 0x0600D101 RID: 53505 RVA: 0x002F7D08 File Offset: 0x002F5F08
|
||||
[Token(Token = "0x600D101")]
|
||||
[Address(RVA = "0x240E090", Offset = "0x240D090", VA = "0x18240E090")]
|
||||
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: 0x0600D102 RID: 53506 RVA: 0x002F7E24 File Offset: 0x002F6024
|
||||
[Token(Token = "0x600D102")]
|
||||
[Address(RVA = "0x240F6E0", Offset = "0x240E6E0", VA = "0x18240F6E0")]
|
||||
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: 0x0600D103 RID: 53507 RVA: 0x002F7F8C File Offset: 0x002F618C
|
||||
[Token(Token = "0x600D103")]
|
||||
[Address(RVA = "0x240FED0", Offset = "0x240EED0", VA = "0x18240FED0")]
|
||||
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: 0x0600D104 RID: 53508 RVA: 0x002F7FE8 File Offset: 0x002F61E8
|
||||
[Token(Token = "0x600D104")]
|
||||
[Address(RVA = "0x10A6F70", Offset = "0x10A5F70", VA = "0x1810A6F70")]
|
||||
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: 0x0600D105 RID: 53509 RVA: 0x002F808C File Offset: 0x002F628C
|
||||
[Token(Token = "0x600D105")]
|
||||
[Address(RVA = "0x10A7070", Offset = "0x10A6070", VA = "0x1810A7070")]
|
||||
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: 0x0600D106 RID: 53510 RVA: 0x002F8140 File Offset: 0x002F6340
|
||||
[Token(Token = "0x600D106")]
|
||||
[Address(RVA = "0x10A7300", Offset = "0x10A6300", VA = "0x1810A7300")]
|
||||
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: 0x0600D107 RID: 53511 RVA: 0x002F81F8 File Offset: 0x002F63F8
|
||||
[Token(Token = "0x600D107")]
|
||||
[Address(RVA = "0x240E5F0", Offset = "0x240D5F0", VA = "0x18240E5F0")]
|
||||
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: 0x0600D108 RID: 53512 RVA: 0x002F8244 File Offset: 0x002F6444
|
||||
[Token(Token = "0x600D108")]
|
||||
[Address(RVA = "0x240A5C0", Offset = "0x24095C0", VA = "0x18240A5C0")]
|
||||
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: 0x0600D109 RID: 53513 RVA: 0x002F8398 File Offset: 0x002F6598
|
||||
[Token(Token = "0x600D109")]
|
||||
[Address(RVA = "0x240DED0", Offset = "0x240CED0", VA = "0x18240DED0")]
|
||||
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: 0x0600D10A RID: 53514 RVA: 0x002F8454 File Offset: 0x002F6654
|
||||
[Token(Token = "0x600D10A")]
|
||||
[Address(RVA = "0x240D9C0", Offset = "0x240C9C0", VA = "0x18240D9C0")]
|
||||
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: 0x0600D10B RID: 53515 RVA: 0x002F85F4 File Offset: 0x002F67F4
|
||||
[Token(Token = "0x600D10B")]
|
||||
[Address(RVA = "0x240D470", Offset = "0x240C470", VA = "0x18240D470")]
|
||||
private void _fillWindow()
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
int num2 = this.window_size;
|
||||
int num3 = this.strstart;
|
||||
num2 -= num3;
|
||||
int num4 = this.lookahead;
|
||||
num2 -= num4;
|
||||
if (num3 != 0 || num4 != 0 || this.w_size != -1)
|
||||
{
|
||||
int num5 = this.w_size;
|
||||
num5 += num5;
|
||||
byte[] array = this.window;
|
||||
int num6 = 0;
|
||||
int 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 == num)
|
||||
{
|
||||
break;
|
||||
}
|
||||
int num16 = this.lookahead;
|
||||
byte[] array4 = this.window;
|
||||
uint num18;
|
||||
int num17 = codec.read_buf(array4, num16, (int)num18);
|
||||
int num19 = this.lookahead;
|
||||
byte[] array5 = this.window;
|
||||
int num20 = this.strstart;
|
||||
byte b;
|
||||
this.ins_h = (int)b;
|
||||
int num21 = num20 + 1;
|
||||
this.ins_h = (int)b;
|
||||
int num22 = this.lookahead;
|
||||
}
|
||||
while (this._codec.AvailableBytesIn != num);
|
||||
}
|
||||
|
||||
// Token: 0x0600D10C RID: 53516 RVA: 0x002F8770 File Offset: 0x002F6970
|
||||
[Token(Token = "0x600D10C")]
|
||||
[Address(RVA = "0x2409EF0", Offset = "0x2408EF0", VA = "0x182409EF0")]
|
||||
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: 0x0600D10D RID: 53517 RVA: 0x002F8A60 File Offset: 0x002F6C60
|
||||
[Token(Token = "0x600D10D")]
|
||||
[Address(RVA = "0x240A800", Offset = "0x2409800", VA = "0x18240A800")]
|
||||
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: 0x0600D10E RID: 53518 RVA: 0x002F8E08 File Offset: 0x002F7008
|
||||
[Token(Token = "0x600D10E")]
|
||||
[Address(RVA = "0x240E650", Offset = "0x240D650", VA = "0x18240E650")]
|
||||
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: 0x1700213D RID: 8509
|
||||
// (get) Token: 0x0600D10F RID: 53519 RVA: 0x002F8FD0 File Offset: 0x002F71D0
|
||||
// (set) Token: 0x0600D110 RID: 53520 RVA: 0x002F8FE4 File Offset: 0x002F71E4
|
||||
[Token(Token = "0x1700213D")]
|
||||
internal bool WantRfc1950HeaderBytes
|
||||
{
|
||||
[Token(Token = "0x600D10F")]
|
||||
[Address(RVA = "0x10A74D0", Offset = "0x10A64D0", VA = "0x1810A74D0")]
|
||||
get
|
||||
{
|
||||
return this._WantRfc1950HeaderBytes;
|
||||
}
|
||||
[Token(Token = "0x600D110")]
|
||||
[Address(RVA = "0x10A8DB0", Offset = "0x10A7DB0", VA = "0x1810A8DB0")]
|
||||
set
|
||||
{
|
||||
this._WantRfc1950HeaderBytes = value;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600D111 RID: 53521 RVA: 0x002F8FF8 File Offset: 0x002F71F8
|
||||
[Token(Token = "0x600D111")]
|
||||
[Address(RVA = "0x240BB80", Offset = "0x240AB80", VA = "0x18240BB80")]
|
||||
internal int Initialize(ZlibCodec codec, CompressionLevel level)
|
||||
{
|
||||
int mem_LEVEL_DEFAULT = DeflateManager.MEM_LEVEL_DEFAULT;
|
||||
int num;
|
||||
return num;
|
||||
}
|
||||
|
||||
// Token: 0x0600D112 RID: 53522 RVA: 0x002F9010 File Offset: 0x002F7210
|
||||
[Token(Token = "0x600D112")]
|
||||
[Address(RVA = "0x240BAD0", Offset = "0x240AAD0", VA = "0x18240BAD0")]
|
||||
internal int Initialize(ZlibCodec codec, CompressionLevel level, int bits)
|
||||
{
|
||||
int mem_LEVEL_DEFAULT = DeflateManager.MEM_LEVEL_DEFAULT;
|
||||
int num;
|
||||
return num;
|
||||
}
|
||||
|
||||
// Token: 0x0600D113 RID: 53523 RVA: 0x002F9028 File Offset: 0x002F7228
|
||||
[Token(Token = "0x600D113")]
|
||||
[Address(RVA = "0x240BED0", Offset = "0x240AED0", VA = "0x18240BED0")]
|
||||
internal int Initialize(ZlibCodec codec, CompressionLevel level, int bits, CompressionStrategy compressionStrategy)
|
||||
{
|
||||
int mem_LEVEL_DEFAULT = DeflateManager.MEM_LEVEL_DEFAULT;
|
||||
int num;
|
||||
return num;
|
||||
}
|
||||
|
||||
// Token: 0x0600D114 RID: 53524 RVA: 0x002F903C File Offset: 0x002F723C
|
||||
[Token(Token = "0x600D114")]
|
||||
[Address(RVA = "0x240BC20", Offset = "0x240AC20", VA = "0x18240BC20")]
|
||||
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: 0x0600D115 RID: 53525 RVA: 0x002F9140 File Offset: 0x002F7340
|
||||
[Token(Token = "0x600D115")]
|
||||
[Address(RVA = "0x240BF80", Offset = "0x240AF80", VA = "0x18240BF80")]
|
||||
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: 0x0600D116 RID: 53526 RVA: 0x002F92E4 File Offset: 0x002F74E4
|
||||
[Token(Token = "0x600D116")]
|
||||
[Address(RVA = "0x240B970", Offset = "0x240A970", VA = "0x18240B970")]
|
||||
internal int End()
|
||||
{
|
||||
int num = this.status;
|
||||
int num2 = this.status;
|
||||
int num3 = this.status;
|
||||
return -2;
|
||||
}
|
||||
|
||||
// Token: 0x0600D117 RID: 53527 RVA: 0x002F9310 File Offset: 0x002F7510
|
||||
[Token(Token = "0x600D117")]
|
||||
[Address(RVA = "0x240C2A0", Offset = "0x240B2A0", VA = "0x18240C2A0")]
|
||||
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: 0x0600D118 RID: 53528 RVA: 0x002F9364 File Offset: 0x002F7564
|
||||
[Token(Token = "0x600D118")]
|
||||
[Address(RVA = "0x240C6F0", Offset = "0x240B6F0", VA = "0x18240C6F0")]
|
||||
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: 0x0600D119 RID: 53529 RVA: 0x002F93D8 File Offset: 0x002F75D8
|
||||
[Token(Token = "0x600D119")]
|
||||
[Address(RVA = "0x240C340", Offset = "0x240B340", VA = "0x18240C340")]
|
||||
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: 0x0600D11A RID: 53530 RVA: 0x002F9508 File Offset: 0x002F7708
|
||||
[Token(Token = "0x600D11A")]
|
||||
[Address(RVA = "0x240B020", Offset = "0x240A020", VA = "0x18240B020")]
|
||||
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: 0x0600D11B RID: 53531 RVA: 0x002F98A8 File Offset: 0x002F7AA8
|
||||
// Note: this type is marked as 'beforefieldinit'.
|
||||
[Token(Token = "0x600D11B")]
|
||||
[Address(RVA = "0x240CCF0", Offset = "0x240BCF0", VA = "0x18240CCF0")]
|
||||
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: 0x0400844F RID: 33871
|
||||
[Token(Token = "0x400844F")]
|
||||
private static readonly int MEM_LEVEL_MAX;
|
||||
|
||||
// Token: 0x04008450 RID: 33872
|
||||
[Token(Token = "0x4008450")]
|
||||
private static readonly int MEM_LEVEL_DEFAULT;
|
||||
|
||||
// Token: 0x04008451 RID: 33873
|
||||
[FieldOffset(Offset = "0x10")]
|
||||
[Token(Token = "0x4008451")]
|
||||
private DeflateManager.CompressFunc DeflateFunction;
|
||||
|
||||
// Token: 0x04008452 RID: 33874
|
||||
[Token(Token = "0x4008452")]
|
||||
private static readonly string[] _ErrorMessage;
|
||||
|
||||
// Token: 0x04008453 RID: 33875
|
||||
[Token(Token = "0x4008453")]
|
||||
private static readonly int PRESET_DICT;
|
||||
|
||||
// Token: 0x04008454 RID: 33876
|
||||
[Token(Token = "0x4008454")]
|
||||
private static readonly int INIT_STATE;
|
||||
|
||||
// Token: 0x04008455 RID: 33877
|
||||
[Token(Token = "0x4008455")]
|
||||
private static readonly int BUSY_STATE;
|
||||
|
||||
// Token: 0x04008456 RID: 33878
|
||||
[Token(Token = "0x4008456")]
|
||||
private static readonly int FINISH_STATE;
|
||||
|
||||
// Token: 0x04008457 RID: 33879
|
||||
[Token(Token = "0x4008457")]
|
||||
private static readonly int Z_DEFLATED;
|
||||
|
||||
// Token: 0x04008458 RID: 33880
|
||||
[Token(Token = "0x4008458")]
|
||||
private static readonly int STORED_BLOCK;
|
||||
|
||||
// Token: 0x04008459 RID: 33881
|
||||
[Token(Token = "0x4008459")]
|
||||
private static readonly int STATIC_TREES;
|
||||
|
||||
// Token: 0x0400845A RID: 33882
|
||||
[Token(Token = "0x400845A")]
|
||||
private static readonly int DYN_TREES;
|
||||
|
||||
// Token: 0x0400845B RID: 33883
|
||||
[Token(Token = "0x400845B")]
|
||||
private static readonly int Z_BINARY;
|
||||
|
||||
// Token: 0x0400845C RID: 33884
|
||||
[Token(Token = "0x400845C")]
|
||||
private static readonly int Z_ASCII;
|
||||
|
||||
// Token: 0x0400845D RID: 33885
|
||||
[Token(Token = "0x400845D")]
|
||||
private static readonly int Z_UNKNOWN;
|
||||
|
||||
// Token: 0x0400845E RID: 33886
|
||||
[Token(Token = "0x400845E")]
|
||||
private static readonly int Buf_size;
|
||||
|
||||
// Token: 0x0400845F RID: 33887
|
||||
[Token(Token = "0x400845F")]
|
||||
private static readonly int MIN_MATCH;
|
||||
|
||||
// Token: 0x04008460 RID: 33888
|
||||
[Token(Token = "0x4008460")]
|
||||
private static readonly int MAX_MATCH;
|
||||
|
||||
// Token: 0x04008461 RID: 33889
|
||||
[Token(Token = "0x4008461")]
|
||||
private static readonly int MIN_LOOKAHEAD;
|
||||
|
||||
// Token: 0x04008462 RID: 33890
|
||||
[Token(Token = "0x4008462")]
|
||||
private static readonly int HEAP_SIZE;
|
||||
|
||||
// Token: 0x04008463 RID: 33891
|
||||
[Token(Token = "0x4008463")]
|
||||
private static readonly int END_BLOCK;
|
||||
|
||||
// Token: 0x04008464 RID: 33892
|
||||
[FieldOffset(Offset = "0x18")]
|
||||
[Token(Token = "0x4008464")]
|
||||
internal ZlibCodec _codec;
|
||||
|
||||
// Token: 0x04008465 RID: 33893
|
||||
[FieldOffset(Offset = "0x20")]
|
||||
[Token(Token = "0x4008465")]
|
||||
internal int status;
|
||||
|
||||
// Token: 0x04008466 RID: 33894
|
||||
[FieldOffset(Offset = "0x28")]
|
||||
[Token(Token = "0x4008466")]
|
||||
internal byte[] pending;
|
||||
|
||||
// Token: 0x04008467 RID: 33895
|
||||
[FieldOffset(Offset = "0x30")]
|
||||
[Token(Token = "0x4008467")]
|
||||
internal int nextPending;
|
||||
|
||||
// Token: 0x04008468 RID: 33896
|
||||
[FieldOffset(Offset = "0x34")]
|
||||
[Token(Token = "0x4008468")]
|
||||
internal int pendingCount;
|
||||
|
||||
// Token: 0x04008469 RID: 33897
|
||||
[FieldOffset(Offset = "0x38")]
|
||||
[Token(Token = "0x4008469")]
|
||||
internal sbyte data_type;
|
||||
|
||||
// Token: 0x0400846A RID: 33898
|
||||
[FieldOffset(Offset = "0x3C")]
|
||||
[Token(Token = "0x400846A")]
|
||||
internal int last_flush;
|
||||
|
||||
// Token: 0x0400846B RID: 33899
|
||||
[FieldOffset(Offset = "0x40")]
|
||||
[Token(Token = "0x400846B")]
|
||||
internal int w_size;
|
||||
|
||||
// Token: 0x0400846C RID: 33900
|
||||
[FieldOffset(Offset = "0x44")]
|
||||
[Token(Token = "0x400846C")]
|
||||
internal int w_bits;
|
||||
|
||||
// Token: 0x0400846D RID: 33901
|
||||
[FieldOffset(Offset = "0x48")]
|
||||
[Token(Token = "0x400846D")]
|
||||
internal int w_mask;
|
||||
|
||||
// Token: 0x0400846E RID: 33902
|
||||
[FieldOffset(Offset = "0x50")]
|
||||
[Token(Token = "0x400846E")]
|
||||
internal byte[] window;
|
||||
|
||||
// Token: 0x0400846F RID: 33903
|
||||
[FieldOffset(Offset = "0x58")]
|
||||
[Token(Token = "0x400846F")]
|
||||
internal int window_size;
|
||||
|
||||
// Token: 0x04008470 RID: 33904
|
||||
[FieldOffset(Offset = "0x60")]
|
||||
[Token(Token = "0x4008470")]
|
||||
internal short[] prev;
|
||||
|
||||
// Token: 0x04008471 RID: 33905
|
||||
[FieldOffset(Offset = "0x68")]
|
||||
[Token(Token = "0x4008471")]
|
||||
internal short[] head;
|
||||
|
||||
// Token: 0x04008472 RID: 33906
|
||||
[FieldOffset(Offset = "0x70")]
|
||||
[Token(Token = "0x4008472")]
|
||||
internal int ins_h;
|
||||
|
||||
// Token: 0x04008473 RID: 33907
|
||||
[FieldOffset(Offset = "0x74")]
|
||||
[Token(Token = "0x4008473")]
|
||||
internal int hash_size;
|
||||
|
||||
// Token: 0x04008474 RID: 33908
|
||||
[FieldOffset(Offset = "0x78")]
|
||||
[Token(Token = "0x4008474")]
|
||||
internal int hash_bits;
|
||||
|
||||
// Token: 0x04008475 RID: 33909
|
||||
[FieldOffset(Offset = "0x7C")]
|
||||
[Token(Token = "0x4008475")]
|
||||
internal int hash_mask;
|
||||
|
||||
// Token: 0x04008476 RID: 33910
|
||||
[FieldOffset(Offset = "0x80")]
|
||||
[Token(Token = "0x4008476")]
|
||||
internal int hash_shift;
|
||||
|
||||
// Token: 0x04008477 RID: 33911
|
||||
[FieldOffset(Offset = "0x84")]
|
||||
[Token(Token = "0x4008477")]
|
||||
internal int block_start;
|
||||
|
||||
// Token: 0x04008478 RID: 33912
|
||||
[FieldOffset(Offset = "0x88")]
|
||||
[Token(Token = "0x4008478")]
|
||||
private DeflateManager.Config config;
|
||||
|
||||
// Token: 0x04008479 RID: 33913
|
||||
[FieldOffset(Offset = "0x90")]
|
||||
[Token(Token = "0x4008479")]
|
||||
internal int match_length;
|
||||
|
||||
// Token: 0x0400847A RID: 33914
|
||||
[FieldOffset(Offset = "0x94")]
|
||||
[Token(Token = "0x400847A")]
|
||||
internal int prev_match;
|
||||
|
||||
// Token: 0x0400847B RID: 33915
|
||||
[FieldOffset(Offset = "0x98")]
|
||||
[Token(Token = "0x400847B")]
|
||||
internal int match_available;
|
||||
|
||||
// Token: 0x0400847C RID: 33916
|
||||
[FieldOffset(Offset = "0x9C")]
|
||||
[Token(Token = "0x400847C")]
|
||||
internal int strstart;
|
||||
|
||||
// Token: 0x0400847D RID: 33917
|
||||
[FieldOffset(Offset = "0xA0")]
|
||||
[Token(Token = "0x400847D")]
|
||||
internal int match_start;
|
||||
|
||||
// Token: 0x0400847E RID: 33918
|
||||
[FieldOffset(Offset = "0xA4")]
|
||||
[Token(Token = "0x400847E")]
|
||||
internal int lookahead;
|
||||
|
||||
// Token: 0x0400847F RID: 33919
|
||||
[FieldOffset(Offset = "0xA8")]
|
||||
[Token(Token = "0x400847F")]
|
||||
internal int prev_length;
|
||||
|
||||
// Token: 0x04008480 RID: 33920
|
||||
[FieldOffset(Offset = "0xAC")]
|
||||
[Token(Token = "0x4008480")]
|
||||
internal CompressionLevel compressionLevel;
|
||||
|
||||
// Token: 0x04008481 RID: 33921
|
||||
[FieldOffset(Offset = "0xB0")]
|
||||
[Token(Token = "0x4008481")]
|
||||
internal CompressionStrategy compressionStrategy;
|
||||
|
||||
// Token: 0x04008482 RID: 33922
|
||||
[FieldOffset(Offset = "0xB8")]
|
||||
[Token(Token = "0x4008482")]
|
||||
internal short[] dyn_ltree;
|
||||
|
||||
// Token: 0x04008483 RID: 33923
|
||||
[FieldOffset(Offset = "0xC0")]
|
||||
[Token(Token = "0x4008483")]
|
||||
internal short[] dyn_dtree;
|
||||
|
||||
// Token: 0x04008484 RID: 33924
|
||||
[FieldOffset(Offset = "0xC8")]
|
||||
[Token(Token = "0x4008484")]
|
||||
internal short[] bl_tree;
|
||||
|
||||
// Token: 0x04008485 RID: 33925
|
||||
[FieldOffset(Offset = "0xD0")]
|
||||
[Token(Token = "0x4008485")]
|
||||
internal ZTree treeLiterals;
|
||||
|
||||
// Token: 0x04008486 RID: 33926
|
||||
[FieldOffset(Offset = "0xD8")]
|
||||
[Token(Token = "0x4008486")]
|
||||
internal ZTree treeDistances;
|
||||
|
||||
// Token: 0x04008487 RID: 33927
|
||||
[FieldOffset(Offset = "0xE0")]
|
||||
[Token(Token = "0x4008487")]
|
||||
internal ZTree treeBitLengths;
|
||||
|
||||
// Token: 0x04008488 RID: 33928
|
||||
[FieldOffset(Offset = "0xE8")]
|
||||
[Token(Token = "0x4008488")]
|
||||
internal short[] bl_count;
|
||||
|
||||
// Token: 0x04008489 RID: 33929
|
||||
[FieldOffset(Offset = "0xF0")]
|
||||
[Token(Token = "0x4008489")]
|
||||
internal int[] heap;
|
||||
|
||||
// Token: 0x0400848A RID: 33930
|
||||
[FieldOffset(Offset = "0xF8")]
|
||||
[Token(Token = "0x400848A")]
|
||||
internal int heap_len;
|
||||
|
||||
// Token: 0x0400848B RID: 33931
|
||||
[FieldOffset(Offset = "0xFC")]
|
||||
[Token(Token = "0x400848B")]
|
||||
internal int heap_max;
|
||||
|
||||
// Token: 0x0400848C RID: 33932
|
||||
[FieldOffset(Offset = "0x100")]
|
||||
[Token(Token = "0x400848C")]
|
||||
internal sbyte[] depth;
|
||||
|
||||
// Token: 0x0400848D RID: 33933
|
||||
[FieldOffset(Offset = "0x108")]
|
||||
[Token(Token = "0x400848D")]
|
||||
internal int _lengthOffset;
|
||||
|
||||
// Token: 0x0400848E RID: 33934
|
||||
[FieldOffset(Offset = "0x10C")]
|
||||
[Token(Token = "0x400848E")]
|
||||
internal int lit_bufsize;
|
||||
|
||||
// Token: 0x0400848F RID: 33935
|
||||
[FieldOffset(Offset = "0x110")]
|
||||
[Token(Token = "0x400848F")]
|
||||
internal int last_lit;
|
||||
|
||||
// Token: 0x04008490 RID: 33936
|
||||
[FieldOffset(Offset = "0x114")]
|
||||
[Token(Token = "0x4008490")]
|
||||
internal int _distanceOffset;
|
||||
|
||||
// Token: 0x04008491 RID: 33937
|
||||
[FieldOffset(Offset = "0x118")]
|
||||
[Token(Token = "0x4008491")]
|
||||
internal int opt_len;
|
||||
|
||||
// Token: 0x04008492 RID: 33938
|
||||
[FieldOffset(Offset = "0x11C")]
|
||||
[Token(Token = "0x4008492")]
|
||||
internal int static_len;
|
||||
|
||||
// Token: 0x04008493 RID: 33939
|
||||
[FieldOffset(Offset = "0x120")]
|
||||
[Token(Token = "0x4008493")]
|
||||
internal int matches;
|
||||
|
||||
// Token: 0x04008494 RID: 33940
|
||||
[FieldOffset(Offset = "0x124")]
|
||||
[Token(Token = "0x4008494")]
|
||||
internal int last_eob_len;
|
||||
|
||||
// Token: 0x04008495 RID: 33941
|
||||
[FieldOffset(Offset = "0x128")]
|
||||
[Token(Token = "0x4008495")]
|
||||
internal short bi_buf;
|
||||
|
||||
// Token: 0x04008496 RID: 33942
|
||||
[FieldOffset(Offset = "0x12C")]
|
||||
[Token(Token = "0x4008496")]
|
||||
internal int bi_valid;
|
||||
|
||||
// Token: 0x04008497 RID: 33943
|
||||
[FieldOffset(Offset = "0x130")]
|
||||
[Token(Token = "0x4008497")]
|
||||
private bool Rfc1950BytesEmitted;
|
||||
|
||||
// Token: 0x04008498 RID: 33944
|
||||
[FieldOffset(Offset = "0x131")]
|
||||
[Token(Token = "0x4008498")]
|
||||
private bool _WantRfc1950HeaderBytes;
|
||||
|
||||
// Token: 0x02002083 RID: 8323
|
||||
[Token(Token = "0x2002083")]
|
||||
internal sealed class CompressFunc : MulticastDelegate
|
||||
{
|
||||
// Token: 0x0600D11C RID: 53532 RVA: 0x002F99C0 File Offset: 0x002F7BC0
|
||||
[Token(Token = "0x600D11C")]
|
||||
[Address(RVA = "0x4AF020", Offset = "0x4AE020", VA = "0x1804AF020")]
|
||||
public CompressFunc(object @object, IntPtr method)
|
||||
{
|
||||
this.method = method;
|
||||
this.m_target = @object;
|
||||
}
|
||||
|
||||
// Token: 0x0600D11D RID: 53533 RVA: 0x002F99DC File Offset: 0x002F7BDC
|
||||
[Token(Token = "0x600D11D")]
|
||||
[Address(RVA = "0x569240", Offset = "0x568240", VA = "0x180569240", 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: 0x0600D11E RID: 53534 RVA: 0x002F9A60 File Offset: 0x002F7C60
|
||||
[Token(Token = "0x600D11E")]
|
||||
[Address(RVA = "0x2404CA0", Offset = "0x2403CA0", VA = "0x182404CA0", Slot = "14")]
|
||||
public IAsyncResult BeginInvoke(FlushType flush, AsyncCallback callback, object @object)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0600D11F RID: 53535 RVA: 0x002F9A70 File Offset: 0x002F7C70
|
||||
[Token(Token = "0x600D11F")]
|
||||
[Address(RVA = "0x4AEA90", Offset = "0x4ADA90", VA = "0x1804AEA90", Slot = "15")]
|
||||
public BlockState EndInvoke(IAsyncResult result)
|
||||
{
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x02002084 RID: 8324
|
||||
[Token(Token = "0x2002084")]
|
||||
internal class Config
|
||||
{
|
||||
// Token: 0x0600D120 RID: 53536 RVA: 0x002F9A84 File Offset: 0x002F7C84
|
||||
[Token(Token = "0x600D120")]
|
||||
[Address(RVA = "0x4E0F80", Offset = "0x4DFF80", VA = "0x1804E0F80")]
|
||||
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: 0x0600D121 RID: 53537 RVA: 0x002F9ABC File Offset: 0x002F7CBC
|
||||
[Token(Token = "0x600D121")]
|
||||
[Address(RVA = "0x2404D20", Offset = "0x2403D20", VA = "0x182404D20")]
|
||||
public static DeflateManager.Config Lookup(CompressionLevel level)
|
||||
{
|
||||
return DeflateManager.Config.Table[(int)level];
|
||||
}
|
||||
|
||||
// Token: 0x0600D122 RID: 53538 RVA: 0x002F9ADC File Offset: 0x002F7CDC
|
||||
[Token(Token = "0x600D122")]
|
||||
[Address(RVA = "0x2404DB0", Offset = "0x2403DB0", VA = "0x182404DB0")]
|
||||
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: 0x04008499 RID: 33945
|
||||
[FieldOffset(Offset = "0x10")]
|
||||
[Token(Token = "0x4008499")]
|
||||
internal int GoodLength;
|
||||
|
||||
// Token: 0x0400849A RID: 33946
|
||||
[FieldOffset(Offset = "0x14")]
|
||||
[Token(Token = "0x400849A")]
|
||||
internal int MaxLazy;
|
||||
|
||||
// Token: 0x0400849B RID: 33947
|
||||
[FieldOffset(Offset = "0x18")]
|
||||
[Token(Token = "0x400849B")]
|
||||
internal int NiceLength;
|
||||
|
||||
// Token: 0x0400849C RID: 33948
|
||||
[FieldOffset(Offset = "0x1C")]
|
||||
[Token(Token = "0x400849C")]
|
||||
internal int MaxChainLength;
|
||||
|
||||
// Token: 0x0400849D RID: 33949
|
||||
[FieldOffset(Offset = "0x20")]
|
||||
[Token(Token = "0x400849D")]
|
||||
internal DeflateFlavor Flavor;
|
||||
|
||||
// Token: 0x0400849E RID: 33950
|
||||
[Token(Token = "0x400849E")]
|
||||
private static readonly DeflateManager.Config[] Table;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,518 @@
|
||||
using System;
|
||||
using System.IO;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Decompression.Zlib
|
||||
{
|
||||
// Token: 0x02002085 RID: 8325
|
||||
[Token(Token = "0x2002085")]
|
||||
public class DeflateStream : Stream
|
||||
{
|
||||
// Token: 0x0600D123 RID: 53539 RVA: 0x002F9D60 File Offset: 0x002F7F60
|
||||
[Token(Token = "0x600D123")]
|
||||
[Address(RVA = "0x24103A0", Offset = "0x240F3A0", VA = "0x1824103A0")]
|
||||
public DeflateStream(Stream stream, CompressionMode mode)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0600D124 RID: 53540 RVA: 0x002F9D70 File Offset: 0x002F7F70
|
||||
[Token(Token = "0x600D124")]
|
||||
[Address(RVA = "0x24103D0", Offset = "0x240F3D0", VA = "0x1824103D0")]
|
||||
public DeflateStream(Stream stream, CompressionMode mode, CompressionLevel level)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0600D125 RID: 53541 RVA: 0x002F9D80 File Offset: 0x002F7F80
|
||||
[Token(Token = "0x600D125")]
|
||||
[Address(RVA = "0x24103F0", Offset = "0x240F3F0", VA = "0x1824103F0")]
|
||||
public DeflateStream(Stream stream, CompressionMode mode, bool leaveOpen)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0600D126 RID: 53542 RVA: 0x002F9D90 File Offset: 0x002F7F90
|
||||
[Token(Token = "0x600D126")]
|
||||
[Address(RVA = "0x24104F0", Offset = "0x240F4F0", VA = "0x1824104F0")]
|
||||
public DeflateStream(Stream stream, CompressionMode mode, CompressionLevel level, bool leaveOpen)
|
||||
{
|
||||
this._innerStream = stream;
|
||||
ZlibBaseStream zlibBaseStream;
|
||||
this._baseStream = zlibBaseStream;
|
||||
}
|
||||
|
||||
// Token: 0x0600D127 RID: 53543 RVA: 0x002F9DB4 File Offset: 0x002F7FB4
|
||||
[Token(Token = "0x600D127")]
|
||||
[Address(RVA = "0x2410420", Offset = "0x240F420", VA = "0x182410420")]
|
||||
public DeflateStream(Stream stream, CompressionMode mode, CompressionLevel level, bool leaveOpen, int windowBits)
|
||||
{
|
||||
this._innerStream = stream;
|
||||
ZlibBaseStream zlibBaseStream;
|
||||
this._baseStream = zlibBaseStream;
|
||||
}
|
||||
|
||||
// Token: 0x1700213E RID: 8510
|
||||
// (get) Token: 0x0600D128 RID: 53544 RVA: 0x002F9DD8 File Offset: 0x002F7FD8
|
||||
// (set) Token: 0x0600D129 RID: 53545 RVA: 0x002F9DF8 File Offset: 0x002F7FF8
|
||||
[Token(Token = "0x1700213E")]
|
||||
public virtual FlushType FlushMode
|
||||
{
|
||||
[Token(Token = "0x600D128")]
|
||||
[Address(RVA = "0x2410700", Offset = "0x240F700", VA = "0x182410700", Slot = "31")]
|
||||
get
|
||||
{
|
||||
return this._baseStream._flushMode;
|
||||
}
|
||||
[Token(Token = "0x600D129")]
|
||||
[Address(RVA = "0x2410940", Offset = "0x240F940", VA = "0x182410940", Slot = "32")]
|
||||
set
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D129)
|
||||
|
||||
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: 0x1700213F RID: 8511
|
||||
// (get) Token: 0x0600D12A RID: 53546 RVA: 0x002F9E28 File Offset: 0x002F8028
|
||||
// (set) Token: 0x0600D12B RID: 53547 RVA: 0x002F9E48 File Offset: 0x002F8048
|
||||
[Token(Token = "0x1700213F")]
|
||||
public int BufferSize
|
||||
{
|
||||
[Token(Token = "0x600D12A")]
|
||||
[Address(RVA = "0x24105C0", Offset = "0x240F5C0", VA = "0x1824105C0")]
|
||||
get
|
||||
{
|
||||
return this._baseStream._bufferSize;
|
||||
}
|
||||
[Token(Token = "0x600D12B")]
|
||||
[Address(RVA = "0x24107F0", Offset = "0x240F7F0", VA = "0x1824107F0")]
|
||||
set
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D12B)
|
||||
|
||||
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: 0x17002140 RID: 8512
|
||||
// (get) Token: 0x0600D12C RID: 53548 RVA: 0x002F9E84 File Offset: 0x002F8084
|
||||
// (set) Token: 0x0600D12D RID: 53549 RVA: 0x002F9EA4 File Offset: 0x002F80A4
|
||||
[Token(Token = "0x17002140")]
|
||||
public CompressionStrategy Strategy
|
||||
{
|
||||
[Token(Token = "0x600D12C")]
|
||||
[Address(RVA = "0x2410770", Offset = "0x240F770", VA = "0x182410770")]
|
||||
get
|
||||
{
|
||||
return this._baseStream.Strategy;
|
||||
}
|
||||
[Token(Token = "0x600D12D")]
|
||||
[Address(RVA = "0x2410A10", Offset = "0x240FA10", VA = "0x182410A10")]
|
||||
set
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D12D)
|
||||
|
||||
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: 0x17002141 RID: 8513
|
||||
// (get) Token: 0x0600D12E RID: 53550 RVA: 0x002F9ED4 File Offset: 0x002F80D4
|
||||
[Token(Token = "0x17002141")]
|
||||
public virtual long TotalIn
|
||||
{
|
||||
[Token(Token = "0x600D12E")]
|
||||
[Address(RVA = "0x2410790", Offset = "0x240F790", VA = "0x182410790", Slot = "33")]
|
||||
get
|
||||
{
|
||||
return this._baseStream._z.TotalBytesIn;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17002142 RID: 8514
|
||||
// (get) Token: 0x0600D12F RID: 53551 RVA: 0x002F9EF8 File Offset: 0x002F80F8
|
||||
[Token(Token = "0x17002142")]
|
||||
public virtual long TotalOut
|
||||
{
|
||||
[Token(Token = "0x600D12F")]
|
||||
[Address(RVA = "0x24107C0", Offset = "0x240F7C0", VA = "0x1824107C0", Slot = "34")]
|
||||
get
|
||||
{
|
||||
return this._baseStream._z.TotalBytesOut;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600D130 RID: 53552 RVA: 0x002F9F1C File Offset: 0x002F811C
|
||||
[Token(Token = "0x600D130")]
|
||||
[Address(RVA = "0x24100B0", Offset = "0x240F0B0", VA = "0x1824100B0", 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: 0x17002143 RID: 8515
|
||||
// (get) Token: 0x0600D131 RID: 53553 RVA: 0x002F9F5C File Offset: 0x002F815C
|
||||
[Token(Token = "0x17002143")]
|
||||
public override bool CanRead
|
||||
{
|
||||
[Token(Token = "0x600D131")]
|
||||
[Address(RVA = "0x24105E0", Offset = "0x240F5E0", VA = "0x1824105E0", Slot = "7")]
|
||||
get
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D131)
|
||||
|
||||
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: 0x17002144 RID: 8516
|
||||
// (get) Token: 0x0600D132 RID: 53554 RVA: 0x002F9F90 File Offset: 0x002F8190
|
||||
[Token(Token = "0x17002144")]
|
||||
public override bool CanSeek
|
||||
{
|
||||
[Token(Token = "0x600D132")]
|
||||
[Address(RVA = "0x424690", Offset = "0x423690", VA = "0x180424690", Slot = "8")]
|
||||
get
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17002145 RID: 8517
|
||||
// (get) Token: 0x0600D133 RID: 53555 RVA: 0x002F9FA0 File Offset: 0x002F81A0
|
||||
[Token(Token = "0x17002145")]
|
||||
public override bool CanWrite
|
||||
{
|
||||
[Token(Token = "0x600D133")]
|
||||
[Address(RVA = "0x2410670", Offset = "0x240F670", VA = "0x182410670", Slot = "9")]
|
||||
get
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D133)
|
||||
|
||||
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: 0x0600D134 RID: 53556 RVA: 0x002F9FD4 File Offset: 0x002F81D4
|
||||
[Token(Token = "0x600D134")]
|
||||
[Address(RVA = "0x2410150", Offset = "0x240F150", VA = "0x182410150", Slot = "17")]
|
||||
public override void Flush()
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D134)
|
||||
|
||||
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: 0x17002146 RID: 8518
|
||||
// (get) Token: 0x0600D135 RID: 53557 RVA: 0x002FA000 File Offset: 0x002F8200
|
||||
[Token(Token = "0x17002146")]
|
||||
public override long Length
|
||||
{
|
||||
[Token(Token = "0x600D135")]
|
||||
[Address(RVA = "0x2410720", Offset = "0x240F720", VA = "0x182410720", Slot = "10")]
|
||||
get
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D135)
|
||||
|
||||
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: 0x17002147 RID: 8519
|
||||
// (get) Token: 0x0600D136 RID: 53558 RVA: 0x002FA014 File Offset: 0x002F8214
|
||||
// (set) Token: 0x0600D137 RID: 53559 RVA: 0x002FA058 File Offset: 0x002F8258
|
||||
[Token(Token = "0x17002147")]
|
||||
public override long Position
|
||||
{
|
||||
[Token(Token = "0x600D136")]
|
||||
[Address(RVA = "0x10A96B0", Offset = "0x10A86B0", VA = "0x1810A96B0", 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 = "0x600D137")]
|
||||
[Address(RVA = "0x24109C0", Offset = "0x240F9C0", VA = "0x1824109C0", Slot = "12")]
|
||||
set
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D137)
|
||||
|
||||
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: 0x0600D138 RID: 53560 RVA: 0x002FA06C File Offset: 0x002F826C
|
||||
[Token(Token = "0x600D138")]
|
||||
[Address(RVA = "0x24101D0", Offset = "0x240F1D0", VA = "0x1824101D0", Slot = "27")]
|
||||
public override int Read(byte[] buffer, int offset, int count)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D138)
|
||||
|
||||
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: 0x0600D139 RID: 53561 RVA: 0x002FA09C File Offset: 0x002F829C
|
||||
[Token(Token = "0x600D139")]
|
||||
[Address(RVA = "0x2410290", Offset = "0x240F290", VA = "0x182410290", Slot = "25")]
|
||||
public override long Seek(long offset, SeekOrigin origin)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D139)
|
||||
|
||||
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: 0x0600D13A RID: 53562 RVA: 0x002FA0B0 File Offset: 0x002F82B0
|
||||
[Token(Token = "0x600D13A")]
|
||||
[Address(RVA = "0x4B7CF0", Offset = "0x4B6CF0", VA = "0x1804B7CF0", Slot = "26")]
|
||||
public override void SetLength(long value)
|
||||
{
|
||||
((IDisposable)this._baseStream).Dispose();
|
||||
}
|
||||
|
||||
// Token: 0x0600D13B RID: 53563 RVA: 0x002FA0D0 File Offset: 0x002F82D0
|
||||
[Token(Token = "0x600D13B")]
|
||||
[Address(RVA = "0x24102E0", Offset = "0x240F2E0", VA = "0x1824102E0", Slot = "29")]
|
||||
public override void Write(byte[] buffer, int offset, int count)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D13B)
|
||||
|
||||
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: 0x0400849F RID: 33951
|
||||
[FieldOffset(Offset = "0x28")]
|
||||
[Token(Token = "0x400849F")]
|
||||
internal ZlibBaseStream _baseStream;
|
||||
|
||||
// Token: 0x040084A0 RID: 33952
|
||||
[FieldOffset(Offset = "0x30")]
|
||||
[Token(Token = "0x40084A0")]
|
||||
internal Stream _innerStream;
|
||||
|
||||
// Token: 0x040084A1 RID: 33953
|
||||
[FieldOffset(Offset = "0x38")]
|
||||
[Token(Token = "0x40084A1")]
|
||||
private bool _disposed;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,26 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Decompression.Zlib
|
||||
{
|
||||
// Token: 0x0200208F RID: 8335
|
||||
[Token(Token = "0x200208F")]
|
||||
public enum FlushType
|
||||
{
|
||||
// Token: 0x04008528 RID: 34088
|
||||
[Token(Token = "0x4008528")]
|
||||
None,
|
||||
// Token: 0x04008529 RID: 34089
|
||||
[Token(Token = "0x4008529")]
|
||||
Partial,
|
||||
// Token: 0x0400852A RID: 34090
|
||||
[Token(Token = "0x400852A")]
|
||||
Sync,
|
||||
// Token: 0x0400852B RID: 34091
|
||||
[Token(Token = "0x400852B")]
|
||||
Full,
|
||||
// Token: 0x0400852C RID: 34092
|
||||
[Token(Token = "0x400852C")]
|
||||
Finish
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,655 @@
|
||||
using System;
|
||||
using System.IO;
|
||||
using System.Text;
|
||||
using BestHTTP.Extensions;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Decompression.Zlib
|
||||
{
|
||||
// Token: 0x02002086 RID: 8326
|
||||
[Token(Token = "0x2002086")]
|
||||
public class GZipStream : Stream
|
||||
{
|
||||
// Token: 0x17002148 RID: 8520
|
||||
// (get) Token: 0x0600D13C RID: 53564 RVA: 0x002FA100 File Offset: 0x002F8300
|
||||
// (set) Token: 0x0600D13D RID: 53565 RVA: 0x002FA114 File Offset: 0x002F8314
|
||||
[Token(Token = "0x17002148")]
|
||||
public string Comment
|
||||
{
|
||||
[Token(Token = "0x600D13C")]
|
||||
[Address(RVA = "0x417710", Offset = "0x416710", VA = "0x180417710")]
|
||||
get
|
||||
{
|
||||
return this._Comment;
|
||||
}
|
||||
[Token(Token = "0x600D13D")]
|
||||
[Address(RVA = "0x2411A30", Offset = "0x2410A30", VA = "0x182411A30")]
|
||||
set
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D13D)
|
||||
|
||||
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: 0x17002149 RID: 8521
|
||||
// (get) Token: 0x0600D13E RID: 53566 RVA: 0x002FA13C File Offset: 0x002F833C
|
||||
// (set) Token: 0x0600D13F RID: 53567 RVA: 0x002FA150 File Offset: 0x002F8350
|
||||
[Token(Token = "0x17002149")]
|
||||
public string FileName
|
||||
{
|
||||
[Token(Token = "0x600D13E")]
|
||||
[Address(RVA = "0x4936E0", Offset = "0x4926E0", VA = "0x1804936E0")]
|
||||
get
|
||||
{
|
||||
return this._FileName;
|
||||
}
|
||||
[Token(Token = "0x600D13F")]
|
||||
[Address(RVA = "0x2411AB0", Offset = "0x2410AB0", VA = "0x182411AB0")]
|
||||
set
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D13F)
|
||||
|
||||
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: 0x1700214A RID: 8522
|
||||
// (get) Token: 0x0600D140 RID: 53568 RVA: 0x002FA1EC File Offset: 0x002F83EC
|
||||
[Token(Token = "0x1700214A")]
|
||||
public int Crc32
|
||||
{
|
||||
[Token(Token = "0x600D140")]
|
||||
[Address(RVA = "0x66A4F0", Offset = "0x6694F0", VA = "0x18066A4F0")]
|
||||
get
|
||||
{
|
||||
return this._Crc32;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600D141 RID: 53569 RVA: 0x002FA200 File Offset: 0x002F8400
|
||||
[Token(Token = "0x600D141")]
|
||||
[Address(RVA = "0x2411580", Offset = "0x2410580", VA = "0x182411580")]
|
||||
public GZipStream(Stream stream, CompressionMode mode)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0600D142 RID: 53570 RVA: 0x002FA210 File Offset: 0x002F8410
|
||||
[Token(Token = "0x600D142")]
|
||||
[Address(RVA = "0x2411680", Offset = "0x2410680", VA = "0x182411680")]
|
||||
public GZipStream(Stream stream, CompressionMode mode, CompressionLevel level)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0600D143 RID: 53571 RVA: 0x002FA220 File Offset: 0x002F8420
|
||||
[Token(Token = "0x600D143")]
|
||||
[Address(RVA = "0x24116A0", Offset = "0x24106A0", VA = "0x1824116A0")]
|
||||
public GZipStream(Stream stream, CompressionMode mode, bool leaveOpen)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0600D144 RID: 53572 RVA: 0x002FA230 File Offset: 0x002F8430
|
||||
[Token(Token = "0x600D144")]
|
||||
[Address(RVA = "0x24115B0", Offset = "0x24105B0", VA = "0x1824115B0")]
|
||||
public GZipStream(Stream stream, CompressionMode mode, CompressionLevel level, bool leaveOpen)
|
||||
{
|
||||
ZlibBaseStream zlibBaseStream;
|
||||
this._baseStream = zlibBaseStream;
|
||||
}
|
||||
|
||||
// Token: 0x1700214B RID: 8523
|
||||
// (get) Token: 0x0600D145 RID: 53573 RVA: 0x002FA24C File Offset: 0x002F844C
|
||||
// (set) Token: 0x0600D146 RID: 53574 RVA: 0x002FA26C File Offset: 0x002F846C
|
||||
[Token(Token = "0x1700214B")]
|
||||
public virtual FlushType FlushMode
|
||||
{
|
||||
[Token(Token = "0x600D145")]
|
||||
[Address(RVA = "0x2411810", Offset = "0x2410810", VA = "0x182411810", Slot = "31")]
|
||||
get
|
||||
{
|
||||
return this._baseStream._flushMode;
|
||||
}
|
||||
[Token(Token = "0x600D146")]
|
||||
[Address(RVA = "0x2411C20", Offset = "0x2410C20", VA = "0x182411C20", Slot = "32")]
|
||||
set
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D146)
|
||||
|
||||
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: 0x1700214C RID: 8524
|
||||
// (get) Token: 0x0600D147 RID: 53575 RVA: 0x002FA29C File Offset: 0x002F849C
|
||||
// (set) Token: 0x0600D148 RID: 53576 RVA: 0x002FA2BC File Offset: 0x002F84BC
|
||||
[Token(Token = "0x1700214C")]
|
||||
public int BufferSize
|
||||
{
|
||||
[Token(Token = "0x600D147")]
|
||||
[Address(RVA = "0x24116D0", Offset = "0x24106D0", VA = "0x1824116D0")]
|
||||
get
|
||||
{
|
||||
return this._baseStream._bufferSize;
|
||||
}
|
||||
[Token(Token = "0x600D148")]
|
||||
[Address(RVA = "0x24118E0", Offset = "0x24108E0", VA = "0x1824118E0")]
|
||||
set
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D148)
|
||||
|
||||
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: 0x1700214D RID: 8525
|
||||
// (get) Token: 0x0600D149 RID: 53577 RVA: 0x002FA2F8 File Offset: 0x002F84F8
|
||||
[Token(Token = "0x1700214D")]
|
||||
public virtual long TotalIn
|
||||
{
|
||||
[Token(Token = "0x600D149")]
|
||||
[Address(RVA = "0x2411880", Offset = "0x2410880", VA = "0x182411880", Slot = "33")]
|
||||
get
|
||||
{
|
||||
return this._baseStream._z.TotalBytesIn;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x1700214E RID: 8526
|
||||
// (get) Token: 0x0600D14A RID: 53578 RVA: 0x002FA31C File Offset: 0x002F851C
|
||||
[Token(Token = "0x1700214E")]
|
||||
public virtual long TotalOut
|
||||
{
|
||||
[Token(Token = "0x600D14A")]
|
||||
[Address(RVA = "0x24118B0", Offset = "0x24108B0", VA = "0x1824118B0", Slot = "34")]
|
||||
get
|
||||
{
|
||||
return this._baseStream._z.TotalBytesOut;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600D14B RID: 53579 RVA: 0x002FA340 File Offset: 0x002F8540
|
||||
[Token(Token = "0x600D14B")]
|
||||
[Address(RVA = "0x2410A90", Offset = "0x240FA90", VA = "0x182410A90", 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;
|
||||
int crc = this._baseStream.Crc32;
|
||||
this._Crc32 = crc;
|
||||
}
|
||||
}
|
||||
this._disposed = true;
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
if (num == 0)
|
||||
{
|
||||
return;
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x1700214F RID: 8527
|
||||
// (get) Token: 0x0600D14C RID: 53580 RVA: 0x002FA39C File Offset: 0x002F859C
|
||||
[Token(Token = "0x1700214F")]
|
||||
public override bool CanRead
|
||||
{
|
||||
[Token(Token = "0x600D14C")]
|
||||
[Address(RVA = "0x24116F0", Offset = "0x24106F0", VA = "0x1824116F0", Slot = "7")]
|
||||
get
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D14C)
|
||||
|
||||
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: 0x17002150 RID: 8528
|
||||
// (get) Token: 0x0600D14D RID: 53581 RVA: 0x002FA3D0 File Offset: 0x002F85D0
|
||||
[Token(Token = "0x17002150")]
|
||||
public override bool CanSeek
|
||||
{
|
||||
[Token(Token = "0x600D14D")]
|
||||
[Address(RVA = "0x424690", Offset = "0x423690", VA = "0x180424690", Slot = "8")]
|
||||
get
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17002151 RID: 8529
|
||||
// (get) Token: 0x0600D14E RID: 53582 RVA: 0x002FA3E0 File Offset: 0x002F85E0
|
||||
[Token(Token = "0x17002151")]
|
||||
public override bool CanWrite
|
||||
{
|
||||
[Token(Token = "0x600D14E")]
|
||||
[Address(RVA = "0x2411780", Offset = "0x2410780", VA = "0x182411780", Slot = "9")]
|
||||
get
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D14E)
|
||||
|
||||
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: 0x0600D14F RID: 53583 RVA: 0x002FA414 File Offset: 0x002F8614
|
||||
[Token(Token = "0x600D14F")]
|
||||
[Address(RVA = "0x2411020", Offset = "0x2410020", VA = "0x182411020", Slot = "17")]
|
||||
public override void Flush()
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D14F)
|
||||
|
||||
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: 0x17002152 RID: 8530
|
||||
// (get) Token: 0x0600D150 RID: 53584 RVA: 0x002FA440 File Offset: 0x002F8640
|
||||
[Token(Token = "0x17002152")]
|
||||
public override long Length
|
||||
{
|
||||
[Token(Token = "0x600D150")]
|
||||
[Address(RVA = "0x2411830", Offset = "0x2410830", VA = "0x182411830", Slot = "10")]
|
||||
get
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D150)
|
||||
|
||||
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: 0x17002153 RID: 8531
|
||||
// (get) Token: 0x0600D151 RID: 53585 RVA: 0x002FA454 File Offset: 0x002F8654
|
||||
// (set) Token: 0x0600D152 RID: 53586 RVA: 0x002FA4A0 File Offset: 0x002F86A0
|
||||
[Token(Token = "0x17002153")]
|
||||
public override long Position
|
||||
{
|
||||
[Token(Token = "0x600D151")]
|
||||
[Address(RVA = "0x10AA480", Offset = "0x10A9480", VA = "0x1810AA480", 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 = "0x600D152")]
|
||||
[Address(RVA = "0x2411CA0", Offset = "0x2410CA0", VA = "0x182411CA0", Slot = "12")]
|
||||
set
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D152)
|
||||
|
||||
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: 0x0600D153 RID: 53587 RVA: 0x002FA4B4 File Offset: 0x002F86B4
|
||||
[Token(Token = "0x600D153")]
|
||||
[Address(RVA = "0x24110A0", Offset = "0x24100A0", VA = "0x1824110A0", Slot = "27")]
|
||||
public override int Read(byte[] buffer, int offset, int count)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D153)
|
||||
|
||||
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: 0x0600D154 RID: 53588 RVA: 0x002FA5B0 File Offset: 0x002F87B0
|
||||
[Token(Token = "0x600D154")]
|
||||
[Address(RVA = "0x2411340", Offset = "0x2410340", VA = "0x182411340", Slot = "25")]
|
||||
public override long Seek(long offset, SeekOrigin origin)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D154)
|
||||
|
||||
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: 0x0600D155 RID: 53589 RVA: 0x002FA5C4 File Offset: 0x002F87C4
|
||||
[Token(Token = "0x600D155")]
|
||||
[Address(RVA = "0x2411390", Offset = "0x2410390", VA = "0x182411390", Slot = "26")]
|
||||
public override void SetLength(long value)
|
||||
{
|
||||
((IDisposable)this._baseStream).Dispose();
|
||||
}
|
||||
|
||||
// Token: 0x0600D156 RID: 53590 RVA: 0x002FA5E4 File Offset: 0x002F87E4
|
||||
[Token(Token = "0x600D156")]
|
||||
[Address(RVA = "0x24113C0", Offset = "0x24103C0", VA = "0x1824113C0", Slot = "29")]
|
||||
public override void Write(byte[] buffer, int offset, int count)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D156)
|
||||
|
||||
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: 0x0600D157 RID: 53591 RVA: 0x002FA640 File Offset: 0x002F8840
|
||||
[Token(Token = "0x600D157")]
|
||||
[Address(RVA = "0x2410B50", Offset = "0x240FB50", VA = "0x182410B50")]
|
||||
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: 0x040084A2 RID: 33954
|
||||
[FieldOffset(Offset = "0x28")]
|
||||
[Token(Token = "0x40084A2")]
|
||||
public DateTime? LastModified;
|
||||
|
||||
// Token: 0x040084A3 RID: 33955
|
||||
[FieldOffset(Offset = "0x38")]
|
||||
[Token(Token = "0x40084A3")]
|
||||
private int _headerByteCount;
|
||||
|
||||
// Token: 0x040084A4 RID: 33956
|
||||
[FieldOffset(Offset = "0x40")]
|
||||
[Token(Token = "0x40084A4")]
|
||||
internal ZlibBaseStream _baseStream;
|
||||
|
||||
// Token: 0x040084A5 RID: 33957
|
||||
[FieldOffset(Offset = "0x48")]
|
||||
[Token(Token = "0x40084A5")]
|
||||
private bool _disposed;
|
||||
|
||||
// Token: 0x040084A6 RID: 33958
|
||||
[FieldOffset(Offset = "0x49")]
|
||||
[Token(Token = "0x40084A6")]
|
||||
private bool _firstReadDone;
|
||||
|
||||
// Token: 0x040084A7 RID: 33959
|
||||
[FieldOffset(Offset = "0x50")]
|
||||
[Token(Token = "0x40084A7")]
|
||||
private string _FileName;
|
||||
|
||||
// Token: 0x040084A8 RID: 33960
|
||||
[FieldOffset(Offset = "0x58")]
|
||||
[Token(Token = "0x40084A8")]
|
||||
private string _Comment;
|
||||
|
||||
// Token: 0x040084A9 RID: 33961
|
||||
[FieldOffset(Offset = "0x60")]
|
||||
[Token(Token = "0x40084A9")]
|
||||
private int _Crc32;
|
||||
|
||||
// Token: 0x040084AA RID: 33962
|
||||
[Token(Token = "0x40084AA")]
|
||||
internal static readonly DateTime _unixEpoch = 0;
|
||||
|
||||
// Token: 0x040084AB RID: 33963
|
||||
[Token(Token = "0x40084AB")]
|
||||
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: 0x02002087 RID: 8327
|
||||
[Token(Token = "0x2002087")]
|
||||
internal sealed class InfTree
|
||||
{
|
||||
// Token: 0x0600D159 RID: 53593 RVA: 0x002FA754 File Offset: 0x002F8954
|
||||
[Token(Token = "0x600D159")]
|
||||
[Address(RVA = "0x2416610", Offset = "0x2415610", VA = "0x182416610")]
|
||||
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: 0x0600D15A RID: 53594 RVA: 0x002FAA70 File Offset: 0x002F8C70
|
||||
[Token(Token = "0x600D15A")]
|
||||
[Address(RVA = "0x24171F0", Offset = "0x24161F0", VA = "0x1824171F0")]
|
||||
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: 0x0600D15B RID: 53595 RVA: 0x002FAAC4 File Offset: 0x002F8CC4
|
||||
[Token(Token = "0x600D15B")]
|
||||
[Address(RVA = "0x2417340", Offset = "0x2416340", VA = "0x182417340")]
|
||||
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: 0x0600D15C RID: 53596 RVA: 0x002FAB64 File Offset: 0x002F8D64
|
||||
[Token(Token = "0x600D15C")]
|
||||
[Address(RVA = "0x2417650", Offset = "0x2416650", VA = "0x182417650")]
|
||||
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: 0x0600D15D RID: 53597 RVA: 0x002FABA0 File Offset: 0x002F8DA0
|
||||
[Token(Token = "0x600D15D")]
|
||||
[Address(RVA = "0x24177E0", Offset = "0x24167E0", VA = "0x1824177E0")]
|
||||
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: 0x0600D15E RID: 53598 RVA: 0x002FACC0 File Offset: 0x002F8EC0
|
||||
[Token(Token = "0x600D15E")]
|
||||
[Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")]
|
||||
public InfTree()
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0600D15F RID: 53599 RVA: 0x002FACD4 File Offset: 0x002F8ED4
|
||||
// Note: this type is marked as 'beforefieldinit'.
|
||||
[Token(Token = "0x600D15F")]
|
||||
[Address(RVA = "0x2416490", Offset = "0x2415490", VA = "0x182416490")]
|
||||
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: 0x040084AC RID: 33964
|
||||
[Token(Token = "0x40084AC")]
|
||||
private const int MANY = 1440;
|
||||
|
||||
// Token: 0x040084AD RID: 33965
|
||||
[Token(Token = "0x40084AD")]
|
||||
private const int Z_OK = 0;
|
||||
|
||||
// Token: 0x040084AE RID: 33966
|
||||
[Token(Token = "0x40084AE")]
|
||||
private const int Z_STREAM_END = 1;
|
||||
|
||||
// Token: 0x040084AF RID: 33967
|
||||
[Token(Token = "0x40084AF")]
|
||||
private const int Z_NEED_DICT = 2;
|
||||
|
||||
// Token: 0x040084B0 RID: 33968
|
||||
[Token(Token = "0x40084B0")]
|
||||
private const int Z_ERRNO = -1;
|
||||
|
||||
// Token: 0x040084B1 RID: 33969
|
||||
[Token(Token = "0x40084B1")]
|
||||
private const int Z_STREAM_ERROR = -2;
|
||||
|
||||
// Token: 0x040084B2 RID: 33970
|
||||
[Token(Token = "0x40084B2")]
|
||||
private const int Z_DATA_ERROR = -3;
|
||||
|
||||
// Token: 0x040084B3 RID: 33971
|
||||
[Token(Token = "0x40084B3")]
|
||||
private const int Z_MEM_ERROR = -4;
|
||||
|
||||
// Token: 0x040084B4 RID: 33972
|
||||
[Token(Token = "0x40084B4")]
|
||||
private const int Z_BUF_ERROR = -5;
|
||||
|
||||
// Token: 0x040084B5 RID: 33973
|
||||
[Token(Token = "0x40084B5")]
|
||||
private const int Z_VERSION_ERROR = -6;
|
||||
|
||||
// Token: 0x040084B6 RID: 33974
|
||||
[Token(Token = "0x40084B6")]
|
||||
internal const int fixed_bl = 9;
|
||||
|
||||
// Token: 0x040084B7 RID: 33975
|
||||
[Token(Token = "0x40084B7")]
|
||||
internal const int fixed_bd = 5;
|
||||
|
||||
// Token: 0x040084B8 RID: 33976
|
||||
[Token(Token = "0x40084B8")]
|
||||
internal static readonly int[] fixed_tl;
|
||||
|
||||
// Token: 0x040084B9 RID: 33977
|
||||
[Token(Token = "0x40084B9")]
|
||||
internal static readonly int[] fixed_td;
|
||||
|
||||
// Token: 0x040084BA RID: 33978
|
||||
[Token(Token = "0x40084BA")]
|
||||
internal static readonly int[] cplens;
|
||||
|
||||
// Token: 0x040084BB RID: 33979
|
||||
[Token(Token = "0x40084BB")]
|
||||
internal static readonly int[] cplext;
|
||||
|
||||
// Token: 0x040084BC RID: 33980
|
||||
[Token(Token = "0x40084BC")]
|
||||
internal static readonly int[] cpdist;
|
||||
|
||||
// Token: 0x040084BD RID: 33981
|
||||
[Token(Token = "0x40084BD")]
|
||||
internal static readonly int[] cpdext;
|
||||
|
||||
// Token: 0x040084BE RID: 33982
|
||||
[Token(Token = "0x40084BE")]
|
||||
internal const int BMAX = 15;
|
||||
|
||||
// Token: 0x040084BF RID: 33983
|
||||
[FieldOffset(Offset = "0x10")]
|
||||
[Token(Token = "0x40084BF")]
|
||||
internal int[] hn;
|
||||
|
||||
// Token: 0x040084C0 RID: 33984
|
||||
[FieldOffset(Offset = "0x18")]
|
||||
[Token(Token = "0x40084C0")]
|
||||
internal int[] v;
|
||||
|
||||
// Token: 0x040084C1 RID: 33985
|
||||
[FieldOffset(Offset = "0x20")]
|
||||
[Token(Token = "0x40084C1")]
|
||||
internal int[] c;
|
||||
|
||||
// Token: 0x040084C2 RID: 33986
|
||||
[FieldOffset(Offset = "0x28")]
|
||||
[Token(Token = "0x40084C2")]
|
||||
internal int[] r;
|
||||
|
||||
// Token: 0x040084C3 RID: 33987
|
||||
[FieldOffset(Offset = "0x30")]
|
||||
[Token(Token = "0x40084C3")]
|
||||
internal int[] u;
|
||||
|
||||
// Token: 0x040084C4 RID: 33988
|
||||
[FieldOffset(Offset = "0x38")]
|
||||
[Token(Token = "0x40084C4")]
|
||||
internal int[] x;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,352 @@
|
||||
using System;
|
||||
using System.Runtime.CompilerServices;
|
||||
using BestHTTP.Extensions;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Decompression.Zlib
|
||||
{
|
||||
// Token: 0x02002088 RID: 8328
|
||||
[Token(Token = "0x2002088")]
|
||||
internal sealed class InflateBlocks
|
||||
{
|
||||
// Token: 0x0600D160 RID: 53600 RVA: 0x002FAD80 File Offset: 0x002F8F80
|
||||
[Token(Token = "0x600D160")]
|
||||
[Address(RVA = "0x24193C0", Offset = "0x24183C0", VA = "0x1824193C0")]
|
||||
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: 0x0600D161 RID: 53601 RVA: 0x002FAE14 File Offset: 0x002F9014
|
||||
[Token(Token = "0x600D161")]
|
||||
[Address(RVA = "0x2419250", Offset = "0x2418250", VA = "0x182419250")]
|
||||
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: 0x0600D162 RID: 53602 RVA: 0x002FAE68 File Offset: 0x002F9068
|
||||
[Token(Token = "0x600D162")]
|
||||
[Address(RVA = "0x2417BD0", Offset = "0x2416BD0", VA = "0x182417BD0")]
|
||||
internal int Process(int r)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D162)
|
||||
|
||||
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: 0x0600D163 RID: 53603 RVA: 0x002FBA2C File Offset: 0x002F9C2C
|
||||
[Token(Token = "0x600D163")]
|
||||
[Address(RVA = "0x2417B50", Offset = "0x2416B50", VA = "0x182417B50")]
|
||||
internal void Free()
|
||||
{
|
||||
uint num = this.Reset();
|
||||
VariableSizedBufferPool.Release(this.window);
|
||||
int num2 = 0;
|
||||
this.window = num2;
|
||||
this.hufts = num2;
|
||||
}
|
||||
|
||||
// Token: 0x0600D164 RID: 53604 RVA: 0x002FBA5C File Offset: 0x002F9C5C
|
||||
[Token(Token = "0x600D164")]
|
||||
[Address(RVA = "0x2419310", Offset = "0x2418310", VA = "0x182419310")]
|
||||
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: 0x0600D165 RID: 53605 RVA: 0x002FBA8C File Offset: 0x002F9C8C
|
||||
[Token(Token = "0x600D165")]
|
||||
[Address(RVA = "0x4EAF20", Offset = "0x4E9F20", VA = "0x1804EAF20")]
|
||||
internal int SyncPoint()
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D165)
|
||||
|
||||
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: 0x0600D166 RID: 53606 RVA: 0x002FBAA4 File Offset: 0x002F9CA4
|
||||
[Token(Token = "0x600D166")]
|
||||
[Address(RVA = "0x24179A0", Offset = "0x24169A0", VA = "0x1824179A0")]
|
||||
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: 0x0600D167 RID: 53607 RVA: 0x002FBBD8 File Offset: 0x002F9DD8
|
||||
// Note: this type is marked as 'beforefieldinit'.
|
||||
[Token(Token = "0x600D167")]
|
||||
[Address(RVA = "0x2419360", Offset = "0x2418360", VA = "0x182419360")]
|
||||
static InflateBlocks()
|
||||
{
|
||||
int[] array = new int[19];
|
||||
RuntimeHelpers.InitializeArray(array, fieldof(<PrivateImplementationDetails>.1FDC8DB567F5AAA7068D0D2A601CD71657CBDF38).FieldHandle);
|
||||
InflateBlocks.border = array;
|
||||
}
|
||||
|
||||
// Token: 0x040084C5 RID: 33989
|
||||
[Token(Token = "0x40084C5")]
|
||||
private const int MANY = 1440;
|
||||
|
||||
// Token: 0x040084C6 RID: 33990
|
||||
[Token(Token = "0x40084C6")]
|
||||
internal static readonly int[] border;
|
||||
|
||||
// Token: 0x040084C7 RID: 33991
|
||||
[FieldOffset(Offset = "0x10")]
|
||||
[Token(Token = "0x40084C7")]
|
||||
private InflateBlocks.InflateBlockMode mode;
|
||||
|
||||
// Token: 0x040084C8 RID: 33992
|
||||
[FieldOffset(Offset = "0x14")]
|
||||
[Token(Token = "0x40084C8")]
|
||||
internal int left;
|
||||
|
||||
// Token: 0x040084C9 RID: 33993
|
||||
[FieldOffset(Offset = "0x18")]
|
||||
[Token(Token = "0x40084C9")]
|
||||
internal int table;
|
||||
|
||||
// Token: 0x040084CA RID: 33994
|
||||
[FieldOffset(Offset = "0x1C")]
|
||||
[Token(Token = "0x40084CA")]
|
||||
internal int index;
|
||||
|
||||
// Token: 0x040084CB RID: 33995
|
||||
[FieldOffset(Offset = "0x20")]
|
||||
[Token(Token = "0x40084CB")]
|
||||
internal int[] blens;
|
||||
|
||||
// Token: 0x040084CC RID: 33996
|
||||
[FieldOffset(Offset = "0x28")]
|
||||
[Token(Token = "0x40084CC")]
|
||||
internal int[] bb;
|
||||
|
||||
// Token: 0x040084CD RID: 33997
|
||||
[FieldOffset(Offset = "0x30")]
|
||||
[Token(Token = "0x40084CD")]
|
||||
internal int[] tb;
|
||||
|
||||
// Token: 0x040084CE RID: 33998
|
||||
[FieldOffset(Offset = "0x38")]
|
||||
[Token(Token = "0x40084CE")]
|
||||
internal InflateCodes codes;
|
||||
|
||||
// Token: 0x040084CF RID: 33999
|
||||
[FieldOffset(Offset = "0x40")]
|
||||
[Token(Token = "0x40084CF")]
|
||||
internal int last;
|
||||
|
||||
// Token: 0x040084D0 RID: 34000
|
||||
[FieldOffset(Offset = "0x48")]
|
||||
[Token(Token = "0x40084D0")]
|
||||
internal ZlibCodec _codec;
|
||||
|
||||
// Token: 0x040084D1 RID: 34001
|
||||
[FieldOffset(Offset = "0x50")]
|
||||
[Token(Token = "0x40084D1")]
|
||||
internal int bitk;
|
||||
|
||||
// Token: 0x040084D2 RID: 34002
|
||||
[FieldOffset(Offset = "0x54")]
|
||||
[Token(Token = "0x40084D2")]
|
||||
internal int bitb;
|
||||
|
||||
// Token: 0x040084D3 RID: 34003
|
||||
[FieldOffset(Offset = "0x58")]
|
||||
[Token(Token = "0x40084D3")]
|
||||
internal int[] hufts;
|
||||
|
||||
// Token: 0x040084D4 RID: 34004
|
||||
[FieldOffset(Offset = "0x60")]
|
||||
[Token(Token = "0x40084D4")]
|
||||
internal byte[] window;
|
||||
|
||||
// Token: 0x040084D5 RID: 34005
|
||||
[FieldOffset(Offset = "0x68")]
|
||||
[Token(Token = "0x40084D5")]
|
||||
internal int end;
|
||||
|
||||
// Token: 0x040084D6 RID: 34006
|
||||
[FieldOffset(Offset = "0x6C")]
|
||||
[Token(Token = "0x40084D6")]
|
||||
internal int readAt;
|
||||
|
||||
// Token: 0x040084D7 RID: 34007
|
||||
[FieldOffset(Offset = "0x70")]
|
||||
[Token(Token = "0x40084D7")]
|
||||
internal int writeAt;
|
||||
|
||||
// Token: 0x040084D8 RID: 34008
|
||||
[FieldOffset(Offset = "0x78")]
|
||||
[Token(Token = "0x40084D8")]
|
||||
internal object checkfn;
|
||||
|
||||
// Token: 0x040084D9 RID: 34009
|
||||
[FieldOffset(Offset = "0x80")]
|
||||
[Token(Token = "0x40084D9")]
|
||||
internal uint check;
|
||||
|
||||
// Token: 0x040084DA RID: 34010
|
||||
[FieldOffset(Offset = "0x88")]
|
||||
[Token(Token = "0x40084DA")]
|
||||
internal InfTree inftree;
|
||||
|
||||
// Token: 0x02002089 RID: 8329
|
||||
[Token(Token = "0x2002089")]
|
||||
private enum InflateBlockMode
|
||||
{
|
||||
// Token: 0x040084DC RID: 34012
|
||||
[Token(Token = "0x40084DC")]
|
||||
TYPE,
|
||||
// Token: 0x040084DD RID: 34013
|
||||
[Token(Token = "0x40084DD")]
|
||||
LENS,
|
||||
// Token: 0x040084DE RID: 34014
|
||||
[Token(Token = "0x40084DE")]
|
||||
STORED,
|
||||
// Token: 0x040084DF RID: 34015
|
||||
[Token(Token = "0x40084DF")]
|
||||
TABLE,
|
||||
// Token: 0x040084E0 RID: 34016
|
||||
[Token(Token = "0x40084E0")]
|
||||
BTREE,
|
||||
// Token: 0x040084E1 RID: 34017
|
||||
[Token(Token = "0x40084E1")]
|
||||
DTREE,
|
||||
// Token: 0x040084E2 RID: 34018
|
||||
[Token(Token = "0x40084E2")]
|
||||
CODES,
|
||||
// Token: 0x040084E3 RID: 34019
|
||||
[Token(Token = "0x40084E3")]
|
||||
DRY,
|
||||
// Token: 0x040084E4 RID: 34020
|
||||
[Token(Token = "0x40084E4")]
|
||||
DONE,
|
||||
// Token: 0x040084E5 RID: 34021
|
||||
[Token(Token = "0x40084E5")]
|
||||
BAD
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,431 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Decompression.Zlib
|
||||
{
|
||||
// Token: 0x0200208B RID: 8331
|
||||
[Token(Token = "0x200208B")]
|
||||
internal sealed class InflateCodes
|
||||
{
|
||||
// Token: 0x0600D169 RID: 53609 RVA: 0x002FBC20 File Offset: 0x002F9E20
|
||||
[Token(Token = "0x600D169")]
|
||||
[Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")]
|
||||
internal InflateCodes()
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0600D16A RID: 53610 RVA: 0x002FBC34 File Offset: 0x002F9E34
|
||||
[Token(Token = "0x600D16A")]
|
||||
[Address(RVA = "0x4EBB60", Offset = "0x4EAB60", VA = "0x1804EBB60")]
|
||||
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: 0x0600D16B RID: 53611 RVA: 0x002FBC7C File Offset: 0x002F9E7C
|
||||
[Token(Token = "0x600D16B")]
|
||||
[Address(RVA = "0x241A0C0", Offset = "0x24190C0", VA = "0x18241A0C0")]
|
||||
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: 0x0600D16C RID: 53612 RVA: 0x002FC058 File Offset: 0x002FA258
|
||||
[Token(Token = "0x600D16C")]
|
||||
[Address(RVA = "0x24194F0", Offset = "0x24184F0", VA = "0x1824194F0")]
|
||||
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: 0x040084E7 RID: 34023
|
||||
[Token(Token = "0x40084E7")]
|
||||
private const int START = 0;
|
||||
|
||||
// Token: 0x040084E8 RID: 34024
|
||||
[Token(Token = "0x40084E8")]
|
||||
private const int LEN = 1;
|
||||
|
||||
// Token: 0x040084E9 RID: 34025
|
||||
[Token(Token = "0x40084E9")]
|
||||
private const int LENEXT = 2;
|
||||
|
||||
// Token: 0x040084EA RID: 34026
|
||||
[Token(Token = "0x40084EA")]
|
||||
private const int DIST = 3;
|
||||
|
||||
// Token: 0x040084EB RID: 34027
|
||||
[Token(Token = "0x40084EB")]
|
||||
private const int DISTEXT = 4;
|
||||
|
||||
// Token: 0x040084EC RID: 34028
|
||||
[Token(Token = "0x40084EC")]
|
||||
private const int COPY = 5;
|
||||
|
||||
// Token: 0x040084ED RID: 34029
|
||||
[Token(Token = "0x40084ED")]
|
||||
private const int LIT = 6;
|
||||
|
||||
// Token: 0x040084EE RID: 34030
|
||||
[Token(Token = "0x40084EE")]
|
||||
private const int WASH = 7;
|
||||
|
||||
// Token: 0x040084EF RID: 34031
|
||||
[Token(Token = "0x40084EF")]
|
||||
private const int END = 8;
|
||||
|
||||
// Token: 0x040084F0 RID: 34032
|
||||
[Token(Token = "0x40084F0")]
|
||||
private const int BADCODE = 9;
|
||||
|
||||
// Token: 0x040084F1 RID: 34033
|
||||
[FieldOffset(Offset = "0x10")]
|
||||
[Token(Token = "0x40084F1")]
|
||||
internal int mode;
|
||||
|
||||
// Token: 0x040084F2 RID: 34034
|
||||
[FieldOffset(Offset = "0x14")]
|
||||
[Token(Token = "0x40084F2")]
|
||||
internal int len;
|
||||
|
||||
// Token: 0x040084F3 RID: 34035
|
||||
[FieldOffset(Offset = "0x18")]
|
||||
[Token(Token = "0x40084F3")]
|
||||
internal int[] tree;
|
||||
|
||||
// Token: 0x040084F4 RID: 34036
|
||||
[FieldOffset(Offset = "0x20")]
|
||||
[Token(Token = "0x40084F4")]
|
||||
internal int tree_index;
|
||||
|
||||
// Token: 0x040084F5 RID: 34037
|
||||
[FieldOffset(Offset = "0x24")]
|
||||
[Token(Token = "0x40084F5")]
|
||||
internal int need;
|
||||
|
||||
// Token: 0x040084F6 RID: 34038
|
||||
[FieldOffset(Offset = "0x28")]
|
||||
[Token(Token = "0x40084F6")]
|
||||
internal int lit;
|
||||
|
||||
// Token: 0x040084F7 RID: 34039
|
||||
[FieldOffset(Offset = "0x2C")]
|
||||
[Token(Token = "0x40084F7")]
|
||||
internal int bitsToGet;
|
||||
|
||||
// Token: 0x040084F8 RID: 34040
|
||||
[FieldOffset(Offset = "0x30")]
|
||||
[Token(Token = "0x40084F8")]
|
||||
internal int dist;
|
||||
|
||||
// Token: 0x040084F9 RID: 34041
|
||||
[FieldOffset(Offset = "0x34")]
|
||||
[Token(Token = "0x40084F9")]
|
||||
internal byte lbits;
|
||||
|
||||
// Token: 0x040084FA RID: 34042
|
||||
[FieldOffset(Offset = "0x35")]
|
||||
[Token(Token = "0x40084FA")]
|
||||
internal byte dbits;
|
||||
|
||||
// Token: 0x040084FB RID: 34043
|
||||
[FieldOffset(Offset = "0x38")]
|
||||
[Token(Token = "0x40084FB")]
|
||||
internal int[] ltree;
|
||||
|
||||
// Token: 0x040084FC RID: 34044
|
||||
[FieldOffset(Offset = "0x40")]
|
||||
[Token(Token = "0x40084FC")]
|
||||
internal int ltree_index;
|
||||
|
||||
// Token: 0x040084FD RID: 34045
|
||||
[FieldOffset(Offset = "0x48")]
|
||||
[Token(Token = "0x40084FD")]
|
||||
internal int[] dtree;
|
||||
|
||||
// Token: 0x040084FE RID: 34046
|
||||
[FieldOffset(Offset = "0x50")]
|
||||
[Token(Token = "0x40084FE")]
|
||||
internal int dtree_index;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,358 @@
|
||||
using System;
|
||||
using BestHTTP.Extensions;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Decompression.Zlib
|
||||
{
|
||||
// Token: 0x0200208C RID: 8332
|
||||
[Token(Token = "0x200208C")]
|
||||
internal sealed class InflateManager
|
||||
{
|
||||
// Token: 0x17002154 RID: 8532
|
||||
// (get) Token: 0x0600D16D RID: 53613 RVA: 0x002FC0E0 File Offset: 0x002FA2E0
|
||||
// (set) Token: 0x0600D16E RID: 53614 RVA: 0x002FC0F4 File Offset: 0x002FA2F4
|
||||
[Token(Token = "0x17002154")]
|
||||
internal bool HandleRfc1950HeaderBytes
|
||||
{
|
||||
[Token(Token = "0x600D16D")]
|
||||
[Address(RVA = "0x5AB2E0", Offset = "0x5AA2E0", VA = "0x1805AB2E0")]
|
||||
get
|
||||
{
|
||||
return this._handleRfc1950HeaderBytes;
|
||||
}
|
||||
[Token(Token = "0x600D16E")]
|
||||
[Address(RVA = "0x5AB400", Offset = "0x5AA400", VA = "0x1805AB400")]
|
||||
set
|
||||
{
|
||||
this._handleRfc1950HeaderBytes = value;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600D16F RID: 53615 RVA: 0x002FC108 File Offset: 0x002FA308
|
||||
[Token(Token = "0x600D16F")]
|
||||
[Address(RVA = "0x1BCA0F0", Offset = "0x1BC90F0", VA = "0x181BCA0F0")]
|
||||
public InflateManager()
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0600D170 RID: 53616 RVA: 0x002FC124 File Offset: 0x002FA324
|
||||
[Token(Token = "0x600D170")]
|
||||
[Address(RVA = "0x10AFB40", Offset = "0x10AEB40", VA = "0x1810AFB40")]
|
||||
public InflateManager(bool expectRfc1950HeaderBytes)
|
||||
{
|
||||
this._handleRfc1950HeaderBytes = expectRfc1950HeaderBytes;
|
||||
}
|
||||
|
||||
// Token: 0x0600D171 RID: 53617 RVA: 0x002FC148 File Offset: 0x002FA348
|
||||
[Token(Token = "0x600D171")]
|
||||
[Address(RVA = "0x241B980", Offset = "0x241A980", VA = "0x18241B980")]
|
||||
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: 0x0600D172 RID: 53618 RVA: 0x002FC194 File Offset: 0x002FA394
|
||||
[Token(Token = "0x600D172")]
|
||||
[Address(RVA = "0x241AD90", Offset = "0x2419D90", VA = "0x18241AD90")]
|
||||
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: 0x0600D173 RID: 53619 RVA: 0x002FC1E4 File Offset: 0x002FA3E4
|
||||
[Token(Token = "0x600D173")]
|
||||
[Address(RVA = "0x241B760", Offset = "0x241A760", VA = "0x18241B760")]
|
||||
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: 0x0600D174 RID: 53620 RVA: 0x002FC2E0 File Offset: 0x002FA4E0
|
||||
[Token(Token = "0x600D174")]
|
||||
[Address(RVA = "0x241AE30", Offset = "0x2419E30", VA = "0x18241AE30")]
|
||||
internal int Inflate(FlushType flush)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D174)
|
||||
|
||||
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: 0x0600D175 RID: 53621 RVA: 0x002FC8B8 File Offset: 0x002FAAB8
|
||||
[Token(Token = "0x600D175")]
|
||||
[Address(RVA = "0x241B9D0", Offset = "0x241A9D0", VA = "0x18241B9D0")]
|
||||
internal int SetDictionary(byte[] dictionary)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D175)
|
||||
|
||||
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: 0x0600D176 RID: 53622 RVA: 0x002FC96C File Offset: 0x002FAB6C
|
||||
[Token(Token = "0x600D176")]
|
||||
[Address(RVA = "0x241BB90", Offset = "0x241AB90", VA = "0x18241BB90")]
|
||||
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: 0x0600D177 RID: 53623 RVA: 0x002FCAA8 File Offset: 0x002FACA8
|
||||
[Token(Token = "0x600D177")]
|
||||
[Address(RVA = "0x241BB60", Offset = "0x241AB60", VA = "0x18241BB60")]
|
||||
internal int SyncPoint(ZlibCodec z)
|
||||
{
|
||||
bool flag = this.blocks.mode == InflateBlocks.InflateBlockMode.LENS;
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600D178 RID: 53624 RVA: 0x002FCACC File Offset: 0x002FACCC
|
||||
// Note: this type is marked as 'beforefieldinit'.
|
||||
[Token(Token = "0x600D178")]
|
||||
[Address(RVA = "0x241BE00", Offset = "0x241AE00", VA = "0x18241BE00")]
|
||||
static InflateManager()
|
||||
{
|
||||
byte[] array = new byte[4];
|
||||
array[0] = (byte)((ulong)255L);
|
||||
array[0] = (byte)((ulong)255L);
|
||||
InflateManager.mark = array;
|
||||
}
|
||||
|
||||
// Token: 0x040084FF RID: 34047
|
||||
[Token(Token = "0x40084FF")]
|
||||
private const int PRESET_DICT = 32;
|
||||
|
||||
// Token: 0x04008500 RID: 34048
|
||||
[Token(Token = "0x4008500")]
|
||||
private const int Z_DEFLATED = 8;
|
||||
|
||||
// Token: 0x04008501 RID: 34049
|
||||
[FieldOffset(Offset = "0x10")]
|
||||
[Token(Token = "0x4008501")]
|
||||
private InflateManager.InflateManagerMode mode;
|
||||
|
||||
// Token: 0x04008502 RID: 34050
|
||||
[FieldOffset(Offset = "0x18")]
|
||||
[Token(Token = "0x4008502")]
|
||||
internal ZlibCodec _codec;
|
||||
|
||||
// Token: 0x04008503 RID: 34051
|
||||
[FieldOffset(Offset = "0x20")]
|
||||
[Token(Token = "0x4008503")]
|
||||
internal int method;
|
||||
|
||||
// Token: 0x04008504 RID: 34052
|
||||
[FieldOffset(Offset = "0x24")]
|
||||
[Token(Token = "0x4008504")]
|
||||
internal uint computedCheck;
|
||||
|
||||
// Token: 0x04008505 RID: 34053
|
||||
[FieldOffset(Offset = "0x28")]
|
||||
[Token(Token = "0x4008505")]
|
||||
internal uint expectedCheck;
|
||||
|
||||
// Token: 0x04008506 RID: 34054
|
||||
[FieldOffset(Offset = "0x2C")]
|
||||
[Token(Token = "0x4008506")]
|
||||
internal int marker;
|
||||
|
||||
// Token: 0x04008507 RID: 34055
|
||||
[FieldOffset(Offset = "0x30")]
|
||||
[Token(Token = "0x4008507")]
|
||||
private bool _handleRfc1950HeaderBytes = true;
|
||||
|
||||
// Token: 0x04008508 RID: 34056
|
||||
[FieldOffset(Offset = "0x34")]
|
||||
[Token(Token = "0x4008508")]
|
||||
internal int wbits;
|
||||
|
||||
// Token: 0x04008509 RID: 34057
|
||||
[FieldOffset(Offset = "0x38")]
|
||||
[Token(Token = "0x4008509")]
|
||||
internal InflateBlocks blocks;
|
||||
|
||||
// Token: 0x0400850A RID: 34058
|
||||
[Token(Token = "0x400850A")]
|
||||
private static readonly byte[] mark;
|
||||
|
||||
// Token: 0x0200208D RID: 8333
|
||||
[Token(Token = "0x200208D")]
|
||||
private enum InflateManagerMode
|
||||
{
|
||||
// Token: 0x0400850C RID: 34060
|
||||
[Token(Token = "0x400850C")]
|
||||
METHOD,
|
||||
// Token: 0x0400850D RID: 34061
|
||||
[Token(Token = "0x400850D")]
|
||||
FLAG,
|
||||
// Token: 0x0400850E RID: 34062
|
||||
[Token(Token = "0x400850E")]
|
||||
DICT4,
|
||||
// Token: 0x0400850F RID: 34063
|
||||
[Token(Token = "0x400850F")]
|
||||
DICT3,
|
||||
// Token: 0x04008510 RID: 34064
|
||||
[Token(Token = "0x4008510")]
|
||||
DICT2,
|
||||
// Token: 0x04008511 RID: 34065
|
||||
[Token(Token = "0x4008511")]
|
||||
DICT1,
|
||||
// Token: 0x04008512 RID: 34066
|
||||
[Token(Token = "0x4008512")]
|
||||
DICT0,
|
||||
// Token: 0x04008513 RID: 34067
|
||||
[Token(Token = "0x4008513")]
|
||||
BLOCKS,
|
||||
// Token: 0x04008514 RID: 34068
|
||||
[Token(Token = "0x4008514")]
|
||||
CHECK4,
|
||||
// Token: 0x04008515 RID: 34069
|
||||
[Token(Token = "0x4008515")]
|
||||
CHECK3,
|
||||
// Token: 0x04008516 RID: 34070
|
||||
[Token(Token = "0x4008516")]
|
||||
CHECK2,
|
||||
// Token: 0x04008517 RID: 34071
|
||||
[Token(Token = "0x4008517")]
|
||||
CHECK1,
|
||||
// Token: 0x04008518 RID: 34072
|
||||
[Token(Token = "0x4008518")]
|
||||
DONE,
|
||||
// Token: 0x04008519 RID: 34073
|
||||
[Token(Token = "0x4008519")]
|
||||
BAD
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,63 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Decompression.Zlib
|
||||
{
|
||||
// Token: 0x02002095 RID: 8341
|
||||
[Token(Token = "0x2002095")]
|
||||
internal static class InternalConstants
|
||||
{
|
||||
// Token: 0x0600D187 RID: 53639 RVA: 0x002FD1B0 File Offset: 0x002FB3B0
|
||||
// Note: this type is marked as 'beforefieldinit'.
|
||||
[Token(Token = "0x600D187")]
|
||||
[Address(RVA = "0x241BE90", Offset = "0x241AE90", VA = "0x18241BE90")]
|
||||
static InternalConstants()
|
||||
{
|
||||
int num = InternalConstants.LITERALS;
|
||||
int num2 = InternalConstants.LENGTH_CODES;
|
||||
num++;
|
||||
num2 += num;
|
||||
InternalConstants.L_CODES = num2;
|
||||
}
|
||||
|
||||
// Token: 0x04008543 RID: 34115
|
||||
[Token(Token = "0x4008543")]
|
||||
internal static readonly int MAX_BITS;
|
||||
|
||||
// Token: 0x04008544 RID: 34116
|
||||
[Token(Token = "0x4008544")]
|
||||
internal static readonly int BL_CODES;
|
||||
|
||||
// Token: 0x04008545 RID: 34117
|
||||
[Token(Token = "0x4008545")]
|
||||
internal static readonly int D_CODES;
|
||||
|
||||
// Token: 0x04008546 RID: 34118
|
||||
[Token(Token = "0x4008546")]
|
||||
internal static readonly int LITERALS;
|
||||
|
||||
// Token: 0x04008547 RID: 34119
|
||||
[Token(Token = "0x4008547")]
|
||||
internal static readonly int LENGTH_CODES;
|
||||
|
||||
// Token: 0x04008548 RID: 34120
|
||||
[Token(Token = "0x4008548")]
|
||||
internal static readonly int L_CODES;
|
||||
|
||||
// Token: 0x04008549 RID: 34121
|
||||
[Token(Token = "0x4008549")]
|
||||
internal static readonly int MAX_BL_BITS;
|
||||
|
||||
// Token: 0x0400854A RID: 34122
|
||||
[Token(Token = "0x400854A")]
|
||||
internal static readonly int REP_3_6;
|
||||
|
||||
// Token: 0x0400854B RID: 34123
|
||||
[Token(Token = "0x400854B")]
|
||||
internal static readonly int REPZ_3_10;
|
||||
|
||||
// Token: 0x0400854C RID: 34124
|
||||
[Token(Token = "0x400854C")]
|
||||
internal static readonly int REPZ_11_138;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
using System;
|
||||
using System.Runtime.CompilerServices;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Decompression.Zlib
|
||||
{
|
||||
// Token: 0x0200208A RID: 8330
|
||||
[Token(Token = "0x200208A")]
|
||||
internal static class InternalInflateConstants
|
||||
{
|
||||
// Token: 0x0600D168 RID: 53608 RVA: 0x002FBC00 File Offset: 0x002F9E00
|
||||
// Note: this type is marked as 'beforefieldinit'.
|
||||
[Token(Token = "0x600D168")]
|
||||
[Address(RVA = "0x241BF90", Offset = "0x241AF90", VA = "0x18241BF90")]
|
||||
static InternalInflateConstants()
|
||||
{
|
||||
RuntimeHelpers.InitializeArray(new int[17], fieldof(<PrivateImplementationDetails>.F584B6C7CCA3CD4ECC3B9B1E20D2F2EFB73DBBDF).FieldHandle);
|
||||
}
|
||||
|
||||
// Token: 0x040084E6 RID: 34022
|
||||
[Token(Token = "0x40084E6")]
|
||||
internal static readonly int[] InflateMask;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,66 @@
|
||||
using System;
|
||||
using System.IO;
|
||||
using System.Text;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Decompression.Zlib
|
||||
{
|
||||
// Token: 0x02002094 RID: 8340
|
||||
[Token(Token = "0x2002094")]
|
||||
internal class SharedUtils
|
||||
{
|
||||
// Token: 0x0600D182 RID: 53634 RVA: 0x002FD118 File Offset: 0x002FB318
|
||||
[Token(Token = "0x600D182")]
|
||||
[Address(RVA = "0x10B1650", Offset = "0x10B0650", VA = "0x1810B1650")]
|
||||
public static int URShift(int number, int bits)
|
||||
{
|
||||
return number;
|
||||
}
|
||||
|
||||
// Token: 0x0600D183 RID: 53635 RVA: 0x002FD128 File Offset: 0x002FB328
|
||||
[Token(Token = "0x600D183")]
|
||||
[Address(RVA = "0x241BFF0", Offset = "0x241AFF0", VA = "0x18241BFF0")]
|
||||
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: 0x0600D184 RID: 53636 RVA: 0x002FD164 File Offset: 0x002FB364
|
||||
[Token(Token = "0x600D184")]
|
||||
[Address(RVA = "0x4F19E0", Offset = "0x4F09E0", VA = "0x1804F19E0")]
|
||||
internal static byte[] ToByteArray(string sourceString)
|
||||
{
|
||||
Encoding utf = Encoding.UTF8;
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600D185 RID: 53637 RVA: 0x002FD180 File Offset: 0x002FB380
|
||||
[Token(Token = "0x600D185")]
|
||||
[Address(RVA = "0x241C100", Offset = "0x241B100", VA = "0x18241C100")]
|
||||
internal static char[] ToCharArray(byte[] byteArray)
|
||||
{
|
||||
Encoding utf = Encoding.UTF8;
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600D186 RID: 53638 RVA: 0x002FD19C File Offset: 0x002FB39C
|
||||
[Token(Token = "0x600D186")]
|
||||
[Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")]
|
||||
public SharedUtils()
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,116 @@
|
||||
using System;
|
||||
using System.Runtime.CompilerServices;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Decompression.Zlib
|
||||
{
|
||||
// Token: 0x02002096 RID: 8342
|
||||
[Token(Token = "0x2002096")]
|
||||
internal sealed class StaticTree
|
||||
{
|
||||
// Token: 0x0600D188 RID: 53640 RVA: 0x002FD1D8 File Offset: 0x002FB3D8
|
||||
[Token(Token = "0x600D188")]
|
||||
[Address(RVA = "0x412D50", Offset = "0x411D50", VA = "0x180412D50")]
|
||||
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: 0x0600D189 RID: 53641 RVA: 0x002FD210 File Offset: 0x002FB410
|
||||
[Token(Token = "0x600D189")]
|
||||
[Address(RVA = "0x241C140", Offset = "0x241B140", VA = "0x18241C140")]
|
||||
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: 0x0400854D RID: 34125
|
||||
[Token(Token = "0x400854D")]
|
||||
internal static readonly short[] lengthAndLiteralsTreeCodes;
|
||||
|
||||
// Token: 0x0400854E RID: 34126
|
||||
[Token(Token = "0x400854E")]
|
||||
internal static readonly short[] distTreeCodes;
|
||||
|
||||
// Token: 0x0400854F RID: 34127
|
||||
[Token(Token = "0x400854F")]
|
||||
internal static readonly StaticTree Literals;
|
||||
|
||||
// Token: 0x04008550 RID: 34128
|
||||
[Token(Token = "0x4008550")]
|
||||
internal static readonly StaticTree Distances;
|
||||
|
||||
// Token: 0x04008551 RID: 34129
|
||||
[Token(Token = "0x4008551")]
|
||||
internal static readonly StaticTree BitLengths;
|
||||
|
||||
// Token: 0x04008552 RID: 34130
|
||||
[FieldOffset(Offset = "0x10")]
|
||||
[Token(Token = "0x4008552")]
|
||||
internal short[] treeCodes;
|
||||
|
||||
// Token: 0x04008553 RID: 34131
|
||||
[FieldOffset(Offset = "0x18")]
|
||||
[Token(Token = "0x4008553")]
|
||||
internal int[] extraBits;
|
||||
|
||||
// Token: 0x04008554 RID: 34132
|
||||
[FieldOffset(Offset = "0x20")]
|
||||
[Token(Token = "0x4008554")]
|
||||
internal int extraBase;
|
||||
|
||||
// Token: 0x04008555 RID: 34133
|
||||
[FieldOffset(Offset = "0x24")]
|
||||
[Token(Token = "0x4008555")]
|
||||
internal int elems;
|
||||
|
||||
// Token: 0x04008556 RID: 34134
|
||||
[FieldOffset(Offset = "0x28")]
|
||||
[Token(Token = "0x4008556")]
|
||||
internal int maxLength;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,347 @@
|
||||
using System;
|
||||
using System.Runtime.CompilerServices;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Decompression.Zlib
|
||||
{
|
||||
// Token: 0x0200208E RID: 8334
|
||||
[Token(Token = "0x200208E")]
|
||||
internal sealed class ZTree
|
||||
{
|
||||
// Token: 0x0600D179 RID: 53625 RVA: 0x002FCB08 File Offset: 0x002FAD08
|
||||
[Token(Token = "0x600D179")]
|
||||
[Address(RVA = "0x241CEC0", Offset = "0x241BEC0", VA = "0x18241CEC0")]
|
||||
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: 0x0600D17A RID: 53626 RVA: 0x002FCB30 File Offset: 0x002FAD30
|
||||
[Token(Token = "0x600D17A")]
|
||||
[Address(RVA = "0x241D8E0", Offset = "0x241C8E0", VA = "0x18241D8E0")]
|
||||
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: 0x0600D17B RID: 53627 RVA: 0x002FCCD0 File Offset: 0x002FAED0
|
||||
[Token(Token = "0x600D17B")]
|
||||
[Address(RVA = "0x241D1E0", Offset = "0x241C1E0", VA = "0x18241D1E0")]
|
||||
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: 0x0600D17C RID: 53628 RVA: 0x002FCF74 File Offset: 0x002FB174
|
||||
[Token(Token = "0x600D17C")]
|
||||
[Address(RVA = "0x241DE00", Offset = "0x241CE00", VA = "0x18241DE00")]
|
||||
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: 0x0600D17D RID: 53629 RVA: 0x002FCFDC File Offset: 0x002FB1DC
|
||||
[Token(Token = "0x600D17D")]
|
||||
[Address(RVA = "0x427250", Offset = "0x426250", VA = "0x180427250")]
|
||||
internal static int bi_reverse(int code, int len)
|
||||
{
|
||||
int num = 0;
|
||||
int num2 = len - 1;
|
||||
return num + num;
|
||||
}
|
||||
|
||||
// Token: 0x0600D17E RID: 53630 RVA: 0x002FCFF4 File Offset: 0x002FB1F4
|
||||
[Token(Token = "0x600D17E")]
|
||||
[Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")]
|
||||
public ZTree()
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0600D17F RID: 53631 RVA: 0x002FD008 File Offset: 0x002FB208
|
||||
// Note: this type is marked as 'beforefieldinit'.
|
||||
[Token(Token = "0x600D17F")]
|
||||
[Address(RVA = "0x241CFB0", Offset = "0x241BFB0", VA = "0x18241CFB0")]
|
||||
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: 0x0400851A RID: 34074
|
||||
[Token(Token = "0x400851A")]
|
||||
private static readonly int HEAP_SIZE;
|
||||
|
||||
// Token: 0x0400851B RID: 34075
|
||||
[Token(Token = "0x400851B")]
|
||||
internal static readonly int[] ExtraLengthBits;
|
||||
|
||||
// Token: 0x0400851C RID: 34076
|
||||
[Token(Token = "0x400851C")]
|
||||
internal static readonly int[] ExtraDistanceBits;
|
||||
|
||||
// Token: 0x0400851D RID: 34077
|
||||
[Token(Token = "0x400851D")]
|
||||
internal static readonly int[] extra_blbits;
|
||||
|
||||
// Token: 0x0400851E RID: 34078
|
||||
[Token(Token = "0x400851E")]
|
||||
internal static readonly sbyte[] bl_order;
|
||||
|
||||
// Token: 0x0400851F RID: 34079
|
||||
[Token(Token = "0x400851F")]
|
||||
internal const int Buf_size = 16;
|
||||
|
||||
// Token: 0x04008520 RID: 34080
|
||||
[Token(Token = "0x4008520")]
|
||||
private static readonly sbyte[] _dist_code;
|
||||
|
||||
// Token: 0x04008521 RID: 34081
|
||||
[Token(Token = "0x4008521")]
|
||||
internal static readonly sbyte[] LengthCode;
|
||||
|
||||
// Token: 0x04008522 RID: 34082
|
||||
[Token(Token = "0x4008522")]
|
||||
internal static readonly int[] LengthBase;
|
||||
|
||||
// Token: 0x04008523 RID: 34083
|
||||
[Token(Token = "0x4008523")]
|
||||
internal static readonly int[] DistanceBase;
|
||||
|
||||
// Token: 0x04008524 RID: 34084
|
||||
[FieldOffset(Offset = "0x10")]
|
||||
[Token(Token = "0x4008524")]
|
||||
internal short[] dyn_tree;
|
||||
|
||||
// Token: 0x04008525 RID: 34085
|
||||
[FieldOffset(Offset = "0x18")]
|
||||
[Token(Token = "0x4008525")]
|
||||
internal int max_code;
|
||||
|
||||
// Token: 0x04008526 RID: 34086
|
||||
[FieldOffset(Offset = "0x20")]
|
||||
[Token(Token = "0x4008526")]
|
||||
internal StaticTree staticTree;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,718 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using BestHTTP.Decompression.Crc;
|
||||
using BestHTTP.Extensions;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Decompression.Zlib
|
||||
{
|
||||
// Token: 0x02002099 RID: 8345
|
||||
[Token(Token = "0x2002099")]
|
||||
internal class ZlibBaseStream : Stream
|
||||
{
|
||||
// Token: 0x17002155 RID: 8533
|
||||
// (get) Token: 0x0600D18D RID: 53645 RVA: 0x002FD3E8 File Offset: 0x002FB5E8
|
||||
[Token(Token = "0x17002155")]
|
||||
internal int Crc32
|
||||
{
|
||||
[Token(Token = "0x600D18D")]
|
||||
[Address(RVA = "0x2A85580", Offset = "0x2A84580", VA = "0x182A85580")]
|
||||
get
|
||||
{
|
||||
CRC32 crc = this.crc;
|
||||
if (crc != 0)
|
||||
{
|
||||
return crc.Crc32Result;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600D18E RID: 53646 RVA: 0x002FD408 File Offset: 0x002FB608
|
||||
[Token(Token = "0x600D18E")]
|
||||
[Address(RVA = "0x2A849C0", Offset = "0x2A839C0", VA = "0x182A849C0")]
|
||||
public ZlibBaseStream(Stream stream, CompressionMode compressionMode, CompressionLevel level, ZlibStreamFlavor flavor, bool leaveOpen)
|
||||
{
|
||||
byte[] array = new byte[1];
|
||||
this._buf1 = array;
|
||||
base..ctor();
|
||||
this._leaveOpen = false;
|
||||
this._flushMode = (FlushType)((ulong)0L);
|
||||
this._stream = stream;
|
||||
this._compressionMode = compressionMode;
|
||||
this._flavor = (ZlibStreamFlavor)0;
|
||||
this._level = level;
|
||||
this.windowBitsMax = (int)((ulong)15L);
|
||||
CRC32 crc = new CRC32();
|
||||
this.crc = crc;
|
||||
}
|
||||
|
||||
// Token: 0x0600D18F RID: 53647 RVA: 0x002FD488 File Offset: 0x002FB688
|
||||
[Token(Token = "0x600D18F")]
|
||||
[Address(RVA = "0x2A84AB0", Offset = "0x2A83AB0", VA = "0x182A84AB0")]
|
||||
public ZlibBaseStream(Stream stream, CompressionMode compressionMode, CompressionLevel level, ZlibStreamFlavor flavor, bool leaveOpen, int windowBits)
|
||||
{
|
||||
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;
|
||||
CRC32 crc = new CRC32();
|
||||
this.crc = crc;
|
||||
}
|
||||
|
||||
// Token: 0x17002156 RID: 8534
|
||||
// (get) Token: 0x0600D190 RID: 53648 RVA: 0x002FD504 File Offset: 0x002FB704
|
||||
[Token(Token = "0x17002156")]
|
||||
protected internal bool _wantCompress
|
||||
{
|
||||
[Token(Token = "0x600D190")]
|
||||
[Address(RVA = "0x10B5ED0", Offset = "0x10B4ED0", VA = "0x1810B5ED0")]
|
||||
get
|
||||
{
|
||||
return this._compressionMode == CompressionMode.Compress;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17002157 RID: 8535
|
||||
// (get) Token: 0x0600D191 RID: 53649 RVA: 0x002FD51C File Offset: 0x002FB71C
|
||||
[Token(Token = "0x17002157")]
|
||||
private ZlibCodec z
|
||||
{
|
||||
[Token(Token = "0x600D191")]
|
||||
[Address(RVA = "0x2A85670", Offset = "0x2A84670", VA = "0x182A85670")]
|
||||
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: 0x17002158 RID: 8536
|
||||
// (get) Token: 0x0600D192 RID: 53650 RVA: 0x002FD5CC File Offset: 0x002FB7CC
|
||||
[Token(Token = "0x17002158")]
|
||||
private byte[] workingBuffer
|
||||
{
|
||||
[Token(Token = "0x600D192")]
|
||||
[Address(RVA = "0x2A855F0", Offset = "0x2A845F0", VA = "0x182A855F0")]
|
||||
get
|
||||
{
|
||||
if (this._workingBuffer == (ulong)0L)
|
||||
{
|
||||
byte[] array = VariableSizedBufferPool.Get((long)this._bufferSize, true);
|
||||
this._workingBuffer = array;
|
||||
}
|
||||
return this._workingBuffer;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600D193 RID: 53651 RVA: 0x002FD600 File Offset: 0x002FB800
|
||||
[Token(Token = "0x600D193")]
|
||||
[Address(RVA = "0x2A84140", Offset = "0x2A83140", VA = "0x182A84140", 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: 0x0600D194 RID: 53652 RVA: 0x002FD780 File Offset: 0x002FB980
|
||||
[Token(Token = "0x600D194")]
|
||||
[Address(RVA = "0x2A84D10", Offset = "0x2A83D10", VA = "0x182A84D10")]
|
||||
private void finish()
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D194)
|
||||
|
||||
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: 0x0600D195 RID: 53653 RVA: 0x002FDA38 File Offset: 0x002FBC38
|
||||
[Token(Token = "0x600D195")]
|
||||
[Address(RVA = "0x2A84BA0", Offset = "0x2A83BA0", VA = "0x182A84BA0")]
|
||||
private void end()
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D195)
|
||||
|
||||
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: 0x0600D196 RID: 53654 RVA: 0x002FDACC File Offset: 0x002FBCCC
|
||||
[Token(Token = "0x600D196")]
|
||||
[Address(RVA = "0x2A83800", Offset = "0x2A82800", VA = "0x182A83800", Slot = "15")]
|
||||
public override void Close()
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D196)
|
||||
|
||||
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: 0x0600D197 RID: 53655 RVA: 0x002FDB84 File Offset: 0x002FBD84
|
||||
[Token(Token = "0x600D197")]
|
||||
[Address(RVA = "0x10B3330", Offset = "0x10B2330", VA = "0x1810B3330", Slot = "17")]
|
||||
public override void Flush()
|
||||
{
|
||||
bool canRead = this._stream.CanRead;
|
||||
}
|
||||
|
||||
// Token: 0x0600D198 RID: 53656 RVA: 0x002FDBA4 File Offset: 0x002FBDA4
|
||||
[Token(Token = "0x600D198")]
|
||||
[Address(RVA = "0x2A840B0", Offset = "0x2A830B0", VA = "0x182A840B0", Slot = "25")]
|
||||
public override long Seek(long offset, SeekOrigin origin)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D198)
|
||||
|
||||
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: 0x0600D199 RID: 53657 RVA: 0x002FDBB8 File Offset: 0x002FBDB8
|
||||
[Token(Token = "0x600D199")]
|
||||
[Address(RVA = "0x2A84100", Offset = "0x2A83100", VA = "0x182A84100", Slot = "26")]
|
||||
public override void SetLength(long value)
|
||||
{
|
||||
Stream stream = this._stream;
|
||||
this.nomoreinput = false;
|
||||
}
|
||||
|
||||
// Token: 0x0600D19A RID: 53658 RVA: 0x002FDBDC File Offset: 0x002FBDDC
|
||||
[Token(Token = "0x600D19A")]
|
||||
[Address(RVA = "0x2A839F0", Offset = "0x2A829F0", VA = "0x182A839F0")]
|
||||
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: 0x0600D19B RID: 53659 RVA: 0x002FDC24 File Offset: 0x002FBE24
|
||||
[Token(Token = "0x600D19B")]
|
||||
[Address(RVA = "0x2A844E0", Offset = "0x2A834E0", VA = "0x182A844E0")]
|
||||
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: 0x0600D19C RID: 53660 RVA: 0x002FDD38 File Offset: 0x002FBF38
|
||||
[Token(Token = "0x600D19C")]
|
||||
[Address(RVA = "0x2A83B80", Offset = "0x2A82B80", VA = "0x182A83B80", 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: 0x17002159 RID: 8537
|
||||
// (get) Token: 0x0600D19D RID: 53661 RVA: 0x002FDF50 File Offset: 0x002FC150
|
||||
[Token(Token = "0x17002159")]
|
||||
public override bool CanRead
|
||||
{
|
||||
[Token(Token = "0x600D19D")]
|
||||
[Address(RVA = "0x10B5DF0", Offset = "0x10B4DF0", VA = "0x1810B5DF0", Slot = "7")]
|
||||
get
|
||||
{
|
||||
return this._stream.CanRead;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x1700215A RID: 8538
|
||||
// (get) Token: 0x0600D19E RID: 53662 RVA: 0x002FDF70 File Offset: 0x002FC170
|
||||
[Token(Token = "0x1700215A")]
|
||||
public override bool CanSeek
|
||||
{
|
||||
[Token(Token = "0x600D19E")]
|
||||
[Address(RVA = "0x10B5E20", Offset = "0x10B4E20", VA = "0x1810B5E20", Slot = "8")]
|
||||
get
|
||||
{
|
||||
return this._stream.CanRead;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x1700215B RID: 8539
|
||||
// (get) Token: 0x0600D19F RID: 53663 RVA: 0x002FDF90 File Offset: 0x002FC190
|
||||
[Token(Token = "0x1700215B")]
|
||||
public override bool CanWrite
|
||||
{
|
||||
[Token(Token = "0x600D19F")]
|
||||
[Address(RVA = "0x10B5E50", Offset = "0x10B4E50", VA = "0x1810B5E50", Slot = "9")]
|
||||
get
|
||||
{
|
||||
return this._stream.CanRead;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x1700215C RID: 8540
|
||||
// (get) Token: 0x0600D1A0 RID: 53664 RVA: 0x002FDFB0 File Offset: 0x002FC1B0
|
||||
[Token(Token = "0x1700215C")]
|
||||
public override long Length
|
||||
{
|
||||
[Token(Token = "0x600D1A0")]
|
||||
[Address(RVA = "0x10B4400", Offset = "0x10B3400", VA = "0x1810B4400", Slot = "10")]
|
||||
get
|
||||
{
|
||||
bool canRead = this._stream.CanRead;
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x1700215D RID: 8541
|
||||
// (get) Token: 0x0600D1A1 RID: 53665 RVA: 0x002FDFD0 File Offset: 0x002FC1D0
|
||||
// (set) Token: 0x0600D1A2 RID: 53666 RVA: 0x002FDFE4 File Offset: 0x002FC1E4
|
||||
[Token(Token = "0x1700215D")]
|
||||
public override long Position
|
||||
{
|
||||
[Token(Token = "0x600D1A1")]
|
||||
[Address(RVA = "0x2A855A0", Offset = "0x2A845A0", VA = "0x182A855A0", Slot = "11")]
|
||||
get
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D1A1)
|
||||
|
||||
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 = "0x600D1A2")]
|
||||
[Address(RVA = "0x2A85740", Offset = "0x2A84740", VA = "0x182A85740", Slot = "12")]
|
||||
set
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D1A2)
|
||||
|
||||
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: 0x0400855D RID: 34141
|
||||
[FieldOffset(Offset = "0x28")]
|
||||
[Token(Token = "0x400855D")]
|
||||
protected internal ZlibCodec _z;
|
||||
|
||||
// Token: 0x0400855E RID: 34142
|
||||
[FieldOffset(Offset = "0x30")]
|
||||
[Token(Token = "0x400855E")]
|
||||
protected internal ZlibBaseStream.StreamMode _streamMode = (ZlibBaseStream.StreamMode)((ulong)2L);
|
||||
|
||||
// Token: 0x0400855F RID: 34143
|
||||
[FieldOffset(Offset = "0x34")]
|
||||
[Token(Token = "0x400855F")]
|
||||
protected internal FlushType _flushMode;
|
||||
|
||||
// Token: 0x04008560 RID: 34144
|
||||
[FieldOffset(Offset = "0x38")]
|
||||
[Token(Token = "0x4008560")]
|
||||
protected internal ZlibStreamFlavor _flavor;
|
||||
|
||||
// Token: 0x04008561 RID: 34145
|
||||
[FieldOffset(Offset = "0x3C")]
|
||||
[Token(Token = "0x4008561")]
|
||||
protected internal CompressionMode _compressionMode;
|
||||
|
||||
// Token: 0x04008562 RID: 34146
|
||||
[FieldOffset(Offset = "0x40")]
|
||||
[Token(Token = "0x4008562")]
|
||||
protected internal CompressionLevel _level;
|
||||
|
||||
// Token: 0x04008563 RID: 34147
|
||||
[FieldOffset(Offset = "0x44")]
|
||||
[Token(Token = "0x4008563")]
|
||||
protected internal bool _leaveOpen;
|
||||
|
||||
// Token: 0x04008564 RID: 34148
|
||||
[FieldOffset(Offset = "0x48")]
|
||||
[Token(Token = "0x4008564")]
|
||||
protected internal byte[] _workingBuffer;
|
||||
|
||||
// Token: 0x04008565 RID: 34149
|
||||
[FieldOffset(Offset = "0x50")]
|
||||
[Token(Token = "0x4008565")]
|
||||
protected internal int _bufferSize = (int)((ulong)16384L);
|
||||
|
||||
// Token: 0x04008566 RID: 34150
|
||||
[FieldOffset(Offset = "0x54")]
|
||||
[Token(Token = "0x4008566")]
|
||||
protected internal int windowBitsMax;
|
||||
|
||||
// Token: 0x04008567 RID: 34151
|
||||
[FieldOffset(Offset = "0x58")]
|
||||
[Token(Token = "0x4008567")]
|
||||
protected internal byte[] _buf1;
|
||||
|
||||
// Token: 0x04008568 RID: 34152
|
||||
[FieldOffset(Offset = "0x60")]
|
||||
[Token(Token = "0x4008568")]
|
||||
protected internal Stream _stream;
|
||||
|
||||
// Token: 0x04008569 RID: 34153
|
||||
[FieldOffset(Offset = "0x68")]
|
||||
[Token(Token = "0x4008569")]
|
||||
protected internal CompressionStrategy Strategy;
|
||||
|
||||
// Token: 0x0400856A RID: 34154
|
||||
[FieldOffset(Offset = "0x70")]
|
||||
[Token(Token = "0x400856A")]
|
||||
private CRC32 crc;
|
||||
|
||||
// Token: 0x0400856B RID: 34155
|
||||
[FieldOffset(Offset = "0x78")]
|
||||
[Token(Token = "0x400856B")]
|
||||
protected internal string _GzipFileName;
|
||||
|
||||
// Token: 0x0400856C RID: 34156
|
||||
[FieldOffset(Offset = "0x80")]
|
||||
[Token(Token = "0x400856C")]
|
||||
protected internal string _GzipComment;
|
||||
|
||||
// Token: 0x0400856D RID: 34157
|
||||
[FieldOffset(Offset = "0x88")]
|
||||
[Token(Token = "0x400856D")]
|
||||
protected internal DateTime _GzipMtime;
|
||||
|
||||
// Token: 0x0400856E RID: 34158
|
||||
[FieldOffset(Offset = "0x90")]
|
||||
[Token(Token = "0x400856E")]
|
||||
protected internal int _gzipHeaderByteCount;
|
||||
|
||||
// Token: 0x0400856F RID: 34159
|
||||
[FieldOffset(Offset = "0x94")]
|
||||
[Token(Token = "0x400856F")]
|
||||
private bool nomoreinput;
|
||||
|
||||
// Token: 0x0200209A RID: 8346
|
||||
[Token(Token = "0x200209A")]
|
||||
internal enum StreamMode
|
||||
{
|
||||
// Token: 0x04008571 RID: 34161
|
||||
[Token(Token = "0x4008571")]
|
||||
Writer,
|
||||
// Token: 0x04008572 RID: 34162
|
||||
[Token(Token = "0x4008572")]
|
||||
Reader,
|
||||
// Token: 0x04008573 RID: 34163
|
||||
[Token(Token = "0x4008573")]
|
||||
Undefined
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,586 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Decompression.Zlib
|
||||
{
|
||||
// Token: 0x0200209B RID: 8347
|
||||
[Token(Token = "0x200209B")]
|
||||
internal sealed class ZlibCodec
|
||||
{
|
||||
// Token: 0x1700215E RID: 8542
|
||||
// (get) Token: 0x0600D1A3 RID: 53667 RVA: 0x002FDFF8 File Offset: 0x002FC1F8
|
||||
[Token(Token = "0x1700215E")]
|
||||
public int Adler32
|
||||
{
|
||||
[Token(Token = "0x600D1A3")]
|
||||
[Address(RVA = "0x56DD20", Offset = "0x56CD20", VA = "0x18056DD20")]
|
||||
get
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D1A3)
|
||||
|
||||
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: 0x0600D1A4 RID: 53668 RVA: 0x002FE00C File Offset: 0x002FC20C
|
||||
[Token(Token = "0x600D1A4")]
|
||||
[Address(RVA = "0x10B6810", Offset = "0x10B5810", VA = "0x1810B6810")]
|
||||
public ZlibCodec()
|
||||
{
|
||||
this.CompressLevel = (CompressionLevel)((ulong)6L);
|
||||
this.WindowBits = (int)((ulong)15L);
|
||||
base..ctor();
|
||||
}
|
||||
|
||||
// Token: 0x0600D1A5 RID: 53669 RVA: 0x002FE034 File Offset: 0x002FC234
|
||||
[Token(Token = "0x600D1A5")]
|
||||
[Address(RVA = "0x2A85DE0", Offset = "0x2A84DE0", VA = "0x182A85DE0")]
|
||||
public ZlibCodec(CompressionMode mode)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D1A5)
|
||||
|
||||
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: 0x0600D1A6 RID: 53670 RVA: 0x002FE0A4 File Offset: 0x002FC2A4
|
||||
[Token(Token = "0x600D1A6")]
|
||||
[Address(RVA = "0x2A85A00", Offset = "0x2A84A00", VA = "0x182A85A00")]
|
||||
public int InitializeInflate()
|
||||
{
|
||||
int windowBits = this.WindowBits;
|
||||
return this.InitializeInflate(windowBits, true);
|
||||
}
|
||||
|
||||
// Token: 0x0600D1A7 RID: 53671 RVA: 0x002FE0C0 File Offset: 0x002FC2C0
|
||||
[Token(Token = "0x600D1A7")]
|
||||
[Address(RVA = "0x2A85A10", Offset = "0x2A84A10", VA = "0x182A85A10")]
|
||||
public int InitializeInflate(bool expectRfc1950Header)
|
||||
{
|
||||
int windowBits = this.WindowBits;
|
||||
return this.InitializeInflate(windowBits, expectRfc1950Header);
|
||||
}
|
||||
|
||||
// Token: 0x0600D1A8 RID: 53672 RVA: 0x002FE0DC File Offset: 0x002FC2DC
|
||||
[Token(Token = "0x600D1A8")]
|
||||
[Address(RVA = "0x2A85AF0", Offset = "0x2A84AF0", VA = "0x182A85AF0")]
|
||||
public int InitializeInflate(int windowBits)
|
||||
{
|
||||
this.WindowBits = windowBits;
|
||||
return this.InitializeInflate(windowBits, true);
|
||||
}
|
||||
|
||||
// Token: 0x0600D1A9 RID: 53673 RVA: 0x002FE0F8 File Offset: 0x002FC2F8
|
||||
[Token(Token = "0x600D1A9")]
|
||||
[Address(RVA = "0x2A85A20", Offset = "0x2A84A20", VA = "0x182A85A20")]
|
||||
public int InitializeInflate(int windowBits, bool expectRfc1950Header)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D1A9)
|
||||
|
||||
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_29:
|
||||
stloc:ZlibException(var_1_33, 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: 0x0600D1AA RID: 53674 RVA: 0x002FE138 File Offset: 0x002FC338
|
||||
[Token(Token = "0x600D1AA")]
|
||||
[Address(RVA = "0x2A85900", Offset = "0x2A84900", VA = "0x182A85900")]
|
||||
public int Inflate(FlushType flush)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D1AA)
|
||||
|
||||
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: 0x0600D1AB RID: 53675 RVA: 0x002FE15C File Offset: 0x002FC35C
|
||||
[Token(Token = "0x600D1AB")]
|
||||
[Address(RVA = "0x2A85880", Offset = "0x2A84880", VA = "0x182A85880")]
|
||||
public int EndInflate()
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D1AB)
|
||||
|
||||
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: 0x0600D1AC RID: 53676 RVA: 0x002FE190 File Offset: 0x002FC390
|
||||
[Token(Token = "0x600D1AC")]
|
||||
[Address(RVA = "0x2A85CA0", Offset = "0x2A84CA0", VA = "0x182A85CA0")]
|
||||
public int SyncInflate()
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D1AC)
|
||||
|
||||
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: 0x0600D1AD RID: 53677 RVA: 0x002FE1BC File Offset: 0x002FC3BC
|
||||
[Token(Token = "0x600D1AD")]
|
||||
[Address(RVA = "0x2A859B0", Offset = "0x2A849B0", VA = "0x182A859B0")]
|
||||
public int InitializeDeflate()
|
||||
{
|
||||
return this._InternalInitializeDeflate(true);
|
||||
}
|
||||
|
||||
// Token: 0x0600D1AE RID: 53678 RVA: 0x002FE1D0 File Offset: 0x002FC3D0
|
||||
[Token(Token = "0x600D1AE")]
|
||||
[Address(RVA = "0x2A859A0", Offset = "0x2A849A0", VA = "0x182A859A0")]
|
||||
public int InitializeDeflate(CompressionLevel level)
|
||||
{
|
||||
this.CompressLevel = level;
|
||||
return this._InternalInitializeDeflate(true);
|
||||
}
|
||||
|
||||
// Token: 0x0600D1AF RID: 53679 RVA: 0x002FE1EC File Offset: 0x002FC3EC
|
||||
[Token(Token = "0x600D1AF")]
|
||||
[Address(RVA = "0x2A859E0", Offset = "0x2A849E0", VA = "0x182A859E0")]
|
||||
public int InitializeDeflate(CompressionLevel level, bool wantRfc1950Header)
|
||||
{
|
||||
this.CompressLevel = level;
|
||||
return this._InternalInitializeDeflate(wantRfc1950Header);
|
||||
}
|
||||
|
||||
// Token: 0x0600D1B0 RID: 53680 RVA: 0x002FE208 File Offset: 0x002FC408
|
||||
[Token(Token = "0x600D1B0")]
|
||||
[Address(RVA = "0x2A85980", Offset = "0x2A84980", VA = "0x182A85980")]
|
||||
public int InitializeDeflate(CompressionLevel level, int bits)
|
||||
{
|
||||
this.CompressLevel = level;
|
||||
this.WindowBits = bits;
|
||||
return this._InternalInitializeDeflate(true);
|
||||
}
|
||||
|
||||
// Token: 0x0600D1B1 RID: 53681 RVA: 0x002FE22C File Offset: 0x002FC42C
|
||||
[Token(Token = "0x600D1B1")]
|
||||
[Address(RVA = "0x2A859C0", Offset = "0x2A849C0", VA = "0x182A859C0")]
|
||||
public int InitializeDeflate(CompressionLevel level, int bits, bool wantRfc1950Header)
|
||||
{
|
||||
this.CompressLevel = level;
|
||||
this.WindowBits = bits;
|
||||
return this._InternalInitializeDeflate(wantRfc1950Header);
|
||||
}
|
||||
|
||||
// Token: 0x0600D1B2 RID: 53682 RVA: 0x002FE250 File Offset: 0x002FC450
|
||||
[Token(Token = "0x600D1B2")]
|
||||
[Address(RVA = "0x2A85D10", Offset = "0x2A84D10", VA = "0x182A85D10")]
|
||||
private int _InternalInitializeDeflate(bool wantRfc1950Header)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D1B2)
|
||||
|
||||
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_48:
|
||||
stloc:ZlibException(var_6_52, 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: 0x0600D1B3 RID: 53683 RVA: 0x002FE2B0 File Offset: 0x002FC4B0
|
||||
[Token(Token = "0x600D1B3")]
|
||||
[Address(RVA = "0x2A85790", Offset = "0x2A84790", VA = "0x182A85790")]
|
||||
public int Deflate(FlushType flush)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D1B3)
|
||||
|
||||
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: 0x0600D1B4 RID: 53684 RVA: 0x002FE2D4 File Offset: 0x002FC4D4
|
||||
[Token(Token = "0x600D1B4")]
|
||||
[Address(RVA = "0x2A85810", Offset = "0x2A84810", VA = "0x182A85810")]
|
||||
public int EndDeflate()
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D1B4)
|
||||
|
||||
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: 0x0600D1B5 RID: 53685 RVA: 0x002FE304 File Offset: 0x002FC504
|
||||
[Token(Token = "0x600D1B5")]
|
||||
[Address(RVA = "0x2A85B00", Offset = "0x2A84B00", VA = "0x182A85B00")]
|
||||
public void ResetDeflate()
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D1B5)
|
||||
|
||||
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: 0x0600D1B6 RID: 53686 RVA: 0x002FE330 File Offset: 0x002FC530
|
||||
[Token(Token = "0x600D1B6")]
|
||||
[Address(RVA = "0x2A85B70", Offset = "0x2A84B70", VA = "0x182A85B70")]
|
||||
public int SetDeflateParams(CompressionLevel level, CompressionStrategy strategy)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D1B6)
|
||||
|
||||
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_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: 0x0600D1B7 RID: 53687 RVA: 0x002FE354 File Offset: 0x002FC554
|
||||
[Token(Token = "0x600D1B7")]
|
||||
[Address(RVA = "0x2A85C00", Offset = "0x2A84C00", VA = "0x182A85C00")]
|
||||
public int SetDictionary(byte[] dictionary)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D1B7)
|
||||
|
||||
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_26:
|
||||
stloc:ZlibException(var_2_30, newobj:ZlibException(ZlibException::.ctor, ldstr:string("No Inflate or 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.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: 0x0600D1B8 RID: 53688 RVA: 0x002FE394 File Offset: 0x002FC594
|
||||
[Token(Token = "0x600D1B8")]
|
||||
[Address(RVA = "0x2A85F00", Offset = "0x2A84F00", VA = "0x182A85F00")]
|
||||
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: 0x0600D1B9 RID: 53689 RVA: 0x002FE478 File Offset: 0x002FC678
|
||||
[Token(Token = "0x600D1B9")]
|
||||
[Address(RVA = "0x2A860E0", Offset = "0x2A850E0", VA = "0x182A860E0")]
|
||||
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: 0x04008574 RID: 34164
|
||||
[FieldOffset(Offset = "0x10")]
|
||||
[Token(Token = "0x4008574")]
|
||||
public byte[] InputBuffer;
|
||||
|
||||
// Token: 0x04008575 RID: 34165
|
||||
[FieldOffset(Offset = "0x18")]
|
||||
[Token(Token = "0x4008575")]
|
||||
public int NextIn;
|
||||
|
||||
// Token: 0x04008576 RID: 34166
|
||||
[FieldOffset(Offset = "0x1C")]
|
||||
[Token(Token = "0x4008576")]
|
||||
public int AvailableBytesIn;
|
||||
|
||||
// Token: 0x04008577 RID: 34167
|
||||
[FieldOffset(Offset = "0x20")]
|
||||
[Token(Token = "0x4008577")]
|
||||
public long TotalBytesIn;
|
||||
|
||||
// Token: 0x04008578 RID: 34168
|
||||
[FieldOffset(Offset = "0x28")]
|
||||
[Token(Token = "0x4008578")]
|
||||
public byte[] OutputBuffer;
|
||||
|
||||
// Token: 0x04008579 RID: 34169
|
||||
[FieldOffset(Offset = "0x30")]
|
||||
[Token(Token = "0x4008579")]
|
||||
public int NextOut;
|
||||
|
||||
// Token: 0x0400857A RID: 34170
|
||||
[FieldOffset(Offset = "0x34")]
|
||||
[Token(Token = "0x400857A")]
|
||||
public int AvailableBytesOut;
|
||||
|
||||
// Token: 0x0400857B RID: 34171
|
||||
[FieldOffset(Offset = "0x38")]
|
||||
[Token(Token = "0x400857B")]
|
||||
public long TotalBytesOut;
|
||||
|
||||
// Token: 0x0400857C RID: 34172
|
||||
[FieldOffset(Offset = "0x40")]
|
||||
[Token(Token = "0x400857C")]
|
||||
public string Message;
|
||||
|
||||
// Token: 0x0400857D RID: 34173
|
||||
[FieldOffset(Offset = "0x48")]
|
||||
[Token(Token = "0x400857D")]
|
||||
internal DeflateManager dstate;
|
||||
|
||||
// Token: 0x0400857E RID: 34174
|
||||
[FieldOffset(Offset = "0x50")]
|
||||
[Token(Token = "0x400857E")]
|
||||
internal InflateManager istate;
|
||||
|
||||
// Token: 0x0400857F RID: 34175
|
||||
[FieldOffset(Offset = "0x58")]
|
||||
[Token(Token = "0x400857F")]
|
||||
internal uint _Adler32;
|
||||
|
||||
// Token: 0x04008580 RID: 34176
|
||||
[FieldOffset(Offset = "0x5C")]
|
||||
[Token(Token = "0x4008580")]
|
||||
public CompressionLevel CompressLevel;
|
||||
|
||||
// Token: 0x04008581 RID: 34177
|
||||
[FieldOffset(Offset = "0x60")]
|
||||
[Token(Token = "0x4008581")]
|
||||
public int WindowBits;
|
||||
|
||||
// Token: 0x04008582 RID: 34178
|
||||
[FieldOffset(Offset = "0x64")]
|
||||
[Token(Token = "0x4008582")]
|
||||
public CompressionStrategy Strategy;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,50 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Decompression.Zlib
|
||||
{
|
||||
// Token: 0x0200209C RID: 8348
|
||||
[Token(Token = "0x200209C")]
|
||||
public static class ZlibConstants
|
||||
{
|
||||
// Token: 0x04008583 RID: 34179
|
||||
[Token(Token = "0x4008583")]
|
||||
public const int WindowBitsMax = 15;
|
||||
|
||||
// Token: 0x04008584 RID: 34180
|
||||
[Token(Token = "0x4008584")]
|
||||
public const int WindowBitsDefault = 15;
|
||||
|
||||
// Token: 0x04008585 RID: 34181
|
||||
[Token(Token = "0x4008585")]
|
||||
public const int Z_OK = 0;
|
||||
|
||||
// Token: 0x04008586 RID: 34182
|
||||
[Token(Token = "0x4008586")]
|
||||
public const int Z_STREAM_END = 1;
|
||||
|
||||
// Token: 0x04008587 RID: 34183
|
||||
[Token(Token = "0x4008587")]
|
||||
public const int Z_NEED_DICT = 2;
|
||||
|
||||
// Token: 0x04008588 RID: 34184
|
||||
[Token(Token = "0x4008588")]
|
||||
public const int Z_STREAM_ERROR = -2;
|
||||
|
||||
// Token: 0x04008589 RID: 34185
|
||||
[Token(Token = "0x4008589")]
|
||||
public const int Z_DATA_ERROR = -3;
|
||||
|
||||
// Token: 0x0400858A RID: 34186
|
||||
[Token(Token = "0x400858A")]
|
||||
public const int Z_BUF_ERROR = -5;
|
||||
|
||||
// Token: 0x0400858B RID: 34187
|
||||
[Token(Token = "0x400858B")]
|
||||
public const int WorkingBufferSizeDefault = 16384;
|
||||
|
||||
// Token: 0x0400858C RID: 34188
|
||||
[Token(Token = "0x400858C")]
|
||||
public const int WorkingBufferSizeMin = 1024;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,27 @@
|
||||
using System;
|
||||
using System.Runtime.InteropServices;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Decompression.Zlib
|
||||
{
|
||||
// Token: 0x02002093 RID: 8339
|
||||
[Token(Token = "0x2002093")]
|
||||
[Guid("ebc25cf6-9120-4283-b972-0e5520d0000E")]
|
||||
internal class ZlibException : Exception
|
||||
{
|
||||
// Token: 0x0600D180 RID: 53632 RVA: 0x002FD0F0 File Offset: 0x002FB2F0
|
||||
[Token(Token = "0x600D180")]
|
||||
[Address(RVA = "0x2A861F0", Offset = "0x2A851F0", VA = "0x182A861F0")]
|
||||
public ZlibException()
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0600D181 RID: 53633 RVA: 0x002FD104 File Offset: 0x002FB304
|
||||
[Token(Token = "0x600D181")]
|
||||
[Address(RVA = "0x2A86250", Offset = "0x2A85250", VA = "0x182A86250")]
|
||||
public ZlibException(string s)
|
||||
: base(s)
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Decompression.Zlib
|
||||
{
|
||||
// Token: 0x02002098 RID: 8344
|
||||
[Token(Token = "0x2002098")]
|
||||
internal enum ZlibStreamFlavor
|
||||
{
|
||||
// Token: 0x0400855A RID: 34138
|
||||
[Token(Token = "0x400855A")]
|
||||
ZLIB = 1950,
|
||||
// Token: 0x0400855B RID: 34139
|
||||
[Token(Token = "0x400855B")]
|
||||
DEFLATE,
|
||||
// Token: 0x0400855C RID: 34140
|
||||
[Token(Token = "0x400855C")]
|
||||
GZIP
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Extensions
|
||||
{
|
||||
// Token: 0x0200207B RID: 8315
|
||||
[Token(Token = "0x200207B")]
|
||||
internal struct BufferDesc
|
||||
{
|
||||
// Token: 0x0600D0D1 RID: 53457 RVA: 0x002F6D2C File Offset: 0x002F4F2C
|
||||
[Token(Token = "0x600D0D1")]
|
||||
[Address(RVA = "0x2A6C830", Offset = "0x2A6B830", VA = "0x182A6C830")]
|
||||
public BufferDesc(byte[] buff)
|
||||
{
|
||||
this.buffer = buff;
|
||||
DateTime utcNow = DateTime.UtcNow;
|
||||
this.released = utcNow;
|
||||
}
|
||||
|
||||
// Token: 0x0600D0D2 RID: 53458 RVA: 0x002F6D50 File Offset: 0x002F4F50
|
||||
// Note: this type is marked as 'beforefieldinit'.
|
||||
[Token(Token = "0x600D0D2")]
|
||||
[Address(RVA = "0x2A6C7A0", Offset = "0x2A6B7A0", VA = "0x182A6C7A0")]
|
||||
static BufferDesc()
|
||||
{
|
||||
DateTime utcNow = DateTime.UtcNow;
|
||||
ulong num;
|
||||
BufferDesc.Empty = num;
|
||||
}
|
||||
|
||||
// Token: 0x0400842F RID: 33839
|
||||
[Token(Token = "0x400842F")]
|
||||
public static readonly BufferDesc Empty;
|
||||
|
||||
// Token: 0x04008430 RID: 33840
|
||||
[FieldOffset(Offset = "0x0")]
|
||||
[Token(Token = "0x4008430")]
|
||||
public byte[] buffer;
|
||||
|
||||
// Token: 0x04008431 RID: 33841
|
||||
[FieldOffset(Offset = "0x8")]
|
||||
[Token(Token = "0x4008431")]
|
||||
public DateTime released;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,738 @@
|
||||
using System;
|
||||
using System.IO;
|
||||
using Cpp2IlInjected;
|
||||
using UnityEngine;
|
||||
|
||||
namespace BestHTTP.Extensions
|
||||
{
|
||||
// Token: 0x0200206D RID: 8301
|
||||
[Token(Token = "0x200206D")]
|
||||
public sealed class BufferPoolMemoryStream : Stream
|
||||
{
|
||||
// Token: 0x0600D054 RID: 53332 RVA: 0x002F5654 File Offset: 0x002F3854
|
||||
[Token(Token = "0x600D054")]
|
||||
[Address(RVA = "0x2A6DB60", Offset = "0x2A6CB60", VA = "0x182A6DB60")]
|
||||
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: 0x0600D055 RID: 53333 RVA: 0x002F56A0 File Offset: 0x002F38A0
|
||||
[Token(Token = "0x600D055")]
|
||||
[Address(RVA = "0x2A6D990", Offset = "0x2A6C990", VA = "0x182A6D990")]
|
||||
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: 0x0600D056 RID: 53334 RVA: 0x002F56FC File Offset: 0x002F38FC
|
||||
[Token(Token = "0x600D056")]
|
||||
[Address(RVA = "0x2A6DC10", Offset = "0x2A6CC10", VA = "0x182A6DC10")]
|
||||
public BufferPoolMemoryStream(byte[] buffer)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D056)
|
||||
|
||||
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: 0x0600D057 RID: 53335 RVA: 0x002F5734 File Offset: 0x002F3934
|
||||
[Token(Token = "0x600D057")]
|
||||
[Address(RVA = "0x2A6D8C0", Offset = "0x2A6C8C0", VA = "0x182A6D8C0")]
|
||||
public BufferPoolMemoryStream(byte[] buffer, bool writable)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D057)
|
||||
|
||||
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: 0x0600D058 RID: 53336 RVA: 0x002F576C File Offset: 0x002F396C
|
||||
[Token(Token = "0x600D058")]
|
||||
[Address(RVA = "0x2A6D820", Offset = "0x2A6C820", VA = "0x182A6D820")]
|
||||
public BufferPoolMemoryStream(byte[] buffer, int index, int count)
|
||||
{
|
||||
ulong num;
|
||||
ulong num2;
|
||||
this.InternalConstructor(buffer, index, count, num != 0UL, num2 != 0UL);
|
||||
}
|
||||
|
||||
// Token: 0x0600D059 RID: 53337 RVA: 0x002F578C File Offset: 0x002F398C
|
||||
[Token(Token = "0x600D059")]
|
||||
[Address(RVA = "0x2A6DCD0", Offset = "0x2A6CCD0", VA = "0x182A6DCD0")]
|
||||
public BufferPoolMemoryStream(byte[] buffer, int index, int count, bool writable)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0600D05A RID: 53338 RVA: 0x002F57A0 File Offset: 0x002F39A0
|
||||
[Token(Token = "0x600D05A")]
|
||||
[Address(RVA = "0x2A6DAB0", Offset = "0x2A6CAB0", VA = "0x182A6DAB0")]
|
||||
public BufferPoolMemoryStream(byte[] buffer, int index, int count, bool writable, bool publiclyVisible)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0600D05B RID: 53339 RVA: 0x002F57B4 File Offset: 0x002F39B4
|
||||
[Token(Token = "0x600D05B")]
|
||||
[Address(RVA = "0x2A6CB90", Offset = "0x2A6BB90", VA = "0x182A6CB90")]
|
||||
private void InternalConstructor(byte[] buffer, int index, int count, bool writable, bool publicallyVisible)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D05B)
|
||||
|
||||
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: 0x0600D05C RID: 53340 RVA: 0x002F5814 File Offset: 0x002F3A14
|
||||
[Token(Token = "0x600D05C")]
|
||||
[Address(RVA = "0x2A6C950", Offset = "0x2A6B950", VA = "0x182A6C950")]
|
||||
private void CheckIfClosedThrowDisposed()
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D05C)
|
||||
|
||||
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: 0x17002123 RID: 8483
|
||||
// (get) Token: 0x0600D05D RID: 53341 RVA: 0x002F5838 File Offset: 0x002F3A38
|
||||
[Token(Token = "0x17002123")]
|
||||
public override bool CanRead
|
||||
{
|
||||
[Token(Token = "0x600D05D")]
|
||||
[Address(RVA = "0x2A6DD70", Offset = "0x2A6CD70", VA = "0x182A6DD70", Slot = "7")]
|
||||
get
|
||||
{
|
||||
return !this.streamClosed;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17002124 RID: 8484
|
||||
// (get) Token: 0x0600D05E RID: 53342 RVA: 0x002F5850 File Offset: 0x002F3A50
|
||||
[Token(Token = "0x17002124")]
|
||||
public override bool CanSeek
|
||||
{
|
||||
[Token(Token = "0x600D05E")]
|
||||
[Address(RVA = "0x2A6DD70", Offset = "0x2A6CD70", VA = "0x182A6DD70", Slot = "8")]
|
||||
get
|
||||
{
|
||||
return !this.streamClosed;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17002125 RID: 8485
|
||||
// (get) Token: 0x0600D05F RID: 53343 RVA: 0x002F5868 File Offset: 0x002F3A68
|
||||
[Token(Token = "0x17002125")]
|
||||
public override bool CanWrite
|
||||
{
|
||||
[Token(Token = "0x600D05F")]
|
||||
[Address(RVA = "0x2A6DD80", Offset = "0x2A6CD80", VA = "0x182A6DD80", Slot = "9")]
|
||||
get
|
||||
{
|
||||
if (this.streamClosed)
|
||||
{
|
||||
}
|
||||
return this.canWrite;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17002126 RID: 8486
|
||||
// (get) Token: 0x0600D060 RID: 53344 RVA: 0x002F5888 File Offset: 0x002F3A88
|
||||
// (set) Token: 0x0600D061 RID: 53345 RVA: 0x002F58B0 File Offset: 0x002F3AB0
|
||||
[Token(Token = "0x17002126")]
|
||||
public int Capacity
|
||||
{
|
||||
[Token(Token = "0x600D060")]
|
||||
[Address(RVA = "0x2A6DD90", Offset = "0x2A6CD90", VA = "0x182A6DD90")]
|
||||
get
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D060)
|
||||
|
||||
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 = "0x600D061")]
|
||||
[Address(RVA = "0x2A6DEE0", Offset = "0x2A6CEE0", VA = "0x182A6DEE0")]
|
||||
set
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D061)
|
||||
|
||||
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: 0x17002127 RID: 8487
|
||||
// (get) Token: 0x0600D062 RID: 53346 RVA: 0x002F5938 File Offset: 0x002F3B38
|
||||
[Token(Token = "0x17002127")]
|
||||
public override long Length
|
||||
{
|
||||
[Token(Token = "0x600D062")]
|
||||
[Address(RVA = "0x2A6DE00", Offset = "0x2A6CE00", VA = "0x182A6DE00", Slot = "10")]
|
||||
get
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D062)
|
||||
|
||||
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: 0x17002128 RID: 8488
|
||||
// (get) Token: 0x0600D063 RID: 53347 RVA: 0x002F5960 File Offset: 0x002F3B60
|
||||
// (set) Token: 0x0600D064 RID: 53348 RVA: 0x002F5988 File Offset: 0x002F3B88
|
||||
[Token(Token = "0x17002128")]
|
||||
public override long Position
|
||||
{
|
||||
[Token(Token = "0x600D063")]
|
||||
[Address(RVA = "0x2A6DE70", Offset = "0x2A6CE70", VA = "0x182A6DE70", Slot = "11")]
|
||||
get
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D063)
|
||||
|
||||
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 = "0x600D064")]
|
||||
[Address(RVA = "0x2A6E190", Offset = "0x2A6D190", VA = "0x182A6E190", Slot = "12")]
|
||||
set
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D064)
|
||||
|
||||
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: 0x0600D065 RID: 53349 RVA: 0x002F59BC File Offset: 0x002F3BBC
|
||||
[Token(Token = "0x600D065")]
|
||||
[Address(RVA = "0x2A6C9C0", Offset = "0x2A6B9C0", VA = "0x182A6C9C0", 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: 0x0600D066 RID: 53350 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600D066")]
|
||||
[Address(RVA = "0x4242D0", Offset = "0x4232D0", VA = "0x1804242D0", Slot = "17")]
|
||||
public override void Flush()
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x0600D067 RID: 53351 RVA: 0x002F59EC File Offset: 0x002F3BEC
|
||||
[Token(Token = "0x600D067")]
|
||||
[Address(RVA = "0x2A6CB30", Offset = "0x2A6BB30", VA = "0x182A6CB30")]
|
||||
public byte[] GetBuffer()
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D067)
|
||||
|
||||
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: 0x0600D068 RID: 53352 RVA: 0x002F5A10 File Offset: 0x002F3C10
|
||||
[Token(Token = "0x600D068")]
|
||||
[Address(RVA = "0x2A6CD70", Offset = "0x2A6BD70", VA = "0x182A6CD70", Slot = "27")]
|
||||
public override int Read(byte[] buffer, int offset, int count)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D068)
|
||||
|
||||
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: 0x0600D069 RID: 53353 RVA: 0x002F5A74 File Offset: 0x002F3C74
|
||||
[Token(Token = "0x600D069")]
|
||||
[Address(RVA = "0x2A6CCC0", Offset = "0x2A6BCC0", VA = "0x182A6CCC0", Slot = "28")]
|
||||
public override int ReadByte()
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D069)
|
||||
|
||||
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: 0x0600D06A RID: 53354 RVA: 0x002F5ABC File Offset: 0x002F3CBC
|
||||
[Token(Token = "0x600D06A")]
|
||||
[Address(RVA = "0x2A6CF20", Offset = "0x2A6BF20", VA = "0x182A6CF20", Slot = "25")]
|
||||
public override long Seek(long offset, SeekOrigin loc)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D06A)
|
||||
|
||||
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: 0x0600D06B RID: 53355 RVA: 0x002F5B0C File Offset: 0x002F3D0C
|
||||
[Token(Token = "0x600D06B")]
|
||||
[Address(RVA = "0x2A6C8A0", Offset = "0x2A6B8A0", VA = "0x182A6C8A0")]
|
||||
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: 0x0600D06C RID: 53356 RVA: 0x002F5B3C File Offset: 0x002F3D3C
|
||||
[Token(Token = "0x600D06C")]
|
||||
[Address(RVA = "0x2A6CA40", Offset = "0x2A6BA40", VA = "0x182A6CA40")]
|
||||
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: 0x0600D06D RID: 53357 RVA: 0x002F5B84 File Offset: 0x002F3D84
|
||||
[Token(Token = "0x600D06D")]
|
||||
[Address(RVA = "0x2A6D0F0", Offset = "0x2A6C0F0", VA = "0x182A6D0F0", Slot = "26")]
|
||||
public override void SetLength(long value)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D06D)
|
||||
|
||||
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: 0x0600D06E RID: 53358 RVA: 0x002F5BF4 File Offset: 0x002F3DF4
|
||||
[Token(Token = "0x600D06E")]
|
||||
[Address(RVA = "0x2A6D350", Offset = "0x2A6C350", VA = "0x182A6D350")]
|
||||
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: 0x0600D06F RID: 53359 RVA: 0x002F5C44 File Offset: 0x002F3E44
|
||||
[Token(Token = "0x600D06F")]
|
||||
[Address(RVA = "0x2A6D270", Offset = "0x2A6C270", VA = "0x182A6D270")]
|
||||
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: 0x0600D070 RID: 53360 RVA: 0x002F5C90 File Offset: 0x002F3E90
|
||||
[Token(Token = "0x600D070")]
|
||||
[Address(RVA = "0x2A6D630", Offset = "0x2A6C630", VA = "0x182A6D630", Slot = "29")]
|
||||
public override void Write(byte[] buffer, int offset, int count)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D070)
|
||||
|
||||
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: 0x0600D071 RID: 53361 RVA: 0x002F5D04 File Offset: 0x002F3F04
|
||||
[Token(Token = "0x600D071")]
|
||||
[Address(RVA = "0x2A6D420", Offset = "0x2A6C420", VA = "0x182A6D420", Slot = "30")]
|
||||
public override void WriteByte(byte value)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D071)
|
||||
|
||||
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: 0x0600D072 RID: 53362 RVA: 0x002F5D74 File Offset: 0x002F3F74
|
||||
[Token(Token = "0x600D072")]
|
||||
[Address(RVA = "0x2A6D540", Offset = "0x2A6C540", VA = "0x182A6D540")]
|
||||
public void WriteTo(Stream stream)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D072)
|
||||
|
||||
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: 0x04008409 RID: 33801
|
||||
[FieldOffset(Offset = "0x28")]
|
||||
[Token(Token = "0x4008409")]
|
||||
private bool canWrite;
|
||||
|
||||
// Token: 0x0400840A RID: 33802
|
||||
[FieldOffset(Offset = "0x29")]
|
||||
[Token(Token = "0x400840A")]
|
||||
private bool allowGetBuffer;
|
||||
|
||||
// Token: 0x0400840B RID: 33803
|
||||
[FieldOffset(Offset = "0x2C")]
|
||||
[Token(Token = "0x400840B")]
|
||||
private int capacity;
|
||||
|
||||
// Token: 0x0400840C RID: 33804
|
||||
[FieldOffset(Offset = "0x30")]
|
||||
[Token(Token = "0x400840C")]
|
||||
private int length;
|
||||
|
||||
// Token: 0x0400840D RID: 33805
|
||||
[FieldOffset(Offset = "0x38")]
|
||||
[Token(Token = "0x400840D")]
|
||||
private byte[] internalBuffer;
|
||||
|
||||
// Token: 0x0400840E RID: 33806
|
||||
[FieldOffset(Offset = "0x40")]
|
||||
[Token(Token = "0x400840E")]
|
||||
private int initialIndex;
|
||||
|
||||
// Token: 0x0400840F RID: 33807
|
||||
[FieldOffset(Offset = "0x44")]
|
||||
[Token(Token = "0x400840F")]
|
||||
private bool expandable;
|
||||
|
||||
// Token: 0x04008410 RID: 33808
|
||||
[FieldOffset(Offset = "0x45")]
|
||||
[Token(Token = "0x4008410")]
|
||||
private bool streamClosed;
|
||||
|
||||
// Token: 0x04008411 RID: 33809
|
||||
[FieldOffset(Offset = "0x48")]
|
||||
[Token(Token = "0x4008411")]
|
||||
private int position;
|
||||
|
||||
// Token: 0x04008412 RID: 33810
|
||||
[FieldOffset(Offset = "0x4C")]
|
||||
[Token(Token = "0x4008412")]
|
||||
private int dirty_bytes;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,42 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Extensions
|
||||
{
|
||||
// Token: 0x0200207A RID: 8314
|
||||
[Token(Token = "0x200207A")]
|
||||
internal struct BufferStore
|
||||
{
|
||||
// Token: 0x0600D0CF RID: 53455 RVA: 0x002F6CD8 File Offset: 0x002F4ED8
|
||||
[Token(Token = "0x600D0CF")]
|
||||
[Address(RVA = "0x2A6E3B0", Offset = "0x2A6D3B0", VA = "0x182A6E3B0")]
|
||||
public BufferStore(long size)
|
||||
{
|
||||
this.Size = size;
|
||||
List<BufferDesc> list = new List();
|
||||
this.buffers = list;
|
||||
}
|
||||
|
||||
// Token: 0x0600D0D0 RID: 53456 RVA: 0x002F6CFC File Offset: 0x002F4EFC
|
||||
[Token(Token = "0x600D0D0")]
|
||||
[Address(RVA = "0x2A6E2B0", Offset = "0x2A6D2B0", VA = "0x182A6E2B0")]
|
||||
public BufferStore(long size, byte[] buffer)
|
||||
{
|
||||
this.Size = size;
|
||||
List<BufferDesc> list = new List();
|
||||
this.buffers = list;
|
||||
DateTime utcNow = DateTime.UtcNow;
|
||||
}
|
||||
|
||||
// Token: 0x0400842D RID: 33837
|
||||
[FieldOffset(Offset = "0x0")]
|
||||
[Token(Token = "0x400842D")]
|
||||
public readonly long Size;
|
||||
|
||||
// Token: 0x0400842E RID: 33838
|
||||
[FieldOffset(Offset = "0x8")]
|
||||
[Token(Token = "0x400842E")]
|
||||
public List<BufferDesc> buffers;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,95 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Extensions
|
||||
{
|
||||
// Token: 0x0200206E RID: 8302
|
||||
[Token(Token = "0x200206E")]
|
||||
public sealed class CircularBuffer<T>
|
||||
{
|
||||
// Token: 0x17002129 RID: 8489
|
||||
// (get) Token: 0x0600D073 RID: 53363 RVA: 0x002F5DC0 File Offset: 0x002F3FC0
|
||||
// (set) Token: 0x0600D074 RID: 53364 RVA: 0x002F5DD4 File Offset: 0x002F3FD4
|
||||
[Token(Token = "0x17002129")]
|
||||
public int Capacity
|
||||
{
|
||||
[Token(Token = "0x600D073")]
|
||||
[Address(RVA = "0x40F000", Offset = "0x40E000", VA = "0x18040F000")]
|
||||
get;
|
||||
[Token(Token = "0x600D074")]
|
||||
[Address(RVA = "0x470D10", Offset = "0x46FD10", VA = "0x180470D10")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x1700212A RID: 8490
|
||||
// (get) Token: 0x0600D075 RID: 53365 RVA: 0x002F5DE8 File Offset: 0x002F3FE8
|
||||
// (set) Token: 0x0600D076 RID: 53366 RVA: 0x002F5DFC File Offset: 0x002F3FFC
|
||||
[Token(Token = "0x1700212A")]
|
||||
public int Count
|
||||
{
|
||||
[Token(Token = "0x600D075")]
|
||||
[Address(RVA = "0x4936D0", Offset = "0x4926D0", VA = "0x1804936D0")]
|
||||
get;
|
||||
[Token(Token = "0x600D076")]
|
||||
[Address(RVA = "0x5F1920", Offset = "0x5F0920", VA = "0x1805F1920")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x1700212B RID: 8491
|
||||
[Token(Token = "0x1700212B")]
|
||||
public T this[int idx]
|
||||
{
|
||||
[Token(Token = "0x600D077")]
|
||||
[Address(RVA = "0x2DA70D0", Offset = "0x2DA60D0", VA = "0x182DA70D0")]
|
||||
get
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
[Token(Token = "0x600D078")]
|
||||
[Address(RVA = "0x2DA7240", Offset = "0x2DA6240", VA = "0x182DA7240")]
|
||||
set
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600D079 RID: 53369 RVA: 0x002F5E10 File Offset: 0x002F4010
|
||||
[Token(Token = "0x600D079")]
|
||||
[Address(RVA = "0x2DA7070", Offset = "0x2DA6070", VA = "0x182DA7070")]
|
||||
public CircularBuffer(int capacity)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0600D07A RID: 53370 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600D07A")]
|
||||
[Address(RVA = "0x2DA6D20", Offset = "0x2DA5D20", VA = "0x182DA6D20")]
|
||||
public void Add(T element)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x0600D07B RID: 53371 RVA: 0x002F5E2C File Offset: 0x002F402C
|
||||
[Token(Token = "0x600D07B")]
|
||||
[Address(RVA = "0x2DA7060", Offset = "0x2DA6060", VA = "0x182DA7060")]
|
||||
public void Clear()
|
||||
{
|
||||
int num = 0;
|
||||
this.startIdx = num;
|
||||
}
|
||||
|
||||
// Token: 0x04008415 RID: 33813
|
||||
[FieldOffset(Offset = "0x0")]
|
||||
[Token(Token = "0x4008415")]
|
||||
private T[] buffer;
|
||||
|
||||
// Token: 0x04008416 RID: 33814
|
||||
[FieldOffset(Offset = "0x0")]
|
||||
[Token(Token = "0x4008416")]
|
||||
private int startIdx;
|
||||
|
||||
// Token: 0x04008417 RID: 33815
|
||||
[FieldOffset(Offset = "0x0")]
|
||||
[Token(Token = "0x4008417")]
|
||||
private int endIdx;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Extensions
|
||||
{
|
||||
// Token: 0x02002072 RID: 8306
|
||||
[Token(Token = "0x2002072")]
|
||||
public static class ExceptionHelper
|
||||
{
|
||||
// Token: 0x0600D0A3 RID: 53411 RVA: 0x002F65FC File Offset: 0x002F47FC
|
||||
[Token(Token = "0x600D0A3")]
|
||||
[Address(RVA = "0x2A6E410", Offset = "0x2A6D410", VA = "0x182A6E410")]
|
||||
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: 0x0200206F RID: 8303
|
||||
[Token(Token = "0x200206F")]
|
||||
public static class Extensions
|
||||
{
|
||||
// Token: 0x0600D07C RID: 53372 RVA: 0x002F5E44 File Offset: 0x002F4044
|
||||
[Token(Token = "0x600D07C")]
|
||||
[Address(RVA = "0x2A6E460", Offset = "0x2A6D460", VA = "0x182A6E460")]
|
||||
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: 0x0600D07D RID: 53373 RVA: 0x002F5E80 File Offset: 0x002F4080
|
||||
[Token(Token = "0x600D07D")]
|
||||
[Address(RVA = "0x2A6E910", Offset = "0x2A6D910", VA = "0x182A6E910")]
|
||||
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: 0x0600D07E RID: 53374 RVA: 0x002F5EC0 File Offset: 0x002F40C0
|
||||
[Token(Token = "0x600D07E")]
|
||||
[Address(RVA = "0x2A6F780", Offset = "0x2A6E780", VA = "0x182A6F780")]
|
||||
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: 0x0600D07F RID: 53375 RVA: 0x002F5EF4 File Offset: 0x002F40F4
|
||||
[Token(Token = "0x600D07F")]
|
||||
[Address(RVA = "0x2A6FCD0", Offset = "0x2A6ECD0", VA = "0x182A6FCD0")]
|
||||
public static void WriteLine(this Stream fs)
|
||||
{
|
||||
int num = fs.ReadByte();
|
||||
}
|
||||
|
||||
// Token: 0x0600D080 RID: 53376 RVA: 0x002F5F10 File Offset: 0x002F4110
|
||||
[Token(Token = "0x600D080")]
|
||||
[Address(RVA = "0x2A6FE50", Offset = "0x2A6EE50", VA = "0x182A6FE50")]
|
||||
public static void WriteLine(this Stream fs, string line)
|
||||
{
|
||||
byte[] asciibytes = line.GetASCIIBytes();
|
||||
int num = fs.ReadByte();
|
||||
fs.WriteLine();
|
||||
VariableSizedBufferPool.Release(asciibytes);
|
||||
}
|
||||
|
||||
// Token: 0x0600D081 RID: 53377 RVA: 0x002F5F40 File Offset: 0x002F4140
|
||||
[Token(Token = "0x600D081")]
|
||||
[Address(RVA = "0x2A6FD60", Offset = "0x2A6ED60", VA = "0x182A6FD60")]
|
||||
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: 0x0600D082 RID: 53378 RVA: 0x002F5F74 File Offset: 0x002F4174
|
||||
[Token(Token = "0x600D082")]
|
||||
[Address(RVA = "0x2A6E9F0", Offset = "0x2A6D9F0", VA = "0x182A6E9F0")]
|
||||
public static string GetRequestPathAndQueryURL(this Uri uri)
|
||||
{
|
||||
string parts = uri.GetParts(UriComponents.PathAndQuery, UriFormat.UriEscaped);
|
||||
return "/";
|
||||
}
|
||||
|
||||
// Token: 0x0600D083 RID: 53379 RVA: 0x002F5F98 File Offset: 0x002F4198
|
||||
[Token(Token = "0x600D083")]
|
||||
[Address(RVA = "0x2A6E770", Offset = "0x2A6D770", VA = "0x182A6E770")]
|
||||
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: 0x0600D084 RID: 53380 RVA: 0x002F601C File Offset: 0x002F421C
|
||||
[Token(Token = "0x600D084")]
|
||||
[Address(RVA = "0x1156660", Offset = "0x1155660", VA = "0x181156660")]
|
||||
public static void WriteArray(this Stream stream, byte[] array)
|
||||
{
|
||||
int num = stream.ReadByte();
|
||||
}
|
||||
|
||||
// Token: 0x0600D085 RID: 53381 RVA: 0x002F6038 File Offset: 0x002F4238
|
||||
[Token(Token = "0x600D085")]
|
||||
[Address(RVA = "0x2A6EA60", Offset = "0x2A6DA60", VA = "0x182A6EA60")]
|
||||
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: 0x0600D086 RID: 53382 RVA: 0x002F6090 File Offset: 0x002F4290
|
||||
[Token(Token = "0x600D086")]
|
||||
[Address(RVA = "0x2A6EC70", Offset = "0x2A6DC70", VA = "0x182A6EC70")]
|
||||
public static bool IsIpV4AddressValid(string address)
|
||||
{
|
||||
if (string.IsNullOrEmpty(address))
|
||||
{
|
||||
}
|
||||
string text = address.Trim();
|
||||
bool flag;
|
||||
return flag;
|
||||
}
|
||||
|
||||
// Token: 0x0600D087 RID: 53383 RVA: 0x002F60B8 File Offset: 0x002F42B8
|
||||
[Token(Token = "0x600D087")]
|
||||
[Address(RVA = "0x2A6ED20", Offset = "0x2A6DD20", VA = "0x182A6ED20")]
|
||||
public static bool IsIpV6AddressValid(string address)
|
||||
{
|
||||
bool flag;
|
||||
if (!string.IsNullOrEmpty(address) && flag)
|
||||
{
|
||||
bool flag2;
|
||||
return flag2;
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600D088 RID: 53384 RVA: 0x002F60DC File Offset: 0x002F42DC
|
||||
[Token(Token = "0x600D088")]
|
||||
[Address(RVA = "0x2A6F960", Offset = "0x2A6E960", VA = "0x182A6F960")]
|
||||
public static int ToInt32(this string str, int defaultValue = 0)
|
||||
{
|
||||
if (str != 0)
|
||||
{
|
||||
return int.Parse(str);
|
||||
}
|
||||
return defaultValue;
|
||||
}
|
||||
|
||||
// Token: 0x0600D089 RID: 53385 RVA: 0x002F60F8 File Offset: 0x002F42F8
|
||||
[Token(Token = "0x600D089")]
|
||||
[Address(RVA = "0x2A6F9E0", Offset = "0x2A6E9E0", VA = "0x182A6F9E0")]
|
||||
public static long ToInt64(this string str, long defaultValue = 0L)
|
||||
{
|
||||
if (str != 0)
|
||||
{
|
||||
return long.Parse(str);
|
||||
}
|
||||
return defaultValue;
|
||||
}
|
||||
|
||||
// Token: 0x0600D08A RID: 53386 RVA: 0x002F6114 File Offset: 0x002F4314
|
||||
[Token(Token = "0x600D08A")]
|
||||
[Address(RVA = "0x2A6F8B0", Offset = "0x2A6E8B0", VA = "0x182A6F8B0")]
|
||||
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: 0x0600D08B RID: 53387 RVA: 0x002F6130 File Offset: 0x002F4330
|
||||
[Token(Token = "0x600D08B")]
|
||||
[Address(RVA = "0x2A6FA60", Offset = "0x2A6EA60", VA = "0x182A6FA60")]
|
||||
public static string ToStrOrEmpty(this string str)
|
||||
{
|
||||
if (str != 0)
|
||||
{
|
||||
return str;
|
||||
}
|
||||
return string.Empty;
|
||||
}
|
||||
|
||||
// Token: 0x0600D08C RID: 53388 RVA: 0x002F6148 File Offset: 0x002F4348
|
||||
[Token(Token = "0x600D08C")]
|
||||
[Address(RVA = "0x2A6E6D0", Offset = "0x2A6D6D0", VA = "0x182A6E6D0")]
|
||||
public static string CalculateMD5Hash(this string input)
|
||||
{
|
||||
byte[] asciibytes = input.GetASCIIBytes();
|
||||
string text = asciibytes.CalculateMD5Hash();
|
||||
VariableSizedBufferPool.Release(asciibytes);
|
||||
return text;
|
||||
}
|
||||
|
||||
// Token: 0x0600D08D RID: 53389 RVA: 0x002F616C File Offset: 0x002F436C
|
||||
[Token(Token = "0x600D08D")]
|
||||
[Address(RVA = "0x2A6E530", Offset = "0x2A6D530", VA = "0x182A6E530")]
|
||||
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: 0x0600D08E RID: 53390 RVA: 0x002F61F4 File Offset: 0x002F43F4
|
||||
[Token(Token = "0x600D08E")]
|
||||
[Address(RVA = "0x2A6F690", Offset = "0x2A6E690", VA = "0x182A6F690")]
|
||||
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: 0x0600D08F RID: 53391 RVA: 0x002F622C File Offset: 0x002F442C
|
||||
[Token(Token = "0x600D08F")]
|
||||
[Address(RVA = "0x2A6F580", Offset = "0x2A6E580", VA = "0x182A6F580")]
|
||||
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: 0x0600D090 RID: 53392 RVA: 0x002F625C File Offset: 0x002F445C
|
||||
[Token(Token = "0x600D090")]
|
||||
[Address(RVA = "0x2A6F3C0", Offset = "0x2A6E3C0", VA = "0x182A6F3C0")]
|
||||
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: 0x0600D091 RID: 53393 RVA: 0x002F62AC File Offset: 0x002F44AC
|
||||
[Token(Token = "0x600D091")]
|
||||
[Address(RVA = "0x2A6F810", Offset = "0x2A6E810", VA = "0x182A6F810")]
|
||||
internal static void SkipWhiteSpace(this string str, ref int pos)
|
||||
{
|
||||
char c;
|
||||
if (char.IsWhiteSpace(c))
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600D092 RID: 53394 RVA: 0x002F62C8 File Offset: 0x002F44C8
|
||||
[Token(Token = "0x600D092")]
|
||||
[Address(RVA = "0x2A6FAB0", Offset = "0x2A6EAB0", VA = "0x182A6FAB0")]
|
||||
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: 0x0600D093 RID: 53395 RVA: 0x002F6338 File Offset: 0x002F4538
|
||||
[Token(Token = "0x600D093")]
|
||||
[Address(RVA = "0x2A6F1E0", Offset = "0x2A6E1E0", VA = "0x182A6F1E0")]
|
||||
internal static char? Peek(this string str, int pos)
|
||||
{
|
||||
if (pos < str.m_stringLength)
|
||||
{
|
||||
char c = str[pos];
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600D094 RID: 53396 RVA: 0x002F6360 File Offset: 0x002F4560
|
||||
[Token(Token = "0x600D094")]
|
||||
[Address(RVA = "0x2A6EDC0", Offset = "0x2A6DDC0", VA = "0x182A6EDC0")]
|
||||
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: 0x0600D095 RID: 53397 RVA: 0x002F63EC File Offset: 0x002F45EC
|
||||
[Token(Token = "0x600D095")]
|
||||
[Address(RVA = "0x2A6EFC0", Offset = "0x2A6DFC0", VA = "0x182A6EFC0")]
|
||||
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: 0x0600D096 RID: 53398 RVA: 0x002F6470 File Offset: 0x002F4670
|
||||
[Token(Token = "0x600D096")]
|
||||
[Address(RVA = "0x2A6F270", Offset = "0x2A6E270", VA = "0x182A6F270")]
|
||||
public static void ReadBuffer(this Stream stream, byte[] buffer)
|
||||
{
|
||||
int num = 0;
|
||||
int num2 = buffer.Length;
|
||||
num2 -= num;
|
||||
}
|
||||
|
||||
// Token: 0x0600D097 RID: 53399 RVA: 0x002F6490 File Offset: 0x002F4690
|
||||
[Token(Token = "0x600D097")]
|
||||
[Address(RVA = "0x2A6F310", Offset = "0x2A6E310", VA = "0x182A6F310")]
|
||||
public static void ReadBuffer(this Stream stream, byte[] buffer, int length)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0600D098 RID: 53400 RVA: 0x002F64A8 File Offset: 0x002F46A8
|
||||
[Token(Token = "0x600D098")]
|
||||
[Address(RVA = "0x2A700E0", Offset = "0x2A6F0E0", VA = "0x182A700E0")]
|
||||
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: 0x0600D099 RID: 53401 RVA: 0x002F64E8 File Offset: 0x002F46E8
|
||||
[Token(Token = "0x600D099")]
|
||||
[Address(RVA = "0x2A6FC40", Offset = "0x2A6EC40", VA = "0x182A6FC40")]
|
||||
public static void WriteLine(this BufferPoolMemoryStream ms)
|
||||
{
|
||||
byte[] eol = HTTPRequest.EOL;
|
||||
int num = ms.ReadByte();
|
||||
}
|
||||
|
||||
// Token: 0x0600D09A RID: 53402 RVA: 0x002F6508 File Offset: 0x002F4708
|
||||
[Token(Token = "0x600D09A")]
|
||||
[Address(RVA = "0x2A6FF20", Offset = "0x2A6EF20", VA = "0x182A6FF20")]
|
||||
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: 0x0600D09B RID: 53403 RVA: 0x002F6554 File Offset: 0x002F4754
|
||||
// Note: this type is marked as 'beforefieldinit'.
|
||||
[Token(Token = "0x600D09B")]
|
||||
[Address(RVA = "0x2A70200", Offset = "0x2A6F200", VA = "0x182A70200")]
|
||||
static Extensions()
|
||||
{
|
||||
Regex regex = new Regex("\\b(?:\\d{1,3}\\.){3}\\d{1,3}\\b", RegexOptions.IgnoreCase);
|
||||
}
|
||||
|
||||
// Token: 0x04008418 RID: 33816
|
||||
[Token(Token = "0x4008418")]
|
||||
private static readonly Regex validIpV4AddressRegex;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,34 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using BestHTTP.Logger;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Extensions
|
||||
{
|
||||
// Token: 0x02002073 RID: 8307
|
||||
[Token(Token = "0x2002073")]
|
||||
public sealed class HeaderParser : KeyValuePairList
|
||||
{
|
||||
// Token: 0x0600D0A4 RID: 53412 RVA: 0x002F6614 File Offset: 0x002F4814
|
||||
[Token(Token = "0x600D0A4")]
|
||||
[Address(RVA = "0x2A7F990", Offset = "0x2A7E990", VA = "0x182A7F990")]
|
||||
public HeaderParser(string headerStr)
|
||||
{
|
||||
List<HeaderValue> list = this.Parse(headerStr);
|
||||
this.<Values>k__BackingField = list;
|
||||
}
|
||||
|
||||
// Token: 0x0600D0A5 RID: 53413 RVA: 0x002F6638 File Offset: 0x002F4838
|
||||
[Token(Token = "0x600D0A5")]
|
||||
[Address(RVA = "0x2A7F820", Offset = "0x2A7E820", VA = "0x182A7F820")]
|
||||
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: 0x02002074 RID: 8308
|
||||
[Token(Token = "0x2002074")]
|
||||
public sealed class HeaderValue
|
||||
{
|
||||
// Token: 0x1700212C RID: 8492
|
||||
// (get) Token: 0x0600D0A6 RID: 53414 RVA: 0x002F6684 File Offset: 0x002F4884
|
||||
// (set) Token: 0x0600D0A7 RID: 53415 RVA: 0x002F6698 File Offset: 0x002F4898
|
||||
[Token(Token = "0x1700212C")]
|
||||
public string Key
|
||||
{
|
||||
[Token(Token = "0x600D0A6")]
|
||||
[Address(RVA = "0x411530", Offset = "0x410530", VA = "0x180411530")]
|
||||
get;
|
||||
[Token(Token = "0x600D0A7")]
|
||||
[Address(RVA = "0x415800", Offset = "0x414800", VA = "0x180415800")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x1700212D RID: 8493
|
||||
// (get) Token: 0x0600D0A8 RID: 53416 RVA: 0x002F66AC File Offset: 0x002F48AC
|
||||
// (set) Token: 0x0600D0A9 RID: 53417 RVA: 0x002F66C0 File Offset: 0x002F48C0
|
||||
[Token(Token = "0x1700212D")]
|
||||
public string Value
|
||||
{
|
||||
[Token(Token = "0x600D0A8")]
|
||||
[Address(RVA = "0x4157B0", Offset = "0x4147B0", VA = "0x1804157B0")]
|
||||
get;
|
||||
[Token(Token = "0x600D0A9")]
|
||||
[Address(RVA = "0x4157F0", Offset = "0x4147F0", VA = "0x1804157F0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x1700212E RID: 8494
|
||||
// (get) Token: 0x0600D0AA RID: 53418 RVA: 0x002F66D4 File Offset: 0x002F48D4
|
||||
// (set) Token: 0x0600D0AB RID: 53419 RVA: 0x002F66E8 File Offset: 0x002F48E8
|
||||
[Token(Token = "0x1700212E")]
|
||||
public List<HeaderValue> Options
|
||||
{
|
||||
[Token(Token = "0x600D0AA")]
|
||||
[Address(RVA = "0x4157C0", Offset = "0x4147C0", VA = "0x1804157C0")]
|
||||
get;
|
||||
[Token(Token = "0x600D0AB")]
|
||||
[Address(RVA = "0x415810", Offset = "0x414810", VA = "0x180415810")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x1700212F RID: 8495
|
||||
// (get) Token: 0x0600D0AC RID: 53420 RVA: 0x002F66FC File Offset: 0x002F48FC
|
||||
[Token(Token = "0x1700212F")]
|
||||
public bool HasValue
|
||||
{
|
||||
[Token(Token = "0x600D0AC")]
|
||||
[Address(RVA = "0x2A7FEC0", Offset = "0x2A7EEC0", VA = "0x182A7FEC0")]
|
||||
get
|
||||
{
|
||||
return !string.IsNullOrEmpty(this.<Value>k__BackingField);
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600D0AD RID: 53421 RVA: 0x002F6718 File Offset: 0x002F4918
|
||||
[Token(Token = "0x600D0AD")]
|
||||
[Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")]
|
||||
public HeaderValue()
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0600D0AE RID: 53422 RVA: 0x002F672C File Offset: 0x002F492C
|
||||
[Token(Token = "0x600D0AE")]
|
||||
[Address(RVA = "0x493D90", Offset = "0x492D90", VA = "0x180493D90")]
|
||||
public HeaderValue(string key)
|
||||
{
|
||||
this.Key = key;
|
||||
}
|
||||
|
||||
// Token: 0x0600D0AF RID: 53423 RVA: 0x002F6748 File Offset: 0x002F4948
|
||||
[Token(Token = "0x600D0AF")]
|
||||
[Address(RVA = "0x2A7FD20", Offset = "0x2A7ED20", VA = "0x182A7FD20")]
|
||||
public void Parse(string headerStr, ref int pos)
|
||||
{
|
||||
this.ParseImplementation(headerStr, ref pos, true);
|
||||
}
|
||||
|
||||
// Token: 0x0600D0B0 RID: 53424 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600D0B0")]
|
||||
[Address(RVA = "0x2A7FDD0", Offset = "0x2A7EDD0", VA = "0x182A7FDD0")]
|
||||
public bool TryGetOption(string key, out HeaderValue option)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x0600D0B1 RID: 53425 RVA: 0x002F6760 File Offset: 0x002F4960
|
||||
[Token(Token = "0x600D0B1")]
|
||||
[Address(RVA = "0x2A7F9D0", Offset = "0x2A7E9D0", VA = "0x182A7F9D0")]
|
||||
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: 0x0600D0B2 RID: 53426 RVA: 0x002F6848 File Offset: 0x002F4A48
|
||||
[Token(Token = "0x600D0B2")]
|
||||
[Address(RVA = "0x2A7FD40", Offset = "0x2A7ED40", VA = "0x182A7FD40", 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: 0x02002077 RID: 8311
|
||||
[Token(Token = "0x2002077")]
|
||||
public sealed class HeartbeatManager
|
||||
{
|
||||
// Token: 0x0600D0B7 RID: 53431 RVA: 0x002F68AC File Offset: 0x002F4AAC
|
||||
[Token(Token = "0x600D0B7")]
|
||||
[Address(RVA = "0x2A7FEE0", Offset = "0x2A7EEE0", VA = "0x182A7FEE0")]
|
||||
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: 0x0600D0B8 RID: 53432 RVA: 0x002F68F4 File Offset: 0x002F4AF4
|
||||
[Token(Token = "0x600D0B8")]
|
||||
[Address(RVA = "0x2A7FFD0", Offset = "0x2A7EFD0", VA = "0x182A7FFD0")]
|
||||
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: 0x0600D0B9 RID: 53433 RVA: 0x002F6928 File Offset: 0x002F4B28
|
||||
[Token(Token = "0x600D0B9")]
|
||||
[Address(RVA = "0x2A800A0", Offset = "0x2A7F0A0", VA = "0x182A800A0")]
|
||||
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: 0x0600D0BA RID: 53434 RVA: 0x002F6A28 File Offset: 0x002F4C28
|
||||
[Token(Token = "0x600D0BA")]
|
||||
[Address(RVA = "0x2A80320", Offset = "0x2A7F320", VA = "0x182A80320")]
|
||||
public HeartbeatManager()
|
||||
{
|
||||
List<IHeartbeat> list = new List();
|
||||
this.Heartbeats = list;
|
||||
DateTime minValue = DateTime.MinValue;
|
||||
this.LastUpdate = minValue;
|
||||
base..ctor();
|
||||
}
|
||||
|
||||
// Token: 0x04008423 RID: 33827
|
||||
[FieldOffset(Offset = "0x10")]
|
||||
[Token(Token = "0x4008423")]
|
||||
private List<IHeartbeat> Heartbeats;
|
||||
|
||||
// Token: 0x04008424 RID: 33828
|
||||
[FieldOffset(Offset = "0x18")]
|
||||
[Token(Token = "0x4008424")]
|
||||
private IHeartbeat[] UpdateArray;
|
||||
|
||||
// Token: 0x04008425 RID: 33829
|
||||
[FieldOffset(Offset = "0x20")]
|
||||
[Token(Token = "0x4008425")]
|
||||
private DateTime LastUpdate;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Extensions
|
||||
{
|
||||
// Token: 0x02002076 RID: 8310
|
||||
[Token(Token = "0x2002076")]
|
||||
public interface IHeartbeat
|
||||
{
|
||||
// Token: 0x0600D0B6 RID: 53430
|
||||
[Token(Token = "0x600D0B6")]
|
||||
[Address(Slot = "0")]
|
||||
void OnHeartbeatUpdate(TimeSpan dif);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,40 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Extensions
|
||||
{
|
||||
// Token: 0x02002078 RID: 8312
|
||||
[Token(Token = "0x2002078")]
|
||||
public class KeyValuePairList
|
||||
{
|
||||
// Token: 0x17002130 RID: 8496
|
||||
// (get) Token: 0x0600D0BB RID: 53435 RVA: 0x002F6A58 File Offset: 0x002F4C58
|
||||
// (set) Token: 0x0600D0BC RID: 53436 RVA: 0x002F6A6C File Offset: 0x002F4C6C
|
||||
[Token(Token = "0x17002130")]
|
||||
public List<HeaderValue> Values
|
||||
{
|
||||
[Token(Token = "0x600D0BB")]
|
||||
[Address(RVA = "0x411530", Offset = "0x410530", VA = "0x180411530")]
|
||||
get;
|
||||
[Token(Token = "0x600D0BC")]
|
||||
[Address(RVA = "0x415800", Offset = "0x414800", VA = "0x180415800")]
|
||||
protected set;
|
||||
}
|
||||
|
||||
// Token: 0x0600D0BD RID: 53437 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600D0BD")]
|
||||
[Address(RVA = "0x2A803C0", Offset = "0x2A7F3C0", VA = "0x182A803C0")]
|
||||
public bool TryGet(string valueKeyName, out HeaderValue param)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x0600D0BE RID: 53438 RVA: 0x002F6A80 File Offset: 0x002F4C80
|
||||
[Token(Token = "0x600D0BE")]
|
||||
[Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")]
|
||||
public KeyValuePairList()
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,385 @@
|
||||
using System;
|
||||
using System.IO;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Extensions
|
||||
{
|
||||
// Token: 0x02002079 RID: 8313
|
||||
[Token(Token = "0x2002079")]
|
||||
public class ReadOnlyBufferedStream : Stream
|
||||
{
|
||||
// Token: 0x17002131 RID: 8497
|
||||
// (get) Token: 0x0600D0BF RID: 53439 RVA: 0x002F6A94 File Offset: 0x002F4C94
|
||||
// (set) Token: 0x0600D0C0 RID: 53440 RVA: 0x002F6AA8 File Offset: 0x002F4CA8
|
||||
[Token(Token = "0x17002131")]
|
||||
public bool CheckForDataAvailability
|
||||
{
|
||||
[Token(Token = "0x600D0BF")]
|
||||
[Address(RVA = "0x51F260", Offset = "0x51E260", VA = "0x18051F260")]
|
||||
get;
|
||||
[Token(Token = "0x600D0C0")]
|
||||
[Address(RVA = "0x51F2B0", Offset = "0x51E2B0", VA = "0x18051F2B0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x0600D0C1 RID: 53441 RVA: 0x002F6ABC File Offset: 0x002F4CBC
|
||||
[Token(Token = "0x600D0C1")]
|
||||
[Address(RVA = "0x2A80B40", Offset = "0x2A7FB40", VA = "0x182A80B40")]
|
||||
public ReadOnlyBufferedStream(Stream nstream)
|
||||
{
|
||||
this.stream = nstream;
|
||||
byte[] array;
|
||||
this.buf = array;
|
||||
}
|
||||
|
||||
// Token: 0x0600D0C2 RID: 53442 RVA: 0x002F6AE0 File Offset: 0x002F4CE0
|
||||
[Token(Token = "0x600D0C2")]
|
||||
[Address(RVA = "0x2A808D0", Offset = "0x2A7F8D0", VA = "0x182A808D0", 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: 0x0600D0C3 RID: 53443 RVA: 0x002F6B80 File Offset: 0x002F4D80
|
||||
[Token(Token = "0x600D0C3")]
|
||||
[Address(RVA = "0x2A807A0", Offset = "0x2A7F7A0", VA = "0x182A807A0", 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: 0x0600D0C4 RID: 53444 RVA: 0x002F6BEC File Offset: 0x002F4DEC
|
||||
[Token(Token = "0x600D0C4")]
|
||||
[Address(RVA = "0x2A806E0", Offset = "0x2A7F6E0", VA = "0x182A806E0", Slot = "16")]
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
byte[] array = this.buf;
|
||||
if (array != 0)
|
||||
{
|
||||
VariableSizedBufferPool.Release(array);
|
||||
}
|
||||
this.buf = (ulong)0L;
|
||||
}
|
||||
|
||||
// Token: 0x17002132 RID: 8498
|
||||
// (get) Token: 0x0600D0C5 RID: 53445 RVA: 0x002F6C14 File Offset: 0x002F4E14
|
||||
[Token(Token = "0x17002132")]
|
||||
public override bool CanRead
|
||||
{
|
||||
[Token(Token = "0x600D0C5")]
|
||||
[Address(RVA = "0x4246A0", Offset = "0x4236A0", VA = "0x1804246A0", Slot = "7")]
|
||||
get
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17002133 RID: 8499
|
||||
// (get) Token: 0x0600D0C6 RID: 53446 RVA: 0x002F6C24 File Offset: 0x002F4E24
|
||||
[Token(Token = "0x17002133")]
|
||||
public override bool CanSeek
|
||||
{
|
||||
[Token(Token = "0x600D0C6")]
|
||||
[Address(RVA = "0x2A80BE0", Offset = "0x2A7FBE0", VA = "0x182A80BE0", Slot = "8")]
|
||||
get
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D0C6)
|
||||
|
||||
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: 0x17002134 RID: 8500
|
||||
// (get) Token: 0x0600D0C7 RID: 53447 RVA: 0x002F6C38 File Offset: 0x002F4E38
|
||||
[Token(Token = "0x17002134")]
|
||||
public override bool CanWrite
|
||||
{
|
||||
[Token(Token = "0x600D0C7")]
|
||||
[Address(RVA = "0x2A80C30", Offset = "0x2A7FC30", VA = "0x182A80C30", Slot = "9")]
|
||||
get
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D0C7)
|
||||
|
||||
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: 0x17002135 RID: 8501
|
||||
// (get) Token: 0x0600D0C8 RID: 53448 RVA: 0x002F6C4C File Offset: 0x002F4E4C
|
||||
[Token(Token = "0x17002135")]
|
||||
public override long Length
|
||||
{
|
||||
[Token(Token = "0x600D0C8")]
|
||||
[Address(RVA = "0x2A80C80", Offset = "0x2A7FC80", VA = "0x182A80C80", Slot = "10")]
|
||||
get
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D0C8)
|
||||
|
||||
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: 0x17002136 RID: 8502
|
||||
// (get) Token: 0x0600D0C9 RID: 53449 RVA: 0x002F6C60 File Offset: 0x002F4E60
|
||||
// (set) Token: 0x0600D0CA RID: 53450 RVA: 0x002F6C74 File Offset: 0x002F4E74
|
||||
[Token(Token = "0x17002136")]
|
||||
public override long Position
|
||||
{
|
||||
[Token(Token = "0x600D0C9")]
|
||||
[Address(RVA = "0x2A80CD0", Offset = "0x2A7FCD0", VA = "0x182A80CD0", Slot = "11")]
|
||||
get
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D0C9)
|
||||
|
||||
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 = "0x600D0CA")]
|
||||
[Address(RVA = "0x2A80D20", Offset = "0x2A7FD20", VA = "0x182A80D20", Slot = "12")]
|
||||
set
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D0CA)
|
||||
|
||||
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: 0x0600D0CB RID: 53451 RVA: 0x002F6C88 File Offset: 0x002F4E88
|
||||
[Token(Token = "0x600D0CB")]
|
||||
[Address(RVA = "0x2A80750", Offset = "0x2A7F750", VA = "0x182A80750", Slot = "17")]
|
||||
public override void Flush()
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D0CB)
|
||||
|
||||
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: 0x0600D0CC RID: 53452 RVA: 0x002F6C9C File Offset: 0x002F4E9C
|
||||
[Token(Token = "0x600D0CC")]
|
||||
[Address(RVA = "0x2A80A50", Offset = "0x2A7FA50", VA = "0x182A80A50", Slot = "25")]
|
||||
public override long Seek(long offset, SeekOrigin origin)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D0CC)
|
||||
|
||||
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: 0x0600D0CD RID: 53453 RVA: 0x002F6CB0 File Offset: 0x002F4EB0
|
||||
[Token(Token = "0x600D0CD")]
|
||||
[Address(RVA = "0x2A80AA0", Offset = "0x2A7FAA0", VA = "0x182A80AA0", Slot = "26")]
|
||||
public override void SetLength(long value)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D0CD)
|
||||
|
||||
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: 0x0600D0CE RID: 53454 RVA: 0x002F6CC4 File Offset: 0x002F4EC4
|
||||
[Token(Token = "0x600D0CE")]
|
||||
[Address(RVA = "0x2A80AF0", Offset = "0x2A7FAF0", VA = "0x182A80AF0", Slot = "29")]
|
||||
public override void Write(byte[] buffer, int offset, int count)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D0CE)
|
||||
|
||||
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: 0x04008428 RID: 33832
|
||||
[FieldOffset(Offset = "0x30")]
|
||||
[Token(Token = "0x4008428")]
|
||||
private Stream stream;
|
||||
|
||||
// Token: 0x04008429 RID: 33833
|
||||
[Token(Token = "0x4008429")]
|
||||
public const int READBUFFER = 8192;
|
||||
|
||||
// Token: 0x0400842A RID: 33834
|
||||
[FieldOffset(Offset = "0x38")]
|
||||
[Token(Token = "0x400842A")]
|
||||
private byte[] buf;
|
||||
|
||||
// Token: 0x0400842B RID: 33835
|
||||
[FieldOffset(Offset = "0x40")]
|
||||
[Token(Token = "0x400842B")]
|
||||
private int available;
|
||||
|
||||
// Token: 0x0400842C RID: 33836
|
||||
[FieldOffset(Offset = "0x44")]
|
||||
[Token(Token = "0x400842C")]
|
||||
private int pos;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,424 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
using System.Threading;
|
||||
using BestHTTP.Logger;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Extensions
|
||||
{
|
||||
// Token: 0x0200207C RID: 8316
|
||||
[Token(Token = "0x200207C")]
|
||||
public static class VariableSizedBufferPool
|
||||
{
|
||||
// Token: 0x17002137 RID: 8503
|
||||
// (get) Token: 0x0600D0D3 RID: 53459 RVA: 0x002F6D6C File Offset: 0x002F4F6C
|
||||
// (set) Token: 0x0600D0D4 RID: 53460 RVA: 0x002F6D80 File Offset: 0x002F4F80
|
||||
[Token(Token = "0x17002137")]
|
||||
public static bool IsEnabled
|
||||
{
|
||||
[Token(Token = "0x600D0D3")]
|
||||
[Address(RVA = "0x2A83050", Offset = "0x2A82050", VA = "0x182A83050")]
|
||||
get
|
||||
{
|
||||
return VariableSizedBufferPool._isEnabled;
|
||||
}
|
||||
[Token(Token = "0x600D0D4")]
|
||||
[Address(RVA = "0x2A830C0", Offset = "0x2A820C0", VA = "0x182A830C0")]
|
||||
set
|
||||
{
|
||||
VariableSizedBufferPool._isEnabled = value;
|
||||
if (!VariableSizedBufferPool._isEnabled)
|
||||
{
|
||||
VariableSizedBufferPool.Clear();
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600D0D5 RID: 53461 RVA: 0x002F6DA4 File Offset: 0x002F4FA4
|
||||
[Token(Token = "0x600D0D5")]
|
||||
[Address(RVA = "0x2A82E30", Offset = "0x2A81E30", VA = "0x182A82E30")]
|
||||
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: 0x0600D0D6 RID: 53462 RVA: 0x002F6E0C File Offset: 0x002F500C
|
||||
[Token(Token = "0x600D0D6")]
|
||||
[Address(RVA = "0x2A81DF0", Offset = "0x2A80DF0", VA = "0x182A81DF0")]
|
||||
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: 0x0600D0D7 RID: 53463 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600D0D7")]
|
||||
[Address(RVA = "0x2A82C00", Offset = "0x2A81C00", VA = "0x182A82C00")]
|
||||
public static void Release(List<byte[]> buffers)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x0600D0D8 RID: 53464 RVA: 0x002F6F00 File Offset: 0x002F5100
|
||||
[Token(Token = "0x600D0D8")]
|
||||
[Address(RVA = "0x2A829B0", Offset = "0x2A819B0", VA = "0x182A829B0")]
|
||||
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: 0x0600D0D9 RID: 53465 RVA: 0x002F6F58 File Offset: 0x002F5158
|
||||
[Token(Token = "0x600D0D9")]
|
||||
[Address(RVA = "0x2A82CE0", Offset = "0x2A81CE0", VA = "0x182A82CE0")]
|
||||
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: 0x0600D0DA RID: 53466 RVA: 0x002F6F90 File Offset: 0x002F5190
|
||||
[Token(Token = "0x600D0DA")]
|
||||
[Address(RVA = "0x2A81970", Offset = "0x2A80970", VA = "0x182A81970")]
|
||||
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: 0x0600D0DB RID: 53467 RVA: 0x002F7088 File Offset: 0x002F5288
|
||||
[Token(Token = "0x600D0DB")]
|
||||
[Address(RVA = "0x2A81650", Offset = "0x2A80650", VA = "0x182A81650")]
|
||||
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: 0x0600D0DC RID: 53468 RVA: 0x002F70C0 File Offset: 0x002F52C0
|
||||
[Token(Token = "0x600D0DC")]
|
||||
[Address(RVA = "0x2A82370", Offset = "0x2A81370", VA = "0x182A82370")]
|
||||
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: 0x0600D0DD RID: 53469 RVA: 0x002F721C File Offset: 0x002F541C
|
||||
[Token(Token = "0x600D0DD")]
|
||||
[Address(RVA = "0x2A82360", Offset = "0x2A81360", VA = "0x182A82360")]
|
||||
private static bool IsPowerOfTwo(long x)
|
||||
{
|
||||
long num = x - 1L;
|
||||
return x == num;
|
||||
}
|
||||
|
||||
// Token: 0x0600D0DE RID: 53470 RVA: 0x002F7234 File Offset: 0x002F5434
|
||||
[Token(Token = "0x600D0DE")]
|
||||
[Address(RVA = "0x2A82990", Offset = "0x2A81990", VA = "0x182A82990")]
|
||||
private static long NextPowerOf2(long x)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D0DE)
|
||||
|
||||
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: 0x0600D0DF RID: 53471 RVA: 0x002F7248 File Offset: 0x002F5448
|
||||
[Token(Token = "0x600D0DF")]
|
||||
[Address(RVA = "0x2A81780", Offset = "0x2A80780", VA = "0x182A81780")]
|
||||
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: 0x0600D0E0 RID: 53472 RVA: 0x002F7290 File Offset: 0x002F5490
|
||||
[Token(Token = "0x600D0E0")]
|
||||
[Address(RVA = "0x2A812F0", Offset = "0x2A802F0", VA = "0x182A812F0")]
|
||||
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;
|
||||
DateTime utcNow = DateTime.UtcNow;
|
||||
int num4 = 0;
|
||||
VariableSizedBufferPool.FreeBuffers.Add(num4);
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x04008432 RID: 33842
|
||||
[Token(Token = "0x4008432")]
|
||||
public static readonly byte[] NoData = new byte[0];
|
||||
|
||||
// Token: 0x04008433 RID: 33843
|
||||
[Token(Token = "0x4008433")]
|
||||
public static bool _isEnabled;
|
||||
|
||||
// Token: 0x04008434 RID: 33844
|
||||
[Token(Token = "0x4008434")]
|
||||
public static TimeSpan RemoveOlderThan;
|
||||
|
||||
// Token: 0x04008435 RID: 33845
|
||||
[Token(Token = "0x4008435")]
|
||||
public static TimeSpan RunMaintenanceEvery;
|
||||
|
||||
// Token: 0x04008436 RID: 33846
|
||||
[Token(Token = "0x4008436")]
|
||||
public static long MinBufferSize;
|
||||
|
||||
// Token: 0x04008437 RID: 33847
|
||||
[Token(Token = "0x4008437")]
|
||||
public static long MaxBufferSize;
|
||||
|
||||
// Token: 0x04008438 RID: 33848
|
||||
[Token(Token = "0x4008438")]
|
||||
public static long MaxPoolSize;
|
||||
|
||||
// Token: 0x04008439 RID: 33849
|
||||
[Token(Token = "0x4008439")]
|
||||
public static bool RemoveEmptyLists;
|
||||
|
||||
// Token: 0x0400843A RID: 33850
|
||||
[Token(Token = "0x400843A")]
|
||||
public static bool IsDoubleReleaseCheckEnabled;
|
||||
|
||||
// Token: 0x0400843B RID: 33851
|
||||
[Token(Token = "0x400843B")]
|
||||
private static List<BufferStore> FreeBuffers;
|
||||
|
||||
// Token: 0x0400843C RID: 33852
|
||||
[Token(Token = "0x400843C")]
|
||||
private static DateTime lastMaintenance;
|
||||
|
||||
// Token: 0x0400843D RID: 33853
|
||||
[Token(Token = "0x400843D")]
|
||||
private static int PoolSize;
|
||||
|
||||
// Token: 0x0400843E RID: 33854
|
||||
[Token(Token = "0x400843E")]
|
||||
private static uint GetBuffers;
|
||||
|
||||
// Token: 0x0400843F RID: 33855
|
||||
[Token(Token = "0x400843F")]
|
||||
private static uint ReleaseBuffers;
|
||||
|
||||
// Token: 0x04008440 RID: 33856
|
||||
[Token(Token = "0x4008440")]
|
||||
private static StringBuilder statiscticsBuilder;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,57 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Extensions
|
||||
{
|
||||
// Token: 0x0200207D RID: 8317
|
||||
[Token(Token = "0x200207D")]
|
||||
public sealed class WWWAuthenticateHeaderParser : KeyValuePairList
|
||||
{
|
||||
// Token: 0x0600D0E1 RID: 53473 RVA: 0x002F7318 File Offset: 0x002F5518
|
||||
[Token(Token = "0x600D0E1")]
|
||||
[Address(RVA = "0x2A833B0", Offset = "0x2A823B0", VA = "0x182A833B0")]
|
||||
public WWWAuthenticateHeaderParser(string headerValue)
|
||||
{
|
||||
List<HeaderValue> list = this.ParseQuotedHeader(headerValue);
|
||||
this.<Values>k__BackingField = list;
|
||||
}
|
||||
|
||||
// Token: 0x0600D0E2 RID: 53474 RVA: 0x002F733C File Offset: 0x002F553C
|
||||
[Token(Token = "0x600D0E2")]
|
||||
[Address(RVA = "0x2A83170", Offset = "0x2A82170", VA = "0x182A83170")]
|
||||
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: 0x0200207F RID: 8319
|
||||
[Token(Token = "0x200207F")]
|
||||
public sealed class WriteOnlyBufferedStream : Stream
|
||||
{
|
||||
// Token: 0x17002138 RID: 8504
|
||||
// (get) Token: 0x0600D0E6 RID: 53478 RVA: 0x002F7430 File Offset: 0x002F5630
|
||||
[Token(Token = "0x17002138")]
|
||||
public override bool CanRead
|
||||
{
|
||||
[Token(Token = "0x600D0E6")]
|
||||
[Address(RVA = "0x424690", Offset = "0x423690", VA = "0x180424690", Slot = "7")]
|
||||
get
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17002139 RID: 8505
|
||||
// (get) Token: 0x0600D0E7 RID: 53479 RVA: 0x002F7440 File Offset: 0x002F5640
|
||||
[Token(Token = "0x17002139")]
|
||||
public override bool CanSeek
|
||||
{
|
||||
[Token(Token = "0x600D0E7")]
|
||||
[Address(RVA = "0x424690", Offset = "0x423690", VA = "0x180424690", Slot = "8")]
|
||||
get
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x1700213A RID: 8506
|
||||
// (get) Token: 0x0600D0E8 RID: 53480 RVA: 0x002F7450 File Offset: 0x002F5650
|
||||
[Token(Token = "0x1700213A")]
|
||||
public override bool CanWrite
|
||||
{
|
||||
[Token(Token = "0x600D0E8")]
|
||||
[Address(RVA = "0x4246A0", Offset = "0x4236A0", VA = "0x1804246A0", Slot = "9")]
|
||||
get
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x1700213B RID: 8507
|
||||
// (get) Token: 0x0600D0E9 RID: 53481 RVA: 0x002F7460 File Offset: 0x002F5660
|
||||
[Token(Token = "0x1700213B")]
|
||||
public override long Length
|
||||
{
|
||||
[Token(Token = "0x600D0E9")]
|
||||
[Address(RVA = "0x2A83770", Offset = "0x2A82770", VA = "0x182A83770", Slot = "10")]
|
||||
get
|
||||
{
|
||||
int length = this.buffer.Length;
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x1700213C RID: 8508
|
||||
// (get) Token: 0x0600D0EA RID: 53482 RVA: 0x002F7480 File Offset: 0x002F5680
|
||||
// (set) Token: 0x0600D0EB RID: 53483 RVA: 0x002F7494 File Offset: 0x002F5694
|
||||
[Token(Token = "0x1700213C")]
|
||||
public override long Position
|
||||
{
|
||||
[Token(Token = "0x600D0EA")]
|
||||
[Address(RVA = "0x2A83790", Offset = "0x2A82790", VA = "0x182A83790", Slot = "11")]
|
||||
get
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D0EA)
|
||||
|
||||
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 = "0x600D0EB")]
|
||||
[Address(RVA = "0x2A837A0", Offset = "0x2A827A0", VA = "0x182A837A0", Slot = "12")]
|
||||
set
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D0EB)
|
||||
|
||||
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: 0x0600D0EC RID: 53484 RVA: 0x002F74AC File Offset: 0x002F56AC
|
||||
[Token(Token = "0x600D0EC")]
|
||||
[Address(RVA = "0x2A836C0", Offset = "0x2A826C0", VA = "0x182A836C0")]
|
||||
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: 0x0600D0ED RID: 53485 RVA: 0x002F74E0 File Offset: 0x002F56E0
|
||||
[Token(Token = "0x600D0ED")]
|
||||
[Address(RVA = "0x2A83470", Offset = "0x2A82470", VA = "0x182A83470", 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: 0x0600D0EE RID: 53486 RVA: 0x002F752C File Offset: 0x002F572C
|
||||
[Token(Token = "0x600D0EE")]
|
||||
[Address(RVA = "0x2A835B0", Offset = "0x2A825B0", VA = "0x182A835B0", 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: 0x0600D0EF RID: 53487 RVA: 0x002F75B0 File Offset: 0x002F57B0
|
||||
[Token(Token = "0x600D0EF")]
|
||||
[Address(RVA = "0x4242C0", Offset = "0x4232C0", VA = "0x1804242C0", Slot = "27")]
|
||||
public override int Read(byte[] buffer, int offset, int count)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
// Token: 0x0600D0F0 RID: 53488 RVA: 0x002F75C0 File Offset: 0x002F57C0
|
||||
[Token(Token = "0x600D0F0")]
|
||||
[Address(RVA = "0x4242C0", Offset = "0x4232C0", VA = "0x1804242C0", Slot = "25")]
|
||||
public override long Seek(long offset, SeekOrigin origin)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0600D0F1 RID: 53489 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600D0F1")]
|
||||
[Address(RVA = "0x4242D0", Offset = "0x4232D0", VA = "0x1804242D0", Slot = "26")]
|
||||
public override void SetLength(long value)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x0600D0F2 RID: 53490 RVA: 0x002F75D0 File Offset: 0x002F57D0
|
||||
[Token(Token = "0x600D0F2")]
|
||||
[Address(RVA = "0x2A833F0", Offset = "0x2A823F0", VA = "0x182A833F0", 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: 0x04008443 RID: 33859
|
||||
[FieldOffset(Offset = "0x28")]
|
||||
[Token(Token = "0x4008443")]
|
||||
private int _position;
|
||||
|
||||
// Token: 0x04008444 RID: 33860
|
||||
[FieldOffset(Offset = "0x30")]
|
||||
[Token(Token = "0x4008444")]
|
||||
private byte[] buffer;
|
||||
|
||||
// Token: 0x04008445 RID: 33861
|
||||
[FieldOffset(Offset = "0x38")]
|
||||
[Token(Token = "0x4008445")]
|
||||
private Stream stream;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,147 @@
|
||||
using System;
|
||||
using System.IO;
|
||||
using BestHTTP.PlatformSupport.FileSystem;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP
|
||||
{
|
||||
// Token: 0x0200196D RID: 6509
|
||||
[Token(Token = "0x200196D")]
|
||||
internal sealed class FileConnection : ConnectionBase
|
||||
{
|
||||
// Token: 0x060096E3 RID: 38627 RVA: 0x001EAFC0 File Offset: 0x001E91C0
|
||||
[Token(Token = "0x60096E3")]
|
||||
[Address(RVA = "0x2A70930", Offset = "0x2A6F930", VA = "0x182A70930")]
|
||||
public FileConnection(string serverAddress)
|
||||
: base(serverAddress)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x060096E4 RID: 38628 RVA: 0x001EAFD4 File Offset: 0x001E91D4
|
||||
[Token(Token = "0x60096E4")]
|
||||
[Address(RVA = "0x2A70260", Offset = "0x2A6F260", VA = "0x182A70260", Slot = "6")]
|
||||
internal override void Abort(HTTPConnectionStates newState)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (060096E4)
|
||||
|
||||
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: 0x060096E5 RID: 38629 RVA: 0x001EB004 File Offset: 0x001E9204
|
||||
[Token(Token = "0x60096E5")]
|
||||
[Address(RVA = "0x2A702F0", Offset = "0x2A6F2F0", VA = "0x182A702F0", 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: 0x0200205F RID: 8287
|
||||
[Token(Token = "0x200205F")]
|
||||
public class HTTPFieldData
|
||||
{
|
||||
// Token: 0x17002110 RID: 8464
|
||||
// (get) Token: 0x0600CFF8 RID: 53240 RVA: 0x002F4AE8 File Offset: 0x002F2CE8
|
||||
// (set) Token: 0x0600CFF9 RID: 53241 RVA: 0x002F4AFC File Offset: 0x002F2CFC
|
||||
[Token(Token = "0x17002110")]
|
||||
public string Name
|
||||
{
|
||||
[Token(Token = "0x600CFF8")]
|
||||
[Address(RVA = "0x411530", Offset = "0x410530", VA = "0x180411530")]
|
||||
get;
|
||||
[Token(Token = "0x600CFF9")]
|
||||
[Address(RVA = "0x415800", Offset = "0x414800", VA = "0x180415800")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17002111 RID: 8465
|
||||
// (get) Token: 0x0600CFFA RID: 53242 RVA: 0x002F4B10 File Offset: 0x002F2D10
|
||||
// (set) Token: 0x0600CFFB RID: 53243 RVA: 0x002F4B24 File Offset: 0x002F2D24
|
||||
[Token(Token = "0x17002111")]
|
||||
public string FileName
|
||||
{
|
||||
[Token(Token = "0x600CFFA")]
|
||||
[Address(RVA = "0x4157B0", Offset = "0x4147B0", VA = "0x1804157B0")]
|
||||
get;
|
||||
[Token(Token = "0x600CFFB")]
|
||||
[Address(RVA = "0x4157F0", Offset = "0x4147F0", VA = "0x1804157F0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17002112 RID: 8466
|
||||
// (get) Token: 0x0600CFFC RID: 53244 RVA: 0x002F4B38 File Offset: 0x002F2D38
|
||||
// (set) Token: 0x0600CFFD RID: 53245 RVA: 0x002F4B4C File Offset: 0x002F2D4C
|
||||
[Token(Token = "0x17002112")]
|
||||
public string MimeType
|
||||
{
|
||||
[Token(Token = "0x600CFFC")]
|
||||
[Address(RVA = "0x4157C0", Offset = "0x4147C0", VA = "0x1804157C0")]
|
||||
get;
|
||||
[Token(Token = "0x600CFFD")]
|
||||
[Address(RVA = "0x415810", Offset = "0x414810", VA = "0x180415810")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17002113 RID: 8467
|
||||
// (get) Token: 0x0600CFFE RID: 53246 RVA: 0x002F4B60 File Offset: 0x002F2D60
|
||||
// (set) Token: 0x0600CFFF RID: 53247 RVA: 0x002F4B74 File Offset: 0x002F2D74
|
||||
[Token(Token = "0x17002113")]
|
||||
public Encoding Encoding
|
||||
{
|
||||
[Token(Token = "0x600CFFE")]
|
||||
[Address(RVA = "0x4157D0", Offset = "0x4147D0", VA = "0x1804157D0")]
|
||||
get;
|
||||
[Token(Token = "0x600CFFF")]
|
||||
[Address(RVA = "0x415820", Offset = "0x414820", VA = "0x180415820")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17002114 RID: 8468
|
||||
// (get) Token: 0x0600D000 RID: 53248 RVA: 0x002F4B88 File Offset: 0x002F2D88
|
||||
// (set) Token: 0x0600D001 RID: 53249 RVA: 0x002F4B9C File Offset: 0x002F2D9C
|
||||
[Token(Token = "0x17002114")]
|
||||
public string Text
|
||||
{
|
||||
[Token(Token = "0x600D000")]
|
||||
[Address(RVA = "0x4157E0", Offset = "0x4147E0", VA = "0x1804157E0")]
|
||||
get;
|
||||
[Token(Token = "0x600D001")]
|
||||
[Address(RVA = "0x415830", Offset = "0x414830", VA = "0x180415830")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17002115 RID: 8469
|
||||
// (get) Token: 0x0600D002 RID: 53250 RVA: 0x002F4BB0 File Offset: 0x002F2DB0
|
||||
// (set) Token: 0x0600D003 RID: 53251 RVA: 0x002F4BC4 File Offset: 0x002F2DC4
|
||||
[Token(Token = "0x17002115")]
|
||||
public byte[] Binary
|
||||
{
|
||||
[Token(Token = "0x600D002")]
|
||||
[Address(RVA = "0x41CEF0", Offset = "0x41BEF0", VA = "0x18041CEF0")]
|
||||
get;
|
||||
[Token(Token = "0x600D003")]
|
||||
[Address(RVA = "0x41CFF0", Offset = "0x41BFF0", VA = "0x18041CFF0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17002116 RID: 8470
|
||||
// (get) Token: 0x0600D004 RID: 53252 RVA: 0x002F4BD8 File Offset: 0x002F2DD8
|
||||
[Token(Token = "0x17002116")]
|
||||
public byte[] Payload
|
||||
{
|
||||
[Token(Token = "0x600D004")]
|
||||
[Address(RVA = "0x2A73C00", Offset = "0x2A72C00", VA = "0x182A73C00")]
|
||||
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: 0x0600D005 RID: 53253 RVA: 0x002F4C1C File Offset: 0x002F2E1C
|
||||
[Token(Token = "0x600D005")]
|
||||
[Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")]
|
||||
public HTTPFieldData()
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,240 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Forms
|
||||
{
|
||||
// Token: 0x02002060 RID: 8288
|
||||
[Token(Token = "0x2002060")]
|
||||
public class HTTPFormBase
|
||||
{
|
||||
// Token: 0x17002117 RID: 8471
|
||||
// (get) Token: 0x0600D006 RID: 53254 RVA: 0x002F4C30 File Offset: 0x002F2E30
|
||||
// (set) Token: 0x0600D007 RID: 53255 RVA: 0x002F4C44 File Offset: 0x002F2E44
|
||||
[Token(Token = "0x17002117")]
|
||||
public List<HTTPFieldData> Fields
|
||||
{
|
||||
[Token(Token = "0x600D006")]
|
||||
[Address(RVA = "0x411530", Offset = "0x410530", VA = "0x180411530")]
|
||||
get;
|
||||
[Token(Token = "0x600D007")]
|
||||
[Address(RVA = "0x415800", Offset = "0x414800", VA = "0x180415800")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17002118 RID: 8472
|
||||
// (get) Token: 0x0600D008 RID: 53256 RVA: 0x002F4C58 File Offset: 0x002F2E58
|
||||
[Token(Token = "0x17002118")]
|
||||
public bool IsEmpty
|
||||
{
|
||||
[Token(Token = "0x600D008")]
|
||||
[Address(RVA = "0x2A74050", Offset = "0x2A73050", VA = "0x182A74050")]
|
||||
get
|
||||
{
|
||||
bool flag;
|
||||
return this.<Fields>k__BackingField == 0 || flag;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17002119 RID: 8473
|
||||
// (get) Token: 0x0600D009 RID: 53257 RVA: 0x002F4C74 File Offset: 0x002F2E74
|
||||
// (set) Token: 0x0600D00A RID: 53258 RVA: 0x002F4C88 File Offset: 0x002F2E88
|
||||
[Token(Token = "0x17002119")]
|
||||
public bool IsChanged
|
||||
{
|
||||
[Token(Token = "0x600D009")]
|
||||
[Address(RVA = "0x497570", Offset = "0x496570", VA = "0x180497570")]
|
||||
get;
|
||||
[Token(Token = "0x600D00A")]
|
||||
[Address(RVA = "0x611070", Offset = "0x610070", VA = "0x180611070")]
|
||||
protected set;
|
||||
}
|
||||
|
||||
// Token: 0x1700211A RID: 8474
|
||||
// (get) Token: 0x0600D00B RID: 53259 RVA: 0x002F4C9C File Offset: 0x002F2E9C
|
||||
// (set) Token: 0x0600D00C RID: 53260 RVA: 0x002F4CB0 File Offset: 0x002F2EB0
|
||||
[Token(Token = "0x1700211A")]
|
||||
public bool HasBinary
|
||||
{
|
||||
[Token(Token = "0x600D00B")]
|
||||
[Address(RVA = "0x696850", Offset = "0x695850", VA = "0x180696850")]
|
||||
get;
|
||||
[Token(Token = "0x600D00C")]
|
||||
[Address(RVA = "0x69ADD0", Offset = "0x699DD0", VA = "0x18069ADD0")]
|
||||
protected set;
|
||||
}
|
||||
|
||||
// Token: 0x1700211B RID: 8475
|
||||
// (get) Token: 0x0600D00D RID: 53261 RVA: 0x002F4CC4 File Offset: 0x002F2EC4
|
||||
// (set) Token: 0x0600D00E RID: 53262 RVA: 0x002F4CD8 File Offset: 0x002F2ED8
|
||||
[Token(Token = "0x1700211B")]
|
||||
public bool HasLongValue
|
||||
{
|
||||
[Token(Token = "0x600D00D")]
|
||||
[Address(RVA = "0x6A45D0", Offset = "0x6A35D0", VA = "0x1806A45D0")]
|
||||
get;
|
||||
[Token(Token = "0x600D00E")]
|
||||
[Address(RVA = "0x6A4680", Offset = "0x6A3680", VA = "0x1806A4680")]
|
||||
protected set;
|
||||
}
|
||||
|
||||
// Token: 0x0600D00F RID: 53263 RVA: 0x002F4CEC File Offset: 0x002F2EEC
|
||||
[Token(Token = "0x600D00F")]
|
||||
[Address(RVA = "0x2A73C50", Offset = "0x2A72C50", VA = "0x182A73C50")]
|
||||
public void AddBinaryData(string fieldName, byte[] content)
|
||||
{
|
||||
int num = 0;
|
||||
int num2 = 0;
|
||||
this.AddBinaryData(fieldName, content, num2, num);
|
||||
}
|
||||
|
||||
// Token: 0x0600D010 RID: 53264 RVA: 0x002F4D08 File Offset: 0x002F2F08
|
||||
[Token(Token = "0x600D010")]
|
||||
[Address(RVA = "0x2A73C70", Offset = "0x2A72C70", VA = "0x182A73C70")]
|
||||
public void AddBinaryData(string fieldName, byte[] content, string fileName)
|
||||
{
|
||||
int num = 0;
|
||||
this.AddBinaryData(fieldName, content, fileName, num);
|
||||
}
|
||||
|
||||
// Token: 0x0600D011 RID: 53265 RVA: 0x002F4D24 File Offset: 0x002F2F24
|
||||
[Token(Token = "0x600D011")]
|
||||
[Address(RVA = "0x2A73C90", Offset = "0x2A72C90", VA = "0x182A73C90")]
|
||||
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: 0x0600D012 RID: 53266 RVA: 0x002F4D94 File Offset: 0x002F2F94
|
||||
[Token(Token = "0x600D012")]
|
||||
[Address(RVA = "0x2A73ED0", Offset = "0x2A72ED0", VA = "0x182A73ED0")]
|
||||
public void AddField(string fieldName, string value)
|
||||
{
|
||||
Encoding utf = Encoding.UTF8;
|
||||
this.AddField(fieldName, value, utf);
|
||||
}
|
||||
|
||||
// Token: 0x0600D013 RID: 53267 RVA: 0x002F4DB4 File Offset: 0x002F2FB4
|
||||
[Token(Token = "0x600D013")]
|
||||
[Address(RVA = "0x2A73DA0", Offset = "0x2A72DA0", VA = "0x182A73DA0")]
|
||||
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: 0x0600D014 RID: 53268 RVA: 0x002F4E58 File Offset: 0x002F3058
|
||||
[Token(Token = "0x600D014")]
|
||||
[Address(RVA = "0x2A73F20", Offset = "0x2A72F20", VA = "0x182A73F20", 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: 0x0600D015 RID: 53269 RVA: 0x002F4E9C File Offset: 0x002F309C
|
||||
[Token(Token = "0x600D015")]
|
||||
[Address(RVA = "0x2A74000", Offset = "0x2A73000", VA = "0x182A74000", Slot = "5")]
|
||||
public virtual void PrepareRequest(HTTPRequest request)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D015)
|
||||
|
||||
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: 0x0600D016 RID: 53270 RVA: 0x002F4EB0 File Offset: 0x002F30B0
|
||||
[Token(Token = "0x600D016")]
|
||||
[Address(RVA = "0x2A73FB0", Offset = "0x2A72FB0", VA = "0x182A73FB0", Slot = "6")]
|
||||
public virtual byte[] GetData()
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D016)
|
||||
|
||||
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: 0x0600D017 RID: 53271 RVA: 0x002F4EC4 File Offset: 0x002F30C4
|
||||
[Token(Token = "0x600D017")]
|
||||
[Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")]
|
||||
public HTTPFormBase()
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x040083E9 RID: 33769
|
||||
[Token(Token = "0x40083E9")]
|
||||
private const int LongLength = 256;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Forms
|
||||
{
|
||||
// Token: 0x02002061 RID: 8289
|
||||
[Token(Token = "0x2002061")]
|
||||
public enum HTTPFormUsage
|
||||
{
|
||||
// Token: 0x040083EF RID: 33775
|
||||
[Token(Token = "0x40083EF")]
|
||||
Automatic,
|
||||
// Token: 0x040083F0 RID: 33776
|
||||
[Token(Token = "0x40083F0")]
|
||||
UrlEncoded,
|
||||
// Token: 0x040083F1 RID: 33777
|
||||
[Token(Token = "0x40083F1")]
|
||||
Multipart,
|
||||
// Token: 0x040083F2 RID: 33778
|
||||
[Token(Token = "0x40083F2")]
|
||||
RawJSon
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,49 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Forms
|
||||
{
|
||||
// Token: 0x02002062 RID: 8290
|
||||
[Token(Token = "0x2002062")]
|
||||
public sealed class HTTPMultiPartForm : HTTPFormBase
|
||||
{
|
||||
// Token: 0x0600D018 RID: 53272 RVA: 0x002F4ED8 File Offset: 0x002F30D8
|
||||
[Token(Token = "0x600D018")]
|
||||
[Address(RVA = "0x2A78FF0", Offset = "0x2A77FF0", VA = "0x182A78FF0")]
|
||||
public HTTPMultiPartForm()
|
||||
{
|
||||
this.Finalize();
|
||||
string text2;
|
||||
string text = "BestHTTP_HTTPMultiPartForm_" + text2;
|
||||
this.Boundary = text;
|
||||
}
|
||||
|
||||
// Token: 0x0600D019 RID: 53273 RVA: 0x002F4F04 File Offset: 0x002F3104
|
||||
[Token(Token = "0x600D019")]
|
||||
[Address(RVA = "0x2A78F80", Offset = "0x2A77F80", VA = "0x182A78F80", 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: 0x0600D01A RID: 53274 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600D01A")]
|
||||
[Address(RVA = "0x2A78AF0", Offset = "0x2A77AF0", VA = "0x182A78AF0", Slot = "6")]
|
||||
public override byte[] GetData()
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x040083F3 RID: 33779
|
||||
[FieldOffset(Offset = "0x20")]
|
||||
[Token(Token = "0x40083F3")]
|
||||
private string Boundary;
|
||||
|
||||
// Token: 0x040083F4 RID: 33780
|
||||
[FieldOffset(Offset = "0x28")]
|
||||
[Token(Token = "0x40083F4")]
|
||||
private byte[] CachedData;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,62 @@
|
||||
using System;
|
||||
using System.Text;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Forms
|
||||
{
|
||||
// Token: 0x02002063 RID: 8291
|
||||
[Token(Token = "0x2002063")]
|
||||
public sealed class HTTPUrlEncodedForm : HTTPFormBase
|
||||
{
|
||||
// Token: 0x0600D01B RID: 53275 RVA: 0x002F4F3C File Offset: 0x002F313C
|
||||
[Token(Token = "0x600D01B")]
|
||||
[Address(RVA = "0x2A7F7D0", Offset = "0x2A7E7D0", VA = "0x182A7F7D0", Slot = "5")]
|
||||
public override void PrepareRequest(HTTPRequest request)
|
||||
{
|
||||
request.SetHeader("Content-Type", "application/x-www-form-urlencoded");
|
||||
}
|
||||
|
||||
// Token: 0x0600D01C RID: 53276 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600D01C")]
|
||||
[Address(RVA = "0x2A7F5D0", Offset = "0x2A7E5D0", VA = "0x182A7F5D0", Slot = "6")]
|
||||
public override byte[] GetData()
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x0600D01D RID: 53277 RVA: 0x002F4F60 File Offset: 0x002F3160
|
||||
[Token(Token = "0x600D01D")]
|
||||
[Address(RVA = "0x2A7F470", Offset = "0x2A7E470", VA = "0x182A7F470")]
|
||||
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: 0x0600D01E RID: 53278 RVA: 0x002F4FBC File Offset: 0x002F31BC
|
||||
[Token(Token = "0x600D01E")]
|
||||
[Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")]
|
||||
public HTTPUrlEncodedForm()
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x040083F5 RID: 33781
|
||||
[Token(Token = "0x40083F5")]
|
||||
private const int EscapeTreshold = 256;
|
||||
|
||||
// Token: 0x040083F6 RID: 33782
|
||||
[FieldOffset(Offset = "0x20")]
|
||||
[Token(Token = "0x40083F6")]
|
||||
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: 0x02002064 RID: 8292
|
||||
[Token(Token = "0x2002064")]
|
||||
public sealed class RawJsonForm : HTTPFormBase
|
||||
{
|
||||
// Token: 0x0600D01F RID: 53279 RVA: 0x002F4FD0 File Offset: 0x002F31D0
|
||||
[Token(Token = "0x600D01F")]
|
||||
[Address(RVA = "0x2A80690", Offset = "0x2A7F690", VA = "0x182A80690", Slot = "5")]
|
||||
public override void PrepareRequest(HTTPRequest request)
|
||||
{
|
||||
request.SetHeader("Content-Type", "application/json");
|
||||
}
|
||||
|
||||
// Token: 0x0600D020 RID: 53280 RVA: 0x002F4FF4 File Offset: 0x002F31F4
|
||||
[Token(Token = "0x600D020")]
|
||||
[Address(RVA = "0x2A804A0", Offset = "0x2A7F4A0", VA = "0x182A804A0", 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: 0x0600D021 RID: 53281 RVA: 0x002F5080 File Offset: 0x002F3280
|
||||
[Token(Token = "0x600D021")]
|
||||
[Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")]
|
||||
public RawJsonForm()
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x040083F7 RID: 33783
|
||||
[FieldOffset(Offset = "0x20")]
|
||||
[Token(Token = "0x40083F7")]
|
||||
private byte[] CachedData;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,66 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Cpp2IlInjected;
|
||||
using UnityEngine;
|
||||
|
||||
namespace BestHTTP.Forms
|
||||
{
|
||||
// Token: 0x02002066 RID: 8294
|
||||
[Token(Token = "0x2002066")]
|
||||
public sealed class UnityForm : HTTPFormBase
|
||||
{
|
||||
// Token: 0x1700211C RID: 8476
|
||||
// (get) Token: 0x0600D026 RID: 53286 RVA: 0x002F50F8 File Offset: 0x002F32F8
|
||||
// (set) Token: 0x0600D027 RID: 53287 RVA: 0x002F510C File Offset: 0x002F330C
|
||||
[Token(Token = "0x1700211C")]
|
||||
public WWWForm Form
|
||||
{
|
||||
[Token(Token = "0x600D026")]
|
||||
[Address(RVA = "0x4157C0", Offset = "0x4147C0", VA = "0x1804157C0")]
|
||||
get;
|
||||
[Token(Token = "0x600D027")]
|
||||
[Address(RVA = "0x415810", Offset = "0x414810", VA = "0x180415810")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x0600D028 RID: 53288 RVA: 0x002F5120 File Offset: 0x002F3320
|
||||
[Token(Token = "0x600D028")]
|
||||
[Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")]
|
||||
public UnityForm()
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0600D029 RID: 53289 RVA: 0x002F5134 File Offset: 0x002F3334
|
||||
[Token(Token = "0x600D029")]
|
||||
[Address(RVA = "0x627550", Offset = "0x626550", VA = "0x180627550")]
|
||||
public UnityForm(WWWForm form)
|
||||
{
|
||||
this.Form = form;
|
||||
}
|
||||
|
||||
// Token: 0x0600D02A RID: 53290 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600D02A")]
|
||||
[Address(RVA = "0x2A810A0", Offset = "0x2A800A0", VA = "0x182A810A0", Slot = "4")]
|
||||
public override void CopyFrom(HTTPFormBase fields)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x0600D02B RID: 53291 RVA: 0x002F5150 File Offset: 0x002F3350
|
||||
[Token(Token = "0x600D02B")]
|
||||
[Address(RVA = "0x2A81220", Offset = "0x2A80220", VA = "0x182A81220", Slot = "5")]
|
||||
public override void PrepareRequest(HTTPRequest request)
|
||||
{
|
||||
Dictionary<string, string> headers = this.<Form>k__BackingField.headers;
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600D02C RID: 53292 RVA: 0x002F51A0 File Offset: 0x002F33A0
|
||||
[Token(Token = "0x600D02C")]
|
||||
[Address(RVA = "0x2A81200", Offset = "0x2A80200", VA = "0x182A81200", 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: 0x0200206C RID: 8300
|
||||
[Token(Token = "0x200206C")]
|
||||
public class Future<T> : IFuture<T>
|
||||
{
|
||||
// Token: 0x17002120 RID: 8480
|
||||
// (get) Token: 0x0600D040 RID: 53312 RVA: 0x002F5394 File Offset: 0x002F3594
|
||||
[Token(Token = "0x17002120")]
|
||||
public FutureState state
|
||||
{
|
||||
[Token(Token = "0x600D040")]
|
||||
[Address(RVA = "0xB40AD0", Offset = "0xB3FAD0", VA = "0x180B40AD0", Slot = "4")]
|
||||
get
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D040)
|
||||
|
||||
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: 0x17002121 RID: 8481
|
||||
// (get) Token: 0x0600D041 RID: 53313 RVA: 0x002F53A8 File Offset: 0x002F35A8
|
||||
[Token(Token = "0x17002121")]
|
||||
public T value
|
||||
{
|
||||
[Token(Token = "0x600D041")]
|
||||
[Address(RVA = "0x2DA9DA0", Offset = "0x2DA8DA0", VA = "0x182DA9DA0", Slot = "5")]
|
||||
get
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D041)
|
||||
|
||||
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: 0x17002122 RID: 8482
|
||||
// (get) Token: 0x0600D042 RID: 53314 RVA: 0x002F53D8 File Offset: 0x002F35D8
|
||||
[Token(Token = "0x17002122")]
|
||||
public Exception error
|
||||
{
|
||||
[Token(Token = "0x600D042")]
|
||||
[Address(RVA = "0x2DA9D20", Offset = "0x2DA8D20", VA = "0x182DA9D20", Slot = "6")]
|
||||
get
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D042)
|
||||
|
||||
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: 0x0600D043 RID: 53315 RVA: 0x002F53F8 File Offset: 0x002F35F8
|
||||
[Token(Token = "0x600D043")]
|
||||
[Address(RVA = "0x2DA9A00", Offset = "0x2DA8A00", VA = "0x182DA9A00")]
|
||||
public Future()
|
||||
{
|
||||
List<FutureErrorCallback> list = new List();
|
||||
base..ctor();
|
||||
this._state = (FutureState)((ulong)0L);
|
||||
}
|
||||
|
||||
// Token: 0x0600D044 RID: 53316 RVA: 0x002F541C File Offset: 0x002F361C
|
||||
[Token(Token = "0x600D044")]
|
||||
[Address(RVA = "0x2DA9390", Offset = "0x2DA8390", VA = "0x182DA9390", Slot = "7")]
|
||||
public IFuture<T> OnItem(FutureValueCallback<T> callback)
|
||||
{
|
||||
bool flag;
|
||||
if (this._state >= FutureState.Success || !flag)
|
||||
{
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600D045 RID: 53317 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600D045")]
|
||||
[Address(RVA = "0x2DA9420", Offset = "0x2DA8420", VA = "0x182DA9420", Slot = "8")]
|
||||
public IFuture<T> OnSuccess(FutureValueCallback<T> callback)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x0600D046 RID: 53318 RVA: 0x002F543C File Offset: 0x002F363C
|
||||
[Token(Token = "0x600D046")]
|
||||
[Address(RVA = "0x2DA9160", Offset = "0x2DA8160", VA = "0x182DA9160", 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: 0x0600D047 RID: 53319 RVA: 0x002F5474 File Offset: 0x002F3674
|
||||
[Token(Token = "0x600D047")]
|
||||
[Address(RVA = "0x2DA8FE0", Offset = "0x2DA7FE0", VA = "0x182DA8FE0", 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: 0x0600D048 RID: 53320 RVA: 0x002F54A4 File Offset: 0x002F36A4
|
||||
[Token(Token = "0x600D048")]
|
||||
[Address(RVA = "0x2DA95E0", Offset = "0x2DA85E0", VA = "0x182DA95E0")]
|
||||
public IFuture<T> Process(Func<T> func)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D048)
|
||||
|
||||
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: 0x0600D049 RID: 53321 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600D049")]
|
||||
[Address(RVA = "0x2DA97A0", Offset = "0x2DA87A0", VA = "0x182DA97A0")]
|
||||
private void ThreadFunc(object param)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x0600D04A RID: 53322 RVA: 0x002F54D4 File Offset: 0x002F36D4
|
||||
[Token(Token = "0x600D04A")]
|
||||
[Address(RVA = "0x2DA7E00", Offset = "0x2DA6E00", VA = "0x182DA7E00")]
|
||||
public void Assign(T value)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D04A)
|
||||
|
||||
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: 0x0600D04B RID: 53323 RVA: 0x002F5508 File Offset: 0x002F3708
|
||||
[Token(Token = "0x600D04B")]
|
||||
[Address(RVA = "0x2DA7F80", Offset = "0x2DA6F80", VA = "0x182DA7F80")]
|
||||
public void BeginProcess([Optional] T initialItem)
|
||||
{
|
||||
this._state = (FutureState)((ulong)1L);
|
||||
this._value = initialItem;
|
||||
}
|
||||
|
||||
// Token: 0x0600D04C RID: 53324 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600D04C")]
|
||||
[Address(RVA = "0x2DA7BE0", Offset = "0x2DA6BE0", VA = "0x182DA7BE0")]
|
||||
public void AssignItem(T value)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x0600D04D RID: 53325 RVA: 0x002F5528 File Offset: 0x002F3728
|
||||
[Token(Token = "0x600D04D")]
|
||||
[Address(RVA = "0x2DA82C0", Offset = "0x2DA72C0", VA = "0x182DA82C0")]
|
||||
public void Fail(Exception error)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600D04D)
|
||||
|
||||
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: 0x0600D04E RID: 53326 RVA: 0x002F555C File Offset: 0x002F375C
|
||||
[Token(Token = "0x600D04E")]
|
||||
[Address(RVA = "0x2DA7920", Offset = "0x2DA6920", VA = "0x182DA7920")]
|
||||
private void AssignImpl(T value)
|
||||
{
|
||||
this._value = value;
|
||||
this._state = (FutureState)((ulong)2L);
|
||||
FutureState state = ((IFuture)this).state;
|
||||
}
|
||||
|
||||
// Token: 0x0600D04F RID: 53327 RVA: 0x002F5580 File Offset: 0x002F3780
|
||||
[Token(Token = "0x600D04F")]
|
||||
[Address(RVA = "0x2DA8160", Offset = "0x2DA7160", VA = "0x182DA8160")]
|
||||
private void FailImpl(Exception error)
|
||||
{
|
||||
int num = 0;
|
||||
this._value = num;
|
||||
this._state = (FutureState)((ulong)3L);
|
||||
FutureState state = ((IFuture)this).state;
|
||||
}
|
||||
|
||||
// Token: 0x0600D050 RID: 53328 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600D050")]
|
||||
[Address(RVA = "0x2DA8DC0", Offset = "0x2DA7DC0", VA = "0x182DA8DC0")]
|
||||
private void FlushSuccessCallbacks()
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x0600D051 RID: 53329 RVA: 0x002F55A8 File Offset: 0x002F37A8
|
||||
[Token(Token = "0x600D051")]
|
||||
[Address(RVA = "0x2DA89B0", Offset = "0x2DA79B0", VA = "0x182DA89B0")]
|
||||
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: 0x0600D052 RID: 53330 RVA: 0x002F55FC File Offset: 0x002F37FC
|
||||
[Token(Token = "0x600D052")]
|
||||
[Address(RVA = "0x2DA8380", Offset = "0x2DA7380", VA = "0x182DA8380")]
|
||||
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: 0x0600D053 RID: 53331 RVA: 0x002F5640 File Offset: 0x002F3840
|
||||
[Token(Token = "0x600D053")]
|
||||
[Address(RVA = "0x2DA80A0", Offset = "0x2DA70A0", VA = "0x182DA80A0")]
|
||||
private void ClearCallbacks()
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x04008401 RID: 33793
|
||||
[global::Cpp2IlInjected.FieldOffset(Offset = "0x0")]
|
||||
[Token(Token = "0x4008401")]
|
||||
private FutureState _state;
|
||||
|
||||
// Token: 0x04008402 RID: 33794
|
||||
[global::Cpp2IlInjected.FieldOffset(Offset = "0x0")]
|
||||
[Token(Token = "0x4008402")]
|
||||
private T _value;
|
||||
|
||||
// Token: 0x04008403 RID: 33795
|
||||
[global::Cpp2IlInjected.FieldOffset(Offset = "0x0")]
|
||||
[Token(Token = "0x4008403")]
|
||||
private Exception _error;
|
||||
|
||||
// Token: 0x04008404 RID: 33796
|
||||
[global::Cpp2IlInjected.FieldOffset(Offset = "0x0")]
|
||||
[Token(Token = "0x4008404")]
|
||||
private Func<T> _processFunc;
|
||||
|
||||
// Token: 0x04008405 RID: 33797
|
||||
[global::Cpp2IlInjected.FieldOffset(Offset = "0x0")]
|
||||
[Token(Token = "0x4008405")]
|
||||
private readonly List<FutureValueCallback<T>> _itemCallbacks;
|
||||
|
||||
// Token: 0x04008406 RID: 33798
|
||||
[global::Cpp2IlInjected.FieldOffset(Offset = "0x0")]
|
||||
[Token(Token = "0x4008406")]
|
||||
private readonly List<FutureValueCallback<T>> _successCallbacks;
|
||||
|
||||
// Token: 0x04008407 RID: 33799
|
||||
[global::Cpp2IlInjected.FieldOffset(Offset = "0x0")]
|
||||
[Token(Token = "0x4008407")]
|
||||
private readonly List<FutureErrorCallback> _errorCallbacks;
|
||||
|
||||
// Token: 0x04008408 RID: 33800
|
||||
[global::Cpp2IlInjected.FieldOffset(Offset = "0x0")]
|
||||
[Token(Token = "0x4008408")]
|
||||
private readonly List<FutureCallback<T>> _complationCallbacks;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Futures
|
||||
{
|
||||
// Token: 0x02002069 RID: 8297
|
||||
[Token(Token = "0x2002069")]
|
||||
public sealed class FutureCallback<T> : MulticastDelegate
|
||||
{
|
||||
// Token: 0x0600D034 RID: 53300 RVA: 0x002F51C0 File Offset: 0x002F33C0
|
||||
[Token(Token = "0x600D034")]
|
||||
[Address(RVA = "0x4AF020", Offset = "0x4AE020", VA = "0x1804AF020")]
|
||||
public FutureCallback(object @object, IntPtr method)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0600D035 RID: 53301 RVA: 0x002F51D0 File Offset: 0x002F33D0
|
||||
[Token(Token = "0x600D035")]
|
||||
[Address(RVA = "0xB41180", Offset = "0xB40180", VA = "0x180B41180", Slot = "13")]
|
||||
public void Invoke(IFuture<T> future)
|
||||
{
|
||||
uint num;
|
||||
if (num != (uint)0)
|
||||
{
|
||||
throw new ExecutionEngineException();
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600D036 RID: 53302 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600D036")]
|
||||
[Address(RVA = "0x5FA200", Offset = "0x5F9200", VA = "0x1805FA200", 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: 0x0600D037 RID: 53303 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600D037")]
|
||||
[Address(RVA = "0x4F56B0", Offset = "0x4F46B0", VA = "0x1804F56B0", 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: 0x0200206B RID: 8299
|
||||
[Token(Token = "0x200206B")]
|
||||
public sealed class FutureErrorCallback : MulticastDelegate
|
||||
{
|
||||
// Token: 0x0600D03C RID: 53308 RVA: 0x002F52C4 File Offset: 0x002F34C4
|
||||
[Token(Token = "0x600D03C")]
|
||||
[Address(RVA = "0x4AF020", Offset = "0x4AE020", VA = "0x1804AF020")]
|
||||
public FutureErrorCallback(object @object, IntPtr method)
|
||||
{
|
||||
this.method = method;
|
||||
this.m_target = @object;
|
||||
}
|
||||
|
||||
// Token: 0x0600D03D RID: 53309 RVA: 0x002F52E0 File Offset: 0x002F34E0
|
||||
[Token(Token = "0x600D03D")]
|
||||
[Address(RVA = "0x5FA230", Offset = "0x5F9230", VA = "0x1805FA230", Slot = "13")]
|
||||
public void Invoke(Exception error)
|
||||
{
|
||||
if (this.delegates != 0)
|
||||
{
|
||||
}
|
||||
uint num;
|
||||
if (num != (uint)0)
|
||||
{
|
||||
throw new ExecutionEngineException();
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600D03E RID: 53310 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600D03E")]
|
||||
[Address(RVA = "0x5FA200", Offset = "0x5F9200", VA = "0x1805FA200", 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: 0x0600D03F RID: 53311 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600D03F")]
|
||||
[Address(RVA = "0x4F56B0", Offset = "0x4F46B0", VA = "0x1804F56B0", 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: 0x02002067 RID: 8295
|
||||
[Token(Token = "0x2002067")]
|
||||
public enum FutureState
|
||||
{
|
||||
// Token: 0x040083FD RID: 33789
|
||||
[Token(Token = "0x40083FD")]
|
||||
Pending,
|
||||
// Token: 0x040083FE RID: 33790
|
||||
[Token(Token = "0x40083FE")]
|
||||
Processing,
|
||||
// Token: 0x040083FF RID: 33791
|
||||
[Token(Token = "0x40083FF")]
|
||||
Success,
|
||||
// Token: 0x04008400 RID: 33792
|
||||
[Token(Token = "0x4008400")]
|
||||
Error
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,44 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Futures
|
||||
{
|
||||
// Token: 0x0200206A RID: 8298
|
||||
[Token(Token = "0x200206A")]
|
||||
public sealed class FutureValueCallback<T> : MulticastDelegate
|
||||
{
|
||||
// Token: 0x0600D038 RID: 53304 RVA: 0x002F5238 File Offset: 0x002F3438
|
||||
[Token(Token = "0x600D038")]
|
||||
[Address(RVA = "0x4AF020", Offset = "0x4AE020", VA = "0x1804AF020")]
|
||||
public FutureValueCallback(object @object, IntPtr method)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0600D039 RID: 53305 RVA: 0x002F5248 File Offset: 0x002F3448
|
||||
[Token(Token = "0x600D039")]
|
||||
[Address(RVA = "0x5FFF90", Offset = "0x5FEF90", VA = "0x1805FFF90", Slot = "13")]
|
||||
public void Invoke(T value)
|
||||
{
|
||||
uint num;
|
||||
if (num != (uint)0)
|
||||
{
|
||||
throw new ExecutionEngineException();
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600D03A RID: 53306 RVA: 0x002F52B4 File Offset: 0x002F34B4
|
||||
[Token(Token = "0x600D03A")]
|
||||
[Address(RVA = "0x2DA78A0", Offset = "0x2DA68A0", VA = "0x182DA78A0", Slot = "14")]
|
||||
public IAsyncResult BeginInvoke(T value, AsyncCallback callback, object @object)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0600D03B RID: 53307 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600D03B")]
|
||||
[Address(RVA = "0x4F56B0", Offset = "0x4F46B0", VA = "0x1804F56B0", 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: 0x02002068 RID: 8296
|
||||
[Token(Token = "0x2002068")]
|
||||
public interface IFuture<T>
|
||||
{
|
||||
// Token: 0x1700211D RID: 8477
|
||||
// (get) Token: 0x0600D02D RID: 53293
|
||||
[Token(Token = "0x1700211D")]
|
||||
FutureState state
|
||||
{
|
||||
[Token(Token = "0x600D02D")]
|
||||
[Address(Slot = "0")]
|
||||
get;
|
||||
}
|
||||
|
||||
// Token: 0x1700211E RID: 8478
|
||||
// (get) Token: 0x0600D02E RID: 53294
|
||||
[Token(Token = "0x1700211E")]
|
||||
T value
|
||||
{
|
||||
[Token(Token = "0x600D02E")]
|
||||
[Address(Slot = "1")]
|
||||
get;
|
||||
}
|
||||
|
||||
// Token: 0x1700211F RID: 8479
|
||||
// (get) Token: 0x0600D02F RID: 53295
|
||||
[Token(Token = "0x1700211F")]
|
||||
Exception error
|
||||
{
|
||||
[Token(Token = "0x600D02F")]
|
||||
[Address(Slot = "2")]
|
||||
get;
|
||||
}
|
||||
|
||||
// Token: 0x0600D030 RID: 53296
|
||||
[Token(Token = "0x600D030")]
|
||||
[Address(Slot = "3")]
|
||||
IFuture<T> OnItem(FutureValueCallback<T> callback);
|
||||
|
||||
// Token: 0x0600D031 RID: 53297
|
||||
[Token(Token = "0x600D031")]
|
||||
[Address(Slot = "4")]
|
||||
IFuture<T> OnSuccess(FutureValueCallback<T> callback);
|
||||
|
||||
// Token: 0x0600D032 RID: 53298
|
||||
[Token(Token = "0x600D032")]
|
||||
[Address(Slot = "5")]
|
||||
IFuture<T> OnError(FutureErrorCallback callback);
|
||||
|
||||
// Token: 0x0600D033 RID: 53299
|
||||
[Token(Token = "0x600D033")]
|
||||
[Address(Slot = "6")]
|
||||
IFuture<T> OnComplete(FutureCallback<T> callback);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,888 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
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: 0x02001970 RID: 6512
|
||||
[Token(Token = "0x2001970")]
|
||||
internal sealed class HTTPConnection : ConnectionBase
|
||||
{
|
||||
// Token: 0x170017DE RID: 6110
|
||||
// (get) Token: 0x060096EC RID: 38636 RVA: 0x001EB284 File Offset: 0x001E9484
|
||||
[Token(Token = "0x170017DE")]
|
||||
public override bool IsRemovable
|
||||
{
|
||||
[Token(Token = "0x60096EC")]
|
||||
[Address(RVA = "0x2A73B10", Offset = "0x2A72B10", VA = "0x182A73B10", 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: 0x060096ED RID: 38637 RVA: 0x001EB2E8 File Offset: 0x001E94E8
|
||||
[Token(Token = "0x60096ED")]
|
||||
[Address(RVA = "0x2A70930", Offset = "0x2A6F930", VA = "0x182A70930")]
|
||||
internal HTTPConnection(string serverAddress)
|
||||
: base(serverAddress)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x060096EE RID: 38638 RVA: 0x001EB2FC File Offset: 0x001E94FC
|
||||
[Token(Token = "0x60096EE")]
|
||||
[Address(RVA = "0x2A722B0", Offset = "0x2A712B0", VA = "0x182A722B0", Slot = "7")]
|
||||
protected override void ThreadFunc(object param)
|
||||
{
|
||||
uint num11;
|
||||
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);
|
||||
}
|
||||
}
|
||||
<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:
|
||||
PropertyDescriptor propertyDescriptor = num11.PropertyDescriptor;
|
||||
throw new NullReferenceException();
|
||||
IL_88D:
|
||||
Exception ex2 = new Exception("AbortRequested");
|
||||
throw new NullReferenceException();
|
||||
IL_8AB:
|
||||
Exception ex3 = new Exception("AbortRequested");
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x060096EF RID: 38639 RVA: 0x001EBC10 File Offset: 0x001E9E10
|
||||
[Token(Token = "0x60096EF")]
|
||||
[Address(RVA = "0x2A70AD0", Offset = "0x2A6FAD0", VA = "0x182A70AD0")]
|
||||
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: 0x060096F0 RID: 38640 RVA: 0x001EC010 File Offset: 0x001EA210
|
||||
[Token(Token = "0x60096F0")]
|
||||
[Address(RVA = "0x2A71C30", Offset = "0x2A70C30", VA = "0x182A71C30")]
|
||||
private bool Receive()
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (060096F0)
|
||||
|
||||
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: 0x060096F1 RID: 38641 RVA: 0x001EC258 File Offset: 0x001EA458
|
||||
[Token(Token = "0x60096F1")]
|
||||
[Address(RVA = "0x2A71730", Offset = "0x2A70730", VA = "0x182A71730")]
|
||||
private bool LoadFromCache(Uri uri)
|
||||
{
|
||||
int num;
|
||||
for (;;)
|
||||
{
|
||||
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_117;
|
||||
}
|
||||
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.HasHeader("content-length"))
|
||||
{
|
||||
break;
|
||||
}
|
||||
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)
|
||||
{
|
||||
}
|
||||
if (num == 0)
|
||||
{
|
||||
goto Block_6;
|
||||
}
|
||||
}
|
||||
Dictionary<string, List<string>> <Headers>k__BackingField = this.<CurrentRequest>k__BackingField.<Response>k__BackingField.<Headers>k__BackingField;
|
||||
List<string> list = new List(1);
|
||||
string text2;
|
||||
list.Add(text2);
|
||||
throw new NullReferenceException();
|
||||
Block_6:
|
||||
if (num != -1)
|
||||
{
|
||||
}
|
||||
return true;
|
||||
IL_117:
|
||||
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: 0x060096F2 RID: 38642 RVA: 0x001EC3BC File Offset: 0x001EA5BC
|
||||
[Token(Token = "0x60096F2")]
|
||||
[Address(RVA = "0x2A73670", Offset = "0x2A72670", VA = "0x182A73670")]
|
||||
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: 0x060096F3 RID: 38643 RVA: 0x001EC4B0 File Offset: 0x001EA6B0
|
||||
[Token(Token = "0x60096F3")]
|
||||
[Address(RVA = "0x2A73900", Offset = "0x2A72900", VA = "0x182A73900")]
|
||||
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: 0x060096F4 RID: 38644 RVA: 0x001EC570 File Offset: 0x001EA770
|
||||
[Token(Token = "0x60096F4")]
|
||||
[Address(RVA = "0x2A715A0", Offset = "0x2A705A0", VA = "0x182A715A0")]
|
||||
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: 0x060096F5 RID: 38645 RVA: 0x001EC5F4 File Offset: 0x001EA7F4
|
||||
[Token(Token = "0x60096F5")]
|
||||
[Address(RVA = "0x2A70940", Offset = "0x2A6F940", VA = "0x182A70940", 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: 0x060096F6 RID: 38646 RVA: 0x001EC63C File Offset: 0x001EA83C
|
||||
[Token(Token = "0x60096F6")]
|
||||
[Address(RVA = "0x2A709F0", Offset = "0x2A6F9F0", VA = "0x182A709F0")]
|
||||
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: 0x060096F7 RID: 38647 RVA: 0x001EC68C File Offset: 0x001EA88C
|
||||
[Token(Token = "0x60096F7")]
|
||||
[Address(RVA = "0x2A71570", Offset = "0x2A70570", VA = "0x182A71570", Slot = "8")]
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
this.Close();
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
// Token: 0x0400663A RID: 26170
|
||||
[FieldOffset(Offset = "0x58")]
|
||||
[Token(Token = "0x400663A")]
|
||||
private TcpClient Client;
|
||||
|
||||
// Token: 0x0400663B RID: 26171
|
||||
[FieldOffset(Offset = "0x60")]
|
||||
[Token(Token = "0x400663B")]
|
||||
private Stream Stream;
|
||||
|
||||
// Token: 0x0400663C RID: 26172
|
||||
[FieldOffset(Offset = "0x68")]
|
||||
[Token(Token = "0x400663C")]
|
||||
private KeepAliveHeader KeepAlive;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,50 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP
|
||||
{
|
||||
// Token: 0x0200196A RID: 6506
|
||||
[Token(Token = "0x200196A")]
|
||||
internal sealed class HTTPConnectionRecycledDelegate : MulticastDelegate
|
||||
{
|
||||
// Token: 0x060096B3 RID: 38579 RVA: 0x001EA7B4 File Offset: 0x001E89B4
|
||||
[Token(Token = "0x60096B3")]
|
||||
[Address(RVA = "0x4AF020", Offset = "0x4AE020", VA = "0x1804AF020")]
|
||||
public HTTPConnectionRecycledDelegate(object @object, IntPtr method)
|
||||
{
|
||||
this.method = method;
|
||||
this.m_target = @object;
|
||||
}
|
||||
|
||||
// Token: 0x060096B4 RID: 38580 RVA: 0x001EA7D0 File Offset: 0x001E89D0
|
||||
[Token(Token = "0x60096B4")]
|
||||
[Address(RVA = "0x5FA230", Offset = "0x5F9230", VA = "0x1805FA230", Slot = "13")]
|
||||
public void Invoke(ConnectionBase conn)
|
||||
{
|
||||
if (this.delegates != 0)
|
||||
{
|
||||
}
|
||||
uint num;
|
||||
if (num != (uint)0)
|
||||
{
|
||||
throw new ExecutionEngineException();
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x060096B5 RID: 38581 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x60096B5")]
|
||||
[Address(RVA = "0x5FA200", Offset = "0x5F9200", VA = "0x1805FA200", 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: 0x060096B6 RID: 38582 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x60096B6")]
|
||||
[Address(RVA = "0x4F56B0", Offset = "0x4F46B0", VA = "0x1804F56B0", 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: 0x02001971 RID: 6513
|
||||
[Token(Token = "0x2001971")]
|
||||
internal enum HTTPConnectionStates
|
||||
{
|
||||
// Token: 0x0400663E RID: 26174
|
||||
[Token(Token = "0x400663E")]
|
||||
Initial,
|
||||
// Token: 0x0400663F RID: 26175
|
||||
[Token(Token = "0x400663F")]
|
||||
Processing,
|
||||
// Token: 0x04006640 RID: 26176
|
||||
[Token(Token = "0x4006640")]
|
||||
Redirected,
|
||||
// Token: 0x04006641 RID: 26177
|
||||
[Token(Token = "0x4006641")]
|
||||
Upgraded,
|
||||
// Token: 0x04006642 RID: 26178
|
||||
[Token(Token = "0x4006642")]
|
||||
WaitForProtocolShutdown,
|
||||
// Token: 0x04006643 RID: 26179
|
||||
[Token(Token = "0x4006643")]
|
||||
WaitForRecycle,
|
||||
// Token: 0x04006644 RID: 26180
|
||||
[Token(Token = "0x4006644")]
|
||||
Free,
|
||||
// Token: 0x04006645 RID: 26181
|
||||
[Token(Token = "0x4006645")]
|
||||
AbortRequested,
|
||||
// Token: 0x04006646 RID: 26182
|
||||
[Token(Token = "0x4006646")]
|
||||
TimedOut,
|
||||
// Token: 0x04006647 RID: 26183
|
||||
[Token(Token = "0x4006647")]
|
||||
Closed
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,971 @@
|
||||
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: 0x02001972 RID: 6514
|
||||
[Token(Token = "0x2001972")]
|
||||
public static class HTTPManager
|
||||
{
|
||||
// Token: 0x060096F9 RID: 38649 RVA: 0x001EC6D8 File Offset: 0x001EA8D8
|
||||
[Token(Token = "0x60096F9")]
|
||||
[Address(RVA = "0x2A77440", Offset = "0x2A76440", VA = "0x182A77440")]
|
||||
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: 0x170017DF RID: 6111
|
||||
// (get) Token: 0x060096FA RID: 38650 RVA: 0x001EC748 File Offset: 0x001EA948
|
||||
// (set) Token: 0x060096FB RID: 38651 RVA: 0x001EC75C File Offset: 0x001EA95C
|
||||
[Token(Token = "0x170017DF")]
|
||||
public static byte MaxConnectionPerServer
|
||||
{
|
||||
[Token(Token = "0x60096FA")]
|
||||
[Address(RVA = "0x2A78100", Offset = "0x2A77100", VA = "0x182A78100")]
|
||||
get
|
||||
{
|
||||
return HTTPManager.maxConnectionPerServer;
|
||||
}
|
||||
[Token(Token = "0x60096FB")]
|
||||
[Address(RVA = "0x2A78820", Offset = "0x2A77820", VA = "0x182A78820")]
|
||||
set
|
||||
{
|
||||
HTTPManager.maxConnectionPerServer = value;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x170017E0 RID: 6112
|
||||
// (get) Token: 0x060096FC RID: 38652 RVA: 0x001EC77C File Offset: 0x001EA97C
|
||||
// (set) Token: 0x060096FD RID: 38653 RVA: 0x001EC790 File Offset: 0x001EA990
|
||||
[Token(Token = "0x170017E0")]
|
||||
public static bool KeepAliveDefaultValue
|
||||
{
|
||||
[Token(Token = "0x60096FC")]
|
||||
[Address(RVA = "0x2A77EC0", Offset = "0x2A76EC0", VA = "0x182A77EC0")]
|
||||
get;
|
||||
[Token(Token = "0x60096FD")]
|
||||
[Address(RVA = "0x2A78700", Offset = "0x2A77700", VA = "0x182A78700")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x170017E1 RID: 6113
|
||||
// (get) Token: 0x060096FE RID: 38654 RVA: 0x001EC7A4 File Offset: 0x001EA9A4
|
||||
// (set) Token: 0x060096FF RID: 38655 RVA: 0x001EC7B8 File Offset: 0x001EA9B8
|
||||
[Token(Token = "0x170017E1")]
|
||||
public static bool IsCachingDisabled
|
||||
{
|
||||
[Token(Token = "0x60096FE")]
|
||||
[Address(RVA = "0x2A77DA0", Offset = "0x2A76DA0", VA = "0x182A77DA0")]
|
||||
get;
|
||||
[Token(Token = "0x60096FF")]
|
||||
[Address(RVA = "0x2A785E0", Offset = "0x2A775E0", VA = "0x182A785E0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x170017E2 RID: 6114
|
||||
// (get) Token: 0x06009700 RID: 38656 RVA: 0x001EC7CC File Offset: 0x001EA9CC
|
||||
// (set) Token: 0x06009701 RID: 38657 RVA: 0x001EC7E0 File Offset: 0x001EA9E0
|
||||
[Token(Token = "0x170017E2")]
|
||||
public static TimeSpan MaxConnectionIdleTime
|
||||
{
|
||||
[Token(Token = "0x6009700")]
|
||||
[Address(RVA = "0x2A780A0", Offset = "0x2A770A0", VA = "0x182A780A0")]
|
||||
get;
|
||||
[Token(Token = "0x6009701")]
|
||||
[Address(RVA = "0x2A787C0", Offset = "0x2A777C0", VA = "0x182A787C0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x170017E3 RID: 6115
|
||||
// (get) Token: 0x06009702 RID: 38658 RVA: 0x001EC7F4 File Offset: 0x001EA9F4
|
||||
// (set) Token: 0x06009703 RID: 38659 RVA: 0x001EC808 File Offset: 0x001EAA08
|
||||
[Token(Token = "0x170017E3")]
|
||||
public static bool IsCookiesEnabled
|
||||
{
|
||||
[Token(Token = "0x6009702")]
|
||||
[Address(RVA = "0x2A77E00", Offset = "0x2A76E00", VA = "0x182A77E00")]
|
||||
get;
|
||||
[Token(Token = "0x6009703")]
|
||||
[Address(RVA = "0x2A78640", Offset = "0x2A77640", VA = "0x182A78640")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x170017E4 RID: 6116
|
||||
// (get) Token: 0x06009704 RID: 38660 RVA: 0x001EC81C File Offset: 0x001EAA1C
|
||||
// (set) Token: 0x06009705 RID: 38661 RVA: 0x001EC830 File Offset: 0x001EAA30
|
||||
[Token(Token = "0x170017E4")]
|
||||
public static uint CookieJarSize
|
||||
{
|
||||
[Token(Token = "0x6009704")]
|
||||
[Address(RVA = "0x2A77A50", Offset = "0x2A76A50", VA = "0x182A77A50")]
|
||||
get;
|
||||
[Token(Token = "0x6009705")]
|
||||
[Address(RVA = "0x2A78400", Offset = "0x2A77400", VA = "0x182A78400")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x170017E5 RID: 6117
|
||||
// (get) Token: 0x06009706 RID: 38662 RVA: 0x001EC844 File Offset: 0x001EAA44
|
||||
// (set) Token: 0x06009707 RID: 38663 RVA: 0x001EC858 File Offset: 0x001EAA58
|
||||
[Token(Token = "0x170017E5")]
|
||||
public static bool EnablePrivateBrowsing
|
||||
{
|
||||
[Token(Token = "0x6009706")]
|
||||
[Address(RVA = "0x2A77BD0", Offset = "0x2A76BD0", VA = "0x182A77BD0")]
|
||||
get;
|
||||
[Token(Token = "0x6009707")]
|
||||
[Address(RVA = "0x2A78580", Offset = "0x2A77580", VA = "0x182A78580")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x170017E6 RID: 6118
|
||||
// (get) Token: 0x06009708 RID: 38664 RVA: 0x001EC86C File Offset: 0x001EAA6C
|
||||
// (set) Token: 0x06009709 RID: 38665 RVA: 0x001EC880 File Offset: 0x001EAA80
|
||||
[Token(Token = "0x170017E6")]
|
||||
public static TimeSpan ConnectTimeout
|
||||
{
|
||||
[Token(Token = "0x6009708")]
|
||||
[Address(RVA = "0x2A779F0", Offset = "0x2A769F0", VA = "0x182A779F0")]
|
||||
get;
|
||||
[Token(Token = "0x6009709")]
|
||||
[Address(RVA = "0x2A783A0", Offset = "0x2A773A0", VA = "0x182A783A0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x170017E7 RID: 6119
|
||||
// (get) Token: 0x0600970A RID: 38666 RVA: 0x001EC894 File Offset: 0x001EAA94
|
||||
// (set) Token: 0x0600970B RID: 38667 RVA: 0x001EC8A8 File Offset: 0x001EAAA8
|
||||
[Token(Token = "0x170017E7")]
|
||||
public static TimeSpan RequestTimeout
|
||||
{
|
||||
[Token(Token = "0x600970A")]
|
||||
[Address(RVA = "0x2A78280", Offset = "0x2A77280", VA = "0x182A78280")]
|
||||
get;
|
||||
[Token(Token = "0x600970B")]
|
||||
[Address(RVA = "0x2A789D0", Offset = "0x2A779D0", VA = "0x182A789D0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x170017E8 RID: 6120
|
||||
// (get) Token: 0x0600970C RID: 38668 RVA: 0x001EC8BC File Offset: 0x001EAABC
|
||||
// (set) Token: 0x0600970D RID: 38669 RVA: 0x001EC8D0 File Offset: 0x001EAAD0
|
||||
[Token(Token = "0x170017E8")]
|
||||
public static Func<string> RootCacheFolderProvider
|
||||
{
|
||||
[Token(Token = "0x600970C")]
|
||||
[Address(RVA = "0x2A782E0", Offset = "0x2A772E0", VA = "0x182A782E0")]
|
||||
get;
|
||||
[Token(Token = "0x600970D")]
|
||||
[Address(RVA = "0x2A78A30", Offset = "0x2A77A30", VA = "0x182A78A30")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x170017E9 RID: 6121
|
||||
// (get) Token: 0x0600970E RID: 38670 RVA: 0x001EC8E4 File Offset: 0x001EAAE4
|
||||
// (set) Token: 0x0600970F RID: 38671 RVA: 0x001EC8F8 File Offset: 0x001EAAF8
|
||||
[Token(Token = "0x170017E9")]
|
||||
public static Proxy Proxy
|
||||
{
|
||||
[Token(Token = "0x600970E")]
|
||||
[Address(RVA = "0x2A78220", Offset = "0x2A77220", VA = "0x182A78220")]
|
||||
get;
|
||||
[Token(Token = "0x600970F")]
|
||||
[Address(RVA = "0x2A78970", Offset = "0x2A77970", VA = "0x182A78970")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x170017EA RID: 6122
|
||||
// (get) Token: 0x06009710 RID: 38672 RVA: 0x001EC90C File Offset: 0x001EAB0C
|
||||
[Token(Token = "0x170017EA")]
|
||||
public static HeartbeatManager Heartbeats
|
||||
{
|
||||
[Token(Token = "0x6009710")]
|
||||
[Address(RVA = "0x2A77C30", Offset = "0x2A76C30", VA = "0x182A77C30")]
|
||||
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: 0x170017EB RID: 6123
|
||||
// (get) Token: 0x06009711 RID: 38673 RVA: 0x001EC94C File Offset: 0x001EAB4C
|
||||
// (set) Token: 0x06009712 RID: 38674 RVA: 0x001EC984 File Offset: 0x001EAB84
|
||||
[Token(Token = "0x170017EB")]
|
||||
public static BestHTTP.Logger.ILogger Logger
|
||||
{
|
||||
[Token(Token = "0x6009711")]
|
||||
[Address(RVA = "0x2A77F20", Offset = "0x2A76F20", VA = "0x182A77F20")]
|
||||
get
|
||||
{
|
||||
HTTPManager.logger = new DefaultLogger();
|
||||
BestHTTP.Logger.ILogger logger = HTTPManager.logger;
|
||||
int num = 0;
|
||||
num += num;
|
||||
num++;
|
||||
return HTTPManager.logger;
|
||||
}
|
||||
[Token(Token = "0x6009712")]
|
||||
[Address(RVA = "0x2A78760", Offset = "0x2A77760", VA = "0x182A78760")]
|
||||
set
|
||||
{
|
||||
HTTPManager.logger = value;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x170017EC RID: 6124
|
||||
// (get) Token: 0x06009713 RID: 38675 RVA: 0x001EC998 File Offset: 0x001EAB98
|
||||
// (set) Token: 0x06009714 RID: 38676 RVA: 0x001EC9AC File Offset: 0x001EABAC
|
||||
[Token(Token = "0x170017EC")]
|
||||
public static ICertificateVerifyer DefaultCertificateVerifyer
|
||||
{
|
||||
[Token(Token = "0x6009713")]
|
||||
[Address(RVA = "0x2A77AB0", Offset = "0x2A76AB0", VA = "0x182A77AB0")]
|
||||
get;
|
||||
[Token(Token = "0x6009714")]
|
||||
[Address(RVA = "0x2A78460", Offset = "0x2A77460", VA = "0x182A78460")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x170017ED RID: 6125
|
||||
// (get) Token: 0x06009715 RID: 38677 RVA: 0x001EC9C0 File Offset: 0x001EABC0
|
||||
// (set) Token: 0x06009716 RID: 38678 RVA: 0x001EC9D4 File Offset: 0x001EABD4
|
||||
[Token(Token = "0x170017ED")]
|
||||
public static IClientCredentialsProvider DefaultClientCredentialsProvider
|
||||
{
|
||||
[Token(Token = "0x6009715")]
|
||||
[Address(RVA = "0x2A77B70", Offset = "0x2A76B70", VA = "0x182A77B70")]
|
||||
get;
|
||||
[Token(Token = "0x6009716")]
|
||||
[Address(RVA = "0x2A78520", Offset = "0x2A77520", VA = "0x182A78520")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x170017EE RID: 6126
|
||||
// (get) Token: 0x06009717 RID: 38679 RVA: 0x001EC9E8 File Offset: 0x001EABE8
|
||||
// (set) Token: 0x06009718 RID: 38680 RVA: 0x001EC9FC File Offset: 0x001EABFC
|
||||
[Token(Token = "0x170017EE")]
|
||||
public static bool UseAlternateSSLDefaultValue
|
||||
{
|
||||
[Token(Token = "0x6009717")]
|
||||
[Address(RVA = "0x2A78340", Offset = "0x2A77340", VA = "0x182A78340")]
|
||||
get;
|
||||
[Token(Token = "0x6009718")]
|
||||
[Address(RVA = "0x2A78A90", Offset = "0x2A77A90", VA = "0x182A78A90")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x170017EF RID: 6127
|
||||
// (get) Token: 0x06009719 RID: 38681 RVA: 0x001ECA10 File Offset: 0x001EAC10
|
||||
// (set) Token: 0x0600971A RID: 38682 RVA: 0x001ECA24 File Offset: 0x001EAC24
|
||||
[Token(Token = "0x170017EF")]
|
||||
public static Func<HTTPRequest, X509Certificate, X509Chain, bool> DefaultCertificationValidator
|
||||
{
|
||||
[Token(Token = "0x6009719")]
|
||||
[Address(RVA = "0x2A77B10", Offset = "0x2A76B10", VA = "0x182A77B10")]
|
||||
get;
|
||||
[Token(Token = "0x600971A")]
|
||||
[Address(RVA = "0x2A784C0", Offset = "0x2A774C0", VA = "0x182A784C0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x170017F0 RID: 6128
|
||||
// (get) Token: 0x0600971B RID: 38683 RVA: 0x001ECA38 File Offset: 0x001EAC38
|
||||
// (set) Token: 0x0600971C RID: 38684 RVA: 0x001ECA4C File Offset: 0x001EAC4C
|
||||
[Token(Token = "0x170017F0")]
|
||||
public static Action<HTTPRequest, Stream> OnSendingHeaders
|
||||
{
|
||||
[Token(Token = "0x600971B")]
|
||||
[Address(RVA = "0x2A781C0", Offset = "0x2A771C0", VA = "0x182A781C0")]
|
||||
get;
|
||||
[Token(Token = "0x600971C")]
|
||||
[Address(RVA = "0x2A78910", Offset = "0x2A77910", VA = "0x182A78910")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x170017F1 RID: 6129
|
||||
// (get) Token: 0x0600971D RID: 38685 RVA: 0x001ECA60 File Offset: 0x001EAC60
|
||||
// (set) Token: 0x0600971E RID: 38686 RVA: 0x001ECA74 File Offset: 0x001EAC74
|
||||
[Token(Token = "0x170017F1")]
|
||||
internal static int MaxPathLength
|
||||
{
|
||||
[Token(Token = "0x600971D")]
|
||||
[Address(RVA = "0x2A78160", Offset = "0x2A77160", VA = "0x182A78160")]
|
||||
get;
|
||||
[Token(Token = "0x600971E")]
|
||||
[Address(RVA = "0x2A788B0", Offset = "0x2A778B0", VA = "0x182A788B0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x170017F2 RID: 6130
|
||||
// (get) Token: 0x0600971F RID: 38687 RVA: 0x001ECA88 File Offset: 0x001EAC88
|
||||
// (set) Token: 0x06009720 RID: 38688 RVA: 0x001ECA9C File Offset: 0x001EAC9C
|
||||
[Token(Token = "0x170017F2")]
|
||||
internal static bool IsQuitting
|
||||
{
|
||||
[Token(Token = "0x600971F")]
|
||||
[Address(RVA = "0x2A77E60", Offset = "0x2A76E60", VA = "0x182A77E60")]
|
||||
get;
|
||||
[Token(Token = "0x6009720")]
|
||||
[Address(RVA = "0x2A786A0", Offset = "0x2A776A0", VA = "0x182A786A0")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x06009721 RID: 38689 RVA: 0x001ECAB0 File Offset: 0x001EACB0
|
||||
[Token(Token = "0x6009721")]
|
||||
[Address(RVA = "0x2A754F0", Offset = "0x2A744F0", VA = "0x182A754F0")]
|
||||
[CBEAKPMNJOL(LGFJHLDANJN.Unity_AfterSceneLoad)]
|
||||
private static void InitializeOnLoad()
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x06009722 RID: 38690 RVA: 0x001ECAC0 File Offset: 0x001EACC0
|
||||
[Token(Token = "0x6009722")]
|
||||
[Address(RVA = "0x2A773A0", Offset = "0x2A763A0", VA = "0x182A773A0")]
|
||||
public static void Setup()
|
||||
{
|
||||
HTTPUpdateDelegator.CheckInstance();
|
||||
HTTPCacheService.CheckSetup();
|
||||
CookieJar.SetupFolder();
|
||||
}
|
||||
|
||||
// Token: 0x06009723 RID: 38691 RVA: 0x001ECAE4 File Offset: 0x001EACE4
|
||||
[Token(Token = "0x6009723")]
|
||||
[Address(RVA = "0x2A76F10", Offset = "0x2A75F10", VA = "0x182A76F10")]
|
||||
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: 0x06009724 RID: 38692 RVA: 0x001ECB08 File Offset: 0x001EAD08
|
||||
[Token(Token = "0x6009724")]
|
||||
[Address(RVA = "0x2A76FC0", Offset = "0x2A75FC0", VA = "0x182A76FC0")]
|
||||
public static HTTPRequest SendRequest(string url, HTTPMethods methodType, OnRequestFinishedDelegate callback)
|
||||
{
|
||||
return HTTPManager.SendRequest(new HTTPRequest(new Uri(url), methodType, callback));
|
||||
}
|
||||
|
||||
// Token: 0x06009725 RID: 38693 RVA: 0x001ECB28 File Offset: 0x001EAD28
|
||||
[Token(Token = "0x6009725")]
|
||||
[Address(RVA = "0x2A76D80", Offset = "0x2A75D80", VA = "0x182A76D80")]
|
||||
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: 0x06009726 RID: 38694 RVA: 0x001ECB50 File Offset: 0x001EAD50
|
||||
[Token(Token = "0x6009726")]
|
||||
[Address(RVA = "0x2A77080", Offset = "0x2A76080", VA = "0x182A77080")]
|
||||
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: 0x06009727 RID: 38695 RVA: 0x001ECB6C File Offset: 0x001EAD6C
|
||||
[Token(Token = "0x6009727")]
|
||||
[Address(RVA = "0x2A77160", Offset = "0x2A76160", VA = "0x182A77160")]
|
||||
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: 0x06009728 RID: 38696 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x6009728")]
|
||||
[Address(RVA = "0x2A74DC0", Offset = "0x2A73DC0", VA = "0x182A74DC0")]
|
||||
public static GeneralStatistics GetGeneralStatistics(StatisticsQueryFlags queryFlags)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x06009729 RID: 38697 RVA: 0x001ECBC8 File Offset: 0x001EADC8
|
||||
[Token(Token = "0x6009729")]
|
||||
[Address(RVA = "0x2A76A30", Offset = "0x2A75A30", VA = "0x182A76A30")]
|
||||
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: 0x0600972A RID: 38698 RVA: 0x001ECCBC File Offset: 0x001EAEBC
|
||||
[Token(Token = "0x600972A")]
|
||||
[Address(RVA = "0x2A750E0", Offset = "0x2A740E0", VA = "0x182A750E0")]
|
||||
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: 0x0600972B RID: 38699 RVA: 0x001ECDA8 File Offset: 0x001EAFA8
|
||||
[Token(Token = "0x600972B")]
|
||||
[Address(RVA = "0x2A74640", Offset = "0x2A73640", VA = "0x182A74640")]
|
||||
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: 0x0600972C RID: 38700 RVA: 0x001ECDE4 File Offset: 0x001EAFE4
|
||||
[Token(Token = "0x600972C")]
|
||||
[Address(RVA = "0x2A746E0", Offset = "0x2A736E0", VA = "0x182A746E0")]
|
||||
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);
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
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: 0x0600972D RID: 38701 RVA: 0x001ECEE8 File Offset: 0x001EB0E8
|
||||
[Token(Token = "0x600972D")]
|
||||
[Address(RVA = "0x2A74560", Offset = "0x2A73560", VA = "0x182A74560")]
|
||||
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: 0x0600972E RID: 38702 RVA: 0x001ECF18 File Offset: 0x001EB118
|
||||
[Token(Token = "0x600972E")]
|
||||
[Address(RVA = "0x2A76940", Offset = "0x2A75940", VA = "0x182A76940")]
|
||||
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: 0x0600972F RID: 38703 RVA: 0x001ECF54 File Offset: 0x001EB154
|
||||
[Token(Token = "0x600972F")]
|
||||
[Address(RVA = "0x2A75590", Offset = "0x2A74590", VA = "0x182A75590")]
|
||||
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: 0x06009730 RID: 38704 RVA: 0x001ECF84 File Offset: 0x001EB184
|
||||
[Token(Token = "0x6009730")]
|
||||
[Address(RVA = "0x2A74C00", Offset = "0x2A73C00", VA = "0x182A74C00")]
|
||||
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: 0x06009731 RID: 38705 RVA: 0x001ECFC4 File Offset: 0x001EB1C4
|
||||
[Token(Token = "0x6009731")]
|
||||
[Address(RVA = "0x2A769B0", Offset = "0x2A759B0", VA = "0x182A769B0")]
|
||||
internal static bool RemoveFromQueue(HTTPRequest request)
|
||||
{
|
||||
return HTTPManager.RequestQueue.Remove(request);
|
||||
}
|
||||
|
||||
// Token: 0x06009732 RID: 38706 RVA: 0x001ECFE4 File Offset: 0x001EB1E4
|
||||
[Token(Token = "0x6009732")]
|
||||
[Address(RVA = "0x2A75340", Offset = "0x2A74340", VA = "0x182A75340")]
|
||||
internal static string GetRootCacheFolder()
|
||||
{
|
||||
return HTTPManager.<RootCacheFolderProvider>k__BackingField();
|
||||
}
|
||||
|
||||
// Token: 0x06009733 RID: 38707 RVA: 0x001ED018 File Offset: 0x001EB218
|
||||
[Token(Token = "0x6009733")]
|
||||
[Address(RVA = "0x2A75860", Offset = "0x2A74860", VA = "0x182A75860")]
|
||||
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 (timeSpan7 == 0)
|
||||
{
|
||||
}
|
||||
while (timeSpan7 == 0)
|
||||
{
|
||||
}
|
||||
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++;
|
||||
int num2 = 0;
|
||||
BestHTTP.Logger.ILogger logger3 = HTTPManager.Logger;
|
||||
TimeSpan timeSpan13 = HTTPManager.<ConnectTimeout>k__BackingField;
|
||||
if (num2 != 0)
|
||||
{
|
||||
}
|
||||
int num3 = 0;
|
||||
if (typeof(HTTPManager).TypeHandle != 0)
|
||||
{
|
||||
goto IL_2F7;
|
||||
}
|
||||
if (num != -1)
|
||||
{
|
||||
}
|
||||
int num4;
|
||||
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;
|
||||
}
|
||||
num3++;
|
||||
HTTPManager.RecycledConnections.Clear();
|
||||
num++;
|
||||
num4 = 0;
|
||||
List<ConnectionBase> recycledConnections4 = HTTPManager.RecycledConnections;
|
||||
Monitor.Exit(recycledConnections4);
|
||||
if (recycledConnections4 != 0)
|
||||
{
|
||||
goto IL_321;
|
||||
}
|
||||
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(num4);
|
||||
num4++;
|
||||
List<HTTPRequest> requestQueue = HTTPManager.RequestQueue;
|
||||
List<HTTPRequest> requestQueue2 = HTTPManager.RequestQueue;
|
||||
ConnectionBase connectionBase;
|
||||
if (connectionBase == 0)
|
||||
{
|
||||
num4++;
|
||||
}
|
||||
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 (num4 < array.Length)
|
||||
{
|
||||
HTTPRequest httprequest = HTTPManager.SendRequest(array[num4]);
|
||||
num4++;
|
||||
}
|
||||
locker = HTTPManager.Locker;
|
||||
Monitor.Exit(locker);
|
||||
}
|
||||
while (locker != 0);
|
||||
HTTPManager.heartbeats.Update();
|
||||
VariableSizedBufferPool.Maintain();
|
||||
return;
|
||||
IL_2F7:
|
||||
throw new NullReferenceException();
|
||||
IL_321:
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x06009734 RID: 38708 RVA: 0x001ED3A0 File Offset: 0x001EB5A0
|
||||
[Token(Token = "0x6009734")]
|
||||
[Address(RVA = "0x2A756C0", Offset = "0x2A746C0", VA = "0x182A756C0")]
|
||||
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: 0x06009735 RID: 38709 RVA: 0x001ED3DC File Offset: 0x001EB5DC
|
||||
[Token(Token = "0x6009735")]
|
||||
[Address(RVA = "0x2A740A0", Offset = "0x2A730A0", VA = "0x182A740A0")]
|
||||
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: 0x04006648 RID: 26184
|
||||
[Token(Token = "0x4006648")]
|
||||
private static byte maxConnectionPerServer;
|
||||
|
||||
// Token: 0x04006653 RID: 26195
|
||||
[Token(Token = "0x4006653")]
|
||||
private static HeartbeatManager heartbeats;
|
||||
|
||||
// Token: 0x04006654 RID: 26196
|
||||
[Token(Token = "0x4006654")]
|
||||
private static BestHTTP.Logger.ILogger logger;
|
||||
|
||||
// Token: 0x0400665A RID: 26202
|
||||
[Token(Token = "0x400665A")]
|
||||
public static bool TryToMinimizeTCPLatency;
|
||||
|
||||
// Token: 0x0400665B RID: 26203
|
||||
[Token(Token = "0x400665B")]
|
||||
public static int SendBufferSize;
|
||||
|
||||
// Token: 0x0400665C RID: 26204
|
||||
[Token(Token = "0x400665C")]
|
||||
public static int ReceiveBufferSize;
|
||||
|
||||
// Token: 0x0400665D RID: 26205
|
||||
[Token(Token = "0x400665D")]
|
||||
public static IIOService IOService;
|
||||
|
||||
// Token: 0x0400665F RID: 26207
|
||||
[Token(Token = "0x400665F")]
|
||||
private static Dictionary<string, List<ConnectionBase>> Connections = new Dictionary();
|
||||
|
||||
// Token: 0x04006660 RID: 26208
|
||||
[Token(Token = "0x4006660")]
|
||||
private static List<ConnectionBase> ActiveConnections = new List();
|
||||
|
||||
// Token: 0x04006661 RID: 26209
|
||||
[Token(Token = "0x4006661")]
|
||||
private static List<ConnectionBase> FreeConnections = new List();
|
||||
|
||||
// Token: 0x04006662 RID: 26210
|
||||
[Token(Token = "0x4006662")]
|
||||
private static List<ConnectionBase> RecycledConnections = new List();
|
||||
|
||||
// Token: 0x04006663 RID: 26211
|
||||
[Token(Token = "0x4006663")]
|
||||
private static List<HTTPRequest> RequestQueue = new List();
|
||||
|
||||
// Token: 0x04006664 RID: 26212
|
||||
[Token(Token = "0x4006664")]
|
||||
private static bool IsCallingCallbacks;
|
||||
|
||||
// Token: 0x04006665 RID: 26213
|
||||
[Token(Token = "0x4006665")]
|
||||
internal static object Locker = new object();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,35 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP
|
||||
{
|
||||
// Token: 0x02001975 RID: 6517
|
||||
[Token(Token = "0x2001975")]
|
||||
public enum HTTPMethods : byte
|
||||
{
|
||||
// Token: 0x0400666C RID: 26220
|
||||
[Token(Token = "0x400666C")]
|
||||
Get,
|
||||
// Token: 0x0400666D RID: 26221
|
||||
[Token(Token = "0x400666D")]
|
||||
Head,
|
||||
// Token: 0x0400666E RID: 26222
|
||||
[Token(Token = "0x400666E")]
|
||||
Post,
|
||||
// Token: 0x0400666F RID: 26223
|
||||
[Token(Token = "0x400666F")]
|
||||
Put,
|
||||
// Token: 0x04006670 RID: 26224
|
||||
[Token(Token = "0x4006670")]
|
||||
Delete,
|
||||
// Token: 0x04006671 RID: 26225
|
||||
[Token(Token = "0x4006671")]
|
||||
Patch,
|
||||
// Token: 0x04006672 RID: 26226
|
||||
[Token(Token = "0x4006672")]
|
||||
Merge,
|
||||
// Token: 0x04006673 RID: 26227
|
||||
[Token(Token = "0x4006673")]
|
||||
Options
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,96 @@
|
||||
using System;
|
||||
using System.IO;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP
|
||||
{
|
||||
// Token: 0x02001977 RID: 6519
|
||||
[Token(Token = "0x2001977")]
|
||||
public static class HTTPProtocolFactory
|
||||
{
|
||||
// Token: 0x0600973C RID: 38716 RVA: 0x001ED53C File Offset: 0x001EB73C
|
||||
[Token(Token = "0x600973C")]
|
||||
[Address(RVA = "0x2A79180", Offset = "0x2A78180", VA = "0x182A79180")]
|
||||
public static HTTPResponse Get(SupportedProtocols protocol, HTTPRequest request, Stream stream, bool isStreamed, bool isFromCache)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600973C)
|
||||
|
||||
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: 0x0600973D RID: 38717 RVA: 0x001ED55C File Offset: 0x001EB75C
|
||||
[Token(Token = "0x600973D")]
|
||||
[Address(RVA = "0x2A79070", Offset = "0x2A78070", VA = "0x182A79070")]
|
||||
public static SupportedProtocols GetProtocolFromUri(Uri uri)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600973D)
|
||||
|
||||
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: 0x0600973E RID: 38718 RVA: 0x001ED5B4 File Offset: 0x001EB7B4
|
||||
[Token(Token = "0x600973E")]
|
||||
[Address(RVA = "0x2A792E0", Offset = "0x2A782E0", VA = "0x182A792E0")]
|
||||
public static bool IsSecureProtocol(Uri uri)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600973E)
|
||||
|
||||
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,322 @@
|
||||
using System;
|
||||
using System.IO;
|
||||
using System.Text;
|
||||
using BestHTTP.Authentication;
|
||||
using BestHTTP.Extensions;
|
||||
using BestHTTP.Logger;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP
|
||||
{
|
||||
// Token: 0x02001979 RID: 6521
|
||||
[Token(Token = "0x2001979")]
|
||||
public sealed class HTTPProxy : Proxy
|
||||
{
|
||||
// Token: 0x170017F5 RID: 6133
|
||||
// (get) Token: 0x06009746 RID: 38726 RVA: 0x001ED684 File Offset: 0x001EB884
|
||||
// (set) Token: 0x06009747 RID: 38727 RVA: 0x001ED698 File Offset: 0x001EB898
|
||||
[Token(Token = "0x170017F5")]
|
||||
public bool IsTransparent
|
||||
{
|
||||
[Token(Token = "0x6009746")]
|
||||
[Address(RVA = "0x4700C0", Offset = "0x46F0C0", VA = "0x1804700C0")]
|
||||
get;
|
||||
[Token(Token = "0x6009747")]
|
||||
[Address(RVA = "0x65E580", Offset = "0x65D580", VA = "0x18065E580")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x170017F6 RID: 6134
|
||||
// (get) Token: 0x06009748 RID: 38728 RVA: 0x001ED6AC File Offset: 0x001EB8AC
|
||||
// (set) Token: 0x06009749 RID: 38729 RVA: 0x001ED6C0 File Offset: 0x001EB8C0
|
||||
[Token(Token = "0x170017F6")]
|
||||
public bool SendWholeUri
|
||||
{
|
||||
[Token(Token = "0x6009748")]
|
||||
[Address(RVA = "0x4700D0", Offset = "0x46F0D0", VA = "0x1804700D0")]
|
||||
get;
|
||||
[Token(Token = "0x6009749")]
|
||||
[Address(RVA = "0xABE6B0", Offset = "0xABD6B0", VA = "0x180ABE6B0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x170017F7 RID: 6135
|
||||
// (get) Token: 0x0600974A RID: 38730 RVA: 0x001ED6D4 File Offset: 0x001EB8D4
|
||||
// (set) Token: 0x0600974B RID: 38731 RVA: 0x001ED6E8 File Offset: 0x001EB8E8
|
||||
[Token(Token = "0x170017F7")]
|
||||
public bool NonTransparentForHTTPS
|
||||
{
|
||||
[Token(Token = "0x600974A")]
|
||||
[Address(RVA = "0x4700E0", Offset = "0x46F0E0", VA = "0x1804700E0")]
|
||||
get;
|
||||
[Token(Token = "0x600974B")]
|
||||
[Address(RVA = "0x1A1B9C0", Offset = "0x1A1A9C0", VA = "0x181A1B9C0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x0600974C RID: 38732 RVA: 0x001ED6FC File Offset: 0x001EB8FC
|
||||
[Token(Token = "0x600974C")]
|
||||
[Address(RVA = "0x2A7A620", Offset = "0x2A79620", VA = "0x182A7A620")]
|
||||
public HTTPProxy(Uri address)
|
||||
{
|
||||
int num = 0;
|
||||
base..ctor(address, num);
|
||||
this.IsTransparent = false;
|
||||
this.NonTransparentForHTTPS = true;
|
||||
}
|
||||
|
||||
// Token: 0x0600974D RID: 38733 RVA: 0x001ED724 File Offset: 0x001EB924
|
||||
[Token(Token = "0x600974D")]
|
||||
[Address(RVA = "0x2A7A690", Offset = "0x2A79690", VA = "0x182A7A690")]
|
||||
public HTTPProxy(Uri address, Credentials credentials)
|
||||
: base(address, credentials)
|
||||
{
|
||||
this.IsTransparent = false;
|
||||
this.NonTransparentForHTTPS = true;
|
||||
}
|
||||
|
||||
// Token: 0x0600974E RID: 38734 RVA: 0x001ED748 File Offset: 0x001EB948
|
||||
[Token(Token = "0x600974E")]
|
||||
[Address(RVA = "0x2A7A700", Offset = "0x2A79700", VA = "0x182A7A700")]
|
||||
public HTTPProxy(Uri address, Credentials credentials, bool isTransparent)
|
||||
: base(address, credentials)
|
||||
{
|
||||
this.IsTransparent = isTransparent;
|
||||
this.SendWholeUri = true;
|
||||
}
|
||||
|
||||
// Token: 0x0600974F RID: 38735 RVA: 0x001ED76C File Offset: 0x001EB96C
|
||||
[Token(Token = "0x600974F")]
|
||||
[Address(RVA = "0x2A7A6C0", Offset = "0x2A796C0", VA = "0x182A7A6C0")]
|
||||
public HTTPProxy(Uri address, Credentials credentials, bool isTransparent, bool sendWholeUri)
|
||||
: base(address, credentials)
|
||||
{
|
||||
this.IsTransparent = isTransparent;
|
||||
this.SendWholeUri = false;
|
||||
this.NonTransparentForHTTPS = true;
|
||||
}
|
||||
|
||||
// Token: 0x06009750 RID: 38736 RVA: 0x001ED798 File Offset: 0x001EB998
|
||||
[Token(Token = "0x6009750")]
|
||||
[Address(RVA = "0x2A7A650", Offset = "0x2A79650", VA = "0x182A7A650")]
|
||||
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: 0x06009751 RID: 38737 RVA: 0x001ED7C4 File Offset: 0x001EB9C4
|
||||
[Token(Token = "0x6009751")]
|
||||
[Address(RVA = "0x2A7A550", Offset = "0x2A79550", VA = "0x182A7A550", 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: 0x06009752 RID: 38738 RVA: 0x001ED7F8 File Offset: 0x001EB9F8
|
||||
[Token(Token = "0x6009752")]
|
||||
[Address(RVA = "0x2A793E0", Offset = "0x2A783E0", VA = "0x182A793E0", 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;
|
||||
if (<ProxyResponse>k__BackingField.<StatusCode>k__BackingField != 407)
|
||||
{
|
||||
int num3 = 0;
|
||||
if (!<ProxyResponse>k__BackingField.IsSuccess)
|
||||
{
|
||||
goto IL_433;
|
||||
}
|
||||
num3 += num3;
|
||||
}
|
||||
string text9 = DigestStore.FindBest(<ProxyResponse>k__BackingField.GetHeaderValues("proxy-authenticate"));
|
||||
if (text9 != 0)
|
||||
{
|
||||
goto IL_4CB;
|
||||
}
|
||||
Digest digest;
|
||||
digest.ParseChallange(text9);
|
||||
bool flag2;
|
||||
if (!flag2)
|
||||
{
|
||||
goto IL_4CB;
|
||||
}
|
||||
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 num4;
|
||||
if ((ulong)num < num4)
|
||||
{
|
||||
num += num;
|
||||
num++;
|
||||
}
|
||||
int num5 = 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 num6 = 0;
|
||||
Encoding utf2 = Encoding.UTF8;
|
||||
string text10 = num6 + ":" + num5;
|
||||
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_433:
|
||||
throw new NullReferenceException();
|
||||
IL_4CB:
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,129 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP
|
||||
{
|
||||
// Token: 0x0200197A RID: 6522
|
||||
[Token(Token = "0x200197A")]
|
||||
public sealed class HTTPRange
|
||||
{
|
||||
// Token: 0x170017F8 RID: 6136
|
||||
// (get) Token: 0x06009753 RID: 38739 RVA: 0x001EDDBC File Offset: 0x001EBFBC
|
||||
// (set) Token: 0x06009754 RID: 38740 RVA: 0x001EDDD0 File Offset: 0x001EBFD0
|
||||
[Token(Token = "0x170017F8")]
|
||||
public int FirstBytePos
|
||||
{
|
||||
[Token(Token = "0x6009753")]
|
||||
[Address(RVA = "0x40F000", Offset = "0x40E000", VA = "0x18040F000")]
|
||||
get;
|
||||
[Token(Token = "0x6009754")]
|
||||
[Address(RVA = "0x470D10", Offset = "0x46FD10", VA = "0x180470D10")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x170017F9 RID: 6137
|
||||
// (get) Token: 0x06009755 RID: 38741 RVA: 0x001EDDE4 File Offset: 0x001EBFE4
|
||||
// (set) Token: 0x06009756 RID: 38742 RVA: 0x001EDDF8 File Offset: 0x001EBFF8
|
||||
[Token(Token = "0x170017F9")]
|
||||
public int LastBytePos
|
||||
{
|
||||
[Token(Token = "0x6009755")]
|
||||
[Address(RVA = "0x4936D0", Offset = "0x4926D0", VA = "0x1804936D0")]
|
||||
get;
|
||||
[Token(Token = "0x6009756")]
|
||||
[Address(RVA = "0x5F1920", Offset = "0x5F0920", VA = "0x1805F1920")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x170017FA RID: 6138
|
||||
// (get) Token: 0x06009757 RID: 38743 RVA: 0x001EDE0C File Offset: 0x001EC00C
|
||||
// (set) Token: 0x06009758 RID: 38744 RVA: 0x001EDE20 File Offset: 0x001EC020
|
||||
[Token(Token = "0x170017FA")]
|
||||
public int ContentLength
|
||||
{
|
||||
[Token(Token = "0x6009757")]
|
||||
[Address(RVA = "0x411540", Offset = "0x410540", VA = "0x180411540")]
|
||||
get;
|
||||
[Token(Token = "0x6009758")]
|
||||
[Address(RVA = "0x5F1910", Offset = "0x5F0910", VA = "0x1805F1910")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x170017FB RID: 6139
|
||||
// (get) Token: 0x06009759 RID: 38745 RVA: 0x001EDE34 File Offset: 0x001EC034
|
||||
// (set) Token: 0x0600975A RID: 38746 RVA: 0x001EDE48 File Offset: 0x001EC048
|
||||
[Token(Token = "0x170017FB")]
|
||||
public bool IsValid
|
||||
{
|
||||
[Token(Token = "0x6009759")]
|
||||
[Address(RVA = "0x891DD0", Offset = "0x890DD0", VA = "0x180891DD0")]
|
||||
get;
|
||||
[Token(Token = "0x600975A")]
|
||||
[Address(RVA = "0x5F1930", Offset = "0x5F0930", VA = "0x1805F1930")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x0600975B RID: 38747 RVA: 0x001EDE5C File Offset: 0x001EC05C
|
||||
[Token(Token = "0x600975B")]
|
||||
[Address(RVA = "0x2A7A9C0", Offset = "0x2A799C0", VA = "0x182A7A9C0")]
|
||||
internal HTTPRange()
|
||||
{
|
||||
this.ContentLength = (int)((ulong)4294967295L);
|
||||
this.IsValid = false;
|
||||
}
|
||||
|
||||
// Token: 0x0600975C RID: 38748 RVA: 0x001EDE88 File Offset: 0x001EC088
|
||||
[Token(Token = "0x600975C")]
|
||||
[Address(RVA = "0x2A7A930", Offset = "0x2A79930", VA = "0x182A7A930")]
|
||||
internal HTTPRange(int contentLength)
|
||||
{
|
||||
this.ContentLength = contentLength;
|
||||
this.IsValid = false;
|
||||
}
|
||||
|
||||
// Token: 0x0600975D RID: 38749 RVA: 0x001EDEAC File Offset: 0x001EC0AC
|
||||
[Token(Token = "0x600975D")]
|
||||
[Address(RVA = "0x2A7A960", Offset = "0x2A79960", VA = "0x182A7A960")]
|
||||
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: 0x0600975E RID: 38750 RVA: 0x001EDEE4 File Offset: 0x001EC0E4
|
||||
[Token(Token = "0x600975E")]
|
||||
[Address(RVA = "0x2A7A730", Offset = "0x2A79730", VA = "0x182A7A730", 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,1929 @@
|
||||
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: 0x02001982 RID: 6530
|
||||
[Token(Token = "0x2001982")]
|
||||
public sealed class HTTPRequest : IEnumerator, IEnumerator<HTTPRequest>, IDisposable
|
||||
{
|
||||
// Token: 0x170017FC RID: 6140
|
||||
// (get) Token: 0x06009777 RID: 38775 RVA: 0x001EE4DC File Offset: 0x001EC6DC
|
||||
// (set) Token: 0x06009778 RID: 38776 RVA: 0x001EE4F0 File Offset: 0x001EC6F0
|
||||
[Token(Token = "0x170017FC")]
|
||||
public Uri Uri
|
||||
{
|
||||
[Token(Token = "0x6009777")]
|
||||
[Address(RVA = "0x411530", Offset = "0x410530", VA = "0x180411530")]
|
||||
get;
|
||||
[Token(Token = "0x6009778")]
|
||||
[Address(RVA = "0x415800", Offset = "0x414800", VA = "0x180415800")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x170017FD RID: 6141
|
||||
// (get) Token: 0x06009779 RID: 38777 RVA: 0x001EE504 File Offset: 0x001EC704
|
||||
// (set) Token: 0x0600977A RID: 38778 RVA: 0x001EE518 File Offset: 0x001EC718
|
||||
[Token(Token = "0x170017FD")]
|
||||
public HTTPMethods MethodType
|
||||
{
|
||||
[Token(Token = "0x6009779")]
|
||||
[Address(RVA = "0x497570", Offset = "0x496570", VA = "0x180497570")]
|
||||
get;
|
||||
[Token(Token = "0x600977A")]
|
||||
[Address(RVA = "0x611070", Offset = "0x610070", VA = "0x180611070")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x170017FE RID: 6142
|
||||
// (get) Token: 0x0600977B RID: 38779 RVA: 0x001EE52C File Offset: 0x001EC72C
|
||||
// (set) Token: 0x0600977C RID: 38780 RVA: 0x001EE540 File Offset: 0x001EC740
|
||||
[Token(Token = "0x170017FE")]
|
||||
public byte[] RawData
|
||||
{
|
||||
[Token(Token = "0x600977B")]
|
||||
[Address(RVA = "0x4157C0", Offset = "0x4147C0", VA = "0x1804157C0")]
|
||||
get;
|
||||
[Token(Token = "0x600977C")]
|
||||
[Address(RVA = "0x415810", Offset = "0x414810", VA = "0x180415810")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x170017FF RID: 6143
|
||||
// (get) Token: 0x0600977D RID: 38781 RVA: 0x001EE554 File Offset: 0x001EC754
|
||||
// (set) Token: 0x0600977E RID: 38782 RVA: 0x001EE568 File Offset: 0x001EC768
|
||||
[Token(Token = "0x170017FF")]
|
||||
public Stream UploadStream
|
||||
{
|
||||
[Token(Token = "0x600977D")]
|
||||
[Address(RVA = "0x4157D0", Offset = "0x4147D0", VA = "0x1804157D0")]
|
||||
get;
|
||||
[Token(Token = "0x600977E")]
|
||||
[Address(RVA = "0x415820", Offset = "0x414820", VA = "0x180415820")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001800 RID: 6144
|
||||
// (get) Token: 0x0600977F RID: 38783 RVA: 0x001EE57C File Offset: 0x001EC77C
|
||||
// (set) Token: 0x06009780 RID: 38784 RVA: 0x001EE590 File Offset: 0x001EC790
|
||||
[Token(Token = "0x17001800")]
|
||||
public bool DisposeUploadStream
|
||||
{
|
||||
[Token(Token = "0x600977F")]
|
||||
[Address(RVA = "0x5AB2E0", Offset = "0x5AA2E0", VA = "0x1805AB2E0")]
|
||||
get;
|
||||
[Token(Token = "0x6009780")]
|
||||
[Address(RVA = "0x5AB400", Offset = "0x5AA400", VA = "0x1805AB400")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001801 RID: 6145
|
||||
// (get) Token: 0x06009781 RID: 38785 RVA: 0x001EE5A4 File Offset: 0x001EC7A4
|
||||
// (set) Token: 0x06009782 RID: 38786 RVA: 0x001EE5B8 File Offset: 0x001EC7B8
|
||||
[Token(Token = "0x17001801")]
|
||||
public bool UseUploadStreamLength
|
||||
{
|
||||
[Token(Token = "0x6009781")]
|
||||
[Address(RVA = "0x8920D0", Offset = "0x8910D0", VA = "0x1808920D0")]
|
||||
get;
|
||||
[Token(Token = "0x6009782")]
|
||||
[Address(RVA = "0xCA2F10", Offset = "0xCA1F10", VA = "0x180CA2F10")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001802 RID: 6146
|
||||
// (get) Token: 0x06009783 RID: 38787 RVA: 0x001EE5CC File Offset: 0x001EC7CC
|
||||
// (set) Token: 0x06009784 RID: 38788 RVA: 0x001EE5E0 File Offset: 0x001EC7E0
|
||||
[Token(Token = "0x17001802")]
|
||||
public bool IsKeepAlive
|
||||
{
|
||||
[Token(Token = "0x6009783")]
|
||||
[Address(RVA = "0x2A7EEB0", Offset = "0x2A7DEB0", VA = "0x182A7EEB0")]
|
||||
get
|
||||
{
|
||||
return this.isKeepAlive;
|
||||
}
|
||||
[Token(Token = "0x6009784")]
|
||||
[Address(RVA = "0x2A7F2C0", Offset = "0x2A7E2C0", VA = "0x182A7F2C0")]
|
||||
set
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (06009784)
|
||||
|
||||
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: 0x17001803 RID: 6147
|
||||
// (get) Token: 0x06009785 RID: 38789 RVA: 0x001EE608 File Offset: 0x001EC808
|
||||
// (set) Token: 0x06009786 RID: 38790 RVA: 0x001EE61C File Offset: 0x001EC81C
|
||||
[Token(Token = "0x17001803")]
|
||||
public bool DisableCache
|
||||
{
|
||||
[Token(Token = "0x6009785")]
|
||||
[Address(RVA = "0x15F8E90", Offset = "0x15F7E90", VA = "0x1815F8E90")]
|
||||
get
|
||||
{
|
||||
return this.disableCache;
|
||||
}
|
||||
[Token(Token = "0x6009786")]
|
||||
[Address(RVA = "0x2A7F220", Offset = "0x2A7E220", VA = "0x182A7F220")]
|
||||
set
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (06009786)
|
||||
|
||||
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: 0x17001804 RID: 6148
|
||||
// (get) Token: 0x06009787 RID: 38791 RVA: 0x001EE644 File Offset: 0x001EC844
|
||||
// (set) Token: 0x06009788 RID: 38792 RVA: 0x001EE658 File Offset: 0x001EC858
|
||||
[Token(Token = "0x17001804")]
|
||||
public bool CacheOnly
|
||||
{
|
||||
[Token(Token = "0x6009787")]
|
||||
[Address(RVA = "0x2A7EE00", Offset = "0x2A7DE00", VA = "0x182A7EE00")]
|
||||
get
|
||||
{
|
||||
return this.cacheOnly;
|
||||
}
|
||||
[Token(Token = "0x6009788")]
|
||||
[Address(RVA = "0x2A7F1A0", Offset = "0x2A7E1A0", VA = "0x182A7F1A0")]
|
||||
set
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (06009788)
|
||||
|
||||
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: 0x17001805 RID: 6149
|
||||
// (get) Token: 0x06009789 RID: 38793 RVA: 0x001EE680 File Offset: 0x001EC880
|
||||
// (set) Token: 0x0600978A RID: 38794 RVA: 0x001EE694 File Offset: 0x001EC894
|
||||
[Token(Token = "0x17001805")]
|
||||
public bool UseStreaming
|
||||
{
|
||||
[Token(Token = "0x6009789")]
|
||||
[Address(RVA = "0x44BD60", Offset = "0x44AD60", VA = "0x18044BD60")]
|
||||
get
|
||||
{
|
||||
return this.useStreaming;
|
||||
}
|
||||
[Token(Token = "0x600978A")]
|
||||
[Address(RVA = "0x2A7F3F0", Offset = "0x2A7E3F0", VA = "0x182A7F3F0")]
|
||||
set
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600978A)
|
||||
|
||||
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: 0x17001806 RID: 6150
|
||||
// (get) Token: 0x0600978B RID: 38795 RVA: 0x001EE6BC File Offset: 0x001EC8BC
|
||||
// (set) Token: 0x0600978C RID: 38796 RVA: 0x001EE6D0 File Offset: 0x001EC8D0
|
||||
[Token(Token = "0x17001806")]
|
||||
public int StreamFragmentSize
|
||||
{
|
||||
[Token(Token = "0x600978B")]
|
||||
[Address(RVA = "0xFB4100", Offset = "0xFB3100", VA = "0x180FB4100")]
|
||||
get
|
||||
{
|
||||
return this.streamFragmentSize;
|
||||
}
|
||||
[Token(Token = "0x600978C")]
|
||||
[Address(RVA = "0x2A7F340", Offset = "0x2A7E340", VA = "0x182A7F340")]
|
||||
set
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600978C)
|
||||
|
||||
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: 0x17001807 RID: 6151
|
||||
// (get) Token: 0x0600978D RID: 38797 RVA: 0x001EE6F8 File Offset: 0x001EC8F8
|
||||
// (set) Token: 0x0600978E RID: 38798 RVA: 0x001EE70C File Offset: 0x001EC90C
|
||||
[Token(Token = "0x17001807")]
|
||||
public int MaxFragmentQueueLength
|
||||
{
|
||||
[Token(Token = "0x600978D")]
|
||||
[Address(RVA = "0x678D20", Offset = "0x677D20", VA = "0x180678D20")]
|
||||
get;
|
||||
[Token(Token = "0x600978E")]
|
||||
[Address(RVA = "0x678D30", Offset = "0x677D30", VA = "0x180678D30")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001808 RID: 6152
|
||||
// (get) Token: 0x0600978F RID: 38799 RVA: 0x001EE720 File Offset: 0x001EC920
|
||||
// (set) Token: 0x06009790 RID: 38800 RVA: 0x001EE734 File Offset: 0x001EC934
|
||||
[Token(Token = "0x17001808")]
|
||||
public OnRequestFinishedDelegate Callback
|
||||
{
|
||||
[Token(Token = "0x600978F")]
|
||||
[Address(RVA = "0x4975A0", Offset = "0x4965A0", VA = "0x1804975A0")]
|
||||
get;
|
||||
[Token(Token = "0x6009790")]
|
||||
[Address(RVA = "0x55BCF0", Offset = "0x55ACF0", VA = "0x18055BCF0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001809 RID: 6153
|
||||
// (get) Token: 0x06009791 RID: 38801 RVA: 0x001EE748 File Offset: 0x001EC948
|
||||
// (set) Token: 0x06009792 RID: 38802 RVA: 0x001EE75C File Offset: 0x001EC95C
|
||||
[Token(Token = "0x17001809")]
|
||||
public bool DisableRetry
|
||||
{
|
||||
[Token(Token = "0x6009791")]
|
||||
[Address(RVA = "0x88D380", Offset = "0x88C380", VA = "0x18088D380")]
|
||||
get;
|
||||
[Token(Token = "0x6009792")]
|
||||
[Address(RVA = "0xABCF10", Offset = "0xABBF10", VA = "0x180ABCF10")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x1700180A RID: 6154
|
||||
// (get) Token: 0x06009793 RID: 38803 RVA: 0x001EE770 File Offset: 0x001EC970
|
||||
// (set) Token: 0x06009794 RID: 38804 RVA: 0x001EE784 File Offset: 0x001EC984
|
||||
[Token(Token = "0x1700180A")]
|
||||
public bool IsRedirected
|
||||
{
|
||||
[Token(Token = "0x6009793")]
|
||||
[Address(RVA = "0xAD8820", Offset = "0xAD7820", VA = "0x180AD8820")]
|
||||
get;
|
||||
[Token(Token = "0x6009794")]
|
||||
[Address(RVA = "0x88DF30", Offset = "0x88CF30", VA = "0x18088DF30")]
|
||||
internal set;
|
||||
}
|
||||
|
||||
// Token: 0x1700180B RID: 6155
|
||||
// (get) Token: 0x06009795 RID: 38805 RVA: 0x001EE798 File Offset: 0x001EC998
|
||||
// (set) Token: 0x06009796 RID: 38806 RVA: 0x001EE7AC File Offset: 0x001EC9AC
|
||||
[Token(Token = "0x1700180B")]
|
||||
public Uri RedirectUri
|
||||
{
|
||||
[Token(Token = "0x6009795")]
|
||||
[Address(RVA = "0x4177D0", Offset = "0x4167D0", VA = "0x1804177D0")]
|
||||
get;
|
||||
[Token(Token = "0x6009796")]
|
||||
[Address(RVA = "0x417AC0", Offset = "0x416AC0", VA = "0x180417AC0")]
|
||||
internal set;
|
||||
}
|
||||
|
||||
// Token: 0x1700180C RID: 6156
|
||||
// (get) Token: 0x06009797 RID: 38807 RVA: 0x001EE7C0 File Offset: 0x001EC9C0
|
||||
[Token(Token = "0x1700180C")]
|
||||
public Uri CurrentUri
|
||||
{
|
||||
[Token(Token = "0x6009797")]
|
||||
[Address(RVA = "0x2A7EE80", Offset = "0x2A7DE80", VA = "0x182A7EE80")]
|
||||
get
|
||||
{
|
||||
if (this.<IsRedirected>k__BackingField)
|
||||
{
|
||||
return this.<RedirectUri>k__BackingField;
|
||||
}
|
||||
return this.<Uri>k__BackingField;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x1700180D RID: 6157
|
||||
// (get) Token: 0x06009798 RID: 38808 RVA: 0x001EE7E4 File Offset: 0x001EC9E4
|
||||
// (set) Token: 0x06009799 RID: 38809 RVA: 0x001EE7F8 File Offset: 0x001EC9F8
|
||||
[Token(Token = "0x1700180D")]
|
||||
public HTTPResponse Response
|
||||
{
|
||||
[Token(Token = "0x6009798")]
|
||||
[Address(RVA = "0x493640", Offset = "0x492640", VA = "0x180493640")]
|
||||
get;
|
||||
[Token(Token = "0x6009799")]
|
||||
[Address(RVA = "0x476170", Offset = "0x475170", VA = "0x180476170")]
|
||||
internal set;
|
||||
}
|
||||
|
||||
// Token: 0x1700180E RID: 6158
|
||||
// (get) Token: 0x0600979A RID: 38810 RVA: 0x001EE80C File Offset: 0x001ECA0C
|
||||
// (set) Token: 0x0600979B RID: 38811 RVA: 0x001EE820 File Offset: 0x001ECA20
|
||||
[Token(Token = "0x1700180E")]
|
||||
public HTTPResponse ProxyResponse
|
||||
{
|
||||
[Token(Token = "0x600979A")]
|
||||
[Address(RVA = "0x4177C0", Offset = "0x4167C0", VA = "0x1804177C0")]
|
||||
get;
|
||||
[Token(Token = "0x600979B")]
|
||||
[Address(RVA = "0x417AB0", Offset = "0x416AB0", VA = "0x180417AB0")]
|
||||
internal set;
|
||||
}
|
||||
|
||||
// Token: 0x1700180F RID: 6159
|
||||
// (get) Token: 0x0600979C RID: 38812 RVA: 0x001EE834 File Offset: 0x001ECA34
|
||||
// (set) Token: 0x0600979D RID: 38813 RVA: 0x001EE848 File Offset: 0x001ECA48
|
||||
[Token(Token = "0x1700180F")]
|
||||
public Exception Exception
|
||||
{
|
||||
[Token(Token = "0x600979C")]
|
||||
[Address(RVA = "0x4177B0", Offset = "0x4167B0", VA = "0x1804177B0")]
|
||||
get;
|
||||
[Token(Token = "0x600979D")]
|
||||
[Address(RVA = "0x417AA0", Offset = "0x416AA0", VA = "0x180417AA0")]
|
||||
internal set;
|
||||
}
|
||||
|
||||
// Token: 0x17001810 RID: 6160
|
||||
// (get) Token: 0x0600979E RID: 38814 RVA: 0x001EE85C File Offset: 0x001ECA5C
|
||||
// (set) Token: 0x0600979F RID: 38815 RVA: 0x001EE870 File Offset: 0x001ECA70
|
||||
[Token(Token = "0x17001810")]
|
||||
public object Tag
|
||||
{
|
||||
[Token(Token = "0x600979E")]
|
||||
[Address(RVA = "0x4C31C0", Offset = "0x4C21C0", VA = "0x1804C31C0")]
|
||||
get;
|
||||
[Token(Token = "0x600979F")]
|
||||
[Address(RVA = "0x497020", Offset = "0x496020", VA = "0x180497020")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001811 RID: 6161
|
||||
// (get) Token: 0x060097A0 RID: 38816 RVA: 0x001EE884 File Offset: 0x001ECA84
|
||||
// (set) Token: 0x060097A1 RID: 38817 RVA: 0x001EE898 File Offset: 0x001ECA98
|
||||
[Token(Token = "0x17001811")]
|
||||
public Credentials Credentials
|
||||
{
|
||||
[Token(Token = "0x60097A0")]
|
||||
[Address(RVA = "0x54F060", Offset = "0x54E060", VA = "0x18054F060")]
|
||||
get;
|
||||
[Token(Token = "0x60097A1")]
|
||||
[Address(RVA = "0x7B8A00", Offset = "0x7B7A00", VA = "0x1807B8A00")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001812 RID: 6162
|
||||
// (get) Token: 0x060097A2 RID: 38818 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x17001812")]
|
||||
public bool HasProxy
|
||||
{
|
||||
[Token(Token = "0x60097A2")]
|
||||
[Address(RVA = "0x2A7EEA0", Offset = "0x2A7DEA0", VA = "0x182A7EEA0")]
|
||||
get
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17001813 RID: 6163
|
||||
// (get) Token: 0x060097A3 RID: 38819 RVA: 0x001EE8AC File Offset: 0x001ECAAC
|
||||
// (set) Token: 0x060097A4 RID: 38820 RVA: 0x001EE8C0 File Offset: 0x001ECAC0
|
||||
[Token(Token = "0x17001813")]
|
||||
public Proxy Proxy
|
||||
{
|
||||
[Token(Token = "0x60097A3")]
|
||||
[Address(RVA = "0x56D550", Offset = "0x56C550", VA = "0x18056D550")]
|
||||
get;
|
||||
[Token(Token = "0x60097A4")]
|
||||
[Address(RVA = "0x56D560", Offset = "0x56C560", VA = "0x18056D560")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001814 RID: 6164
|
||||
// (get) Token: 0x060097A5 RID: 38821 RVA: 0x001EE8D4 File Offset: 0x001ECAD4
|
||||
// (set) Token: 0x060097A6 RID: 38822 RVA: 0x001EE8E8 File Offset: 0x001ECAE8
|
||||
[Token(Token = "0x17001814")]
|
||||
public int MaxRedirects
|
||||
{
|
||||
[Token(Token = "0x60097A5")]
|
||||
[Address(RVA = "0x6A5AE0", Offset = "0x6A4AE0", VA = "0x1806A5AE0")]
|
||||
get;
|
||||
[Token(Token = "0x60097A6")]
|
||||
[Address(RVA = "0x6A5E30", Offset = "0x6A4E30", VA = "0x1806A5E30")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001815 RID: 6165
|
||||
// (get) Token: 0x060097A7 RID: 38823 RVA: 0x001EE8FC File Offset: 0x001ECAFC
|
||||
// (set) Token: 0x060097A8 RID: 38824 RVA: 0x001EE910 File Offset: 0x001ECB10
|
||||
[Token(Token = "0x17001815")]
|
||||
public bool UseAlternateSSL
|
||||
{
|
||||
[Token(Token = "0x60097A7")]
|
||||
[Address(RVA = "0x125C1A0", Offset = "0x125B1A0", VA = "0x18125C1A0")]
|
||||
get;
|
||||
[Token(Token = "0x60097A8")]
|
||||
[Address(RVA = "0x213DBF0", Offset = "0x213CBF0", VA = "0x18213DBF0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001816 RID: 6166
|
||||
// (get) Token: 0x060097A9 RID: 38825 RVA: 0x001EE924 File Offset: 0x001ECB24
|
||||
// (set) Token: 0x060097AA RID: 38826 RVA: 0x001EE938 File Offset: 0x001ECB38
|
||||
[Token(Token = "0x17001816")]
|
||||
public bool IsCookiesEnabled
|
||||
{
|
||||
[Token(Token = "0x60097A9")]
|
||||
[Address(RVA = "0x125C1C0", Offset = "0x125B1C0", VA = "0x18125C1C0")]
|
||||
get;
|
||||
[Token(Token = "0x60097AA")]
|
||||
[Address(RVA = "0x2A7F2B0", Offset = "0x2A7E2B0", VA = "0x182A7F2B0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001817 RID: 6167
|
||||
// (get) Token: 0x060097AB RID: 38827 RVA: 0x001EE94C File Offset: 0x001ECB4C
|
||||
// (set) Token: 0x060097AC RID: 38828 RVA: 0x001EE974 File Offset: 0x001ECB74
|
||||
[Token(Token = "0x17001817")]
|
||||
public List<Cookie> Cookies
|
||||
{
|
||||
[Token(Token = "0x60097AB")]
|
||||
[Address(RVA = "0x2A7EE10", Offset = "0x2A7DE10", VA = "0x182A7EE10")]
|
||||
get
|
||||
{
|
||||
List<Cookie> list = this.customCookies;
|
||||
if (list == 0)
|
||||
{
|
||||
List<Cookie> list2 = new List();
|
||||
this.customCookies = list2;
|
||||
}
|
||||
return list;
|
||||
}
|
||||
[Token(Token = "0x60097AC")]
|
||||
[Address(RVA = "0x82CD30", Offset = "0x82BD30", VA = "0x18082CD30")]
|
||||
set
|
||||
{
|
||||
this.customCookies = value;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17001818 RID: 6168
|
||||
// (get) Token: 0x060097AD RID: 38829 RVA: 0x001EE988 File Offset: 0x001ECB88
|
||||
// (set) Token: 0x060097AE RID: 38830 RVA: 0x001EE99C File Offset: 0x001ECB9C
|
||||
[Token(Token = "0x17001818")]
|
||||
public HTTPFormUsage FormUsage
|
||||
{
|
||||
[Token(Token = "0x60097AD")]
|
||||
[Address(RVA = "0x8D2400", Offset = "0x8D1400", VA = "0x1808D2400")]
|
||||
get;
|
||||
[Token(Token = "0x60097AE")]
|
||||
[Address(RVA = "0x8D2420", Offset = "0x8D1420", VA = "0x1808D2420")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001819 RID: 6169
|
||||
// (get) Token: 0x060097AF RID: 38831 RVA: 0x001EE9B0 File Offset: 0x001ECBB0
|
||||
// (set) Token: 0x060097B0 RID: 38832 RVA: 0x001EE9C4 File Offset: 0x001ECBC4
|
||||
[Token(Token = "0x17001819")]
|
||||
public HTTPRequestStates State
|
||||
{
|
||||
[Token(Token = "0x60097AF")]
|
||||
[Address(RVA = "0xDDC9C0", Offset = "0xDDB9C0", VA = "0x180DDC9C0")]
|
||||
get;
|
||||
[Token(Token = "0x60097B0")]
|
||||
[Address(RVA = "0xDDCBB0", Offset = "0xDDBBB0", VA = "0x180DDCBB0")]
|
||||
internal set;
|
||||
}
|
||||
|
||||
// Token: 0x1700181A RID: 6170
|
||||
// (get) Token: 0x060097B1 RID: 38833 RVA: 0x001EE9D8 File Offset: 0x001ECBD8
|
||||
// (set) Token: 0x060097B2 RID: 38834 RVA: 0x001EE9EC File Offset: 0x001ECBEC
|
||||
[Token(Token = "0x1700181A")]
|
||||
public int RedirectCount
|
||||
{
|
||||
[Token(Token = "0x60097B1")]
|
||||
[Address(RVA = "0x8EE1A0", Offset = "0x8ED1A0", VA = "0x1808EE1A0")]
|
||||
get;
|
||||
[Token(Token = "0x60097B2")]
|
||||
[Address(RVA = "0x1837440", Offset = "0x1836440", VA = "0x181837440")]
|
||||
internal set;
|
||||
}
|
||||
|
||||
// Token: 0x140000BB RID: 187
|
||||
// (add) Token: 0x060097B3 RID: 38835 RVA: 0x001EEA00 File Offset: 0x001ECC00
|
||||
// (remove) Token: 0x060097B4 RID: 38836 RVA: 0x001EEA1C File Offset: 0x001ECC1C
|
||||
[Token(Token = "0x140000BB")]
|
||||
public event Func<HTTPRequest, X509Certificate, X509Chain, bool> CustomCertificationValidator
|
||||
{
|
||||
[Token(Token = "0x60097B3")]
|
||||
[Address(RVA = "0x2A7EBA0", Offset = "0x2A7DBA0", VA = "0x182A7EBA0")]
|
||||
[CompilerGenerated]
|
||||
add
|
||||
{
|
||||
Delegate @delegate;
|
||||
while (@delegate != 0 && @delegate == 0)
|
||||
{
|
||||
}
|
||||
while (@delegate != this)
|
||||
{
|
||||
}
|
||||
}
|
||||
[Token(Token = "0x60097B4")]
|
||||
[Address(RVA = "0x2A7EF40", Offset = "0x2A7DF40", VA = "0x182A7EF40")]
|
||||
[CompilerGenerated]
|
||||
remove
|
||||
{
|
||||
Delegate @delegate;
|
||||
while (@delegate != 0 && @delegate == 0)
|
||||
{
|
||||
}
|
||||
while (@delegate != this)
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x1700181B RID: 6171
|
||||
// (get) Token: 0x060097B5 RID: 38837 RVA: 0x001EEA38 File Offset: 0x001ECC38
|
||||
// (set) Token: 0x060097B6 RID: 38838 RVA: 0x001EEA4C File Offset: 0x001ECC4C
|
||||
[Token(Token = "0x1700181B")]
|
||||
public TimeSpan ConnectTimeout
|
||||
{
|
||||
[Token(Token = "0x60097B5")]
|
||||
[Address(RVA = "0x42D480", Offset = "0x42C480", VA = "0x18042D480")]
|
||||
get;
|
||||
[Token(Token = "0x60097B6")]
|
||||
[Address(RVA = "0x42DA70", Offset = "0x42CA70", VA = "0x18042DA70")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x1700181C RID: 6172
|
||||
// (get) Token: 0x060097B7 RID: 38839 RVA: 0x001EEA60 File Offset: 0x001ECC60
|
||||
// (set) Token: 0x060097B8 RID: 38840 RVA: 0x001EEA74 File Offset: 0x001ECC74
|
||||
[Token(Token = "0x1700181C")]
|
||||
public TimeSpan Timeout
|
||||
{
|
||||
[Token(Token = "0x60097B7")]
|
||||
[Address(RVA = "0x42D840", Offset = "0x42C840", VA = "0x18042D840")]
|
||||
get;
|
||||
[Token(Token = "0x60097B8")]
|
||||
[Address(RVA = "0x42DBA0", Offset = "0x42CBA0", VA = "0x18042DBA0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x1700181D RID: 6173
|
||||
// (get) Token: 0x060097B9 RID: 38841 RVA: 0x001EEA88 File Offset: 0x001ECC88
|
||||
// (set) Token: 0x060097BA RID: 38842 RVA: 0x001EEA9C File Offset: 0x001ECC9C
|
||||
[Token(Token = "0x1700181D")]
|
||||
public bool EnableTimoutForStreaming
|
||||
{
|
||||
[Token(Token = "0x60097B9")]
|
||||
[Address(RVA = "0xB8D050", Offset = "0xB8C050", VA = "0x180B8D050")]
|
||||
get;
|
||||
[Token(Token = "0x60097BA")]
|
||||
[Address(RVA = "0xB8D170", Offset = "0xB8C170", VA = "0x180B8D170")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x1700181E RID: 6174
|
||||
// (get) Token: 0x060097BB RID: 38843 RVA: 0x001EEAB0 File Offset: 0x001ECCB0
|
||||
// (set) Token: 0x060097BC RID: 38844 RVA: 0x001EEAC4 File Offset: 0x001ECCC4
|
||||
[Token(Token = "0x1700181E")]
|
||||
public bool EnableSafeReadOnUnknownContentLength
|
||||
{
|
||||
[Token(Token = "0x60097BB")]
|
||||
[Address(RVA = "0x2A7EE90", Offset = "0x2A7DE90", VA = "0x182A7EE90")]
|
||||
get;
|
||||
[Token(Token = "0x60097BC")]
|
||||
[Address(RVA = "0x2A7F2A0", Offset = "0x2A7E2A0", VA = "0x182A7F2A0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x1700181F RID: 6175
|
||||
// (get) Token: 0x060097BD RID: 38845 RVA: 0x001EEAD8 File Offset: 0x001ECCD8
|
||||
// (set) Token: 0x060097BE RID: 38846 RVA: 0x001EEAEC File Offset: 0x001ECCEC
|
||||
[Token(Token = "0x1700181F")]
|
||||
public int Priority
|
||||
{
|
||||
[Token(Token = "0x60097BD")]
|
||||
[Address(RVA = "0x6A55B0", Offset = "0x6A45B0", VA = "0x1806A55B0")]
|
||||
get;
|
||||
[Token(Token = "0x60097BE")]
|
||||
[Address(RVA = "0x82DC10", Offset = "0x82CC10", VA = "0x18082DC10")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001820 RID: 6176
|
||||
// (get) Token: 0x060097BF RID: 38847 RVA: 0x001EEB00 File Offset: 0x001ECD00
|
||||
// (set) Token: 0x060097C0 RID: 38848 RVA: 0x001EEB14 File Offset: 0x001ECD14
|
||||
[Token(Token = "0x17001820")]
|
||||
public ICertificateVerifyer CustomCertificateVerifyer
|
||||
{
|
||||
[Token(Token = "0x60097BF")]
|
||||
[Address(RVA = "0x42C870", Offset = "0x42B870", VA = "0x18042C870")]
|
||||
get;
|
||||
[Token(Token = "0x60097C0")]
|
||||
[Address(RVA = "0x82C6B0", Offset = "0x82B6B0", VA = "0x18082C6B0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001821 RID: 6177
|
||||
// (get) Token: 0x060097C1 RID: 38849 RVA: 0x001EEB28 File Offset: 0x001ECD28
|
||||
// (set) Token: 0x060097C2 RID: 38850 RVA: 0x001EEB3C File Offset: 0x001ECD3C
|
||||
[Token(Token = "0x17001821")]
|
||||
public IClientCredentialsProvider CustomClientCredentialsProvider
|
||||
{
|
||||
[Token(Token = "0x60097C1")]
|
||||
[Address(RVA = "0x42D460", Offset = "0x42C460", VA = "0x18042D460")]
|
||||
get;
|
||||
[Token(Token = "0x60097C2")]
|
||||
[Address(RVA = "0x5BF390", Offset = "0x5BE390", VA = "0x1805BF390")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001822 RID: 6178
|
||||
// (get) Token: 0x060097C3 RID: 38851 RVA: 0x001EEB50 File Offset: 0x001ECD50
|
||||
// (set) Token: 0x060097C4 RID: 38852 RVA: 0x001EEB64 File Offset: 0x001ECD64
|
||||
[Token(Token = "0x17001822")]
|
||||
public List<string> CustomTLSServerNameList
|
||||
{
|
||||
[Token(Token = "0x60097C3")]
|
||||
[Address(RVA = "0x42D470", Offset = "0x42C470", VA = "0x18042D470")]
|
||||
get;
|
||||
[Token(Token = "0x60097C4")]
|
||||
[Address(RVA = "0x42DA60", Offset = "0x42CA60", VA = "0x18042DA60")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001823 RID: 6179
|
||||
// (get) Token: 0x060097C5 RID: 38853 RVA: 0x001EEB78 File Offset: 0x001ECD78
|
||||
// (set) Token: 0x060097C6 RID: 38854 RVA: 0x001EEB8C File Offset: 0x001ECD8C
|
||||
[Token(Token = "0x17001823")]
|
||||
public SupportedProtocols ProtocolHandler
|
||||
{
|
||||
[Token(Token = "0x60097C5")]
|
||||
[Address(RVA = "0x1DA1240", Offset = "0x1DA0240", VA = "0x181DA1240")]
|
||||
get;
|
||||
[Token(Token = "0x60097C6")]
|
||||
[Address(RVA = "0x1DA12C0", Offset = "0x1DA02C0", VA = "0x181DA12C0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x140000BC RID: 188
|
||||
// (add) Token: 0x060097C7 RID: 38855 RVA: 0x001EEBA0 File Offset: 0x001ECDA0
|
||||
// (remove) Token: 0x060097C8 RID: 38856 RVA: 0x001EEBD4 File Offset: 0x001ECDD4
|
||||
[Token(Token = "0x140000BC")]
|
||||
public event OnBeforeRedirectionDelegate OnBeforeRedirection
|
||||
{
|
||||
[Token(Token = "0x60097C7")]
|
||||
[Address(RVA = "0x2A7ECD0", Offset = "0x2A7DCD0", VA = "0x182A7ECD0")]
|
||||
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 = "0x60097C8")]
|
||||
[Address(RVA = "0x2A7F070", Offset = "0x2A7E070", VA = "0x182A7F070")]
|
||||
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: 0x060097C9 RID: 38857 RVA: 0x001EEC08 File Offset: 0x001ECE08
|
||||
// (remove) Token: 0x060097CA RID: 38858 RVA: 0x001EEC3C File Offset: 0x001ECE3C
|
||||
[Token(Token = "0x140000BD")]
|
||||
public event OnBeforeHeaderSendDelegate OnBeforeHeaderSend
|
||||
{
|
||||
[Token(Token = "0x60097C9")]
|
||||
[Address(RVA = "0x2A7EC40", Offset = "0x2A7DC40", VA = "0x182A7EC40")]
|
||||
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 = "0x60097CA")]
|
||||
[Address(RVA = "0x2A7EFE0", Offset = "0x2A7DFE0", VA = "0x182A7EFE0")]
|
||||
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: 0x060097CB RID: 38859 RVA: 0x001EEC70 File Offset: 0x001ECE70
|
||||
// (remove) Token: 0x060097CC RID: 38860 RVA: 0x001EEC8C File Offset: 0x001ECE8C
|
||||
[Token(Token = "0x140000BE")]
|
||||
public event Action<HTTPRequest, Stream> OnSendingHeaders
|
||||
{
|
||||
[Token(Token = "0x60097CB")]
|
||||
[Address(RVA = "0x2A7ED60", Offset = "0x2A7DD60", VA = "0x182A7ED60")]
|
||||
[CompilerGenerated]
|
||||
add
|
||||
{
|
||||
Delegate @delegate;
|
||||
while (@delegate != 0 && @delegate == 0)
|
||||
{
|
||||
}
|
||||
while (@delegate != this)
|
||||
{
|
||||
}
|
||||
}
|
||||
[Token(Token = "0x60097CC")]
|
||||
[Address(RVA = "0x2A7F100", Offset = "0x2A7E100", VA = "0x182A7F100")]
|
||||
[CompilerGenerated]
|
||||
remove
|
||||
{
|
||||
Delegate @delegate;
|
||||
while (@delegate != 0 && @delegate == 0)
|
||||
{
|
||||
}
|
||||
while (@delegate != this)
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17001824 RID: 6180
|
||||
// (get) Token: 0x060097CD RID: 38861 RVA: 0x001EECA8 File Offset: 0x001ECEA8
|
||||
// (set) Token: 0x060097CE RID: 38862 RVA: 0x001EECBC File Offset: 0x001ECEBC
|
||||
[Token(Token = "0x17001824")]
|
||||
public bool TryToMinimizeTCPLatency
|
||||
{
|
||||
[Token(Token = "0x60097CD")]
|
||||
[Address(RVA = "0x1188490", Offset = "0x1187490", VA = "0x181188490")]
|
||||
get;
|
||||
[Token(Token = "0x60097CE")]
|
||||
[Address(RVA = "0x2A5EDC0", Offset = "0x2A5DDC0", VA = "0x182A5EDC0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001825 RID: 6181
|
||||
// (get) Token: 0x060097CF RID: 38863 RVA: 0x001EECD0 File Offset: 0x001ECED0
|
||||
// (set) Token: 0x060097D0 RID: 38864 RVA: 0x001EECE4 File Offset: 0x001ECEE4
|
||||
[Token(Token = "0x17001825")]
|
||||
internal long Downloaded
|
||||
{
|
||||
[Token(Token = "0x60097CF")]
|
||||
[Address(RVA = "0x5B7070", Offset = "0x5B6070", VA = "0x1805B7070")]
|
||||
get;
|
||||
[Token(Token = "0x60097D0")]
|
||||
[Address(RVA = "0xD899A0", Offset = "0xD889A0", VA = "0x180D899A0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001826 RID: 6182
|
||||
// (get) Token: 0x060097D1 RID: 38865 RVA: 0x001EECF8 File Offset: 0x001ECEF8
|
||||
// (set) Token: 0x060097D2 RID: 38866 RVA: 0x001EED0C File Offset: 0x001ECF0C
|
||||
[Token(Token = "0x17001826")]
|
||||
internal long DownloadLength
|
||||
{
|
||||
[Token(Token = "0x60097D1")]
|
||||
[Address(RVA = "0x5BF220", Offset = "0x5BE220", VA = "0x1805BF220")]
|
||||
get;
|
||||
[Token(Token = "0x60097D2")]
|
||||
[Address(RVA = "0x5BF360", Offset = "0x5BE360", VA = "0x1805BF360")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001827 RID: 6183
|
||||
// (get) Token: 0x060097D3 RID: 38867 RVA: 0x001EED20 File Offset: 0x001ECF20
|
||||
// (set) Token: 0x060097D4 RID: 38868 RVA: 0x001EED34 File Offset: 0x001ECF34
|
||||
[Token(Token = "0x17001827")]
|
||||
internal bool DownloadProgressChanged
|
||||
{
|
||||
[Token(Token = "0x60097D3")]
|
||||
[Address(RVA = "0x4D9890", Offset = "0x4D8890", VA = "0x1804D9890")]
|
||||
get;
|
||||
[Token(Token = "0x60097D4")]
|
||||
[Address(RVA = "0x1619CB0", Offset = "0x1618CB0", VA = "0x181619CB0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001828 RID: 6184
|
||||
// (get) Token: 0x060097D5 RID: 38869 RVA: 0x001EED48 File Offset: 0x001ECF48
|
||||
[Token(Token = "0x17001828")]
|
||||
internal long UploadStreamLength
|
||||
{
|
||||
[Token(Token = "0x60097D5")]
|
||||
[Address(RVA = "0x2A7EEC0", Offset = "0x2A7DEC0", VA = "0x182A7EEC0")]
|
||||
get
|
||||
{
|
||||
if (this.<UploadStream>k__BackingField != (ulong)0L && this.<UseUploadStreamLength>k__BackingField)
|
||||
{
|
||||
bool canWrite = this.<UploadStream>k__BackingField.CanWrite;
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17001829 RID: 6185
|
||||
// (get) Token: 0x060097D6 RID: 38870 RVA: 0x001EED7C File Offset: 0x001ECF7C
|
||||
// (set) Token: 0x060097D7 RID: 38871 RVA: 0x001EED90 File Offset: 0x001ECF90
|
||||
[Token(Token = "0x17001829")]
|
||||
internal long Uploaded
|
||||
{
|
||||
[Token(Token = "0x60097D6")]
|
||||
[Address(RVA = "0x4D9850", Offset = "0x4D8850", VA = "0x1804D9850")]
|
||||
get;
|
||||
[Token(Token = "0x60097D7")]
|
||||
[Address(RVA = "0x5B7110", Offset = "0x5B6110", VA = "0x1805B7110")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x1700182A RID: 6186
|
||||
// (get) Token: 0x060097D8 RID: 38872 RVA: 0x001EEDA4 File Offset: 0x001ECFA4
|
||||
// (set) Token: 0x060097D9 RID: 38873 RVA: 0x001EEDB8 File Offset: 0x001ECFB8
|
||||
[Token(Token = "0x1700182A")]
|
||||
internal long UploadLength
|
||||
{
|
||||
[Token(Token = "0x60097D8")]
|
||||
[Address(RVA = "0xCBC4E0", Offset = "0xCBB4E0", VA = "0x180CBC4E0")]
|
||||
get;
|
||||
[Token(Token = "0x60097D9")]
|
||||
[Address(RVA = "0x141F2E0", Offset = "0x141E2E0", VA = "0x18141F2E0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x1700182B RID: 6187
|
||||
// (get) Token: 0x060097DA RID: 38874 RVA: 0x001EEDCC File Offset: 0x001ECFCC
|
||||
// (set) Token: 0x060097DB RID: 38875 RVA: 0x001EEDE0 File Offset: 0x001ECFE0
|
||||
[Token(Token = "0x1700182B")]
|
||||
internal bool UploadProgressChanged
|
||||
{
|
||||
[Token(Token = "0x60097DA")]
|
||||
[Address(RVA = "0xFB4420", Offset = "0xFB3420", VA = "0x180FB4420")]
|
||||
get;
|
||||
[Token(Token = "0x60097DB")]
|
||||
[Address(RVA = "0x1925640", Offset = "0x1924640", VA = "0x181925640")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x1700182C RID: 6188
|
||||
// (get) Token: 0x060097DC RID: 38876 RVA: 0x001EEDF4 File Offset: 0x001ECFF4
|
||||
// (set) Token: 0x060097DD RID: 38877 RVA: 0x001EEE08 File Offset: 0x001ED008
|
||||
[Token(Token = "0x1700182C")]
|
||||
private Dictionary<string, List<string>> Headers
|
||||
{
|
||||
[Token(Token = "0x60097DC")]
|
||||
[Address(RVA = "0xFB4610", Offset = "0xFB3610", VA = "0x180FB4610")]
|
||||
get;
|
||||
[Token(Token = "0x60097DD")]
|
||||
[Address(RVA = "0x141F390", Offset = "0x141E390", VA = "0x18141F390")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x060097DE RID: 38878 RVA: 0x001EEE1C File Offset: 0x001ED01C
|
||||
[Token(Token = "0x60097DE")]
|
||||
[Address(RVA = "0x2A7E4E0", Offset = "0x2A7D4E0", VA = "0x182A7E4E0")]
|
||||
public HTTPRequest(Uri uri)
|
||||
{
|
||||
bool <KeepAliveDefaultValue>k__BackingField = HTTPManager.<KeepAliveDefaultValue>k__BackingField;
|
||||
bool <IsCachingDisabled>k__BackingField = HTTPManager.<IsCachingDisabled>k__BackingField;
|
||||
}
|
||||
|
||||
// Token: 0x060097DF RID: 38879 RVA: 0x001EEE3C File Offset: 0x001ED03C
|
||||
[Token(Token = "0x60097DF")]
|
||||
[Address(RVA = "0x2A7E010", Offset = "0x2A7D010", VA = "0x182A7E010")]
|
||||
public HTTPRequest(Uri uri, OnRequestFinishedDelegate callback)
|
||||
{
|
||||
bool <KeepAliveDefaultValue>k__BackingField = HTTPManager.<KeepAliveDefaultValue>k__BackingField;
|
||||
bool <IsCachingDisabled>k__BackingField = HTTPManager.<IsCachingDisabled>k__BackingField;
|
||||
}
|
||||
|
||||
// Token: 0x060097E0 RID: 38880 RVA: 0x001EEE58 File Offset: 0x001ED058
|
||||
[Token(Token = "0x60097E0")]
|
||||
[Address(RVA = "0x2A7E3F0", Offset = "0x2A7D3F0", VA = "0x182A7E3F0")]
|
||||
public HTTPRequest(Uri uri, bool isKeepAlive, OnRequestFinishedDelegate callback)
|
||||
{
|
||||
bool <IsCachingDisabled>k__BackingField = HTTPManager.<IsCachingDisabled>k__BackingField;
|
||||
}
|
||||
|
||||
// Token: 0x060097E1 RID: 38881 RVA: 0x001EEE70 File Offset: 0x001ED070
|
||||
[Token(Token = "0x60097E1")]
|
||||
[Address(RVA = "0x2A7DFE0", Offset = "0x2A7CFE0", VA = "0x182A7DFE0")]
|
||||
public HTTPRequest(Uri uri, bool isKeepAlive, bool disableCache, OnRequestFinishedDelegate callback)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x060097E2 RID: 38882 RVA: 0x001EEE80 File Offset: 0x001ED080
|
||||
[Token(Token = "0x60097E2")]
|
||||
[Address(RVA = "0x2A7E140", Offset = "0x2A7D140", VA = "0x182A7E140")]
|
||||
public HTTPRequest(Uri uri, HTTPMethods methodType)
|
||||
{
|
||||
bool <KeepAliveDefaultValue>k__BackingField = HTTPManager.<KeepAliveDefaultValue>k__BackingField;
|
||||
}
|
||||
|
||||
// Token: 0x060097E3 RID: 38883 RVA: 0x001EEE9C File Offset: 0x001ED09C
|
||||
[Token(Token = "0x60097E3")]
|
||||
[Address(RVA = "0x2A7E290", Offset = "0x2A7D290", VA = "0x182A7E290")]
|
||||
public HTTPRequest(Uri uri, HTTPMethods methodType, OnRequestFinishedDelegate callback)
|
||||
{
|
||||
bool <KeepAliveDefaultValue>k__BackingField = HTTPManager.<KeepAliveDefaultValue>k__BackingField;
|
||||
}
|
||||
|
||||
// Token: 0x060097E4 RID: 38884 RVA: 0x001EEEB8 File Offset: 0x001ED0B8
|
||||
[Token(Token = "0x60097E4")]
|
||||
[Address(RVA = "0x2A7DED0", Offset = "0x2A7CED0", VA = "0x182A7DED0")]
|
||||
public HTTPRequest(Uri uri, HTTPMethods methodType, bool isKeepAlive, OnRequestFinishedDelegate callback)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x060097E5 RID: 38885 RVA: 0x001EEECC File Offset: 0x001ED0CC
|
||||
[Token(Token = "0x60097E5")]
|
||||
[Address(RVA = "0x2A7E600", Offset = "0x2A7D600", VA = "0x182A7E600")]
|
||||
public HTTPRequest(Uri uri, HTTPMethods methodType, bool isKeepAlive, bool disableCache, OnRequestFinishedDelegate callback)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (060097E5)
|
||||
|
||||
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: 0x060097E6 RID: 38886 RVA: 0x001EF04C File Offset: 0x001ED24C
|
||||
[Token(Token = "0x60097E6")]
|
||||
[Address(RVA = "0x2A7AEB0", Offset = "0x2A79EB0", VA = "0x182A7AEB0")]
|
||||
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: 0x060097E7 RID: 38887 RVA: 0x001EF088 File Offset: 0x001ED288
|
||||
[Token(Token = "0x60097E7")]
|
||||
[Address(RVA = "0x2A7AF70", Offset = "0x2A79F70", VA = "0x182A7AF70")]
|
||||
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: 0x060097E8 RID: 38888 RVA: 0x001EF0C4 File Offset: 0x001ED2C4
|
||||
[Token(Token = "0x60097E8")]
|
||||
[Address(RVA = "0x2A7ADC0", Offset = "0x2A79DC0", VA = "0x182A7ADC0")]
|
||||
public void AddBinaryData(string fieldName, byte[] content)
|
||||
{
|
||||
int num = 0;
|
||||
int num2 = 0;
|
||||
this.AddBinaryData(fieldName, content, num2, num);
|
||||
}
|
||||
|
||||
// Token: 0x060097E9 RID: 38889 RVA: 0x001EF0E0 File Offset: 0x001ED2E0
|
||||
[Token(Token = "0x60097E9")]
|
||||
[Address(RVA = "0x2A7ADE0", Offset = "0x2A79DE0", VA = "0x182A7ADE0")]
|
||||
public void AddBinaryData(string fieldName, byte[] content, string fileName)
|
||||
{
|
||||
int num = 0;
|
||||
this.AddBinaryData(fieldName, content, fileName, num);
|
||||
}
|
||||
|
||||
// Token: 0x060097EA RID: 38890 RVA: 0x001EF0FC File Offset: 0x001ED2FC
|
||||
[Token(Token = "0x60097EA")]
|
||||
[Address(RVA = "0x2A7AE00", Offset = "0x2A79E00", VA = "0x182A7AE00")]
|
||||
public void AddBinaryData(string fieldName, byte[] content, string fileName, string mimeType)
|
||||
{
|
||||
if (this.FieldCollector == 0)
|
||||
{
|
||||
HTTPFormBase httpformBase = new HTTPFormBase();
|
||||
this.FieldCollector = httpformBase;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x060097EB RID: 38891 RVA: 0x001EF128 File Offset: 0x001ED328
|
||||
[Token(Token = "0x60097EB")]
|
||||
[Address(RVA = "0x1423730", Offset = "0x1422730", VA = "0x181423730")]
|
||||
public void SetForm(HTTPFormBase form)
|
||||
{
|
||||
this.FormImpl = form;
|
||||
}
|
||||
|
||||
// Token: 0x060097EC RID: 38892 RVA: 0x001EF13C File Offset: 0x001ED33C
|
||||
[Token(Token = "0x60097EC")]
|
||||
[Address(RVA = "0x2A7C4F0", Offset = "0x2A7B4F0", VA = "0x182A7C4F0")]
|
||||
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: 0x060097ED RID: 38893 RVA: 0x001EF178 File Offset: 0x001ED378
|
||||
[Token(Token = "0x60097ED")]
|
||||
[Address(RVA = "0x2A7B2D0", Offset = "0x2A7A2D0", VA = "0x182A7B2D0")]
|
||||
public void ClearForm()
|
||||
{
|
||||
int num = 0;
|
||||
this.FormImpl = num;
|
||||
this.FieldCollector = num;
|
||||
}
|
||||
|
||||
// Token: 0x060097EE RID: 38894 RVA: 0x001EF198 File Offset: 0x001ED398
|
||||
[Token(Token = "0x60097EE")]
|
||||
[Address(RVA = "0x2A7C790", Offset = "0x2A7B790", VA = "0x182A7C790")]
|
||||
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: 0x060097EF RID: 38895 RVA: 0x001EF228 File Offset: 0x001ED428
|
||||
[Token(Token = "0x60097EF")]
|
||||
[Address(RVA = "0x2A7B020", Offset = "0x2A7A020", VA = "0x182A7B020")]
|
||||
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);
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
list.Add(value);
|
||||
}
|
||||
|
||||
// Token: 0x060097F0 RID: 38896 RVA: 0x001EF274 File Offset: 0x001ED474
|
||||
[Token(Token = "0x60097F0")]
|
||||
[Address(RVA = "0x2A7D490", Offset = "0x2A7C490", VA = "0x182A7D490")]
|
||||
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);
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
list.Clear();
|
||||
list.Add(value);
|
||||
}
|
||||
|
||||
// Token: 0x060097F1 RID: 38897 RVA: 0x001EF2C8 File Offset: 0x001ED4C8
|
||||
[Token(Token = "0x60097F1")]
|
||||
[Address(RVA = "0x2A7C690", Offset = "0x2A7B690", VA = "0x182A7C690")]
|
||||
public bool RemoveHeader(string name)
|
||||
{
|
||||
Dictionary<string, List<string>> dictionary = this.<Headers>k__BackingField;
|
||||
if (dictionary != 0)
|
||||
{
|
||||
return dictionary.Remove(name);
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x060097F2 RID: 38898 RVA: 0x001EF2EC File Offset: 0x001ED4EC
|
||||
[Token(Token = "0x60097F2")]
|
||||
[Address(RVA = "0x2A7C620", Offset = "0x2A7B620", VA = "0x182A7C620")]
|
||||
public bool HasHeader(string name)
|
||||
{
|
||||
Dictionary<string, List<string>> dictionary = this.<Headers>k__BackingField;
|
||||
if (dictionary == 0)
|
||||
{
|
||||
}
|
||||
return dictionary.ContainsKey(name);
|
||||
}
|
||||
|
||||
// Token: 0x060097F3 RID: 38899 RVA: 0x001EF310 File Offset: 0x001ED510
|
||||
[Token(Token = "0x60097F3")]
|
||||
[Address(RVA = "0x2A7C450", Offset = "0x2A7B450", VA = "0x182A7C450")]
|
||||
public string GetFirstHeaderValue(string name)
|
||||
{
|
||||
bool flag;
|
||||
if (this.<Headers>k__BackingField != 0 && flag && flag > false && !flag)
|
||||
{
|
||||
ThrowHelper.ThrowArgumentOutOfRangeException();
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x060097F4 RID: 38900 RVA: 0x001EF340 File Offset: 0x001ED540
|
||||
[Token(Token = "0x60097F4")]
|
||||
[Address(RVA = "0x2A7C5A0", Offset = "0x2A7B5A0", VA = "0x182A7C5A0")]
|
||||
public List<string> GetHeaderValues(string name)
|
||||
{
|
||||
bool flag;
|
||||
if (this.<Headers>k__BackingField == 0 || flag)
|
||||
{
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x060097F5 RID: 38901 RVA: 0x001EF364 File Offset: 0x001ED564
|
||||
[Token(Token = "0x60097F5")]
|
||||
[Address(RVA = "0x2A7C6F0", Offset = "0x2A7B6F0", VA = "0x182A7C6F0")]
|
||||
public void RemoveHeaders()
|
||||
{
|
||||
Dictionary<string, List<string>> dictionary = this.<Headers>k__BackingField;
|
||||
if (dictionary != 0)
|
||||
{
|
||||
dictionary.Clear();
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x060097F6 RID: 38902 RVA: 0x001EF384 File Offset: 0x001ED584
|
||||
[Token(Token = "0x60097F6")]
|
||||
[Address(RVA = "0x2A7D660", Offset = "0x2A7C660", VA = "0x182A7D660")]
|
||||
public void SetRangeHeader(int firstBytePos)
|
||||
{
|
||||
string text = string.Format("bytes={0}-", firstBytePos);
|
||||
this.SetHeader("Range", text);
|
||||
}
|
||||
|
||||
// Token: 0x060097F7 RID: 38903 RVA: 0x001EF3AC File Offset: 0x001ED5AC
|
||||
[Token(Token = "0x60097F7")]
|
||||
[Address(RVA = "0x2A7D5C0", Offset = "0x2A7C5C0", VA = "0x182A7D5C0")]
|
||||
public void SetRangeHeader(int firstBytePos, int lastBytePos)
|
||||
{
|
||||
string text = string.Format("bytes={0}-{1}", firstBytePos, lastBytePos);
|
||||
this.SetHeader("Range", text);
|
||||
}
|
||||
|
||||
// Token: 0x060097F8 RID: 38904 RVA: 0x001EF3D4 File Offset: 0x001ED5D4
|
||||
[Token(Token = "0x60097F8")]
|
||||
[Address(RVA = "0x2A7C380", Offset = "0x2A7B380", VA = "0x182A7C380")]
|
||||
public void EnumerateHeaders(OnHeaderEnumerationDelegate callback)
|
||||
{
|
||||
int num = 0;
|
||||
this.EnumerateHeaders(callback, num != 0);
|
||||
}
|
||||
|
||||
// Token: 0x060097F9 RID: 38905 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x60097F9")]
|
||||
[Address(RVA = "0x2A7B600", Offset = "0x2A7A600", VA = "0x182A7B600")]
|
||||
public void EnumerateHeaders(OnHeaderEnumerationDelegate callback, bool callBeforeSendCallback)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x060097FA RID: 38906 RVA: 0x001EF3EC File Offset: 0x001ED5EC
|
||||
[Token(Token = "0x60097FA")]
|
||||
[Address(RVA = "0x2A7C8F0", Offset = "0x2A7B8F0", VA = "0x182A7C8F0")]
|
||||
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: 0x060097FB RID: 38907 RVA: 0x001EF44C File Offset: 0x001ED64C
|
||||
[Token(Token = "0x60097FB")]
|
||||
[Address(RVA = "0x2A7B390", Offset = "0x2A7A390", VA = "0x182A7B390")]
|
||||
public string DumpHeaders()
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
BufferPoolMemoryStream bufferPoolMemoryStream = new BufferPoolMemoryStream();
|
||||
bufferPoolMemoryStream.canWrite = true;
|
||||
byte[] array;
|
||||
bufferPoolMemoryStream.internalBuffer = array;
|
||||
int length = array.Length;
|
||||
bufferPoolMemoryStream.capacity = length;
|
||||
bufferPoolMemoryStream.expandable = true;
|
||||
bufferPoolMemoryStream.allowGetBuffer = true;
|
||||
this.SendHeaders(bufferPoolMemoryStream);
|
||||
byte[] array2 = bufferPoolMemoryStream.ToArray();
|
||||
int length2;
|
||||
StringBuilder stringBuilder = new StringBuilder(length2);
|
||||
length2 = array2.Length;
|
||||
int length3 = array2.Length;
|
||||
if (num < length3)
|
||||
{
|
||||
byte b;
|
||||
StringBuilder stringBuilder2 = stringBuilder.Append((char)b);
|
||||
num++;
|
||||
}
|
||||
int hashCode = stringBuilder.GetHashCode();
|
||||
if (bufferPoolMemoryStream != 0)
|
||||
{
|
||||
}
|
||||
}
|
||||
while (num != 0);
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x060097FC RID: 38908 RVA: 0x001EF500 File Offset: 0x001ED700
|
||||
[Token(Token = "0x60097FC")]
|
||||
[Address(RVA = "0x2A7C3B0", Offset = "0x2A7B3B0", VA = "0x182A7C3B0")]
|
||||
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: 0x060097FD RID: 38909 RVA: 0x001EF548 File Offset: 0x001ED748
|
||||
[Token(Token = "0x60097FD")]
|
||||
[Address(RVA = "0x2A7CA40", Offset = "0x2A7BA40", VA = "0x182A7CA40")]
|
||||
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: 0x060097FE RID: 38910 RVA: 0x001EF7A4 File Offset: 0x001ED9A4
|
||||
[Token(Token = "0x60097FE")]
|
||||
[Address(RVA = "0x2A7D6E0", Offset = "0x2A7C6E0", VA = "0x182A7D6E0")]
|
||||
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: 0x060097FF RID: 38911 RVA: 0x001EF7F0 File Offset: 0x001ED9F0
|
||||
[Token(Token = "0x60097FF")]
|
||||
[Address(RVA = "0x2A7B140", Offset = "0x2A7A140", VA = "0x182A7B140")]
|
||||
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: 0x06009800 RID: 38912 RVA: 0x001EF828 File Offset: 0x001EDA28
|
||||
[Token(Token = "0x6009800")]
|
||||
[Address(RVA = "0x2A7B290", Offset = "0x2A7A290", VA = "0x182A7B290")]
|
||||
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: 0x06009801 RID: 38913 RVA: 0x001EF854 File Offset: 0x001EDA54
|
||||
[Token(Token = "0x6009801")]
|
||||
[Address(RVA = "0x2A7C390", Offset = "0x2A7B390", VA = "0x182A7C390")]
|
||||
internal void FinishStreaming()
|
||||
{
|
||||
HTTPResponse httpresponse = this.<Response>k__BackingField;
|
||||
if (httpresponse != 0 && this.useStreaming)
|
||||
{
|
||||
httpresponse.FinishStreaming();
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x06009802 RID: 38914 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x6009802")]
|
||||
[Address(RVA = "0x4242D0", Offset = "0x4232D0", VA = "0x1804242D0")]
|
||||
internal void Prepare()
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x06009803 RID: 38915 RVA: 0x001EF87C File Offset: 0x001EDA7C
|
||||
[Token(Token = "0x6009803")]
|
||||
[Address(RVA = "0x2A7B210", Offset = "0x2A7A210", VA = "0x182A7B210")]
|
||||
internal bool CallCustomCertificationValidator(X509Certificate cert, X509Chain chain)
|
||||
{
|
||||
Func<HTTPRequest, X509Certificate, X509Chain, bool> customCertificationValidator = this.CustomCertificationValidator;
|
||||
return customCertificationValidator == 0 || customCertificationValidator(this, cert, chain) != null;
|
||||
}
|
||||
|
||||
// Token: 0x06009804 RID: 38916 RVA: 0x001EF8A0 File Offset: 0x001EDAA0
|
||||
[Token(Token = "0x6009804")]
|
||||
[Address(RVA = "0x2A7D430", Offset = "0x2A7C430", VA = "0x182A7D430")]
|
||||
public HTTPRequest Send()
|
||||
{
|
||||
return HTTPManager.SendRequest(this);
|
||||
}
|
||||
|
||||
// Token: 0x06009805 RID: 38917 RVA: 0x001EF8B4 File Offset: 0x001EDAB4
|
||||
[Token(Token = "0x6009805")]
|
||||
[Address(RVA = "0x2A7A9F0", Offset = "0x2A799F0", VA = "0x182A7A9F0")]
|
||||
public void Abort()
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (06009805)
|
||||
|
||||
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: 0x06009806 RID: 38918 RVA: 0x001EF98C File Offset: 0x001EDB8C
|
||||
[Token(Token = "0x6009806")]
|
||||
[Address(RVA = "0x2A7B2F0", Offset = "0x2A7A2F0", VA = "0x182A7B2F0")]
|
||||
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: 0x06009807 RID: 38919 RVA: 0x001EF9D8 File Offset: 0x001EDBD8
|
||||
[Token(Token = "0x6009807")]
|
||||
[Address(RVA = "0x2A7D7C0", Offset = "0x2A7C7C0", VA = "0x182A7D7C0")]
|
||||
private void VerboseLogging(string str)
|
||||
{
|
||||
ILogger logger = HTTPManager.Logger;
|
||||
if (this.<IsRedirected>k__BackingField)
|
||||
{
|
||||
}
|
||||
int hashCode = this.<Uri>k__BackingField.GetHashCode();
|
||||
}
|
||||
|
||||
// Token: 0x1700182D RID: 6189
|
||||
// (get) Token: 0x06009808 RID: 38920 RVA: 0x001EFA08 File Offset: 0x001EDC08
|
||||
[Token(Token = "0x1700182D")]
|
||||
public object Current
|
||||
{
|
||||
[Token(Token = "0x6009808")]
|
||||
[Address(RVA = "0x4242C0", Offset = "0x4232C0", VA = "0x1804242C0", Slot = "5")]
|
||||
get
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x06009809 RID: 38921 RVA: 0x001EFA18 File Offset: 0x001EDC18
|
||||
[Token(Token = "0x6009809")]
|
||||
[Address(RVA = "0x2A7C680", Offset = "0x2A7B680", VA = "0x182A7C680", Slot = "4")]
|
||||
public bool MoveNext()
|
||||
{
|
||||
return this.<State>k__BackingField < HTTPRequestStates.Finished;
|
||||
}
|
||||
|
||||
// Token: 0x0600980A RID: 38922 RVA: 0x001EFA30 File Offset: 0x001EDC30
|
||||
[Token(Token = "0x600980A")]
|
||||
[Address(RVA = "0x2A7C740", Offset = "0x2A7B740", VA = "0x182A7C740", Slot = "6")]
|
||||
public void Reset()
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600980A)
|
||||
|
||||
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: 0x1700182E RID: 6190
|
||||
// (get) Token: 0x0600980B RID: 38923 RVA: 0x001EFA44 File Offset: 0x001EDC44
|
||||
[Token(Token = "0x1700182E")]
|
||||
HTTPRequest IEnumerator<HTTPRequest>.Current
|
||||
{
|
||||
[Token(Token = "0x600980B")]
|
||||
[Address(RVA = "0x4A65C0", Offset = "0x4A55C0", VA = "0x1804A65C0", Slot = "7")]
|
||||
get
|
||||
{
|
||||
return this;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600980C RID: 38924 RVA: 0x001EFA54 File Offset: 0x001EDC54
|
||||
[Token(Token = "0x600980C")]
|
||||
[Address(RVA = "0x2A7B370", Offset = "0x2A7A370", VA = "0x182A7B370", Slot = "8")]
|
||||
public void Dispose()
|
||||
{
|
||||
HTTPResponse httpresponse = this.<Response>k__BackingField;
|
||||
if (httpresponse != 0)
|
||||
{
|
||||
httpresponse.Dispose();
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600980D RID: 38925 RVA: 0x001EFA74 File Offset: 0x001EDC74
|
||||
// Note: this type is marked as 'beforefieldinit'.
|
||||
[Token(Token = "0x600980D")]
|
||||
[Address(RVA = "0x2A7D8A0", Offset = "0x2A7C8A0", VA = "0x182A7D8A0")]
|
||||
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: 0x0400668A RID: 26250
|
||||
[Token(Token = "0x400668A")]
|
||||
public static readonly byte[] EOL;
|
||||
|
||||
// Token: 0x0400668B RID: 26251
|
||||
[Token(Token = "0x400668B")]
|
||||
public static readonly string[] MethodNames;
|
||||
|
||||
// Token: 0x0400668C RID: 26252
|
||||
[Token(Token = "0x400668C")]
|
||||
public static int UploadChunkSize;
|
||||
|
||||
// Token: 0x04006693 RID: 26259
|
||||
[FieldOffset(Offset = "0x38")]
|
||||
[Token(Token = "0x4006693")]
|
||||
public OnUploadProgressDelegate OnUploadProgress;
|
||||
|
||||
// Token: 0x04006696 RID: 26262
|
||||
[FieldOffset(Offset = "0x50")]
|
||||
[Token(Token = "0x4006696")]
|
||||
public OnDownloadProgressDelegate OnProgress;
|
||||
|
||||
// Token: 0x04006697 RID: 26263
|
||||
[FieldOffset(Offset = "0x58")]
|
||||
[Token(Token = "0x4006697")]
|
||||
public OnRequestFinishedDelegate OnUpgraded;
|
||||
|
||||
// Token: 0x040066A4 RID: 26276
|
||||
[FieldOffset(Offset = "0xA8")]
|
||||
[Token(Token = "0x40066A4")]
|
||||
private List<Cookie> customCookies;
|
||||
|
||||
// Token: 0x040066B2 RID: 26290
|
||||
[FieldOffset(Offset = "0x100")]
|
||||
[Token(Token = "0x40066B2")]
|
||||
private OnBeforeRedirectionDelegate onBeforeRedirection;
|
||||
|
||||
// Token: 0x040066B3 RID: 26291
|
||||
[FieldOffset(Offset = "0x108")]
|
||||
[Token(Token = "0x40066B3")]
|
||||
private OnBeforeHeaderSendDelegate _onBeforeHeaderSend;
|
||||
|
||||
// Token: 0x040066BC RID: 26300
|
||||
[FieldOffset(Offset = "0x149")]
|
||||
[Token(Token = "0x40066BC")]
|
||||
private bool isKeepAlive;
|
||||
|
||||
// Token: 0x040066BD RID: 26301
|
||||
[FieldOffset(Offset = "0x14A")]
|
||||
[Token(Token = "0x40066BD")]
|
||||
private bool disableCache;
|
||||
|
||||
// Token: 0x040066BE RID: 26302
|
||||
[FieldOffset(Offset = "0x14B")]
|
||||
[Token(Token = "0x40066BE")]
|
||||
private bool cacheOnly;
|
||||
|
||||
// Token: 0x040066BF RID: 26303
|
||||
[FieldOffset(Offset = "0x14C")]
|
||||
[Token(Token = "0x40066BF")]
|
||||
private int streamFragmentSize;
|
||||
|
||||
// Token: 0x040066C0 RID: 26304
|
||||
[FieldOffset(Offset = "0x150")]
|
||||
[Token(Token = "0x40066C0")]
|
||||
private bool useStreaming;
|
||||
|
||||
// Token: 0x040066C2 RID: 26306
|
||||
[FieldOffset(Offset = "0x160")]
|
||||
[Token(Token = "0x40066C2")]
|
||||
private HTTPFormBase FieldCollector;
|
||||
|
||||
// Token: 0x040066C3 RID: 26307
|
||||
[FieldOffset(Offset = "0x168")]
|
||||
[Token(Token = "0x40066C3")]
|
||||
private HTTPFormBase FormImpl;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,35 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP
|
||||
{
|
||||
// Token: 0x0200197B RID: 6523
|
||||
[Token(Token = "0x200197B")]
|
||||
public enum HTTPRequestStates
|
||||
{
|
||||
// Token: 0x04006682 RID: 26242
|
||||
[Token(Token = "0x4006682")]
|
||||
Initial,
|
||||
// Token: 0x04006683 RID: 26243
|
||||
[Token(Token = "0x4006683")]
|
||||
Queued,
|
||||
// Token: 0x04006684 RID: 26244
|
||||
[Token(Token = "0x4006684")]
|
||||
Processing,
|
||||
// Token: 0x04006685 RID: 26245
|
||||
[Token(Token = "0x4006685")]
|
||||
Finished,
|
||||
// Token: 0x04006686 RID: 26246
|
||||
[Token(Token = "0x4006686")]
|
||||
Error,
|
||||
// Token: 0x04006687 RID: 26247
|
||||
[Token(Token = "0x4006687")]
|
||||
Aborted,
|
||||
// Token: 0x04006688 RID: 26248
|
||||
[Token(Token = "0x4006688")]
|
||||
ConnectionTimedOut,
|
||||
// Token: 0x04006689 RID: 26249
|
||||
[Token(Token = "0x4006689")]
|
||||
TimedOut
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,1447 @@
|
||||
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: 0x02001986 RID: 6534
|
||||
[Token(Token = "0x2001986")]
|
||||
public class HTTPResponse : IDisposable
|
||||
{
|
||||
// Token: 0x17001830 RID: 6192
|
||||
// (get) Token: 0x06009814 RID: 38932 RVA: 0x001EFBBC File Offset: 0x001EDDBC
|
||||
// (set) Token: 0x06009815 RID: 38933 RVA: 0x001EFBD0 File Offset: 0x001EDDD0
|
||||
[Token(Token = "0x17001830")]
|
||||
public int VersionMajor
|
||||
{
|
||||
[Token(Token = "0x6009814")]
|
||||
[Address(RVA = "0x40F000", Offset = "0x40E000", VA = "0x18040F000")]
|
||||
get;
|
||||
[Token(Token = "0x6009815")]
|
||||
[Address(RVA = "0x470D10", Offset = "0x46FD10", VA = "0x180470D10")]
|
||||
protected set;
|
||||
}
|
||||
|
||||
// Token: 0x17001831 RID: 6193
|
||||
// (get) Token: 0x06009816 RID: 38934 RVA: 0x001EFBE4 File Offset: 0x001EDDE4
|
||||
// (set) Token: 0x06009817 RID: 38935 RVA: 0x001EFBF8 File Offset: 0x001EDDF8
|
||||
[Token(Token = "0x17001831")]
|
||||
public int VersionMinor
|
||||
{
|
||||
[Token(Token = "0x6009816")]
|
||||
[Address(RVA = "0x4936D0", Offset = "0x4926D0", VA = "0x1804936D0")]
|
||||
get;
|
||||
[Token(Token = "0x6009817")]
|
||||
[Address(RVA = "0x5F1920", Offset = "0x5F0920", VA = "0x1805F1920")]
|
||||
protected set;
|
||||
}
|
||||
|
||||
// Token: 0x17001832 RID: 6194
|
||||
// (get) Token: 0x06009818 RID: 38936 RVA: 0x001EFC0C File Offset: 0x001EDE0C
|
||||
// (set) Token: 0x06009819 RID: 38937 RVA: 0x001EFC20 File Offset: 0x001EDE20
|
||||
[Token(Token = "0x17001832")]
|
||||
public int StatusCode
|
||||
{
|
||||
[Token(Token = "0x6009818")]
|
||||
[Address(RVA = "0x411540", Offset = "0x410540", VA = "0x180411540")]
|
||||
get;
|
||||
[Token(Token = "0x6009819")]
|
||||
[Address(RVA = "0x5F1910", Offset = "0x5F0910", VA = "0x1805F1910")]
|
||||
protected set;
|
||||
}
|
||||
|
||||
// Token: 0x17001833 RID: 6195
|
||||
// (get) Token: 0x0600981A RID: 38938 RVA: 0x001EFC34 File Offset: 0x001EDE34
|
||||
[Token(Token = "0x17001833")]
|
||||
public bool IsSuccess
|
||||
{
|
||||
[Token(Token = "0x600981A")]
|
||||
[Address(RVA = "0x229F670", Offset = "0x229E670", VA = "0x18229F670")]
|
||||
get
|
||||
{
|
||||
int num = this.<StatusCode>k__BackingField;
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17001834 RID: 6196
|
||||
// (get) Token: 0x0600981B RID: 38939 RVA: 0x001EFC54 File Offset: 0x001EDE54
|
||||
// (set) Token: 0x0600981C RID: 38940 RVA: 0x001EFC68 File Offset: 0x001EDE68
|
||||
[Token(Token = "0x17001834")]
|
||||
public string Message
|
||||
{
|
||||
[Token(Token = "0x600981B")]
|
||||
[Address(RVA = "0x4157C0", Offset = "0x4147C0", VA = "0x1804157C0")]
|
||||
get;
|
||||
[Token(Token = "0x600981C")]
|
||||
[Address(RVA = "0x415810", Offset = "0x414810", VA = "0x180415810")]
|
||||
protected set;
|
||||
}
|
||||
|
||||
// Token: 0x17001835 RID: 6197
|
||||
// (get) Token: 0x0600981D RID: 38941 RVA: 0x001EFC7C File Offset: 0x001EDE7C
|
||||
// (set) Token: 0x0600981E RID: 38942 RVA: 0x001EFC90 File Offset: 0x001EDE90
|
||||
[Token(Token = "0x17001835")]
|
||||
public bool IsStreamed
|
||||
{
|
||||
[Token(Token = "0x600981D")]
|
||||
[Address(RVA = "0x51F260", Offset = "0x51E260", VA = "0x18051F260")]
|
||||
get;
|
||||
[Token(Token = "0x600981E")]
|
||||
[Address(RVA = "0x51F2B0", Offset = "0x51E2B0", VA = "0x18051F2B0")]
|
||||
protected set;
|
||||
}
|
||||
|
||||
// Token: 0x17001836 RID: 6198
|
||||
// (get) Token: 0x0600981F RID: 38943 RVA: 0x001EFCA4 File Offset: 0x001EDEA4
|
||||
// (set) Token: 0x06009820 RID: 38944 RVA: 0x001EFCB8 File Offset: 0x001EDEB8
|
||||
[Token(Token = "0x17001836")]
|
||||
public bool IsStreamingFinished
|
||||
{
|
||||
[Token(Token = "0x600981F")]
|
||||
[Address(RVA = "0x844B90", Offset = "0x843B90", VA = "0x180844B90")]
|
||||
get;
|
||||
[Token(Token = "0x6009820")]
|
||||
[Address(RVA = "0x844B60", Offset = "0x843B60", VA = "0x180844B60")]
|
||||
internal set;
|
||||
}
|
||||
|
||||
// Token: 0x17001837 RID: 6199
|
||||
// (get) Token: 0x06009821 RID: 38945 RVA: 0x001EFCCC File Offset: 0x001EDECC
|
||||
// (set) Token: 0x06009822 RID: 38946 RVA: 0x001EFCE0 File Offset: 0x001EDEE0
|
||||
[Token(Token = "0x17001837")]
|
||||
public bool IsFromCache
|
||||
{
|
||||
[Token(Token = "0x6009821")]
|
||||
[Address(RVA = "0xAC2F30", Offset = "0xAC1F30", VA = "0x180AC2F30")]
|
||||
get;
|
||||
[Token(Token = "0x6009822")]
|
||||
[Address(RVA = "0x113EE50", Offset = "0x113DE50", VA = "0x18113EE50")]
|
||||
internal set;
|
||||
}
|
||||
|
||||
// Token: 0x17001838 RID: 6200
|
||||
// (get) Token: 0x06009823 RID: 38947 RVA: 0x001EFCF4 File Offset: 0x001EDEF4
|
||||
// (set) Token: 0x06009824 RID: 38948 RVA: 0x001EFD08 File Offset: 0x001EDF08
|
||||
[Token(Token = "0x17001838")]
|
||||
public HTTPCacheFileInfo CacheFileInfo
|
||||
{
|
||||
[Token(Token = "0x6009823")]
|
||||
[Address(RVA = "0x4157E0", Offset = "0x4147E0", VA = "0x1804157E0")]
|
||||
get;
|
||||
[Token(Token = "0x6009824")]
|
||||
[Address(RVA = "0x415830", Offset = "0x414830", VA = "0x180415830")]
|
||||
internal set;
|
||||
}
|
||||
|
||||
// Token: 0x17001839 RID: 6201
|
||||
// (get) Token: 0x06009825 RID: 38949 RVA: 0x001EFD1C File Offset: 0x001EDF1C
|
||||
// (set) Token: 0x06009826 RID: 38950 RVA: 0x001EFD30 File Offset: 0x001EDF30
|
||||
[Token(Token = "0x17001839")]
|
||||
public bool IsCacheOnly
|
||||
{
|
||||
[Token(Token = "0x6009825")]
|
||||
[Address(RVA = "0x417650", Offset = "0x416650", VA = "0x180417650")]
|
||||
get;
|
||||
[Token(Token = "0x6009826")]
|
||||
[Address(RVA = "0x417950", Offset = "0x416950", VA = "0x180417950")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x1700183A RID: 6202
|
||||
// (get) Token: 0x06009827 RID: 38951 RVA: 0x001EFD44 File Offset: 0x001EDF44
|
||||
// (set) Token: 0x06009828 RID: 38952 RVA: 0x001EFD58 File Offset: 0x001EDF58
|
||||
[Token(Token = "0x1700183A")]
|
||||
public Dictionary<string, List<string>> Headers
|
||||
{
|
||||
[Token(Token = "0x6009827")]
|
||||
[Address(RVA = "0x417680", Offset = "0x416680", VA = "0x180417680")]
|
||||
get;
|
||||
[Token(Token = "0x6009828")]
|
||||
[Address(RVA = "0x417960", Offset = "0x416960", VA = "0x180417960")]
|
||||
protected set;
|
||||
}
|
||||
|
||||
// Token: 0x1700183B RID: 6203
|
||||
// (get) Token: 0x06009829 RID: 38953 RVA: 0x001EFD6C File Offset: 0x001EDF6C
|
||||
// (set) Token: 0x0600982A RID: 38954 RVA: 0x001EFD80 File Offset: 0x001EDF80
|
||||
[Token(Token = "0x1700183B")]
|
||||
public byte[] Data
|
||||
{
|
||||
[Token(Token = "0x6009829")]
|
||||
[Address(RVA = "0x4975A0", Offset = "0x4965A0", VA = "0x1804975A0")]
|
||||
get;
|
||||
[Token(Token = "0x600982A")]
|
||||
[Address(RVA = "0x55BCF0", Offset = "0x55ACF0", VA = "0x18055BCF0")]
|
||||
internal set;
|
||||
}
|
||||
|
||||
// Token: 0x1700183C RID: 6204
|
||||
// (get) Token: 0x0600982B RID: 38955 RVA: 0x001EFD94 File Offset: 0x001EDF94
|
||||
// (set) Token: 0x0600982C RID: 38956 RVA: 0x001EFDA8 File Offset: 0x001EDFA8
|
||||
[Token(Token = "0x1700183C")]
|
||||
public bool IsUpgraded
|
||||
{
|
||||
[Token(Token = "0x600982B")]
|
||||
[Address(RVA = "0x41CF80", Offset = "0x41BF80", VA = "0x18041CF80")]
|
||||
get;
|
||||
[Token(Token = "0x600982C")]
|
||||
[Address(RVA = "0x41D090", Offset = "0x41C090", VA = "0x18041D090")]
|
||||
protected set;
|
||||
}
|
||||
|
||||
// Token: 0x1700183D RID: 6205
|
||||
// (get) Token: 0x0600982D RID: 38957 RVA: 0x001EFDBC File Offset: 0x001EDFBC
|
||||
// (set) Token: 0x0600982E RID: 38958 RVA: 0x001EFDD0 File Offset: 0x001EDFD0
|
||||
[Token(Token = "0x1700183D")]
|
||||
public List<Cookie> Cookies
|
||||
{
|
||||
[Token(Token = "0x600982D")]
|
||||
[Address(RVA = "0x417710", Offset = "0x416710", VA = "0x180417710")]
|
||||
get;
|
||||
[Token(Token = "0x600982E")]
|
||||
[Address(RVA = "0x417A10", Offset = "0x416A10", VA = "0x180417A10")]
|
||||
internal set;
|
||||
}
|
||||
|
||||
// Token: 0x1700183E RID: 6206
|
||||
// (get) Token: 0x0600982F RID: 38959 RVA: 0x001EFDE4 File Offset: 0x001EDFE4
|
||||
[Token(Token = "0x1700183E")]
|
||||
public string DataAsText
|
||||
{
|
||||
[Token(Token = "0x600982F")]
|
||||
[Address(RVA = "0x229F500", Offset = "0x229E500", VA = "0x18229F500")]
|
||||
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: 0x1700183F RID: 6207
|
||||
// (get) Token: 0x06009830 RID: 38960 RVA: 0x001EFE3C File Offset: 0x001EE03C
|
||||
[Token(Token = "0x1700183F")]
|
||||
public Texture2D DataAsTexture2D
|
||||
{
|
||||
[Token(Token = "0x6009830")]
|
||||
[Address(RVA = "0x229F5A0", Offset = "0x229E5A0", VA = "0x18229F5A0")]
|
||||
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: 0x17001840 RID: 6208
|
||||
// (get) Token: 0x06009831 RID: 38961 RVA: 0x001EFEA0 File Offset: 0x001EE0A0
|
||||
// (set) Token: 0x06009832 RID: 38962 RVA: 0x001EFEB4 File Offset: 0x001EE0B4
|
||||
[Token(Token = "0x17001840")]
|
||||
public bool IsClosedManually
|
||||
{
|
||||
[Token(Token = "0x6009831")]
|
||||
[Address(RVA = "0x6B48A0", Offset = "0x6B38A0", VA = "0x1806B48A0")]
|
||||
get;
|
||||
[Token(Token = "0x6009832")]
|
||||
[Address(RVA = "0x6B48F0", Offset = "0x6B38F0", VA = "0x1806B48F0")]
|
||||
protected set;
|
||||
}
|
||||
|
||||
// Token: 0x06009833 RID: 38963 RVA: 0x001EFEC8 File Offset: 0x001EE0C8
|
||||
[Token(Token = "0x6009833")]
|
||||
[Address(RVA = "0x229F440", Offset = "0x229E440", VA = "0x18229F440")]
|
||||
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: 0x06009834 RID: 38964 RVA: 0x001EFF20 File Offset: 0x001EE120
|
||||
[Token(Token = "0x6009834")]
|
||||
[Address(RVA = "0x229EA10", Offset = "0x229DA10", VA = "0x18229EA10", 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)
|
||||
{
|
||||
int num4 = int.Parse(text8);
|
||||
this.<StatusCode>k__BackingField = num4;
|
||||
int stringLength = text8.m_stringLength;
|
||||
if (stringLength <= 0)
|
||||
{
|
||||
goto IL_190;
|
||||
}
|
||||
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)
|
||||
{
|
||||
string text10 = this.<Message>k__BackingField;
|
||||
string text11 = string.Format("Status Message: '{0}'", text10);
|
||||
this.VerboseLogging(text11);
|
||||
goto IL_190;
|
||||
}
|
||||
IL_1C9:
|
||||
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;
|
||||
}
|
||||
goto IL_238;
|
||||
IL_190:
|
||||
BestHTTP.Logger.ILogger logger2 = HTTPManager.Logger;
|
||||
int hashCode = this.baseRequest.CurrentUri.GetHashCode();
|
||||
string text12 = string.Format("{0} - Skipping Status Message reading!", hashCode);
|
||||
string empty = string.Empty;
|
||||
this.<Message>k__BackingField = empty;
|
||||
goto IL_1C9;
|
||||
}
|
||||
goto IL_27B;
|
||||
}
|
||||
IL_238:
|
||||
HTTPRequest httprequest = this.baseRequest;
|
||||
if (!httprequest.<DisableRetry>k__BackingField && !httprequest.<DisableRetry>k__BackingField)
|
||||
{
|
||||
goto Block_12;
|
||||
}
|
||||
}
|
||||
return this.ReadPayload(forceReadRawContentLength);
|
||||
Block_12:
|
||||
BestHTTP.Logger.ILogger logger3 = HTTPManager.Logger;
|
||||
Uri uri;
|
||||
int hashCode2 = uri.GetHashCode();
|
||||
string text13 = string.Format("{0} - Failed to read Status Line! Retry is enabled, returning with false.", hashCode2);
|
||||
IL_27B:
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x06009835 RID: 38965 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x6009835")]
|
||||
[Address(RVA = "0x229D770", Offset = "0x229C770", VA = "0x18229D770")]
|
||||
protected bool ReadPayload(int forceReadRawContentLength)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x06009836 RID: 38966 RVA: 0x001F01B0 File Offset: 0x001EE3B0
|
||||
[Token(Token = "0x6009836")]
|
||||
[Address(RVA = "0x229D620", Offset = "0x229C620", VA = "0x18229D620")]
|
||||
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: 0x06009837 RID: 38967 RVA: 0x001F0210 File Offset: 0x001EE410
|
||||
[Token(Token = "0x6009837")]
|
||||
[Address(RVA = "0x229B240", Offset = "0x229A240", VA = "0x18229B240")]
|
||||
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);
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
list.Add(value);
|
||||
}
|
||||
|
||||
// Token: 0x06009838 RID: 38968 RVA: 0x001F0264 File Offset: 0x001EE464
|
||||
[Token(Token = "0x6009838")]
|
||||
[Address(RVA = "0x229C4D0", Offset = "0x229B4D0", VA = "0x18229C4D0")]
|
||||
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: 0x06009839 RID: 38969 RVA: 0x001F0298 File Offset: 0x001EE498
|
||||
[Token(Token = "0x6009839")]
|
||||
[Address(RVA = "0x229C420", Offset = "0x229B420", VA = "0x18229C420")]
|
||||
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: 0x0600983A RID: 38970 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600983A")]
|
||||
[Address(RVA = "0x229CA00", Offset = "0x229BA00", VA = "0x18229CA00")]
|
||||
public bool HasHeaderWithValue(string headerName, string value)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x0600983B RID: 38971 RVA: 0x001F02D0 File Offset: 0x001EE4D0
|
||||
[Token(Token = "0x600983B")]
|
||||
[Address(RVA = "0x229CAB0", Offset = "0x229BAB0", VA = "0x18229CAB0")]
|
||||
public bool HasHeader(string headerName)
|
||||
{
|
||||
return this.GetHeaderValues(headerName) != 0;
|
||||
}
|
||||
|
||||
// Token: 0x0600983C RID: 38972 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600983C")]
|
||||
[Address(RVA = "0x229C570", Offset = "0x229B570", VA = "0x18229C570")]
|
||||
public HTTPRange GetRange()
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x0600983D RID: 38973 RVA: 0x001F02EC File Offset: 0x001EE4EC
|
||||
[Token(Token = "0x600983D")]
|
||||
[Address(RVA = "0x229DEC0", Offset = "0x229CEC0", VA = "0x18229DEC0")]
|
||||
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: 0x0600983E RID: 38974 RVA: 0x001F0360 File Offset: 0x001EE560
|
||||
[Token(Token = "0x600983E")]
|
||||
[Address(RVA = "0x229E190", Offset = "0x229D190", VA = "0x18229E190")]
|
||||
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: 0x0600983F RID: 38975 RVA: 0x001F03DC File Offset: 0x001EE5DC
|
||||
[Token(Token = "0x600983F")]
|
||||
[Address(RVA = "0x229CBB0", Offset = "0x229BBB0", VA = "0x18229CBB0")]
|
||||
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: 0x06009840 RID: 38976 RVA: 0x001F0440 File Offset: 0x001EE640
|
||||
[Token(Token = "0x6009840")]
|
||||
[Address(RVA = "0x229CE20", Offset = "0x229BE20", VA = "0x18229CE20")]
|
||||
protected int ReadChunkLength(Stream stream)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (06009840)
|
||||
|
||||
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: 0x06009841 RID: 38977 RVA: 0x001F049C File Offset: 0x001EE69C
|
||||
[Token(Token = "0x6009841")]
|
||||
[Address(RVA = "0x229CF40", Offset = "0x229BF40", VA = "0x18229CF40")]
|
||||
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: 0x06009842 RID: 38978 RVA: 0x001F074C File Offset: 0x001EE94C
|
||||
[Token(Token = "0x6009842")]
|
||||
[Address(RVA = "0x229D930", Offset = "0x229C930", VA = "0x18229D930")]
|
||||
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: 0x06009843 RID: 38979 RVA: 0x001F0918 File Offset: 0x001EEB18
|
||||
[Token(Token = "0x6009843")]
|
||||
[Address(RVA = "0x229E470", Offset = "0x229D470", VA = "0x18229E470")]
|
||||
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: 0x06009844 RID: 38980 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x6009844")]
|
||||
[Address(RVA = "0x229B720", Offset = "0x229A720", VA = "0x18229B720")]
|
||||
protected byte[] DecodeStream(BufferPoolMemoryStream streamToDecode)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x06009845 RID: 38981 RVA: 0x001F0BAC File Offset: 0x001EEDAC
|
||||
[Token(Token = "0x6009845")]
|
||||
[Address(RVA = "0x229B6B0", Offset = "0x229A6B0", VA = "0x18229B6B0")]
|
||||
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: 0x06009846 RID: 38982 RVA: 0x001F0C04 File Offset: 0x001EEE04
|
||||
[Token(Token = "0x6009846")]
|
||||
[Address(RVA = "0x229B9F0", Offset = "0x229A9F0", VA = "0x18229B9F0")]
|
||||
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: 0x06009847 RID: 38983 RVA: 0x001F0C6C File Offset: 0x001EEE6C
|
||||
[Token(Token = "0x6009847")]
|
||||
[Address(RVA = "0x229B580", Offset = "0x229A580", VA = "0x18229B580")]
|
||||
protected void BeginReceiveStreamFragments()
|
||||
{
|
||||
HTTPRequest httprequest = this.baseRequest;
|
||||
if (!httprequest.disableCache && httprequest.useStreaming && !this.<IsFromCache>k__BackingField)
|
||||
{
|
||||
Uri currentUri = httprequest.CurrentUri;
|
||||
HTTPMethods <MethodType>k__BackingField = this.baseRequest.<MethodType>k__BackingField;
|
||||
if (HTTPCacheService.IsCacheble(currentUri, <MethodType>k__BackingField, this))
|
||||
{
|
||||
Stream stream = HTTPCacheService.PrepareStreamed(this.baseRequest.CurrentUri, this);
|
||||
this.cacheStream = stream;
|
||||
}
|
||||
}
|
||||
this.allFragmentSize = (int)((ulong)0L);
|
||||
}
|
||||
|
||||
// Token: 0x06009848 RID: 38984 RVA: 0x001F0CE4 File Offset: 0x001EEEE4
|
||||
[Token(Token = "0x6009848")]
|
||||
[Address(RVA = "0x229BDA0", Offset = "0x229ADA0", VA = "0x18229BDA0")]
|
||||
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: 0x06009849 RID: 38985 RVA: 0x001F0E0C File Offset: 0x001EF00C
|
||||
[Token(Token = "0x6009849")]
|
||||
[Address(RVA = "0x229C130", Offset = "0x229B130", VA = "0x18229C130")]
|
||||
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;
|
||||
Uri currentUri = httprequest.CurrentUri;
|
||||
int num2 = this.allFragmentSize;
|
||||
HTTPCacheService.SetBodyLength(currentUri, num2);
|
||||
}
|
||||
AutoResetEvent autoResetEvent = this.fragmentWaitEvent;
|
||||
this.fragmentWaitEvent = num;
|
||||
if (autoResetEvent != 0)
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600984A RID: 38986 RVA: 0x001F0E94 File Offset: 0x001EF094
|
||||
[Token(Token = "0x600984A")]
|
||||
[Address(RVA = "0x229B360", Offset = "0x229A360", VA = "0x18229B360")]
|
||||
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: 0x0600984B RID: 38987 RVA: 0x001F0F58 File Offset: 0x001EF158
|
||||
[Token(Token = "0x600984B")]
|
||||
[Address(RVA = "0x229F340", Offset = "0x229E340", VA = "0x18229F340")]
|
||||
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: 0x0600984C RID: 38988 RVA: 0x001F0FB8 File Offset: 0x001EF1B8
|
||||
[Token(Token = "0x600984C")]
|
||||
[Address(RVA = "0x229C270", Offset = "0x229B270", VA = "0x18229C270")]
|
||||
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: 0x0600984D RID: 38989 RVA: 0x001F1058 File Offset: 0x001EF258
|
||||
[Token(Token = "0x600984D")]
|
||||
[Address(RVA = "0x229C7B0", Offset = "0x229B7B0", VA = "0x18229C7B0")]
|
||||
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: 0x0600984E RID: 38990 RVA: 0x001F1114 File Offset: 0x001EF314
|
||||
[Token(Token = "0x600984E")]
|
||||
[Address(RVA = "0x229CAD0", Offset = "0x229BAD0", VA = "0x18229CAD0")]
|
||||
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: 0x0600984F RID: 38991 RVA: 0x001F1168 File Offset: 0x001EF368
|
||||
[Token(Token = "0x600984F")]
|
||||
[Address(RVA = "0x229BFE0", Offset = "0x229AFE0", VA = "0x18229BFE0")]
|
||||
internal void FinishStreaming()
|
||||
{
|
||||
if (HTTPManager.Logger == 0)
|
||||
{
|
||||
this.VerboseLogging("FinishStreaming");
|
||||
}
|
||||
this.<IsStreamingFinished>k__BackingField = true;
|
||||
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: 0x06009850 RID: 38992 RVA: 0x001F11D4 File Offset: 0x001EF3D4
|
||||
[Token(Token = "0x6009850")]
|
||||
[Address(RVA = "0x229F210", Offset = "0x229E210", VA = "0x18229F210")]
|
||||
private void VerboseLogging(string str)
|
||||
{
|
||||
if (HTTPManager.Logger == 0)
|
||||
{
|
||||
BestHTTP.Logger.ILogger logger = HTTPManager.Logger;
|
||||
int hashCode = this.baseRequest.CurrentUri.GetHashCode();
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x06009851 RID: 38993 RVA: 0x001F120C File Offset: 0x001EF40C
|
||||
[Token(Token = "0x6009851")]
|
||||
[Address(RVA = "0x229BCC0", Offset = "0x229ACC0", VA = "0x18229BCC0", 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: 0x040066C7 RID: 26311
|
||||
[Token(Token = "0x40066C7")]
|
||||
internal const byte CR = 13;
|
||||
|
||||
// Token: 0x040066C8 RID: 26312
|
||||
[Token(Token = "0x40066C8")]
|
||||
internal const byte LF = 10;
|
||||
|
||||
// Token: 0x040066C9 RID: 26313
|
||||
[Token(Token = "0x40066C9")]
|
||||
public const int MinBufferSize = 4096;
|
||||
|
||||
// Token: 0x040066D7 RID: 26327
|
||||
[FieldOffset(Offset = "0x60")]
|
||||
[Token(Token = "0x40066D7")]
|
||||
protected string dataAsText;
|
||||
|
||||
// Token: 0x040066D8 RID: 26328
|
||||
[FieldOffset(Offset = "0x68")]
|
||||
[Token(Token = "0x40066D8")]
|
||||
protected Texture2D texture;
|
||||
|
||||
// Token: 0x040066DA RID: 26330
|
||||
[FieldOffset(Offset = "0x78")]
|
||||
[Token(Token = "0x40066DA")]
|
||||
internal HTTPRequest baseRequest;
|
||||
|
||||
// Token: 0x040066DB RID: 26331
|
||||
[FieldOffset(Offset = "0x80")]
|
||||
[Token(Token = "0x40066DB")]
|
||||
protected Stream Stream;
|
||||
|
||||
// Token: 0x040066DC RID: 26332
|
||||
[FieldOffset(Offset = "0x88")]
|
||||
[Token(Token = "0x40066DC")]
|
||||
protected List<byte[]> streamedFragments;
|
||||
|
||||
// Token: 0x040066DD RID: 26333
|
||||
[FieldOffset(Offset = "0x90")]
|
||||
[Token(Token = "0x40066DD")]
|
||||
protected object SyncRoot;
|
||||
|
||||
// Token: 0x040066DE RID: 26334
|
||||
[FieldOffset(Offset = "0x98")]
|
||||
[Token(Token = "0x40066DE")]
|
||||
protected byte[] fragmentBuffer;
|
||||
|
||||
// Token: 0x040066DF RID: 26335
|
||||
[FieldOffset(Offset = "0xA0")]
|
||||
[Token(Token = "0x40066DF")]
|
||||
protected int fragmentBufferDataLength;
|
||||
|
||||
// Token: 0x040066E0 RID: 26336
|
||||
[FieldOffset(Offset = "0xA8")]
|
||||
[Token(Token = "0x40066E0")]
|
||||
protected Stream cacheStream;
|
||||
|
||||
// Token: 0x040066E1 RID: 26337
|
||||
[FieldOffset(Offset = "0xB0")]
|
||||
[Token(Token = "0x40066E1")]
|
||||
protected int allFragmentSize;
|
||||
|
||||
// Token: 0x040066E2 RID: 26338
|
||||
[FieldOffset(Offset = "0xB8")]
|
||||
[Token(Token = "0x40066E2")]
|
||||
private BufferPoolMemoryStream decompressorInputStream;
|
||||
|
||||
// Token: 0x040066E3 RID: 26339
|
||||
[FieldOffset(Offset = "0xC0")]
|
||||
[Token(Token = "0x40066E3")]
|
||||
private BufferPoolMemoryStream decompressorOutputStream;
|
||||
|
||||
// Token: 0x040066E4 RID: 26340
|
||||
[FieldOffset(Offset = "0xC8")]
|
||||
[Token(Token = "0x40066E4")]
|
||||
private GZipStream decompressorGZipStream;
|
||||
|
||||
// Token: 0x040066E5 RID: 26341
|
||||
[Token(Token = "0x40066E5")]
|
||||
private const int MinLengthToDecompress = 256;
|
||||
|
||||
// Token: 0x040066E6 RID: 26342
|
||||
[FieldOffset(Offset = "0xD0")]
|
||||
[Token(Token = "0x40066E6")]
|
||||
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: 0x02001987 RID: 6535
|
||||
[Token(Token = "0x2001987")]
|
||||
[ExecuteInEditMode]
|
||||
public sealed class HTTPUpdateDelegator : MonoBehaviour
|
||||
{
|
||||
// Token: 0x17001841 RID: 6209
|
||||
// (get) Token: 0x06009852 RID: 38994 RVA: 0x001F1254 File Offset: 0x001EF454
|
||||
// (set) Token: 0x06009853 RID: 38995 RVA: 0x001F1268 File Offset: 0x001EF468
|
||||
[Token(Token = "0x17001841")]
|
||||
public static HTTPUpdateDelegator Instance
|
||||
{
|
||||
[Token(Token = "0x6009852")]
|
||||
[Address(RVA = "0x22A0580", Offset = "0x229F580", VA = "0x1822A0580")]
|
||||
get;
|
||||
[Token(Token = "0x6009853")]
|
||||
[Address(RVA = "0x22A07C0", Offset = "0x229F7C0", VA = "0x1822A07C0")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x17001842 RID: 6210
|
||||
// (get) Token: 0x06009854 RID: 38996 RVA: 0x001F127C File Offset: 0x001EF47C
|
||||
// (set) Token: 0x06009855 RID: 38997 RVA: 0x001F1290 File Offset: 0x001EF490
|
||||
[Token(Token = "0x17001842")]
|
||||
public static bool IsCreated
|
||||
{
|
||||
[Token(Token = "0x6009854")]
|
||||
[Address(RVA = "0x22A05E0", Offset = "0x229F5E0", VA = "0x1822A05E0")]
|
||||
get;
|
||||
[Token(Token = "0x6009855")]
|
||||
[Address(RVA = "0x22A0880", Offset = "0x229F880", VA = "0x1822A0880")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x17001843 RID: 6211
|
||||
// (get) Token: 0x06009856 RID: 38998 RVA: 0x001F12A4 File Offset: 0x001EF4A4
|
||||
// (set) Token: 0x06009857 RID: 38999 RVA: 0x001F12B8 File Offset: 0x001EF4B8
|
||||
[Token(Token = "0x17001843")]
|
||||
public static bool IsThreaded
|
||||
{
|
||||
[Token(Token = "0x6009856")]
|
||||
[Address(RVA = "0x22A06A0", Offset = "0x229F6A0", VA = "0x1822A06A0")]
|
||||
get;
|
||||
[Token(Token = "0x6009857")]
|
||||
[Address(RVA = "0x22A0940", Offset = "0x229F940", VA = "0x1822A0940")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17001844 RID: 6212
|
||||
// (get) Token: 0x06009858 RID: 39000 RVA: 0x001F12CC File Offset: 0x001EF4CC
|
||||
// (set) Token: 0x06009859 RID: 39001 RVA: 0x001F12E0 File Offset: 0x001EF4E0
|
||||
[Token(Token = "0x17001844")]
|
||||
public static bool IsThreadRunning
|
||||
{
|
||||
[Token(Token = "0x6009858")]
|
||||
[Address(RVA = "0x22A0640", Offset = "0x229F640", VA = "0x1822A0640")]
|
||||
get;
|
||||
[Token(Token = "0x6009859")]
|
||||
[Address(RVA = "0x22A08E0", Offset = "0x229F8E0", VA = "0x1822A08E0")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x17001845 RID: 6213
|
||||
// (get) Token: 0x0600985A RID: 39002 RVA: 0x001F12F4 File Offset: 0x001EF4F4
|
||||
// (set) Token: 0x0600985B RID: 39003 RVA: 0x001F1308 File Offset: 0x001EF508
|
||||
[Token(Token = "0x17001845")]
|
||||
public static int ThreadFrequencyInMS
|
||||
{
|
||||
[Token(Token = "0x600985A")]
|
||||
[Address(RVA = "0x22A0700", Offset = "0x229F700", VA = "0x1822A0700")]
|
||||
get;
|
||||
[Token(Token = "0x600985B")]
|
||||
[Address(RVA = "0x22A09A0", Offset = "0x229F9A0", VA = "0x1822A09A0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x0600985D RID: 39005 RVA: 0x001F132C File Offset: 0x001EF52C
|
||||
[Token(Token = "0x600985D")]
|
||||
[Address(RVA = "0x229F690", Offset = "0x229E690", VA = "0x18229F690")]
|
||||
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: 0x0600985E RID: 39006 RVA: 0x001F13B8 File Offset: 0x001EF5B8
|
||||
[Token(Token = "0x600985E")]
|
||||
[Address(RVA = "0x229FEC0", Offset = "0x229EEC0", VA = "0x18229FEC0")]
|
||||
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: 0x0600985F RID: 39007 RVA: 0x001F1420 File Offset: 0x001EF620
|
||||
[Token(Token = "0x600985F")]
|
||||
[Address(RVA = "0x22A00C0", Offset = "0x229F0C0", VA = "0x1822A00C0")]
|
||||
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: 0x06009860 RID: 39008 RVA: 0x001F1450 File Offset: 0x001EF650
|
||||
[Token(Token = "0x6009860")]
|
||||
[Address(RVA = "0x22A0340", Offset = "0x229F340", VA = "0x1822A0340")]
|
||||
private void Update()
|
||||
{
|
||||
bool flag;
|
||||
bool flag2;
|
||||
if (!flag || !flag2)
|
||||
{
|
||||
this.Setup();
|
||||
HTTPManager.OnUpdate();
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x06009861 RID: 39009 RVA: 0x001F1478 File Offset: 0x001EF678
|
||||
[Token(Token = "0x6009861")]
|
||||
[Address(RVA = "0x229FE30", Offset = "0x229EE30", VA = "0x18229FE30")]
|
||||
private void OnDisable()
|
||||
{
|
||||
BestHTTP.Logger.ILogger logger = HTTPManager.Logger;
|
||||
this.OnApplicationQuit();
|
||||
}
|
||||
|
||||
// Token: 0x06009862 RID: 39010 RVA: 0x001F149C File Offset: 0x001EF69C
|
||||
[Token(Token = "0x6009862")]
|
||||
[Address(RVA = "0x229FA30", Offset = "0x229EA30", VA = "0x18229FA30")]
|
||||
private void OnApplicationPause(bool isPaused)
|
||||
{
|
||||
HTTPUpdateDelegator.OnApplicationForegroundStateChanged(isPaused);
|
||||
}
|
||||
|
||||
// Token: 0x06009863 RID: 39011 RVA: 0x001F14BC File Offset: 0x001EF6BC
|
||||
[Token(Token = "0x6009863")]
|
||||
[Address(RVA = "0x229FAE0", Offset = "0x229EAE0", VA = "0x18229FAE0")]
|
||||
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: 0x06009864 RID: 39012 RVA: 0x001F1518 File Offset: 0x001EF718
|
||||
[Token(Token = "0x6009864")]
|
||||
[Address(RVA = "0x428AD0", Offset = "0x427AD0", VA = "0x180428AD0")]
|
||||
public HTTPUpdateDelegator()
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x040066EC RID: 26348
|
||||
[Token(Token = "0x40066EC")]
|
||||
public static Func<bool> OnBeforeApplicationQuit;
|
||||
|
||||
// Token: 0x040066ED RID: 26349
|
||||
[Token(Token = "0x40066ED")]
|
||||
public static Action<bool> OnApplicationForegroundStateChanged;
|
||||
|
||||
// Token: 0x040066EE RID: 26350
|
||||
[Token(Token = "0x40066EE")]
|
||||
private static bool IsSetupCalled;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP
|
||||
{
|
||||
// Token: 0x02001985 RID: 6533
|
||||
[Token(Token = "0x2001985")]
|
||||
public interface IProtocol
|
||||
{
|
||||
// Token: 0x1700182F RID: 6191
|
||||
// (get) Token: 0x06009812 RID: 38930
|
||||
[Token(Token = "0x1700182F")]
|
||||
bool IsClosed
|
||||
{
|
||||
[Token(Token = "0x6009812")]
|
||||
[Address(Slot = "0")]
|
||||
get;
|
||||
}
|
||||
|
||||
// Token: 0x06009813 RID: 38931
|
||||
[Token(Token = "0x6009813")]
|
||||
[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: 0x0200205E RID: 8286
|
||||
[Token(Token = "0x200205E")]
|
||||
public class Json
|
||||
{
|
||||
// Token: 0x0600CFE6 RID: 53222 RVA: 0x002F44A0 File Offset: 0x002F26A0
|
||||
[Token(Token = "0x600CFE6")]
|
||||
[Address(RVA = "0x22A0A00", Offset = "0x229FA00", VA = "0x1822A0A00")]
|
||||
public static object Decode(string json)
|
||||
{
|
||||
if (json == 0)
|
||||
{
|
||||
}
|
||||
char[] array = json.ToCharArray();
|
||||
object obj;
|
||||
return obj;
|
||||
}
|
||||
|
||||
// Token: 0x0600CFE7 RID: 53223 RVA: 0x002F44BC File Offset: 0x002F26BC
|
||||
[Token(Token = "0x600CFE7")]
|
||||
[Address(RVA = "0x22A0A50", Offset = "0x229FA50", VA = "0x1822A0A50")]
|
||||
public static object Decode(string json, ref bool success)
|
||||
{
|
||||
if (json == 0)
|
||||
{
|
||||
}
|
||||
char[] array = json.ToCharArray();
|
||||
object obj;
|
||||
return obj;
|
||||
}
|
||||
|
||||
// Token: 0x0600CFE8 RID: 53224 RVA: 0x002F44D8 File Offset: 0x002F26D8
|
||||
[Token(Token = "0x600CFE8")]
|
||||
[Address(RVA = "0x22A0B30", Offset = "0x229FB30", VA = "0x1822A0B30")]
|
||||
public static string Encode(object json)
|
||||
{
|
||||
StringBuilder stringBuilder = new StringBuilder(2000);
|
||||
if (Json.SerializeValue(json, stringBuilder))
|
||||
{
|
||||
}
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x0600CFE9 RID: 53225 RVA: 0x002F4504 File Offset: 0x002F2704
|
||||
[Token(Token = "0x600CFE9")]
|
||||
[Address(RVA = "0x22A1260", Offset = "0x22A0260", VA = "0x1822A1260")]
|
||||
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: 0x0600CFEA RID: 53226 RVA: 0x002F456C File Offset: 0x002F276C
|
||||
[Token(Token = "0x600CFEA")]
|
||||
[Address(RVA = "0x22A0FF0", Offset = "0x229FFF0", VA = "0x1822A0FF0")]
|
||||
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: 0x0600CFEB RID: 53227 RVA: 0x002F45AC File Offset: 0x002F27AC
|
||||
[Token(Token = "0x600CFEB")]
|
||||
[Address(RVA = "0x22A16B0", Offset = "0x22A06B0", VA = "0x1822A16B0")]
|
||||
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: 0x0600CFEC RID: 53228 RVA: 0x002F4680 File Offset: 0x002F2880
|
||||
[Token(Token = "0x600CFEC")]
|
||||
[Address(RVA = "0x22A1390", Offset = "0x22A0390", VA = "0x1822A1390")]
|
||||
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: 0x0600CFED RID: 53229 RVA: 0x002F4718 File Offset: 0x002F2918
|
||||
[Token(Token = "0x600CFED")]
|
||||
[Address(RVA = "0x22A10F0", Offset = "0x22A00F0", VA = "0x1822A10F0")]
|
||||
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: 0x0600CFEE RID: 53230 RVA: 0x002F4754 File Offset: 0x002F2954
|
||||
[Token(Token = "0x600CFEE")]
|
||||
[Address(RVA = "0x22A0BC0", Offset = "0x229FBC0", VA = "0x1822A0BC0")]
|
||||
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: 0x0600CFEF RID: 53231 RVA: 0x002F4784 File Offset: 0x002F2984
|
||||
[Token(Token = "0x600CFEF")]
|
||||
[Address(RVA = "0x22A0AA0", Offset = "0x229FAA0", VA = "0x1822A0AA0")]
|
||||
protected static void EatWhitespace(char[] json, ref int index)
|
||||
{
|
||||
int length = json.Length;
|
||||
int num;
|
||||
if (num != -1)
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600CFF0 RID: 53232 RVA: 0x002F47A4 File Offset: 0x002F29A4
|
||||
[Token(Token = "0x600CFF0")]
|
||||
[Address(RVA = "0x22A0C50", Offset = "0x229FC50", VA = "0x1822A0C50")]
|
||||
protected static int LookAhead(char[] json, int index)
|
||||
{
|
||||
return Json.NextToken(json, index);
|
||||
}
|
||||
|
||||
// Token: 0x0600CFF1 RID: 53233 RVA: 0x002F47B8 File Offset: 0x002F29B8
|
||||
[Token(Token = "0x600CFF1")]
|
||||
[Address(RVA = "0x22A0C70", Offset = "0x229FC70", VA = "0x1822A0C70")]
|
||||
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: 0x0600CFF2 RID: 53234 RVA: 0x002F47F4 File Offset: 0x002F29F4
|
||||
[Token(Token = "0x600CFF2")]
|
||||
[Address(RVA = "0x22A20B0", Offset = "0x22A10B0", VA = "0x1822A20B0")]
|
||||
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: 0x0600CFF3 RID: 53235 RVA: 0x002F48F0 File Offset: 0x002F2AF0
|
||||
[Token(Token = "0x600CFF3")]
|
||||
[Address(RVA = "0x22A1CA0", Offset = "0x22A0CA0", VA = "0x1822A1CA0")]
|
||||
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: 0x0600CFF4 RID: 53236 RVA: 0x002F4954 File Offset: 0x002F2B54
|
||||
[Token(Token = "0x600CFF4")]
|
||||
[Address(RVA = "0x22A1AE0", Offset = "0x22A0AE0", VA = "0x1822A1AE0")]
|
||||
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: 0x0600CFF5 RID: 53237 RVA: 0x002F49A8 File Offset: 0x002F2BA8
|
||||
[Token(Token = "0x600CFF5")]
|
||||
[Address(RVA = "0x22A1E10", Offset = "0x22A0E10", VA = "0x1822A1E10")]
|
||||
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: 0x0600CFF6 RID: 53238 RVA: 0x002F4AA8 File Offset: 0x002F2CA8
|
||||
[Token(Token = "0x600CFF6")]
|
||||
[Address(RVA = "0x22A1BF0", Offset = "0x22A0BF0", VA = "0x1822A1BF0")]
|
||||
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: 0x0600CFF7 RID: 53239 RVA: 0x002F4AD4 File Offset: 0x002F2CD4
|
||||
[Token(Token = "0x600CFF7")]
|
||||
[Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")]
|
||||
public Json()
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x040083D6 RID: 33750
|
||||
[Token(Token = "0x40083D6")]
|
||||
private const int TOKEN_NONE = 0;
|
||||
|
||||
// Token: 0x040083D7 RID: 33751
|
||||
[Token(Token = "0x40083D7")]
|
||||
private const int TOKEN_CURLY_OPEN = 1;
|
||||
|
||||
// Token: 0x040083D8 RID: 33752
|
||||
[Token(Token = "0x40083D8")]
|
||||
private const int TOKEN_CURLY_CLOSE = 2;
|
||||
|
||||
// Token: 0x040083D9 RID: 33753
|
||||
[Token(Token = "0x40083D9")]
|
||||
private const int TOKEN_SQUARED_OPEN = 3;
|
||||
|
||||
// Token: 0x040083DA RID: 33754
|
||||
[Token(Token = "0x40083DA")]
|
||||
private const int TOKEN_SQUARED_CLOSE = 4;
|
||||
|
||||
// Token: 0x040083DB RID: 33755
|
||||
[Token(Token = "0x40083DB")]
|
||||
private const int TOKEN_COLON = 5;
|
||||
|
||||
// Token: 0x040083DC RID: 33756
|
||||
[Token(Token = "0x40083DC")]
|
||||
private const int TOKEN_COMMA = 6;
|
||||
|
||||
// Token: 0x040083DD RID: 33757
|
||||
[Token(Token = "0x40083DD")]
|
||||
private const int TOKEN_STRING = 7;
|
||||
|
||||
// Token: 0x040083DE RID: 33758
|
||||
[Token(Token = "0x40083DE")]
|
||||
private const int TOKEN_NUMBER = 8;
|
||||
|
||||
// Token: 0x040083DF RID: 33759
|
||||
[Token(Token = "0x40083DF")]
|
||||
private const int TOKEN_TRUE = 9;
|
||||
|
||||
// Token: 0x040083E0 RID: 33760
|
||||
[Token(Token = "0x40083E0")]
|
||||
private const int TOKEN_FALSE = 10;
|
||||
|
||||
// Token: 0x040083E1 RID: 33761
|
||||
[Token(Token = "0x40083E1")]
|
||||
private const int TOKEN_NULL = 11;
|
||||
|
||||
// Token: 0x040083E2 RID: 33762
|
||||
[Token(Token = "0x40083E2")]
|
||||
private const int BUILDER_CAPACITY = 2000;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,54 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP
|
||||
{
|
||||
// Token: 0x0200196E RID: 6510
|
||||
[Token(Token = "0x200196E")]
|
||||
internal sealed class KeepAliveHeader
|
||||
{
|
||||
// Token: 0x170017DC RID: 6108
|
||||
// (get) Token: 0x060096E6 RID: 38630 RVA: 0x001EB220 File Offset: 0x001E9420
|
||||
// (set) Token: 0x060096E7 RID: 38631 RVA: 0x001EB234 File Offset: 0x001E9434
|
||||
[Token(Token = "0x170017DC")]
|
||||
public TimeSpan TimeOut
|
||||
{
|
||||
[Token(Token = "0x60096E6")]
|
||||
[Address(RVA = "0x411530", Offset = "0x410530", VA = "0x180411530")]
|
||||
get;
|
||||
[Token(Token = "0x60096E7")]
|
||||
[Address(RVA = "0x415800", Offset = "0x414800", VA = "0x180415800")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x170017DD RID: 6109
|
||||
// (get) Token: 0x060096E8 RID: 38632 RVA: 0x001EB248 File Offset: 0x001E9448
|
||||
// (set) Token: 0x060096E9 RID: 38633 RVA: 0x001EB25C File Offset: 0x001E945C
|
||||
[Token(Token = "0x170017DD")]
|
||||
public int MaxRequests
|
||||
{
|
||||
[Token(Token = "0x60096E8")]
|
||||
[Address(RVA = "0x411540", Offset = "0x410540", VA = "0x180411540")]
|
||||
get;
|
||||
[Token(Token = "0x60096E9")]
|
||||
[Address(RVA = "0x5F1910", Offset = "0x5F0910", VA = "0x1805F1910")]
|
||||
private set;
|
||||
}
|
||||
|
||||
// Token: 0x060096EA RID: 38634 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x60096EA")]
|
||||
[Address(RVA = "0x22A2570", Offset = "0x22A1570", VA = "0x1822A2570")]
|
||||
public void Parse(List<string> headerValues)
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x060096EB RID: 38635 RVA: 0x001EB270 File Offset: 0x001E9470
|
||||
[Token(Token = "0x60096EB")]
|
||||
[Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")]
|
||||
public KeepAliveHeader()
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,211 @@
|
||||
using System;
|
||||
using System.Text;
|
||||
using Cpp2IlInjected;
|
||||
using UnityEngine;
|
||||
|
||||
namespace BestHTTP.Logger
|
||||
{
|
||||
// Token: 0x0200205B RID: 8283
|
||||
[Token(Token = "0x200205B")]
|
||||
public class DefaultLogger : ILogger
|
||||
{
|
||||
// Token: 0x17002104 RID: 8452
|
||||
// (get) Token: 0x0600CFC2 RID: 53186 RVA: 0x002F4168 File Offset: 0x002F2368
|
||||
// (set) Token: 0x0600CFC3 RID: 53187 RVA: 0x002F417C File Offset: 0x002F237C
|
||||
[Token(Token = "0x17002104")]
|
||||
public Loglevels Level
|
||||
{
|
||||
[Token(Token = "0x600CFC2")]
|
||||
[Address(RVA = "0x4944B0", Offset = "0x4934B0", VA = "0x1804944B0", Slot = "4")]
|
||||
get;
|
||||
[Token(Token = "0x600CFC3")]
|
||||
[Address(RVA = "0x62ADC0", Offset = "0x629DC0", VA = "0x18062ADC0", Slot = "5")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17002105 RID: 8453
|
||||
// (get) Token: 0x0600CFC4 RID: 53188 RVA: 0x002F4190 File Offset: 0x002F2390
|
||||
// (set) Token: 0x0600CFC5 RID: 53189 RVA: 0x002F41A4 File Offset: 0x002F23A4
|
||||
[Token(Token = "0x17002105")]
|
||||
public string FormatVerbose
|
||||
{
|
||||
[Token(Token = "0x600CFC4")]
|
||||
[Address(RVA = "0x4157B0", Offset = "0x4147B0", VA = "0x1804157B0", Slot = "6")]
|
||||
get;
|
||||
[Token(Token = "0x600CFC5")]
|
||||
[Address(RVA = "0x4157F0", Offset = "0x4147F0", VA = "0x1804157F0", Slot = "7")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17002106 RID: 8454
|
||||
// (get) Token: 0x0600CFC6 RID: 53190 RVA: 0x002F41B8 File Offset: 0x002F23B8
|
||||
// (set) Token: 0x0600CFC7 RID: 53191 RVA: 0x002F41CC File Offset: 0x002F23CC
|
||||
[Token(Token = "0x17002106")]
|
||||
public string FormatInfo
|
||||
{
|
||||
[Token(Token = "0x600CFC6")]
|
||||
[Address(RVA = "0x4157C0", Offset = "0x4147C0", VA = "0x1804157C0", Slot = "8")]
|
||||
get;
|
||||
[Token(Token = "0x600CFC7")]
|
||||
[Address(RVA = "0x415810", Offset = "0x414810", VA = "0x180415810", Slot = "9")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17002107 RID: 8455
|
||||
// (get) Token: 0x0600CFC8 RID: 53192 RVA: 0x002F41E0 File Offset: 0x002F23E0
|
||||
// (set) Token: 0x0600CFC9 RID: 53193 RVA: 0x002F41F4 File Offset: 0x002F23F4
|
||||
[Token(Token = "0x17002107")]
|
||||
public string FormatWarn
|
||||
{
|
||||
[Token(Token = "0x600CFC8")]
|
||||
[Address(RVA = "0x4157D0", Offset = "0x4147D0", VA = "0x1804157D0", Slot = "10")]
|
||||
get;
|
||||
[Token(Token = "0x600CFC9")]
|
||||
[Address(RVA = "0x415820", Offset = "0x414820", VA = "0x180415820", Slot = "11")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17002108 RID: 8456
|
||||
// (get) Token: 0x0600CFCA RID: 53194 RVA: 0x002F4208 File Offset: 0x002F2408
|
||||
// (set) Token: 0x0600CFCB RID: 53195 RVA: 0x002F421C File Offset: 0x002F241C
|
||||
[Token(Token = "0x17002108")]
|
||||
public string FormatErr
|
||||
{
|
||||
[Token(Token = "0x600CFCA")]
|
||||
[Address(RVA = "0x4157E0", Offset = "0x4147E0", VA = "0x1804157E0", Slot = "12")]
|
||||
get;
|
||||
[Token(Token = "0x600CFCB")]
|
||||
[Address(RVA = "0x415830", Offset = "0x414830", VA = "0x180415830", Slot = "13")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x17002109 RID: 8457
|
||||
// (get) Token: 0x0600CFCC RID: 53196 RVA: 0x002F4230 File Offset: 0x002F2430
|
||||
// (set) Token: 0x0600CFCD RID: 53197 RVA: 0x002F4244 File Offset: 0x002F2444
|
||||
[Token(Token = "0x17002109")]
|
||||
public string FormatEx
|
||||
{
|
||||
[Token(Token = "0x600CFCC")]
|
||||
[Address(RVA = "0x41CEF0", Offset = "0x41BEF0", VA = "0x18041CEF0", Slot = "14")]
|
||||
get;
|
||||
[Token(Token = "0x600CFCD")]
|
||||
[Address(RVA = "0x41CFF0", Offset = "0x41BFF0", VA = "0x18041CFF0", Slot = "15")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x0600CFCE RID: 53198 RVA: 0x002F4258 File Offset: 0x002F2458
|
||||
[Token(Token = "0x600CFCE")]
|
||||
[Address(RVA = "0x229AD80", Offset = "0x2299D80", VA = "0x18229AD80")]
|
||||
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: 0x0600CFCF RID: 53199 RVA: 0x002F42B4 File Offset: 0x002F24B4
|
||||
[Token(Token = "0x600CFCF")]
|
||||
[Address(RVA = "0x229ABE0", Offset = "0x2299BE0", VA = "0x18229ABE0", 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: 0x0600CFD0 RID: 53200 RVA: 0x002F42E0 File Offset: 0x002F24E0
|
||||
[Token(Token = "0x600CFD0")]
|
||||
[Address(RVA = "0x229AB10", Offset = "0x2299B10", VA = "0x18229AB10", 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: 0x0600CFD1 RID: 53201 RVA: 0x002F430C File Offset: 0x002F250C
|
||||
[Token(Token = "0x600CFD1")]
|
||||
[Address(RVA = "0x229ACB0", Offset = "0x2299CB0", VA = "0x18229ACB0", 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: 0x0600CFD2 RID: 53202 RVA: 0x002F4338 File Offset: 0x002F2538
|
||||
[Token(Token = "0x600CFD2")]
|
||||
[Address(RVA = "0x229A5E0", Offset = "0x22995E0", VA = "0x18229A5E0", 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: 0x0600CFD3 RID: 53203 RVA: 0x002F4364 File Offset: 0x002F2564
|
||||
[Token(Token = "0x600CFD3")]
|
||||
[Address(RVA = "0x229A6B0", Offset = "0x22996B0", VA = "0x18229A6B0", 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: 0x0600CFD4 RID: 53204 RVA: 0x002F4488 File Offset: 0x002F2688
|
||||
[Token(Token = "0x600CFD4")]
|
||||
[Address(RVA = "0x229AA90", Offset = "0x2299A90", VA = "0x18229AA90")]
|
||||
private string GetFormattedTime()
|
||||
{
|
||||
DateTime now = DateTime.Now;
|
||||
string text;
|
||||
return text;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,119 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Logger
|
||||
{
|
||||
// Token: 0x0200205D RID: 8285
|
||||
[Token(Token = "0x200205D")]
|
||||
public interface ILogger
|
||||
{
|
||||
// Token: 0x1700210A RID: 8458
|
||||
// (get) Token: 0x0600CFD5 RID: 53205
|
||||
// (set) Token: 0x0600CFD6 RID: 53206
|
||||
[Token(Token = "0x1700210A")]
|
||||
Loglevels Level
|
||||
{
|
||||
[Token(Token = "0x600CFD5")]
|
||||
[Address(Slot = "0")]
|
||||
get;
|
||||
[Token(Token = "0x600CFD6")]
|
||||
[Address(Slot = "1")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x1700210B RID: 8459
|
||||
// (get) Token: 0x0600CFD7 RID: 53207
|
||||
// (set) Token: 0x0600CFD8 RID: 53208
|
||||
[Token(Token = "0x1700210B")]
|
||||
string FormatVerbose
|
||||
{
|
||||
[Token(Token = "0x600CFD7")]
|
||||
[Address(Slot = "2")]
|
||||
get;
|
||||
[Token(Token = "0x600CFD8")]
|
||||
[Address(Slot = "3")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x1700210C RID: 8460
|
||||
// (get) Token: 0x0600CFD9 RID: 53209
|
||||
// (set) Token: 0x0600CFDA RID: 53210
|
||||
[Token(Token = "0x1700210C")]
|
||||
string FormatInfo
|
||||
{
|
||||
[Token(Token = "0x600CFD9")]
|
||||
[Address(Slot = "4")]
|
||||
get;
|
||||
[Token(Token = "0x600CFDA")]
|
||||
[Address(Slot = "5")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x1700210D RID: 8461
|
||||
// (get) Token: 0x0600CFDB RID: 53211
|
||||
// (set) Token: 0x0600CFDC RID: 53212
|
||||
[Token(Token = "0x1700210D")]
|
||||
string FormatWarn
|
||||
{
|
||||
[Token(Token = "0x600CFDB")]
|
||||
[Address(Slot = "6")]
|
||||
get;
|
||||
[Token(Token = "0x600CFDC")]
|
||||
[Address(Slot = "7")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x1700210E RID: 8462
|
||||
// (get) Token: 0x0600CFDD RID: 53213
|
||||
// (set) Token: 0x0600CFDE RID: 53214
|
||||
[Token(Token = "0x1700210E")]
|
||||
string FormatErr
|
||||
{
|
||||
[Token(Token = "0x600CFDD")]
|
||||
[Address(Slot = "8")]
|
||||
get;
|
||||
[Token(Token = "0x600CFDE")]
|
||||
[Address(Slot = "9")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x1700210F RID: 8463
|
||||
// (get) Token: 0x0600CFDF RID: 53215
|
||||
// (set) Token: 0x0600CFE0 RID: 53216
|
||||
[Token(Token = "0x1700210F")]
|
||||
string FormatEx
|
||||
{
|
||||
[Token(Token = "0x600CFDF")]
|
||||
[Address(Slot = "10")]
|
||||
get;
|
||||
[Token(Token = "0x600CFE0")]
|
||||
[Address(Slot = "11")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x0600CFE1 RID: 53217
|
||||
[Token(Token = "0x600CFE1")]
|
||||
[Address(Slot = "12")]
|
||||
void Verbose(string division, string verb);
|
||||
|
||||
// Token: 0x0600CFE2 RID: 53218
|
||||
[Token(Token = "0x600CFE2")]
|
||||
[Address(Slot = "13")]
|
||||
void Information(string division, string info);
|
||||
|
||||
// Token: 0x0600CFE3 RID: 53219
|
||||
[Token(Token = "0x600CFE3")]
|
||||
[Address(Slot = "14")]
|
||||
void Warning(string division, string warn);
|
||||
|
||||
// Token: 0x0600CFE4 RID: 53220
|
||||
[Token(Token = "0x600CFE4")]
|
||||
[Address(Slot = "15")]
|
||||
void Error(string division, string err);
|
||||
|
||||
// Token: 0x0600CFE5 RID: 53221
|
||||
[Token(Token = "0x600CFE5")]
|
||||
[Address(Slot = "16")]
|
||||
void Exception(string division, string msg, Exception ex);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,29 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.Logger
|
||||
{
|
||||
// Token: 0x0200205C RID: 8284
|
||||
[Token(Token = "0x200205C")]
|
||||
public enum Loglevels : byte
|
||||
{
|
||||
// Token: 0x040083D0 RID: 33744
|
||||
[Token(Token = "0x40083D0")]
|
||||
All,
|
||||
// Token: 0x040083D1 RID: 33745
|
||||
[Token(Token = "0x40083D1")]
|
||||
Information,
|
||||
// Token: 0x040083D2 RID: 33746
|
||||
[Token(Token = "0x40083D2")]
|
||||
Warning,
|
||||
// Token: 0x040083D3 RID: 33747
|
||||
[Token(Token = "0x40083D3")]
|
||||
Error,
|
||||
// Token: 0x040083D4 RID: 33748
|
||||
[Token(Token = "0x40083D4")]
|
||||
Exception,
|
||||
// Token: 0x040083D5 RID: 33749
|
||||
[Token(Token = "0x40083D5")]
|
||||
None
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,50 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP
|
||||
{
|
||||
// Token: 0x02001981 RID: 6529
|
||||
[Token(Token = "0x2001981")]
|
||||
public sealed class OnBeforeHeaderSendDelegate : MulticastDelegate
|
||||
{
|
||||
// Token: 0x06009773 RID: 38771 RVA: 0x001EE3D0 File Offset: 0x001EC5D0
|
||||
[Token(Token = "0x6009773")]
|
||||
[Address(RVA = "0x4AF020", Offset = "0x4AE020", VA = "0x1804AF020")]
|
||||
public OnBeforeHeaderSendDelegate(object @object, IntPtr method)
|
||||
{
|
||||
this.method = method;
|
||||
this.m_target = @object;
|
||||
}
|
||||
|
||||
// Token: 0x06009774 RID: 38772 RVA: 0x001EE3EC File Offset: 0x001EC5EC
|
||||
[Token(Token = "0x6009774")]
|
||||
[Address(RVA = "0x6E1530", Offset = "0x6E0530", VA = "0x1806E1530", Slot = "13")]
|
||||
public void Invoke(HTTPRequest req)
|
||||
{
|
||||
if (this.delegates != 0)
|
||||
{
|
||||
}
|
||||
uint num;
|
||||
if (num != (uint)0)
|
||||
{
|
||||
throw new ExecutionEngineException();
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x06009775 RID: 38773 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x6009775")]
|
||||
[Address(RVA = "0x5FA200", Offset = "0x5F9200", VA = "0x1805FA200", 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: 0x06009776 RID: 38774 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x6009776")]
|
||||
[Address(RVA = "0x4F56B0", Offset = "0x4F46B0", VA = "0x1804F56B0", 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: 0x0200197F RID: 6527
|
||||
[Token(Token = "0x200197F")]
|
||||
public sealed class OnBeforeRedirectionDelegate : MulticastDelegate
|
||||
{
|
||||
// Token: 0x0600976B RID: 38763 RVA: 0x001EE180 File Offset: 0x001EC380
|
||||
[Token(Token = "0x600976B")]
|
||||
[Address(RVA = "0x4AF020", Offset = "0x4AE020", VA = "0x1804AF020")]
|
||||
public OnBeforeRedirectionDelegate(object @object, IntPtr method)
|
||||
{
|
||||
this.method = method;
|
||||
this.m_target = @object;
|
||||
}
|
||||
|
||||
// Token: 0x0600976C RID: 38764 RVA: 0x001EE19C File Offset: 0x001EC39C
|
||||
[Token(Token = "0x600976C")]
|
||||
[Address(RVA = "0x1097740", Offset = "0x1096740", VA = "0x181097740", 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: 0x0600976D RID: 38765 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600976D")]
|
||||
[Address(RVA = "0x6045F0", Offset = "0x6035F0", VA = "0x1806045F0", 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: 0x0600976E RID: 38766 RVA: 0x001EE2A0 File Offset: 0x001EC4A0
|
||||
[Token(Token = "0x600976E")]
|
||||
[Address(RVA = "0x56AA00", Offset = "0x569A00", VA = "0x18056AA00", Slot = "15")]
|
||||
public bool EndInvoke(IAsyncResult result)
|
||||
{
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,50 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP
|
||||
{
|
||||
// Token: 0x0200197D RID: 6525
|
||||
[Token(Token = "0x200197D")]
|
||||
public sealed class OnDownloadProgressDelegate : MulticastDelegate
|
||||
{
|
||||
// Token: 0x06009763 RID: 38755 RVA: 0x001EE078 File Offset: 0x001EC278
|
||||
[Token(Token = "0x6009763")]
|
||||
[Address(RVA = "0x4AF020", Offset = "0x4AE020", VA = "0x1804AF020")]
|
||||
public OnDownloadProgressDelegate(object @object, IntPtr method)
|
||||
{
|
||||
this.method = method;
|
||||
this.m_target = @object;
|
||||
}
|
||||
|
||||
// Token: 0x06009764 RID: 38756 RVA: 0x001EE094 File Offset: 0x001EC294
|
||||
[Token(Token = "0x6009764")]
|
||||
[Address(RVA = "0x22A27D0", Offset = "0x22A17D0", VA = "0x1822A27D0", 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: 0x06009765 RID: 38757 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x6009765")]
|
||||
[Address(RVA = "0x22A2730", Offset = "0x22A1730", VA = "0x1822A2730", 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: 0x06009766 RID: 38758 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x6009766")]
|
||||
[Address(RVA = "0x4F56B0", Offset = "0x4F46B0", VA = "0x1804F56B0", 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: 0x02001980 RID: 6528
|
||||
[Token(Token = "0x2001980")]
|
||||
public sealed class OnHeaderEnumerationDelegate : MulticastDelegate
|
||||
{
|
||||
// Token: 0x0600976F RID: 38767 RVA: 0x001EE2B4 File Offset: 0x001EC4B4
|
||||
[Token(Token = "0x600976F")]
|
||||
[Address(RVA = "0x4AF020", Offset = "0x4AE020", VA = "0x1804AF020")]
|
||||
public OnHeaderEnumerationDelegate(object @object, IntPtr method)
|
||||
{
|
||||
this.method = method;
|
||||
this.m_target = @object;
|
||||
}
|
||||
|
||||
// Token: 0x06009770 RID: 38768 RVA: 0x001EE2D0 File Offset: 0x001EC4D0
|
||||
[Token(Token = "0x6009770")]
|
||||
[Address(RVA = "0x52CCA0", Offset = "0x52BCA0", VA = "0x18052CCA0", Slot = "13")]
|
||||
public void Invoke(string header, List<string> values)
|
||||
{
|
||||
if (this.delegates != 0)
|
||||
{
|
||||
}
|
||||
uint num;
|
||||
if (num != (uint)0)
|
||||
{
|
||||
throw new ExecutionEngineException();
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x06009771 RID: 38769 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x6009771")]
|
||||
[Address(RVA = "0x52CC60", Offset = "0x52BC60", VA = "0x18052CC60", 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: 0x06009772 RID: 38770 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x6009772")]
|
||||
[Address(RVA = "0x4F56B0", Offset = "0x4F46B0", VA = "0x1804F56B0", 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: 0x0200197C RID: 6524
|
||||
[Token(Token = "0x200197C")]
|
||||
public sealed class OnRequestFinishedDelegate : MulticastDelegate
|
||||
{
|
||||
// Token: 0x0600975F RID: 38751 RVA: 0x001EDF5C File Offset: 0x001EC15C
|
||||
[Token(Token = "0x600975F")]
|
||||
[Address(RVA = "0x4AF020", Offset = "0x4AE020", VA = "0x1804AF020")]
|
||||
public OnRequestFinishedDelegate(object @object, IntPtr method)
|
||||
{
|
||||
this.method = method;
|
||||
this.m_target = @object;
|
||||
}
|
||||
|
||||
// Token: 0x06009760 RID: 38752 RVA: 0x001EDF78 File Offset: 0x001EC178
|
||||
[Token(Token = "0x6009760")]
|
||||
[Address(RVA = "0x52CCA0", Offset = "0x52BCA0", VA = "0x18052CCA0", Slot = "13")]
|
||||
public void Invoke(HTTPRequest originalRequest, HTTPResponse response)
|
||||
{
|
||||
if (this.delegates != 0)
|
||||
{
|
||||
}
|
||||
uint num;
|
||||
if (num != (uint)0)
|
||||
{
|
||||
throw new ExecutionEngineException();
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x06009761 RID: 38753 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x6009761")]
|
||||
[Address(RVA = "0x52CC60", Offset = "0x52BC60", VA = "0x18052CC60", 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: 0x06009762 RID: 38754 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x6009762")]
|
||||
[Address(RVA = "0x4F56B0", Offset = "0x4F46B0", VA = "0x1804F56B0", 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: 0x0200197E RID: 6526
|
||||
[Token(Token = "0x200197E")]
|
||||
public sealed class OnUploadProgressDelegate : MulticastDelegate
|
||||
{
|
||||
// Token: 0x06009767 RID: 38759 RVA: 0x001EE0FC File Offset: 0x001EC2FC
|
||||
[Token(Token = "0x6009767")]
|
||||
[Address(RVA = "0x4AF020", Offset = "0x4AE020", VA = "0x1804AF020")]
|
||||
public OnUploadProgressDelegate(object @object, IntPtr method)
|
||||
{
|
||||
this.method = method;
|
||||
this.m_target = @object;
|
||||
}
|
||||
|
||||
// Token: 0x06009768 RID: 38760 RVA: 0x001EE118 File Offset: 0x001EC318
|
||||
[Token(Token = "0x6009768")]
|
||||
[Address(RVA = "0x22A27D0", Offset = "0x22A17D0", VA = "0x1822A27D0", 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: 0x06009769 RID: 38761 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x6009769")]
|
||||
[Address(RVA = "0x22A2AD0", Offset = "0x22A1AD0", VA = "0x1822A2AD0", 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: 0x0600976A RID: 38762 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600976A")]
|
||||
[Address(RVA = "0x4F56B0", Offset = "0x4F46B0", VA = "0x1804F56B0", 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: 0x02002058 RID: 8280
|
||||
[Token(Token = "0x2002058")]
|
||||
public sealed class DefaultIOService : IIOService
|
||||
{
|
||||
// Token: 0x0600CFB5 RID: 53173 RVA: 0x002F4004 File Offset: 0x002F2204
|
||||
[Token(Token = "0x600CFB5")]
|
||||
[Address(RVA = "0x2299E80", Offset = "0x2298E80", VA = "0x182299E80", 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: 0x0600CFB6 RID: 53174 RVA: 0x002F4048 File Offset: 0x002F2248
|
||||
[Token(Token = "0x600CFB6")]
|
||||
[Address(RVA = "0x229A0A0", Offset = "0x22990A0", VA = "0x18229A0A0", 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: 0x0600CFB7 RID: 53175 RVA: 0x002F4084 File Offset: 0x002F2284
|
||||
[Token(Token = "0x600CFB7")]
|
||||
[Address(RVA = "0x229A190", Offset = "0x2299190", VA = "0x18229A190", Slot = "5")]
|
||||
public bool DirectoryExists(string path)
|
||||
{
|
||||
bool flag = Directory.Exists(path);
|
||||
if (HTTPManager.Logger == 0)
|
||||
{
|
||||
ILogger logger = HTTPManager.Logger;
|
||||
}
|
||||
return flag;
|
||||
}
|
||||
|
||||
// Token: 0x0600CFB8 RID: 53176 RVA: 0x002F40B4 File Offset: 0x002F22B4
|
||||
[Token(Token = "0x600CFB8")]
|
||||
[Address(RVA = "0x229A4C0", Offset = "0x22994C0", VA = "0x18229A4C0", 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: 0x0600CFB9 RID: 53177 RVA: 0x002F40EC File Offset: 0x002F22EC
|
||||
[Token(Token = "0x600CFB9")]
|
||||
[Address(RVA = "0x229A2B0", Offset = "0x22992B0", VA = "0x18229A2B0", 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: 0x0600CFBA RID: 53178 RVA: 0x002F4124 File Offset: 0x002F2324
|
||||
[Token(Token = "0x600CFBA")]
|
||||
[Address(RVA = "0x229A3A0", Offset = "0x22993A0", VA = "0x18229A3A0", Slot = "8")]
|
||||
public bool FileExists(string path)
|
||||
{
|
||||
bool flag = File.Exists(path);
|
||||
if (HTTPManager.Logger == 0)
|
||||
{
|
||||
ILogger logger = HTTPManager.Logger;
|
||||
}
|
||||
return flag;
|
||||
}
|
||||
|
||||
// Token: 0x0600CFBB RID: 53179 RVA: 0x002F4154 File Offset: 0x002F2354
|
||||
[Token(Token = "0x600CFBB")]
|
||||
[Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")]
|
||||
public DefaultIOService()
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.PlatformSupport.FileSystem
|
||||
{
|
||||
// Token: 0x02002059 RID: 8281
|
||||
[Token(Token = "0x2002059")]
|
||||
public enum FileStreamModes
|
||||
{
|
||||
// Token: 0x040083C6 RID: 33734
|
||||
[Token(Token = "0x40083C6")]
|
||||
Create,
|
||||
// Token: 0x040083C7 RID: 33735
|
||||
[Token(Token = "0x40083C7")]
|
||||
Open,
|
||||
// Token: 0x040083C8 RID: 33736
|
||||
[Token(Token = "0x40083C8")]
|
||||
Append
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,41 @@
|
||||
using System;
|
||||
using System.IO;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP.PlatformSupport.FileSystem
|
||||
{
|
||||
// Token: 0x0200205A RID: 8282
|
||||
[Token(Token = "0x200205A")]
|
||||
public interface IIOService
|
||||
{
|
||||
// Token: 0x0600CFBC RID: 53180
|
||||
[Token(Token = "0x600CFBC")]
|
||||
[Address(Slot = "0")]
|
||||
void DirectoryCreate(string path);
|
||||
|
||||
// Token: 0x0600CFBD RID: 53181
|
||||
[Token(Token = "0x600CFBD")]
|
||||
[Address(Slot = "1")]
|
||||
bool DirectoryExists(string path);
|
||||
|
||||
// Token: 0x0600CFBE RID: 53182
|
||||
[Token(Token = "0x600CFBE")]
|
||||
[Address(Slot = "2")]
|
||||
string[] GetFiles(string path);
|
||||
|
||||
// Token: 0x0600CFBF RID: 53183
|
||||
[Token(Token = "0x600CFBF")]
|
||||
[Address(Slot = "3")]
|
||||
void FileDelete(string path);
|
||||
|
||||
// Token: 0x0600CFC0 RID: 53184
|
||||
[Token(Token = "0x600CFC0")]
|
||||
[Address(Slot = "4")]
|
||||
bool FileExists(string path);
|
||||
|
||||
// Token: 0x0600CFC1 RID: 53185
|
||||
[Token(Token = "0x600CFC1")]
|
||||
[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: 0x02002054 RID: 8276
|
||||
[Token(Token = "0x2002054")]
|
||||
public class TcpClient : IDisposable
|
||||
{
|
||||
// Token: 0x0600CF85 RID: 53125 RVA: 0x002F3538 File Offset: 0x002F1738
|
||||
[Token(Token = "0x600CF85")]
|
||||
[Address(RVA = "0x22A4B40", Offset = "0x22A3B40", VA = "0x1822A4B40")]
|
||||
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: 0x0600CF86 RID: 53126 RVA: 0x002F3570 File Offset: 0x002F1770
|
||||
[Token(Token = "0x600CF86")]
|
||||
[Address(RVA = "0x22A4F70", Offset = "0x22A3F70", VA = "0x1822A4F70")]
|
||||
public TcpClient()
|
||||
{
|
||||
this.Init(AddressFamily.InterNetwork);
|
||||
TimeSpan timeSpan;
|
||||
this.ConnectTimeout = timeSpan;
|
||||
}
|
||||
|
||||
// Token: 0x0600CF87 RID: 53127 RVA: 0x002F3594 File Offset: 0x002F1794
|
||||
[Token(Token = "0x600CF87")]
|
||||
[Address(RVA = "0x22A4EB0", Offset = "0x22A3EB0", VA = "0x1822A4EB0")]
|
||||
public TcpClient(AddressFamily family)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CF87)
|
||||
|
||||
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: 0x0600CF88 RID: 53128 RVA: 0x002F35CC File Offset: 0x002F17CC
|
||||
[Token(Token = "0x600CF88")]
|
||||
[Address(RVA = "0x22A4FF0", Offset = "0x22A3FF0", VA = "0x1822A4FF0")]
|
||||
public TcpClient(IPEndPoint localEP)
|
||||
{
|
||||
string text = localEP.ToString();
|
||||
TimeSpan timeSpan;
|
||||
this.ConnectTimeout = timeSpan;
|
||||
}
|
||||
|
||||
// Token: 0x0600CF89 RID: 53129 RVA: 0x002F35F4 File Offset: 0x002F17F4
|
||||
[Token(Token = "0x600CF89")]
|
||||
[Address(RVA = "0x22A5090", Offset = "0x22A4090", VA = "0x1822A5090")]
|
||||
public TcpClient(string hostname, int port)
|
||||
{
|
||||
TimeSpan timeSpan;
|
||||
this.ConnectTimeout = timeSpan;
|
||||
this.Connect(hostname, port);
|
||||
}
|
||||
|
||||
// Token: 0x170020F8 RID: 8440
|
||||
// (get) Token: 0x0600CF8A RID: 53130 RVA: 0x002F3618 File Offset: 0x002F1818
|
||||
// (set) Token: 0x0600CF8B RID: 53131 RVA: 0x002F362C File Offset: 0x002F182C
|
||||
[Token(Token = "0x170020F8")]
|
||||
protected bool Active
|
||||
{
|
||||
[Token(Token = "0x600CF8A")]
|
||||
[Address(RVA = "0x497570", Offset = "0x496570", VA = "0x180497570")]
|
||||
get
|
||||
{
|
||||
return this.active;
|
||||
}
|
||||
[Token(Token = "0x600CF8B")]
|
||||
[Address(RVA = "0x611070", Offset = "0x610070", VA = "0x180611070")]
|
||||
set
|
||||
{
|
||||
this.active = value;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x170020F9 RID: 8441
|
||||
// (get) Token: 0x0600CF8C RID: 53132 RVA: 0x002F3640 File Offset: 0x002F1840
|
||||
// (set) Token: 0x0600CF8D RID: 53133 RVA: 0x002F3654 File Offset: 0x002F1854
|
||||
[Token(Token = "0x170020F9")]
|
||||
public Socket Client
|
||||
{
|
||||
[Token(Token = "0x600CF8C")]
|
||||
[Address(RVA = "0x4157C0", Offset = "0x4147C0", VA = "0x1804157C0")]
|
||||
get
|
||||
{
|
||||
return this.client;
|
||||
}
|
||||
[Token(Token = "0x600CF8D")]
|
||||
[Address(RVA = "0x22A4E30", Offset = "0x22A3E30", VA = "0x1822A4E30")]
|
||||
set
|
||||
{
|
||||
this.client = value;
|
||||
this.stream = (ulong)0L;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x170020FA RID: 8442
|
||||
// (get) Token: 0x0600CF8E RID: 53134 RVA: 0x002F3674 File Offset: 0x002F1874
|
||||
[Token(Token = "0x170020FA")]
|
||||
public int Available
|
||||
{
|
||||
[Token(Token = "0x600CF8E")]
|
||||
[Address(RVA = "0x22A5120", Offset = "0x22A4120", VA = "0x1822A5120")]
|
||||
get
|
||||
{
|
||||
return this.client.Available;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x170020FB RID: 8443
|
||||
// (get) Token: 0x0600CF8F RID: 53135 RVA: 0x002F3694 File Offset: 0x002F1894
|
||||
[Token(Token = "0x170020FB")]
|
||||
public bool Connected
|
||||
{
|
||||
[Token(Token = "0x600CF8F")]
|
||||
[Address(RVA = "0x22A5140", Offset = "0x22A4140", VA = "0x1822A5140")]
|
||||
get
|
||||
{
|
||||
return this.client.is_connected;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600CF90 RID: 53136 RVA: 0x002F36B4 File Offset: 0x002F18B4
|
||||
[Token(Token = "0x600CF90")]
|
||||
[Address(RVA = "0x22A4BD0", Offset = "0x22A3BD0", VA = "0x1822A4BD0")]
|
||||
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: 0x170020FC RID: 8444
|
||||
// (get) Token: 0x0600CF91 RID: 53137 RVA: 0x002F36F0 File Offset: 0x002F18F0
|
||||
// (set) Token: 0x0600CF92 RID: 53138 RVA: 0x002F3710 File Offset: 0x002F1910
|
||||
[Token(Token = "0x170020FC")]
|
||||
public bool ExclusiveAddressUse
|
||||
{
|
||||
[Token(Token = "0x600CF91")]
|
||||
[Address(RVA = "0x22A5160", Offset = "0x22A4160", VA = "0x1822A5160")]
|
||||
get
|
||||
{
|
||||
return this.client.ExclusiveAddressUse;
|
||||
}
|
||||
[Token(Token = "0x600CF92")]
|
||||
[Address(RVA = "0x22A5500", Offset = "0x22A4500", VA = "0x1822A5500")]
|
||||
set
|
||||
{
|
||||
this.client.ExclusiveAddressUse = value;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600CF93 RID: 53139 RVA: 0x002F3730 File Offset: 0x002F1930
|
||||
[Token(Token = "0x600CF93")]
|
||||
[Address(RVA = "0x22A4E30", Offset = "0x22A3E30", VA = "0x1822A4E30")]
|
||||
internal void SetTcpClient(Socket s)
|
||||
{
|
||||
this.client = s;
|
||||
this.stream = (ulong)0L;
|
||||
}
|
||||
|
||||
// Token: 0x170020FD RID: 8445
|
||||
// (get) Token: 0x0600CF94 RID: 53140 RVA: 0x002F3750 File Offset: 0x002F1950
|
||||
// (set) Token: 0x0600CF95 RID: 53141 RVA: 0x002F3790 File Offset: 0x002F1990
|
||||
[Token(Token = "0x170020FD")]
|
||||
public LingerOption LingerState
|
||||
{
|
||||
[Token(Token = "0x600CF94")]
|
||||
[Address(RVA = "0x22A5180", Offset = "0x22A4180", VA = "0x1822A5180")]
|
||||
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 = "0x600CF95")]
|
||||
[Address(RVA = "0x22A5520", Offset = "0x22A4520", VA = "0x1822A5520")]
|
||||
set
|
||||
{
|
||||
Socket socket = this.client;
|
||||
if (socket.is_connected)
|
||||
{
|
||||
socket.SetSocketOption((SocketOptionLevel)((uint)65535), (SocketOptionName)((uint)128), value);
|
||||
return;
|
||||
}
|
||||
this.linger_state = value;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x170020FE RID: 8446
|
||||
// (get) Token: 0x0600CF96 RID: 53142 RVA: 0x002F37D0 File Offset: 0x002F19D0
|
||||
// (set) Token: 0x0600CF97 RID: 53143 RVA: 0x002F37FC File Offset: 0x002F19FC
|
||||
[Token(Token = "0x170020FE")]
|
||||
public bool NoDelay
|
||||
{
|
||||
[Token(Token = "0x600CF96")]
|
||||
[Address(RVA = "0x22A5230", Offset = "0x22A4230", VA = "0x1822A5230")]
|
||||
get
|
||||
{
|
||||
if (this.values == (TcpClient.Properties)2)
|
||||
{
|
||||
object socketOption = this.client.GetSocketOption(SocketOptionLevel.Tcp, SocketOptionName.Debug);
|
||||
}
|
||||
return this.no_delay;
|
||||
}
|
||||
[Token(Token = "0x600CF97")]
|
||||
[Address(RVA = "0x22A5570", Offset = "0x22A4570", VA = "0x1822A5570")]
|
||||
set
|
||||
{
|
||||
if (this.client.is_connected)
|
||||
{
|
||||
return;
|
||||
}
|
||||
this.no_delay = value;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x170020FF RID: 8447
|
||||
// (get) Token: 0x0600CF98 RID: 53144 RVA: 0x002F3828 File Offset: 0x002F1A28
|
||||
// (set) Token: 0x0600CF99 RID: 53145 RVA: 0x002F3860 File Offset: 0x002F1A60
|
||||
[Token(Token = "0x170020FF")]
|
||||
public int ReceiveBufferSize
|
||||
{
|
||||
[Token(Token = "0x600CF98")]
|
||||
[Address(RVA = "0x22A52C0", Offset = "0x22A42C0", VA = "0x1822A52C0")]
|
||||
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 = "0x600CF99")]
|
||||
[Address(RVA = "0x22A55C0", Offset = "0x22A45C0", VA = "0x1822A55C0")]
|
||||
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: 0x17002100 RID: 8448
|
||||
// (get) Token: 0x0600CF9A RID: 53146 RVA: 0x002F38A0 File Offset: 0x002F1AA0
|
||||
// (set) Token: 0x0600CF9B RID: 53147 RVA: 0x002F38D8 File Offset: 0x002F1AD8
|
||||
[Token(Token = "0x17002100")]
|
||||
public int ReceiveTimeout
|
||||
{
|
||||
[Token(Token = "0x600CF9A")]
|
||||
[Address(RVA = "0x22A5350", Offset = "0x22A4350", VA = "0x1822A5350")]
|
||||
get
|
||||
{
|
||||
if (this.values == (TcpClient.Properties)8)
|
||||
{
|
||||
object socketOption = this.client.GetSocketOption((SocketOptionLevel)((uint)65535), (SocketOptionName)((uint)4102));
|
||||
}
|
||||
return this.recv_timeout;
|
||||
}
|
||||
[Token(Token = "0x600CF9B")]
|
||||
[Address(RVA = "0x22A5610", Offset = "0x22A4610", VA = "0x1822A5610")]
|
||||
set
|
||||
{
|
||||
Socket socket = this.client;
|
||||
if (socket.is_connected)
|
||||
{
|
||||
socket.SetSocketOption((SocketOptionLevel)((uint)65535), (SocketOptionName)((uint)4102), value);
|
||||
return;
|
||||
}
|
||||
this.recv_timeout = value;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17002101 RID: 8449
|
||||
// (get) Token: 0x0600CF9C RID: 53148 RVA: 0x002F3918 File Offset: 0x002F1B18
|
||||
// (set) Token: 0x0600CF9D RID: 53149 RVA: 0x002F3950 File Offset: 0x002F1B50
|
||||
[Token(Token = "0x17002101")]
|
||||
public int SendBufferSize
|
||||
{
|
||||
[Token(Token = "0x600CF9C")]
|
||||
[Address(RVA = "0x22A53E0", Offset = "0x22A43E0", VA = "0x1822A53E0")]
|
||||
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 = "0x600CF9D")]
|
||||
[Address(RVA = "0x22A5660", Offset = "0x22A4660", VA = "0x1822A5660")]
|
||||
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: 0x17002102 RID: 8450
|
||||
// (get) Token: 0x0600CF9E RID: 53150 RVA: 0x002F3990 File Offset: 0x002F1B90
|
||||
// (set) Token: 0x0600CF9F RID: 53151 RVA: 0x002F39C8 File Offset: 0x002F1BC8
|
||||
[Token(Token = "0x17002102")]
|
||||
public int SendTimeout
|
||||
{
|
||||
[Token(Token = "0x600CF9E")]
|
||||
[Address(RVA = "0x22A5470", Offset = "0x22A4470", VA = "0x1822A5470")]
|
||||
get
|
||||
{
|
||||
if (this.values == (TcpClient.Properties)32)
|
||||
{
|
||||
object socketOption = this.client.GetSocketOption((SocketOptionLevel)((uint)65535), (SocketOptionName)((uint)4101));
|
||||
}
|
||||
return this.send_timeout;
|
||||
}
|
||||
[Token(Token = "0x600CF9F")]
|
||||
[Address(RVA = "0x22A56B0", Offset = "0x22A46B0", VA = "0x1822A56B0")]
|
||||
set
|
||||
{
|
||||
Socket socket = this.client;
|
||||
if (socket.is_connected)
|
||||
{
|
||||
socket.SetSocketOption((SocketOptionLevel)((uint)65535), (SocketOptionName)((uint)4101), value);
|
||||
return;
|
||||
}
|
||||
this.send_timeout = value;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17002103 RID: 8451
|
||||
// (get) Token: 0x0600CFA0 RID: 53152 RVA: 0x002F3A08 File Offset: 0x002F1C08
|
||||
// (set) Token: 0x0600CFA1 RID: 53153 RVA: 0x002F3A1C File Offset: 0x002F1C1C
|
||||
[Token(Token = "0x17002103")]
|
||||
public TimeSpan ConnectTimeout
|
||||
{
|
||||
[Token(Token = "0x600CFA0")]
|
||||
[Address(RVA = "0x4936E0", Offset = "0x4926E0", VA = "0x1804936E0")]
|
||||
get;
|
||||
[Token(Token = "0x600CFA1")]
|
||||
[Address(RVA = "0x55BCE0", Offset = "0x55ACE0", VA = "0x18055BCE0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x0600CFA2 RID: 53154 RVA: 0x0000220F File Offset: 0x0000040F
|
||||
[Token(Token = "0x600CFA2")]
|
||||
[Address(RVA = "0x22A4090", Offset = "0x22A3090", VA = "0x1822A4090")]
|
||||
public void Close()
|
||||
{
|
||||
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
||||
}
|
||||
|
||||
// Token: 0x0600CFA3 RID: 53155 RVA: 0x002F3A30 File Offset: 0x002F1C30
|
||||
[Token(Token = "0x600CFA3")]
|
||||
[Address(RVA = "0x22A40D0", Offset = "0x22A30D0", VA = "0x1822A40D0")]
|
||||
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: 0x0600CFA4 RID: 53156 RVA: 0x002F3B1C File Offset: 0x002F1D1C
|
||||
[Token(Token = "0x600CFA4")]
|
||||
[Address(RVA = "0x22A4310", Offset = "0x22A3310", VA = "0x1822A4310")]
|
||||
public void Connect(IPAddress address, int port)
|
||||
{
|
||||
IPEndPoint ipendPoint = new IPEndPoint(address, port);
|
||||
this.Connect(ipendPoint);
|
||||
}
|
||||
|
||||
// Token: 0x0600CFA5 RID: 53157 RVA: 0x002F3B38 File Offset: 0x002F1D38
|
||||
[Token(Token = "0x600CFA5")]
|
||||
[Address(RVA = "0x22A4C70", Offset = "0x22A3C70", VA = "0x1822A4C70")]
|
||||
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: 0x0600CFA6 RID: 53158 RVA: 0x002F3C88 File Offset: 0x002F1E88
|
||||
[Token(Token = "0x600CFA6")]
|
||||
[Address(RVA = "0x22A4390", Offset = "0x22A3390", VA = "0x1822A4390")]
|
||||
public void Connect(string hostname, int port)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CFA6)
|
||||
|
||||
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: 0x0600CFA7 RID: 53159 RVA: 0x002F3D48 File Offset: 0x002F1F48
|
||||
[Token(Token = "0x600CFA7")]
|
||||
[Address(RVA = "0x22A4630", Offset = "0x22A3630", VA = "0x1822A4630")]
|
||||
public void Connect(IPAddress[] ipAddresses, int port)
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CFA7)
|
||||
|
||||
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: 0x0600CFA8 RID: 53160 RVA: 0x002F3E38 File Offset: 0x002F2038
|
||||
[Token(Token = "0x600CFA8")]
|
||||
[Address(RVA = "0x22A49D0", Offset = "0x22A39D0", VA = "0x1822A49D0")]
|
||||
public void EndConnect(IAsyncResult asyncResult)
|
||||
{
|
||||
this.client.EndConnect(asyncResult);
|
||||
}
|
||||
|
||||
// Token: 0x0600CFA9 RID: 53161 RVA: 0x002F3E58 File Offset: 0x002F2058
|
||||
[Token(Token = "0x600CFA9")]
|
||||
[Address(RVA = "0x22A3FA0", Offset = "0x22A2FA0", VA = "0x1822A3FA0")]
|
||||
public IAsyncResult BeginConnect(IPAddress address, int port, AsyncCallback requestCallback, object state)
|
||||
{
|
||||
Socket socket = this.client;
|
||||
IAsyncResult asyncResult;
|
||||
return asyncResult;
|
||||
}
|
||||
|
||||
// Token: 0x0600CFAA RID: 53162 RVA: 0x002F3E74 File Offset: 0x002F2074
|
||||
[Token(Token = "0x600CFAA")]
|
||||
[Address(RVA = "0x22A3F70", Offset = "0x22A2F70", VA = "0x1822A3F70")]
|
||||
public IAsyncResult BeginConnect(IPAddress[] addresses, int port, AsyncCallback requestCallback, object state)
|
||||
{
|
||||
Socket socket = this.client;
|
||||
IAsyncResult asyncResult;
|
||||
return asyncResult;
|
||||
}
|
||||
|
||||
// Token: 0x0600CFAB RID: 53163 RVA: 0x002F3E90 File Offset: 0x002F2090
|
||||
[Token(Token = "0x600CFAB")]
|
||||
[Address(RVA = "0x22A3FD0", Offset = "0x22A2FD0", VA = "0x1822A3FD0")]
|
||||
public IAsyncResult BeginConnect(string host, int port, AsyncCallback requestCallback, object state)
|
||||
{
|
||||
Socket socket = this.client;
|
||||
IAsyncResult asyncResult;
|
||||
return asyncResult;
|
||||
}
|
||||
|
||||
// Token: 0x0600CFAC RID: 53164 RVA: 0x002F3EAC File Offset: 0x002F20AC
|
||||
[Token(Token = "0x600CFAC")]
|
||||
[Address(RVA = "0x22A4E40", Offset = "0x22A3E40", VA = "0x1822A4E40", Slot = "4")]
|
||||
void IDisposable.Dispose()
|
||||
{
|
||||
this.System.IDisposable.Dispose();
|
||||
GC.SuppressFinalize(this);
|
||||
}
|
||||
|
||||
// Token: 0x0600CFAD RID: 53165 RVA: 0x002F3EC8 File Offset: 0x002F20C8
|
||||
[Token(Token = "0x600CFAD")]
|
||||
[Address(RVA = "0x22A4970", Offset = "0x22A3970", VA = "0x1822A4970", 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: 0x0600CFAE RID: 53166 RVA: 0x002F3F28 File Offset: 0x002F2128
|
||||
[Token(Token = "0x600CFAE")]
|
||||
[Address(RVA = "0x22A49F0", Offset = "0x22A39F0", VA = "0x1822A49F0", Slot = "1")]
|
||||
protected override void Finalize()
|
||||
{
|
||||
int num;
|
||||
do
|
||||
{
|
||||
num = 0;
|
||||
this.System.IDisposable.Dispose();
|
||||
base..ctor();
|
||||
}
|
||||
while (num != 0);
|
||||
}
|
||||
|
||||
// Token: 0x0600CFAF RID: 53167 RVA: 0x002F3F48 File Offset: 0x002F2148
|
||||
[Token(Token = "0x600CFAF")]
|
||||
[Address(RVA = "0x22A4A70", Offset = "0x22A3A70", VA = "0x1822A4A70")]
|
||||
public Stream GetStream()
|
||||
{
|
||||
/*
|
||||
An exception occurred when decompiling this method (0600CFAF)
|
||||
|
||||
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: 0x0600CFB0 RID: 53168 RVA: 0x002F3F80 File Offset: 0x002F2180
|
||||
[Token(Token = "0x600CFB0")]
|
||||
[Address(RVA = "0x22A4000", Offset = "0x22A3000", VA = "0x1822A4000")]
|
||||
private void CheckDisposed()
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x040083B0 RID: 33712
|
||||
[FieldOffset(Offset = "0x10")]
|
||||
[Token(Token = "0x40083B0")]
|
||||
private NetworkStream stream;
|
||||
|
||||
// Token: 0x040083B1 RID: 33713
|
||||
[FieldOffset(Offset = "0x18")]
|
||||
[Token(Token = "0x40083B1")]
|
||||
private bool active;
|
||||
|
||||
// Token: 0x040083B2 RID: 33714
|
||||
[FieldOffset(Offset = "0x20")]
|
||||
[Token(Token = "0x40083B2")]
|
||||
private Socket client;
|
||||
|
||||
// Token: 0x040083B3 RID: 33715
|
||||
[FieldOffset(Offset = "0x28")]
|
||||
[Token(Token = "0x40083B3")]
|
||||
private bool disposed;
|
||||
|
||||
// Token: 0x040083B4 RID: 33716
|
||||
[FieldOffset(Offset = "0x2C")]
|
||||
[Token(Token = "0x40083B4")]
|
||||
private TcpClient.Properties values;
|
||||
|
||||
// Token: 0x040083B5 RID: 33717
|
||||
[FieldOffset(Offset = "0x30")]
|
||||
[Token(Token = "0x40083B5")]
|
||||
private int recv_timeout;
|
||||
|
||||
// Token: 0x040083B6 RID: 33718
|
||||
[FieldOffset(Offset = "0x34")]
|
||||
[Token(Token = "0x40083B6")]
|
||||
private int send_timeout;
|
||||
|
||||
// Token: 0x040083B7 RID: 33719
|
||||
[FieldOffset(Offset = "0x38")]
|
||||
[Token(Token = "0x40083B7")]
|
||||
private int recv_buffer_size;
|
||||
|
||||
// Token: 0x040083B8 RID: 33720
|
||||
[FieldOffset(Offset = "0x3C")]
|
||||
[Token(Token = "0x40083B8")]
|
||||
private int send_buffer_size;
|
||||
|
||||
// Token: 0x040083B9 RID: 33721
|
||||
[FieldOffset(Offset = "0x40")]
|
||||
[Token(Token = "0x40083B9")]
|
||||
private LingerOption linger_state;
|
||||
|
||||
// Token: 0x040083BA RID: 33722
|
||||
[FieldOffset(Offset = "0x48")]
|
||||
[Token(Token = "0x40083BA")]
|
||||
private bool no_delay;
|
||||
|
||||
// Token: 0x02002055 RID: 8277
|
||||
[Token(Token = "0x2002055")]
|
||||
private enum Properties : uint
|
||||
{
|
||||
// Token: 0x040083BD RID: 33725
|
||||
[Token(Token = "0x40083BD")]
|
||||
LingerState = 1U,
|
||||
// Token: 0x040083BE RID: 33726
|
||||
[Token(Token = "0x40083BE")]
|
||||
NoDelay,
|
||||
// Token: 0x040083BF RID: 33727
|
||||
[Token(Token = "0x40083BF")]
|
||||
ReceiveBufferSize = 4U,
|
||||
// Token: 0x040083C0 RID: 33728
|
||||
[Token(Token = "0x40083C0")]
|
||||
ReceiveTimeout = 8U,
|
||||
// Token: 0x040083C1 RID: 33729
|
||||
[Token(Token = "0x40083C1")]
|
||||
SendBufferSize = 16U,
|
||||
// Token: 0x040083C2 RID: 33730
|
||||
[Token(Token = "0x40083C2")]
|
||||
SendTimeout = 32U
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,59 @@
|
||||
using System;
|
||||
using System.IO;
|
||||
using BestHTTP.Authentication;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP
|
||||
{
|
||||
// Token: 0x02001978 RID: 6520
|
||||
[Token(Token = "0x2001978")]
|
||||
public abstract class Proxy
|
||||
{
|
||||
// Token: 0x170017F3 RID: 6131
|
||||
// (get) Token: 0x0600973F RID: 38719 RVA: 0x001ED610 File Offset: 0x001EB810
|
||||
// (set) Token: 0x06009740 RID: 38720 RVA: 0x001ED624 File Offset: 0x001EB824
|
||||
[Token(Token = "0x170017F3")]
|
||||
public Uri Address
|
||||
{
|
||||
[Token(Token = "0x600973F")]
|
||||
[Address(RVA = "0x411530", Offset = "0x410530", VA = "0x180411530")]
|
||||
get;
|
||||
[Token(Token = "0x6009740")]
|
||||
[Address(RVA = "0x415800", Offset = "0x414800", VA = "0x180415800")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x170017F4 RID: 6132
|
||||
// (get) Token: 0x06009741 RID: 38721 RVA: 0x001ED638 File Offset: 0x001EB838
|
||||
// (set) Token: 0x06009742 RID: 38722 RVA: 0x001ED64C File Offset: 0x001EB84C
|
||||
[Token(Token = "0x170017F4")]
|
||||
public Credentials Credentials
|
||||
{
|
||||
[Token(Token = "0x6009741")]
|
||||
[Address(RVA = "0x4157B0", Offset = "0x4147B0", VA = "0x1804157B0")]
|
||||
get;
|
||||
[Token(Token = "0x6009742")]
|
||||
[Address(RVA = "0x4157F0", Offset = "0x4147F0", VA = "0x1804157F0")]
|
||||
set;
|
||||
}
|
||||
|
||||
// Token: 0x06009743 RID: 38723 RVA: 0x001ED660 File Offset: 0x001EB860
|
||||
[Token(Token = "0x6009743")]
|
||||
[Address(RVA = "0x417DD0", Offset = "0x416DD0", VA = "0x180417DD0")]
|
||||
internal Proxy(Uri address, Credentials credentials)
|
||||
{
|
||||
this.Address = address;
|
||||
this.Credentials = credentials;
|
||||
}
|
||||
|
||||
// Token: 0x06009744 RID: 38724
|
||||
[Token(Token = "0x6009744")]
|
||||
[Address(Slot = "4")]
|
||||
internal abstract void Connect(Stream stream, HTTPRequest request);
|
||||
|
||||
// Token: 0x06009745 RID: 38725
|
||||
[Token(Token = "0x6009745")]
|
||||
[Address(Slot = "5")]
|
||||
internal abstract string GetRequestPath(Uri uri);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP
|
||||
{
|
||||
// Token: 0x0200196F RID: 6511
|
||||
[Token(Token = "0x200196F")]
|
||||
internal enum RetryCauses
|
||||
{
|
||||
// Token: 0x04006636 RID: 26166
|
||||
[Token(Token = "0x4006636")]
|
||||
None,
|
||||
// Token: 0x04006637 RID: 26167
|
||||
[Token(Token = "0x4006637")]
|
||||
Reconnect,
|
||||
// Token: 0x04006638 RID: 26168
|
||||
[Token(Token = "0x4006638")]
|
||||
Authenticate,
|
||||
// Token: 0x04006639 RID: 26169
|
||||
[Token(Token = "0x4006639")]
|
||||
ProxyAuthenticate
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP
|
||||
{
|
||||
// Token: 0x0200198B RID: 6539
|
||||
[Token(Token = "0x200198B")]
|
||||
internal enum SOCKSAddressTypes
|
||||
{
|
||||
// Token: 0x04006702 RID: 26370
|
||||
[Token(Token = "0x4006702")]
|
||||
IPV4,
|
||||
// Token: 0x04006703 RID: 26371
|
||||
[Token(Token = "0x4006703")]
|
||||
DomainName = 3,
|
||||
// Token: 0x04006704 RID: 26372
|
||||
[Token(Token = "0x4006704")]
|
||||
IPv6
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
using System;
|
||||
using Cpp2IlInjected;
|
||||
|
||||
namespace BestHTTP
|
||||
{
|
||||
// Token: 0x02001989 RID: 6537
|
||||
[Token(Token = "0x2001989")]
|
||||
internal enum SOCKSMethods : byte
|
||||
{
|
||||
// Token: 0x040066F3 RID: 26355
|
||||
[Token(Token = "0x40066F3")]
|
||||
NoAuthenticationRequired,
|
||||
// Token: 0x040066F4 RID: 26356
|
||||
[Token(Token = "0x40066F4")]
|
||||
GSSAPI,
|
||||
// Token: 0x040066F5 RID: 26357
|
||||
[Token(Token = "0x40066F5")]
|
||||
UsernameAndPassword,
|
||||
// Token: 0x040066F6 RID: 26358
|
||||
[Token(Token = "0x40066F6")]
|
||||
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: 0x0200198C RID: 6540
|
||||
[Token(Token = "0x200198C")]
|
||||
public sealed class SOCKSProxy : Proxy
|
||||
{
|
||||
// Token: 0x06009865 RID: 39013 RVA: 0x001F152C File Offset: 0x001EF72C
|
||||
[Token(Token = "0x6009865")]
|
||||
[Address(RVA = "0x417DD0", Offset = "0x416DD0", VA = "0x180417DD0")]
|
||||
public SOCKSProxy(Uri address, Credentials credentials)
|
||||
{
|
||||
this.<Address>k__BackingField = address;
|
||||
this.<Credentials>k__BackingField = credentials;
|
||||
}
|
||||
|
||||
// Token: 0x06009866 RID: 39014 RVA: 0x001F1550 File Offset: 0x001EF750
|
||||
[Token(Token = "0x6009866")]
|
||||
[Address(RVA = "0x22A3D80", Offset = "0x22A2D80", VA = "0x1822A3D80", Slot = "5")]
|
||||
internal override string GetRequestPath(Uri uri)
|
||||
{
|
||||
return uri.GetRequestPathAndQueryURL();
|
||||
}
|
||||
|
||||
// Token: 0x06009867 RID: 39015 RVA: 0x001F1564 File Offset: 0x001EF764
|
||||
[Token(Token = "0x6009867")]
|
||||
[Address(RVA = "0x22A2C60", Offset = "0x22A1C60", VA = "0x1822A2C60", 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: 0x06009868 RID: 39016 RVA: 0x001F1804 File Offset: 0x001EFA04
|
||||
[Token(Token = "0x6009868")]
|
||||
[Address(RVA = "0x22A3E30", Offset = "0x22A2E30", VA = "0x1822A3E30")]
|
||||
private void WriteString(byte[] buffer, ref int count, string str)
|
||||
{
|
||||
Encoding utf = Encoding.UTF8;
|
||||
count.m_value = utf;
|
||||
}
|
||||
|
||||
// Token: 0x06009869 RID: 39017 RVA: 0x001F1828 File Offset: 0x001EFA28
|
||||
[Token(Token = "0x6009869")]
|
||||
[Address(RVA = "0x22A3DE0", Offset = "0x22A2DE0", VA = "0x1822A3DE0")]
|
||||
private void WriteBytes(byte[] buffer, ref int count, byte[] bytes)
|
||||
{
|
||||
int length = bytes.Length;
|
||||
int length2 = bytes.Length;
|
||||
}
|
||||
|
||||
// Token: 0x0600986A RID: 39018 RVA: 0x001F184C File Offset: 0x001EFA4C
|
||||
[Token(Token = "0x600986A")]
|
||||
[Address(RVA = "0x22A2B70", Offset = "0x22A1B70", VA = "0x1822A2B70")]
|
||||
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: 0x0200198A RID: 6538
|
||||
[Token(Token = "0x200198A")]
|
||||
internal enum SOCKSReplies : byte
|
||||
{
|
||||
// Token: 0x040066F8 RID: 26360
|
||||
[Token(Token = "0x40066F8")]
|
||||
Succeeded,
|
||||
// Token: 0x040066F9 RID: 26361
|
||||
[Token(Token = "0x40066F9")]
|
||||
GeneralSOCKSServerFailure,
|
||||
// Token: 0x040066FA RID: 26362
|
||||
[Token(Token = "0x40066FA")]
|
||||
ConnectionNotAllowedByRuleset,
|
||||
// Token: 0x040066FB RID: 26363
|
||||
[Token(Token = "0x40066FB")]
|
||||
NetworkUnreachable,
|
||||
// Token: 0x040066FC RID: 26364
|
||||
[Token(Token = "0x40066FC")]
|
||||
HostUnreachable,
|
||||
// Token: 0x040066FD RID: 26365
|
||||
[Token(Token = "0x40066FD")]
|
||||
ConnectionRefused,
|
||||
// Token: 0x040066FE RID: 26366
|
||||
[Token(Token = "0x40066FE")]
|
||||
TTLExpired,
|
||||
// Token: 0x040066FF RID: 26367
|
||||
[Token(Token = "0x40066FF")]
|
||||
CommandNotSupported,
|
||||
// Token: 0x04006700 RID: 26368
|
||||
[Token(Token = "0x4006700")]
|
||||
AddressTypeNotSupported
|
||||
}
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user