package defpackage;

import com.bumptech.glide.load.ImageHeaderParser;
import java.io.IOException;
import java.io.InputStream;
import java.nio.ByteBuffer;
import java.nio.ByteOrder;
import java.nio.charset.Charset;

/* JADX INFO: loaded from: classes.dex */
public final class l02 implements ImageHeaderParser {
    public static final byte[] a = "Exif\u0000\u0000".getBytes(Charset.forName("UTF-8"));
    public static final int[] b = {0, 1, 1, 2, 4, 8, 1, 1, 2, 4, 8, 4, 8};

    public static final class a implements c {
        public final ByteBuffer a;

        public a(ByteBuffer byteBuffer) {
            this.a = byteBuffer;
            byteBuffer.order(ByteOrder.BIG_ENDIAN);
        }

        @Override // l02.c
        public final int a() {
            return (c() << 8) | c();
        }

        @Override // l02.c
        public final int b(int i, byte[] bArr) {
            ByteBuffer byteBuffer = this.a;
            int iMin = Math.min(i, byteBuffer.remaining());
            if (iMin == 0) {
                return -1;
            }
            byteBuffer.get(bArr, 0, iMin);
            return iMin;
        }

        @Override // l02.c
        public final short c() throws c.a {
            ByteBuffer byteBuffer = this.a;
            if (byteBuffer.remaining() >= 1) {
                return (short) (byteBuffer.get() & 255);
            }
            throw new c.a();
        }

        @Override // l02.c
        public final long skip(long j) {
            ByteBuffer byteBuffer = this.a;
            int iMin = (int) Math.min(byteBuffer.remaining(), j);
            byteBuffer.position(byteBuffer.position() + iMin);
            return iMin;
        }
    }

    public static final class b {
        public final ByteBuffer a;

        public b(byte[] bArr, int i) {
            this.a = (ByteBuffer) ByteBuffer.wrap(bArr).order(ByteOrder.BIG_ENDIAN).limit(i);
        }

        public final short a(int i) {
            ByteBuffer byteBuffer = this.a;
            if (byteBuffer.remaining() - i >= 2) {
                return byteBuffer.getShort(i);
            }
            return (short) -1;
        }
    }

    public interface c {

        public static final class a extends IOException {
            public a() {
                super("Unexpectedly reached end of a file");
            }
        }

        int a();

        int b(int i, byte[] bArr);

        short c();

        long skip(long j);
    }

    public static final class d implements c {
        public final InputStream a;

        public d(InputStream inputStream) {
            this.a = inputStream;
        }

        @Override // l02.c
        public final int a() {
            return (c() << 8) | c();
        }

        @Override // l02.c
        public final int b(int i, byte[] bArr) throws c.a {
            int i2 = 0;
            int i3 = 0;
            while (i2 < i && (i3 = this.a.read(bArr, i2, i - i2)) != -1) {
                i2 += i3;
            }
            if (i2 == 0 && i3 == -1) {
                throw new c.a();
            }
            return i2;
        }

        @Override // l02.c
        public final short c() throws IOException {
            int i = this.a.read();
            if (i != -1) {
                return (short) i;
            }
            throw new c.a();
        }

        @Override // l02.c
        public final long skip(long j) throws IOException {
            if (j < 0) {
                return 0L;
            }
            long j2 = j;
            while (j2 > 0) {
                InputStream inputStream = this.a;
                long jSkip = inputStream.skip(j2);
                if (jSkip > 0) {
                    j2 -= jSkip;
                } else {
                    if (inputStream.read() == -1) {
                        break;
                    }
                    j2--;
                }
            }
            return j - j2;
        }
    }

    public static int e(c cVar, ys ysVar) {
        int iA;
        short sC;
        try {
            int iA2 = cVar.a();
            if ((iA2 & 65496) != 65496 && iA2 != 19789 && iA2 != 18761) {
                return -1;
            }
            while (cVar.c() == 255 && (sC = cVar.c()) != 218 && sC != 217) {
                iA = cVar.a() - 2;
                if (sC == 225) {
                    break;
                }
                long j = iA;
                if (cVar.skip(j) != j) {
                    break;
                }
            }
            iA = -1;
        } catch (c.a unused) {
        }
        if (iA == -1) {
            return -1;
        }
        byte[] bArr = (byte[]) ysVar.c(byte[].class, iA);
        try {
            return g(cVar, bArr, iA);
        } finally {
            ysVar.put(bArr);
        }
    }

    public static ImageHeaderParser.ImageType f(c cVar) {
        try {
            int iA = cVar.a();
            if (iA == 65496) {
                return ImageHeaderParser.ImageType.JPEG;
            }
            int iC = (iA << 8) | cVar.c();
            if (iC == 4671814) {
                return ImageHeaderParser.ImageType.GIF;
            }
            int iC2 = (iC << 8) | cVar.c();
            if (iC2 == -1991225785) {
                cVar.skip(21L);
                try {
                    return cVar.c() >= 3 ? ImageHeaderParser.ImageType.PNG_A : ImageHeaderParser.ImageType.PNG;
                } catch (c.a unused) {
                    return ImageHeaderParser.ImageType.PNG;
                }
            }
            if (iC2 == 1380533830) {
                cVar.skip(4L);
                if (((cVar.a() << 16) | cVar.a()) != 1464156752) {
                    return ImageHeaderParser.ImageType.UNKNOWN;
                }
                int iA2 = (cVar.a() << 16) | cVar.a();
                if ((iA2 & (-256)) != 1448097792) {
                    return ImageHeaderParser.ImageType.UNKNOWN;
                }
                int i = iA2 & 255;
                if (i == 88) {
                    cVar.skip(4L);
                    short sC = cVar.c();
                    return (sC & 2) != 0 ? ImageHeaderParser.ImageType.ANIMATED_WEBP : (sC & 16) != 0 ? ImageHeaderParser.ImageType.WEBP_A : ImageHeaderParser.ImageType.WEBP;
                }
                if (i != 76) {
                    return ImageHeaderParser.ImageType.WEBP;
                }
                cVar.skip(4L);
                return (cVar.c() & 8) != 0 ? ImageHeaderParser.ImageType.WEBP_A : ImageHeaderParser.ImageType.WEBP;
            }
            if (((cVar.a() << 16) | cVar.a()) != 1718909296) {
                return ImageHeaderParser.ImageType.UNKNOWN;
            }
            int iA3 = (cVar.a() << 16) | cVar.a();
            if (iA3 == 1635150195) {
                return ImageHeaderParser.ImageType.ANIMATED_AVIF;
            }
            int i2 = 0;
            boolean z = iA3 == 1635150182;
            cVar.skip(4L);
            int i3 = iC2 - 16;
            if (i3 % 4 == 0) {
                while (i2 < 5 && i3 > 0) {
                    int iA4 = (cVar.a() << 16) | cVar.a();
                    if (iA4 == 1635150195) {
                        return ImageHeaderParser.ImageType.ANIMATED_AVIF;
                    }
                    if (iA4 == 1635150182) {
                        z = true;
                    }
                    i2++;
                    i3 -= 4;
                }
            }
            return z ? ImageHeaderParser.ImageType.AVIF : ImageHeaderParser.ImageType.UNKNOWN;
        } catch (c.a unused2) {
            return ImageHeaderParser.ImageType.UNKNOWN;
        }
    }

    public static int g(c cVar, byte[] bArr, int i) {
        short sA;
        int i2;
        int i3;
        if (cVar.b(i, bArr) == i) {
            byte[] bArr2 = a;
            boolean z = bArr != null && i > bArr2.length;
            if (z) {
                int i4 = 0;
                while (true) {
                    if (i4 >= bArr2.length) {
                        break;
                    }
                    if (bArr[i4] != bArr2[i4]) {
                        z = false;
                        break;
                    }
                    i4++;
                }
            }
            if (z) {
                b bVar = new b(bArr, i);
                short sA2 = bVar.a(6);
                ByteOrder byteOrder = sA2 != 18761 ? sA2 != 19789 ? ByteOrder.BIG_ENDIAN : ByteOrder.BIG_ENDIAN : ByteOrder.LITTLE_ENDIAN;
                ByteBuffer byteBuffer = bVar.a;
                byteBuffer.order(byteOrder);
                int i5 = byteBuffer.remaining() - 10 >= 4 ? byteBuffer.getInt(10) : -1;
                short sA3 = bVar.a(i5 + 6);
                for (int i6 = 0; i6 < sA3; i6++) {
                    int i7 = (i6 * 12) + i5 + 8;
                    if (bVar.a(i7) == 274 && (sA = bVar.a(i7 + 2)) >= 1 && sA <= 12) {
                        int i8 = i7 + 4;
                        int i9 = byteBuffer.remaining() - i8 >= 4 ? byteBuffer.getInt(i8) : -1;
                        if (i9 >= 0 && (i2 = i9 + b[sA]) <= 4 && (i3 = i7 + 8) >= 0 && i3 <= byteBuffer.remaining() && i2 >= 0 && i2 + i3 <= byteBuffer.remaining()) {
                            return bVar.a(i3);
                        }
                    }
                }
            }
        }
        return -1;
    }

    @Override // com.bumptech.glide.load.ImageHeaderParser
    public final int a(InputStream inputStream, ys ysVar) {
        d dVar = new d(inputStream);
        gf7.c(ysVar, "Argument must not be null");
        return e(dVar, ysVar);
    }

    @Override // com.bumptech.glide.load.ImageHeaderParser
    public final ImageHeaderParser.ImageType b(ByteBuffer byteBuffer) {
        gf7.c(byteBuffer, "Argument must not be null");
        return f(new a(byteBuffer));
    }

    @Override // com.bumptech.glide.load.ImageHeaderParser
    public final ImageHeaderParser.ImageType c(InputStream inputStream) {
        return f(new d(inputStream));
    }

    @Override // com.bumptech.glide.load.ImageHeaderParser
    public final int d(ByteBuffer byteBuffer, ys ysVar) {
        gf7.c(byteBuffer, "Argument must not be null");
        a aVar = new a(byteBuffer);
        gf7.c(ysVar, "Argument must not be null");
        return e(aVar, ysVar);
    }
}
