public static void PreloaderMain(string[] args) { var bepinPath = Path.GetDirectoryName(Path.GetDirectoryName(Path.GetFullPath(EnvVars.DOORSTOP_INVOKE_DLL_PATH))); PlatformUtils.SetPlatform(); Paths.SetExecutablePath(EnvVars.DOORSTOP_PROCESS_PATH, bepinPath, EnvVars.DOORSTOP_MANAGED_FOLDER_DIR, EnvVars.DOORSTOP_DLL_SEARCH_DIRS); // Cecil 0.11 requires one to manually set up list of trusted assemblies for assembly resolving AppDomain.CurrentDomain.AddCecilPlatformAssemblies(Paths.ManagedPath); Preloader.IL2CPPUnhollowedPath = Path.Combine(Paths.BepInExRootPath, "unhollowed"); AppDomain.CurrentDomain.AssemblyResolve += LocalResolve; AppDomain.CurrentDomain.AssemblyResolve -= DoorstopEntrypoint.ResolveCurrentDirectory; Preloader.Run(); }