JEB output JD-GUI 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 JD-GUI v0.3.5

public static int[] eratosthenes(int paramInt)
{
  int i = 0;
  boolean[] arrayOfBoolean = new boolean[paramInt + 1];
  arrayOfBoolean[0] = true;
  arrayOfBoolean[1] = true;
  int j = (int)Math.sqrt(paramInt);
  int k = 2;
  int n;
  label39: int i2;
  int[] arrayOfInt;
  if (k > j)
  {
    n = 0;
    int i1 = arrayOfBoolean.length;
    if (i < i1)
      break label108;
    i2 = 0;
    arrayOfInt = new int[n];
  }
  for (int i3 = 0; ; i3++)
  {
    if (i3 >= arrayOfBoolean.length)
    {
      return arrayOfInt;
      int m;
      if (arrayOfBoolean[k] == 0)
        m = k * k;
      while (true)
      {
        if (m > paramInt)
        {
          k++;
          break;
        }
        arrayOfBoolean[m] = true;
        m += k;
      }
      label108: if (arrayOfBoolean[i] == 0)
        n++;
      i++;
      break label39;
    }
    if (arrayOfBoolean[i3] == 0)
    {
      int i4 = i2 + 1;
      arrayOfInt[i2] = i3;
      i2 = i4;
    }
  }
}