// Decompiled by Jad v1.5.8f. Copyright 2001 Pavel Kouznetsov.
// Jad home page: http://www.kpdus.com/jad.html
// Decompiler options: packimports(3) 

import sign.signlink;

public class Class39
{

    public static void method568()
    {
        anIntArray593 = new int[32768];
        for(int i = 0; i < 32768; i++)
            if(Math.random() > 0.5D)
                anIntArray593[i] = 1;
            else
                anIntArray593[i] = -1;

        anIntArray594 = new int[32768];
        for(int j = 0; j < 32768; j++)
            anIntArray594[j] = (int)(Math.sin((double)j / 5215.1903000000002D) * 16384D);

        anIntArray592 = new int[0x35d54];
    }

    public int[] method569(int i, int j)
    {
        for(int k = 0; k < i; k++)
            anIntArray592[k] = 0;

        if(j < 10)
            return anIntArray592;
        double d = (double)i / ((double)j + 0.0D);
        aClass48_575.method602((byte)2);
        aClass48_576.method602((byte)2);
        int l = 0;
        int i1 = 0;
        int j1 = 0;
        if(aClass48_577 != null)
        {
            aClass48_577.method602((byte)2);
            aClass48_578.method602((byte)2);
            l = (int)(((double)(aClass48_577.anInt735 - aClass48_577.anInt734) * 32.768000000000001D) / d);
            i1 = (int)(((double)aClass48_577.anInt734 * 32.768000000000001D) / d);
        }
        int k1 = 0;
        int l1 = 0;
        int i2 = 0;
        if(aClass48_579 != null)
        {
            aClass48_579.method602((byte)2);
            aClass48_580.method602((byte)2);
            k1 = (int)(((double)(aClass48_579.anInt735 - aClass48_579.anInt734) * 32.768000000000001D) / d);
            l1 = (int)(((double)aClass48_579.anInt734 * 32.768000000000001D) / d);
        }
        for(int j2 = 0; j2 < 5; j2++)
            if(anIntArray583[j2] != 0)
            {
                anIntArray595[j2] = 0;
                anIntArray596[j2] = (int)((double)anIntArray585[j2] * d);
                anIntArray597[j2] = (anIntArray583[j2] << 14) / 100;
                anIntArray598[j2] = (int)(((double)(aClass48_575.anInt735 - aClass48_575.anInt734) * 32.768000000000001D * Math.pow(1.0057929410678534D, anIntArray584[j2])) / d);
                anIntArray599[j2] = (int)(((double)aClass48_575.anInt734 * 32.768000000000001D) / d);
            }

        for(int k2 = 0; k2 < i; k2++)
        {
            int l2 = aClass48_575.method603(i, -783);
            int j4 = aClass48_576.method603(i, -783);
            if(aClass48_577 != null)
            {
                int j5 = aClass48_577.method603(i, -783);
                int j6 = aClass48_578.method603(i, -783);
                l2 += method570(j6, aClass48_577.anInt736, anInt574, j1) >> 1;
                j1 += (j5 * l >> 16) + i1;
            }
            if(aClass48_579 != null)
            {
                int k5 = aClass48_579.method603(i, -783);
                int k6 = aClass48_580.method603(i, -783);
                j4 = j4 * ((method570(k6, aClass48_579.anInt736, anInt574, i2) >> 1) + 32768) >> 15;
                i2 += (k5 * k1 >> 16) + l1;
            }
            for(int l5 = 0; l5 < 5; l5++)
                if(anIntArray583[l5] != 0)
                {
                    int l6 = k2 + anIntArray596[l5];
                    if(l6 < i)
                    {
                        anIntArray592[l6] += method570(j4 * anIntArray597[l5] >> 15, aClass48_575.anInt736, anInt574, anIntArray595[l5]);
                        anIntArray595[l5] += (l2 * anIntArray598[l5] >> 16) + anIntArray599[l5];
                    }
                }

        }

        if(aClass48_581 != null)
        {
            aClass48_581.method602((byte)2);
            aClass48_582.method602((byte)2);
            int i3 = 0;
            boolean flag = false;
            boolean flag1 = true;
            for(int i7 = 0; i7 < i; i7++)
            {
                int k7 = aClass48_581.method603(i, -783);
                int i8 = aClass48_582.method603(i, -783);
                int k4;
                if(flag1)
                    k4 = aClass48_581.anInt734 + ((aClass48_581.anInt735 - aClass48_581.anInt734) * k7 >> 8);
                else
                    k4 = aClass48_581.anInt734 + ((aClass48_581.anInt735 - aClass48_581.anInt734) * i8 >> 8);
                if((i3 += 256) >= k4)
                {
                    i3 = 0;
                    flag1 = !flag1;
                }
                if(flag1)
                    anIntArray592[i7] = 0;
            }

        }
        if(anInt586 > 0 && anInt587 > 0)
        {
            int j3 = (int)((double)anInt586 * d);
            for(int l4 = j3; l4 < i; l4++)
                anIntArray592[l4] += (anIntArray592[l4 - j3] * anInt587) / 100;

        }
        if(aClass18_588.anIntArray267[0] > 0 || aClass18_588.anIntArray267[1] > 0)
        {
            aClass48_589.method602((byte)2);
            int k3 = aClass48_589.method603(i + 1, -783);
            int i5 = aClass18_588.method265((float)k3 / 65536F, 0, false);
            int i6 = aClass18_588.method265((float)k3 / 65536F, 1, false);
            if(i >= i5 + i6)
            {
                int j7 = 0;
                int l7 = i6;
                if(l7 > i - i5)
                    l7 = i - i5;
                for(; j7 < l7; j7++)
                {
                    int j8 = (int)((long)anIntArray592[j7 + i5] * (long)Class18.anInt274 >> 16);
                    for(int k8 = 0; k8 < i5; k8++)
                        j8 += (int)((long)anIntArray592[(j7 + i5) - 1 - k8] * (long)Class18.anIntArrayArray272[0][k8] >> 16);

                    for(int j9 = 0; j9 < j7; j9++)
                        j8 -= (int)((long)anIntArray592[j7 - 1 - j9] * (long)Class18.anIntArrayArray272[1][j9] >> 16);

                    anIntArray592[j7] = j8;
                    k3 = aClass48_589.method603(i + 1, -783);
                }

                char c = '\200';
                l7 = c;
                do
                {
                    if(l7 > i - i5)
                        l7 = i - i5;
                    for(; j7 < l7; j7++)
                    {
                        int l8 = (int)((long)anIntArray592[j7 + i5] * (long)Class18.anInt274 >> 16);
                        for(int k9 = 0; k9 < i5; k9++)
                            l8 += (int)((long)anIntArray592[(j7 + i5) - 1 - k9] * (long)Class18.anIntArrayArray272[0][k9] >> 16);

                        for(int i10 = 0; i10 < i6; i10++)
                            l8 -= (int)((long)anIntArray592[j7 - 1 - i10] * (long)Class18.anIntArrayArray272[1][i10] >> 16);

                        anIntArray592[j7] = l8;
                        k3 = aClass48_589.method603(i + 1, -783);
                    }

                    if(j7 >= i - i5)
                        break;
                    i5 = aClass18_588.method265((float)k3 / 65536F, 0, false);
                    i6 = aClass18_588.method265((float)k3 / 65536F, 1, false);
                    l7 += c;
                } while(true);
                for(; j7 < i; j7++)
                {
                    int i9 = 0;
                    for(int l9 = (j7 + i5) - i; l9 < i5; l9++)
                        i9 += (int)((long)anIntArray592[(j7 + i5) - 1 - l9] * (long)Class18.anIntArrayArray272[0][l9] >> 16);

                    for(int j10 = 0; j10 < i6; j10++)
                        i9 -= (int)((long)anIntArray592[j7 - 1 - j10] * (long)Class18.anIntArrayArray272[1][j10] >> 16);

                    anIntArray592[j7] = i9;
                    int l3 = aClass48_589.method603(i + 1, -783);
                }

            }
        }
        for(int i4 = 0; i4 < i; i4++)
        {
            if(anIntArray592[i4] < -32768)
                anIntArray592[i4] = -32768;
            if(anIntArray592[i4] > 32767)
                anIntArray592[i4] = 32767;
        }

        return anIntArray592;
    }

