NAME

monodis - CIL image content dumper and disassembler.

SYNOPSIS

monodis [-h] [--help] [--output=FILENAME] [--mscorlib] [--assembly] [--assemblyref] [--classlayout] [--constant] [--customattr] [--declsec] [--event] [--exported] [--fields] [--file] [--forward-decls] [--genericpar] [--implmap] [--interface] [--manifest] [--marshal] [--memberref] [--method] [--methodimpl] [--methodsem] [--methodspec] [--module] [--moduleref] [--mresources] [--presources] [--nested] [--param] [--parconst] [--property] [--propertymap] [--standalonesig] [--typedef] [--typeref] [--typespec] [--blob] [--strings] [--userstrings] [FILES...]

DESCRIPTION

The monodis program is used to dump the contents an ECMA/ISO CIL image (contained in .EXE files that contain extended PE/COFF CIL code).
To roundtrip assemblies using ilasm, it is best to use the --output argument, as that will make monodis save the embedded resources in files that can later be properly embedded back by ilasm.
Additionally, the tool can be used to dump the contents of the various ECMA CIL metadata tables.

OPTIONS

The following Generic options are supported:
--help , -h
Displays usage instructions.
--output=FILENAME
Write output into FILENAME and dump any embedded managed resources.
--mscorlib
For non-corlib assemblies, use "mscorlib" as the assembly name. This is useful for round-tripping the IL with ilasm.
--show-method-tokens
Display tokens for disassembled methods.
--show-tokens
Display tokens for strings, types, methods, fields, etc.

OPTIONS TO DISPLAY METADATA TABLES

The following options are used to display metadata tables instead of disassembling the CIL image.
--assembly
Dumps the contents of the Assembly table.
--assemblyref
Dumps the contents of the AssemblyRef table.
--classlayout
Dumps the contents of the ClassLayout table.
--constant
Dumps the contents of the Constant table.
--customattr
Dumps the contents of the CustomAttribute table.
--declsec
Dumps the contents of the DeclSec table.
--event
Dumps the contents of the Event table.
--exported
Dumps the contents of the ExportedType table.
--fields
Dumps the contents of the Field table.
--file
Dumps the contents of the File table.
--forward-decls
Dumps forward declarations for classes.
--genericpar
Dumps the contents of the GenericParam table.
--implmap
Dumps the contents of the ImplMap table.
--interface
Dumps the contents of the InterfaceImpl table.
--manifest
Dumps the contents of the ManifestResource table.
--marshal
Dumps the contents of the FieldMarshal table.
--memberref
Dumps the contents of the MemberRef table.
--method
Dumps the contents of the MethodDef table.
--methodimpl
Dumps the contents of the MethodImpl table.
--methodspec
Dumps the contents of the MethodSpec table.
--methodsem
Dumps the contents of the MethodSemantics table.
--module
Dumps the contents of the Module table.
--moduleref
Dumps the contents of the ModuleRef table.
--mresources
Saves all the managed resources embedded in the assembly into the current directory. To get a list of the embedded resources use the --manifest option.
--presources
Prints offsets and names of manifest resources embedded in the assembly.
--nested
Dumps the contents of the NestedClass table.
--param
Dumps the contents of the Param table.
--parconst
Dumps the contents of the GenericParameterConstraint table.
--property
Dumps the contents of the Property table.
--propertymap
Dumps the contents of the PropertyMap table.
--standalonesig
Dumps the contents of the StandAloneSig table.
--typedef
Dumps the contents of the TypeDef table.
--typespec
Dumps the contents of the TypeSpec table.
--typeref
Dumps the contents of the TypeRef table.
--blob
Dumps the entire contents of the blob stream as hex.
--strings
Dumps the contents of the Strings heap.
--userstrings
Dumps the contents of the User-Strings heap
If no flags are specified the program dumps the content of the image in a format that can be used to rountrip the code.

ENVIRONMENT VARIABLES

MONO_PATH
Provides a search path to mono and mint where to look for library files. Directories are separated by the platform path separator (colons on unix). Example: /home/username/lib:/usr/local/mono/lib

AUTHOR

monodis was written by Miguel de Icaza, Paolo Molaro and Dietmar Maurer.

SEE ALSO

pedump(1)

Recommended readings

Pages related to monodis you should read also: