Program: 156762
Project: 156762
Buggy source:
@Override public void addInformation(ItemStack stack,EntityPlayer player,List list,boolean advanced){
  NBTTagCompound cpt=NBTUtils.getItemData(stack);
  if (!cpt.hasKey("String_Node_Str")) {
  }
 else {
switch (cpt.getByte("String_Node_Str")) {
case 0:
{
        int x=cpt.getInteger("String_Node_Str");
        int y=cpt.getInteger("String_Node_Str");
        int z=cpt.getInteger("String_Node_Str");
        ForgeDirection side=ForgeDirection.values()[cpt.getByte("String_Node_Str")];
        list.add(StringUtils.localize("String_Node_Str" + x + "String_Node_Str"+ y+ "String_Node_Str"+ z+ "String_Node_Str"+ side+ "String_Node_Str"));
        break;
      }
case 1:
{
      int x=cpt.getInteger("String_Node_Str");
      int y=cpt.getInteger("String_Node_Str");
      int z=cpt.getInteger("String_Node_Str");
      int xLength=cpt.getInteger("String_Node_Str") - x + 1;
      int yLength=cpt.getInteger("String_Node_Str") - y + 1;
      int zLength=cpt.getInteger("String_Node_Str") - z + 1;
      list.add(StringUtils.localize("String_Node_Str" + x + "String_Node_Str"+ y+ "String_Node_Str"+ z+ "String_Node_Str"+ xLength+ "String_Node_Str"+ yLength+ "String_Node_Str"+ zLength+ "String_Node_Str"));
      break;
    }
case 2:
{
    NBTTagList pathNBT=cpt.getTagList("String_Node_Str",Constants.NBT.TAG_COMPOUND);
    BlockIndex first=new BlockIndex(pathNBT.getCompoundTagAt(0));
    int x=first.x;
    int y=first.y;
    int z=first.z;
    list.add(StringUtils.localize("String_Node_Str" + x + "String_Node_Str"+ y+ "String_Node_Str"+ z+ "String_Node_Str"+ pathNBT.tagCount()+ "String_Node_Str"));
    break;
  }
case 3:
{
  break;
}
}
}
if (cpt.hasKey("String_Node_Str")) {
}
}

Fixed version (ground truth):
@Override public void addInformation(ItemStack stack,EntityPlayer player,List list,boolean advanced){
  NBTTagCompound cpt=NBTUtils.getItemData(stack);
  if (cpt.hasKey("String_Node_Str")) {
    String name=cpt.getString("String_Node_Str");
    if (name.length() > 0) {
      list.add(name);
    }
  }
  if (cpt.hasKey("String_Node_Str")) {
switch (cpt.getByte("String_Node_Str")) {
case 0:
{
        int x=cpt.getInteger("String_Node_Str");
        int y=cpt.getInteger("String_Node_Str");
        int z=cpt.getInteger("String_Node_Str");
        ForgeDirection side=ForgeDirection.values()[cpt.getByte("String_Node_Str")];
        list.add(StringUtils.localize("String_Node_Str" + x + "String_Node_Str"+ y+ "String_Node_Str"+ z+ "String_Node_Str"+ side+ "String_Node_Str"));
        break;
      }
case 1:
{
      int x=cpt.getInteger("String_Node_Str");
      int y=cpt.getInteger("String_Node_Str");
      int z=cpt.getInteger("String_Node_Str");
      int xLength=cpt.getInteger("String_Node_Str") - x + 1;
      int yLength=cpt.getInteger("String_Node_Str") - y + 1;
      int zLength=cpt.getInteger("String_Node_Str") - z + 1;
      list.add(StringUtils.localize("String_Node_Str" + x + "String_Node_Str"+ y+ "String_Node_Str"+ z+ "String_Node_Str"+ xLength+ "String_Node_Str"+ yLength+ "String_Node_Str"+ zLength+ "String_Node_Str"));
      break;
    }
case 2:
{
    NBTTagList pathNBT=cpt.getTagList("String_Node_Str",Constants.NBT.TAG_COMPOUND);
    BlockIndex first=new BlockIndex(pathNBT.getCompoundTagAt(0));
    int x=first.x;
    int y=first.y;
    int z=first.z;
    list.add(StringUtils.localize("String_Node_Str" + x + "String_Node_Str"+ y+ "String_Node_Str"+ z+ "String_Node_Str"+ pathNBT.tagCount()+ "String_Node_Str"));
    break;
  }
case 3:
{
  break;
}
}
}
}