I'm getting confused myself, based upon what you've relayed and the fact that the code in my Whois/Whowas dialog does work and uses the information from raw 378 to fill in the IP address in the dialog. I think part of the confusion is that the IP address that I'm referring to is the numeric address, which is the true address rather than a possible vhost address.

I can't confirm this on Undernet, as the information is only returned to those with IRCop status (or higher) and I don't have that access on Undernet.

The information is sent from the /whois and returned via the group, before the next whois is sent. ie: raw 318 is processed at the end of each whois before the next nick is whois'd..realistically it creates a pause in the loop until all of the information is sent for the current /whois before the next one. This is one advantage (in my opinion) of the fact that mIRC does not have true multi-threading capabilities (or at least, not in this area).

I hope that clarifies the confusion regarding the /whois-while loop.

Regarding the proper raw for Undernet, using /debug @debug, then /whois <nick> would put the responses from the raws into the debug window, where you can pull up the correct raw. As I said before, I, as a non-IRCop for Undernet, don't have access to that information.