j.smali

.class public Lcom/baidu/location/b/j;
.super Ljava/lang/Object;


# annotations
.annotation system Ldalvik/annotation/MemberClasses;
    value = {
        Lcom/baidu/location/b/j$a;
    }
.end annotation


# instance fields
.field private a:Ljavax/crypto/spec/IvParameterSpec;

.field private b:Ljavax/crypto/spec/SecretKeySpec;

.field private c:Ljavax/crypto/Cipher;

.field private d:Z


# direct methods
.method static constructor <clinit>()V
    .registers 1

    return-void
.end method

.method private constructor <init>()V
    .registers 7

    const-string v0, "UTF-8"

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

    const/4 v1, 0x0

    iput-boolean v1, p0, Lcom/baidu/location/b/j;->d:Z

    :try_start_8
    invoke-static {}, Lcom/baidu/location/Jni;->getldkaiv()Ljava/lang/String;

    move-result-object v2

    if-eqz v2, :cond_53

    const-string/jumbo v3, "|"

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

    move-result v3

    if-eqz v3, :cond_53

    const-string v3, "\\|"

    invoke-virtual {v2, v3}, Ljava/lang/String;->split(Ljava/lang/String;)[Ljava/lang/String;

    move-result-object v2

    new-instance v3, Ljavax/crypto/spec/IvParameterSpec;

    const/4 v4, 0x1

    aget-object v5, v2, v4

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

    move-result-object v5

    invoke-direct {v3, v5}, Ljavax/crypto/spec/IvParameterSpec;-><init>([B)V

    iput-object v3, p0, Lcom/baidu/location/b/j;->a:Ljavax/crypto/spec/IvParameterSpec;

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

    aget-object v1, v2, v1

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

    move-result-object v0

    const-string v1, "AES"

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

    iput-object v3, p0, Lcom/baidu/location/b/j;->b:Ljavax/crypto/spec/SecretKeySpec;

    const-string v0, "AES/CBC/PKCS5PADDING"

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

    move-result-object v0

    iput-object v0, p0, Lcom/baidu/location/b/j;->c:Ljavax/crypto/Cipher;

    iput-boolean v4, p0, Lcom/baidu/location/b/j;->d:Z
    :try_end_44
    .catch Ljava/security/NoSuchAlgorithmException; {:try_start_8 .. :try_end_44} :catch_4f
    .catch Ljavax/crypto/NoSuchPaddingException; {:try_start_8 .. :try_end_44} :catch_4a
    .catch Ljava/io/UnsupportedEncodingException; {:try_start_8 .. :try_end_44} :catch_45

    goto :goto_53

    :catch_45
    move-exception v0

    invoke-virtual {v0}, Ljava/io/UnsupportedEncodingException;->printStackTrace()V

    goto :goto_53

    :catch_4a
    move-exception v0

    invoke-virtual {v0}, Ljavax/crypto/NoSuchPaddingException;->printStackTrace()V

    goto :goto_53

    :catch_4f
    move-exception v0

    invoke-virtual {v0}, Ljava/security/NoSuchAlgorithmException;->printStackTrace()V

    :cond_53
    :goto_53
    return-void
.end method

.method synthetic constructor <init>(Lcom/baidu/location/b/j$1;)V
    .registers 2

    invoke-direct {p0}, Lcom/baidu/location/b/j;-><init>()V

    return-void
.end method

.method public static a()Lcom/baidu/location/b/j;
    .registers 1

    invoke-static {}, Lcom/baidu/location/b/j$a;->a()Lcom/baidu/location/b/j;

    move-result-object v0

    return-object v0
.end method


# virtual methods
.method public declared-synchronized a(Ljava/lang/String;)Ljava/lang/String;
    .registers 7

    monitor-enter p0

    :try_start_1
    iget-boolean v0, p0, Lcom/baidu/location/b/j;->d:Z
    :try_end_3
    .catchall {:try_start_1 .. :try_end_3} :catchall_2c

    const/4 v1, 0x0

    if-nez v0, :cond_8

    monitor-exit p0

    return-object v1

    :cond_8
    :try_start_8
    iget-object v0, p0, Lcom/baidu/location/b/j;->c:Ljavax/crypto/Cipher;

    const/4 v2, 0x2

    iget-object v3, p0, Lcom/baidu/location/b/j;->b:Ljavax/crypto/spec/SecretKeySpec;

    iget-object v4, p0, Lcom/baidu/location/b/j;->a:Ljavax/crypto/spec/IvParameterSpec;

    invoke-virtual {v0, v2, v3, v4}, Ljavax/crypto/Cipher;->init(ILjava/security/Key;Ljava/security/spec/AlgorithmParameterSpec;)V

    iget-object v0, p0, Lcom/baidu/location/b/j;->c:Ljavax/crypto/Cipher;

    const/4 v2, 0x0

    invoke-static {p1, v2}, Landroid/util/Base64;->decode(Ljava/lang/String;I)[B

    move-result-object p1

    invoke-virtual {v0, p1}, Ljavax/crypto/Cipher;->doFinal([B)[B

    move-result-object p1

    new-instance v0, Ljava/lang/String;

    const-string v2, "UTF-8"

    invoke-direct {v0, p1, v2}, Ljava/lang/String;-><init>([BLjava/lang/String;)V
    :try_end_24
    .catch Ljava/lang/Exception; {:try_start_8 .. :try_end_24} :catch_26
    .catchall {:try_start_8 .. :try_end_24} :catchall_2c

    monitor-exit p0

    return-object v0

    :catch_26
    move-exception p1

    :try_start_27
    invoke-virtual {p1}, Ljava/lang/Exception;->printStackTrace()V
    :try_end_2a
    .catchall {:try_start_27 .. :try_end_2a} :catchall_2c

    monitor-exit p0

    return-object v1

    :catchall_2c
    move-exception p1

    monitor-exit p0

    throw p1
.end method

.method public b()Z
    .registers 2

    iget-boolean v0, p0, Lcom/baidu/location/b/j;->d:Z

    return v0
.end method