Function at 0x488770
Capabilities:
Connect socket
Set socket configuration

Disassembly:
sub esp, 0x3f8
push ebp
push esi
mov esi, edx
test esi, esi
mov ebp, ecx
jne 0x4887ac
mov esi, dword [0x5a8a20]
test esi, esi
je 0x4887a1
lea ebx, [ebx]
mov eax, dword [esi + 0x6c]
test eax, eax
je 0x4887ac
mov esi, dword [esi + 0x80]
test esi, esi
jne 0x488790
pop esi
xor eax, eax
pop ebp
add esp, 0x3f8
ret
cmp byte [ebp], 0
push edi
je 0x488a49
mov edi, dword [sym.imp.WSOCK32.dll_inet_addr]
push ebp
call edi
cmp eax, 0xffffffff
je 0x488a49
mov dword [esi + 0x6c], 1
mov dword [esi + 0x74], 0xb4
xor ecx, ecx
mov cx, word [0x59ba34]
xor eax, eax
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], eax
mov word [esp + 0xc], 2
push ecx
call dword [sym.imp.WSOCK32.dll_htons]
push ebp
mov word [esp + 0x12], ax
call edi
mov ecx, esi
mov dword [esp + 0x10], eax
call fcn.00488700
mov dx, word [0x59bcfc]
mov cx, word [0x59bcf8]
push eax
push 0
push 2
push 0
call fcn.005049f0
cmp eax, 0xffffffff
mov dword [esi + 0x7c], eax
jne 0x48883c
push 2
jmp 0x488a4b
mov ecx, eax
call fcn.0054af90
mov edx, dword [0x5b4314]
mov eax, dword [esi + 0x7c]
push 0x10
push 0x8031
push edx
push eax
call dword [sym.imp.WSOCK32.dll_WSAAsyncSelect]
mov edx, dword [esi + 0x7c]
push 0x10
lea ecx, [esp + 0x10]
push ecx
push edx
call dword [sym.imp.WSOCK32.dll_connect]
test eax, eax
je 0x488a3a
call dword [sym.imp.WSOCK32.dll_WSAGetLastError]
cmp eax, 0x2733
je 0x488a3a
mov eax, dword [0x5a8a20]
xor ebp, ebp
cmp eax, ebp
push ebx
mov ebx, dword [esi + 0x70]
je 0x488a19
cmp esi, eax
je 0x4888b3
mov eax, dword [eax + 0x80]
cmp eax, ebp
jne 0x488898
pop ebx
pop edi
pop esi
xor eax, eax
pop ebp
add esp, 0x3f8
ret
mov edx, 0x3e7
lea ecx, [esp + 0x20]
call fcn.0041ef30
lea edx, [esp + 0x20]
mov ecx, 0xa8f
call fcn.0041d620
mov edi, dword [0x5ab6c4]
cmp edi, ebp
je 0x488925
lea esp, [esp]
cmp dword [edi + 8], ebx
jne 0x4888f0
mov ecx, edi
call fcn.004e29b0
test eax, eax
je 0x4888fc
mov edi, dword [edi + 0x2424]
cmp edi, ebp
jne 0x4888e0
jmp 0x488925
lea eax, [esp + 0x20]
lea ebp, [edi + 0x444]
push eax
mov edx, 0x3e7
mov ecx, ebp
call fcn.0041ee40
mov ecx, edi
call fcn.0054a7d0
mov edx, edi
mov ecx, ebp
call fcn.0054a630
xor ebp, ebp
push 2
lea ecx, [esp + 0x24]
push 0x586074
push ecx
call fcn.00580a2f
add esp, 0xc
test eax, eax
jne 0x488961
lea eax, [esp + 0x22]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x488944
sub eax, edx
inc eax
push eax
lea edx, [esp + 0x26]
push edx
lea eax, [esp + 0x28]
push eax
call fcn.00571040
add esp, 0xc
mov dl, 0x20
lea ecx, [esp + 0x20]
call fcn.00524ec0
mov ecx, dword [0x5a3a48]
cmp ecx, ebp
je 0x488988
cmp dword [ecx + 0x52c], ebx
je 0x4889c4
mov ecx, dword [ecx + 0x88c]
cmp ecx, ebp
jne 0x488976
mov ecx, dword [0x5afc18]
cmp ecx, ebp
je 0x4889a4
cmp dword [ecx + 0x340], ebx
je 0x4889d5
mov ecx, dword [ecx + 0x3cc]
cmp ecx, ebp
jne 0x488992
mov ecx, dword [0x5a8ba4]
cmp ecx, ebp
je 0x4889fb
mov edi, edi
cmp dword [ecx + 0x444], ebx
je 0x4889e9
mov ecx, dword [ecx + 0x4bc]
cmp ecx, ebp
jne 0x4889b0
jmp 0x4889fb
lea edx, [esp + 0x20]
mov dword [ecx + 0x52c], ebp
call fcn.0042cb60
jmp 0x4889fb
lea edx, [esp + 0x20]
push edx
xor edx, edx
mov dword [ecx + 0x340], ebp
call fcn.00515c80
jmp 0x4889fb
lea eax, [esp + 0x20]
push eax
xor edx, edx
mov dword [ecx + 0x444], ebp
call fcn.00490190
mov eax, dword [0x5a8a20]
cmp eax, ebp
je 0x488a12
cmp esi, eax
je 0x488a26
mov eax, dword [eax + 0x80]
cmp eax, ebp
jne 0x488a04
mov ecx, ebx
call fcn.00488360
pop ebx
pop edi
pop esi
xor eax, eax
pop ebp
add esp, 0x3f8
ret
mov ecx, esi
call fcn.00488280
pop ebx
pop edi
pop esi
xor eax, eax
pop ebp
add esp, 0x3f8
ret
pop edi
pop esi
mov eax, 1
pop ebp
add esp, 0x3f8
ret
push 1
mov edx, dword [esi + 0x70]
mov ecx, esi
call fcn.004883a0
pop edi
pop esi
xor eax, eax
pop ebp
add esp, 0x3f8
ret