Расшифровка серверного пакета с неизвестной структурой

Leatington

Известный
Автор темы
256
71
Версия MoonLoader
.026-beta
При взаимодействии с CEF Arizona RP использует 220 пакет, нужно расшифровать, чтобы получить текст, как это можно реализовать?
Я пробовал отталкиваться от raknetBitStreamGetNumberOfBytesUsed и гадать с битами, но больше двух страшных иероглифов я ничего не получал.
Буду благодарен за любой совет или помощь.
 

RedHolms

Известный
Проверенный
619
362
код утерян, но я делал так:
выводишь весь бит стрим во всех типах (считываешь сначала просто все байты, потом максимальное количество uint16, потом uint32 и т.п.)
проворачиваешь какие-то действия, изменяющие CEF и смотришь, что изменяется в пакете и ищешь закономерности
 

constersuonsis

Активный
165
92
код утерян, но я делал так:
выводишь весь бит стрим во всех типах (считываешь сначала просто все байты, потом максимальное количество uint16, потом uint32 и т.п.)
проворачиваешь какие-то действия, изменяющие CEF и смотришь, что изменяется в пакете и ищешь закономерности
Извиняюсь за оффтоп, а вы не знаете, если ли уже обход cef ?
 
  • Ха-ха
Реакции: YarikVL

YarikVL

Известный
Проверенный
4,767
1,819
Извиняюсь за оффтоп, а вы не знаете, если ли уже обход cef ?
С эмулятора мобайла заходи. Вот ещё есть такое:
 
  • Нравится
Реакции: constersuonsis

constersuonsis

Активный
165
92
С эмулятора мобайла заходи. Вот ещё есть такое:
Спасибо
 

Leatington

Известный
Автор темы
256
71
код утерян, но я делал так:
выводишь весь бит стрим во всех типах (считываешь сначала просто все байты, потом максимальное количество uint16, потом uint32 и т.п.)
проворачиваешь какие-то действия, изменяющие CEF и смотришь, что изменяется в пакете и ищешь закономерности
Спасибо, а вот при получении текста ты использовал raknetBitStreamDecodeString или Read? Обычно (и чаще всего) используется вроде второе...
 

RedHolms

Известный
Проверенный
619
362
Спасибо, а вот при получении текста ты использовал raknetBitStreamDecodeString или Read? Обычно (и чаще всего) используется вроде второе...
не используй read string, просто считывай байты и в текст
Lua:
local val = ranketBitStreamReadInt8(bs)
local char = string.char(val)