Function at 0x46de90
Capabilities:
Connect socket
Get number of processors
Set socket configuration

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x484580
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x64
push ebx
push esi
mov esi, ecx
mov eax, 0x10624dd3
push edi
push 4
mov edx, dword [esi + 0x30]
add edx, 0x1f4
imul edx
imul eax, dword [esi + 0x2c], 0x3e8
sar edx, 6
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
add ecx, eax
lea eax, [ebp - 0x10]
push eax
push 0x1005
push 0xffff
push dword [ebp + 8]
mov dword [ebp - 0x10], ecx
call dword [sym.imp.WSOCK32.dll_setsockopt]
mov ebx, dword [sym.imp.WSOCK32.dll_WSAGetLastError]
test eax, eax
je 0x46dfc9
call ebx
cmp byte [esi + 0x34], 0
mov dword [esi + 0x38], eax
jne 0x46dfc9
push eax
lea eax, [ebp - 0x58]
push eax
call fcn.004084a0
add esp, 8
mov edi, eax
lea eax, [ebp - 0x28]
mov dword [ebp - 4], 0
push eax
mov ecx, 0x4a9a88
call fcn.004046a0
mov dword [0x4a9f24], 1
cmp dword [eax + 0x14], 0x10
mov byte [ebp - 4], 1
jb 0x46df46
mov eax, dword [eax]
push eax
push 0x48649c
push 0x4a9a88
call fcn.0040e7e0
push str.ERROR:_Could_not_set_socket_option_for_SO_SNDTIMEO_
push 0x48649c
push eax
call fcn.0040e7e0
add esp, 0x18
cmp dword [edi + 0x14], 0x10
jb 0x46df71
mov edi, dword [edi]
push edi
push 0x48649c
push eax
call fcn.0040e7e0
push eax
call fcn.0040d5b0
mov eax, dword [ebp - 0x14]
add esp, 0x10
cmp eax, 0x10
jb 0x46df9b
inc eax
lea ecx, [ebp - 0x28]
push eax
push dword [ebp - 0x28]
call fcn.00404120
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x14], 0xf
mov dword [ebp - 0x18], 0
mov byte [ebp - 0x28], 0
mov dword [ebp - 4], 0xffffffff
cmp eax, 0x10
jb 0x46dfc9
inc eax
lea ecx, [ebp - 0x58]
push eax
push dword [ebp - 0x58]
call fcn.00404120
push 4
lea eax, [ebp - 0x10]
push eax
push 0x1006
push 0xffff
push dword [ebp + 8]
call dword [sym.imp.WSOCK32.dll_setsockopt]
test eax, eax
je 0x46e0b6
call ebx
cmp byte [esi + 0x34], 0
mov dword [esi + 0x38], eax
jne 0x46e0b6
push eax
lea eax, [ebp - 0x58]
push eax
call fcn.004084a0
add esp, 8
mov edi, eax
lea eax, [ebp - 0x28]
mov dword [ebp - 4], 2
push eax
mov ecx, 0x4a9a88
call fcn.004046a0
mov dword [0x4a9f24], 1
cmp dword [eax + 0x14], 0x10
mov byte [ebp - 4], 3
jb 0x46e033
mov eax, dword [eax]
push eax
push 0x48649c
push 0x4a9a88
call fcn.0040e7e0
push str.ERROR:_Could_not_set_socket_option_for_SO_RCVTIMEO_
push 0x48649c
push eax
call fcn.0040e7e0
add esp, 0x18
cmp dword [edi + 0x14], 0x10
jb 0x46e05e
mov edi, dword [edi]
push edi
push 0x48649c
push eax
call fcn.0040e7e0
push eax
call fcn.0040d5b0
mov eax, dword [ebp - 0x14]
add esp, 0x10
cmp eax, 0x10
jb 0x46e088
inc eax
lea ecx, [ebp - 0x28]
push eax
push dword [ebp - 0x28]
call fcn.00404120
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x14], 0xf
mov dword [ebp - 0x18], 0
mov byte [ebp - 0x28], 0
mov dword [ebp - 4], 0xffffffff
cmp eax, 0x10
jb 0x46e0b6
inc eax
lea ecx, [ebp - 0x58]
push eax
push dword [ebp - 0x58]
call fcn.00404120
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
call dword [sym.imp.WSOCK32.dll_connect]
cmp eax, 0xffffffff
jne 0x46e1a9
call ebx
cmp byte [esi + 0x34], 0
mov dword [esi + 0x38], eax
jne 0x46e193
push eax
lea eax, [ebp - 0x70]
push eax
call fcn.004084a0
add esp, 8
mov esi, eax
lea eax, [ebp - 0x40]
mov dword [ebp - 4], 4
push eax
mov ecx, 0x4a9a88
call fcn.004046a0
mov dword [0x4a9f24], 1
cmp dword [eax + 0x14], 0x10
mov byte [ebp - 4], 5
jb 0x46e117
mov eax, dword [eax]
push eax
push 0x48649c
push 0x4a9a88
call fcn.0040e7e0
push str.ERROR:_Could_not_connect_to_a_socket_
push 0x48649c
push eax
call fcn.0040e7e0
add esp, 0x18
cmp dword [esi + 0x14], 0x10
jb 0x46e142
mov esi, dword [esi]
push esi
push 0x48649c
push eax
call fcn.0040e7e0
push eax
call fcn.0040d5b0
mov eax, dword [ebp - 0x2c]
add esp, 0x10
cmp eax, 0x10
jb 0x46e16c
inc eax
lea ecx, [ebp - 0x40]
push eax
push dword [ebp - 0x40]
call fcn.00404120
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x2c], 0xf
mov dword [ebp - 0x30], 0
mov byte [ebp - 0x40], 0
cmp eax, 0x10
jb 0x46e193
inc eax
lea ecx, [ebp - 0x70]
push eax
push dword [ebp - 0x70]
call fcn.00404120
pop edi
pop esi
or eax, 0xffffffff
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0xc
mov ecx, dword [ebp - 0xc]
mov eax, 1
pop edi
mov dword [esi + 0x38], 0
pop esi
pop ebx
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0xc