Program: 44679
Project: 44679
Buggy source:
@EventHandler(priority=EventPriority.MONITOR) public void onBlockBreak(BlockBreakEvent event){
  event.getPlayer().getItemInHand();
  if (!event.isCancelled() && event.getBlock().getType() == Material.MOB_SPAWNER) {
    ItemStack is=event.getPlayer().getItemInHand();
    boolean nodrops=false;
    if (plugin.disabledspawnerlocs.containsKey(plugin.locationBuilder(event.getBlock().getLocation()))) {
      plugin.removeDisabledSpawner(event.getBlock());
      nodrops=true;
    }
    if (plugin.needssilktouch && !itemHasSilkTouch(is)) {
      return;
    }
    try {
      CreatureSpawner theSpawner=(CreatureSpawner)event.getBlock().getState();
      String monster=theSpawner.getCreatureTypeName();
      if (plugin.hasPermissions(event.getPlayer(),"String_Node_Str") || plugin.hasPermissions(event.getPlayer(),"String_Node_Str")) {
        event.getPlayer().sendMessage(ChatColor.DARK_GREEN + "String_Node_Str" + ChatColor.RED+ monster.toLowerCase()+ ChatColor.DARK_GREEN+ "String_Node_Str");
      }
      if (plugin.hasPermissions(event.getPlayer(),"String_Node_Str")) {
        ItemStack mobstack=new ItemStack(Material.MOB_SPAWNER,1);
        event.getBlock().getWorld().dropItemNaturally(event.getBlock().getLocation(),mobstack);
      }
      if (!nodrops && stringmobs.containsKey(monster) && plugin.hasPermissions(event.getPlayer(),"String_Node_Str" + monster.toLowerCase())) {
        ItemStack eggstack=new ItemStack(383,1,stringmobs.get(monster).shortValue());
        event.getBlock().getWorld().dropItemNaturally(event.getBlock().getLocation(),eggstack);
      }
    }
 catch (    Exception e) {
    }
  }
}

Fixed version (ground truth):
@EventHandler(priority=EventPriority.MONITOR) public void onBlockBreak(BlockBreakEvent event){
  event.getPlayer().getItemInHand();
  if (!event.isCancelled() && event.getBlock().getType() == Material.MOB_SPAWNER) {
    ItemStack is=event.getPlayer().getItemInHand();
    boolean nodrops=false;
    if (plugin.disabledspawnerlocs.containsKey(plugin.locationBuilder(event.getBlock().getLocation()))) {
      plugin.removeDisabledSpawner(event.getBlock());
      nodrops=true;
    }
    if (plugin.needssilktouch && !itemHasSilkTouch(is)) {
      return;
    }
    try {
      CreatureSpawner theSpawner=(CreatureSpawner)event.getBlock().getState();
      String monster=intmobs.get(new Integer(theSpawner.getSpawnedType().getTypeId()));
      if (plugin.hasPermissions(event.getPlayer(),"String_Node_Str") || plugin.hasPermissions(event.getPlayer(),"String_Node_Str")) {
        if (nodrops) {
          event.getPlayer().sendMessage(ChatColor.DARK_GREEN + "String_Node_Str" + ChatColor.RED+ "String_Node_Str"+ ChatColor.DARK_GREEN+ "String_Node_Str");
        }
 else {
          event.getPlayer().sendMessage(ChatColor.DARK_GREEN + "String_Node_Str" + ChatColor.RED+ monster.toLowerCase()+ ChatColor.DARK_GREEN+ "String_Node_Str");
        }
      }
      if (plugin.hasPermissions(event.getPlayer(),"String_Node_Str")) {
        ItemStack mobstack=new ItemStack(Material.MOB_SPAWNER,1);
        event.getBlock().getWorld().dropItemNaturally(event.getBlock().getLocation(),mobstack);
      }
      if (!nodrops && stringmobs.containsKey(monster) && plugin.hasPermissions(event.getPlayer(),"String_Node_Str" + monster.toLowerCase())) {
        ItemStack eggstack=new ItemStack(383,1,theSpawner.getSpawnedType().getTypeId());
        event.getBlock().getWorld().dropItemNaturally(event.getBlock().getLocation(),eggstack);
      }
    }
 catch (    Exception e) {
    }
  }
}