Форум программистов
 
Регистрация на форуме тут, о проблемах пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail, а тут можно восстановить пароль

Купить рекламу на форуме 15-35 тыс рублей в месяц

Вернуться   Форум программистов > Низкоуровневое программирование > Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM
Регистрация

Восстановить пароль
Повторная активизация e-mail


           Интенсив по Python 3-5 ИЮНЯ 2022. Знаете Python, но хотите расширить свои навыки?
           Slurm подготовили для вас особенный продукт! Оставить заявку по ссылке - https://slurm.club/3MeqNEk

Ответ
 
Опции темы Поиск в этой теме
Старый 27.06.2008, 03:27   #1
barand
Пользователь Подтвердите свой е-майл
 
Регистрация: 21.06.2008
Сообщений: 12
По умолчанию Как с поиощью hiew вставить в файл строчку, "раздвинуть" файл и вставить туда строчку?

Искал-искал по интернету, только вот это и нашёл:
http://www.hackzona.ru/hz.php?name=F...506&highlight=

Это тут парень пишет, что такого сделать нельзя в hiew. Что-то даже не по себе мне становится... Как нельзя? Простейшая ведь операция...

Тут предложено, как сделать, но уж больно неудобочитаемым будет текст программы в HIEW. Представьте себе- читаешь-читаешь, потом видишь: call xxx Ищешь строку по такому адресу, а она может находиться чёрт знает где, а ещё там надо тоже предусмотреть call yyy (если первый упомянутый оператор call находится по адресу, допустим, 20, то yyy должен быть равен 21) что бы программа вернулась по адресу yyy для продолжения... А если несколько вставляний? Мне до редактирования чужих программ, конечно, далеко ещё. Но свои-то как править?
Очень неудобно.

А если так: допустим, начало команды имеет адрес 00000125. Тогда выделяем (?) блок начиная с 25-го адреса и до конца файла, перемещаем (?) целый блок на столько байтов, сколько занимает вставляемая команда, а в освободившееся место прописываем свою команду.

Я почему вопросов понаставил: как вообще с этими блоками работать? Нашёл только вотhttp://bookz.ru/authors/kasperskii-k...-kasper05.html, Крис Касперский написал там:
"Для того что бы выделить
фpагмент необходимо однокpатно нажать Gray-'*'" (Фрагмент имеется ввиду блок)

Парни и девушки, где там какой Gray-'*'? Вообще у меня HIew 6.11, бесплатная версия. Может, поэтому там его нет? Cпасибо заранее. И ещё: может, я фантазирую на счёт того, чтобы блок сдвинуть, но... зачем же его тогда выделять, если сдвигать нельзя?

P. S. Касперский, может, хорошую работу написал, но явно не для начинющих.
P. S. Мне на данный момент и надо-то вставлять одну команду int 20, что бы по кускам работу програмы отслеживать...

Последний раз редактировалось barand; 27.06.2008 в 10:14.
barand вне форума Ответить с цитированием
Старый 27.06.2008, 11:47   #2
JTG
я получил эту роль
Старожил
 
Аватар для JTG
 
Регистрация: 25.05.2007
Сообщений: 3,694
По умолчанию

Цитата:
Мне на данный момент и надо-то вставлять одну команду int 20
Тогда можно не беспокоится о том, что будет с кодом за int 20, он же всё-равно не выполнится.

А так - всё там правильно написали, если всунуть данные в середину файла нужно же будет править идущие далее адреса call/jmp, с PE-EXE возни ещё больше.
Проще вставить jmp (затерев 2 байта, дополнив в случае необходимости nop`ами) на адрес где-то в свободном месте, там выполнить затёртую инструкцию+твой код и прыгнуть назад.

ЗЫ: Шейм он ю, Gray* - это звёздочка на цифровой панели. Лет надцать назад на традиционно белых клавах те клавиши были серыми, отсюда и название
пыщь
JTG вне форума Ответить с цитированием
Старый 28.06.2008, 10:58   #3
barand
Пользователь Подтвердите свой е-майл
 
Регистрация: 21.06.2008
Сообщений: 12
По умолчанию

Спасибо, что... Выделять блоки я научился. (Никогда бы н подумал. SEN хитрый- зачем, говорит в Hiew help- это ведь хакерский инструмент)
Теперь бы разобраться с перетаскиванием блоков с места на место...
barand вне форума Ответить с цитированием
Ответ

          Оплата за обучение в Kata Academy только после твоего трудоустройства в IT!
          Начни карьеру Middle Java-разработчика, подробнее на сайте академии, ссылка - https://clck.ru/fCqwP

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Рразъясните строчку. Amen Помощь студентам 11 30.08.2008 02:45
Файл вида "\\.\file.ext" braslavets Общие вопросы Delphi 1 19.06.2008 16:34
Файл в состоянии "Вырезать". NeiL Общие вопросы Delphi 0 24.04.2008 23:23
Запустить строчку как код. Dj_smart Общие вопросы Delphi 12 21.04.2008 21:58
Excel файл открывается не "до конца" (странички "не показываются" только серое поле) Dorvir Microsoft Office Excel 2 28.03.2008 10:03