icdump


Nameicdump JSON
Version 1.1.0 PyPI version JSON
download
home_pagehttps://github.com/romainthomas/iCDump
SummaryA modern Objective-C class dump
upload_time2023-01-04 09:31:47
maintainer
docs_urlNone
authorRomain Thomas
requires_python>=3.8
licenseApache License 2.0
keywords reverse-engineering objective-c
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            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
===============

.. code-block:: python

   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)

.. code-block:: console

  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

.. code-block:: python

  # Dump the metadata as a header declaration
  print(metadata.to_decl())

.. code-block:: console

  @interface RNCryptor.RNCryptor.Encryptor{
      NSObject * encryptor;
  }
  @end
  @interface RNCryptor.RNCryptor.Decryptor{
      NSObject * decryptors;
      NSObject * buffer;
      NSObject * decryptor;
      NSObject * password;
  }
  @end
  ...

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/romainthomas/iCDump",
    "name": "icdump",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": "",
    "keywords": "reverse-engineering,objective-c",
    "author": "Romain Thomas",
    "author_email": "me@romainthomas.fr",
    "download_url": "",
    "platform": null,
    "description": "Introduction\n============\n\nThis project aims at providing a cross-platform utility to dump Objective-C and Swift metadata\nfrom 64-bits Mach-O binaries.\n\nGetting Started\n===============\n\n.. code-block:: python\n\n   import icdump\n   metadata = icdump.objc.parse(\"./RNCryptor.bin\")\n\n   # Iterate over all the Objective-C interfaces (classes)\n   for cls in metadata.classes:\n       print(cls.demangled_name)\n\n.. code-block:: console\n\n  PodsDummy_RNCryptor_iOS\n  RNCryptor.RNCryptor.Encryptor\n  RNCryptor.RNCryptor.Decryptor\n  RNCryptor.RNCryptor.FormatV3\n  RNCryptor.RNCryptor.EncryptorV3\n  RNCryptor.RNCryptor.DecryptorV3\n  RNCryptor.Engine\n  RNCryptor.(DecryptorEngineV3 in _FFCD8353248C1C3EE416689E2680CC5C)\n  RNCryptor.(HMACV3 in _FFCD8353248C1C3EE416689E2680CC5C)\n  RNCryptor.OverflowingBuffer\n\n.. code-block:: python\n\n  # Dump the metadata as a header declaration\n  print(metadata.to_decl())\n\n.. code-block:: console\n\n  @interface RNCryptor.RNCryptor.Encryptor{\n      NSObject * encryptor;\n  }\n  @end\n  @interface RNCryptor.RNCryptor.Decryptor{\n      NSObject * decryptors;\n      NSObject * buffer;\n      NSObject * decryptor;\n      NSObject * password;\n  }\n  @end\n  ...\n",
    "bugtrack_url": null,
    "license": "Apache License 2.0",
    "summary": "A modern Objective-C class dump",
    "version": "1.1.0",
    "split_keywords": [
        "reverse-engineering",
        "objective-c"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "a8117544b04d9b31fd27910e273b8ba105945effff76d69fa58c55c1a039d99b",
                "md5": "7055c39cc76b236c9f0ea9227c09e4b6",
                "sha256": "6961409be06da102c62a044f580023ce238fc94b69cf252bf08499a8f88576fa"
            },
            "downloads": -1,
            "filename": "icdump-1.1.0-cp310-cp310-macosx_12_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "7055c39cc76b236c9f0ea9227c09e4b6",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.8",
            "size": 11915667,
            "upload_time": "2023-01-04T09:31:47",
            "upload_time_iso_8601": "2023-01-04T09:31:47.413468Z",
            "url": "https://files.pythonhosted.org/packages/a8/11/7544b04d9b31fd27910e273b8ba105945effff76d69fa58c55c1a039d99b/icdump-1.1.0-cp310-cp310-macosx_12_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "01d952194054e23a377426d0e6bbd03bb04a770a63ed9306ba319e01c9fb5e58",
                "md5": "890b7d8f0a8102f803a0048bc9530e66",
                "sha256": "ff00a9a74f74a676a6d63586d50fdb6c7732415d44576618f5b929bc3b868bd7"
            },
            "downloads": -1,
            "filename": "icdump-1.1.0-cp310-cp310-macosx_12_0_x86_64.whl",
            "has_sig": false,
            "md5_digest": "890b7d8f0a8102f803a0048bc9530e66",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.8",
            "size": 12899228,
            "upload_time": "2023-01-04T09:31:55",
            "upload_time_iso_8601": "2023-01-04T09:31:55.757209Z",
            "url": "https://files.pythonhosted.org/packages/01/d9/52194054e23a377426d0e6bbd03bb04a770a63ed9306ba319e01c9fb5e58/icdump-1.1.0-cp310-cp310-macosx_12_0_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "464e401c8ea11a0ed5372e58b04fe766b170f47fea6be0f019531963debde3e1",
                "md5": "7e544b8819bbf5e7ff7cb8996d64bb70",
                "sha256": "a0bd377f6177e3515bf207659e5712c9ccfcb47842e5ad6ad90cc6c61eae595a"
            },
            "downloads": -1,
            "filename": "icdump-1.1.0-cp310-cp310-manylinux_2_27_x86_64.whl",
            "has_sig": false,
            "md5_digest": "7e544b8819bbf5e7ff7cb8996d64bb70",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.8",
            "size": 9416663,
            "upload_time": "2023-01-04T09:32:01",
            "upload_time_iso_8601": "2023-01-04T09:32:01.049863Z",
            "url": "https://files.pythonhosted.org/packages/46/4e/401c8ea11a0ed5372e58b04fe766b170f47fea6be0f019531963debde3e1/icdump-1.1.0-cp310-cp310-manylinux_2_27_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "92812c9a2e2801d727fad01f94641448fb324c3d794f6e96bc8fb138e550b32c",
                "md5": "b01352c3bf4a7b471986afaf02b6f66f",
                "sha256": "01b58952ad86affdfdfdc1a54877bff109fbab01a0837b9230ee83715c4b76f5"
            },
            "downloads": -1,
            "filename": "icdump-1.1.0-cp311-cp311-macosx_12_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "b01352c3bf4a7b471986afaf02b6f66f",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.8",
            "size": 11914893,
            "upload_time": "2023-01-04T09:32:07",
            "upload_time_iso_8601": "2023-01-04T09:32:07.513163Z",
            "url": "https://files.pythonhosted.org/packages/92/81/2c9a2e2801d727fad01f94641448fb324c3d794f6e96bc8fb138e550b32c/icdump-1.1.0-cp311-cp311-macosx_12_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "deb6d4eb697309b397e8ca5a4e6f0b236daf8c470b2090b8e21100f5d7813cf4",
                "md5": "a540fe39df60831085f5b9001b4c4077",
                "sha256": "7fff6ba1399fb8417ca632425be367b45b6682408a34631ae12402ffef38f0e9"
            },
            "downloads": -1,
            "filename": "icdump-1.1.0-cp311-cp311-macosx_12_0_x86_64.whl",
            "has_sig": false,
            "md5_digest": "a540fe39df60831085f5b9001b4c4077",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.8",
            "size": 12899097,
            "upload_time": "2023-01-04T09:32:14",
            "upload_time_iso_8601": "2023-01-04T09:32:14.897009Z",
            "url": "https://files.pythonhosted.org/packages/de/b6/d4eb697309b397e8ca5a4e6f0b236daf8c470b2090b8e21100f5d7813cf4/icdump-1.1.0-cp311-cp311-macosx_12_0_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "3cae6ec6f4db0b1bad86f06faf4670074b76ffb8a4f02bd98f802c2efedfc92d",
                "md5": "1ee729637bb0f2e8f246e5d80d7b14a8",
                "sha256": "cd43706e0fe1e3e32c2e6a0b0e66581ad9327e9d28f9c61eeb866c3eff6d2117"
            },
            "downloads": -1,
            "filename": "icdump-1.1.0-cp311-cp311-manylinux_2_27_x86_64.whl",
            "has_sig": false,
            "md5_digest": "1ee729637bb0f2e8f246e5d80d7b14a8",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.8",
            "size": 9416622,
            "upload_time": "2023-01-04T09:32:20",
            "upload_time_iso_8601": "2023-01-04T09:32:20.419445Z",
            "url": "https://files.pythonhosted.org/packages/3c/ae/6ec6f4db0b1bad86f06faf4670074b76ffb8a4f02bd98f802c2efedfc92d/icdump-1.1.0-cp311-cp311-manylinux_2_27_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "cea34cc3947454bd8e509916c59553e54f8e76e364182adcb13a8c23cfe06a8c",
                "md5": "ba466b44b80aed9d3138e6059bd6d4c8",
                "sha256": "539e77c3ba916635a93dc57247446befc49938c37a2c9cdb19622cb9ba7f10c0"
            },
            "downloads": -1,
            "filename": "icdump-1.1.0-cp38-cp38-macosx_12_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "ba466b44b80aed9d3138e6059bd6d4c8",
            "packagetype": "bdist_wheel",
            "python_version": "cp38",
            "requires_python": ">=3.8",
            "size": 11914504,
            "upload_time": "2023-01-04T09:32:26",
            "upload_time_iso_8601": "2023-01-04T09:32:26.747921Z",
            "url": "https://files.pythonhosted.org/packages/ce/a3/4cc3947454bd8e509916c59553e54f8e76e364182adcb13a8c23cfe06a8c/icdump-1.1.0-cp38-cp38-macosx_12_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "fc0707a616516d7a52f844d6006af01e56ffc5ffece088adc30aaf32cb5da98e",
                "md5": "60dbdd4611e3d0fc0bb1c1e02ca1e7d6",
                "sha256": "78c41f0a9a0e3e596c003aca3ed5bff210b0af21f751ba67d988723ba0bfc35a"
            },
            "downloads": -1,
            "filename": "icdump-1.1.0-cp38-cp38-macosx_12_0_x86_64.whl",
            "has_sig": false,
            "md5_digest": "60dbdd4611e3d0fc0bb1c1e02ca1e7d6",
            "packagetype": "bdist_wheel",
            "python_version": "cp38",
            "requires_python": ">=3.8",
            "size": 12899368,
            "upload_time": "2023-01-04T09:32:32",
            "upload_time_iso_8601": "2023-01-04T09:32:32.412572Z",
            "url": "https://files.pythonhosted.org/packages/fc/07/07a616516d7a52f844d6006af01e56ffc5ffece088adc30aaf32cb5da98e/icdump-1.1.0-cp38-cp38-macosx_12_0_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "91c49e8f23e957d83135a8290678caa1ede7e94fc84a4b03d66bb471380b60cc",
                "md5": "168bfe206cdef4180ffeeb1c33048579",
                "sha256": "5f740b5f6aa430b117acab66226c5382ef81593824b9aec5af0c5aa71acd29e1"
            },
            "downloads": -1,
            "filename": "icdump-1.1.0-cp38-cp38-manylinux_2_27_x86_64.whl",
            "has_sig": false,
            "md5_digest": "168bfe206cdef4180ffeeb1c33048579",
            "packagetype": "bdist_wheel",
            "python_version": "cp38",
            "requires_python": ">=3.8",
            "size": 9417572,
            "upload_time": "2023-01-04T09:32:39",
            "upload_time_iso_8601": "2023-01-04T09:32:39.130500Z",
            "url": "https://files.pythonhosted.org/packages/91/c4/9e8f23e957d83135a8290678caa1ede7e94fc84a4b03d66bb471380b60cc/icdump-1.1.0-cp38-cp38-manylinux_2_27_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "2254f9fd3cae77b93a65414ab6405a88c49566b4f67737ba0e5a2d7e16bb9c97",
                "md5": "6cf727c532c7aa0cc9e6f7f34c09d761",
                "sha256": "2263e6714d8cdaf76c666b060a475a2f5ac2b1eb37df8a45c3f8aca07c1ed930"
            },
            "downloads": -1,
            "filename": "icdump-1.1.0-cp39-cp39-macosx_12_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "6cf727c532c7aa0cc9e6f7f34c09d761",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.8",
            "size": 11915624,
            "upload_time": "2023-01-04T09:32:46",
            "upload_time_iso_8601": "2023-01-04T09:32:46.417016Z",
            "url": "https://files.pythonhosted.org/packages/22/54/f9fd3cae77b93a65414ab6405a88c49566b4f67737ba0e5a2d7e16bb9c97/icdump-1.1.0-cp39-cp39-macosx_12_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "00f85486b8e03ba2debd30e34ee62fe9cc857d0be0148190324410ac804375e4",
                "md5": "01cd9d47c5cd9e05c6b585f31fd47e76",
                "sha256": "ea4ca2ec840cb84a529be0dcee780ec70052fad53c7b5e63fdbdd097d3ee1210"
            },
            "downloads": -1,
            "filename": "icdump-1.1.0-cp39-cp39-macosx_12_0_x86_64.whl",
            "has_sig": false,
            "md5_digest": "01cd9d47c5cd9e05c6b585f31fd47e76",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.8",
            "size": 12899196,
            "upload_time": "2023-01-04T09:32:52",
            "upload_time_iso_8601": "2023-01-04T09:32:52.363352Z",
            "url": "https://files.pythonhosted.org/packages/00/f8/5486b8e03ba2debd30e34ee62fe9cc857d0be0148190324410ac804375e4/icdump-1.1.0-cp39-cp39-macosx_12_0_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "0cc121a3370417234a6df5f66d91608a1784a925571b3449ae90e049ef59555e",
                "md5": "5c62ab640da2238264860a61b74d677c",
                "sha256": "7ba55a8ba1d53b0e62fe797cd86cd6be72eb670efe326731cc71b9ee100e93de"
            },
            "downloads": -1,
            "filename": "icdump-1.1.0-cp39-cp39-manylinux_2_27_x86_64.whl",
            "has_sig": false,
            "md5_digest": "5c62ab640da2238264860a61b74d677c",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.8",
            "size": 9416507,
            "upload_time": "2023-01-04T09:32:56",
            "upload_time_iso_8601": "2023-01-04T09:32:56.800171Z",
            "url": "https://files.pythonhosted.org/packages/0c/c1/21a3370417234a6df5f66d91608a1784a925571b3449ae90e049ef59555e/icdump-1.1.0-cp39-cp39-manylinux_2_27_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-01-04 09:31:47",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "github_user": "romainthomas",
    "github_project": "iCDump",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "icdump"
}
        
Elapsed time: 0.02588s