public final Class44 method67(int i, String s, String s1, int j, byte byte0, int k) { byte abyte0[] = null; int l = 5; try { if(aClass14Array970[0] != null) abyte0 = aClass14Array970[0].method233(true, i); } catch(Exception _ex) { } if(abyte0 != null) { // aCRC32_930.reset(); // aCRC32_930.update(abyte0); // int i1 = (int)aCRC32_930.getValue(); // if(i1 != j) // abyte0 = null; } if(abyte0 != null) { Class44 class44 = new Class44(44820, abyte0); return class44; } int j1 = 0; while(abyte0 == null) { String s2 = "Unknown error"; method13(k, (byte)4, "Requesting " + s); Object obj = null; try { int k1 = 0; DataInputStream datainputstream = method132(s1 + j); byte abyte1[] = new byte[6]; datainputstream.readFully(abyte1, 0, 6); Class30_Sub2_Sub2 class30_sub2_sub2 = new Class30_Sub2_Sub2(abyte1, 891); class30_sub2_sub2.anInt1406 = 3; int i2 = class30_sub2_sub2.method412() + 6; int j2 = 6; abyte0 = new byte[i2]; for(int k2 = 0; k2 < 6; k2++) abyte0[k2] = abyte1[k2]; while(j2 < i2) { int l2 = i2 - j2; if(l2 > 1000) l2 = 1000; int j3 = datainputstream.read(abyte0, j2, l2); if(j3 < 0) { s2 = "Length error: " + j2 + "/" + i2; throw new IOException("EOF"); } j2 += j3; int k3 = (j2 * 100) / i2; if(k3 != k1) method13(k, (byte)4, "Loading " + s + " - " + k3 + "%"); k1 = k3; } datainputstream.close(); try { if(aClass14Array970[0] != null) aClass14Array970[0].method234(abyte0.length, abyte0, (byte)2, i); } catch(Exception _ex) { aClass14Array970[0] = null; } /* if(abyte0 != null) { aCRC32_930.reset(); aCRC32_930.update(abyte0); int i3 = (int)aCRC32_930.getValue(); if(i3 != j) { abyte0 = null; j1++; s2 = "Checksum error: " + i3; } } */ } catch(IOException ioexception) { if(s2.equals("Unknown error")) s2 = "OMGS SilabSoft Messed it up"; abyte0 = null; } catch(NullPointerException _ex) { s2 = "Null error"; abyte0 = null; if(!signlink.reporterror) return null; } catch(ArrayIndexOutOfBoundsException _ex) { s2 = "Bounds error"; abyte0 = null; if(!signlink.reporterror) return null; } catch(Exception _ex) { s2 = "Unexpected error"; abyte0 = null; if(!signlink.reporterror) return null; } if(abyte0 == null) { for(int l1 = l; l1 > 0; l1--) { if(j1 >= 3) { method13(k, (byte)4, "Game updated - please reload page"); l1 = 10; } else { method13(k, (byte)4, s2 + " - Retrying in " + l1); } try { Thread.sleep(1000L); } catch(Exception _ex) { } } l *= 2; if(l > 60) l = 60; aBoolean872 = !aBoolean872; } } Class44 class44_1 = new Class44(44820, abyte0); if(byte0 != -41) throw new NullPointerException(); else return class44_1; }