Decompiled source of CorpseCostumes v1.0.1

corpseCostumes.dll

Decompiled 11 months ago
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Reflection;
using System.Reflection.Emit;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using System.Runtime.Versioning;
using System.Security;
using System.Security.Permissions;
using BepInEx;
using BepInEx.Logging;
using HarmonyLib;

[assembly: CompilationRelaxations(8)]
[assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)]
[assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default | DebuggableAttribute.DebuggingModes.DisableOptimizations | DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints | DebuggableAttribute.DebuggingModes.EnableEditAndContinue)]
[assembly: AssemblyTitle("FixedCameraPlusPlus")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("FixedCameraPlusPlus")]
[assembly: AssemblyCopyright("Copyright ©  2023")]
[assembly: AssemblyTrademark("")]
[assembly: ComVisible(false)]
[assembly: Guid("664de4af-aa69-4f3a-9e6b-dd07c879adf5")]
[assembly: AssemblyFileVersion("1.0.1.0")]
[assembly: TargetFramework(".NETFramework,Version=v4.5", FrameworkDisplayName = ".NET Framework 4.5")]
[assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)]
[assembly: AssemblyVersion("1.0.1.0")]
[module: UnverifiableCode]
namespace corpseSkins;

[BepInPlugin("us.wallace.plugins.llb.corpseCostumes", "corpseCostumes Plug-In", "1.0.1.0")]
[BepInDependency(/*Could not decode attribute arguments.*/)]
[BepInDependency(/*Could not decode attribute arguments.*/)]
[BepInProcess("LLBlaze.exe")]
public class Plugin : BaseUnityPlugin
{
	public static class PatchUtils
	{
		public static void LogInstructions(IEnumerable<CodeInstruction> instructions, int from = 0, int to = -1)
		{
			int num = 0;
			if (to == -1)
			{
				to = instructions.Count();
			}
			foreach (CodeInstruction instruction in instructions)
			{
				if (num >= from && num <= to)
				{
					Log.LogDebug((object)(num + ": " + (object)instruction));
				}
				num++;
			}
		}

		public static void LogInstruction(CodeInstruction ci)
		{
			ManualLogSource log = Log;
			OpCode opcode = ci.opcode;
			log.LogInfo((object)("OpCode: " + opcode.ToString() + " | Operand: " + ci.operand));
		}
	}

