Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Issue with modded KoiVM (key not found in dictionary) #37

Open
AnErrupTion opened this issue Apr 18, 2021 · 3 comments
Open

Issue with modded KoiVM (key not found in dictionary) #37

AnErrupTion opened this issue Apr 18, 2021 · 3 comments
Labels
bug Something isn't working

Comments

@AnErrupTion
Copy link

AnErrupTion commented Apr 18, 2021

Describe the bug
I'm trying to decompile a modded KoiVM. I've already modified the code for the earlier steps (like the Koi stream and VMEntry type detection) to work. However there's one last problem at the IL to CIL recompiler. At one point, every (or almost every) recompilation of "initial CIL AST"s will fail, resulting in a "The given key is missing from the dictionary" error. When using the --salvage option, at the end of everything there are exactly 546 errors, all of which seem to be that same dictionary error.

To Reproduce
Here's the binary file I'm trying to decompile : Brain.zip

Expected behavior
I'm expecting OldRod to recompile the executable without any problems (I do expect warnings but no errors, or very minor errors), but this clearly isn't the case.

Screenshots
Capture
Capture1
Capture3
Capture4
Capture5

Additional context
I don't know if this will help, but I've modified some function (in the same stage, IL to CIL recompiler) that also failed the recompilation. It was an IndexOutOfRangeException (or something like that) about getting the signature index by index of a parameter (I think it was in the VisitCompilationUnit function), and I simply added a condition to break if the parameter index is less or equal to 0.
I also don't have a deep knowledge of (C)IL or stuff like that, so any help is appreciated.

@AnErrupTion AnErrupTion added the bug Something isn't working label Apr 18, 2021
@Washi1337
Copy link
Owner

I cannot really reproduce this error without also knowing what the changes are that you made in the previous stages.

Also as a reminder (for all readers), OldRod is not going to support mods out of the box. Substantial architectural changes will break OldRod.

@AnErrupTion
Copy link
Author

I did not make a lot of changes, mostly changing the Koi stream name, changing VMEntry detection and adding a check in the VisitCompilationUnit. I guess you'd need the source of my modified OldRod, I'll upload it when I can.

@master861
Copy link

that look like chines koi to me

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants