Program: 79574
Project: 79574
Buggy source:
@Override public void onMessageReceived(MessageReceivedEvent event){
  final JDA jda=event.getJDA();
  final User author=event.getAuthor();
  if (author.isBot())   return;
  if (author.getIdLong() == jda.getSelfUser().getIdLong())   return;
  final Message message=event.getMessage();
  final String prefix;
  if (message.getGuild() == null) {
    prefix=shardUtil.getPrefixStore().getDefaultPrefix();
  }
 else {
    prefix=shardUtil.getPrefixStore().getPrefix(message.getGuild().getIdLong());
  }
  final String content=message.getRawContent();
  final MessageChannel channel=event.getChannel();
  if (content.startsWith(prefix)) {
    String[] split=content.substring(prefix.length()).split("String_Node_Str");
    List<String> args=new ArrayList<>(split.length - 1);
    for (int i=1; i < split.length; i++)     args.add(split[i]);
    String cmdName=split[0].toLowerCase();
    if (commands.containsKey(cmdName)) {
      Command command=commands.get(cmdName);
      try {
        command.invoke(this,event,args,prefix,cmdName);
      }
 catch (      IllegalAccessException e) {
        logger.error("String_Node_Str",cmdName,e);
        channel.sendMessage("String_Node_Str").queue();
      }
catch (      InvocationTargetException e) {
        Throwable cause=e.getCause();
        if (cause == null) {
          logger.error("String_Node_Str",cmdName,e);
          channel.sendMessage("String_Node_Str").queue();
        }
 else         if (cause instanceof PassException) {
        }
 else {
          logger.error("String_Node_Str",cmdName,cause);
          channel.sendMessage(format("String_Node_Str",prefix,cmdName,vagueTrace(cause))).queue();
          if (command.reportErrors)           reportErrorToOwner(cause,message,command);
        }
      }
catch (      PermissionError e) {
        channel.sendMessage(format("String_Node_Str",author.getAsMention(),prefix,cmdName,Strings.smartJoin(command.getFriendlyPerms(),"String_Node_Str"))).queue();
      }
catch (      GuildOnlyError e) {
        channel.sendMessage("String_Node_Str").queue();
      }
catch (      CheckFailure e) {
        channel.sendMessage(format("String_Node_Str",author.getAsMention(),prefix,cmdName)).queue();
      }
catch (      Exception e) {
        logger.error("String_Node_Str",cmdName,e);
        channel.sendMessage("String_Node_Str").queue();
      }
      if (commandCalls.containsKey(command.name)) {
        commandCalls.get(command.name).incrementAndGet();
      }
 else {
        commandCalls.put(command.name,new AtomicInteger(1));
      }
    }
  }
 else {
    String mention=message.getGuild() == null ? jda.getSelfUser().getAsMention() : message.getGuild().getSelfMember().getAsMention();
    if (content.startsWith(mention)) {
      if (content.substring(mention.length()).trim().equalsIgnoreCase("String_Node_Str")) {
        channel.sendMessage("String_Node_Str" + prefix + "String_Node_Str").queue();
      }
 else {
        channel.sendMessage("String_Node_Str" + Cog.getTag(jda.getSelfUser()) + "String_Node_Str").queue();
      }
    }
  }
}

Fixed version (ground truth):
@Override public void onMessageReceived(MessageReceivedEvent event){
  final JDA jda=event.getJDA();
  final User author=event.getAuthor();
  if (author.isBot())   return;
  if (author.getIdLong() == jda.getSelfUser().getIdLong())   return;
  final Message message=event.getMessage();
  final String prefix;
  if (message.getGuild() == null) {
    prefix=shardUtil.getPrefixStore().getDefaultPrefix();
  }
 else {
    prefix=shardUtil.getPrefixStore().getPrefix(message.getGuild().getIdLong());
  }
  final String content=message.getRawContent();
  final MessageChannel channel=event.getChannel();
  if (content.startsWith(prefix)) {
    String[] split=content.substring(prefix.length()).split("String_Node_Str");
    List<String> args=new ArrayList<>(split.length - 1);
    for (int i=1; i < split.length; i++)     args.add(split[i]);
    String cmdName=split[0].toLowerCase();
    if (commands.containsKey(cmdName)) {
      Command command=commands.get(cmdName);
      try {
        command.invoke(this,event,args,prefix,cmdName);
      }
 catch (      IllegalAccessException e) {
        logger.error("String_Node_Str",cmdName,e);
        channel.sendMessage("String_Node_Str").queue();
      }
catch (      InvocationTargetException e) {
        Throwable cause=e.getCause();
        if (cause == null) {
          logger.error("String_Node_Str",cmdName,e);
          channel.sendMessage("String_Node_Str").queue();
        }
 else         if (cause instanceof PassException) {
        }
 else         if (cause instanceof PermissionError) {
          channel.sendMessage(format("String_Node_Str",author.getAsMention(),prefix,cmdName,Strings.smartJoin(((PermissionError)cause).getFriendlyPerms(),"String_Node_Str"))).queue();
        }
 else         if (cause instanceof PermissionException) {
          channel.sendMessage("String_Node_Str" + ((PermissionException)cause).getPermission().getName() + "String_Node_Str").queue();
        }
 else {
          logger.error("String_Node_Str",cmdName,cause);
          channel.sendMessage(format("String_Node_Str",prefix,cmdName,vagueTrace(cause))).queue();
          if (command.reportErrors)           reportErrorToOwner(cause,message,command);
        }
      }
catch (      PermissionError e) {
        channel.sendMessage(format("String_Node_Str",author.getAsMention(),prefix,cmdName,Strings.smartJoin(e.getFriendlyPerms(),"String_Node_Str"))).queue();
      }
catch (      GuildOnlyError e) {
        channel.sendMessage("String_Node_Str").queue();
      }
catch (      CheckFailure e) {
        channel.sendMessage(format("String_Node_Str",author.getAsMention(),prefix,cmdName)).queue();
      }
catch (      Exception e) {
        logger.error("String_Node_Str",cmdName,e);
        channel.sendMessage("String_Node_Str").queue();
      }
      if (commandCalls.containsKey(command.name)) {
        commandCalls.get(command.name).incrementAndGet();
      }
 else {
        commandCalls.put(command.name,new AtomicInteger(1));
      }
    }
  }
 else {
    String mention=message.getGuild() == null ? jda.getSelfUser().getAsMention() : message.getGuild().getSelfMember().getAsMention();
    if (content.startsWith(mention)) {
      if (content.substring(mention.length()).trim().equalsIgnoreCase("String_Node_Str")) {
        channel.sendMessage("String_Node_Str" + prefix + "String_Node_Str").queue();
      }
 else {
        channel.sendMessage("String_Node_Str" + Cog.getTag(jda.getSelfUser()) + "String_Node_Str").queue();
      }
    }
  }
}