Program: 153657
Project: 153657
Buggy source:
public void onMessage(String channel,String sender,String login,String hostname,String message){
  if (message.charAt(0) == '!') {
    String[] parts=message.split("String_Node_Str");
    if (message.equalsIgnoreCase("String_Node_Str")) {
      sendMessage(channel,sender + "String_Node_Str");
    }
 else     if (message.equalsIgnoreCase("String_Node_Str") || message.equalsIgnoreCase("String_Node_Str")) {
      String curPlayers="String_Node_Str";
      int cPlayers=0;
      Player[] players;
      if (channel.equalsIgnoreCase(ircman.getJ2().ircAdminChannel)) {
        players=ircman.getJ2().getServer().getOnlinePlayers();
      }
 else {
        players=ircman.getJ2().minitrue.getOnlinePlayers();
      }
      for (      Player p : players) {
        if (p != null) {
          if (curPlayers.equals("String_Node_Str")) {
            curPlayers+=p.getName();
          }
 else {
            curPlayers+="String_Node_Str" + p.getName();
          }
          cPlayers++;
        }
      }
      if (curPlayers == "String_Node_Str")       sendMessage(channel,"String_Node_Str");
 else {
        if (message.equalsIgnoreCase("String_Node_Str"))         sendMessage(channel,"String_Node_Str" + cPlayers + "String_Node_Str"+ ircman.getJ2().playerLimit+ "String_Node_Str");
 else         sendMessage(channel,"String_Node_Str" + cPlayers + "String_Node_Str"+ ircman.getJ2().playerLimit+ "String_Node_Str"+ curPlayers);
      }
    }
 else     if (message.equalsIgnoreCase("String_Node_Str")) {
      String curAdmins="String_Node_Str";
      for (      Player p : ircman.getJ2().getServer().getOnlinePlayers()) {
        if (p != null && (ircman.getJ2().hasFlag(p,Flag.ADMIN))) {
          if (curAdmins == "String_Node_Str") {
            curAdmins+=p.getName();
          }
 else {
            curAdmins+="String_Node_Str" + p.getName();
          }
        }
      }
      if (curAdmins == "String_Node_Str")       sendMessage(channel,"String_Node_Str");
 else       if (channel.equalsIgnoreCase(ircman.getJ2().ircAdminChannel))       sendMessage(channel,curAdmins);
 else       sendMessage(channel,"String_Node_Str");
    }
 else     if (ircMsg && parts[0].equalsIgnoreCase("String_Node_Str")) {
      if (channel.equalsIgnoreCase(ircman.getJ2().ircAdminChannel)) {
        sendMessage(channel,"String_Node_Str");
      }
 else {
        String damessage="String_Node_Str";
        for (int $x=1; $x < parts.length; $x++) {
          damessage+="String_Node_Str" + parts[$x];
        }
        doMsg(channel,sender,damessage);
      }
    }
 else     if (ircMsg && parts[0].equalsIgnoreCase("String_Node_Str")) {
      if (!channel.equalsIgnoreCase(ircman.getJ2().ircAdminChannel)) {
        sendMessage(channel,"String_Node_Str");
      }
 else {
        String damessage="String_Node_Str";
        for (int $x=1; $x < parts.length; $x++) {
          damessage+="String_Node_Str" + parts[$x];
        }
        this.ircman.getJ2().chat.handleBroadcastFromIRC(sender,damessage);
      }
    }
 else     if (ircMsg && parts[0].equalsIgnoreCase("String_Node_Str")) {
      if (!channel.equalsIgnoreCase(ircman.getJ2().ircAdminChannel)) {
        sendMessage(channel,"String_Node_Str");
      }
 else {
        String damessage="String_Node_Str";
        int size=ircman.getJ2().reports.getReports().size();
        damessage="String_Node_Str" + size + "String_Node_Str";
        if (size > 5) {
          damessage+="String_Node_Str";
        }
        sendMessage(channel,damessage);
      }
    }
 else     if (ircMsg && parts[0].equalsIgnoreCase("String_Node_Str")) {
      if (channel.equalsIgnoreCase(ircman.getJ2().ircAdminChannel)) {
        sendMessage(channel,"String_Node_Str");
      }
      String damessage="String_Node_Str";
      for (int $x=1; $x < parts.length; $x++) {
        damessage+="String_Node_Str" + parts[$x];
      }
      doMeMsg(channel,sender,damessage);
    }
    return;
  }
  if (message.charAt(0) == '.' && channel.equalsIgnoreCase(ircman.getJ2().ircChannel)) {
    String[] parts=message.split("String_Node_Str");
    if (ircman.ircCommand(hostname,sender,parts)) {
      sendRawLine("String_Node_Str" + sender + "String_Node_Str");
    }
 else {
      if (!ircMsg) {
        doMsg(channel,sender,"String_Node_Str" + message);
      }
    }
    return;
  }
  if (!ircMsg) {
    doMsg(channel,sender,"String_Node_Str" + message);
  }
}

