SkillAgentSearch skills...

ICDump

A modern Objective-C class dump based on LIEF and LLVM.

Install / Use

/learn @romainthomas/ICDump
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

<p align="center" > <img width="100%" src=".github/featured.webp"/><br /> </p> <br /> <br /> <h1><b>iCDump is now part of <a href="https://lief.re/doc/latest/extended/intro.html">LIEF extended</a></b></h1> <br /> <br />

iCDump

iCDump is a modern and cross-platform Objective-C class dump. Compared to existing tools, iCDump can run independently from the Apple ecosystem and it exposes Python bindings.

It relies on LIEF to access the Objective-C metadata and LLVM to output the results.

Swift support is on-going but not public yet.

Python API

iCDump exposes a Python API through nanobind. One can dump Objective-C metadata as follows:

import icdump
metadata = icdump.objc.parse("./RNCryptor.bin")

print(metadata.to_decl())
@interface RNCryptor.RNCryptor.Encryptor{
    NSObject * encryptor;
}
@end
@interface RNCryptor.RNCryptor.Decryptor{
    NSObject * decryptors;
    NSObject * buffer;
    NSObject * decryptor;
    NSObject * password;
}
@end
...

Or inspect Objective-C structures using the different properties:

for cls in metadata.classes:
    print(cls.demangled_name)
    for prop in cls.properties:
        print(prop.name)

Contact

Credits

License

iCDump is released under the Apache License, Version 2.0

View on GitHub
GitHub Stars170
CategoryDevelopment
Updated1mo ago
Forks9

Languages

C++

Security Score

100/100

Audited on Mar 2, 2026

No findings