    public int method570(int i, int j, int k, int l)
    {
        if(k <= 0)
            return anInt574;
        if(j == 1)
            if((l & 0x7fff) < 16384)
                return i;
            else
                return -i;
        if(j == 2)
            return anIntArray594[l & 0x7fff] * i >> 14;
        if(j == 3)
            return ((l & 0x7fff) * i >> 14) - i;
        if(j == 4)
            return anIntArray593[l / 2607 & 0x7fff] * i;
        else
            return 0;
    }

    public void method571(Class31_Sub3_Sub2 class31_sub3_sub2, byte byte0)
    {
        aClass48_575 = new Class48();
        if(byte0 != 59)
            throw new NullPointerException();
        aClass48_575.method600(class31_sub3_sub2, (byte)59);
        aClass48_576 = new Class48();
        aClass48_576.method600(class31_sub3_sub2, (byte)59);
        int i = class31_sub3_sub2.method422();
        if(i != 0)
        {
            class31_sub3_sub2.anInt1440--;
            aClass48_577 = new Class48();
            aClass48_577.method600(class31_sub3_sub2, (byte)59);
            aClass48_578 = new Class48();
            aClass48_578.method600(class31_sub3_sub2, (byte)59);
        }
        i = class31_sub3_sub2.method422();
        if(i != 0)
        {
            class31_sub3_sub2.anInt1440--;
            aClass48_579 = new Class48();
            aClass48_579.method600(class31_sub3_sub2, (byte)59);
            aClass48_580 = new Class48();
            aClass48_580.method600(class31_sub3_sub2, (byte)59);
        }
        i = class31_sub3_sub2.method422();
        if(i != 0)
        {
            class31_sub3_sub2.anInt1440--;
            aClass48_581 = new Class48();
            aClass48_581.method600(class31_sub3_sub2, (byte)59);
            aClass48_582 = new Class48();
            aClass48_582.method600(class31_sub3_sub2, (byte)59);
        }
        for(int j = 0; j < 10; j++)
        {
            int k = class31_sub3_sub2.method436();
            if(k == 0)
                break;
            anIntArray583[j] = k;
            anIntArray584[j] = class31_sub3_sub2.method435();
            anIntArray585[j] = class31_sub3_sub2.method436();
        }

        anInt586 = class31_sub3_sub2.method436();
        anInt587 = class31_sub3_sub2.method436();
        anInt590 = class31_sub3_sub2.method424();
        anInt591 = class31_sub3_sub2.method424();
        aClass18_588 = new Class18();
        aClass48_589 = new Class48();
        aClass18_588.method266(false, class31_sub3_sub2, aClass48_589);
    }

    public Class39()
    {
        anIntArray583 = new int[5];
        anIntArray584 = new int[5];
        anIntArray585 = new int[5];
        anInt587 = 100;
        anInt590 = 500;
    }

    public static int anInt574 = 60;
    public Class48 aClass48_575;
    public Class48 aClass48_576;
    public Class48 aClass48_577;
    public Class48 aClass48_578;
    public Class48 aClass48_579;
    public Class48 aClass48_580;
    public Class48 aClass48_581;
    public Class48 aClass48_582;
    public int anIntArray583[];
    public int anIntArray584[];
    public int anIntArray585[];
    public int anInt586;
    public int anInt587;
    public Class18 aClass18_588;
    public Class48 aClass48_589;
    public int anInt590;
    public int anInt591;
    public static int anIntArray592[];
    public static int anIntArray593[];
    public static int anIntArray594[];
    public static int anIntArray595[] = new int[5];
    public static int anIntArray596[] = new int[5];
    public static int anIntArray597[] = new int[5];
    public static int anIntArray598[] = new int[5];
    public static int anIntArray599[] = new int[5];

}
