java很容易被反编译,开发个java混淆器
程序员文章站
2022-07-14 13:09:57
...
java很容易被反编译,开发个java混淆器,混淆后的结果如下
结构
结构
package1 --Class1.java --Class2.java --Class3.javajava代码:
public class Class3 extends Dialog{ public MessageBox field77 = null; public MessageBox field78 = null; public Type122(Shell localVariable79) { super(localVariable79); field77 = new MessageBox(localVariable79, SWT.ICON_INFORMATION); field78 = new MessageBox(localVariable79, SWT.OK|SWT.CANCEL); } public static final int field80=33; public static final int field81=10; public static final int field82=15; public static final int field83=2; public static final int field84=8; public static final int field85=60; public static final int field86=20; public static final int field87=20; public static final int field88= 6; public static final int field89=5; public static final int field90=20; public static final int method93(MouseEvent e, Table localVariable91) { int localVariable92=localVariable91.getHeaderHeight(); System.out.println(localVariable91.getHeaderHeight()); int rowIndex = -1; localVariable91.getItem(new Point(e.x, e.y)); System.out.println(localVariable91.getItems()[0].getBounds().height); for (int i = 0; i < localVariable91.getItems().length; i++) { TableItem tableItem = localVariable91.getItems()[i]; localVariable92 += tableItem.getBounds().height; if (e.y > tableItem.getBounds().y&& e.y <= tableItem.getBounds().y+tableItem.getBounds().height) { rowIndex = i; break; } } return rowIndex; } static public void method98(Table localVariable94,String[] localVariable95, int[] localVariable96) { for (int localVariable97 = 0; localVariable97 < localVariable96.length; localVariable97++) { TableColumn tc1 = new TableColumn(localVariable94, SWT.CENTER); tc1.setText(localVariable95[localVariable97]); tc1.setWidth(localVariable96[localVariable97]); tc1.setAlignment(SWT.LEFT); } } static public void method105(int localVariable99,Label[] localVariable100,Text[] localVariable101, String[] localVariable102, int[] localVariable103) { for (int localVariable104 = 0; localVariable104 < localVariable100.length; localVariable104++) { localVariable100[localVariable104].setText(localVariable102[localVariable104]); int i = method115(localVariable100[localVariable104]); localVariable100[localVariable104].setBounds(localVariable104 == 0 ? field81 : (localVariable101[localVariable104 - 1].getBounds().x + field84 + localVariable101[localVariable104 - 1].getBounds().width), localVariable99 + field89, i, field87); localVariable101[localVariable104].setBounds(localVariable100[localVariable104].getBounds().x + field83 + localVariable100[localVariable104].getBounds().width, localVariable99, localVariable103[localVariable104], field87); } } static public void method112(int localVariable106,Label[] localVariable107,Text[] localVariable108, String[] localVariable109, int[] localVariable110) { int localVariable111=0; for (int i = 0; i < localVariable109.length; i++) { localVariable111=(localVariable111>localVariable109[i].length())?localVariable111:localVariable109[i].length(); } for (int j = 0; j < localVariable107.length; j++) { localVariable107[j].setText(localVariable109[j]); localVariable107[j].setBounds(field81 ,j == 0 ? localVariable106: (localVariable108[j - 1].getBounds().y + field84 + localVariable108[j - 1].getBounds().height), localVariable111* field88, field87); localVariable108[j].setBounds(localVariable107[j].getBounds().x + field83 + localVariable107[j].getBounds().width, localVariable107[j].getBounds().y, localVariable110[j], field87); } } public static int method115(Label localVariable113) { int localVariable114 = localVariable113.getText().length()* field88; return localVariable114; } static public int method118(Control localVariable116) { int localVariable117 = localVariable116.getBounds().x+localVariable116.getBounds().width+field84; return localVariable117; } static public int method121(Control localVariable119) { int localVariable120 = localVariable119.getBounds().y+localVariable119.getBounds().height+field89; return localVariable120; } }