Как найти hex значение

0 / 0 / 0

Регистрация: 04.03.2013

Сообщений: 8

1

07.03.2013, 14:06. Показов 34896. Ответов 14


Студворк — интернет-сервис помощи студентам

Здравствуйте! Я сам по специальности не программист, скорее самоучка)) занимаюсь чип тюнингом автомобилей. Возникла необходимость менять данные в прошивках контролера, в самой прошивке заложены алгоритмы и калибровки. Знаю что их меняют в hex редакторах, но вот как находят нужные данные не могу разобратся. В hiew в отличии от IDA, показывается мнемоники и операнды байтов но чтот сомневаюсь в их достоверности( подскажите хоть куда капать в гугле ничего толком не могу найти



0



Ушел с форума

Автор FAQ

15881 / 7457 / 1010

Регистрация: 11.11.2010

Сообщений: 13,439

07.03.2013, 14:24

2

если есть сомнения в достоверности “hex редакторов” то какие уверенности в правдивости “гугла и тех, кто ответит на этот запрос”? То что ты в этом не можешь разобраться критерием не является…



0



0 / 0 / 0

Регистрация: 04.03.2013

Сообщений: 8

07.03.2013, 14:33

 [ТС]

3

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



0



Ушел с форума

Автор FAQ

15881 / 7457 / 1010

Регистрация: 11.11.2010

Сообщений: 13,439

07.03.2013, 14:41

4

sychyov1991,
просто hiew управляет человек и если этот человек sychyov1991, то тут наступает путаница



0



0 / 0 / 0

Регистрация: 04.03.2013

Сообщений: 8

07.03.2013, 14:49

 [ТС]

5

ну как говорится с опытом ни кто не рождается)) я то разберусь в любом случае. Если подскажешь как правильно им управлять я только За!



0



Ушел с форума

Автор FAQ

15881 / 7457 / 1010

Регистрация: 11.11.2010

Сообщений: 13,439

07.03.2013, 14:50

6

sychyov1991,
разбирайся, я тоже за!



0



0 / 0 / 0

Регистрация: 04.03.2013

Сообщений: 8

07.03.2013, 14:55

 [ТС]

7

так и думал)))



0



608 / 406 / 8

Регистрация: 26.04.2012

Сообщений: 2,065

07.03.2013, 15:12

8

Не по теме:

Цитата
Сообщение от Mikl___
Посмотреть сообщение

sychyov1991,
разбирайся, я тоже за! :good:

какой-то ты не дружелюбный :jokingly:

sychyov1991, а что Вам собсно не понятно? в компьютере все представляется в виде чисел (точнее в виде двоичных чисел, а еще точнее в виде “высокий уровень напряжения” и “низкий уровень напряжения”), хоть буквы, хоть команды для процессора – все числа. поэтому нет разницы в командах и буквах, процессор запросто проглотит если ему на выполнение подсунуть ‘ABCDEF’, вот только что эти команды будут делать (если вообще что-то будут делать). хиев – это вообще полезная штука. он может по-разному просматривать файлы: в виде хекс-кода, в виде двоичного кода, дизассемблированный листиг. если вы откроете в нем текстовый файл и скажете показать в виде ассемблерных команд, то он будет пытаться представлять текст в виде команд процессора. Вы поконкретнее вопрос задайте, ато не совсем ясно что Вам не ясно а как найти нужные данные в незнакомом файле – задача не из простых… если искать строки – ничего сложного. а вот искать нужный участок кода прошивки – это

жопа

тяжело…



0



0 / 0 / 0

Регистрация: 04.03.2013

Сообщений: 8

07.03.2013, 15:42

 [ТС]

9

хорошо попробую уточнить. Прошивка представляет из себя бинарный файл 64 кб которая вшивается в контроллер управлением двигателя. В прошивке находятся двух, трехмерные таблицы калибровок и алгоритмы( матем формулы) для работы с ними. Понимайте мой вопрос заключается не в том чтобы найти в конкретной прошивке конкретную переменную а в том как “разглядеть” эти таблицы и алгоритмы из всей этой матрицы байтов

Добавлено через 4 минуты
чуть не забыл еще мне известны размеры в байтах нужных мне таблиц



0



1 / 1 / 0

Регистрация: 02.03.2013

Сообщений: 24

07.03.2013, 17:21

10

Я может чего-то не знаю, но как я понял, у вас есть все данные о прошивке? Типа первый байт версия, второй и третий не используются, четвертый-шестьдесят четвертый – первая таблица… и тп?
Если так, то в чем проблема?
одно число в шестнадцатиричной системе – два байта, представляем его в двоичной и видим где 0, а где 1.
Скиньте файлик, интересно=)

заодно скажите что где поменять=)



0



608 / 406 / 8

Регистрация: 26.04.2012

Сообщений: 2,065

07.03.2013, 17:37

11

да, а файлик бы не помешал. вот только если там система команд отличная от х86, то боюсь хиев фигово их покажет…



0



Клюг

7673 / 3188 / 382

Регистрация: 03.05.2011

Сообщений: 8,380

07.03.2013, 19:38

12

Есть такой STL/Structure Look – ноне позабытый, он очень полезный просмотрщик структур. Автор – создатель hiew, SEN, В аттаче.



1



0 / 0 / 0

Регистрация: 04.03.2013

Сообщений: 8

07.03.2013, 19:52

 [ТС]

13

_alexey, не все к сожалению( только размеры. а вот и пример виновникА)) J5v03l25.rar



0



1 / 1 / 0

Регистрация: 02.03.2013

Сообщений: 24

07.03.2013, 20:00

14

sychyov1991, а какой контроллер стоит на… самаре?=)
И какие размеры есть?

Добавлено через 5 секунд
sychyov1991, а какой контроллер стоит на… самаре?=)
И какие размеры есть?



0



0 / 0 / 0

Регистрация: 04.03.2013

Сообщений: 8

07.03.2013, 20:04

 [ТС]

15

Январь 5.1 2111 -1411020-61 основная часть это таблицы для каждого параметра по 256 байт



0



  • 2 Фев 2006

Как найти нужную ячейку в NEX редакторе?
Нужно прочитать содержимое конкретного адреса.Для примера адрес 0025, и его содержимое в десятичном формате.Разжуйте пожалуйста… :cry:

  • 6 Фев 2006

Если в NEX редакторе, то зачем тебе десятичный формат – все цифры шеснадцатеричные (HEX), если надо переведи в десятичные в калькуляторе.
Твоя строка (если в HEX формате) будет выглядеть так:
…….
0020 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
0030 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
…….
…….
0020 – адрес, значения в 16-ти ячейках произвольные, но я поставил в них адреса которым они соответствуют.
Твоя ячейка с адресом 0025 – имеет значение 05 .
Если еще непонятно то:
0020 00
0021 01
0022 02
0023 03
0024 04
0025 05 – она твоя
0026 06
0027 07
0028 08
0029 09
002A 0A
002B 0B
002C 0C
002D 0D
002E 0E
002F 0F
и т.д.
Всего доброго.

  • 6 Фев 2006

Более наглядно :)

1_154.jpg

  • 20 Фев 2006

Спасибо! Поковырялся,разобрался,нашел где ” собака зарыта “.

  • 23 Окт 2006

:help: Где можно скачать nex редактор.

  • 23 Окт 2006

Bano, наверно не “nex редактор”, а HEX-редактор …
Их в инете полно, найди через поисковик.

  • 29 Окт 2006

А может скажеш где скачать. Сижу 3 дня и не нашёл. :help:

  • 29 Окт 2006

Bano,  ссылка скрыта от публикации 

  • 29 Окт 2006

ИМХО, WinHex один из самых лучших. Или в гугле – “hex editor”, к примеру :)

  • 29 Окт 2006

  • 29 Окт 2006

voldemar71, UltraEdit-32 лучше, и весит не очень много

  • 30 Окт 2006

Vasilij, каждому своё. я, вообще юзал windhex32 – простой, маленький, бесплатный и не требует инсталляции, при этом имеет много чего полезного (для своих размеров). В некоторых довольно УЗКИХ кругах он находит достаточно ШИРОКОЕ применение, например, при переводе приставочных игр…

  • 30 Окт 2006

voldemar71, я имел ввиду- больше функций, хотя и WinHex тоже присутствует, смотря для чего. Когда на верстакЕ лежит пара молотков, и они не мешают друг другу, то пусть будут ;)

  • 30 Окт 2006

