Перейти к содержанию
Old Phone Forum
  • Вход

    Вы сейчас не залогинены на форуме.

    Для возможности комментариев, загрузки файлов, подписок на ответы - вам надо войти.

BinEdit и все о ней


Рекомендуемые сообщения

А ты посмотри в самом патче как написано название прошивки... Если маленькими, то исправь на большие.

Я об этом уже думал.И переименовал на большие буквы,но он все тоже самое говорит

Жизнь - игра, задумка хреновая, но графика обалденная!

Делай, что должен - свершится, что суждено...

40ia7.jpg

Все патчи для Е830

Все патчи для D900

 

я бы себя переписал, но Бог не дает исходники...

Помогите кто чем может...

Ссылка на комментарий
Поделиться на другие сайты

Я об этом уже думал.И переименовал на большие буквы,но он все тоже самое говорит

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

Изменено пользователем AlexeyK

Одна из последних версий binedit здесь.

AlexeyK.gif

Ссылка на комментарий
Поделиться на другие сайты

Пользуюсь бинэдитом,прога очень удобная!

Но есть вопрос почему когда в поиск вводиш название функции и жмёш кнопку "А"(поиск вызовов)

прога находит не все!

находит примерно 50-60(максимум) а я точно знаю что их больше 200.

Может чего-нибудь надо в настройках поправить?

Ссылка на комментарий
Поделиться на другие сайты

VitaliyDV, приведи пример: адрес, прошивка, с какого адреса не находит, какая версия программы.

программа чистые вызовы должна находить все. Есть ещё вызовы через функции редиректы (jmp вызовы), через которые тоже часто происходит вызов, их можно поискать, воспользовавшись альтернативным поиском в подменю поиска адресов или самостоятельно, благо jmp функции не сложно искать.

Одна из последних версий binedit здесь.

AlexeyK.gif

Ссылка на комментарий
Поделиться на другие сайты

VitaliyDV, приведи пример: адрес, прошивка, с какого адреса не находит, какая версия программы.

программа чистые вызовы должна находить все. Есть ещё вызовы через функции редиректы (jmp вызовы), через которые тоже часто происходит вызов, их можно поискать, воспользовавшись альтернативным поиском в подменю поиска адресов или самостоятельно, благо jmp функции не сложно искать.

Прошивка D600EXEFA1

версия программы 2006,12,12

приведу пример нахождение функции lk4_10WriteWindow , прога находит 78 адресов,но их больше 200!!!

это я точно знаю!

или FillBoxColorInvalid (0х1055774С)

на скрине видно всё что прога нашла,но опять же это не все вызовы.

искал всеми способами и через просто поиск B/BL, и через альтернативный поиск.

 

 

з.ы. может у меня просто версия старая?

60773-6-09-07)1189053021_thumb.jpg

Ссылка на комментарий
Поделиться на другие сайты

VitaliyDV,

судя по скриншоту как раз проблема с jmp функциями.

Обрати внимание на группу "Ссылки на данные 10D32F75". тут перечислены адреса в которых в коде регистру присваивается адрес функции FillBoxColorInvalid. для поиска остальных вызовов этой функции поищи в строке поиска вызовы этих адресов.

PS. По идее это делается автоматически при альтернативном поиске, но там алгоритм не доработан и обрабатываются не все варианты Jmp.

PS2. Косвенным признаком наличия Jmp вызовов является появление "_" перед именем функции и текста (компенсировано) в комментарии.

Одна из последних версий binedit здесь.

AlexeyK.gif

Ссылка на комментарий
Поделиться на другие сайты

VitaliyDV,

судя по скриншоту как раз проблема с jmp функциями.

Обрати внимание на группу "Ссылки на данные 10D32F75". тут перечислены адреса в которых в коде регистру присваивается адрес функции FillBoxColorInvalid. для поиска остальных вызовов этой функции поищи в строке поиска вызовы этих адресов.

PS. По идее это делается автоматически при альтернативном поиске, но там алгоритм не доработан и обрабатываются не все варианты Jmp.

PS2. Косвенным признаком наличия Jmp вызовов является появление "_" перед именем функции и текста (компенсировано) в комментарии.

Спасибо!

один момент я не совсем понял.

в коде регистру присваивается адрес функции FillBoxColorInvalid. для поиска остальных вызовов этой функции поищи в строке поиска вызовы этих адресов. т.е.

нужно найти адреса где регистру присваиваеться значение функции. но как это сделать это же и есть группа

"Ссылки на данные 10D32F75"

или я не так понял?

а в новой версии программы это исправленно? просто моя вроде уже старенькая!?

Ссылка на комментарий
Поделиться на другие сайты

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

Ссылки на данные это уже и есть нужные адреса. Хотя не всегда, иногда надо вычесть 4 или 8 из адреса, надо смотреть по коду. В принципе если для адреса ничего не найдётся, можно из него вычесть 4 и поискать ещё раз.

Одна из последних версий binedit здесь.

AlexeyK.gif

Ссылка на комментарий
Поделиться на другие сайты

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

Ссылки на данные это уже и есть нужные адреса. Хотя не всегда, иногда надо вычесть 4 или 8 из адреса, надо смотреть по коду. В принципе если для адреса ничего не найдётся, можно из него вычесть 4 и поискать ещё раз.

Ещё раз спасибо! Буду дальше пробовать и искать.

Ссылка на комментарий
Поделиться на другие сайты

"Ссылки на данные 10D32F75"

Вот на эти данные и будут у тебя остальные 100 переходов.Для наиболее употребимых функций в прошивке сделаны промежуточные переходы в arm-коде,которые расположены массивами приблизительно на равном удалении друг от друга в 5-6 местах.Т.о. практически с любого места прошивки можно попасть на нужную функцию,если не сразу,то по BLX-переходу через эти промежуточные "прыжки".Т.о. преодолевается предел BL-перехода в 400кб
/ Чтобы боялись чужие, не обязательно бить своих.../
Ссылка на комментарий
Поделиться на другие сайты

Скажите что надо зделать что бы БинЭдит определил тип прошивки???Прошивка D900iXEGF2

Жизнь - игра, задумка хреновая, но графика обалденная!

Делай, что должен - свершится, что суждено...

40ia7.jpg

Все патчи для Е830

Все патчи для D900

 

я бы себя переписал, но Бог не дает исходники...

Помогите кто чем может...

Ссылка на комментарий
Поделиться на другие сайты

обновил версию на сайте.

tema172, может она поможет.

Можешь подсказать адреса загрузки для D900iXEGF2

Жизнь - игра, задумка хреновая, но графика обалденная!

Делай, что должен - свершится, что суждено...

40ia7.jpg

Все патчи для Е830

Все патчи для D900

 

я бы себя переписал, но Бог не дает исходники...

Помогите кто чем может...

Ссылка на комментарий
Поделиться на другие сайты

tema172,

 

0x20000000 скорее всего :!:

Спасибо,это то я понял.А может кто нить скинит D900iXEGF2.be

Жизнь - игра, задумка хреновая, но графика обалденная!

Делай, что должен - свершится, что суждено...

40ia7.jpg

Все патчи для Е830

Все патчи для D900

 

я бы себя переписал, но Бог не дает исходники...

Помогите кто чем может...

Ссылка на комментарий
Поделиться на другие сайты

tema172,

а в чем проблемы? Что не определяет? Прога предлагает уточнить конкретные моменты, так что все должно получиться :!:

Всё ещё будет...
Ссылка на комментарий
Поделиться на другие сайты

tema172,

а в чем проблемы? Что не определяет? Прога предлагает уточнить конкретные моменты, так что все должно получиться :!:

Она требут адрес загрузки,начало оперативки,длину оперативки....что то там еще помоему....но как это все узнать???

Жизнь - игра, задумка хреновая, но графика обалденная!

Делай, что должен - свершится, что суждено...

40ia7.jpg

Все патчи для Е830

Все патчи для D900

 

я бы себя переписал, но Бог не дает исходники...

Помогите кто чем может...

Ссылка на комментарий
Поделиться на другие сайты

Она требут адрес загрузки

0x20000000

 

начало оперативки

0x30000000

 

длину оперативки

0x1000000

 

Если ошибаюсь, Виктор, поправь :!:

Всё ещё будет...
Ссылка на комментарий
Поделиться на другие сайты

tema172, программа пытается определить эти данные самостоятельно, но для перестраховки предлагает их уточнить.

Одна из последних версий binedit здесь.

AlexeyK.gif

Ссылка на комментарий
Поделиться на другие сайты

AlexeyK,

нашел глючок в компиляторе...

Инструкции типа

LDMIA R0!, {R2,R3}

компилирует как

LDMIA R0!, {R0-R3}

5073IA3.png
Ссылка на комментарий
Поделиться на другие сайты

нашел глючок в компиляторе...

Попробуй так...

Инструкция:

LDMIA R0-1, {R2,R3}

Компилирует как:

0CC8	LDMIA	R0!, {R2,R3}

Пожертвования отправлять сюда R256859050930

Ссылка на комментарий
Поделиться на другие сайты

vvyura, наличие ! для thumb режима фиксировано и писать его не обязательно.

т.е. LDMIA R0!, {R2,R3} и LDMIA R0, {R2,R3} идентичны

ты прав это глюк, исправлю.

PS. пока -1 писать не обязательно, достаточно просто не указать !

Одна из последних версий binedit здесь.

AlexeyK.gif

Ссылка на комментарий
Поделиться на другие сайты

достаточно просто не указать !

ты прав это глюк, исправлю.

Будем ждать :bx:

пока -1 писать не обязательно

Такое ещё прокатывает и с -n, где n - некоторое количество символов.

Пожертвования отправлять сюда R256859050930

Ссылка на комментарий
Поделиться на другие сайты

длину оперативки

 

 

0x1000000

 

Если ошибаюсь, Виктор, поправь

Мне показалось что оперативка в этом теле лежит не одним массивом,по поводу ее длины пока затрудняюсь ответить

/ Чтобы боялись чужие, не обязательно бить своих.../
Ссылка на комментарий
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйте новый аккаунт в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти



×
×
  • Создать...