Can someone tell me how to correctly send packet 0x3e to get B.net to send me realm IP/port to connect to?
I'm trying to use BNLS' HashData with the Serverhash from 0x50 but that seems to not work.
Might just be me doing something wrong though =/
Might be doing something wrong? If it's not working then you're doing something wrong. :)
I've tried a bunch of stuff.
When I recieve 0x50, I store Mid(strData, 9, 4) as ServerHash. Everything using that value has always worked.
Then after recieving 0x34, I send ServerHash to BNLS...
B.HashData ServerHash
Public Function HashData(strData As String)
p.InsertDWORD Len(strData)
p.InsertDWORD &H0
p.InsertNonNTString strData
p.SendBNLSPacket frmMain.sckBNLS, &HB
End Function
Public Function SendBNLSPacket(SOCKET As Winsock, PacketID As Byte)
If frmMain.sckBNLS.State = sckConnected Then
SOCKET.SendData MakeWORD(Len(Buffer) + 3)
SOCKET.SendData Chr(PacketID)
SOCKET.SendData Buffer
Clear
DoEvents
End If
End Function
I keep trying different variations but can't figure out what I'm doing wrong =[
BNLS's HashData implementation is compatible with the realm logon hash; you just need to use the right inputs. Remember that just like the password hash, the realm hash needs to be double-hashed.
What function in bnetauth.dll is equivilant to BNLS's hash data?
Figure it out yourself? ::)
As far as I know, only HukChat uses bnetauth.dll. Why are you using it?