Vasilij, хорошая штука :) . Пришлось, правда, сходить ссылка скрыта от публикации  (да простят меня модераторы) – платный, зараза :)

  • 30 Окт 2006

понятно :) , я его брал где то в более приличном месте…
Есть еще MultiEdit, проггеры хвалят, но он где то под 30 МВ, и я его на своем мопеде не разыскивал..

  • 31 Окт 2006

  • 31 Окт 2006

Aliaksandr, да дело не в инструкции, а в самой проге, качать модемом долго , да и указанных двух в принципе пока хватает.

  • 31 Окт 2006

Vasilij, Напишите конкретную ссылку для скачивания,
Я скачаю и выложу в обменник Программы.

  • 31 Окт 2006

Aliaksandr,
a) я знаю где он лежит(или лежал), и мог(у) взять прямо оттуда;
б) у него размер, если не изменяет память, около 26 МЕГАБАЙТ , это довольно приличный объем
как для обменника, так и для большинства пользователей, которые сидят на модемах.
в)тематика этого софтА не совсем отвечает тематике форума, к тому же, он платный см:
https://monitor.net.ru/forum/threads/44817/
так что спасибо, не нужно :) .

BestIdler



Знаток

(431),
на голосовании



7 лет назад

Как найти последовательность данных, точнее последовательность ячеек с содержащимися в них данными в hex-редакторе (и в каком лучше). Пример: файл размером в несколько мегабайт. В файле есть данные – дата создания файла, время начала записи файла, время конца записи, табельный номер человека производившего запись, его фамилия и инициалы. Строка в hex-редакторе выглядит как :
07 00 00 00 00 28 30 11 03 13 09 15 00 10 95 FA 6E – где 13 09 15 – это 13.09.15 дата, а 28 30 11 – это 11часов 30минут 28 секунд – начало записи файла. Необходимо найти и отредактировать время конца записи файла (он где-то в середине файла). Он известен и представлен в таком же виде. Как его найти?

Голосование за лучший ответ

Вопрос отредактирован, продолжение истории чуть ниже под словом UPD

Есть файл – https://cloud.mail.ru/public/CNS1/xdWCPfD8z

Суть в следующем. Это файл программы для прототипирования под названием Axure RP. Программа хорошая, мощная, но не без изъянов. Я создал в ней кучу стилей для текста, многие из которых используют один и тот же цвет. Чтобы поменять этот цвет, нужно вручную его менять в каждом стиле. И нет какого-либо способа изменить этот цвет так, чтобы изменения отразились сразу во всех стилях, которые его используют.

В программе цвет задается хексом, в нем есть например цвета cc9900, 0099FF, 66CC99 – их-то мне и нужно поменять.

Решил подойти к проблеме с другого боку – открыл файл не акшуром, а с помощью sublime text в hexadecimal encoding. Казалось бы, поиск и замена решит проблему, но нет, цвета не находятся.

Есть идеи, как расшифровать файл и осуществить в нем поиск и замену нужных данных?

UPD
Файл оказался архивом. В нём я нашел файл с расширением .rppkg, при просмотре которого в кодировке UTF-8 я увидел названия своих стилей. Ссылка на файл:
https://cloud.mail.ru/public/BAdM/CUJPcW77Z

вот как выглядит файл в саблайме с кодировкой utf-8:
93898259af2b4ff79ac5a4c46a283e95.png

