
Легковесный шестнадцатеричный редактор и декомпилятор для решения задач анализа бинарных файлов.
Открытая платформа для реверс-инжиниринга.
EUVA — это не просто hex-редактор и декомпилятор; это скорее платформа для реверс-инжиниринга, которую вы настраиваете под себя, а не она под вас. Это платформа, к которой можно подключить что угодно, и она не будет возражать. Мы ориентируемся на интересы сообщества и поддерживаем максимальную гибкость инструмента и быструю интеграцию с другими анализаторами — возможно, вашими собственными, или промышленными? Мы не хотим превращать инструмент в очередной декомпилятор, потому что декомпиляция — это не весело; IDA, Binija и другие могут с этим справиться. Но мы строим нечто лучшее, пытаемся создать лучшую архитектуру, и это, вероятно, наша главная цель. EUVA будет развиваться не сама по себе, а вместе с сообществом.
Эта программа находится в активной разработке. Экспериментальные сборки могут содержать ошибки или приводить к неожиданному поведению. Используйте с осторожностью.
Данное программное обеспечение предоставляется «как есть», без каких-либо гарантий. EUVA — это высокоточный инструмент, предназначенный для образовательных целей и исследований в области безопасности. Автор не несет ответственности за нестабильность системы, потерю данных или юридические последствия, возникшие в результате неправильного использования этого инструмента.
Используя EUVA, вы подтверждаете, что несете единоличную ответственность за свои действия, понимаете риски изменения бинарных файлов и памяти процессов, а также будете соблюдать законы и нормативные акты вашей юрисдикции.
Оцените возможности нашего hex-редактора, который также включает наш DSL для замены значений. Это было разработано для того, чтобы упростить обмен патчами, не так ли? Допустим, вы создаете что-то, что требует патча, и хотите поделиться этим с кем-то другим. Всё довольно просто: просто отправьте им наш скрипт .euv, программа применит патч к бинарному файлу, и готово — никакой головной боли.
Возможно, одна из самых важных частей нашей работы — это декомпилятор. Он был спроектирован и разрабатывается с целью максимально точно передавать смысл действий программы. Мы стремимся сделать его удобным для пользователя, потому что копаться в других декомпиляторах — это боль: они ведут себя как переводчики, и вы ищете хоть какой-то смысл в этом безумии. С нашим декомпилятором ситуация тоже непроста, но мы снижаем порог входа и стараемся восстановить декомпилированный код максимально понятным для человека. Конечно, мы не делаем это вслепую, и всему есть пределы, но это всё же намного лучше, чем читать сырой C, который еще даже не полностью переведен. Это не всегда удобно, поэтому мы здесь, чтобы попытаться применить абстракции C++ к декомпилированному коду и быть довольными результатом.
Пример вывода:
Если вы сомневаетесь в аргументах декомпилятора, перепроверьте его результаты, просмотрев дизассемблер.
Если подойти к этому идеально, мы говорим не только о добавлении функции обнаружения защитников типа Themida, но и о самом декомпиляторе. Кстати, он также поддерживает ваши патчи благодаря C#-скриптам, которые динамически компилируются с помощью Roslyn. Их можно назвать плагинами для декомпилятора, своего рода калибруя его под ваши нужды. Это также относится к правилам Yara. Возможно, это интеграция с Virustotal, которую мы недавно завершили? Мы не планируем останавливаться на достигнутом; мы продолжим развиваться в этом направлении.
Итак, у нас двойная система: встроенная функция в программе AI-рефакторинга, где вы указываете свой API-ключ. Точки также должны соответствовать стандарту OpenAI. Это кнопка быстрого вмешательства, если вы не планируете глубоко вникать в процесс или если вам нужно провести анализ незаметно, без облака, используя локальные AI-модели. У нас также есть интеграция с MCP, что довольно удобно, потому что у модели есть доступ ко всему, что ей нужно. Она может читать декомпилированный код и изменять его по вашему желанию, помогая вам учиться и понимать. Вы можете начать работу с любым сервисом, поддерживающим MCP, просто настроив необходимый конфигурационный файл. MCP подходит для тех, кто хочет копнуть глубже и кому удобно использовать облако. Это всё ваш выбор. Думаю, мы сохраним этот гибкий подход.
[!NOTE] Ваш выбор, под вашим контролем: AI-агент — это система «Принеси свой ключ». Она поддерживает облачные LLM (OpenAI, Claude, Groq) и локальные LLM (Ollama, LocalAI). Конфиденциальность превыше всего.
🟢 После AI (семантический рефакторинг)
Пример вывода:
Ctrl+Z) и полная откат сессии (Ctrl+Shift+Z).euv) с отслеживанием файлов в реальном времениЗагрузите из релизов или установите EUVA через winget
Использование winget:
winget install Euva-Project.EUVA
Или соберите программу из исходных файлов, используя инструкцию ниже.
Перед сборкой убедитесь, что у вас установлено следующее:
| Требование | Версия | Ссылка |
|---|---|---|
| .NET SDK | 8.0+ | скачать |
| Windows OS | 10 / 11 | Требуется (WPF) |
[!NOTE] EUVA — это Windows-приложение, созданное на WPF. Linux/macOS в настоящее время не поддерживаются.
# 1. Перейдите в главный каталог
cd EUVA/EUVA.UI
# 2. Восстановите зависимости
dotnet restore
# 3. Соберите в режиме Release
dotnet build -c Release
# 4. Запустите (необязательно, или запустите скомпилированный бинарник)
dotnet run -c Release
Ctrl+D, чтобы открыть Дизассемблер, Ctrl+E для ДекомпилятораУглубитесь в теорию и механизмы:
Вы можете переназначить горячие клавиши, загрузив (через настройки в меню программы) и отредактировав файл .htk.
В: Зачем использовать встроенный AI EUVA вместо AI-плагинов для IDA или Ghidra?
О: В устаревших инструментах AI — это просто «навесной» костыль, который замораживает UI, пока скрипты перетаскивают текст туда-сюда. В EUVA AI является частью ядра. Наш конвейер быстро внедряет изменения на семантическом уровне. Это не «плагин» — это симбиоз: декомпилятор предоставляет факты, а AI — смысл. Никаких зависаний.
В: Не утечет ли мой код в облако?
О: Только если вы этого захотите. EUVA придерживается философии «Сначала локально». Подключите Ollama или любой локальный сервер и работайте полностью офлайн. Ваш реверс — ваш секрет.
В: Что делать, если AI начнет галлюцинировать и врать про код?
О: Конечно, это не исключено. Мы работаем по принципу «Доверяй, но проверяй». AI не может изобретать логику — он только предлагает имена для переменных, которые действительно существуют в коде. Все изменения помечаются комментариями /* AI */. Если вам что-то не нравится, одним кликом или горячей клавишей всё откатывается в исходное состояние.
В: Насколько гибок EUVA? Могу ли я настроить его под себя?
О: Это главная особенность. EUVA — это платформа.
В: Зачем мне использовать EUVA, если у меня есть IDA, Ghidra или Binary Ninja?
О: Потому что это тяжелые монолитные программы
Мы приветствуем и уличных нетраннеров, и корпоративных исследователей.
PR приветствуются: Нашли ошибку или оптимизировали этап конвейера? Отправляйте PR! 🚀
Буду также благодарен за звезды — звезды это будущее проекта ⭐.
EUVA — это свободное программное обеспечение, выпущенное под лицензией GNU General Public License v3.0.
GNU GENERAL PUBLIC LICENSE
Version 3, 29 June 2007
Copyright (C) 2026 EUVA Contributors
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <https://www.gnu.org/licenses/>.
---
EngineUnpacker Visual Analyzer (EUVA)
Professional PE Static Analysis Tool
Educational tool for reverse engineering research.
Use responsibly and in accordance with applicable laws.
EUVA — создан для исследователей, которые читают hex ради удовольствия.
Сделано с ❤️ для сообщества реверс-инжиниринга | © 2026 EUVA Project
| Команда | Сочетание | Описание |
|---|
NavInspector | Alt+1 | Переключиться на вкладку Inspector |
NavSearch | Alt+2 | Переключиться на вкладку Search |
NavDetections | Alt+3 | Переключиться на вкладку Detections |
NavProperties | Alt+4 | Переключиться на вкладку Properties |
CopyHex | Ctrl+C | Копировать выделение как hex-строку |
CopyCArray | Ctrl+Shift+C | Копировать выделение как C-массив байтов |
CopyPlainText | Ctrl+Alt+C | Копировать выделение как обычный текст |
Undo | Ctrl+Z | Отменить последнюю запись байта |
FullUndo | Ctrl+Shift+Z | Откатить весь последний запуск скрипта |
View byte | F3 | Просмотр последних изменений байтов |
View Yara Matches | Shift+F3 | Просмотр совпадений, найденных Yara |
View Disassembler | Ctrl+D | Просмотр дизассемблера |
View Decompiler | Ctrl+E | Просмотр декомпилятора, используйте F5 для переключения между графическим и текстовым режимами |
Highlight code | Ctrl+A | Выделение кода в текстовой форме в декомпиляторе |
Function table | Ctrl+R | Показать таблицу функций в декомпиляторе |
IAT Import | Ctrl+E | Показать все импорты IAT в декомпиляторе |
Xrefs To | X | Показать все переменные, которые вызываются в коде декомпилятора |
Xrefs From | X | Показать, куда ссылается текущая инструкция (Дизассемблер) |
Parent navigation | P/Enter | Просмотр родительской инструкции дизассемблера (Дизассемблер) |