Decompiled source of GlitnirDeepNorth v0.0.9

DeepNorthGlitnir/DeepNorthGlitnir.dll

Decompiled 2 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.0.9")]
[assembly: AssemblyCompany("Marlthon")]
[assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)]
[assembly: AssemblyVersion("0.0.9.0")]
[module: UnverifiableCode]
[module: SuppressIldasm]
[module: ConfusedBy("Confuser.Core 1.6.0+447341964f")]
internal class <Module>
{
	internal struct qyDuRYZOGxjljbmTsfJtDDjbcVfJ
	{
		internal uint tTYrHqYbPppgVcgvJeVqbtPxzSBPA;

		internal void vsaBWyObuEDjUEOQOKKkKKwTGEguA()
		{
			tTYrHqYbPppgVcgvJeVqbtPxzSBPA = 1024u;
		}

		internal uint PlmRSJTUQNaYrMLZXgHWleBGKsJb(sbLaiQFVLpVXwVbUMgKeVUWoqaX rangeDecoder)
		{
			uint num = (rangeDecoder.MqiEcQfWgsajFkKFpBoEjUqOsXhs >> 11) * tTYrHqYbPppgVcgvJeVqbtPxzSBPA;
			uint num4 = default(uint);
			while (true)
			{
				int num2 = 450440086;
				while (true)
				{
					uint num3;
					int num5;
					switch ((num3 = (uint)num2 ^ 0x509A8816u) % 5)
					{
					case 0u:
						break;
					case 2u:
						num5 = -1544199523;
						goto IL_0043;
					case 4u:
						goto IL_009d;
					default:
						num5 = ((int)num4 * -278959609) ^ -856452485;
						goto IL_0043;
					case 3u:
						goto IL_0221;
						IL_0043:
						while (true)
						{
							switch ((num4 = (uint)num5 ^ 0xF11BF863u) % 11)
							{
							case 5u:
								break;
							default:
								goto IL_007f;
							case 0u:
								goto IL_009d;
							case 4u:
								rangeDecoder.MqiEcQfWgsajFkKFpBoEjUqOsXhs = num;
								num5 = (int)(num4 * 660409693) ^ -623031006;
								continue;
							case 2u:
							{
								int num8;
								int num9;
								if (rangeDecoder.MqiEcQfWgsajFkKFpBoEjUqOsXhs >= 16777216)
								{
									num8 = 1869808886;
									num9 = num8;
								}
								else
								{
									num8 = 517084243;
									num9 = num8;
								}
								num5 = num8 ^ (int)(num4 * 784341605);
								continue;
							}
							case 3u:
								rangeDecoder.rFCbUGelwgLsPfdcHuQXNocwjyNHb = (rangeDecoder.rFCbUGelwgLsPfdcHuQXNocwjyNHb << 8) | (byte)\u200f\u206e\u202b\u206b\u202b\u200f\u206a\u206f\u206c\u200b\u202a\u200c\u200e\u200b\u200f\u206e\u200c\u206e\u202e\u202d\u206c\u202c\u200b\u200e\u206f\u200b\u202d\u202e\u200f\u200f\u206f\u206c\u202a\u202d\u202b\u206b\u202b\u200b\u200d\u206d\u202e(rangeDecoder.KdNlzdRhNaOnkjkIrNyJgFMIRTAj);
								rangeDecoder.MqiEcQfWgsajFkKFpBoEjUqOsXhs <<= 8;
								num5 = (int)(num4 * 1452853679) ^ -1621784065;
								continue;
							case 6u:
							{
								int num10;
								int num11;
								if (rangeDecoder.MqiEcQfWgsajFkKFpBoEjUqOsXhs < 16777216)
								{
									num10 = 1188738426;
									num11 = num10;
								}
								else
								{
									num10 = 1394693288;
									num11 = num10;
								}
								num5 = num10 ^ ((int)num4 * -558777093);
								continue;
							}
							case 8u:
								rangeDecoder.MqiEcQfWgsajFkKFpBoEjUqOsXhs -= num;
								rangeDecoder.rFCbUGelwgLsPfdcHuQXNocwjyNHb -= num;
								tTYrHqYbPppgVcgvJeVqbtPxzSBPA -= tTYrHqYbPppgVcgvJeVqbtPxzSBPA >> 5;
								num5 = -1875940223;
								continue;
							case 9u:
								return 0u;
							case 1u:
							{
								int num6;
								int num7;
								if (rangeDecoder.rFCbUGelwgLsPfdcHuQXNocwjyNHb < num)
								{
									num6 = 1133872578;
									num7 = num6;
								}
								else
								{
									num6 = 218990642;
									num7 = num6;
								}
								num5 = num6 ^ ((int)num4 * -770373156);
								continue;
							}
							case 10u:
								rangeDecoder.rFCbUGelwgLsPfdcHuQXNocwjyNHb = (rangeDecoder.rFCbUGelwgLsPfdcHuQXNocwjyNHb << 8) | (byte)\u200f\u206e\u202b\u206b\u202b\u200f\u206a\u206f\u206c\u200b\u202a\u200c\u200e\u200b\u200f\u206e\u200c\u206e\u202e\u202d\u206c\u202c\u200b\u200e\u206f\u200b\u202d\u202e\u200f\u200f\u206f\u206c\u202a\u202d\u202b\u206b\u202b\u200b\u200d\u206d\u202e(rangeDecoder.KdNlzdRhNaOnkjkIrNyJgFMIRTAj);
								rangeDecoder.MqiEcQfWgsajFkKFpBoEjUqOsXhs <<= 8;
								num5 = ((int)num4 * -2048563672) ^ -1409217694;
								continue;
							case 7u:
								goto IL_0221;
							}
							break;
						}
						goto case 2u;
						IL_0221:
						return 1u;
						IL_009d:
						tTYrHqYbPppgVcgvJeVqbtPxzSBPA += 2048 - tTYrHqYbPppgVcgvJeVqbtPxzSBPA >> 5;
						num2 = 1487275744;
						continue;
						IL_007f:
						num2 = 696375791;
						continue;
					}
					break;
				}
			}
		}

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

	internal struct lYaFZGoBwVaisvJJogbgGxjCpUgD
	{
		internal readonly qyDuRYZOGxjljbmTsfJtDDjbcVfJ[] xIYBgvGdsKQcuHXWQsXiIQWwxzfQ;

		internal readonly int yLAgliBcuvHFxUwwwiEUMOPyiBBJb;

		internal lYaFZGoBwVaisvJJogbgGxjCpUgD(int numBitLevels)
		{
			yLAgliBcuvHFxUwwwiEUMOPyiBBJb = numBitLevels;
			xIYBgvGdsKQcuHXWQsXiIQWwxzfQ = new qyDuRYZOGxjljbmTsfJtDDjbcVfJ[1 << numBitLevels];
		}

		internal void sZSXpxyauYiaYhEnhEQklbQmSKIk()
		{
			uint num = 1u;
			uint num5 = default(uint);
			while (true)
			{
				int num2 = -305919734;
				while (true)
				{
					uint num3;
					int num4;
					switch ((num3 = (uint)num2 ^ 0xE7F258EFu) % 4)
					{
					case 0u:
						break;
					case 1u:
						num4 = 443154964;
						goto IL_002d;
					case 2u:
						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:
								xIYBgvGdsKQcuHXWQsXiIQWwxzfQ[num].vsaBWyObuEDjUEOQOKKkKKwTGEguA();
								num++;
								num4 = 1640355852;
								continue;
							case 2u:
								return;
							}
							break;
							IL_0077:
							int num6;
							if (num >= 1 << yLAgliBcuvHFxUwwwiEUMOPyiBBJb)
							{
								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 = -1151496899;
				}
			}
		}

		internal uint gYBARkDDyXnkhENyHaMyuSQtULXPb(sbLaiQFVLpVXwVbUMgKeVUWoqaX rangeDecoder)
		{
			uint num = 1u;
			uint num4 = default(uint);
			int num6 = default(int);
			while (true)
			{
				int num2 = -968727421;
				while (true)
				{
					uint num3;
					int num5;
					switch ((num3 = (uint)num2 ^ 0xFB5A19DAu) % 5)
					{
					case 0u:
						break;
					case 4u:
						num5 = 51767531;
						goto IL_0031;
					case 1u:
						goto IL_005f;
					default:
						num5 = ((int)num4 * -1734525932) ^ -595748479;
						goto IL_0031;
					case 2u:
						goto IL_00d9;
						IL_0031:
						while (true)
						{
							switch ((num4 = (uint)num5 ^ 0x3040DCDCu) % 6)
							{
							case 2u:
								break;
							default:
								goto IL_0058;
							case 3u:
								goto IL_005f;
							case 1u:
								goto IL_008d;
							case 0u:
								num = (num << 1) + xIYBgvGdsKQcuHXWQsXiIQWwxzfQ[num].PlmRSJTUQNaYrMLZXgHWleBGKsJb(rangeDecoder);
								num5 = 673410357;
								continue;
							case 5u:
								num6--;
								num5 = (int)(num4 * 319234711) ^ -1137736798;
								continue;
							case 4u:
								goto IL_00d9;
							}
							break;
							IL_008d:
							int num7;
							if (num6 <= 0)
							{
								num5 = 843589470;
								num7 = num5;
							}
							else
							{
								num5 = 274630916;
								num7 = num5;
							}
						}
						goto case 4u;
						IL_00d9:
						return num - (uint)(1 << yLAgliBcuvHFxUwwwiEUMOPyiBBJb);
						IL_005f:
						num6 = yLAgliBcuvHFxUwwwiEUMOPyiBBJb;
						num2 = -1099944427;
						continue;
						IL_0058:
						num2 = -395580495;
						continue;
					}
					break;
				}
			}
		}

		internal uint zrTeXnDJlvbtFLajsmWSMGgAmUKg(sbLaiQFVLpVXwVbUMgKeVUWoqaX rangeDecoder)
		{
			uint num = 1u;
			uint num2 = 0u;
			int num8 = default(int);
			while (true)
			{
				int num3 = 543869354;
				while (true)
				{
					uint num4;
					int num5;
					int num6;
					switch ((num4 = (uint)num3 ^ 0xBE59F0Au) % 5)
					{
					case 0u:
						break;
					case 2u:
						num5 = 613851367;
						goto IL_0034;
					case 3u:
						goto IL_0078;
					default:
						num5 = 603220500;
						num6 = num5;
						goto IL_0034;
					case 4u:
						goto IL_00f0;
						IL_0034:
						while (true)
						{
							uint num7;
							switch ((num7 = (uint)num5 ^ 0x4C8EAE23u) % 6)
							{
							case 0u:
								break;
							default:
								goto IL_005c;
							case 3u:
								goto IL_0078;
							case 5u:
								num5 = ((int)num7 * -1927326009) ^ -1087436173;
								continue;
							case 1u:
							{
								uint num9 = xIYBgvGdsKQcuHXWQsXiIQWwxzfQ[num].PlmRSJTUQNaYrMLZXgHWleBGKsJb(rangeDecoder);
								num <<= 1;
								num += num9;
								num2 |= num9 << num8;
								num8++;
								num5 = 1546444548;
								continue;
							}
							case 2u:
								num8 = 0;
								num5 = ((int)num7 * -1466859263) ^ -192714954;
								continue;
							case 4u:
								goto IL_00f0;
							}
							break;
						}
						goto case 2u;
						IL_00f0:
						return num2;
						IL_0078:
						if (num8 < yLAgliBcuvHFxUwwwiEUMOPyiBBJb)
						{
							num3 = 1008507944;
							continue;
						}
						num5 = 928767291;
						num6 = num5;
						goto IL_0034;
						IL_005c:
						num3 = 87275843;
						continue;
					}
					break;
				}
			}
		}

		internal static uint UPYbSwktwZoJtEYEePZmunxQpAMtB(qyDuRYZOGxjljbmTsfJtDDjbcVfJ[] Models, uint startIndex, sbLaiQFVLpVXwVbUMgKeVUWoqaX rangeDecoder, int NumBitLevels)
		{
			uint num = 1u;
			uint num6 = default(uint);
			uint num8 = default(uint);
			int num7 = default(int);
			uint num4 = default(uint);
			while (true)
			{
				int num2 = -1924626504;
				while (true)
				{
					uint num3;
					int num5;
					switch ((num3 = (uint)num2 ^ 0xA2893C76u) % 7)
					{
					case 4u:
						break;
					case 2u:
						num6 |= num8 << num7;
						num2 = ((int)num3 * -1748175238) ^ 0x8B0BD7C;
						continue;
					case 5u:
						num5 = 1189216969;
						goto IL_0056;
					case 1u:
						num6 = 0u;
						num2 = (int)(num3 * 1895358806) ^ -993053402;
						continue;
					case 0u:
						goto IL_00bd;
					default:
						num5 = (int)(num4 * 1033252684) ^ -588763034;
						goto IL_0056;
					case 6u:
						goto IL_0153;
						IL_0056:
						while (true)
						{
							switch ((num4 = (uint)num5 ^ 0x3D42994Cu) % 8)
							{
							case 7u:
								break;
							default:
								goto IL_0086;
							case 3u:
								goto IL_00bd;
							case 2u:
								goto IL_00de;
							case 6u:
								num7++;
								num5 = ((int)num4 * -419280904) ^ -785445338;
								continue;
							case 4u:
								num8 = Models[startIndex + num].PlmRSJTUQNaYrMLZXgHWleBGKsJb(rangeDecoder);
								num <<= 1;
								num5 = 674266543;
								continue;
							case 5u:
								num7 = 0;
								num5 = ((int)num4 * -674094472) ^ -1019015819;
								continue;
							case 1u:
								num5 = (int)((num4 * 1932494693) ^ 0x17A84AF3);
								continue;
							case 0u:
								goto IL_0153;
							}
							break;
							IL_00de:
							int num9;
							if (num7 < NumBitLevels)
							{
								num5 = 1201358736;
								num9 = num5;
							}
							else
							{
								num5 = 1205219732;
								num9 = num5;
							}
						}
						goto case 5u;
						IL_0153:
						return num6;
						IL_00bd:
						num += num8;
						num2 = -1456630301;
						continue;
						IL_0086:
						num2 = -940012196;
						continue;
					}
					break;
				}
			}
		}
	}

