lua 怎么反编译

lua 怎么反编译

lua 怎么反编译

lua源文件--obfuscate-->lua源文件(混淆后)--compile-->luac文件(带调试用的变量名和行号)--strip-->luac文件(不带调试信息)

lua/luac--加密/打包-->数据文件

数据文件--解包/解密-->lua/luac-->lua虚拟机

跟踪,脱壳,解包,解密,获得

追luaL_loadbuffer

luaL_loadfile

lua_load

应该可以找到

解密函数。

这3个函数,导出解密后的数据,直接就是

文件。如果没编译甚至是

lua源文件。

luaV_execute

Proto*

,想办法用

luaU_dump

导出。luaD_precall

应该没必要搞。

我们有两种方案来处理得到的

得到一个能够执行上述非标

搞清楚编译方式,改lua

源文件,编译出一个,这样做什么都可以,还能编译出对应的

luadec

如果能找到

lua51。dll

之类的就直接调用吧。但是,只能用于导出

对比文件格式,或者执行找到的几个关键函数。

转换成标准格式

luac,正所谓:山不来就我,我便去就山

是怎么做的:

header

#define

LUA_SIGNATURE

"\033Lua"

lua。h

header

改数据类型

luaconf。h

#define

LUA_NUMBER_DOUBLE

#define

LUA_NUMBER

double

LUA_NUMBER

float

LUA_NUMBER_SCAN

LUA_NUMBER_FMT

"%。7g"

l_mathop(x)

