java 反编译问题:同一个文件,某个函数无法反编译,其他函数OK

aibang7 2014-08-19 05:25:02
为什么我反编译apk文件,某个函数出来

private void a(HttpRequest param1) {
// $FF: Couldn't be decompiled
}

这个文件其他地方都反编译出来还算可读。同一个文件,为什么有这么一个函数无法反编译出来(我用的AndroChef Java Decompiler 反编译的apk文件)
另外同样的apk我用jd gui反编译,出来的是这样子的:

private void a(HttpRequest paramHttpRequest)
{
// Byte code:
// 0: aconst_null
// 1: astore 4
// 3: ldc 24
// 5: ldc 26


谁能帮我解决这个的反编译,如果不能反编译这个函数,给个解释也好
...全文
4752 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
用什么混淆的不知道。完全反编译出来应该是不太可能的。
aibang7 2014-08-19
  • 打赏
  • 举报
回复
好吧,我刚入门java, 因为我们都是调的c库,所以倒不关心代码被人反编译。目前有个功能实现不了,想参考一下别人的。 那你知道这个用的是什么混淆吗?我在stackoverflow上看到的是java都可以被反编译出来。 然后有一些混淆技术,是整个文件(class或者jar)进行加密的,这种只对一个函数混淆加密是怎么实现的
引用 3 楼 fangmingshijie 的回复:
类名或者方法名肯定都abcd之类的吧,如果别人混淆了都能反编译出来,那别人的app实现不都被人知道了。
  • 打赏
  • 举报
回复
类名或者方法名肯定都abcd之类的吧,如果别人混淆了都能反编译出来,那别人的app实现不都被人知道了。
aibang7 2014-08-19
  • 打赏
  • 举报
回复
怎么混淆,我看这个文件被混淆了,因为文件名,函数名都是a,b,c,d---z 这个文件中的其他函数也还有一定的逻辑性,但是就少数几个函数(确切说,只有两个函数),没有内容 我在网上看到的说,由于有些代码比较复杂,导致无法反编译出来,这个看起来不太像啊
引用 1 楼 fangmingshijie 的回复:
这一看就是被开发者进行混淆了,所以反编译不出来很正常。
  • 打赏
  • 举报
回复
这一看就是被开发者进行混淆了,所以反编译不出来很正常。
一、简介   AheadLib 是用来生成一个特洛伊DLL的工具,用于分析DLL中的函数参数调用(比如记录Socket send了什么等等)、更改函数功能(随心所欲了:)、更改界面功能(比如在Hook里面生成一个按钮,截获事件等等)。 二、使用   1.用 AheadLib 打开要模拟的 DLL,生成一个 CPP 文件。   2.用 Visual Studio 6.0/.NET 建立一个 DLL 工程,把这个 CPP 文件加入到项目中。   3.使用 Release 方式编译,生成的 DLL 将和原来的 DLL 具有一模一样的导出函数,并且能顺利把这些函数转发到原来的函数中。   4.AheadLib 还可以生成 Hook 代码,用于截取当前进程的所有消息,这样就可以随心所欲地处理各种消息了 (修改第三方程序界面功能的好助手)。 三、备注   1.如果导出函数过多,在 Visual Studio 6.0 中,如果出现编译错误,请在项目属性关闭与编译头功能。   2.如果是 C++ 、C __stdcall、C __fastcall 的方式导出的话,生成的函数声明将会还原成原代码级别(可能需要修改才能编译,比如导出C++类的情况)。此时使用 __declspec(dllexport) 导出 ——不能指定导出序号。   3.如果是 NONAME 或者 C _CDECL 方式导出(比如 DEF 导出,大多数Windows DLL都是这种情况,比如WS2_32等等),则使用#pragma comment(linker, "/EXPORT:...)导出,且指定导出序号。   4.如果系统中没有 DbgHelp.dll,将无法识别 C++ 模式的导出。

67,544

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