这个 dyld_shared_cache_armXX 32位的提取就不用描述了,百度一堆方法有dyld_decache工具
提取动态库
- 首先要将设备里的dyld_shared_cache_arm64文件拷贝到本机。
路径/System/Library/Caches/com.apple.dyld
里就会看到 - 从苹果的开源网站里面下载dyld源码,这里下载的是最新的dyld-519.2.2.tar.gz版本。在高的一些dyld开源版本会提示找不到一些头文件,这个版本就可以提取。
- 解压下载的dyld压缩包,进入目录打开
dyld-519.2.2/launch-cache/dsc_extractor.cpp
找到main函数 -
修改dsc_extractor.cpp文件,将#if预处理指令的条件判断0改为1。
- 终端进入到 dyld-519.2.2/launch-cache目录 编译dsc_extractor.cpp文件,执行下面命令
clang++ -o dsc_extractor ./dsc_extractor.cpp dsc_iterator.cpp
- 运行dsc_extractor开始提取动态库
./dsc_extractor dyld_shared_cache_arm64文件路径 输出动态库的文件夹路径
-
提取结果