⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ac.java

📁 经过反编译和部分代码修改后的ultraimpro java源代码。可在netbean环境下成功编译。供学习和分析用。
💻 JAVA
字号:
// Decompiled by DJ v3.9.9.91 Copyright 2005 Atanas Neshkov  Date: 2006-5-1 19:31:40
// Home Page : http://members.fortunecity.com/neshkov/dj.html  - Check often for new version!
// Decompiler options: packimports(3) 


public final class ac
{

    public ac(byte abyte0[], byte abyte1[])
    {
        this(abyte0, abyte1, 0, abyte1.length);
    }

    public ac(byte abyte0[], byte abyte1[], int i, int j)
    {
        if(abyte0 == null || abyte0.length != 4)
            throw new ArrayIndexOutOfBoundsException();
        if(abyte1 == null || i < 0 || j < 0)
            throw new ArrayIndexOutOfBoundsException();
        if(i + j > abyte1.length)
        {
            throw new ArrayIndexOutOfBoundsException();
        } else
        {
            int k = 12 + j;
            a_byte_array1d_fld = new byte[k];
            a_byte_array1d_fld[0] = (byte)((j & 0xff000000) >> 24);
            a_byte_array1d_fld[1] = (byte)((j & 0xff0000) >> 16);
            a_byte_array1d_fld[2] = (byte)((j & 0xff00) >> 8);
            a_byte_array1d_fld[3] = (byte)(j & 0xff);
            System.arraycopy(abyte0, 0, a_byte_array1d_fld, 4, abyte0.length);
            System.arraycopy(abyte1, i, a_byte_array1d_fld, 8, j);
            a();
            return;
        }
    }

    private static void b()
    {
        a_int_array1d_static_fld = new int[256];
        for(int j = 0; j < 256; j++)
        {
            int i = j;
            for(int k = 0; k < 8; k++)
                if((i & 1) == 1)
                    i = 0xedb88320 ^ i >>> 1;
                else
                    i >>>= 1;

            a_int_array1d_static_fld[j] = i;
        }

    }

    private static int b(byte abyte0[], int i, int j)
    {
        int k = -1;
        if(a_int_array1d_static_fld == null)
            b();
        for(int l = i; l < j + i; l++)
            k = a_int_array1d_static_fld[(k ^ abyte0[l]) & 0xff] ^ k >>> 8;

        return k;
    }

    public static final int a(byte abyte0[], int i, int j)
    {
        return ~b(abyte0, i, j);
    }

    public final void a()
    {
        int i = a(a_byte_array1d_fld, 4, a_byte_array1d_fld.length - 8);
        int j = a_byte_array1d_fld.length - 4;
        a_byte_array1d_fld[j] = (byte)(i >> 24 & 0xff);
        a_byte_array1d_fld[j + 1] = (byte)(i >> 16 & 0xff);
        a_byte_array1d_fld[j + 2] = (byte)(i >> 8 & 0xff);
        a_byte_array1d_fld[j + 3] = (byte)(i & 0xff);
    }

    public byte a_byte_array1d_fld[];
    private static int a_int_array1d_static_fld[];
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -