Цитата:
Сообщение от Amaru
Правильно ли, что в *((_DWORD *)v5 + v8 + 2392) будет как раз адрес обработчика?
|
До 4.1 в v5 + v8 + 344 был адрес обработчика. Теперь там зашифрованный адрес, который восстанавливается по формуле, которую написал TOM_RUS: v9 - ((v6 | (v6 << 16)) ^ 0x62A3A31D)
Мне интересно, Amaru, что вы хотите разработать на основе этой информации? Проблема маппинга опкодов к хэндлерам уже решена полностью. Проблема маппинга опкодов между версиями решена удовлетворительно, хотя всегда есть место для улучшения.
Основная проблема для поддержки новых и будущих версию, как я вижу - это создание автоматизированного парсера структуры Jam bitstream пакетов. Чтобы в ядре порядок данных в структуре пакетов мог оставаться стабильным между версиями, а порядок сериализации этих данных для конкретной версии основывался бы на информации сгенерированной этим чудесным парсером. Имея такую штуку можно было бы думать о переходе между новыми версиями за разумное время, без траты уймы времени на ручную перестановку порядка филдов в куче JAM пакетов.