c.smali

.class public Lop234qwojf/op234qwojf/op234qwojf/op234qwojf/c;
.super Ljava/lang/Object;
.source "SourceFile"


# direct methods
.method public static a(Ljava/lang/String;ILjava/lang/String;)Ljava/lang/String;
    .registers 14

    const-string v0, "HmacSHA256"

    const-string v1, ""

    const-string v2, "UTF-8"

    int-to-long v3, p1

    .line 1
    invoke-static {}, Ljava/lang/System;->currentTimeMillis()J

    move-result-wide v5

    const-wide/16 v7, 0x3e8

    div-long/2addr v5, v7

    new-instance p1, Lorg/json/JSONObject;

    invoke-direct {p1}, Lorg/json/JSONObject;-><init>()V

    const-wide/32 v7, 0x93a80

    :try_start_16
    const-string v9, "TLS.ver"

    const-string v10, "2.0"

    invoke-virtual {p1, v9, v10}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;

    const-string v9, "TLS.identifier"

    invoke-virtual {p1, v9, p0}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;

    const-string v9, "TLS.sdkappid"

    invoke-virtual {p1, v9, v3, v4}, Lorg/json/JSONObject;->put(Ljava/lang/String;J)Lorg/json/JSONObject;

    const-string v9, "TLS.expire"

    invoke-virtual {p1, v9, v7, v8}, Lorg/json/JSONObject;->put(Ljava/lang/String;J)Lorg/json/JSONObject;

    const-string v9, "TLS.time"

    invoke-virtual {p1, v9, v5, v6}, Lorg/json/JSONObject;->put(Ljava/lang/String;J)Lorg/json/JSONObject;
    :try_end_31
    .catch Lorg/json/JSONException; {:try_start_16 .. :try_end_31} :catch_32

    goto :goto_36

    :catch_32
    move-exception v9

    invoke-virtual {v9}, Lorg/json/JSONException;->printStackTrace()V

    .line 2
    :goto_36
    new-instance v9, Ljava/lang/StringBuilder;

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

    const-string v10, "TLS.identifier:"

    invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v9, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    const-string p0, "\nTLS.sdkappid:"

    invoke-virtual {v9, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v9, v3, v4}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;

    const-string p0, "\nTLS.time:"

    invoke-virtual {v9, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v9, v5, v6}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;

    const-string p0, "\nTLS.expire:"

    invoke-virtual {v9, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v9, v7, v8}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;

    const-string p0, "\n"

    invoke-virtual {v9, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v9}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object p0

    const/4 v3, 0x2

    :try_start_65
    invoke-virtual {p2, v2}, Ljava/lang/String;->getBytes(Ljava/lang/String;)[B

    move-result-object p2

    invoke-static {v0}, Ljavax/crypto/Mac;->getInstance(Ljava/lang/String;)Ljavax/crypto/Mac;

    move-result-object v4

    new-instance v5, Ljavax/crypto/spec/SecretKeySpec;

    invoke-direct {v5, p2, v0}, Ljavax/crypto/spec/SecretKeySpec;-><init>([BLjava/lang/String;)V

    invoke-virtual {v4, v5}, Ljavax/crypto/Mac;->init(Ljava/security/Key;)V

    invoke-virtual {p0, v2}, Ljava/lang/String;->getBytes(Ljava/lang/String;)[B

    move-result-object p0

    invoke-virtual {v4, p0}, Ljavax/crypto/Mac;->doFinal([B)[B

    move-result-object p0

    new-instance p2, Ljava/lang/String;

    invoke-static {p0, v3}, Landroid/util/Base64;->encode([BI)[B

    move-result-object p0

    invoke-direct {p2, p0}, Ljava/lang/String;-><init>([B)V
    :try_end_86
    .catch Ljava/io/UnsupportedEncodingException; {:try_start_65 .. :try_end_86} :catch_87
    .catch Ljava/security/NoSuchAlgorithmException; {:try_start_65 .. :try_end_86} :catch_87
    .catch Ljava/security/InvalidKeyException; {:try_start_65 .. :try_end_86} :catch_87
    .catch Ljava/lang/Exception; {:try_start_65 .. :try_end_86} :catch_87

    goto :goto_88

    :catch_87
    move-object p2, v1

    .line 3
    :goto_88
    invoke-virtual {p2}, Ljava/lang/String;->length()I

    move-result p0

    if-nez p0, :cond_8f

    goto :goto_f5

    :cond_8f
    :try_start_8f
    const-string p0, "TLS.sig"

    invoke-virtual {p1, p0, p2}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
    :try_end_94
    .catch Lorg/json/JSONException; {:try_start_8f .. :try_end_94} :catch_95

    goto :goto_99

    :catch_95
    move-exception p0

    invoke-virtual {p0}, Lorg/json/JSONException;->printStackTrace()V

    :goto_99
    new-instance p0, Ljava/util/zip/Deflater;

    invoke-direct {p0}, Ljava/util/zip/Deflater;-><init>()V

    invoke-virtual {p1}, Lorg/json/JSONObject;->toString()Ljava/lang/String;

    move-result-object p1

    invoke-static {v2}, Ljava/nio/charset/Charset;->forName(Ljava/lang/String;)Ljava/nio/charset/Charset;

    move-result-object p2

    invoke-virtual {p1, p2}, Ljava/lang/String;->getBytes(Ljava/nio/charset/Charset;)[B

    move-result-object p1

    invoke-virtual {p0, p1}, Ljava/util/zip/Deflater;->setInput([B)V

    invoke-virtual {p0}, Ljava/util/zip/Deflater;->finish()V

    const/16 p1, 0x800

    new-array p1, p1, [B

    invoke-virtual {p0, p1}, Ljava/util/zip/Deflater;->deflate([B)I

    move-result p2

    invoke-virtual {p0}, Ljava/util/zip/Deflater;->end()V

    new-instance v1, Ljava/lang/String;

    const/4 p0, 0x0

    invoke-static {p1, p0, p2}, Ljava/util/Arrays;->copyOfRange([BII)[B

    move-result-object p1

    .line 4
    new-instance p2, Ljava/lang/String;

    invoke-static {p1, v3}, Landroid/util/Base64;->encode([BI)[B

    move-result-object p1

    invoke-direct {p2, p1}, Ljava/lang/String;-><init>([B)V

    invoke-virtual {p2}, Ljava/lang/String;->getBytes()[B

    move-result-object p1

    :goto_cf
    array-length p2, p1

    if-ge p0, p2, :cond_f2

    aget-byte p2, p1, p0

    const/16 v0, 0x2b

    if-eq p2, v0, :cond_eb

    const/16 v0, 0x2f

    if-eq p2, v0, :cond_e6

    const/16 v0, 0x3d

    if-eq p2, v0, :cond_e1

    goto :goto_ef

    :cond_e1
    const/16 p2, 0x5f

    aput-byte p2, p1, p0

    goto :goto_ef

    :cond_e6
    const/16 p2, 0x2d

    aput-byte p2, p1, p0

    goto :goto_ef

    :cond_eb
    const/16 p2, 0x2a

    aput-byte p2, p1, p0

    :goto_ef
    add-int/lit8 p0, p0, 0x1

    goto :goto_cf

    .line 5
    :cond_f2
    invoke-direct {v1, p1}, Ljava/lang/String;-><init>([B)V

    :goto_f5
    return-object v1
.end method

.method public static a(Landroid/app/Activity;I)V
    .registers 9

    const/16 v0, 0x7b

    const/16 v1, 0x17

    const-string v2, "android.permission.READ_EXTERNAL_STORAGE"

    const-string v3, "android.permission.WRITE_EXTERNAL_STORAGE"

    const-string v4, "android.permission.READ_PHONE_STATE"

    const-string v5, "android.permission.RECORD_AUDIO"

    const/4 v6, 0x1

    if-ne p1, v6, :cond_37

    sget p1, Landroid/os/Build$VERSION;->SDK_INT:I

    if-lt p1, v1, :cond_36

    invoke-static {p0, v5}, Landroidx/core/content/ContextCompat;->checkSelfPermission(Landroid/content/Context;Ljava/lang/String;)I

    move-result p1

    const-string v1, "android.permission.CAMERA"

    invoke-static {p0, v1}, Landroidx/core/content/ContextCompat;->checkSelfPermission(Landroid/content/Context;Ljava/lang/String;)I

    move-result v6

    add-int/2addr p1, v6

    invoke-static {p0, v4}, Landroidx/core/content/ContextCompat;->checkSelfPermission(Landroid/content/Context;Ljava/lang/String;)I

    move-result v6

    add-int/2addr p1, v6

    invoke-static {p0, v3}, Landroidx/core/content/ContextCompat;->checkSelfPermission(Landroid/content/Context;Ljava/lang/String;)I

    move-result v6

    add-int/2addr p1, v6

    invoke-static {p0, v2}, Landroidx/core/content/ContextCompat;->checkSelfPermission(Landroid/content/Context;Ljava/lang/String;)I

    move-result v6

    add-int/2addr p1, v6

    if-eqz p1, :cond_36

    filled-new-array {v5, v1, v4, v2, v3}, [Ljava/lang/String;

    move-result-object p1

    invoke-static {p0, p1, v0}, Landroidx/core/app/ActivityCompat;->requestPermissions(Landroid/app/Activity;[Ljava/lang/String;I)V

    :cond_36
    return-void

    :cond_37
    if-nez p1, :cond_59

    sget p1, Landroid/os/Build$VERSION;->SDK_INT:I

    if-lt p1, v1, :cond_59

    invoke-static {p0, v5}, Landroidx/core/content/ContextCompat;->checkSelfPermission(Landroid/content/Context;Ljava/lang/String;)I

    move-result p1

    invoke-static {p0, v4}, Landroidx/core/content/ContextCompat;->checkSelfPermission(Landroid/content/Context;Ljava/lang/String;)I

    move-result v1

    add-int/2addr p1, v1

    invoke-static {p0, v3}, Landroidx/core/content/ContextCompat;->checkSelfPermission(Landroid/content/Context;Ljava/lang/String;)I

    move-result v1

    add-int/2addr p1, v1

    invoke-static {p0, v2}, Landroidx/core/content/ContextCompat;->checkSelfPermission(Landroid/content/Context;Ljava/lang/String;)I

    move-result v1

    add-int/2addr p1, v1

    if-eqz p1, :cond_59

    filled-new-array {v5, v4, v2, v3}, [Ljava/lang/String;

    move-result-object p1

    invoke-static {p0, p1, v0}, Landroidx/core/app/ActivityCompat;->requestPermissions(Landroid/app/Activity;[Ljava/lang/String;I)V

    :cond_59
    return-void
.end method

.method public static a(Landroid/content/Context;)Z
    .registers 11

    .line 6
    invoke-static {}, Lop234qwojf/op234qwojf/op234qwojf/op234qwojf/a;->b()V

    sget-object v0, Lop234qwojf/op234qwojf/op234qwojf/op234qwojf/a;->a:Ljava/lang/String;

    const-string v1, "xiaomi"

    invoke-virtual {v1, v0}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z

    move-result v0

    const/4 v2, 0x1

    const/4 v3, 0x0

    if-nez v0, :cond_1a

    sget-object v0, Lop234qwojf/op234qwojf/op234qwojf/op234qwojf/a;->b:Ljava/lang/String;

    invoke-virtual {v1, v0}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z

    move-result v0

    if-eqz v0, :cond_18

    goto :goto_1a

    :cond_18
    move v0, v3

    goto :goto_1b

    :cond_1a
    :goto_1a
    move v0, v2

    :goto_1b
    const-string v1, "appops"

    const/4 v4, 0x0

    const/16 v5, 0x17

    const/4 v6, 0x2

    const/4 v7, 0x3

    const/16 v8, 0x13

    if-eqz v0, :cond_87

    .line 7
    sget v0, Landroid/os/Build$VERSION;->SDK_INT:I

    if-lt v0, v5, :cond_2f

    invoke-static {p0}, Landroid/provider/Settings;->canDrawOverlays(Landroid/content/Context;)Z

    move-result p0

    return p0

    :cond_2f
    if-lt v0, v8, :cond_86

    if-lt v0, v8, :cond_3d

    .line 8
    :try_start_33
    invoke-virtual {p0, v1}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;

    move-result-object v0

    move-object v4, v0

    check-cast v4, Landroid/app/AppOpsManager;

    goto :goto_3d

    :catch_3b
    move-exception p0

    goto :goto_82

    :cond_3d
    :goto_3d
    if-nez v4, :cond_40

    goto :goto_80

    :cond_40
    const/16 v0, 0x2725

    invoke-virtual {v4}, Ljava/lang/Object;->getClass()Ljava/lang/Class;

    move-result-object v1
    :try_end_46
    .catch Ljava/lang/Exception; {:try_start_33 .. :try_end_46} :catch_3b

    const-string v5, "checkOpNoThrow"

    :try_start_48
    new-array v8, v7, [Ljava/lang/Class;

    sget-object v9, Ljava/lang/Integer;->TYPE:Ljava/lang/Class;

    aput-object v9, v8, v3

    aput-object v9, v8, v2

    const-class v9, Ljava/lang/String;

    aput-object v9, v8, v6

    invoke-virtual {v1, v5, v8}, Ljava/lang/Class;->getMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;

    move-result-object v1

    invoke-virtual {v1, v2}, Ljava/lang/reflect/Method;->setAccessible(Z)V

    new-array v5, v7, [Ljava/lang/Object;

    invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v0

    aput-object v0, v5, v3

    invoke-static {}, Landroid/os/Process;->myUid()I

    move-result v0

    invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v0

    aput-object v0, v5, v2

    invoke-virtual {p0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;

    move-result-object p0

    aput-object p0, v5, v6

    invoke-virtual {v1, v4, v5}, Ljava/lang/reflect/Method;->invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object p0

    check-cast p0, Ljava/lang/Integer;

    invoke-virtual {p0}, Ljava/lang/Integer;->intValue()I

    move-result p0
    :try_end_7d
    .catch Ljava/lang/Exception; {:try_start_48 .. :try_end_7d} :catch_3b

    if-nez p0, :cond_80

    goto :goto_86

    :cond_80
    :goto_80
    move v2, v3

    goto :goto_86

    :goto_82
    invoke-virtual {p0}, Ljava/lang/Exception;->printStackTrace()V

    goto :goto_80

    :cond_86
    :goto_86
    return v2

    .line 9
    :cond_87
    invoke-static {}, Lop234qwojf/op234qwojf/op234qwojf/op234qwojf/a;->c()Z

    move-result v0

    if-eqz v0, :cond_c1

    :try_start_8d
    const-string v0, "content://com.vivo.permissionmanager.provider.permission/start_bg_activity"

    .line 10
    invoke-static {v0}, Landroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri;

    move-result-object v5

    invoke-virtual {p0}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;

    move-result-object v4
    :try_end_97
    .catch Ljava/lang/Exception; {:try_start_8d .. :try_end_97} :catch_bb

    const/4 v6, 0x0

    const-string v7, "pkgname = ?"

    :try_start_9a
    new-array v8, v2, [Ljava/lang/String;

    invoke-virtual {p0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;

    move-result-object p0

    aput-object p0, v8, v3

    const/4 v9, 0x0

    invoke-virtual/range {v4 .. v9}, Landroid/content/ContentResolver;->query(Landroid/net/Uri;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor;

    move-result-object p0

    invoke-interface {p0}, Landroid/database/Cursor;->moveToFirst()Z

    move-result v0

    if-nez v0, :cond_ae

    goto :goto_bf

    :cond_ae
    const-string v0, "currentstate"

    invoke-interface {p0, v0}, Landroid/database/Cursor;->getColumnIndex(Ljava/lang/String;)I

    move-result v0

    invoke-interface {p0, v0}, Landroid/database/Cursor;->getInt(I)I

    move-result p0
    :try_end_b8
    .catch Ljava/lang/Exception; {:try_start_9a .. :try_end_b8} :catch_bb

    if-nez p0, :cond_bf

    goto :goto_c0

    :catch_bb
    move-exception p0

    invoke-virtual {p0}, Ljava/lang/Exception;->printStackTrace()V

    :cond_bf
    :goto_bf
    move v2, v3

    :goto_c0
    return v2

    .line 11
    :cond_c1
    sget v0, Landroid/os/Build$VERSION;->SDK_INT:I

    if-lt v0, v5, :cond_ca

    invoke-static {p0}, Landroid/provider/Settings;->canDrawOverlays(Landroid/content/Context;)Z

    move-result p0

    return p0

    :cond_ca
    if-lt v0, v8, :cond_118

    if-lt v0, v8, :cond_d5

    .line 12
    :try_start_ce
    invoke-virtual {p0, v1}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;

    move-result-object v0

    move-object v4, v0

    check-cast v4, Landroid/app/AppOpsManager;

    :cond_d5
    if-nez v4, :cond_d8

    goto :goto_117

    :cond_d8
    const-class v0, Landroid/app/AppOpsManager;
    :try_end_da
    .catch Ljava/lang/Exception; {:try_start_ce .. :try_end_da} :catch_117

    const-string v1, "checkOp"

    :try_start_dc
    new-array v5, v7, [Ljava/lang/Class;

    sget-object v8, Ljava/lang/Integer;->TYPE:Ljava/lang/Class;

    aput-object v8, v5, v3

    aput-object v8, v5, v2

    const-class v8, Ljava/lang/String;

    aput-object v8, v5, v6

    invoke-virtual {v0, v1, v5}, Ljava/lang/Class;->getMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;

    move-result-object v0

    new-array v1, v7, [Ljava/lang/Object;

    const/16 v5, 0x18

    invoke-static {v5}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v5

    aput-object v5, v1, v3

    invoke-static {}, Landroid/os/Binder;->getCallingUid()I

    move-result v5

    invoke-static {v5}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v5

    aput-object v5, v1, v2

    invoke-virtual {p0}, Landroid/content/Context;->getApplicationContext()Landroid/content/Context;

    move-result-object p0

    invoke-virtual {p0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;

    move-result-object p0

    aput-object p0, v1, v6

    invoke-virtual {v0, v4, v1}, Ljava/lang/reflect/Method;->invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object p0

    check-cast p0, Ljava/lang/Integer;

    invoke-virtual {p0}, Ljava/lang/Integer;->intValue()I

    move-result p0
    :try_end_114
    .catch Ljava/lang/Exception; {:try_start_dc .. :try_end_114} :catch_117

    if-nez p0, :cond_117

    goto :goto_118

    :catch_117
    :cond_117
    :goto_117
    move v2, v3

    :cond_118
    :goto_118
    return v2
.end method