// Decompiled by Jad v1.5.8e. Copyright 2001 Pavel Kouznetsov. // Jad home page: http://www.geocities.com/kpdus/jad.html // Decompiler options: packimports(3) // Source File Name: x.java import java.io.*; import java.net.Socket; public class x extends w implements Runnable { public x(Socket socket, a a1) throws IOException { H = false; L = true; G = socket; E = socket.getInputStream(); F = socket.getOutputStream(); L = false; a1.a(this); } public void a() { boolean flag; flag = q.d; super.a(); H = true; this; if(flag) goto _L2; else goto _L1 _L1: E; JVM INSTR ifnull 31; goto _L3 _L4 _L3: E.close(); _L4: this; _L2: if(flag) goto _L6; else goto _L5 _L5: F; JVM INSTR ifnull 49; goto _L7 _L8 _L7: F.close(); _L8: this; _L6: G; if(flag) goto _L10; else goto _L9 _L9: JVM INSTR ifnull 67; goto _L11 _L12 _L12: break MISSING_BLOCK_LABEL_82; _L11: G; _L10: close(); break MISSING_BLOCK_LABEL_82; IOException ioexception; ioexception; System.out.println(M[1]); L = true; synchronized(this) { notify(); } I = null; return; } public int h() throws IOException { H; if(q.d) goto _L2; else goto _L1 _L1: if(H) return 0; E.read(); _L2: return; } public int d() throws IOException { H; if(q.d) goto _L2; else goto _L1 _L1: if(H) return 0; E.available(); _L2: return; } public void a(int i, int j, byte abyte0[]) throws IOException { boolean flag1 = q.d; H; if(flag1) goto _L2; else goto _L1 _L1: if(H) return; false; _L2: int k; k; boolean flag = false; _L8: if(k >= i) break; /* Loop/switch isn't completed */ int l = E.read(abyte0, k + j, i - k); if(flag1) goto _L4; else goto _L3 _L3: JVM INSTR ifgt 70; goto _L5 _L6 _L5: break MISSING_BLOCK_LABEL_57; _L6: break MISSING_BLOCK_LABEL_70; throw new IOException(M[0]); k + l; _L4: k; if(!flag1) goto _L8; else goto _L7 _L7: } public void b(byte abyte0[], int i, int j) throws IOException { boolean flag = q.d; this; if(flag) goto _L2; else goto _L1 _L1: H; JVM INSTR ifeq 18; goto _L3 _L4 _L3: break MISSING_BLOCK_LABEL_17; _L4: break MISSING_BLOCK_LABEL_18; return; this; _L2: if(flag) goto _L6; else goto _L5 _L5: I; JVM INSTR ifnonnull 39; goto _L7 _L8 _L7: break MISSING_BLOCK_LABEL_30; _L8: break MISSING_BLOCK_LABEL_39; I = new byte[5000]; this; _L6: JVM INSTR dup ; x x1; x1; JVM INSTR monitorenter ; int k = 0; _L14: if(k >= j) break; /* Loop/switch isn't completed */ I[K] = abyte0[k + i]; K = (K + 1) % 5000; if(flag) continue; /* Loop/switch isn't completed */ this; if(flag) goto _L10; else goto _L9 _L9: K; (J + 4900) % 5000; JVM INSTR icmpne 124; goto _L11 _L12 _L11: throw new IOException(M[3]); _L12: k++; if(!flag) goto _L14; else goto _L13 _L13: notify(); x1; _L10: JVM INSTR monitorexit ; goto _L15 Exception exception; exception; throw exception; _L15: } public void run() { boolean flag1; flag1 = q.d; boolean flag = false; _L15: if(L) break; /* Loop/switch isn't completed */ x x1 = this; JVM INSTR monitorenter ; K; if(flag1) goto _L2; else goto _L1 _L1: J; JVM INSTR icmpne 44; goto _L3 _L4 _L3: wait(); goto _L4 InterruptedException interruptedexception; interruptedexception; _L4: L; _L2: if(flag1) goto _L6; else goto _L5 _L5: JVM INSTR ifeq 60; goto _L7 _L8 _L7: return; _L8: J; _L6: int j; j; K; J; if(flag1) goto _L10; else goto _L9 _L9: JVM INSTR icmplt 96; goto _L11 _L12 _L11: int i = K - J; if(!flag1) goto _L13; else goto _L12 _L12: '\u1388'; J; _L10: JVM INSTR isub ; i; goto _L13 Exception exception; exception; throw exception; _L13: if(i <= 0) goto _L15; else goto _L14 _L14: try { F.write(I, j, i); } catch(IOException ioexception) { super.y = true; super.C = M[2] + ioexception; } J = (J + i) % 5000; this; if(flag1) goto _L17; else goto _L16 _L16: K; J; JVM INSTR icmpne 210; goto _L18 _L15 _L18: this; _L17: F; flush(); goto _L15 IOException ioexception1; ioexception1; super.y = true; super.C = M[2] + ioexception1; if(!flag1) goto _L15; else goto _L19 _L19: } private InputStream E; private OutputStream F; private Socket G; private boolean H; private byte I[]; private int J; private int K; private boolean L; private static String M[]; static { String as[]; as = new String[4]; as[0] = "\005\023|"; as[1] = "\005.H3y`?V3x)2]|x4._=f"; as[2] = "\024+H5\177%.\0"; as[3] = "\")\\:n2|U*n2:V3|"; M = as; break MISSING_BLOCK_LABEL_155; local; toCharArray(); JVM INSTR dup ; JVM INSTR arraylength .length; JVM INSTR swap ; int i = 0; JVM INSTR swap ; JVM INSTR dup_x1 ; 1; JVM INSTR icmpgt 134; goto _L1 _L2 _L1: JVM INSTR dup ; i; _L4: JVM INSTR dup2 ; JVM INSTR caload ; byte byte0; switch(i % 5) { case 0: // '\0' byte0 = 0x40; break; case 1: // '\001' byte0 = 92; break; case 2: // '\002' byte0 = 58; break; case 3: // '\003' byte0 = 92; break; default: byte0 = 11; break; } byte0; JVM INSTR ixor ; (char); JVM INSTR castore ; i++; JVM INSTR swap ; JVM INSTR dup_x1 ; JVM INSTR ifne 134; goto _L3 _L2 _L3: JVM INSTR dup2 ; JVM INSTR swap ; goto _L4 _L2: JVM INSTR swap ; JVM INSTR dup_x1 ; i; JVM INSTR icmpgt 57; goto _L5 _L1 _L5: JVM INSTR new #157 ; JVM INSTR dup_x1 ; JVM INSTR swap ; String(); intern(); JVM INSTR swap ; JVM INSTR pop ; JVM INSTR ret 0; } }