singlepost

ПОМОГИТЕ… компиляция после дизассемблирования…. << На главную или назад  

задача стояла простая: залезть в прогу и слегка изменить возможности.
установил IDA, дизассемблировал, а потом из этого создал файл с++. внес все необходимые изменения и хочу просто откомпиллировать этот файл. установил wxDev-C++ так он какой-то проект создает.
просто скомпиллировать можно полученный с++ код?

пишите в личку, пожалуйста

23 ответов в теме “ПОМОГИТЕ… компиляция после дизассемблирования….”

  1. 12
    Игорь Шумейко ответил:

    кругом одни идиоты…

  2. 11
    Виктор Щепёткин ответил:

    а что уже olly dbg отпал…одну блин инструкцию исправить – проблему нашёл…

  3. 10
    Вячеслав Барболин ответил:

    Так ты не литералы команд смотри, а код… jmp короче, чем jle. Остальное можно попробовать забит NOPами.. А там уж как повезёт.

  4. 9
    Cyber Max ответил:

    >> бинарник в текстовом файле открываем?

    блин… HVIEW наример для этого есть… но я вообще то имел в виду самостоятельно написанную программу которая откроет, пропатчит и закрое файл. Между прочим 3 строчки кода, не считая прототипа main и заголовков файлов в include :)

  5. 8
    Александр Мальгин ответил:

    text:0047CF37 jle short loc_47CF50
    вот строчка из иды
    jle нужно на jmp заменить… но это ведь ассемблер…
    ща посмотрим

  6. 7
    Александр Мальгин ответил:

    место исправления четко нашел
    но в IDA не могу исправить, поэтому всевдо код сделал
    посоветуйте как действовать, пожалуйста

  7. 6
    Cyber Max ответил:

    ну как.. в бинарнике тоже место нашел по смешению.. и пропатчил пару байт (ну или не пару.. сколько нужно, но так чтобы окуратно ничего не испортить – там баланс стека или еще что то).

  8. 5
    Александр Мальгин ответил:

    как внести небольшие изменения в программу?
    мне нужно из условного джампа сделать безусловный, в принципе все :)

  9. 4
    Cyber Max ответил:

    … приехали…
    берем бинарник… открываем его на запись, перемешаемся на место где нужно пропатчить 1 байт (предварительно вычислив значение смешения от начала файла в IDA) и записываем на его место нужное значение команды.. закрываем бинарник. Собственнно все.

  10. 3
    Александр Мальгин ответил:

    эммм :)
    это набор слов…
    бинарник в текстовом файле открываем?

  11. 2
    Вячеслав Барболин ответил:

    Мда.. ТС! По Вам башорг скучает!
    Вперёд на wasm.ru, и учиться-учиться-учиться..

  12. 1
    Cyber Max ответил:

    м-да.. Гладны через Ж… вот что получилось.

    IDA нужна только для дизасемблирования и понимания алгоритма, никто и нигде не скажет что даже асемблерный код сгенерированный IDA будет 100% работоспособный, а вы уже на С++ замахиваетесь.

    Изучил код, подправил в бинарном файле вот ивсе дела.. если места мало – тогда извращатся прийдется – всякими там переходами. Все в общем зависит от конкретного случая… и не забыть еще контрольную сумму файла подправить после этого.

Клуб программистов работает уже ой-ой-ой сколько, а если поточнее, то с 2007 года.