1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
package  Calsn;
import  java.text.DecimalFormat;
import  java.text.NumberFormat;
import  java.text.SimpleDateFormat;
import  java.util.Calendar;
public  class  KeygenForBlue8
{
   private  static  String getSerial(String userId, String version, String licenseNum,  boolean  selected)
   {
     Calendar cal = Calendar.getInstance();
     cal.add( 1 3 );
     cal.add( 6 , - 1 );
     NumberFormat nf =  new  DecimalFormat( "000" );
     licenseNum = nf.format(Integer.valueOf(licenseNum));
     String verTime = (selected) ?  "-"  new  SimpleDateFormat( "yyMMdd" ).format(cal.getTime()) +  "4"  "-1612214" ;
     String type =  "YE3MB-" ;
     String need = userId.substring( 0 1 ) + type + version + licenseNum + verTime;
     String dx = need +  "Decompiling this copyrighted software is a violation of both your license agreement and the Digital Millenium Copyright Act of 1998 (http://www.loc.gov/copyright/legislation/dmca.pdf). Under section 1204 of the DMCA, penalties range up to a $500,000 fine or up to five years imprisonment for a first offense. Think about it; pay for a license, avoid prosecution, and feel better about yourself."  + userId;
     int  suf = decode(dx);
     String code = need + String.valueOf(suf);
     return  change(code);
   }
   private  static  int  decode(String s)
   {
     int  i =  0 ;
     char [] ac = s.toCharArray();
     int  j =  0 ;
     for  ( int  k = ac.length; j < k; ++j) {
       i =  31  * i + ac[j];
     }
     return  Math.abs(i);
   }
   private  static  String change(String s)
   {
     byte [] abyte0 = s.getBytes();
     char [] ac =  new  char [s.length()];
     int  i =  0 ;
     for  ( int  k = abyte0.length; i < k; ++i)
     {
       int  j = abyte0[i];
       if  ((j >=  48 ) && (j <=  57 )) {
         j = (j -  48  5 ) %  10  48 ;
       }
       else  if  ((j >=  65 ) && (j <=  90 )) {
         j = (j -  65  13 ) %  26  65 ;
       }
       else  if  ((j >=  97 ) && (j <=  122 ))
         j = (j -  97  13 ) %  26  97 ;
       ac[i] = ( char )j;
     }
     return  String.valueOf(ac);
   }
   public  static  void  main(String[] args)
   {
       System.out.println(KeygenForBlue8.getSerial( "qiang" "100" "10" false ));
   }
}