Search code examples
c#windowsildasm

ildasm.exe disassembly code viewer failed to exit unexpectedly with error code BEX64


Currently I am a programmer using C# language to develop my applications daily. I wrote my application and today I decided to disassembly my application to see what the actual assembly code would look like.

I looked at the Microsoft documentation and learned that I have a tool to do this, which is "ildasm.exe" which comes pre-installed when I install Visual Studio, which is used to view the assembly code as central code. IL time (C# is different from C++ and C or Pascal, I know)

I used Visual Studio's command line tool, its name is: "x64 Native Tools Command Prompt for VS 2019" and then ran it as Administrators to do this.

Then in the newly opened window I type ildasm and it gives me a graphical window displayed. I select my application to open it, but when I click on any method to see its assembly code, the ildasm program exits immediately.

I tried again by Dumping a ".il" file so I could view them in Notepad, but even then, ildasm just showed me a progress window, then quit immediately.

An ".il" file is also generated, but when I view it, it's only written to the Assembly section (this is what determines what you'll see when you right-click the application > Properties and select Details tab)

I tried with the command input:

ildasm "E:\Projects_MSVS\AESEncryptDecyptFile\AESEncryptDecyptFile\bin\Debug\AESEncryptDecryptFile.exe" /out="E:\Projects_MSVS\AESEncryptDecyptFile\AESEncryptDecyptFile\bin\Debug\AESEncryptDecryptFile.exe.il"

And it's no different from last time, ildasm was immediately exited

What it has in common is that there is no message showing up to report this error, it simply stops the application and exits.

I really didn't believe it was anything out of the ordinary, so I used the Diagnostic Data Viewer tool to investigate. After a while of searching in the Problem reports tab, I finally found it. It throws out seven Stopped Working times which corresponds to the seven times I tried to render my program. On the seventh report (meaning on the first try), to the right of the word Stopped Working, it is no longer a tick icon ( ✓) but a pending icon (it looks like this: ⟳), and when I click Extract Report Files it just opens the Windows Explorer window, and it's an empty folder (This folder is empty) and I also enabled the option to show all hidden files, including system files.

I posted all seven error messages that I used the Diagnostic Data Viewer tool for ease of investigation

This is what I get when I use the Diagnostic Data Viewer tool to investigate, each of my attempts will be marked by (Nth attempt), and on each attempt the error reports are separate with together:

(First attempt):

Microsoft .NET Framework IL disassembler 

description 

Faulting Application Path: C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.8 Tools\x64\ildasm.exe 
Creation Time: 12/12/2021 4:16:48 PM 
Problem: Stopped working 
Status: Report queued 

Problem signature 

Problem Event Name: BEX64 
Application Name: ildasm.exe 
Application Version: 4.8.4084.0 
Application Timestamp: 5dda4186 
Fault Module Name: ildasm.exe 
Fault Module Version: 4.8.4084.0 
Fault Module Timestamp: 5dda4186 
Exception Offset: 00000000000055ae7 
Exception Code: c0000409 
Exception Data: 0000000000000005 

Extra information about the problem 
Bucket ID: (18446744073709551615) 

Files that help describe the problem 

minidump.mdmp 
WERInternalMetadata.xml 
WERInternalRequest.xml 
memory.csv 
sysinfo.txt 
AppCompat.txt 
memory.hdmp 
WERDataCollectionStatus.txt

(Second attempt):

Microsoft .NET Framework IL disassembler 

description 

Faulting Application Path: C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.8 Tools\x64\ildasm.exe 
Creation Time: 12/12/2021 4:17:49 PM 
Problem: Stopped working 
Status: Report sent 

Problem signature 

Problem Event Name: BEX64 
Application Name: ildasm.exe 
Application Version: 4.8.4084.0 
Application Timestamp: 5dda4186 
Fault Module Name: ildasm.exe 
Fault Module Version: 4.8.4084.0 
Fault Module Timestamp: 5dda4186 
Exception Offset: 00000000000055ae7 
Exception Code: c0000409 
Exception Data: 0000000000000005 

Extra information about the problem 
Bucket ID: 8f47f513232a51a281bc646c0cbb3750 (1278006809499219792)

(Third attempt):

Microsoft .NET Framework IL disassembler 

description 

Faulting Application Path: C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.8 Tools\x64\ildasm.exe 
Creation Time: 12/12/2021 4:19:22 PM 
Problem: Stopped working 
Status: Report sent 

Problem signature 

Problem Event Name: BEX64 
Application Name: ildasm.exe 
Application Version: 4.8.4084.0 
Application Timestamp: 5dda4186 
Fault Module Name: ildasm.exe 
Fault Module Version: 4.8.4084.0 
Fault Module Timestamp: 5dda4186 
Exception Offset: 00000000000055ae7 
Exception Code: c0000409 
Exception Data: 0000000000000005 

Extra information about the problem 
Bucket ID: 8f47f513232a51a281bc646c0cbb3750 (1278006809499219792)

(Fourth attempt):

Microsoft .NET Framework IL disassembler 

description 

Faulting Application Path: C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.8 Tools\x64\ildasm.exe 
Creation Time: 12/12/2021 4:20:14 PM 
Problem: Stopped working 
Status: Report sent 

Problem signature 

