Skip to content

Fix IL2CPP attach on games running MelonLoader or BepInEx (#197) - #198

Open
ero-qt wants to merge 3 commits into
LiveSplit:masterfrom
ero-qt:issue-197
Open

ero-qt wants to merge 3 commits into
LiveSplit:masterfrom
ero-qt:issue-197

Conversation

@ero-qt

@ero-qt ero-qt commented Oct 13, 2026

Copy link
Copy Markdown
Contributor

Closes #197.

The walk now skips a jump out of the module at the start of a function and goes on behind it. A jump through a pointer inside the module is an import thunk, so the walk still stops there.

When the hook ends in the middle of an instruction, the walk takes the end of that instruction from the function's unwind info and goes on there. That only works on Windows x64, since nothing else has unwind info.

The first commit splits walk into smaller functions and doesn't change anything.

cargo test --all-features covers the hook shapes, x86, ELF, the s_Assemblies getter, an import thunk and the unwind resume. Big Walk with MelonLoader 0.7.3 attaches with this.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

IL2CPP attach fails on games running MelonLoader or BepInEx

1 participant