gpt4 book ai didi

objective-c - 反编译 Obj C 框架

转载 作者:太空狗 更新时间:2023-10-30 03:52:48 26 4
gpt4 key购买 nike

我想反编译 iOS Twitter 框架,如果事实上我从 xcode 的模拟器中获取 twitterd 文件,它被预编译为在 x86(?),而不是 ARM 上运行。至于我用的工具http://code.google.com/p/i386codedump/说明:

Usage: code-dump [options] <mach-o-file> where options are:
-a show instance variable offsets
-A show implementation addresses
--arch <arch> choose a specific architecture from a universal binary (ppc, i386, etc.)
-C <regex> only display classes matching regular expression
-H generate header files in current directory, or directory specified with -o
-I sort classes, categories, and protocols by inheritance (overrides -s)
-o <dir> output directory used for -H
-r recursively expand frameworks and fixed VM shared libraries
-s sort classes and categories by name
-S sort methods by name
-t suppress header in output, for testing
-d decompile
-D <arch> decompilation architecture

我有点不明白我需要采取什么选择,我尝试的是:

iMac:documents $ ./code-dump -d twitterd
2011-12-02 18:56:35.885 code-dump[1643:707] feedface, ao: 0
2011-12-02 18:56:35.886 code-dump[1643:707] process: feedface (86000)
/*
* Generated by code-dump 2.0.
*/
This file does not contain any Objective-C runtime information.
2011-12-02 18:56:35.888 code-dump[1643:707] Building lookup table...
2011-12-02 18:56:40.308 code-dump[1643:707] Finished lookup table
/usr/bin/lipo: input file (twitterd) must be a fat file when the -extract option is specified
2011-12-02 18:56:40.868 code-dump[1643:707] CDAssemblyProcessor, 22288 instructions, 0 functions
Segmentation fault: 11

这是什么意思,我需要做什么? :)

最佳答案

This file does not contain any Objective-C runtime information.

这意味着该文件没有定义任何类、协议(protocol)或类别。它可能使用 objective-c,但它不包含有关它使用的类的任何有用信息。

CDAssemblyProcessor, 22288 instructions, 0 functions

这表示文件的符号已被删除。它包含代码,但没有任何函数开始或结束位置的指示,因此无法反编译。

你得到这些是因为 twitterd 不是框架,它是框架中包含的程序。实际的框架代码在 Twitter 文件中。如果你试图反编译它,你至少会得到一些 objective-c 头文件。我建议使用 -H 选项,以便将 header 创建为当前目录中的文件。没有它,headers 会一个接一个地发到你的终端,很难找到任何东西。但是,它很可能也已剥离了大部分符号,因此反编译不会提供太多信息。

关于objective-c - 反编译 Obj C 框架,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8359851/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com