I've been asked this before in post-interview negotiation, so evidently this is somewhat common practice. I always respond with, "I'll tell you that if you give me a salary breakdown of your engineering positions by experience level." They always back off at that point.
I know what salary I want, so it's not like it matters anyway. Plus their low-ball offer gave me an insight into how they value their development team. If they didn't think I was worth what I was asking, fine, don't hire me. But if they're just looking for budget coders I'm happy to stay where I am. They already had two outsourced coders. The idea of joining their staff knowing they undervalue talent and are willing to hire from the 3rd world to replace me was not tempting.
When a company gives a low-ball offer to a potential developer then counters with a more realistic offer, this raises a big red flag to question the company's intentions and morals .
I ended up getting offered 33% above my current, but turned the job down as I felt that HR conversation was a one of many symptoms of a dysfunctional company. (Print media trying to convert to web based income, but already abusing their Dev team as if they were a cost sink before the digital products even launched).