English · Русский
Неофициальная статическая рекомпиляция Heroes of Might and Magic V (2006) вместе с
«Владыками Севера» и «Повелителями Орды»: нативный порт, а не эмулятор.
Играйте в свою копию с GOG на Mac с Apple silicon, iPad и iPhone.
Скачать · Быстрый старт · Управление · Вопросы · Сообщить об ошибке
> [!IMPORTANT] > HommaRe — неофициальный фанатский проект. Он не связан с Ubisoft, Nival или GOG > и не одобрен и не спонсируется ими. > > **Файлы игры не входят в проект и не распространяются.** Чтобы играть, нужна ваша > собственная законно приобретённая копия игры с GOG. Лаунчер скачивает её из вашей > библиотеки GOG.com или устанавливает из офлайн-инсталляторов GOG и проверяет каждый > файл. Пожалуйста, не просите и не выкладывайте файлы игры. Подробнее — в [правовой информации](#правовая-информация). **Содержание:** [Что это](#что-такое-hommare) · [Что нового](#что-нового) · [Главное](#главное) · [Состояние](#состояние) · [Скачать](#скачать) · [Быстрый старт](#быстрый-старт) · [Управление](#управление) · [Настройки](#настройки) · [Вопросы](#вопросы-и-решения-проблем) · [Что дальше](#что-дальше) · [Для разработчиков](#для-разработчиков) · [Благодарности](#благодарности) · [Лицензия](#лицензия) · [Правовая информация](#правовая-информация) ## Что такое HommaRe? HommaRe — статическая рекомпиляция Windows-версии Heroes of Might and Magic V: собственный x86-код игры заранее переведён в C и собран в приложение для arm64. Во время игры нет ни Wine, ни CrossOver, ни Rosetta, ни эмулятора: игра работает как обычное приложение на Mac, iPad или iPhone. Все три игры в одном приложении: оригинальная игра (1.60), **«Владыки Севера»** (2.1) и **«Повелители Орды»** (3.1). Вы устанавливаете их из своей копии с GOG, выбираете игру в лаунчере и играете — с тем, чего игра 2006 года не умела: ультраширокие экраны, управление пальцами и тачпадом, интерфейс для iPhone и частота кадров, которая бережёт батарею, пока на экране ничего не происходит. ## Что нового **0.1-playable-421** (октябрь 2026) · [все изменения](CHANGELOG.md) (на английском) - **Немецкие, французские и польские** версии GOG: установка из GOG.com или из их инсталляторов, нативные экраны на их языке. - **Сетевые игры «Владык Севера»** по локальной сети больше не вылетают. - **Арифметика оригинальной игры на любом устройстве:** дополнения создают игры на ubi-gs. Для сетевой игры эта сборка нужна на каждом устройстве. - **Больше нативных экранов:** загрузка и сохранение в сетевых играх и игре за одним компьютером, сохранение в дополнениях, их лобби локальной сети и дуэли. - **Касания:** бой «коснитесь врага, затем клетки» во «Владыках Севера» и «Повелителях Орды», а отряд делится, если перетащить его и задержать палец. ## Главное - **Нативно на Apple silicon.** Код игры, а вместе с ним и библиотека анимации Granny 2 от RAD, перекомпилированы под arm64. Direct3D 9 рисуется через Metal, а скиннинг и освещение моделей считает видеокарта. - **Три игры — одно приложение.** Heroes V, «Владыки Севера» и «Повелители Орды», у каждой свои профили и сохранения. Лаунчер показывает, что установлено, и запускает выбранную игру. - **Лаунчер в стиле игры.** Рамки, кнопки и фон он берёт из данных вашей установленной игры во время работы, поэтому в приложении нет игровой графики. Говорит на десяти языках инсталляторов GOG (английский, русский, чешский, немецкий, испанский, французский, итальянский, венгерский, польский и упрощённый китайский) и на iPhone стоит вертикально. - **Загрузка из вашей библиотеки GOG.com — на любом устройстве.** Войдите в GOG в лаунчере, и он скачает купленные игры на английском, русском, немецком, французском или польском, сверит SHA-256 каждого файла и продолжит прерванную загрузку. Ни инсталляторы, ни «Файлы» не нужны. - **Установка из ваших инсталляторов GOG — на любом устройстве.** Дайте лаунчеру офлайн-инсталлятор GOG: `.exe`, `.bin`, папку с ними или сразу несколько; на Mac их можно и перетащить на окно. Он распакует только то, что нужно игре, сверит SHA-256 каждого файла и продолжит прерванную установку. Обновления GOG (`patch_*.exe`) тоже ставятся, а уже установленная игра находится сама. - **Ультраширокий экран как надо.** На 21:9 карта и бои показывают больше по ширине, а не растягиваются (Hor+), интерфейс уходит к краям экрана, а сцены диалогов занимают всю ширину. *«Границы интерфейса»* держат HUD в рамке 21:9, 16:9 или 4:3 на очень широких экранах; экраны, фоны и 3D-мир всё равно занимают весь дисплей. Во всех трёх играх. - **Сенсорное управление для «Героев».** Heroes V всё объясняет при *наведении*, поэтому палец на экране работает как наведённая мышь: держите — читаете подсказку, коснитесь — действие. Второй палец даёт правый клик; ведите пальцем — камера движется, щипок — масштаб, поворот двумя пальцами — вращение камеры. На текстовом поле появляется системная клавиатура, а списки прокручиваются пальцем. - **Бой под палец.** Коснитесь врага — подсветятся клетки, с которых его можно ударить; коснитесь клетки — отряд подойдёт и ударит. Курсор атаки виден рядом с подсказкой урона, как при игре мышью. - **Интерфейс для iPhone.** Круглые меню превращаются в ряды кнопок вдоль краёв экрана, панели крупнее, список героев стоит рядом с мини-картой, меню строительства и найма в городе уходят в угол, и ничего не заходит под Dynamic Island. Камера в бою ближе и плавно отъезжает, пока вы расставляете войска. Раскладка следует за размером окна, поэтому складной телефон переключает её, когда его складывают и раскладывают. - **Меню под экран.** На iPhone главное меню, профили, кампании, загрузка и сохранение, настройки, дуэли, своя игра и игра за одним компьютером и меню в игре нарисованы как нативные экраны из картинок, слов и рамок самой игры, с текстом под размер телефона. На iPad их тоже можно включить. - **Игра по локальной сети.** *«Сетевая игра» → «Локальная сеть»* находит игры в вашей Wi-Fi: создайте игру, присоединитесь к чужой и играйте — между Mac, iPad и iPhone. - **Тачпад на Mac.** Два пальца над картой приключений поднимают и опускают камеру или двигают её как на iPad: прокрутка — перемещение, щипок — масштаб, поворот — вращение. В бою камера приближается к указателю, а списки прокручиваются вслед за пальцами. - **Плавно и бережно к батарее.** По умолчанию лимит 40 кадров/с (можно 60 или 120; iPhone с ProMotion работают на 120 Гц, чтобы лимит держался). Через минуту без ввода частота падает до 30, пока вы не тронете мышь, клавиатуру или экран. Энергорежим по желанию снижает лимит кадров и масштаб рендера в режиме энергосбережения или при нагреве. Скрытое окно работает на 10 кадрах/с. - **Чёткая картинка при малой нагрузке.** *«Качество графики»* рисует 3D в родном разрешении или меньше и увеличивает его через MetalFX, а интерфейс всегда рисуется в родном разрешении экрана. На iPad и iPhone режим «Авто» уменьшает долю 3D, когда устройство греется. Шейдеры компилируются заранее и сохраняются между запусками, чтобы не было подтормаживаний. ## Состояние Проект на ранней стадии и активно развивается. Что работает сейчас: | | Heroes V 1.60 | «Владыки Севера» 2.1 | «Повелители Орды» 3.1 | |---|---|---|---| | Mac (Apple silicon) | Играбельно: кампании, сценарии, игра за одним компьютером, бои, города, сохранения | Играбельно: карты, бои, города; проверено меньше | Играбельно: карты, бои, города; проверено меньше | | iPad | Играбельно с сенсорным управлением | Играбельно с сенсорным управлением; проверено меньше | Играбельно с сенсорным управлением; проверено меньше | | iPhone | Играбельно с телефонным интерфейсом | Телефонный интерфейс, проверен на iPhone 15 Pro Max | Телефонный интерфейс, проверен на iPhone 15 Pro Max | | Ультраширокий (21:9) | Вид Hor+, HUD по краям, границы интерфейса, широкие диалоги | То же | То же | | Тачпад Mac | Карта; масштаб и сдвиг в бою | Карта; масштаб и сдвиг в бою | Карта; масштаб и сдвиг в бою | Проверено на MacBook Pro (M1 Max, macOS 27) с ультрашироким монитором 3440x1440, на iPad Pro 13" (M5) и iPhone 15 Pro Max (iOS 27), в основном с **русскими релизами GOG**. Английские инсталляторы GOG тоже распознаются и устанавливаются; другие языки пока не проверялись — будем рады отчётам. ## Скачать > [!NOTE] > **Mac:** готовая сборка лежит в [релизах](../../releases/latest) > (`HommaRe-<версия>-macOS.dmg`). Данных игры в ней нет: она скачивает игру из вашей > библиотеки GOG.com или устанавливает из ваших инсталляторов GOG. macOS не может проверить её разработчика, поэтому при первом запуске один раз переспросит (см. > [быстрый старт](#быстрый-старт)). **iPad и iPhone:** в том же релизе лежит неподписанный > IPA (`HommaRe-<версия>-iOS.ipa`); установите его через Sideloadly, AltStore или > SideStore либо соберите приложение сами на Mac. | Платформа | Как получить | |---|---| | Mac (Apple silicon) | [Скачайте DMG](../../releases/latest) или [соберите сами](#сборка-из-исходников). | | iPad и iPhone | [Установите IPA](../../releases/latest) через Sideloadly, AltStore или SideStore либо соберите сами на Mac в Xcode. | | Linux (x86-64) | [Соберите сами](#сборка-из-исходников); рисует через Vulkan. | | Linux (64-битный ARM) | [Соберите сами](#сборка-из-исходников), на самом ARM-компьютере или кросс-компиляцией на ПК с x86-64; Vulkan. Для ARM-хромбуков, ноутбуков на Snapdragon X, Asahi Linux, Raspberry Pi 5. Собирается; на железе ещё не проверялась. | | Windows, Android | Пока не планируется: на Windows оригинальная игра и так работает. | ### Системные требования - **Для всех:** ваша копия Heroes of Might and Magic V с GOG: *Heroes of Might and Magic V* (с «Владыками Севера») и/или *Heroes of Might and Magic V: Tribes of the East*. Около 4 ГБ свободного места для Heroes V с «Владыками Севера» и ещё 2,2 ГБ для «Повелителей Орды», плюс место под инсталляторы, если ставите из них. - **Mac:** Apple silicon, macOS 14 Sonoma или новее. Сборки для Mac на Intel нет. - **iPad и iPhone:** iPad на чипе M-серии или свежий iPhone (проверено на iPhone 15 Pro Max). Приложение просит у iOS больше памяти, чем большинство приложений. Игра идёт в горизонтальной ориентации. ## Быстрый старт ### Mac 0. **Скачайте HommaRe.** Возьмите `HommaRe-<версия>-macOS.dmg` в [релизах](../../releases/latest), откройте его и перетащите *HommaRe* в *Программы*. macOS не может проверить разработчика приложения, поэтому первый запуск не удастся: откройте *Системные настройки → Конфиденциальность и безопасность*, прокрутите вниз и нажмите *Открыть всё равно* рядом с HommaRe. Дальше оно открывается как обычно. (Или [соберите сами](#сборка-из-исходников).) 1. **Откройте HommaRe.** У неустановленной игры написано *«Не установлено»*. Нажмите *«Установить из GOG…»*. 2. **Войдите в GOG и скачайте.** Войдите на странице GOG в открывшейся панели, выберите язык игры и нажмите *«Скачать»* рядом с каждой купленной игрой. Лаунчер скачает её, проверит каждый файл и отметит готовой. *Heroes of Might and Magic V* даёт сразу и оригинальную игру, и «Владык Севера». Прерванная загрузка продолжается с того места, где остановилась. 3. **Или используйте файлы инсталлятора.** Если у вас уже есть офлайн-инсталляторы GOG (для каждой игры один `.exe` и один или несколько `.bin`, а также `patch_*.exe`, если GOG его предлагает), нажмите *«Из файлов установщика…»* в той же панели и выберите `.exe`, `.bin` или их папку — или перетащите их на окно. Если игра уже где-то установлена, выберите *«Папка игры…»*. 4. **Играйте.** Выберите игру в лаунчере и нажмите *«Играть»*. Профили, сохранения и настройки хранятся отдельно от файлов игры, поэтому переживают обновления и переустановку. ### iPad и iPhone Сначала установите приложение: `HommaRe-<версия>-iOS.ipa` из [релизов](../../releases/latest) через Sideloadly, AltStore или SideStore (они подпишут его вашим Apple ID; включите на устройстве режим разработчика) либо [соберите его](#сборка-из-исходников) сами. 1. **Откройте HommaRe**, нажмите *«Установить из GOG…»* и войдите в GOG. Выберите язык игры и нажмите *«Скачать»* рядом с каждой купленной игрой: лаунчер скачает её в приложение и проверит каждый файл (2–4 ГБ на игру, лучше по Wi-Fi). 2. **Или используйте инсталляторы GOG**: положите файлы `.exe` и `.bin` на устройство в приложение «Файлы» (на устройстве или в iCloud Drive) или через Finder с Mac, нажмите *«Из файлов установщика…»* в той же панели и выберите их. Потом инсталляторы можно удалить. 3. **Игра уже установлена?** Тогда скопируйте на устройство её папку и выберите её через *«Добавить файлы игры…»*. > [!TIP] > В *Одиночной игре* пункты «Кампания», «Сценарии» и «Зал славы» остаются серыми, пока > не выбран профиль: откройте *«Сменить профиль»*, выберите свой в списке и нажмите > *«Выбрать»*. Так ведёт себя оригинальная игра, это не ошибка порта. ## Управление ### Mac Мышь и клавиатура работают как в оригинале: наведение — информация, левый клик — действие, правый клик — подробности, колесо мыши и клавиши игры управляют камерой. Двойной клик, Shift при перетаскивании для разделения отряда и Alt для подписей на карте работают. С тачпадом или Magic Mouse два пальца над 3D-картой приключений двигают камеру (*Настройки → «Тачпад»*): | Режим | Два пальца над картой | |---|---| | Высота (по умолчанию) | Прокрутка вверх и вниз поднимает и опускает камеру, с инерцией | | Как на iPad | Прокрутка — перемещение, щипок — масштаб, поворот — вращение камеры | | Как в игре | Прокрутка уходит в игру, как колесо мыши | В бою щипок или прокрутка приближают камеру к указателю, а два пальца сдвигают поле. Над списком содержимое идёт вслед за пальцами. Над городом и остальным интерфейсом прокрутка уходит в игру как колесо мыши. ### iPad и iPhone | Жест | Что делает | |---|---| | Касание с удержанием | Наведение: подсказки и подсветка игры без клика | | Касание | Левый клик (курсор сначала прыгает под палец) | | Двойное касание | Двойной клик | | Касание вторым пальцем рядом с лежащим первым | Правый клик по тому, что под первым пальцем | | Касание двумя пальцами | Правый клик между пальцами | | Ведение одним пальцем по карте | Перемещение камеры | | Ведение вверх или вниз по списку | Прокрутка списка | | Касание текстового поля | Появляется клавиатура | | Щипок | Масштаб | | Поворот двумя пальцами | Вращение камеры | **Сенсорный бой** (включён по умолчанию): коснитесь врага, до которого дотягивается ваш отряд, — подсветятся клетки, с которых можно ударить. Коснитесь клетки — отряд подойдёт и ударит; коснитесь врага ещё раз — удар с ближайшей клетки; касание в любом другом месте отменяет выбор. Чтобы только подойти, задержите палец на подсвеченной клетке и отпустите. На экране загрузки, когда загрузка закончилась, коснитесь ещё раз, чтобы начать: игра ждёт там клика. Каждый из трёх вступительных роликов пропускается касанием, а в настройках их можно отключить совсем. ## Настройки *Настройки* лаунчера действуют на все игры. При первом запуске каждое устройство получает свои значения по умолчанию — они выделены жирным: | Настройка | Варианты | Что делает | |---|---|---| | Язык | Как в системе или один из десяти | Язык лаунчера | | Лимит кадров | Как в игре, **40**, 60, 120 | Наибольшая частота кадров игры | | Экономия энергии | Авто, Всегда, **Никогда** | Ниже лимит кадров и масштаб рендера; «Авто» включает её в режиме энергосбережения или при нагреве | | 30 кадров после минуты простоя | Авто, **Вкл**, Выкл | Через минуту без ввода частота падает до 30 и сразу возвращается при любом вводе | | Качество графики | Авто, Максимум, Качество, Баланс, Скорость | В каком размере рисуется 3D перед увеличением через MetalFX; интерфейс остаётся чётким. **Скорость** на Mac и iPhone, **Баланс** на iPad | | Границы интерфейса | Края экрана, 21:9, 16:9, 4:3 | На широких экранах держит HUD в рамке, а не у самых краёв (**16:9** на Mac) | | Ролики при запуске | Показывать, Пропускать | Логотипы и вступление при старте | | Metal HUD | Показывать в игре (**выкл**) | Счётчик производительности Apple поверх игры, со следующего запуска | | Анимация моделей | На видеокарте (**вкл**) | Скиннинг и освещение моделей на видеокарте, а не на процессоре | | Тачпад *(Mac)* | **Высота**, Как на iPad, Как в игре | Что делают два пальца над картой | | Кнопки камеры *(iPad, iPhone)* | Показывать, **Скрывать** | Экранная панель камеры | | Сенсорный бой *(iPad, iPhone)* | Выкл, **Вкл** | Сначала враг, потом клетка, с которой бить | | Беззвучный режим *(iPad, iPhone)* | **Учитывать**, Игнорировать | Глушит ли игру переключатель беззвучного режима | | Интерфейс для телефона *(iPhone)* | **Авто**, Всегда, Никогда | Крупные панели и ряды кнопок вместо круглых меню; «Авто» выбирает по размеру окна, поэтому складной телефон переключается сам | | Папки с играми | | Дополнительные места, где лаунчер ищет установленные игры | Меню «Настройки» самой игры (качество графики, звук) работает как в оригинале. На iPad и iPhone игра всегда рисует в размер экрана, поэтому выбора разрешения в её настройках нет: его заменяет *«Качество графики»* в лаунчере. ## Вопросы и решения проблем **Игра входит в HommaRe?** Нет. Файлы игры не входят в проект и не распространяются. Вы устанавливаете игру из своей копии с GOG, и каждый файл проверяется. **Какая версия нужна?** Релизы GOG: *Heroes of Might and Magic V* 2.1 (внутри оригинальная игра 1.60 и «Владыки Севера» 2.1) и *Tribes of the East* 3.1, на английском, русском, немецком, французском или польском. Лаунчер сверяет исполняемый файл каждой игры по SHA-256 и сообщает, если он не совпадает. Другие языки GOG, дисковые версии и другие магазины не проверялись. **Это эмулятор? Используется Wine?** Нет. Это статическая рекомпиляция: x86-код игры заранее переведён в C и собран под arm64. Среда выполнения, написанная для этого порта, заменяет те части Windows, которыми пользуется игра. **Можно установить игру на iPad или iPhone без Mac?** Да. Нажмите в лаунчере *«Установить из GOG…»* и войдите в GOG: он скачает купленные игры. Или положите файлы инсталлятора GOG на устройство (в «Файлы» или iCloud Drive) и выберите *«Из файлов установщика…»*. **Можно перенести сохранения и профили с Windows?** Профили и сохранения — в собственных форматах игры. Скопируйте их в папку профилей (см. ниже); это пока мало проверялось. **Где мои профили, сохранения и настройки?** | | Mac | iPad и iPhone | |---|---|---| | Профили и сохранения | `~/Library/Application Support/HommaRe/Documents/My Games/Heroes of Might and Magic V/` (открывается кнопкой *«Сохранения»* в лаунчере) | Внутри приложения | | Установленные игры | Там, где вы выбрали в лаунчере | Внутри приложения (папка `Games` в «Файлах») | **Сохранения игры за одним компьютером не видны в «Загрузить».** Они загружаются через *«Сетевая игра» → «Один компьютер» → «Обычный режим» → «Загрузить»*, а не из списка одиночной игры — как в оригинале. **Новый профиль не запоминается.** Игра записывает выбор профиля при обычном выходе. После создания профиля один раз выйдите через *«Выход» → «OK»*. **На iPhone нет звука.** Включён беззвучный режим. Выключите его или поставьте *Настройки → «Беззвучный режим» → «Игнорировать»*. **Есть мультиплеер?** Игра за одним компьютером и по локальной сети — да. Интернет-серверы игры (Ubi.com) Ubisoft закрыла в 2015 году; их может заменить сервер сообщества (ubi-gs, ниже). Сетевая игра использует UDP-порты 8888 и 8889. **Что за ubi-gs в меню сетевой игры?** Сетевой сервис игры (Ubi.com) Ubisoft закрыла в 2015 году. [ubi-gs](https://github.com/michal-kapala/ubi-gs) — его воссозданная сообществом замена, которую кто-то должен запустить; все игроки подключаются к одному серверу. Пункт *ubi-gs* спрашивает адрес сервера (`хост` или `хост:порт`) и запоминает те, что ответили, в файле `ubi-gs-servers.txt` в папке профиля; пока такого нет, он предлагает сервер сообщества `ubigs.wayofharm.com`. Игра получает от него список серверов, входит, попадает в каналы лобби, создаёт игры и присоединяется к ним. Оператор сервера видит CD-ключ, с которым вы входите: подойдёт любой ключ, поэтому не вводите настоящий. **Какое имя и пароль там вводить?** Придумайте новые для этого сервера: не свой логин Ubisoft (Ubi.com, Ubisoft Connect) — серверы держит сообщество, а не Ubisoft, — и не пароль от других сервисов. Протокол входа игры передаёт пароль практически открытым текстом, поэтому HommaRe отправляет вместо него хэш с солью (scrypt; соль — сервер и ваше имя): ни оператор, ни тот, кто следит за сетью, самого пароля не видит, хотя слабый пароль по хэшу всё же можно подобрать. Серверу, который присылает одноразовый вызов (`LoginNonce` в его `servers.ini`), хэш уходит только в первый раз, дальше — лишь ответ на вызов; файл `ubi-gs-logins.txt` в папке профиля помнит, где вы зарегистрировались (пароля в нём нет). Сервер, который об этом ничего не знает, просто принимает хэш за ваш пароль. Учётные записи, созданные в оригинальной игре (она отправляет пароль как есть), из HommaRe недоступны. **Безопасна ли сетевая игра?** Сервер ubi-gs может запустить кто угодно, а игра по локальной сети и через интернет связывает вас с копиями игры у других игроков. Клиент 2006 года разбирает то, что присылают сервер или другой игрок, старым кодом на C++, который местами копировал текст в буферы фиксированного размера на стеке без проверки длины, — враждебный сервер мог прислать слишком длинное поле и переполнить такой буфер. HommaRe перекомпилирует игру и поэтому заменяет эти копирования собственной функцией игры, которая знает размер буфера: слишком длинное поле обрезается, и игра продолжает работу с укороченным текстом, а не пишет за пределы буфера. Так защищено каждое строковое поле от сервера, которое клиент читает в буфер фиксированного размера: все 52 места в каждой из игр, где было копирование без проверки, — ответ с данными игрока (известное переполнение), список комнат и список участников, вход участника в комнату, ответ прокси на вход, список прокси модуля, уведомления о начале игры и об изменениях у друзей, сообщения рейтинга, а также остальные имена и идентификаторы лобби. Копирование из любого другого места обрезалось бы до 16 байт и попало бы в журнал, а не шло бы без проверки. Первые поля списка комнат и так читаются с ограничением длины; в ответах NAT и адресов строк нет. Игра по локальной сети и напрямую между игроками использует другой, двоичный протокол: его датаграммы читаются в буфер ограниченной длины и разбираются в записи фиксированного размера, копирования без проверки там не найдено. И всё же, если вы не хотите доверять незнакомому серверу ubi-gs или игроку, играйте по локальной сети или через VPN со знакомыми людьми. ## Что дальше - Другие языки GOG (чешский, испанский, итальянский, венгерский и китайский): для проверки файлов нужны их инсталляторы. - Качество графики прямо в настройках игры. - Ещё быстрее: больше самого горячего кода игры в нативном виде и оптимизация по профилю (PGO). Сроков и обещаний нет: будет готово, когда будет готово. ## Для разработчиков ### Как это работает HommaRe собран на **recomp-kit** — наборе для статической рекомпиляции 32-битных x86-игр под Windows. 1. **Анализ.** Ghidra находит функции `H5_Game.exe` (около 70 000) и `granny2.dll`. 2. **Трансляция.** Транслятор набора разбирает каждую функцию через Capstone и пишет C: регистры x86, флаги, x87 и SSE — обычным C. Восемь регистров хранятся в локальных переменных внутри функции, а флаги прослеживаются по переходам функции и вычисляются только там, где их читают. 3. **Компиляция.** Clang собирает C (около 100 000 функций) вместе со средой выполнения в одно arm64-приложение. Каждое дополнение становится модулем (`libgame.