Decompiled source of GlitnirDeepNorth v0.1.1

DeepNorthGlitnir/DeepNorthGlitnir.dll

Decompiled 3 weeks ago
using System;
using System.Collections;
using System.Collections.Generic;
using System.ComponentModel;
using System.Diagnostics;
using System.Globalization;
using System.IO;
using System.IO.Compression;
using System.Linq;
using System.Net;
using System.Net.Sockets;
using System.Reflection;
using System.Reflection.Emit;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using System.Runtime.Serialization;
using System.Runtime.Versioning;
using System.Security;
using System.Security.Cryptography;
using System.Security.Permissions;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading;
using BepInEx;
using BepInEx.Bootstrap;
using BepInEx.Configuration;
using BepInEx.Logging;
using CreatureManager;
using HarmonyLib;
using HarmonyLib.Public.Patching;
using ItemManager;
using JetBrains.Annotations;
using LocationManager;
using Mono.Cecil;
using Mono.Cecil.Cil;
using Mono.Collections.Generic;
using MonoMod.Utils;
using PieceManager;
using ServerSync;
using SoftReferenceableAssets;
using TMPro;
using UnityEngine;
using UnityEngine.Diagnostics;
using UnityEngine.UI;
using UpgradeWorld;

[assembly: CompilationRelaxations(8)]
[assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)]
[assembly: TargetFramework(".NETFramework,Version=v4.8", FrameworkDisplayName = ".NET Framework 4.8")]
[assembly: AssemblyTitle("DeepNorthGlitnir")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default | DebuggableAttribute.DebuggingModes.DisableOptimizations | DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints | DebuggableAttribute.DebuggingModes.EnableEditAndContinue)]
[assembly: AssemblyProduct("DeepNorthGlitnir")]
[assembly: AssemblyCopyright("Copyright ©  2022")]
[assembly: AssemblyTrademark("")]
[assembly: ComVisible(false)]
[assembly: Guid("E74EB49A-461D-48EA-85BC-F462D60C98C4")]
[assembly: AssemblyFileVersion("0.1.1")]
[assembly: AssemblyCompany("Marlthon")]
[assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)]
[assembly: AssemblyVersion("0.1.1.0")]
[module: UnverifiableCode]
[module: SuppressIldasm]
[module: ConfusedBy("Confuser.Core 1.6.0+447341964f")]
internal class <Module>
{
	internal struct AJHePSbEGCNaNAhehDONmYOIRfKwb
	{
		internal uint FOBiwkXHEsxdEeGytaOlwkJVVklA;

		internal void HpktvqDfapNueOSvhBlEFPBfnDZVA()
		{
			FOBiwkXHEsxdEeGytaOlwkJVVklA = 1024u;
		}

		internal uint jtmPsSKRMgQpgIJmqNLrizBahHVt(UWfQViLoLsPKpqvKjOToltpyUdXu rangeDecoder)
		{
			uint num = (rangeDecoder.aOsZiMeBqNqfvybkGJScaXBeUqWg >> 11) * FOBiwkXHEsxdEeGytaOlwkJVVklA;
			uint num5 = default(uint);
			while (true)
			{
				int num2 = -2027698380;
				while (true)
				{
					uint num3;
					int num4;
					switch ((num3 = (uint)num2 ^ 0xFB6583B1u) % 4)
					{
					case 3u:
						break;
					case 1u:
						num4 = -1544199523;
						goto IL_003c;
					default:
						goto IL_0093;
					case 0u:
						goto IL_020d;
						IL_003c:
						while (true)
						{
							switch ((num5 = (uint)num4 ^ 0xF11BF863u) % 11)
							{
							case 5u:
								break;
							default:
								goto IL_0078;
							case 0u:
								goto IL_0093;
							case 4u:
								rangeDecoder.aOsZiMeBqNqfvybkGJScaXBeUqWg = num;
								num4 = (int)(num5 * 660409693) ^ -623031006;
								continue;
							case 2u:
							{
								int num8;
								int num9;
								if (rangeDecoder.aOsZiMeBqNqfvybkGJScaXBeUqWg >= 16777216)
								{
									num8 = 1869808886;
									num9 = num8;
								}
								else
								{
									num8 = 517084243;
									num9 = num8;
								}
								num4 = num8 ^ (int)(num5 * 784341605);
								continue;
							}
							case 3u:
								rangeDecoder.LBEhrGebuNBhlzvPVWxjnzFZLfcq = (rangeDecoder.LBEhrGebuNBhlzvPVWxjnzFZLfcq << 8) | (byte)\u206d\u202b\u200e\u202e\u200e\u206f\u206d\u206b\u200e\u206b\u200e\u200f\u200b\u206e\u206b\u206a\u200b\u200e\u200e\u200b\u200b\u206b\u206c\u202c\u200e\u202a\u202b\u200d\u206a\u206f\u202d\u202a\u206e\u206f\u206d\u202b\u206d\u202c\u206d\u202d\u202e(rangeDecoder.qePhMtkOFZSNEIblDCgvOvbSmAbtB);
								rangeDecoder.aOsZiMeBqNqfvybkGJScaXBeUqWg <<= 8;
								num4 = (int)(num5 * 1452853679) ^ -1621784065;
								continue;
							case 6u:
							{
								int num10;
								int num11;
								if (rangeDecoder.aOsZiMeBqNqfvybkGJScaXBeUqWg < 16777216)
								{
									num10 = 1188738426;
									num11 = num10;
								}
								else
								{
									num10 = 1394693288;
									num11 = num10;
								}
								num4 = num10 ^ ((int)num5 * -558777093);
								continue;
							}
							case 8u:
								rangeDecoder.aOsZiMeBqNqfvybkGJScaXBeUqWg -= num;
								rangeDecoder.LBEhrGebuNBhlzvPVWxjnzFZLfcq -= num;
								FOBiwkXHEsxdEeGytaOlwkJVVklA -= FOBiwkXHEsxdEeGytaOlwkJVVklA >> 5;
								num4 = -1875940223;
								continue;
							case 9u:
								return 0u;
							case 1u:
							{
								int num6;
								int num7;
								if (rangeDecoder.LBEhrGebuNBhlzvPVWxjnzFZLfcq < num)
								{
									num6 = 1133872578;
									num7 = num6;
								}
								else
								{
									num6 = 218990642;
									num7 = num6;
								}
								num4 = num6 ^ ((int)num5 * -770373156);
								continue;
							}
							case 10u:
								rangeDecoder.LBEhrGebuNBhlzvPVWxjnzFZLfcq = (rangeDecoder.LBEhrGebuNBhlzvPVWxjnzFZLfcq << 8) | (byte)\u206d\u202b\u200e\u202e\u200e\u206f\u206d\u206b\u200e\u206b\u200e\u200f\u200b\u206e\u206b\u206a\u200b\u200e\u200e\u200b\u200b\u206b\u206c\u202c\u200e\u202a\u202b\u200d\u206a\u206f\u202d\u202a\u206e\u206f\u206d\u202b\u206d\u202c\u206d\u202d\u202e(rangeDecoder.qePhMtkOFZSNEIblDCgvOvbSmAbtB);
								rangeDecoder.aOsZiMeBqNqfvybkGJScaXBeUqWg <<= 8;
								num4 = ((int)num5 * -2048563672) ^ -1409217694;
								continue;
							case 7u:
								goto IL_020d;
							}
							break;
						}
						goto case 1u;
						IL_020d:
						return 1u;
						IL_0093:
						FOBiwkXHEsxdEeGytaOlwkJVVklA += 2048 - FOBiwkXHEsxdEeGytaOlwkJVVklA >> 5;
						num4 = ((int)num5 * -278959609) ^ -856452485;
						goto IL_003c;
					}
					break;
					IL_0078:
					num2 = -501513051;
				}
			}
		}

		static int \u206d\u202b\u200e\u202e\u200e\u206f\u206d\u206b\u200e\u206b\u200e\u200f\u200b\u206e\u206b\u206a\u200b\u200e\u200e\u200b\u200b\u206b\u206c\u202c\u200e\u202a\u202b\u200d\u206a\u206f\u202d\u202a\u206e\u206f\u206d\u202b\u206d\u202c\u206d\u202d\u202e(Stream P_0)
		{
			return P_0.ReadByte();
		}
	}

	internal struct NFwGqIfWNcJhCtzkDNBUZiEummDQ
	{
		internal readonly AJHePSbEGCNaNAhehDONmYOIRfKwb[] VYKJZtameftaGHUnrwqWDlhMyxEI;

		internal readonly int CVWIFiznoAKKPcAFXpuiZjwWHIou;

		internal NFwGqIfWNcJhCtzkDNBUZiEummDQ(int numBitLevels)
		{
			CVWIFiznoAKKPcAFXpuiZjwWHIou = numBitLevels;
			VYKJZtameftaGHUnrwqWDlhMyxEI = new AJHePSbEGCNaNAhehDONmYOIRfKwb[1 << numBitLevels];
		}

		internal void UECFudnxgpRloxECMplMyWtYnTry()
		{
			uint num = 1u;
			uint num5 = default(uint);
			while (true)
			{
				int num2 = 810478724;
				while (true)
				{
					uint num3;
					int num4;
					switch ((num3 = (uint)num2 ^ 0x7DB5AA39u) % 4)
					{
					case 0u:
						break;
					case 1u:
						num4 = 443154964;
						goto IL_002d;
					case 3u:
						return;
					default:
						goto IL_0068;
						IL_002d:
						while (true)
						{
							switch ((num5 = (uint)num4 ^ 0x236F58C2u) % 5)
							{
							case 4u:
								break;
							default:
								goto IL_0050;
							case 1u:
								goto IL_0068;
							case 0u:
								goto IL_0077;
							case 3u:
								VYKJZtameftaGHUnrwqWDlhMyxEI[num].HpktvqDfapNueOSvhBlEFPBfnDZVA();
								num++;
								num4 = 1640355852;
								continue;
							case 2u:
								return;
							}
							break;
							IL_0077:
							int num6;
							if (num >= 1 << CVWIFiznoAKKPcAFXpuiZjwWHIou)
							{
								num4 = 1807679450;
								num6 = num4;
							}
							else
							{
								num4 = 1571202489;
								num6 = num4;
							}
						}
						goto case 1u;
						IL_0068:
						num4 = ((int)num5 * -2023032516) ^ 0x68F2A824;
						goto IL_002d;
					}
					break;
					IL_0050:
					num2 = 58708602;
				}
			}
		}

		internal uint KjDcveUrsslvBNEVZrqYRMtyGIkK(UWfQViLoLsPKpqvKjOToltpyUdXu rangeDecoder)
		{
			uint num = 1u;
			uint num5 = default(uint);
			int num6 = default(int);
			while (true)
			{
				int num2 = -1012873643;
				while (true)
				{
					uint num3;
					int num4;
					switch ((num3 = (uint)num2 ^ 0xA03C05AFu) % 4)
					{
					case 0u:
						break;
					case 2u:
						num4 = 51767531;
						goto IL_002d;
					default:
						goto IL_006c;
					case 1u:
						goto IL_00ce;
						IL_002d:
						while (true)
						{
							switch ((num5 = (uint)num4 ^ 0x3040DCDCu) % 6)
							{
							case 2u:
								break;
							default:
								goto IL_0054;
							case 3u:
								goto IL_006c;
							case 1u:
								goto IL_0082;
							case 0u:
								num = (num << 1) + VYKJZtameftaGHUnrwqWDlhMyxEI[num].jtmPsSKRMgQpgIJmqNLrizBahHVt(rangeDecoder);
								num4 = 673410357;
								continue;
							case 5u:
								num6--;
								num4 = (int)(num5 * 319234711) ^ -1137736798;
								continue;
							case 4u:
								goto IL_00ce;
							}
							break;
							IL_0082:
							int num7;
							if (num6 <= 0)
							{
								num4 = 843589470;
								num7 = num4;
							}
							else
							{
								num4 = 274630916;
								num7 = num4;
							}
						}
						goto case 2u;
						IL_00ce:
						return num - (uint)(1 << CVWIFiznoAKKPcAFXpuiZjwWHIou);
						IL_006c:
						num6 = CVWIFiznoAKKPcAFXpuiZjwWHIou;
						num4 = ((int)num5 * -1734525932) ^ -595748479;
						goto IL_002d;
					}
					break;
					IL_0054:
					num2 = -980798954;
				}
			}
		}

		internal uint TqTfJhaClSuaxGXWBUXyAHBocbxvA(UWfQViLoLsPKpqvKjOToltpyUdXu rangeDecoder)
		{
			uint num = 1u;
			uint num7 = default(uint);
			int num6 = default(int);
			while (true)
			{
				int num2 = 999302696;
				while (true)
				{
					uint num3;
					int num4;
					int num5;
					switch ((num3 = (uint)num2 ^ 0x10C3BEEEu) % 6)
					{
					case 4u:
						break;
					case 2u:
						num7 = 0u;
						num2 = (int)((num3 * 984753786) ^ 0x75603817);
						continue;
					case 0u:
						if (num6 < CVWIFiznoAKKPcAFXpuiZjwWHIou)
						{
							num2 = 967876369;
							continue;
						}
						num4 = 928767291;
						num5 = num4;
						goto IL_006d;
					case 5u:
						goto IL_0068;
					default:
						num4 = 603220500;
						num5 = num4;
						goto IL_006d;
					case 1u:
						goto IL_0107;
						IL_0068:
						num4 = 613851367;
						goto IL_006d;
						IL_006d:
						while (true)
						{
							uint num8;
							switch ((num8 = (uint)num4 ^ 0x4C8EAE23u) % 6)
							{
							case 3u:
								break;
							case 0u:
								goto IL_0068;
							default:
								goto IL_0095;
							case 5u:
								num4 = ((int)num8 * -1927326009) ^ -1087436173;
								continue;
							case 1u:
							{
								uint num9 = VYKJZtameftaGHUnrwqWDlhMyxEI[num].jtmPsSKRMgQpgIJmqNLrizBahHVt(rangeDecoder);
								num <<= 1;
								num += num9;
								num7 |= num9 << num6;
								num6++;
								num4 = 1546444548;
								continue;
							}
							case 2u:
								num6 = 0;
								num4 = ((int)num8 * -1466859263) ^ -192714954;
								continue;
							case 4u:
								goto IL_0107;
							}
							break;
						}
						goto case 0u;
						IL_0107:
						return num7;
						IL_0095:
						num2 = 1061694101;
						continue;
					}
					break;
				}
			}
		}

		internal static uint gRGhCuudcgaQLSXrmPeOqQCFxPru(AJHePSbEGCNaNAhehDONmYOIRfKwb[] Models, uint startIndex, UWfQViLoLsPKpqvKjOToltpyUdXu rangeDecoder, int NumBitLevels)
		{
			uint num = 1u;
			uint num4 = default(uint);
			uint num5 = default(uint);
			int num6 = default(int);
			uint num7 = default(uint);
			while (true)
			{
				int num2 = -1603699986;
				while (true)
				{
					uint num3;
					int num8;
					switch ((num3 = (uint)num2 ^ 0xB16DB80Du) % 6)
					{
					case 3u:
						break;
					case 1u:
						num4 = 0u;
						num2 = (int)((num3 * 1338122398) ^ 0x1F4D9614);
						continue;
					case 4u:
						num += num5;
						num2 = -2055280021;
						continue;
					case 5u:
						goto IL_0063;
					default:
						num4 |= num5 << num6;
						num8 = (int)(num7 * 1033252684) ^ -588763034;
						goto IL_0068;
					case 2u:
						goto IL_012a;
						IL_0063:
						num8 = 1189216969;
						goto IL_0068;
						IL_0068:
						while (true)
						{
							switch ((num7 = (uint)num8 ^ 0x3D42994Cu) % 8)
							{
							case 3u:
								break;
							case 7u:
								goto IL_0063;
							default:
								goto IL_0098;
							case 2u:
								goto IL_00bb;
							case 6u:
								num6++;
								num8 = ((int)num7 * -419280904) ^ -785445338;
								continue;
							case 4u:
								num5 = Models[startIndex + num].jtmPsSKRMgQpgIJmqNLrizBahHVt(rangeDecoder);
								num <<= 1;
								num8 = 674266543;
								continue;
							case 5u:
								num6 = 0;
								num8 = ((int)num7 * -674094472) ^ -1019015819;
								continue;
							case 1u:
								num8 = (int)((num7 * 1932494693) ^ 0x17A84AF3);
								continue;
							case 0u:
								goto IL_012a;
							}
							break;
							IL_00bb:
							int num9;
							if (num6 < NumBitLevels)
							{
								num8 = 1201358736;
								num9 = num8;
							}
							else
							{
								num8 = 1205219732;
								num9 = num8;
							}
						}
						goto case 4u;
						IL_012a:
						return num4;
						IL_0098:
						num2 = -747028737;
						continue;
					}
					break;
				}
			}
		}
	}

	internal class UWfQViLoLsPKpqvKjOToltpyUdXu
	{
		internal uint LBEhrGebuNBhlzvPVWxjnzFZLfcq;

		internal uint aOsZiMeBqNqfvybkGJScaXBeUqWg;

		internal Stream qePhMtkOFZSNEIblDCgvOvbSmAbtB;

