public bool TallyDist(int dist, int len)
{
this.d_buf[this.last_lit] = (short) dist;
this.l_buf[this.last_lit++] = (byte) (len - 3);
int index = this.Lcode(len - 3);
this.literalTree.freqs[index] = (short) (this.literalTree.freqs[index] + 1);
if ((index >= 0x109) && (index < 0x11d))
{
this.extra_bits += (index - 0x105) / 4;
}
int num2 = this.Dcode(dist - 1);
this.distTree.freqs[num2] = (short) (this.distTree.freqs[num2] + 1);
if (num2 >= 4)
{
this.extra_bits += (num2 / 2) - 1;
}
return this.IsFull();
}