Need help with IDAObjcTypes?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

PoomSmart
157 Stars 23 Forks MIT License 213 Commits 1 Opened issues

Description

A collection of types & functions definitions useful for Objective-C binaries analysis.

Services available

!
?

Need anything else?

Contributors list

# 85,767
Objecti...
apt
Xcode
jailbre...
160 commits
# 54,810
Objecti...
iOS
vala
vscode
1 commit
# 16,572
C++
qq
vulkan
embedde...
1 commit
# 281,271
C
apt
Xcode
jailbre...
1 commit

IDAObjcTypes

A collection of (public and private) types and functions definitions useful for Objective-C binaries analysis.

Why even?

Would you rather re-define the same functions or types over and over as you work with different binaries?

Usage (IDA Pro, 7.2+ recommended)

Go to

File > Load file > Parse C header file
then choose
IDA.h
to import everything at once.

Or, run this IDA command:

idaapi.idc_parse_types("/path/to/IDAObjcTypes/IDA.h", idc.PT_FILE)

Usage (Ghidra)

  1. Go to
    File > Parse C Source
    .
  2. (Go to 6. if it's not the first time you do this) Clone
    objc_mac_carbon.prf
    profile into a new profile, called
    OBJC.prf
    , for example.
  3. Remove everything in
    Source files to parse
    , and add
    IDA.h
    to the list.
  4. Add two additional flags:
    -D__EA64__ -DGHIDRA
    to Parse Options.
  5. Save
    OBJC.prf
    profile as you might use it later.
  6. Click
    Parse to Program
    , click
    Proceed
    if anything pops up.
  7. Check
    Data Type Manager
    window (at bottom-left), (long) right-click at
     and select 
    Apply Function Data Types
    .

Ghidra limitation

You have to manually specify the size of enum members if what you get is incorrect.

Included Frameworks/Libraries

More to be added as the owner reverses more binaries. - AppSupport - AssetsLibraryServices - AudioToolbox - AVFoundation - CommonCrypto - CoreAnimation - CoreAudio - CoreFoundation - CoreGraphics - CoreMedia - CoreServices - CoreText - CoreVideo - CydiaSubstrate (if you ever want to RE tweaks) - Darwin - Foundation - GraphicsServices - IOKit - IOSurface - Kernel - MediaRemote - MobileGestalt - Security - SoftLinking - SpringBoard - SpringBoardHome - Swift (WIP, PRs welcome) - System (libSystem) - SystemConfiguration - UIKit - dyld - icu - objc - os - pthread - sandbox - sqlite - xpc

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.