Сейчас на форуме: bartolomeo, -Sanchez-, morgot, sashalogout (+4 невидимых)

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


Ранг: 533.6 (!), 232thx
Активность: 0.450
Статус: Uploader
retired

Создано: 14 сентября 2009 09:42 · Поправил: BoRoV
· Личное сообщение · #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/

-----
Лучше быть одиноким, но свободным © $me




Ранг: 101.0 (ветеран), 344thx
Активность: 1.150
Статус: Участник

Создано: 11 октября 2009 20:15
· Личное сообщение · #2

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

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



Ранг: 101.0 (ветеран), 344thx
Активность: 1.150
Статус: Участник

Создано: 11 октября 2009 20:25
· Личное сообщение · #3

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



Ранг: 15.3 (новичок), 118thx
Активность: 0.01=0.01
Статус: Участник

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

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

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




Ранг: 673.3 (! !), 400thx
Активность: 0.40.31
Статус: Участник
CyberMonk

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

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

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

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

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

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

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

d3ed_11.10.2009_CRACKLAB.rU.tgz - сворачивание.txt

-----
RE In Progress [!] Coding Hazard [!] Stay Clear of this Cube




Ранг: 15.3 (новичок), 118thx
Активность: 0.01=0.01
Статус: Участник

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

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

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

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

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




Ранг: 312.0 (мудрец), 349thx
Активность: 0.460.65
Статус: Участник
Advisor

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

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

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

-----
Чтобы юзер в нэте не делал,его всё равно жалко..




Ранг: 116.5 (ветеран), 3thx
Активность: 0.070
Статус: Участник

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

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



Ранг: 15.3 (новичок), 118thx
Активность: 0.01=0.01
Статус: Участник

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

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

Что? 0_о

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

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

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

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



Ранг: 116.5 (ветеран), 3thx
Активность: 0.070
Статус: Участник

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

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

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




Ранг: 990.2 (! ! !), 380thx
Активность: 0.680
Статус: Модератор
Author of DiE

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

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


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

-----
[nice coder and reverser]




Ранг: 101.0 (ветеран), 344thx
Активность: 1.150
Статус: Участник

Создано: 13 октября 2009 09:17
· Личное сообщение · #12

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



Ранг: 15.3 (новичок), 118thx
Активность: 0.01=0.01
Статус: Участник

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

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

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

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

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

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



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

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

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

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



Ранг: 15.3 (новичок), 118thx
Активность: 0.01=0.01
Статус: Участник

Создано: 04 ноября 2009 16:57
· Личное сообщение · #15

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

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




Ранг: 533.6 (!), 232thx
Активность: 0.450
Статус: Uploader
retired

Создано: 04 ноября 2009 17:41
· Личное сообщение · #16

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

-----
Лучше быть одиноким, но свободным © $me




Ранг: 129.0 (ветеран), 116thx
Активность: 0.060
Статус: Участник

Создано: 04 ноября 2009 18:14
· Личное сообщение · #17

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

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

-----
We do what we want because we can.




Ранг: 222.2 (наставник), 115thx
Активность: 0.140.01
Статус: Участник

Создано: 04 ноября 2009 18:28
· Личное сообщение · #18

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

-----
все багрепорты - в личные сообщения




Ранг: 15.3 (новичок), 118thx
Активность: 0.01=0.01
Статус: Участник

Создано: 04 ноября 2009 18:54
· Личное сообщение · #19

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

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

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

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

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



Ранг: 133.4 (ветеран), 57thx
Активность: 0.110
Статус: Участник

Создано: 07 ноября 2009 15:19 · Поправил: SVLab
· Личное сообщение · #20

Нельзя ли сделать плаг менее зависимым от способа форматирования текста? Например, иногда такая запись
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'а в опциях желательно задавать.

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



Ранг: 15.3 (новичок), 118thx
Активность: 0.01=0.01
Статус: Участник

Создано: 07 ноября 2009 23:37
· Личное сообщение · #21

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

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

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

Зачем?

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

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




Ранг: 533.6 (!), 232thx
Активность: 0.450
Статус: Uploader
retired

Создано: 08 ноября 2009 00:03
· Личное сообщение · #22

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

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

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

-----
Лучше быть одиноким, но свободным © $me




Ранг: 133.4 (ветеран), 57thx
Активность: 0.110
Статус: Участник

Создано: 08 ноября 2009 06:20 · Поправил: SVLab
· Личное сообщение · #23

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



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

Создано: 08 ноября 2009 09:30 · Поправил: gegter
· Личное сообщение · #24

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

// SVLab, спс




Ранг: 533.6 (!), 232thx
Активность: 0.450
Статус: Uploader
retired

Создано: 08 ноября 2009 10:31
· Личное сообщение · #25

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


-----
Лучше быть одиноким, но свободным © $me




Ранг: 133.4 (ветеран), 57thx
Активность: 0.110
Статус: Участник

Создано: 08 ноября 2009 11:21
· Личное сообщение · #26

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

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

e717_08.11.2009_CRACKLAB.rU.tgz - multiasm1_1.rar




Ранг: 533.6 (!), 232thx
Активность: 0.450
Статус: Uploader
retired

Создано: 08 ноября 2009 11:27
· Личное сообщение · #27

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


-----
Лучше быть одиноким, но свободным © $me




Ранг: 133.4 (ветеран), 57thx
Активность: 0.110
Статус: Участник

Создано: 08 ноября 2009 22:19
· Личное сообщение · #28

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




Ранг: 533.6 (!), 232thx
Активность: 0.450
Статус: Uploader
retired

Создано: 08 ноября 2009 22:32
· Личное сообщение · #29

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

-----
Лучше быть одиноким, но свободным © $me




Ранг: 133.4 (ветеран), 57thx
Активность: 0.110
Статус: Участник

Создано: 08 ноября 2009 22:59 · Поправил: SVLab
· Личное сообщение · #30

BoRoV
Ну, я х.з. какой ассемблер использует плаг , но как то вопрос желательно разрешить
RaMMicHaeL
По какому принципу нумеруются вкладки и где эта инфа держится? Как ее сбросить? Например, я удалил вкладки 1 и 3, всего было 4 (вроде бы). Следующая вкладка создалась с номером 7. Непонятно. Неплохо было бы сохранять и восстанавливать при последующем запуске размеры и местоположение окна плага.




Ранг: 533.6 (!), 232thx
Активность: 0.450
Статус: Uploader
retired

Создано: 08 ноября 2009 23:02 · Поправил: BoRoV
· Личное сообщение · #31

решил проверить твою шнягу, и пришол к тому что ты что-то не то говоришь, твое PUSH 0 (0 = 80..7F) ложит DWORD в стек, перефразируй свою проблему или проверь еще свое высказывание

-----
Лучше быть одиноким, но свободным © $me



<< . 1 . 2 . 3 . 4 . 5 . 6 . 7 . >>
 eXeL@B —› Софт, инструменты —› MUltimate Assembler
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати