The typical problem with decompilation is the absence of full source information in the executable file.
Dis# is a .NET decompiler which allows you to edit local variables and other names and keep the changes in a project file.
The decompiled code is similar to the original source.
A trial version is available.

