package tb;

import com.google.zxing.NotFoundException;
import java.lang.reflect.Array;
import o0.i;

/* JADX INFO: loaded from: classes.dex */
public final class e extends i {

    /* JADX INFO: renamed from: e, reason: collision with root package name */
    public static final byte[] f33023e = new byte[0];

    /* JADX INFO: renamed from: b, reason: collision with root package name */
    public byte[] f33024b;

    /* JADX INFO: renamed from: c, reason: collision with root package name */
    public final int[] f33025c;

    /* JADX INFO: renamed from: d, reason: collision with root package name */
    public b f33026d;

    public e(ob.b bVar) {
        super(bVar);
        this.f33024b = f33023e;
        this.f33025c = new int[32];
    }

    public static int x(int[] iArr) throws NotFoundException {
        int length = iArr.length;
        int i10 = 0;
        int i11 = 0;
        int i12 = 0;
        for (int i13 = 0; i13 < length; i13++) {
            int i14 = iArr[i13];
            if (i14 > i10) {
                i12 = i13;
                i10 = i14;
            }
            if (i14 > i11) {
                i11 = i14;
            }
        }
        int i15 = 0;
        int i16 = 0;
        for (int i17 = 0; i17 < length; i17++) {
            int i18 = i17 - i12;
            int i19 = iArr[i17] * i18 * i18;
            if (i19 > i16) {
                i15 = i17;
                i16 = i19;
            }
        }
        if (i12 <= i15) {
            int i20 = i12;
            i12 = i15;
            i15 = i20;
        }
        if (i12 - i15 <= length / 16) {
            throw NotFoundException.a();
        }
        int i21 = i12 - 1;
        int i22 = -1;
        int i23 = i21;
        while (i21 > i15) {
            int i24 = i21 - i15;
            int i25 = (i11 - iArr[i21]) * (i12 - i21) * i24 * i24;
            if (i25 > i22) {
                i23 = i21;
                i22 = i25;
            }
            i21--;
        }
        return i23 << 3;
    }

    @Override // o0.i
    public final e g(ob.b bVar) {
        return new e(bVar);
    }

