Commit Graph

42 Commits

Author SHA1 Message Date
Katy Coe
fca91ff556 DLL: Allow suppression of metadata attributes 2021-01-12 02:17:23 +01:00
Katy Coe
a9ab4e627c Plugins: Prevent app from starting without plugins 2021-01-12 01:11:05 +01:00
Katy Coe
361f5179d5 Unity: Allow version selection from asset file 2021-01-11 02:30:26 +01:00
Katy Coe
7961fc6dab CLI/GUI: Add shim DLL output support 2021-01-10 11:38:45 +01:00
Katy Coe
71be0f2af2 Update year in copyright messages 2021-01-04 05:26:43 +01:00
Katy Coe
ec6f65b7dc ELF: Rebase if requested even if image is not dumped (#119) 2020-12-30 08:23:59 +01:00
Katy Coe
1527c9fe17 Plugins: Disable plugin automatically if it throws an exception 2020-12-25 22:31:16 +01:00
Katy Coe
61d86d7d96 Plugins: Pass PluginEventInfo instead of PluginErrorEventArgs to ErrorHandler 2020-12-24 00:12:55 +01:00
Katy Coe
3ee658d5ac CLI: Implement plugin interface 2020-12-19 20:48:32 +01:00
Katy Coe
05ba1678c5 Update README.md and CLI help 2020-12-13 01:56:09 +01:00
Katy Coe
625cba808f ELF: Tidy up LoadOptions and handling of dumped files 2020-12-13 01:37:28 +01:00
Katy Coe
f5980e85a6 CLI: Add --image-base option for dumped ELF images 2020-12-12 05:26:38 +01:00
Katy Coe
08c1559222 API: Allow passing of load options to binary loaders 2020-12-11 22:44:48 +01:00
Katy Coe
34819a114d CLI/GUI: Add support for saving processed metadata and binary 2020-12-09 21:55:29 +01:00
Katy Coe
36748a2632 CLI: Handle metadata+binary exceptions the same way as package exceptions 2020-11-25 12:17:50 +01:00
Katy Coe
2afdc8b421 CLI/GUI: Support AAB files 2020-09-17 10:00:47 +02:00
Katy Coe
4261b5b2d1 Handle split APK packages + CLI support 2020-09-11 16:38:05 +02:00
Katy Coe
95d88e60d7 AppModel: Build model by default in constructor 2020-08-15 02:34:19 +02:00
Katy Coe
1b0255bb95 CLI: Fix multi-image suffix was only applied to types.cs 2020-08-07 03:32:46 +02:00
Katy Coe
898f825df9 CLI: Add Ghidra Python script output support 2020-08-06 05:41:48 +02:00
Katy Coe
a81b2707c9 Change references to IDA to generic 'Python script' 2020-08-06 05:29:41 +02:00
Katy Coe
567bbd2706 Script: Rename IDAPythonScript to PythonScript 2020-08-06 05:21:55 +02:00
Katy Coe
b5a70d94fd Script: Allow script target API to be passed as argument 2020-08-06 05:20:20 +02:00
Katy Coe
5c2e06daee IDA: Refactor to use universal script and JSON metadata 2020-08-04 02:32:16 +02:00
Katy Coe
fd0b3ec797 CLI: Add JSON output option (--json-out / -o) 2020-08-02 22:28:55 +02:00
Katy Coe
5c97202d8e C++: Significant iteration of scaffolding output (see commit description)
Generate pre-compiled headers for IL2CPP types and functions
Resolved naming conflicts with functions and macros from windows.h
IL2CPP app functions and TypeInfos were incorrectly placed in global namespace instead of 'app'
Added /MP compiler option (multi-processor compilation)
Split source files into folders
Move GetBaseAddress() into helpers.cpp
Add NewConsole() to helpers.cpp
Move init_il2cpp() from IL2CPP declarations header to own source file
Refactor some header files for consistency and duplicate elimination
2020-08-01 05:23:44 +02:00
Katy Coe
7b9c28fdf3 IDA: Don't produce C type header file if it's already available 2020-07-28 19:23:53 +02:00
Katy Coe
9e4c4ca7be Update UX and README.md 2020-07-19 16:57:42 +02:00
Katy Coe
632d1d2d9b C++: Generate output in a folder 2020-07-18 19:18:08 +02:00
vivalavladislav
fbb177fafe Fix project generation on OS X (#48)
* Fixes to folder reference for osx

* Add platform dependent suffix checks

* Push path fixes

Co-authored-by: Vlad Sviatetskyi <vlad.sviatetskyi@nextgames.com>
2020-07-09 21:12:22 +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
24e4c65c4c Outputs: Add MSVC/GCC option to CppScaffolding and CLI 2020-07-02 15:18:15 +02:00
Katy Coe
01519c4c29 CLI: Add C++ header output support 2020-07-02 14:24:20 +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
ca113fb055 CLI: Handle attempted output to directory that is file gracefully 2020-06-20 19:34:34 +02:00
Katy Coe
5bcce0ca0a CLI: Allow -i to accept APK or IPA package files 2020-06-18 16:44:31 +02:00
Katy Coe
55148e0271 Output: Add Mocrosoft.Reflection and Internal.Runtime to default exclusions 2020-02-15 06:38:03 +01:00
Katy Coe
bab8a8f6fd Abstract Unity path search to own class 2020-02-10 02:00:17 +01:00
Katy Coe
6c66b5534f CLI: Make -i and -m optional 2020-02-08 12:42:12 +01:00
Katy Coe
e971cb8502 Refactor solution layout 2020-02-06 02:51:42 +01:00