Учу ассемблер x86-64 для реверса — нужен ли вообще, если есть декомпилятор?
Рейтинг: 70.2% · 15 голосов
Войдите, чтобы голосовать
Голосовать «За» и «Против» могут только авторизованные пользователи. Войдите в свой аккаунт — или зарегистрируйтесь, это займёт минуту.
Нет аккаунта? Зарегистрироваться
✔ Лучший ответ сформирован автоматически — coder_vlad
Asm нужен в реверсе в конкретных ситуациях, которые декомпилятор ломает: обфусцированный код с VM-протекторами (VMP, Themida), ручные оптимизации компилятора где Ghidra теряет структуру, shellcode без символов, pack-ed бинари. Ghidra выдаёт псевдокод C, но он генерируется из BNOT-EXPR и прочих промежуточных форм — если ты не понимаешь что происходит на уровне MOV/LEA/XOR, ты не можешь оценить…
Re: Учу ассемблер x86-64 для реверса — нужен ли вообще, если есть декомпилятор?
Декомпилятор врёт. Регулярно. Особенно на оптимизированном коде, SIMD, нестандартных calling conventions и обфускации он генерит чушь, которую без знания asm ты не отловишь. Так что да, учить надо, хотя бы чтобы не доверять F5 слепо.
Re: Учу ассемблер x86-64 для реверса — нужен ли вообще, если есть декомпилятор?
Не читай толстые книги про написание. Бери дизасм маленьких функций и руками переводи в C, потом сверяй с декомпилятором. OpenSecurityTraining2 'Architecture 1001: x86-64' бесплатный и заточен ровно под чтение, а не написание.
- regexlover
- Сообщения: 18
- Зарегистрирован: 21 май 2026, 11:59
- coder_vlad
- Сообщения: 72
- Зарегистрирован: 11 май 2026, 01:57
Re: Учу ассемблер x86-64 для реверса — нужен ли вообще, если есть декомпилятор?
✔ Лучший ответ — сформирован автоматически
Asm нужен в реверсе в конкретных ситуациях, которые декомпилятор ломает: обфусцированный код с VM-протекторами (VMP, Themida), ручные оптимизации компилятора где Ghidra теряет структуру, shellcode без символов, pack-ed бинари. Ghidra выдаёт псевдокод C, но он генерируется из BNOT-EXPR и прочих промежуточных форм — если ты не понимаешь что происходит на уровне MOV/LEA/XOR, ты не можешь оценить правильно ли декомпилятор интерпретировал кусок. Особенно это больно с calling conventions и стек-фреймами.
- caffeinebteam
- Сообщения: 16
- Зарегистрирован: 30 май 2026, 13:27
Re: Учу ассемблер x86-64 для реверса — нужен ли вообще, если есть декомпилятор?
Практически: достаточно читать asm, не писать. Нужно уверенно понимать соглашения вызовов (System V AMD64 ABI — rdi, rsi, rdx, rcx, r8, r9 для аргументов), уметь читать пролог/эпилог функций, понимать как компилятор оптимизирует петли (loop unrolling, autovectorization через XMM). Для этого хватит книги Криса Игла 'The IDA Pro Book' + практики на crackme.one на уровне easy/medium. Неделя-две и базовый словарный запас будет.
Re: Учу ассемблер x86-64 для реверса — нужен ли вообще, если есть декомпилятор?
Конкретный пример где декомпилятор не поможет: анализ антиотладочных трюков через RDTSC или IsDebuggerPresent через inline asm — Ghidra их часто просто выбрасывает как dead code или неправильно поднимает в псевдокод. Если занимаешься малварь-анализом, без базового asm будешь постоянно промахиваться мимо ключевых артефактов.
Поделиться темой:
✈ Telegram
VK
- Похожие темы
-
- Consumer SSD сдох за год под Proxmox, wearout 38% — это нормально вообще?
6 ответов · 1596 просмотров
-
-
- Коллега жалуется, что моя механика «долбит» на весь опенспейс. Это вообще нормально?
18 ответов · 982 просмотров
-
- Cursor опять переписал тарифы — теперь лимит 1 запрос в минуту, это вообще законно?
21 ответов · 948 просмотров
-
-
Похожие запросы:
ghidra или ida pro для реверса
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 0 гостей