Problem Event Name: BEX64 
Application Name: ildasm.exe 
Application Version: 4.8.4084.0 
Application Timestamp: 5dda4186 
Fault Module Name: ildasm.exe 
Fault Module Version: 4.8.4084.0 
Fault Module Timestamp: 5dda4186 
Exception Offset: 00000000000055ae7 
Exception Code: c0000409 
Exception Data: 0000000000000005 

Extra information about the problem 
Bucket ID: 8f47f513232a51a281bc646c0cbb3750 (1278006809499219792)

(Fifth attempt):

Microsoft .NET Framework IL disassembler 

description 

Faulting Application Path: C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.8 Tools\x64\ildasm.exe 
Creation Time: 12/12/2021 4:21:33 PM 
Problem: Stopped working 
Status: Report sent 

Problem signature 

Problem Event Name: BEX64 
Application Name: ildasm.exe 
Application Version: 4.8.4084.0 
Application Timestamp: 5dda4186 
Fault Module Name: ildasm.exe 
Fault Module Version: 4.8.4084.0 
Fault Module Timestamp: 5dda4186 
Exception Offset: 00000000000055ae7 
Exception Code: c0000409 
Exception Data: 0000000000000005 

Extra information about the problem 
Bucket ID: 8f47f513232a51a281bc646c0cbb3750 (1278006809499219792)

(Sixth attempt):

Microsoft .NET Framework IL disassembler 

description 

Faulting Application Path: C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.8 Tools\x64\ildasm.exe 
Creation Time: 12/12/2021 4:26:34 PM 
Problem: Stopped working 
Status: Report sent 

Problem signature 

Problem Event Name: BEX64 
Application Name: ildasm.exe 
Application Version: 4.8.4084.0 
Application Timestamp: 5dda4186 
Fault Module Name: ildasm.exe 
Fault Module Version: 4.8.4084.0 
Fault Module Timestamp: 5dda4186 
Exception Offset: 00000000000055ae7 
Exception Code: c0000409 
Exception Data: 0000000000000005 

Extra information about the problem 
Bucket ID: 8f47f513232a51a281bc646c0cbb3750 (1278006809499219792)

(Seventh attempt, also my last attempt):

Microsoft .NET Framework IL disassembler 

description 

Faulting Application Path: C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.8 Tools\x64\ildasm.exe 
Creation Time: 12/12/2021 4:26:59 PM 
Problem: Stopped working 
Status: Report sent 

Problem signature 

Problem Event Name: BEX64 
Application Name: ildasm.exe 
Application Version: 4.8.4084.0 
Application Timestamp: 5dda4186 
Fault Module Name: ildasm.exe 
Fault Module Version: 4.8.4084.0 
Fault Module Timestamp: 5dda4186 
Exception Offset: 00000000000055ae7 
Exception Code: c0000409 
Exception Data: 0000000000000005 

Extra information about the problem 

Bucket ID: 8f47f513232a51a281bc646c0cbb3750 (1278006809499219792)

And here is my computer configuration (extracted from the System Information tool that comes pre-installed on Windows):

OS Name Microsoft Windows 11 Home Single Language 
Version 10.0.22000 Build 22000 
Other OS Description    Not Available 
OS Manufacturer Microsoft Corporation 
System Name CYBERDAY 
System Manufacturer ASUSTeK COMPUTER INC. 
System Model    VivoBook_ASUSLaptop X409FA_X409FA 
System Type x64-based PC 
System SKU   
Processor   Intel(R) Core(TM) i3-8145U CPU @ 2.10GHz, 2304 Mhz, 2 Core(s), 4 Logical Processor(s) 
BIOS Version/Date   American Megatrends Inc. X409FA.305, 1/28/2021 
SMBIOS Version  3.2 
Embedded Controller Version 255.255 
BIOS Mode   UEFI 
BaseBoard Manufacturer  ASUSTeK COMPUTER INC. 
BaseBoard Product   X409FA 
BaseBoard Version   1.0 
Platform Role   Mobile 
Secure Boot State   On 
PCR7 Configuration  Elevation Required to View 
Windows Directory   C:\Windows 
System Directory    C:\Windows\system32 
Boot Device \Device\HarddiskVolume1 
Locale  United States 
Hardware Abstraction Layer  Version = "10.0.22000.1" 
Time Zone   SE Asia Standard Time 
Installed Physical Memory (RAM) 4.00 GB 
Total Physical Memory   3.86 GB 
Available Physical Memory   306 MB 
Total Virtual Memory    11.4 GB 
Available Virtual Memory    4.55 GB 
Page File Space 7.50 GB 
Page File   C:\pagefile.sys 
Kernel DMA Protection   Off 
Virtualization-based security   Running 
Virtualization-based security Required Security Properties   
Virtualization-based security Available Security Properties Base Virtualization Support, Secure Boot, DMA Protection, Mode Based Execution Control 
Virtualization-based security Services Configured    
Virtualization-based security Services Running   
Device Encryption Support   Elevation Required to View 
A hypervisor has been detected. Features required for Hyper-V will not be displayed.

I'm in the Windows Insider Program and the channel I join to get new updates is the Beta channel. The version of .NET Framework I have installed is version 4.8

Any help is highly appreciated.


Solution

  • I finally found the problem. I turned on embedding resources into the executable and apparently the executable became too heavy to see the MSIL intermediate runtime code (it was really heavy), I turned off embedded the resource in the executable, then compiled it, and ildasm worked.