	internal class sbLaiQFVLpVXwVbUMgKeVUWoqaX
	{
		internal uint rFCbUGelwgLsPfdcHuQXNocwjyNHb;

		internal uint MqiEcQfWgsajFkKFpBoEjUqOsXhs;

		internal Stream KdNlzdRhNaOnkjkIrNyJgFMIRTAj;

		internal void gYBPYxFsHXotHMLXGbxbesyXiyTJA(Stream stream)
		{
			KdNlzdRhNaOnkjkIrNyJgFMIRTAj = stream;
			uint num3 = default(uint);
			int num5 = default(int);
			while (true)
			{
				int num = 39462058;
				while (true)
				{
					uint num2;
					int num4;
					switch ((num2 = (uint)num ^ 0x79B58701u) % 5)
					{
					case 0u:
						break;
					case 2u:
						rFCbUGelwgLsPfdcHuQXNocwjyNHb = 0u;
						MqiEcQfWgsajFkKFpBoEjUqOsXhs = uint.MaxValue;
						num = 1230275051;
						continue;
					case 4u:
						return;
					case 1u:
						goto IL_005a;
					default:
						{
							num4 = ((int)num3 * -1111494269) ^ -1774959577;
							goto IL_005f;
						}
						IL_005a:
						num4 = -1645217463;
						goto IL_005f;
						IL_005f:
						while (true)
						{
							switch ((num3 = (uint)num4 ^ 0xC4A5EF92u) % 8)
							{
							case 3u:
								break;
							case 0u:
								goto IL_005a;
							default:
								goto IL_008e;
							case 5u:
								num4 = (int)(num3 * 1903729669) ^ -2122736439;
								continue;
							case 6u:
								rFCbUGelwgLsPfdcHuQXNocwjyNHb = (rFCbUGelwgLsPfdcHuQXNocwjyNHb << 8) | (byte)\u206a\u206d\u206b\u200c\u202b\u202e\u202c\u206e\u202e\u202d\u202e\u200c\u200f\u206c\u206e\u200d\u206e\u200d\u202a\u206b\u200d\u206b\u202a\u206d\u202c\u202c\u202c\u206a\u202d\u200c\u202d\u200f\u206a\u206e\u202d\u202b\u200e\u206f\u202d\u206a\u202e(KdNlzdRhNaOnkjkIrNyJgFMIRTAj);
								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 2u;
						IL_008e:
						num = 851265033;
						continue;
					}
					break;
				}
			}
		}

		internal void ohwcmbncWRSvKHxjDIlmykYIAKHX()
		{
			KdNlzdRhNaOnkjkIrNyJgFMIRTAj = null;
		}

		internal void UgIcUNHkfZieDdbNLEaOUghhKYzg()
		{
			while (true)
			{
				int num;
				int num2;
				if (MqiEcQfWgsajFkKFpBoEjUqOsXhs >= 16777216)
				{
					num = -1688406730;
					num2 = num;
				}
				else
				{
					num = -717080383;
					num2 = num;
				}
				while (true)
				{
					uint num3;
					int num4;
					switch ((num3 = (uint)num ^ 0x826BBCA4u) % 4)
					{
					case 1u:
						rFCbUGelwgLsPfdcHuQXNocwjyNHb = (rFCbUGelwgLsPfdcHuQXNocwjyNHb << 8) | (byte)\u206a\u206d\u206b\u200c\u202b\u202e\u202c\u206e\u202e\u202d\u202e\u200c\u200f\u206c\u206e\u200d\u206e\u200d\u202a\u206b\u200d\u206b\u202a\u206d\u202c\u202c\u202c\u206a\u202d\u200c\u202d\u200f\u206a\u206e\u202d\u202b\u200e\u206f\u202d\u206a\u202e(KdNlzdRhNaOnkjkIrNyJgFMIRTAj);
						MqiEcQfWgsajFkKFpBoEjUqOsXhs <<= 8;
						num4 = -1622675960;
						goto IL_000a;
					case 3u:
						goto IL_0070;
					default:
						num4 = -1590951207;
						goto IL_000a;
					case 0u:
						break;
					case 2u:
						return;
						IL_000a:
						while (true)
						{
							uint num5;
							switch ((num5 = (uint)num4 ^ 0xAA01A1A5u) % 5)
							{
							case 4u:
								num4 = -2133464448;
								continue;
							case 2u:
								break;
							case 3u:
								return;
							case 1u:
								goto IL_0070;
							default:
								goto IL_009e;
							}
							break;
						}
						goto case 1u;
						IL_009e:
						num = -1354602824;
						continue;
						IL_0070:
						num = -717080383;
						continue;
					}
					break;
				}
			}
		}

		internal uint rDfiQXGakbPfjYkYvKhXBcueGMJIA(int numTotalBits)
		{
			uint num = MqiEcQfWgsajFkKFpBoEjUqOsXhs;
			uint num5 = default(uint);
			uint num8 = default(uint);
			uint num9 = default(uint);
			uint num10 = default(uint);
			int num11 = default(int);
			while (true)
			{
				int num2 = -1813154214;
				while (true)
				{
					uint num3;
					int num4;
					switch ((num3 = (uint)num2 ^ 0xE6BC5AB3u) % 4)
					{
					case 2u:
						break;
					case 1u:
						num4 = 1414362069;
						goto IL_0033;
					default:
						goto IL_009f;
					case 3u:
						goto IL_01eb;
						IL_0033:
						while (true)
						{
							switch ((num5 = (uint)num4 ^ 0x7F420603u) % 15)
							{
							case 5u:
								break;
							default:
								goto IL_0080;
							case 2u:
								goto IL_009f;
							case 0u:
								MqiEcQfWgsajFkKFpBoEjUqOsXhs = num;
								num4 = ((int)num5 * -1553635450) ^ -338211119;
								continue;
							case 14u:
								num8 = rFCbUGelwgLsPfdcHuQXNocwjyNHb;
								num9 = 0u;
								num4 = (int)(num5 * 1919738434) ^ -899725737;
								continue;
							case 4u:
								num8 -= num & (num10 - 1);
								num4 = (int)((num5 * 1402455656) ^ 0x338A0900);
								continue;
							case 3u:
								num <<= 8;
								num4 = ((int)num5 * -1772488274) ^ -930312160;
								continue;
							case 11u:
								goto IL_0124;
							case 8u:
								num11 = numTotalBits;
								num4 = ((int)num5 * -1366574955) ^ 0x29A05C06;
								continue;
							case 13u:
								rFCbUGelwgLsPfdcHuQXNocwjyNHb = num8;
								num4 = (int)(num5 * 1125793216) ^ -1458127457;
								continue;
							case 10u:
								num11--;
								num4 = 122440414;
								continue;
							case 1u:
								num >>= 1;
								num4 = 1271591087;
								continue;
							case 6u:
								num10 = num8 - num >> 31;
								num4 = (int)((num5 * 1004425596) ^ 0xF84C9E7);
								continue;
							case 7u:
								num8 = (num8 << 8) | (byte)\u206a\u206d\u206b\u200c\u202b\u202e\u202c\u206e\u202e\u202d\u202e\u200c\u200f\u206c\u206e\u200d\u206e\u200d\u202a\u206b\u200d\u206b\u202a\u206d\u202c\u202c\u202c\u206a\u202d\u200c\u202d\u200f\u206a\u206e\u202d\u202b\u200e\u206f\u202d\u206a\u202e(KdNlzdRhNaOnkjkIrNyJgFMIRTAj);
								num4 = (int)((num5 * 1598777083) ^ 0x4D6A843C);
								continue;
							case 12u:
							{
								int num6;
								int num7;
								if (num >= 16777216)
								{
									num6 = -1525339046;
									num7 = num6;
								}
								else
								{
									num6 = -133289369;
									num7 = num6;
								}
								num4 = num6 ^ (int)(num5 * 1005105871);
								continue;
							}
							case 9u:
								goto IL_01eb;
							}
							break;
							IL_0124:
							int num12;
							if (num11 <= 0)
							{
								num4 = 1604855460;
								num12 = num4;
							}
							else
							{
								num4 = 467970651;
								num12 = num4;
							}
						}
						goto case 1u;
						IL_01eb:
						return num9;
						IL_009f:
						num9 = (num9 << 1) | (1 - num10);
						num4 = ((int)num5 * -1554662870) ^ -1653236883;
						goto IL_0033;
					}
					break;
					IL_0080:
					num2 = -1418097632;
				}
			}
		}

		internal sbLaiQFVLpVXwVbUMgKeVUWoqaX()
		{
		}

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

	internal class mJrYasasraaDpdHkOdOJcItSgkWcb
	{
		internal class PHpSyuzpirdZBROuToFhvyXMkwzh
		{
			internal readonly lYaFZGoBwVaisvJJogbgGxjCpUgD[] YWyemSaYCDXRLwkzOjFwCDirdyxPA = new lYaFZGoBwVaisvJJogbgGxjCpUgD[16];

			internal readonly lYaFZGoBwVaisvJJogbgGxjCpUgD[] HQjMwtMyGCAEzbQAZGBfEovhBVDE = new lYaFZGoBwVaisvJJogbgGxjCpUgD[16];

			internal qyDuRYZOGxjljbmTsfJtDDjbcVfJ ARlbDxYZzYHZkZvmQjXVILtGQUPR;

			internal qyDuRYZOGxjljbmTsfJtDDjbcVfJ SbDpAptaHIxpdVMYLcAVhwQbWPLb;

			internal lYaFZGoBwVaisvJJogbgGxjCpUgD fsQgHNQBtHQxvVwFAdlftBEFmQxt = new lYaFZGoBwVaisvJJogbgGxjCpUgD(8);

			internal uint JTddCMymQfNXqyEdAnaPuJzuwmMk;

			internal void nbrrEKLJGVktHLoANbHtFEjLWzeiA(uint numPosStates)
			{
				uint num = JTddCMymQfNXqyEdAnaPuJzuwmMk;
				uint num4 = default(uint);
				while (true)
				{
					int num2 = 1041174282;
					while (true)
					{
						uint num3;
						int num5;
						switch ((num3 = (uint)num2 ^ 0x350340D4u) % 5)
						{
						case 2u:
							break;
						case 3u:
							num++;
							num2 = 1357696483;
							continue;
						case 0u:
							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:
									JTddCMymQfNXqyEdAnaPuJzuwmMk = numPosStates;
									num5 = ((int)num4 * -83576031) ^ -1333584483;
									continue;
								case 1u:
									num5 = (int)(num4 * 1319527337) ^ -1460335987;
									continue;
								case 2u:
									HQjMwtMyGCAEzbQAZGBfEovhBVDE[num] = new lYaFZGoBwVaisvJJogbgGxjCpUgD(3);
									num5 = ((int)num4 * -1104948705) ^ -16279914;
									continue;
								case 5u:
									YWyemSaYCDXRLwkzOjFwCDirdyxPA[num] = new lYaFZGoBwVaisvJJogbgGxjCpUgD(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 3u;
							IL_0084:
							num2 = 378342937;
							continue;
						}
						break;
					}
				}
			}

			internal void WpdDxLfmfCVpyPebkipyCjrDwVmib()
			{
				ARlbDxYZzYHZkZvmQjXVILtGQUPR.vsaBWyObuEDjUEOQOKKkKKwTGEguA();
				uint num5 = default(uint);
				while (true)
				{
					int num = -2120485368;
					while (true)
					{
						uint num2;
						int num3;
						switch ((num2 = (uint)num ^ 0xA4743181u) % 5)
						{
						case 0u:
							break;
						case 2u:
							num3 = 1389119028;
							goto IL_003a;
						case 3u:
							goto IL_0070;
						case 1u:
							return;
						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_0070;
								case 3u:
									num3 = (int)((num4 * 972553012) ^ 0x69618A34);
									continue;
								case 6u:
									goto IL_00b5;
								case 7u:
									SbDpAptaHIxpdVMYLcAVhwQbWPLb.vsaBWyObuEDjUEOQOKKkKKwTGEguA();
									fsQgHNQBtHQxvVwFAdlftBEFmQxt.sZSXpxyauYiaYhEnhEQklbQmSKIk();
									num3 = ((int)num4 * -556582639) ^ -2014244532;
									continue;
								case 2u:
									num5 = 0u;
									num3 = (int)(num4 * 1271288492) ^ -1885961883;
									continue;
								case 4u:
									HQjMwtMyGCAEzbQAZGBfEovhBVDE[num5].sZSXpxyauYiaYhEnhEQklbQmSKIk();
									num5++;
									num3 = (int)(num4 * 398687748) ^ -740769256;
									continue;
								case 5u:
									return;
								}
								break;
								IL_00b5:
								int num6;
								if (num5 < JTddCMymQfNXqyEdAnaPuJzuwmMk)
								{
									num3 = 1769208919;
									num6 = num3;
								}
								else
								{
									num3 = 1433388105;
									num6 = num3;
								}
							}
							goto case 2u;
							IL_0070:
							YWyemSaYCDXRLwkzOjFwCDirdyxPA[num5].sZSXpxyauYiaYhEnhEQklbQmSKIk();
							num = -1298362338;
							continue;
							IL_0069:
							num = -1980531056;
							continue;
						}
						break;
					}
				}
			}

			internal uint uAPDccbWPwKuBDNAFrcSxXOJMZuAA(sbLaiQFVLpVXwVbUMgKeVUWoqaX rangeDecoder, uint posState)
			{
				if (ARlbDxYZzYHZkZvmQjXVILtGQUPR.PlmRSJTUQNaYrMLZXgHWleBGKsJb(rangeDecoder) == 0)
				{
					goto IL_0011;
				}
				goto IL_00ae;
				IL_00ae:
				uint num = 8u;
				int num2;
				int num3;
				if (SbDpAptaHIxpdVMYLcAVhwQbWPLb.PlmRSJTUQNaYrMLZXgHWleBGKsJb(rangeDecoder) != 0)
				{
					num2 = -1816490862;
					num3 = num2;
				}
				else
				{
					num2 = -793745199;
					num3 = num2;
				}
				goto IL_0040;
				IL_0011:
				int num4 = 1066606381;
				goto IL_0016;
				IL_012c:
				return num;
				IL_0040:
				uint num5 = default(uint);
				while (true)
				{
					switch ((num5 = (uint)num2 ^ 0xFC09CB8Eu) % 7)
					{
					case 0u:
						break;
					default:
						goto IL_006b;
					case 5u:
						goto IL_0086;
					case 2u:
						goto IL_00ae;
					case 4u:
						num += 8;
						num2 = -2135359772;
						continue;
					case 3u:
						return YWyemSaYCDXRLwkzOjFwCDirdyxPA[posState].gYBARkDDyXnkhENyHaMyuSQtULXPb(rangeDecoder);
					case 6u:
						num += HQjMwtMyGCAEzbQAZGBfEovhBVDE[posState].gYBARkDDyXnkhENyHaMyuSQtULXPb(rangeDecoder);
						num2 = ((int)num5 * -882851102) ^ 0x499C3AA3;
						continue;
					case 1u:
						goto IL_012c;
					}
					break;
				}
				goto IL_003b;
				IL_006b:
				num4 = 320547098;
				goto IL_0016;
				IL_003b:
				num2 = -830056159;
				goto IL_0040;
				IL_0086:
				num += fsQgHNQBtHQxvVwFAdlftBEFmQxt.gYBARkDDyXnkhENyHaMyuSQtULXPb(rangeDecoder);
				num4 = 1873089582;
				goto IL_0016;
				IL_0016:
				uint num6;
				switch ((num6 = (uint)num4 ^ 0x4B950B73u) % 5)
				{
				case 2u:
					break;
				case 1u:
					goto IL_003b;
				case 0u:
					goto IL_0086;
				default:
					goto IL_009f;
				case 4u:
					goto IL_012c;
				}
				goto IL_0011;
				IL_009f:
				num2 = (int)(num5 * 1804706313) ^ -1629619769;
				goto IL_0040;
			}

			internal PHpSyuzpirdZBROuToFhvyXMkwzh()
			{
			}
		}

		internal class lYHbuknYEhGsVvVAhdQRHSIDIuwR
		{
			internal struct ryEdLcElcEETqgoirVmqpBQLSzmI
			{
				internal qyDuRYZOGxjljbmTsfJtDDjbcVfJ[] QeRFLsjyqrIDbgaNxObRTjWyXGQRA;

				internal void HMamGddjrKeDATTTPJZeSgXVxsKE()
				{
					QeRFLsjyqrIDbgaNxObRTjWyXGQRA = new qyDuRYZOGxjljbmTsfJtDDjbcVfJ[768];
				}

				internal void qeJZzbjhoYPrXnCmoNSOnvSFXUiL()
				{
					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;
							int num5;
							switch ((num4 = (uint)num2 ^ 0x5835AF37u) % 5)
							{
							case 3u:
								num2 = 1937325875;
								continue;
							default:
								num5 = -96065551;
								goto IL_000c;
							case 2u:
								goto IL_0071;
							case 0u:
								break;
							case 4u:
								num++;
								num2 = ((int)num4 * -523771213) ^ 0x477E0747;
								continue;
							case 1u:
								return;
								IL_000c:
								while (true)
								{
									uint num6;
									switch ((num6 = (uint)num5 ^ 0xC39F1461u) % 5)
									{
									case 0u:
										num5 = -37496427;
										continue;
									case 3u:
										break;
									case 4u:
										return;
									case 1u:
										goto IL_0071;
									default:
										goto IL_0089;
									}
									break;
								}
								goto case 3u;
								IL_0089:
								num2 = 248256890;
								continue;
								IL_0071:
								QeRFLsjyqrIDbgaNxObRTjWyXGQRA[num].vsaBWyObuEDjUEOQOKKkKKwTGEguA();
								num5 = -971470874;
								goto IL_000c;
							}
							break;
						}
					}
				}

				internal byte ywHfPlKCtmsiohmyAbRNzBhroQESA(sbLaiQFVLpVXwVbUMgKeVUWoqaX rangeDecoder)
				{
					uint num = 1u;
					while (true)
					{
						int num2 = 2099970996;
						while (true)
						{
							uint num3;
							int num4;
							switch ((num3 = (uint)num2 ^ 0xA4FF4FFu) % 5)
							{
							case 2u:
								break;
							case 3u:
								num = (num << 1) | QeRFLsjyqrIDbgaNxObRTjWyXGQRA[num].PlmRSJTUQNaYrMLZXgHWleBGKsJb(rangeDecoder);
								num2 = 1453208897;
								continue;
							case 1u:
								goto IL_005b;
							default:
								num4 = -1575520744;
								goto IL_0060;
							case 0u:
								goto IL_00ae;
								IL_005b:
								num4 = -268674371;
								goto IL_0060;
								IL_0060:
								while (true)
								{
									uint num5;
									switch ((num5 = (uint)num4 ^ 0xFA0C14EEu) % 4)
									{
									case 3u:
										break;
									case 0u:
										goto IL_005b;
									default:
										goto IL_007f;
									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_00ae;
									}
									break;
								}
								goto case 3u;
								IL_00ae:
								return (byte)num;
								IL_007f:
								num2 = 1675565503;
								continue;
							}
							break;
						}
					}
				}

				internal byte uBfgxugQyNBCwLKwfvIdTXQsfUdEA(sbLaiQFVLpVXwVbUMgKeVUWoqaX rangeDecoder, byte matchByte)
				{
					uint num = 1u;
					while (true)
					{
						int num2 = 25188166;
						while (true)
						{
							uint num3;
							int num4;
							int num5;
							switch ((num3 = (uint)num2 ^ 0x75CF4CA3u) % 5)
							{
							case 0u:
								break;
							case 1u:
								num4 = -614300220;
								goto IL_0032;
							case 2u:
								goto IL_0068;
							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_0068;
									case 2u:
										num4 = (int)((num6 * 1251216444) ^ 0x641540D2);
										continue;
									case 3u:
										num = (num << 1) | QeRFLsjyqrIDbgaNxObRTjWyXGQRA[num].PlmRSJTUQNaYrMLZXgHWleBGKsJb(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 = QeRFLsjyqrIDbgaNxObRTjWyXGQRA[(1 + num8 << 8) + num].PlmRSJTUQNaYrMLZXgHWleBGKsJb(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_0068:
								if (num < 256)
								{
									num2 = 302290745;
									continue;
								}
								num4 = -993791728;
								num5 = num4;
								goto IL_0032;
								IL_0061:
								num2 = 440353849;
								continue;
							}
							break;
						}
					}
				}
			}

			internal ryEdLcElcEETqgoirVmqpBQLSzmI[] mBjFYgCVUglpSBsSeEvEMgMhczgGB;

			internal int YvawGxPhMpMHVabnmxYGpCouUeBY;

			internal int nReGLaAutUJONGVDbblEnsvqQHwZA;

			internal uint QjzKUOpURqeVgwluUjpVvROlEHcp;

			internal void iAcDYMWspmaficfcJIEFSDeEbQgE(int numPosBits, int numPrevBits)
			{
				if (mBjFYgCVUglpSBsSeEvEMgMhczgGB != null)
				{
					goto IL_000b;
				}
				goto IL_0125;
				IL_0125:
				YvawGxPhMpMHVabnmxYGpCouUeBY = numPosBits;
				int num = 2136178275;
				goto IL_0059;
				IL_0059:
				uint num6 = default(uint);
				uint num3 = default(uint);
				while (true)
				{
					uint num2;
					switch ((num2 = (uint)num ^ 0x5289231Cu) % 9)
					{
					case 2u:
						break;
					case 5u:
						goto IL_0054;
					default:
						goto IL_008d;
					case 3u:
					{
						int num7;
						int num8;
						if (YvawGxPhMpMHVabnmxYGpCouUeBY == numPosBits)
						{
							num7 = 2064853092;
							num8 = num7;
						}
						else
						{
							num7 = 1028663562;
							num8 = num7;
						}
						num = num7 ^ (int)(num2 * 753163628);
						continue;
					}
					case 6u:
						return;
					case 0u:
						QjzKUOpURqeVgwluUjpVvROlEHcp = (uint)((1 << numPosBits) - 1);
						nReGLaAutUJONGVDbblEnsvqQHwZA = numPrevBits;
						num6 = (uint)(1 << nReGLaAutUJONGVDbblEnsvqQHwZA + YvawGxPhMpMHVabnmxYGpCouUeBY);
						mBjFYgCVUglpSBsSeEvEMgMhczgGB = new ryEdLcElcEETqgoirVmqpBQLSzmI[num6];
						num3 = 0u;
						num = ((int)num2 * -846931882) ^ -1496772783;
						continue;
					case 7u:
						goto IL_0125;
					case 4u:
					{
						int num4;
						int num5;
						if (nReGLaAutUJONGVDbblEnsvqQHwZA == numPrevBits)
						{
							num4 = -1185326981;
							num5 = num4;
						}
						else
						{
							num4 = -99821832;
							num5 = num4;
						}
						num = num4 ^ ((int)num2 * -1749628394);
						continue;
					}
					case 1u:
						mBjFYgCVUglpSBsSeEvEMgMhczgGB[num3].HMamGddjrKeDATTTPJZeSgXVxsKE();
						num3++;
						num = 678666235;
						continue;
					case 8u:
						return;
					}
					break;
				}
				goto IL_0035;
				IL_008d:
				int num9 = 1435744271;
				goto IL_0010;
				IL_000b:
				num9 = 1585818342;
				goto IL_0010;
				IL_0035:
				if (num3 < num6)
				{
					num9 = 35696528;
					goto IL_0010;
				}
				num = 1585435333;
				int num10 = num;
				goto IL_0059;
				IL_0097:
				num = 308874485;
				num10 = num;
				goto IL_0059;
				IL_0054:
				num = 422465281;
				goto IL_0059;
				IL_0010:
				uint num11;
				switch ((num11 = (uint)num9 ^ 0x4FF680C7u) % 5)
				{
				case 4u:
					break;
				case 1u:
					goto IL_0035;
				case 3u:
					return;
				case 2u:
					goto IL_0054;
				default:
					goto IL_0097;
				}
				goto IL_000b;
			}

			internal void xHcLrdqkDGhxreOVtsrZUxleZVHZ()
			{
				uint num = (uint)(1 << nReGLaAutUJONGVDbblEnsvqQHwZA + YvawGxPhMpMHVabnmxYGpCouUeBY);
				uint num6 = default(uint);
				uint num4 = default(uint);
				while (true)
				{
					int num2 = 140410681;
					while (true)
					{
						uint num3;
						int num5;
						switch ((num3 = (uint)num2 ^ 0x37DB8F95u) % 5)
						{
						case 2u:
							break;
						case 4u:
							num6++;
							num2 = 339114238;
							continue;
						case 0u:
							return;
						case 3u:
							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:
									mBjFYgCVUglpSBsSeEvEMgMhczgGB[num6].qeJZzbjhoYPrXnCmoNSOnvSFXUiL();
									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 = 1385328439;
							continue;
						}
						break;
					}
				}
			}

			internal uint KEUzjTbifXWuzNPuCArPXLQAUeYq(uint pos, byte prevByte)
			{
				return ((pos & QjzKUOpURqeVgwluUjpVvROlEHcp) << nReGLaAutUJONGVDbblEnsvqQHwZA) + (uint)(prevByte >> 8 - nReGLaAutUJONGVDbblEnsvqQHwZA);
			}

			internal byte iniJhnRRLvYgMkeEkyNZhPImaZGG(sbLaiQFVLpVXwVbUMgKeVUWoqaX rangeDecoder, uint pos, byte prevByte)
			{
				return mBjFYgCVUglpSBsSeEvEMgMhczgGB[KEUzjTbifXWuzNPuCArPXLQAUeYq(pos, prevByte)].ywHfPlKCtmsiohmyAbRNzBhroQESA(rangeDecoder);
			}

			internal byte dZjdeJZbcCmOyOEdFGUhfsEpqmwUA(sbLaiQFVLpVXwVbUMgKeVUWoqaX rangeDecoder, uint pos, byte prevByte, byte matchByte)
			{
				return mBjFYgCVUglpSBsSeEvEMgMhczgGB[KEUzjTbifXWuzNPuCArPXLQAUeYq(pos, prevByte)].uBfgxugQyNBCwLKwfvIdTXQsfUdEA(rangeDecoder, matchByte);
			}

			internal lYHbuknYEhGsVvVAhdQRHSIDIuwR()
			{
			}
		}

		internal readonly qyDuRYZOGxjljbmTsfJtDDjbcVfJ[] dgTimwkBycsbPCEljSIjAOparagDA = new qyDuRYZOGxjljbmTsfJtDDjbcVfJ[192];

		internal readonly qyDuRYZOGxjljbmTsfJtDDjbcVfJ[] npBVSqhXeUYOPnRTjVQNhFJUlzQC = new qyDuRYZOGxjljbmTsfJtDDjbcVfJ[192];

		internal readonly qyDuRYZOGxjljbmTsfJtDDjbcVfJ[] UCgAIdrObMJfbYzlOiOcxusgsjHr = new qyDuRYZOGxjljbmTsfJtDDjbcVfJ[12];

		internal readonly qyDuRYZOGxjljbmTsfJtDDjbcVfJ[] SveITuUVAUmcgxIXUwQKBoRLapLt = new qyDuRYZOGxjljbmTsfJtDDjbcVfJ[12];

		internal readonly qyDuRYZOGxjljbmTsfJtDDjbcVfJ[] LVtEhDrOWDmITddAyGWKTlvrgLDy = new qyDuRYZOGxjljbmTsfJtDDjbcVfJ[12];

		internal readonly qyDuRYZOGxjljbmTsfJtDDjbcVfJ[] OMbXqEUiMsnBVthSSHlrFrOiHpZm = new qyDuRYZOGxjljbmTsfJtDDjbcVfJ[12];

		internal readonly PHpSyuzpirdZBROuToFhvyXMkwzh xHpWStcNjUbKFhTyrSNydgoSebwgA = new PHpSyuzpirdZBROuToFhvyXMkwzh();

		internal readonly lYHbuknYEhGsVvVAhdQRHSIDIuwR VRRYdUBVmrtZFsWctetLkLPFVsHi = new lYHbuknYEhGsVvVAhdQRHSIDIuwR();

		internal readonly KwIeSkJCejWJmyvqtondWHvbDmVjA dbhIJQiYRuqMoRQVYysCAYmzFvPK = new KwIeSkJCejWJmyvqtondWHvbDmVjA();

		internal readonly qyDuRYZOGxjljbmTsfJtDDjbcVfJ[] iBUSPcOCVSgBDhVRLHiIvUdaVArOA = new qyDuRYZOGxjljbmTsfJtDDjbcVfJ[114];

		internal readonly lYaFZGoBwVaisvJJogbgGxjCpUgD[] DoxlahoPINIpLerocwviRwFSkoDA = new lYaFZGoBwVaisvJJogbgGxjCpUgD[4];

		internal readonly sbLaiQFVLpVXwVbUMgKeVUWoqaX fiHAVqhMpwvahhBjuAjoadJdorBhA = new sbLaiQFVLpVXwVbUMgKeVUWoqaX();

		internal readonly PHpSyuzpirdZBROuToFhvyXMkwzh DwCvGGVuNHuJkaBKzGsvrbnUFCbM = new PHpSyuzpirdZBROuToFhvyXMkwzh();

		internal bool OYLXlfHAklldhFkYyhSfxzRdsVdC;

		internal uint EZQOyjpHlFQwKLPwrAjPuIJAfpaEA;

		internal uint iHiYsGELVRgFIeTCASoasVRqxjfU;

		internal lYaFZGoBwVaisvJJogbgGxjCpUgD TBaaUHHWYmDCdilRRXFaSSUZqLQtA = new lYaFZGoBwVaisvJJogbgGxjCpUgD(4);

		internal uint SGGWxJUrNOvJYhCfefICRiGdXSEd;

		internal mJrYasasraaDpdHkOdOJcItSgkWcb()
		{
			EZQOyjpHlFQwKLPwrAjPuIJAfpaEA = uint.MaxValue;
			for (int i = 0; (long)i < 4L; i++)
			{
				DoxlahoPINIpLerocwviRwFSkoDA[i] = new lYaFZGoBwVaisvJJogbgGxjCpUgD(6);
			}
		}

		internal void ElyGhlXaZnGRNEyRGKIUOFafFule(uint dictionarySize)
		{
			if (EZQOyjpHlFQwKLPwrAjPuIJAfpaEA == dictionarySize)
			{
				return;
			}
			uint num3 = default(uint);
			uint windowSize = default(uint);
			while (true)
			{
				int num = 1804493514;
				while (true)
				{
					uint num2;
					int num4;
					switch ((num2 = (uint)num ^ 0x5A9F3707u) % 5)
					{
					case 0u:
						break;
					case 4u:
						EZQOyjpHlFQwKLPwrAjPuIJAfpaEA = dictionarySize;
						num = 520617298;
						continue;
					case 2u:
						return;
					case 1u:
						goto IL_0058;
					default:
						{
							num4 = ((int)num3 * -1147611387) ^ -636185745;
							goto IL_005d;
						}
						IL_0058:
						num4 = -1198290580;
						goto IL_005d;
						IL_005d:
						while (true)
						{
							switch ((num3 = (uint)num4 ^ 0xB5FAB9EEu) % 5)
							{
							case 1u:
								break;
							case 0u:
								goto IL_0058;
							default:
								goto IL_0080;
							case 4u:
								dbhIJQiYRuqMoRQVYysCAYmzFvPK.ssngCasQGcTQrebMgAsJVVCfAzuz(windowSize);
								num4 = (int)((num3 * 19026174) ^ 0x5E81AB13);
								continue;
							case 2u:
								iHiYsGELVRgFIeTCASoasVRqxjfU = \u200b\u202e\u202e\u206b\u200e\u200e\u200d\u206d\u200b\u200b\u200f\u206d\u206e\u206f\u200b\u200d\u200e\u200b\u202a\u206d\u206c\u200c\u200d\u200d\u206b\u206f\u200b\u202c\u202e\u206f\u206c\u202d\u200d\u200e\u206d\u206e\u206c\u206f\u206a\u202e\u202e(EZQOyjpHlFQwKLPwrAjPuIJAfpaEA, 1u);
								windowSize = \u200b\u202e\u202e\u206b\u200e\u200e\u200d\u206d\u200b\u200b\u200f\u206d\u206e\u206f\u200b\u200d\u200e\u200b\u202a\u206d\u206c\u200c\u200d\u200d\u206b\u206f\u200b\u202c\u202e\u206f\u206c\u202d\u200d\u200e\u206d\u206e\u206c\u206f\u206a\u202e\u202e(iHiYsGELVRgFIeTCASoasVRqxjfU, 4096u);
								num4 = ((int)num3 * -195271130) ^ 0xE0CCADB;
								continue;
							case 3u:
								return;
							}
							break;
						}
						goto case 4u;
						IL_0080:
						num = 1529232534;
						continue;
					}
					break;
				}
			}
		}

		internal void GAJzdViCZFogmSVSFrHKkIPWBCyO(int lp, int lc)
		{
			VRRYdUBVmrtZFsWctetLkLPFVsHi.iAcDYMWspmaficfcJIEFSDeEbQgE(lp, lc);
		}

		internal void HyXtDDkiGnbOUbfqUXFZSUZhXzGL(int pb)
		{
			uint num = (uint)(1 << pb);
			uint num4 = default(uint);
			while (true)
			{
				int num2 = -235680674;
				while (true)
				{
					uint num3;
					int num5;
					switch ((num3 = (uint)num2 ^ 0xC88CD50Bu) % 6)
					{
					case 5u:
						break;
					case 1u:
						xHpWStcNjUbKFhTyrSNydgoSebwgA.nbrrEKLJGVktHLoANbHtFEjLWzeiA(num);
						num2 = -1605157373;
						continue;
					case 0u:
						DwCvGGVuNHuJkaBKzGsvrbnUFCbM.nbrrEKLJGVktHLoANbHtFEjLWzeiA(num);
						num2 = ((int)num3 * -634223934) ^ 0x2CBE8853;
						continue;
					case 3u:
						goto IL_0063;
					case 2u:
						return;
					default:
						{
							num5 = (int)((num4 * 1567872034) ^ 0x6520AA72);
							goto IL_0068;
						}
						IL_0063:
						num5 = -1644811415;
						goto IL_0068;
						IL_0068:
						while (true)
						{
							switch ((num4 = (uint)num5 ^ 0x8060617Au) % 4)
							{
							case 3u:
								break;
							case 0u:
								goto IL_0063;
							default:
								goto IL_0087;
							case 2u:
								SGGWxJUrNOvJYhCfefICRiGdXSEd = num - 1;
								num5 = ((int)num4 * -210829317) ^ -2114221151;
								continue;
							case 1u:
								return;
							}
							break;
						}
						goto case 1u;
						IL_0087:
						num2 = -686831683;
						continue;
					}
					break;
				}
			}
		}

		internal void iiWRuWLwHYGKAdzQtiMlBtFUQRKA(Stream inStream, Stream outStream)
		{
			fiHAVqhMpwvahhBjuAjoadJdorBhA.gYBPYxFsHXotHMLXGbxbesyXiyTJA(inStream);
			uint num5 = default(uint);
			uint num7 = default(uint);
			uint num6 = default(uint);
			while (true)
			{
				int num = 1667739947;
				while (true)
				{
					uint num2;
					int num3;
					switch ((num2 = (uint)num ^ 0x73E265E8u) % 5)
					{
					case 3u:
						break;
					case 1u:
						dbhIJQiYRuqMoRQVYysCAYmzFvPK.lFXsfsIrTUoVaFOxkFOgItgrNcZG(outStream, OYLXlfHAklldhFkYyhSfxzRdsVdC);
						num = (int)((num2 * 838414222) ^ 0x1C30BCCC);
						continue;
					case 4u:
						num3 = -68742388;
						goto IL_0061;
					case 0u:
						return;
					default:
						goto IL_00f7;
						IL_0061:
						while (true)
						{
							uint num4;
							switch ((num4 = (uint)num3 ^ 0xC6650CF5u) % 25)
							{
							case 21u:
								break;
							default:
								goto IL_00d5;
							case 15u:
								goto IL_00f7;
							case 18u:
								num5++;
								num3 = ((int)num4 * -832256976) ^ 0xB991814;
								continue;
							case 1u:
								goto IL_0128;
							case 11u:
								SveITuUVAUmcgxIXUwQKBoRLapLt[num5].vsaBWyObuEDjUEOQOKKkKKwTGEguA();
								LVtEhDrOWDmITddAyGWKTlvrgLDy[num5].vsaBWyObuEDjUEOQOKKkKKwTGEguA();
								OMbXqEUiMsnBVthSSHlrFrOiHpZm[num5].vsaBWyObuEDjUEOQOKKkKKwTGEguA();
								num3 = (int)((num4 * 948766628) ^ 0x2D9C2617);
								continue;
							case 23u:
								goto IL_018a;
							case 0u:
								goto IL_01a2;
							case 2u:
								num7 = 0u;
								num3 = -2120729786;
								continue;
							case 3u:
								num3 = ((int)num4 * -681503442) ^ -716341072;
								continue;
							case 19u:
								UCgAIdrObMJfbYzlOiOcxusgsjHr[num5].vsaBWyObuEDjUEOQOKKkKKwTGEguA();
								num3 = ((int)num4 * -719401648) ^ -513860498;
								continue;
							case 14u:
								VRRYdUBVmrtZFsWctetLkLPFVsHi.xHcLrdqkDGhxreOVtsrZUxleZVHZ();
								num3 = ((int)num4 * -1780078418) ^ 0x59D06C73;
								continue;
							case 17u:
								DoxlahoPINIpLerocwviRwFSkoDA[num5].sZSXpxyauYiaYhEnhEQklbQmSKIk();
								num3 = -1965848834;
								continue;
							case 10u:
								num6 = (num5 << 4) + num7;
								num3 = -1707112968;
								continue;
							case 9u:
								num3 = (int)(num4 * 1732489368) ^ -1720397582;
								continue;
							case 8u:
								goto IL_0256;
							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:
								dgTimwkBycsbPCEljSIjAOparagDA[num6].vsaBWyObuEDjUEOQOKKkKKwTGEguA();
								num3 = ((int)num4 * -1185477833) ^ 0x2429862A;
								continue;
							case 7u:
								num5++;
								num3 = ((int)num4 * -549228116) ^ 0x3B18071E;
								continue;
							case 24u:
								xHpWStcNjUbKFhTyrSNydgoSebwgA.WpdDxLfmfCVpyPebkipyCjrDwVmib();
								DwCvGGVuNHuJkaBKzGsvrbnUFCbM.WpdDxLfmfCVpyPebkipyCjrDwVmib();
								TBaaUHHWYmDCdilRRXFaSSUZqLQtA.sZSXpxyauYiaYhEnhEQklbQmSKIk();
								num3 = (int)(num4 * 1978943955) ^ -339087520;
								continue;
							case 6u:
								npBVSqhXeUYOPnRTjVQNhFJUlzQC[num6].vsaBWyObuEDjUEOQOKKkKKwTGEguA();
								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_0256:
							int num8;
							if (num5 >= 12)
							{
								num3 = -1301746427;
								num8 = num3;
							}
							else
							{
								num3 = -24928678;
								num8 = num3;
							}
							continue;
							IL_018a:
							int num9;
							if (num5 >= 4)
							{
								num3 = -2048859951;
								num9 = num3;
							}
							else
							{
								num3 = -100127524;
								num9 = num3;
							}
							continue;
							IL_0128:
							int num10;
							if (num7 > SGGWxJUrNOvJYhCfefICRiGdXSEd)
							{
								num3 = -197645777;
								num10 = num3;
							}
							else
							{
								num3 = -105364354;
								num10 = num3;
							}
							continue;
							IL_01a2:
							int num11;
							if (num5 >= 114)
							{
								num3 = -313485825;
								num11 = num3;
							}
							else
							{
								num3 = -66443641;
								num11 = num3;
							}
						}
						goto case 4u;
						IL_00f7:
						iBUSPcOCVSgBDhVRLHiIvUdaVArOA[num5].vsaBWyObuEDjUEOQOKKkKKwTGEguA();
						num3 = -1532699707;
						goto IL_0061;
						IL_00d5:
						num = 1684137738;
						continue;
					}
					break;
				}
			}
		}

		internal void xJDRJNodVCARBhqtOCgXxzGELNii(Stream inStream, Stream outStream, long inSize, long outSize)
		{
			iiWRuWLwHYGKAdzQtiMlBtFUQRKA(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);
			FUMHfuUNsUFMAAIQJeHUERxiSgSRA fUMHfuUNsUFMAAIQJeHUERxiSgSRA = default(FUMHfuUNsUFMAAIQJeHUERxiSgSRA);
			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 = 1432920845;
				while (true)
				{
					uint num2;
					int num3;
					int num4;
					switch ((num2 = (uint)num ^ 0x3AA7DA01u) % 5)
					{
					case 2u:
						break;
					case 1u:
						num3 = -1519892428;
						goto IL_003b;
					case 0u:
						goto IL_013e;
					default:
						num3 = -2046648190;
						num4 = num3;
						goto IL_003b;
					case 3u:
						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:
								dbhIJQiYRuqMoRQVYysCAYmzFvPK.oaFIwyHXdEqLTBvLDqmXSFVNERKT(num7, num13);
								num3 = -1500278805;
								continue;
							case 54u:
								num3 = ((int)num5 * -1190771742) ^ 0x10EB83DB;
								continue;
							case 45u:
								b = VRRYdUBVmrtZFsWctetLkLPFVsHi.iniJhnRRLvYgMkeEkyNZhPImaZGG(fiHAVqhMpwvahhBjuAjoadJdorBhA, (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:
								fUMHfuUNsUFMAAIQJeHUERxiSgSRA.fdqxLuEjZDYWGkcJHAfaLaCUavIt();
								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:
								fUMHfuUNsUFMAAIQJeHUERxiSgSRA.SjaxCXifZGBeOpBKmaNjfUHLkcKjA();
								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 (SveITuUVAUmcgxIXUwQKBoRLapLt[fUMHfuUNsUFMAAIQJeHUERxiSgSRA.tYPsdjYTacHBoDmpWbariofbrFHZA].PlmRSJTUQNaYrMLZXgHWleBGKsJb(fiHAVqhMpwvahhBjuAjoadJdorBhA) == 0)
								{
									num25 = 365861285;
									num26 = num25;
								}
								else
								{
									num25 = 762968304;
									num26 = num25;
								}
								num3 = num25 ^ ((int)num5 * -1681867353);
								continue;
							}
							case 5u:
							{
								byte b2 = VRRYdUBVmrtZFsWctetLkLPFVsHi.iniJhnRRLvYgMkeEkyNZhPImaZGG(fiHAVqhMpwvahhBjuAjoadJdorBhA, 0u, 0);
								dbhIJQiYRuqMoRQVYysCAYmzFvPK.wnlgaxgmBMERvZMYeIhGnzftjEvfA(b2);
								num9++;
								num3 = ((int)num5 * -174584324) ^ -1421752623;
								continue;
							}
							case 41u:
							{
								int num21;
								int num22;
								if (npBVSqhXeUYOPnRTjVQNhFJUlzQC[(fUMHfuUNsUFMAAIQJeHUERxiSgSRA.tYPsdjYTacHBoDmpWbariofbrFHZA << 4) + num20].PlmRSJTUQNaYrMLZXgHWleBGKsJb(fiHAVqhMpwvahhBjuAjoadJdorBhA) != 0)
								{
									num21 = -876977556;
									num22 = num21;
								}
								else
								{
									num21 = -1131324123;
									num22 = num21;
								}
								num3 = num21 ^ (int)(num5 * 1918644810);
								continue;
							}
							case 57u:
								dbhIJQiYRuqMoRQVYysCAYmzFvPK.wnlgaxgmBMERvZMYeIhGnzftjEvfA(dbhIJQiYRuqMoRQVYysCAYmzFvPK.KGaJVRWZwcXTbOTQYxKfFZuiaWpb(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 = DwCvGGVuNHuJkaBKzGsvrbnUFCbM.uAPDccbWPwKuBDNAFrcSxXOJMZuAA(fiHAVqhMpwvahhBjuAjoadJdorBhA, 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 (fUMHfuUNsUFMAAIQJeHUERxiSgSRA.uLytPbRWvbAVQPIBwufAgUjzPgvX())
								{
									num29 = 1106436569;
									num30 = num29;
								}
								else
								{
									num29 = 1943662755;
									num30 = num29;
								}
								num3 = num29 ^ (int)(num5 * 1130771233);
								continue;
							}
							case 29u:
								prevByte = dbhIJQiYRuqMoRQVYysCAYmzFvPK.KGaJVRWZwcXTbOTQYxKfFZuiaWpb(0u);
								num3 = (int)(num5 * 1580212608) ^ -88590890;
								continue;
							case 19u:
								num7 += TBaaUHHWYmDCdilRRXFaSSUZqLQtA.zrTeXnDJlvbtFLajsmWSMGgAmUKg(fiHAVqhMpwvahhBjuAjoadJdorBhA);
								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:
								dbhIJQiYRuqMoRQVYysCAYmzFvPK.wnlgaxgmBMERvZMYeIhGnzftjEvfA(b);
								fUMHfuUNsUFMAAIQJeHUERxiSgSRA.zVWAZmXBupXSleJZiHvMSyjYwYZj();
								num9++;
								num3 = -87334759;
								continue;
							case 18u:
							{
								int num23;
								int num24;
								if (num7 < iHiYsGELVRgFIeTCASoasVRqxjfU)
								{
									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:
								dgTimwkBycsbPCEljSIjAOparagDA[fUMHfuUNsUFMAAIQJeHUERxiSgSRA.tYPsdjYTacHBoDmpWbariofbrFHZA << 4].PlmRSJTUQNaYrMLZXgHWleBGKsJb(fiHAVqhMpwvahhBjuAjoadJdorBhA);
								fUMHfuUNsUFMAAIQJeHUERxiSgSRA.zVWAZmXBupXSleJZiHvMSyjYwYZj();
								num3 = ((int)num5 * -697054398) ^ 0x37A3BF52;
								continue;
							case 20u:
								goto IL_060c;
							case 26u:
								num13 = 2 + xHpWStcNjUbKFhTyrSNydgoSebwgA.uAPDccbWPwKuBDNAFrcSxXOJMZuAA(fiHAVqhMpwvahhBjuAjoadJdorBhA, num20);
								fUMHfuUNsUFMAAIQJeHUERxiSgSRA.RGPOUysnKyFAChsMdrdFTRYPVBLO();
								num17 = DoxlahoPINIpLerocwviRwFSkoDA[fqGEHGvMfBmBHWQiYLOxflzUgvAD(num13)].gYBARkDDyXnkhENyHaMyuSQtULXPb(fiHAVqhMpwvahhBjuAjoadJdorBhA);
								num3 = (int)(num5 * 577767146) ^ -2074568117;
								continue;
							case 39u:
								b = VRRYdUBVmrtZFsWctetLkLPFVsHi.dZjdeJZbcCmOyOEdFGUhfsEpqmwUA(fiHAVqhMpwvahhBjuAjoadJdorBhA, (uint)num9, prevByte, dbhIJQiYRuqMoRQVYysCAYmzFvPK.KGaJVRWZwcXTbOTQYxKfFZuiaWpb(num7));
								num3 = (int)(num5 * 2130318076) ^ -370202807;
								continue;
							case 16u:
								num14 = num16;
								num3 = -1724631073;
								continue;
							case 13u:
								num7 += lYaFZGoBwVaisvJJogbgGxjCpUgD.UPYbSwktwZoJtEYEePZmunxQpAMtB(iBUSPcOCVSgBDhVRLHiIvUdaVArOA, num7 - num17 - 1, fiHAVqhMpwvahhBjuAjoadJdorBhA, 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:
								fUMHfuUNsUFMAAIQJeHUERxiSgSRA.vSAkMpggDpyvEOAuMSzZjxcHShlO();
								num3 = (int)((num5 * 676302378) ^ 0x6FFB5DAF);
								continue;
							case 46u:
								num15 = num14;
								num3 = -788847489;
								continue;
							case 27u:
								dbhIJQiYRuqMoRQVYysCAYmzFvPK.QGnlfJFIcSdsZXoMSduzNsPYDBn();
								num3 = -1129262515;
								continue;
							case 31u:
								fUMHfuUNsUFMAAIQJeHUERxiSgSRA = default(FUMHfuUNsUFMAAIQJeHUERxiSgSRA);
								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 += fiHAVqhMpwvahhBjuAjoadJdorBhA.rDfiQXGakbPfjYkYvKhXBcueGMJIA(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 (OMbXqEUiMsnBVthSSHlrFrOiHpZm[fUMHfuUNsUFMAAIQJeHUERxiSgSRA.tYPsdjYTacHBoDmpWbariofbrFHZA].PlmRSJTUQNaYrMLZXgHWleBGKsJb(fiHAVqhMpwvahhBjuAjoadJdorBhA) != 0)
							{
								num3 = -1886177972;
								num31 = num3;
							}
							else
							{
								num3 = -2077021207;
								num31 = num3;
							}
							continue;
							IL_04c2:
							num20 = (uint)(int)num9 & SGGWxJUrNOvJYhCfefICRiGdXSEd;
							int num32;
							if (dgTimwkBycsbPCEljSIjAOparagDA[(fUMHfuUNsUFMAAIQJeHUERxiSgSRA.tYPsdjYTacHBoDmpWbariofbrFHZA << 4) + num20].PlmRSJTUQNaYrMLZXgHWleBGKsJb(fiHAVqhMpwvahhBjuAjoadJdorBhA) == 0)
							{
								num3 = -1445888892;
								num32 = num3;
							}
							else
							{
								num3 = -1665870976;
								num32 = num3;
							}
							continue;
							IL_0213:
							int num33;
							if (LVtEhDrOWDmITddAyGWKTlvrgLDy[fUMHfuUNsUFMAAIQJeHUERxiSgSRA.tYPsdjYTacHBoDmpWbariofbrFHZA].PlmRSJTUQNaYrMLZXgHWleBGKsJb(fiHAVqhMpwvahhBjuAjoadJdorBhA) == 0)
							{
								num3 = -2058997206;
								num33 = num3;
							}
							else
							{
								num3 = -1726203875;
								num33 = num3;
							}
							continue;
							IL_0512:
							int num34;
							if (UCgAIdrObMJfbYzlOiOcxusgsjHr[fUMHfuUNsUFMAAIQJeHUERxiSgSRA.tYPsdjYTacHBoDmpWbariofbrFHZA].PlmRSJTUQNaYrMLZXgHWleBGKsJb(fiHAVqhMpwvahhBjuAjoadJdorBhA) == 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 1u;
						IL_085c:
						dbhIJQiYRuqMoRQVYysCAYmzFvPK.CgAdwBCRhampOsAzDbHgeZIMDGnFb();
						fiHAVqhMpwvahhBjuAjoadJdorBhA.ohwcmbncWRSvKHxjDIlmykYIAKHX();
						return;
						IL_013e:
						if (num7 != uint.MaxValue)
						{
							num = 535528248;
							continue;
						}
						num3 = -884833030;
						num4 = num3;
						goto IL_003b;
						IL_0134:
						num = 1862746751;
						continue;
					}
					break;
				}
			}
		}

		internal void MdIcivaYLmbaHPOjTayFrqKNJCXF(byte[] properties)
		{
			int lc = properties[0] % 9;
			int num = properties[0] / 9;
			int lp = num % 5;
			int pb = num / 5;
			uint num5 = default(uint);
			int num7 = default(int);
			uint num6 = default(uint);
			while (true)
			{
				int num2 = -1963770370;
				while (true)
				{
					uint num3;
					int num4;
					switch ((num3 = (uint)num2 ^ 0xB8246D09u) % 4)
					{
					case 0u:
						break;
					case 3u:
						num4 = -521198938;
						goto IL_0040;
					default:
						goto IL_0088;
					case 2u:
						goto IL_0109;
						IL_0040:
						while (true)
						{
							switch ((num5 = (uint)num4 ^ 0xE1AB6060u) % 7)
							{
							case 6u:
								break;
							default:
								goto IL_006c;
							case 4u:
								goto IL_0088;
							case 3u:
								goto IL_009a;
							case 0u:
								num7 = 0;
								num4 = (int)(num5 * 880940413) ^ -610916428;
								continue;
							case 2u:
								ElyGhlXaZnGRNEyRGKIUOFafFule(num6);
								GAJzdViCZFogmSVSFrHKkIPWBCyO(lp, lc);
								num4 = (int)((num5 * 296168339) ^ 0x5D7DB860);
								continue;
							case 1u:
								num6 += (uint)(properties[1 + num7] << num7 * 8);
								num7++;
								num4 = -29571197;
								continue;
							case 5u:
								goto IL_0109;
							}
							break;
							IL_009a:
							int num8;
							if (num7 < 4)
							{
								num4 = -797913118;
								num8 = num4;
							}
							else
							{
								num4 = -425662409;
								num8 = num4;
							}
						}
						goto case 3u;
						IL_0109:
						HyXtDDkiGnbOUbfqUXFZSUZhXzGL(pb);
						return;
						IL_0088:
						num6 = 0u;
						num4 = (int)((num5 * 150009620) ^ 0x3E6F0BDB);
						goto IL_0040;
					}
					break;
					IL_006c:
					num2 = -261821369;
				}
			}
		}

		internal static uint fqGEHGvMfBmBHWQiYLOxflzUgvAD(uint len)
		{
			len -= 2;
			if (len < 4)
			{
				uint num3 = default(uint);
				while (true)
				{
					int num = 672553590;
					while (true)
					{
						uint num2;
						int num4;
						switch ((num2 = (uint)num ^ 0x7D431518u) % 5)
						{
						case 0u:
							break;
						case 2u:
							return len;
						case 4u:
							goto IL_004d;
						default:
							num4 = (int)(num3 * 54958050) ^ -1315568332;
							goto IL_0052;
						case 1u:
							goto end_IL_0009;
							IL_004d:
							num4 = -2126372781;
							goto IL_0052;
							IL_0052:
							switch ((num3 = (uint)num4 ^ 0x9BD749CCu) % 3)
							{
							case 1u:
								break;
							case 0u:
								goto IL_004d;
							default:
								goto IL_006d;
							case 2u:
								goto end_IL_0009;
							}
							goto case 2u;
							IL_006d:
							num = 495693422;
							continue;
						}
						break;
					}
					continue;
					end_IL_0009:
					break;
				}
			}
			return 3u;
		}

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

	internal class KwIeSkJCejWJmyvqtondWHvbDmVjA
	{
		internal byte[] nYkGqNwLPSyjxdRHVtFWHUSQcBwU;

		internal uint QAAOqMPpBsGMKCvNOVFInGAtEBTGA;

		internal Stream gClEqdmaKQsJOrrVpoULuDZxjBPx;

		internal uint drbpfLQNgQKgrZbRpGWCACjtUjZdA;

		internal uint ZZYOIozeYemMwAQVbTtYzCvsZyZD;

		internal void ssngCasQGcTQrebMgAsJVVCfAzuz(uint windowSize)
		{
			if (ZZYOIozeYemMwAQVbTtYzCvsZyZD != windowSize)
			{
				goto IL_000c;
			}
			goto IL_00b5;
			IL_00b5:
			ZZYOIozeYemMwAQVbTtYzCvsZyZD = 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_0076;
				case 1u:
					QAAOqMPpBsGMKCvNOVFInGAtEBTGA = 0u;
					drbpfLQNgQKgrZbRpGWCACjtUjZdA = 0u;
					num = ((int)num2 * -593369727) ^ 0x8C2732;
					continue;
				case 3u:
					goto IL_00b5;
				case 4u:
					return;
				}
				break;
			}
			goto IL_0036;
			IL_005e:
			int num3 = 1854500090;
			goto IL_0011;
			IL_0076:
			nYkGqNwLPSyjxdRHVtFWHUSQcBwU = new byte[windowSize];
			num3 = 133560284;
			goto IL_0011;
			IL_0011:
			uint num4;
			switch ((num4 = (uint)num3 ^ 0x14CBDCDDu) % 5)
			{
			case 2u:
				break;
			case 1u:
				goto IL_0036;
			case 3u:
				return;
			case 4u:
				goto IL_0076;
			default:
				goto IL_0089;
			}
			goto IL_000c;
			IL_000c:
			num3 = 642412243;
			goto IL_0011;
			IL_0089:
			num = ((int)num2 * -1396420241) ^ -1006681007;
			goto IL_003b;
			IL_0036:
			num = -367369624;
			goto IL_003b;
		}

		internal void lFXsfsIrTUoVaFOxkFOgItgrNcZG(Stream stream, bool solid)
		{
			CgAdwBCRhampOsAzDbHgeZIMDGnFb();
			uint num3 = default(uint);
			while (true)
			{
				int num = 653701020;
				while (true)
				{
					uint num2;
					int num4;
					switch ((num2 = (uint)num ^ 0x4A9EB243u) % 5)
					{
					case 0u:
						break;
					case 4u:
						num4 = 899936120;
						goto IL_0035;
					case 2u:
						return;
					case 3u:
						goto IL_0074;
					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_0074;
							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:
								QAAOqMPpBsGMKCvNOVFInGAtEBTGA = 0u;
								num4 = (int)(num3 * 132003975) ^ -1590351758;
								continue;
							case 3u:
								gClEqdmaKQsJOrrVpoULuDZxjBPx = stream;
								num4 = (int)((num3 * 1368880260) ^ 0x79593059);
								continue;
							case 4u:
								return;
							}
							break;
						}
						goto case 4u;
						IL_0074:
						drbpfLQNgQKgrZbRpGWCACjtUjZdA = 0u;
						num = 1243049618;
						continue;
						IL_005c:
						num = 1432561884;
						continue;
					}
					break;
				}
			}
		}

		internal void CgAdwBCRhampOsAzDbHgeZIMDGnFb()
		{
			QGnlfJFIcSdsZXoMSduzNsPYDBn();
			uint num3 = default(uint);
			while (true)
			{
				int num = -840575371;
				while (true)
				{
					uint num2;
					int num4;
					switch ((num2 = (uint)num ^ 0x9BA8DB15u) % 5)
					{
					case 0u:
						break;
					case 3u:
						gClEqdmaKQsJOrrVpoULuDZxjBPx = null;
						num = -1354599315;
						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 3u;
						IL_0085:
						\u200f\u200c\u200d\u202d\u206c\u200c\u202c\u206a\u206b\u206c\u206f\u200e\u206f\u202e\u202a\u200c\u206f\u200c\u202a\u206a\u200c\u200f\u202c\u202c\u206b\u202a\u202e\u206c\u202a\u202e\u200f\u206b\u206d\u206d\u202c\u206b\u202d\u200d\u202d\u202b\u202e((Array)new byte[nYkGqNwLPSyjxdRHVtFWHUSQcBwU.Length], 0, (Array)nYkGqNwLPSyjxdRHVtFWHUSQcBwU, 0, nYkGqNwLPSyjxdRHVtFWHUSQcBwU.Length);
						return;
						IL_006f:
						num = -1893573434;
						continue;
					}
					break;
				}
			}
		}

		internal void QGnlfJFIcSdsZXoMSduzNsPYDBn()
		{
			uint num = QAAOqMPpBsGMKCvNOVFInGAtEBTGA - drbpfLQNgQKgrZbRpGWCACjtUjZdA;
			while (true)
			{
				int num2 = -572382270;
				while (true)
				{
					uint num3;
					int num4;
					int num5;
					switch ((num3 = (uint)num2 ^ 0xB3401D11u) % 6)
					{
					case 0u:
						break;
					case 3u:
						\u206d\u206c\u202e\u202c\u200c\u202d\u200f\u202b\u206c\u202e\u206b\u200f\u206f\u202c\u202b\u206d\u206d\u206a\u200d\u200e\u200d\u202e\u202a\u206e\u202e\u200e\u206b\u200e\u200d\u202a\u206d\u206d\u206b\u202c\u200f\u206a\u200c\u206a\u200c\u200f\u202e(gClEqdmaKQsJOrrVpoULuDZxjBPx, nYkGqNwLPSyjxdRHVtFWHUSQcBwU, (int)drbpfLQNgQKgrZbRpGWCACjtUjZdA, (int)num);
						num2 = -562996821;
						continue;
					case 5u:
						goto IL_0072;
					case 4u:
						if (QAAOqMPpBsGMKCvNOVFInGAtEBTGA < ZZYOIozeYemMwAQVbTtYzCvsZyZD)
						{
							num2 = ((int)num3 * -208953799) ^ 0x1E8C9084;
							continue;
						}
						num4 = -1492666313;
						num5 = num4;
						goto IL_0077;
					default:
						num4 = -873600354;
						num5 = num4;
						goto IL_0077;
					case 2u:
						goto IL_0121;
						IL_009e:
						num2 = -1990315543;
						continue;
						IL_0072:
						num4 = -496898767;
						goto IL_0077;
						IL_0077:
						while (true)
						{
							uint num6;
							switch ((num6 = (uint)num4 ^ 0x91EC81ABu) % 6)
							{
							case 0u:
								break;
							case 3u:
								goto IL_0072;
							default:
								goto IL_009e;
							case 4u:
								QAAOqMPpBsGMKCvNOVFInGAtEBTGA = 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_0121;
							}
							break;
						}
						goto case 3u;
						IL_0121:
						drbpfLQNgQKgrZbRpGWCACjtUjZdA = QAAOqMPpBsGMKCvNOVFInGAtEBTGA;
						return;
					}
					break;
				}
			}
		}

		internal void oaFIwyHXdEqLTBvLDqmXSFVNERKT(uint distance, uint len)
		{
			uint num = QAAOqMPpBsGMKCvNOVFInGAtEBTGA - distance - 1;
			uint num7 = default(uint);
			while (true)
			{
				int num2 = 841816690;
				while (true)
				{
					uint num3;
					int num4;
					int num5;
					int num6;
					switch ((num3 = (uint)num2 ^ 0x4A37430Du) % 5)
					{
					case 0u:
						break;
					case 4u:
						if (QAAOqMPpBsGMKCvNOVFInGAtEBTGA < ZZYOIozeYemMwAQVbTtYzCvsZyZD)
						{
							num2 = 24148151;
							continue;
						}
						num4 = 2023183690;
						num5 = num4;
						goto IL_00bb;
					case 3u:
						return;
					case 2u:
						goto IL_005e;
					default:
						{
							num4 = 1035727572;
							num5 = num4;
							goto IL_00bb;
						}
						IL_00a3:
						num2 = 576576410;
						continue;
						IL_005e:
						num6 = 247355955;
						goto IL_0063;
						IL_00bb:
						num6 = num4 ^ ((int)num7 * -1926236915);
						goto IL_0063;
						IL_0063:
						while (true)
						{
							switch ((num7 = (uint)num6 ^ 0x4AD67631u) % 12)
							{
							case 0u:
								break;
							case 4u:
								goto IL_005e;
							default:
								goto IL_00a3;
							case 10u:
								goto IL_00c6;
							case 5u:
								num += ZZYOIozeYemMwAQVbTtYzCvsZyZD;
								num6 = (int)((num7 * 1623852844) ^ 0x6CD4ED6B);
								continue;
							case 8u:
								goto IL_00f6;
							case 2u:
							{
								int num8;
								int num9;
								if (num >= ZZYOIozeYemMwAQVbTtYzCvsZyZD)
								{
									num8 = -1517535138;
									num9 = num8;
								}
								else
								{
									num8 = -8565671;
									num9 = num8;
								}
								num6 = num8 ^ (int)(num7 * 1984810169);
								continue;
							}
							case 9u:
								nYkGqNwLPSyjxdRHVtFWHUSQcBwU[QAAOqMPpBsGMKCvNOVFInGAtEBTGA++] = nYkGqNwLPSyjxdRHVtFWHUSQcBwU[num++];
								num6 = 363834929;
								continue;
							case 11u:
								QGnlfJFIcSdsZXoMSduzNsPYDBn();
								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_00f6:
							int num10;
							if (num < ZZYOIozeYemMwAQVbTtYzCvsZyZD)
							{
								num6 = 732809692;
								num10 = num6;
							}
							else
							{
								num6 = 1880309994;
								num10 = num6;
							}
							continue;
							IL_00c6:
							int num11;
							if (len != 0)
							{
								num6 = 87011941;
								num11 = num6;
							}
							else
							{
								num6 = 1905214902;
								num11 = num6;
							}
						}
						goto case 4u;
					}
					break;
				}
			}
		}

		internal void wnlgaxgmBMERvZMYeIhGnzftjEvfA(byte b)
		{
			nYkGqNwLPSyjxdRHVtFWHUSQcBwU[QAAOqMPpBsGMKCvNOVFInGAtEBTGA++] = b;
			uint num3 = default(uint);
			while (true)
			{
				int num = -1459028316;
				while (true)
				{
					uint num2;
					int num4;
					switch ((num2 = (uint)num ^ 0xAEF9F8F1u) % 6)
					{
					case 2u:
						break;
					case 5u:
						QGnlfJFIcSdsZXoMSduzNsPYDBn();
						num = -699192434;
						continue;
					case 4u:
						return;
					case 0u:
						goto IL_0065;
					case 3u:
						if (QAAOqMPpBsGMKCvNOVFInGAtEBTGA >= ZZYOIozeYemMwAQVbTtYzCvsZyZD)
						{
							num = ((int)num2 * -1547604245) ^ 0x1DEEDF4A;
							continue;
						}
						return;
					default:
						{
							num4 = (int)(num3 * 2130185027) ^ -1725249098;
							goto IL_006a;
						}
						IL_0065:
						num4 = -2042966789;
						goto IL_006a;
						IL_006a:
						switch ((num3 = (uint)num4 ^ 0xAD8570BAu) % 3)
						{
						case 1u:
							break;
						case 2u:
							goto IL_0065;
						default:
							goto IL_0085;
						case 0u:
							return;
						}
						goto case 5u;
						IL_0085:
						num = -1620458169;
						continue;
					}
					break;
				}
			}
		}

		internal byte KGaJVRWZwcXTbOTQYxKfFZuiaWpb(uint distance)
		{
			uint num = QAAOqMPpBsGMKCvNOVFInGAtEBTGA - distance - 1;
			if (num >= ZZYOIozeYemMwAQVbTtYzCvsZyZD)
			{
				uint num5 = default(uint);
				while (true)
				{
					int num2 = -1194366614;
					while (true)
					{
						uint num3;
						int num4;
						switch ((num3 = (uint)num2 ^ 0xA70081B0u) % 4)
						{
						case 0u:
							break;
						case 2u:
							num4 = 1089708008;
							goto IL_003f;
						default:
							goto IL_0072;
						case 3u:
							goto end_IL_0014;
							IL_003f:
							switch ((num5 = (uint)num4 ^ 0x2403AA1Du) % 3)
							{
							case 0u:
								break;
							default:
								goto IL_005a;
							case 2u:
								goto IL_0072;
							case 1u:
								goto end_IL_0014;
							}
							goto case 2u;
							IL_0072:
							num += ZZYOIozeYemMwAQVbTtYzCvsZyZD;
							num4 = (int)(num5 * 356973397) ^ -696536765;
							goto IL_003f;
							IL_005a:
							num2 = -1692940009;
							continue;
						}
						break;
					}
					continue;
					end_IL_0014:
					break;
				}
			}
			return nYkGqNwLPSyjxdRHVtFWHUSQcBwU[num];
		}

		internal KwIeSkJCejWJmyvqtondWHvbDmVjA()
		{
		}

		static void \u200f\u200c\u200d\u202d\u206c\u200c\u202c\u206a\u206b\u206c\u206f\u200e\u206f\u202e\u202a\u200c\u206f\u200c\u202a\u206a\u200c\u200f\u202c\u202c\u206b\u202a\u202e\u206c\u202a\u202e\u200f\u206b\u206d\u206d\u202c\u206b\u202d\u200d\u202d\u202b\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 \u206d\u206c\u202e\u202c\u200c\u202d\u200f\u202b\u206c\u202e\u206b\u200f\u206f\u202c\u202b\u206d\u206d\u206a\u200d\u200e\u200d\u202e\u202a\u206e\u202e\u200e\u206b\u200e\u200d\u202a\u206d\u206d\u206b\u202c\u200f\u206a\u200c\u206a\u200c\u200f\u202e(Stream P_0, byte[] P_1, int P_2, int P_3)
		{
			P_0.Write(P_1, P_2, P_3);
		}
	}

	internal struct FUMHfuUNsUFMAAIQJeHUERxiSgSRA
	{
		internal uint tYPsdjYTacHBoDmpWbariofbrFHZA;

		internal void SjaxCXifZGBeOpBKmaNjfUHLkcKjA()
		{
			tYPsdjYTacHBoDmpWbariofbrFHZA = 0u;
		}

		internal void zVWAZmXBupXSleJZiHvMSyjYwYZj()
		{
			if (tYPsdjYTacHBoDmpWbariofbrFHZA < 4)
			{
				goto IL_000c;
			}
			goto IL_00c1;
			IL_00c1:
			int num;
			int num2;
			if (tYPsdjYTacHBoDmpWbariofbrFHZA >= 10)
			{
				num = -2004618538;
				num2 = num;
			}
			else
			{
				num = -98479423;
				num2 = num;
			}
			goto IL_0061;
			IL_00a2:
			uint num3 = default(uint);
			num = ((int)num3 * -1320511048) ^ 0x5D4C921E;
			goto IL_0061;
			IL_005c:
			num = -1493921560;
			goto IL_0061;
			IL_0061:
			while (true)
			{
				switch ((num3 = (uint)num ^ 0xE33DCDAEu) % 6)
				{
				case 4u:
					break;
				case 3u:
					goto IL_005c;
				default:
					goto IL_0088;
				case 1u:
					return;
				case 2u:
					goto IL_00c1;
				case 5u:
					tYPsdjYTacHBoDmpWbariofbrFHZA -= 3u;
					num = (int)(num3 * 695673666) ^ -2034490697;
					continue;
				case 0u:
					goto IL_00fc;
				}
				break;
			}
			goto IL_003a;
			IL_0088:
			int num4 = -314642595;
			goto IL_0011;
			IL_00fc:
			tYPsdjYTacHBoDmpWbariofbrFHZA -= 6u;
			return;
			IL_003a:
			tYPsdjYTacHBoDmpWbariofbrFHZA = 0u;
			num4 = -2057849401;
			goto IL_0011;
			IL_0011:
			uint num5;
			switch ((num5 = (uint)num4 ^ 0x97CE3850u) % 6)
			{
			case 2u:
				break;
			case 4u:
				goto IL_003a;
			case 3u:
				goto IL_005c;
			case 1u:
				return;
			default:
				goto IL_00a2;
			case 5u:
				goto IL_00fc;
			}
			goto IL_000c;
			IL_000c:
			num4 = -735657647;
			goto IL_0011;
		}

		internal void RGPOUysnKyFAChsMdrdFTRYPVBLO()
		{
			tYPsdjYTacHBoDmpWbariofbrFHZA = ((tYPsdjYTacHBoDmpWbariofbrFHZA < 7) ? 7u : 10u);
		}

		internal void vSAkMpggDpyvEOAuMSzZjxcHShlO()
		{
			tYPsdjYTacHBoDmpWbariofbrFHZA = ((tYPsdjYTacHBoDmpWbariofbrFHZA < 7) ? 8u : 11u);
		}

		internal void fdqxLuEjZDYWGkcJHAfaLaCUavIt()
		{
			tYPsdjYTacHBoDmpWbariofbrFHZA = ((tYPsdjYTacHBoDmpWbariofbrFHZA < 7) ? 9u : 11u);
		}

		internal bool uLytPbRWvbAVQPIBwufAgUjzPgvX()
		{
			return tYPsdjYTacHBoDmpWbariofbrFHZA < 7;
		}
	}

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

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

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

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

		internal uint \u200b\u206b\u200b\u200d\u200d\u206f\u202d\u202d\u202d\u206c\u200e\u200e\u200d\u200d\u206d\u202b\u202b\u206f\u202d\u200b\u202c\u202d\u206b\u202c\u206f\u206a\u202b\u206d\u206c\u202d\u206c\u206d\u202e\u202d\u200f\u206f\u206c\u206d\u202c\u200c\u202e(\u202d\u206b\u206c\u202b\u202e\u206e\u206b\u202e\u200b\u200e\u200c\u206a\u200e\u206e\u202a\u206f\u202b\u200d\u206c\u206f\u200c\u206e\u206c\u200f\u206a\u202d\u200f\u206a\u200f\u200f\u202a\u202a\u200b\u200d\u202a\u202a\u206c\u200e\u206a\u202d\u202e rangeDecoder)
		{
			uint num = (rangeDecoder.\u200e\u206e\u206e\u202d\u202e\u202c\u200e\u200b\u200e\u202e\u202e\u202b\u202a\u206b\u202e\u206c\u202e\u200c\u200d\u202e\u202e\u206b\u206e\u202c\u200e\u206c\u200b\u200d\u206e\u206d\u202b\u206a\u202b\u200b\u206a\u202e\u200f\u206d\u200f\u202a\u202e >> 11) * \u206e\u200c\u206d\u200e\u202e\u200c\u202b\u206e\u206a\u206e\u202b\u202d\u202b\u202d\u206c\u206e\u202c\u206c\u200e\u206c\u206a\u200b\u200d\u200e\u202e\u200c\u200b\u200e\u202e\u206b\u200d\u200b\u200c\u200e\u200e\u202d\u206a\u200f\u200c\u202a\u202e;
			if (rangeDecoder.\u200d\u200f\u206b\u202c\u200b\u202d\u206a\u202e\u202c\u206e\u200f\u200b\u202b\u202d\u206e\u202d\u202d\u202a\u206a\u200c\u206b\u200e\u202d\u200e\u206a\u202a\u202b\u200f\u206f\u202a\u200c\u200c\u202e\u206c\u206b\u200b\u200d\u206a\u200e\u206b\u202e < num)
			{
				goto IL_001a;
			}
			goto IL_007f;
			IL_007f:
			rangeDecoder.\u200e\u206e\u206e\u202d\u202e\u202c\u200e\u200b\u200e\u202e\u202e\u202b\u202a\u206b\u202e\u206c\u202e\u200c\u200d\u202e\u202e\u206b\u206e\u202c\u200e\u206c\u200b\u200d\u206e\u206d\u202b\u206a\u202b\u200b\u206a\u202e\u200f\u206d\u200f\u202a\u202e -= num;
			rangeDecoder.\u200d\u200f\u206b\u202c\u200b\u202d\u206a\u202e\u202c\u206e\u200f\u200b\u202b\u202d\u206e\u202d\u202d\u202a\u206a\u200c\u206b\u200e\u202d\u200e\u206a\u202a\u202b\u200f\u206f\u202a\u200c\u200c\u202e\u206c\u206b\u200b\u200d\u206a\u200e\u206b\u202e -= num;
			\u206e\u200c\u206d\u200e\u202e\u200c\u202b\u206e\u206a\u206e\u202b\u202d\u202b\u202d\u206c\u206e\u202c\u206c\u200e\u206c\u206a\u200b\u200d\u200e\u202e\u200c\u200b\u200e\u202e\u206b\u200d\u200b\u200c\u200e\u200e\u202d\u206a\u200f\u200c\u202a\u202e -= \u206e\u200c\u206d\u200e\u202e\u200c\u202b\u206e\u206a\u206e\u202b\u202d\u202b\u202d\u206c\u206e\u202c\u206c\u200e\u206c\u206a\u200b\u200d\u200e\u202e\u200c\u200b\u200e\u202e\u206b\u200d\u200b\u200c\u200e\u200e\u202d\u206a\u200f\u200c\u202a\u202e >> 5;
			int num2;
			int num3;
			if (rangeDecoder.\u200e\u206e\u206e\u202d\u202e\u202c\u200e\u200b\u200e\u202e\u202e\u202b\u202a\u206b\u202e\u206c\u202e\u200c\u200d\u202e\u202e\u206b\u206e\u202c\u200e\u206c\u200b\u200d\u206e\u206d\u202b\u206a\u202b\u200b\u206a\u202e\u200f\u206d\u200f\u202a\u202e < 16777216)
			{
				num2 = 717366833;
				num3 = num2;
			}
			else
			{
				num2 = 1134471395;
				num3 = num2;
			}
			goto IL_001f;
			IL_001f:
			while (true)
			{
				uint num4;
				switch ((num4 = (uint)num2 ^ 0x52932D61u) % 11)
				{
				case 6u:
					break;
				case 10u:
					rangeDecoder.\u200e\u206e\u206e\u202d\u202e\u202c\u200e\u200b\u200e\u202e\u202e\u202b\u202a\u206b\u202e\u206c\u202e\u200c\u200d\u202e\u202e\u206b\u206e\u202c\u200e\u206c\u200b\u200d\u206e\u206d\u202b\u206a\u202b\u200b\u206a\u202e\u200f\u206d\u200f\u202a\u202e = num;
					num2 = ((int)num4 * -1041499154) ^ -1487141623;
					continue;
				case 2u:
					return 0u;
				case 8u:
					goto IL_007f;
				case 1u:
					rangeDecoder.\u200d\u200f\u206b\u202c\u200b\u202d\u206a\u202e\u202c\u206e\u200f\u200b\u202b\u202d\u206e\u202d\u202d\u202a\u206a\u200c\u206b\u200e\u202d\u200e\u206a\u202a\u202b\u200f\u206f\u202a\u200c\u200c\u202e\u206c\u206b\u200b\u200d\u206a\u200e\u206b\u202e = (rangeDecoder.\u200d\u200f\u206b\u202c\u200b\u202d\u206a\u202e\u202c\u206e\u200f\u200b\u202b\u202d\u206e\u202d\u202d\u202a\u206a\u200c\u206b\u200e\u202d\u200e\u206a\u202a\u202b\u200f\u206f\u202a\u200c\u200c\u202e\u206c\u206b\u200b\u200d\u206a\u200e\u206b\u202e << 8) | (byte)rangeDecoder.\u206f\u200e\u202d\u202c\u206d\u202e\u202c\u206a\u200c\u206e\u206c\u200c\u206e\u200f\u206b\u206e\u206d\u206c\u202d\u200c\u202d\u206b\u200e\u206b\u202e\u200e\u202c\u200c\u206d\u200e\u206e\u206a\u206c\u202b\u202a\u202b\u200d\u206f\u206f\u202e.ReadByte();
					num2 = ((int)num4 * -1708117257) ^ 0x3253CCD6;
					continue;
				case 9u:
				{
					int num5;
					int num6;
					if (rangeDecoder.\u200e\u206e\u206e\u202d\u202e\u202c\u200e\u200b\u200e\u202e\u202e\u202b\u202a\u206b\u202e\u206c\u202e\u200c\u200d\u202e\u202e\u206b\u206e\u202c\u200e\u206c\u200b\u200d\u206e\u206d\u202b\u206a\u202b\u200b\u206a\u202e\u200f\u206d\u200f\u202a\u202e >= 16777216)
					{
						num5 = 255036793;
						num6 = num5;
					}
					else
					{
						num5 = 1637110243;
						num6 = num5;
					}
					num2 = num5 ^ ((int)num4 * -1457057707);
					continue;
				}
				case 7u:
					rangeDecoder.\u200e\u206e\u206e\u202d\u202e\u202c\u200e\u200b\u200e\u202e\u202e\u202b\u202a\u206b\u202e\u206c\u202e\u200c\u200d\u202e\u202e\u206b\u206e\u202c\u200e\u206c\u200b\u200d\u206e\u206d\u202b\u206a\u202b\u200b\u206a\u202e\u200f\u206d\u200f\u202a\u202e <<= 8;
					num2 = (int)((num4 * 2085168349) ^ 0x3FE58034);
					continue;
				case 0u:
					rangeDecoder.\u200d\u200f\u206b\u202c\u200b\u202d\u206a\u202e\u202c\u206e\u200f\u200b\u202b\u202d\u206e\u202d\u202d\u202a\u206a\u200c\u206b\u200e\u202d\u200e\u206a\u202a\u202b\u200f\u206f\u202a\u200c\u200c\u202e\u206c\u206b\u200b\u200d\u206a\u200e\u206b\u202e = (rangeDecoder.\u200d\u200f\u206b\u202c\u200b\u202d\u206a\u202e\u202c\u206e\u200f\u200b\u202b\u202d\u206e\u202d\u202d\u202a\u206a\u200c\u206b\u200e\u202d\u200e\u206a\u202a\u202b\u200f\u206f\u202a\u200c\u200c\u202e\u206c\u206b\u200b\u200d\u206a\u200e\u206b\u202e << 8) | (byte)rangeDecoder.\u206f\u200e\u202d\u202c\u206d\u202e\u202c\u206a\u200c\u206e\u206c\u200c\u206e\u200f\u206b\u206e\u206d\u206c\u202d\u200c\u202d\u206b\u200e\u206b\u202e\u200e\u202c\u200c\u206d\u200e\u206e\u206a\u206c\u202b\u202a\u202b\u200d\u206f\u206f\u202e.ReadByte();
					num2 = ((int)num4 * -528292810) ^ 0x15454BDD;
					continue;
				case 3u:
					rangeDecoder.\u200e\u206e\u206e\u202d\u202e\u202c\u200e\u200b\u200e\u202e\u202e\u202b\u202a\u206b\u202e\u206c\u202e\u200c\u200d\u202e\u202e\u206b\u206e\u202c\u200e\u206c\u200b\u200d\u206e\u206d\u202b\u206a\u202b\u200b\u206a\u202e\u200f\u206d\u200f\u202a\u202e <<= 8;
					num2 = ((int)num4 * -478348213) ^ 0x6FD7CC6E;
					continue;
				case 4u:
					\u206e\u200c\u206d\u200e\u202e\u200c\u202b\u206e\u206a\u206e\u202b\u202d\u202b\u202d\u206c\u206e\u202c\u206c\u200e\u206c\u206a\u200b\u200d\u200e\u202e\u200c\u200b\u200e\u202e\u206b\u200d\u200b\u200c\u200e\u200e\u202d\u206a\u200f\u200c\u202a\u202e += 2048 - \u206e\u200c\u206d\u200e\u202e\u200c\u202b\u206e\u206a\u206e\u202b\u202d\u202b\u202d\u206c\u206e\u202c\u206c\u200e\u206c\u206a\u200b\u200d\u200e\u202e\u200c\u200b\u200e\u202e\u206b\u200d\u200b\u200c\u200e\u200e\u202d\u206a\u200f\u200c\u202a\u202e >> 5;
					num2 = (int)((num4 * 1767524190) ^ 0x153336FE);
					continue;
				default:
					return 1u;
				}
				break;
			}
			goto IL_001a;
			IL_001a:
			num2 = 1644727064;
			goto IL_001f;
		}
	}

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

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

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

		internal void \u200c\u200c\u206a\u202b\u206d\u206a\u206c\u206b\u200d\u206a\u206e\u206d\u206a\u200b\u200c\u202a\u206f\u202e\u206c\u206b\u206a\u202a\u206d\u206b\u202a\u206b\u206e\u200f\u200c\u206d\u200f\u200c\u202d\u200d\u202c\u206e\u206d\u202c\u200e\u200d\u202e()
		{
			uint num = 1u;
			while (true)
			{
				int num2 = 349334259;
				while (true)
				{
					uint num3;
					switch ((num3 = (uint)num2 ^ 0x4C484CF3u) % 6)
					{
					case 5u:
						break;
					default:
						return;
					case 4u:
						num2 = (int)(num3 * 598581004) ^ -1660235506;
						continue;
					case 0u:
						\u200c\u200e\u202b\u206e\u200c\u200e\u206c\u202b\u206d\u200e\u202e\u200b\u202e\u200e\u202a\u206f\u206f\u202e\u200b\u202e\u202b\u206d\u206c\u202a\u202c\u202a\u200d\u200c\u202b\u200b\u200e\u200b\u202d\u206d\u206b\u200b\u206c\u200b\u206d\u200e\u202e[num].\u206b\u206f\u200d\u202c\u206c\u200f\u202e\u206d\u202d\u200e\u202b\u202c\u200c\u206c\u206d\u206e\u206a\u202b\u200c\u202b\u200d\u206c\u200f\u202e\u200c\u200d\u200e\u206a\u206a\u200d\u202a\u206a\u200d\u200b\u202e\u206b\u200e\u200f\u206e\u206f\u202e();
						num2 = 133845054;
						continue;
					case 3u:
						num++;
						num2 = ((int)num3 * -1597836364) ^ 0x3235CE2A;
						continue;
					case 1u:
					{
						int num4;
						if (num < 1 << \u202b\u200b\u202c\u202e\u202a\u202e\u206b\u200c\u206a\u202c\u206c\u206b\u202c\u200f\u206a\u200c\u206c\u202d\u206e\u202b\u206d\u202b\u206b\u200d\u202c\u200b\u206f\u200e\u206e\u206b\u206c\u202b\u206e\u200c\u206e\u202b\u206d\u202d\u206d\u202b\u202e)
						{
							num2 = 817561955;
							num4 = num2;
						}
						else
						{
							num2 = 2070375563;
							num4 = num2;
						}
						continue;
					}
					case 2u:
						return;
					}
					break;
				}
			}
		}

		internal uint \u202c\u202a\u202c\u206c\u202d\u200b\u206e\u202a\u200d\u206c\u206a\u206a\u200e\u200f\u202c\u200d\u200c\u206f\u202b\u202e\u206f\u200e\u202b\u200b\u206a\u200d\u206d\u200c\u206a\u202a\u200d\u206e\u206e\u206f\u200c\u206d\u206d\u202a\u200f\u206a\u202e(\u202d\u206b\u206c\u202b\u202e\u206e\u206b\u202e\u200b\u200e\u200c\u206a\u200e\u206e\u202a\u206f\u202b\u200d\u206c\u206f\u200c\u206e\u206c\u200f\u206a\u202d\u200f\u206a\u200f\u200f\u202a\u202a\u200b\u200d\u202a\u202a\u206c\u200e\u206a\u202d\u202e rangeDecoder)
		{
			uint num = 1u;
			int num2 = \u202b\u200b\u202c\u202e\u202a\u202e\u206b\u200c\u206a\u202c\u206c\u206b\u202c\u200f\u206a\u200c\u206c\u202d\u206e\u202b\u206d\u202b\u206b\u200d\u202c\u200b\u206f\u200e\u206e\u206b\u206c\u202b\u206e\u200c\u206e\u202b\u206d\u202d\u206d\u202b\u202e;
			while (true)
			{
				int num3 = 1139041069;
				while (true)
				{
					uint num4;
					switch ((num4 = (uint)num3 ^ 0x1ED7741Bu) % 5)
					{
					case 0u:
						break;
					case 1u:
						num3 = (int)(num4 * 1704492776) ^ -1283574545;
						continue;
					case 2u:
						num = (num << 1) + \u200c\u200e\u202b\u206e\u200c\u200e\u206c\u202b\u206d\u200e\u202e\u200b\u202e\u200e\u202a\u206f\u206f\u202e\u200b\u202e\u202b\u206d\u206c\u202a\u202c\u202a\u200d\u200c\u202b\u200b\u200e\u200b\u202d\u206d\u206b\u200b\u206c\u200b\u206d\u200e\u202e[num].\u200b\u206b\u200b\u200d\u200d\u206f\u202d\u202d\u202d\u206c\u200e\u200e\u200d\u200d\u206d\u202b\u202b\u206f\u202d\u200b\u202c\u202d\u206b\u202c\u206f\u206a\u202b\u206d\u206c\u202d\u206c\u206d\u202e\u202d\u200f\u206f\u206c\u206d\u202c\u200c\u202e(rangeDecoder);
						num2--;
						num3 = 45590559;
						continue;
					case 3u:
					{
						int num5;
						if (num2 > 0)
						{
							num3 = 2047802386;
							num5 = num3;
						}
						else
						{
							num3 = 660106315;
							num5 = num3;
						}
						continue;
					}
					default:
						return num - (uint)(1 << \u202b\u200b\u202c\u202e\u202a\u202e\u206b\u200c\u206a\u202c\u206c\u206b\u202c\u200f\u206a\u200c\u206c\u202d\u206e\u202b\u206d\u202b\u206b\u200d\u202c\u200b\u206f\u200e\u206e\u206b\u206c\u202b\u206e\u200c\u206e\u202b\u206d\u202d\u206d\u202b\u202e);
					}
					break;
				}
			}
		}

		internal uint \u200d\u202e\u202a\u206f\u206c\u200f\u202c\u200b\u206a\u206d\u206c\u202c\u206f\u206a\u206d\u206d\u202c\u206a\u200c\u200f\u202c\u200e\u206b\u206b\u202b\u206e\u202e\u200c\u200e\u202c\u202d\u202b\u200d\u206e\u200f\u200f\u206d\u206e\u206d\u202e\u202e(\u202d\u206b\u206c\u202b\u202e\u206e\u206b\u202e\u200b\u200e\u200c\u206a\u200e\u206e\u202a\u206f\u202b\u200d\u206c\u206f\u200c\u206e\u206c\u200f\u206a\u202d\u200f\u206a\u200f\u200f\u202a\u202a\u200b\u200d\u202a\u202a\u206c\u200e\u206a\u202d\u202e rangeDecoder)
		{
			uint num = 1u;
			uint num2 = 0u;
			int num3 = 0;
			while (true)
			{
				int num4;
				int num5;
				if (num3 < \u202b\u200b\u202c\u202e\u202a\u202e\u206b\u200c\u206a\u202c\u206c\u206b\u202c\u200f\u206a\u200c\u206c\u202d\u206e\u202b\u206d\u202b\u206b\u200d\u202c\u200b\u206f\u200e\u206e\u206b\u206c\u202b\u206e\u200c\u206e\u202b\u206d\u202d\u206d\u202b\u202e)
				{
					num4 = 1406309975;
					num5 = num4;
				}
				else
				{
					num4 = 218593794;
					num5 = num4;
				}
				while (true)
				{
					uint num6;
					switch ((num6 = (uint)num4 ^ 0x58A23142u) % 4)
					{
					case 2u:
						num4 = 1406309975;
						continue;
					case 1u:
					{
						uint num7 = \u200c\u200e\u202b\u206e\u200c\u200e\u206c\u202b\u206d\u200e\u202e\u200b\u202e\u200e\u202a\u206f\u206f\u202e\u200b\u202e\u202b\u206d\u206c\u202a\u202c\u202a\u200d\u200c\u202b\u200b\u200e\u200b\u202d\u206d\u206b\u200b\u206c\u200b\u206d\u200e\u202e[num].\u200b\u206b\u200b\u200d\u200d\u206f\u202d\u202d\u202d\u206c\u200e\u200e\u200d\u200d\u206d\u202b\u202b\u206f\u202d\u200b\u202c\u202d\u206b\u202c\u206f\u206a\u202b\u206d\u206c\u202d\u206c\u206d\u202e\u202d\u200f\u206f\u206c\u206d\u202c\u200c\u202e(rangeDecoder);
						num <<= 1;
						num += num7;
						num2 |= num7 << num3;
						num3++;
						num4 = 1081040669;
						continue;
					}
					case 3u:
						break;
					default:
						return num2;
					}
					break;
				}
			}
		}

		internal static uint \u206c\u200f\u200c\u206c\u202d\u206c\u206f\u206f\u206c\u202b\u200b\u206f\u206a\u200c\u200c\u202e\u202d\u206f\u206a\u202c\u206b\u200f\u200f\u206d\u200b\u206e\u206f\u206c\u206f\u206f\u202c\u202c\u200b\u206d\u206d\u206d\u200d\u200c\u206d\u202e(\u206e\u206a\u206b\u206f\u200c\u202b\u206c\u200f\u200c\u206e\u206d\u200c\u200b\u202b\u202e\u206c\u200c\u200e\u206b\u202c\u206a\u202d\u202d\u206d\u206a\u206f\u206f\u202e\u200d\u202a\u202c\u200e\u206d\u200f\u202a\u206c\u206c\u200e\u206a\u202b\u202e[] Models, uint startIndex, \u202d\u206b\u206c\u202b\u202e\u206e\u206b\u202e\u200b\u200e\u200c\u206a\u200e\u206e\u202a\u206f\u202b\u200d\u206c\u206f\u200c\u206e\u206c\u200f\u206a\u202d\u200f\u206a\u200f\u200f\u202a\u202a\u200b\u200d\u202a\u202a\u206c\u200e\u206a\u202d\u202e rangeDecoder, int NumBitLevels)
		{
			uint num = 1u;
			int num6 = default(int);
			uint num5 = default(uint);
			uint num4 = default(uint);
			while (true)
			{
				int num2 = -1494026647;
				while (true)
				{
					uint num3;
					switch ((num3 = (uint)num2 ^ 0xDE463F41u) % 10)
					{
					case 5u:
						break;
					case 0u:
						num2 = ((int)num3 * -1399016104) ^ 0x31494C4F;
						continue;
					case 1u:
						num6 = 0;
						num2 = ((int)num3 * -1998124164) ^ -1068754447;
						continue;
					case 2u:
						num5 = Models[startIndex + num].\u200b\u206b\u200b\u200d\u200d\u206f\u202d\u202d\u202d\u206c\u200e\u200e\u200d\u200d\u206d\u202b\u202b\u206f\u202d\u200b\u202c\u202d\u206b\u202c\u206f\u206a\u202b\u206d\u206c\u202d\u206c\u206d\u202e\u202d\u200f\u206f\u206c\u206d\u202c\u200c\u202e(rangeDecoder);
						num2 = -1810513738;
						continue;
					case 4u:
					{
						int num7;
						if (num6 < NumBitLevels)
						{
							num2 = -81262347;
							num7 = num2;
						}
						else
						{
							num2 = -1199870480;
							num7 = num2;
						}
						continue;
					}
					case 9u:
						num <<= 1;
						num += num5;
						num2 = (int)(num3 * 1417003088) ^ -1363650735;
						continue;
					case 6u:
						num4 = 0u;
						num2 = ((int)num3 * -1656586507) ^ 0xDCA6D8;
						continue;
					case 3u:
						num6++;
						num2 = ((int)num3 * -1757521143) ^ -608311006;
						continue;
					case 8u:
						num4 |= num5 << num6;
						num2 = (int)((num3 * 1114405439) ^ 0x55106484);
						continue;
					default:
						return num4;
					}
					break;
				}
			}
		}
	}

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

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

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

		internal void \u200d\u206c\u200c\u200c\u206d\u206e\u206d\u200d\u200f\u206a\u202d\u200c\u206f\u200c\u200d\u202b\u202c\u202c\u202a\u206a\u200d\u202d\u206d\u206c\u202d\u202b\u202b\u202b\u202a\u200b\u200b\u206b\u202a\u200b\u200c\u206f\u202b\u200e\u206b\u200c\u202e(Stream stream)
		{
			\u206f\u200e\u202d\u202c\u206d\u202e\u202c\u206a\u200c\u206e\u206c\u200c\u206e\u200f\u206b\u206e\u206d\u206c\u202d\u200c\u202d\u206b\u200e\u206b\u202e\u200e\u202c\u200c\u206d\u200e\u206e\u206a\u206c\u202b\u202a\u202b\u200d\u206f\u206f\u202e = stream;
			\u200d\u200f\u206b\u202c\u200b\u202d\u206a\u202e\u202c\u206e\u200f\u200b\u202b\u202d\u206e\u202d\u202d\u202a\u206a\u200c\u206b\u200e\u202d\u200e\u206a\u202a\u202b\u200f\u206f\u202a\u200c\u200c\u202e\u206c\u206b\u200b\u200d\u206a\u200e\u206b\u202e = 0u;
			\u200e\u206e\u206e\u202d\u202e\u202c\u200e\u200b\u200e\u202e\u202e\u202b\u202a\u206b\u202e\u206c\u202e\u200c\u200d\u202e\u202e\u206b\u206e\u202c\u200e\u206c\u200b\u200d\u206e\u206d\u202b\u206a\u202b\u200b\u206a\u202e\u200f\u206d\u200f\u202a\u202e = uint.MaxValue;
			int num3 = default(int);
			while (true)
			{
				int num = 312670271;
				while (true)
				{
					uint num2;
					switch ((num2 = (uint)num ^ 0x6CF36198u) % 6)
					{
					case 4u:
						break;
					default:
						return;
					case 0u:
					{
						int num4;
						if (num3 < 5)
						{
							num = 572886167;
							num4 = num;
						}
						else
						{
							num = 505473454;
							num4 = num;
						}
						continue;
					}
					case 3u:
						num3++;
						num = (int)(num2 * 111118385) ^ -2025501807;
						continue;
					case 1u:
						\u200d\u200f\u206b\u202c\u200b\u202d\u206a\u202e\u202c\u206e\u200f\u200b\u202b\u202d\u206e\u202d\u202d\u202a\u206a\u200c\u206b\u200e\u202d\u200e\u206a\u202a\u202b\u200f\u206f\u202a\u200c\u200c\u202e\u206c\u206b\u200b\u200d\u206a\u200e\u206b\u202e = (\u200d\u200f\u206b\u202c\u200b\u202d\u206a\u202e\u202c\u206e\u200f\u200b\u202b\u202d\u206e\u202d\u202d\u202a\u206a\u200c\u206b\u200e\u202d\u200e\u206a\u202a\u202b\u200f\u206f\u202a\u200c\u200c\u202e\u206c\u206b\u200b\u200d\u206a\u200e\u206b\u202e << 8) | (byte)\u206f\u200e\u202d\u202c\u206d\u202e\u202c\u206a\u200c\u206e\u206c\u200c\u206e\u200f\u206b\u206e\u206d\u206c\u202d\u200c\u202d\u206b\u200e\u206b\u202e\u200e\u202c\u200c\u206d\u200e\u206e\u206a\u206c\u202b\u202a\u202b\u200d\u206f\u206f\u202e.ReadByte();
						num = 1747333503;
						continue;
					case 5u:
						num3 = 0;
						num = ((int)num2 * -1855291166) ^ -384935224;
						continue;
					case 2u:
						return;
					}
					break;
				}
			}
		}

		internal void \u200d\u202b\u206d\u206e\u202c\u200f\u200e\u206d\u200d\u200b\u206e\u206e\u206e\u200c\u202c\u200d\u206b\u