飞翔中的小迪 发表于 2020-7-10 17:52

帮我看看这段如何改才能跳过。

本帖最后由 飞翔中的小迪 于 2020-7-11 00:41 编辑

# virtual methods
.method protected afterHookedMethod(Lde/robv/android/xposed/XC_MethodHook$MethodHookParam;)V
    .registers 5
    .annotation system Ldalvik/annotation/Throws;
      value = {
            Ljava/lang/Throwable;
      }
    .end annotation

    .line 1
    new-instance v0, Lcom/testapp/virtualmelive/entity/request/ActiveCodeRequestEntity;

    invoke-direct {v0}, Lcom/testapp/virtualmelive/entity/request/ActiveCodeRequestEntity;-><init>()V

    .line 2
    iget-object v1, p0, Lcom/testapp/virtualmelive/z;->a:Lcom/testapp/virtualmelive/MyllHook;

    invoke-static {}, Lcom/testapp/virtualmelive/util/FileUtil;->getConfig()Lcom/testapp/virtualmelive/bean/XdConfig;

    move-result-object v2

    iput-object v2, v1, Lcom/testapp/virtualmelive/MyllHook;->k:Lcom/testapp/virtualmelive/bean/XdConfig;

    .line 3
    iget-object v1, p0, Lcom/testapp/virtualmelive/z;->a:Lcom/testapp/virtualmelive/MyllHook;

    iget-object v1, v1, Lcom/testapp/virtualmelive/MyllHook;->k:Lcom/testapp/virtualmelive/bean/XdConfig;

    if-eqz v1, :cond_64

    iget-object v1, v1, Lcom/testapp/virtualmelive/bean/XdConfig;->getActiveCode:Ljava/lang/String;

    invoke-static {v1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v1

    if-nez v1, :cond_64

    iget-object v1, p0, Lcom/testapp/virtualmelive/z;->a:Lcom/testapp/virtualmelive/MyllHook;

    iget-object v1, v1, Lcom/testapp/virtualmelive/MyllHook;->k:Lcom/testapp/virtualmelive/bean/XdConfig;

    iget-object v1, v1, Lcom/testapp/virtualmelive/bean/XdConfig;->xtoken:Ljava/lang/String;

    invoke-static {v1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v1

    if-nez v1, :cond_64

    iget-object v1, p0, Lcom/testapp/virtualmelive/z;->a:Lcom/testapp/virtualmelive/MyllHook;

    iget-object v1, v1, Lcom/testapp/virtualmelive/MyllHook;->k:Lcom/testapp/virtualmelive/bean/XdConfig;

    iget-object v1, v1, Lcom/testapp/virtualmelive/bean/XdConfig;->devicecode:Ljava/lang/String;

    invoke-static {v1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v1

    if-eqz v1, :cond_34

    goto :goto_64

    .line 4
    :cond_34
    iget-object v1, p0, Lcom/testapp/virtualmelive/z;->a:Lcom/testapp/virtualmelive/MyllHook;

    iget-object v2, v1, Lcom/testapp/virtualmelive/MyllHook;->k:Lcom/testapp/virtualmelive/bean/XdConfig;

    iget-object v2, v2, Lcom/testapp/virtualmelive/bean/XdConfig;->getActiveCode:Ljava/lang/String;

    iput-object v2, v0, Lcom/testapp/virtualmelive/entity/request/ActiveCodeRequestEntity;->codekey:Ljava/lang/String;

    .line 5
    iget-object v1, v1, Lcom/testapp/virtualmelive/MyllHook;->r:Lwb;

    invoke-interface {v1, v0}, Lwb;->noiceUserActiveCode(Lcom/testapp/virtualmelive/entity/request/ActiveCodeRequestEntity;)Lio/reactivex/A;

    move-result-object v0

    .line 6
    invoke-static {}, Lje;->schedulersTransformer()Lio/reactivex/G;

    move-result-object v1

    invoke-virtual {v0, v1}, Lio/reactivex/A;->compose(Lio/reactivex/G;)Lio/reactivex/A;

    move-result-object v0

    .line 7
    invoke-static {}, Lje;->exceptionTransformer()Lio/reactivex/G;

    move-result-object v1

    invoke-virtual {v0, v1}, Lio/reactivex/A;->compose(Lio/reactivex/G;)Lio/reactivex/A;

    move-result-object v0

    new-instance v1, Lcom/testapp/virtualmelive/y;

    invoke-direct {v1, p0}, Lcom/testapp/virtualmelive/y;-><init>(Lcom/testapp/virtualmelive/z;)V

    invoke-virtual {v0, v1}, Lio/reactivex/A;->doOnSubscribe(LPc;)Lio/reactivex/A;

    move-result-object v0

    new-instance v1, Lcom/testapp/virtualmelive/x;

    invoke-direct {v1, p0, p1}, Lcom/testapp/virtualmelive/x;-><init>(Lcom/testapp/virtualmelive/z;Lde/robv/android/xposed/XC_MethodHook$MethodHookParam;)V

    .line 8
    invoke-virtual {v0, v1}, Lio/reactivex/A;->subscribe(Lio/reactivex/H;)V

    return-void

    .line 9
    :cond_64
    :goto_64
    iget-object p1, p0, Lcom/testapp/virtualmelive/z;->a:Lcom/testapp/virtualmelive/MyllHook;

    const-string v0, "没有正常激活"

    invoke-static {p1, v0}, Lcom/testapp/virtualmelive/MyllHook;->c(Lcom/testapp/virtualmelive/MyllHook;Ljava/lang/String;)V

    return-void
.end method



class f extends XC_MethodHook {
    final /* synthetic */ MyllHook a;

    f(MyllHook myllHook) {
      this.a = myllHook;
    }

    protected void afterHookedMethod(XC_MethodHook.MethodHookParam methodHookParam) throws Throwable {
      ActiveCodeRequestEntity activeCodeRequestEntity = new ActiveCodeRequestEntity();
      this.a.k = FileUtil.getConfig();
      XdConfig xdConfig = this.a.k;
      if (xdConfig == null || TextUtils.isEmpty(xdConfig.getActiveCode) || TextUtils.isEmpty(this.a.k.xtoken) || TextUtils.isEmpty(this.a.k.devicecode)) {
            MyllHook.c(this.a, "没有正常激活");
            return;
      }
      MyllHook myllHook = this.a;
      activeCodeRequestEntity.codekey = myllHook.k.getActiveCode;
      myllHook.n.noiceUserActiveCode(activeCodeRequestEntity).compose(Xd.schedulersTransformer()).compose(Xd.exceptionTransformer()).doOnSubscribe(new e(this)).subscribe(new d(this, methodHookParam));
    }
}

飞翔中的小迪 发表于 2020-7-11 17:56

longsui48 发表于 2020-7-11 17:37
那就是有地方还有验证啊 继续改就行了

原来去掉了登录框加了激活码后, 运行功能回闪退,   改这里面的代码就不会闪退了,但是功能实现不了,

我现在找不到问题出在哪了,这里面应该只是验证有没有正常激活啊, 没有头绪         

longsui48 发表于 2020-7-11 19:04

飞翔中的小迪 发表于 2020-7-11 17:56
原来去掉了登录框加了激活码后, 运行功能回闪退,   改这里面的代码就不会闪退了,但是功能实现不了,
...

对的 估计就是检验有没有正常激活而已 功能前面应该还有验证

longsui48 发表于 2020-7-10 17:59

这不是很简单吗? 改if-eqz啊

飞翔中的小迪 发表于 2020-7-10 18:06

longsui48 发表于 2020-7-10 17:59
这不是很简单吗? 改if-eqz啊

有些改了会出错,我都删了很多 但是最后运行的时候还是会出现没有正常激活

飞翔中的小迪 发表于 2020-7-10 18:09

longsui48 发表于 2020-7-10 17:59
这不是很简单吗? 改if-eqz啊

登录框 验证码都已经改好了,当是运行软件功能的时候好像会判断有没有正常激活.

byh3025 发表于 2020-7-10 20:37

049nop   061jmp

飞翔中的小迪 发表于 2020-7-10 20:58

byh3025 发表于 2020-7-10 20:37
049nop   061jmp

061改nez049 删掉了 运行会出错。

飞翔中的小迪 发表于 2020-7-11 00:46

java的代码也贴上去了啊

longsui48 发表于 2020-7-11 17:11

飞翔中的小迪 发表于 2020-7-10 18:09
登录框 验证码都已经改好了,当是运行软件功能的时候好像会判断有没有正常激活.

这个就不知道了 你就贴了这一点代码 根本分析不出来什么 现在能告诉你的就是改判断条件

飞翔中的小迪 发表于 2020-7-11 17:22

longsui48 发表于 2020-7-11 17:11
这个就不知道了 你就贴了这一点代码 根本分析不出来什么 现在能告诉你的就是改判断条件

给每个都赋值   现在功能没实现很头疼。

longsui48 发表于 2020-7-11 17:37

飞翔中的小迪 发表于 2020-7-11 17:22
给每个都赋值   现在功能没实现很头疼。

那就是有地方还有验证啊 继续改就行了
页: [1] 2
查看完整版本: 帮我看看这段如何改才能跳过。