Вход через социальные сети

  • 24.02.2015, 18:36
    0 up down
    Сообщение
    Пользуюсь ida pro. Платная она, конечно, но россиянам это не помеха.)
  • 24.02.2015, 22:56
    0 up down
    Сообщение

    Предположу что хорошего декомпилятора не существует - как только вы используете библиотеку где темплейт на темплейте - вы получаете что информация безвозвратно теряется. Грубо говоря не имея исходников темплейта восстановить программу невозможно.

  • 24.02.2015, 23:33
    0 up down
    Сообщение

    folk в 24.02.2015, 23:56 написал(а): link
    Предположу что хорошего декомпилятора не существует - как только вы используете библиотеку где темплейт на темплейте - вы получаете что информация безвозвратно теряется.
    Если используется манглинг, куча информации не теряется, и она очень-очень полезна.
  • 25.02.2015, 00:09
    0 up down
    Сообщение

    Теряется, если у вас нет исходного текста темплейта. Для обычного кода у вас есть машинные инструкции которые позволят вам реконструировать С. Для темплейта у вас этого нет - у вас может быть сложнейший темплейт который раскроется в i++ и на этом все и кончится. Да вы будете знать что здесь был такой то темплейт с такими то параметрами, но это не сильно поможет для анализа например кода с использованием boost.

    Иными словами дизассемблер в C с деманглингом даст почти столько же информации что и C++ дизассемблер. Более того если вы дизассемблируете чтобы изучить больше чем десяток функций - то значит вы делаете что то не так.. Больше информации вы скорее всего получите от трассировки кода в отладчике или анализе графа вызовов.

     

    Сообщение было отредактировано folk в 25.02.2015, 01:09.


  • 25.02.2015, 12:22
    0 up down
    Сообщение

    Спасибо! Понятно.

  • 25.02.2015, 14:33
    0 up down
    Сообщение

    А да, по поводу декомпиляторов, наверное ida хороший вариант. Мне приходилось в основном пользоваться связкой objdump + gdb + hexedit + awk + emacs из cygwin пакета, emacs только win. Наверняка есть более удобные среды, но тут все таки возможность получать текст и работать с ним скриптами на awk, причем получается для любой платформы - лень переучиваться уже)