Search code examples
c#asp.net-coreobfuscationpdb-filesnet-reactor

Debug obfuscated by .NET Reactor release with pdb files


I compile ASPNET Core 2.2 application, obtain pdb files and then run .NET Reactor obfuscation on assemblies. I have all components: binary, source code, pdb files.

Before .NET Reactor run I'm able to create dump file and debug it using .pdb in Visual Studio 2017. But after .NET Reactor run I get following symbol status in all included dll: "Binary was not built with debug information."

More over, .NET Reactor does not change pdb at all. it just copies them to new destination.

How can I debug obfuscated application in this case?


Solution

  • There are 2 kinds of pdb specifications. There is only a problem with the newer portable pdb specification (it causes internally an exception and .NET Reactor only copies the file) .

    And .NET Reactor doesn't support it yet. Make sure to build dll using "full" debugging information: enter image description here

    It should resolve the issue. As for my case, some why my VisualStudio ignores this option and keeps using 'portable' even if option is full. It can be seen as it starts from BSJB:

    enter image description here

    Currently .NET Reactor team is aware about the issue and promise to add support in in the next major release. Till that tine try to use 'full' debugging information in settings.