Commit Graph

275 Commits

Author SHA1 Message Date
Katy Coe
6eeff59eb2 Update NuGet package version 2020-08-17 03:03:21 +02:00
Katy Coe
2024a3bfac AppModel: Add WordSizeBytes; tidy up a bit 2020-08-17 02:49:01 +02:00
Katy Coe
4b86087c7a Allow longs to call ToAddressString() (as well as ulongs) 2020-08-17 01:43:52 +02:00
Katy Coe
92d549081e C++: Correctly handle nested function pointer definitions 2020-08-17 01:14:29 +02:00
Katy Coe
ae44e2fce7 Python: Apply typed IL2CPP API function signatures to disassembly 2020-08-16 22:43:35 +02:00
Katy Coe
d892423829 JSON: Write APIs with full C++ signatures 2020-08-16 22:43:07 +02:00
Katy Coe
dcafd81ed2 JSON: Write all exports, not just API export symbols 2020-08-16 22:26:42 +02:00
Katy Coe
c9bd4187c2 IL2CPP: Fix metadata usage detection for v27 for 32-bit binaries 2020-08-16 21:47:59 +02:00
Katy Coe
246809c0a4 IL2CPP: Implement metadata usages for metadata v27 2020-08-16 04:18:17 +02:00
Katy Coe
5f7218f7df IL2CPP: Encoded tokens in metadata v27 must be shifted right 1 bit 2020-08-16 02:35:33 +02:00
Katy Coe
ec6066aa1d Model: Handle generic type definition fetch for metadata v27 2020-08-16 01:13:27 +02:00
Katy Coe
86dd475a56 C++: Fix bugs handling whitespace and typedef struct * 2020-08-16 01:08:18 +02:00
Katy Coe
2723657ee2 C++: Add headers for Unity 2020.2.0a19 (as Unity 2020.2.0) 2020-08-16 00:29:01 +02:00
Katy Coe
641f502ab8 IL2CPP: Reconstruct CustomAttributesGenerators for metadata v27 2020-08-16 00:09:14 +02:00
Katy Coe
abac509fbd IL2CPP: Correctly detect Il2CppCodeRegistration and Il2CppMetadataRegistration for metadata v27 2020-08-15 23:15:59 +02:00
Katy Coe
1f738a60c6 IL2CPP: Load metadata v27; mark broken areas with TODO 2020-08-15 06:28:48 +02:00
Katy Coe
0d9c01ecaa IL2CPP: Update structures for compatibility with metadata v27 2020-08-15 06:27:00 +02:00
Katy Coe
945c978c9b AppModel: Silent build option 2020-08-15 02:38:24 +02:00
Katy Coe
95d88e60d7 AppModel: Build model by default in constructor 2020-08-15 02:34:19 +02:00
Katy Coe
7027f2e1cb Configure .csproj files for NuGet package 2020-08-14 04:54:48 +02:00
Katy Coe
99a7e2e8cb C#: Output async keyword for async methods (and suppress AsyncStateMachine) 2020-08-14 03:33:41 +02:00
Katy Coe
f08cfd573c C#: Output DefaultMemberAttribute if the type doesn't have an indexer 2020-08-14 03:20:56 +02:00
Katy Coe
26a4ee14e9 AppModel: Wrap AddressMap TypeInfo/TypeRef/MethodInfo in AppReference 2020-08-14 02:53:39 +02:00
Katy Coe
3a22ac203a AppModel: Add AppModel.Image convenience property 2020-08-14 02:23:53 +02:00
Katy Coe
ca55125858 Rename AppModel.ILModel to AppModel.TypeModel 2020-08-14 02:18:53 +02:00
Katy Coe
0f3b31749b AppModel: Rename AppType.ILType to AppType.Type for consistency 2020-08-14 02:01:37 +02:00
Katy Coe
38bbe4830d AppModel: Add GetVTableOffset(), GetVTableIndexFromClassOffset() 2020-08-13 07:59:15 +02:00
Katy Coe
4dd3e7cb92 C++: Add GetType no-alias option and GetComplexType 2020-08-13 06:56:28 +02:00
Katy Coe
75de69e338 C++: Fix calculation of alignment for some structs 2020-08-13 06:56:05 +02:00
Katy Coe
8609523eba C++: Allow typedef aliases to be retrieved from CppTypeCollection indexer 2020-08-13 03:42:15 +02:00
Katy Coe
0c998de844 C++: Fix incorrect field alignment for 2/4/8-byte simple types 2020-08-13 03:41:49 +02:00
Katy Coe
ef853b6fd2 Model: Add AppModel.GetAddressMap() with cache 2020-08-11 07:36:53 +02:00
Katy Coe
f750000c90 Model: Preliminary attempt at populating AddressMap 2020-08-11 07:36:41 +02:00
Katy Coe
9e1de93c06 Model: Implement IDictionary in AddressMap 2020-08-11 03:46:07 +02:00
Katy Coe
87de370a3a Model: Add Model.CustomAttributeGeneratorsByAddress 2020-08-09 21:35:55 +02:00
Katy Coe
84f82474eb Refactor Model.CustomAttributeGenerators to give list of unique VAs per TypeInfo 2020-08-09 21:32:43 +02:00
Katy Coe
a252800052 Model: Add GetMethodBody() to CustomAttributeData and MethodInvoker 2020-08-09 20:53:10 +02:00
Katy Coe
fde68cacb9 Model: Add AddressMap boilerplate code 2020-08-09 20:45:36 +02:00
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