Перейти к содержанию
Друзья, важная новость! ×

Преобразование hex-чисел


Кобанчегъ

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

Товарищи, быть может, среди вас есть упоротые программеры, способные помочь в одном деле?

У нас имеется запущенная в памяти программа, которую я в режиме реального времени посматриваю в шестнадцатеричной системе.

0_834f7_c09f3255_XL.jpg

Есть ли способ определить тип переменной, хранящей значение, без отладочных или каких-то иных процедур? Нужно именно визуально уметь отличать, скажем, long (4 байта) от short (2 байта) и char (1 байт).

Отдельно интересует возможность отличать целочисленные типы от типов с плавающей точкой (float и double).

Заранее огромное спасибо.

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

Запусти под внешним отладчиком, будь мужиком!

[ Добавлено спустя 46 секунд ]

Никак нельзя отличить, только если скилл "пальцем в небо" прокачан по максимуму, если что.

[ Добавлено спустя 1 минуту 15 секунд ]

Хотя можно немного шаманить, изменяя какие-то параметры (зная, что изменяются только эти параметры), вычислить смещение их в памяти, а потом уже определить сколько байт отводится им

[ Добавлено спустя 2 минуты 33 секунды ]

БТВ, целочисленные от всяких флотов легко отличить - если изменить целые в 2-4 раза, то там просто сдвиг будет, а даблы в мясо пересчитываются, ибо не точно мантисса определяется и все такое.

[ Добавлено спустя 1 минуту 26 секунд ]

Короче забей или проведи ночь с Олькой!

[ Добавлено спустя 12 минуты 20 секунд ]

А вообще, артмани для подобных целей очень даже вещь, в детстве баловался этим, например. Главное найти в каком месте переменная, отслеживая, как она меняется в динамике, а потом уже и тип вполне определяется.

БТВ, готов спорить, что у всех тип int, например. Указатели, все дела, самый популярный, на равне со всякими даблами.

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

Запусти под внешним отладчиком, будь мужиком!

Отладчик тут не поможет вот по какой причине.

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

Даже на приведенном скриншоте присутствуют почти все указанные типы данных, и пока сообразишь, что вот тут идут подряд три char'а, а рядом уже long, а сразу за ними подряд два short'а, может пройти много времени.

Вот я и подумал через 10 лет, быть может, не стоит изобретать велосипед :)

[ Добавлено спустя 2 минуты 14 секунды ]

Артмани — экскремент чилийский.

DetectiveStory — труЪ.

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

Ололо прямо. Скажи конкретно что надо, тогда можно уже думать. А просто по снапшотам памяти угадывать содержимое ле фу, например.

[ Добавлено спустя 1 минуту 56 секунд ]

Артмани — экскремент чилийский.

DetectiveStory — труЪ.

В сортах дерьма не силен. Только внешний отладчик, только хардкор. В ольке, бтв, можно и переменные замораживать, и более сложные непотребства выделывать, если что. Главное научиться работать с ней.

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

БТВ, готов спорить, что там не лонг, а инт, например. Есть 64битная версия (ну или 16 битная, лол), можно легко проверить тогда ;)

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

Отладчик тут не поможет вот по какой причине.

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

Я очень далекий человек от низкоуровневого программирования и ты уж извини за мой сарказм, но "ОТЭТА ТЫ ДИКИЙ". Мне кажется эта затея мягко говоря странной тк разрабы могут пропустить код через обфускатор после чего он станет лютой лапшой(ну или разрабы настолько криворукие что не нужен обфускатор =) ). Плюс все еще сильно зависит на каком языке оно написано, реализации языка, да и все компиляторы вносят оптимизации в код за кулисами. Вобщем как мне кажется поиск таких последовательностей это как ткнуть пальцем в небо и перевод времени. Но с другой стороны люди же как то ломают игрулины и софт. Одним словом я в реверс инжиниринге софта ничего не смыслю но если бы я хотел, я бы начал с поиска подходящих инструментов (какого нибудь отладчика) и тематического сообщества.

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

В сортах дерьма не силен. Только внешний отладчик, только хардкор. В ольке, бтв, можно и переменные замораживать, и более сложные непотребства выделывать, если что. Главное научиться работать с ней.

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

К тому же DS умеет замораживать память.

Я рисую в пэинте гуся, а мне предлагают его чертить в автокаде. При этом гусь лучше не станет. Оно мне надо? =)

0_834f8_a34dda1e_M.jpg

А просто по снапшотам памяти угадывать содержимое ле фу, например.

Звиняйте, ваше блаародие, сирый я да убогий. Досуг себе нахожу как умею.

ты уж извини за мой сарказм, но "ОТЭТА ТЫ ДИКИЙ".

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

Исследование дампа памяти игрушки — весьма сложное занятие. Разве возможно кому-то, кто никогда этим не занимался, объяснить интересность сложного процесса? Как передать эйфорию от сборки своего первого блокинг-генератора или стабилизатора напряжения, и вообще от посиделок с паяльником, перечитывая журнал «Радио»? Как передать удовлетворение от вдумчивого прочтения очередной книги Алексея Исаева?

