This commit is contained in:
niko
2026-06-04 11:42:34 +02:00
parent f39ba70a9f
commit e720b98cd1
7488 changed files with 2493818 additions and 0 deletions
+242
View File
@@ -0,0 +1,242 @@
using System;
using System.IO;
using System.Text;
namespace UnityEngine
{
// Token: 0x02000290 RID: 656
internal class WWWTranscoder
{
// Token: 0x06002CF9 RID: 11513 RVA: 0x0003F5BC File Offset: 0x0003D7BC
private static byte Hex2Byte(byte[] b, int offset)
{
byte b2 = 0;
for (int i = offset; i < offset + 2; i++)
{
b2 *= 16;
int num = (int)b[i];
if (num >= 48 && num <= 57)
{
num -= 48;
}
else if (num >= 65 && num <= 75)
{
num -= 55;
}
else if (num >= 97 && num <= 102)
{
num -= 87;
}
if (num > 15)
{
return 63;
}
b2 += (byte)num;
}
return b2;
}
// Token: 0x06002CFA RID: 11514 RVA: 0x0003F654 File Offset: 0x0003D854
private static byte[] Byte2Hex(byte b, byte[] hexChars)
{
return new byte[]
{
hexChars[b >> 4],
hexChars[(int)(b & 15)]
};
}
// Token: 0x06002CFB RID: 11515 RVA: 0x0003F684 File Offset: 0x0003D884
public static string URLEncode(string toEncode)
{
return WWWTranscoder.URLEncode(toEncode, Encoding.UTF8);
}
// Token: 0x06002CFC RID: 11516 RVA: 0x0003F6A4 File Offset: 0x0003D8A4
public static string URLEncode(string toEncode, Encoding e)
{
byte[] array = WWWTranscoder.Encode(e.GetBytes(toEncode), WWWTranscoder.urlEscapeChar, WWWTranscoder.urlSpace, WWWTranscoder.urlForbidden, false);
return WWWForm.DefaultEncoding.GetString(array, 0, array.Length);
}
// Token: 0x06002CFD RID: 11517 RVA: 0x0003F6E8 File Offset: 0x0003D8E8
public static byte[] URLEncode(byte[] toEncode)
{
return WWWTranscoder.Encode(toEncode, WWWTranscoder.urlEscapeChar, WWWTranscoder.urlSpace, WWWTranscoder.urlForbidden, false);
}
// Token: 0x06002CFE RID: 11518 RVA: 0x0003F714 File Offset: 0x0003D914
public static string QPEncode(string toEncode)
{
return WWWTranscoder.QPEncode(toEncode, Encoding.UTF8);
}
// Token: 0x06002CFF RID: 11519 RVA: 0x0003F734 File Offset: 0x0003D934
public static string QPEncode(string toEncode, Encoding e)
{
byte[] array = WWWTranscoder.Encode(e.GetBytes(toEncode), WWWTranscoder.qpEscapeChar, WWWTranscoder.qpSpace, WWWTranscoder.qpForbidden, true);
return WWWForm.DefaultEncoding.GetString(array, 0, array.Length);
}
// Token: 0x06002D00 RID: 11520 RVA: 0x0003F778 File Offset: 0x0003D978
public static byte[] QPEncode(byte[] toEncode)
{
return WWWTranscoder.Encode(toEncode, WWWTranscoder.qpEscapeChar, WWWTranscoder.qpSpace, WWWTranscoder.qpForbidden, true);
}
// Token: 0x06002D01 RID: 11521 RVA: 0x0003F7A4 File Offset: 0x0003D9A4
public static byte[] Encode(byte[] input, byte escapeChar, byte space, byte[] forbidden, bool uppercase)
{
byte[] array;
using (MemoryStream memoryStream = new MemoryStream(input.Length * 2))
{
for (int i = 0; i < input.Length; i++)
{
if (input[i] == 32)
{
memoryStream.WriteByte(space);
}
else if (input[i] < 32 || input[i] > 126 || WWWTranscoder.ByteArrayContains(forbidden, input[i]))
{
memoryStream.WriteByte(escapeChar);
memoryStream.Write(WWWTranscoder.Byte2Hex(input[i], (!uppercase) ? WWWTranscoder.lcHexChars : WWWTranscoder.ucHexChars), 0, 2);
}
else
{
memoryStream.WriteByte(input[i]);
}
}
array = memoryStream.ToArray();
}
return array;
}
// Token: 0x06002D02 RID: 11522 RVA: 0x0003F878 File Offset: 0x0003DA78
private static bool ByteArrayContains(byte[] array, byte b)
{
int num = array.Length;
for (int i = 0; i < num; i++)
{
if (array[i] == b)
{
return true;
}
}
return false;
}
// Token: 0x06002D03 RID: 11523 RVA: 0x0003F8B8 File Offset: 0x0003DAB8
public static string URLDecode(string toEncode)
{
return WWWTranscoder.URLDecode(toEncode, Encoding.UTF8);
}
// Token: 0x06002D04 RID: 11524 RVA: 0x0003F8D8 File Offset: 0x0003DAD8
public static string URLDecode(string toEncode, Encoding e)
{
byte[] array = WWWTranscoder.Decode(WWWForm.DefaultEncoding.GetBytes(toEncode), WWWTranscoder.urlEscapeChar, WWWTranscoder.urlSpace);
return e.GetString(array, 0, array.Length);
}
// Token: 0x06002D05 RID: 11525 RVA: 0x0003F914 File Offset: 0x0003DB14
public static byte[] URLDecode(byte[] toEncode)
{
return WWWTranscoder.Decode(toEncode, WWWTranscoder.urlEscapeChar, WWWTranscoder.urlSpace);
}
// Token: 0x06002D06 RID: 11526 RVA: 0x0003F93C File Offset: 0x0003DB3C
public static string QPDecode(string toEncode)
{
return WWWTranscoder.QPDecode(toEncode, Encoding.UTF8);
}
// Token: 0x06002D07 RID: 11527 RVA: 0x0003F95C File Offset: 0x0003DB5C
public static string QPDecode(string toEncode, Encoding e)
{
byte[] array = WWWTranscoder.Decode(WWWForm.DefaultEncoding.GetBytes(toEncode), WWWTranscoder.qpEscapeChar, WWWTranscoder.qpSpace);
return e.GetString(array, 0, array.Length);
}
// Token: 0x06002D08 RID: 11528 RVA: 0x0003F998 File Offset: 0x0003DB98
public static byte[] QPDecode(byte[] toEncode)
{
return WWWTranscoder.Decode(toEncode, WWWTranscoder.qpEscapeChar, WWWTranscoder.qpSpace);
}
// Token: 0x06002D09 RID: 11529 RVA: 0x0003F9C0 File Offset: 0x0003DBC0
public static byte[] Decode(byte[] input, byte escapeChar, byte space)
{
byte[] array;
using (MemoryStream memoryStream = new MemoryStream(input.Length))
{
for (int i = 0; i < input.Length; i++)
{
if (input[i] == space)
{
memoryStream.WriteByte(32);
}
else if (input[i] == escapeChar && i + 2 < input.Length)
{
i++;
memoryStream.WriteByte(WWWTranscoder.Hex2Byte(input, i++));
}
else
{
memoryStream.WriteByte(input[i]);
}
}
array = memoryStream.ToArray();
}
return array;
}
// Token: 0x06002D0A RID: 11530 RVA: 0x0003FA6C File Offset: 0x0003DC6C
public static bool SevenBitClean(string s)
{
return WWWTranscoder.SevenBitClean(s, Encoding.UTF8);
}
// Token: 0x06002D0B RID: 11531 RVA: 0x0003FA8C File Offset: 0x0003DC8C
public static bool SevenBitClean(string s, Encoding e)
{
return WWWTranscoder.SevenBitClean(e.GetBytes(s));
}
// Token: 0x06002D0C RID: 11532 RVA: 0x0003FAB0 File Offset: 0x0003DCB0
public static bool SevenBitClean(byte[] input)
{
for (int i = 0; i < input.Length; i++)
{
if (input[i] < 32 || input[i] > 126)
{
return false;
}
}
return true;
}
// Token: 0x04000899 RID: 2201
private static byte[] ucHexChars = WWWForm.DefaultEncoding.GetBytes("0123456789ABCDEF");
// Token: 0x0400089A RID: 2202
private static byte[] lcHexChars = WWWForm.DefaultEncoding.GetBytes("0123456789abcdef");
// Token: 0x0400089B RID: 2203
private static byte urlEscapeChar = 37;
// Token: 0x0400089C RID: 2204
private static byte urlSpace = 43;
// Token: 0x0400089D RID: 2205
private static byte[] urlForbidden = WWWForm.DefaultEncoding.GetBytes("@&;:<>=?\"'/\\!#%+$,{}|^[]`");
// Token: 0x0400089E RID: 2206
private static byte qpEscapeChar = 61;
// Token: 0x0400089F RID: 2207
private static byte qpSpace = 95;
// Token: 0x040008A0 RID: 2208
private static byte[] qpForbidden = WWWForm.DefaultEncoding.GetBytes("&;=?\"'%+_");
}
}