| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Asm для Windows/Dos > нахождение точки входа в дизасемблере |
| Автор: zebrazoo 20.3.2012, 21:39 |
| Всем доброго времени суток! Стоит такая задача. Есть старая прога самописная, которая имеет некий механизм сверки с файлом контрольных сумм. Для работоспособности программы соответственно нужен файл, но он утерян. Программа (написана на Дельфи) логически выполняет следующие действия: 1. Отображение формы с кнопкой 2. По нажатию на кнопку происходит чтение файла и некая сверка данных в нем. 3. При ошибке сверки выводится фиксированное сообщение в поле вывода (TText или TRichText) вида "Ошибка бла-бла-бла" 4. Особенность проги в том, что она использует самописную DLL из которой и вызывает функции осуществляющие сверку и возвращающие сообщения (или их текст, точно неизвестно) Каким способом можно найти точку интерактивно (в дебагере), где осуществляется сверка и соответственно место финального перехода по ошибке сверки? Пытаюсь освоить IDA, но может лучше SoftIce для данной задачи? Какие способы установки брейкпоинтов, хуков и т.п. нужно использовать для отлова таких событий, как добавление текста в текстовое поле? Как установить брейкпоинт и найти код, который выводит заданное сообщение, если текст этого сообщения (т.е. адрес строки) легко находится в DLL? Буду признателен за любую помощь. Опыт программирования большой, но с ассемблером слабоватый, а с дизасемблером еще меньше. Концепции по верхам знаю, нехватает практики и толчка в нужном направлении |
| Автор: 500mhz 20.3.2012, 22:02 |
| ollydbg для этих целей в самый раз ну и поставь на CreaтeFile или ReadFile остановку, посмотри что читает и куда и зачем |