Function at 0x401bd0
Capabilities:
Set socket configuration

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x13c
mov esi, dword [esp + 0x158]
mov ebx, dword [esp + 0x150]
mov ebp, dword [esp + 0x154]
test esi, esi
je 0x401c25
mov dword [esp], ebx
call fcn.0040f680
mov dword [esp], esi
mov dword [esp + 4], eax
mov edi, eax
call sub.cygwin1.dll_strcmp
test eax, eax
jne 0x401f50
mov eax, dword [ebx]
cmp eax, 2
je 0x402010
cmp eax, 0x17
je 0x401fc0
mov edx, ebx
mov ecx, ebp
lea eax, [esp + 0x30]
call fcn.00401170
movzx eax, word [esp + 0x30]
mov dword [esp + 8], 0
mov dword [esp + 4], 1
mov dword [esp], eax
call sub.cygwin1.dll_socket
mov ebx, eax
test eax, eax
js 0x402075
cmp byte [0x47612f], 0
jne 0x401f10
mov eax, dword [0x476078]
mov edx, dword [0x47607c]
mov edi, eax
or edi, edx
je 0x401c8b
mov ecx, 0x1fff
cmp ecx, eax
mov ecx, 0
sbb ecx, edx
jge 0x401d68
mov eax, dword [0x4760bc]
test eax, eax
je 0x401cae
cmp byte [0x47304d], 0
je 0x401de8
cmp byte [0x47304c], 0
jne 0x401fa0
movzx edx, word [esp + 0x30]
fld qword [0x476050]
mov eax, 0x10
cmp dx, 2
jne 0x401d50
mov dword [esp + 0xb8], eax
lea eax, [esp + 0xb0]
lea ecx, [esp + 0x30]
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0x401200
fstp qword [esp]
mov dword [esp + 0xb0], ebx
mov dword [esp + 0xb4], ecx
call fcn.00430130
test al, al
jne 0x402081
mov eax, dword [esp + 0xbc]
cmp eax, 0xffffffff
je 0x401ff0
test eax, eax
js 0x401e9c
test esi, esi
je 0x401d3c
mov dword [esp], str.connected._n
call sub.cygintl_8.dll_libintl_gettext
mov dword [esp], 0
mov dword [esp + 4], eax
call fcn.0041d940
add esp, 0x13c
mov eax, ebx
pop ebx
pop esi
pop edi
pop ebp
ret
cmp dx, 0x17
jne 0x402091
mov eax, 0x1c
jmp 0x401cc8
mov edx, 0x200
mov dword [esp + 0x10], 4
cmp eax, edx
mov dword [esp + 8], 0x1002
cmovl eax, edx
mov dword [esp + 4], 0xffff
mov dword [esp], ebx
mov dword [esp + 0xb0], eax
lea eax, [esp + 0xb0]
mov dword [esp + 0xc], eax
call sub.cygwin1.dll_setsockopt
test eax, eax
je 0x401c8b
call sub.cygwin1.dll___errno
mov eax, dword [eax]
mov dword [esp], eax
call sub.cygwin1.dll_strerror
mov dword [esp], str.setsockopt_SO_RCVBUF_failed:__s_n
mov edi, eax
call sub.cygintl_8.dll_libintl_gettext
mov dword [esp + 8], edi
mov dword [esp + 4], eax
mov dword [esp], 1
call fcn.0041d940
jmp 0x401c8b
mov dword [esp + 4], 3
mov dword [esp], eax
mov byte [0x47304d], 1
call fcn.0040f890
mov edi, eax
test eax, eax
je 0x402020
mov dword [esp + 4], 0
mov dword [esp], eax
call fcn.0040f4c0
mov edx, dword [eax]
mov dword [0x473034], edx
mov edx, dword [eax + 4]
mov dword [0x473038], edx
mov edx, dword [eax + 8]
mov dword [0x47303c], edx
mov edx, dword [eax + 0xc]
mov dword [0x473040], edx
mov edx, dword [eax + 0x10]
mov dword [0x473044], edx
mov eax, dword [eax + 0x14]
mov dword [esp], edi
lea edi, [esp + 0xb0]
mov dword [0x473048], eax
call fcn.0040f640
xor ecx, ecx
mov edx, 0x473034
mov eax, edi
call fcn.00401170
mov byte [0x47304c], 1
movzx edx, word [esp + 0xb0]
mov eax, 0x10
cmp dx, 2
jne 0x401ef8
mov dword [esp + 8], eax
mov dword [esp + 4], edi
mov dword [esp], ebx
call sub.cygwin1.dll_bind
test eax, eax
jns 0x401cae
call sub.cygwin1.dll___errno
mov edi, dword [eax]
mov dword [esp], ebx
call fcn.00401b40
test esi, esi
je 0x401ee0
call sub.cygwin1.dll___errno
mov eax, dword [eax]
mov dword [esp], eax
call sub.cygwin1.dll_strerror
mov dword [esp], 0x45112c
mov ebx, eax
call sub.cygintl_8.dll_libintl_gettext
mov dword [esp + 8], ebx
mov dword [esp + 4], eax
mov dword [esp], 1
call fcn.0041d940
call sub.cygwin1.dll___errno
mov ebx, 0xffffffff
mov dword [eax], edi
jmp 0x401d3c
cmp dx, 0x17
jne 0x44c614
mov eax, 0x1c
jmp 0x401e84
lea eax, [esp + 0xb0]
mov dword [esp + 0x10], 4
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0x1b
mov dword [esp + 4], 0x29
mov dword [esp], ebx
mov dword [esp + 0xb0], 1
call sub.cygwin1.dll_setsockopt
jmp 0x401c66
mov dword [esp], esi
call fcn.0041deb0
mov dword [esp], str.Connecting_to__s_s:_d...
mov dword [esp + 0x2c], eax
call sub.cygintl_8.dll_libintl_gettext
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x10], ebp
mov dword [esp + 0xc], edi
mov dword [esp + 8], edx
mov dword [esp + 4], eax
mov dword [esp], 0
call fcn.0041d940
mov dword [esp], 0
call fcn.004376c0
jmp 0x401c25
lea edi, [esp + 0xb0]
xor ecx, ecx
mov edx, 0x473034
mov eax, edi
call fcn.00401170
jmp 0x401e71
mov dword [esp], str.Connecting_to___s_:_d...
call sub.cygintl_8.dll_libintl_gettext
mov dword [esp + 0xc], ebp
mov dword [esp + 8], edi
mov dword [esp + 4], eax
mov dword [esp], 0
call fcn.0041d940
jmp 0x401c25
call sub.cygwin1.dll___errno
cmp dword [eax], 4
je 0x402068
mov eax, dword [esp + 0xbc]
jmp 0x401d14
mov dword [esp], str.Connecting_to__s:_d...
jmp 0x401fc7
mov eax, dword [0x4760bc]
mov dword [esp], eax
call fcn.00439a30
mov dword [esp], str._s:_unable_to_resolve_bind_address__s__disabling_bind._n
mov ebp, dword [0x475f18]
mov edi, eax
call sub.cygintl_8.dll_libintl_gettext
mov dword [esp + 0xc], edi
mov dword [esp + 8], ebp
mov dword [esp + 4], eax
mov dword [esp], 1
call fcn.0041d940
mov byte [0x47304c], 0
jmp 0x401cae
call sub.cygwin1.dll___errno
mov dword [eax], 0x74
jmp 0x401ffa
call sub.cygwin1.dll___errno
mov edi, dword [eax]
jmp 0x401eab
call sub.cygwin1.dll___errno
mov dword [eax], 0x74
jmp 0x401e9c
fstp st(0)
jmp 0x44c614