小编Xon*_*nar的帖子

DalvikVM如何处理切换并尝试smali代码

我正在努力学习smali,我有一些问题,我用谷歌搜索他们找不到.

1)我创建了一个简单的测试用例来更好地解释自己

const-string v1, "Start"
:try_start_0
const-string v1, "Try Block"
invoke-static {v1}, Lcom/example/test/Main;->print(Ljava/lang/String;)V
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
Run Code Online (Sandbox Code Playgroud)

.catch语句:两个参数是否意味着从该标签到该标签并捕获它(两个标签之间的代码)或者它是否意味着开始执行try:try_start_0直到达到:try_end_0(允许goto跳转)执行不在两个标签内的代码)?

try标签总是采用try_start_%d格式,还是可以是任何标签?

2)另一个案例

packed-switch v0, :pswitch_data_0

const-string v1, "Default Case"

invoke-static {v1}, Lcom/example/test/Main;->print(Ljava/lang/String;)V

:goto_0

const-string v1, "The End"

invoke-static {v1}, Lcom/example/test/Main;->print(Ljava/lang/String;)V

return-void

:pswitch_0
const-string v1, "Case 1"

invoke-static {v1}, Lcom/example/test/Main;->print(Ljava/lang/String;)V

goto :goto_0

:pswitch_data_0
.packed-switch 0x1
:pswitch_0
.end packed-switch
Run Code Online (Sandbox Code Playgroud)

switch语句:是否要求switch语句位于交换机数据和交换机调用之间?还有标签的命名固定或只是为了方便?

3)如果标签可能不同,baksmali会不会产生带有不同标签的小码?

4)在反编译dex时,哪些可选行并不总是显示?

我知道.parameter和.line是可选的,但是那些可能不存在的是什么?

先感谢您.

dalvik smali

8
推荐指数
1
解决办法
3515
查看次数

Lua中#QNAN和#IND有什么区别

如果你通过Lua解释器运行它

print(0/0)
print(-(0/0))
Run Code Online (Sandbox Code Playgroud)

它输出

-1.#IND
1.#QNAN
Run Code Online (Sandbox Code Playgroud)

根据我的理解,他们都是安静的非数字,但为什么是#QNAN平等-#IND(当我说平等时我的意思是他们打印相同的东西,因为我知道NaN != NaN)

知道a NaN是否#IND或者#QNAN如果是,有什么益处是有益处的.

lua nan

6
推荐指数
1
解决办法
2100
查看次数

修复提前停止的 flv 文件

前段时间我下载了一些 flv 视频,当观看它们时,它们停在了一点。如果我跳过那个点,它们会继续播放直到另一个点,然后我可以再次跳过(并且循环一直持续到视频结束)

我已经试过了

avconv -i input.flv -acodec copy -vcodec copy -g 1 output.flv

根据我阅读了很多关于这个问题的无用帖子的理解,我的元数据中没有任何关键帧,然后在出现坏帧时停止。

我尝试将 -g 设置得更高,但 output.flv 在原始文件第一次停止的同一点停止。有没有什么工具可以解决这个问题。

我不记得原始链接的位置,重新下载不是一个选项,正如你所看到的,我的重新编码尝试失败了。

我使用的是 Linux Ubuntu,因此无法使用可用的 Windows 工具。

编辑

经过一番努力,我仍然无法修复文件。

我错误地认为元数据是问题所在。在尝试了一系列工具后,我发现它们中的大多数都以文件结尾(在文件中间)停止。

元数据就是它应该的样子。(我成功提取了它)。似乎流已损坏。我尝试重新混合,重新编码注入元数据,他们都没有工作,他们产生的文件仍然停留在同一位置,或者只是流到坏点。

我的问题与此处列出的完全相同:链接

任何帮助将不胜感激。即使我必须用十六进制编辑器破解一些文件,我也会采取任何解决方案。(我尝试删除我认为不好的部分,但这导致它根本无法播放)

我现在有一台 Windows 机器可供我使用,因此运行 Windows 实用程序不再是问题。

flv

5
推荐指数
1
解决办法
1万
查看次数

标签 统计

dalvik ×1

flv ×1

lua ×1

nan ×1

smali ×1