Function at 0x5315f0
Capabilities:
Resolve dns

Disassembly:
sub esp, 0x400
lea edx, [esp]
push esi
push edi
mov edi, dword [esp + 0x40c]
mov eax, edi
sub edx, edi
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x531607
lea eax, [esp + 8]
push eax
call fcn.00575ce2
lea ecx, [esp + 0xc]
push str._HOST
push ecx
call fcn.00574fa0
add esp, 0xc
test eax, eax
je 0x531638
mov byte [0xaab49c], 1
lea edx, [esp + 8]
push str._HOSTNAME
push edx
call fcn.00574fa0
add esp, 8
test eax, eax
je 0x531694
mov ecx, edi
lea edx, [esp + 8]
sub ecx, edx
lea eax, [eax + ecx + 9]
cmp byte [eax], 0x20
jne 0x531668
mov cl, byte [eax + 1]
inc eax
cmp cl, 0x20
je 0x53165f
mov cl, byte [eax]
mov dl, 0x20
cmp cl, 0x22
jne 0x531674
mov dl, 0x22
inc eax
xor esi, esi
mov cl, byte [eax]
inc eax
test cl, cl
je 0x53168d
cmp cl, dl
je 0x53168d
mov byte [esi + 0xb07d88], cl
inc esi
cmp esi, 0xf
jb 0x531676
mov byte [esi + 0xb07d88], 0
mov al, byte [0xaab49c]
test al, al
jne 0x531781
lea eax, [esp + 8]
push str._CONNECT
push eax
call fcn.00574fa0
add esp, 8
test eax, eax
je 0x531781
mov ecx, edi
lea edx, [esp + 8]
sub ecx, edx
lea eax, [eax + ecx + 9]
cmp byte [eax], 0x20
jne 0x5316d5
mov cl, byte [eax + 1]
inc eax
cmp cl, 0x20
je 0x5316cc
mov cl, byte [eax]
mov dl, 0x20
cmp cl, 0x22
jne 0x5316e1
mov dl, 0x22
inc eax
xor esi, esi
mov cl, byte [eax]
inc eax
test cl, cl
je 0x5316fd
cmp cl, dl
je 0x5316fd
mov byte [esi + 0xb07da8], cl
inc esi
cmp esi, 0xff
jb 0x5316e3
push 0xb07da8
mov byte [esi + 0xb07da8], 0
call dword [sym.imp.WS2_32.dll_inet_addr]
cmp eax, 0xffffffff
mov dword [0x5a0288], eax
jne 0x53177a
push 0xb07da8
call dword [sym.imp.WS2_32.dll_gethostbyname]
test eax, eax
je 0x53177a
mov ecx, dword [eax + 0xc]
mov edx, dword [ecx]
mov cl, byte [edx]
xor edx, edx
and ecx, 0xff
mov dword [0x5a0288], ecx
mov esi, dword [eax + 0xc]
mov esi, dword [esi]
mov dh, byte [esi + 1]
or ecx, edx
mov dword [0x5a0288], ecx
mov edx, dword [eax + 0xc]
mov edx, dword [edx]
mov dl, byte [edx + 2]
and edx, 0xff
shl edx, 0x10
or ecx, edx
mov dword [0x5a0288], ecx
mov eax, dword [eax + 0xc]
mov edx, dword [eax]
movsx eax, byte [edx + 3]
shl eax, 0x18
or ecx, eax
mov dword [0x5a0288], ecx
mov byte [0xb07eb2], 1
lea ecx, [esp + 8]
push str._MAXPLAYERS
push ecx
call fcn.00574fa0
add esp, 8
test eax, eax
je 0x5317d9
mov edx, edi
lea ecx, [esp + 8]
sub edx, ecx
mov cl, byte [eax + edx + 0xb]
cmp cl, 0x20
lea eax, [eax + edx + 0xb]
jne 0x5317b5
mov cl, byte [eax + 1]
inc eax
cmp cl, 0x20
je 0x5317ac
push eax
call fcn.00575cd7
add esp, 4
cmp eax, 2
jae 0x5317ca
mov eax, 2
jmp 0x5317d4
cmp eax, 8
jbe 0x5317d4
mov eax, 8
mov dword [0x5b6350], eax
lea edx, [esp + 8]
push str._NTEAMS
push edx
call fcn.00574fa0
add esp, 8
test eax, eax
je 0x53181e
mov ecx, edi
lea edx, [esp + 8]
sub ecx, edx
lea eax, [eax + ecx + 7]
cmp byte [eax], 0x20
jne 0x531809
mov cl, byte [eax + 1]
inc eax
cmp cl, 0x20
je 0x531800
push eax
call fcn.00575cd7
add esp, 4
cmp eax, 4
jbe 0x531819
xor eax, eax
mov dword [0x5b634c], eax
lea eax, [esp + 8]
push str._SKILLLEVEL
push eax
call fcn.00574fa0
add esp, 8
test eax, eax
je 0x531866
mov ecx, edi
lea edx, [esp + 8]
sub ecx, edx
lea eax, [eax + ecx + 0xb]
cmp byte [eax], 0x20
jne 0x53184e
mov cl, byte [eax + 1]
inc eax
cmp cl, 0x20
je 0x531845
push eax
call fcn.00575cd7
add esp, 4
cmp eax, 4
jbe 0x531861
mov eax, 4
mov dword [0x5b6354], eax
lea eax, [esp + 8]
push str._NAME
push eax
call fcn.00574fa0
add esp, 8
test eax, eax
je 0x5318c2
mov ecx, edi
lea edx, [esp + 8]
sub ecx, edx
lea eax, [eax + ecx + 5]
cmp byte [eax], 0x20
jne 0x531896
mov cl, byte [eax + 1]
inc eax
cmp cl, 0x20
je 0x53188d
mov cl, byte [eax]
mov dl, 0x20
cmp cl, 0x22
jne 0x5318a2
mov dl, 0x22
inc eax
xor esi, esi
mov cl, byte [eax]
inc eax
test cl, cl
je 0x5318bb
cmp cl, dl
je 0x5318bb
mov byte [esi + 0xb07d98], cl
inc esi
cmp esi, 0xf
jb 0x5318a4
mov byte [esi + 0xb07d98], 0
lea eax, [esp + 8]
push str._PASSWORD
push eax
call fcn.00574fa0
add esp, 8
test eax, eax
je 0x531920
lea ecx, [esp + 8]
sub edi, ecx
mov cl, byte [eax + edi + 9]
cmp cl, 0x20
lea eax, [eax + edi + 9]
jne 0x5318f4
mov cl, byte [eax + 1]
inc eax
cmp cl, 0x20
je 0x5318eb
mov cl, byte [eax]
mov dl, 0x20
cmp cl, 0x22
jne 0x531900
mov dl, 0x22
inc eax
xor esi, esi
mov cl, byte [eax]
inc eax
test cl, cl
je 0x531919
cmp cl, dl
je 0x531919
mov byte [esi + 0xb07ea8], cl
inc esi
cmp esi, 9
jb 0x531902
mov byte [esi + 0xb07ea8], 0
pop edi
pop esi
add esp, 0x400
ret