81 lines
2.4 KiB
C#
81 lines
2.4 KiB
C#
using System;
|
|
using System.Runtime.InteropServices;
|
|
using Cpp2IlInjected;
|
|
|
|
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Math.Raw
|
|
{
|
|
// Token: 0x02001406 RID: 5126
|
|
[Token(Token = "0x2001406")]
|
|
[StructLayout(3)]
|
|
internal abstract class Nat512
|
|
{
|
|
// Token: 0x06008412 RID: 33810 RVA: 0x001CB4FC File Offset: 0x001C96FC
|
|
[Token(Token = "0x6008412")]
|
|
[Address(RVA = "0xC1F9C0", Offset = "0xC1E3C0", VA = "0x180C1F9C0")]
|
|
public static void Mul(uint[] x, uint[] y, uint[] zz)
|
|
{
|
|
Nat256.Mul(x, y, zz);
|
|
int num = 0;
|
|
uint num2;
|
|
ulong num3;
|
|
Nat256.Mul(x, (int)num2, y, (int)num2, zz, (int)num3);
|
|
uint num4 = Nat256.AddToEachOther(zz, 8, zz, 16);
|
|
int num5 = 0;
|
|
uint num6 = Nat256.AddTo(zz, num5, zz, 8, (uint)num);
|
|
num6 += num4;
|
|
uint num7 = Nat256.AddTo(zz, 24, zz, 16, num6);
|
|
uint[] array = new uint[8];
|
|
uint[] array2 = new uint[8];
|
|
int num8 = 0;
|
|
bool flag = Nat256.Diff(x, 8, x, num8, array, num);
|
|
int num9 = 0;
|
|
bool flag2 = Nat256.Diff(y, 8, y, num9, array2, num);
|
|
bool flag3 = flag != flag2;
|
|
uint[] array3 = new uint[16];
|
|
Nat256.Mul(array, array2, array3);
|
|
int num10 = 0;
|
|
ulong num12;
|
|
if (flag3)
|
|
{
|
|
uint num11 = Nat.AddTo(16, array3, num10, zz, (int)num12);
|
|
}
|
|
int num13 = Nat.SubFrom(16, array3, num10, zz, (int)num12);
|
|
uint num15;
|
|
uint num14 = Nat.AddWordAt(16, array3, zz, (int)num15);
|
|
}
|
|
|
|
// Token: 0x06008413 RID: 33811 RVA: 0x001CB5D8 File Offset: 0x001C97D8
|
|
[Token(Token = "0x6008413")]
|
|
[Address(RVA = "0xC1FBC0", Offset = "0xC1E5C0", VA = "0x180C1FBC0")]
|
|
public static void Square(uint[] x, uint[] zz)
|
|
{
|
|
Nat256.Square(x, zz);
|
|
int num = 0;
|
|
Nat256.Square(x, 8, zz, 16);
|
|
uint num2 = Nat256.AddToEachOther(zz, 8, zz, 16);
|
|
int num3 = 0;
|
|
uint num4 = Nat256.AddTo(zz, num3, zz, 8, (uint)num);
|
|
num4 += num2;
|
|
uint num5 = Nat256.AddTo(zz, 24, zz, 16, num4);
|
|
num2 += num5;
|
|
uint[] array = new uint[8];
|
|
int num6 = 0;
|
|
bool flag = Nat256.Diff(x, 8, x, num6, array, num);
|
|
uint[] array2 = new uint[16];
|
|
Nat256.Square(array, array2);
|
|
int num7 = 0;
|
|
ulong num9;
|
|
int num8 = Nat.SubFrom(16, array2, num7, zz, (int)num9);
|
|
uint num11;
|
|
uint num10 = Nat.AddWordAt(16, array2, zz, (int)num11);
|
|
}
|
|
|
|
// Token: 0x06008414 RID: 33812 RVA: 0x001CB674 File Offset: 0x001C9874
|
|
[Token(Token = "0x6008414")]
|
|
[Address(RVA = "0x3C1670", Offset = "0x3C0070", VA = "0x1803C1670")]
|
|
protected Nat512()
|
|
{
|
|
}
|
|
}
|
|
}
|