Program: 62174
Project: 62174
Buggy source:
/** 
 * @param args the command line arguments
 */
public static void main(String[] args) throws IOException {
  loadProperties();
  View.setLookAndFeel();
  Configuration.loadFromFile(getConfigFile(),getReplacementsFile());
  int pos=0;
  if (args.length > 0) {
    if (args[0].equals("String_Node_Str")) {
      Configuration.debugMode=true;
      pos++;
    }
  }
  initLogging(Configuration.debugMode);
  if (args.length < pos + 1) {
    autoCheckForUpdates();
    showModeFrame();
  }
 else {
    if (args[pos].equals("String_Node_Str")) {
      int port=55555;
      for (int i=pos; i < args.length; i++) {
        if (args[i].startsWith("String_Node_Str")) {
          try {
            port=Integer.parseInt(args[pos].substring(2));
          }
 catch (          NumberFormatException nex) {
            System.err.println("String_Node_Str");
          }
        }
      }
      if (proxyFrame == null) {
        proxyFrame=new ProxyFrame();
      }
      proxyFrame.setPort(port);
      addTrayIcon();
      switchProxy();
    }
 else     if (args[pos].equals("String_Node_Str")) {
      if (args.length < pos + 4) {
        badArguments();
      }
      String exportFormat=args[pos + 1];
      if (!exportFormat.toLowerCase().equals("String_Node_Str")) {
        if (!exportFormat.toLowerCase().equals("String_Node_Str")) {
          if (!exportFormat.toLowerCase().equals("String_Node_Str")) {
            if (!exportFormat.toLowerCase().equals("String_Node_Str")) {
              if (!exportFormat.toLowerCase().equals("String_Node_Str")) {
                if (!exportFormat.toLowerCase().equals("String_Node_Str")) {
                  if (!exportFormat.toLowerCase().equals("String_Node_Str")) {
                    if (!exportFormat.toLowerCase().equals("String_Node_Str")) {
                      if (!exportFormat.toLowerCase().equals("String_Node_Str")) {
                        if (!exportFormat.toLowerCase().equals("String_Node_Str")) {
                          if (!exportFormat.toLowerCase().equals("String_Node_Str")) {
                            if (!exportFormat.toLowerCase().equals("String_Node_Str")) {
                              System.err.println("String_Node_Str" + exportFormat);
                              badArguments();
                            }
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        }
      }
      File outDir=new File(args[pos + 2]);
      File inFile=new File(args[pos + 3]);
      if (!inFile.exists()) {
        System.err.println("String_Node_Str");
        badArguments();
      }
      commandLineMode=true;
      boolean exportOK;
      try {
        printHeader();
        SWF exfile=new SWF(new FileInputStream(inFile),(Boolean)Configuration.getConfig("String_Node_Str",Boolean.TRUE));
        exfile.addEventListener(new EventListener(){
          @Override public void handleEvent(          String event,          Object data){
            if (event.equals("String_Node_Str")) {
              System.out.println((String)data);
            }
          }
        }
);
        if (exportFormat.equals("String_Node_Str")) {
          System.out.println("String_Node_Str");
          exfile.exportImages(outDir.getAbsolutePath() + File.separator + "String_Node_Str");
          System.out.println("String_Node_Str");
          exfile.exportShapes(outDir.getAbsolutePath() + File.separator + "String_Node_Str");
          System.out.println("String_Node_Str");
          exfile.exportActionScript(outDir.getAbsolutePath() + File.separator + "String_Node_Str",false,(Boolean)Configuration.getConfig("String_Node_Str",Boolean.TRUE));
          System.out.println("String_Node_Str");
          exfile.exportMovies(outDir.getAbsolutePath() + File.separator + "String_Node_Str");
          System.out.println("String_Node_Str");
          exfile.exportSounds(outDir.getAbsolutePath() + File.separator + "String_Node_Str",true,true);
          System.out.println("String_Node_Str");
          exfile.exportBinaryData(outDir.getAbsolutePath() + File.separator + "String_Node_Str");
          System.out.println("String_Node_Str");
          exfile.exportTexts(outDir.getAbsolutePath() + File.separator + "String_Node_Str",true);
          exportOK=true;
        }
 else         if (exportFormat.equals("String_Node_Str")) {
          exfile.exportImages(outDir.getAbsolutePath());
          exportOK=true;
        }
 else         if (exportFormat.equals("String_Node_Str")) {
          exfile.exportShapes(outDir.getAbsolutePath());
          exportOK=true;
        }
 else         if (exportFormat.equals("String_Node_Str") || exportFormat.equals("String_Node_Str")) {
          if ((pos + 5 < args.length) && (args[pos + 4].equals("String_Node_Str"))) {
            exportOK=true;
            for (int i=pos + 5; i < args.length; i++) {
              exportOK=exportOK && exfile.exportAS3Class(args[i],outDir.getAbsolutePath(),exportFormat.equals("String_Node_Str"),(Boolean)Configuration.getConfig("String_Node_Str",Boolean.TRUE));
            }
          }
 else {
            exportOK=!exfile.exportActionScript(outDir.getAbsolutePath(),exportFormat.equals("String_Node_Str"),(Boolean)Configuration.getConfig("String_Node_Str",Boolean.TRUE)).isEmpty();
          }
        }
 else         if (exportFormat.equals("String_Node_Str")) {
          exfile.exportMovies(outDir.getAbsolutePath());
          exportOK=true;
        }
 else         if (exportFormat.equals("String_Node_Str")) {
          exfile.exportSounds(outDir.getAbsolutePath(),true,true);
          exportOK=true;
        }
 else         if (exportFormat.equals("String_Node_Str")) {
          exfile.exportBinaryData(outDir.getAbsolutePath());
          exportOK=true;
        }
 else         if (exportFormat.equals("String_Node_Str")) {
          exfile.exportTexts(outDir.getAbsolutePath(),true);
          exportOK=true;
        }
 else         if (exportFormat.equals("String_Node_Str")) {
          exfile.exportTexts(outDir.getAbsolutePath(),false);
          exportOK=true;
        }
 else         if (exportFormat.equals("String_Node_Str")) {
          exfile.exportFla(outDir.getAbsolutePath(),inFile.getName(),applicationName,applicationVerName,version,(Boolean)Configuration.getConfig("String_Node_Str",Boolean.TRUE));
          exportOK=true;
        }
 else         if (exportFormat.equals("String_Node_Str")) {
          exfile.exportXfl(outDir.getAbsolutePath(),inFile.getName(),applicationName,applicationVerName,version,(Boolean)Configuration.getConfig("String_Node_Str",Boolean.TRUE));
          exportOK=true;
        }
 else {
          exportOK=false;
        }
      }
 catch (      Exception ex) {
        exportOK=false;
        System.err.print("String_Node_Str");
        Logger.getLogger(Main.class.getName()).log(Level.SEVERE,null,ex);
        System.exit(1);
      }
      if (exportOK) {
        System.out.println("String_Node_Str");
        System.exit(0);
      }
 else {
        System.err.println("String_Node_Str");
        System.exit(1);
      }
    }
 else     if (args[pos].equals("String_Node_Str")) {
      if (args.length < pos + 3) {
        badArguments();
      }
      if (SWF.fws2cws(new FileInputStream(args[pos + 1]),new FileOutputStream(args[pos + 2]))) {
        System.out.println("String_Node_Str");
      }
 else {
        System.err.println("String_Node_Str");
      }
    }
 else     if (args[pos].equals("String_Node_Str")) {
      if (args.length < pos + 3) {
        badArguments();
      }
      if (SWF.decompress(new FileInputStream(args[pos + 1]),new FileOutputStream(args[pos + 2]))) {
        System.out.println("String_Node_Str");
        System.exit(0);
      }
 else {
        System.err.println("String_Node_Str");
        System.exit(1);
      }
    }
 else     if (args[pos].equals("String_Node_Str")) {
      if (args.length < pos + 2) {
        badArguments();
      }
      try {
        Configuration.dump_tags=true;
        SWF swf=parseSWF(args[pos + 1]);
      }
 catch (      Exception ex) {
        Logger.getLogger(Main.class.getName()).log(Level.SEVERE,null,ex);
        System.exit(1);
      }
      System.exit(0);
    }
 else     if (args[pos].equals("String_Node_Str") || args[pos].equals("String_Node_Str") || args[pos].equals("String_Node_Str")) {
      printHeader();
      printCmdLineUsage();
      System.exit(0);
    }
 else     if (args.length == pos + 1) {
      autoCheckForUpdates();
      openFile(args[pos]);
    }
 else {
      badArguments();
    }
  }
}

Fixed version (ground truth):
/** 
 * @param args the command line arguments
 */
public static void main(String[] args) throws IOException {
  loadProperties();
  View.setLookAndFeel();
  Configuration.loadFromFile(getConfigFile(),getReplacementsFile());
  int pos=0;
  if (args.length > 0) {
    if (args[0].equals("String_Node_Str")) {
      Configuration.debugMode=true;
      pos++;
    }
  }
  initLogging(Configuration.debugMode);
  if (args.length < pos + 1) {
    autoCheckForUpdates();
    offerAssociation();
    showModeFrame();
  }
 else {
    if (args[pos].equals("String_Node_Str")) {
      associate(false);
    }
 else     if (args[pos].equals("String_Node_Str")) {
      associate(true);
    }
 else     if (args[pos].equals("String_Node_Str")) {
      int port=55555;
      for (int i=pos; i < args.length; i++) {
        if (args[i].startsWith("String_Node_Str")) {
          try {
            port=Integer.parseInt(args[pos].substring(2));
          }
 catch (          NumberFormatException nex) {
            System.err.println("String_Node_Str");
          }
        }
      }
      if (proxyFrame == null) {
        proxyFrame=new ProxyFrame();
      }
      proxyFrame.setPort(port);
      addTrayIcon();
      switchProxy();
    }
 else     if (args[pos].equals("String_Node_Str")) {
      if (args.length < pos + 4) {
        badArguments();
      }
      String validExportFormats[]=new String[]{"String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str"};
      String exportFormat=args[pos + 1].toLowerCase();
      if (!Arrays.asList(validExportFormats).contains(exportFormat)) {
        System.err.println("String_Node_Str" + exportFormat);
        badArguments();
      }
      File outDir=new File(args[pos + 2]);
      File inFile=new File(args[pos + 3]);
      if (!inFile.exists()) {
        System.err.println("String_Node_Str");
        badArguments();
      }
      commandLineMode=true;
      boolean exportOK;
      try {
        printHeader();
        SWF exfile=new SWF(new FileInputStream(inFile),(Boolean)Configuration.getConfig("String_Node_Str",Boolean.TRUE));
        exfile.addEventListener(new EventListener(){
          @Override public void handleEvent(          String event,          Object data){
            if (event.equals("String_Node_Str")) {
              System.out.println((String)data);
            }
          }
        }
);
switch (exportFormat) {
case "String_Node_Str":
          System.out.println("String_Node_Str");
        exfile.exportImages(outDir.getAbsolutePath() + File.separator + "String_Node_Str");
      System.out.println("String_Node_Str");
    exfile.exportShapes(outDir.getAbsolutePath() + File.separator + "String_Node_Str");
  System.out.println("String_Node_Str");
exfile.exportActionScript(outDir.getAbsolutePath() + File.separator + "String_Node_Str",false,(Boolean)Configuration.getConfig("String_Node_Str",Boolean.TRUE));
System.out.println("String_Node_Str");
exfile.exportMovies(outDir.getAbsolutePath() + File.separator + "String_Node_Str");
System.out.println("String_Node_Str");
exfile.exportSounds(outDir.getAbsolutePath() + File.separator + "String_Node_Str",true,true);
System.out.println("String_Node_Str");
exfile.exportBinaryData(outDir.getAbsolutePath() + File.separator + "String_Node_Str");
System.out.println("String_Node_Str");
exfile.exportTexts(outDir.getAbsolutePath() + File.separator + "String_Node_Str",true);
exportOK=true;
break;
case "String_Node_Str":
exfile.exportImages(outDir.getAbsolutePath());
exportOK=true;
break;
case "String_Node_Str":
exfile.exportShapes(outDir.getAbsolutePath());
exportOK=true;
break;
case "String_Node_Str":
case "String_Node_Str":
if ((pos + 5 < args.length) && (args[pos + 4].equals("String_Node_Str"))) {
exportOK=true;
for (int i=pos + 5; i < args.length; i++) {
exportOK=exportOK && exfile.exportAS3Class(args[i],outDir.getAbsolutePath(),exportFormat.equals("String_Node_Str"),(Boolean)Configuration.getConfig("String_Node_Str",Boolean.TRUE));
}
}
 else {
exportOK=!exfile.exportActionScript(outDir.getAbsolutePath(),exportFormat.equals("String_Node_Str"),(Boolean)Configuration.getConfig("String_Node_Str",Boolean.TRUE)).isEmpty();
}
break;
case "String_Node_Str":
exfile.exportMovies(outDir.getAbsolutePath());
exportOK=true;
break;
case "String_Node_Str":
exfile.exportSounds(outDir.getAbsolutePath(),true,true);
exportOK=true;
break;
case "String_Node_Str":
exfile.exportBinaryData(outDir.getAbsolutePath());
exportOK=true;
break;
case "String_Node_Str":
exfile.exportTexts(outDir.getAbsolutePath(),true);
exportOK=true;
break;
case "String_Node_Str":
exfile.exportTexts(outDir.getAbsolutePath(),false);
exportOK=true;
break;
case "String_Node_Str":
exfile.exportFla(outDir.getAbsolutePath(),inFile.getName(),applicationName,applicationVerName,version,(Boolean)Configuration.getConfig("String_Node_Str",Boolean.TRUE));
exportOK=true;
break;
case "String_Node_Str":
exfile.exportXfl(outDir.getAbsolutePath(),inFile.getName(),applicationName,applicationVerName,version,(Boolean)Configuration.getConfig("String_Node_Str",Boolean.TRUE));
exportOK=true;
break;
default :
exportOK=false;
}
}
 catch (Exception ex) {
exportOK=false;
System.err.print("String_Node_Str");
Logger.getLogger(Main.class.getName()).log(Level.SEVERE,null,ex);
System.exit(1);
}
if (exportOK) {
System.out.println("String_Node_Str");
System.exit(0);
}
 else {
System.err.println("String_Node_Str");
System.exit(1);
}
}
 else if (args[pos].equals("String_Node_Str")) {
if (args.length < pos + 3) {
badArguments();
}
if (SWF.fws2cws(new FileInputStream(args[pos + 1]),new FileOutputStream(args[pos + 2]))) {
System.out.println("String_Node_Str");
}
 else {
System.err.println("String_Node_Str");
}
}
 else if (args[pos].equals("String_Node_Str")) {
if (args.length < pos + 3) {
badArguments();
}
if (SWF.decompress(new FileInputStream(args[pos + 1]),new FileOutputStream(args[pos + 2]))) {
System.out.println("String_Node_Str");
System.exit(0);
}
 else {
System.err.println("String_Node_Str");
System.exit(1);
}
}
 else if (args[pos].equals("String_Node_Str")) {
if (args.length < pos + 2) {
badArguments();
}
try {
Configuration.dump_tags=true;
SWF swf=parseSWF(args[pos + 1]);
}
 catch (Exception ex) {
Logger.getLogger(Main.class.getName()).log(Level.SEVERE,null,ex);
System.exit(1);
}
System.exit(0);
}
 else if (args[pos].equals("String_Node_Str") || args[pos].equals("String_Node_Str") || args[pos].equals("String_Node_Str")) {
printHeader();
printCmdLineUsage();
System.exit(0);
}
 else if (args.length == pos + 1) {
autoCheckForUpdates();
offerAssociation();
openFile(args[pos]);
}
 else {
badArguments();
}
}
}