		internal void QFHvdyYDpyyjzOkSfANQrPevxBmd(Stream stream)
		{
			qePhMtkOFZSNEIblDCgvOvbSmAbtB = stream;
			uint num3 = default(uint);
			int num5 = default(int);
			while (true)
			{
				int num = -1892898690;
				while (true)
				{
					uint num2;
					int num4;
					switch ((num2 = (uint)num ^ 0xFB1EF703u) % 5)
					{
					case 2u:
						break;
					case 0u:
						LBEhrGebuNBhlzvPVWxjnzFZLfcq = 0u;
						num = -633070599;
						continue;
					case 3u:
						return;
					case 1u:
						goto IL_0053;
					default:
						{
							aOsZiMeBqNqfvybkGJScaXBeUqWg = uint.MaxValue;
							num4 = ((int)num3 * -1111494269) ^ -1774959577;
							goto IL_0058;
						}
						IL_0053:
						num4 = -1645217463;
						goto IL_0058;
						IL_0058:
						while (true)
						{
							switch ((num3 = (uint)num4 ^ 0xC4A5EF92u) % 8)
							{
							case 3u:
								break;
							case 0u:
								goto IL_0053;
							default:
								goto IL_0087;
							case 5u:
								num4 = (int)(num3 * 1903729669) ^ -2122736439;
								continue;
							case 6u:
								LBEhrGebuNBhlzvPVWxjnzFZLfcq = (LBEhrGebuNBhlzvPVWxjnzFZLfcq << 8) | (byte)\u200e\u200d\u202b\u206d\u202e\u202c\u206f\u206e\u202a\u200e\u202e\u206f\u202e\u206f\u202e\u206d\u206f\u202d\u206c\u200f\u200f\u200d\u202b\u206d\u206b\u200e\u202b\u206d\u206d\u206b\u202e\u206c\u202e\u206e\u200f\u200f\u202c\u200e\u202b\u200e\u202e(qePhMtkOFZSNEIblDCgvOvbSmAbtB);
								num4 = -1577013371;
								continue;
							case 4u:
								num5 = 0;
								num4 = (int)((num3 * 733791034) ^ 0x4DA5BBEF);
								continue;
							case 2u:
								goto IL_00ec;
							case 7u:
								num5++;
								num4 = (int)(num3 * 2024306483) ^ -351656971;
								continue;
							case 1u:
								return;
							}
							break;
							IL_00ec:
							int num6;
							if (num5 >= 5)
							{
								num4 = -464703813;
								num6 = num4;
							}
							else
							{
								num4 = -957318068;
								num6 = num4;
							}
						}
						goto case 0u;
						IL_0087:
						num = -1862295224;
						continue;
					}
					break;
				}
			}
		}

		internal void MakxVxqqScYmkJMGgGCUlGbyTNcU()
		{
			qePhMtkOFZSNEIblDCgvOvbSmAbtB = null;
		}

		internal void cyQODEGCacvdvdBEwUfkBgWHSHIs()
		{
			while (true)
			{
				int num;
				int num2;
				if (aOsZiMeBqNqfvybkGJScaXBeUqWg >= 16777216)
				{
					num = -1688406730;
					num2 = num;
				}
				else
				{
					num = -717080383;
					num2 = num;
				}
				while (true)
				{
					uint num3;
					int num4;
					switch ((num3 = (uint)num ^ 0x826BBCA4u) % 4)
					{
					case 1u:
						LBEhrGebuNBhlzvPVWxjnzFZLfcq = (LBEhrGebuNBhlzvPVWxjnzFZLfcq << 8) | (byte)\u200e\u200d\u202b\u206d\u202e\u202c\u206f\u206e\u202a\u200e\u202e\u206f\u202e\u206f\u202e\u206d\u206f\u202d\u206c\u200f\u200f\u200d\u202b\u206d\u206b\u200e\u202b\u206d\u206d\u206b\u202e\u206c\u202e\u206e\u200f\u200f\u202c\u200e\u202b\u200e\u202e(qePhMtkOFZSNEIblDCgvOvbSmAbtB);
						aOsZiMeBqNqfvybkGJScaXBeUqWg <<= 8;
						num4 = 677668204;
						goto IL_000a;
					case 3u:
						goto IL_0070;
					default:
						num4 = 46363238;
						goto IL_000a;
					case 0u:
						break;
					case 2u:
						return;
						IL_000a:
						while (true)
						{
							uint num5;
							switch ((num5 = (uint)num4 ^ 0x77602014u) % 5)
							{
							case 4u:
								num4 = 540353415;
								continue;
							case 0u:
								break;
							case 1u:
								return;
							case 2u:
								goto IL_0070;
							default:
								goto IL_009e;
							}
							break;
						}
						goto case 1u;
						IL_009e:
						num = -1354602824;
						continue;
						IL_0070:
						num = -717080383;
						continue;
					}
					break;
				}
			}
		}

		internal uint XAxrQHBAkGaxPSNnAGfxCSHAPEwj(int numTotalBits)
		{
			uint num = aOsZiMeBqNqfvybkGJScaXBeUqWg;
			uint num4 = default(uint);
			uint num8 = default(uint);
			uint num9 = default(uint);
			uint num10 = default(uint);
			int num11 = default(int);
			while (true)
			{
				int num2 = 1413645127;
				while (true)
				{
					uint num3;
					int num5;
					switch ((num3 = (uint)num2 ^ 0x6B8D85CBu) % 5)
					{
					case 0u:
						break;
					case 1u:
						num5 = 1414362069;
						goto IL_003a;
					case 4u:
						goto IL_0091;
					default:
						num5 = ((int)num4 * -1554662870) ^ -1653236883;
						goto IL_003a;
					case 3u:
						goto IL_01ff;
						IL_003a:
						while (true)
						{
							switch ((num4 = (uint)num5 ^ 0x7F420603u) % 15)
							{
							case 5u:
								break;
							default:
								goto IL_0087;
							case 2u:
								goto IL_0091;
							case 0u:
								aOsZiMeBqNqfvybkGJScaXBeUqWg = num;
								num5 = ((int)num4 * -1553635450) ^ -338211119;
								continue;
							case 14u:
								num8 = LBEhrGebuNBhlzvPVWxjnzFZLfcq;
								num9 = 0u;
								num5 = (int)(num4 * 1919738434) ^ -899725737;
								continue;
							case 4u:
								num8 -= num & (num10 - 1);
								num5 = (int)((num4 * 1402455656) ^ 0x338A0900);
								continue;
							case 3u:
								num <<= 8;
								num5 = ((int)num4 * -1772488274) ^ -930312160;
								continue;
							case 11u:
								goto IL_0138;
							case 8u:
								num11 = numTotalBits;
								num5 = ((int)num4 * -1366574955) ^ 0x29A05C06;
								continue;
							case 13u:
								LBEhrGebuNBhlzvPVWxjnzFZLfcq = num8;
								num5 = (int)(num4 * 1125793216) ^ -1458127457;
								continue;
							case 10u:
								num11--;
								num5 = 122440414;
								continue;
							case 1u:
								num >>= 1;
								num5 = 1271591087;
								continue;
							case 6u:
								num10 = num8 - num >> 31;
								num5 = (int)((num4 * 1004425596) ^ 0xF84C9E7);
								continue;
							case 7u:
								num8 = (num8 << 8) | (byte)\u200e\u200d\u202b\u206d\u202e\u202c\u206f\u206e\u202a\u200e\u202e\u206f\u202e\u206f\u202e\u206d\u206f\u202d\u206c\u200f\u200f\u200d\u202b\u206d\u206b\u200e\u202b\u206d\u206d\u206b\u202e\u206c\u202e\u206e\u200f\u200f\u202c\u200e\u202b\u200e\u202e(qePhMtkOFZSNEIblDCgvOvbSmAbtB);
								num5 = (int)((num4 * 1598777083) ^ 0x4D6A843C);
								continue;
							case 12u:
							{
								int num6;
								int num7;
								if (num >= 16777216)
								{
									num6 = -1525339046;
									num7 = num6;
								}
								else
								{
									num6 = -133289369;
									num7 = num6;
								}
								num5 = num6 ^ (int)(num4 * 1005105871);
								continue;
							}
							case 9u:
								goto IL_01ff;
							}
							break;
							IL_0138:
							int num12;
							if (num11 <= 0)
							{
								num5 = 1604855460;
								num12 = num5;
							}
							else
							{
								num5 = 467970651;
								num12 = num5;
							}
						}
						goto case 1u;
						IL_01ff:
						return num9;
						IL_0091:
						num9 = (num9 << 1) | (1 - num10);
						num2 = 926061906;
						continue;
						IL_0087:
						num2 = 630305505;
						continue;
					}
					break;
				}
			}
		}

		internal UWfQViLoLsPKpqvKjOToltpyUdXu()
		{
		}

		static int \u200e\u200d\u202b\u206d\u202e\u202c\u206f\u206e\u202a\u200e\u202e\u206f\u202e\u206f\u202e\u206d\u206f\u202d\u206c\u200f\u200f\u200d\u202b\u206d\u206b\u200e\u202b\u206d\u206d\u206b\u202e\u206c\u202e\u206e\u200f\u200f\u202c\u200e\u202b\u200e\u202e(Stream P_0)
		{
			return P_0.ReadByte();
		}
	}

	internal class EylPPglEtXgCJtVXvSxdPoKkffpy
	{
		internal class nZlZbqwUkObalZIZmQPZufmqahUkA
		{
			internal readonly NFwGqIfWNcJhCtzkDNBUZiEummDQ[] sKyZLYXTMgCFdijGnCuMUTNJcrEy = new NFwGqIfWNcJhCtzkDNBUZiEummDQ[16];

			internal readonly NFwGqIfWNcJhCtzkDNBUZiEummDQ[] rNxLnsFIcjzLVpntyvrPZcRVhMcM = new NFwGqIfWNcJhCtzkDNBUZiEummDQ[16];

			internal AJHePSbEGCNaNAhehDONmYOIRfKwb aqbTsxNHvbmIEBbBzsorNHWivTew;

			internal AJHePSbEGCNaNAhehDONmYOIRfKwb udBrYGkNgjDuXXRpmULcgZFJJHkM;

			internal NFwGqIfWNcJhCtzkDNBUZiEummDQ TmGwBPJIhamsTRnmdQOJihnnRHMH = new NFwGqIfWNcJhCtzkDNBUZiEummDQ(8);

			internal uint tNhufKfgEODIKaeWdJXbNvMWqltAA;

			internal void BDllSmSMZeavOPfSksPgDYbnuPVc(uint numPosStates)
			{
				uint num = tNhufKfgEODIKaeWdJXbNvMWqltAA;
				uint num4 = default(uint);
				while (true)
				{
					int num2 = 1187470172;
					while (true)
					{
						uint num3;
						int num5;
						switch ((num3 = (uint)num2 ^ 0x8910C63u) % 5)
						{
						case 2u:
							break;
						case 0u:
							num++;
							num2 = 197993621;
							continue;
						case 3u:
							return;
						case 4u:
							goto IL_0050;
						default:
							{
								num5 = ((int)num4 * -1224580858) ^ -1065432850;
								goto IL_0055;
							}
							IL_0050:
							num5 = 1075482046;
							goto IL_0055;
							IL_0055:
							while (true)
							{
								switch ((num4 = (uint)num5 ^ 0x1000ED3Fu) % 8)
								{
								case 7u:
									break;
								case 0u:
									goto IL_0050;
								default:
									goto IL_0084;
								case 3u:
									goto IL_009a;
								case 4u:
									tNhufKfgEODIKaeWdJXbNvMWqltAA = numPosStates;
									num5 = ((int)num4 * -83576031) ^ -1333584483;
									continue;
								case 1u:
									num5 = (int)(num4 * 1319527337) ^ -1460335987;
									continue;
								case 2u:
									rNxLnsFIcjzLVpntyvrPZcRVhMcM[num] = new NFwGqIfWNcJhCtzkDNBUZiEummDQ(3);
									num5 = ((int)num4 * -1104948705) ^ -16279914;
									continue;
								case 5u:
									sKyZLYXTMgCFdijGnCuMUTNJcrEy[num] = new NFwGqIfWNcJhCtzkDNBUZiEummDQ(3);
									num5 = 1306077853;
									continue;
								case 6u:
									return;
								}
								break;
								IL_009a:
								int num6;
								if (num >= numPosStates)
								{
									num5 = 497655899;
									num6 = num5;
								}
								else
								{
									num5 = 663474002;
									num6 = num5;
								}
							}
							goto case 0u;
							IL_0084:
							num2 = 1823124103;
							continue;
						}
						break;
					}
				}
			}

			internal void esvAqNjuvjgeCwcGJFUIcKKSCOTCA()
			{
				aqbTsxNHvbmIEBbBzsorNHWivTew.HpktvqDfapNueOSvhBlEFPBfnDZVA();
				uint num5 = default(uint);
				while (true)
				{
					int num = 1093373994;
					while (true)
					{
						uint num2;
						int num3;
						switch ((num2 = (uint)num ^ 0x38F1E8B7u) % 5)
						{
						case 4u:
							break;
						case 1u:
							num3 = 1389119028;
							goto IL_003a;
						case 2u:
							return;
						case 3u:
							goto IL_0084;
						default:
							{
								num3 = 1379246770;
								goto IL_003a;
							}
							IL_003a:
							while (true)
							{
								uint num4;
								switch ((num4 = (uint)num3 ^ 0x51FC468Eu) % 8)
								{
								case 0u:
									break;
								default:
									goto IL_0069;
								case 1u:
									goto IL_0084;
								case 3u:
									num3 = (int)((num4 * 972553012) ^ 0x69618A34);
									continue;
								case 6u:
									goto IL_00b5;
								case 7u:
									udBrYGkNgjDuXXRpmULcgZFJJHkM.HpktvqDfapNueOSvhBlEFPBfnDZVA();
									TmGwBPJIhamsTRnmdQOJihnnRHMH.UECFudnxgpRloxECMplMyWtYnTry();
									num3 = ((int)num4 * -556582639) ^ -2014244532;
									continue;
								case 2u:
									num5 = 0u;
									num3 = (int)(num4 * 1271288492) ^ -1885961883;
									continue;
								case 4u:
									rNxLnsFIcjzLVpntyvrPZcRVhMcM[num5].UECFudnxgpRloxECMplMyWtYnTry();
									num5++;
									num3 = (int)(num4 * 398687748) ^ -740769256;
									continue;
								case 5u:
									return;
								}
								break;
								IL_00b5:
								int num6;
								if (num5 < tNhufKfgEODIKaeWdJXbNvMWqltAA)
								{
									num3 = 1769208919;
									num6 = num3;
								}
								else
								{
									num3 = 1433388105;
									num6 = num3;
								}
							}
							goto case 1u;
							IL_0084:
							sKyZLYXTMgCFdijGnCuMUTNJcrEy[num5].UECFudnxgpRloxECMplMyWtYnTry();
							num = 17354505;
							continue;
							IL_0069:
							num = 1921399665;
							continue;
						}
						break;
					}
				}
			}

			internal uint WGPVdmTCXXgljVOfihJkKIntvYLp(UWfQViLoLsPKpqvKjOToltpyUdXu rangeDecoder, uint posState)
			{
				if (aqbTsxNHvbmIEBbBzsorNHWivTew.jtmPsSKRMgQpgIJmqNLrizBahHVt(rangeDecoder) == 0)
				{
					goto IL_0011;
				}
				goto IL_00a0;
				IL_00a0:
				uint num = 8u;
				int num2;
				int num3;
				if (udBrYGkNgjDuXXRpmULcgZFJJHkM.jtmPsSKRMgQpgIJmqNLrizBahHVt(rangeDecoder) != 0)
				{
					num2 = -1816490862;
					num3 = num2;
				}
				else
				{
					num2 = -793745199;
					num3 = num2;
				}
				goto IL_003c;
				IL_0082:
				num += TmGwBPJIhamsTRnmdQOJihnnRHMH.KjDcveUrsslvBNEVZrqYRMtyGIkK(rangeDecoder);
				uint num4 = default(uint);
				num2 = (int)(num4 * 1804706313) ^ -1629619769;
				goto IL_003c;
				IL_011e:
				return num;
				IL_003c:
				while (true)
				{
					switch ((num4 = (uint)num2 ^ 0xFC09CB8Eu) % 7)
					{
					case 0u:
						break;
					default:
						goto IL_0067;
					case 5u:
						goto IL_0082;
					case 2u:
						goto IL_00a0;
					case 4u:
						num += 8;
						num2 = -2135359772;
						continue;
					case 3u:
						return sKyZLYXTMgCFdijGnCuMUTNJcrEy[posState].KjDcveUrsslvBNEVZrqYRMtyGIkK(rangeDecoder);
					case 6u:
						num += rNxLnsFIcjzLVpntyvrPZcRVhMcM[posState].KjDcveUrsslvBNEVZrqYRMtyGIkK(rangeDecoder);
						num2 = ((int)num4 * -882851102) ^ 0x499C3AA3;
						continue;
					case 1u:
						goto IL_011e;
					}
					break;
				}
				goto IL_0037;
				IL_0067:
				int num5 = -1099479365;
				goto IL_0016;
				IL_0016:
				uint num6;
				switch ((num6 = (uint)num5 ^ 0xEA1B2E70u) % 4)
				{
				case 0u:
					break;
				case 1u:
					goto IL_0037;
				default:
					goto IL_0082;
				case 3u:
					goto IL_011e;
				}
				goto IL_0011;
				IL_0011:
				num5 = -528335431;
				goto IL_0016;
				IL_0037:
				num2 = -830056159;
				goto IL_003c;
			}

