首页
社区
课程
招聘
[求助]求教lua反编译之后如何编译回原来的加密
2016-10-18 20:22 6190

[求助]求教lua反编译之后如何编译回原来的加密

2016-10-18 20:22
6190
这是因为梦幻西游手游版修改了lua虚拟机中的opcode(字节码)

                      lua5.1.4        梦幻西游

OP_MOVE            0            25
OP_LOADK            1            19
OP_LOADBOOL            2            9
OP_LOADNIL            3            0
OP_GETUPVAL            4            22
OP_GETGLOBAL            5            28
OP_GETTABLE            6            20
OP_SETGLOBAL            7            26
OP_SETUPVAL            8            30
OP_SETTABLE            9            15
OP_NEWTABLE           10            5
OP_SELF            11            27
OP_ADD            12            33
OP_SUB            13            1
OP_MUL            14            29
OP_DIV            15            11
OP_MOD            16            13
OP_POW            17            23
OP_UNM            18            2
OP_NOT            19            31
OP_LEN            20            6
OP_CONCAT            21            34
OP_JMP            22            35
OP_EQ            23            36
OP_LT            24            17
OP_LE            25            7
OP_TEST          26            16
OP_TESTSET            27            4
OP_CALL            28            21
OP_TAILCALL            29            18
OP_RETURN            30            12
OP_FORLOOP            31            14
OP_FORPREP            32            10
OP_TFORLOOP            33            24
OP_SETLIST            34            8
OP_CLOSE            35            32
OP_CLOSURE            36            3
OP_VARARG            37            37

这是lua原本的opcode 对应梦幻手游的opcode顺序

我按照这个顺序反编译出来了源代码

但是卡在了用这个顺序编译回去

然后我按照opcode对照表修改了lua源代码的lopcodes.h、lopcodes.c、以及lvm.c里面的顺序。然后编译luac.exe 然后用luac.exe对lua脚本源码进行编译。发现编译之后的跟反编译之前的不一样。这是什么原因。请指导一下谢谢。
或者谁可以按照这个opcode顺序编译好的LUAC.exe吗。谢谢

[培训]《安卓高级研修班(网课)》月薪三万计划,掌 握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法

收藏
点赞0
打赏
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回