AsmEditor v3.0.2 : Прошивкокопательство : Форум

Страница 1 из 3: [1] 2 3 »

 d1gger17:
27.02.09, 22:24
 AsmEditor - v3.0.2
Что может:
I. Работа с VKP:
1) Убирает у VKP-файла(патча) все ненужные данные, оставляя только заMAIN.
Пример:
До
Патч:
;W700 SW-R1CA021
;Управление радио и плеером с гарнитуры
;Удержание - вкл то что стоит на кнопке музыка
;В радио: одно нажатие - след станция, больше одного - выкл
;В плеере: одно нажатие - след трек, больше одного - выкл
;v. 4
;(с) IronMaster
;(p) d1gger17

После:
Патч:
45195c30: 00000000000000000000000000000000 FFB52248CCF668FA002807D12048CCF6

2) Убирает заменянемые значения у заMAIN'a.
Пример:
До:
Патч:
45195c30: 00000000000000000000000000000000 FFB52248CCF668FA002807D12048CCF6

После:
Код: 
FFB52248CCF668FA002807D12048CCF6
63FA002802D11F4FB847FFBD1A4C2078
401C2070012804D81D49E120C000F2F4
EDF8FFBDFCB51548CCF64EFA002815D1
1348CCF649FA00280FD00F4C22780023
2370012A03D010219BF7C8FBFCBD02B0
041C051C18350D4F3847FCBD064C2278
00232370012A00D0EDE7041C051C5C35
061C1C36044F38473089034C5134F644
F94013455D0AD244058DF644471E1345
655C1945

3) Убирает все, после заменяющих данных.
Пример:
До:
Код:
EDF8FFBDFCB51548CCF64EFA002815D1
1348CCF649FA00280FD00F4C22780023;Я ненужная хрень
2370012A03D010219BF7C8FBFCBD02B0 

После:
Код:
EDF8FFBDFCB51548CCF64EFA002815D1
1348CCF649FA00280FD00F4C22780023
2370012A03D010219BF7C8FBFCBD02B0

4) Соединяет все оставщиеся данные вместе(ну тут можно и без примеров, итак все ясно)
5) Сохраняет полученные данные сразу в RAW-файл(то есть сразу можно в IDA открывать).
6) Ещё есть небольшая функция: проверка на мисматчи. Что делает: берет длину заменяемых и заменяющих данных, если их длины не совпадают, то выдаёт ошибку.
II. Работа с ASM:
1) Удаляет все решетку.
2) Удаляет комментарии(все что за знаком ";" ).
3) Удаляет структуры, такого вида:
Код:
 structSUBROUTINE struc
p_name        DCD ?
p_page        DCD ?
p_fn1        DCD ?
p_fn2        DCD ?
structSUBROUTINE ends

4) Расставляет где надо двоеточия.
5) Переносит текст с DCD.
Было допустим:
off_45CF53F0 DCD aTpaUserOtherZb
А после обработки останется:
_aTpaUserOtherZb DCD aTpaUserOtherZb
в ASM, конечно, off_45CF53F0 заменится на _aTpaUserOtherZb
6) И самое главное - Вынес адресов. Если вы хотите чтобы имена адресов брались из библиотеки, то можете ее загрузить с помощью клавиши "Открыть библиотеку". Программа ищёт адреса, при их нахождении смотрит, есть ли такой адрес в либе, если есть - то присваевает ему имя из библиотеки, если нету - то даёт ему имя с номером(имя указываете сами в настройках, стнадратное - addr). Если будет найден dword загрузка адреса(типа: dword_45153A90 DCD addr1(уже замененый адрес)), то во всем ASM dword_45153A90 заменяется на _addr1. Точно такая же работа происходит и с ram-адресами. Начальные цифры обычных и РАМ адресов можно изменять в настройках(там почти всё можно изменить).
7) Складывает VAR. Если в исходнике найдена строка типа этой:
Код:
LDR    R1, [SP,0x28+var_18]
, то программа автомтически смотрит, есть ли вверху присваивание для var_18, если есть - берёт оттуда значение и складывает их, если нету - то берёт из var_18, цифру 18 как хекс-число и складывает его(в нашем примере с 0x28) и полученный результат записывает вместо var: Код:
LDR    R1, [SP,0x068]

