Re: L2 PTS
Окей, вот такая штука:
http://klikr.org/b3681a10f4268d699e2421aa4fbc.png Это и есть пролог. Вообще рекомендую прочитать про calling convention. Многое станет ясно. Вот ты это заменяешь на jmp addr.В конце выполнения ты можешь сделать jmp в то место откуда пришел и программа продолжит выполнение. Или же сделать ret и она вернет значение. |
Re: L2 PTS
Цитата:
однако остались вопросы про Цитата:
|
Re: L2 PTS
Я думаю стоит начать с литературы, а то кол-во вопросов так и будет увеличиваться.
|
Re: L2 PTS
Цитата:
что нибудь посоветовать можете из книг? |
Re: L2 PTS
Sojang, Крупника\Юрова можно почитать. У них там вроде и учебники есть для вышек и простые книги для масс.
С забугорными не знаком. |
Re: L2 PTS
Цитата:
Ты берешь 5 байт и копируешь их к себе. Затем вместо 5 байт пишешь jmp в свою функцию. Там делаешь все, что нужно, после этого вызываешь 5 байт, которые перенес после чего делаешь jmp обратно (на тот же адрес который ты заменил +5 байт). http://coderx.ru/showthread.php?t=3609 Вот почитай. Вообще зря ты на х64 полез, не разобравшись с х32. Я могу ошибаться, более опытные форумчане думаю поправят. |
Re: L2 PTS
Цитата:
|
Re: L2 PTS
Ну я уверен, что есть более легальные способы, вот мои идеи:
делаешь dummy функцию, например с мессадж боксом и вместо ее пишешь jump |
Re: L2 PTS
Цитата:
спасибо в любом случае:) |
Re: L2 PTS
появилась новая проблема :D
Меняю начало функции на свой код(mov rax, адрес jmp rax) и все окей функция из моей длл вызывается, но как только я пытаюсь выполнить свой asm код(нужен что бы продолжить работу программы) приложение зависает и закрывается.. Из за чего это происходит?( Немного инфы из Dump File:Развернуть ↓Оригинал код:Развернуть ↓Мой код:Развернуть ↓ |
Текущее время: 07:32. Часовой пояс GMT +3. |
Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot