Size: a a a

Ассемблер

2021 September 12

d

disba1ancer in Ассемблер
Конечно...
источник

E

Entusiast in Ассемблер
Хах, а ты замерял секундомером?

objdump -d буквально секунду висит, даже глазом видно
А radare2 на pd мало того, что выводит больше, ещё и быстрее на глаз

Сейчас даже засниму...
источник

d

disba1ancer in Ассемблер
Ещё не забудь замерить objdump -d | less
источник

E

Entusiast in Ассемблер
Он и так выводит 4 строки одну секунду. Куда ещё?
источник

E

Entusiast in Ассемблер
И что это? Это так не работает, он по-умолчанию на -d выводит "less"
До нулей от entrypoint
источник

d

disba1ancer in Ассемблер
Это вариант с пайпом, а less просто просмотрщик текста
источник

E

Entusiast in Ассемблер
В objdump есть ассемблер и компиляция из файла и патч в код?
источник

d

disba1ancer in Ассемблер
Ты не понял, ты жалуешься что он медленно в консоль выводит, а консоль она медленная, если перенаправить вывод в файл, всё будет сделано мгновенно, также через пайп можно stdout objdump'а направить в stdin less'а и получится быстрее тупого вывода в консоль
источник

E

Entusiast in Ассемблер
Проверил, да, так быстрее
Хотя после первого ввода теперь и на обычном objdump -d выводит быстро.
Причём точно так же быстро, как и c radare2. Теперь остаётся только замерить в наносекундах

Это если не брать в счёт то, что в objdump меньше функционала, чем в radare2
источник

d

disba1ancer in Ассемблер
В бинутилсах много раскиданного по разным утилитам функционала
источник

E

Entusiast in Ассемблер
А в radare2 он собран в один пакет
источник

d

disba1ancer in Ассемблер
Скорее в один бинарник, ибо binutils, тоже один пакет, но в нём куча бинарников, и ассемблер, и objdump, и линкер, и много чего ещё
источник

E

Entusiast in Ассемблер
Но тем не менее, в binutils нет утилиты для патча бинарника из ассемблерного исходника

Это я к тому, что лично я это часто использую в radare2, и не знаю ему замены.
И насчёт скорости вообще странно было сказано - он моментально дизассемблирует, и быстро выполняет другой функционал
источник

d

disba1ancer in Ассемблер
Мне такой функционал не был нужен, да и вообще каждый пользуется тем что ему больше подходит
источник

[

[BRM]White Rabbit in Ассемблер
решил вчера потыкать radare2, который тут советовали, а оно на мой хеллоуворд кучу ивалид сыпет почему-то
как этим пользоваться?
источник

[

[BRM]White Rabbit in Ассемблер
оно в принципе корректно всё сдампило, только ещё с экран инвалидов накидало
источник

E

Entusiast in Ассемблер
pd?
Нужно вводить pd N
Т.е сколько выводить
источник

[

[BRM]White Rabbit in Ассемблер
ага
источник

E

Entusiast in Ассемблер
Знак вопроса в конце отобразит тебе информацию о команде:
pd?
Там будет ещё куча всего
Есть ещё pa?
Эта команда умеет ассемблировать внутри радара, покажет тебе опкод инструкции. Тоже часто этим пользуюсь

Соответственно, pd 3 - отобразить 3 инструкции от entry
источник

[

[BRM]White Rabbit in Ассемблер
а pdf  это шо?
оно там мне половину выводит
источник