			internal nZlZbqwUkObalZIZmQPZufmqahUkA()
			{
			}
		}

		internal class HjXtXqqSGQPppxlvECldYhdxQtBv
		{
			internal struct BJCCUkhZizbZYsqZYiaQoedzyFNGA
			{
				internal AJHePSbEGCNaNAhehDONmYOIRfKwb[] aDTqgsjLgMSgXsbqQhQnibbWxZrT;

				internal void rRyMHvwMxffjgJRqiGqOrDRjropNA()
				{
					aDTqgsjLgMSgXsbqQhQnibbWxZrT = new AJHePSbEGCNaNAhehDONmYOIRfKwb[768];
				}

				internal void KdZWxhqeanfqxdrXFnJwizpvSVFI()
				{
					int num = 0;
					while (true)
					{
						int num2;
						int num3;
						if (num < 768)
						{
							num2 = 1937325875;
							num3 = num2;
						}
						else
						{
							num2 = 602664859;
							num3 = num2;
						}
						while (true)
						{
							uint num4;
							switch ((num4 = (uint)num2 ^ 0x5835AF37u) % 5)
							{
							case 3u:
								num2 = 1937325875;
								continue;
							default:
							{
								int num5 = -1534481920;
								while (true)
								{
									uint num6;
									switch ((num6 = (uint)num5 ^ 0xD6BEA352u) % 4)
									{
									case 0u:
										num5 = -837931557;
										continue;
									case 1u:
										break;
									case 2u:
										return;
									default:
										goto IL_006a;
									}
									break;
								}
								goto case 3u;
							}
							case 2u:
								goto IL_006a;
							case 0u:
								break;
							case 4u:
								num++;
								num2 = ((int)num4 * -523771213) ^ 0x477E0747;
								continue;
							case 1u:
								return;
								IL_006a:
								aDTqgsjLgMSgXsbqQhQnibbWxZrT[num].HpktvqDfapNueOSvhBlEFPBfnDZVA();
								num2 = 248256890;
								continue;
							}
							break;
						}
					}
				}

				internal byte SlXkWlHEzRzlOgJHraphCiWDFszL(UWfQViLoLsPKpqvKjOToltpyUdXu rangeDecoder)
				{
					uint num = 1u;
					while (true)
					{
						int num2 = 1083178926;
						while (true)
						{
							uint num3;
							int num4;
							switch ((num3 = (uint)num2 ^ 0x7FC38F29u) % 4)
							{
							case 0u:
								break;
							case 3u:
								num4 = -268674371;
								goto IL_002d;
							default:
								goto IL_0064;
							case 1u:
								goto IL_00a3;
								IL_002d:
								while (true)
								{
									uint num5;
									switch ((num5 = (uint)num4 ^ 0xFA0C14EEu) % 4)
									{
									case 0u:
										break;
									default:
										goto IL_004c;
									case 3u:
										goto IL_0064;
									case 2u:
									{
										int num6;
										int num7;
										if (num >= 256)
										{
											num6 = -630999233;
											num7 = num6;
										}
										else
										{
											num6 = -1277203811;
											num7 = num6;
										}
										num4 = num6 ^ ((int)num5 * -53632208);
										continue;
									}
									case 1u:
										goto IL_00a3;
									}
									break;
								}
								goto case 3u;
								IL_00a3:
								return (byte)num;
								IL_0064:
								num = (num << 1) | aDTqgsjLgMSgXsbqQhQnibbWxZrT[num].jtmPsSKRMgQpgIJmqNLrizBahHVt(rangeDecoder);
								num4 = -1575520744;
								goto IL_002d;
							}
							break;
							IL_004c:
							num2 = 195104556;
						}
					}
				}

				internal byte WFzMQcLNmsPeGOmJIpGPOPtOPXCG(UWfQViLoLsPKpqvKjOToltpyUdXu rangeDecoder, byte matchByte)
				{
					uint num = 1u;
					while (true)
					{
						int num2 = -472720815;
						while (true)
						{
							uint num3;
							int num4;
							int num5;
							switch ((num3 = (uint)num2 ^ 0xD71417B6u) % 5)
							{
							case 4u:
								break;
							case 1u:
								num4 = -614300220;
								goto IL_0032;
							case 0u:
								goto IL_007d;
							default:
								num4 = -614300220;
								num5 = num4;
								goto IL_0032;
							case 3u:
								goto IL_0141;
								IL_0032:
								while (true)
								{
									uint num6;
									switch ((num6 = (uint)num4 ^ 0xE02800CDu) % 8)
									{
									case 0u:
										break;
									default:
										goto IL_0061;
									case 6u:
										goto IL_007d;
									case 2u:
										num4 = (int)((num6 * 1251216444) ^ 0x641540D2);
										continue;
									case 3u:
										num = (num << 1) | aDTqgsjLgMSgXsbqQhQnibbWxZrT[num].jtmPsSKRMgQpgIJmqNLrizBahHVt(rangeDecoder);
										num4 = -1351378262;
										continue;
									case 1u:
										goto IL_00d0;
									case 4u:
										num4 = ((int)num6 * -927056114) ^ 0x5E359E68;
										continue;
									case 7u:
										goto IL_0125;
									case 5u:
										goto IL_0141;
									}
									break;
									IL_0125:
									int num7;
									if (num >= 256)
									{
										num4 = -1738432087;
										num7 = num4;
									}
									else
									{
										num4 = -1602770962;
										num7 = num4;
									}
									continue;
									IL_00d0:
									uint num8 = (uint)(matchByte >> 7) & 1u;
									matchByte <<= 1;
									uint num9 = aDTqgsjLgMSgXsbqQhQnibbWxZrT[(1 + num8 << 8) + num].jtmPsSKRMgQpgIJmqNLrizBahHVt(rangeDecoder);
									num = (num << 1) | num9;
									int num10;
									if (num8 == num9)
									{
										num4 = -1193004701;
										num10 = num4;
									}
									else
									{
										num4 = -1319942321;
										num10 = num4;
									}
								}
								goto case 1u;
								IL_0141:
								return (byte)num;
								IL_007d:
								if (num < 256)
								{
									num2 = -1564161494;
									continue;
								}
								num4 = -993791728;
								num5 = num4;
								goto IL_0032;
								IL_0061:
								num2 = -1497650806;
								continue;
							}
							break;
						}
					}
				}
			}

			internal BJCCUkhZizbZYsqZYiaQoedzyFNGA[] OFbbksETUXeYqsefzOJwxtLWyvBe;

			internal int cmwAbrSlMQFWtHySBzxsoNTQApceA;

			internal int PPewEafTzhNTdHUcWYUgnNQOGKZj;

			internal uint wvdbFAyHQJAxUmRprQpvuzZZCTzA;

			internal void EesPsGVLoByrJahWoRnbZqqcgiHM(int numPosBits, int numPrevBits)
			{
				if (OFbbksETUXeYqsefzOJwxtLWyvBe != null)
				{
					goto IL_000b;
				}
				goto IL_0128;
				IL_0128:
				cmwAbrSlMQFWtHySBzxsoNTQApceA = numPosBits;
				int num = 2136178275;
				goto IL_003a;
				IL_003a:
				uint num6 = default(uint);
				uint num3 = default(uint);
				while (true)
				{
					uint num2;
					switch ((num2 = (uint)num ^ 0x5289231Cu) % 9)
					{
					case 5u:
						break;
					default:
						goto IL_006e;
					case 2u:
						goto IL_0089;
					case 3u:
					{
						int num7;
						int num8;
						if (cmwAbrSlMQFWtHySBzxsoNTQApceA == numPosBits)
						{
							num7 = 2064853092;
							num8 = num7;
						}
						else
						{
							num7 = 1028663562;
							num8 = num7;
						}
						num = num7 ^ (int)(num2 * 753163628);
						continue;
					}
					case 6u:
						return;
					case 0u:
						wvdbFAyHQJAxUmRprQpvuzZZCTzA = (uint)((1 << numPosBits) - 1);
						PPewEafTzhNTdHUcWYUgnNQOGKZj = numPrevBits;
						num6 = (uint)(1 << PPewEafTzhNTdHUcWYUgnNQOGKZj + cmwAbrSlMQFWtHySBzxsoNTQApceA);
						OFbbksETUXeYqsefzOJwxtLWyvBe = new BJCCUkhZizbZYsqZYiaQoedzyFNGA[num6];
						num3 = 0u;
						num = ((int)num2 * -846931882) ^ -1496772783;
						continue;
					case 7u:
						goto IL_0128;
					case 4u:
					{
						int num4;
						int num5;
						if (PPewEafTzhNTdHUcWYUgnNQOGKZj == numPrevBits)
						{
							num4 = -1185326981;
							num5 = num4;
						}
						else
						{
							num4 = -99821832;
							num5 = num4;
						}
						num = num4 ^ ((int)num2 * -1749628394);
						continue;
					}
					case 1u:
						OFbbksETUXeYqsefzOJwxtLWyvBe[num3].rRyMHvwMxffjgJRqiGqOrDRjropNA();
						num3++;
						num = 678666235;
						continue;
					case 8u:
						return;
					}
					break;
				}
				goto IL_0035;
				IL_006e:
				int num9 = 1287742955;
				goto IL_0010;
				IL_000b:
				num9 = 1185439464;
				goto IL_0010;
				IL_0089:
				if (num3 < num6)
				{
					num9 = 1508024846;
					goto IL_0010;
				}
				num = 1585435333;
				int num10 = num;
				goto IL_003a;
				IL_0097:
				num = 308874485;
				num10 = num;
				goto IL_003a;
				IL_0035:
				num = 422465281;
				goto IL_003a;
				IL_0010:
				uint num11;
				switch ((num11 = (uint)num9 ^ 0x6D0449D4u) % 5)
				{
				case 4u:
					break;
				case 3u:
					goto IL_0035;
				case 2u:
					return;
				case 1u:
					goto IL_0089;
				default:
					goto IL_0097;
				}
				goto IL_000b;
			}

			internal void BWuYdTxRUnsJcCuCYACtsQoSUjee()
			{
				uint num = (uint)(1 << PPewEafTzhNTdHUcWYUgnNQOGKZj + cmwAbrSlMQFWtHySBzxsoNTQApceA);
				uint num6 = default(uint);
				uint num4 = default(uint);
				while (true)
				{
					int num2 = 1850447340;
					while (true)
					{
						uint num3;
						int num5;
						switch ((num3 = (uint)num2 ^ 0x1431A4E8u) % 5)
						{
						case 0u:
							break;
						case 4u:
							num6++;
							num2 = 841485427;
							continue;
						case 3u:
							return;
						case 2u:
							goto IL_005c;
						default:
							{
								num5 = ((int)num4 * -1313445761) ^ -1828056421;
								goto IL_0061;
							}
							IL_005c:
							num5 = -42786022;
							goto IL_0061;
							IL_0061:
							while (true)
							{
								switch ((num4 = (uint)num5 ^ 0x9A220A84u) % 7)
								{
								case 2u:
									break;
								case 0u:
									goto IL_005c;
								default:
									goto IL_008c;
								case 1u:
									num5 = ((int)num4 * -1146985240) ^ -763618320;
									continue;
								case 4u:
									goto IL_00b1;
								case 3u:
									OFbbksETUXeYqsefzOJwxtLWyvBe[num6].KdZWxhqeanfqxdrXFnJwizpvSVFI();
									num5 = -1298045215;
									continue;
								case 6u:
									num6 = 0u;
									num5 = (int)((num4 * 1792724424) ^ 0x43B33DB2);
									continue;
								case 5u:
									return;
								}
								break;
								IL_00b1:
								int num7;
								if (num6 < num)
								{
									num5 = -1050760078;
									num7 = num5;
								}
								else
								{
									num5 = -172236024;
									num7 = num5;
								}
							}
							goto case 4u;
							IL_008c:
							num2 = 771073591;
							continue;
						}
						break;
					}
				}
			}

			internal uint qCAaYHmyxsjnVVDVhOIxAilkbflZ(uint pos, byte prevByte)
			{
				return ((pos & wvdbFAyHQJAxUmRprQpvuzZZCTzA) << PPewEafTzhNTdHUcWYUgnNQOGKZj) + (uint)(prevByte >> 8 - PPewEafTzhNTdHUcWYUgnNQOGKZj);
			}

			internal byte ERqMavOlHEiNuimjJkVjLgnWopryA(UWfQViLoLsPKpqvKjOToltpyUdXu rangeDecoder, uint pos, byte prevByte)
			{
				return OFbbksETUXeYqsefzOJwxtLWyvBe[qCAaYHmyxsjnVVDVhOIxAilkbflZ(pos, prevByte)].SlXkWlHEzRzlOgJHraphCiWDFszL(rangeDecoder);
			}

			internal byte PixTNFEribjPQeOUwpjDIvreZvZqb(UWfQViLoLsPKpqvKjOToltpyUdXu rangeDecoder, uint pos, byte prevByte, byte matchByte)
			{
				return OFbbksETUXeYqsefzOJwxtLWyvBe[qCAaYHmyxsjnVVDVhOIxAilkbflZ(pos, prevByte)].WFzMQcLNmsPeGOmJIpGPOPtOPXCG(rangeDecoder, matchByte);
			}

			internal HjXtXqqSGQPppxlvECldYhdxQtBv()
			{
			}
		}

		internal readonly AJHePSbEGCNaNAhehDONmYOIRfKwb[] PBHFGwCryPmfpYHYIftHJvSShYTG = new AJHePSbEGCNaNAhehDONmYOIRfKwb[192];

		internal readonly AJHePSbEGCNaNAhehDONmYOIRfKwb[] LpDKsmwJVvRDhdqcCjyjkpemfwnFA = new AJHePSbEGCNaNAhehDONmYOIRfKwb[192];

		internal readonly AJHePSbEGCNaNAhehDONmYOIRfKwb[] gEoYnzmCvpXcTGXEdkhGaQXKwkqM = new AJHePSbEGCNaNAhehDONmYOIRfKwb[12];

		internal readonly AJHePSbEGCNaNAhehDONmYOIRfKwb[] ejesQqFIVplaEfgWfljuSafbsWeC = new AJHePSbEGCNaNAhehDONmYOIRfKwb[12];

		internal readonly AJHePSbEGCNaNAhehDONmYOIRfKwb[] djlKvLsjGevnhfItVIryGvQXBMmT = new AJHePSbEGCNaNAhehDONmYOIRfKwb[12];

		internal readonly AJHePSbEGCNaNAhehDONmYOIRfKwb[] cvlDJCHAQHGGvnMpjrCBMsjWpcmt = new AJHePSbEGCNaNAhehDONmYOIRfKwb[12];

		internal readonly nZlZbqwUkObalZIZmQPZufmqahUkA FZjannpHdrTVxnkFSdkQDoNaTmDxA = new nZlZbqwUkObalZIZmQPZufmqahUkA();

		internal readonly HjXtXqqSGQPppxlvECldYhdxQtBv hPTbzIMJkUZklabRGVLfvkizKWkl = new HjXtXqqSGQPppxlvECldYhdxQtBv();

		internal readonly miOtLqOkaYYNGkCBKGxHLAwLhIyg ZgpydUFQJTBLQXpulNDwJNJBKVwI = new miOtLqOkaYYNGkCBKGxHLAwLhIyg();

		internal readonly AJHePSbEGCNaNAhehDONmYOIRfKwb[] OCimeNgZvIjlXsTqXdgZaKUJsKi = new AJHePSbEGCNaNAhehDONmYOIRfKwb[114];

		internal readonly NFwGqIfWNcJhCtzkDNBUZiEummDQ[] lUyQUceTNdHXRVZMZSNFOcFnBzFiA = new NFwGqIfWNcJhCtzkDNBUZiEummDQ[4];

		internal readonly UWfQViLoLsPKpqvKjOToltpyUdXu XzRwacyxjBbfTdOYPvCGenqZTusS = new UWfQViLoLsPKpqvKjOToltpyUdXu();

		internal readonly nZlZbqwUkObalZIZmQPZufmqahUkA pLGgWEiAReuxQlivKjnDVaWstNWpA = new nZlZbqwUkObalZIZmQPZufmqahUkA();

		internal bool iFNjwjYlUEUaRTdBZiGPBmKLKjIzA;

		internal uint sEIDfPujdmljgPRHAYFhfFuegoBG;

		internal uint IaqAPSNUXmIQqZznxVOOfayGEgIX;

		internal NFwGqIfWNcJhCtzkDNBUZiEummDQ zFwpiVSUIBVXBhhuagLQFadzYHbj = new NFwGqIfWNcJhCtzkDNBUZiEummDQ(4);

		internal uint eXChnTBxpfokmvkzRbUqBYLHjEtZ;

