cu.smali
.class public final Lcom/loc/cu;
.super Ljava/lang/Object;
# static fields
.field private static final a:[C
.field private static final b:[B
# direct methods
.method static constructor <clinit>()V
.registers 4
const/16 v3, 0x80
const/16 v0, 0x40
new-array v0, v0, [C
fill-array-data v0, :array_60
sput-object v0, Lcom/loc/cu;->a:[C
new-array v0, v3, [B
sput-object v0, Lcom/loc/cu;->b:[B
const/4 v0, 0x0
:goto_10
if-ge v0, v3, :cond_1a
sget-object v1, Lcom/loc/cu;->b:[B
const/4 v2, -0x1
aput-byte v2, v1, v0
add-int/lit8 v0, v0, 0x1
goto :goto_10
:cond_1a
const/16 v0, 0x41
:goto_1c
const/16 v1, 0x5a
if-gt v0, v1, :cond_2a
sget-object v1, Lcom/loc/cu;->b:[B
add-int/lit8 v2, v0, -0x41
int-to-byte v2, v2
aput-byte v2, v1, v0
add-int/lit8 v0, v0, 0x1
goto :goto_1c
:cond_2a
const/16 v0, 0x61
:goto_2c
const/16 v1, 0x7a
if-gt v0, v1, :cond_3c
sget-object v1, Lcom/loc/cu;->b:[B
add-int/lit8 v2, v0, -0x61
add-int/lit8 v2, v2, 0x1a
int-to-byte v2, v2
aput-byte v2, v1, v0
add-int/lit8 v0, v0, 0x1
goto :goto_2c
:cond_3c
const/16 v0, 0x30
:goto_3e
const/16 v1, 0x39
if-gt v0, v1, :cond_4e
sget-object v1, Lcom/loc/cu;->b:[B
add-int/lit8 v2, v0, -0x30
add-int/lit8 v2, v2, 0x34
int-to-byte v2, v2
aput-byte v2, v1, v0
add-int/lit8 v0, v0, 0x1
goto :goto_3e
:cond_4e
sget-object v0, Lcom/loc/cu;->b:[B
const/16 v1, 0x2b
const/16 v2, 0x3e
aput-byte v2, v0, v1
sget-object v0, Lcom/loc/cu;->b:[B
const/16 v1, 0x2f
const/16 v2, 0x3f
aput-byte v2, v0, v1
return-void
nop
:array_60
.array-data 2
0x41s
0x42s
0x43s
0x44s
0x45s
0x46s
0x47s
0x48s
0x49s
0x4as
0x4bs
0x4cs
0x4ds
0x4es
0x4fs
0x50s
0x51s
0x52s
0x53s
0x54s
0x55s
0x56s
0x57s
0x58s
0x59s
0x5as
0x61s
0x62s
0x63s
0x64s
0x65s
0x66s
0x67s
0x68s
0x69s
0x6as
0x6bs
0x6cs
0x6ds
0x6es
0x6fs
0x70s
0x71s
0x72s
0x73s
0x74s
0x75s
0x76s
0x77s
0x78s
0x79s
0x7as
0x30s
0x31s
0x32s
0x33s
0x34s
0x35s
0x36s
0x37s
0x38s
0x39s
0x2bs
0x2fs
.end array-data
.end method
.method public static a(Ljava/lang/String;)Ljava/lang/String;
.registers 2
invoke-static {p0}, Lcom/loc/cu;->b(Ljava/lang/String;)[B
move-result-object v0
invoke-static {v0}, Lcom/loc/cz;->a([B)Ljava/lang/String;
move-result-object v0
return-object v0
.end method
.method public static a([B)Ljava/lang/String;
.registers 4
:try_start_0
invoke-static {p0}, Lcom/loc/cu;->c([B)Ljava/lang/String;
:try_end_3
.catch Ljava/lang/Throwable; {:try_start_0 .. :try_end_3} :catch_5
move-result-object v0
:goto_4
return-object v0
:catch_5
move-exception v0
const-string/jumbo v1, "Encrypt"
const-string/jumbo v2, "encodeBase64"
invoke-static {v0, v1, v2}, Lcom/loc/dc;->a(Ljava/lang/Throwable;Ljava/lang/String;Ljava/lang/String;)V
const/4 v0, 0x0
goto :goto_4
.end method
.method static a([BLjava/security/Key;)[B
.registers 4
const-string/jumbo v0, "RSA/ECB/PKCS1Padding"
invoke-static {v0}, Ljavax/crypto/Cipher;->getInstance(Ljava/lang/String;)Ljavax/crypto/Cipher;
move-result-object v0
const/4 v1, 0x1
invoke-virtual {v0, v1, p1}, Ljavax/crypto/Cipher;->init(ILjava/security/Key;)V
invoke-virtual {v0, p0}, Ljavax/crypto/Cipher;->doFinal([B)[B
move-result-object v0
return-object v0
.end method
.method static a([B[B)[B
.registers 5
:try_start_0
invoke-static {p0, p1}, Lcom/loc/cu;->b([B[B)[B
:try_end_3
.catch Ljava/lang/Throwable; {:try_start_0 .. :try_end_3} :catch_5
move-result-object v0
:goto_4
return-object v0
:catch_5
move-exception v0
const-string/jumbo v1, "Encrypt"
const-string/jumbo v2, "aesEncrypt"
invoke-static {v0, v1, v2}, Lcom/loc/dc;->a(Ljava/lang/Throwable;Ljava/lang/String;Ljava/lang/String;)V
const/4 v0, 0x0
goto :goto_4
.end method
.method public static b([B)Ljava/lang/String;
.registers 2
:try_start_0
invoke-static {p0}, Lcom/loc/cu;->c([B)Ljava/lang/String;
:try_end_3
.catch Ljava/lang/Throwable; {:try_start_0 .. :try_end_3} :catch_5
move-result-object v0
:goto_4
return-object v0
:catch_5
move-exception v0
invoke-virtual {v0}, Ljava/lang/Throwable;->printStackTrace()V
const/4 v0, 0x0
goto :goto_4
.end method
.method public static b(Ljava/lang/String;)[B
.registers 10
const/16 v8, 0x3d
const/4 v0, 0x0
const/4 v7, -0x1
if-nez p0, :cond_9
new-array v0, v0, [B
:goto_8
return-object v0
:cond_9
invoke-static {p0}, Lcom/loc/cz;->a(Ljava/lang/String;)[B
move-result-object v2
array-length v3, v2
new-instance v4, Ljava/io/ByteArrayOutputStream;
invoke-direct {v4, v3}, Ljava/io/ByteArrayOutputStream;-><init>(I)V
:goto_13
if-ge v0, v3, :cond_7a
:goto_15
sget-object v5, Lcom/loc/cu;->b:[B
add-int/lit8 v1, v0, 0x1
aget-byte v0, v2, v0
aget-byte v5, v5, v0
if-ge v1, v3, :cond_21
if-eq v5, v7, :cond_85
:cond_21
if-eq v5, v7, :cond_7a
:goto_23
sget-object v6, Lcom/loc/cu;->b:[B
add-int/lit8 v0, v1, 0x1
aget-byte v1, v2, v1
aget-byte v6, v6, v1
if-ge v0, v3, :cond_2f
if-eq v6, v7, :cond_83
:cond_2f
if-eq v6, v7, :cond_7a
shl-int/lit8 v1, v5, 0x2
and-int/lit8 v5, v6, 0x30
ushr-int/lit8 v5, v5, 0x4
or-int/2addr v1, v5
invoke-virtual {v4, v1}, Ljava/io/ByteArrayOutputStream;->write(I)V
:goto_3b
add-int/lit8 v1, v0, 0x1
aget-byte v0, v2, v0
if-ne v0, v8, :cond_46
invoke-virtual {v4}, Ljava/io/ByteArrayOutputStream;->toByteArray()[B
move-result-object v0
goto :goto_8
:cond_46
sget-object v5, Lcom/loc/cu;->b:[B
aget-byte v5, v5, v0
if-ge v1, v3, :cond_4e
if-eq v5, v7, :cond_81
:cond_4e
if-eq v5, v7, :cond_7a
and-int/lit8 v0, v6, 0xf
shl-int/lit8 v0, v0, 0x4
and-int/lit8 v6, v5, 0x3c
ushr-int/lit8 v6, v6, 0x2
or-int/2addr v0, v6
invoke-virtual {v4, v0}, Ljava/io/ByteArrayOutputStream;->write(I)V
:goto_5c
add-int/lit8 v0, v1, 0x1
aget-byte v1, v2, v1
if-ne v1, v8, :cond_67
invoke-virtual {v4}, Ljava/io/ByteArrayOutputStream;->toByteArray()[B
move-result-object v0
goto :goto_8
:cond_67
sget-object v6, Lcom/loc/cu;->b:[B
aget-byte v1, v6, v1
if-ge v0, v3, :cond_6f
if-eq v1, v7, :cond_7f
:cond_6f
if-eq v1, v7, :cond_7a
and-int/lit8 v5, v5, 0x3
shl-int/lit8 v5, v5, 0x6
or-int/2addr v1, v5
invoke-virtual {v4, v1}, Ljava/io/ByteArrayOutputStream;->write(I)V
goto :goto_13
:cond_7a
invoke-virtual {v4}, Ljava/io/ByteArrayOutputStream;->toByteArray()[B
move-result-object v0
goto :goto_8
:cond_7f
move v1, v0
goto :goto_5c
:cond_81
move v0, v1
goto :goto_3b
:cond_83
move v1, v0
goto :goto_23
:cond_85
move v0, v1
goto :goto_15
.end method
.method private static b([B[B)[B
.registers 6
new-instance v0, Ljavax/crypto/spec/IvParameterSpec;
invoke-static {}, Lcom/loc/cz;->b()[B
move-result-object v1
invoke-direct {v0, v1}, Ljavax/crypto/spec/IvParameterSpec;-><init>([B)V
new-instance v1, Ljavax/crypto/spec/SecretKeySpec;
const-string/jumbo v2, "AES"
invoke-direct {v1, p0, v2}, Ljavax/crypto/spec/SecretKeySpec;-><init>([BLjava/lang/String;)V
const-string/jumbo v2, "AES/CBC/PKCS5Padding"
invoke-static {v2}, Ljavax/crypto/Cipher;->getInstance(Ljava/lang/String;)Ljavax/crypto/Cipher;
move-result-object v2
const/4 v3, 0x1
:try_start_19
invoke-virtual {v2, v3, v1, v0}, Ljavax/crypto/Cipher;->init(ILjava/security/Key;Ljava/security/spec/AlgorithmParameterSpec;)V
:try_end_1c
.catch Ljava/security/InvalidAlgorithmParameterException; {:try_start_19 .. :try_end_1c} :catch_21
:goto_1c
invoke-virtual {v2, p1}, Ljavax/crypto/Cipher;->doFinal([B)[B
move-result-object v0
return-object v0
:catch_21
move-exception v0
invoke-virtual {v0}, Ljava/security/InvalidAlgorithmParameterException;->printStackTrace()V
goto :goto_1c
.end method
.method private static c([B)Ljava/lang/String;
.registers 9
new-instance v1, Ljava/lang/StringBuffer;
invoke-direct {v1}, Ljava/lang/StringBuffer;-><init>()V
array-length v2, p0
const/4 v0, 0x0
:goto_7
if-ge v0, v2, :cond_2b
add-int/lit8 v3, v0, 0x1
aget-byte v0, p0, v0
and-int/lit16 v4, v0, 0xff
if-ne v3, v2, :cond_30
sget-object v0, Lcom/loc/cu;->a:[C
ushr-int/lit8 v2, v4, 0x2
aget-char v0, v0, v2
invoke-virtual {v1, v0}, Ljava/lang/StringBuffer;->append(C)Ljava/lang/StringBuffer;
sget-object v0, Lcom/loc/cu;->a:[C
and-int/lit8 v2, v4, 0x3
shl-int/lit8 v2, v2, 0x4
aget-char v0, v0, v2
invoke-virtual {v1, v0}, Ljava/lang/StringBuffer;->append(C)Ljava/lang/StringBuffer;
const-string/jumbo v0, "=="
invoke-virtual {v1, v0}, Ljava/lang/StringBuffer;->append(Ljava/lang/String;)Ljava/lang/StringBuffer;
:cond_2b
:goto_2b
invoke-virtual {v1}, Ljava/lang/StringBuffer;->toString()Ljava/lang/String;
move-result-object v0
return-object v0
:cond_30
add-int/lit8 v5, v3, 0x1
aget-byte v0, p0, v3
and-int/lit16 v3, v0, 0xff
if-ne v5, v2, :cond_63
sget-object v0, Lcom/loc/cu;->a:[C
ushr-int/lit8 v2, v4, 0x2
aget-char v0, v0, v2
invoke-virtual {v1, v0}, Ljava/lang/StringBuffer;->append(C)Ljava/lang/StringBuffer;
sget-object v0, Lcom/loc/cu;->a:[C
and-int/lit8 v2, v4, 0x3
shl-int/lit8 v2, v2, 0x4
and-int/lit16 v4, v3, 0xf0
ushr-int/lit8 v4, v4, 0x4
or-int/2addr v2, v4
aget-char v0, v0, v2
invoke-virtual {v1, v0}, Ljava/lang/StringBuffer;->append(C)Ljava/lang/StringBuffer;
sget-object v0, Lcom/loc/cu;->a:[C
and-int/lit8 v2, v3, 0xf
shl-int/lit8 v2, v2, 0x2
aget-char v0, v0, v2
invoke-virtual {v1, v0}, Ljava/lang/StringBuffer;->append(C)Ljava/lang/StringBuffer;
const-string/jumbo v0, "="
invoke-virtual {v1, v0}, Ljava/lang/StringBuffer;->append(Ljava/lang/String;)Ljava/lang/StringBuffer;
goto :goto_2b
:cond_63
add-int/lit8 v0, v5, 0x1
aget-byte v5, p0, v5
and-int/lit16 v5, v5, 0xff
sget-object v6, Lcom/loc/cu;->a:[C
ushr-int/lit8 v7, v4, 0x2
aget-char v6, v6, v7
invoke-virtual {v1, v6}, Ljava/lang/StringBuffer;->append(C)Ljava/lang/StringBuffer;
sget-object v6, Lcom/loc/cu;->a:[C
and-int/lit8 v4, v4, 0x3
shl-int/lit8 v4, v4, 0x4
and-int/lit16 v7, v3, 0xf0
ushr-int/lit8 v7, v7, 0x4
or-int/2addr v4, v7
aget-char v4, v6, v4
invoke-virtual {v1, v4}, Ljava/lang/StringBuffer;->append(C)Ljava/lang/StringBuffer;
sget-object v4, Lcom/loc/cu;->a:[C
and-int/lit8 v3, v3, 0xf
shl-int/lit8 v3, v3, 0x2
and-int/lit16 v6, v5, 0xc0
ushr-int/lit8 v6, v6, 0x6
or-int/2addr v3, v6
aget-char v3, v4, v3
invoke-virtual {v1, v3}, Ljava/lang/StringBuffer;->append(C)Ljava/lang/StringBuffer;
sget-object v3, Lcom/loc/cu;->a:[C
and-int/lit8 v4, v5, 0x3f
aget-char v3, v3, v4
invoke-virtual {v1, v3}, Ljava/lang/StringBuffer;->append(C)Ljava/lang/StringBuffer;
goto/16 :goto_7
.end method