package com.google.android.gms.internal.ads;

import java.security.GeneralSecurityException;
import java.security.MessageDigest;
import java.util.Arrays;

/* JADX INFO: loaded from: classes2.dex */
public final class i82 implements fw1 {

    /* JADX INFO: renamed from: a, reason: collision with root package name */
    public final /* synthetic */ int f12409a = 0;

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

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

    /* JADX INFO: renamed from: d, reason: collision with root package name */
    public final Object f12412d;

    public i82(fw1 fw1Var, byte[] bArr, byte[] bArr2) {
        this.f12412d = fw1Var;
        this.f12410b = bArr;
        this.f12411c = bArr2;
    }

    public static byte[] a(h12 h12Var) throws GeneralSecurityException {
        int iOrdinal = h12Var.f11985e.ordinal();
        Integer num = h12Var.f11986f;
        if (iOrdinal == 1) {
            return u02.b(num.intValue()).b();
        }
        if (iOrdinal != 2) {
            if (iOrdinal == 3) {
                return u02.f17053a.b();
            }
            if (iOrdinal != 4) {
                throw new GeneralSecurityException("unknown output prefix type");
            }
        }
        return u02.a(num.intValue()).b();
    }

    public final void b(byte[] bArr, byte[] bArr2) throws GeneralSecurityException {
        byte b10;
        byte[] bArr3 = bArr;
        if (bArr3.length != 64) {
            throw new GeneralSecurityException(String.format("The length of the signature is not %s.", 64));
        }
        byte[] bArrB = ((i92) this.f12412d).b();
        if (bArr3.length == 64) {
            byte[] bArrCopyOfRange = Arrays.copyOfRange(bArr3, 32, 64);
            int i10 = 31;
            while (true) {
                if (i10 < 0) {
                    break;
                }
                int i11 = bArrCopyOfRange[i10] & 255;
                int i12 = ih1.f12515g[i10] & 255;
                if (i11 == i12) {
                    i10--;
                    bArr3 = bArr;
                    bArrCopyOfRange = bArrCopyOfRange;
                } else if (i11 < i12) {
                    MessageDigest messageDigest = (MessageDigest) w82.f17929e.a("SHA-512");
                    messageDigest.update(bArr3, 0, 32);
                    messageDigest.update(bArrB);
                    messageDigest.update(bArr2);
                    byte[] bArrDigest = messageDigest.digest();
                    long jQ1 = ih1.q1(bArrDigest, 0) & 2097151;
                    long jU1 = ih1.u1(2, bArrDigest) >> 5;
                    long jQ12 = ih1.q1(bArrDigest, 5) >> 2;
                    long jU12 = ih1.u1(7, bArrDigest) >> 7;
                    long jU13 = ih1.u1(10, bArrDigest) >> 4;
                    long jQ13 = ih1.q1(bArrDigest, 13) >> 1;
                    long jU14 = ih1.u1(15, bArrDigest) >> 6;
                    long jQ14 = ih1.q1(bArrDigest, 18) >> 3;
                    long jQ15 = ih1.q1(bArrDigest, 21) & 2097151;
                    long jU15 = ih1.u1(23, bArrDigest) >> 5;
                    long jQ16 = ih1.q1(bArrDigest, 26) >> 2;
                    long jU16 = ih1.u1(28, bArrDigest) >> 7;
                    long jU17 = ih1.u1(31, bArrDigest) >> 4;
                    long jQ17 = ih1.q1(bArrDigest, 34) >> 1;
                    long jU18 = ih1.u1(36, bArrDigest) >> 6;
                    long jQ18 = ih1.q1(bArrDigest, 39) >> 3;
                    long jQ19 = ih1.q1(bArrDigest, 42) & 2097151;
                    long jU19 = ih1.u1(44, bArrDigest) >> 5;
                    long jQ110 = (ih1.q1(bArrDigest, 47) >> 2) & 2097151;
                    long jU110 = (ih1.u1(49, bArrDigest) >> 7) & 2097151;
                    long jU111 = (ih1.u1(52, bArrDigest) >> 4) & 2097151;
                    long jQ111 = (ih1.q1(bArrDigest, 55) >> 1) & 2097151;
                    long jU112 = (ih1.u1(57, bArrDigest) >> 6) & 2097151;
                    long jU113 = ih1.u1(60, bArrDigest) >> 3;
                    long j10 = (jU111 * 666643) + jQ15;
                    long j11 = (jU110 * 666643) + jQ14;
                    long j12 = (jQ110 * 666643) + (jU14 & 2097151);
                    long j13 = (j12 + 1048576) >> 21;
                    long j14 = j13 << 21;
                    long j15 = (jQ110 * 654183) + (jU110 * 470296) + j10;
                    long j16 = (j15 + 1048576) >> 21;
                    long j17 = j16 << 21;
                    long j18 = (jQ110 * 136657) + (((jU111 * 654183) + ((jQ111 * 470296) + ((jU112 * 666643) + (jQ16 & 2097151)))) - (jU110 * 997805));
                    long j19 = (j18 + 1048576) >> 21;
                    long j20 = j19 << 21;
                    long j21 = ((jU111 * 136657) + (((jU112 * 654183) + ((jU113 * 470296) + (jU17 & 2097151))) - (jQ111 * 997805))) - (jU110 * 683901);
                    long j22 = (j21 + 1048576) >> 21;
                    long j23 = ((jU112 * 136657) + ((jU18 & 2097151) - (jU113 * 997805))) - (jQ111 * 683901);
                    long j24 = (j23 + 1048576) >> 21;
                    long j25 = j24 << 21;
                    long j26 = jQ19 - (jU113 * 683901);
                    long j27 = (j26 + 1048576) >> 21;
                    long j28 = (jQ110 * 470296) + j11 + j13;
                    long j29 = (j28 + 1048576) >> 21;
                    long j30 = j29 << 21;
                    long j31 = (((jU110 * 654183) + ((jU111 * 470296) + ((jQ111 * 666643) + (jU15 & 2097151)))) - (jQ110 * 997805)) + j16;
                    long j32 = (j31 + 1048576) >> 21;
                    long j33 = j32 << 21;
                    long j34 = (((jU110 * 136657) + (((jQ111 * 654183) + ((jU112 * 470296) + ((jU113 * 666643) + (jU16 & 2097151)))) - (jU111 * 997805))) - (jQ110 * 683901)) + j19;
                    long j35 = (j34 + 1048576) >> 21;
                    long j36 = j35 << 21;
                    long j37 = (((jQ111 * 136657) + (((jU113 * 654183) + (jQ17 & 2097151)) - (jU112 * 997805))) - (jU111 * 683901)) + j22;
                    long j38 = (j37 + 1048576) >> 21;
                    long j39 = (((jU113 * 136657) + jQ18) - (jU112 * 683901)) + j24;
                    long j40 = (j39 + 1048576) >> 21;
                    long j41 = (j21 - (j22 << 21)) + j35;
                    long j42 = (j41 * 666643) + jQ1;
                    long j43 = (j42 + 1048576) >> 21;
                    long j44 = j43 << 21;
                    long j45 = (j23 - j25) + j38;
                    long j46 = j37 - (j38 << 21);
                    long j47 = (j41 * 654183) + (j46 * 470296) + (j45 * 666643) + (jQ12 & 2097151);
                    long j48 = (j47 + 1048576) >> 21;
                    long j49 = j48 << 21;
                    long j50 = (j26 - (j27 << 21)) + j40;
                    long j51 = j39 - (j40 << 21);
                    long j52 = (j41 * 136657) + (((j45 * 654183) + ((j51 * 470296) + ((j50 * 666643) + (jU13 & 2097151)))) - (j46 * 997805));
                    long j53 = (j52 + 1048576) >> 21;
                    long j54 = j53 << 21;
                    long j55 = (jU19 & 2097151) + j27;
                    long j56 = ((j45 * 136657) + (((j50 * 654183) + ((j55 * 470296) + (j12 - j14))) - (j51 * 997805))) - (j46 * 683901);
                    long j57 = (j56 + 1048576) >> 21;
                    long j58 = j57 << 21;
                    long j59 = ((j50 * 136657) + (((j15 - j17) + j29) - (j55 * 997805))) - (j51 * 683901);
                    long j60 = (j59 + 1048576) >> 21;
                    long j61 = j60 << 21;
                    long j62 = ((j18 - j20) + j32) - (j55 * 683901);
                    long j63 = (j62 + 1048576) >> 21;
                    long j64 = (j41 * 470296) + (j46 * 666643) + (jU1 & 2097151) + j43;
                    long j65 = (j64 + 1048576) >> 21;
                    long j66 = (((j46 * 654183) + ((j45 * 470296) + ((j51 * 666643) + (jU12 & 2097151)))) - (j41 * 997805)) + j48;
                    long j67 = (j66 + 1048576) >> 21;
                    long j68 = (((j46 * 136657) + (((j51 * 654183) + ((j50 * 470296) + ((j55 * 666643) + (jQ13 & 2097151)))) - (j45 * 997805))) - (j41 * 683901)) + j53;
                    long j69 = (j68 + 1048576) >> 21;
                    long j70 = (((j51 * 136657) + (((j55 * 654183) + (j28 - j30)) - (j50 * 997805))) - (j45 * 683901)) + j57;
                    long j71 = (j70 + 1048576) >> 21;
                    long j72 = (((j55 * 136657) + (j31 - j33)) - (j50 * 683901)) + j60;
                    long j73 = (j72 + 1048576) >> 21;
                    long j74 = (j34 - j36) + j63;
                    long j75 = (j74 + 1048576) >> 21;
                    long j76 = j75 << 21;
                    long j77 = (j75 * 666643) + (j42 - j44);
                    long j78 = j77 >> 21;
                    long j79 = j78 << 21;
                    long j80 = (j75 * 470296) + (j64 - (j65 << 21)) + j78;
                    long j81 = j80 >> 21;
                    long j82 = j81 << 21;
                    long j83 = (j75 * 654183) + (j47 - j49) + j65 + j81;
                    long j84 = j83 >> 21;
                    long j85 = j84 << 21;
                    long j86 = ((j66 - (j67 << 21)) - (j75 * 997805)) + j84;
                    long j87 = j86 >> 21;
                    long j88 = j87 << 21;
                    long j89 = (j75 * 136657) + (j52 - j54) + j67 + j87;
                    long j90 = j89 >> 21;
                    long j91 = j90 << 21;
                    long j92 = ((j68 - (j69 << 21)) - (j75 * 683901)) + j90;
                    long j93 = j92 >> 21;
                    long j94 = j93 << 21;
                    long j95 = (j56 - j58) + j69 + j93;
                    long j96 = j95 >> 21;
                    long j97 = j96 << 21;
                    long j98 = (j70 - (j71 << 21)) + j96;
                    long j99 = j98 >> 21;
                    long j100 = j99 << 21;
                    long j101 = (j59 - j61) + j71 + j99;
                    long j102 = j101 >> 21;
                    long j103 = j102 << 21;
                    long j104 = (j72 - (j73 << 21)) + j102;
                    long j105 = j104 >> 21;
                    long j106 = j105 << 21;
                    long j107 = (j62 - (j63 << 21)) + j73 + j105;
                    long j108 = j107 >> 21;
                    long j109 = j108 << 21;
                    long j110 = (j74 - j76) + j108;
                    long j111 = j110 >> 21;
                    long j112 = j111 << 21;
                    long j113 = (666643 * j111) + (j77 - j79);
                    long j114 = j113 >> 21;
                    long j115 = j114 << 21;
                    long j116 = (470296 * j111) + (j80 - j82) + j114;
                    long j117 = j116 >> 21;
                    long j118 = j117 << 21;
                    long j119 = (654183 * j111) + (j83 - j85) + j117;
                    long j120 = j119 >> 21;
                    long j121 = j120 << 21;
                    long j122 = ((j86 - j88) - (997805 * j111)) + j120;
                    long j123 = j122 >> 21;
                    long j124 = j123 << 21;
                    long j125 = (136657 * j111) + (j89 - j91) + j123;
                    long j126 = j125 >> 21;
                    long j127 = j126 << 21;
                    long j128 = ((j92 - j94) - (j111 * 683901)) + j126;
                    long j129 = j128 >> 21;
                    long j130 = j129 << 21;
                    long j131 = (j95 - j97) + j129;
                    long j132 = j131 >> 21;
                    long j133 = j132 << 21;
                    long j134 = (j98 - j100) + j132;
                    long j135 = j134 >> 21;
                    long j136 = j135 << 21;
                    long j137 = (j101 - j103) + j135;
                    long j138 = j137 >> 21;
                    long j139 = j138 << 21;
                    long j140 = (j104 - j106) + j138;
                    long j141 = j140 >> 21;
                    long j142 = j141 << 21;
                    long j143 = (j107 - j109) + j141;
                    long j144 = j143 >> 21;
                    bArrDigest[0] = (byte) (j113 - j115);
                    long j145 = j134 - j136;
                    long j146 = j131 - j133;
                    long j147 = j128 - j130;
                    long j148 = j125 - j127;
                    long j149 = j122 - j124;
                    long j150 = j119 - j121;
                    long j151 = j116 - j118;
                    bArrDigest[1] = (byte) (r7 >> 8);
                    bArrDigest[2] = (byte) ((r7 >> 16) | (j151 << 5));
                    bArrDigest[3] = (byte) (j151 >> 3);
                    bArrDigest[4] = (byte) (j151 >> 11);
                    bArrDigest[5] = (byte) ((j151 >> 19) | (j150 << 2));
                    bArrDigest[6] = (byte) (j150 >> 6);
                    bArrDigest[7] = (byte) ((j150 >> 14) | (j149 << 7));
                    bArrDigest[8] = (byte) (j149 >> 1);
                    bArrDigest[9] = (byte) (j149 >> 9);
                    bArrDigest[10] = (byte) ((j149 >> 17) | (j148 << 4));
                    bArrDigest[11] = (byte) (j148 >> 4);
                    bArrDigest[12] = (byte) (j148 >> 12);
                    bArrDigest[13] = (byte) ((j148 >> 20) | (j147 + j147));
                    bArrDigest[14] = (byte) (j147 >> 7);
                    bArrDigest[15] = (byte) ((j147 >> 15) | (j146 << 6));
                    bArrDigest[16] = (byte) (j146 >> 2);
                    bArrDigest[17] = (byte) (j146 >> 10);
                    bArrDigest[18] = (byte) ((j146 >> 18) | (j145 << 3));
                    long j152 = j143 - (j144 << 21);
                    long j153 = (j110 - j112) + j144;
                    long j154 = j140 - j142;
                    bArrDigest[19] = (byte) (j145 >> 5);
                    bArrDigest[20] = (byte) (j145 >> 13);
                    bArrDigest[21] = (byte) (j137 - j139);
                    bArrDigest[22] = (byte) (r4 >> 8);
                    bArrDigest[23] = (byte) ((r4 >> 16) | (j154 << 5));
                    bArrDigest[24] = (byte) (j154 >> 3);
                    bArrDigest[25] = (byte) (j154 >> 11);
                    bArrDigest[26] = (byte) ((j152 << 2) | (j154 >> 19));
                    bArrDigest[27] = (byte) (j152 >> 6);
                    bArrDigest[28] = (byte) ((j152 >> 14) | (j153 << 7));
                    bArrDigest[29] = (byte) (j153 >> 1);
                    bArrDigest[30] = (byte) (j153 >> 9);
                    bArrDigest[31] = (byte) (j153 >> 17);
                    long[] jArr = new long[10];
                    long[] jArrQ = vj1.q(bArrB);
                    long[] jArr2 = new long[10];
                    jArr2[0] = 1;
                    long[] jArr3 = new long[10];
                    long[] jArr4 = new long[10];
                    long[] jArr5 = new long[10];
                    long[] jArr6 = new long[10];
                    long[] jArr7 = new long[10];
                    vj1.p(jArr4, jArrQ);
                    vj1.n(jArr5, jArr4, qz1.f15907a);
                    vj1.j(jArr4, jArr4, jArr2);
                    vj1.g(jArr5, jArr5, jArr2);
                    long[] jArr8 = new long[10];
                    vj1.p(jArr8, jArr5);
                    vj1.n(jArr8, jArr8, jArr5);
                    vj1.p(jArr, jArr8);
                    vj1.n(jArr, jArr, jArr5);
                    vj1.n(jArr, jArr, jArr4);
                    long[] jArr9 = new long[10];
                    long[] jArr10 = new long[10];
                    long[] jArr11 = new long[10];
                    vj1.p(jArr9, jArr);
                    vj1.p(jArr10, jArr9);
                    vj1.p(jArr10, jArr10);
                    vj1.n(jArr10, jArr, jArr10);
                    vj1.n(jArr9, jArr9, jArr10);
                    vj1.p(jArr9, jArr9);
                    vj1.n(jArr9, jArr10, jArr9);
                    vj1.p(jArr10, jArr9);
                    byte[] bArr4 = bArrCopyOfRange;
                    for (int i13 = 1; i13 < 5; i13++) {
                        vj1.p(jArr10, jArr10);
                    }
                    vj1.n(jArr9, jArr10, jArr9);
                    vj1.p(jArr10, jArr9);
                    for (int i14 = 1; i14 < 10; i14++) {
                        vj1.p(jArr10, jArr10);
                    }
                    vj1.n(jArr10, jArr10, jArr9);
                    vj1.p(jArr11, jArr10);
                    for (int i15 = 1; i15 < 20; i15++) {
                        vj1.p(jArr11, jArr11);
                    }
                    vj1.n(jArr10, jArr11, jArr10);
                    vj1.p(jArr10, jArr10);
                    for (int i16 = 1; i16 < 10; i16++) {
                        vj1.p(jArr10, jArr10);
                    }
                    vj1.n(jArr9, jArr10, jArr9);
                    vj1.p(jArr10, jArr9);
                    for (int i17 = 1; i17 < 50; i17++) {
                        vj1.p(jArr10, jArr10);
                    }
                    vj1.n(jArr10, jArr10, jArr9);
                    vj1.p(jArr11, jArr10);
                    for (int i18 = 1; i18 < 100; i18++) {
                        vj1.p(jArr11, jArr11);
                    }
                    vj1.n(jArr10, jArr11, jArr10);
                    vj1.p(jArr10, jArr10);
                    for (int i19 = 1; i19 < 50; i19++) {
                        vj1.p(jArr10, jArr10);
                    }
                    vj1.n(jArr9, jArr10, jArr9);
                    vj1.p(jArr9, jArr9);
                    vj1.p(jArr9, jArr9);
                    vj1.n(jArr, jArr9, jArr);
                    vj1.n(jArr, jArr, jArr8);
                    vj1.n(jArr, jArr, jArr4);
                    vj1.p(jArr6, jArr);
                    vj1.n(jArr6, jArr6, jArr5);
                    vj1.j(jArr7, jArr6, jArr4);
                    if (ih1.O0(jArr7)) {
                        vj1.g(jArr7, jArr6, jArr4);
                        if (ih1.O0(jArr7)) {
                            throw new GeneralSecurityException("Cannot convert given bytes to extended projective coordinates. No square root exists for modulo 2^255-19");
                        }
                        vj1.n(jArr, jArr, qz1.f15909c);
                    }
                    if (!ih1.O0(jArr) && ((bArrB[31] & 255) >> 7) != 0) {
                        throw new GeneralSecurityException("Cannot convert given bytes to extended projective coordinates. Computed x is zero and encoded x's least significant bit is not zero");
                    }
                    if ((vj1.r(jArr)[0] & 1) == ((bArrB[31] & 255) >> 7)) {
                        for (int i20 = 0; i20 < 10; i20++) {
                            jArr[i20] = -jArr[i20];
                        }
                    }
                    vj1.n(jArr3, jArr, jArrQ);
                    vu0 vu0Var = new vu0(jArr, jArrQ, jArr2, 19);
                    oz1[] oz1VarArr = new oz1[8];
                    oz1VarArr[0] = new oz1(new pz1(vu0Var, jArr3));
                    pz1 pz1Var = new pz1(new vu0(19), new long[10]);
                    ih1.a1(vu0Var, pz1Var);
                    pz1 pz1Var2 = new pz1(pz1Var, 1);
                    for (int i21 = 1; i21 < 8; i21++) {
                        ih1.V0(pz1Var, pz1Var2, oz1VarArr[i21 - 1]);
                        oz1VarArr[i21] = new oz1(new pz1(pz1Var, 1));
                    }
                    byte[] bArrL1 = ih1.l1(bArrDigest);
                    byte[] bArrL12 = ih1.l1(bArr4);
                    pz1 pz1Var3 = new pz1(ih1.f12514f, 0);
                    pz1 pz1Var4 = new pz1();
                    int i22 = 255;
                    while (i22 >= 0 && bArrL1[i22] == 0 && bArrL12[i22] == 0) {
                        i22--;
                    }
                    while (i22 >= 0) {
                        ih1.a1(new vu0(pz1Var3), pz1Var3);
                        byte b11 = bArrL1[i22];
                        if (b11 > 0) {
                            pz1.a(pz1Var4, pz1Var3);
                            b10 = 2;
                            ih1.V0(pz1Var3, pz1Var4, oz1VarArr[bArrL1[i22] / 2]);
                        } else {
                            b10 = 2;
                            if (b11 < 0) {
                                pz1.a(pz1Var4, pz1Var3);
                                ih1.X0(pz1Var3, pz1Var4, oz1VarArr[(-bArrL1[i22]) / 2]);
                            }
                        }
                        byte b12 = bArrL12[i22];
                        if (b12 > 0) {
                            pz1.a(pz1Var4, pz1Var3);
                            ih1.V0(pz1Var3, pz1Var4, qz1.f15911e[bArrL12[i22] / b10]);
                        } else if (b12 < 0) {
                            pz1.a(pz1Var4, pz1Var3);
                            ih1.X0(pz1Var3, pz1Var4, qz1.f15911e[(-bArrL12[i22]) / b10]);
                        }
                        i22--;
                    }
                    byte[] bArrO = new vu0(pz1Var3).o();
                    for (int i23 = 0; i23 < 32; i23++) {
                        if (bArrO[i23] == bArr[i23]) {
                        }
                    }
                    return;
                }
            }
        }
        throw new GeneralSecurityException("Signature check failed.");
    }

