lizhibin5507 发表于 2024-2-28 23:50

求问下面的一条smali语句的理解是否正确

smali语言
new-instance v0, Lcom/alipay/sdk/app/i
请问这句话是啥意思。把支付状态,也就是9000,6000这些数值赋值给v0吗?

ouyang12138 发表于 2024-3-1 10:23

lizhibin5507 发表于 2024-3-1 10:06
我知道拖到jadx看,但拖到jadx看有一个问题,java语句通常比smali语句简略得多。所以jadx反编译后,有时 ...

java更好理解啊,hook也是通过java代码去hook。。你不会是想自己改smali代码重新打包吧

爱飞的猫 发表于 2024-2-29 03:18

不是的,是新建了一个对象,然后将这个对象放到 v0 处。

常见的赋值整数是 const 打头,例如将 10 赋值到 v0:

const/16 v0, 0xa

如果对 smali 不熟悉,可以选择将代码转换到 Java 代码再进行观察。如果你对 smali 语法感兴趣,可以参考安卓逆向导航贴中的 smali 相关课程:

吾爱破解安卓逆向0基础入门教程--导航帖(2024-02)
https://www.52pojie.cn/thread-408645-1-1.html

liujg 发表于 2024-2-29 09:31

表示在寄存器 v0 中创建一个新的实例,类名为 Lcom/alipay/sdk/app/i。这个操作类似于 Java 代码中的 new 关键字

ouyang12138 发表于 2024-2-29 10:32

拖到jadx看

lizhibin5507 发表于 2024-3-1 10:02

爱飞的猫 发表于 2024-2-29 03:18
不是的,是新建了一个对象,然后将这个对象放到 v0 处。

常见的赋值整数是 const 打头,例如将 10 赋值 ...

谢谢!这个课程讲得太少了,半节课就带过去了。我在B站上找了一门课程,把这句话搞明白了,但还是有很多的语句看不懂

lizhibin5507 发表于 2024-3-1 10:06

ouyang12138 发表于 2024-2-29 10:32
拖到jadx看

我知道拖到jadx看,但拖到jadx看有一个问题,java语句通常比smali语句简略得多。所以jadx反编译后,有时会把很多行变成一行或几行。这就导致我知道一段是什么意思,但弄不懂具体一句表达了个啥
页: [1]
查看完整版本: 求问下面的一条smali语句的理解是否正确