Посл.ответ |
Сообщение |
Ранг: 74.1 (постоянный), 34thx Активность: 0.03↘0 Статус: Участник
|
Создано: 07 мая 2011 10:20 · Поправил: Rustem · Личное сообщение · #1
Приветствую Есть комплект прог покрытых конвертом в сабже, сами проги написаны на дельфи. Ключ есть Сам конверт снимается легко. (детекта отладчика нет (может аффтар забыл поставить), импорт тоже вроде как норм) ОЕП нашелся быстро ( по первому вызову апи GetModuleHandle(0) из тела ехе, находится апилоггером) но вот в чем проблема - прога начинает запускаться и падает после запуска (походу в инициализации самого кода дельфи) Может что то забыл, сделать подправить TLS, или еще чего? Куда копать?
| Сообщение посчитали полезным: |
|
Ранг: 488.1 (мудрец), 272thx Активность: 0.35↘0 Статус: Участник
|
Создано: 07 мая 2011 10:37 · Личное сообщение · #2
Rustem у мну такая же проблема была когда аспр снимал. если ТЛС кривой то падает на цикле в самом начале проги
----- Наша работа во тьме, Мы делаем, что умеем. Мы отдаем, что имеем, Наша работа во тьме.... | Сообщение посчитали полезным: |
Ранг: 74.1 (постоянный), 34thx Активность: 0.03↘0 Статус: Участник
|
Создано: 07 мая 2011 10:48 · Личное сообщение · #3
VodoleYда очень похоже на кривую инициализацию. как исправил?
| Сообщение посчитали полезным: |
Ранг: 488.1 (мудрец), 272thx Активность: 0.35↘0 Статус: Участник
|
Создано: 07 мая 2011 10:58 · Личное сообщение · #4
а ты перед тем как снимать конверт посмотри как выглядит ТЛС
----- Наша работа во тьме, Мы делаем, что умеем. Мы отдаем, что имеем, Наша работа во тьме.... | Сообщение посчитали полезным: |
Ранг: 590.4 (!), 408thx Активность: 0.36↘0.18 Статус: Модератор
|
Создано: 07 мая 2011 11:53 · Личное сообщение · #5
Не обязательно TLS. Цикл в самом начале - инициализация статиков всяких. Проще всего посмотреть на какой функции падает.
----- старый пень | Сообщение посчитали полезным: |
Ранг: 74.1 (постоянный), 34thx Активность: 0.03↘0 Статус: Участник
|
Создано: 07 мая 2011 12:39 · Личное сообщение · #6
да не тлс. импорт все таки частично перенаправлен и поэтому восстановлен не полностью, поэтому падает на инициализации. как раз на таблице инициализации (джамп на мусор итп) Никто не знает как восстановить. есть способ, описанный в статье про сейфдиск - прогнать вызов по каждой функции в таблице и получить адрес но он полуручной получается
| Сообщение посчитали полезным: |
Ранг: 590.4 (!), 408thx Активность: 0.36↘0.18 Статус: Модератор
|
Создано: 07 мая 2011 14:56 · Личное сообщение · #7
Rustemну не всеж автоматами делать. иногда, знаете ли, и ручками поработать можно.
----- старый пень | Сообщение посчитали полезным: |
Ранг: 74.1 (постоянный), 34thx Активность: 0.03↘0 Статус: Участник
|
Создано: 07 мая 2011 16:25 · Поправил: Rustem · Личное сообщение · #8
r_eразобрался. куски кода апи вырваны и перемещены в свой код, идет прыжок в середину, но восстанавливается легко
| Сообщение посчитали полезным: |
Ранг: 57.7 (постоянный), 49thx Активность: 0.07↘0 Статус: Участник
|
Создано: 07 мая 2011 19:47 · Личное сообщение · #9
Rustem пишет: Что это за функция из кернел32 ? winxpsp3 64:A1 18000000 mov eax, dword ptr fs:[18] 8B80 C4000000 mov eax, dword ptr ds:[eax+C4] GetStartupInfoA?
| Сообщение посчитали полезным: |
Ранг: 74.1 (постоянный), 34thx Активность: 0.03↘0 Статус: Участник
|
Создано: 07 мая 2011 22:27 · Личное сообщение · #10
inffoGetThreadLocale mov eax, dword ptr fs:[18] mov eax, dword ptr ds:[eax+C4]
| Сообщение посчитали полезным: |