Инструкция jmpq *0x400850(,%rax,8)
переходит к значению, хранящемуся по адресу 0x400850(,%rax,8)
, а не к самому адресу 0x400850(,%rax,8)
.Скорее всего, по этому адресу есть таблица переходов, и rax
выбирает запись из таблицы переходов для перехода к ней.
Осмотрите память около 0x400850
, чтобы узнать, какие записи есть в таблице переходов и, следовательно, гдепрыжок идет.Вы можете получить дамп образа исполняемого файла, используя objdump -s
.