Как бы расшифровать атрибуты этих стилей, чтобы можно было их отредактировать?

  • solfi

    Junior Member

    • Регистрация: 09 2011
    • Сообщений: 3

    Здравствуйте, в иде имеем адрес фикции 00411D57 которую нужно занопить. В hex редакторе открываем экзешник, ищем 00411D57 но его нет, как найти функцию в экзешнике по адресу 00411D57. Спасибо.

  • reversecode

    Junior Member

    • Регистрация: 02 2008
    • Сообщений: 4815

    если в хьюве то перед адрессом нужно набрать точку .
    а вообще хелп читайте по каждому отдельно взятому редактору

    Комментарий

  • VodoleY

    Junior Member

    • Регистрация: 07 2008
    • Сообщений: 1519

    solfi от твоего адреса надо отнять имедж бейз, думаю что это 40 0000 в целом reversecode прав. хотябы азы прочтите

    Наша работа во тьме, Мы делаем, что умеем. Мы отдаем, что имеем, Наша работа во тьме….

    Комментарий

  • rmn

    Junior Member

    • Регистрация: 04 2005
    • Сообщений: 760

    Сообщение от VodoleY

    от твоего адреса надо отнять имедж бейз, думаю что это 40 0000

    чтобы перевести VA в File Offset, недостаточно только отнять ImageBase

    Код:

    DWORD CPEFile::RVA2FileOffset(DWORD RVA)
    {
    ...
            for (i=0; iFileHeader.NumberOfSections; i++)
            {
                    if ((RVA >= m_pSectionHeaders[i].VirtualAddress) && 
                            (RVA < m_pSectionHeaders[i].VirtualAddress + m_pSectionHeaders[i].SizeOfRawData))
                    {
                            return m_pSectionHeaders[i].PointerToRawData + (RVA - m_pSectionHeaders[i].VirtualAddress);
                    }
            }
    ...
            return (DWORD)-1;
    }
    
    //------------------------------------------------------------------------
    
    DWORD CPEFile::VA2FileOffset(DWORD VA)
    {
            return RVA2FileOffset(VA2RVA(VA));
    }

    Комментарий

  • solfi

    Junior Member

    • Регистрация: 09 2011
    • Сообщений: 3

    reversecode
    А хьюв это какой редактор?
    Использую скачанный с этого сайта http://www.cracklab.ru/thumb.php?src=/_dl1/i/ODQ1.png

    VodoleY
    Что то с ImageBase’ом не получается, он вроде как 4000000, а не 400.000 http://stackoverflow.com/questions/3740976/about-imagebase-of-exe-in-windows но если отнять 4000000 от 00411D57 получается минусовое число, что-то не то…

    Комментарий

  • Veliant

    Junior Member

    • Регистрация: 11 2005
    • Сообщений: 931

    Для перевода отнимается ImageBase, вычитается виртуальны адрес начала секции, прибавляется физический.
    Reversecode правильно посоветовал, в hiew можно сразу по виртуальным переходить по F5 с точкой вначале адреса.

    Но проще на мой взгляд скопировать hex-данные по этому адресу и вбить в поиск в редакторе

    Сообщение от solfi

    но если отнять 4000000 от 00411D57 получается минусовое число

    а ты посчитай количество нулей у тебя, и сколько посоветовали

    Комментарий

  • DimitarSerg

    radical

    • Регистрация: 04 2010
    • Сообщений: 978

    А еще проще (лично для меня) – пропатчить в Оле(адрес будет тот же).

    Кому нужно – найдете меня в телеграме Всем спасибо за эти 10 лет.

    Комментарий

  • PE_Kill

    Шаман

    • Регистрация: 12 2005
    • Сообщений: 3919

    Для этих целей есть FLC в PE Tools.

    А по большому счету ТС не шаред.

    Yann Tiersen best and do not fuck

    Комментарий

  • solfi

    Junior Member

    • Регистрация: 09 2011
    • Сообщений: 3

    Парни, может есть прога какая, или что самописное, высчитывающее офсет в файле из виртуального… заморачиваться формулами высчитывания не хочется…

    Комментарий

  • PE_Kill

    Шаман

    • Регистрация: 12 2005
    • Сообщений: 3919

    solfi для особо тупых повторю:

    Сообщение от PE_Kill

    Для этих целей есть FLC в PE Tools.

    Yann Tiersen best and do not fuck

    Комментарий

  • vden

    Junior Member

    • Регистрация: 04 2011
    • Сообщений: 317

    Сообщение от solfi

    в иде имеем адрес

    фикции

    00411D57

    Поставь курсор на 411D57 и посмотри в статусбаре смещение.

    Комментарий

  • BoRoV

    retired

    • Регистрация: 02 2008
    • Сообщений: 2032

    Сообщение от rmn

    чтобы перевести VA в File Offset, недостаточно только отнять ImageBase

    Ну тогда и выравние нужно учитывать.

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

    Комментарий

Добавить комментарий