Несколько более грамотный подход. Допустим удалось определить, что искомая функция начинается по адресу 0x000A36E0 (речь об i386), - самое время рассматривать Mach-O Header
Запоминаем - Fat binary, контент i386 части начинается со смещения 0x129000
Loading command на __TEXT,__text сегмент, секцию
File offset - 0x1880
Address offset - 0x2880
Итак:
i386 __TEXT,__text file offset start: 0x129000 + 0x1880 = 0x12A880
Function address offset from section start: 0xA36E0 - 0x2880 = 0xA0E60
Function file offset from start: 0x12A880+0xA0E60 = 0x1CB6E0
P.S. Все адреса и смещения вымышлены, любое совпадение с реальными - случайно (на самом деле нет)
Loading command на __TEXT,__text сегмент, секцию
Address offset - 0x2880
Итак:
i386 __TEXT,__text file offset start: 0x129000 + 0x1880 = 0x12A880
Function address offset from section start: 0xA36E0 - 0x2880 = 0xA0E60
Function file offset from start: 0x12A880+0xA0E60 = 0x1CB6E0
P.S. Все адреса и смещения вымышлены, любое совпадение с реальными - случайно (на самом деле нет)