Added an Il2CppMethodAttribute to store il2cpp function RVAs #99
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This might be a big change, so consider this just as a prototype for now.
Basically, I created a new attribute that's applied to all generated methods, which stores native function RVAs.
Why? The huge advantage of this is that you're able to get il2cpp function pointers before il2cpp is fully initialized.
My main reason for creating this is that I'm creating my own il2cpp detour method, and I want it to be able
to hook methods before all il2cpp assemblies and all that other stuff are loaded.
In the attribute, I left a suggestion that the attribute may also be a good place to store unobfuscated method names,
but I decided not to implement this yet, considering that would drastically impact the sizes of obfuscated assemblies.
So idk, lmk if this is a good idea, but I'd be grateful if it got approved.
Note: I also fixed Cpp2IL type stripping. I believe the newer versions of Cpp2IL use a slightly different namespace.