Commit Graph

237 Commits

Author SHA1 Message Date
Katy Coe
ea8a18353a Model: Change CustomAttributeData.VirtualAddress to be non-nullable 2020-08-09 20:44:13 +02:00
Katy Coe
10b6d22edf Formats: Add all missing Read* from Bin2Object and ReadMapped* for everything 2020-08-09 20:28:16 +02:00
Katy Coe
e2289fb9c0 AppModel: Include all binary symbols in model 2020-08-09 19:54:43 +02:00
Katy Coe
3fb0b085da Model: Add Scope.Empty static helper 2020-08-09 19:24:54 +02:00
Katy Coe
bdb9f7935b Model: Allow null namespace list in Scope for getScopedFullName() 2020-08-09 19:24:41 +02:00
Katy Coe
508c35135b Model: Add unique custom attributes generator list (CustomAttributesGenerators) 2020-08-09 19:23:57 +02:00
Katy Coe
75819255fd IL2CPP: Add silent mode to loader 2020-08-09 18:52:23 +02:00
Katy Coe
212c01745c Model: Don't crash on GetCustomAttributes(TypeInfo) if Definition is null (arrays, generics etc.) 2020-08-09 18:07:46 +02:00
Katy Coe
47de0ff56f JSON: Output symbol data 2020-08-09 00:30:31 +02:00
Katy Coe
00c2e8ad44 Unify symbol table format and implement for Elf and Mach-O 2020-08-09 00:30:18 +02:00
Katy Coe
e536a3b1eb Add NuGet package CxxDemangler for symbol name demangling 2020-08-09 00:29:35 +02:00
Katy Coe
c97bd7054e JSON: Write all exports in metadata file 2020-08-08 21:39:40 +02:00
Katy Coe
9ee316e8b2 APK: Add multi-architecture (multiple binaries) support 2020-08-07 19:09:25 +02:00
Katy Coe
32497364e5 AppModel: Don't crash on MetadataUsage MethodDef/Ref without prior method definition 2020-08-07 19:08:27 +02:00
Katy Coe
7086a8f7ba GUI: Don't lose status handler on multi-image binaries / improve status output 2020-08-07 19:08:07 +02:00
Katy Coe
f9c236f143 Unity: Add equality implementation for UnityVersionRange, UnityHeaders 2020-08-07 04:56:47 +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
25d5a68755 Script: Auto-detect available script targets (GetAvailableTargets) 2020-08-06 05:16:44 +02:00
Katy Coe
15fb96ba9a Unity: Over-extend LTS version numbers (2018.4.x and 2019.4.x) 2020-08-06 04:55:30 +02:00
Katy Coe
da61933788 Ghidra: Ensure function names are set correctly in all cases 2020-08-06 04:49:53 +02:00
Katy Coe
6770bc2865 C++: Fix System.Array is not itself an array (it's a class) (fix Array__Class * error in Ghidra) 2020-08-05 08:45:45 +02:00
Katy Coe
beb859128c Ghidra: Only reset image base to zero for ELF binaries 2020-08-04 05:44:08 +02:00
Katy Coe
eb55e5b527 AppModel/C++/JSON/Script: Don't output generic method definitions (no compiled code) 2020-08-04 05:14:19 +02:00
Katy Coe
5c2e06daee IDA: Refactor to use universal script and JSON metadata 2020-08-04 02:32:16 +02:00
Katy Coe
dea29751ef Add embedded resources for universal script handling (ScriptResources) 2020-08-04 01:52:43 +02:00
Katy Coe
160569f239 JSON: Fix il2cpp_codegen_register signature for Unity < 5.3.5 2020-08-04 01:52:07 +02:00
Katy Coe
64860d9c03 JSON: Replace array of pointer *[x] with * * in Il2CppCodeGenModule (Ghidra fix) 2020-08-04 00:50:30 +02:00
Katy Coe
5bb879a676 JSON: Disable comments by default; re-factor handling of string literals 2020-08-03 22:11:40 +02:00
Katy Coe
8926af341f JSON: Add initial JSONMetadata output module (with address map) 2020-08-02 21:21:57 +02:00
Katy Coe
2ab43c41c9 IDA: Separate comment types and function/field types 2020-08-01 18:58:54 +02:00
Katy Coe
c22227441e C++: Output .vcxproj.filters file for solution folder structure 2020-08-01 17:03:44 +02:00
Katy Coe
8372afd619 C++: Rename il2cpp-api-functions-ptr.h and il2cpp-types-ptr.h 2020-08-01 16:56:11 +02:00
Katy Coe
4ae6772f5a C++: Remove windows.h macros/types from reserved words list 2020-08-01 05:24:07 +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
792cdc8711 IDA: Fix backslash escaping in C++ header path include 2020-08-01 05:07:22 +02:00
Katy Coe
c6175989cf C++: Add #pragma to disable MSVC C4309 enum truncation warnings 2020-08-01 03:35:07 +02:00
Katy Coe
0bfc5750ad IDA: Abstract idc.set_cmt into SetComment 2020-07-29 01:34:36 +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
4978348d8f C++/IDA: Output text files as ASCII instead of UTF8 (Ghidra fix) 2020-07-28 04:13:43 +02:00
Katy Coe
867ddea168 IDA: Separate type declarations into own header file 2020-07-28 02:40:47 +02:00
Katy Coe
7fa80a4848 C++: Allow il2cpp-types.h to be output independently; include conditional disassembler pre-amble 2020-07-28 02:26:15 +02:00
Katy Coe
adb8594620 C++: Don't output enum underlying types (C compat) 2020-07-28 02:20:53 +02:00
Katy Coe
2459bcb4a6 IL2CPP: Add registration structs search via data heuristics 2020-07-27 21:16:44 +02:00
Katy Coe
a621e20b62 Metadata: Add static Sizeof helper 2020-07-27 21:11:43 +02:00
Katy Coe
613747fc9a Implement mapping from file offset to virtual address (all file formats) 2020-07-27 21:10:59 +02:00
Katy Coe
59f5083235 C++: Add #pragma to disable MSVC C4369 enum range warnings 2020-07-25 16:55:40 +02:00
Katy Coe
cf6b64e0d2 C++: Add PlatformInformation and LoadResource as reserved symbols 2020-07-25 16:55:16 +02:00
Katy Coe
271a85b7f1 C++: Fix incorrect variable declaration of VirtualInvokeData struct for 5.3.6-5.4.6 2020-07-25 16:54:52 +02:00
Katy Coe
87519ba66f Unity: Fix select only matching APIs in discovery instead of all in total version range 2020-07-25 15:54:18 +02:00