eXeLab
eXeL@B ВИДЕОКУРС !

ВИДЕОКУРС ВЗЛОМ
выпущен 12 ноября!


УЗНАТЬ БОЛЬШЕ >>
Домой | Статьи | RAR-cтатьи | FAQ | Форум | Скачать | Видеокурс
Новичку | Ссылки | Программирование | Интервью | Архив | Связь

Русский / Russian English / Английский

Сейчас на форуме: moreno410, NoRG, naron23vrn (+1 невидимый пользователь)
 · Начало · Статистика · Регистрация · Поиск · ПРАВИЛА ФОРУМА · Язык · RSS · SVN ·

 eXeL@B —› Софт, инструменты —› MUltimate Assembler
<< . 1 . 2 . 3 . 4 . 5 . 6 . >>
Посл.ответ Сообщение


Ранг: 534.6 (!)
Статус: Uploader
retired

Создано: 14 сентября 2009 09:42 · Поправил: BoRoV New!
Цитата · Личное сообщение · #1

Плаг для ольки, позволяющий добавлять/заменять в дизасме и соответствено в проге асм код даже выходящий за пределы если он вставляется посреди имеющегося кода, при этом все адреса у call, jcc, и прочего пересчитыются с учетом этой новой вставки.

// З.Ы. Было пять скринов пошаговой инструкции его использования, но автор почему-то их удалил
// З.Ы.2. Автор с россии, а че прошел мимо нас... хз



v.0.1
Первый релиз, в нем было несколько багов

v0.2
- Supports data disassembling and assembling as a C-style string.
- Suggests you to create a backup before disassembling, so that the modifications will be visible.
- Help added.
- Minor fixes.

v.0.3
- Disassembles external jumps and calls.
- Added an options dialog.
- Fixes a couple of crashes.
- A right click menu to make LCF-AT happy

That's all, I've completed my ToDo list

Кажется все он пофиксил, т.к. все говорили что те баги что были пофиксены

rammichael.com/

Ранг: 14.7 (новичок)
Статус: Участник

Создано: 10 октября 2009 21:24 New!
Цитата · Личное сообщение · #2

Вышла версия 0.4
Теперь у плагина интерфейс с табами, которые автоматом сохраняются.



Качать --> тут <--


Статус: Пришелец

Создано: 11 октября 2009 20:15 New!
Цитата #3

Bronco пишет:
Для сворачивания и перемещения кода

Деобфускация что ли?


Статус: Пришелец

Создано: 11 октября 2009 20:25 New!
Цитата #4

RaMMicHaeL
Поддержку @@ и JMP @B, JMP @F не будешь делать? Если будешь, то придётся дополнительно запретить метки @F и @B.

Ранг: 14.7 (новичок)
Статус: Участник

Создано: 11 октября 2009 20:43 New!
Цитата · Личное сообщение · #5

Bronco
Подробнее можно?
Я скриптами не пользуюсь.

progopis
Как бы не собирался, сам ими не пользуюсь =)
Че, реально удобно?


Ранг: 630.4 (!)
Статус: Участник
CyberMonk

Создано: 11 октября 2009 23:26 New!
Цитата · Личное сообщение · #6

RaMMicHaeL сворачивание кода и перемещение constant folding

Свёртывание констант один из методов оптимизации, реализуемый во многих современных компиляторах состоит в вычислении во время компиляции арифметических выражений, которые должны были бы вычисляться во время исполнения программы. Например, range:=13; index:=range+5 можно заменить на range:=13; index:=18. Это правда не единственный метод ...

Сворачивание или фолдинг (англ. folding) — одна из функций текстового редактора. Означает сворачивание определённых фрагментов редактируемого кода или текста в одну строку. В качестве таких фрагментов может быть любой логически цельный фрагмент кода программы, например функция, класс, цикл и т. п. или фрагмент текста, например абзац, глава, секция.

К примеру, фолдинг функции приводит к сворачиванию всего кода функции в одну строку таким образом, что видно только название функции. Обычно, чтобы свернуть функцию нужно нажать на символ «−», слева от названия функции. Чтобы увидеть весь код, т. е. развернуть функцию, нужно нажать на символ «+» появляющийся у свернутых функций.

Фолдинг удобно применять при редактировании больших файлов. Можно свернуть все объекты кроме редактируемого, что позволяет более быстро перемещаться по файлу и просматривать его.

Правда в данном случае Bronco имеет ввиду связку для легкой оптимизации кода и сворачивания , типо того как приведен в пример в скрипте vnekrilov-у. Пример скрипта ниже

{ Атач доступен только для участников форума } - сворачивание.txt

Ранг: 14.7 (новичок)
Статус: Участник

Создано: 11 октября 2009 23:54 New!
Цитата · Личное сообщение · #7

И что в этом файле за код?
Я не совсем понял, что вы мне предлагаете.

Добавить оптимизацию кода?
Этого не будет.

mak пишет:
Сворачивание или фолдинг (англ. folding) — одна из функций текстового редактора. Означает сворачивание определённых фрагментов редактируемого кода или текста в одну строку.

А это может добавлю как нибудь. Если хотите ускорить процесс, можете мне рассказать, как это делается с помощью контрола RAEdit.


Ранг: 256.3 (наставник)
Статус: Участник
Advisor

Создано: 12 октября 2009 03:53 New!
Цитата · Личное сообщение · #8

RaMMicHaeL пишет:
Добавить оптимизацию кода?
Этого не будет

А чего же так категорично ???
Для того чтоб такскать "за ухо", любой нормальный кусок кода, даже цикличный, хоть по всей памяти процесса, скрипта для Ольки, хаватает, максимум на 15-20 строчек. Добавь чтоб нопы вручную не киллять, уже польза будет.

Ранг: 116.5 (ветеран)
Статус: Участник

Создано: 12 октября 2009 09:06 · Поправил: Valemox New!
Цитата · Личное сообщение · #9

В v0.4 траблы с фантиком, походу, так и не решились... а жаль!

Ранг: 14.7 (новичок)
Статус: Участник

Создано: 12 октября 2009 11:13 New!
Цитата · Личное сообщение · #10

Bronco пишет:
Для того чтоб такскать "за ухо", любой нормальный кусок кода, даже цикличный, хоть по всей памяти процесса, скрипта для Ольки, хаватает, максимум на 15-20 строчек.

Что? 0_о

Bronco пишет:
Добавь чтоб нопы вручную не киллять, уже польза будет.

Фильтровать и не патчить нопы?
А как они ваще у вас там оказываются?
Даже интересно, вы что с плагом то делаете, мусорный код чистите?

Valemox пишет:
В v0.4 траблы с фантиком, походу, так и не решились... а жаль!

Я же все расписал - баг фантика, блокирует функцию CreateThread.
Копаться в его дровах я не хочу, да и не очень то умею.

Ранг: 116.5 (ветеран)
Статус: Участник

Создано: 12 октября 2009 12:18 · Поправил: Valemox New!
Цитата · Личное сообщение · #11

RaMMicHaeL пишет:
Копаться в его дровах я не хочу, да и не очень то умею

А ежли Хэллу отписаться вличко, мож вдвоем то пофиксили ету беду (авось не откажет)?


Ранг: 990.3 (! ! !)
Статус: Модератор
Author of DiE

Создано: 13 октября 2009 09:10 · Поправил: Модератор New!
Цитата · Личное сообщение · #12

RaMMicHaeL пишет:
Я же все расписал - баг фантика, блокирует функцию CreateThread.Копаться в его дровах я не хочу, да и не очень то умею.


это не баг, это фича (с)
дроф не будет переписываться, надо по другому создавать поток.


Статус: Пришелец

Создано: 13 октября 2009 09:17 New!
Цитата #13

Дров фантома не пускаю вход. Прекрасно справляюсь с анти-отладкой. Может и вам стоит попробовать?

Ранг: 14.7 (новичок)
Статус: Участник

Создано: 14 октября 2009 14:09 New!
Цитата · Личное сообщение · #14

Накатал новую версию.
- Исправлен баг с перерисовкой при горизонтальной прокрутке.
- Бекапы теперь корректно создаются перед патчингом.

Качать --> тут <--

progopis пишет:
Поддержку @@ и JMP @B, JMP @F не будешь делать?

Bronco пишет:
немного расширить диапозон примения, ни_ко_му не помешает.

Я тут подумал, может добавить возможность писать плагины?
Текст будет сначала переходить через вашу функцию, а потом уже обрабатываться и писаться в память.

Ранг: 52.2 (постоянный)
Статус: Участник

Создано: 14 октября 2009 14:27 New!
Цитата · Личное сообщение · #15

RaMMicHaeL пишет:
Я тут подумал, может добавить возможность писать плагины

плагины для плагина ? Оо жжешь, однако

Ранг: 14.7 (новичок)
Статус: Участник

Создано: 4 ноября 2009 16:57 New!
Цитата · Личное сообщение · #16

Обнова, v1.1
- Поддержка юникода, C-синтакс:
L"UNICODE\0"
- Код сохраняется при потере фокуса, теперь можно не боятся потери всего кода из за вылета оли.
- Улучшена работа с табами.

Качать --> тут <--


Ранг: 534.6 (!)
Статус: Uploader
retired

Создано: 4 ноября 2009 17:41 New!
Цитата · Личное сообщение · #17

сделай хоть так как уже просилось, например фильтруй на "nop", если попадается то не добавляем, и тогда уже более чистый код получается, сам недавно столкнулся с этим, где команды разбросаны посреди тучи нопов, приходилось копировать листинг в блокнот там удалять нопы, и вставлять в твой плаг, не удобно немного, а затратить тех мин 10 максимум на дописания такого фильтра в плаг несравнимо мало с тем что тратится на самостаятельную чистку


Ранг: 129.0 (ветеран)
Статус: Участник

Создано: 4 ноября 2009 18:14 New!
Цитата · Личное сообщение · #18

BoRoV пишет:
команды разбросаны посреди тучи нопов, приходилось копировать листинг в блокнот там удалять нопы, и вставлять в твой плаг, не удобно немного, а затратить тех мин 10 максимум на дописания такого фильтра в плаг несравнимо мало с тем что тратится на самостаятельную чистку

Да, согласен, тоже столкнулся с таким. Ну а ввобщем плаг действительно хорош и удобен.


Ранг: 220.6 (наставник)
Статус: Участник

Создано: 4 ноября 2009 18:28 New!
Цитата · Личное сообщение · #19

BoRoV, verdizela, да это получается уже деобфускатор какой-то) Автору фича реквест от таких случаев:
*добавить поддержку макросов в редакторе

Ранг: 14.7 (новичок)
Статус: Участник

Создано: 4 ноября 2009 18:54 New!
Цитата · Личное сообщение · #20

HandMill пишет:
да это получается уже деобфускатор какой-то)

Собственно согласен, цель у плагина не та.

HandMill пишет:
*добавить поддержку макросов в редакторе

Это по моему перебор. Все таки это плагин, а не ассемблер.

Может сделать поддержку regex?
Типа чтоб можно было написать как нибудь так:
replace("/NOP/", "")
Хотя по моему это тоже лишнее.

Ранг: 133.4 (ветеран)
Статус: Участник

Создано: 7 ноября 2009 15:19 · Поправил: SVLab New!
Цитата · Личное сообщение · #21

Нельзя ли сделать плаг менее зависимым от способа форматирования текста? Например, иногда такая запись
Code:
  1. <00B30000>
  2.  
  3.                  mov byte ptr ds:[ac413e],e9
  4.                  mov dword ptr ds:[ac413f],@01
  5.                  jmp ac4001
  6.          @01:    call ac4148

для меня удобнее, чем
Code:
  1. <00B30000>
  2.  
  3.          mov byte ptr ds:[ac413e],e9
  4.          mov dword ptr ds:[ac413f],@01
  5.          jmp ac4001
  6.          @01:
  7.          call ac4148

Ну, и размер tab'а в опциях желательно задавать.

