y.smali
.class final Lcom/cmcm/safewallet/data/keystore/y;
.super Lcom/cmcm/safewallet/data/keystore/ac;
.source "RestoreTHDKeystore2App.java"
# direct methods
.method constructor <init>()V
.registers 1
.prologue
.line 18
invoke-direct {p0}, Lcom/cmcm/safewallet/data/keystore/ac;-><init>()V
return-void
.end method
# virtual methods
.method final a(Landroid/content/Context;Ljava/lang/String;[BLcom/cmcm/safewallet/data/keystore/q;[B)Lcom/cmcm/safewallet/data/keystore/q;
.registers 16
.prologue
.line 21
new-instance v0, Lcom/cmcm/safewallet/data/keystore/ad;
invoke-direct {v0}, Lcom/cmcm/safewallet/data/keystore/ad;-><init>()V
.line 22
invoke-static {v0}, Lcom/cmcm/safewallet/data/keystore/e;->a(Lcom/cmcm/safewallet/data/keystore/ad;)[B
move-result-object v1
.line 23
if-nez v1, :cond_15
.line 24
new-instance v0, Lcom/cmcm/safewallet/data/keystore/KeystoreException;
const/16 v1, 0x10
const-string v2, "hard ware not pair"
invoke-direct {v0, v1, v2}, Lcom/cmcm/safewallet/data/keystore/KeystoreException;-><init>(ILjava/lang/String;)V
throw v0
.line 27
:cond_15
sget-object v2, Lorg/bitcoinj/core/Utils;->HEX:Lcom/google/common/io/BaseEncoding;
invoke-virtual {v2, v1}, Lcom/google/common/io/BaseEncoding;->encode([B)Ljava/lang/String;
.line 28
invoke-static {p1}, Lcom/cmcm/safewallet/data/keystore/e;->Q(Landroid/content/Context;)Lcom/cmcm/safewallet/data/keystore/e;
move-result-object v2
const/4 v3, 0x2
invoke-virtual {v2, p1, v3, v1, v0}, Lcom/cmcm/safewallet/data/keystore/e;->a(Landroid/content/Context;I[BLcom/cmcm/safewallet/data/keystore/ad;)V
.line 30
new-instance v2, Lcom/cmcm/safewallet/data/keystore/ak;
invoke-direct {v2, p2}, Lcom/cmcm/safewallet/data/keystore/ak;-><init>(Ljava/lang/String;)V
.line 32
new-instance v3, Lcom/cmcm/safewallet/data/keystore/ag;
invoke-direct {v3}, Lcom/cmcm/safewallet/data/keystore/ag;-><init>()V
.line 33
sget-object v4, Lorg/bitcoinj/core/Utils;->HEX:Lcom/google/common/io/BaseEncoding;
invoke-virtual {v4, v1}, Lcom/google/common/io/BaseEncoding;->encode([B)Ljava/lang/String;
.line 1251
const/4 v4, 0x1
invoke-static {v4, v2}, Lcom/cmcm/safewallet/data/keystore/ag;->b(ZLcom/cmcm/safewallet/data/keystore/ak;)Ljava/util/ArrayList;
move-result-object v4
.line 1252
const/4 v5, 0x0
invoke-static {v5, v2}, Lcom/cmcm/safewallet/data/keystore/ag;->b(ZLcom/cmcm/safewallet/data/keystore/ak;)Ljava/util/ArrayList;
move-result-object v5
.line 1253
invoke-static {v4, v5, v1, v0}, Lcom/cmcm/safewallet/data/keystore/ag;->a(Ljava/util/ArrayList;Ljava/util/ArrayList;[BLcom/cmcm/safewallet/data/keystore/ad;)[B
move-result-object v4
.line 36
invoke-static {p2}, Lcom/cmcm/safewallet/data/keystore/b;->bm(Ljava/lang/String;)Ljava/util/ArrayList;
move-result-object v5
.line 38
invoke-virtual {v2, v5}, Lcom/cmcm/safewallet/data/keystore/ak;->c(Ljava/util/ArrayList;)V
.line 2092
const/4 v5, 0x0
const/16 v6, 0x20
invoke-static {v4, v5, v6}, Lorg/spongycastle/util/Arrays;->copyOfRange([BII)[B
move-result-object v5
invoke-virtual {v0, v5, v1}, Lcom/cmcm/safewallet/data/keystore/ad;->c([B[B)Ljava/util/ArrayList;
move-result-object v5
.line 2093
const/16 v6, 0x20
const/16 v7, 0x40
invoke-static {v4, v6, v7}, Lorg/spongycastle/util/Arrays;->copyOfRange([BII)[B
move-result-object v6
invoke-virtual {v0, v6, v1}, Lcom/cmcm/safewallet/data/keystore/ad;->c([B[B)Ljava/util/ArrayList;
move-result-object v1
.line 2094
const/4 v0, 0x2
invoke-virtual {v5, v0}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/cmcm/safewallet/data/keystore/af;
.line 2095
const/4 v5, 0x2
invoke-virtual {v1, v5}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v1
check-cast v1, Lcom/cmcm/safewallet/data/keystore/af;
.line 2096
invoke-static {v0}, Lcom/cmcm/safewallet/data/keystore/ad;->a(Lcom/cmcm/safewallet/data/keystore/af;)[B
move-result-object v0
invoke-static {v1}, Lcom/cmcm/safewallet/data/keystore/ad;->a(Lcom/cmcm/safewallet/data/keystore/af;)[B
move-result-object v1
invoke-static {v0, v1}, Lorg/spongycastle/util/Arrays;->concatenate([B[B)[B
move-result-object v0
.line 2097
const/4 v1, 0x1
invoke-static {v1}, Lcom/cmcm/safewallet/data/keystore/b;->u(Z)Lcom/cmcm/safewallet/data/keystore/c;
move-result-object v1
.line 2098
if-eqz v1, :cond_82
.line 3072
iget-object v5, v1, Lcom/cmcm/safewallet/data/keystore/c;->id:Ljava/lang/String;
.line 2098
if-nez v5, :cond_8c
.line 2099
:cond_82
new-instance v0, Lcom/cmcm/safewallet/data/keystore/KeystoreException;
const/16 v1, 0xa
const-string v2, "hardware not pair"
invoke-direct {v0, v1, v2}, Lcom/cmcm/safewallet/data/keystore/KeystoreException;-><init>(ILjava/lang/String;)V
throw v0
.line 4072
:cond_8c
iget-object v1, v1, Lcom/cmcm/safewallet/data/keystore/c;->id:Ljava/lang/String;
.line 4482
iput-object v1, v2, Lcom/cmcm/safewallet/data/keystore/ak;->XL:Ljava/lang/String;
.line 2101
invoke-virtual {v3, v2}, Lcom/cmcm/safewallet/data/keystore/ag;->b(Lcom/cmcm/safewallet/data/keystore/ak;)V
.line 2102
invoke-virtual {v3, v0, p3}, Lcom/cmcm/safewallet/data/keystore/ag;->d([B[B)Lcom/cmcm/safewallet/data/keystore/ai;
.line 5088
const v0, 0x3000002
iput v0, v3, Lcom/cmcm/safewallet/data/keystore/q;->version:I
.line 43
invoke-virtual {v3}, Lcom/cmcm/safewallet/data/keystore/ag;->kg()Lcom/cmcm/safewallet/data/keystore/ak;
move-result-object v0
.line 5514
const/16 v1, 0x9
iput v1, v0, Lcom/cmcm/safewallet/data/keystore/ak;->XH:I
.line 45
invoke-virtual {v3}, Lcom/cmcm/safewallet/data/keystore/ag;->kg()Lcom/cmcm/safewallet/data/keystore/ak;
move-result-object v0
.line 5522
const/4 v1, 0x0
iput v1, v0, Lcom/cmcm/safewallet/data/keystore/ak;->XJ:I
.line 47
const-string v0, "m/8387\'/0"
.line 6159
invoke-static {v4, v0}, Lcom/cmcm/safewallet/data/keystore/ag;->b([BLjava/lang/String;)Ljava/lang/String;
move-result-object v0
.line 6160
sget-object v1, Lorg/bitcoinj/core/Utils;->HEX:Lcom/google/common/io/BaseEncoding;
invoke-virtual {v1, v0}, Lcom/google/common/io/BaseEncoding;->m(Ljava/lang/CharSequence;)[B
move-result-object v0
invoke-static {v0}, Lcom/cmcm/safewallet/data/keystore/aj;->M([B)Ljava/lang/String;
move-result-object v0
iput-object v0, v3, Lcom/cmcm/safewallet/data/keystore/ag;->WU:Ljava/lang/String;
.line 7474
iget-object v0, v2, Lcom/cmcm/safewallet/data/keystore/ak;->XI:Ljava/util/ArrayList;
.line 7058
invoke-interface {v0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v5
:cond_c2
:goto_c2
invoke-interface {v5}, Ljava/util/Iterator;->hasNext()Z
move-result v0
if-eqz v0, :cond_141
invoke-interface {v5}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v0
move-object v2, v0
check-cast v2, Lcom/cmcm/safewallet/data/keystore/k;
.line 8217
iget-object v0, v2, Lcom/cmcm/safewallet/data/keystore/k;->WC:Ljava/lang/String;
.line 7061
invoke-static {v0}, Lcom/cmcm/safewallet/data/keystore/a;->bi(Ljava/lang/String;)I
move-result v1
.line 9197
iput v1, v2, Lcom/cmcm/safewallet/data/keystore/k;->WD:I
.line 7063
invoke-static {v0}, Lcom/cmcm/safewallet/data/keystore/a;->bj(Ljava/lang/String;)I
move-result v1
.line 9205
iput v1, v2, Lcom/cmcm/safewallet/data/keystore/k;->index:I
.line 7065
invoke-static {v4, v0}, Lcom/cmcm/safewallet/data/keystore/ag;->b([BLjava/lang/String;)Ljava/lang/String;
move-result-object v0
.line 10193
iget v1, v2, Lcom/cmcm/safewallet/data/keystore/k;->WD:I
.line 7067
invoke-static {v1, v0}, Lcom/cmcm/safewallet/data/keystore/aj;->a(ILjava/lang/String;)Ljava/lang/String;
move-result-object v0
.line 10213
iput-object v0, v2, Lcom/cmcm/safewallet/data/keystore/k;->address:Ljava/lang/String;
.line 10225
iget-object v0, v2, Lcom/cmcm/safewallet/data/keystore/k;->tokens:Ljava/util/List;
.line 7070
if-eqz v0, :cond_c2
.line 7072
new-instance v6, Ljava/util/ArrayList;
invoke-interface {v0}, Ljava/util/List;->size()I
move-result v1
invoke-direct {v6, v1}, Ljava/util/ArrayList;-><init>(I)V
.line 7073
invoke-interface {v0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v7
:cond_fa
:goto_fa
invoke-interface {v7}, Ljava/util/Iterator;->hasNext()Z
move-result v0
if-eqz v0, :cond_13e
invoke-interface {v7}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/cmcm/safewallet/data/keystore/Token;
.line 11072
invoke-static {}, Lcom/cmcm/safewallet/data/coinprovider/erc20/c;->iN()Lcom/cmcm/safewallet/data/coinprovider/erc20/b;
move-result-object v1
.line 7074
invoke-virtual {v1}, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->iL()Ljava/util/Map;
move-result-object v1
invoke-virtual {v0}, Lcom/cmcm/safewallet/data/keystore/Token;->getContractAddr()Ljava/lang/String;
move-result-object v8
invoke-interface {v1, v8}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v1
check-cast v1, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;
.line 7075
if-eqz v1, :cond_fa
.line 11209
iget-object v8, v2, Lcom/cmcm/safewallet/data/keystore/k;->address:Ljava/lang/String;
.line 7076
invoke-virtual {v0, v8}, Lcom/cmcm/safewallet/data/keystore/Token;->setAddress(Ljava/lang/String;)V
.line 7077
iget-object v8, v1, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->Tj:Ljava/lang/String;
invoke-virtual {v0, v8}, Lcom/cmcm/safewallet/data/keystore/Token;->setIconUrl(Ljava/lang/String;)V
.line 7078
iget-object v8, v1, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->Tl:Ljava/lang/String;
invoke-virtual {v0, v8}, Lcom/cmcm/safewallet/data/keystore/Token;->setFullName(Ljava/lang/String;)V
.line 7079
iget-object v8, v1, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->name:Ljava/lang/String;
invoke-virtual {v0, v8}, Lcom/cmcm/safewallet/data/keystore/Token;->setName(Ljava/lang/String;)V
.line 7080
iget-object v1, v1, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->mCoinName:Ljava/lang/String;
invoke-virtual {v0, v1}, Lcom/cmcm/safewallet/data/keystore/Token;->setCoinName(Ljava/lang/String;)V
.line 7081
invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
move-result-wide v8
invoke-virtual {v0, v8, v9}, Lcom/cmcm/safewallet/data/keystore/Token;->setCreateTime(J)V
.line 7082
invoke-interface {v6, v0}, Ljava/util/List;->add(Ljava/lang/Object;)Z
goto :goto_fa
.line 11229
:cond_13e
iput-object v6, v2, Lcom/cmcm/safewallet/data/keystore/k;->tokens:Ljava/util/List;
goto :goto_c2
.line 50
:cond_141
return-object v3
.end method