Skip to content

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

@AnErrupTion

Description

@AnErrupTion

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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions