File

Below is an overview of all actions that can be accessed from this menu.

UI Action Name
Action Name
Description

New instance

NewInstance

Open a new IDA instance

Open...

LoadNewFile

Load a new file or database

Load file

``

Reload the input file

ReloadFile

Reload the input file. More…

Additional binary file...

LoadFile

Load additional binary file. More…

IDS/IDT file...

LoadIdsFile

Load a symbol file (IDS). More…

PDB file...

LoadPdbFile

Load a debug information file (PDB). More…

DBG file...

LoadDbgFile

Load a debug information file (DBG). More…

TDS file...

LoadTdsFile

Load a debug information file (TDS). More…

FLIRT signature file...

LoadSigFile

Load a FLIRT signature file. More…

Parse C header file...

LoadHeaderFile

This command allows you to apply type declarations from a C header file to the program. More…

Produce file

``

Create MAP file...

ProduceMap

Create a map information file. More…

Create ASM file...

ProduceAsm

Create an assembler file. More…

Create INC file...

ProduceInc

Create an include file. More…

Create LST file...

ProduceLst

Create a listing file. More…

Create EXE file...

ProduceExe

Create an executable file. More…

Create DIF file...

ProduceDiff

Create a difference file. More…

Create C file...

hx:CreateCFile

Create C file

Create HTML file...

ProduceHtml

Create a HTML file. More…

Create SIG file...

makesig:create_signature

Create SIG file

Create flow chart GDL...

ProduceFuncGdl

Create flow chart GDL. More…

Create call graph GDL...

ProduceCallGdl

Create call graph GDL. More…

Create C header file...

ProduceHeader

Creates a header file from local types. More…

Dump database to IDC file...

DumpDatabase

Dump database to IDC file. This command saves current IDA database into a text file. More…

Dump typeinfo to IDC file...

DumpTypes

Dump type information to IDC file. This command saves information about the user-defined types from the IDA database into a text file. More…

Script file...

Execute

Execute a script file

Script command...

ExecuteLine

Execute a script command

Save

SaveBase

Save the database

Save as...

SaveBaseAs

Save the database as...

Take database snapshot...

SaveBaseSnap

Take database snapshot. More…

Close

CloseBase

Close

Quick start

QuickStart

Display the quick start window

Exit

QuitIDA

Save everything and exit IDA

Reload the input file

Reload the input file. This command reloads the same input file into the database. IDA tries to retain as much information as possible in the database. All the names, comments, segmentation information and similar will be retained. Only the values of individual bytes will be changed. This command works for some input file types only: if the file was loaded into the database with special settings, this command may fail. In this case, use Dump database to IDC file command and reload the file manually.

Additional binary file...

Load additional binary file. The new file is added to the current database and all existing information is retained. The file content will appear as unexplored bytes in the program. This command only allows you to load binary files.

IDS/IDT file...

Load a symbol file (IDS). An IDS file contains information about well-known functions (such as functions from MS Windows API), namely:

  • their names

  • their ordinal number in the DLL

  • an eventual informative comment

  • the number of parameters passed on the stack

  • the number of parameters purged when returning IDS files are automatically loaded if they are found in the IDS directory. This command allows you to load an IDS file from any directory, even after the main file has been loaded into the database.

PDB file...

Load a debug information file (PDB). If the program being disassembled has a companion PDB file, then this command may be used to load information from the PDB file into the database. By default IDA uses in-house code to parse and load PDB files. However, our code can not parse old v2.0 PDB files. For them, IDA can fall back to using Microsoft DLLs (the default is "do not fall back"). Please read more in cfg/pdb.cfg. Command line switch -Opdb:option1:option2 overrides for ida session the value in cfg/pdb.cfg.

DBG file...

Load a debug information file (DBG). This command loads a DBG file. If the program being disassembled has a companion DBG file, then this command may be used to load information from a DBG file into the database. IDA loads DBG files automatically if it can find them in the directory with the input file. The built-in debug information loader cannot load NB10 format files and PDB files. To load those files, please use a special plugin, PDB.DLL, which can be run manually using Edit → Plugins submenu. This plugin uses MS Windows DLLs to load the debug information and therefore has the following limitations:

  • it works only under MS Windows

  • it will load only PDBs compatible with the currently installed IMAGEHLP.DLL

TDS file...

Load a debug information file (TDS). If the program being disassembled has a companion TDS file, this command may be used to load information from the TDS file into the database. The TDS file must be placed in the same directory together with the input file. The LoadTdsFile command launches a special plugin TDS.DLL, which can be run manually using Edit → Plugins submenu.

FLIRT signature file...

Load a FLIRT signature file. This command allows you to apply an additional signature file to the program. A signature file contains patterns of standard runtime functions. With their help, IDA is able to recognize the standard functions and names them accordingly. IDA attempts to detect the necessary signature files automatically but unfortunately, this is not always possible. This command adds the specified signature file into the planned signature files queue. Signature files reside in the subdirectories of the SIG directory. Each processor has its own subdirectory. The name of the subdirectory is equivalent to the name of the processor module file (z80 for z80.w32, for example). Note: IBM PC signatures are located in the SIG directory itself. Note: the IDASGN environment variable can be used to specify the location of the signatures directory.

There is another way to load a signature file: you may insert/delete signature files in the following way:

  • open the signatures window

  • press Ins to insert a signature file to the queue

  • press Del to delete a signature file from the queue

