Program: 86050
Project: 86050
Buggy source:
public boolean setKit(PluginInstance pli,CommandSender sender,String[] args,String uber_permission,String cmd,String action,final JavaPlugin plugin,Player p){
  if (args.length > 1) {
    if (!plugin.getConfig().getBoolean("String_Node_Str")) {
      return true;
    }
    if (!plugin.getConfig().getBoolean("String_Node_Str")) {
      if (pli.global_players.containsKey(p.getName())) {
        Arena a=pli.global_players.get(p.getName());
        if (a.getArenaState() == ArenaState.INGAME) {
          return true;
        }
      }
 else {
        sender.sendMessage(pli.getMessagesConfig().not_in_arena);
        return true;
      }
    }
    String kit=args[1];
    AClass ac=pli.getClassesHandler().getClassByInternalname(kit);
    if (ac != null) {
      if (pli.getAClasses().containsKey(ac.getName())) {
        if (ac.isEnabled()) {
          pli.getClassesHandler().setClass(kit,p.getName(),true);
          return true;
        }
      }
    }
    String all="String_Node_Str";
    for (    AClass k : pli.getAClasses().values()) {
      if (k.isEnabled()) {
        all+=k.getInternalName() + "String_Node_Str";
      }
    }
    if (all.length() < 2) {
      all="String_Node_Str";
    }
    all=all.substring(0,all.length() - 2);
    sender.sendMessage(pli.getMessagesConfig().possible_kits + all);
  }
 else {
    sender.sendMessage(ChatColor.DARK_GRAY + "String_Node_Str" + ChatColor.RED+ "String_Node_Str"+ ChatColor.DARK_GRAY+ "String_Node_Str"+ ChatColor.GRAY+ "String_Node_Str"+ cmd+ "String_Node_Str"+ action+ "String_Node_Str");
    if (!plugin.getConfig().getBoolean("String_Node_Str")) {
      return true;
    }
    if (pli.global_players.containsKey(p.getName())) {
      pli.getClassesHandler().openGUI(p.getName());
    }
 else {
      sender.sendMessage(pli.getMessagesConfig().not_in_arena);
    }
  }
  return true;
}

Fixed version (ground truth):
public boolean setKit(PluginInstance pli,CommandSender sender,String[] args,String uber_permission,String cmd,String action,final JavaPlugin plugin,Player p){
  if (args.length > 1) {
    if (!plugin.getConfig().getBoolean("String_Node_Str")) {
      return true;
    }
    if (!plugin.getConfig().getBoolean("String_Node_Str")) {
      if (pli.global_players.containsKey(p.getName())) {
        Arena a=pli.global_players.get(p.getName());
        if (a.getArenaState() == ArenaState.INGAME) {
          return true;
        }
      }
 else {
        sender.sendMessage(pli.getMessagesConfig().not_in_arena);
        return true;
      }
    }
    String kit=args[1];
    AClass ac=pli.getClassesHandler().getClassByInternalname(kit);
    if (ac != null) {
      if (pli.getAClasses().containsKey(ac.getName())) {
        if (ac.isEnabled()) {
          pli.getClassesHandler().setClass(kit,p.getName(),MinigamesAPI.economy);
          return true;
        }
      }
    }
    String all="String_Node_Str";
    for (    AClass k : pli.getAClasses().values()) {
      if (k.isEnabled()) {
        all+=k.getInternalName() + "String_Node_Str";
      }
    }
    if (all.length() < 2) {
      all="String_Node_Str";
    }
    all=all.substring(0,all.length() - 2);
    sender.sendMessage(pli.getMessagesConfig().possible_kits + all);
  }
 else {
    sender.sendMessage(ChatColor.DARK_GRAY + "String_Node_Str" + ChatColor.RED+ "String_Node_Str"+ ChatColor.DARK_GRAY+ "String_Node_Str"+ ChatColor.GRAY+ "String_Node_Str"+ cmd+ "String_Node_Str"+ action+ "String_Node_Str");
    if (!plugin.getConfig().getBoolean("String_Node_Str")) {
      return true;
    }
    if (pli.global_players.containsKey(p.getName())) {
      pli.getClassesHandler().openGUI(p.getName());
    }
 else {
      sender.sendMessage(pli.getMessagesConfig().not_in_arena);
    }
  }
  return true;
}