Всем привет! Как написано, я должен записать в первые несколько байт процедуры, длинный переход. Так вот, как мне его записать? Если я записываю сам код, jmp @label, то у меня записывается короткий переход. и соответственно ничего не работает. Как записать длинный переход? Пробовал FFh,25h, тоже куда-то не туда он прыгает
Адрес начала оригинальной функции вычислил правильно. На отладчике видно. Но вот что туда записать нужно, чтоб сделать прыжок на мою функцию, я так и не понял PS: В смысле не засорять? Вы про то, что я по каждому вопросу, отдельную тему создаю? Мне кажется так наоборот гараздо лучше, другим людям будет гараздо проще найти ответы, и им не придется создавать новые темы. Каждому вопросу своя тема
Что-то я не очень понял, как с этой таблицей опкодов работать... Вот есть про фар прыжок EA cd JMP ptr16:16 Jump far, absolute, address given in operand EA cp JMP ptr16:32 Jump far, absolute, address given in operand FF /5 JMP m16:16 Jump far, absolute indirect, address given in m16:16 FF /5 JMP m16:32 Jump far, absolute indirect, address given in m16:32 Что это значит? И еще nobodyzzz, расскажи что это у тебя написано?
Я ничего не понимаю! В каждом примере, совершенно разные коды команды jmp mov eax, adrr; jmp eax т.е. - это мне вообще не понятно. опкоды масма, там тоже куча всего, и ничего толкового. Пример с рсдн, там 0х68 Когда я ставлю в своей программе jmp, то отладчик показывает FF25 Как тут понять?
в смысле заклинании кода? Я тут уже все что нашел про перехват апи перечитал. Скажите просто,какие байты у jmp? И (именно И, а не или) Где это можно узнать
Блин Клево )) Так интересно читается, спасибо. И кстати, записал команду FF и адрес процедуры моей. Отладчик пишет: Jump Far 00104005, число правильное, я сейчас делаю не для удаленного процесса, а просто для своего. Но вот, на этом шаге программа виснет.
Мда... Проблема была в том, что Jump addres, не работает! А вот push addres ret - работает! Вот и все что я хотел узнать Прочитая мой первый пост, ответ для тех, у кого такие же проблемы: Используйте конструкцию push адрес ret, вместо первых 6-и быйт оригинального обработчика!
Ну я пробовал штуки 4 разных машинных кода jump. Брал в основном из источников, которые вы давали. И всегда в отладчике эти коды превращались, то в Far Jump, и прыгали хз куда, то в near, и и т.п. А сейчас, адрес прыжка я не менял, просто поставил push/ret и сразу заработала вся программа, которая давольно много чего делает
Мдаааа... Парни, пипец нам тогда... раз уж jmp работать перестал... надеюсь это не заразно Так что берегите ret как зеницу ока