I want to investigate IL code of most .net framework library classes. Is it possible? I am trying to decompiling some dll (e.g.: System.Treading), and I only see signature of the functions. Then I go to mscorlib.dll and see only manifest. There is a way to see the real code?
How can I decompiling IL code of .net framework
1.4k Views Asked by YVEF At
3
There are 3 best solutions below
1
GvS
On
If you want to study the implementation of .Net classes. I suggest you use the reference code provided by Microsoft.
The main advantage of using the reference code, is that you can see the comments and other elements that will not be added to IL (like #define).
To study the effect of certain C# constructs on the generated IL, I would suggest using SharpLib.
1
sayah imad
On
Personnaly to decompile IL code i use ILspy , it's lightweight tool and easy to use .
you can found it in the link below :
https://sourceforge.net/projects/ilspyportable/
Best Regards .
Related Questions in C#
- How to call a C language function from x86 assembly code?
- What does: "char *argv[]" mean?
- User input sanitization program, which takes a specific amount of arguments and passes the execution to a bash script
- How to crop a BMP image in half using C
- How can I get the difference in minutes between two dates and hours?
- Why will this code compile although it defines two variables with the same name?
- Compiling eBPF program in Docker fails due to missing '__u64' type
- Why can't I use the file pointer after the first read attempt fails?
- #include Header files in C with definition too
- OpenCV2 on CLion
- What is causing the store latency in this program?
- How to refer to the filepath of test data in test sourcecode?
- 9 Digit Addresses in Hexadecimal System in MacOS
- My server TCP doesn't receive messages from the client in C
- Printing the characters obtained from the array s using printf?
Related Questions in .NET
- file download method in visual studio 2017
- Repository manager receives the wrong connection string in .net core
- MongoDb not connecting C#
- The current .NET SDK does not support targeting .NET Core 6.0. Brand new WPF Project VS Community 2022 17.9.5
- Why Scanning GSI on DynamoDb doesnt work as fast as expected when using CONTAINS?
- Are "blittable types" really unmanaged types for StructLayout Sequential
- Failed to fetch dynamically imported module on Blazor JS Interop
- Problem to upload several images per one request
- Implementing Azure AD B2C Authentication in .NET 8 Blazor Project (RenderMode: InteractiveAuto)
- Stripe connect payout - throws exceptions
- 'IOException: The cloud file provider is not running', when trying to delete 'cloud' folder
- Azure Application Insights Not Displaying Custom Logs for Azure Functions with .NET 8
- Convert C# DateTime.Ticks to Bigquery DateTime Format
- Socket.io nodejs server .NET connection
- Producer Batching Service Bus Vs Kafka
Related Questions in DECOMPILING
- Decompiling PyInstaller linux binary
- Type information system recovery
- Trouble reversing a .pyc file back to its source code
- Can anyone help me avoid being detected when using mock locations on an app, I have decompiled and pasted a code from it,s smali file
- IDA Free and _time64 decompilation?
- Uplifting asm to IL in a generic way
- Avoid exposing DB credentials when decompiling .exe
- Apktool Error Caused by: org.jf.util.ExceptionWithContext: Error while writing instruction at code offset 0x2
- i have installed pydumpck but get "'pydumpck' is not recognized as an internal or external command, operable program or batch file."
- Disassembling bytecode into opcodes across different EVM versions
- Garbled characters encountered when decompiling Lua
- Decompilation creating basic blocks
- Is there a way to see decompiled C# system libraries in VS Code?
- Decompiling ARM64 and understanding branch targets bounderies
- Decompile android APK with Apktool for analysis?
Related Questions in CIL
- Boxing System.RuntimeArgumentHandle
- Where and how are IL opcodes implemented in the .NET runtime source code
- .NET reflection emit - what am I doing wrong in writing this method in MSIL?
- View Intermediate Language code in Visual Studio
- How to parse a method invocation in IL bytes?
- How are memory allocations handled in "bytecode based" languages?
- Using Harmony to patch the real content of an async method for a Unity game
- Undefined behavior when trying to Memory.Slice using il.Emit
- How to emit IL for ref locals using ILGenerator?
- CIL code parses "15" into 15,000000000000004
- CIL shows `box` ops when the generic type is constrained to a class
- Is the C# compiler able to optimize a statement like someEnumerable.Count() < 2?
- Why is there a `.constrained` opcode preceeding the `call` opcode when calling an abstract static function?
- C# find what the last interacted with instance in the call stack is
- Insert method call into setter causes Invalid IL code
Related Questions in ILDASM
- Why is Ildasm for dotnet 7 installed with Visual Studio 2022 in a folder named NETFX 4.8?
- Ilasm doesn't seem to include resources in dll
- How to determine http verb allowed on a .net function using ildasm
- Is there an ILDASM tool for dotnet 5 or 6?
- ildasm.exe disassembly code viewer failed to exit unexpectedly with error code BEX64
- ILDASM could not be found in the PowerShell window of Visual Studio 2019
- How to run ildasm on .Net core exe/assembly?
- ildasm on Linux via nuget installation: ildasm executable not found
- How can I decompiling IL code of .net framework
- Where is "ildasm" in Visual Studio 2019?
- Manually signing a 3rd Party dll looses file details
- ILDASM and ILASM, how use them?
- ildasm / ilasm - Symantec false positive
- Modifying IL code causing InvalidProgramException at runtime
- which type of the constant does the `ldstr` instruction use?
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular # Hahtags
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
You can use .NET Reflector (commercial but very good):
https://www.red-gate.com/products/dotnet-development/reflector/
You can open a .net assembly with it (.exe or .dll).
So you can also directly browse .NET Framework assemblies by selecting the framework version.
Select view IL or other language such as C# or VB code and it is done.
There is also for example this free tool (slow, very slow):
https://www.jetbrains.com/decompiler/