Я просто ищу точку приложения мозга. Мне нравится думать часто и помногу.

Про обфускацию — полная хрень. И так от багов избавиться не могут, а тут еще их искусственно добавлять.

Никто так не делает

Максимум могут при сворачивании игры шифровать значения, но тут помогает заморозка.

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

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

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

Одним словом я в реверс инжиниринге софта ничего не смыслю но если бы я хотел, я бы начал с поиска подходящих инструментов (какого нибудь отладчика) и тематического сообщества.
;). Гугл в помощь. Даже на лурке была по моему статья про это с ссылками на сообщества. Изменено пользователем Insane
Ссылка на комментарий
Поделиться на другие сайты

трах-тибидох-симсим откройся-мэйджек мисайл!!!!

должно помочь)))

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

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

К тому же DS умеет замораживать память.

Я рисую в пэинте гуся, а мне предлагают его чертить в автокаде. При этом гусь лучше не станет. Оно мне надо? =)

0_834f8_a34dda1e_M.jpg

Звиняйте, ваше блаародие, сирый я да убогий. Досуг себе нахожу как умею.

Ты не понял сути.

Прочитай для начала ПЕ модель файлов. Помойка с данными (а скорее помойко смещений на память в куче) находится всегда в одном месте. ДС умеет препарировать ПЕ? Оля же тебе даже чай в постель принесет. А айс здесь и не нужен, в ринг-1 ничего не обращается, Ольки вполне хватит.

Главное чтобы программировал не экзибит с "давай засунем в указатель еще один указатель". Ну и попытайся из вспомогательных файлов препарировать индексы/пути картинок и искать их. Кром того большинство классов должны иметь сходный размер. Плюс выучи строение всяких листов и массивов стл, сомневаюсь, что разрабы гамулек от них отказывабтся. И ищи в памяти их.

А дебагер нужен по одной простой причине - загрузка половины игровых данных идет после запуска игрульки - ты знаешь 80% смещений, где расположены именно данные, а уж какие это данные тоже можно догадаться.

[ Добавлено спустя 59 секунд ]

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

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

И вообще, не факт что тебе надо экзешник препарировать сам, мможно глянуть, какие функции он импортирует из длл. а там скорее всего эта инициализация и запрятана, по названию все видно же. Главное не ленись думать. А просто созерцание дампа памяти - не путь воина. Только дебагер и дизасамблер, только хардкор.

[ Добавлено спустя 8 минут 17 секунд ]

Я рисую в пэинте гуся, а мне предлагают его чертить в автокаде. При этом гусь лучше не станет. Оно мне надо? =)

Тут как и с бековыми ростерами.

Если тебе нраится "рисовать гуся в пейнте", то зачем ты пришел задавать вопрос? Все равно лучше тебя самого гуся в пейнте никто рисовать не умеет, ибо, это как поклеить обои в закрытой комнате через замочную скважину.

Тебе предлагают нормально заниматьсчя реверс инжденерингом, а не гадать по снапшотам памяти.

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

Я рисую в пэинте гуся, а мне предлагают его чертить в автокаде. При этом гусь лучше не станет. Оно мне надо? =)

Не скаажии... Я спесмаринов в акаде рисовал. А вообще, зачем гусь? Утку рисуй! Или Утка Кабану не товарищ?)

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

Если тебе нраится "рисовать гуся в пейнте", то зачем ты пришел задавать вопрос?

Ну типа хотел разобраться в обной мелочи, но раз уже пошла такая пьянка:

Тебе предлагают нормально заниматься реверс инженерингом, а не гадать по снапшотам памяти.

решительно требую список литературы/ресурсов для первых шагов в направлении!

Мой текущий уровень подготовки — быдлокодер в отставке (занимался когда-то).

Не скаажии... Я спесмаринов в акаде рисовал. А вообще, зачем гусь? Утку рисуй! Или Утка Кабану не товарищ?)

Утка Кабану — очень даже товарищ, он неоценимо помог в свое время с освоением хитрого таусятского кодекса, за что ему стоит мраморный бюстик в моем храме памяти.

Но рисовать Утку — моветон. Утка сам себя рисовал. Раз в неделю. Пользуясь случаем, хочу поинтересоваться у Утыча о судьбе коллекции его самопальных аватаров.

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

решительно требую список литературы/ресурсов для первых шагов в направлении!

Мой текущий уровень подготовки — быдлокодер в отставке (занимался когда-то).

Настольная библия реверс инженеров всея руси

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

Апостол реверс инженеринга

"Посмотреть на няшу"

Крис Касперски, например.

1.jpg

Читать статьи тут или в гугле

Ну и по виросопейсательским сайтом можно походить. Занятные вещи писал икона Z0MBiE. Его труды тоже можно найти.

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

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

Вы сможете оставить комментарий после входа в



Войти
×
×
  • Создать...