IPB

Добро пожаловать, гость ( Вход | Регистрация )

> Chemax, База данных
Кантемир
Mar 18 2007, 18:00
Сообщение #1


Незарегистрирован









Просто хочу оболочку и возможности сохранить, а база кодов с нула хочу написать
и добавить секреты.
Блин как редактировать база данных?
А может ктонибудь создать прогу на подобия это? Просто там в chemaxе нельзя ни редактировать ни с нула.
Go to the top of the page
+Quote Post
 
Reply to this topicStart new topic
Ответов
-=CHE@TER=-
Feb 12 2024, 18:07
Сообщение #2


Walter Sullivan
***

Группа: Root Admin
Сообщений: 1,355
Регистрация: 4-February 08
Пользователь №: 3
Спасибо сказали: 311 раз(а)



В 2022 году домен CheMax.ru был разделегирован, так что история данной программы на этом закончилась, поэтому можно подвести уже окончательный итог.
Для начала отвечу на самое первое сообщение этой темы (понимаю, что уже не актуально, ну да ладно):
QUOTE(Кантемир @ Mar 18 2007, 18:00) *
Просто хочу оболочку и возможности сохранить, а база кодов с нула хочу написать
и добавить секреты.
Блин как редактировать база данных?
А может ктонибудь создать прогу на подобия это? Просто там в chemaxе нельзя ни редактировать ни с нула.
Нет, это невозможно. Дело в том, что описания кодов хранятся зашифрованные в текстовом файле "Cheats.dat", в то время как соответствующие этим текстам имена игр и смещения до них в этом файле, намертво прошиты в "Chemax.exe", который ещё и ASPack'ом упакован (защищён от изменений). Поэтому, максимум, что можно сделать, это изменить коды к существующим играм так, чтобы они не выходили за отведённое им место (меньше текста можно - лишнее пробелами заменить, больше - нельзя).
Сама программа и некоторые её старые и новые версии, помимо веб-архива, доступны ещё здесь: CheMax.
И тут, поковыряв старые и новые версии этой программы, я выяснил интересную штуку про ключи шифрования. Оказывается, ключ "a@g5eDu(*5" использовался только для русской версии. В английской версии ещё с 2004 года использовался ключ "qZ8&5N3eS0" на который перевели и русскую между 2013 и 2018 годом - видимо, автору надоело пересобирать исполняемый файл с разными ключами при выпуске новых версий. Так что, признаю, моё предположение о том что ключ поменяли, потому что я его в этой теме публично засветил, было неверное.
Попробую при следующем обновлении сайта добавить программу для расшифровки любой базы данных (с автоматическим определением ключа расшифровки), а также два текстовых файла со смещениями и именами игр в последних версиях "Cheats.dat" (RUS 21.4 и ENG 19.2) для тех, кто захочет распотрошить базу данных (распаковал и распарсил исполняемые файлы "CheMax.exe"). Увы, это, конечно, не вернёт потерянных трейнеров и других полезных утилит, которые накрылись вместе с сайтом программы.
Функция для расшифровки любой базы данных выглядит так (возвращает не нулевое значение, если буфер удалось расшифровать):

CODE
uint32_t CheMaxDecrypt(uint8_t *p, uint32_t size) {
uint8_t key[10];
uint32_t i, k;
  i = 0;
  /* sanity check */
  if (p && size && ((*p == 0x81) || (*p == 0x91))) {
    /* detect key */
    if (*p == 0x81) {
      memcpy(key, "a@g5eDu(*5", sizeof(key));
    } else {
      memcpy(key, "qZ8&5N3eS0", sizeof(key));
    }
    /* decrypt database with key */
    for (i = 0; i < size; i++) {
      k = i % sizeof(key);
      p[i] += ((p[i] > key[k]) ? 0 : 255) - key[k];
    }
    i = 1;
  }
  return(i);
}

На этом, вероятно, уже точно всё - тему можно считать закрытой.
User is offlineProfile CardPM
Go to the top of the page
+Quote Post

Сообщения в этой теме
Кантемир   Chemax   Mar 18 2007, 18:00
Кантемир   Че молчите? :( :( :(   Mar 19 2007, 12:07
jTommy   Просто хочу оболочку и возможности сохранить, а ба...   Mar 19 2007, 18:31
Кантемир   Знаешь, что я тебе сказу Вы правы :) :) :) . Про...   Mar 20 2007, 20:27
-=CHE@TER=-   Кантемир! Простите, пожалуйста, но... у вас со...   Mar 21 2007, 18:07
Кантемир   Я хотел сказать велик это велосипед, что не понятн...   Mar 21 2007, 20:05
-=CHE@TER=-   Я хотел сказать велик это велосипед, что не понятн...   Mar 22 2007, 10:16
Кантемир   -=CHE@TER=-! :) :) :) Огромное тебе спасиб...   Mar 26 2007, 14:15
-=CHE@TER=-   Не плохо придумана, а какой прогой можно создать P...   Mar 26 2007, 17:21
Siberian GRemlin   А не проще на M$ Access взять документацию и ...   Mar 27 2007, 13:07
jTommy   А не проще на M$ Access взять документацию и ...   Mar 28 2007, 18:38
Кантемир   jTommy! :) Ну блин дельфи без него не вариан...   Apr 1 2007, 16:10
-=CHE@TER=-   -=CHE@TER=-! :) А не проще без архива?Проще. ...   Apr 1 2007, 16:57
9k1d   jTommy! :) это получаешься две разние игры Я...   Dec 14 2007, 09:04
-=CHE@TER=-   Я вижу, что в этой теме часто зависают гости. Если...   Aug 13 2009, 21:07
-=CHE@TER=-   Вот уже 10 лет код шифрования БД у Chemax не меняе...   Jul 21 2013, 12:43
-=CHE@TER=-   Не прошло и 15 лет, как ключик таки поменяли - мен...   Feb 12 2018, 20:33
-=CHE@TER=-   В 2022 году домен CheMax.ru был разделегирован, та...   Feb 12 2024, 18:07
-=CHE@TER=-   CheMax (Cheats Maximal) ENG/RUS database decrypter...   Feb 22 2024, 14:21


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0 -

 



Упрощённая версия Сейчас: 24th May 2024 - 20:14