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;
}



.gif)


