Function at 0x4a4fc0
Capabilities:
Connect socket
Set socket configuration

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x18
mov edi, dword [esp + 0x2c]
mov eax, dword [0x594180]
xor eax, esp
mov dword [esp + 0x14], eax
mov dword [esp], ecx
mov eax, dword [esp]
mov eax, dword [eax]
mov dword [esp + 0xc], eax
mov eax, 0x2f8a6ea0
lea esi, [esp + 0x10]
jmp 0x4a5099
mov dword [esp + 0x10], 0
push esi
push 0x8004667e
push edi
call dword [sym.imp.WS2_32.dll_ioctlsocket]
mov eax, dword [esp]
mov eax, dword [eax + 0x10]
imul ebx, dword [eax], 0x3e8
mov eax, dword [esp]
mov eax, dword [eax + 0x14]
push 0
push 0x3e8
push dword [eax + 4]
push dword [eax]
call fcn.0055d9e0
mov ecx, 0xccd2a87b
add eax, ecx
add eax, ebx
sub eax, ecx
mov dword [esp + 0x10], eax
push 4
push esi
push 0x1006
push 0xffff
push edi
mov ebp, dword [sym.imp.WS2_32.dll_setsockopt]
call ebp
mov eax, dword [esp]
mov eax, dword [eax + 0x18]
imul ebx, dword [eax], 0x3e8
mov eax, dword [esp]
mov eax, dword [eax + 0x1c]
push 0
push 0x3e8
push dword [eax + 4]
push dword [eax]
call fcn.0055d9e0
add eax, ebx
mov dword [esp + 0x10], eax
push 4
push esi
push 0x1005
push 0xffff
push edi
call ebp
mov eax, dword [esp]
mov eax, dword [eax + 4]
mov dword [eax], 0
mov eax, 0xdbf3360d
mov cl, 1
mov dword [esp + 8], ecx
nop dword [eax]
cmp eax, 0x13699d2b
jg 0x4a50e0
cmp eax, 0xd95e3aba
jle 0x4a5110
cmp eax, 0xef421061
jle 0x4a518f
cmp eax, 0xef421062
je 0x4a4ff0
cmp eax, 0xfe93fbf2
je 0x4a517d
jmp 0x4a50a0
cmp eax, 0x57d6f4fd
jg 0x4a5150
cmp eax, 0x13699d2c
je 0x4a51aa
cmp eax, 0x2f8a6ea0
je 0x4a51ec
cmp eax, 0x4da09b83
jne 0x4a50a0
mov eax, 0xef421062
jmp 0x4a50a0
cmp eax, 0x8ad233ca
je 0x4a5206
cmp eax, 0xd012b978
je 0x4a5210
cmp eax, 0xd48c9611
jne 0x4a50a0
cmp byte [esp + 7], 0
mov eax, 0x13699d2c
mov ecx, 0x5db65b0d
cmovne eax, ecx
jmp 0x4a50a0
cmp eax, 0x57d6f4fe
je 0x4a524a
cmp eax, 0x59ea3983
je 0x4a528c
cmp eax, 0x5db65b0d
jne 0x4a50a0
mov eax, dword [esp]
mov eax, dword [eax + 4]
mov dword [eax], 2
mov eax, 0xdbf3360d
mov dword [esp + 8], 0
jmp 0x4a50a0
cmp eax, 0xd95e3abb
jne 0x4a52da
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov eax, 0x59ea3983
jmp 0x4a50a0
mov eax, dword [esp]
mov eax, dword [eax + 0xc]
mov ecx, dword [esp]
mov ecx, dword [ecx + 8]
push dword [eax + 4]
push dword [eax]
push dword [ecx + 4]
push dword [ecx]
push edi
call fcn.004a5310
add esp, 0x14
mov ecx, dword [esp]
mov ecx, dword [ecx + 4]
mov dword [ecx], eax
mov eax, dword [esp]
mov eax, dword [eax + 4]
cmp dword [eax], 0
mov eax, 0xfe93fbf2
mov ecx, 0x4da09b83
cmove eax, ecx
jmp 0x4a50a0
mov eax, dword [esp + 0xc]
cmp dword [eax + 0x10], 0
mov eax, 0x8ad233ca
mov ecx, 0xd012b978
cmove eax, ecx
jmp 0x4a50a0
mov eax, 0xd012b978
jmp 0x4a50a0
mov dword [esp + 0x10], 1
push esi
push 0x8004667e
push edi
call dword [sym.imp.WS2_32.dll_ioctlsocket]
mov eax, dword [esp + 0x30]
push dword [eax + 0x10]
push dword [eax + 0x18]
push edi
call dword [sym.imp.WS2_32.dll_connect]
test eax, eax
mov eax, 0xef421062
mov ecx, 0x57d6f4fe
cmovs eax, ecx
jmp 0x4a50a0
mov eax, dword [0x598380]
mov ecx, dword [0x598384]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov ebx, 0xd95e3abb
mov ebp, 0x59ea3983
cmovne ebx, ebp
test eax, edx
mov eax, ebx
cmove eax, ebp
cmp ecx, 0xa
cmovge eax, ebx
jmp 0x4a50a0
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp eax, 0x2733
setne byte [esp + 7]
mov eax, dword [0x598380]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0xd95e3abb
mov ebx, 0xd48c9611
cmove eax, ebx
cmp dword [0x598384], 0xa
mov edx, 0xd95e3abb
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, ebx
jmp 0x4a50a0
cmp eax, 0xdbf3360d
jne 0x4a50a0
mov ebx, dword [esp + 8]
and bl, 1
mov ecx, dword [esp + 0x14]
xor ecx, esp
call fcn.0055d8e5
mov eax, ebx
add esp, 0x18
pop esi
pop edi
pop ebx
pop ebp
ret 8