	private class ALDOKEMAOMBMKDAGHDAMMLPatch
	{
		[HarmonyPatch(typeof(ALDOKEMAOMB), "MKDAGHDAMML")]
		[HarmonyPrefix]
		public static bool MKDAGHDAMML_Prefix(ALDOKEMAOMB __instance, ref CharacterVariant __result, int HLKLIAEJPFJ = 1)
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0009: Invalid comparison between Unknown and I4
			//IL_000c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0013: Invalid comparison between Unknown and I4
			//IL_0024: Unknown result type (might be due to invalid IL or missing references)
			//IL_0041: Unknown result type (might be due to invalid IL or missing references)
			//IL_0047: Invalid comparison between Unknown and I4
			//IL_004a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0051: Invalid comparison between Unknown and I4
			//IL_0054: Unknown result type (might be due to invalid IL or missing references)
			//IL_005b: Invalid comparison between Unknown and I4
			//IL_0092: Unknown result type (might be due to invalid IL or missing references)
			//IL_0099: Invalid comparison between Unknown and I4
			//IL_0123: Unknown result type (might be due to invalid IL or missing references)
			//IL_0138: Unknown result type (might be due to invalid IL or missing references)
			//IL_013d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0141: Unknown result type (might be due to invalid IL or missing references)
			//IL_0164: Unknown result type (might be due to invalid IL or missing references)
			//IL_0187: Unknown result type (might be due to invalid IL or missing references)
			//IL_01b7: Unknown result type (might be due to invalid IL or missing references)
			//IL_01c5: Unknown result type (might be due to invalid IL or missing references)
			//IL_01cb: Expected I4, but got Unknown
			if ((int)__instance.JPMBNEEFOJH() == 101 || (int)__instance.JPMBNEEFOJH() == 102)
			{
				__result = (CharacterVariant)0;
			}
			List<CharacterVariant> list = EPCDKLCABNC.LJBIMAPKPME(__instance.JPMBNEEFOJH(), (!__instance.GAFCIHKIGNM) ? __instance.CJFLMDNNMIE : (-1));
			if ((int)__instance.JPMBNEEFOJH() == 7 || (int)__instance.JPMBNEEFOJH() == 11 || (int)__instance.JPMBNEEFOJH() == 10)
			{
				list.Remove((CharacterVariant)13);
				list.Remove((CharacterVariant)14);
				list.Remove((CharacterVariant)15);
				list.Remove((CharacterVariant)16);
			}
			else if ((int)__instance.JPMBNEEFOJH() == 102)
			{
				list.Add((CharacterVariant)8);
				list.Remove((CharacterVariant)1);
				list.Remove((CharacterVariant)2);
				list.Remove((CharacterVariant)3);
				list.Remove((CharacterVariant)4);
				list.Remove((CharacterVariant)5);
				list.Remove((CharacterVariant)6);
				list.Remove((CharacterVariant)7);
				list.Remove((CharacterVariant)16);
				list.Remove((CharacterVariant)13);
				list.Remove((CharacterVariant)14);
				list.Remove((CharacterVariant)15);
				list.Remove((CharacterVariant)16);
			}
			List<CharacterVariant> list2 = new List<CharacterVariant>(4);
			foreach (CharacterVariant item in ALDOKEMAOMB.FNDANEIMMMJ(__instance.CJFLMDNNMIE, __instance.JPMBNEEFOJH()))
			{
				list2.Add(item);
			}
			int num = list.IndexOf(__instance.AIINAIDBHJI);
			int count = list.Count;
			for (int i = 0; i < list.Count; i++)
			{
				num = (num + HLKLIAEJPFJ + count) % count;
				if (!list2.Contains(list[num]))
				{
					break;
				}
			}
			list2.Contains(list[num]);
			__result = (CharacterVariant)(int)list[num];
			return false;
		}
	}

	private class EPCDKLCABNCLJBIMAPKPMEPatch
	{
		[HarmonyPatch(typeof(EPCDKLCABNC), "LJBIMAPKPME")]
		[HarmonyPrefix]
		public static bool LJBIMAPKPME_Prefix(EPCDKLCABNC __instance, ref List<CharacterVariant> __result, Character LALEEFJMMLH, int BPJPDHBLEHN = -1)
		{
			//IL_0009: Unknown result type (might be due to invalid IL or missing references)
			//IL_000b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0010: Unknown result type (might be due to invalid IL or missing references)
			//IL_0012: Unknown result type (might be due to invalid IL or missing references)
			//IL_0038: Unknown result type (might be due to invalid IL or missing references)
			//IL_003a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0017: Unknown result type (might be due to invalid IL or missing references)
			//IL_0018: Unknown result type (might be due to invalid IL or missing references)
			//IL_0058: Unknown result type (might be due to invalid IL or missing references)
			//IL_005b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0060: Unknown result type (might be due to invalid IL or missing references)
			//IL_0061: Unknown result type (might be due to invalid IL or missing references)
			//IL_0064: Unknown result type (might be due to invalid IL or missing references)
			//IL_0069: Unknown result type (might be due to invalid IL or missing references)
			//IL_006a: Unknown result type (might be due to invalid IL or missing references)
			//IL_006b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0032: Unknown result type (might be due to invalid IL or missing references)
			//IL_0035: Unknown result type (might be due to invalid IL or missing references)
			//IL_0036: Unknown result type (might be due to invalid IL or missing references)
			//IL_0028: Unknown result type (might be due to invalid IL or missing references)
			//IL_006e: Unknown result type (might be due to invalid IL or missing references)
			//IL_0076: Unknown result type (might be due to invalid IL or missing references)
			List<CharacterVariant> list = new List<CharacterVariant>(10);
			CharacterVariant val = EPCDKLCABNC.CAOEPINONCN(LALEEFJMMLH, false);
			for (CharacterVariant val2 = (CharacterVariant)0; val2 <= val; val2 = (CharacterVariant)(val2 + 1))
			{
				if (EPCDKLCABNC.KFFJOEAJLEH(LALEEFJMMLH, val2, BPJPDHBLEHN))
				{
					list.Add(val2);
				}
			}
			list.Add((CharacterVariant)13);
			list.Add((CharacterVariant)14);
			DLC val3 = EPCDKLCABNC.LEMKFOAAMKA(LALEEFJMMLH, (CharacterVariant)11);
			DLC val4 = EPCDKLCABNC.LEMKFOAAMKA(LALEEFJMMLH, (CharacterVariant)12);
			if (val3 == val4 && (int)val3 != 0 && CGLLJHHAJAK.GIGAKBJGFDI.EMPDGJDAGKO(val3))
			{
				list.Add((CharacterVariant)15);
			}
			__result = list;
			return false;
		}
	}

	public static ManualLogSource Log { get; private set; }

	private void Awake()
	{
		//IL_0023: Unknown result type (might be due to invalid IL or missing references)
		//IL_0029: Expected O, but got Unknown
		Log = ((BaseUnityPlugin)this).Logger;
		((BaseUnityPlugin)this).Logger.LogDebug((object)"skins your corpses");
		Harmony val = new Harmony("us.wallace.plugins.llb.corpseCostumes");
		val.PatchAll(typeof(ALDOKEMAOMBMKDAGHDAMMLPatch));
		val.PatchAll(typeof(EPCDKLCABNCLJBIMAPKPMEPatch));
		((BaseUnityPlugin)this).Logger.LogDebug((object)"corpseCostumes is loaded");
	}

	private void Start()
	{
	}
}