Вопросы по теме 'disassembly'

Получение IL-кода из бинарного файла DLL
Я изучаю ИЛ. Мне нравится инструмент .Net Reflector от RedGate (изначально Lutz). У меня уже есть книги Сержа Лидина и Ecma-335. Похоже, это все, что нам нужно для работы с IL (кроме ILAsm и ILDasm, конечно). Моя задача — разобрать бинарный...
3588 просмотров
schedule 25.02.2023

скажите gdb дизассемблировать неизвестный код
Можно ли настроить gdb для отладки ассемблерного кода, когда нет символов отладки или нет доступных источников? Я имею в виду показ инструкции по сборке за инструкцией по сборке при выполнении пошаговой отладки (команды next/step) (не разбирая всю...
1249 просмотров
schedule 03.11.2022

Декомпилировать двоичный файл x86 PE в C?
Я хотел бы знать, есть ли способ сгенерировать C-код двоичного файла x86 PE. На самом деле мне это не нужно , я просто хочу узнать, как работает некоторое программное обеспечение с закрытым исходным кодом. Исходя из моего здравого смысла, я...
2703 просмотров
schedule 08.02.2023

Дизассемблер, который отслеживает, где какое значение
Итак, в последнее время я смотрю на дизассемблирование моего кода на C++, и мне приходится вручную отслеживать, что находится в каждом регистре, например: 95: 48 8b 16 mov (%rsi),%rdx ; %rdx = raggedCross.sink 98: 48 8b...
121 просмотров
schedule 17.02.2023

Как я могу просмотреть дизассемблирование оптимизированного кода .NET, созданного с помощью джиттинга?
По той или иной причине я иногда нахожу полезным или просто интересным посмотреть на оптимизированный вывод компилятора для функции. Для неуправляемого кода C/C++ мой любимый способ сделать это — скомпилировать в режиме Release, установить точку...
2929 просмотров
schedule 15.02.2023

кодировка кода операции x86: sib byte
Сейчас пытаюсь написать дизассемблер. Я нашел следующий список кодов операций и их значений, поэтому решил проанализировать его во время выполнения: http://web.archive.org/web/20150810224114/http://mprolab.teipir.gr/vivlio80X86/pentium.txt Но я...
3059 просмотров

Преобразование кода сборки в код C
Какой процесс можно использовать для преобразования ассемблерного кода в эквивалентный код C? Какие инструменты можно использовать для повышения точности результатов?
38741 просмотров
schedule 21.08.2022

Как реконструировать тип и структуру данных в дизассемблированной программе C/C++?
Я сделал бинарный исполняемый файл, дизассемблированный с помощью дизассемблера, такого как IDA Pro. Теперь я планирую как можно лучше распознавать информацию о типах и структурах данных. Есть ли какие-либо ссылки на ресурсы или идеи, которые...
4310 просмотров

Что происходит, когда вы проталкиваете адрес памяти в сборку?
Я пытаюсь реконструировать дизассемблированный двоичный файл. Я не понимаю, что он делает, когда делает вызов, например: нажмите $0x804a254 Еще больше сбивает с толку то, что этот адрес не является адресом инструкции и не находится в таблице...
4612 просмотров
schedule 10.04.2023

Подпись CGPatternGetStep()?
Кто-нибудь может объяснить мне следующую сборку? _CGPatternGetStep: +0 0007fb86 55 pushl %ebp +1 0007fb87 89e5 movl %esp,%ebp +3 0007fb89 53 pushl...
104 просмотров

Аппаратный ввод-вывод в текстовом режиме VGA в старой сборке dos Проблема
Прочитав хотя бы первые 3 или 4 главы примерно 4 разных книг по программированию на ассемблере, я дошел до стадии, когда я могу поместить «Hello World» на консоль dosbox с помощью MASM 6.11. Представьте себе мой восторг !! В первой версии моей...
2802 просмотров
schedule 10.06.2022

Как разобрать системный вызов
Если у меня есть виртуальный адрес системного вызова, могу ли я разобрать этот системный вызов? Я хочу сделать это при работающем ядре, чтобы узнать, какие все адреса обрабатываются конкретным системным вызовом во время работы. Я использую...
833 просмотров

Изменения в программе. Дизассемблер IDA
Есть такая часть кода. /* bla bla bla */ .text:0040C777 align 4 .text:0040C778 .text:0040C778 loc_40C778: ; CODE XREF: sub_40C424+289j .text:0040C778 mov dword ptr [esp+4], 493E0h...
2317 просмотров
schedule 21.02.2023

Двойное умножение независимо от длины переменной?
Мне было интересно, влияет ли длина двойной переменной на время умножения . В целях тестирования я написал следующий небольшой фрагмент кода: #include <iostream> #include <time.h> int main() { double x = 123.456; double a =...
712 просмотров
schedule 04.12.2022

Почему мой шеллкод не работает (в Linux)?
Ниже я написал небольшой шеллкод: #include <stdlib.h> int main() { __asm__("jmp calloffset\n" "poploffset: popl %%esi\n" "movl $1,%%eax\n" "movl $6,%%ebx\n" "int $0x80\n" "calloffset: call...
674 просмотров

Как получить список имен файлов из статической библиотеки с расширением .o
У меня есть два файла программы c temp1.c и temp2.c . Я скомпилировал и сгенерировал файлы dot o для этих temp1.o и temp2.o . После этого я сгенерировал final.o и final.a , объединив эти два файла dot o . Теперь эти две статические...
674 просмотров
schedule 17.09.2022

Необходимо сгенерировать ассемблерный код для структур и переменных
Мне нужно понять некоторые внутренности структур данных, сгенерировав ассемблерный код для функций и глобальных, локальных структур, переменных. Из этой ссылки: http://axelio.wordpress.com/2007/07/24/be-careful-with-packed-structures/ Я...
168 просмотров
schedule 09.12.2022

objdump дизассемблировать исполняемый файл, скомпилированный с параметром -marm как инструкции для большого пальца
Я скомпилировал некоторый код с помощью gcc -marm, а затем, когда я пытаюсь разобрать его с помощью objdump, половина инструкций состоит из 16 бит, поэтому я думаю, что это инструкции для большого пальца. Почему ? Я видел этот вопрос: objdump и...
1154 просмотров
schedule 10.12.2022

x86 сборка запихнуть OFFSET и мнемонику?
Я пытаюсь немного научиться ассемблеру, создавая небольшие программы на C в Visual Studio 2012 Express , а затем дизассемблируя их в Immunity Debugger . Но я явно столкнулся с чем-то, чего не понимаю: 012A13F0 68 58582A01 PUSH OFFSET...
13888 просмотров

Дизассемблировать необработанный машинный код x64
Какова правильная архитектура, чтобы получить objdump для дизассемблирования необработанного кода x64? Вы могли бы подумать, что -m x86-64 должно работать, прочитав справку, но это не так. Я пробовал обе версии cygwin64: $ objdump --version...
7231 просмотров
schedule 14.05.2024