Program: 34773
Project: 34773
Buggy source:
@SubscribeEvent public void onPlayerTick(PlayerTickEvent e){
  if (e.phase != Phase.START || e.player.worldObj.isRemote)   return;
  EntityPlayer player=e.player;
  if (playerTickLimiter.adjustOrPutValue(player.getGameProfile().getId(),byteOne,byteOne) >= 7) {
    Stopwatch.timeAverage("String_Node_Str",15);
    playerTickLimiter.put(player.getGameProfile().getId(),byteZero);
    Vec3 posVec=Vec3.createVectorHelper(player.posX,player.boundingBox.minY + player.getEyeHeight() - (player.isSneaking() ? 0.08D : 0D),player.posZ);
    Vec3 lookVec=player.getLook(8F);
    MovingObjectPosition mopBlock=player.worldObj.rayTraceBlocks(posVec,lookVec,true);
    double distBlock=mopBlock != null && mopBlock.typeOfHit == MovingObjectType.BLOCK ? MathUtil.distance(mopBlock.blockX + 0.5D - posVec.xCoord,mopBlock.blockY + 0.5D - posVec.yCoord,mopBlock.blockZ + 0.5D - posVec.zCoord) : 8D;
    double bbX=posVec.xCoord + lookVec.xCoord * 0.5D, bbY=posVec.yCoord + lookVec.yCoord * 0.5D, bbZ=posVec.zCoord + posVec.zCoord * 0.5D;
    List<Entity> list=player.worldObj.getEntitiesWithinAABB(Entity.class,AxisAlignedBB.getBoundingBox(bbX - 5D,bbY - 5D,bbZ - 5D,bbX + 5D,bbY + 5D,bbZ + 5D));
    Entity tracedEntity=null;
    double distEntity=Double.MAX_VALUE;
    for (    Entity entity : list) {
      if (entity == player)       continue;
      MovingObjectPosition mop=entity.boundingBox.expand(0.1D,0.1D,0.1D).calculateIntercept(posVec,lookVec);
      double dist;
      if (mop != null && mop.typeOfHit == MovingObjectType.ENTITY && (dist=posVec.distanceTo(mop.hitVec)) < distEntity) {
        distEntity=dist;
        tracedEntity=entity;
      }
    }
    if (distBlock < distEntity && mopBlock != null) {
      BlockMetaWrapper wrapper=new BlockMetaWrapper(player.worldObj.getBlock(mopBlock.blockX,mopBlock.blockY,mopBlock.blockZ),player.worldObj.getBlockMetadata(mopBlock.blockX,mopBlock.blockY,mopBlock.blockZ));
      KnowledgeObject<ObjectBlock> obj=KnowledgeObject.getObject(wrapper);
      if (obj != null)       getPlayerData(player).tryDiscoverBlock(obj,true);
    }
 else     if (tracedEntity != null) {
      if (tracedEntity instanceof EntityLiving)       discoverMob(player,(EntityLiving)tracedEntity);
 else       if (tracedEntity instanceof EntityItem)       discoverItemStack(player,((EntityItem)tracedEntity).getEntityItem());
    }
    Stopwatch.finish("String_Node_Str");
    Stopwatch.timeAverage("String_Node_Str",15);
    for (    ItemStack is : player.inventory.mainInventory) {
      if (is != null)       discoverItemStack(player,is);
    }
    Stopwatch.finish("String_Node_Str");
  }
}

Fixed version (ground truth):
@SubscribeEvent public void onPlayerTick(PlayerTickEvent e){
  if (e.phase != Phase.START || e.player.worldObj.isRemote)   return;
  EntityPlayer player=e.player;
  if (playerTickLimiter.adjustOrPutValue(player.getGameProfile().getId(),byteOne,byteOne) >= 7) {
    Stopwatch.timeAverage("String_Node_Str",25);
    playerTickLimiter.put(player.getGameProfile().getId(),byteZero);
    Vec3 posVec=Vec3.createVectorHelper(player.posX,player.boundingBox.minY + player.getEyeHeight() - (player.isSneaking() ? 0.08D : 0D),player.posZ);
    Vec3 lookVec=player.getLook(8F);
    MovingObjectPosition mopBlock=player.worldObj.rayTraceBlocks(posVec,lookVec,true);
    double distBlock=mopBlock != null && mopBlock.typeOfHit == MovingObjectType.BLOCK ? MathUtil.distance(mopBlock.blockX + 0.5D - posVec.xCoord,mopBlock.blockY + 0.5D - posVec.yCoord,mopBlock.blockZ + 0.5D - posVec.zCoord) : 8D;
    double bbX=posVec.xCoord + lookVec.xCoord * 0.5D, bbY=posVec.yCoord + lookVec.yCoord * 0.5D, bbZ=posVec.zCoord + posVec.zCoord * 0.5D;
    List<Entity> list=player.worldObj.getEntitiesWithinAABB(Entity.class,AxisAlignedBB.getBoundingBox(bbX - 5D,bbY - 5D,bbZ - 5D,bbX + 5D,bbY + 5D,bbZ + 5D));
    Entity tracedEntity=null;
    double distEntity=Double.MAX_VALUE;
    for (    Entity entity : list) {
      if (entity == player)       continue;
      MovingObjectPosition mop=entity.boundingBox.expand(0.1D,0.1D,0.1D).calculateIntercept(posVec,lookVec);
      double dist;
      if (mop != null && mop.typeOfHit == MovingObjectType.ENTITY && (dist=posVec.distanceTo(mop.hitVec)) < distEntity) {
        distEntity=dist;
        tracedEntity=entity;
      }
    }
    if (distBlock < distEntity && mopBlock != null) {
      BlockMetaWrapper wrapper=new BlockMetaWrapper(player.worldObj.getBlock(mopBlock.blockX,mopBlock.blockY,mopBlock.blockZ),player.worldObj.getBlockMetadata(mopBlock.blockX,mopBlock.blockY,mopBlock.blockZ));
      KnowledgeObject<ObjectBlock> obj=KnowledgeObject.getObject(wrapper);
      if (obj != null)       getPlayerData(player).tryDiscoverBlock(obj,true);
    }
 else     if (tracedEntity != null) {
      if (tracedEntity instanceof EntityLiving)       discoverMob(player,(EntityLiving)tracedEntity);
 else       if (tracedEntity instanceof EntityItem)       discoverItemStack(player,((EntityItem)tracedEntity).getEntityItem());
    }
    Stopwatch.finish("String_Node_Str");
    Stopwatch.timeAverage("String_Node_Str",25);
    for (    ItemStack is : player.inventory.mainInventory) {
      if (is != null)       discoverItemStack(player,is);
    }
    Stopwatch.finish("String_Node_Str");
  }
}