Program: 174555
Project: 174555
Buggy source:
public boolean attackEntityAsMob(Entity entityIn){
  float f=(float)this.getEntityAttribute(SharedMonsterAttributes.ATTACK_DAMAGE).getAttributeValue();
  int i=0;
  if (entityIn instanceof EntityLivingBase) {
    f+=EnchantmentHelper.getModifierForCreature(this.getHeldItemMainhand(),((EntityLivingBase)entityIn).getCreatureAttribute());
    i+=EnchantmentHelper.getKnockbackModifier(this);
  }
  boolean flag=entityIn.attackEntityFrom(DamageSource.causeMobDamage(this),f);
  this.swingArm(EnumHand.MAIN_HAND);
  if (flag) {
    if (i > 0 && entityIn instanceof EntityLivingBase) {
      ((EntityLivingBase)entityIn).knockBack(this,(float)i * 0.5F,(double)MathHelper.sin(this.rotationYaw * 0.017453292F),(double)(-MathHelper.cos(this.rotationYaw * 0.017453292F)));
      this.motionX*=0.6D;
      this.motionZ*=0.6D;
    }
    int j=EnchantmentHelper.getFireAspectModifier(this);
    if (j > 0) {
      entityIn.setFire(j * 4);
    }
    if (entityIn instanceof EntityPlayer) {
      EntityPlayer entityplayer=(EntityPlayer)entityIn;
      ItemStack itemstack=this.getHeldItemMainhand();
      ItemStack itemstack1=entityplayer.isHandActive() ? entityplayer.getActiveItemStack() : ItemStack.EMPTY;
      if (itemstack.getItem() instanceof ItemAxe && itemstack1.getItem() == Items.SHIELD) {
        float f1=0.25F + (float)EnchantmentHelper.getEfficiencyModifier(this) * 0.05F;
        if (this.rand.nextFloat() < f1) {
          entityplayer.getCooldownTracker().setCooldown(Items.SHIELD,100);
          this.world.setEntityState(entityplayer,(byte)30);
        }
      }
    }
    this.applyEnchantments(this,entityIn);
  }
  return flag;
}

Fixed version (ground truth):
public boolean attackEntityAsMob(Entity entityIn){
  float f=(float)this.getEntityAttribute(SharedMonsterAttributes.ATTACK_DAMAGE).getAttributeValue();
  int i=0;
  if (entityIn instanceof EntityLivingBase) {
    f+=EnchantmentHelper.getModifierForCreature(this.getHeldItemMainhand(),((EntityLivingBase)entityIn).getCreatureAttribute());
    i+=EnchantmentHelper.getKnockbackModifier(this);
    try {
      Field recentlyHit=ReflectionUtils.getFieldFromSuperclass(entityIn.getClass(),EntityLivingBase.class,"String_Node_Str");
      recentlyHit.setAccessible(true);
      recentlyHit.setInt(entityIn,100);
      if (this.getOwner() != null) {
        Field attackingPlayer=ReflectionUtils.getFieldFromSuperclass(entityIn.getClass(),EntityLivingBase.class,"String_Node_Str");
        attackingPlayer.setAccessible(true);
        attackingPlayer.set(entityIn,this.getOwner());
      }
 else {
        KAGIC.instance.chatInfoMessage("String_Node_Str");
      }
    }
 catch (    Exception e) {
      String errorReport="String_Node_Str";
      errorReport+="String_Node_Str";
      errorReport+="String_Node_Str";
      errorReport+="String_Node_Str" + ((EntityLivingBase)entityIn).getClass().getName();
      KAGIC.instance.chatInfoMessage(errorReport);
      e.printStackTrace();
    }
  }
  boolean flag=entityIn.attackEntityFrom(DamageSource.causeMobDamage(this),f);
  this.swingArm(EnumHand.MAIN_HAND);
  if (flag) {
    if (i > 0 && entityIn instanceof EntityLivingBase) {
      ((EntityLivingBase)entityIn).knockBack(this,(float)i * 0.5F,(double)MathHelper.sin(this.rotationYaw * 0.017453292F),(double)(-MathHelper.cos(this.rotationYaw * 0.017453292F)));
      this.motionX*=0.6D;
      this.motionZ*=0.6D;
    }
    int j=EnchantmentHelper.getFireAspectModifier(this);
    if (j > 0) {
      entityIn.setFire(j * 4);
    }
    if (entityIn instanceof EntityPlayer) {
      EntityPlayer entityplayer=(EntityPlayer)entityIn;
      ItemStack itemstack=this.getHeldItemMainhand();
      ItemStack itemstack1=entityplayer.isHandActive() ? entityplayer.getActiveItemStack() : ItemStack.EMPTY;
      if (itemstack.getItem() instanceof ItemAxe && itemstack1.getItem() == Items.SHIELD) {
        float f1=0.25F + (float)EnchantmentHelper.getEfficiencyModifier(this) * 0.05F;
        if (this.rand.nextFloat() < f1) {
          entityplayer.getCooldownTracker().setCooldown(Items.SHIELD,100);
          this.world.setEntityState(entityplayer,(byte)30);
        }
      }
    }
    this.applyEnchantments(this,entityIn);
  }
  return flag;
}