zzhn.smali

.class public final Lcom/google/android/gms/internal/measurement/zzhn;
.super Ljava/lang/Object;
.source "SourceFile"


# static fields
.field private static volatile zza:Lcom/google/android/gms/internal/measurement/zzif;


# direct methods
.method private constructor <init>()V
    .registers 1

    invoke-direct {p0}, Ljava/lang/Object;-><init>()V

    return-void
.end method

.method public static zza(Landroid/content/Context;)Lcom/google/android/gms/internal/measurement/zzif;
    .registers 14

    .line 1
    const-class v0, Lcom/google/android/gms/internal/measurement/zzhn;

    monitor-enter v0

    :try_start_3
    sget-object v1, Lcom/google/android/gms/internal/measurement/zzhn;->zza:Lcom/google/android/gms/internal/measurement/zzif;

    if-nez v1, :cond_136

    sget-object v1, Landroid/os/Build;->TYPE:Ljava/lang/String;

    sget-object v2, Landroid/os/Build;->TAGS:Ljava/lang/String;

    const-string v3, "eng"

    invoke-virtual {v1, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v3

    if-nez v3, :cond_1b

    const-string v3, "userdebug"

    invoke-virtual {v1, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v1

    if-eqz v1, :cond_2c

    :cond_1b
    const-string v1, "dev-keys"

    .line 2
    invoke-virtual {v2, v1}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z

    move-result v1

    if-nez v1, :cond_33

    const-string v1, "test-keys"

    invoke-virtual {v2, v1}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z

    move-result v1

    if-eqz v1, :cond_2c

    goto :goto_33

    .line 3
    :cond_2c
    invoke-static {}, Lcom/google/android/gms/internal/measurement/zzif;->zzc()Lcom/google/android/gms/internal/measurement/zzif;

    move-result-object p0

    :goto_30
    move-object v1, p0

    goto/16 :goto_12e

    .line 4
    :cond_33
    :goto_33
    invoke-static {}, Lcom/google/android/gms/internal/measurement/zzha;->zza()Z

    move-result v1

    if-eqz v1, :cond_43

    .line 5
    invoke-virtual {p0}, Landroid/content/Context;->isDeviceProtectedStorage()Z

    move-result v1

    if-nez v1, :cond_43

    .line 6
    invoke-virtual {p0}, Landroid/content/Context;->createDeviceProtectedStorageContext()Landroid/content/Context;

    move-result-object p0

    .line 7
    :cond_43
    invoke-static {}, Landroid/os/StrictMode;->allowThreadDiskReads()Landroid/os/StrictMode$ThreadPolicy;

    move-result-object v1
    :try_end_47
    .catchall {:try_start_3 .. :try_end_47} :catchall_138

    .line 8
    :try_start_47
    invoke-static {}, Landroid/os/StrictMode;->allowThreadDiskWrites()Landroid/os/StrictMode$ThreadPolicy;
    :try_end_4a
    .catchall {:try_start_47 .. :try_end_4a} :catchall_131

    const/4 v2, 0x0

    :try_start_4b
    new-instance v3, Ljava/io/File;

    const-string v4, "phenotype_hermetic"

    .line 9
    invoke-virtual {p0, v4, v2}, Landroid/content/Context;->getDir(Ljava/lang/String;I)Ljava/io/File;

    move-result-object p0

    const-string v4, "overrides.txt"

    invoke-direct {v3, p0, v4}, Ljava/io/File;-><init>(Ljava/io/File;Ljava/lang/String;)V
    :try_end_58
    .catch Ljava/lang/RuntimeException; {:try_start_4b .. :try_end_58} :catch_68
    .catchall {:try_start_4b .. :try_end_58} :catchall_131

    .line 10
    :try_start_58
    invoke-virtual {v3}, Ljava/io/File;->exists()Z

    move-result p0

    if-eqz p0, :cond_63

    invoke-static {v3}, Lcom/google/android/gms/internal/measurement/zzif;->zzd(Ljava/lang/Object;)Lcom/google/android/gms/internal/measurement/zzif;

    move-result-object p0

    goto :goto_6c

    .line 11
    :cond_63
    invoke-static {}, Lcom/google/android/gms/internal/measurement/zzif;->zzc()Lcom/google/android/gms/internal/measurement/zzif;

    move-result-object p0

    goto :goto_6c

    .line 12
    :catch_68
    invoke-static {}, Lcom/google/android/gms/internal/measurement/zzif;->zzc()Lcom/google/android/gms/internal/measurement/zzif;

    move-result-object p0

    .line 13
    :goto_6c
    invoke-virtual {p0}, Lcom/google/android/gms/internal/measurement/zzif;->zzb()Z

    move-result v3

    if-eqz v3, :cond_125

    .line 14
    invoke-virtual {p0}, Lcom/google/android/gms/internal/measurement/zzif;->zza()Ljava/lang/Object;

    move-result-object p0

    check-cast p0, Ljava/io/File;
    :try_end_78
    .catchall {:try_start_58 .. :try_end_78} :catchall_131

    :try_start_78
    new-instance v3, Ljava/io/BufferedReader;

    new-instance v4, Ljava/io/InputStreamReader;

    new-instance v5, Ljava/io/FileInputStream;

    .line 15
    invoke-direct {v5, p0}, Ljava/io/FileInputStream;-><init>(Ljava/io/File;)V

    invoke-direct {v4, v5}, Ljava/io/InputStreamReader;-><init>(Ljava/io/InputStream;)V

    invoke-direct {v3, v4}, Ljava/io/BufferedReader;-><init>(Ljava/io/Reader;)V
    :try_end_87
    .catch Ljava/io/IOException; {:try_start_78 .. :try_end_87} :catch_11e
    .catchall {:try_start_78 .. :try_end_87} :catchall_131

    const/4 v4, 0x1

    .line 16
    :try_start_88
    new-instance v5, Landroidx/collection/g;

    invoke-direct {v5}, Landroidx/collection/g;-><init>()V

    new-instance v6, Ljava/util/HashMap;

    .line 17
    invoke-direct {v6}, Ljava/util/HashMap;-><init>()V

    .line 18
    :goto_92
    invoke-virtual {v3}, Ljava/io/BufferedReader;->readLine()Ljava/lang/String;

    move-result-object v7

    if-eqz v7, :cond_f3

    const-string v8, " "

    const/4 v9, 0x3

    .line 19
    invoke-virtual {v7, v8, v9}, Ljava/lang/String;->split(Ljava/lang/String;I)[Ljava/lang/String;

    move-result-object v7

    .line 20
    array-length v8, v7

    if-eq v8, v9, :cond_a3

    goto :goto_92

    .line 21
    :cond_a3
    aget-object v8, v7, v2

    new-instance v9, Ljava/lang/String;

    invoke-direct {v9, v8}, Ljava/lang/String;-><init>(Ljava/lang/String;)V

    .line 22
    aget-object v8, v7, v4

    new-instance v10, Ljava/lang/String;

    invoke-direct {v10, v8}, Ljava/lang/String;-><init>(Ljava/lang/String;)V

    invoke-static {v10}, Landroid/net/Uri;->decode(Ljava/lang/String;)Ljava/lang/String;

    move-result-object v8

    const/4 v10, 0x2

    .line 23
    aget-object v11, v7, v10

    invoke-virtual {v6, v11}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v11

    check-cast v11, Ljava/lang/String;

    if-nez v11, :cond_d8

    .line 24
    aget-object v7, v7, v10

    new-instance v10, Ljava/lang/String;

    invoke-direct {v10, v7}, Ljava/lang/String;-><init>(Ljava/lang/String;)V

    .line 25
    invoke-static {v10}, Landroid/net/Uri;->decode(Ljava/lang/String;)Ljava/lang/String;

    move-result-object v11

    .line 26
    invoke-virtual {v11}, Ljava/lang/String;->length()I

    move-result v7

    const/16 v12, 0x400

    if-lt v7, v12, :cond_d5

    if-ne v11, v10, :cond_d8

    .line 27
    :cond_d5
    invoke-virtual {v6, v10, v11}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    .line 28
    :cond_d8
    invoke-virtual {v5, v9}, Landroidx/collection/g;->containsKey(Ljava/lang/Object;)Z

    move-result v7

    if-nez v7, :cond_e6

    new-instance v7, Landroidx/collection/g;

    .line 29
    invoke-direct {v7}, Landroidx/collection/g;-><init>()V

    invoke-virtual {v5, v9, v7}, Landroidx/collection/g;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    :cond_e6
    const/4 v7, 0x0

    .line 30
    invoke-virtual {v5, v9, v7}, Landroidx/collection/g;->getOrDefault(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v7

    .line 31
    check-cast v7, Landroidx/collection/g;

    invoke-virtual {v7, v8, v11}, Landroidx/collection/g;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    goto :goto_92

    :catchall_f1
    move-exception p0

    goto :goto_103

    .line 32
    :cond_f3
    invoke-virtual {p0}, Ljava/lang/Object;->toString()Ljava/lang/String;

    new-instance p0, Lcom/google/android/gms/internal/measurement/zzhg;

    invoke-direct {p0, v5}, Lcom/google/android/gms/internal/measurement/zzhg;-><init>(Landroidx/collection/g;)V
    :try_end_fb
    .catchall {:try_start_88 .. :try_end_fb} :catchall_f1

    .line 33
    :try_start_fb
    invoke-virtual {v3}, Ljava/io/BufferedReader;->close()V
    :try_end_fe
    .catch Ljava/io/IOException; {:try_start_fb .. :try_end_fe} :catch_11e
    .catchall {:try_start_fb .. :try_end_fe} :catchall_131

    :try_start_fe
    invoke-static {p0}, Lcom/google/android/gms/internal/measurement/zzif;->zzd(Ljava/lang/Object;)Lcom/google/android/gms/internal/measurement/zzif;

    move-result-object p0
    :try_end_102
    .catchall {:try_start_fe .. :try_end_102} :catchall_131

    goto :goto_129

    .line 34
    :goto_103
    :try_start_103
    invoke-virtual {v3}, Ljava/io/BufferedReader;->close()V
    :try_end_106
    .catchall {:try_start_103 .. :try_end_106} :catchall_107

    goto :goto_11d

    :catchall_107
    move-exception v3

    :try_start_108
    new-array v5, v4, [Ljava/lang/Class;

    const-class v6, Ljava/lang/Throwable;

    aput-object v6, v5, v2

    const-class v6, Ljava/lang/Throwable;

    const-string v7, "addSuppressed"

    .line 35
    invoke-virtual {v6, v7, v5}, Ljava/lang/Class;->getDeclaredMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;

    move-result-object v5

    new-array v4, v4, [Ljava/lang/Object;

    aput-object v3, v4, v2

    invoke-virtual {v5, p0, v4}, Ljava/lang/reflect/Method;->invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
    :try_end_11d
    .catch Ljava/lang/Exception; {:try_start_108 .. :try_end_11d} :catch_11d
    .catchall {:try_start_108 .. :try_end_11d} :catchall_131

    .line 36
    :catch_11d
    :goto_11d
    :try_start_11d
    throw p0
    :try_end_11e
    .catch Ljava/io/IOException; {:try_start_11d .. :try_end_11e} :catch_11e
    .catchall {:try_start_11d .. :try_end_11e} :catchall_131

    :catch_11e
    move-exception p0

    .line 37
    :try_start_11f
    new-instance v2, Ljava/lang/RuntimeException;

    .line 38
    invoke-direct {v2, p0}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/Throwable;)V

    throw v2

    .line 39
    :cond_125
    invoke-static {}, Lcom/google/android/gms/internal/measurement/zzif;->zzc()Lcom/google/android/gms/internal/measurement/zzif;

    move-result-object p0
    :try_end_129
    .catchall {:try_start_11f .. :try_end_129} :catchall_131

    .line 40
    :goto_129
    :try_start_129
    invoke-static {v1}, Landroid/os/StrictMode;->setThreadPolicy(Landroid/os/StrictMode$ThreadPolicy;)V

    goto/16 :goto_30

    :goto_12e
    sput-object v1, Lcom/google/android/gms/internal/measurement/zzhn;->zza:Lcom/google/android/gms/internal/measurement/zzif;

    goto :goto_136

    :catchall_131
    move-exception p0

    invoke-static {v1}, Landroid/os/StrictMode;->setThreadPolicy(Landroid/os/StrictMode$ThreadPolicy;)V

    .line 41
    throw p0

    .line 42
    :cond_136
    :goto_136
    monitor-exit v0

    return-object v1

    :catchall_138
    move-exception p0

    .line 43
    monitor-exit v0
    :try_end_13a
    .catchall {:try_start_129 .. :try_end_13a} :catchall_138

    throw p0
.end method