442 lines
12 KiB
C#
442 lines
12 KiB
C#
using System;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Utilities;
|
|
using Cpp2IlInjected;
|
|
|
|
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Modes.Gcm
|
|
{
|
|
// Token: 0x02001D23 RID: 7459
|
|
[Token(Token = "0x2001D23")]
|
|
internal abstract class GcmUtilities
|
|
{
|
|
// Token: 0x0600B8BB RID: 47291 RVA: 0x00280D14 File Offset: 0x0027EF14
|
|
[Token(Token = "0x600B8BB")]
|
|
[Address(RVA = "0x25B9D80", Offset = "0x25B8D80", VA = "0x1825B9D80")]
|
|
private static uint[] GenerateLookup()
|
|
{
|
|
uint[] array = new uint[256];
|
|
int num = 0;
|
|
num++;
|
|
array[0] = (uint)256;
|
|
return array;
|
|
}
|
|
|
|
// Token: 0x0600B8BC RID: 47292 RVA: 0x00280D48 File Offset: 0x0027EF48
|
|
[Token(Token = "0x600B8BC")]
|
|
[Address(RVA = "0x25BA790", Offset = "0x25B9790", VA = "0x1825BA790")]
|
|
internal static byte[] OneAsBytes()
|
|
{
|
|
byte[] array = new byte[16];
|
|
array[0] = (byte)((ulong)128L);
|
|
return array;
|
|
}
|
|
|
|
// Token: 0x0600B8BD RID: 47293 RVA: 0x00280D74 File Offset: 0x0027EF74
|
|
[Token(Token = "0x600B8BD")]
|
|
[Address(RVA = "0x25BA7F0", Offset = "0x25B97F0", VA = "0x1825BA7F0")]
|
|
internal static uint[] OneAsUints()
|
|
{
|
|
uint[] array = new uint[4];
|
|
array[0] = (uint)((ulong)2147483648L);
|
|
return array;
|
|
}
|
|
|
|
// Token: 0x0600B8BE RID: 47294 RVA: 0x00280DA0 File Offset: 0x0027EFA0
|
|
[Token(Token = "0x600B8BE")]
|
|
[Address(RVA = "0x25BA850", Offset = "0x25B9850", VA = "0x1825BA850")]
|
|
internal static ulong[] OneAsUlongs()
|
|
{
|
|
ulong[] array = new ulong[2];
|
|
array[0] = (ulong)long.MinValue;
|
|
return array;
|
|
}
|
|
|
|
// Token: 0x0600B8BF RID: 47295 RVA: 0x00280DCC File Offset: 0x0027EFCC
|
|
[Token(Token = "0x600B8BF")]
|
|
[Address(RVA = "0x25B9C80", Offset = "0x25B8C80", VA = "0x1825B9C80")]
|
|
internal static byte[] AsBytes(uint[] x)
|
|
{
|
|
return Pack.UInt32_To_BE(x);
|
|
}
|
|
|
|
// Token: 0x0600B8C0 RID: 47296 RVA: 0x00280DE0 File Offset: 0x0027EFE0
|
|
[Token(Token = "0x600B8C0")]
|
|
[Address(RVA = "0x25B9C90", Offset = "0x25B8C90", VA = "0x1825B9C90")]
|
|
internal static void AsBytes(uint[] x, byte[] z)
|
|
{
|
|
int num = 0;
|
|
Pack.UInt32_To_BE(x, z, num);
|
|
}
|
|
|
|
// Token: 0x0600B8C1 RID: 47297 RVA: 0x00280DF8 File Offset: 0x0027EFF8
|
|
[Token(Token = "0x600B8C1")]
|
|
[Address(RVA = "0x25B9C10", Offset = "0x25B8C10", VA = "0x1825B9C10")]
|
|
internal static byte[] AsBytes(ulong[] x)
|
|
{
|
|
byte[] array = new byte[16];
|
|
int num = 0;
|
|
Pack.UInt64_To_BE(x, array, num);
|
|
return array;
|
|
}
|
|
|
|
// Token: 0x0600B8C2 RID: 47298 RVA: 0x00280E18 File Offset: 0x0027F018
|
|
[Token(Token = "0x600B8C2")]
|
|
[Address(RVA = "0x25B9C70", Offset = "0x25B8C70", VA = "0x1825B9C70")]
|
|
internal static void AsBytes(ulong[] x, byte[] z)
|
|
{
|
|
int num = 0;
|
|
Pack.UInt64_To_BE(x, z, num);
|
|
}
|
|
|
|
// Token: 0x0600B8C3 RID: 47299 RVA: 0x00280E30 File Offset: 0x0027F030
|
|
[Token(Token = "0x600B8C3")]
|
|
[Address(RVA = "0x25B9CB0", Offset = "0x25B8CB0", VA = "0x1825B9CB0")]
|
|
internal static uint[] AsUints(byte[] bs)
|
|
{
|
|
uint[] array = new uint[4];
|
|
int num = 0;
|
|
Pack.BE_To_UInt32(bs, num, array);
|
|
return array;
|
|
}
|
|
|
|
// Token: 0x0600B8C4 RID: 47300 RVA: 0x00280E50 File Offset: 0x0027F050
|
|
[Token(Token = "0x600B8C4")]
|
|
[Address(RVA = "0x25B9CA0", Offset = "0x25B8CA0", VA = "0x1825B9CA0")]
|
|
internal static void AsUints(byte[] bs, uint[] output)
|
|
{
|
|
int num = 0;
|
|
Pack.BE_To_UInt32(bs, num, output);
|
|
}
|
|
|
|
// Token: 0x0600B8C5 RID: 47301 RVA: 0x00280E68 File Offset: 0x0027F068
|
|
[Token(Token = "0x600B8C5")]
|
|
[Address(RVA = "0x25B9D10", Offset = "0x25B8D10", VA = "0x1825B9D10")]
|
|
internal static ulong[] AsUlongs(byte[] x)
|
|
{
|
|
ulong[] array = new ulong[2];
|
|
int num = 0;
|
|
Pack.BE_To_UInt64(x, num, array);
|
|
return array;
|
|
}
|
|
|
|
// Token: 0x0600B8C6 RID: 47302 RVA: 0x00280E88 File Offset: 0x0027F088
|
|
[Token(Token = "0x600B8C6")]
|
|
[Address(RVA = "0x25B9D70", Offset = "0x25B8D70", VA = "0x1825B9D70")]
|
|
public static void AsUlongs(byte[] x, ulong[] z)
|
|
{
|
|
int num = 0;
|
|
Pack.BE_To_UInt64(x, num, z);
|
|
}
|
|
|
|
// Token: 0x0600B8C7 RID: 47303 RVA: 0x00280EA0 File Offset: 0x0027F0A0
|
|
[Token(Token = "0x600B8C7")]
|
|
[Address(RVA = "0x25BA540", Offset = "0x25B9540", VA = "0x1825BA540")]
|
|
internal static void Multiply(byte[] x, byte[] y)
|
|
{
|
|
uint[] array = new uint[4];
|
|
int num = 0;
|
|
Pack.BE_To_UInt32(x, num, array);
|
|
uint[] array2 = new uint[4];
|
|
int num2 = 0;
|
|
Pack.BE_To_UInt32(y, num2, array2);
|
|
GcmUtilities.Multiply(array, array2);
|
|
int num3 = 0;
|
|
Pack.UInt32_To_BE(array, x, num3);
|
|
}
|
|
|
|
// Token: 0x0600B8C8 RID: 47304 RVA: 0x00280EE4 File Offset: 0x0027F0E4
|
|
[Token(Token = "0x600B8C8")]
|
|
[Address(RVA = "0x25BA360", Offset = "0x25B9360", VA = "0x1825BA360")]
|
|
internal static void Multiply(uint[] x, uint[] y)
|
|
{
|
|
int length = x.Length;
|
|
int num = 0;
|
|
uint num2 = y[num];
|
|
num2 += num2;
|
|
while (num != y.Length)
|
|
{
|
|
}
|
|
num++;
|
|
x[0] = (uint)num;
|
|
x[0] = (uint)num;
|
|
x[1] = (uint)num;
|
|
x[1] = (uint)num;
|
|
}
|
|
|
|
// Token: 0x0600B8C9 RID: 47305 RVA: 0x00280F3C File Offset: 0x0027F13C
|
|
[Token(Token = "0x600B8C9")]
|
|
[Address(RVA = "0x25BA650", Offset = "0x25B9650", VA = "0x1825BA650")]
|
|
internal static void Multiply(ulong[] x, ulong[] y)
|
|
{
|
|
int length = x.Length;
|
|
ulong num = x[1];
|
|
int num2 = 0;
|
|
ulong num3 = y[num2];
|
|
num3 += num3;
|
|
while (num2 != y.Length)
|
|
{
|
|
}
|
|
num2++;
|
|
x[0] = (ulong)num2;
|
|
x[1] = (ulong)num2;
|
|
}
|
|
|
|
// Token: 0x0600B8CA RID: 47306 RVA: 0x00280F8C File Offset: 0x0027F18C
|
|
[Token(Token = "0x600B8CA")]
|
|
[Address(RVA = "0x25BA0A0", Offset = "0x25B90A0", VA = "0x1825BA0A0")]
|
|
internal static void MultiplyP(uint[] x)
|
|
{
|
|
uint num = x[0];
|
|
x[0] = num;
|
|
uint num2 = x[0];
|
|
num = num2;
|
|
x[0] = num;
|
|
uint num3 = x[1];
|
|
x[1] = num2;
|
|
x[1] = num3;
|
|
}
|
|
|
|
// Token: 0x0600B8CB RID: 47307 RVA: 0x00280FDC File Offset: 0x0027F1DC
|
|
[Token(Token = "0x600B8CB")]
|
|
[Address(RVA = "0x25BA1B0", Offset = "0x25B91B0", VA = "0x1825BA1B0")]
|
|
internal static void MultiplyP(uint[] x, uint[] z)
|
|
{
|
|
uint num = x[0];
|
|
z[0] = num;
|
|
uint num2 = x[0];
|
|
num = num2;
|
|
z[0] = num;
|
|
uint num3 = x[1];
|
|
z[1] = num2;
|
|
z[1] = num3;
|
|
}
|
|
|
|
// Token: 0x0600B8CC RID: 47308 RVA: 0x0028102C File Offset: 0x0027F22C
|
|
[Token(Token = "0x600B8CC")]
|
|
[Address(RVA = "0x25B9F50", Offset = "0x25B8F50", VA = "0x1825B9F50")]
|
|
internal static void MultiplyP8(uint[] x)
|
|
{
|
|
uint num = x[0];
|
|
x[0] = num;
|
|
uint num2 = x[0];
|
|
num = num2;
|
|
x[0] = num;
|
|
uint num3 = x[1];
|
|
x[1] = num2;
|
|
num = x[1];
|
|
x[1] = num3;
|
|
}
|
|
|
|
// Token: 0x0600B8CD RID: 47309 RVA: 0x00281084 File Offset: 0x0027F284
|
|
[Token(Token = "0x600B8CD")]
|
|
[Address(RVA = "0x25B9E90", Offset = "0x25B8E90", VA = "0x1825B9E90")]
|
|
internal static void MultiplyP8(uint[] x, uint[] y)
|
|
{
|
|
uint num = GcmUtilities.ShiftRightN(x, 8, y);
|
|
}
|
|
|
|
// Token: 0x0600B8CE RID: 47310 RVA: 0x002810A0 File Offset: 0x0027F2A0
|
|
[Token(Token = "0x600B8CE")]
|
|
[Address(RVA = "0x25BAB20", Offset = "0x25B9B20", VA = "0x1825BAB20")]
|
|
internal static uint ShiftRight(uint[] x)
|
|
{
|
|
uint num = x[0];
|
|
x[0] = num;
|
|
uint num2 = x[0];
|
|
num = num2;
|
|
x[0] = num;
|
|
uint num3 = x[1];
|
|
x[1] = num2;
|
|
uint num4 = x[1];
|
|
x[1] = num3;
|
|
return num4;
|
|
}
|
|
|
|
// Token: 0x0600B8CF RID: 47311 RVA: 0x002810FC File Offset: 0x0027F2FC
|
|
[Token(Token = "0x600B8CF")]
|
|
[Address(RVA = "0x25BABE0", Offset = "0x25B9BE0", VA = "0x1825BABE0")]
|
|
internal static uint ShiftRight(uint[] x, uint[] z)
|
|
{
|
|
uint num = x[0];
|
|
z[0] = num;
|
|
uint num2 = x[0];
|
|
num = num2;
|
|
z[0] = num;
|
|
uint num3 = x[1];
|
|
z[1] = num2;
|
|
uint num4 = x[1];
|
|
z[1] = num3;
|
|
return num4;
|
|
}
|
|
|
|
// Token: 0x0600B8D0 RID: 47312 RVA: 0x00281154 File Offset: 0x0027F354
|
|
[Token(Token = "0x600B8D0")]
|
|
[Address(RVA = "0x25BAA30", Offset = "0x25B9A30", VA = "0x1825BAA30")]
|
|
internal static uint ShiftRightN(uint[] x, int n)
|
|
{
|
|
uint num = x[0];
|
|
x[0] = num;
|
|
uint num2 = x[0];
|
|
num = num2;
|
|
x[0] = num;
|
|
uint num3 = x[1];
|
|
x[1] = num2;
|
|
uint num4 = x[1];
|
|
x[1] = num3;
|
|
return num4;
|
|
}
|
|
|
|
// Token: 0x0600B8D1 RID: 47313 RVA: 0x002811B0 File Offset: 0x0027F3B0
|
|
[Token(Token = "0x600B8D1")]
|
|
[Address(RVA = "0x25BA8C0", Offset = "0x25B98C0", VA = "0x1825BA8C0")]
|
|
internal static uint ShiftRightN(uint[] x, int n, uint[] z)
|
|
{
|
|
uint num = x[0];
|
|
z[0] = num;
|
|
uint num2 = x[0];
|
|
num = num2;
|
|
z[0] = num;
|
|
uint num3 = x[1];
|
|
z[1] = num2;
|
|
uint num4 = x[1];
|
|
z[1] = num3;
|
|
return num4;
|
|
}
|
|
|
|
// Token: 0x0600B8D2 RID: 47314 RVA: 0x0028120C File Offset: 0x0027F40C
|
|
[Token(Token = "0x600B8D2")]
|
|
[Address(RVA = "0x25BB370", Offset = "0x25BA370", VA = "0x1825BB370")]
|
|
internal static void Xor(byte[] x, byte[] y)
|
|
{
|
|
int num = 0;
|
|
num += 3;
|
|
if (4UL < (ulong)16L)
|
|
{
|
|
}
|
|
}
|
|
|
|
// Token: 0x0600B8D3 RID: 47315 RVA: 0x0028122C File Offset: 0x0027F42C
|
|
[Token(Token = "0x600B8D3")]
|
|
[Address(RVA = "0x25BAD20", Offset = "0x25B9D20", VA = "0x1825BAD20")]
|
|
internal static void Xor(byte[] x, byte[] y, int yOff)
|
|
{
|
|
int num = 0;
|
|
num++;
|
|
num++;
|
|
num += 2;
|
|
num++;
|
|
num++;
|
|
}
|
|
|
|
// Token: 0x0600B8D4 RID: 47316 RVA: 0x00281258 File Offset: 0x0027F458
|
|
[Token(Token = "0x600B8D4")]
|
|
[Address(RVA = "0x25BB4C0", Offset = "0x25BA4C0", VA = "0x1825BB4C0")]
|
|
internal static void Xor(byte[] x, int xOff, byte[] y, int yOff, byte[] z, int zOff)
|
|
{
|
|
int num = 0;
|
|
num += 4;
|
|
}
|
|
|
|
// Token: 0x0600B8D5 RID: 47317 RVA: 0x00281274 File Offset: 0x0027F474
|
|
[Token(Token = "0x600B8D5")]
|
|
[Address(RVA = "0x25BB300", Offset = "0x25BA300", VA = "0x1825BB300")]
|
|
internal static void Xor(byte[] x, byte[] y, int yOff, int yLen)
|
|
{
|
|
int num = yLen - 1;
|
|
}
|
|
|
|
// Token: 0x0600B8D6 RID: 47318 RVA: 0x0028128C File Offset: 0x0027F48C
|
|
[Token(Token = "0x600B8D6")]
|
|
[Address(RVA = "0x25BB760", Offset = "0x25BA760", VA = "0x1825BB760")]
|
|
internal static void Xor(byte[] x, int xOff, byte[] y, int yOff, int len)
|
|
{
|
|
}
|
|
|
|
// Token: 0x0600B8D7 RID: 47319 RVA: 0x002812A0 File Offset: 0x0027F4A0
|
|
[Token(Token = "0x600B8D7")]
|
|
[Address(RVA = "0x25BB130", Offset = "0x25BA130", VA = "0x1825BB130")]
|
|
internal static void Xor(byte[] x, byte[] y, byte[] z)
|
|
{
|
|
int num = 0;
|
|
byte b = x[num];
|
|
z[0] = b;
|
|
num += 3;
|
|
if (4UL < (ulong)16L)
|
|
{
|
|
}
|
|
}
|
|
|
|
// Token: 0x0600B8D8 RID: 47320 RVA: 0x002812D0 File Offset: 0x0027F4D0
|
|
[Token(Token = "0x600B8D8")]
|
|
[Address(RVA = "0x25BB040", Offset = "0x25BA040", VA = "0x1825BB040")]
|
|
internal static void Xor(uint[] x, uint[] y)
|
|
{
|
|
uint num = y[1];
|
|
}
|
|
|
|
// Token: 0x0600B8D9 RID: 47321 RVA: 0x002812EC File Offset: 0x0027F4EC
|
|
[Token(Token = "0x600B8D9")]
|
|
[Address(RVA = "0x25BAEA0", Offset = "0x25B9EA0", VA = "0x1825BAEA0")]
|
|
internal static void Xor(uint[] x, uint[] y, uint[] z)
|
|
{
|
|
uint num = y[0];
|
|
z[0] = num;
|
|
uint num2 = y[0];
|
|
z[0] = num2;
|
|
uint num3 = y[1];
|
|
z[1] = num3;
|
|
uint num4 = y[1];
|
|
z[1] = num4;
|
|
}
|
|
|
|
// Token: 0x0600B8DA RID: 47322 RVA: 0x00281340 File Offset: 0x0027F540
|
|
[Token(Token = "0x600B8DA")]
|
|
[Address(RVA = "0x25BB6D0", Offset = "0x25BA6D0", VA = "0x1825BB6D0")]
|
|
internal static void Xor(ulong[] x, ulong[] y)
|
|
{
|
|
ulong num = y[1];
|
|
}
|
|
|
|
// Token: 0x0600B8DB RID: 47323 RVA: 0x0028135C File Offset: 0x0027F55C
|
|
[Token(Token = "0x600B8DB")]
|
|
[Address(RVA = "0x7EF250", Offset = "0x7EE250", VA = "0x1807EF250")]
|
|
internal static void Xor(ulong[] x, ulong[] y, ulong[] z)
|
|
{
|
|
ulong num = y[0];
|
|
z[0] = num;
|
|
ulong num2 = y[1];
|
|
z[1] = num2;
|
|
}
|
|
|
|
// Token: 0x0600B8DC RID: 47324 RVA: 0x00281390 File Offset: 0x0027F590
|
|
[Token(Token = "0x600B8DC")]
|
|
[Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")]
|
|
protected GcmUtilities()
|
|
{
|
|
}
|
|
|
|
// Token: 0x0600B8DD RID: 47325 RVA: 0x002813A4 File Offset: 0x0027F5A4
|
|
// Note: this type is marked as 'beforefieldinit'.
|
|
[Token(Token = "0x600B8DD")]
|
|
[Address(RVA = "0x25BB7F0", Offset = "0x25BA7F0", VA = "0x1825BB7F0")]
|
|
static GcmUtilities()
|
|
{
|
|
uint[] array = new uint[256];
|
|
int num = 0;
|
|
num++;
|
|
array[0] = (uint)256;
|
|
}
|
|
|
|
// Token: 0x04007495 RID: 29845
|
|
[Token(Token = "0x4007495")]
|
|
private const uint E1 = 3774873600U;
|
|
|
|
// Token: 0x04007496 RID: 29846
|
|
[Token(Token = "0x4007496")]
|
|
private const ulong E1L = 16212958658533785600UL;
|
|
|
|
// Token: 0x04007497 RID: 29847
|
|
[Token(Token = "0x4007497")]
|
|
private static readonly uint[] LOOKUP;
|
|
}
|
|
}
|