Fixed version (ground truth):
public void onMessage(String channel,String sender,String login,String hostname,String message){
  if (message.charAt(0) == '!') {
    String[] parts=message.split("String_Node_Str");
    if (message.equalsIgnoreCase("String_Node_Str")) {
      sendMessage(channel,sender + "String_Node_Str");
    }
 else     if (message.equalsIgnoreCase("String_Node_Str") || message.equalsIgnoreCase("String_Node_Str")) {
      String curPlayers="String_Node_Str";
      int cPlayers=0;
      Player[] players;
      if (channel.equalsIgnoreCase(irc.getJ2().ircAdminChannel)) {
        players=irc.getJ2().getServer().getOnlinePlayers();
      }
 else {
        players=irc.getJ2().minitrue.getOnlinePlayers();
      }
      for (      Player p : players) {
        if (p != null) {
          if (curPlayers.equals("String_Node_Str")) {
            curPlayers+=p.getName();
          }
 else {
            curPlayers+="String_Node_Str" + p.getName();
          }
          cPlayers++;
        }
      }
      if (curPlayers == "String_Node_Str")       sendMessage(channel,"String_Node_Str");
 else {
        if (message.equalsIgnoreCase("String_Node_Str"))         sendMessage(channel,"String_Node_Str" + cPlayers + "String_Node_Str"+ irc.getJ2().playerLimit+ "String_Node_Str");
 else         sendMessage(channel,"String_Node_Str" + cPlayers + "String_Node_Str"+ irc.getJ2().playerLimit+ "String_Node_Str"+ curPlayers);
      }
    }
 else     if (message.equalsIgnoreCase("String_Node_Str")) {
      String curAdmins="String_Node_Str";
      for (      Player p : irc.getJ2().getServer().getOnlinePlayers()) {
        if (p != null && (irc.getJ2().hasFlag(p,Flag.ADMIN))) {
          if (curAdmins == "String_Node_Str") {
            curAdmins+=p.getName();
          }
 else {
            curAdmins+="String_Node_Str" + p.getName();
          }
        }
      }
      if (curAdmins == "String_Node_Str")       sendMessage(channel,"String_Node_Str");
 else       if (channel.equalsIgnoreCase(irc.getJ2().ircAdminChannel))       sendMessage(channel,curAdmins);
 else       sendMessage(channel,"String_Node_Str");
    }
 else     if (ircMsg && parts[0].equalsIgnoreCase("String_Node_Str")) {
      if (channel.equalsIgnoreCase(irc.getJ2().ircAdminChannel)) {
        sendMessage(channel,"String_Node_Str");
      }
 else {
        String damessage="String_Node_Str";
        for (int $x=1; $x < parts.length; $x++) {
          damessage+="String_Node_Str" + parts[$x];
        }
        doMsg(channel,sender,damessage);
      }
    }
 else     if (ircMsg && parts[0].equalsIgnoreCase("String_Node_Str")) {
      if (!channel.equalsIgnoreCase(irc.getJ2().ircAdminChannel)) {
        sendMessage(channel,"String_Node_Str");
      }
 else {
        String damessage="String_Node_Str";
        for (int $x=1; $x < parts.length; $x++) {
          damessage+="String_Node_Str" + parts[$x];
        }
        this.irc.getJ2().chat.handleBroadcastFromIRC(sender,damessage);
      }
    }
 else     if (ircMsg && parts[0].equalsIgnoreCase("String_Node_Str")) {
      if (!channel.equalsIgnoreCase(irc.getJ2().ircAdminChannel)) {
        sendMessage(channel,"String_Node_Str");
      }
 else {
        String damessage="String_Node_Str";
        int size=irc.getJ2().reports.getReports().size();
        damessage="String_Node_Str" + size + "String_Node_Str";
        if (size > 5) {
          damessage+="String_Node_Str";
        }
        sendMessage(channel,damessage);
      }
    }
 else     if (ircMsg && parts[0].equalsIgnoreCase("String_Node_Str")) {
      if (channel.equalsIgnoreCase(irc.getJ2().ircAdminChannel)) {
        sendMessage(channel,"String_Node_Str");
      }
      String damessage="String_Node_Str";
      for (int $x=1; $x < parts.length; $x++) {
        damessage+="String_Node_Str" + parts[$x];
      }
      doMeMsg(channel,sender,damessage);
    }
    return;
  }
  if (message.charAt(0) == '.' && channel.equalsIgnoreCase(irc.getJ2().ircChannel)) {
    String[] parts=message.split("String_Node_Str");
    if (irc.ircCommand(hostname,sender,parts)) {
      sendRawLine("String_Node_Str" + sender + "String_Node_Str");
    }
 else {
      if (!ircMsg) {
        doMsg(channel,sender,"String_Node_Str" + message);
      }
    }
    return;
  }
  if (message.equals("String_Node_Str") && channel.equalsIgnoreCase(irc.getJ2().ircChannel)) {
    this.irc.cough(hostname);
  }
  if (!ircMsg) {
    doMsg(channel,sender,"String_Node_Str" + message);
  }
}