Еще, если окно плага полностью свернуть, а потом развернуть, он становится неработоспособным.

Ранг: 14.7 (новичок)
Статус: Участник

Создано: 7 ноября 2009 23:37 New!
Цитата · Личное сообщение · #22

SVLab пишет:
Нельзя ли сделать плаг менее зависимым от способа форматирования текста?

Да, была такая мысль, сделаю в следующей версии.

SVLab пишет:
Ну, и размер tab'а в опциях желательно задавать.

Зачем?

SVLab пишет:
Еще, если окно плага полностью свернуть, а потом развернуть, он становится неработоспособным.

Знаю, уже исправлено, будет в следующей версии.


Ранг: 534.6 (!)
Статус: Uploader
retired

Создано: 8 ноября 2009 00:03 New!
Цитата · Личное сообщение · #23

SVLab пишет:
Ну, и размер tab'а в опциях желательно задавать.

RaMMicHaeL пишет:
Зачем?

ну мне тоже не удобно, я привык что размер табуляции два символа, да и думаю и у остальных свои привычные для каждого размеры

Ранг: 133.4 (ветеран)
Статус: Участник

Создано: 8 ноября 2009 06:20 · Поправил: SVLab New!
Цитата · Личное сообщение · #24

А как сделать, чтобы по PUSH 0 (вместо 0 любое число из диапазона -80 - 7f) в стек ложился dword? По всякому пробовал записать, все равно получается байт.

Ранг: 214.1 (наставник)
Статус: Участник

Создано: 8 ноября 2009 09:30 · Поправил: gegter New!
Цитата · Личное сообщение · #25

выложите в тему плаг плиз, регистрация тупая

// SVLab, спс


Ранг: 534.6 (!)
Статус: Uploader
retired

Создано: 8 ноября 2009 10:31 New!
Цитата · Личное сообщение · #26

SVLab, а если так
Code:
  1. mov eax, 74h
  2. push eax

Ранг: 133.4 (ветеран)
Статус: Участник

Создано: 8 ноября 2009 11:21 New!
Цитата · Личное сообщение · #27

BoRoV
"Так" как-то "не очень" , а если регистры все заняты?

gegter
Заходи не на форум, а на сайт rammichael.com/

{ Атач доступен только для участников форума } - multiasm1_1.rar


Ранг: 534.6 (!)
Статус: Uploader
retired

Создано: 8 ноября 2009 11:27 New!
Цитата · Личное сообщение · #28

ну тогда так:
Code:
  1. add esp, -4
  2. mov dword ptr [esp], 74h

Ранг: 133.4 (ветеран)
Статус: Участник

Создано: 8 ноября 2009 22:19 New!
Цитата · Личное сообщение · #29

BoRoV
Да, в принципе, извратиться можно по-разному, вопрос ведь не в этом. Может быть, будет проосто ввести различие для команд типа push 00, push 0000 и push 00000000. А, может, я просто туплю?


Ранг: 534.6 (!)
Статус: Uploader
retired

Создано: 8 ноября 2009 22:32 New!
Цитата · Личное сообщение · #30

так ты предлагаешь олькин ассемблер переделать?!

Ранг: 133.4 (ветеран)
Статус: Участник

Создано: 8 ноября 2009 22:59 · Поправил: SVLab New!
Цитата · Личное сообщение · #31

BoRoV
Ну, я х.з. какой ассемблер использует плаг , но как то вопрос желательно разрешить
RaMMicHaeL
По какому принципу нумеруются вкладки и где эта инфа держится? Как ее сбросить? Например, я удалил вкладки 1 и 3, всего было 4 (вроде бы). Следующая вкладка создалась с номером 7. Непонятно. Неплохо было бы сохранять и восстанавливать при последующем запуске размеры и местоположение окна плага.
<< . 1 . 2 . 3 . 4 . 5 . 6 . >>
 eXeL@B —› Софт, инструменты —› MUltimate Assembler

Оригинальный DVD-ROM: eXeL@B DVD !

Вы находитесь на форуме сайта EXELAB.RU
Проект ReactOS