		internal EylPPglEtXgCJtVXvSxdPoKkffpy()
		{
			int num3 = default(int);
			while (true)
			{
				int num = 1492282294;
				while (true)
				{
					uint num2;
					switch ((num2 = (uint)num ^ 0x6FB81497u) % 6)
					{
					case 0u:
						break;
					default:
						return;
					case 3u:
					{
						int num4;
						if ((long)num3 >= 4L)
						{
							num = 324450926;
							num4 = num;
						}
						else
						{
							num = 1159245635;
							num4 = num;
						}
						continue;
					}
					case 2u:
						num3 = 0;
						num = (int)(num2 * 144026635) ^ -478576626;
						continue;
					case 1u:
						sEIDfPujdmljgPRHAYFhfFuegoBG = uint.MaxValue;
						num = ((int)num2 * -1820114107) ^ 0x6F8A4D28;
						continue;
					case 4u:
						lUyQUceTNdHXRVZMZSNFOcFnBzFiA[num3] = new NFwGqIfWNcJhCtzkDNBUZiEummDQ(6);
						num3++;
						num = 1726820560;
						continue;
					case 5u:
						return;
					}
					break;
				}
			}
		}

		internal void staMdnGqgCHRdhGNrJzooViPXIEJA(uint dictionarySize)
		{
			if (sEIDfPujdmljgPRHAYFhfFuegoBG == dictionarySize)
			{
				return;
			}
			uint num3 = default(uint);
			uint windowSize = default(uint);
			while (true)
			{
				int num = 1630833060;
				while (true)
				{
					uint num2;
					int num4;
					switch ((num2 = (uint)num ^ 0x2DAA98E8u) % 5)
					{
					case 4u:
						break;
					case 2u:
						num4 = -1198290580;
						goto IL_003b;
					case 3u:
						return;
					case 1u:
						goto IL_0076;
					default:
						{
							num4 = ((int)num3 * -1147611387) ^ -636185745;
							goto IL_003b;
						}
						IL_003b:
						while (true)
						{
							switch ((num3 = (uint)num4 ^ 0xB5FAB9EEu) % 5)
							{
							case 0u:
								break;
							default:
								goto IL_005e;
							case 1u:
								goto IL_0076;
							case 4u:
								ZgpydUFQJTBLQXpulNDwJNJBKVwI.EmtrByriOTJXBcJbLLklABdBoHNl(windowSize);
								num4 = (int)((num3 * 19026174) ^ 0x5E81AB13);
								continue;
							case 2u:
								IaqAPSNUXmIQqZznxVOOfayGEgIX = \u202d\u206d\u206b\u206c\u206e\u200f\u202d\u200f\u202c\u202d\u202b\u206b\u206e\u206c\u206e\u200c\u200e\u202c\u200c\u200e\u202d\u200e\u200d\u206c\u206f\u206e\u200e\u202e\u206c\u202b\u206a\u202a\u206c\u206f\u202a\u202c\u202e\u200c\u202e\u206a\u202e(sEIDfPujdmljgPRHAYFhfFuegoBG, 1u);
								windowSize = \u202d\u206d\u206b\u206c\u206e\u200f\u202d\u200f\u202c\u202d\u202b\u206b\u206e\u206c\u206e\u200c\u200e\u202c\u200c\u200e\u202d\u200e\u200d\u206c\u206f\u206e\u200e\u202e\u206c\u202b\u206a\u202a\u206c\u206f\u202a\u202c\u202e\u200c\u202e\u206a\u202e(IaqAPSNUXmIQqZznxVOOfayGEgIX, 4096u);
								num4 = ((int)num3 * -195271130) ^ 0xE0CCADB;
								continue;
							case 3u:
								return;
							}
							break;
						}
						goto case 2u;
						IL_0076:
						sEIDfPujdmljgPRHAYFhfFuegoBG = dictionarySize;
						num = 830647514;
						continue;
						IL_005e:
						num = 1518798692;
						continue;
					}
					break;
				}
			}
		}

		internal void qDTKQVljNoefCYcxqQAmzssqgBPt(int lp, int lc)
		{
			hPTbzIMJkUZklabRGVLfvkizKWkl.EesPsGVLoByrJahWoRnbZqqcgiHM(lp, lc);
		}

		internal void vjHbeVxkEESRennTfCglRmuFtmxP(int pb)
		{
			uint num = (uint)(1 << pb);
			uint num4 = default(uint);
			while (true)
			{
				int num2 = -1023868487;
				while (true)
				{
					uint num3;
					int num5;
					switch ((num3 = (uint)num2 ^ 0xD5ED2E70u) % 6)
					{
					case 5u:
						break;
					case 2u:
						FZjannpHdrTVxnkFSdkQDoNaTmDxA.BDllSmSMZeavOPfSksPgDYbnuPVc(num);
						num2 = -440865050;
						continue;
					case 1u:
						return;
					case 3u:
						goto IL_0059;
					case 4u:
						pLGgWEiAReuxQlivKjnDVaWstNWpA.BDllSmSMZeavOPfSksPgDYbnuPVc(num);
						num2 = (int)(num3 * 818155776) ^ -1636547992;
						continue;
					default:
						{
							num5 = (int)((num4 * 1567872034) ^ 0x6520AA72);
							goto IL_005e;
						}
						IL_0059:
						num5 = -1644811415;
						goto IL_005e;
						IL_005e:
						while (true)
						{
							switch ((num4 = (uint)num5 ^ 0x8060617Au) % 4)
							{
							case 3u:
								break;
							case 0u:
								goto IL_0059;
							default:
								goto IL_007d;
							case 2u:
								eXChnTBxpfokmvkzRbUqBYLHjEtZ = num - 1;
								num5 = ((int)num4 * -210829317) ^ -2114221151;
								continue;
							case 1u:
								return;
							}
							break;
						}
						goto case 2u;
						IL_007d:
						num2 = -1793377061;
						continue;
					}
					break;
				}
			}
		}

		internal void EKormyObssrZunBCnpFaGISvPFku(Stream inStream, Stream outStream)
		{
			XzRwacyxjBbfTdOYPvCGenqZTusS.QFHvdyYDpyyjzOkSfANQrPevxBmd(inStream);
			uint num5 = default(uint);
			uint num7 = default(uint);
			uint num6 = default(uint);
			while (true)
			{
				int num = 799748775;
				while (true)
				{
					uint num2;
					int num3;
					switch ((num2 = (uint)num ^ 0x2722B5A3u) % 6)
					{
					case 0u:
						break;
					case 2u:
						ZgpydUFQJTBLQXpulNDwJNJBKVwI.DzHHHoVhbvghGAZxVKeCnDYLLOobA(outStream, iFNjwjYlUEUaRTdBZiGPBmKLKjIzA);
						num = ((int)num2 * -336913021) ^ -1241765786;
						continue;
					case 1u:
						OCimeNgZvIjlXsTqXdgZaKUJsKi[num5].HpktvqDfapNueOSvhBlEFPBfnDZVA();
						num = 1341193569;
						continue;
					case 5u:
						goto IL_0078;
					case 3u:
						return;
					default:
						{
							num3 = -1532699707;
							goto IL_007d;
						}
						IL_0078:
						num3 = -68742388;
						goto IL_007d;
						IL_007d:
						while (true)
						{
							uint num4;
							switch ((num4 = (uint)num3 ^ 0xC6650CF5u) % 25)
							{
							case 15u:
								break;
							case 21u:
								goto IL_0078;
							default:
								goto IL_00f1;
							case 18u:
								num5++;
								num3 = ((int)num4 * -832256976) ^ 0xB991814;
								continue;
							case 1u:
								goto IL_0133;
							case 11u:
								ejesQqFIVplaEfgWfljuSafbsWeC[num5].HpktvqDfapNueOSvhBlEFPBfnDZVA();
								djlKvLsjGevnhfItVIryGvQXBMmT[num5].HpktvqDfapNueOSvhBlEFPBfnDZVA();
								cvlDJCHAQHGGvnMpjrCBMsjWpcmt[num5].HpktvqDfapNueOSvhBlEFPBfnDZVA();
								num3 = (int)((num4 * 948766628) ^ 0x2D9C2617);
								continue;
							case 23u:
								goto IL_0195;
							case 0u:
								goto IL_01ad;
							case 2u:
								num7 = 0u;
								num3 = -2120729786;
								continue;
							case 3u:
								num3 = ((int)num4 * -681503442) ^ -716341072;
								continue;
							case 19u:
								gEoYnzmCvpXcTGXEdkhGaQXKwkqM[num5].HpktvqDfapNueOSvhBlEFPBfnDZVA();
								num3 = ((int)num4 * -719401648) ^ -513860498;
								continue;
							case 14u:
								hPTbzIMJkUZklabRGVLfvkizKWkl.BWuYdTxRUnsJcCuCYACtsQoSUjee();
								num3 = ((int)num4 * -1780078418) ^ 0x59D06C73;
								continue;
							case 17u:
								lUyQUceTNdHXRVZMZSNFOcFnBzFiA[num5].UECFudnxgpRloxECMplMyWtYnTry();
								num3 = -1965848834;
								continue;
							case 10u:
								num6 = (num5 << 4) + num7;
								num3 = -1707112968;
								continue;
							case 9u:
								num3 = (int)(num4 * 1732489368) ^ -1720397582;
								continue;
							case 8u:
								goto IL_0261;
							case 13u:
								num5 = 0u;
								num3 = (int)(num4 * 457323055) ^ -1276457948;
								continue;
							case 20u:
								num7++;
								num3 = (int)(num4 * 424871226) ^ -439131732;
								continue;
							case 16u:
								num5 = 0u;
								num3 = (int)((num4 * 1979187658) ^ 0x7D144BCE);
								continue;
							case 22u:
								PBHFGwCryPmfpYHYIftHJvSShYTG[num6].HpktvqDfapNueOSvhBlEFPBfnDZVA();
								num3 = ((int)num4 * -1185477833) ^ 0x2429862A;
								continue;
							case 7u:
								num5++;
								num3 = ((int)num4 * -549228116) ^ 0x3B18071E;
								continue;
							case 24u:
								FZjannpHdrTVxnkFSdkQDoNaTmDxA.esvAqNjuvjgeCwcGJFUIcKKSCOTCA();
								pLGgWEiAReuxQlivKjnDVaWstNWpA.esvAqNjuvjgeCwcGJFUIcKKSCOTCA();
								zFwpiVSUIBVXBhhuagLQFadzYHbj.UECFudnxgpRloxECMplMyWtYnTry();
								num3 = (int)(num4 * 1978943955) ^ -339087520;
								continue;
							case 6u:
								LpDKsmwJVvRDhdqcCjyjkpemfwnFA[num6].HpktvqDfapNueOSvhBlEFPBfnDZVA();
								num3 = (int)((num4 * 1810131756) ^ 0x26D94792);
								continue;
							case 4u:
								num5++;
								num3 = (int)(num4 * 529339054) ^ -2028629823;
								continue;
							case 12u:
								num5 = 0u;
								num3 = (int)((num4 * 379330313) ^ 0x4799B25);
								continue;
							case 5u:
								return;
							}
							break;
							IL_0261:
							int num8;
							if (num5 >= 12)
							{
								num3 = -1301746427;
								num8 = num3;
							}
							else
							{
								num3 = -24928678;
								num8 = num3;
							}
							continue;
							IL_0195:
							int num9;
							if (num5 >= 4)
							{
								num3 = -2048859951;
								num9 = num3;
							}
							else
							{
								num3 = -100127524;
								num9 = num3;
							}
							continue;
							IL_0133:
							int num10;
							if (num7 > eXChnTBxpfokmvkzRbUqBYLHjEtZ)
							{
								num3 = -197645777;
								num10 = num3;
							}
							else
							{
								num3 = -105364354;
								num10 = num3;
							}
							continue;
							IL_01ad:
							int num11;
							if (num5 >= 114)
							{
								num3 = -313485825;
								num11 = num3;
							}
							else
							{
								num3 = -66443641;
								num11 = num3;
							}
						}
						goto case 1u;
						IL_00f1:
						num = 1923162822;
						continue;
					}
					break;
				}
			}
		}