8) Если у вас IDA 5.2 и выше, то вполне возможно, что у вас некторые команды идут с конечным символом S, типа ADDS,MOVS,SUBS и прочее(весь их полный список есть в настройках, кстати, список идёт в два слова: первое слово - "плохая" команда(ADDS), второе - "правильная" команда(ADD), программа исправляет эти слова.
9) Unicode -> DCB. Если у вас в исходнике есть текст Unicode(Пример:
Код:
aElf        unicode    0, <elf>,0
, то программа заменит его на:
Код:
aElf        DCB "e",0,"l",0,"f",0,0,0 ; elf

10) Косметические изменения:
- Удаляет пустые строки.
- Если найдена строка-объвление кода( loc_451F905C например), то она вставляет до и после неё текст, который вы можете ввести в настройках(при введение текста можно использовать два слова-паттерна: #addr# - адрес ссылки(451F905C) и #loc# - префикс адреса(loc_).
- Если будет найден текст типа:
Код:
dword_45CF53B0    DCD 0xFC2
, то программа при нахождении dword_45CF53B0 будет оставлять комментарий в конце строки со значением этого dword_45CF53B0(то есть 0xFC2).
- Для push и pop удялется один пробел(для красоты)).
- Расставляется где надо align 4.
- Если надо, ставится в начало include "x.inc".
11) Компиляция. Пока что тест) Может работать, а может и нет. Нажмите кнопку "Компиляция" на статус-баре(в котором, кстати, отображается прогресс бар с выполением прогресса)) и сверху или снизу(сами выберете), выедет панелька в который вы можете выбрать прошивку(перед этим положите её в папку с программой), и ввести её стартовый адрес(он определяется сам). После нажатия кнопки "Скомпилировать" исходник будет скомпилирован и вам покажут сообщение в конец прогресса.

III. Сама программа:
1) Красивый интерфейс))
2) Настройка почти всех слов/имен/адресов для ASM/VKP/Библиотеки.
3) Можете настроить у ASM подсветку слов, а также шрифт.
4) В PopupMenu(клик правой клавишой мыши на редакторе) у ASM есть следующие пункты:
- Выделить всё.
- Скопировать.
- Вставить.
- Вырезать.
- BookMark(метки, можно оставлять их, а затем быстро к ним перемещаться, всего их 10 штук).
- Перейти к BookMark.
- Перевернуть выделеный адрес(DWORD) - до: 45CF5398. После: 9853CF45
- Поиск.
- Заменить.
- Искать вперед.
- Искать назад.
5) При нажатии в редакторе ASM комбинации клавиш Ctrl+Space появится окошко в котором вы сможете выбрать команду(они там и от thumb и от Arm - режимов) и вставить её.

3.0.2:
- Добавил сохранение настроек и редактирование выпадающего меню.

Как пользоваться:
1) Если надо обработать VKP-патч, то жмем кнопку "Открыть" в пункте "Файл", находим его и жмем кнопку "Открыть". Слева перед вами появится ToolBar, с кнопками, фун-ии которых я описал выше, если не хотите нажимать каждую кнопку, то для выполнения всего сразу нажмите "Обработать VKP".
2) Если же надо обработать ASM-исходник(полученый от IDA через комбинацию клавиш Alf+F10(!)), то делаем все тоже самое что я описал выше, только выбираем уже asm файл. Слева перед вами так же появится ToolBar, в котором вы сможете делать с исходником то, что я описал выше по отдельности, или если вам не хочется жать кнопки, то нажмите "Обработать ASM", поставьте/снимите галки напротив нужных вам опции и нажмите "Начать".

Вот ссылки на программу:
3.0.1: http://ifolder.ru/10776285
3.0.2: http://ifolder.ru/11265834
Исходник: http://ifolder.ru/11265855

В архиве: сама программа(AsmEditor.exe), файлы компилятора FasmArm(можете на свои заменять) и файл test.asm для проверки возможностей редактора(вдруг под рукой исходника не окажется).

(с) d1gger17

 zapret:
27.02.09, 22:27
 d1gger17, молодца)) сто лет тя тут не видно)

 jamesbond22:
27.02.09, 22:30
 d1gger17, can you make english version?

 voluenter:
27.02.09, 23:20
 хм...а мона популярно и на русском языке обьяснить - зачема нам патчи изменять?
Будет лучше?Будет удобней?...не понял из прочитаного первого поста смысла))
P.S Сорри,просто давно тут не был,уже и термины/жаргоны забыл((

 GaS:
27.02.09, 23:35
 
voluenter пишет:
хм...а мона популярно и на русском языке обьяснить - зачема нам патчи изменять?
Будет лучше?Будет удобней?...не понял из прочитаного первого поста смысла))
P.S Сорри,просто давно тут не был,уже и термины/жаргоны забыл((

это для портеров будет удобней...

 mortezaw810:
28.02.09, 01:30
 very tx d1gger17
plz up in to site
sorry my eng ;-)

[ Редактировано mortezaw810 в 28.2.09 01:31 ]

 kirpeace:
28.02.09, 05:39
 is there english version of it? :oops:

 d1gger17:
28.02.09, 09:10
 I can do english version, but did you want see PROMT-translate? Because if you want english version - translate text in this program and send me.
Залить на сайт не могу, у меня ограничение на размер заливаемово файла - 600кб, а архив программы весит 1300 кб.

 jamesbond22:
28.02.09, 11:25
 d1gger17 писал:
Because if you want english version - translate text in this program and send me.

But how get original texts from program?

I see "????????"

Прикрепленный к сообщению файл:

asmeditor.JPG asmeditor.JPG (24.77 kb; 462 hits) Скачать файл

 Alex:
28.02.09, 12:09
 Мы же как то используем проги на английском, и все окей =)
Страница 1 из 3: [1] 2 3 »

URL этой темы:
https://mobilefree.justdanpo.ru/newbb_plus/viewtopic.php?topic_id=3738

© 2005-2018 supertrubka.org