Function at 0x488ec0
Capabilities:
Connect socket
Set socket configuration

Disassembly:
sub esp, 0x3f8
push ebp
push esi
mov esi, edx
test esi, esi
mov ebp, ecx
jne 0x488efc
mov esi, dword [0x5cd2a0]
test esi, esi
je 0x488ef1
lea ebx, [ebx]
mov eax, dword [esi + 0x6c]
test eax, eax
je 0x488efc
mov esi, dword [esi + 0x80]
test esi, esi
jne 0x488ee0
pop esi
xor eax, eax
pop ebp
add esp, 0x3f8
ret
cmp byte [ebp], 0
push edi
je 0x489199
mov edi, dword [sym.imp.WSOCK32.dll_inet_addr]
push ebp
call edi
cmp eax, 0xffffffff
je 0x489199
mov dword [esi + 0x6c], 1
mov dword [esi + 0x74], 0xb4
xor ecx, ecx
mov cx, word [0x5bfa90]
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.00488e50
mov dx, word [0x5bfd6c]
mov cx, word [0x5bfd68]
push eax
push 0
push 2
push 0
call fcn.00515a30
cmp eax, 0xffffffff
mov dword [esi + 0x7c], eax
jne 0x488f8c
push 2
jmp 0x48919b
mov ecx, eax
call fcn.00569850
mov edx, dword [0x5f92ec]
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 0x48918a
call dword [sym.imp.WSOCK32.dll_WSAGetLastError]
cmp eax, 0x2733
je 0x48918a
mov eax, dword [0x5cd2a0]
xor ebp, ebp
cmp eax, ebp
push ebx
mov ebx, dword [esi + 0x70]
je 0x489169
cmp esi, eax
je 0x489003
mov eax, dword [eax + 0x80]
cmp eax, ebp
jne 0x488fe8
pop ebx
pop edi
pop esi
xor eax, eax
pop ebp
add esp, 0x3f8
ret
mov edx, 0x3e7
lea ecx, [esp + 0x20]
call fcn.00420e60
lea edx, [esp + 0x20]
mov ecx, 0xa8f
call fcn.0041f1a0
mov edi, dword [0x5f002c]
cmp edi, ebp
je 0x489075
lea esp, [esp]
cmp dword [edi + 8], ebx
jne 0x489040
mov ecx, edi
call fcn.004f0d40
test eax, eax
je 0x48904c
mov edi, dword [edi + 0x2500]
cmp edi, ebp
jne 0x489030
jmp 0x489075
lea eax, [esp + 0x20]
lea ebp, [edi + 0x444]
push eax
mov edx, 0x3e7
mov ecx, ebp
call fcn.00420d70
mov ecx, edi
call fcn.005690a0
mov edx, edi
mov ecx, ebp
call fcn.00568f00
xor ebp, ebp
push 2
lea ecx, [esp + 0x24]
push 0x5a75cc
push ecx
call fcn.005a2a05
add esp, 0xc
test eax, eax
jne 0x4890b1
lea eax, [esp + 0x22]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x489094
sub eax, edx
inc eax
push eax
lea edx, [esp + 0x26]
push edx
lea eax, [esp + 0x28]
push eax
call fcn.00592290
add esp, 0xc
mov dl, 0x20
lea ecx, [esp + 0x20]
call fcn.005379a0
mov ecx, dword [0x5c81a0]
cmp ecx, ebp
je 0x4890d8
cmp dword [ecx + 0x52c], ebx
je 0x489114
mov ecx, dword [ecx + 0x890]
cmp ecx, ebp
jne 0x4890c6
mov ecx, dword [0x5f4f78]
cmp ecx, ebp
je 0x4890f4
cmp dword [ecx + 0x340], ebx
je 0x489125
mov ecx, dword [ecx + 0x3d4]
cmp ecx, ebp
jne 0x4890e2
mov ecx, dword [0x5ed44c]
cmp ecx, ebp
je 0x48914b
mov edi, edi
cmp dword [ecx + 0x444], ebx
je 0x489139
mov ecx, dword [ecx + 0x4bc]
cmp ecx, ebp
jne 0x489100
jmp 0x48914b
lea edx, [esp + 0x20]
mov dword [ecx + 0x52c], ebp
call fcn.0042f110
jmp 0x48914b
lea edx, [esp + 0x20]
push edx
xor edx, edx
mov dword [ecx + 0x340], ebp
call fcn.005273e0
jmp 0x48914b
lea eax, [esp + 0x20]
push eax
xor edx, edx
mov dword [ecx + 0x444], ebp
call fcn.00492700
mov eax, dword [0x5cd2a0]
cmp eax, ebp
je 0x489162
cmp esi, eax
je 0x489176
mov eax, dword [eax + 0x80]
cmp eax, ebp
jne 0x489154
mov ecx, ebx
call fcn.00488ab0
pop ebx
pop edi
pop esi
xor eax, eax
pop ebp
add esp, 0x3f8
ret
mov ecx, esi
call fcn.004889d0
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.00488af0
pop edi
pop esi
xor eax, eax
pop ebp
add esp, 0x3f8
ret