i.smali
.class public final Lcom/cmcm/safewallet/data/thwallet/e/i;
.super Lcom/cmcm/safewallet/data/thwallet/e/a;
.source "SerializeStrategyV3.java"
# direct methods
.method public constructor <init>()V
.registers 2
.prologue
.line 39
const/4 v0, 0x3
invoke-direct {p0, v0}, Lcom/cmcm/safewallet/data/thwallet/e/a;-><init>(I)V
.line 40
return-void
.end method
# virtual methods
.method public final O([B)Lcom/cmcm/safewallet/data/keystore/ak;
.registers 14
.prologue
const/4 v2, 0x0
.line 90
iget-object v0, p0, Lcom/cmcm/safewallet/data/thwallet/e/i;->adk:[B
array-length v0, v0
iget-object v1, p0, Lcom/cmcm/safewallet/data/thwallet/e/i;->adk:[B
array-length v1, v1
.line 1067
iget-object v3, p0, Lcom/cmcm/safewallet/data/thwallet/e/a;->adn:[B
invoke-static {p1, v1, v3, v2}, Lcom/cmcm/safewallet/data/thwallet/e/a;->a([BI[BZ)I
move-result v1
.line 90
invoke-static {p1, v0, v1}, Lorg/spongycastle/util/Arrays;->copyOfRange([BII)[B
move-result-object v4
.line 91
new-instance v5, Lcom/cmcm/safewallet/data/keystore/ak;
invoke-direct {v5}, Lcom/cmcm/safewallet/data/keystore/ak;-><init>()V
.line 97
new-instance v6, Ljava/util/ArrayList;
invoke-direct {v6}, Ljava/util/ArrayList;-><init>()V
.line 99
invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
move-result-wide v0
.line 101
:goto_1f
invoke-virtual {p0, v4, v2}, Lcom/cmcm/safewallet/data/thwallet/e/i;->h([BI)I
move-result v2
.line 102
const/4 v3, -0x1
if-eq v2, v3, :cond_c8
.line 105
iget-object v3, p0, Lcom/cmcm/safewallet/data/thwallet/e/i;->adl:[B
array-length v3, v3
add-int/2addr v2, v3
.line 106
new-instance v7, Lcom/cmcm/safewallet/data/keystore/k;
invoke-direct {v7}, Lcom/cmcm/safewallet/data/keystore/k;-><init>()V
.line 107
aget-byte v3, v4, v2
.line 108
new-instance v8, Ljava/lang/String;
add-int/lit8 v9, v2, 0x1
invoke-direct {v8, v4, v9, v3}, Ljava/lang/String;-><init>([BII)V
.line 1189
iput-object v8, v7, Lcom/cmcm/safewallet/data/keystore/k;->name:Ljava/lang/String;
.line 109
add-int/lit8 v3, v3, 0x1
add-int/2addr v2, v3
.line 110
aget-byte v3, v4, v2
.line 111
new-instance v8, Ljava/lang/String;
add-int/lit8 v9, v2, 0x1
invoke-direct {v8, v4, v9, v3}, Ljava/lang/String;-><init>([BII)V
.line 1221
iput-object v8, v7, Lcom/cmcm/safewallet/data/keystore/k;->WC:Ljava/lang/String;
.line 2217
iget-object v8, v7, Lcom/cmcm/safewallet/data/keystore/k;->WC:Ljava/lang/String;
.line 112
invoke-static {v8}, Lcom/cmcm/safewallet/data/keystore/a;->bi(Ljava/lang/String;)I
move-result v8
.line 3197
iput v8, v7, Lcom/cmcm/safewallet/data/keystore/k;->WD:I
.line 114
const-wide/16 v8, 0x1
add-long/2addr v0, v8
.line 3253
iput-wide v0, v7, Lcom/cmcm/safewallet/data/keystore/k;->mCreateTime:J
.line 115
add-int/lit8 v3, v3, 0x1
add-int/2addr v2, v3
.line 117
:goto_58
invoke-virtual {p0, v4, v2}, Lcom/cmcm/safewallet/data/thwallet/e/i;->g([BI)Z
move-result v3
if-eqz v3, :cond_66
.line 118
iget-object v3, p0, Lcom/cmcm/safewallet/data/thwallet/e/i;->adm:[B
array-length v3, v3
add-int/2addr v2, v3
.line 139
invoke-virtual {v6, v7}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
goto :goto_1f
.line 121
:cond_66
aget-byte v8, v4, v2
.line 122
add-int/lit8 v3, v2, 0x1
.line 4193
iget v9, v7, Lcom/cmcm/safewallet/data/keystore/k;->WD:I
.line 124
const/16 v10, 0x3c
if-ne v9, v10, :cond_ae
.line 125
new-instance v9, Lcom/cmcm/safewallet/data/keystore/Token;
invoke-direct {v9}, Lcom/cmcm/safewallet/data/keystore/Token;-><init>()V
.line 127
add-int v10, v3, v8
invoke-static {v4, v3, v10}, Lorg/spongycastle/util/Arrays;->copyOfRange([BII)[B
move-result-object v3
.line 128
new-instance v10, Ljava/lang/StringBuilder;
const-string v11, "0x"
invoke-direct {v10, v11}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-static {v3}, Lcom/cmcm/safewallet/utils/an;->S([B)Ljava/lang/String;
move-result-object v3
invoke-virtual {v10, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v3
invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v3
.line 129
invoke-virtual {v9, v3}, Lcom/cmcm/safewallet/data/keystore/Token;->setContractAddr(Ljava/lang/String;)V
.line 131
:try_start_91
new-instance v3, Ljava/lang/StringBuilder;
const-string v10, " ETH >> "
invoke-direct {v3, v10}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
.line 4209
iget-object v10, v7, Lcom/cmcm/safewallet/data/keystore/k;->address:Ljava/lang/String;
.line 131
invoke-virtual {v3, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v3
const-string v10, " TOKEN >> "
invoke-virtual {v3, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v3
invoke-virtual {v9}, Lcom/cmcm/safewallet/data/keystore/Token;->getContractAddr()Ljava/lang/String;
move-result-object v10
invoke-virtual {v3, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 132
invoke-virtual {v7, v9}, Lcom/cmcm/safewallet/data/keystore/k;->a(Lcom/cmcm/safewallet/data/keystore/Token;)I
:try_end_ae
.catch Lcom/cmcm/safewallet/data/keystore/KeystoreException; {:try_start_91 .. :try_end_ae} :catch_b2
.line 137
:cond_ae
:goto_ae
add-int/lit8 v3, v8, 0x1
add-int/2addr v2, v3
.line 138
goto :goto_58
.line 133
:catch_b2
move-exception v3
.line 134
const-string v9, "walletinfo"
new-instance v10, Ljava/lang/StringBuilder;
const-string v11, " Add a duplicate token : "
invoke-direct {v10, v11}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v10, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object v3
invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v3
.line 5052
invoke-static {v9, v3}, Lcom/cmcm/safewallet/a/e;->d(Ljava/lang/String;Ljava/lang/String;)V
goto :goto_ae
.line 146
:cond_c8
invoke-virtual {v5, v6}, Lcom/cmcm/safewallet/data/keystore/ak;->c(Ljava/util/ArrayList;)V
.line 147
return-object v5
.end method