Function at 0x406e50
Capabilities:
Get socket status

Disassembly:
push ebp
mov ecx, 5
mov ebp, esp
sub esp, 0x38
mov dword [ebp - 8], esi
mov esi, dword [ebp + 8]
mov dword [ebp - 4], edi
mov edi, str.RETR
mov dword [ebp - 0xc], ebx
repe cmpsb byte [esi], byte es:[edi]
mov dword [ebp - 0x20], str.RETR
seta dl
setb al
cmp dl, al
jne 0x406e97
mov edx, dword [0x41ad80]
mov eax, str.STOU
test edx, edx
mov edx, str.STOR
cmovne edx, eax
mov dword [ebp - 0x20], edx
mov ebx, dword [0x419d40]
test ebx, ebx
jne 0x406eaf
mov eax, dword [0x41ad8c]
test eax, eax
jne 0x406ef1
mov ebx, 1
cmp dword [0x41ade4], ebx
je 0x406ec7
mov dword [esp + 4], 1
mov dword [esp], ebx
call fcn.00401680
mov dword [esp], str.PASV
call fcn.00406c90
cmp eax, 2
je 0x406f03
mov dword [esp], str.proxy_server_does_not_support_third_party_transfers.
call sub.cygwin1.dll_puts
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 8]
mov edi, dword [ebp - 4]
mov esp, ebp
pop ebp
ret
mov eax, dword [0x41b118]
mov bl, 3
test eax, eax
jne 0x406eaf
mov ebx, 1
jmp 0x406eaf
mov dword [esp], 0
call fcn.00406100
mov eax, dword [0x41ade0]
test eax, eax
je 0x407150
cmp dword [0x41ade4], ebx
je 0x406f34
mov dword [esp + 4], 1
mov dword [esp], ebx
call fcn.00401680
mov dword [esp + 4], 0x41af80
mov dword [esp], str.PORT__s
call fcn.00406c90
cmp eax, 2
je 0x406f60
mov dword [esp], 1
call fcn.00406100
jmp 0x406ee4
mov dword [esp], 0x419820
call sub.cygwin1.dll_setjmp
xor ebx, ebx
test eax, eax
jne 0x406fc1
mov dword [esp + 4], 0x405fb0
mov dword [esp], 2
call sub.cygwin1.dll_signal
mov edx, dword [ebp + 8]
mov dword [esp], 0x416303
mov dword [esp + 4], edx
mov dword [ebp - 0x24], eax
mov eax, dword [ebp + 0x10]
mov dword [esp + 8], eax
call fcn.00406c90
sub eax, 1
je 0x4071e2
mov eax, dword [ebp - 0x24]
mov dword [esp], 2
mov dword [esp + 4], eax
call sub.cygwin1.dll_signal
jmp 0x406f4d
mov dword [esp + 4], 1
mov edi, str.RETR
mov dword [esp], 2
call sub.cygwin1.dll_signal
mov esi, dword [ebp + 8]
mov ecx, 5
mov dword [0x419054], 0
repe cmpsb byte [esi], byte es:[edi]
je 0x407177
mov eax, dword [0x41add8]
test eax, eax
je 0x407325
mov eax, dword [0x41b260]
mov edx, ebx
or edx, eax
je 0x407195
test eax, eax
jne 0x407310
xor eax, eax
cmp dword [0x41add8], 0
sete al
mov dword [esp], eax
call fcn.00406100
or ebx, dword [0x41b260]
je 0x407295
mov ebx, dword [0x41b260]
test ebx, ebx
jne 0x407347
xor eax, eax
cmp dword [0x41add8], 0
sete al
mov dword [esp], eax
call fcn.00406100
mov ecx, dword [0x41b260]
test ecx, ecx
je 0x407108
lea eax, [ebp - 0x14]
lea edx, [ebp - 0xc]
nop
mov byte [eax], 0
add eax, 1
cmp eax, edx
jne 0x407070
mov eax, dword [0x419700]
mov dword [esp], eax
call sub.cygwin1.dll_fileno
mov ebx, eax
mov eax, dword [0x419700]
shr ebx, 5
mov esi, dword [ebp + ebx*4 - 0x14]
mov dword [esp], eax
call sub.cygwin1.dll_fileno
mov dword [ebp - 0x1c], 0xa
mov dword [ebp - 0x18], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp], 0x20
mov ecx, eax
mov eax, 1
and ecx, 0x1f
shl eax, cl
or esi, eax
lea eax, [ebp - 0x1c]
mov dword [esp + 0x10], eax
lea eax, [ebp - 0x14]
mov dword [ebp + ebx*4 - 0x14], esi
mov dword [esp + 4], eax
call sub.cygwin1.dll_select
cmp eax, 0
jle 0x407358
mov dword [esp], 0
call fcn.004064d0
mov dword [esp], 0
call fcn.004064d0
mov eax, dword [0x41add8]
test eax, eax
jne 0x407336
mov dword [esp], 1
call fcn.00406100
mov eax, dword [0x419604]
test eax, eax
je 0x407134
mov dword [0x41b114], 0xffffffff
mov eax, dword [ebp - 0x24]
mov dword [esp], 2
mov dword [esp + 4], eax
call sub.cygwin1.dll_signal
jmp 0x406ee4
mov dword [esp], str.No_primary_connection
call sub.cygwin1.dll_puts
mov dword [esp], 1
call fcn.00406100
mov dword [0x41b114], 0xffffffff
jmp 0x406ee4
mov eax, dword [0x41add8]
test eax, eax
je 0x407001
mov dword [esp], 0
call fcn.00406100
jmp 0x407001
mov eax, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov dword [esp], 0x416303
mov dword [esp + 8], eax
mov dword [esp + 4], edx
call fcn.00406c90
sub eax, 1
je 0x407115
mov dword [esp], 0
call fcn.00406100
mov eax, dword [0x41b260]
test eax, eax
je 0x407115
mov dword [esp], 0
call fcn.00406930
jmp 0x407115
mov dword [esp], 2
mov ebx, 1
call sub.cygwin1.dll_sleep
mov dword [esp], 1
call fcn.00406100
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov dword [esp], 0x416303
mov dword [esp + 8], edx
mov dword [esp + 4], eax
call fcn.00406c90
sub eax, 1
jne 0x406fc1
add dword [0x419054], 1
mov dword [esp], 0
call fcn.004064d0
mov dword [esp], 0
call fcn.00406100
mov dword [esp], 0
call fcn.004064d0
mov edx, dword [ebp - 0x24]
mov dword [esp], 2
mov dword [esp + 4], edx
call sub.cygwin1.dll_signal
mov dword [esp], 1
call fcn.00406100
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0xc]
mov dword [esp], str.local:__s_remote:__s_n
mov dword [0x419054], 0
mov dword [esp + 8], eax
mov dword [esp + 4], edx
call sub.cygwin1.dll_printf
jmp 0x406ee4
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov dword [esp], 0x416303
mov dword [esp + 8], edx
mov dword [esp + 4], eax
call fcn.00406c90
sub eax, 1
je 0x407038
mov dword [esp], 0
call fcn.00406100
mov edi, dword [0x41b260]
test edi, edi
jne 0x407378
mov dword [esp], 1
call fcn.00406100
mov esi, dword [0x419604]
test esi, esi
je 0x4072f2
mov dword [0x41b114], 0xffffffff
mov edx, dword [ebp - 0x24]
mov dword [esp], 2
mov dword [esp + 4], edx
call sub.cygwin1.dll_signal
jmp 0x406ee4
mov dword [esp], 0
call fcn.00406930
lea esi, [esi]
jmp 0x407018
mov dword [esp], 1
call fcn.00406100
jmp 0x407001
mov dword [esp], 0
call fcn.00406100
jmp 0x407115
mov dword [esp], 0
call fcn.00406930
jmp 0x407046
jne 0x407389
mov edx, dword [0x419604]
test edx, edx
je 0x40736e
mov dword [0x41b114], 0xffffffff
call fcn.00409cd0
jmp 0x4070f0
mov dword [esp], 0
call fcn.00406930
jmp 0x4072d2
call sub.cygwin1.dll___errno
mov dword [esp + 8], str.abort
mov eax, dword [eax]
mov dword [esp], 0
mov dword [esp + 4], eax
call fcn.0040c930
jmp 0x40735a