First try to get the contact info for a decision maker at the company (see if they have a "Team" or "About" or "About the Company" kind of page and then use Google on the names). Typically the administrator contact is going to be some sysadmin guy, but if all else fails you can contact the administrator email.
Some tips on negotiation: Make the first offer. Your first offer should be one that you would be absolutely overwhelmingly ecstatic to get. It shouldn't be too high as to make them reject you instantly, but it should be high enough that they'll make a counter offer (at a lower price). Remember, your goal is to get the highest price they're willing to pay.
Adjust your price based on 1)How big the company is (it's ability to pay) and 2)How common the two word name is + TLD.
A good two word .com can go for the tens of thousands. A less common two word .com can go for the thousands. Look at sedo.com (the domain marketplace) for a good idea of the kinds of prices you target.
Having said all of that, do you have any suggestions on the next step? Is emailing the administrative contact as per whois the best way to do this?
Thanks for any information: this is definitely not my area of expertise!