namespace PixelSecurity.Core.Encryption
{

	// [TypeInfo RVA: 0x0]
	public class Base64 : Object
	{
		// RVA: 0x32B0248 VA: 0x781899B248
		public void .ctor();
		/*
		 *   return;
		 */
		// RVA: 0x32B0250 VA: 0x781899B250
		public string EncodeString(string plane);
		/*
		 *   int inputLength;
		 *   undefined *puVar1;
		 *   undefined *puVar2;
		 *   int iVar3;
		 *   long *plVar4;
		 *   long lVar5;
		 *   void *this_00;
		 *   void *paramName;
		 *   undefined8 uVar6;
		 *   void *pvVar7;
		 *
		 *   if ((bRam000000000754af92 & 1) == 0) {
		 *     func_0x031fdc8c(typeinfo_ptr_mscorlib_Convert_6FC0CA8);
		 *     bRam000000000754af92 = 1;
		 *   }
		 *   plVar4 = System.Text.Encoding.get_UTF8();
		 *   puVar1 = typeinfo_ptr_mscorlib_Convert_6FC0CA8;
		 *   if (plVar4 == null) {
		 *     IL2CPP.ThrowNullReferenceException();
		 *   }
		 *   pvVar7 = *(void **)(*plVar4 + 0x270);
		 *   lVar5 = (**(code **)(*plVar4 + 0x268))(plVar4,plane);
		 *   if (*(int *)(*(long *)puVar1 + 0xe4) == 0) {
		 *     func_0x031fde08(*(long *)puVar1);
		 *   }
		 *   if ((bRam00000000075511fa & 1) == 0) {
		 *     func_0x031fdc8c(typeinfo_ptr_mscorlib_Convert_6FC0CA8,0);
		 *     func_0x031fdc8c(PTR_DAT_070dd3e0);
		 *     bRam00000000075511fa = 1;
		 *   }
		 *   if (lVar5 == 0) {
		 *     func_0x031fdca0(PTR_DAT_070c5760);
		 *     this_00 = (void *)func_0x031fdf24();
		 *     paramName = (void *)func_0x031fdca0(PTR_DAT_070e2640);
		 *     System.ArgumentNullException..ctor(this_00,paramName);
		 *     uVar6 = func_0x031fdca0(PTR_DAT_070e2648);
		 *     IL2CPP.ThrowManagedException();
		 *   }
		 *   inputLength = *(int *)(lVar5 + 0x18);
		 *   if (*(int *)(*(long *)typeinfo_ptr_mscorlib_Convert_6FC0CA8 + 0xe4) == 0) {
		 *     func_0x031fde08();
		 *   }
		 *   pvVar7 = null;
		 *   if ((bRam00000000075511fd & 1) == 0) {
		 *     func_0x031fdc8c(typeinfo_ptr_mscorlib_Convert_6FC0CA8);
		 *     func_0x031fdc8c(PTR_DAT_070e1ab8);
		 *     func_0x031fdc8c(PTR_DAT_070dce68);
		 *     bRam00000000075511fd = 1;
		 *   }
		 *   puVar2 = PTR_DAT_070e1ab8;
		 *   puVar1 = typeinfo_ptr_mscorlib_Convert_6FC0CA8;
		 *   if (inputLength == 0) {
		 *     pvVar7 = (void *)**(undefined8 **)(*(long *)(PTR_DAT_070c0840 + 0x90) + 0xb8);
		 *   }
		 *   else {
		 *     if (*(int *)(*(long *)typeinfo_ptr_mscorlib_Convert_6FC0CA8 + 0xe4) == 0) {
		 *       func_0x031fde08();
		 *     }
		 *     iVar3 = Convert.ToBase64_CalculateAndValidateOutputLength(inputLength,false);
		 *     pvVar7 = System.String.FastAllocateString(iVar3);
		 *     uVar6 = func_0x03867754(lVar5 + 0x20,inputLength,*(undefined8 *)puVar2);
		 *     if (pvVar7 == null) {
		 *       lVar5 = 0;
		 *     }
		 *     else {
		 *       iVar3 = RuntimeHelpers.get_OffsetToStringData();
		 *       lVar5 = (long)pvVar7 + (long)iVar3;
		 *     }
		 *     if (*(int *)(*(long *)puVar1 + 0xe4) == 0) {
		 *       func_0x031fde08();
		 *     }
		 *     Convert.ConvertToBase64Array(lVar5,uVar6,0,inputLength,false);
		 *   }
		 *   return pvVar7;
		 */
		// RVA: 0x32B02D4 VA: 0x781899B2D4
		public System.Byte[] EncodeBinary(System.Byte[] src);
		/*
		 *   undefined *puVar1;
		 *   void *pvVar2;
		 *   long *plVar3;
		 *
		 *   puVar1 = typeinfo_ptr_mscorlib_Convert_6FC0CA8;
		 *   if ((bRam000000000754af93 & 1) == 0) {
		 *     func_0x031fdc8c(typeinfo_ptr_mscorlib_Convert_6FC0CA8);
		 *     bRam000000000754af93 = 1;
		 *   }
		 *   if (*(int *)(*(long *)puVar1 + 0xe4) == 0) {
		 *     func_0x031fde08();
		 *   }
		 *   pvVar2 = Convert.ToBase64String(src);
		 *   plVar3 = System.Text.Encoding.get_UTF8();
		 *   if (plVar3 != null) {
		 *     pvVar2 = (void *)(**(code **)(*plVar3 + 0x268))(plVar3,pvVar2,*(undefined8 *)(*plVar3 + 0x270));
		 *     return pvVar2;
		 *   }
		 *   IL2CPP.ThrowNullReferenceException();
		 */
		// RVA: 0x32B0354 VA: 0x781899B354
		public string DecodeString(string encrypted);
		/*
		 *   undefined *puVar1;
		 *   void *pvVar2;
		 *   long *plVar3;
		 *
		 *   puVar1 = typeinfo_ptr_mscorlib_Convert_6FC0CA8;
		 *   if ((bRam000000000754af94 & 1) == 0) {
		 *     func_0x031fdc8c(typeinfo_ptr_mscorlib_Convert_6FC0CA8);
		 *     bRam000000000754af94 = 1;
		 *   }
		 *   if (*(int *)(*(long *)puVar1 + 0xe4) == 0) {
		 *     func_0x031fde08();
		 *   }
		 *   pvVar2 = Convert.FromBase64String(encrypted);
		 *   plVar3 = System.Text.Encoding.get_UTF8();
		 *   if (plVar3 != null) {
		 *     pvVar2 = (void *)(**(code **)(*plVar3 + 0x378))(plVar3,pvVar2,*(undefined8 *)(*plVar3 + 0x380));
		 *     return pvVar2;
		 *   }
		 *   IL2CPP.ThrowNullReferenceException();
		 */
		// RVA: 0x32B03D4 VA: 0x781899B3D4
		public System.Byte[] DecodeBinary(System.Byte[] src);
		/*
		 *   bool bVar1;
		 *   uint uVar2;
		 *   undefined *puVar3;
		 *   undefined *puVar4;
		 *   int iVar5;
		 *   undefined4 uVar6;
		 *   long *plVar7;
		 *   long lVar8;
		 *   void *paramName;
		 *   void *pvVar9;
		 *   undefined8 uVar10;
		 *   ulong uVar11;
		 *   void *pvVar12;
		 *   ushort *puVar13;
		 *   undefined1 auVar14 [16];
		 *   undefined4 uStack_24;
		 *
		 *   if ((bRam000000000754af95 & 1) == 0) {
		 *     func_0x031fdc8c(typeinfo_ptr_mscorlib_Convert_6FC0CA8);
		 *     bRam000000000754af95 = 1;
		 *   }
		 *   plVar7 = System.Text.Encoding.get_UTF8();
		 *   puVar3 = typeinfo_ptr_mscorlib_Convert_6FC0CA8;
		 *   if (plVar7 == null) {
		 *     IL2CPP.ThrowNullReferenceException();
		 *   }
		 *   pvVar12 = *(void **)(*plVar7 + 0x380);
		 *   lVar8 = (**(code **)(*plVar7 + 0x378))(plVar7,src);
		 *   if (*(int *)(*(long *)puVar3 + 0xe4) == 0) {
		 *     func_0x031fde08(*(long *)puVar3);
		 *   }
		 *   if ((bRam0000000007551201 & 1) == 0) {
		 *     func_0x031fdc8c(typeinfo_ptr_mscorlib_Convert_6FC0CA8,0);
		 *     bRam0000000007551201 = 1;
		 *   }
		 *   puVar3 = typeinfo_ptr_mscorlib_Convert_6FC0CA8;
		 *   if (lVar8 == 0) {
		 *     func_0x031fdca0(PTR_DAT_070c5760);
		 *     pvVar9 = (void *)func_0x031fdf24();
		 *     paramName = (void *)func_0x031fdca0(PTR_DAT_070c2960);
		 *     System.ArgumentNullException..ctor(pvVar9,paramName);
		 *     uVar10 = func_0x031fdca0(PTR_DAT_070e2690);
		 *     IL2CPP.ThrowManagedException();
		 *   }
		 *   iVar5 = RuntimeHelpers.get_OffsetToStringData();
		 *   uVar2 = *(uint *)(lVar8 + 0x10);
		 *   if (*(int *)(*(long *)puVar3 + 0xe4) == 0) {
		 *     func_0x031fde08(*(long *)puVar3);
		 *   }
		 *   lVar8 = lVar8 + iVar5;
		 *   uVar11 = (ulong)uVar2;
		 *   if ((bRam0000000007551205 & 1) == 0) {
		 *     func_0x031fdc8c(PTR_DAT_070c2588);
		 *     func_0x031fdc8c(typeinfo_ptr_mscorlib_Convert_6FC0CA8);
		 *     func_0x031fdc8c(PTR_DAT_070e1da0);
		 *     func_0x031fdc8c(PTR_DAT_070dc728);
		 *     bRam0000000007551205 = 1;
		 *   }
		 *   puVar3 = PTR_DAT_070c2588;
		 *   uStack_24 = 0;
		 *   if (0 < (int)uVar2) {
		 *     puVar13 = (ushort *)(lVar8 + uVar11 * 2);
		 *     uVar11 = (ulong)uVar2;
		 *     do {
		 *       puVar13 = puVar13 + -1;
		 *       if (0x20 < *puVar13 || (1L << ((ulong)*puVar13 & 0x3f) & 0x100002600U) == 0) {
		 *         uVar11 = uVar11 & 0xffffffff;
		 *         goto LAB_0567b2b8;
		 *       }
		 *       bVar1 = 1 < uVar11;
		 *       uVar11 = uVar11 - 1;
		 *     } while (bVar1);
		 *     uVar11 = 0;
		 *   }
		 * LAB_0567b2b8:
		 *   if (*(int *)(*(long *)typeinfo_ptr_mscorlib_Convert_6FC0CA8 + 0xe4) == 0) {
		 *     func_0x031fde08();
		 *   }
		 *   puVar4 = PTR_DAT_070dc728;
		 *   uVar6 = Convert.FromBase64_ComputeResultLength(lVar8,uVar11);
		 *   pvVar12 = (void *)func_0x031fdd78(*(undefined8 *)puVar3,uVar6);
		 *   if ((int)uVar11 < 0) {
		 *     ThrowHelper.ThrowArgumentOutOfRangeException();
		 *   }
		 *   auVar14 = func_0x0468bbd8(pvVar12,*(undefined8 *)puVar4);
		 *   uVar11 = Convert.TryFromBase64Chars(lVar8,uVar11,auVar14._0_8_,auVar14._8_8_,&uStack_24);
		 *   if ((uVar11 & 1) != 0) {
		 *     return pvVar12;
		 *   }
		 *   func_0x031fdca0(PTR_DAT_070da9a0);
		 *   pvVar12 = (void *)func_0x031fdf24();
		 *   pvVar9 = (void *)func_0x031fdca0(PTR_DAT_070e2698);
		 *   System.FormatException..ctor(pvVar12,pvVar9);
		 *   uVar10 = func_0x031fdca0(PTR_DAT_070e26a0);
		 *   IL2CPP.ThrowManagedException();
		 */
	}
}
