Luскy*Patcher v11.1.8版本的 MD5 值为:260a307cc4cd8550bbc248b8d7c0bddc
以下内容为反编译后的 C1945.java 源代码,内容仅作参考
package javaroot.utils;
import java.io.File;
import java.io.RandomAccessFile;
import net.lingala.zip4j.util.InternalZipConstants;
import p064.C2880;
public class C1945 {
class C1946 {
C1946() {
}
}
public static void main(String[] strArr) {
String str;
boolean z;
String str2;
String str3;
String str4;
Exception exc;
String str5;
RandomAccessFile randomAccessFile;
String readLine;
String str6;
String str7;
String str8;
String str9 = "777";
C2880.m11554(new C1946());
String str10 = "#Lucky Patcher block Ads start#";
String str11 = strArr[0];
String str12 = strArr[1];
String str13 = strArr[2];
String str14 = strArr[3];
String m11414 = C2880.m11414(str11);
if (m11414.equals("")) {
str = "/data/data/hosts";
} else {
str = m11414;
}
try {
try {
C2880.m11492("/system", InternalZipConstants.WRITE_MODE);
C2880.m11508("chmod", "777", "/system/etc/hosts");
C2880.m11508("chattr", "-ai", "/system/etc/hosts");
} catch (Exception e) {
e.printStackTrace();
System.out.println("unknown error");
}
} catch (OutOfMemoryError e2) {
e = e2;
str9 = "out.of.memory";
}
try {
if (new File(str).exists()) {
try {
} catch (OutOfMemoryError e3) {
OutOfMemoryError outOfMemoryError = e3;
str9 = "out.of.memory";
outOfMemoryError.printStackTrace();
System.out.println(str9);
C2880.m11316();
return;
}
if (new File(str).length() == new File(str11).length()) {
System.out.println("Hosts to Data");
C2880.m11508("chmod", "777", "/data/data/hosts");
C2880.m11508("chattr", "-ai", "/data/data/hosts");
z = true;
if (!new File(str11).exists()) {
try {
C2880.m11514(new File("/system/etc/hosts"), "127.0.0.1 localhost\n");
} catch (Exception e4) {
exc = e4;
str2 = "ro";
str3 = "no_space_to_data";
str4 = "/system";
exc.printStackTrace();
System.out.println(str3);
new File(str12).delete();
C2880.m11508("chmod", "0644", "/system/etc/hosts");
C2880.m11492(str4, str2);
return;
}
}
if (z) {
str5 = "chattr";
randomAccessFile = new RandomAccessFile(str11, InternalZipConstants.READ_MODE);
} else {
str5 = "chattr";
randomAccessFile = new RandomAccessFile(str, InternalZipConstants.READ_MODE);
}
String str15 = str;
randomAccessFile.seek(0L);
RandomAccessFile randomAccessFile2 = new RandomAccessFile(str12, InternalZipConstants.WRITE_MODE);
randomAccessFile2.setLength(0L);
randomAccessFile2.seek(0L);
loop0: while (true) {
boolean z2 = true;
do {
readLine = randomAccessFile.readLine();
if (readLine != null) {
break loop0;
}
if (!readLine.contains(str10) && z2) {
boolean z3 = z2;
StringBuilder sb = new StringBuilder();
sb.append(readLine);
str8 = str10;
sb.append("\n");
randomAccessFile2.writeBytes(sb.toString());
z2 = z3;
} else {
str8 = str10;
z2 = false;
}
str10 = str8;
} while (!readLine.contains("#Lucky Patcher block Ads finish#"));
}
randomAccessFile.close();
randomAccessFile2.close();
if (!C2880.m11513(new File(str12), new File(str13))) {
try {
System.out.println(C2880.m11492("/system", InternalZipConstants.WRITE_MODE));
C2880.m11508("chmod", "777", "/system/etc/hosts");
System.out.println(C2880.m11492("/system", InternalZipConstants.WRITE_MODE));
if (!z) {
C2880.m11292(new File(str12), new File("/system/etc/hosts"));
if (new File(str12).length() != new File("/system/etc/hosts").length()) {
System.out.println(str12.length());
System.out.println(new File("/system/etc/hosts").length());
new File(str11).delete();
C2880.m11292(new File(str12), new File("/data/data/hosts"));
if (new File(str12).length() != new File("/data/data/hosts").length()) {
System.out.println("no_space_to_data");
new File(str12).delete();
new File(str15).delete();
C2880.m11514(new File("/system/etc/hosts"), "127.0.0.1 localhost\n");
C2880.m11508("chmod", "0644", "/system/etc/hosts");
C2880.m11492("/system", "ro");
return;
}
C2880.m11508("chmod", "0644", "/data/data/hosts");
C2880.m11508(str5, "-ai", "/data/data/hosts");
C2880.m11508("chown", "0.0", "/data/data/hosts");
C2880.m11508("chown", "0:0", "/data/data/hosts");
C2880.m11508("ln", "-s", "/data/data/hosts", "/system/etc/hosts");
new File(str12).delete();
C2880.m11508("chmod", "0644", "/system/etc/hosts");
C2880.m11492("/system", "ro");
}
} else {
str6 = str13;
try {
new File(str11).delete();
str7 = "777";
} catch (Exception e5) {
e = e5;
str7 = "777";
e.printStackTrace();
C2880.m11514(new File("/system/etc/hosts"), "127.0.0.1 localhost\n");
C2880.m11508("chmod", str7, "/system/etc/hosts");
if (!C2880.m11513(new File("/system/etc/hosts"), new File(str6))) {
System.out.println("out.of.memory");
new File(str12).delete();
C2880.m11508("chmod", "0644", "/system/etc/hosts");
C2880.m11316();
return;
}
new File(str12).delete();
C2880.m11508("chmod", "0644", "/system/etc/hosts");
C2880.m11316();
return;
}
try {
C2880.m11292(new File(str12), new File("/data/data/hosts"));
if (new File(str12).length() != new File("/data/data/hosts").length()) {
System.out.println("no_space_to_data");
new File(str12).delete();
new File(str15).delete();
C2880.m11514(new File("/system/etc/hosts"), "127.0.0.1 localhost\n");
C2880.m11508("chmod", "0644", "/system/etc/hosts");
C2880.m11492("/system", "ro");
return;
}
if (new File(str11).length() != new File(str15).length()) {
C2880.m11508("chmod", "0777", "/system/etc/hosts");
new File(str11).delete();
C2880.m11508("chmod", "0777", "/data/data/hosts");
C2880.m11508(str5, "-ai", "/data/data/hosts");
C2880.m11508("chown", "0.0", "/data/data/hosts");
C2880.m11508("chown", "0:0", "/data/data/hosts");
C2880.m11508("ln", "-s", "/data/data/hosts", "/system/etc/hosts");
C2880.m11508("chmod", "0644", "/data/data/hosts");
} else {
C2880.m11508("chmod", "0644", "/data/data/hosts");
C2880.m11508(str5, "-ai", "/data/data/hosts");
C2880.m11508("chown", "0.0", "/data/data/hosts");
C2880.m11508("chown", "0:0", "/data/data/hosts");
}
new File(str12).delete();
C2880.m11508("chmod", "0644", "/system/etc/hosts");
C2880.m11492("/system", "ro");
} catch (Exception e6) {
e = e6;
e.printStackTrace();
C2880.m11514(new File("/system/etc/hosts"), "127.0.0.1 localhost\n");
C2880.m11508("chmod", str7, "/system/etc/hosts");
if (!C2880.m11513(new File("/system/etc/hosts"), new File(str6))) {
}
new File(str12).delete();
C2880.m11508("chmod", "0644", "/system/etc/hosts");
C2880.m11316();
return;
}
}
System.out.println("host updated!");
} catch (Exception e7) {
e = e7;
str6 = str13;
}
} else {
System.out.println("no_space_to_data");
}
new File(str12).delete();
C2880.m11508("chmod", "0644", "/system/etc/hosts");
C2880.m11316();
return;
}
}
if (!new File(str11).exists()) {
}
if (z) {
}
String str152 = str;
randomAccessFile.seek(0L);
RandomAccessFile randomAccessFile22 = new RandomAccessFile(str12, InternalZipConstants.WRITE_MODE);
randomAccessFile22.setLength(0L);
randomAccessFile22.seek(0L);
loop0: while (true) {
boolean z22 = true;
do {
readLine = randomAccessFile.readLine();
if (readLine != null) {
}
} while (!readLine.contains("#Lucky Patcher block Ads finish#"));
}
randomAccessFile.close();
randomAccessFile22.close();
if (!C2880.m11513(new File(str12), new File(str13))) {
}
new File(str12).delete();
C2880.m11508("chmod", "0644", "/system/etc/hosts");
C2880.m11316();
return;
} catch (Exception e8) {
str2 = "ro";
str3 = "no_space_to_data";
str4 = "/system";
exc = e8;
}
z = false;
}
}