this is java stuff from ibot
unzipped the code out of the jar
trying to make a batch that can run sro and sror at same time
atm i get the error
critical error . . . address already in use - bind
so here are all the classes inside the jar, converted back to java code
a.class
Code:
import java.io.IOException; import java.io.PrintStream; import java.net.*; import java.nio.channels.ServerSocketChannel; import java.nio.channels.SocketChannel; public final class a extends Thread { public a(Hackshield hackshield) { a = hackshield; super(); } public final void run() { try { a.b_java_nio_channels_ServerSocketChannel_fld = ServerSocketChannel.open(); a.b_java_nio_channels_ServerSocketChannel_fld.socket().bind(new InetSocketAddress(a.b_int_fld)); for(; a.a_java_nio_channels_SocketChannel_fld.isConnected(); Thread.sleep(1L)) { try { System.out.println((new StringBuilder("Waiting for HS Client... ")).append(a.b_java_nio_channels_ServerSocketChannel_fld.socket().getLocalPort()).toString()); d = a.b_java_nio_channels_ServerSocketChannel_fld.accept(); System.out.println((new StringBuilder("HS Client accepted... #")).append(a.a_int_fld + 1).append(" : ").append(d.socket().getInetAddress().getHostAddress()).toString()); b b1; (b1 = new b(this, d, a.a_int_fld)).start(); a.a_int_fld++; continue; } catch(IOException _ex) { } break; } System.out.println("Stopping HS Server listener..."); stop(); return; } catch(Exception _ex) { stop(); } } private SocketChannel d; final Hackshield a; }
Code:
import java.io.IOException; import java.io.PrintStream; import java.net.InetAddress; import java.net.Socket; import java.nio.ByteBuffer; import java.nio.channels.SocketChannel; public final class b extends Thread { public b(a a1, SocketChannel socketchannel, int i) { a_a_fld = a1; super(); a_java_nio_ByteBuffer_fld = ByteBuffer.allocate(4096); b = false; try { e = socketchannel; c = i; (a1 = a1).a.counter++; return; } // Misplaced declaration of an exception variable catch(a a1) { System.out.println((new StringBuilder("\n****** ERROR ******\nCritical Error - ")).append(a1.getMessage()).append("\n****** ERROR ******\n").toString()); } stop(); } public final void run() { try { for(; e.isConnected(); Thread.sleep(1L)) try { a_java_nio_ByteBuffer_fld.clear(); size = e.read(a_java_nio_ByteBuffer_fld); if(size > 0) { a_java_nio_ByteBuffer_fld.flip(); a a1; if((a1 = a_a_fld).a.a.isConnected()) { do { a a2; b = (a2 = a_a_fld).a.a(e); Thread.sleep(1000L); } while(!b); a a3; if(b) (a3 = a_a_fld).a.a.write(a_java_nio_ByteBuffer_fld); } } } catch(IOException _ex) { break; } System.out.println((new StringBuilder("HS Client disconnected... #")).append(c + 1).append(" : ").append(e.socket().getInetAddress().getHostAddress()).toString()); a a4; (a4 = a_a_fld).a.counter--; stop(); return; } catch(Exception _ex) { stop(); } } private SocketChannel e; private ByteBuffer a_java_nio_ByteBuffer_fld; private boolean b; private int c; private int size; private a a_a_fld; }
Code:
import java.io.IOException; import java.io.PrintStream; import java.net.InetAddress; import java.net.Socket; import java.nio.ByteBuffer; import java.nio.ByteOrder; import java.nio.channels.ServerSocketChannel; import java.nio.channels.SocketChannel; public final class c extends Thread { public c(Hackshield hackshield) { a_Hackshield_fld = hackshield; super(); a_java_nio_ByteBuffer_fld = ByteBuffer.allocate(4096); } public final void run() { try { for(; a_Hackshield_fld.a_java_nio_channels_SocketChannel_fld.isConnected(); Thread.sleep(1L)) try { a_java_nio_ByteBuffer_fld.clear(); size = a_Hackshield_fld.a_java_nio_channels_SocketChannel_fld.read(a_java_nio_ByteBuffer_fld); if(size > 0) { a_java_nio_ByteBuffer_fld.flip(); if(a_Hackshield_fld.b_java_nio_channels_SocketChannel_fld.isConnected()) a_Hackshield_fld.b_java_nio_channels_SocketChannel_fld.write(a_java_nio_ByteBuffer_fld); ByteBuffer bytebuffer = a_java_nio_ByteBuffer_fld; c c1 = this; try { bytebuffer.rewind(); bytebuffer.order(ByteOrder.LITTLE_ENDIAN); bytebuffer.getShort(); char c2; switch(c2 = bytebuffer.getChar()) { default: break; case 20480: System.out.println("Initializing please wait..."); break; case 24836: System.out.println("Silkroad launcher is now ready..."); break; case 8468: bytebuffer.getShort(); bytebuffer.get(); short word0 = bytebuffer.getShort(); if(c1.a_Hackshield_fld.c == null) break; if(c1.a_Hackshield_fld.c.isConnected()) { bytebuffer.rewind(); c1.a_Hackshield_fld.c.write(bytebuffer); System.out.println((new StringBuilder("Sending HS Data to... ")).append(c1.a_Hackshield_fld.c.socket().getInetAddress().getHostAddress()).toString()); } if(word0 == 12) { System.out.println("\n****** ERROR ******\nError detected on HS Data... \nPlease restart HS Server and Silkroad.exe\n****** ERROR ******\n"); c1.a_Hackshield_fld.a_boolean_fld = true; } c1.a_Hackshield_fld.c = null; break; } } catch(Exception exception) { System.out.println((new StringBuilder("\n****** ERROR ******\nCritical Error - ")).append(exception.getMessage()).append("\n****** ERROR ******\n").toString()); c1.stop(); } } } catch(IOException _ex) { break; } System.out.println("Client disconnected..."); a_Hackshield_fld.b_java_nio_channels_ServerSocketChannel_fld.close(); stop(); return; } catch(Exception _ex) { stop(); } } private ByteBuffer a_java_nio_ByteBuffer_fld; private int size; private Hackshield a_Hackshield_fld; }
Code:
import java.io.IOException; import java.io.PrintStream; import java.nio.ByteBuffer; import java.nio.ByteOrder; import java.nio.channels.SocketChannel; public final class d extends Thread { public d(Hackshield hackshield) { a_Hackshield_fld = hackshield; super(); a_java_nio_ByteBuffer_fld = ByteBuffer.allocate(4096); } public final void run() { try { for(; a_Hackshield_fld.b.isConnected(); Thread.sleep(1L)) try { a_java_nio_ByteBuffer_fld.clear(); size = a_Hackshield_fld.b.read(a_java_nio_ByteBuffer_fld); if(size > 0) { a_java_nio_ByteBuffer_fld.flip(); if(a_Hackshield_fld.a.isConnected()) a_Hackshield_fld.a.write(a_java_nio_ByteBuffer_fld); ByteBuffer bytebuffer = a_java_nio_ByteBuffer_fld; d d1 = this; try { bytebuffer.rewind(); bytebuffer.order(ByteOrder.LITTLE_ENDIAN); bytebuffer.getShort(); char c; switch(c = bytebuffer.getChar()) { case 41217: System.out.println("SRO Client is now ready..."); System.out.println("Starting HS Server listener..."); a a1; (a1 = new a(d1.a_Hackshield_fld)).start(); d1.a_Hackshield_fld.b.close(); break; } } catch(Exception exception) { System.out.println((new StringBuilder("\n****** ERROR ******\nCritical Error - ")).append(exception.getMessage()).append("\n****** ERROR ******\n").toString()); d1.stop(); } } } catch(IOException _ex) { break; } stop(); return; } catch(Exception _ex) { stop(); } } private ByteBuffer a_java_nio_ByteBuffer_fld; private int size; private Hackshield a_Hackshield_fld; }
Code:
import java.io.PrintStream; import java.net.*; import java.nio.channels.ServerSocketChannel; import java.nio.channels.SocketChannel; public class Hackshield { public Hackshield() { a_int_fld = 0; c = null; counter = 0; a_java_lang_String_fld = "121.128.133.28"; b_int_fld = 15777; a_java_lang_String_fld = "121.128.133.28"; b_int_fld = 15777; } private Hackshield(String s) { a_int_fld = 0; c = null; counter = 0; a_java_lang_String_fld = "121.128.133.28"; b_int_fld = 15777; try { a_java_lang_String_fld = s; return; } // Misplaced declaration of an exception variable catch(String s) { System.out.println((new StringBuilder("Critical Error - ")).append(s.getMessage()).toString()); } } private Hackshield(String s, String s1) { a_int_fld = 0; c = null; counter = 0; a_java_lang_String_fld = "121.128.133.28"; b_int_fld = 15777; try { a_java_lang_String_fld = s; } // Misplaced declaration of an exception variable catch(String s) { System.out.println((new StringBuilder("Critical Error - ")).append(s.getMessage()).toString()); } try { b_int_fld = Integer.parseInt(s1); return; } // Misplaced declaration of an exception variable catch(String s) { System.out.println((new StringBuilder("Critical Error - ")).append(s.getMessage()).toString()); } } private void begin() { try { a_java_nio_channels_ServerSocketChannel_fld = ServerSocketChannel.open(); a_java_nio_channels_ServerSocketChannel_fld.socket().bind(new InetSocketAddress("127.0.0.1", 15778)); System.out.println("#############################################"); System.out.println("####"); System.out.println((new StringBuilder("#### IPHS: ")).append(InetAddress.getLocalHost().getHostAddress()).append(":").append(b_int_fld).toString()); System.out.println("####"); System.out.println("#############################################"); System.out.println(); System.out.println("****** Launch silkroad.exe to begin... ******"); do { System.out.println((new StringBuilder("Waiting for client... ")).append(a_java_nio_channels_ServerSocketChannel_fld.socket().getLocalSocketAddress()).toString()); a_java_nio_channels_SocketChannel_fld = a_java_nio_channels_ServerSocketChannel_fld.accept(); System.out.println("Client accepted..."); b_java_nio_channels_SocketChannel_fld = SocketChannel.open(); b_java_nio_channels_SocketChannel_fld.connect(new InetSocketAddress(a_java_lang_String_fld, 15779)); System.out.println("Connecting to server..."); d d1 = new d(this); c c1 = new c(this); d1.start(); c1.start(); c1.join(); } while(true); } catch(Exception exception) { System.out.println((new StringBuilder("Critical Error - ")).append(exception.getMessage()).toString()); } } public final synchronized boolean a(SocketChannel socketchannel) { boolean flag = false; if(c == null) { c = socketchannel; flag = true; } return flag; } public static void main(String args[]) { try { if(args.length == 1) { (args = new Hackshield(args[0])).begin(); return; } if(args.length == 2) { (args = new Hackshield(args[0], args[1])).begin(); return; } else { (args = new Hackshield()).begin(); return; } } // Misplaced declaration of an exception variable catch(String args[]) { System.out.println((new StringBuilder("Critical Error - ")).append(args.getMessage()).toString()); } } private ServerSocketChannel a_java_nio_channels_ServerSocketChannel_fld; public ServerSocketChannel b_java_nio_channels_ServerSocketChannel_fld; public SocketChannel a_java_nio_channels_SocketChannel_fld; public SocketChannel b_java_nio_channels_SocketChannel_fld; public int a_int_fld; public SocketChannel c; public int counter; public boolean a_boolean_fld; private String a_java_lang_String_fld; public int b_int_fld; }