Показать сообщение отдельно
Старый 13.02.2012, 16:44   #39
Местный
 
Регистрация: 23.02.2009
Сообщений: 319
Сказал Спасибо: 72
Имеет 60 спасибок в 45 сообщенях
Kilatif пока неопределено
По умолчанию

ErgoZ, что бы долго не писать, сразу пришлю код =) (C#)

Код:
        public static byte[] AntiXor(byte[] s)
        {
            long key, b;
            int i;
            byte[] b_temp;

            b_temp = new byte[4];

            i = s.Length - 8;

            key = BitConverter.ToInt32(s, i);
            while (i >= 7)
            {
                i = i - 4;
                b = BitConverter.ToInt32(s, i);
                b = b ^ key;
                key = key - b;

                Array.Copy(BitConverter.GetBytes((Int32)b), 0, b_temp, 0, 4); 
                Array.Copy(b_temp, 0, s, i, 4);
            }

            return s;
        }
Kilatif вне форума   Ответить с цитированием