[工具] 旧版 BIOS Boot Manager 编辑器

终于有时间编写了一个旧版 BIOS Boot Manager 编辑器。在旧版 BIOS Boot Manager 变得太大而无法装入 640kb 的初始内存后,Microsoft 开始压缩它,如果您出于任何原因想修改它,那会很烦人。

压缩并不是最糟糕的事情。一个压缩的 Boot Manager 可以分为 4 个部分 – 16 位加载程序、数据位置结构、PE stub 和压缩的数据。有一些工具可以帮助您重新压缩数据,但它们都无法纠正 PE stub 的 PE 校验和。这意味着即使您重新压缩修改后的 Boot Manager,Windows 安装程序也会拒绝安装它,因为它没有有效的校验和。

这是我的 Boot Manager 编辑器,它允许您提取和替换 16 位加载程序、PE stub 和实际的 Boot Manager 可执行文件,您还可以用它从头开始创建一个压缩的 Boot Manager。

Windows 8 之前的 Boot Manager 使用 LZNT1 压缩,Windows 8 之后的 Boot Manager 使用 Xpress Huffman 压缩。您可以更改压缩格式,但也需要更改 16 位加载程序,因为它是在内存中解压缩 Boot Manager 可执行文件的。

当您保存编辑过的 Boot Manager 时,它会自动为您更正 PE stub 的 PE 校验和。使用此工具,您现在可以轻松地修补 flightsigned Windows 10 版本,以在传统 BIOS 模式下引导 – 修补提取的 bootmgr.exe,与修补 bootmgr.efi 的方法相同,然后使用编辑器将原始可执行文件替换为修补后的可执行文件。

此工具目前仍在 WIP 中,因此如果您遇到错误,请确保将其报告给我。顺便说一句,它只能在 Windows 8+ 上(正确)运行,因为 Windows 7 没有所有所需的 API。