Program: 21415
Project: 21415
Buggy source:
@Override public PluginStep doStep(PluginStep step,String parameter){
  if (step.getStep() == PluginStep.STEP_DECRYPT) {
    Vector<String> decryptedLinks=new Vector<String>();
    try {
      URL url=new URL(parameter);
      RequestInfo reqinfo=getRequest(url);
      int count=0;
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternRapidshare) > 0) {
        count++;
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternNetload) > 0) {
        count++;
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternUploaded) > 0) {
        count++;
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternGulli) > 0) {
        count++;
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternShareonline) > 0) {
        count++;
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternLoad) > 0) {
        count++;
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternSimpleupload) > 0) {
        count++;
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternCocoshare) > 0) {
        count++;
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternFilehoster) > 0) {
        count++;
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternMegaupload) > 0) {
        count++;
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternSpeedyshare) > 0) {
        count++;
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternArchiv) > 0) {
        count++;
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternBluehost) > 0) {
        count++;
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternDatenklo) > 0) {
        count++;
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternSharebase) > 0) {
        count++;
      }
      firePluginEvent(new PluginEvent(this,PluginEvent.PLUGIN_PROGRESS_MAX,count));
      RequestInfo reqhelp;
      parameter=parameter.replaceAll("String_Node_Str","String_Node_Str");
      parameter=parameter.replaceAll("String_Node_Str","String_Node_Str");
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternRapidshare) > 0) {
        reqhelp=getRequest(new URL(parameter + "String_Node_Str"));
        decryptedLinks.add(getBetween(reqhelp.getHtmlCode(),"String_Node_Str","String_Node_Str"));
        firePluginEvent(new PluginEvent(this,PluginEvent.PLUGIN_PROGRESS_INCREASE,null));
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternNetload) > 0) {
        reqhelp=getRequest(new URL(parameter + "String_Node_Str"));
        decryptedLinks.add(getBetween(reqhelp.getHtmlCode(),"String_Node_Str","String_Node_Str"));
        firePluginEvent(new PluginEvent(this,PluginEvent.PLUGIN_PROGRESS_INCREASE,null));
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternUploaded) > 0) {
        reqhelp=getRequest(new URL(parameter + "String_Node_Str"));
        decryptedLinks.add(getBetween(reqhelp.getHtmlCode(),"String_Node_Str","String_Node_Str"));
        firePluginEvent(new PluginEvent(this,PluginEvent.PLUGIN_PROGRESS_INCREASE,null));
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternGulli) > 0) {
        reqhelp=getRequest(new URL(parameter + "String_Node_Str"));
        decryptedLinks.add(getBetween(reqhelp.getHtmlCode(),"String_Node_Str","String_Node_Str"));
        firePluginEvent(new PluginEvent(this,PluginEvent.PLUGIN_PROGRESS_INCREASE,null));
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternShareonline) > 0) {
        reqhelp=getRequest(new URL(parameter + "String_Node_Str"));
        decryptedLinks.add(getBetween(reqhelp.getHtmlCode(),"String_Node_Str","String_Node_Str"));
        firePluginEvent(new PluginEvent(this,PluginEvent.PLUGIN_PROGRESS_INCREASE,null));
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternLoad) > 0) {
        reqhelp=getRequest(new URL(parameter + "String_Node_Str"));
        decryptedLinks.add(getBetween(reqhelp.getHtmlCode(),"String_Node_Str","String_Node_Str"));
        firePluginEvent(new PluginEvent(this,PluginEvent.PLUGIN_PROGRESS_INCREASE,null));
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternSimpleupload) > 0) {
        reqhelp=getRequest(new URL(parameter + "String_Node_Str"));
        decryptedLinks.add(getBetween(reqhelp.getHtmlCode(),"String_Node_Str","String_Node_Str"));
        firePluginEvent(new PluginEvent(this,PluginEvent.PLUGIN_PROGRESS_INCREASE,null));
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternCocoshare) > 0) {
        reqhelp=getRequest(new URL(parameter + "String_Node_Str"));
        decryptedLinks.add(getBetween(reqhelp.getHtmlCode(),"String_Node_Str","String_Node_Str"));
        firePluginEvent(new PluginEvent(this,PluginEvent.PLUGIN_PROGRESS_INCREASE,null));
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternFilehoster) > 0) {
        reqhelp=getRequest(new URL(parameter + "String_Node_Str"));
        decryptedLinks.add(getBetween(reqhelp.getHtmlCode(),"String_Node_Str","String_Node_Str"));
        firePluginEvent(new PluginEvent(this,PluginEvent.PLUGIN_PROGRESS_INCREASE,null));
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternMegaupload) > 0) {
        reqhelp=getRequest(new URL(parameter + "String_Node_Str"));
        decryptedLinks.add(getBetween(reqhelp.getHtmlCode(),"String_Node_Str","String_Node_Str"));
        firePluginEvent(new PluginEvent(this,PluginEvent.PLUGIN_PROGRESS_INCREASE,null));
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternSpeedyshare) > 0) {
        reqhelp=getRequest(new URL(parameter + "String_Node_Str"));
        decryptedLinks.add(getBetween(reqhelp.getHtmlCode(),"String_Node_Str","String_Node_Str"));
        firePluginEvent(new PluginEvent(this,PluginEvent.PLUGIN_PROGRESS_INCREASE,null));
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternArchiv) > 0) {
        reqhelp=getRequest(new URL(parameter + "String_Node_Str"));
        decryptedLinks.add(getBetween(reqhelp.getHtmlCode(),"String_Node_Str","String_Node_Str"));
        firePluginEvent(new PluginEvent(this,PluginEvent.PLUGIN_PROGRESS_INCREASE,null));
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternDatenklo) > 0) {
        reqhelp=getRequest(new URL(parameter + "String_Node_Str"));
        decryptedLinks.add(getBetween(reqhelp.getHtmlCode(),"String_Node_Str","String_Node_Str"));
        firePluginEvent(new PluginEvent(this,PluginEvent.PLUGIN_PROGRESS_INCREASE,null));
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternBluehost) > 0) {
        reqhelp=getRequest(new URL(parameter + "String_Node_Str"));
        decryptedLinks.add(getBetween(reqhelp.getHtmlCode(),"String_Node_Str","String_Node_Str"));
        firePluginEvent(new PluginEvent(this,PluginEvent.PLUGIN_PROGRESS_INCREASE,null));
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternSharebase) > 0) {
        reqhelp=getRequest(new URL(parameter + "String_Node_Str"));
        decryptedLinks.add(getBetween(reqhelp.getHtmlCode(),"String_Node_Str","String_Node_Str"));
        firePluginEvent(new PluginEvent(this,PluginEvent.PLUGIN_PROGRESS_INCREASE,null));
      }
      System.out.println(decryptedLinks.toString());
      firePluginEvent(new PluginEvent(this,PluginEvent.PLUGIN_PROGRESS_FINISH,null));
      step.setParameter(decryptedLinks);
    }
 catch (    IOException e) {
      e.printStackTrace();
    }
  }
  return null;
}