		internal void RUDEiNzVBtPJnhuWbQfjeGfwjEBaA(Stream inStream, Stream outStream, long inSize, long outSize)
		{
			EKormyObssrZunBCnpFaGISvPFku(inStream, outStream);
			uint num7 = default(uint);
			uint num13 = default(uint);
			byte b = default(byte);
			ulong num9 = default(ulong);
			byte prevByte = default(byte);
			uint num15 = default(uint);
			tJMIgkXaexDJkAOrieZeMuOQjkdH tJMIgkXaexDJkAOrieZeMuOQjkdH = default(tJMIgkXaexDJkAOrieZeMuOQjkdH);
			int num8 = default(int);
			uint num17 = default(uint);
			uint num6 = default(uint);
			uint num14 = default(uint);
			uint num20 = default(uint);
			uint num16 = default(uint);
			ulong num10 = default(ulong);
			while (true)
			{
				int num = -1930384296;
				while (true)
				{
					uint num2;
					int num3;
					int num4;
					switch ((num2 = (uint)num ^ 0xB5CE35A9u) % 5)
					{
					case 0u:
						break;
					case 3u:
						num3 = -1519892428;
						goto IL_003b;
					case 2u:
						goto IL_013e;
					default:
						num3 = -2046648190;
						num4 = num3;
						goto IL_003b;
					case 4u:
						goto IL_085c;
						IL_003b:
						while (true)
						{
							uint num5;
							switch ((num5 = (uint)num3 ^ 0x989F556Du) % 58)
							{
							case 37u:
								break;
							default:
								goto IL_0134;
							case 43u:
								goto IL_013e;
							case 1u:
								ZgpydUFQJTBLQXpulNDwJNJBKVwI.CHXxneCHvhXdrLMeuuTbLUajAslL(num7, num13);
								num3 = -1500278805;
								continue;
							case 54u:
								num3 = ((int)num5 * -1190771742) ^ 0x10EB83DB;
								continue;
							case 45u:
								b = hPTbzIMJkUZklabRGVLfvkizKWkl.ERqMavOlHEiNuimjJkVjLgnWopryA(XzRwacyxjBbfTdOYPvCGenqZTusS, (uint)num9, prevByte);
								num3 = -340228237;
								continue;
							case 32u:
								goto IL_01c5;
							case 7u:
								num15 = 0u;
								num9 = 0uL;
								num3 = (int)(num5 * 1201121261) ^ -1150619591;
								continue;
							case 30u:
								tJMIgkXaexDJkAOrieZeMuOQjkdH.NEgEOiFwJkDBiqUeqInOGwtaeqfgA();
								num3 = (int)((num5 * 1906760135) ^ 0x5A2404BA);
								continue;
							case 42u:
								goto IL_0213;
							case 11u:
								num8 = (int)((num17 >> 1) - 1);
								num3 = ((int)num5 * -1662273788) ^ -1784005934;
								continue;
							case 9u:
								tJMIgkXaexDJkAOrieZeMuOQjkdH.iyiBCLkfHdcxsubpZueVJRabRpvEA();
								num3 = (int)((num5 * 255524585) ^ 0x2EDCB413);
								continue;
							case 40u:
								goto IL_027a;
							case 23u:
								num6 = num15;
								num15 = num14;
								num3 = -1387918773;
								continue;
							case 36u:
								num3 = (int)(num5 * 1925082051) ^ -1926087701;
								continue;
							case 53u:
							{
								int num25;
								int num26;
								if (ejesQqFIVplaEfgWfljuSafbsWeC[tJMIgkXaexDJkAOrieZeMuOQjkdH.FXcCjDaaZZEODeUjZXJneUZaGgBA].jtmPsSKRMgQpgIJmqNLrizBahHVt(XzRwacyxjBbfTdOYPvCGenqZTusS) == 0)
								{
									num25 = 365861285;
									num26 = num25;
								}
								else
								{
									num25 = 762968304;
									num26 = num25;
								}
								num3 = num25 ^ ((int)num5 * -1681867353);
								continue;
							}
							case 5u:
							{
								byte b2 = hPTbzIMJkUZklabRGVLfvkizKWkl.ERqMavOlHEiNuimjJkVjLgnWopryA(XzRwacyxjBbfTdOYPvCGenqZTusS, 0u, 0);
								ZgpydUFQJTBLQXpulNDwJNJBKVwI.EurRdbnpHlKOVMBjPEnacIGJZnUh(b2);
								num9++;
								num3 = ((int)num5 * -174584324) ^ -1421752623;
								continue;
							}
							case 41u:
							{
								int num21;
								int num22;
								if (LpDKsmwJVvRDhdqcCjyjkpemfwnFA[(tJMIgkXaexDJkAOrieZeMuOQjkdH.FXcCjDaaZZEODeUjZXJneUZaGgBA << 4) + num20].jtmPsSKRMgQpgIJmqNLrizBahHVt(XzRwacyxjBbfTdOYPvCGenqZTusS) != 0)
								{
									num21 = -876977556;
									num22 = num21;
								}
								else
								{
									num21 = -1131324123;
									num22 = num21;
								}
								num3 = num21 ^ (int)(num5 * 1918644810);
								continue;
							}
							case 57u:
								ZgpydUFQJTBLQXpulNDwJNJBKVwI.EurRdbnpHlKOVMBjPEnacIGJZnUh(ZgpydUFQJTBLQXpulNDwJNJBKVwI.cyemeXXCHXAWnGMmjwMsFMoYXrbMA(num7));
								num3 = (int)((num5 * 1587011044) ^ 0x136F10F5);
								continue;
							case 4u:
								num9 += num13;
								num3 = ((int)num5 * -1673200202) ^ 0x35AB2DD5;
								continue;
							case 56u:
								num3 = (int)((num5 * 1052394959) ^ 0x1CB09921);
								continue;
							case 47u:
								num13 = pLGgWEiAReuxQlivKjnDVaWstNWpA.WGPVdmTCXXgljVOfihJkKIntvYLp(XzRwacyxjBbfTdOYPvCGenqZTusS, num20) + 2;
								num3 = -1166306065;
								continue;
							case 35u:
								num7 = 0u;
								num16 = 0u;
								num14 = 0u;
								num3 = ((int)num5 * -1694597718) ^ -1609675740;
								continue;
							case 8u:
								num3 = ((int)num5 * -1324217346) ^ 0x1C1DE089;
								continue;
							case 48u:
								num3 = ((int)num5 * -837357044) ^ -106764949;
								continue;
							case 12u:
								num6 = num14;
								num3 = ((int)num5 * -889059399) ^ -1386330479;
								continue;
							case 17u:
							{
								int num29;
								int num30;
								if (tJMIgkXaexDJkAOrieZeMuOQjkdH.WVibspAJtOFIkjLcXtMeSlAJKhGhA())
								{
									num29 = 1106436569;
									num30 = num29;
								}
								else
								{
									num29 = 1943662755;
									num30 = num29;
								}
								num3 = num29 ^ (int)(num5 * 1130771233);
								continue;
							}
							case 29u:
								prevByte = ZgpydUFQJTBLQXpulNDwJNJBKVwI.cyemeXXCHXAWnGMmjwMsFMoYXrbMA(0u);
								num3 = (int)(num5 * 1580212608) ^ -88590890;
								continue;
							case 19u:
								num7 += zFwpiVSUIBVXBhhuagLQFadzYHbj.TqTfJhaClSuaxGXWBUXyAHBocbxvA(XzRwacyxjBbfTdOYPvCGenqZTusS);
								num3 = (int)(num5 * 1671506074) ^ -35323727;
								continue;
							case 25u:
								num10 = (ulong)outSize;
								num3 = ((int)num5 * -975086250) ^ -251286202;
								continue;
							case 3u:
								goto IL_04c2;
							case 44u:
								num7 = num17;
								num3 = -766190005;
								continue;
							case 55u:
								goto IL_0512;
							case 33u:
							{
								num7 = (2 | (num17 & 1)) << num8;
								int num27;
								int num28;
								if (num17 >= 14)
								{
									num27 = 1179526363;
									num28 = num27;
								}
								else
								{
									num27 = 1703039177;
									num28 = num27;
								}
								num3 = num27 ^ ((int)num5 * -1946167715);
								continue;
							}
							case 22u:
								ZgpydUFQJTBLQXpulNDwJNJBKVwI.EurRdbnpHlKOVMBjPEnacIGJZnUh(b);
								tJMIgkXaexDJkAOrieZeMuOQjkdH.DLAwiaGQyETPHkaqZoouLtKsnlyr();
								num9++;
								num3 = -87334759;
								continue;
							case 18u:
							{
								int num23;
								int num24;
								if (num7 < IaqAPSNUXmIQqZznxVOOfayGEgIX)
								{
									num23 = 63415842;
									num24 = num23;
								}
								else
								{
									num23 = 1771891568;
									num24 = num23;
								}
								num3 = num23 ^ (int)(num5 * 158437936);
								continue;
							}
							case 24u:
								num3 = (int)(num5 * 384201165) ^ -1870216791;
								continue;
							case 38u:
								PBHFGwCryPmfpYHYIftHJvSShYTG[tJMIgkXaexDJkAOrieZeMuOQjkdH.FXcCjDaaZZEODeUjZXJneUZaGgBA << 4].jtmPsSKRMgQpgIJmqNLrizBahHVt(XzRwacyxjBbfTdOYPvCGenqZTusS);
								tJMIgkXaexDJkAOrieZeMuOQjkdH.DLAwiaGQyETPHkaqZoouLtKsnlyr();
								num3 = ((int)num5 * -697054398) ^ 0x37A3BF52;
								continue;
							case 20u:
								goto IL_060c;
							case 26u:
								num13 = 2 + FZjannpHdrTVxnkFSdkQDoNaTmDxA.WGPVdmTCXXgljVOfihJkKIntvYLp(XzRwacyxjBbfTdOYPvCGenqZTusS, num20);
								tJMIgkXaexDJkAOrieZeMuOQjkdH.hXHvwjlCiDNbklfRUGMrAvAbCyad();
								num17 = lUyQUceTNdHXRVZMZSNFOcFnBzFiA[XrUFxKcknyZhnnIDvWmTskKiPdlfA(num13)].KjDcveUrsslvBNEVZrqYRMtyGIkK(XzRwacyxjBbfTdOYPvCGenqZTusS);
								num3 = (int)(num5 * 577767146) ^ -2074568117;
								continue;
							case 39u:
								b = hPTbzIMJkUZklabRGVLfvkizKWkl.PixTNFEribjPQeOUwpjDIvreZvZqb(XzRwacyxjBbfTdOYPvCGenqZTusS, (uint)num9, prevByte, ZgpydUFQJTBLQXpulNDwJNJBKVwI.cyemeXXCHXAWnGMmjwMsFMoYXrbMA(num7));
								num3 = (int)(num5 * 2130318076) ^ -370202807;
								continue;
							case 16u:
								num14 = num16;
								num3 = -1724631073;
								continue;
							case 13u:
								num7 += NFwGqIfWNcJhCtzkDNBUZiEummDQ.gRGhCuudcgaQLSXrmPeOqQCFxPru(OCimeNgZvIjlXsTqXdgZaKUJsKi, num7 - num17 - 1, XzRwacyxjBbfTdOYPvCGenqZTusS, num8);
								num3 = ((int)num5 * -1644467447) ^ -62217792;
								continue;
							case 21u:
								num16 = num7;
								num3 = (int)(num5 * 1900282044) ^ -1401461903;
								continue;
							case 28u:
							{
								int num18;
								int num19;
								if (num17 < 4)
								{
									num18 = -421313179;
									num19 = num18;
								}
								else
								{
									num18 = -1907923740;
									num19 = num18;
								}
								num3 = num18 ^ ((int)num5 * -579264261);
								continue;
							}
							case 51u:
								num6 = num16;
								num3 = (int)((num5 * 1534306881) ^ 0x4F30D248);
								continue;
							case 10u:
								num16 = num7;
								num3 = -95725499;
								continue;
							case 2u:
								num3 = (int)(num5 * 1081683175) ^ -1136326455;
								continue;
							case 50u:
								num9++;
								num3 = (int)((num5 * 176150964) ^ 0x7789C461);
								continue;
							case 0u:
								num14 = num16;
								num3 = (int)(num5 * 1831970197) ^ -183887746;
								continue;
							case 6u:
								tJMIgkXaexDJkAOrieZeMuOQjkdH.DLUxSvjFFUeSsAZprYbligDhwYYf();
								num3 = (int)((num5 * 676302378) ^ 0x6FFB5DAF);
								continue;
							case 46u:
								num15 = num14;
								num3 = -788847489;
								continue;
							case 27u:
								ZgpydUFQJTBLQXpulNDwJNJBKVwI.gWOrGjWpKPbaCIHLtaCWFgDkdAcKc();
								num3 = -1129262515;
								continue;
							case 31u:
								tJMIgkXaexDJkAOrieZeMuOQjkdH = default(tJMIgkXaexDJkAOrieZeMuOQjkdH);
								num3 = (int)(num5 * 826246129) ^ -1958890169;
								continue;
							case 49u:
							{
								int num11;
								int num12;
								if (num9 >= num10)
								{
									num11 = -1902641956;
									num12 = num11;
								}
								else
								{
									num11 = -419884108;
									num12 = num11;
								}
								num3 = num11 ^ ((int)num5 * -1735051115);
								continue;
							}
							case 15u:
								num7 += XzRwacyxjBbfTdOYPvCGenqZTusS.XAxrQHBAkGaxPSNnAGfxCSHAPEwj(num8 - 4) << 4;
								num3 = -432761680;
								continue;
							case 14u:
								num7 = num6;
								num3 = ((int)num5 * -1082755317) ^ 0x6E265212;
								continue;
							case 52u:
								num3 = (int)(num5 * 2044670572) ^ -230797053;
								continue;
							case 34u:
								goto IL_085c;
							}
							break;
							IL_060c:
							int num31;
							if (cvlDJCHAQHGGvnMpjrCBMsjWpcmt[tJMIgkXaexDJkAOrieZeMuOQjkdH.FXcCjDaaZZEODeUjZXJneUZaGgBA].jtmPsSKRMgQpgIJmqNLrizBahHVt(XzRwacyxjBbfTdOYPvCGenqZTusS) != 0)
							{
								num3 = -1886177972;
								num31 = num3;
							}
							else
							{
								num3 = -2077021207;
								num31 = num3;
							}
							continue;
							IL_04c2:
							num20 = (uint)(int)num9 & eXChnTBxpfokmvkzRbUqBYLHjEtZ;
							int num32;
							if (PBHFGwCryPmfpYHYIftHJvSShYTG[(tJMIgkXaexDJkAOrieZeMuOQjkdH.FXcCjDaaZZEODeUjZXJneUZaGgBA << 4) + num20].jtmPsSKRMgQpgIJmqNLrizBahHVt(XzRwacyxjBbfTdOYPvCGenqZTusS) == 0)
							{
								num3 = -1445888892;
								num32 = num3;
							}
							else
							{
								num3 = -1665870976;
								num32 = num3;
							}
							continue;
							IL_0213:
							int num33;
							if (djlKvLsjGevnhfItVIryGvQXBMmT[tJMIgkXaexDJkAOrieZeMuOQjkdH.FXcCjDaaZZEODeUjZXJneUZaGgBA].jtmPsSKRMgQpgIJmqNLrizBahHVt(XzRwacyxjBbfTdOYPvCGenqZTusS) == 0)
							{
								num3 = -2058997206;
								num33 = num3;
							}
							else
							{
								num3 = -1726203875;
								num33 = num3;
							}
							continue;
							IL_0512:
							int num34;
							if (gEoYnzmCvpXcTGXEdkhGaQXKwkqM[tJMIgkXaexDJkAOrieZeMuOQjkdH.FXcCjDaaZZEODeUjZXJneUZaGgBA].jtmPsSKRMgQpgIJmqNLrizBahHVt(XzRwacyxjBbfTdOYPvCGenqZTusS) == 1)
							{
								num3 = -247152812;
								num34 = num3;
							}
							else
							{
								num3 = -1499368673;
								num34 = num3;
							}
							continue;
							IL_01c5:
							int num35;
							if (num9 < num10)
							{
								num3 = -831002078;
								num35 = num3;
							}
							else
							{
								num3 = -884833030;
								num35 = num3;
							}
							continue;
							IL_027a:
							int num36;
							if (num7 < num9)
							{
								num3 = -955858717;
								num36 = num3;
							}
							else
							{
								num3 = -329650736;
								num36 = num3;
							}
						}
						goto case 3u;
						IL_085c:
						ZgpydUFQJTBLQXpulNDwJNJBKVwI.ybCWZTDSrXkqmkCOgziQIjruCLUX();
						XzRwacyxjBbfTdOYPvCGenqZTusS.MakxVxqqScYmkJMGgGCUlGbyTNcU();
						return;
						IL_013e:
						if (num7 != uint.MaxValue)
						{
							num = -299250404;
							continue;
						}
						num3 = -884833030;
						num4 = num3;
						goto IL_003b;
						IL_0134:
						num = -1312527165;
						continue;
					}
					break;
				}
			}
		}

		internal void aBOpHtljIXmmdXnnuAZpAcNvkSapA(byte[] properties)
		{
			int lc = properties[0] % 9;
			int num = properties[0] / 9;
			int lp = num % 5;
			int pb = num / 5;
			uint num4 = default(uint);
			int num7 = default(int);
			uint num6 = default(uint);
			while (true)
			{
				int num2 = -1537409961;
				while (true)
				{
					uint num3;
					int num5;
					switch ((num3 = (uint)num2 ^ 0xC0822DBEu) % 5)
					{
					case 0u:
						break;
					case 4u:
						num5 = -521198938;
						goto IL_0044;
					case 3u:
						goto IL_0077;
					default:
						num5 = (int)((num4 * 150009620) ^ 0x3E6F0BDB);
						goto IL_0044;
					case 2u:
						goto IL_0114;
						IL_0044:
						while (true)
						{
							switch ((num4 = (uint)num5 ^ 0xE1AB6060u) % 7)
							{
							case 6u:
								break;
							default:
								goto IL_0070;
							case 4u:
								goto IL_0077;
							case 3u:
								goto IL_00a5;
							case 0u:
								num7 = 0;
								num5 = (int)(num4 * 880940413) ^ -610916428;
								continue;
							case 2u:
								staMdnGqgCHRdhGNrJzooViPXIEJA(num6);
								qDTKQVljNoefCYcxqQAmzssqgBPt(lp, lc);
								num5 = (int)((num4 * 296168339) ^ 0x5D7DB860);
								continue;
							case 1u:
								num6 += (uint)(properties[1 + num7] << num7 * 8);
								num7++;
								num5 = -29571197;
								continue;
							case 5u:
								goto IL_0114;
							}
							break;
							IL_00a5:
							int num8;
							if (num7 < 4)
							{
								num5 = -797913118;
								num8 = num5;
							}
							else
							{
								num5 = -425662409;
								num8 = num5;
							}
						}
						goto case 4u;
						IL_0114:
						vjHbeVxkEESRennTfCglRmuFtmxP(pb);
						return;
						IL_0077:
						num6 = 0u;
						num2 = -1558169344;
						continue;
						IL_0070:
						num2 = -516526658;
						continue;
					}
					break;
				}
			}
		}

		internal static uint XrUFxKcknyZhnnIDvWmTskKiPdlfA(uint len)
		{
			len -= 2;
			uint num3 = default(uint);
			while (true)
			{
				int num = 1177185348;
				while (true)
				{
					uint num2;
					int num4;
					switch ((num2 = (uint)num ^ 0x561BE55Bu) % 6)
					{
					case 4u:
						break;
					case 5u:
						if (len < 4)
						{
							num = ((int)num2 * -462826231) ^ -1758430932;
							continue;
						}
						goto IL_0096;
					case 2u:
						num4 = -2126372781;
						goto IL_004b;
					case 3u:
						goto IL_007e;
					default:
						num4 = (int)(num3 * 54958050) ^ -1315568332;
						goto IL_004b;
					case 0u:
						goto IL_0096;
						IL_004b:
						switch ((num3 = (uint)num4 ^ 0x9BD749CCu) % 3)
						{
						case 0u:
							break;
						default:
							goto IL_0066;
						case 1u:
							goto IL_007e;
						case 2u:
							goto IL_0096;
						}
						goto case 2u;
						IL_007e:
						return len;
						IL_0066:
						num = 273237357;
						continue;
						IL_0096:
						return 3u;
					}
					break;
				}
			}
		}

		static uint \u202d\u206d\u206b\u206c\u206e\u200f\u202d\u200f\u202c\u202d\u202b\u206b\u206e\u206c\u206e\u200c\u200e\u202c\u200c\u200e\u202d\u200e\u200d\u206c\u206f\u206e\u200e\u202e\u206c\u202b\u206a\u202a\u206c\u206f\u202a\u202c\u202e\u200c\u202e\u206a\u202e(uint P_0, uint P_1)
		{
			return Math.Max(P_0, P_1);
		}
	}

	internal class miOtLqOkaYYNGkCBKGxHLAwLhIyg
	{
		internal byte[] BguFyVhVYrqsVvyHwqluGpQqOKFd;

		internal uint wDYZGLOVXJDqOOmInsacgpgRMPwD;

		internal Stream KfvsRnziMbBWmtMqWxdjhuuRDMyS;

		internal uint VndKJmNiEhfdDVmFYddoZiWXaDwH;

		internal uint pEYenyirGNFbKGdyEcseDmjCzWuGA;

