gz.smali
.class public Lcom/xiaomi/push/gz;
.super Ljava/lang/Object;
# static fields
.field private static final a:[C
.field private static final b:[C
.field private static final c:[C
.field private static final d:[C
.field private static final e:[C
.field private static f:Ljava/util/Random;
.field private static g:[C
# direct methods
.method static constructor <clinit>()V
.registers 1
const-string v0, """
invoke-virtual {v0}, Ljava/lang/String;->toCharArray()[C
move-result-object v0
sput-object v0, Lcom/xiaomi/push/gz;->a:[C
const-string v0, "'"
invoke-virtual {v0}, Ljava/lang/String;->toCharArray()[C
move-result-object v0
sput-object v0, Lcom/xiaomi/push/gz;->b:[C
const-string v0, "&"
invoke-virtual {v0}, Ljava/lang/String;->toCharArray()[C
move-result-object v0
sput-object v0, Lcom/xiaomi/push/gz;->c:[C
const-string v0, "<"
invoke-virtual {v0}, Ljava/lang/String;->toCharArray()[C
move-result-object v0
sput-object v0, Lcom/xiaomi/push/gz;->d:[C
const-string v0, ">"
invoke-virtual {v0}, Ljava/lang/String;->toCharArray()[C
move-result-object v0
sput-object v0, Lcom/xiaomi/push/gz;->e:[C
new-instance v0, Ljava/util/Random;
invoke-direct {v0}, Ljava/util/Random;-><init>()V
sput-object v0, Lcom/xiaomi/push/gz;->f:Ljava/util/Random;
const-string v0, "0123456789abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"
invoke-virtual {v0}, Ljava/lang/String;->toCharArray()[C
move-result-object v0
sput-object v0, Lcom/xiaomi/push/gz;->g:[C
return-void
.end method
.method public static a(I)Ljava/lang/String;
.registers 6
const/4 v0, 0x1
if-ge p0, v0, :cond_5
const/4 v0, 0x0
:goto_4
return-object v0
:cond_5
new-array v1, p0, [C
const/4 v0, 0x0
:goto_8
array-length v2, v1
if-ge v0, v2, :cond_1c
sget-object v2, Lcom/xiaomi/push/gz;->g:[C
sget-object v3, Lcom/xiaomi/push/gz;->f:Ljava/util/Random;
const/16 v4, 0x47
invoke-virtual {v3, v4}, Ljava/util/Random;->nextInt(I)I
move-result v3
aget-char v2, v2, v3
aput-char v2, v1, v0
add-int/lit8 v0, v0, 0x1
goto :goto_8
:cond_1c
new-instance v0, Ljava/lang/String;
invoke-direct {v0, v1}, Ljava/lang/String;-><init>([C)V
goto :goto_4
.end method
.method public static a(Ljava/lang/String;)Ljava/lang/String;
.registers 12
const/16 v10, 0x3e
const/4 v0, 0x0
if-nez p0, :cond_7
const/4 p0, 0x0
:cond_6
:goto_6
return-object p0
:cond_7
invoke-virtual {p0}, Ljava/lang/String;->toCharArray()[C
move-result-object v2
array-length v3, v2
new-instance v4, Ljava/lang/StringBuilder;
int-to-double v6, v3
const-wide v8, 0x3ff4cccccccccccdL # 1.3
mul-double/2addr v6, v8
double-to-int v1, v6
invoke-direct {v4, v1}, Ljava/lang/StringBuilder;-><init>(I)V
move v1, v0
:goto_1a
if-ge v1, v3, :cond_b3
aget-char v5, v2, v1
if-le v5, v10, :cond_23
:cond_20
:goto_20
add-int/lit8 v1, v1, 0x1
goto :goto_1a
:cond_23
const/16 v6, 0x3c
if-ne v5, v6, :cond_36
if-le v1, v0, :cond_2e
sub-int v5, v1, v0
invoke-virtual {v4, v2, v0, v5}, Ljava/lang/StringBuilder;->append([CII)Ljava/lang/StringBuilder;
:cond_2e
add-int/lit8 v0, v1, 0x1
sget-object v5, Lcom/xiaomi/push/gz;->d:[C
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append([C)Ljava/lang/StringBuilder;
goto :goto_20
:cond_36
if-ne v5, v10, :cond_47
if-le v1, v0, :cond_3f
sub-int v5, v1, v0
invoke-virtual {v4, v2, v0, v5}, Ljava/lang/StringBuilder;->append([CII)Ljava/lang/StringBuilder;
:cond_3f
add-int/lit8 v0, v1, 0x1
sget-object v5, Lcom/xiaomi/push/gz;->e:[C
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append([C)Ljava/lang/StringBuilder;
goto :goto_20
:cond_47
const/16 v6, 0x26
if-ne v5, v6, :cond_8c
if-le v1, v0, :cond_52
sub-int v5, v1, v0
invoke-virtual {v4, v2, v0, v5}, Ljava/lang/StringBuilder;->append([CII)Ljava/lang/StringBuilder;
:cond_52
add-int/lit8 v5, v1, 0x5
if-le v3, v5, :cond_84
add-int/lit8 v5, v1, 0x1
aget-char v5, v2, v5
const/16 v6, 0x23
if-ne v5, v6, :cond_84
add-int/lit8 v5, v1, 0x2
aget-char v5, v2, v5
invoke-static {v5}, Ljava/lang/Character;->isDigit(C)Z
move-result v5
if-eqz v5, :cond_84
add-int/lit8 v5, v1, 0x3
aget-char v5, v2, v5
invoke-static {v5}, Ljava/lang/Character;->isDigit(C)Z
move-result v5
if-eqz v5, :cond_84
add-int/lit8 v5, v1, 0x4
aget-char v5, v2, v5
invoke-static {v5}, Ljava/lang/Character;->isDigit(C)Z
move-result v5
if-eqz v5, :cond_84
add-int/lit8 v5, v1, 0x5
aget-char v5, v2, v5
const/16 v6, 0x3b
if-eq v5, v6, :cond_20
:cond_84
add-int/lit8 v0, v1, 0x1
sget-object v5, Lcom/xiaomi/push/gz;->c:[C
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append([C)Ljava/lang/StringBuilder;
goto :goto_20
:cond_8c
const/16 v6, 0x22
if-ne v5, v6, :cond_9f
if-le v1, v0, :cond_97
sub-int v5, v1, v0
invoke-virtual {v4, v2, v0, v5}, Ljava/lang/StringBuilder;->append([CII)Ljava/lang/StringBuilder;
:cond_97
add-int/lit8 v0, v1, 0x1
sget-object v5, Lcom/xiaomi/push/gz;->a:[C
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append([C)Ljava/lang/StringBuilder;
goto :goto_20
:cond_9f
const/16 v6, 0x27
if-ne v5, v6, :cond_20
if-le v1, v0, :cond_aa
sub-int v5, v1, v0
invoke-virtual {v4, v2, v0, v5}, Ljava/lang/StringBuilder;->append([CII)Ljava/lang/StringBuilder;
:cond_aa
add-int/lit8 v0, v1, 0x1
sget-object v5, Lcom/xiaomi/push/gz;->b:[C
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append([C)Ljava/lang/StringBuilder;
goto/16 :goto_20
:cond_b3
if-eqz v0, :cond_6
if-le v1, v0, :cond_bb
sub-int/2addr v1, v0
invoke-virtual {v4, v2, v0, v1}, Ljava/lang/StringBuilder;->append([CII)Ljava/lang/StringBuilder;
:cond_bb
invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
goto/16 :goto_6
.end method
.method public static final a(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
.registers 10
const/4 v6, 0x0
if-nez p0, :cond_5
const/4 p0, 0x0
:cond_4
:goto_4
return-object p0
:cond_5
invoke-virtual {p0, p1, v6}, Ljava/lang/String;->indexOf(Ljava/lang/String;I)I
move-result v0
if-ltz v0, :cond_4
invoke-virtual {p0}, Ljava/lang/String;->toCharArray()[C
move-result-object v2
invoke-virtual {p2}, Ljava/lang/String;->toCharArray()[C
move-result-object v3
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v4
new-instance v5, Ljava/lang/StringBuilder;
array-length v1, v2
invoke-direct {v5, v1}, Ljava/lang/StringBuilder;-><init>(I)V
invoke-virtual {v5, v2, v6, v0}, Ljava/lang/StringBuilder;->append([CII)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append([C)Ljava/lang/StringBuilder;
add-int/2addr v0, v4
move v1, v0
:goto_26
invoke-virtual {p0, p1, v1}, Ljava/lang/String;->indexOf(Ljava/lang/String;I)I
move-result v1
if-lez v1, :cond_39
sub-int v6, v1, v0
invoke-virtual {v5, v2, v0, v6}, Ljava/lang/StringBuilder;->append([CII)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {v0, v3}, Ljava/lang/StringBuilder;->append([C)Ljava/lang/StringBuilder;
add-int v0, v1, v4
move v1, v0
goto :goto_26
:cond_39
array-length v1, v2
sub-int/2addr v1, v0
invoke-virtual {v5, v2, v0, v1}, Ljava/lang/StringBuilder;->append([CII)Ljava/lang/StringBuilder;
invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
goto :goto_4
.end method
.method public static a([B)Ljava/lang/String;
.registers 2
invoke-static {p0}, Lcom/xiaomi/push/ac;->a([B)[C
move-result-object v0
invoke-static {v0}, Ljava/lang/String;->valueOf([C)Ljava/lang/String;
move-result-object v0
return-object v0
.end method
.method public static final b(Ljava/lang/String;)Ljava/lang/String;
.registers 4
const-string v0, "<"
const-string v1, "<"
invoke-static {p0, v0, v1}, Lcom/xiaomi/push/gz;->a(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
const-string v1, ">"
const-string v2, ">"
invoke-static {v0, v1, v2}, Lcom/xiaomi/push/gz;->a(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
const-string v1, """
const-string v2, "\""
invoke-static {v0, v1, v2}, Lcom/xiaomi/push/gz;->a(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
const-string v1, "'"
const-string v2, "\'"
invoke-static {v0, v1, v2}, Lcom/xiaomi/push/gz;->a(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
const-string v1, "&"
const-string v2, "&"
invoke-static {v0, v1, v2}, Lcom/xiaomi/push/gz;->a(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
return-object v0
.end method