(x##f)

lua_str2number

strtof

OpCode

"ORDER

"ORDER

change

these

enums

OpCode;

lopcodes。h

const

lu_byte

luaP_opmodes[];

lopcodes。c

lua文件怎么反编译,用什么软件,具体怎么做?求教程

lua 怎么反编译

luadec,不过,反编译后的变量名和注释都没有了。你确定你看得懂?

楼上的有点技术好不好=

楼主指的是luac编译成字节码之后的文件。

如果要反编译也不是不行,但是必须要是lua5。1的luac编译出的文件才能反编译;其次,如果是愤怒的小鸟免谈,它自己编译了lua和luac的规则,基本反编译很难。

如果符合要求的话去下载luadec工具吧。

如何将反编译android代码,并添加到eclipse中查看

lua 怎么反编译

eclipse中看代码非常方便,因此将反编译后的android代码添加到

eclipse是很有必要的。

1、使用dex2jar工具,将apk反编译成。jar后缀的文件(该文件是所有。class文件的压缩包);

2、使用jd-gui。exe工具,打开上一步骤生成的。jar后缀的文件;使用File->Save

sources菜单,将。jar文件包中的所有文件以java源码文件形式导出。

3、eclipse中创建android工程:File->new->Project->android->Android

Project

Existing

code;在Root

Directory:中填写AndroidManifest。xml所在的文件夹路径。

4、将第2步骤中生成的所有文件和文件夹一起copy到第3步骤生成的工程中的src文件夹中(你也可以在工程目录下随便创建一个目录,然后将java源码文件扔进出,然后在工程目录下面的。classpath文件中添加该文件夹的目录路径)。

一般代码都混淆了

反编译出来的基本没法看

更别谈导入eclipse了

再看看别人怎么说的。

反编译android代码并在eclipse中查看:

apk反编译得到程序的源代码、图片、XML配置、语言资源等文件

下载上述工具中的apktool,解压得到3个文件:aapt。exe,apktool。bat,apktool。jar

,将需要反编译的APK文件放到该目录下,

打开命令行界面(运行-CMD)

,定位到apktool文件夹,输入以下命令:apktool。bat

test。apk

在改目录下会生成一个classes_dex2jar。jar的文件,然后打开工具jd-gui文件夹里的jd-gui。exe,之后用该工具打开之前生成的classes_dex2jar。jar文件,便可以看到源码了,效果如下:

有人能帮我反编译一个Lua程序吗??我重金感谢! Q Q..

lua 怎么反编译

一般软件都有混淆器编译,就是为了防止反编译。所以你反编译出来,就不会得到预期的结果,比如类名为a,b,c,这样的代码是没法看的

推荐下载开源的

反编译Android APK的具体步骤是怎样的

lua 怎么反编译

1、配置好JAVA环境变量,下载:apktool

解压的文件放在C盘根目录的apktool文件夹里(apktool文件夹自己创立)

2打开命令提示符,(开始-运行-输入cmd)

3输入:cd

\apktool

系统指令到了apktool文件夹(这里就是为什么要把解压的apktool解压的文件放到apktool文件夹的原因,当然你也可以自命名文件夹的名称,那么比如arc,那么指令就变成了:cd

前提是你必须把apktool解压的文件放到这个文件夹里面)

4使用RE管理器把系统里面的framework-res。apk

与SystemUI。apk

提取出来放在apktool文件夹里面

如果只是想反编译framework-res。apk

输入apktool

framework-res。apk(框架的建立)

6开始最重要的反编译,输入指令,apktool

framework-res。apk

(反编辑的APK一定要用没换过图片的,否则回编辑失败)

7最后反编译完成

修改代码完成后,输入代码:apktool

framework-res

即可完成回编译

8回编译后的新的

apk在framework/dis

文件夹里面

9如果反编译的是系统文件,比如,SystemUI。apk

那么必须进行挂载框架,反编译时,必须敲入一下命令:(然后再重复7-9步骤)

apktool

framework-res。apk

apktool

SystemUI。apk

10对于三星手机(比如9100、9108/9100G),如果反编译SystemUI。apk要敲入一下命令进行框架挂载apktool

framework-res。apk

apktool

twframework-res。apk

apktool

SystemUI。apk

11回编译的命令是

apktool

(没有后面的apk后缀)反编译的命令是

apktool

(有后面的apk)

反编译步骤方法:

一、apk反编译得到程序的源代码、图片、XML配置、语言资源等文件

下载上述工具中的apktool,解压得到3个文件:aapt。exe,apktool。bat,apktool。jar

,将需要反编译的APK文件放到该目录下,

打开命令行界面(运行-CMD)

如何反编译Android APK包?

反编译apk常用的有两种方式:

使用apktool

使用dex2jar

JD-GUI

使用apktool

apktool可以从googlecode上下载,如下图:

对于Windows用户下载上面红色圈圈两个包即可,下载下来后解压到同一个目录下:

我们把下载下来的apk放在apk目录下,然后就可以执行命令做反编译了:

如果一次性需要反编译多个apk文件,可以写个批处理:

反编译结果:

这里smali下面是中间代码(smali将Android字节码用可阅读的字符串形式表现出来的一种语言,可以称之为Android字节码的反汇编语言),lib下面主要是so库,res和assets下是图片和资源文件,而AndroidManifest。xml是经过解码的,其中包括了包名、版本、权限、引用库等信息。

smali下面的内容直接阅读比较困难,可以使用smali2java(https://github。com/demitsuri/smali2java)进行转换,有个哥们把smali2java与apktool做了整合,做了一个smali2javagui工具,可以直接打开apk或jar文件查看其内容(http://forum。xda-developers。com/showthread。php?t=2430413)。

使用dex2jar

JD-GUI

dex2jar:

把dex文件反编译为jar文件的工具。

http://code。google。com/p/dex2jar/downloads/list

JD-GUI:

把jar反编译为java的工具。

http://jd。benow。ca/

step1:

从apk中解压出classes。dex文件

step2:通过dex2jar将dex文件转换为jar

转换结果:

使用JD-GUI查看jar包

通过dex2jar

JD-GUI,用于查看源码比较方便,但弊端是不能对AndroidManifest。xml和资源文件进行解码。

求反编译个lua文件可以吗

楼上的有点技术好不好=

楼主指的是luac编译成字节码之后的文件。

如果要反编译也不是不行,但是必须要是lua5。1的luac编译出的文件才能反编译;其次,如果是愤怒的小鸟免谈,它自己编译了lua和luac的规则,基本反编译很难。

如果符合要求的话去下载luadec工具吧。

lua反编译是存在

不过反编译得到的不是lua源文件

而是一个类似汇编的二进制代码

你可以去载一个luadisasm

就知道反编译得到的是什么东西了

lua文件是文本存储的,为什么需要反编译呢?

notepad++打开

如何使用反编译软件破解android的布局文件

apktool,作用:资源文件获取,可以提取出图片文件和布局文件进行使用查看

dex2jar,作用:将apk反编译成java源码(classes。dex转化成jar文件)

jd-gui,作用:查看APK中classes。dex转化成出的jar文件,即源码文件

反编译流程:

一、apk反编译得到程序的源代码、图片、XML配置、语言资源等文件

下载上述工具中的apktool,解压得到3个文件:aapt。exe,apktool。bat,apktool。jar

,将需要反编译的APK文件放到该目录下,

打开命令行界面(运行-CMD)

,定位到apktool文件夹,输入以下命令:apktool。bat

test。apk

(命令中test。apk指的是要反编译的APK文件全名,test为反编译后资源文件存放的目录名称,即为:apktool。bat

[apk文件

[输出文件夹])

获取成功之后,发现在文件夹下多了个test文件,点击便可以查看该应用的所有资源文件了。

如果你想将反编译完的文件重新打包成apk,那你可以:输入apktool。bat

test(你编译出来文件夹)便可

之后在之前的test文件下便可以发现多了2个文件夹:

build

dist(里面存放着打包出来的APK文件)

二、Apk反编译得到Java源代码

下载上述工具中的dex2jar和jd-gui

将要反编译的APK后缀名改为。rar或则

zip,并解压,得到其中的额classes。dex文件(它就是java文件编译再通过dx工具打包而成的),将获取到的classes。dex放到之前解压出来的工具dex2jar-0。0。9。15

文件夹内,

在命令行下定位到dex2jar。bat所在目录,输入dex2jar。bat

classes。dex,

在改目录下会生成一个classes_dex2jar。jar的文件,然后打开工具jd-gui文件夹里的jd-gui。exe,之后用该工具打开之前生成的classes_dex2jar。jar文件,便可以看到源码了

1。下载反编译工具

需要下载四个工具:dex2jar、jd-gui、apktool、apktool-install-windows-r05-ibot

dex2jar:将apk中的classes。dex转化成jar

如何反编译Android 的apk/dex/odex,获得源码

反编译普通的APK文件:

对于普通的APK/DEX文件的反编译,其实工具有很多,

ByteCode

Viewer:

一个可视化的集成工具,说实话,不太好用,不够稳定,生成代码质量中等。

dex2jar

jd_gui:

这两个工具组合还可以,

用起来比ByteCode

Viewer麻烦一些,但比较稳定,生成代码质量中等。

反编译ODEX文件:

Android

Lollipop以后,Google用ART代替了以前的Dalvik,对于普通的app来说我们仍然可以用上面的方法来把dex文件反编译成Java源代码。但对于系统预装的App,特别是类似应用商店,播放器等,

你会发现这些应用的apk文件中找不到对应的classes。dex文件,而是会发现在其子目录下有个。odex文件。

那如何反编译这个odex文件呢?我通过google查了查,知道应该用baksmali,但从github上下载了几个版本都不行,报各种不同错误。

具体方法如下:

下载工具包,

解压缩到本地。

这里的baksmali的版本是32313133353236313431303231363533e58685e5aeb9313333613138392。0。3。

不同版本的baksmali针对的Android内核不同。有时候高版本反倒不好用。

打开工具所在目录,

按住shift键,

点击鼠标右键,打开Windows命令窗口

把odex文件拷贝到该目录

在命令窗口运行:

oat2dex。bat

*。odex

正常情况下,应该显示OK等信息。如果报错的话,说明这个文件无法转换,后面的也不用试了。

oat2dex。bat

*。odex

temp。dex

运行后会创建一个temp。dex文件。

baksmali-2。0。3。jar

temp。dex

source

运行后会创建一个source的文件夹,并将temp。dex反编译到该文件夹。-a

表明的是Android内核的版本21

small-2。0。3。jar

source

classes。dex

反编译为classes。dex文件。

需要注意的是:由这种方式反编译成的classe

有人搞过安卓下lua的扩展库吗?成功了吗?

有人搞过安卓下lua的扩展库so吗?成功了吗?

很久之前,我写了一个小教程,可以顺利地在android里使用lua~

但是,有个问题,就是,如果用LdoFile函数来读取lua脚本,就会一直找不到路径。

目前,我找到了一个可解燃眉之急的办法,当然喇,网上已经有这种方法了,我稍微整理一下。

首先,请确认你已经能够成功地在android上使用lua脚本,否则,你可以看看这篇文章:

[小教程]解决android中加入Lua脚本后安装APK报错的问题。

(置顶的日志)

好,开始。

1。创建android项目,在asset资源文件夹下创建一个lua文件夹

2。新建一个lua文件,放到

asset\lua目录下,如asset\lua\hello。lua。注意咯,我们要把lua文件放到asset目录,很重要~

--文件名:hello。lua

--一个简单的函数,计算两个数相加

function

plus(a,

return

--一个稍微不太简单的简单的函数,参数是一个Java对象,函数内容是调用Java对象value的函数

function

heihei(value)

value:inc();

value:inc();

return

value;

3。理论上,使用L。LdoFile("asset/lua/hello。lua");就可以加载lua文件了,但是实际上加载不成功(为什么?我暂时还不知道,要么等我变强,要么你去变强,然后告诉我,嘻嘻~)

4。呐,凡事呢,都有解决的办法,咱们用L。LdoString()函数来代替LdoFile()好不好?~好~!

5。怎么代替呢?对了~聪明的你猜对了~把hello。lua文件用IO流读取出来,然后保存到字符串里,然后就可以调用LdoString()函数了~

6。Java代码如下:

public

class

HelloLuaActivity

extends

Activity

private

final

String

="HelloLuaActivity";

@Override

public

onCreate(Bundle

savedInstanceState)

super。onCreate(savedInstanceState);

setContentView(R。layout。mai

发表评论