Я пытаюсь сделать Dyld Extractor похожим на dyld_decache и dsc_extractor . Но у меня возникают проблемы при разборе раздела __objc_selrefs.
В целях тестирования я использовал libsystem_trace.dylib и смог найти и проанализировать его mach_header, а также его сегменты и разделы. Но, глядя на раздел __DATA .__ objc_selrefs, я нахожу указатели типа 0x201b8647fc8 и 0x201b860d716, которые слишком высоки и указывают вне кэша.
В отличие от этого, в обычном файле Macho указатели в разделе __objc_selrefs указывают на соответствующая им строка в разделе __TEXT .__ objc_methname.
Я знаю, что dyld скользит и перебазирует разделы, но после долгих кований я все еще не смог исправить указатели. Любое руководство будет удивительным, особенно если учесть, как мало там ресурсов.