a.smali
.class public Lcom/baidu/mobads/utils/a;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Lcom/baidu/mobads/interfaces/utils/IBase64;
# static fields
.field private static final a:[B
.field private static final b:[B
# direct methods
.method static constructor <clinit>()V
.registers 4
.prologue
.line 9
const/16 v0, 0x40
new-array v0, v0, [B
fill-array-data v0, :array_22
sput-object v0, Lcom/baidu/mobads/utils/a;->a:[B
.line 18
const/16 v0, 0x80
new-array v0, v0, [B
sput-object v0, Lcom/baidu/mobads/utils/a;->b:[B
.line 21
const/4 v0, 0x0
:goto_10
sget-object v1, Lcom/baidu/mobads/utils/a;->a:[B
array-length v1, v1
if-ge v0, v1, :cond_21
.line 22
sget-object v1, Lcom/baidu/mobads/utils/a;->b:[B
sget-object v2, Lcom/baidu/mobads/utils/a;->a:[B
aget-byte v2, v2, v0
int-to-byte v3, v0
aput-byte v3, v1, v2
.line 21
add-int/lit8 v0, v0, 0x1
goto :goto_10
.line 24
:cond_21
return-void
.line 9
:array_22
.array-data 1
0x30t
0x4bt
0x61t
0x6at
0x44t
0x37t
0x41t
0x5at
0x63t
0x46t
0x32t
0x51t
0x6et
0x50t
0x72t
0x35t
0x66t
0x77t
0x69t
0x48t
0x52t
0x4et
0x79t
0x67t
0x6dt
0x75t
0x70t
0x55t
0x54t
0x49t
0x58t
0x78t
0x36t
0x39t
0x42t
0x57t
0x62t
0x2dt
0x68t
0x4dt
0x43t
0x47t
0x4at
0x6ft
0x5ft
0x56t
0x38t
0x45t
0x73t
0x6bt
0x7at
0x31t
0x59t
0x64t
0x76t
0x4ct
0x33t
0x34t
0x6ct
0x65t
0x74t
0x71t
0x53t
0x4ft
.end array-data
.end method
.method public constructor <init>()V
.registers 1
.prologue
.line 7
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method private a(B)Z
.registers 6
.prologue
const/4 v0, 0x1
const/4 v1, 0x0
.line 141
const/16 v2, 0x24
if-ne p1, v2, :cond_7
.line 148
:cond_6
:goto_6
return v0
.line 143
:cond_7
if-ltz p1, :cond_d
const/16 v2, 0x80
if-lt p1, v2, :cond_f
:cond_d
move v0, v1
.line 144
goto :goto_6
.line 145
:cond_f
sget-object v2, Lcom/baidu/mobads/utils/a;->b:[B
aget-byte v2, v2, p1
const/4 v3, -0x1
if-ne v2, v3, :cond_6
move v0, v1
.line 146
goto :goto_6
.end method
.method private a(Ljava/lang/String;)[B
.registers 11
.prologue
const/4 v0, 0x0
const/4 v1, 0x0
const/16 v8, 0x24
.line 56
invoke-direct {p0, p1}, Lcom/baidu/mobads/utils/a;->b(Ljava/lang/String;)Z
move-result v2
if-eqz v2, :cond_b
.line 106
:cond_a
:goto_a
return-object v0
.line 62
:cond_b
if-eqz p1, :cond_a
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v2
const/4 v3, 0x4
if-lt v2, v3, :cond_a
.line 71
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v0
add-int/lit8 v0, v0, -0x2
invoke-virtual {p1, v0}, Ljava/lang/String;->charAt(I)C
move-result v0
if-ne v0, v8, :cond_7c
.line 72
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v0
div-int/lit8 v0, v0, 0x4
add-int/lit8 v0, v0, -0x1
mul-int/lit8 v0, v0, 0x3
add-int/lit8 v0, v0, 0x1
new-array v0, v0, [B
:goto_2e
move v2, v1
.line 78
:goto_2f
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v3
add-int/lit8 v3, v3, -0x4
if-ge v2, v3, :cond_a2
.line 79
sget-object v3, Lcom/baidu/mobads/utils/a;->b:[B
invoke-virtual {p1, v2}, Ljava/lang/String;->charAt(I)C
move-result v4
aget-byte v3, v3, v4
.line 80
sget-object v4, Lcom/baidu/mobads/utils/a;->b:[B
add-int/lit8 v5, v2, 0x1
invoke-virtual {p1, v5}, Ljava/lang/String;->charAt(I)C
move-result v5
aget-byte v4, v4, v5
.line 81
sget-object v5, Lcom/baidu/mobads/utils/a;->b:[B
add-int/lit8 v6, v2, 0x2
invoke-virtual {p1, v6}, Ljava/lang/String;->charAt(I)C
move-result v6
aget-byte v5, v5, v6
.line 82
sget-object v6, Lcom/baidu/mobads/utils/a;->b:[B
add-int/lit8 v7, v2, 0x3
invoke-virtual {p1, v7}, Ljava/lang/String;->charAt(I)C
move-result v7
aget-byte v6, v6, v7
.line 83
shl-int/lit8 v3, v3, 0x2
shr-int/lit8 v7, v4, 0x4
or-int/2addr v3, v7
int-to-byte v3, v3
aput-byte v3, v0, v1
.line 84
add-int/lit8 v3, v1, 0x1
shl-int/lit8 v4, v4, 0x4
shr-int/lit8 v7, v5, 0x2
or-int/2addr v4, v7
int-to-byte v4, v4
aput-byte v4, v0, v3
.line 85
add-int/lit8 v3, v1, 0x2
shl-int/lit8 v4, v5, 0x6
or-int/2addr v4, v6
int-to-byte v4, v4
aput-byte v4, v0, v3
.line 78
add-int/lit8 v2, v2, 0x4
add-int/lit8 v1, v1, 0x3
goto :goto_2f
.line 73
:cond_7c
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v0
add-int/lit8 v0, v0, -0x1
invoke-virtual {p1, v0}, Ljava/lang/String;->charAt(I)C
move-result v0
if-ne v0, v8, :cond_97
.line 74
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v0
div-int/lit8 v0, v0, 0x4
add-int/lit8 v0, v0, -0x1
mul-int/lit8 v0, v0, 0x3
add-int/lit8 v0, v0, 0x2
new-array v0, v0, [B
goto :goto_2e
.line 76
:cond_97
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v0
div-int/lit8 v0, v0, 0x4
mul-int/lit8 v0, v0, 0x3
new-array v0, v0, [B
goto :goto_2e
.line 87
:cond_a2
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v1
add-int/lit8 v1, v1, -0x2
invoke-virtual {p1, v1}, Ljava/lang/String;->charAt(I)C
move-result v1
if-ne v1, v8, :cond_d7
.line 88
sget-object v1, Lcom/baidu/mobads/utils/a;->b:[B
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v2
add-int/lit8 v2, v2, -0x4
invoke-virtual {p1, v2}, Ljava/lang/String;->charAt(I)C
move-result v2
aget-byte v1, v1, v2
.line 89
sget-object v2, Lcom/baidu/mobads/utils/a;->b:[B
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v3
add-int/lit8 v3, v3, -0x3
invoke-virtual {p1, v3}, Ljava/lang/String;->charAt(I)C
move-result v3
aget-byte v2, v2, v3
.line 90
array-length v3, v0
add-int/lit8 v3, v3, -0x1
shl-int/lit8 v1, v1, 0x2
shr-int/lit8 v2, v2, 0x4
or-int/2addr v1, v2
int-to-byte v1, v1
aput-byte v1, v0, v3
goto/16 :goto_a
.line 91
:cond_d7
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v1
add-int/lit8 v1, v1, -0x1
invoke-virtual {p1, v1}, Ljava/lang/String;->charAt(I)C
move-result v1
if-ne v1, v8, :cond_125
.line 92
sget-object v1, Lcom/baidu/mobads/utils/a;->b:[B
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v2
add-int/lit8 v2, v2, -0x4
invoke-virtual {p1, v2}, Ljava/lang/String;->charAt(I)C
move-result v2
aget-byte v1, v1, v2
.line 93
sget-object v2, Lcom/baidu/mobads/utils/a;->b:[B
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v3
add-int/lit8 v3, v3, -0x3
invoke-virtual {p1, v3}, Ljava/lang/String;->charAt(I)C
move-result v3
aget-byte v2, v2, v3
.line 94
sget-object v3, Lcom/baidu/mobads/utils/a;->b:[B
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v4
add-int/lit8 v4, v4, -0x2
invoke-virtual {p1, v4}, Ljava/lang/String;->charAt(I)C
move-result v4
aget-byte v3, v3, v4
.line 95
array-length v4, v0
add-int/lit8 v4, v4, -0x2
shl-int/lit8 v1, v1, 0x2
shr-int/lit8 v5, v2, 0x4
or-int/2addr v1, v5
int-to-byte v1, v1
aput-byte v1, v0, v4
.line 96
array-length v1, v0
add-int/lit8 v1, v1, -0x1
shl-int/lit8 v2, v2, 0x4
shr-int/lit8 v3, v3, 0x2
or-int/2addr v2, v3
int-to-byte v2, v2
aput-byte v2, v0, v1
goto/16 :goto_a
.line 98
:cond_125
sget-object v1, Lcom/baidu/mobads/utils/a;->b:[B
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v2
add-int/lit8 v2, v2, -0x4
invoke-virtual {p1, v2}, Ljava/lang/String;->charAt(I)C
move-result v2
aget-byte v1, v1, v2
.line 99
sget-object v2, Lcom/baidu/mobads/utils/a;->b:[B
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v3
add-int/lit8 v3, v3, -0x3
invoke-virtual {p1, v3}, Ljava/lang/String;->charAt(I)C
move-result v3
aget-byte v2, v2, v3
.line 100
sget-object v3, Lcom/baidu/mobads/utils/a;->b:[B
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v4
add-int/lit8 v4, v4, -0x2
invoke-virtual {p1, v4}, Ljava/lang/String;->charAt(I)C
move-result v4
aget-byte v3, v3, v4
.line 101
sget-object v4, Lcom/baidu/mobads/utils/a;->b:[B
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v5
add-int/lit8 v5, v5, -0x1
invoke-virtual {p1, v5}, Ljava/lang/String;->charAt(I)C
move-result v5
aget-byte v4, v4, v5
.line 102
array-length v5, v0
add-int/lit8 v5, v5, -0x3
shl-int/lit8 v1, v1, 0x2
shr-int/lit8 v6, v2, 0x4
or-int/2addr v1, v6
int-to-byte v1, v1
aput-byte v1, v0, v5
.line 103
array-length v1, v0
add-int/lit8 v1, v1, -0x2
shl-int/lit8 v2, v2, 0x4
shr-int/lit8 v5, v3, 0x2
or-int/2addr v2, v5
int-to-byte v2, v2
aput-byte v2, v0, v1
.line 104
array-length v1, v0
add-int/lit8 v1, v1, -0x1
shl-int/lit8 v2, v3, 0x6
or-int/2addr v2, v4
int-to-byte v2, v2
aput-byte v2, v0, v1
goto/16 :goto_a
.end method
.method private b(Ljava/lang/String;)Z
.registers 6
.prologue
const/4 v2, 0x1
const/4 v1, 0x0
.line 129
if-nez p1, :cond_6
move v1, v2
.line 137
:cond_5
:goto_5
return v1
:cond_6
move v0, v1
.line 132
:goto_7
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v3
if-ge v0, v3, :cond_5
.line 133
invoke-virtual {p1, v0}, Ljava/lang/String;->charAt(I)C
move-result v3
int-to-byte v3, v3
invoke-direct {p0, v3}, Lcom/baidu/mobads/utils/a;->a(B)Z
move-result v3
if-nez v3, :cond_1a
move v1, v2
.line 134
goto :goto_5
.line 132
:cond_1a
add-int/lit8 v0, v0, 0x1
goto :goto_7
.end method
# virtual methods
.method public decodeStr(Ljava/lang/String;)Ljava/lang/String;
.registers 5
.prologue
.line 110
if-eqz p1, :cond_9
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v0
const/4 v1, 0x4
if-ge v0, v1, :cond_b
.line 111
:cond_9
const/4 v0, 0x0
.line 123
:cond_a
:goto_a
return-object v0
.line 115
:cond_b
:try_start_b
new-instance v0, Ljava/lang/String;
invoke-direct {p0, p1}, Lcom/baidu/mobads/utils/a;->a(Ljava/lang/String;)[B
move-result-object v1
invoke-direct {v0, v1}, Ljava/lang/String;-><init>([B)V
.line 117
:goto_14
const-string v1, "$"
invoke-virtual {v0, v1}, Ljava/lang/String;->endsWith(Ljava/lang/String;)Z
move-result v1
if-eqz v1, :cond_a
.line 118
const/4 v1, 0x0
invoke-virtual {v0}, Ljava/lang/String;->length()I
move-result v2
add-int/lit8 v2, v2, -0x1
invoke-virtual {v0, v1, v2}, Ljava/lang/String;->substring(II)Ljava/lang/String;
:try_end_26
.catch Ljava/lang/Exception; {:try_start_b .. :try_end_26} :catch_28
move-result-object v0
goto :goto_14
.line 122
:catch_28
move-exception v0
.line 123
const-string v0, ""
goto :goto_a
.end method
.method public encode(Ljava/lang/String;)Ljava/lang/String;
.registers 10
.prologue
const/4 v0, 0x0
.line 27
invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_a
.line 28
const-string v0, ""
.line 51
:goto_9
return-object v0
.line 33
:cond_a
invoke-virtual {p1}, Ljava/lang/String;->getBytes()[B
move-result-object v1
.line 34
array-length v1, v1
rem-int/lit8 v1, v1, 0x3
.line 36
:goto_11
if-lez v1, :cond_2c
const/4 v2, 0x3
if-ge v1, v2, :cond_2c
.line 37
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v2
const-string v3, "$"
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v2
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
.line 38
add-int/lit8 v1, v1, 0x1
goto :goto_11
.line 40
:cond_2c
invoke-virtual {p1}, Ljava/lang/String;->getBytes()[B
move-result-object v2
.line 41
array-length v1, v2
div-int/lit8 v1, v1, 0x3
mul-int/lit8 v1, v1, 0x4
new-array v3, v1, [B
move v1, v0
.line 43
:goto_38
array-length v4, v2
if-ge v1, v4, :cond_8a
.line 45
sget-object v4, Lcom/baidu/mobads/utils/a;->a:[B
aget-byte v5, v2, v1
and-int/lit16 v5, v5, 0xfc
shr-int/lit8 v5, v5, 0x2
aget-byte v4, v4, v5
aput-byte v4, v3, v0
.line 46
add-int/lit8 v4, v0, 0x1
sget-object v5, Lcom/baidu/mobads/utils/a;->a:[B
aget-byte v6, v2, v1
and-int/lit8 v6, v6, 0x3
shl-int/lit8 v6, v6, 0x4
add-int/lit8 v7, v1, 0x1
aget-byte v7, v2, v7
and-int/lit16 v7, v7, 0xf0
shr-int/lit8 v7, v7, 0x4
add-int/2addr v6, v7
aget-byte v5, v5, v6
aput-byte v5, v3, v4
.line 47
add-int/lit8 v4, v0, 0x2
sget-object v5, Lcom/baidu/mobads/utils/a;->a:[B
add-int/lit8 v6, v1, 0x1
aget-byte v6, v2, v6
and-int/lit8 v6, v6, 0xf
shl-int/lit8 v6, v6, 0x2
add-int/lit8 v7, v1, 0x2
aget-byte v7, v2, v7
and-int/lit16 v7, v7, 0xc0
shr-int/lit8 v7, v7, 0x6
add-int/2addr v6, v7
aget-byte v5, v5, v6
aput-byte v5, v3, v4
.line 48
add-int/lit8 v4, v0, 0x3
sget-object v5, Lcom/baidu/mobads/utils/a;->a:[B
add-int/lit8 v6, v1, 0x2
aget-byte v6, v2, v6
and-int/lit8 v6, v6, 0x3f
aget-byte v5, v5, v6
aput-byte v5, v3, v4
.line 43
add-int/lit8 v1, v1, 0x3
add-int/lit8 v0, v0, 0x4
goto :goto_38
.line 51
:cond_8a
new-instance v0, Ljava/lang/String;
invoke-direct {v0, v3}, Ljava/lang/String;-><init>([B)V
goto/16 :goto_9
.end method