This is a preferred way of applying signatures because useful information, such as the number of identified functions is displayed in the signature window.

FLIRT works only for the processors with normal byte size. The byte size must be equal to 8 (processors with wide bytes like AVR or DSP56K are not supported)

Parse C header file...

This command allows you to apply type declarations from a C header file to the program. IDA reads and parses the specified header file as a C compiler does. In other words, it mimics the front-end of a C compiler with some restrictions:

  • Only type declarations are allowed. The function definitions in the input file are skipped.

  • Not all C++ header files are not supported, only simple classes can be parsed.

  • The compiler specific predefined macros are not defined, you have to define them manually in the header file.

Don't forget to specify the compiler and memory model in the compiler setup dialog box (Options → Compiler...) before loading a header file. All type declarations found in the input file are stored in the current database in the form of a type library. These type declarations can be used to define new structure and enumeration definitions.

In the case of an error in the input file, the error messages appear in the message window. In any case, the function declarations that are already parsed are not deleted from the database. IDA stops parsing the input file when 20 errors occur. IDA 7.7 introduced an alternative header file parser based on libclang.

Create MAP file...

Create a map information file. Please enter a file name for the map. IDA will write the following information about this file:

  • current segmentation

  • list of names sorted by values

You may disable the generation of the segmentation information. You may also enable or disable dummy names (Options → Name representation...) in the output file. You can use this map file for your information, and also for debugging (for example, Periscope from Periscope Company or Borland's Turbo Debugger can read this file).

Create ASM file...

Create an assembler file. Please enter a file name for the assembler text file. IDA will write the disassembled text to this file. If you have selected a range on the screen using the Begin selection command (action Anchor), IDA will write only the selected range (from the current address to the anchor). If some I/O problem (e.g., disk full) occurs during writing to the file, IDA will stop and a partial file will be created.

Create INC file...

Create an include file. Please enter a file name for the assembler include file. IDA will write the information about the defined types (structures and enums) to this file. If some I/O problem (e.g. disk full) occurs during writing to the file, IDA will stop and a partial file will be created.

Create LST file...

Create a listing file. Enter a file name for the assembler listing file. IDA will write the disassembled text to this file. If you've selected a range on the screen using the Begin selection command (action Anchor), IDA will write only the selected range (from the current address to the anchor). If some I/O problem (e.g. disk full) occurs during writing to the file, IDA will stop and a partial file will be created.

Create EXE file...

Create an executable file. Enter a file name for the new executable file. Usually this command is used after patching (see actions PatchByte, PatchWord) to obtain a patched version of the file. IDA produces executable files only for:

  • MS DOS .exe

  • MS DOS .com

  • MS DOS .drv

  • MS DOS .sys

  • general binary

  • Intel Hex Object Format

  • MOS Technology Hex Object Format

For other file formats please create a difference file (the Create DIFF file command; action ProduceDiff).

Only Change byte... and Change word... commands (see actions PatchByte, PatchWord) affect the executable file contents, other commands (including the Manual... command) will not affect the content of the disassembled file.

EXE files: Output files will have the same EXE-header and relocation table as the input file. IDA will fill unused ranges of the EXE file (e.g. between relocation table and loadable pages) with zeroes.

Create DIF file...

Create a difference file. This command will prompt you for a filename and then will create a plain text difference file of the following format:

Create HTML file...

Create a HTML file. Please enter a file name for the HTML file. IDA will write the disassembled text to this file. If you've selected a range on the screen using the Begin selection command (action Anchor), IDA will write only the selected range (from the current address to the anchor). If some I/O problem (e.g. disk full) occurs during writing to the file, IDA will stop and a partial file will be created. This command is available only in the graphical version of IDA.

Create flow chart GDL...

Create flow chart GDL. This command creates a GDL (graph description file) with the flow chart of the current function. If there is an active selection, its flow chart will be generated. IDA will ask for the output file name. Regardless of the specified extension, the .GDL extension will be used.

Create call graph GDL...

Create call graph GDL. This command creates a GDL (graph description file) with the graph of the function calls. IDA will ask for the output file name. Regardless of the specified extension, the .GDL extension will be used.

Create C header file...

Creates a header file from local types. This command saves all definitions in the local types window into a C header file.

Dump database to IDC file...

Dump database to IDC file. This command saves current IDA database into a text file.

You can use it as a safety command:

  • to protect your work from disasters

  • to migrate information into new database formats of IDA.

This command is used when you want to switch to a new version of IDA. Usually each new version of IDA has its own database format. To create a new format database, you need:

  1. to issue the 'Dump...' command for the old database (using old version of IDA). You will get an IDC file containing all information from your old database.

  2. to reload your database using new IDA with switch -x.

  3. to compile and execute the IDC file with command 'Execute IDC file' (usually F2)

Please note that this command does not save everything to text file. Any information about the local variables will be lost!

Dump typeinfo to IDC file...

Dump type information to IDC file. This command saves information about the user-defined types from the IDA database into a text file.

Information about enums, structure types and other user-defined types is saved in a text form as an IDC program.

You can use this command to migrate the type definitions from one database to another.

Take database snapshot...

Take database snapshot. The snapshot can be later restored from the database snapshot manager.

Snapshots work only with regular databases. Unpacked databases do not support them.

Last updated

Was this helpful?