Вы можете использовать nm
для просмотра внутренних символов и objdump
для разборки. Например:
objdump -D a.out | less
Обратите внимание, однако, что во время окончательного связывания объектных файлов с исполняемым файлом многие символы и внутренние данные удаляются, поэтому вы не сможете понять структуру, как это было бы с объектными файлами.
Если вы хотите редактировать и изменять исполняемый файл, я предлагаю вам использовать редактор hte
, который может выступать в качестве дизассемблера для исполняемых файлов x86. Если вы пользователь Debian / Ubuntu, имя пакета будет «ht» (не «hte»).
Также я написал маленькую библиотеку для разборки эльфов , которая все еще не завершена, но довольно забавна. Однако вы можете найти другие (более полные и, вероятно, лучшие) реализации!