.class public final Lcom/google/android/gms/internal/firebase-auth-api/zzkd; .super Ljava/lang/Object; .source "com.google.firebase:firebase-auth@@21.0.1" # direct methods .method public static final zza(Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;I)V .locals 3 if-ltz p3, :cond_1 .line 1 invoke-virtual {p1}, Ljava/nio/ByteBuffer;->remaining()I move-result v0 if-lt v0, p3, :cond_1 invoke-virtual {p2}, Ljava/nio/ByteBuffer;->remaining()I move-result v0 if-lt v0, p3, :cond_1 invoke-virtual {p0}, Ljava/nio/ByteBuffer;->remaining()I move-result v0 if-lt v0, p3, :cond_1 const/4 v0, 0x0 :goto_0 if-ge v0, p3, :cond_0 .line 2 invoke-virtual {p1}, Ljava/nio/ByteBuffer;->get()B move-result v1 invoke-virtual {p2}, Ljava/nio/ByteBuffer;->get()B move-result v2 xor-int/2addr v1, v2 int-to-byte v1, v1 invoke-virtual {p0, v1}, Ljava/nio/ByteBuffer;->put(B)Ljava/nio/ByteBuffer; add-int/lit8 v0, v0, 0x1 goto :goto_0 :cond_0 return-void :cond_1 new-instance p0, Ljava/lang/IllegalArgumentException; const-string p1, "That combination of buffers, offsets and length to xor result in out-of-bond accesses." .line 3 invoke-direct {p0, p1}, Ljava/lang/IllegalArgumentException;->(Ljava/lang/String;)V throw p0 .end method .method public static final zzb([B[B)Z .locals 5 const/4 v0, 0x0 if-eqz p0, :cond_2 if-nez p1, :cond_0 goto :goto_1 :cond_0 array-length v1, p0 array-length v2, p1 if-ne v1, v2, :cond_2 move v1, v0 move v2, v1 :goto_0 array-length v3, p0 if-ge v1, v3, :cond_1 .line 1 aget-byte v3, p0, v1 aget-byte v4, p1, v1 xor-int/2addr v3, v4 or-int/2addr v2, v3 add-int/lit8 v1, v1, 0x1 goto :goto_0 :cond_1 if-nez v2, :cond_2 const/4 p0, 0x1 return p0 :cond_2 :goto_1 return v0 .end method .method public static varargs zzc([[B)[B .locals 7 .annotation system Ldalvik/annotation/Throws; value = { Ljava/security/GeneralSecurityException; } .end annotation array-length v0, p0 const/4 v1, 0x0 move v2, v1 move v3, v2 :goto_0 if-ge v2, v0, :cond_1 .line 1 aget-object v4, p0, v2 .line 2 array-length v4, v4 const v5, 0x7fffffff sub-int/2addr v5, v4 if-gt v3, v5, :cond_0 add-int/2addr v3, v4 add-int/lit8 v2, v2, 0x1 goto :goto_0 .line 3 :cond_0 new-instance p0, Ljava/security/GeneralSecurityException; const-string v0, "exceeded size limit" invoke-direct {p0, v0}, Ljava/security/GeneralSecurityException;->(Ljava/lang/String;)V throw p0 .line 4 :cond_1 new-array v0, v3, [B array-length v2, p0 move v3, v1 move v4, v3 :goto_1 if-ge v3, v2, :cond_2 .line 5 aget-object v5, p0, v3 .line 6 array-length v6, v5 invoke-static {v5, v1, v0, v4, v6}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V add-int/2addr v4, v6 add-int/lit8 v3, v3, 0x1 goto :goto_1 :cond_2 return-object v0 .end method .method public static final zzd([B[B)[B .locals 2 .line 1 array-length v0, p0 array-length v1, p1 if-ne v0, v1, :cond_0 const/4 v1, 0x0 .line 2 invoke-static {p0, v1, p1, v1, v0}, Lcom/google/android/gms/internal/firebase-auth-api/zzkd;->zze([BI[BII)[B move-result-object p0 return-object p0 .line 3 :cond_0 new-instance p0, Ljava/lang/IllegalArgumentException; const-string p1, "The lengths of x and y should match." .line 4 invoke-direct {p0, p1}, Ljava/lang/IllegalArgumentException;->(Ljava/lang/String;)V throw p0 .end method .method public static final zze([BI[BII)[B .locals 4 .line 1 array-length v0, p0 sub-int/2addr v0, p4 if-lt v0, p1, :cond_1 array-length v0, p2 sub-int/2addr v0, p4 if-lt v0, p3, :cond_1 .line 2 new-array v0, p4, [B const/4 v1, 0x0 :goto_0 if-ge v1, p4, :cond_0 add-int v2, v1, p1 .line 3 aget-byte v2, p0, v2 add-int v3, v1, p3 aget-byte v3, p2, v3 xor-int/2addr v2, v3 int-to-byte v2, v2 aput-byte v2, v0, v1 add-int/lit8 v1, v1, 0x1 goto :goto_0 :cond_0 return-object v0 .line 4 :cond_1 new-instance p0, Ljava/lang/IllegalArgumentException; const-string p1, "That combination of buffers, offsets and length to xor result in out-of-bond accesses." .line 5 invoke-direct {p0, p1}, Ljava/lang/IllegalArgumentException;->(Ljava/lang/String;)V throw p0 .end method