d.smali
.class public final Lcom/cmcm/safewallet/data/dapp/d;
.super Ljava/lang/Object;
.source "HDWallet.kt"
# instance fields
.field private final scheduler:Lrx/j;
.field private final zn:Landroid/content/Context;
# direct methods
.method public synthetic constructor <init>()V
.registers 4
.prologue
.line 23
invoke-static {}, Ljava/util/concurrent/Executors;->newSingleThreadExecutor()Ljava/util/concurrent/ExecutorService;
move-result-object v0
check-cast v0, Ljava/util/concurrent/Executor;
invoke-static {v0}, Lrx/e/a;->b(Ljava/util/concurrent/Executor;)Lrx/j;
move-result-object v0
const-string v1, "Schedulers.from(Executor\u2026ewSingleThreadExecutor())"
invoke-static {v0, v1}, Lkotlin/jvm/internal/e;->e(Ljava/lang/Object;Ljava/lang/String;)V
.line 24
invoke-static {}, Lcom/cmcm/safewallet/entry/WalletApp;->lO()Landroid/content/Context;
move-result-object v1
const-string v2, "WalletApp.getAppContext()"
invoke-static {v1, v2}, Lkotlin/jvm/internal/e;->e(Ljava/lang/Object;Ljava/lang/String;)V
invoke-direct {p0, v0, v1}, Lcom/cmcm/safewallet/data/dapp/d;-><init>(Lrx/j;Landroid/content/Context;)V
return-void
.end method
.method private constructor <init>(Lrx/j;Landroid/content/Context;)V
.registers 4
.param p1 # Lrx/j;
.annotation build Lorg/jetbrains/annotations/NotNull;
.end annotation
.end param
.param p2 # Landroid/content/Context;
.annotation build Lorg/jetbrains/annotations/NotNull;
.end annotation
.end param
.prologue
const-string v0, "scheduler"
invoke-static {p1, v0}, Lkotlin/jvm/internal/e;->f(Ljava/lang/Object;Ljava/lang/String;)V
const-string v0, "context"
invoke-static {p2, v0}, Lkotlin/jvm/internal/e;->f(Ljava/lang/Object;Ljava/lang/String;)V
.line 22
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Lcom/cmcm/safewallet/data/dapp/d;->scheduler:Lrx/j;
iput-object p2, p0, Lcom/cmcm/safewallet/data/dapp/d;->zn:Landroid/content/Context;
return-void
.end method
.method static a(Lorg/web3j/crypto/ECKeyPair;[BZ)Ljava/lang/String;
.registers 9
.prologue
.line 38
.line 1045
:try_start_0
invoke-static {p1, p0, p2}, Lcom/cmcm/safewallet/data/dapp/a/a;->a([BLorg/web3j/crypto/ECKeyPair;Z)Lorg/web3j/crypto/Sign$SignatureData;
move-result-object v0
.line 1047
invoke-virtual {v0}, Lorg/web3j/crypto/Sign$SignatureData;->getR()[B
move-result-object v1
invoke-static {v1}, Lcom/cmcm/safewallet/utils/d;->R([B)Ljava/lang/String;
move-result-object v1
.line 1048
invoke-virtual {v0}, Lorg/web3j/crypto/Sign$SignatureData;->getS()[B
move-result-object v2
invoke-static {v2}, Lcom/cmcm/safewallet/utils/d;->R([B)Ljava/lang/String;
move-result-object v2
.line 1049
sget-object v3, Lorg/bitcoinj/core/Utils;->HEX:Lcom/google/common/io/BaseEncoding;
const/4 v4, 0x1
new-array v4, v4, [B
const/4 v5, 0x0
invoke-virtual {v0}, Lorg/web3j/crypto/Sign$SignatureData;->getV()B
move-result v0
aput-byte v0, v4, v5
invoke-virtual {v3, v4}, Lcom/google/common/io/BaseEncoding;->encode([B)Ljava/lang/String;
move-result-object v0
.line 1050
new-instance v3, Ljava/lang/StringBuilder;
invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v3, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-static {v0}, Lorg/web3j/utils/Numeric;->prependHexPrefix(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
const-string v1, "Numeric.prependHexPrefix(hexR + hexS + hexV)"
invoke-static {v0, v1}, Lkotlin/jvm/internal/e;->e(Ljava/lang/Object;Ljava/lang/String;)V
:try_end_42
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_42} :catch_43
.line 38
return-object v0
.line 40
:catch_43
move-exception v0
new-instance v0, Lcom/cmcm/safewallet/data/dapp/SignTransactionException;
const-string v1, "Unable to sign transaction"
invoke-direct {v0, v1}, Lcom/cmcm/safewallet/data/dapp/SignTransactionException;-><init>(Ljava/lang/String;)V
check-cast v0, Ljava/lang/Throwable;
throw v0
.end method
# virtual methods
.method public final a(ZLjava/lang/String;Ljava/lang/String;)Lorg/web3j/crypto/ECKeyPair;
.registers 9
.param p2 # Ljava/lang/String;
.annotation build Lorg/jetbrains/annotations/NotNull;
.end annotation
.end param
.param p3 # Ljava/lang/String;
.annotation build Lorg/jetbrains/annotations/NotNull;
.end annotation
.end param
.annotation build Lorg/jetbrains/annotations/NotNull;
.end annotation
.prologue
const/4 v0, 0x0
const-string v1, "walletAddress"
invoke-static {p2, v1}, Lkotlin/jvm/internal/e;->f(Ljava/lang/Object;Ljava/lang/String;)V
const-string v1, "password"
invoke-static {p3, v1}, Lkotlin/jvm/internal/e;->f(Ljava/lang/Object;Ljava/lang/String;)V
.line 57
if-eqz p1, :cond_64
.line 58
iget-object v1, p0, Lcom/cmcm/safewallet/data/dapp/d;->zn:Landroid/content/Context;
invoke-static {v1}, Lcom/cmcm/safewallet/data/keystore/r;->U(Landroid/content/Context;)Lcom/cmcm/safewallet/data/keystore/r;
move-result-object v1
const-string v2, "KeystoreManager.getInstance(context)"
invoke-static {v1, v2}, Lkotlin/jvm/internal/e;->e(Ljava/lang/Object;Ljava/lang/String;)V
invoke-static {}, Lcom/cmcm/safewallet/data/keystore/r;->kh()Ljava/util/Map;
move-result-object v1
.line 59
invoke-static {p2, v1}, Lcom/cmcm/safewallet/data/coinprovider/hdwallet/e/b;->b(Ljava/lang/String;Ljava/util/Map;)Lcom/cmcm/safewallet/data/coinprovider/hdwallet/e/c;
move-result-object v1
.line 60
iget-object v2, v1, Lcom/cmcm/safewallet/data/coinprovider/hdwallet/e/c;->Ui:Lcom/cmcm/safewallet/data/keystore/ai;
if-eqz v2, :cond_62
iget-object v3, p0, Lcom/cmcm/safewallet/data/dapp/d;->zn:Landroid/content/Context;
invoke-static {p3}, Lcom/cmcm/safewallet/utils/d;->ek(Ljava/lang/String;)[B
move-result-object v4
.line 61
iget-object v1, v1, Lcom/cmcm/safewallet/data/coinprovider/hdwallet/e/c;->Uh:Lcom/cmcm/safewallet/data/keystore/k;
if-eqz v1, :cond_32
invoke-virtual {v1}, Lcom/cmcm/safewallet/data/keystore/k;->ke()Ljava/lang/String;
move-result-object v0
.line 60
:cond_32
invoke-virtual {v2, v3, v4, v0}, Lcom/cmcm/safewallet/data/keystore/ai;->a(Landroid/content/Context;[BLjava/lang/String;)Ljava/lang/String;
move-result-object v0
move-object v1, v0
.line 1072
:goto_37
if-eqz p1, :cond_51
invoke-static {}, Lcom/cmcm/safewallet/utils/b;->rF()Z
move-result v0
if-eqz v0, :cond_51
.line 1073
invoke-static {}, Lcom/cmcm/safewallet/utils/p;->uX()Z
move-result v0
.line 1074
new-instance v2, Ljava/lang/StringBuilder;
const-string v3, "DappWeb, hardware shutdown result = "
invoke-direct {v2, v3}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
if-eqz v0, :cond_6e
const-string v0, "success"
:goto_4e
invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 68
:cond_51
new-instance v0, Ljava/math/BigInteger;
const/16 v2, 0x10
invoke-direct {v0, v1, v2}, Ljava/math/BigInteger;-><init>(Ljava/lang/String;I)V
invoke-static {v0}, Lorg/web3j/crypto/ECKeyPair;->create(Ljava/math/BigInteger;)Lorg/web3j/crypto/ECKeyPair;
move-result-object v0
const-string v1, "ECKeyPair.create(BigInteger(privateKey, 16))"
invoke-static {v0, v1}, Lkotlin/jvm/internal/e;->e(Ljava/lang/Object;Ljava/lang/String;)V
return-object v0
:cond_62
move-object v1, v0
.line 60
goto :goto_37
.line 63
:cond_64
invoke-static {}, Lcom/cmcm/safewallet/data/coinprovider/a/a;->iE()Lcom/cmcm/safewallet/data/coinprovider/a/a;
move-result-object v0
invoke-virtual {v0, p3, p2}, Lcom/cmcm/safewallet/data/coinprovider/a/a;->B(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
move-object v1, v0
goto :goto_37
.line 1074
:cond_6e
const-string v0, "fail"
goto :goto_4e
.end method
.method public final a(ZLjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)Lrx/l;
.registers 13
.param p2 # Ljava/lang/String;
.annotation build Lorg/jetbrains/annotations/NotNull;
.end annotation
.end param
.param p3 # Ljava/lang/String;
.annotation build Lorg/jetbrains/annotations/NotNull;
.end annotation
.end param
.param p4 # Ljava/lang/String;
.annotation build Lorg/jetbrains/annotations/NotNull;
.end annotation
.end param
.annotation system Ldalvik/annotation/Signature;
value = {
"(Z",
"Ljava/lang/String;",
"Ljava/lang/String;",
"Ljava/lang/String;",
"Z)",
"Lrx/l",
"<",
"Ljava/lang/String;",
">;"
}
.end annotation
.annotation build Lorg/jetbrains/annotations/NotNull;
.end annotation
.prologue
const-string v0, "data"
invoke-static {p2, v0}, Lkotlin/jvm/internal/e;->f(Ljava/lang/Object;Ljava/lang/String;)V
const-string v0, "password"
invoke-static {p3, v0}, Lkotlin/jvm/internal/e;->f(Ljava/lang/Object;Ljava/lang/String;)V
const-string v0, "address"
invoke-static {p4, v0}, Lkotlin/jvm/internal/e;->f(Ljava/lang/Object;Ljava/lang/String;)V
.line 29
new-instance v0, Lcom/cmcm/safewallet/data/dapp/d$a;
move-object v1, p0
move v2, p1
move-object v3, p4
move-object v4, p3
move-object v5, p2
move v6, p5
invoke-direct/range {v0 .. v6}, Lcom/cmcm/safewallet/data/dapp/d$a;-><init>(Lcom/cmcm/safewallet/data/dapp/d;ZLjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V
check-cast v0, Ljava/util/concurrent/Callable;
invoke-static {v0}, Lrx/l;->e(Ljava/util/concurrent/Callable;)Lrx/l;
move-result-object v0
.line 33
iget-object v1, p0, Lcom/cmcm/safewallet/data/dapp/d;->scheduler:Lrx/j;
invoke-virtual {v0, v1}, Lrx/l;->d(Lrx/j;)Lrx/l;
move-result-object v0
const-string v1, "Single.fromCallable {\n \u2026 }.subscribeOn(scheduler)"
invoke-static {v0, v1}, Lkotlin/jvm/internal/e;->e(Ljava/lang/Object;Ljava/lang/String;)V
return-object v0
.end method