zzn.smali
.class final Lcom/google/android/gms/common/zzn;
.super Ljava/lang/Object;
.source "SourceFile"
# static fields
.field public static final zza:Lcom/google/android/gms/common/zzl;
.field public static final zzb:Lcom/google/android/gms/common/zzl;
.field public static final zzc:Lcom/google/android/gms/common/zzl;
.field public static final zzd:Lcom/google/android/gms/common/zzl;
.field private static volatile zze:Lcom/google/android/gms/common/internal/zzaf;
.field private static final zzf:Ljava/lang/Object;
.field private static zzg:Landroid/content/Context;
# direct methods
.method public static constructor <clinit>()V
.registers 2
.line 1
new-instance v0, Lcom/google/android/gms/common/zzf;
const-string v1, "0\u0082\u0005\u00c80\u0082\u0003\u00b0\u00a0\u0003\u0002\u0001\u0002\u0002\u0014\u0010\u008ae\u0008s\u00f9/\u008eQ\u00ed"
.line 2
invoke-static {v1}, Lcom/google/android/gms/common/zzj;->zze(Ljava/lang/String;)[B
move-result-object v1
invoke-direct {v0, v1}, Lcom/google/android/gms/common/zzf;-><init>([B)V
sput-object v0, Lcom/google/android/gms/common/zzn;->zza:Lcom/google/android/gms/common/zzl;
new-instance v0, Lcom/google/android/gms/common/zzg;
const-string v1, "0\u0082\u0006\u00040\u0082\u0003\u00ec\u00a0\u0003\u0002\u0001\u0002\u0002\u0014\u0003\u00a3\u00b2\u00ad\u00d7\u00e1r\u00cak\u00ec"
.line 3
invoke-static {v1}, Lcom/google/android/gms/common/zzj;->zze(Ljava/lang/String;)[B
move-result-object v1
invoke-direct {v0, v1}, Lcom/google/android/gms/common/zzg;-><init>([B)V
sput-object v0, Lcom/google/android/gms/common/zzn;->zzb:Lcom/google/android/gms/common/zzl;
new-instance v0, Lcom/google/android/gms/common/zzh;
const-string v1, "0\u0082\u0004C0\u0082\u0003+\u00a0\u0003\u0002\u0001\u0002\u0002\t\u0000\u00c2\u00e0\u0087FdJ0\u008d0"
.line 4
invoke-static {v1}, Lcom/google/android/gms/common/zzj;->zze(Ljava/lang/String;)[B
move-result-object v1
invoke-direct {v0, v1}, Lcom/google/android/gms/common/zzh;-><init>([B)V
sput-object v0, Lcom/google/android/gms/common/zzn;->zzc:Lcom/google/android/gms/common/zzl;
new-instance v0, Lcom/google/android/gms/common/zzi;
const-string v1, "0\u0082\u0004\u00a80\u0082\u0003\u0090\u00a0\u0003\u0002\u0001\u0002\u0002\t\u0000\u00d5\u0085\u00b8l}\u00d3N\u00f50"
.line 5
invoke-static {v1}, Lcom/google/android/gms/common/zzj;->zze(Ljava/lang/String;)[B
move-result-object v1
invoke-direct {v0, v1}, Lcom/google/android/gms/common/zzi;-><init>([B)V
sput-object v0, Lcom/google/android/gms/common/zzn;->zzd:Lcom/google/android/gms/common/zzl;
new-instance v0, Ljava/lang/Object;
invoke-direct {v0}, Ljava/lang/Object;-><init>()V
sput-object v0, Lcom/google/android/gms/common/zzn;->zzf:Ljava/lang/Object;
return-void
.end method
.method public static zza(Ljava/lang/String;Lcom/google/android/gms/common/zzj;ZZ)Lcom/google/android/gms/common/zzx;
.registers 5
.line 1
invoke-static {}, Landroid/os/StrictMode;->allowThreadDiskReads()Landroid/os/StrictMode$ThreadPolicy;
move-result-object v0
.line 2
:try_start_4
invoke-static {p0, p1, p2, p3}, Lcom/google/android/gms/common/zzn;->zzh(Ljava/lang/String;Lcom/google/android/gms/common/zzj;ZZ)Lcom/google/android/gms/common/zzx;
move-result-object p0
:try_end_8
.catchall {:try_start_4 .. :try_end_8} :catchall_c
.line 3
invoke-static {v0}, Landroid/os/StrictMode;->setThreadPolicy(Landroid/os/StrictMode$ThreadPolicy;)V
return-object p0
:catchall_c
move-exception p0
invoke-static {v0}, Landroid/os/StrictMode;->setThreadPolicy(Landroid/os/StrictMode$ThreadPolicy;)V
.line 4
throw p0
.end method
.method public static zzb(Ljava/lang/String;ZZZ)Lcom/google/android/gms/common/zzx;
.registers 4
const/4 p2, 0x0
const/4 p3, 0x1
invoke-static {p0, p1, p2, p2, p3}, Lcom/google/android/gms/common/zzn;->zzi(Ljava/lang/String;ZZZZ)Lcom/google/android/gms/common/zzx;
move-result-object p0
return-object p0
.end method
.method public static zzc(Ljava/lang/String;ZZZ)Lcom/google/android/gms/common/zzx;
.registers 4
const/4 p2, 0x0
invoke-static {p0, p1, p2, p2, p2}, Lcom/google/android/gms/common/zzn;->zzi(Ljava/lang/String;ZZZZ)Lcom/google/android/gms/common/zzx;
move-result-object p0
return-object p0
.end method
.method public static synthetic zzd(ZLjava/lang/String;Lcom/google/android/gms/common/zzj;)Ljava/lang/String;
.registers 7
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/lang/Exception;
}
.end annotation
const/4 v0, 0x1
const/4 v1, 0x0
if-nez p0, :cond_e
.line 1
invoke-static {p1, p2, v0, v1}, Lcom/google/android/gms/common/zzn;->zzh(Ljava/lang/String;Lcom/google/android/gms/common/zzj;ZZ)Lcom/google/android/gms/common/zzx;
move-result-object v2
iget-boolean v2, v2, Lcom/google/android/gms/common/zzx;->zza:Z
if-eqz v2, :cond_e
const/4 v2, 0x1
goto :goto_f
:cond_e
const/4 v2, 0x0
:goto_f
if-eq v0, v2, :cond_14
const-string v2, "not allowed"
goto :goto_16
:cond_14
const-string v2, "debug cert rejected"
:goto_16
const/4 v3, 0x5
new-array v3, v3, [Ljava/lang/Object;
aput-object v2, v3, v1
aput-object p1, v3, v0
const-string p1, "SHA-256"
.line 2
invoke-static {p1}, Lcom/google/android/gms/common/util/AndroidUtilsLight;->zza(Ljava/lang/String;)Ljava/security/MessageDigest;
move-result-object p1
invoke-static {p1}, Lcom/google/android/gms/common/internal/Preconditions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object;
const/4 v0, 0x2
invoke-virtual {p2}, Lcom/google/android/gms/common/zzj;->zzf()[B
move-result-object p2
invoke-virtual {p1, p2}, Ljava/security/MessageDigest;->digest([B)[B
move-result-object p1
.line 3
invoke-static {p1}, Lcom/google/android/gms/common/util/Hex;->bytesToStringLowercase([B)Ljava/lang/String;
move-result-object p1
aput-object p1, v3, v0
const/4 p1, 0x3
.line 4
invoke-static {p0}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
move-result-object p0
aput-object p0, v3, p1
const/4 p0, 0x4
const-string p1, "12451000.false"
aput-object p1, v3, p0
const-string p0, "%s: pkg=%s, sha256=%s, atk=%s, ver=%s"
.line 5
invoke-static {p0, v3}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object p0
return-object p0
.end method
.method public static declared-synchronized zze(Landroid/content/Context;)V
.registers 3
const-class v0, Lcom/google/android/gms/common/zzn;
monitor-enter v0
.line 1
:try_start_3
sget-object v1, Lcom/google/android/gms/common/zzn;->zzg:Landroid/content/Context;
if-nez v1, :cond_13
if-eqz p0, :cond_11
invoke-virtual {p0}, Landroid/content/Context;->getApplicationContext()Landroid/content/Context;
move-result-object p0
sput-object p0, Lcom/google/android/gms/common/zzn;->zzg:Landroid/content/Context;
:try_end_f
.catchall {:try_start_3 .. :try_end_f} :catchall_15
monitor-exit v0
return-void
:cond_11
monitor-exit v0
return-void
.line 2
:cond_13
monitor-exit v0
return-void
:catchall_15
move-exception p0
monitor-exit v0
throw p0
.end method
.method public static zzf()Z
.registers 2
.line 1
invoke-static {}, Landroid/os/StrictMode;->allowThreadDiskReads()Landroid/os/StrictMode$ThreadPolicy;
move-result-object v0
.line 2
:try_start_4
invoke-static {}, Lcom/google/android/gms/common/zzn;->zzj()V
sget-object v1, Lcom/google/android/gms/common/zzn;->zze:Lcom/google/android/gms/common/internal/zzaf;
.line 3
invoke-interface {v1}, Lcom/google/android/gms/common/internal/zzaf;->zzg()Z
move-result v1
:try_end_d
.catch Lcom/google/android/gms/dynamite/DynamiteModule$LoadingException; {:try_start_4 .. :try_end_d} :catch_16
.catch Landroid/os/RemoteException; {:try_start_4 .. :try_end_d} :catch_16
.catchall {:try_start_4 .. :try_end_d} :catchall_11
.line 4
invoke-static {v0}, Landroid/os/StrictMode;->setThreadPolicy(Landroid/os/StrictMode$ThreadPolicy;)V
return v1
:catchall_11
move-exception v1
invoke-static {v0}, Landroid/os/StrictMode;->setThreadPolicy(Landroid/os/StrictMode$ThreadPolicy;)V
.line 5
throw v1
.line 6
:catch_16
invoke-static {v0}, Landroid/os/StrictMode;->setThreadPolicy(Landroid/os/StrictMode$ThreadPolicy;)V
const/4 v0, 0x0
return v0
.end method
.method public static zzg()Z
.registers 2
.line 1
invoke-static {}, Landroid/os/StrictMode;->allowThreadDiskReads()Landroid/os/StrictMode$ThreadPolicy;
move-result-object v0
.line 2
:try_start_4
invoke-static {}, Lcom/google/android/gms/common/zzn;->zzj()V
sget-object v1, Lcom/google/android/gms/common/zzn;->zze:Lcom/google/android/gms/common/internal/zzaf;
.line 3
invoke-interface {v1}, Lcom/google/android/gms/common/internal/zzaf;->zzi()Z
move-result v1
:try_end_d
.catch Lcom/google/android/gms/dynamite/DynamiteModule$LoadingException; {:try_start_4 .. :try_end_d} :catch_16
.catch Landroid/os/RemoteException; {:try_start_4 .. :try_end_d} :catch_16
.catchall {:try_start_4 .. :try_end_d} :catchall_11
.line 4
invoke-static {v0}, Landroid/os/StrictMode;->setThreadPolicy(Landroid/os/StrictMode$ThreadPolicy;)V
return v1
:catchall_11
move-exception v1
invoke-static {v0}, Landroid/os/StrictMode;->setThreadPolicy(Landroid/os/StrictMode$ThreadPolicy;)V
.line 5
throw v1
.line 6
:catch_16
invoke-static {v0}, Landroid/os/StrictMode;->setThreadPolicy(Landroid/os/StrictMode$ThreadPolicy;)V
const/4 v0, 0x0
return v0
.end method
.method private static zzh(Ljava/lang/String;Lcom/google/android/gms/common/zzj;ZZ)Lcom/google/android/gms/common/zzx;
.registers 6
.line 1
:try_start_0
invoke-static {}, Lcom/google/android/gms/common/zzn;->zzj()V
:try_end_3
.catch Lcom/google/android/gms/dynamite/DynamiteModule$LoadingException; {:try_start_0 .. :try_end_3} :catch_38
sget-object v0, Lcom/google/android/gms/common/zzn;->zzg:Landroid/content/Context;
.line 2
invoke-static {v0}, Lcom/google/android/gms/common/internal/Preconditions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object;
new-instance v0, Lcom/google/android/gms/common/zzs;
invoke-direct {v0, p0, p1, p2, p3}, Lcom/google/android/gms/common/zzs;-><init>(Ljava/lang/String;Lcom/google/android/gms/common/zzj;ZZ)V
:try_start_d
sget-object p3, Lcom/google/android/gms/common/zzn;->zze:Lcom/google/android/gms/common/internal/zzaf;
sget-object v1, Lcom/google/android/gms/common/zzn;->zzg:Landroid/content/Context;
.line 3
invoke-virtual {v1}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
move-result-object v1
invoke-static {v1}, Lcom/google/android/gms/dynamic/ObjectWrapper;->wrap(Ljava/lang/Object;)Lcom/google/android/gms/dynamic/IObjectWrapper;
move-result-object v1
.line 4
invoke-interface {p3, v0, v1}, Lcom/google/android/gms/common/internal/zzaf;->zzh(Lcom/google/android/gms/common/zzs;Lcom/google/android/gms/dynamic/IObjectWrapper;)Z
move-result p3
:try_end_1d
.catch Landroid/os/RemoteException; {:try_start_d .. :try_end_1d} :catch_30
if-eqz p3, :cond_24
invoke-static {}, Lcom/google/android/gms/common/zzx;->zzb()Lcom/google/android/gms/common/zzx;
move-result-object p0
return-object p0
:cond_24
new-instance p3, Lcom/google/android/gms/common/zze;
invoke-direct {p3, p2, p0, p1}, Lcom/google/android/gms/common/zze;-><init>(ZLjava/lang/String;Lcom/google/android/gms/common/zzj;)V
new-instance p0, Lcom/google/android/gms/common/zzv;
const/4 p1, 0x0
invoke-direct {p0, p3, p1}, Lcom/google/android/gms/common/zzv;-><init>(Ljava/util/concurrent/Callable;Lcom/google/android/gms/common/zzu;)V
return-object p0
:catch_30
move-exception p0
const-string p1, "module call"
.line 5
invoke-static {p1, p0}, Lcom/google/android/gms/common/zzx;->zzd(Ljava/lang/String;Ljava/lang/Throwable;)Lcom/google/android/gms/common/zzx;
move-result-object p0
return-object p0
:catch_38
move-exception p0
.line 6
invoke-virtual {p0}, Ljava/lang/Throwable;->getMessage()Ljava/lang/String;
move-result-object p1
invoke-static {p1}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
move-result-object p1
const-string p2, "module init: "
invoke-virtual {p2, p1}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object p1
invoke-static {p1, p0}, Lcom/google/android/gms/common/zzx;->zzd(Ljava/lang/String;Ljava/lang/Throwable;)Lcom/google/android/gms/common/zzx;
move-result-object p0
return-object p0
.end method
.method private static zzi(Ljava/lang/String;ZZZZ)Lcom/google/android/gms/common/zzx;
.registers 11
.line 1
invoke-static {}, Landroid/os/StrictMode;->allowThreadDiskReads()Landroid/os/StrictMode$ThreadPolicy;
move-result-object p2
:try_start_4
sget-object p3, Lcom/google/android/gms/common/zzn;->zzg:Landroid/content/Context;
.line 2
invoke-static {p3}, Lcom/google/android/gms/common/internal/Preconditions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object;
:try_end_9
.catchall {:try_start_4 .. :try_end_9} :catchall_7d
.line 3
:try_start_9
invoke-static {}, Lcom/google/android/gms/common/zzn;->zzj()V
:try_end_c
.catch Lcom/google/android/gms/dynamite/DynamiteModule$LoadingException; {:try_start_9 .. :try_end_c} :catch_66
.catchall {:try_start_9 .. :try_end_c} :catchall_7d
:try_start_c
new-instance p3, Lcom/google/android/gms/common/zzo;
const/4 v3, 0x0
sget-object v0, Lcom/google/android/gms/common/zzn;->zzg:Landroid/content/Context;
.line 4
invoke-static {v0}, Lcom/google/android/gms/dynamic/ObjectWrapper;->wrap(Ljava/lang/Object;)Lcom/google/android/gms/dynamic/IObjectWrapper;
move-result-object v4
const/4 v5, 0x0
move-object v0, p3
move-object v1, p0
move v2, p1
invoke-direct/range {v0 .. v5}, Lcom/google/android/gms/common/zzo;-><init>(Ljava/lang/String;ZZLandroid/os/IBinder;Z)V
:try_end_1c
.catchall {:try_start_c .. :try_end_1c} :catchall_7d
if-eqz p4, :cond_25
:try_start_1e
sget-object p0, Lcom/google/android/gms/common/zzn;->zze:Lcom/google/android/gms/common/internal/zzaf;
.line 5
invoke-interface {p0, p3}, Lcom/google/android/gms/common/internal/zzaf;->zze(Lcom/google/android/gms/common/zzo;)Lcom/google/android/gms/common/zzq;
move-result-object p0
goto :goto_2b
.line 6
:cond_25
sget-object p0, Lcom/google/android/gms/common/zzn;->zze:Lcom/google/android/gms/common/internal/zzaf;
.line 7
invoke-interface {p0, p3}, Lcom/google/android/gms/common/internal/zzaf;->zzf(Lcom/google/android/gms/common/zzo;)Lcom/google/android/gms/common/zzq;
move-result-object p0
:try_end_2b
.catch Landroid/os/RemoteException; {:try_start_1e .. :try_end_2b} :catch_5e
.catchall {:try_start_1e .. :try_end_2b} :catchall_7d
.line 8
:goto_2b
:try_start_2b
invoke-virtual {p0}, Lcom/google/android/gms/common/zzq;->zzb()Z
move-result p1
if-eqz p1, :cond_3a
.line 9
invoke-virtual {p0}, Lcom/google/android/gms/common/zzq;->zzc()I
move-result p0
invoke-static {p0}, Lcom/google/android/gms/common/zzx;->zzf(I)Lcom/google/android/gms/common/zzx;
move-result-object p0
goto :goto_79
.line 10
:cond_3a
invoke-virtual {p0}, Lcom/google/android/gms/common/zzq;->zza()Ljava/lang/String;
move-result-object p1
.line 11
invoke-virtual {p0}, Lcom/google/android/gms/common/zzq;->zzd()I
move-result p3
const/4 p4, 0x4
if-ne p3, p4, :cond_4b
.line 12
new-instance p3, Landroid/content/pm/PackageManager$NameNotFoundException;
invoke-direct {p3}, Landroid/content/pm/PackageManager$NameNotFoundException;-><init>()V
goto :goto_4c
:cond_4b
const/4 p3, 0x0
:goto_4c
const-string p4, "error checking package certificate"
if-nez p1, :cond_51
move-object p1, p4
.line 13
:cond_51
invoke-virtual {p0}, Lcom/google/android/gms/common/zzq;->zzc()I
move-result p4
invoke-virtual {p0}, Lcom/google/android/gms/common/zzq;->zzd()I
move-result p0
invoke-static {p4, p0, p1, p3}, Lcom/google/android/gms/common/zzx;->zzg(IILjava/lang/String;Ljava/lang/Throwable;)Lcom/google/android/gms/common/zzx;
move-result-object p0
goto :goto_79
:catch_5e
move-exception p0
const-string p1, "module call"
.line 14
invoke-static {p1, p0}, Lcom/google/android/gms/common/zzx;->zzd(Ljava/lang/String;Ljava/lang/Throwable;)Lcom/google/android/gms/common/zzx;
move-result-object p0
goto :goto_79
:catch_66
move-exception p0
const-string p1, "module init: "
.line 15
invoke-virtual {p0}, Ljava/lang/Throwable;->getMessage()Ljava/lang/String;
move-result-object p3
invoke-static {p3}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
move-result-object p3
invoke-virtual {p1, p3}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object p1
invoke-static {p1, p0}, Lcom/google/android/gms/common/zzx;->zzd(Ljava/lang/String;Ljava/lang/Throwable;)Lcom/google/android/gms/common/zzx;
move-result-object p0
:try_end_79
.catchall {:try_start_2b .. :try_end_79} :catchall_7d
.line 16
:goto_79
invoke-static {p2}, Landroid/os/StrictMode;->setThreadPolicy(Landroid/os/StrictMode$ThreadPolicy;)V
return-object p0
:catchall_7d
move-exception p0
invoke-static {p2}, Landroid/os/StrictMode;->setThreadPolicy(Landroid/os/StrictMode$ThreadPolicy;)V
.line 17
throw p0
.end method
.method private static zzj()V
.registers 4
.annotation system Ldalvik/annotation/Throws;
value = {
Lcom/google/android/gms/dynamite/DynamiteModule$LoadingException;
}
.end annotation
.line 1
sget-object v0, Lcom/google/android/gms/common/zzn;->zze:Lcom/google/android/gms/common/internal/zzaf;
if-eqz v0, :cond_5
return-void
:cond_5
sget-object v0, Lcom/google/android/gms/common/zzn;->zzg:Landroid/content/Context;
invoke-static {v0}, Lcom/google/android/gms/common/internal/Preconditions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object;
sget-object v0, Lcom/google/android/gms/common/zzn;->zzf:Ljava/lang/Object;
.line 2
monitor-enter v0
:try_start_d
sget-object v1, Lcom/google/android/gms/common/zzn;->zze:Lcom/google/android/gms/common/internal/zzaf;
if-nez v1, :cond_27
sget-object v1, Lcom/google/android/gms/common/zzn;->zzg:Landroid/content/Context;
.line 3
sget-object v2, Lcom/google/android/gms/dynamite/DynamiteModule;->PREFER_HIGHEST_OR_LOCAL_VERSION_NO_FORCE_STAGING:Lcom/google/android/gms/dynamite/DynamiteModule$VersionPolicy;
const-string v3, "com.google.android.gms.googlecertificates"
.line 4
invoke-static {v1, v2, v3}, Lcom/google/android/gms/dynamite/DynamiteModule;->load(Landroid/content/Context;Lcom/google/android/gms/dynamite/DynamiteModule$VersionPolicy;Ljava/lang/String;)Lcom/google/android/gms/dynamite/DynamiteModule;
move-result-object v1
const-string v2, "com.google.android.gms.common.GoogleCertificatesImpl"
.line 5
invoke-virtual {v1, v2}, Lcom/google/android/gms/dynamite/DynamiteModule;->instantiate(Ljava/lang/String;)Landroid/os/IBinder;
move-result-object v1
.line 6
invoke-static {v1}, Lcom/google/android/gms/common/internal/zzae;->zzb(Landroid/os/IBinder;)Lcom/google/android/gms/common/internal/zzaf;
move-result-object v1
sput-object v1, Lcom/google/android/gms/common/zzn;->zze:Lcom/google/android/gms/common/internal/zzaf;
.line 7
:cond_27
monitor-exit v0
return-void
:catchall_29
move-exception v1
monitor-exit v0
:try_end_2b
.catchall {:try_start_d .. :try_end_2b} :catchall_29
throw v1
.end method