I try to disassemble a bunch of PE files with the free version of IDA. However, I can't figure out how to suppress the beginning welcome message:

enter image description here

My batch command looks like this:

"C:\Program Files (x86)\IDA Free\idag" -c -B target.exe

Additionally, I also checked the C:\Program Files (x86)\IDA Free\cfg folder, especially idagui.cfg.

Do I consider the wrong version? Is it a limitation of the free IDA version?

  • Please note batch mode refers to using ida in an automated fashion, utilzing a script which is run on startup like explained by @Nirlzr – Nordwald Sep 7 '16 at 10:30
  • Thanks @Nordwald - executing the above command should however generate a meaningful target.asm file of the original target.exe? Correct? Or are there any drawbacks/errors when not supplying a script file during the process of ASM generation? I understand that a batch mode is normally only reasonable for advanced tasks, controlled by a script. But I only want to generate the ASM files for a bigger corpus of executables.. – kn000x Sep 8 '16 at 8:36
  • 1
    When using IDA Pro, the above command line works without welcome screen (using idaq). This seems to be version dependant – Nordwald Sep 8 '16 at 9:11

the -A flag only works with -S (used for executing a script when IDA starts). Without it, -A has no meaning: What will IDA do when the binary it is running? will it hang forever? will it save the IDB? will it exit afterwards? all of these questions are answered with a script, actually doing those things.

Logically, You must suppliy a script for IDA to function autonomously.

Please also note these two hickups:

  1. Autonomous mode won't suppress the licese agreement dialog that pops up the first time IDA is started, you'll have to do that manually (or edit the relevant registry key on windows, for example). Actually IIRC IDA is stuck without showing any dialog or ever running the script when the license dialog box pops up in autonomous mode.
  2. Your script will execute when the IDA starts. Without calling idaapi.autoWait() it won't wait for autoanalysis to finish. Also, without calling idaapi.qexit(0) it will never terminate.
| improve this answer | |
  • Thank you for your answer! Just for clearification: my understanding so far was, that performing the above mentioned command (without -S), IDA will open the file, performing the autoanalysis and saves the ASM file to a location. Afterwards it closes the process and I can proceed with the next executable. So, of course there is no additionally processing, as my pure goal is the generation of the ASM file. So to reach this goal, the above mentioned processing should be right? As soon as I start supplying an additional script file, I HAVE to supply further commands (as you mentioned) - correct? – kn000x Sep 6 '16 at 12:50
  • > "IDA will open the file, performing the autoanalysis and saves the ASM file to a location." AFAIK this is incorrect. There's no default behavior for -A. If that's what you want to do, you'll have to write a small idc/ipython script that performs these operations. – NirIzr Sep 6 '16 at 12:53
  • Okay - please forget about the -A - as I'm performing just the following command "C:\Program Files (x86)\IDA Free\idag" -c -B target.exe. For me it seems to work fine (roughly inspected the generated ASM files). Sorry, I will delete the mentioned -A switch... it just causes confusion. – kn000x Sep 6 '16 at 12:58

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.