Fixed version (ground truth):
@Override public PluginStep doStep(PluginStep step,String parameter){
  if (step.getStep() == PluginStep.STEP_DECRYPT) {
    Vector<String> decryptedLinks=new Vector<String>();
    try {
      URL url=new URL(parameter);
      RequestInfo reqinfo=getRequest(url);
      int count=0;
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternRapidshare) > 0) {
        count++;
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternNetload) > 0) {
        count++;
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternUploaded) > 0) {
        count++;
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternGulli) > 0) {
        count++;
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternShareonline) > 0) {
        count++;
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternLoad) > 0) {
        count++;
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternSimpleupload) > 0) {
        count++;
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternCocoshare) > 0) {
        count++;
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternFilehoster) > 0) {
        count++;
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternMegaupload) > 0) {
        count++;
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternSpeedyshare) > 0) {
        count++;
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternArchiv) > 0) {
        count++;
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternBluehost) > 0) {
        count++;
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternDatenklo) > 0) {
        count++;
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternSharebase) > 0) {
        count++;
      }
      firePluginEvent(new PluginEvent(this,PluginEvent.PLUGIN_PROGRESS_MAX,count));
      RequestInfo reqhelp;
      parameter=parameter.replaceAll("String_Node_Str","String_Node_Str");
      parameter=parameter.replaceAll("String_Node_Str","String_Node_Str");
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternRapidshare) > 0) {
        reqhelp=getRequest(new URL(parameter + "String_Node_Str"));
        decryptedLinks.add(getBetween(reqhelp.getHtmlCode(),"String_Node_Str","String_Node_Str"));
        firePluginEvent(new PluginEvent(this,PluginEvent.PLUGIN_PROGRESS_INCREASE,null));
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternNetload) > 0) {
        reqhelp=getRequest(new URL(parameter + "String_Node_Str"));
        decryptedLinks.add(getBetween(reqhelp.getHtmlCode(),"String_Node_Str","String_Node_Str"));
        firePluginEvent(new PluginEvent(this,PluginEvent.PLUGIN_PROGRESS_INCREASE,null));
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternUploaded) > 0) {
        reqhelp=getRequest(new URL(parameter + "String_Node_Str"));
        decryptedLinks.add(getBetween(reqhelp.getHtmlCode(),"String_Node_Str","String_Node_Str"));
        firePluginEvent(new PluginEvent(this,PluginEvent.PLUGIN_PROGRESS_INCREASE,null));
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternGulli) > 0) {
        reqhelp=getRequest(new URL(parameter + "String_Node_Str"));
        decryptedLinks.add(getBetween(reqhelp.getHtmlCode(),"String_Node_Str","String_Node_Str"));
        firePluginEvent(new PluginEvent(this,PluginEvent.PLUGIN_PROGRESS_INCREASE,null));
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternShareonline) > 0) {
        reqhelp=getRequest(new URL(parameter + "String_Node_Str"));
        decryptedLinks.add(getBetween(reqhelp.getHtmlCode(),"String_Node_Str","String_Node_Str"));
        firePluginEvent(new PluginEvent(this,PluginEvent.PLUGIN_PROGRESS_INCREASE,null));
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternLoad) > 0) {
        reqhelp=getRequest(new URL(parameter + "String_Node_Str"));
        decryptedLinks.add(getBetween(reqhelp.getHtmlCode(),"String_Node_Str","String_Node_Str"));
        firePluginEvent(new PluginEvent(this,PluginEvent.PLUGIN_PROGRESS_INCREASE,null));
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternSimpleupload) > 0) {
        reqhelp=getRequest(new URL(parameter + "String_Node_Str"));
        decryptedLinks.add(getBetween(reqhelp.getHtmlCode(),"String_Node_Str","String_Node_Str"));
        firePluginEvent(new PluginEvent(this,PluginEvent.PLUGIN_PROGRESS_INCREASE,null));
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternCocoshare) > 0) {
        reqhelp=getRequest(new URL(parameter + "String_Node_Str"));
        decryptedLinks.add(getBetween(reqhelp.getHtmlCode(),"String_Node_Str","String_Node_Str"));
        firePluginEvent(new PluginEvent(this,PluginEvent.PLUGIN_PROGRESS_INCREASE,null));
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternFilehoster) > 0) {
        reqhelp=getRequest(new URL(parameter + "String_Node_Str"));
        decryptedLinks.add(getBetween(reqhelp.getHtmlCode(),"String_Node_Str","String_Node_Str"));
        firePluginEvent(new PluginEvent(this,PluginEvent.PLUGIN_PROGRESS_INCREASE,null));
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternMegaupload) > 0) {
        reqhelp=getRequest(new URL(parameter + "String_Node_Str"));
        decryptedLinks.add(getBetween(reqhelp.getHtmlCode(),"String_Node_Str","String_Node_Str"));
        firePluginEvent(new PluginEvent(this,PluginEvent.PLUGIN_PROGRESS_INCREASE,null));
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternSpeedyshare) > 0) {
        reqhelp=getRequest(new URL(parameter + "String_Node_Str"));
        decryptedLinks.add(getBetween(reqhelp.getHtmlCode(),"String_Node_Str","String_Node_Str"));
        firePluginEvent(new PluginEvent(this,PluginEvent.PLUGIN_PROGRESS_INCREASE,null));
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternArchiv) > 0) {
        reqhelp=getRequest(new URL(parameter + "String_Node_Str"));
        decryptedLinks.add(getBetween(reqhelp.getHtmlCode(),"String_Node_Str","String_Node_Str"));
        firePluginEvent(new PluginEvent(this,PluginEvent.PLUGIN_PROGRESS_INCREASE,null));
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternDatenklo) > 0) {
        reqhelp=getRequest(new URL(parameter + "String_Node_Str"));
        decryptedLinks.add(getBetween(reqhelp.getHtmlCode(),"String_Node_Str","String_Node_Str"));
        firePluginEvent(new PluginEvent(this,PluginEvent.PLUGIN_PROGRESS_INCREASE,null));
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternBluehost) > 0) {
        reqhelp=getRequest(new URL(parameter + "String_Node_Str"));
        decryptedLinks.add(getBetween(reqhelp.getHtmlCode(),"String_Node_Str","String_Node_Str"));
        firePluginEvent(new PluginEvent(this,PluginEvent.PLUGIN_PROGRESS_INCREASE,null));
      }
      if ((Boolean)this.getProperties().getProperty("String_Node_Str",true) && countOccurences(reqinfo.getHtmlCode(),patternSharebase) > 0) {
        reqhelp=getRequest(new URL(parameter + "String_Node_Str"));
        decryptedLinks.add(getBetween(reqhelp.getHtmlCode(),"String_Node_Str","String_Node_Str"));
        firePluginEvent(new PluginEvent(this,PluginEvent.PLUGIN_PROGRESS_INCREASE,null));
      }
      firePluginEvent(new PluginEvent(this,PluginEvent.PLUGIN_PROGRESS_FINISH,null));
      step.setParameter(decryptedLinks);
    }
 catch (    IOException e) {
      e.printStackTrace();
    }
  }
  return null;
}