Сейчас на форуме: Magister Yoda, johnniewalker, Kybyx, vsv1, r0lka, -Sanchez- (+5 невидимых) |
eXeL@B —› Крэки, обсуждения —› разобраться в формате хранения бд, не беспл |
Посл.ответ | Сообщение |
|
Создано: 16 ноября 2010 20:39 · Личное сообщение · #1 Доброго времени суток. Опыта по реверсингу не так много, а разобраться с форматом хранения данных очень нужно. Программа самописная на делфи, вот интересующий кусок кода (полный листинг функции в аттаче) Code:
данные выводятся ввиде двух матриц значений (24х35), а в бд хранятся в неявном виде (BLOB). 0040B4DC сравнивает позицию в строке, т.е. функция выше повторяется для каждого значения. это наглядно видно в ида, когда оставить брек без остановки, только на подсчет проходов. следовательно именно в коде выше происходит обработка значения. дальше этих размышлений дело не идет, так как нет возможности (времени) расшифровать эти асм функции в приемлимый вид арифметических и других действий. спрашиваю у более опытных товарищей, правильным ли путем движется мысль? совет в направлении или комментарии приветствуются. если кто желает помочь со всей задачей в целом (конвертер или алгоритм), предоставлю прогу и вознаграждение по факту в 30wmz. icq 591539444 P.S. прога для узких задач, так что в паблик на форум не хочется выкладывать. кто реально может помочь в асю или лс. 2219_16.11.2010_CRACKLAB.rU.tgz - func.txt |
|
Создано: 17 ноября 2010 12:12 · Личное сообщение · #2 |
|
Создано: 17 ноября 2010 12:38 · Личное сообщение · #3 |
|
Создано: 17 ноября 2010 13:35 · Личное сообщение · #4 спасибо за совет. попробую, но пока это для меня также сложно как и разбор алгоритма. еще такой вопрос к знатокам - значения у нас идут вида 7,9423628851996284084e1, а данные как говорил в BLOB (можно считать хекс). как я понимаю, хрантиться будет в double. наткнулся на яваскриптовый код babbage.cs.qc.edu/IEEE-754/Decimal.html вопрос в том, насколько он точный? для значения выше хекс будет 401FC4FAC6B39620 ? пробовал сам по аналогии с проскальзывающим здесь кодом подправить следующий код Code:
но выдающее значение весьма сомнительно. Float Value = 7.94236288519962840800 Hex Value = 0x9cb10000 скорее всего выше где-то ошибка. сам массив (матрица 24х35) 9000байт. интересно какой там может быть формат, неужели какой угодно? |
|
Создано: 17 ноября 2010 13:37 · Личное сообщение · #5 |
|
Создано: 17 ноября 2010 13:42 · Личное сообщение · #6 |
|
Создано: 17 ноября 2010 14:06 · Личное сообщение · #7 |
|
Создано: 17 ноября 2010 23:30 · Личное сообщение · #8 ticketsvl double - 8 байт пример перевода дабла в хекс строку Code:
ticketsvl пишет: показывает ошибку "cannot find table of initalization ..." и потом инфа только в закладке forms. как написал int - ето не Дельфи а Билдер, IDR же работает только с Дельфями.... |
|
Создано: 18 ноября 2010 02:42 · Поправил: Hexxx · Личное сообщение · #9 без бинаря, тут врядли что-то можно сделать. Вот как угадать что в dbl_595DD0 или в offset unk_595DD8? Да и по тексту декомпилировать сложнее, чем рассматривать в IDA: нет возможности юзать фичи иды для облегчения процесса восстановления кода. ----- Реверсивная инженерия - написание кода идентичного натуральному |
|
Создано: 19 ноября 2010 03:42 · Личное сообщение · #10 |
|
Создано: 19 ноября 2010 21:27 · Личное сообщение · #11 |
|
Создано: 20 ноября 2010 05:08 · Личное сообщение · #12 |
|
Создано: 20 ноября 2010 09:49 · Личное сообщение · #13 |
eXeL@B —› Крэки, обсуждения —› разобраться в формате хранения бд, не беспл |
Эта тема закрыта. Ответы больше не принимаются. |