    @Override // com.google.android.gms.internal.ads.fw1
    public final void zza(byte[] bArr, byte[] bArr2) throws GeneralSecurityException {
        int i10 = this.f12409a;
        byte[] bArr3 = this.f12411c;
        byte[] bArr4 = this.f12410b;
        switch (i10) {
            case 0:
                int length = bArr4.length;
                Object obj = this.f12412d;
                if (length == 0 && bArr3.length == 0) {
                    ((fw1) obj).zza(bArr, bArr2);
                    return;
                } else {
                    if (!q12.c(bArr4, bArr)) {
                        throw new GeneralSecurityException("Invalid signature (output prefix mismatch)");
                    }
                    if (bArr3.length != 0) {
                        bArr2 = ih1.G(bArr2, bArr3);
                    }
                    ((fw1) obj).zza(Arrays.copyOfRange(bArr, length, bArr.length), bArr2);
                    return;
                }
            default:
                int length2 = bArr4.length;
                if (length2 == 0 && bArr3.length == 0) {
                    b(bArr, bArr2);
                    return;
                } else {
                    if (!q12.c(bArr4, bArr)) {
                        throw new GeneralSecurityException("Invalid signature (output prefix mismatch)");
                    }
                    if (bArr3.length != 0) {
                        bArr2 = ih1.G(bArr2, bArr3);
                    }
                    b(Arrays.copyOfRange(bArr, length2, bArr.length), bArr2);
                    return;
                }
        }
    }

    public i82(byte[] bArr, byte[] bArr2, byte[] bArr3) {
        if (!ih1.z(1)) {
            throw new IllegalStateException(new GeneralSecurityException("Can not use Ed25519 in FIPS-mode."));
        }
        if (bArr.length != 32) {
            throw new IllegalArgumentException(String.format("Given public key's length is not %s.", 32));
        }
        this.f12412d = i92.a(bArr);
        this.f12410b = bArr2;
        this.f12411c = bArr3;
        if (qz1.f15907a == null) {
            throw new IllegalStateException("Could not initialize Ed25519.");
        }
    }
}
