• Earn real money by being active: Hello Guest, earn real money by simply being active on the forum — post quality content, get reactions, and help the community. Once you reach the minimum credit amount, you’ll be able to withdraw your balance directly. Learn how it works.

Reverse Engineering dnSpy: v6.1.8 - .NET debugger, decompiler & assembly editor

Status
Not open for further replies.

itsMe

*KillmeMories*
Staff member
Administrator
Super Moderator
Hacker
Specter
Crawler
Shadow
Joined
Jan 8, 2019
Messages
56,607
Solutions
2
Reputation
32
Reaction score
100,453
Points
2,313
Credits
32,590
‎6 Years of Service‎
 
76%
dnSpy_debugger_bg.jpg


Introduction

dnSpy is a tool to reverse engineer .NET assemblies, including .NET debugger, a decompiler and an assembly editor. This tool can be easily extended by writing custom and your own plugin. It uses dnlib to read and write assemblies so it can handle obfuscated assemblies without crashing.

dnSpy: .NET debugger, decompiler & assembly editor

This amazing tool is open source, forever free and has very modern and intuitive design, kinda similar to Visual Studio. It uses many open source libraries:

    ILSpy decompiler engine: C# and Visual Basic decompilers
    Roslyn: C# and Visual Basic compilers
    dnlib: .NET metadata reader/writer which can also read obfuscated assemblies
    VS MEF: Faster MEF equals faster startup
    ClrMD: Access to lower level debugging info not provided by the CorDebug API

Features

    Debug .NET Framework, .NET Core and Unity game assemblies, no source code required
    Edit assemblies in C# or Visual Basic or IL, and edit all metadata
    High DPI support (per-monitor DPI aware)
    Extensible, write your own extension
    BAML decompiler
    Blue, light and dark themes (and a dark high contrast theme)
    Bookmarks
    C# Interactive window can be used to script dnSpy

    Search assemblies for classes, methods, strings etc
    Analyze class and method usage, find callers etc
    Multiple tabs and tab groups
    References are highlighted, use Tab / Shift+Tab to move to next reference
    Go to entry point and module initializer commands
    Go to metadata token or metadata row commands
    Code tooltips (C# and Visual Basic)
    Export to project

Debugger

    Debug .NET Framework, .NET Core and Unity game assemblies, no source code required
    Set breakpoints and step into any assembly
    Locals, watch, autos windows
    Variables windows supports saving variables (eg. decrypted byte arrays) to disk or view them in the hex editor (memory window)
    Object IDs
    Multiple processes can be debugged at the same time
    Break on module load
    Tracepoints and conditional breakpoints
    Export/import breakpoints and tracepoints
    Call stack, threads, modules, processes windows
    Break on thrown exceptions (1st chance)
    Variables windows support evaluating C# / Visual Basic expressions
    Dynamic modules can be debugged (but not dynamic methods due to CLR limitations)
    Output window logs various debugging events, and it shows timestamps by default 🙂
    Assemblies that decrypt themselves at runtime can be debugged, dnSpy will use the in-memory image. You can also force dnSpy to always use in-memory images instead of disk files.
    Public API, you can write an extension or use the C# Interactive window to control the debugger

To see this hidden content, you must like this content.
 
Status
Not open for further replies.
Back
Top