Commit Graph

28 Commits

Author SHA1 Message Date
Katy Coe
632d1d2d9b C++: Generate output in a folder 2020-07-18 19:18:08 +02:00
Katy Coe
873a6c98f6 AppModel: First iteration of ApplicationModel API
Integrate with C++ scaffolding
Add new tests
Rename Il2CppModel to TypeModel
Incomplete IDAPython integration
CLI and GUI support
Update README.md
2020-07-09 03:48:50 +02:00
Katy Coe
acc95e00c1 GUI: Add C++ scaffolding output support 2020-07-02 16:04:39 +02:00
Katy Coe
23db04c369 Minor re-organization 2020-06-30 00:13:18 +02:00
Robert Xiao
393d26b2a3 Move non-output to new CppUtils namespace
We prefer to have the Outputs directory contain just one file or
namespace per output module, so we'll move all C++-related stuff to a
new CppUtils namespace instead.
2020-06-29 22:10:45 +02:00
Robert Xiao
34f0d4ceef Add header files for every known Unity version.
We want to get types into the IDA output, and to do that we need
accurate types for the Il2Cpp structures. Unfortunately, some crucial
types like Il2CppClass change between versions without any corresponding
metadata changes, meaning that we have to manually identify the version
outside of the Inspector somehow (e.g. by looking at the version number
embedded in Unity asset files). This patch adds header files for *every*
known Unity version from 5.3.0 to 2019.3.8, merging them into version
ranges where header files don't change.

It also adds front-end support for supplying the version number in both
the CLI and GUI. The GUI is given the ability to guess the version
number approximately to reduce the number of choices presented to the
user.
2020-06-29 22:10:45 +02:00
Katy Coe
d38620a7d7 GUI: Add support for opening APK and IPA package files 2020-06-18 16:45:32 +02:00
Katy Coe
39bd356d85 GUI: Add .bin .prx .sprx to binary dialog filter 2020-02-24 10:11:48 +01:00
Katy Coe
a4f5b5ac5c GUI: Add "Not a decompiler" dialog on startup 2020-02-24 10:06:18 +01:00
Katy Coe
7f2987c3d9 GUI: Provide feedback when export completes 2020-02-10 08:08:45 +01:00
Katy Coe
8af51cad29 GUI: Provide default output filenames 2020-02-10 08:04:34 +01:00
Katy Coe
abaadc847e GUI: Fix root namespace wasn't excluded properly if selected 2020-02-10 07:04:03 +01:00
Katy Coe
8fe48686e9 GUI: Export asynchronously 2020-02-10 07:01:19 +01:00
Katy Coe
6afdd2c41c GUI: Implement all exports 2020-02-10 06:37:16 +01:00
Katy Coe
d88eb6ce2c GUI: Unity path selection and auto-detect behaviour 2020-02-10 02:01:41 +01:00
Katy Coe
1a579cfd3b GUI: Add footer text 2020-02-10 00:34:02 +01:00
Katy Coe
3514c377ab GUI: Implement TreeView checkbox behaviour 2020-02-09 11:06:05 +01:00
Katy Coe
c039b77a80 GUI: Populate TreeView with CheckBox'd namespaces 2020-02-09 09:43:29 +01:00
Katy Coe
4aad710451 GUI: Output preferences layout 2020-02-09 07:50:53 +01:00
Katy Coe
755a8ec88c GUI: Show progress messages in busy indicator 2020-02-09 04:11:16 +01:00
Katy Coe
4129785e17 GUI: Create type models 2020-02-09 03:29:05 +01:00
Katy Coe
c5999bb94f GUI: Master/detail list of Il2CppInspector images 2020-02-09 03:15:39 +01:00
Katy Coe
194707f3f5 GUI: Busy indicator lightbox dialog 2020-02-08 12:58:54 +01:00
Katy Coe
8a574664f0 GUI: Load binary file 2020-02-08 12:58:54 +01:00
Katy Coe
9376b15fcd GUI: Load binary file and back buttons 2020-02-08 12:58:54 +01:00
Katy Coe
f4a1a21e9e GUI: Load metadata file 2020-02-08 12:58:54 +01:00
Katy Coe
27b5fb7366 Add global-metadata.dat button and dialog 2020-02-08 12:58:54 +01:00
Katy Coe
b0a7f303cf GUI: Create project boilerplate 2020-02-08 12:58:54 +01:00