    @Override // o0.i
    public final b i() throws NotFoundException {
        int[] iArr;
        int i10;
        b bVar = this.f33026d;
        if (bVar != null) {
            return bVar;
        }
        ob.b bVar2 = (ob.b) this.f31277a;
        int i11 = bVar2.f31459a;
        if (i11 < 40 || (i10 = bVar2.f31460b) < 40) {
            int i12 = bVar2.f31460b;
            b bVar3 = new b(i11, i12);
            if (this.f33024b.length < i11) {
                this.f33024b = new byte[i11];
            }
            int i13 = 0;
            while (true) {
                iArr = this.f33025c;
                if (i13 >= 32) {
                    break;
                }
                iArr[i13] = 0;
                i13++;
            }
            for (int i14 = 1; i14 < 5; i14++) {
                byte[] bArrB = bVar2.b((i12 * i14) / 5, this.f33024b);
                int i15 = (i11 * 4) / 5;
                for (int i16 = i11 / 5; i16 < i15; i16++) {
                    int i17 = (bArrB[i16] & 255) >> 3;
                    iArr[i17] = iArr[i17] + 1;
                }
            }
            int iX = x(iArr);
            byte[] bArrA = bVar2.a();
            for (int i18 = 0; i18 < i12; i18++) {
                int i19 = i18 * i11;
                for (int i20 = 0; i20 < i11; i20++) {
                    if ((bArrA[i19 + i20] & 255) < iX) {
                        bVar3.h(i20, i18);
                    }
                }
            }
            this.f33026d = bVar3;
        } else {
            byte[] bArrA2 = bVar2.a();
            int i21 = i11 >> 3;
            if ((i11 & 7) != 0) {
                i21++;
            }
            int i22 = i10 >> 3;
            if ((i10 & 7) != 0) {
                i22++;
            }
            int i23 = i10 - 8;
            int i24 = i11 - 8;
            int[][] iArr2 = (int[][]) Array.newInstance((Class<?>) Integer.TYPE, i22, i21);
            int i25 = 0;
            while (true) {
                int i26 = 8;
                if (i25 >= i22) {
                    break;
                }
                int i27 = i25 << 3;
                if (i27 > i23) {
                    i27 = i23;
                }
                int i28 = 0;
                while (i28 < i21) {
                    int i29 = i28 << 3;
                    if (i29 > i24) {
                        i29 = i24;
                    }
                    int i30 = (i27 * i11) + i29;
                    int i31 = 0;
                    int i32 = 0;
                    int i33 = 0;
                    int i34 = 255;
                    while (i31 < i26) {
                        int i35 = i33;
                        int i36 = i34;
                        int i37 = 0;
                        while (i37 < i26) {
                            int i38 = i27;
                            int i39 = bArrA2[i30 + i37] & 255;
                            i32 += i39;
                            int i40 = i36;
                            i36 = i39 < i40 ? i39 : i40;
                            if (i39 > i35) {
                                i35 = i39;
                            }
                            i37++;
                            i27 = i38;
                            i26 = 8;
                        }
                        int i41 = i27;
                        int i42 = i36;
                        if (i35 - i42 > 24) {
                            while (true) {
                                i31++;
                                i30 += i11;
                                if (i31 < 8) {
                                    int i43 = 0;
                                    for (int i44 = 8; i43 < i44; i44 = 8) {
                                        i32 += bArrA2[i30 + i43] & 255;
                                        i43++;
                                        i35 = i35;
                                    }
                                }
                            }
                        }
                        i33 = i35;
                        i31++;
                        i30 += i11;
                        i34 = i42;
                        i27 = i41;
                        i26 = 8;
                    }
                    int i45 = i27;
                    int i46 = i32 >> 6;
                    int i47 = i34;
                    if (i33 - i47 <= 24) {
                        i46 = i47 / 2;
                        if (i25 > 0 && i28 > 0) {
                            int[] iArr3 = iArr2[i25 - 1];
                            int i48 = i28 - 1;
                            int i49 = (((iArr2[i25][i48] * 2) + iArr3[i28]) + iArr3[i48]) / 4;
                            if (i47 < i49) {
                                i46 = i49;
                            }
                        }
                    }
                    iArr2[i25][i28] = i46;
                    i28++;
                    i27 = i45;
                    i26 = 8;
                }
                i25++;
            }
            b bVar4 = new b(i11, i10);
            int i50 = 0;
            while (i50 < i22) {
                int i51 = i50 << 3;
                if (i51 > i23) {
                    i51 = i23;
                }
                int iMin = i50 < 2 ? 2 : Math.min(i50, i22 - 3);
                int i52 = 0;
                while (i52 < i21) {
                    int i53 = i52 << 3;
                    if (i53 > i24) {
                        i53 = i24;
                    }
                    int iMin2 = i52 < 2 ? 2 : Math.min(i52, i21 - 3);
                    int i54 = i21;
                    int i55 = -2;
                    int i56 = 0;
                    for (int i57 = 2; i55 <= i57; i57 = 2) {
                        int[] iArr4 = iArr2[iMin + i55];
                        i56 = iArr4[iMin2 - 2] + iArr4[iMin2 - 1] + iArr4[iMin2] + iArr4[iMin2 + 1] + iArr4[iMin2 + 2] + i56;
                        i55++;
                    }
                    int i58 = i56 / 25;
                    int i59 = (i51 * i11) + i53;
                    int i60 = iMin;
                    int i61 = 0;
                    while (true) {
                        if (i61 < 8) {
                            int i62 = i22;
                            int i63 = 0;
                            for (int i64 = 8; i63 < i64; i64 = 8) {
                                byte[] bArr = bArrA2;
                                if ((bArrA2[i59 + i63] & 255) <= i58) {
                                    bVar4.h(i53 + i63, i51 + i61);
                                }
                                i63++;
                                bArrA2 = bArr;
                            }
                            i61++;
                            i59 += i11;
                            i22 = i62;
                        }
                    }
                    i52++;
                    i21 = i54;
                    iMin = i60;
                }
                i50++;
            }
            this.f33026d = bVar4;
        }
        return this.f33026d;
    }

    @Override // o0.i
    public final a j(int i10, a aVar) throws NotFoundException {
        int[] iArr;
        ob.b bVar = (ob.b) this.f31277a;
        int i11 = bVar.f31459a;
        if (aVar == null || aVar.f33004b < i11) {
            aVar = new a(i11);
        } else {
            int length = aVar.f33003a.length;
            for (int i12 = 0; i12 < length; i12++) {
                aVar.f33003a[i12] = 0;
            }
        }
        if (this.f33024b.length < i11) {
            this.f33024b = new byte[i11];
        }
        int i13 = 0;
        while (true) {
            iArr = this.f33025c;
            if (i13 >= 32) {
                break;
            }
            iArr[i13] = 0;
            i13++;
        }
        byte[] bArrB = bVar.b(i10, this.f33024b);
        for (int i14 = 0; i14 < i11; i14++) {
            int i15 = (bArrB[i14] & 255) >> 3;
            iArr[i15] = iArr[i15] + 1;
        }
        int iX = x(iArr);
        if (i11 < 3) {
            for (int i16 = 0; i16 < i11; i16++) {
                if ((bArrB[i16] & 255) < iX) {
                    aVar.j(i16);
                }
            }
        } else {
            int i17 = 1;
            int i18 = bArrB[0] & 255;
            int i19 = bArrB[1] & 255;
            while (i17 < i11 - 1) {
                int i20 = i17 + 1;
                int i21 = bArrB[i20] & 255;
                if ((((i19 * 4) - i18) - i21) / 2 < iX) {
                    aVar.j(i17);
                }
                i18 = i19;
                i17 = i20;
                i19 = i21;
            }
        }
        return aVar;
    }
}
