JEB output JAD output
// Decompiled by JEB v0.9.0 alpha

public static int[] eratosthenes(int arg12) {
    int v8 = 0;
    boolean[] v0 = new boolean[arg12 + 1];
    v0[0] = true;
    v0[1] = true;
    int v7 = ((int)Math.sqrt(((double)arg12)));
    int v3 = 2;
    while(v3 <= v7) {
        if(v0[v3] == false) {
            int v4 = v3 * v3;
            while(v4 <= arg12) {
                v0[v4] = true;
                v4 += v3;
            }

        }

        ++v3;
    }

    int v2 = 0;
    int v9 = v0.length;
    while(v8 < v9) {
        if(v0[v8] == false) {
            ++v2;
        }

        ++v8;
    }

    v4 = 0;
    int[] v6 = new int[v2];
    v3 = 0;
    while(v3 < v0.length) {
        if(v0[v3] == false) {
            v6[v4] = v3;
            ++v4;
        }

        ++v3;
    }

    return v6;
}
// Decompiled by Jad v1.5.8g

public static int[] eratosthenes(int i)
{
    int j;
    boolean aflag[];
    int k;
    int l;
    j = 0;
    aflag = new boolean[i + 1];
    aflag[0] = true;
    aflag[1] = true;
    k = (int)Math.sqrt(i);
    l = 2;
_L7:
    if(l <= k) goto _L2; else goto _L1
_L1:
    int j1;
    int k1;
    j1 = 0;
    k1 = aflag.length;
_L9:
    if(j < k1) goto _L4; else goto _L3
_L3:
    int l1;
    int ai[];
    int i2;
    l1 = 0;
    ai = new int[j1];
    i2 = 0;
_L10:
    if(i2 >= aflag.length)
        return ai;
    break MISSING_BLOCK_LABEL_123;
_L2:
    if(aflag[l]) goto _L6; else goto _L5
_L5:
    int i1 = l * l;
_L8:
    if(i1 <= i)
        break MISSING_BLOCK_LABEL_93;
_L6:
    l++;
      goto _L7
    aflag[i1] = true;
    i1 += l;
      goto _L8
_L4:
    if(!aflag[j])
        j1++;
    j++;
      goto _L9
    if(!aflag[i2])
    {
        int j2 = l1 + 1;
        ai[l1] = i2;
        l1 = j2;
    }
    i2++;
      goto _L10
}