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