HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > Общие вопросы программирования
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #1  
Старый 26.01.2016, 06:08
gattsu
Участник форума
Регистрация: 24.11.2015
Сообщений: 165
С нами: 5509192

Репутация: 1457
По умолчанию

Цитата:
Сообщение от Спойлер  

L2J_Server/NewCrypt.java at develop · L2J/L2J_Server · GitHub

и все остальные производные сборки. Код никто не смотрит.

Код:


Код:
public static void encXORPass(byte[] raw, final int offset, final int size, int key)
    {
        int stop = size - 8;
        int pos = 4 + offset;
        int edx;
        int ecx = key; // Initial xor key
      
        while (pos > 8 & 0xFF);
            raw[pos++] = (byte) (edx >> 16 & 0xFF);
            raw[pos++] = (byte) (edx >> 24 & 0xFF);
        }
      
        raw[pos++] = (byte) (ecx & 0xFF);
        raw[pos++] = (byte) (ecx >> 8 & 0xFF);
        raw[pos++] = (byte) (ecx >> 16 & 0xFF);
        raw[pos] = (byte) (ecx >> 24 & 0xFF);
    }
Ковырял. Увидел. Посмеялся. Загрустил.

Веселый участок кода, с++ такое бы не простил. Мне кажется, что чрезмерная автоматизация множества процессов, в данной ситуации работа с памятью, делает из людей дураков.

Цитата:
Сообщение от Спойлер  

int stop = size - 8; offset потеряли
ПС Понятно, что с нуля всегда, и не перекрывает никакие данные, но все же. Забавная фигня обычно из-за таких глупых ошибок мучаешься 2 недели, в поисках при краше системы на один из миллиона случаев. Но когда находишь хочешь себе руки отрезать хД
 
Ответить с цитированием
Ответ



Предыдущая тема Следующая тема

Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.