		internal void EmtrByriOTJXBcJbLLklABdBoHNl(uint windowSize)
		{
			if (pEYenyirGNFbKGdyEcseDmjCzWuGA != windowSize)
			{
				goto IL_000c;
			}
			goto IL_00b5;
			IL_00b5:
			pEYenyirGNFbKGdyEcseDmjCzWuGA = windowSize;
			int num = -264480992;
			goto IL_003b;
			IL_003b:
			uint num2 = default(uint);
			while (true)
			{
				switch ((num2 = (uint)num ^ 0xC26E6406u) % 5)
				{
				case 0u:
					break;
				default:
					goto IL_005e;
				case 2u:
					goto IL_0065;
				case 1u:
					wDYZGLOVXJDqOOmInsacgpgRMPwD = 0u;
					VndKJmNiEhfdDVmFYddoZiWXaDwH = 0u;
					num = ((int)num2 * -593369727) ^ 0x8C2732;
					continue;
				case 3u:
					goto IL_00b5;
				case 4u:
					return;
				}
				break;
			}
			goto IL_0036;
			IL_005e:
			int num3 = 1766665877;
			goto IL_0011;
			IL_0065:
			BguFyVhVYrqsVvyHwqluGpQqOKFd = new byte[windowSize];
			num3 = 998268499;
			goto IL_0011;
			IL_0011:
			uint num4;
			switch ((num4 = (uint)num3 ^ 0x1BFA5B6Au) % 5)
			{
			case 0u:
				break;
			case 2u:
				goto IL_0036;
			case 3u:
				goto IL_0065;
			case 4u:
				return;
			default:
				goto IL_0089;
			}
			goto IL_000c;
			IL_0089:
			num = ((int)num2 * -1396420241) ^ -1006681007;
			goto IL_003b;
			IL_000c:
			num3 = 962429685;
			goto IL_0011;
			IL_0036:
			num = -367369624;
			goto IL_003b;
		}

		internal void DzHHHoVhbvghGAZxVKeCnDYLLOobA(Stream stream, bool solid)
		{
			ybCWZTDSrXkqmkCOgziQIjruCLUX();
			uint num3 = default(uint);
			while (true)
			{
				int num = 1744411262;
				while (true)
				{
					uint num2;
					int num4;
					switch ((num2 = (uint)num ^ 0x58B48B99u) % 5)
					{
					case 4u:
						break;
					case 3u:
						num4 = 899936120;
						goto IL_0035;
					case 1u:
						goto IL_0063;
					case 0u:
						return;
					default:
						{
							num4 = ((int)num3 * -918039520) ^ 0x6149C0CC;
							goto IL_0035;
						}
						IL_0035:
						while (true)
						{
							switch ((num3 = (uint)num4 ^ 0x532198F5u) % 6)
							{
							case 0u:
								break;
							default:
								goto IL_005c;
							case 1u:
								goto IL_0063;
							case 2u:
							{
								int num5;
								int num6;
								if (!solid)
								{
									num5 = 792670050;
									num6 = num5;
								}
								else
								{
									num5 = 1168681013;
									num6 = num5;
								}
								num4 = num5 ^ ((int)num3 * -2011966729);
								continue;
							}
							case 5u:
								wDYZGLOVXJDqOOmInsacgpgRMPwD = 0u;
								num4 = (int)(num3 * 132003975) ^ -1590351758;
								continue;
							case 3u:
								KfvsRnziMbBWmtMqWxdjhuuRDMyS = stream;
								num4 = (int)((num3 * 1368880260) ^ 0x79593059);
								continue;
							case 4u:
								return;
							}
							break;
						}
						goto case 3u;
						IL_0063:
						VndKJmNiEhfdDVmFYddoZiWXaDwH = 0u;
						num = 320467956;
						continue;
						IL_005c:
						num = 671539946;
						continue;
					}
					break;
				}
			}
		}

		internal void ybCWZTDSrXkqmkCOgziQIjruCLUX()
		{
			gWOrGjWpKPbaCIHLtaCWFgDkdAcKc();
			uint num3 = default(uint);
			while (true)
			{
				int num = 552646409;
				while (true)
				{
					uint num2;
					int num4;
					switch ((num2 = (uint)num ^ 0x70D2428Cu) % 5)
					{
					case 0u:
						break;
					case 1u:
						KfvsRnziMbBWmtMqWxdjhuuRDMyS = null;
						num = 2045673240;
						continue;
					case 2u:
						goto IL_004f;
					default:
						num4 = ((int)num3 * -360113715) ^ 0x35999B96;
						goto IL_0054;
					case 4u:
						goto IL_0085;
						IL_004f:
						num4 = 835131491;
						goto IL_0054;
						IL_0054:
						switch ((num3 = (uint)num4 ^ 0x1CC20BA4u) % 3)
						{
						case 1u:
							break;
						case 0u:
							goto IL_004f;
						default:
							goto IL_006f;
						case 2u:
							goto IL_0085;
						}
						goto case 1u;
						IL_0085:
						\u202c\u206a\u202e\u200f\u206c\u206f\u206c\u206f\u200b\u202d\u200b\u206c\u200c\u202a\u206c\u202c\u202d\u202a\u202d\u206e\u202e\u202e\u200b\u202e\u202e\u202b\u202c\u206f\u200d\u202a\u200d\u206c\u206b\u206c\u202b\u202e\u202a\u206d\u206e\u206d\u202e((Array)new byte[BguFyVhVYrqsVvyHwqluGpQqOKFd.Length], 0, (Array)BguFyVhVYrqsVvyHwqluGpQqOKFd, 0, BguFyVhVYrqsVvyHwqluGpQqOKFd.Length);
						return;
						IL_006f:
						num = 657456031;
						continue;
					}
					break;
				}
			}
		}

		internal void gWOrGjWpKPbaCIHLtaCWFgDkdAcKc()
		{
			uint num = wDYZGLOVXJDqOOmInsacgpgRMPwD - VndKJmNiEhfdDVmFYddoZiWXaDwH;
			while (true)
			{
				int num2 = 350251849;
				while (true)
				{
					uint num3;
					int num4;
					int num5;
					switch ((num3 = (uint)num2 ^ 0x5CCFB98Au) % 6)
					{
					case 4u:
						break;
					case 5u:
						num4 = -496898767;
						goto IL_0044;
					case 2u:
						if (wDYZGLOVXJDqOOmInsacgpgRMPwD < pEYenyirGNFbKGdyEcseDmjCzWuGA)
						{
							num2 = (int)((num3 * 480330684) ^ 0x384778F9);
							continue;
						}
						num4 = -1492666313;
						num5 = num4;
						goto IL_0044;
					case 1u:
						goto IL_00a6;
					default:
						num4 = -873600354;
						num5 = num4;
						goto IL_0044;
					case 0u:
						goto IL_0127;
						IL_00a6:
						\u206f\u206a\u202c\u200c\u200d\u206e\u202d\u202c\u206a\u200f\u200d\u206b\u200d\u202c\u200f\u200f\u206e\u200e\u200e\u206a\u200e\u202e\u200d\u202a\u200d\u200f\u200d\u200e\u200b\u202b\u202e\u202e\u206d\u206a\u200e\u206f\u202e\u200d\u202c\u202b\u202e(KfvsRnziMbBWmtMqWxdjhuuRDMyS, BguFyVhVYrqsVvyHwqluGpQqOKFd, (int)VndKJmNiEhfdDVmFYddoZiWXaDwH, (int)num);
						num2 = 166529024;
						continue;
						IL_006b:
						num2 = 1066213572;
						continue;
						IL_0044:
						while (true)
						{
							uint num6;
							switch ((num6 = (uint)num4 ^ 0x91EC81ABu) % 6)
							{
							case 3u:
								break;
							default:
								goto IL_006b;
							case 0u:
								goto IL_00a6;
							case 4u:
								wDYZGLOVXJDqOOmInsacgpgRMPwD = 0u;
								num4 = (int)((num6 * 571597875) ^ 0x306A808A);
								continue;
							case 2u:
							{
								int num7;
								int num8;
								if (num != 0)
								{
									num7 = 242490475;
									num8 = num7;
								}
								else
								{
									num7 = 1968579066;
									num8 = num7;
								}
								num4 = num7 ^ ((int)num6 * -464895593);
								continue;
							}
							case 1u:
								return;
							case 5u:
								goto IL_0127;
							}
							break;
						}
						goto case 5u;
						IL_0127:
						VndKJmNiEhfdDVmFYddoZiWXaDwH = wDYZGLOVXJDqOOmInsacgpgRMPwD;
						return;
					}
					break;
				}
			}
		}

		internal void CHXxneCHvhXdrLMeuuTbLUajAslL(uint distance, uint len)
		{
			uint num = wDYZGLOVXJDqOOmInsacgpgRMPwD - distance - 1;
			uint num7 = default(uint);
			while (true)
			{
				int num2 = 7873731;
				while (true)
				{
					uint num3;
					int num6;
					int num4;
					int num5;
					switch ((num3 = (uint)num2 ^ 0x540331F9u) % 5)
					{
					case 2u:
						break;
					case 1u:
						num6 = 247355955;
						goto IL_003a;
					case 4u:
						return;
					case 3u:
						goto IL_0098;
					default:
						{
							num4 = 1035727572;
							num5 = num4;
							goto IL_00be;
						}
						IL_003a:
						while (true)
						{
							switch ((num7 = (uint)num6 ^ 0x4AD67631u) % 12)
							{
							case 4u:
								break;
							default:
								goto IL_007a;
							case 0u:
								goto IL_0098;
							case 10u:
								goto IL_00cc;
							case 5u:
								num += pEYenyirGNFbKGdyEcseDmjCzWuGA;
								num6 = (int)((num7 * 1623852844) ^ 0x6CD4ED6B);
								continue;
							case 8u:
								goto IL_00ff;
							case 2u:
							{
								int num8;
								int num9;
								if (num >= pEYenyirGNFbKGdyEcseDmjCzWuGA)
								{
									num8 = -1517535138;
									num9 = num8;
								}
								else
								{
									num8 = -8565671;
									num9 = num8;
								}
								num6 = num8 ^ (int)(num7 * 1984810169);
								continue;
							}
							case 9u:
								BguFyVhVYrqsVvyHwqluGpQqOKFd[wDYZGLOVXJDqOOmInsacgpgRMPwD++] = BguFyVhVYrqsVvyHwqluGpQqOKFd[num++];
								num6 = 363834929;
								continue;
							case 11u:
								gWOrGjWpKPbaCIHLtaCWFgDkdAcKc();
								num6 = ((int)num7 * -1492525908) ^ -1873797008;
								continue;
							case 1u:
								len--;
								num6 = 1703815467;
								continue;
							case 3u:
								num = 0u;
								num6 = ((int)num7 * -1977111852) ^ 0x20B61280;
								continue;
							case 6u:
								num6 = (int)((num7 * 1004011818) ^ 0x76A13817);
								continue;
							case 7u:
								return;
							}
							break;
							IL_00ff:
							int num10;
							if (num < pEYenyirGNFbKGdyEcseDmjCzWuGA)
							{
								num6 = 732809692;
								num10 = num6;
							}
							else
							{
								num6 = 1880309994;
								num10 = num6;
							}
							continue;
							IL_00cc:
							int num11;
							if (len != 0)
							{
								num6 = 87011941;
								num11 = num6;
							}
							else
							{
								num6 = 1905214902;
								num11 = num6;
							}
						}
						goto case 1u;
						IL_0098:
						if (wDYZGLOVXJDqOOmInsacgpgRMPwD < pEYenyirGNFbKGdyEcseDmjCzWuGA)
						{
							num2 = 257277253;
							continue;
						}
						num4 = 2023183690;
						num5 = num4;
						goto IL_00be;
						IL_00be:
						num6 = num4 ^ ((int)num7 * -1926236915);
						goto IL_003a;
						IL_007a:
						num2 = 992068344;
						continue;
					}
					break;
				}
			}
		}

		internal void EurRdbnpHlKOVMBjPEnacIGJZnUh(byte b)
		{
			BguFyVhVYrqsVvyHwqluGpQqOKFd[wDYZGLOVXJDqOOmInsacgpgRMPwD++] = b;
			uint num3 = default(uint);
			while (true)
			{
				int num = 1888807941;
				while (true)
				{
					uint num2;
					int num4;
					switch ((num2 = (uint)num ^ 0x69D23CB0u) % 6)
					{
					case 0u:
						break;
					case 1u:
						if (wDYZGLOVXJDqOOmInsacgpgRMPwD >= pEYenyirGNFbKGdyEcseDmjCzWuGA)
						{
							num = ((int)num2 * -1954069144) ^ -423928380;
							continue;
						}
						return;
					case 4u:
						num4 = -2042966789;
						goto IL_0069;
					case 2u:
						return;
					case 3u:
						goto IL_009c;
					default:
						{
							num4 = (int)(num3 * 2130185027) ^ -1725249098;
							goto IL_0069;
						}
						IL_0069:
						switch ((num3 = (uint)num4 ^ 0xAD8570BAu) % 3)
						{
						case 2u:
							break;
						default:
							goto IL_0084;
						case 1u:
							goto IL_009c;
						case 0u:
							return;
						}
						goto case 4u;
						IL_009c:
						gWOrGjWpKPbaCIHLtaCWFgDkdAcKc();
						num = 398895787;
						continue;
						IL_0084:
						num = 240615378;
						continue;
					}
					break;
				}
			}
		}

		internal byte cyemeXXCHXAWnGMmjwMsFMoYXrbMA(uint distance)
		{
			uint num = wDYZGLOVXJDqOOmInsacgpgRMPwD - distance - 1;
			uint num4 = default(uint);
			while (true)
			{
				int num2 = 1504182606;
				while (true)
				{
					uint num3;
					int num5;
					switch ((num3 = (uint)num2 ^ 0x2FDC2D17u) % 6)
					{
					case 5u:
						break;
					case 1u:
						if (num >= pEYenyirGNFbKGdyEcseDmjCzWuGA)
						{
							num2 = (int)(num3 * 233005595) ^ -2129334162;
							continue;
						}
						goto IL_00ab;
					case 3u:
						num += pEYenyirGNFbKGdyEcseDmjCzWuGA;
						num2 = 1548090795;
						continue;
					case 2u:
						goto IL_0072;
					default:
						num5 = (int)(num4 * 356973397) ^ -696536765;
						goto IL_0077;
					case 0u:
						goto IL_00ab;
						IL_0072:
						num5 = 1089708008;
						goto IL_0077;
						IL_0077:
						switch ((num4 = (uint)num5 ^ 0x2403AA1Du) % 3)
						{
						case 2u:
							break;
						case 0u:
							goto IL_0072;
						default:
							goto IL_0092;
						case 1u:
							goto IL_00ab;
						}
						goto case 3u;
						IL_0092:
						num2 = 1069685839;
						continue;
						IL_00ab:
						return BguFyVhVYrqsVvyHwqluGpQqOKFd[num];
					}
					break;
				}
			}
		}

		internal miOtLqOkaYYNGkCBKGxHLAwLhIyg()
		{
		}

		static void \u202c\u206a\u202e\u200f\u206c\u206f\u206c\u206f\u200b\u202d\u200b\u206c\u200c\u202a\u206c\u202c\u202d\u202a\u202d\u206e\u202e\u202e\u200b\u202e\u202e\u202b\u202c\u206f\u200d\u202a\u200d\u206c\u206b\u206c\u202b\u202e\u202a\u206d\u206e\u206d\u202e(Array P_0, int P_1, Array P_2, int P_3, int P_4)
		{
			Buffer.BlockCopy(P_0, P_1, P_2, P_3, P_4);
		}

		static void \u206f\u206a\u202c\u200c\u200d\u206e\u202d\u202c\u206a\u200f\u200d\u206b\u200d\u202c\u200f\u200f\u206e\u200e\u200e\u206a\u200e\u202e\u200d\u202a\u200d\u200f\u200d\u200e\u200b\u202b\u202e\u202e\u206d\u206a\u200e\u206f\u202e\u200d\u202c\u202b\u202e(Stream P_0, byte[] P_1, int P_2, int P_3)
		{
			P_0.Write(P_1, P_2, P_3);
		}
	}

	internal struct tJMIgkXaexDJkAOrieZeMuOQjkdH
	{
		internal uint FXcCjDaaZZEODeUjZXJneUZaGgBA;

		internal void iyiBCLkfHdcxsubpZueVJRabRpvEA()
		{
			FXcCjDaaZZEODeUjZXJneUZaGgBA = 0u;
		}

		internal void DLAwiaGQyETPHkaqZoouLtKsnlyr()
		{
			if (FXcCjDaaZZEODeUjZXJneUZaGgBA < 4)
			{
				goto IL_000c;
			}
			goto IL_00c4;
			IL_00c4:
			int num;
			int num2;
			if (FXcCjDaaZZEODeUjZXJneUZaGgBA >= 10)
			{
				num = -2004618538;
				num2 = num;
			}
			else
			{
				num = -98479423;
				num2 = num;
			}
			goto IL_003f;
			IL_00a2:
			uint num3 = default(uint);
			num = ((int)num3 * -1320511048) ^ 0x5D4C921E;
			goto IL_003f;
			IL_003a:
			num = -1493921560;
			goto IL_003f;
			IL_003f:
			while (true)
			{
				switch ((num3 = (uint)num ^ 0xE33DCDAEu) % 6)
				{
				case 3u:
					break;
				default:
					goto IL_0066;
				case 4u:
					goto IL_0081;
				case 1u:
					return;
				case 2u:
					goto IL_00c4;
				case 5u:
					FXcCjDaaZZEODeUjZXJneUZaGgBA -= 3u;
					num = (int)(num3 * 695673666) ^ -2034490697;
					continue;
				case 0u:
					goto IL_0102;
				}
				break;
			}
			goto IL_003a;
			IL_0066:
			int num4 = -35313884;
			goto IL_0011;
			IL_0102:
			FXcCjDaaZZEODeUjZXJneUZaGgBA -= 6u;
			return;
			IL_0081:
			FXcCjDaaZZEODeUjZXJneUZaGgBA = 0u;
			num4 = -2124351629;
			goto IL_0011;
			IL_0011:
			uint num5;
			switch ((num5 = (uint)num4 ^ 0xEAFC0F30u) % 6)
			{
			case 3u:
				break;
			case 4u:
				goto IL_003a;
			case 2u:
				goto IL_0081;
			case 5u:
				return;
			default:
				goto IL_00a2;
			case 0u:
				goto IL_0102;
			}
			goto IL_000c;
			IL_000c:
			num4 = -907538770;
			goto IL_0011;
		}

