Есть ли способ дизассемблировать исполняемые файлы Pro * C/C++?Как разобрать программы Pro * C/C++?
ответ
В общем случае для исполняемых файлов должны быть дизассемблеры, независимо от того, как они были созданы (gcc, proC, рукописный текст и т. Д.), Но декомпиляция оптимизированного двоичного файла, скорее всего, приведет к нечитабельной или исходной.
Кроме того, Pro C/C++ не является непосредственно компилятором, но выводит код C/C++, который затем, в свою очередь, скомпилирован с помощью собственного компилятора платформы (gcc, xlc, vC++ и т. Д.).
Кроме того, сгенерированный код часто не может быть легко скомпилирован снова без большого количества исправлений вручную.
Если вы все еще хотите испытать удачу, посмотрите на этот список x86 disassemblers для начала.
Попробуйте разборку с помощью дизассемблера по вашему выбору. В конце концов исполняемые файлы, скомпилированные с препроцессором PRO C/C++, являются просто исполняемыми файлами C/C++.
Если то, что вы ищете, SQL предложения в пределах вашего кода, вы можете захотеть взглянуть на:
$ strings your_executable_file
Это даст вам список всех констант строк, присутствующих в исполняемый и скорее всего, вы получите SQL-предложения с этим.
Удачи.
Это хорошо. Если бы вы могли предоставить мне инструмент дизассемблера, это будет более приятным. – Ahmed
Кроме того, я ищу все программные коды, а не только инструкции SQL. – Ahmed
Ну, инструмент дизассемблера зависит от платформы. Поскольку вы не указали один из них, я предположил, что у вас уже есть инструмент, или вы не хотите комментировать архитектуру вашей ОС или ЦП, которую вы используете. –
Попробуйте PE Explorer Disassembler, очень приличный дизассемблер для 32-битных исполняемых файлов.
Голосование, чтобы закрыть как вне темы: рекомендации инструмента или слишком широкие. –