package defpackage;

import java.io.File;
import java.io.FileOutputStream;
import java.io.PushbackInputStream;
import java.nio.charset.Charset;
import java.nio.file.Files;
import java.nio.file.LinkOption;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.nio.file.attribute.FileAttribute;
import java.nio.file.attribute.FileTime;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import java.util.regex.Matcher;
import java.util.zip.Inflater;
import net.lingala.zip4j.exception.ZipException;

/* JADX INFO: renamed from: ᵗᵭ, reason: contains not printable characters */
/* JADX INFO: loaded from: classes3.dex */
public abstract class AbstractC2521 extends ᵜᵪʾ {

    /* JADX INFO: renamed from: ᵜᵪʾ, reason: contains not printable characters */
    public final C1411 f9734;

    public AbstractC2521(C1411 c1411, ᵤᵮᵨ r2, C1014 c1014) {
        super(c1014);
        this.f9734 = c1411;
    }

    /* JADX WARN: Removed duplicated region for block: B:105:0x0262  */
    /* JADX WARN: Removed duplicated region for block: B:131:0x02fb  */
    /* JADX WARN: Removed duplicated region for block: B:132:0x0313  */
    /* JADX INFO: renamed from: ˌᵨʠᵫ, reason: contains not printable characters */
    /*
        Code decompiled incorrectly, please refer to instructions dump.
    */
    public final void m6238(C5555 c5555, C1543 c1543, String str, String str2, C3442 c3442, byte[] bArr) throws Exception {
        C3185 c3185;
        C1184 c1184;
        C0597 c0597;
        List list;
        C1543 c15432;
        int iM8240;
        int i;
        long j;
        int i2;
        AbstractC3155 c5029;
        AbstractC4623 c0169;
        C1184 c11842;
        AbstractC3155 c50292;
        String strM2879 = str;
        byte[] bArr2 = c1543.f6211;
        boolean zM7944 = (bArr2 == null || bArr2.length < 4) ? false : AbstractC3481.m7944(bArr2[3], 5);
        String str3 = AbstractC2238.f8867;
        if (!strM2879.endsWith(str3)) {
            strM2879 = AbstractC0793.m2879(strM2879, str3);
        }
        String str4 = c1543.f15143;
        if (ᵺᵘ.ᵸˆˁ(str2)) {
            str4 = str2;
        }
        File file = new File(strM2879, str4.replaceAll(":\\\\", "_").replaceAll("[/\\\\]", Matcher.quoteReplacement(str3)));
        file.getAbsolutePath();
        c3442.getClass();
        String canonicalPath = file.getCanonicalPath();
        if (file.isDirectory() && !canonicalPath.endsWith(str3)) {
            canonicalPath = AbstractC0793.m2879(canonicalPath, str3);
        }
        String canonicalPath2 = new File(strM2879).getCanonicalPath();
        if (!canonicalPath2.endsWith(str3)) {
            canonicalPath2 = AbstractC0793.m2879(canonicalPath2, str3);
        }
        if (!canonicalPath.startsWith(canonicalPath2)) {
            throw new ZipException("illegal file name that breaks out of the target directory: " + c1543.f15143);
        }
        if (AbstractC3481.m7944(c1543.f15144[0], 6)) {
            C4468.m9508(AbstractC3653.m8231(new StringBuilder("Entry with name "), c1543.f15143, " is encrypted with Strong Encryption. Zip4j does not support Strong Encryption, as this is patented."));
            return;
        }
        C3185 c31852 = c5555.f20958;
        PushbackInputStream pushbackInputStream = c5555.f20957;
        ᵯᵨᵲ r12 = c5555.f20960;
        c31852.getClass();
        r12.getClass();
        C2994 c2994 = (C2994) r12.ᵔᵖᵹᵫ;
        C1184 c11843 = new C1184();
        byte[] bArr3 = new byte[4];
        byte[] bArr4 = (byte[]) c2994.f11536;
        byte[] bArr5 = (byte[]) c2994.f11535;
        int iM7083 = c2994.m7083(pushbackInputStream);
        if (iM7083 == 808471376) {
            iM7083 = c2994.m7083(pushbackInputStream);
        }
        long j2 = -1;
        boolean z = zM7944;
        if (iM7083 != 67324752) {
            c3185 = c31852;
            c1184 = null;
            c11843 = null;
        } else {
            c11843.f9866 = 1;
            C2994.m7074(pushbackInputStream, bArr5, bArr5.length);
            c11843.f15141 = C2994.m7073(0, bArr5);
            byte[] bArr6 = new byte[2];
            if (ᵺᵘ.ˉᵵᵜ(pushbackInputStream, bArr6) != 2) {
                C4468.m9508("Could not read enough bytes for generalPurposeFlags");
                return;
            }
            c11843.f15135 = AbstractC3481.m7944(bArr6[0], 0);
            c11843.f15132 = AbstractC3481.m7944(bArr6[0], 3);
            c11843.f15142 = AbstractC3481.m7944(bArr6[1], 3);
            c11843.f15144 = (byte[]) bArr6.clone();
            C2994.m7074(pushbackInputStream, bArr5, bArr5.length);
            c11843.f15145 = AbstractC3589.m8113(C2994.m7073(0, bArr5));
            c11843.f15147 = c2994.m7083(pushbackInputStream);
            ᵺᵘ.ˉᵵᵜ(pushbackInputStream, bArr3);
            c11843.f15134 = c2994.m7082(0, bArr3);
            Arrays.fill(bArr4, (byte) 0);
            C2994.m7074(pushbackInputStream, bArr4, 4);
            c3185 = c31852;
            c11843.f15138 = c2994.m7082(0, bArr4);
            Arrays.fill(bArr4, (byte) 0);
            C2994.m7074(pushbackInputStream, bArr4, 4);
            c11843.f15148 = c2994.m7082(0, bArr4);
            C2994.m7074(pushbackInputStream, bArr5, bArr5.length);
            int iM7073 = C2994.m7073(0, bArr5);
            c11843.f15140 = iM7073;
            C2994.m7074(pushbackInputStream, bArr5, bArr5.length);
            c11843.f15131 = C2994.m7073(0, bArr5);
            if (iM7073 <= 0) {
                C4468.m9508("Invalid entry name in local file header");
                return;
            }
            byte[] bArr7 = new byte[iM7073];
            ᵺᵘ.ˉᵵᵜ(pushbackInputStream, bArr7);
            c1184 = null;
            String str5 = ᵬʕˎʽ.ᵻˈᵦʼ(bArr7, c11843.f15142, (Charset) null);
            c11843.f15143 = str5;
            c11843.f15139 = str5.endsWith("/") || str5.endsWith("\\");
            int i3 = c11843.f15131;
            if (i3 > 0) {
                if (i3 < 4) {
                    if (i3 > 0) {
                        pushbackInputStream.skip(i3);
                    }
                    list = null;
                } else {
                    byte[] bArr8 = new byte[i3];
                    ᵺᵘ.ˉᵵᵜ(pushbackInputStream, bArr8);
                    try {
                        list = r12.ᵡᵶᵬʤ(i3, bArr8);
                    } catch (Exception unused) {
                        list = Collections.EMPTY_LIST;
                    }
                }
                c11843.f15146 = list;
            }
            List list2 = c11843.f15146;
            if (list2 != null && list2.size() > 0 && (c0597 = ᵯᵨᵲ.ᵜᵤ(c11843.f15146, c2994, c11843.f15148, c11843.f15138, 0L, 0)) != null) {
                c11843.f15137 = c0597;
                long j3 = c0597.f2908;
                if (j3 != -1) {
                    c11843.f15148 = j3;
                }
                long j4 = c0597.f2907;
                if (j4 != -1) {
                    c11843.f15138 = j4;
                }
            }
            ᵯᵨᵲ.ˉˆᵗ(c11843, c2994);
            if (c11843.f15135 && c11843.f15133 != 4) {
                if (AbstractC3481.m7944(c11843.f15144[0], 6)) {
                    c11843.f15133 = 3;
                } else {
                    c11843.f15133 = 2;
                }
            }
        }
        c5555.f20963 = c11843;
        if (c11843 == null) {
            c11842 = c1184;
            c15432 = c1543;
        } else {
            String str6 = c11843.f15143;
            if (!str6.endsWith("/") && !str6.endsWith("\\") && c11843.f15145 == 1 && c11843.f15148 < 0) {
                C1685.m4568(AbstractC3653.m8231(new StringBuilder("Invalid local file header for: "), c11843.f15143, ". Uncompressed size has to be set for entry of compression type store which is not a directory"));
                return;
            }
            c5555.f20964.reset();
            C1184 c11844 = c5555.f20963;
            c15432 = c1543;
            c11844.f15134 = c15432.f15134;
            c11844.f15138 = c15432.f15138;
            c11844.f15148 = c15432.f15148;
            c11844.f15139 = c15432.f15139;
            c5555.f20956 = true;
            if (AbstractC3653.m8217(ᵺᵘ.ˊᵨᵧ(c11844), 1)) {
                j = c11844.f15148;
            } else {
                if (!c11844.f15132 || c5555.f20956) {
                    long j5 = c11844.f15138;
                    if (c11844.f15135) {
                        if (AbstractC3653.m8217(c11844.f15133, 4)) {
                            C4775 c4775 = c11844.f15136;
                            if (c4775 == null || (i = c4775.f18164) == 0) {
                                C4468.m9508("AesExtraDataRecord not found or invalid for Aes encrypted entry");
                                return;
                            }
                            iM8240 = AbstractC3653.m8240(i) + 12;
                        } else {
                            iM8240 = AbstractC3653.m8217(c11844.f15133, 2) ? 12 : 0;
                        }
                        j2 = j5 - ((long) iM8240);
                    }
                }
                j = j2;
            }
            C4113 c4113 = new C4113();
            c4113.f15739 = 0L;
            c4113.f15738 = new byte[1];
            c4113.f15737 = pushbackInputStream;
            c4113.f15740 = j;
            if (c11844.f15135) {
                int i4 = c11844.f15133;
                if (i4 == 4) {
                    C0862 c0862 = new C0862(c4113, c11844, c5555.f20962, c3185.f12092, c3185.f12091);
                    c0862.f3827 = new byte[1];
                    c0862.f3828 = new byte[16];
                    c0862.f3823 = 0;
                    c0862.f3824 = 0;
                    c0862.f3829 = 0;
                    c0862.f3825 = 0;
                    c0862.f3822 = 0;
                    c0862.f3826 = 0;
                    c50292 = c0862;
                } else {
                    i2 = 2;
                    if (i4 != 2) {
                        C4468.m9508(AbstractC3589.m8117("Entry [", c11844.f15143, "] Strong Encryption not supported"));
                        return;
                    }
                    c5029 = new C5029(c4113, c11844, c5555.f20962, c3185.f12092, c3185.f12091, 1);
                    if (ᵺᵘ.ˊᵨᵧ(c11844) != i2) {
                        int i5 = c3185.f12092;
                        C1189 c1189 = new C1189(c5029);
                        c1189.f5065 = new byte[1];
                        c1189.f5063 = new Inflater(true);
                        c1189.f5064 = new byte[i5];
                        c0169 = c1189;
                    } else {
                        c0169 = new C0169(c5029);
                    }
                    c5555.f20961 = c0169;
                    c5555.f20959 = false;
                    c11842 = c5555.f20963;
                }
            } else {
                c50292 = new C5029(c4113, c11844, c5555.f20962, c3185.f12092, true, 0);
            }
            i2 = 2;
            c5029 = c50292;
            if (ᵺᵘ.ˊᵨᵧ(c11844) != i2) {
            }
            c5555.f20961 = c0169;
            c5555.f20959 = false;
            c11842 = c5555.f20963;
        }
        String str7 = c15432.f15143;
        if (c11842 == null) {
            C4468.m9508(AbstractC3589.m8102("Could not read corresponding local file header for file header: ", str7));
            return;
        }
        if (!str7.equals(c11842.f15143)) {
            C4468.m9508("File header and local file header mismatch");
            return;
        }
        if (c15432.f15139) {
            if (!file.exists() && !file.mkdirs()) {
                throw new ZipException("Could not create directory: " + file);
            }
        } else if (z) {
            int i6 = (int) c15432.f15148;
            byte[] bArr9 = new byte[i6];
            if (c5555.read(bArr9, 0, i6) != i6) {
                C4468.m9508("Could not read complete entry");
                return;
            }
            c3442.m7858(i6);
            String str8 = new String(bArr9);
            if (!file.getParentFile().exists() && !file.getParentFile().mkdirs()) {
                C4468.m9508("Could not create parent directories");
                return;
            }
            try {
                Path path = Paths.get(str8, new String[0]);
                if (file.exists() && !file.delete()) {
                    throw new ZipException("Could not delete existing symlink " + file);
                }
                Files.createSymbolicLink(file.toPath(), path, new FileAttribute[0]);
            } catch (NoSuchMethodError unused2) {
                FileOutputStream fileOutputStream = new FileOutputStream(file);
                try {
                    fileOutputStream.write(str8.getBytes());
                    fileOutputStream.close();
                } finally {
                }
            }
        } else {
            if (!file.getParentFile().exists() && !file.getParentFile().mkdirs()) {
                throw new ZipException("Unable to create parent directories: " + file.getParentFile());
            }
            try {
                FileOutputStream fileOutputStream2 = new FileOutputStream(file);
                while (true) {
                    try {
                        int i7 = c5555.read(bArr, 0, bArr.length);
                        if (i7 == -1) {
                            break;
                        }
                        fileOutputStream2.write(bArr, 0, i7);
                        c3442.m7858(i7);
                        ˌᴵ();
                    } finally {
                    }
                }
                fileOutputStream2.close();
            } catch (Exception e) {
                if (file.exists()) {
                    file.delete();
                }
                throw e;
            }
        }
        if (z) {
            return;
        }
        try {
            Path path2 = file.toPath();
            ˁᵨᵦ.ˈᵲᵢ(path2, c15432.f6211);
            long j6 = c15432.f15147;
            if (j6 <= 0 || !Files.exists(path2, new LinkOption[0])) {
                return;
            }
            try {
                Files.setLastModifiedTime(path2, FileTime.fromMillis(ᵺᵘ.ᵟᵹᵙ(j6)));
            } catch (Exception unused3) {
            }
        } catch (NoSuchMethodError unused4) {
            file.setLastModified(ᵺᵘ.ᵟᵹᵙ(c15432.f15147));
        }
    }
}
