Сейчас на форуме: jinoweb (+6 невидимых) |
![]() |
eXeL@B —› Программирование —› Не выходит до конца скрестить две простые програмки |
Посл.ответ | Сообщение |
|
Создано: 05 января 2016 17:25 · Личное сообщение · #1 В целях изучения ассемблера решил соединить и доработать немного две программы из тутора ARTEAM проверяющую правильность РЕ и пропатчить если версия ядра в заголовке установлена для Vista и выше. Казалось бы ничего сложного, но только в копипастном коде с заменой на свои данные компилируется совсем не то, даже вызов функций получается другой, да еще и код при промотке в Ольке меняется как в защите аспра. В общем вот сам код: Code:
В архиве все исходники + скрины с ольки. Подскажите что делаю неправильно ![]() ![]() |
|
Создано: 05 января 2016 20:46 · Поправил: -=AkaBOSS=- · Личное сообщение · #2 между скринами из ольки по коду разницы вообще не видно. там где вместо arg.1 видится только dword ptr [ebp+8] - надо нажать ctrl+a, чтобы запустить анализ модуля. после этого я думаю отображение будет совпадать. shiroko пишет: меняется как в защите аспра ой ну не надо вот сравнений пжлст, не к месту же. Code:
даже так? пофиг на структуры, все компиляторы одинаковы, да? короч мессаджбоксов на каждый кейс напихано много, но нужно всего лишь банально пройитсь по структурам, в противном случае тул работать будет, мягко говоря, неадекватно ![]() |
|
Создано: 05 января 2016 23:07 · Личное сообщение · #3 |
|
Создано: 05 января 2016 23:25 · Поправил: -=AkaBOSS=- · Личное сообщение · #4 Code:
таким образом, если нажать Patch до того как нажмёшь Go, в процедуре Patch ты обращаешься к пустой строке, и не будет файла для обработки короч расскажи что и где не получается, а то неясно вообще в чём претензия к коду ![]() |
|
Создано: 06 января 2016 01:37 · Поправил: shiroko · Личное сообщение · #5 Все, сделал! Не знаю, где именно крылась опечатка в прилагаемом коде, но вернувшись к своему первоначальному более простому варианту все получилось после недолгих манипуляций с кодом заработало. Code:
Правда во время тестирования возникла пара моментов, связанных больше с Олькой, которые порядком озадачили. 1) местами генерировался код, который во время пролистывания скроллом в CPU просто менялся один на другой, о чем я видимо не верно ранее выразился меняется как в защите аспра , тем самым вызвав негодование у -=AkaBOSS=- Это происходит обычно в верхней\нижней части экрана и видимо как-то нарушается последовательность кратности длин определенных команд, что подводит отладчик к двоякому толкованию кода. 2)временами точки останова не хотят ставиться на определенную команду, так как одновременно выделяется сразу несколько строк кодаю Это как-то связанно с сохранениями в UDD или тому есть другое объяснение ![]() |
|
Создано: 06 января 2016 01:42 · Личное сообщение · #6 |
|
Создано: 06 января 2016 01:53 · Личное сообщение · #7 |
![]() |
eXeL@B —› Программирование —› Не выходит до конца скрестить две простые програмки |