file_id.diz:
JReport Enterprise Server
JREPORT Release 4.1.0, build 552 Crack
1: Install JREPORT Release 4.1.0, build 552
2: Copy ReportEnv.class into the following files:
$JREPORT_HOME/lib/JREngine.zip
$JREPORT_HOME/lib/JRESServlets.zip
$JREPORT_HOME/lib/maintain.zip
$JREPORT_HOME/lib/viewer12.jar
$JREPORT_HOME/lib/viewer.jar
Remember, you need to put the file into subdirectory jet of each file (descripte
d above).
Send comments, thanks to koder5@uol.com.ar
ReportEnv.java:
// Decompiled by Jad v1.5.7. Copyright 1997-99 Pavel Kou
znetsov.
// Jad home page:
http://www.geocities.com/SiliconValley/Bridge/8617/
jad.html
// Decompiler options: packimports(3)
// Source File Name: jet/ReportEnv
package jet;
import guitools.MsgBox;
import guitools.toolkit.FrameActiveListener;
import guitools.toolkit.JDebug;
import java.awt.Frame;
import java.awt.Window;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.FilterOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.UnsupportedEncodingException;
import java.sql.Date;
import java.util.Calendar;
import java.util.Enumeration;
import java.util.GregorianCalendar;
import java.util.Hashtable;
import jet.util.BaseX;
import jet.util.SystemTools;
// Referenced classes of package jet:
// Env, logoResource, JResource
public class ReportEnv extends Env
implements FrameActiveListener
{
public static long getMaintainTime()
{
return _fld$n5;
}
public static String getProductionName()
{
return getProductionName(productid);
}
public static String getProductionName(int i)
{
String s = logoResource.ProductName;
switch(i)
{
case 1: // '\001'
return JResource.getLabel("PROName");
case 11: // '\013'
return s + " Team Designer";
case 2: // '\002'
return s + " Server";
case 3: // '\003'
return s + " Server Engine";
case 4: // '\004'
return s + " Quick View";
case 5: // '\005'
case 8: // '\b'
return s + " Client Viewer";
case 6: // '\006'
return s + " Designer Bean";
case 7: // '\007'
return s + " Enterprise Server";
case 9: // '\t'
return s + " Express";
case 10: // '\n'
return s + " Catalog Bean";
}
throw new Error("Internal error.");
}
public static String readAppName(String s)
{
_fld$l5 = null;
_fld$k5 = s + "bin" + File.separator + "jslc.dat";
try
{
FileInputStream fileinputstream = new FileInputStream(_fld$k5);
_fld$l5 = read(fileinputstream);
fileinputstream.close();
}
catch(Exception _ex) { }
finally
{
if(_fld$l5 == null)
return "The " + _fld$k5 + " is missing or corrupted
and the system initialization is failed.";
}
app = (String)_fld$l5.get("appname");
return app;
}
public static String getp(String s)
{
return (String)_fld$l5.get(s);
}
public static void setp(String s, String s1)
{
_fld$l5.put(s, s1);
try
{
write(_fld$k5, _fld$l5);
if(false)
throw new IOException();
}
catch(IOException _ex) { }
}
public static String checkEnv()
{
return checkEnv(null);
}
public static String checkEnv(String s)
{
String s1 = Env.checkEnv(s);
if(s1 != null)
return s1;
_fld$l5 = null;
_fld$k5 = Env.homePath + "bin" + File.separator + "jslc.dat&
#34;;
try
{
FileInputStream fileinputstream = new FileInputStream(_fld$k5);
_fld$l5 = read(fileinputstream);
fileinputstream.close();
}
catch(Exception _ex) { }
finally
{
if(_fld$l5 == null)
return "The " + _fld$k5 + " is missing or corrupted
and the system initialization is failed.";
}
Env.firstCat = (String)_fld$l5.get("firstCat");
app = (String)_fld$l5.get("appname");
uid = (String)_fld$l5.get("uid");
pw = (String)_fld$l5.get("password");
if(!check(uid, pw, false))
// return JResource.getMessage("RPT_0"); This is the cr
ack
return checkCPU(); //; And this line was added.
else
return checkCPU();
}
public static boolean ie()
{
return (_fld$1h >> 16 & 15L) == 0L;
}
public static int getUsers()
{
if(_fld$1h != 0L)
return (int)(_fld$1h >> 20) & 0xff;
else
return 1;
}
private static Hashtable read(InputStream inputstream)
{
Hashtable hashtable = null;
try
{
DataInputStream datainputstream = new DataInputStream(inputstream);
int i = datainputstream.readInt();
if(i != mm)
return null;
i = datainputstream.readInt();
if(i != 1)
return null;
i = datainputstream.readInt();
hashtable = new Hashtable();
for(int j = 0; j < i; j++)
{
byte abyte0[][] = new byte[2][];
for(int k = 0; k < 2; k++)
{
int l = datainputstream.readInt();
byte abyte1[] = new byte[l];
datainputstream.read(abyte1);
for(int i1 = 0; i1 < abyte1.length; i1++
)
abyte1[i1] ^= mm;
abyte0[k] = abyte1;
}
hashtable.put(new String(abyte0[0], _fld$i5), new String(aby
te0[1], _fld$i5));
}
}
catch(java.io.UnsupportedEncodingException e)
{
}
catch(java.io.IOException e)
{
}
return hashtable;
}
public static int getMN()
{
return (int)(_fld$1h >> 44) & 0xf;
}
public static int getWebDesignerUses()
{
int i = append[2] & 0xff;
return i;
}
public static String ltype()
{
if((_fld$1h >> 16 & 15L) == 0L)
return "Evaluation";
if((_fld$1h >> 16 & 15L) == 14L)
return "MAINTAIN";
if((_fld$1h >> 16 & 15L) == 12L)
return "USER";
if(dd != null)
return "Temporary";
else
return "Permanent";
}
public static String getVersion()
{
return getProductionName() + " version : " + 4 + '.' + &
#49; + '.' + 0 + "; Build Number : " + 552 + "; Help Ver
sion : " + 552 + '.';
}
public static int getMJ()
{
return (int)(_fld$1h >> 48) & 0xf;
}
public static boolean rid()
{
if(_fld$1h != 0L)
return (_fld$1h & 32768L) != 0L;
else
return true;
}
public static String maintain()
{
Date date = new Date(_fld$n5);
return date.toString();
}
public static String getuid()
{
return uid;
}
public static boolean expired(long l)
{
java.util.Date date = new java.util.Date(l);
GregorianCalendar gregoriancalendar = new GregorianCalendar();
gregoriancalendar.setTime(date);
GregorianCalendar gregoriancalendar1 = new GregorianCalendar();
String s = _mth$i5(gregoriancalendar1, gregoriancalendar);
return s.equals(">");
}
private static void write(String s, Hashtable hashtable)
{
try
{
int i = 0;
int k = hashtable.size();
String as[] = new String[k * 2];
for(Enumeration enumeration = hashtable.keys(); enumeration.hasMoreEle
ments();)
{
String s1;
as[i++] = s1 = (String)enumeration.nextElement();
as[i++] = (String)hashtable.get(s1);
}
FileOutputStream fileoutputstream = new FileOutputStream(s);
DataOutputStream dataoutputstream = new DataOutputStream(fileoutputstr
eam);
dataoutputstream.writeInt(mm);
int l = 1;
dataoutputstream.writeInt(l);
dataoutputstream.writeInt(k);
for(int j = 0; j < as.length; j++)
{
byte abyte0[] = as[j].getBytes(_fld$i5);
dataoutputstream.writeInt(abyte0.length);
for(int i1 = 0; i1 < abyte0.length; i1++)
abyte0[i1] ^= mm;
fileoutputstream.write(abyte0);
}
dataoutputstream.close();
fileoutputstream.close();
}
catch(java.io.UnsupportedEncodingException e)
{
}
catch(java.io.IOException e)
{
}
}
public static final boolean isJDK12Compatible()
{
String s = System.getProperty("java.version");
boolean flag = false;
if(s.equals("JDK1.1.6_Borland"))
flag = false;
else
flag = s.startsWith("1.2") || s.startsWith("1.3&
#34;) || s.startsWith("1.4");
return flag;
}
public void setActiveFrame(Frame frame1)
{
frame = frame1;
}
public static String[] getKey(String s)
{
_fld$l5 = null;
_fld$k5 = s + "bin" + File.separator + "jslc.dat";
String as[] = new String[2];
try
{
FileInputStream fileinputstream = new FileInputStream(_fld$k5);
_fld$l5 = read(fileinputstream);
fileinputstream.close();
}
catch(Exception _ex) { }
finally
{
if(_fld$l5 == null)
return null;
}
as[0] = (String)_fld$l5.get("uid");
as[1] = (String)_fld$l5.get("password");
return as;
}
public static String gp()
{
return pw;
}
public static boolean check(String s, String s1, boolean flag)
{
if(s == null || s1 == null)
return false;
byte abyte0[] = recover(s1);
if(abyte0 == null)
try
{
abyte0 = s1.getBytes(_fld$i5);
}
catch(UnsupportedEncodingException _ex)
{
abyte0 = s1.getBytes();
}
_fld$m5 = abyte0;
pw = s1;
uid = s;
return check(s, abyte0, flag);
}
public static void check()
{
String s = checkEnv();
if(s != null)
{
if(frame == null)
{
frame = new Frame();
frame.show();
}
MsgBox.promptError(frame, s);
System.exit(0);
}
}
public static boolean bQueueID()
{
if(_fld$1h != 0L)
return (_fld$1h & 64L) != 0L;
else
return false;
}
public static boolean check(String s, byte abyte0[])
{
return check(s, abyte0, false);
}
public static boolean check(String s, byte abyte0[], boolean flag)
{
byte abyte1[] = new byte[abyte0.length];
System.arraycopy(abyte0, 0, abyte1, 0, abyte0.length
);
abyte0 = abyte1;
int l2 = 0;
if(abyte0 == null || abyte0.length != 24 && abyte0.length !=
47)
return false;
byte abyte2[] = new byte[8];
for(int i = 0; i < 8; i++)
abyte2[i] = 32;
byte abyte3[] = null;
try
{
abyte3 = s.getBytes(_fld$i5);
}
catch(UnsupportedEncodingException _ex)
{
abyte3 = s.getBytes();
}
System.arraycopy(abyte3, 0, abyte2, 0, abyte3.length <= 8 ?
abyte3.length : 8);
if(abyte0.length == 24)
{
for(int j = 0; j < 17; j++)
{
byte byte0 = abyte0[23];
for(int k2 = 23; k2 > 0; k2--)
{
abyte0[k2] = (byte)((abyte0[k2] & 0xff)
2;> 3);
abyte0[k2] |= (abyte0[k2 - 1] & 0xff) &
#60;< 5;
}
abyte0[0] = (byte)((abyte0[0] & 0xff) &
#62;> 3);
abyte0[0] |= (byte0 & 0xff) << 5;
abyte0 = decode(abyte0);
}
}
else
if(abyte0.length >= 47)
{
abyte0 = BaseX.decode(abyte0);
if(abyte0 == null)
return false;
}
l2 = _fld$o5;
for(int k = 0; k < abyte2.length; k++)
{
byte byte1 = (byte)l2;
byte1 &= 0xff;
l2 >>= 8;
abyte2[k] ^= byte1;
}
boolean flag1 = false;
long l3 = 0L;
_fld$1h = 0L;
l2 = 8;
for(int l = 0; l < 8; l++)
{
_fld$1h <<= 8;
_fld$1h |= abyte0[l2++] & 0xff;
}
long l4 = 0L;
for(int i1 = 1; i1 < 8; i1++)
l4 += _fld$1h >> i1 * 8 & 255L;
for(int j1 = 0; j1 < 8; j1++)
{
l3 <<= 8;
l3 |= abyte0[l2++] & 0xff;
}
long l6 = 0L;
if(abyte0.length >= 29)
{
append[0] = abyte0[l2++];
l6 |= append[0] & 0xff;
append[1] = abyte0[l2++];
append[2] = abyte0[l2++];
append[3] = abyte0[l2++];
append[4] = abyte0[l2++];
append[4] = (byte)(append[4] ^ append[3]);
append[3] = (byte)(append[3] ^ append[2]);
append[2] = (byte)(append[2] ^ append[1]);
append[1] = (byte)(int)((long)append[1] ^ l6);
if((append[1] & 0x1) != 0)
return false;
l4 += append[1];
l4 += append[2];
l4 += append[3];
l4 += append[4];
}
else
{
l6 = _fld$1h & 255L;
}
long l7 = l4 & 255L;
l4 = l7;
boolean flag2 = false;
if(l4 != l6 || _fld$1h >> 60 != 1L)
{
l7++;
l7 &= 255L;
if(l7 == l6)
return false;
l7++;
l7 &= 255L;
if(l7 == l6)
{
long l8 = l3 & 255L;
l8++;
l8 &= 255L;
long l9 = l8;
for(int k1 = 0; k1 < 7; k1++)
{
l9 <<= 8;
l9 |= l8;
}
_fld$1h ^= l9;
if(_fld$1h >> 60 == 3L || _fld$1h >>
60 == 4L)
{
l3 ^= l9;
l3 >>= 8;
l3 <<= 8;
l3 |= l8 - 1L & 255L;
flag1 = true;
long l5 = 0L;
for(int l1 = 1; l1 < 7; l1++)
l5 += l3 >> l1 * 8 & 255L;
l5++;
l5 &= 255L;
if(l3 >>> 56 != l5)
return false;
l3 <<= 8;
l3 >>= 8;
if((l3 << 8) >>> 56 == (~(l3 & 255L) & 2
55L))
{
l3 &= 0xffffffffffffL;
if(l3 < 0xd4228bc6b6L || l3 > 0
0;24fb190ab58L)
return false;
flag2 = true;
}
byte byte2 = (byte)(int)l8;
for(int i2 = 0; i2 < 8; i2++)
abyte0[i2] ^= byte2;
}
else
{
return false;
}
}
else
{
return false;
}
}
for(int j2 = 0; j2 < 8; j2++)
if(j2 >= abyte2.length)
{
if(abyte0[j2] != 32)
return false;
}
else
if(abyte0[j2] != abyte2[j2])
return false;
if(!flag)
{
if(productid == 2 && ((int)(_fld$1h >> 52) & 0x
ff) != 48)
return false;
if(productid == 1 && (((int)(_fld$1h >> 52) & 0&
#120;ff) != 16 || ((String)_fld$l5.get("uid")).equals("jbuilder&
#34;) && ((String)_fld$l5.get("password")).equals("D17AF6397
62A6D482D4A821271BF0FCEB537D9F2C9DF37E2")))
return false;
if(productid == 3 && ((int)(_fld$1h >> 52) & 0x
ff) != 97)
return false;
if(productid == 6 && ((int)(_fld$1h >> 52) & 0x
ff) != 80)
return false;
if(productid == 7 && ((int)(_fld$1h >> 52) & 0x
ff) != 96)
return false;
if(productid == 11 && ((int)(_fld$1h >> 52) &
48;xff) != 101)
return false;
if(productid == 9 && ((int)(_fld$1h >> 52) & 0
120;ff) == 16 && ((String)_fld$l5.get("uid")).equals("jbuilder
34;) && ((String)_fld$l5.get("password")).equals("D17AF63976
2A6D482D4A821271BF0FCEB537D9F2C9DF37E2"))
return false;
if(productid == 9 && ((int)(_fld$1h >> 52) & 0
120;ff) == 112 && ((String)_fld$l5.get("uid")).equals("jbuil
der") && ((String)_fld$l5.get("password")).equals("C63BE628673BC
4593E5B930262AE1E99AB2600F0D8AE26F3"))
return false;
if(productid == 9 && ((int)(_fld$1h >> 52) & 0
120;ff) != 112)
return false;
}
if((_fld$1h >> 16 & 15L) == 14L)
if(_mth$k5(l3))
{
return false;
}
else
{
dd = new java.util.Date(l3);
_fld$n5 = l3;
return !maintainExpired(l3);
}
if(flag1)
{
if((_fld$1h >> 16 & 15L) == 12L)
if(_mth$k5(l3))
{
return false;
}
else
{
dd = new java.util.Date(l3);
_fld$n5 = l3;
return !maintainExpired(l3);
}
if((_fld$1h >> 16 & 15L) > 0L && flag2)
{
dd = null;
return _mth$j5();
}
}
else
if(l3 == 0x1234567890abcdefL)
{
dd = null;
return _mth$j5();
}
dd = new java.util.Date(l3);
if(_mth$k5(l3))
return false;
else
return !expired(l3);
}
public static int getR()
{
if(_fld$1h != 0L)
return (int)(_fld$1h >> 28) & 0xffff;
else
return 9;
}
public static String getProdNameFromKey()
{
int i = getPN();
String s = logoResource.ProductName;
String s1 = "Invalid Product Name";
if(i == 16)
s1 = s + " Professional";
else
if(i == 48)
s1 = s + " Server";
else
if(i == 96)
s1 = s + " Enterprise Server";
else
if(i == 97)
s1 = s + " Server Engine";
else
if(i == 101)
s1 = s + " Team Designer";
else
if(i == 80)
s1 = s + " Designer Bean";
else
if(i == 112)
s1 = s + " Express";
else
if(i == 64)
s1 = s + " Runtime";
return s1;
}
public static boolean maintainExpired(long l)
{
java.util.Date date = new java.util.Date(l);
GregorianCalendar gregoriancalendar = new GregorianCalendar();
gregoriancalendar.setTime(date);
GregorianCalendar gregoriancalendar1 = new GregorianCalendar();
gregoriancalendar1.setTime(releaseDate);
String s = _mth$i5(gregoriancalendar1, gregoriancalendar);
return s.equals(">");
}
public static int getCPU()
{
int i = 1;
if(_fld$1h != 0L && _fld$1h >> 60 >= 4L)
i = (int)(_fld$1h >> 7) & 0xff;
return i;
}
private static String toString(byte abyte0[])
{
StringBuffer stringbuffer = new StringBuffer();
int i = 0;
for(int j = abyte0.length; i < j;)
{
byte byte0 = abyte0[i++];
byte byte1 = (byte)((byte0 & 0xff) >> 4);
int k = byte1 <= 9 ? byte1 + 48 : (byte1 - 1
0) + 65;
stringbuffer.append((char)k);
byte0 &= 0xf;
k = byte0 <= 9 ? byte0 + 48 : (byte0 - 10
;) + 65;
stringbuffer.append((char)k);
}
return stringbuffer.toString();
}
private static String _mth$i5(Calendar calendar, Calendar calendar1)
{
if(calendar.get(1) > calendar1.get(1))
return ">";
if(calendar.get(1) == calendar1.get(1))
{
if(calendar.get(2) > calendar1.get(2))
return ">";
if(calendar.get(2) == calendar1.get(2))
{
if(calendar.get(5) > calendar1.get(5))
return ">";
if(calendar.get(5) == calendar1.get(5))
return "==";
else
return "<";
}
else
{
return "<";
}
}
else
{
return "<";
}
}
public ReportEnv()
{
}
public static String expire()
{
if(ltype().equals("Evaluation") || ltype().equals("Temporary
"))
{
Date date = new Date(dd.getTime());
return date.toString();
}
else
{
return "Never";
}
}
public static boolean checkpassword()
{
return check(uid, _fld$m5, true);
}
public static boolean isUnlimitedForWebDesigner()
{
return (append[2] & 0xff) == 255;
}
public static byte[] recover(String s)
{
byte abyte0[] = null;
try
{
abyte0 = s.getBytes(_fld$i5);
}
catch(UnsupportedEncodingException _ex)
{
abyte0 = s.getBytes();
}
if(abyte0.length != 48)
return null;
byte abyte1[] = new byte[abyte0.length / 2];
int i = 0;
for(int j = abyte0.length; i < j; i++)
{
byte byte0 = abyte0[i++];
byte0 = byte0 <= 57 ? (byte)(byte0 - 48) : (byte)((b
yte0 - 65) + 10);
byte0 <<= 4;
byte byte1 = abyte0[i];
byte1 = byte1 <= 57 ? (byte)(byte1 - 48) : (byte)((b
yte1 - 65) + 10);
byte0 |= byte1;
abyte1[i >> 1] = byte0;
}
return abyte1;
}
public static void setFrame(Frame frame1)
{
frame = frame1;
}
public static void checkpassword1()
{
// if(!checkpassword())
// MsgBox.promptError(frame, JResource.getMessage("RPT_0
"));
}
private static byte[] decode(byte abyte0[])
{
for(int i1 = 0; i1 < 24; i1++)
abyte0[i1] ^= mn[7 - i1 % 8];
int j1 = 0;
for(int i = 0; i < 8; i++)
{
long l3 = 0L;
int i3 = j1;
for(int k = 0; k < 3; k++)
{
l3 |= abyte0[j1] & 0xff;
l3 <<= 8;
j1++;
}
l3 >>= 8;
long l4 = (l3 & 31L) << 19;
l3 >>= 5;
l3 |= l4;
j1 = i3;
for(int l = 2; l >= 0; l--)
{
abyte0[j1] = (byte)(int)(l3 >> l * 8);
j1++;
}
}
for(int j = 7; j >= 0; j--)
{
int i2 = (((mn[j] & 0xff) >> 4) * j) % 24;
int k2 = ((mn[j] & 0xff & 0xf) * j) % 24;
int k1 = abyte0[i2];
abyte0[i2] = abyte0[k2];
abyte0[k2] = (byte)k1;
}
for(int l1 = 0; l1 < 24; l1++)
{
int j2 = mn[l1 % 8] & 0xff;
int l2 = abyte0[l1] & 0xff;
j2 ^= l2;
abyte0[l1] = (byte)j2;
}
return abyte0;
}
public static boolean isMt()
{
return ((int)(_fld$1h >> 44) & 0xf) == 15;
}
public static void clear()
{
if(Env.firstCat != null && _fld$l5 != null)
{
_fld$l5.remove("firstCat");
try
{
write(_fld$k5, _fld$l5);
if(false)
throw new IOException();
}
catch(IOException _ex) { }
}
}
private static boolean _mth$j5()
{
int i = (int)(_fld$1h >> 48) & 0xf;
int j = (int)(_fld$1h >> 44) & 0xf;
if(i < 4)
return false;
return i != 4 || j == 15 || j >= 1;
}
public static String checkCPU()
{
String s = null;
boolean flag = isFlexCPU();
int i = getCPU();
int j = SystemTools.getCPUs();
if(!flag && i != 0 && j > i)
s = "The license you have acquired for " + getProdNameFromKe
y() + " supports up to " + i + " CPU(s). You cannot run the product
in your computer " + "which has " + j + " CPU(s).";
return s;
}
public static boolean isFlexCPU()
{
if(_fld$1h != 0L)
return (_fld$1h & 32L) != 0L;
else
return false;
}
public static int getPN()
{
return (int)(_fld$1h >> 52) & 0xff;
}
public static boolean iss()
{
return productid == 2;
}
private static boolean _mth$k5(long l)
{
java.util.Date date = new java.util.Date(l);
GregorianCalendar gregoriancalendar = new GregorianCalendar();
GregorianCalendar gregoriancalendar1 = new GregorianCalendar();
gregoriancalendar.set(1998, 6, 13);
gregoriancalendar1.set(3000, 0, 1);
return date.after(gregoriancalendar1.getTime()) || date.before(grego
riancalendar.getTime());
}
static String _fld$i5 = "8859_1";
static final long _fld$j5 = 14L;
public static final int major = 4;
public static final int minor = 1;
public static final int dot3 = 0;
public static final int BuildNumber = 552;
public static final int HelpVersion = 552;
public static final java.util.Date releaseDate = new java.util.Date(1
8;2, 4, 9);
public static final String PROID = "Pasdf56q890weB2s5fC43fDE"
;;
public static final String SERVID = "89Sfdswer470eGs19
48;dfew324C";
public static int productid = 7;
public static String app;
private static String _fld$k5;
private static Hashtable _fld$l5;
private static String uid;
private static String pw;
private static byte _fld$m5[];
private static long _fld$1h;
private static byte append[] = new byte[5];
private static java.util.Date dd;
private static long _fld$n5;
public static Frame frame;
private static byte mn[] = {
-54, 15, -83, -17, -84, -27, 65, -120
};
private static int _fld$o5 = 0xf3a729bc;
private static int mm = 0xac0facc0;
static
{
JDebug.setReportVersion(getVersion());
System.runFinalization();
}
}