Rather than reposting everything: http://www.stealthbot.net/forum/index.php?act=ST&f=76&t=14075&st=0#entry139296
From the assembly, it looks as if SID_CHECKAD in the older product's use 0 instead of an actual product ID. Can anyone verify this or tell me where I went wrong?
No no no, it's not 0. When Battle.snp is called to connect to Battle.net, there's a struct passed over which contains the product id it's going to use. It's stored in that dword you see which is set to 0.
.text:19014DC3 mov GameTag, eax
Set a break point on that line when you connect to Battle.net on either Starcraft or Brood War. You will see eax contains either 'STAR' or 'SEXP'
Edit: I named 'dword_19033B90' to be GameTag.