Skip to main content

A modern Objective-C class dump

Project description

Introduction

This project aims at providing a cross-platform utility to dump Objective-C and Swift metadata from 64-bits Mach-O binaries.

Getting Started

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

# Iterate over all the Objective-C interfaces (classes)
for cls in metadata.classes:
    print(cls.demangled_name)
PodsDummy_RNCryptor_iOS
RNCryptor.RNCryptor.Encryptor
RNCryptor.RNCryptor.Decryptor
RNCryptor.RNCryptor.FormatV3
RNCryptor.RNCryptor.EncryptorV3
RNCryptor.RNCryptor.DecryptorV3
RNCryptor.Engine
RNCryptor.(DecryptorEngineV3 in _FFCD8353248C1C3EE416689E2680CC5C)
RNCryptor.(HMACV3 in _FFCD8353248C1C3EE416689E2680CC5C)
RNCryptor.OverflowingBuffer
# Dump the metadata as a header declaration
print(metadata.to_decl())
@interface RNCryptor.RNCryptor.Encryptor{
    NSObject * encryptor;
}
@end
@interface RNCryptor.RNCryptor.Decryptor{
    NSObject * decryptors;
    NSObject * buffer;
    NSObject * decryptor;
    NSObject * password;
}
@end
...

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

icdump-1.1.0-cp311-cp311-manylinux_2_27_x86_64.whl (9.4 MB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.27+ x86-64

icdump-1.1.0-cp311-cp311-macosx_12_0_x86_64.whl (12.9 MB view hashes)

Uploaded CPython 3.11 macOS 12.0+ x86-64

icdump-1.1.0-cp311-cp311-macosx_12_0_arm64.whl (11.9 MB view hashes)

Uploaded CPython 3.11 macOS 12.0+ ARM64

icdump-1.1.0-cp310-cp310-manylinux_2_27_x86_64.whl (9.4 MB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.27+ x86-64

icdump-1.1.0-cp310-cp310-macosx_12_0_x86_64.whl (12.9 MB view hashes)

Uploaded CPython 3.10 macOS 12.0+ x86-64

icdump-1.1.0-cp310-cp310-macosx_12_0_arm64.whl (11.9 MB view hashes)

Uploaded CPython 3.10 macOS 12.0+ ARM64

icdump-1.1.0-cp39-cp39-manylinux_2_27_x86_64.whl (9.4 MB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.27+ x86-64

icdump-1.1.0-cp39-cp39-macosx_12_0_x86_64.whl (12.9 MB view hashes)

Uploaded CPython 3.9 macOS 12.0+ x86-64

icdump-1.1.0-cp39-cp39-macosx_12_0_arm64.whl (11.9 MB view hashes)

Uploaded CPython 3.9 macOS 12.0+ ARM64

icdump-1.1.0-cp38-cp38-manylinux_2_27_x86_64.whl (9.4 MB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.27+ x86-64

icdump-1.1.0-cp38-cp38-macosx_12_0_x86_64.whl (12.9 MB view hashes)

Uploaded CPython 3.8 macOS 12.0+ x86-64

icdump-1.1.0-cp38-cp38-macosx_12_0_arm64.whl (11.9 MB view hashes)

Uploaded CPython 3.8 macOS 12.0+ ARM64

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page