![]() |
eXeL@B —› Вопросы новичков —› CODE RIP |
Посл.ответ | Сообщение |
|
Создано: 13 декабря 2008 21:01 · Личное сообщение · #1 Прочитал статью Broken Sword*а про Code rip Broken Sword*а www.wasm.ru/article.php?article=coderip01 В общих чертах понял. Но меня интерисует вопросы: 1) Как отследить изменения стека до (какие параметры приготавливаются до исполнения функции) 2) Как и чем компелировать выдранный код ? 3) Хотелось бы посмотреть как это работает на практике! Broken Sword обещал продолжение этой статьи (практическое воплощение статьи), но к сожалению тема заглохла!!! Может есть какая статья или дока ( на русском!) где это всё подробно (пошагово) описывается!!! P.S. Нашёл только одну статью где описывается практика www.wasm.ru/article.php?article=addfunc . Вот пару вопросов по этой статье: "Найти участок кода, отвечающий непосредственно за вычисление выражения несложно..." можно поподробнее как и что? Где взять прогу аIIDKing v2.0. ? Есть ли ещё примеры по этой теме (статьи, доки...) Искал в нете ничего дельного не нашёл! Просьба! Мож кто из продвинутых обитателей cracklab.ru напишет хорошую, подробную статью с практичекскими примерами по CODE RIP*у Заранее спасибо!!! ![]() |
|
Создано: 17 декабря 2008 15:44 · Личное сообщение · #2 |
|
Создано: 19 декабря 2008 09:31 · Поправил: tekton · Личное сообщение · #3 |
|
Создано: 19 декабря 2008 10:26 · Личное сообщение · #4 |
|
Создано: 20 декабря 2008 01:08 · Поправил: tekton · Личное сообщение · #5 v0id2k пишет: учите асм, без знаний этих никуда. В любом случае чистый сорец даже на асме вы не получите, всегда надо что то править и исправлять. Чем собственно и занимаюсь! ;) Конечно иногда пытаюсь "прыгнуть через голову", но статья проста зацепила! Накупил книг : Калашникова, Панова, но к сожалению некоторые вопросы не понятны! Например адресация такого типа Code:
И ещё проблемма в том, что у Калашникова в книге примеры не для Win32. И проблемма скачал MASM 10 но почитатьбы на русском как с ним работать! Может есть какая форошая инфа? Заранее спасибо! ![]() |
|
Создано: 20 декабря 2008 01:22 · Поправил: Veliant · Личное сообщение · #6 |
|
Создано: 21 декабря 2008 11:08 · Личное сообщение · #7 tekton пишет: Например адресация такого типа Это просто. По эталонному синтаксису ассемблера для Intel ВСЕ обращения к памяти (именованные, косвенно или явно указанные цифрами) должны быть в квадратных скобках, однако MASM допускает написание без скобок. Чтоб отличить: mov EAX,var1 (имелось в виду: поместить АДРЕС var1 в регистр EAX) от mov EAX,[var1] (имелось в виду: поместить значение var1 в регистр EAX) в MASM'e используется директива offset и первое выражение всегда надо писать: mov EAX,offset var1 тогда как второе выражение можно писать и mov EAX,[var1] и mov EAX, var1 Это сбивает с толку, но так принято в MASM'e. Дальше описал Veliant. Про LEA Изначально эта инструкция предназначена для формирования смещения. Но сама LEA не обращается к ячейкам памяти. Это позволяет использовать LEA для вычисления других значений, не обязательно используемых в качестве смещении. По эталонному синтаксису LEA – единственная инструкция, в которой операнд в квадратных скобках не означает обращение к памяти. По синтаксису MASM получается: lea EAX,EBX = lea EAX,[EBX] а вообще, такое выражение равно mov EAX,EBX Возникает вопрос: почему по эталону у LEA второй операнд должен быть в квадратных скобках, если обращения к памяти нет? Обращения нет, но адрес формируется. Выражения в квадратных скобках процессор считает перед тем, как выполнить основное действие инструкции (фактически вместе с формированием физического адреса). И если посмотреть на устройство машинной команды, то станет понятно при каких значениях постбайта в эталонном синтаксисе обязаны быть квадратные скобки. include – это не инструкция ассемблера. Это директива. Аналогичная директива должна быть во всех языках программирования (в C, например, это будет #include). Суть проста: присоединяет дополнительный файл исходника. Там может быть всё то же самое, что и в основном файле исходника (код, описания и т.п.). tekton пишет: Подскажите хороший справочник по инструкциям асма!? В.И. Юров Спец. Справочник Но самый актуальный справочник – документация на проц от Интел: Номера для поиска: 253665?? - том 1-й, 253666?? и 253667?? - том 2-й, глава "Instruction Format" 253668?? - том 3-й. tekton пишет: И проблемма скачал MASM 10 но почитатьбы на русском как с ним работать! Может есть какая форошая инфа? 1. уроки Айсилона (Iczelion'а) 2. мои статьи ----- Всем привет, я вернулся ![]() |
|
Создано: 22 декабря 2008 00:51 · Личное сообщение · #8 |
|
Создано: 24 декабря 2008 19:07 · Личное сообщение · #9 |
|
Создано: 24 декабря 2008 22:01 · Личное сообщение · #10 В свое время писал небольшой ман, может кому поможет разобраться ![]() ![]() |
|
Создано: 25 декабря 2008 12:56 · Личное сообщение · #11 |
|
Создано: 25 декабря 2008 19:12 · Личное сообщение · #12 |
|
Создано: 25 декабря 2008 21:14 · Личное сообщение · #13 |
|
Создано: 26 декабря 2008 21:20 · Поправил: tekton · Личное сообщение · #14 |
|
Создано: 26 декабря 2008 21:29 · Личное сообщение · #15 |
|
Создано: 26 декабря 2008 22:01 · Личное сообщение · #16 |
![]() |
eXeL@B —› Вопросы новичков —› CODE RIP |
Эта тема закрыта. Ответы больше не принимаются. |