Using Lucidator
Lucidator is a tool that allows easy recovery of the symbols in an obfuscated stack traces. This is useful, for example, when an error report contains a stack trace from an obfuscated application. As long as you have the map file Dotfuscator wrote, you can use Lucidator to see the original function names in the stack trace to locate the error.
To translate complete stack traces, open a map file produced by Dotfuscator. Next, open Lucidator by clicking Tools > Decode Obfuscated Stack Traces... or by using the following commands in the command line:
Options | Description |
---|---|
/mapfile=<map file> |
specifies the map file (e.g.: /mapfile=map.xml) |
/stacktracefile=<stack trace file> |
specifies the file containing the stack trace (e.g.: /stacktracefile=stacktrace.txt) |
/c=<culture> |
set user interface language (requires appropriate language resources). Argument is the lowercase language code:(e.g.: /c=de, /c=ja, /c=zh-CHS) |
When the Lucidator window displays on your desktop, select the Translate Lines tab, and then paste the stack trace in the window. Click the Translate button.
The translated stack trace displays in the Translation Report section of the window.
Methods in obfuscated stack traces may be ambiguous due to the use of Overload Induction and Enhanced Overload Induction. Because there may be more than one matching unobfuscated method, Lucidator displays all the possibilities. To look up a specific type or method by name, click the Translate Specific Element tab:
In this screen, enter the obfuscated names of the specific items you want to translate. For example, to translate an obfuscated type name, enter the obfuscated name in the Type Name: field and click Translate. Likewise, to translate an obfuscated method name, enter the obfuscated name in the Method Name: field and click Translate. You may optionally provide a signature by checking the Method Signature box and entering the signature in the adjacent text box.