		internal void hXHvwjlCiDNbklfRUGMrAvAbCyad()
		{
			FXcCjDaaZZEODeUjZXJneUZaGgBA = ((FXcCjDaaZZEODeUjZXJneUZaGgBA < 7) ? 7u : 10u);
		}

		internal void DLUxSvjFFUeSsAZprYbligDhwYYf()
		{
			FXcCjDaaZZEODeUjZXJneUZaGgBA = ((FXcCjDaaZZEODeUjZXJneUZaGgBA < 7) ? 8u : 11u);
		}

		internal void NEgEOiFwJkDBiqUeqInOGwtaeqfgA()
		{
			FXcCjDaaZZEODeUjZXJneUZaGgBA = ((FXcCjDaaZZEODeUjZXJneUZaGgBA < 7) ? 9u : 11u);
		}

		internal bool WVibspAJtOFIkjLcXtMeSlAJKhGhA()
		{
			return FXcCjDaaZZEODeUjZXJneUZaGgBA < 7;
		}
	}

	[StructLayout(LayoutKind.Explicit, Size = 896)]
	internal struct XiZWQkzwnPSpfMBvhmFxYKUMcfv
	{
	}

	[StructLayout(LayoutKind.Explicit, Pack = 1, Size = 448)]
	internal struct CYfmrQLBXQimUNAFIiHBnclWDQXfA
	{
	}

	internal struct \u200f\u200e\u202d\u206d\u202e\u202b\u202e\u206f\u202a\u206f\u202d\u200c\u202c\u200f\u202e\u200b\u202a\u202b\u200d\u206d\u206f\u202e\u206e\u206f\u206e\u206f\u202c\u200f\u206c\u206b\u200e\u202e\u200d\u206d\u200e\u206d\u202c\u202a\u206c\u202c\u202e
	{
		internal uint \u200e\u206d\u206d\u206d\u200e\u200c\u200c\u202d\u206e\u206e\u202b\u206f\u200f\u206e\u202b\u206b\u200c\u200b\u206a\u200c\u206e\u200c\u202e\u206e\u202b\u200e\u206c\u200f\u202c\u206b\u200e\u202a\u202e\u206f\u202e\u206a\u202e\u206a\u206e\u206a\u202e;

		internal void \u200f\u202e\u200b\u202b\u202e\u200c\u206c\u200d\u206b\u202c\u202b\u206a\u206d\u202e\u206a\u206a\u206e\u202e\u206a\u202c\u202a\u206b\u206b\u202e\u206a\u206c\u200f\u206e\u200f\u206d\u200e\u202c\u202a\u200e\u206d\u206b\u206d\u206a\u206b\u200f\u202e()
		{
			\u200e\u206d\u206d\u206d\u200e\u200c\u200c\u202d\u206e\u206e\u202b\u206f\u200f\u206e\u202b\u206b\u200c\u200b\u206a\u200c\u206e\u200c\u202e\u206e\u202b\u200e\u206c\u200f\u202c\u206b\u200e\u202a\u202e\u206f\u202e\u206a\u202e\u206a\u206e\u206a\u202e = 1024u;
		}

		internal uint \u200d\u202a\u200b\u202e\u202a\u200d\u206a\u200d\u206d\u206d\u200f\u200b\u206f\u200f\u202e\u200c\u206e\u200e\u206f\u200c\u206a\u200f\u206b\u202d\u200c\u202d\u202b\u200e\u206b\u206d\u206e\u200c\u206c\u206b\u206a\u200c\u206b\u202d\u206c\u200d\u202e(\u202d\u202b\u202a\u206c\u200f\u200c\u206e\u200f\u206a\u206c\u202e\u202d\u200e\u200f\u202c\u200e\u202b\u206f\u200b\u202b\u200f\u200f\u200c\u202b\u202c\u206c\u202c\u200c\u200e\u206e\u200d\u200d\u200e\u206b\u206b\u206b\u202c\u200e\u202d\u200d\u202e rangeDecoder)
		{
			uint num = (rangeDecoder.\u206e\u200d\u202d\u200f\u206d\u206d\u206c\u200b\u200e\u202e\u200d\u206d\u202e\u206b\u202e\u206a\u206c\u200d\u206a\u202d\u206d\u202b\u202a\u206c\u202d\u202a\u206d\u202d\u206e\u200f\u206c\u200b\u200f\u200d\u200c\u206e\u202d\u206d\u206e\u206f\u202e >> 11) * \u200e\u206d\u206d\u206d\u200e\u200c\u200c\u202d\u206e\u206e\u202b\u206f\u200f\u206e\u202b\u206b\u200c\u200b\u206a\u200c\u206e\u200c\u202e\u206e\u202b\u200e\u206c\u200f\u202c\u206b\u200e\u202a\u202e\u206f\u202e\u206a\u202e\u206a\u206e\u206a\u202e;
			if (rangeDecoder.\u202d\u202a\u202c\u206e\u200f\u200b\u206b\u200c\u206a\u206f\u202d\u202d\u206d\u202c\u200e\u200b\u206a\u200e\u200e\u200c\u200d\u200e\u206c\u202a\u202c\u206f\u202b\u200c\u200e\u206b\u202c\u200b\u202c\u206f\u206d\u206c\u202a\u202a\u206e\u200d\u202e < num)
			{
				goto IL_001d;
			}
			goto IL_019c;
			IL_019c:
			rangeDecoder.\u206e\u200d\u202d\u200f\u206d\u206d\u206c\u200b\u200e\u202e\u200d\u206d\u202e\u206b\u202e\u206a\u206c\u200d\u206a\u202d\u206d\u202b\u202a\u206c\u202d\u202a\u206d\u202d\u206e\u200f\u206c\u200b\u200f\u200d\u200c\u206e\u202d\u206d\u206e\u206f\u202e -= num;
			int num2 = -498647468;
			goto IL_0022;
			IL_0022:
			while (true)
			{
				uint num3;
				switch ((num3 = (uint)num2 ^ 0x9DF9ADA5u) % 12)
				{
				case 11u:
					break;
				case 10u:
				{
					\u200e\u206d\u206d\u206d\u200e\u200c\u200c\u202d\u206e\u206e\u202b\u206f\u200f\u206e\u202b\u206b\u200c\u200b\u206a\u200c\u206e\u200c\u202e\u206e\u202b\u200e\u206c\u200f\u202c\u206b\u200e\u202a\u202e\u206f\u202e\u206a\u202e\u206a\u206e\u206a\u202e -= \u200e\u206d\u206d\u206d\u200e\u200c\u200c\u202d\u206e\u206e\u202b\u206f\u200f\u206e\u202b\u206b\u200c\u200b\u206a\u200c\u206e\u200c\u202e\u206e\u202b\u200e\u206c\u200f\u202c\u206b\u200e\u202a\u202e\u206f\u202e\u206a\u202e\u206a\u206e\u206a\u202e >> 5;
					int num6;
					int num7;
					if (rangeDecoder.\u206e\u200d\u202d\u200f\u206d\u206d\u206c\u200b\u200e\u202e\u200d\u206d\u202e\u206b\u202e\u206a\u206c\u200d\u206a\u202d\u206d\u202b\u202a\u206c\u202d\u202a\u206d\u202d\u206e\u200f\u206c\u200b\u200f\u200d\u200c\u206e\u202d\u206d\u206e\u206f\u202e >= 16777216)
					{
						num6 = -981959311;
						num7 = num6;
					}
					else
					{
						num6 = -1800263057;
						num7 = num6;
					}
					num2 = num6 ^ (int)(num3 * 1764043260);
					continue;
				}
				case 4u:
					rangeDecoder.\u206e\u200d\u202d\u200f\u206d\u206d\u206c\u200b\u200e\u202e\u200d\u206d\u202e\u206b\u202e\u206a\u206c\u200d\u206a\u202d\u206d\u202b\u202a\u206c\u202d\u202a\u206d\u202d\u206e\u200f\u206c\u200b\u200f\u200d\u200c\u206e\u202d\u206d\u206e\u206f\u202e <<= 8;
					num2 = (int)(num3 * 764693607) ^ -1338203107;
					continue;
				case 9u:
					rangeDecoder.\u202d\u202a\u202c\u206e\u200f\u200b\u206b\u200c\u206a\u206f\u202d\u202d\u206d\u202c\u200e\u200b\u206a\u200e\u200e\u200c\u200d\u200e\u206c\u202a\u202c\u206f\u202b\u200c\u200e\u206b\u202c\u200b\u202c\u206f\u206d\u206c\u202a\u202a\u206e\u200d\u202e -= num;
					num2 = ((int)num3 * -1361890327) ^ 0x55C14F76;
					continue;
				case 1u:
					rangeDecoder.\u202d\u202a\u202c\u206e\u200f\u200b\u206b\u200c\u206a\u206f\u202d\u202d\u206d\u202c\u200e\u200b\u206a\u200e\u200e\u200c\u200d\u200e\u206c\u202a\u202c\u206f\u202b\u200c\u200e\u206b\u202c\u200b\u202c\u206f\u206d\u206c\u202a\u202a\u206e\u200d\u202e = (rangeDecoder.\u202d\u202a\u202c\u206e\u200f\u200b\u206b\u200c\u206a\u206f\u202d\u202d\u206d\u202c\u200e\u200b\u206a\u200e\u200e\u200c\u200d\u200e\u206c\u202a\u202c\u206f\u202b\u200c\u200e\u206b\u202c\u200b\u202c\u206f\u206d\u206c\u202a\u202a\u206e\u200d\u202e << 8) | (byte)rangeDecoder.\u206b\u206b\u206e\u206b\u200e\u202b\u206e\u206b\u200c\u202c\u200f\u200d\u202a\u206c\u206e\u200f\u206a\u202b\u200d\u200f\u202c\u206d\u202e\u206c\u202a\u202e\u202e\u206e\u206e\u202a\u206c\u202d\u200c\u206f\u202b\u202e\u206b\u206c\u200d\u202c\u202e.ReadByte();
					rangeDecoder.\u206e\u200d\u202d\u200f\u206d\u206d\u206c\u200b\u200e\u202e\u200d\u206d\u202e\u206b\u202e\u206a\u206c\u200d\u206a\u202d\u206d\u202b\u202a\u206c\u202d\u202a\u206d\u202d\u206e\u200f\u206c\u200b\u200f\u200d\u200c\u206e\u202d\u206d\u206e\u206f\u202e <<= 8;
					num2 = (int)(num3 * 1192207323) ^ -1023037356;
					continue;
				case 6u:
					rangeDecoder.\u202d\u202a\u202c\u206e\u200f\u200b\u206b\u200c\u206a\u206f\u202d\u202d\u206d\u202c\u200e\u200b\u206a\u200e\u200e\u200c\u200d\u200e\u206c\u202a\u202c\u206f\u202b\u200c\u200e\u206b\u202c\u200b\u202c\u206f\u206d\u206c\u202a\u202a\u206e\u200d\u202e = (rangeDecoder.\u202d\u202a\u202c\u206e\u200f\u200b\u206b\u200c\u206a\u206f\u202d\u202d\u206d\u202c\u200e\u200b\u206a\u200e\u200e\u200c\u200d\u200e\u206c\u202a\u202c\u206f\u202b\u200c\u200e\u206b\u202c\u200b\u202c\u206f\u206d\u206c\u202a\u202a\u206e\u200d\u202e << 8) | (byte)rangeDecoder.\u206b\u206b\u206e\u206b\u200e\u202b\u206e\u206b\u200c\u202c\u200f\u200d\u202a\u206c\u206e\u200f\u206a\u202b\u200d\u200f\u202c\u206d\u202e\u206c\u202a\u202e\u202e\u206e\u206e\u202a\u206c\u202d\u200c\u206f\u202b\u202e\u206b\u206c\u200d\u202c\u202e.ReadByte();
					num2 = ((int)num3 * -615900372) ^ 0x1EB41191;
					continue;
				case 7u:
					\u200e\u206d\u206d\u206d\u200e\u200c\u200c\u202d\u206e\u206e\u202b\u206f\u200f\u206e\u202b\u206b\u200c\u200b\u206a\u200c\u206e\u200c\u202e\u206e\u202b\u200e\u206c\u200f\u202c\u206b\u200e\u202a\u202e\u206f\u202e\u206a\u202e\u206a\u206e\u206a\u202e += 2048 - \u200e\u206d\u206d\u206d\u200e\u200c\u200c\u202d\u206e\u206e\u202b\u206f\u200f\u206e\u202b\u206b\u200c\u200b\u206a\u200c\u206e\u200c\u202e\u206e\u202b\u200e\u206c\u200f\u202c\u206b\u200e\u202a\u202e\u206f\u202e\u206a\u202e\u206a\u206e\u206a\u202e >> 5;
					num2 = ((int)num3 * -1899830151) ^ 0x4C07C997;
					continue;
				case 2u:
					return 0u;
				case 8u:
					rangeDecoder.\u206e\u200d\u202d\u200f\u206d\u206d\u206c\u200b\u200e\u202e\u200d\u206d\u202e\u206b\u202e\u206a\u206c\u200d\u206a\u202d\u206d\u202b\u202a\u206c\u202d\u202a\u206d\u202d\u206e\u200f\u206c\u200b\u200f\u200d\u200c\u206e\u202d\u206d\u206e\u206f\u202e = num;
					num2 = (int)((num3 * 529160500) ^ 0x39974F5E);
					continue;
				case 3u:
					goto IL_019c;
				case 5u:
				{
					int num4;
					int num5;
					if (rangeDecoder.\u206e\u200d\u202d\u200f\u206d\u206d\u206c\u200b\u200e\u202e\u200d\u206d\u202e\u206b\u202e\u206a\u206c\u200d\u206a\u202d\u206d\u202b\u202a\u206c\u202d\u202a\u206d\u202d\u206e\u200f\u206c\u200b\u200f\u200d\u200c\u206e\u202d\u206d\u206e\u206f\u202e < 16777216)
					{
						num4 = 1088111014;
						num5 = num4;
					}
					else
					{
						num4 = 990663941;
						num5 = num4;
					}
					num2 = num4 ^ ((int)num3 * -1373056242);
					continue;
				}
				default:
					return 1u;
				}
				break;
			}
			goto IL_001d;
			IL_001d:
			num2 = -1540227579;
			goto IL_0022;
		}
	}

	internal struct \u206b\u200b\u206c\u200c\u200f\u206a\u202d\u206a\u206f\u202e\u202b\u202b\u200c\u200c\u206e\u206c\u200c\u200c\u202e\u206c\u202a\u202b\u202d\u202c\u200d\u202b\u202c\u200f\u200f\u206e\u206b\u202c\u200c\u202b\u206a\u202c\u202a\u202e\u200c\u202e
	{
		internal readonly \u200f\u200e\u202d\u206d\u202e\u202b\u202e\u206f\u202a\u206f\u202d\u200c\u202c\u200f\u202e\u200b\u202a\u202b\u200d\u206d\u206f\u202e\u206e\u206f\u206e\u206f\u202c\u200f\u206c\u206b\u200e\u202e\u200d\u206d\u200e\u206d\u202c\u202a\u206c\u202c\u202e[] \u206f\u206f\u206e\u206f\u200c\u202a\u202e\u200c\u202b\u202a\u202b\u202d\u206e\u202b\u200c\u200c\u206e\u206c\u206d\u206f\u206d\u206f\u202e\u200d\u202d\u202d\u206b\u202a\u200f\u202c\u202d\u202e\u206b\u206f\u206e\u202d\u202a\u206b\u200e\u202e;

		internal readonly int \u200c\u200b\u200d\u202b\u202c\u202d\u206f\u206d\u200d\u200e\u206a\u206b\u202c\u202b\u202a\u206f\u200b\u202b\u200d\u202a\u206e\u200c\u202c\u206d\u202b\u206a\u206f\u202a\u200b\u206e\u200f\u202b\u206d\u202d\u206e\u206d\u206c\u200c\u202e\u206b\u202e;

		internal \u206b\u200b\u206c\u200c\u200f\u206a\u202d\u206a\u206f\u202e\u202b\u202b\u200c\u200c\u206e\u206c\u200c\u200c\u202e\u206c\u202a\u202b\u202d\u202c\u200d\u202b\u202c\u200f\u200f\u206e\u206b\u202c\u200c\u202b\u206a\u202c\u202a\u202e\u200c\u202e(int numBitLevels)
		{
			\u200c\u200b\u200d\u202b\u202c\u202d\u206f\u206d\u200d\u200e\u206a\u206b\u202c\u202b\u202a\u206f\u200b\u202b\u200d\u202a\u206e\u200c\u202c\u206d\u202b\u206a\u206f\u202a\u200b\u206e\u200f\u202b\u206d\u202d\u206e\u206d\u206c\u200c\u202e\u206b\u202e = numBitLevels;
			\u206f\u206f\u206e\u206f\u200c\u202a\u202e\u200c\u202b\u202a\u202b\u202d\u206e\u202b\u200c\u200c\u206e\u206c\u206d\u206f\u206d\u206f\u202e\u200d\u202d\u202d\u206b\u202a\u200f\u202c\u202d\u202e\u206b\u206f\u206e\u202d\u202a\u206b\u200e\u202e = new \u200f\u200e\u202d\u206d\u202e\u202b\u202e\u206f\u202a\u206f\u202d\u200c\u202c\u200f\u202e\u200b\u202a\u202b\u200d\u206d\u206f\u202e\u206e\u206f\u206e\u206f\u202c\u200f\u206c\u206b\u200e\u202e\u200d\u206d\u200e\u206d\u202c\u202a\u206c\u202c\u202e[1 << numBitLevels];
		}

		internal void \u202b\u200e\u202c\u206f\u202e\u206f\u202a\u200b\u206a\u202b\u206d\u202e\u202a\u206f\u206e\u202c\u206e\u202b\u202a\u200b\u206a\u200d\u200e\u200e\u206b\u202a\u206a\u200b\u206d\u200c\u202e\u206e\u200d\u206c\u206c\u202d\u200f\u206e\u206e\u202b\u202e()
		{
			uint num = 1u;
			while (true)
			{
				int num2 = -1419386286;
				while (true)
				{
					uint num3;
					switch ((num3 = (uint)num2 ^ 0x92CDF489u) % 6)
					{
					case 2u:
						break;
					default:
						return;
					case 4u:
					{
						int num4;
						if (num >= 1 << \u200c\u200b\u200d\u202b\u202c\u202d\u206f\u206d\u200d\u200e\u206a\u206b\u202c\u202b\u202a\u206f\u200b\u202b\u200d\u202a\u206e\u200c\u202c\u206d\u202b\u206a\u206f\u202a\u200b\u206e\u200f\u202b\u206d\u202d\u206e\u206d\u206c\u200c\u202e\u206b\u202e)
						{
							num2 = -1233593226;
							num4 = num2;
						}
						else
						{
							num2 = -1486646987;
							num4 = num2;
						}
						continue;
					}
					case 0u:
						\u206f\u206f\u206e\u206f\u200c\u202a\u202e\u200c\u202b\u202a\u202b\u202d\u206e\u202b\u200c\u200c\u206e\u206c\u206d\u206f\u206d\u206f\u202e\u200d\u202d\u202d\u206b\u202a\u200f\u202c\u202d\u202e\u206b\u206f\u206e\u202d\u202a\u206b\u200e\u202e[num].\u200f\u202e\u200b\u202b\u202e\u200c\u206c\u200d\u206b\u202c\u202b\u206a\u206d\u202e\u206a\u206a\u206e\u202e\u206a\u202c\u202a\u206b\u206b\u202e\u206a\u206c\u200f\u206e\u200f\u206d\u200e\u202c\u202a\u200e\u206d\u206b\u206d\u206a\u206b\u200f\u202e();
						num2 = -444474508;
						continue;
					case 1u:
						num2 = ((int)num3 * -609872504) ^ 0x5D088D0B;
						continue;
					case 3u:
						num++;
						num2 = ((int)num3 * -1371873369) ^ -822859944;
						continue;
					case 5u:
						return;
					}
					break;
				}
			}
		}

		internal uint \u202b\u200c\u200c\u206a\u202b\u200f\u202c\u202e\u200d\u206d\u202c\u200d\u202b\u206d\u202e\u202c\u202b\u200d\u206a\u200e\u206b\u202c\u206b\u200e\u206b\u202d\u206e\u200b\u206c\u206a\u200b\u200e\u202b\u200b\u202e\u206c\u200b\u200b\u202b\u202e\u202e(\u202d\u202b\u202a\u206c\u200f\u200c\u206e\u200f\u206a\u206c\u202e\u202d\u200e\u200f\u202c\u200e\u202b\u206f\u200b\u202b\u200f\u200f\u200c\u202b\u202c\u206c\u202c\u200c\u200e\u206e\u200d\u200d\u200e\u206b\u206b\u206b\u202c\u200e\u202d\u200d\u202e rangeDecoder)
		{
			uint num = 1u;
			int num4 = default(int);
			while (true)
			{
				int num2 = 2138591634;
				while (true)
				{
					uint num3;
					switch ((num3 = (uint)num2 ^ 0x500BCA24u) % 6)
					{
					case 0u:
						break;
					case 4u:
						num4 = \u200c\u200b\u200d\u202b\u202c\u202d\u206f\u206d\u200d\u200e\u206a\u206b\u202c\u202b\u202a\u206f\u200b\u202b\u200d\u202a\u206e\u200c\u202c\u206d\u202b\u206a\u206f\u202a\u200b\u206e\u200f\u202b\u206d\u202d\u206e\u206d\u206c\u200c\u202e\u206b\u202e;
						num2 = ((int)num3 * -21669666) ^ -1868252680;
						continue;
					case 3u:
						num = (num << 1) + \u206f\u206f\u206e\u206f\u200c\u202a\u202e\u200c\u202b\u202a\u202b\u202d\u206e\u202b\u200c\u200c\u206e\u206c\u206d\u206f\u206d\u206f\u202e\u200d\u202d\u202d\u206b\u202a\u200f\u202c\u202d\u202e\u206b\u206f\u206e\u202d\u202a\u206b\u200e\u202e[num].\u200d\u202a\u200b\u202e\u202a\u200d\u206a\u200d\u206d\u206d\u200f\u200b\u206f\u200f\u202e\u200c\u206e\u200e\u206f\u200c\u206a\u200f\u206b\u202d\u200c\u202d\u202b\u200e\u206b\u206d\u206e\u200c\u206c\u206b\u206a\u200c\u206b\u202d\u206c\u200d\u202e(rangeDecoder);
						num4--;
						num2 = 869090757;
						continue;
					case 2u:
						num2 = ((int)num3 * -203150121) ^ 0x6CEBA77D;
						continue;
					case 5u:
					{
						int num5;
						if (num4 > 0)
						{
							num2 = 96252283;
							num5 = num2;
						}
						else
						{
							num2 = 386169159;
							num5 = num2;
						}
						continue;
					}
					default:
						return num - (uint)(1 << \u200c\u200b\u200d\u202b\u202c\u202d\u206f\u206d\u200d\u200e\u206a\u206b\u202c\u202b\u202a\u206f\u200b\u202b\u200d\u202a\u206e\u200c\u202c\u206d\u202b\u206a\u206f\u202a\u200b\u206e\u200f\u202b\u206d\u202d\u206e\u206d\u206c\u200c\u202e\u206b\u202e);
					}
					break;
				}
			}
		}

		internal uint \u206b\u200b\u200e\u206b\u202e\u200f\u202d\u206d\u202a\u206a\u206c\u202a\u202c\u206c\u202c\u202d\u202a\u206a\u206a\u202a\u200c\u200d\u200b\u206c\u206e\u202a\u202c\u202e\u202e\u202b\u202c\u200d\u202d\u206c\u200f\u206c\u202e\u202b\u202e\u200f\u202e(\u202d\u202b\u202a\u206c\u200f\u200c\u206e\u200f\u206a\u206c\u202e\u202d\u200e\u200f\u202c\u200e\u202b\u206f\u200b\u202b\u200f\u200f\u200c\u202b\u202c\u206c\u202c\u200c\u200e\u206e\u200d\u200d\u200e\u206b\u206b\u206b\u202c\u200e\u202d\u200d\u202e rangeDecoder)
		{
			uint num = 1u;
			uint num4 = default(uint);
			int num5 = default(int);
			while (true)
			{
				int num2 = -537586671;
				while (true)
				{
					uint num3;
					switch ((num3 = (uint)num2 ^ 0x8C6B20EEu) % 8)
					{
					case 0u:
						break;
					case 4u:
					{
						uint num7 = \u206f\u206f\u206e\u206f\u200c\u202a\u202e\u200c\u202b\u202a\u202b\u202d\u206e\u202b\u200c\u200c\u206e\u206c\u206d\u206f\u206d\u206f\u202e\u200d\u202d\u202d\u206b\u202a\u200f\u202c\u202d\u202e\u206b\u206f\u206e\u202d\u202a\u206b\u200e\u202e[num].\u200d\u202a\u200b\u202e\u202a\u200d\u206a\u200d\u206d\u206d\u200f\u200b\u206f\u200f\u202e\u200c\u206e\u200e\u206f\u200c\u206a\u200f\u206b\u202d\u200c\u202d\u202b\u200e\u206b\u206d\u206e\u200c\u206c\u206b\u206a\u200c\u206b\u202d\u206c\u200d\u202e(rangeDecoder);
						num <<= 1;
						num += num7;
						num4 |= num7 << num5;
						num2 = -940475707;
						continue;
					}
					case 6u:
					{
						int num6;
						if (num5 < \u200c\u200b\u200d\u202b\u202c\u202d\u206f\u206d\u200d\u200e\u206a\u206b\u202c\u202b\u202a\u206f\u200b\u202b\u200d\u202a\u206e\u200c\u202c\u206d\u202b\u206a\u206f\u202a\u200b\u206e\u200f\u202b\u206d\u202d\u206e\u206d\u206c\u200c\u202e\u206b\u202e)
						{
							num2 = -1985357110;
							num6 = num2;
						}
						else
						{
							num2 = -303003765;
							num6 = num2;
						}
						continue;
					}
					case 7u:
						num4 = 0u;
						num2 = (int)(num3 * 1090720608) ^ -781273820;
						continue;
					case 1u:
						num2 = (int)((num3 * 106685484) ^ 0x5C12E56C);
						continue;
					case 3u:
						num5++;
						num2 = (int)((num3 * 1988191162) ^ 0x3776F05E);
						continue;
					case 2u:
						num5 = 0;
						num2 = (int)((num3 * 1708650898) ^ 0x7EED4433);
						continue;
					default:
						return num4;
					}
					break;
				}
			}
		}

		internal static uint \u200f\u202a\u202a\u202b\u206d\u206d\u200c\u202c\u202d\u202c\u206c\u200d\u206b\u200c\u206e\u200f\u206b\u202c\u206e\u206f\u206d\u206a\u206e\u206c\u206a\u206e\u200e\u202b\u202e\u202a\u202e\u200e\u202b\u206b\u202d\u202c\u200b\u202b\u206d\u202e(\u200f\u200e\u202d\u206d\u202e\u202b\u202e\u206f\u202a\u206f\u202d\u200c\u202c\u200f\u202e\u200b\u202a\u202b\u200d\u206d\u206f\u202e\u206e\u206f\u206e\u206f\u202c\u200f\u206c\u206b\u200e\u202e\u200d\u206d\u200e\u206d\u202c\u202a\u206c\u202c\u202e[] Models, uint startIndex, \u202d\u202b\u202a\u206c\u200f\u200c\u206e\u200f\u206a\u206c\u202e\u202d\u200e\u200f\u202c\u200e\u202b\u206f\u200b\u202b\u200f\u200f\u200c\u202b\u202c\u206c\u202c\u200c\u200e\u206e\u200d\u200d\u200e\u206b\u206b\u206b\u202c\u200e\u202d\u200d\u202e rangeDecoder, int NumBitLevels)
		{
			uint num = 1u;
			uint num4 = default(uint);
			int num6 = default(int);
			uint num5 = default(uint);
			while (true)
			{
				int num2 = -1549162044;
				while (true)
				{
					uint num3;
					switch ((num3 = (uint)num2 ^ 0xBE1C0545u) % 7)
					{
					case 0u:
						break;
					case 4u:
						num4 = 0u;
						num6 = 0;
						num2 = ((int)num3 * -699024439) ^ -375431422;
						continue;
					case 3u:
						num4 |= num5 << num6;
						num2 = ((int)num3 * -915124412) ^ -1840394588;
						continue;
					case 5u:
					{
						int num7;
						if (num6 < NumBitLevels)
						{
							num2 = -261381789;
							num7 = num2;
						}
						else
						{
							num2 = -523825664;
							num7 = num2;
						}
						continue;
					}
					case 6u:
						num6++;
						num2 = (int)(num3 * 143831109) ^ -1477878706;
						continue;
					case 2u:
						num5 = Models[startIndex + num].\u200d\u202a\u200b\u202e\u202a\u200d\u206a\u200d\u206d\u206d\u200f\u200b\u206f\u200f\u202e\u200c\u206e\u200e\u206f\u200c\u206a\u200f\u206b\u202d\u200c\u202d\u202b\u200e\u206b\u206d\u206e\u200c\u206c\u206b\u206a\u200c\u206b\u202d\u206c\u200d\u202e(rangeDecoder);
						num <<= 1;
						num += num5;
						num2 = -405348403;
						continue;
					default:
						return num4;
					}
					break;
				}
			}
		}
	}

	internal class \u202d\u202b\u202a\u206c\u200f\u200c\u206e\u200f\u206a\u206c\u202e\u202d\u200e\u200f\u202c\u200e\u202b\u206f\u200b\u202b\u200f\u200f\u200c\u202b\u202c\u206c\u202c\u200c\u200e\u206e\u200d\u200d\u200e\u206b\u206b\u206b\u202c\u200e\u202d\u200d\u202e
	{
		internal uint \u202d\u202a\u202c\u206e\u200f\u200b\u206b\u200c\u206a\u206f\u202d\u202d\u206d\u202c\u200e\u200b\u206a\u200e\u200e\u200c\u200d\u200e\u206c\u202a\u202c\u206f\u202b\u200c\u200e\u206b\u202c\u200b\u202c\u206f\u206d\u206c\u202a\u202a\u206e\u200d\u202e;

		internal uint \u206e\u200d\u202d\u200f\u206d\u206d\u206c\u200b\u200e\u202e\u200d\u206d\u202e\u206b\u202e\u206a\u206c\u200d\u206a\u202d\u206d\u202b\u202a\u206c\u202d\u202a\u206d\u202d\u206e\u200f\u206c\u200b\u200f\u200d\u200c\u206e\u202d\u206d\u206e\u206f\u202e;

		internal Stream \u206b\u206b\u206e\u206b\u200e\u202b\u206e\u206b\u200c\u202c\u200f\u200d\u202a\u206c\u206e\u200f\u206a\u202b\u200d\u200f\u202c\u206d\u202e\u206c\u202a\u202e\u202e\u206e\u206e\u202a\u206c\u202d\u200c\u206f\u202b\u202e\u206b\u206c\u200d\u202c\u202e;

		internal void \u200d\u200c\u202a\u202b\u202c\u206d\u200e\u200f\u206a\u202c\u202c\u206c\u206d\u202b\u200f\u202c\u206d\u202d\u206e\u200b\u202a\u206e\u200d\u200c\u200f\u202c\u200e\u206f\u202c\u200d\u206c\u202a\u200d\u202c\u206c\u200d\u200b\u206d\u200c\u202b\u202e(Stream stream)
		{
			\u206b\u206b\u206e\u206b\u200e\u202b\u206e\u206b\u200c\u202c\u200f\u200d\u202a\u206c\u206e\u200f\u206a\u202b\u200d\u200f\u202c\u206d\u202e\u206c\u202a\u202e\u202e\u206e\u206e\u202a\u206c\u202d\u200c\u206f\u202b\u202e\u206b\u206c\u200d\u202c\u202e = stream;
			\u202d\u202a\u202c\u206e\u200f\u200b\u206b\u200c\u206a\u206f\u202d\u202d\u206d\u202c\u200e\u200b\u206a\u200e\u200e\u200c\u200d\u200e\u206c\u202a\u202c\u206f\u202b\u200c\u200e\u206b\u202c\u200b\u202c\u206f\u206d\u206c\u202a\u202a\u206e\u200d\u202e = 0u;
			int num3 = default(int);
			while (true)
			{
				int num = 1990579132;
				while (true)
				{
					uint num2;
					switch ((num2 = (uint)num ^ 0x59543803u) % 7)
					{
					case 0u:
						break;
					default:
						return;
					case 6u:
						num3++;
						num = ((int)num2 * -1008206306) ^ -1566655319;
						continue;
					case 2u:
						\u202d\u202a\u202c\u206e\u200f\u200b\u206b\u200c\u206a\u206f\u202d\u202d\u206d\u202c\u200e\u200b\u206a\u200e\u200e\u200c\u200d\u200e\u206c\u202a\u202c\u206f\u202b\u200c\u200e\u206b\u202c\u200b\u202c\u206f\u206d\u206c\u202a\u202a\u206e\u200d\u202e = (\u202d\u202a\u202c\u206e\u200f\u200b\u206b\u200c\u206a\u206f\u202d\u202d\u206d\u202c\u200e\u200b\u206a\u200e\u200e\u200c\u200d\u200e\u206c\u202a\u202c\u206f\u202b\u200c\u200e\u206b\u202c\u200b\u202c\u206f\u206d\u206c\u202a\u202a\u206e\u200d\u202e << 8) | (byte)\u206b\u206b\u206e\u206b\u200e\u202b\u206e\u206b\u200c\u202c\u200f\u200d\u202a\u206c\u206e\u200