Function at 0x4213c8
Capabilities:
Get socket status

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x5c
push edi
push esi
push ebx
mov dword [ebp - 0x2c], 0
xor ebx, ebx
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x38], 0x270f
mov dword [0x433064], 0
add esp, 0xfffffff4
lea eax, [ebp - 4]
push eax
call sub.cygwin1.dll_time
add esp, 0x10
mov eax, dword [ebp - 4]
cmp eax, dword [0x43438c]
je 0x42141d
mov dword [0x433064], 1
mov eax, dword [ebp - 4]
mov dword [0x43438c], eax
mov esi, dword [0x44355c]
mov dword [ebp - 0x28], esi
lea eax, [ebp - 0x10]
xor edx, edx
nop
mov byte [eax], 0
inc eax
inc edx
cmp edx, 7
jbe 0x421434
lea eax, [ebp - 0x18]
xor edx, edx
nop
mov byte [eax], 0
inc eax
inc edx
cmp edx, 7
jbe 0x421444
test esi, esi
je 0x42158c
mov dword [ebp - 0x3c], 0
cmp dword [esi], 0
je 0x421576
mov edx, dword [esi]
cmp dword [edx + 0x7c], 0
je 0x421498
cmp dword [edx + 0x80], 0
jle 0x421498
mov eax, dword [0x433064]
sub dword [edx + 0x80], eax
mov eax, dword [esi]
cmp dword [eax + 0x80], 0
jne 0x421498
mov dword [eax + 0x84], 0
nop
mov eax, dword [esi]
mov edx, dword [ebp - 0x34]
cmp dword [eax + 0xc], edx
jle 0x4214a8
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x34], eax
mov eax, dword [esi]
mov edx, dword [ebp - 0x38]
cmp dword [eax + 0xc], edx
jge 0x4214b8
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x38], eax
mov edx, dword [esi]
cmp dword [edx + 4], 0
jne 0x421504
mov dword [0x4459ec], esi
mov edi, dword [edx + 0xc]
cmp dword [edx + 0x5c], 0
je 0x4214e1
add esp, 0xfffffff4
mov eax, dword [edx + 0x90]
push eax
mov eax, dword [edx + 0x5c]
call eax
add esp, 0x10
mov eax, dword [ebp - 0x28]
mov esi, dword [eax + 4]
test esi, esi
je 0x42144e
mov eax, dword [esi]
cmp edi, dword [eax + 0xc]
jne 0x42144e
mov dword [eax + 4], 1
jmp 0x421576
mov eax, dword [esi]
cmp dword [eax + 4], 1
je 0x421518
cmp dword [eax + 4], 2
jne 0x421576
cmp dword [eax + 0xc], 0
jle 0x421576
mov eax, dword [esi]
cmp dword [eax + 0xc], 0
jle 0x421538
mov eax, dword [eax + 0xc]
mov edx, eax
shr edx, 5
mov ecx, eax
and ecx, 0x1f
mov eax, 1
shl eax, cl
or dword [ebp + edx*4 - 0x10], eax
inc ebx
mov eax, dword [esi]
cmp dword [eax + 4], 1
je 0x421553
cmp dword [eax + 0x98], 0
je 0x421576
cmp dword [eax + 0x80], 0
jne 0x421576
mov eax, dword [esi]
cmp dword [eax + 0xc], 0
jle 0x421573
mov eax, dword [eax + 0xc]
mov edx, eax
shr edx, 5
mov ecx, eax
and ecx, 0x1f
mov eax, 1
shl eax, cl
or dword [ebp + edx*4 - 0x18], eax
inc dword [ebp - 0x30]
cmp dword [ebp - 0x3c], 0
jne 0x42144e
mov dword [ebp - 0x28], esi
mov esi, dword [esi + 4]
jmp 0x42144e
mov edx, dword [ebp - 0x34]
cmp dword [ebp - 0x38], edx
jle 0x421597
mov dword [ebp - 0x38], edx
test ebx, ebx
jne 0x4215ac
add esp, 0xfffffff4
push 1
call sub.cygwin1.dll_sleep
xor eax, eax
jmp 0x421ae8
add esp, 0xfffffffc
push 0x32
push 0x41f61e
push 0x44374c
call fcn.00421b44
add esp, 0xfffffffc
push 0x3c
push 0x4213b7
push 0x4476dc
call fcn.00421b44
mov dword [0x44364c], 0x6aa
mov dword [0x43f154], 0
mov dword [0x43f150], 1
add esp, 0x20
cmp dword [ebp - 0x30], 0
jle 0x42160c
add esp, 0xfffffff4
push 0x43f150
push 0
lea eax, [ebp - 0x18]
push eax
jmp 0x421618
add esp, 0xfffffff4
push 0x43f150
push 0
push 0
lea eax, [ebp - 0x10]
push eax
mov eax, dword [ebp - 0x34]
inc eax
push eax
call sub.cygwin1.dll_select
mov ebx, eax
add esp, 0x20
add esp, 0xfffffff4
lea eax, [ebp - 0x1c]
push eax
call sub.cygwin1.dll_time
add esp, 0x10
test ebx, ebx
jle 0x421ade
mov eax, dword [0x44355c]
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x34], 0
jg 0x421657
mov dword [ebp - 0x34], 1
mov edx, dword [ebp - 0x34]
mov dword [ebp - 0x40], edx
mov eax, dword [ebp - 0x38]
cmp edx, eax
jl 0x421ade
mov edx, dword [ebp - 0x40]
mov dword [ebp - 0x44], edx
add esp, 0xfffffff4
push edx
call fcn.0041f5a0
mov esi, eax
add esp, 0x10
test esi, esi
je 0x421ac9
mov dword [0x4459ec], esi
mov edi, dword [ebp - 0x40]
mov eax, dword [esi]
cmp dword [eax + 4], 1
jne 0x4219d8
test edi, edi
jle 0x4219d8
mov eax, edi
shr eax, 5
lea edx, [eax*4]
mov ecx, edi
and ecx, 0x1f
mov eax, dword [edx + ebp - 0x10]
sar eax, cl
test al, 1
jne 0x4216ca
mov eax, dword [edx + ebp - 0x18]
sar eax, cl
test al, 1
je 0x4218ec
mov dword [ebp - 0x20], 4
add esp, 0xfffffff4
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x24]
push eax
push 0x1007
push 0xffff
mov eax, dword [ebp - 0x44]
push eax
call sub.cygwin1.dll_getsockopt
add esp, 0x20
test eax, eax
jl 0x4217e0
cmp dword [ebp - 0x24], 0
jne 0x4217ea
mov eax, dword [esi]
mov edi, dword [eax + 0xc]
cmp dword [eax], 0
jne 0x421718
call fcn.00420e5c
jmp 0x42171d
call fcn.00421040
mov ebx, eax
test ebx, ebx
jne 0x4217e0
mov eax, dword [esi]
cmp dword [eax], 0
jne 0x421735
mov dword [eax + 4], 2
mov eax, dword [esi]
mov dword [eax + 0x94], 0x12c
mov eax, dword [esi]
cmp dword [eax + 0x60], 0
je 0x4217e0
add esp, 0xfffffffc
push 0x32
push 0x41f61e
push 0x44374c
call fcn.00421b44
add esp, 0xfffffffc
push 0x3c
push 0x4213b7
push 0x4476dc
call fcn.00421b44
mov dword [0x44364c], 0x6f5
add esp, 0x20
add esp, 0xfffffffc
push 5
push 0x4213c4
mov eax, dword [esi]
mov eax, dword [eax + 0xc]
push eax
call fcn.00420a3c
add esp, 0xfffffff4
mov edx, dword [esi]
mov eax, dword [edx + 0x90]
push eax
mov eax, dword [edx + 0x60]
call eax
add esp, 0x20
add esp, 0xfffffffc
push 0x32
push 0x41f61e
push 0x44374c
call fcn.00421b44
add esp, 0xfffffffc
push 0x3c
push 0x4213b7
push 0x4476dc
call fcn.00421b44
mov dword [0x44364c], 0x6f8
add esp, 0x20
cmp dword [ebp - 0x24], 0
je 0x421ac9
add esp, 0xfffffff4
push edi
call fcn.0041f5a0
mov esi, eax
add esp, 0x10
test esi, esi
je 0x421ac9
mov eax, dword [esi]
cmp dword [eax + 0x64], 0
je 0x4218bd
cmp dword [eax + 0x10], 0
je 0x42183b
je 0x4218bd
add esp, 0xfffffffc
mov eax, dword [eax + 0xc]
push eax
mov eax, dword [esi]
mov eax, dword [eax + 0x10]
push eax
mov eax, dword [0x44355c]
push eax
call fcn.0041f5dc
add esp, 0x10
test eax, eax
jne 0x4218bd
add esp, 0xfffffffc
push 0x32
push 0x41f61e
push 0x44374c
call fcn.00421b44
add esp, 0xfffffffc
push 0x3c
push 0x4213b7
push 0x4476dc
call fcn.00421b44
mov dword [0x44364c], 0x709
add esp, 0x20
add esp, 0xfffffff8
mov edx, dword [esi]
push 2
mov eax, dword [esi]
mov eax, dword [eax + 0x90]
push eax
mov eax, dword [edx + 0x64]
call eax
add esp, 0xfffffffc
push 0x32
push 0x41f61e
push 0x44374c
call fcn.00421b44
add esp, 0x20
add esp, 0xfffffffc
push 0x3c
push 0x4213b7
push 0x4476dc
call fcn.00421b44
mov dword [0x44364c], 0x70b
add esp, 0x10
mov dword [ebp - 0x2c], 1
add esp, 0xfffffff4
push edi
call fcn.0041f5a0
add esp, 0x10
test eax, eax
je 0x421ac9
add esp, 0xfffffff4
mov eax, dword [esi]
mov eax, dword [eax + 0xc]
push eax
call fcn.0041fa58
jmp 0x421ac6
mov edx, dword [esi]
cmp dword [edx + 4], 1
jne 0x421ac9
cmp dword [edx], 0
jne 0x421ac9
mov eax, dword [0x433064]
add dword [edx + 0x94], eax
mov eax, dword [esi]
cmp dword [eax + 0x94], 0x14
jbe 0x421ac9
mov edi, dword [eax + 0xc]
cmp dword [eax + 0x64], 0
je 0x4219aa
add esp, 0xfffffffc
push 0x32
push 0x41f61e
push 0x44374c
call fcn.00421b44
add esp, 0xfffffffc
push 0x3c
push 0x4213b7
push 0x4476dc
call fcn.00421b44
mov dword [0x44364c], 0x71f
add esp, 0x20
add esp, 0xfffffff8
mov edx, dword [esi]
push 3
mov eax, dword [esi]
mov eax, dword [eax + 0x90]
push eax
mov eax, dword [edx + 0x64]
call eax
add esp, 0xfffffffc
push 0x32
push 0x41f61e
push 0x44374c
call fcn.00421b44
add esp, 0x20
add esp, 0xfffffffc
push 0x3c
push 0x4213b7
push 0x4476dc
call fcn.00421b44
mov dword [0x44364c], 0x721
add esp, 0x10
mov dword [ebp - 0x2c], 1
add esp, 0xfffffff4
push edi
call fcn.0041f5a0
add esp, 0x10
test eax, eax
je 0x421ac9
add esp, 0xfffffff4
mov eax, dword [esi]
mov eax, dword [eax + 0xc]
push eax
call fcn.0041fa58
jmp 0x421ac6
mov ebx, dword [esi]
cmp dword [ebx + 4], 2
jne 0x421ac9
mov dword [ebp - 0x3c], 0
mov edx, dword [ebp - 0x44]
shr edx, 5
lea eax, [ebp - 0x10]
mov ecx, dword [ebp - 0x44]
and ecx, 0x1f
mov eax, dword [eax + edx*4]
sar eax, cl
test al, 1
je 0x421a44
mov edi, dword [ebx + 0xc]
add esp, 0xfffffff4
push ebx
call fcn.00420ad8
mov ebx, eax
mov edx, dword [ebp - 0x28]
mov esi, dword [edx + 4]
add esp, 0xfffffff4
push edi
call fcn.0041f5a0
add esp, 0x20
test eax, eax
jne 0x421a2c
mov ebx, 0xffffffff
test ebx, ebx
jg 0x421a8f
add esp, 0xfffffff4
push edi
call fcn.0041fa58
mov dword [ebp - 0x3c], 1
jmp 0x421a8c
mov edx, dword [esi]
cmp dword [edx + 4], 2
jne 0x421a8f
cmp dword [edx], 0
jne 0x421a8f
cmp dword [edx + 0x14], 1
je 0x421a8f
mov eax, dword [0x433064]
sub dword [edx + 0x94], eax
mov eax, dword [esi]
cmp dword [eax + 0x94], 0
jne 0x421a8f
add esp, 0xfffffff8
push 0x420802
mov eax, dword [esi]
mov eax, dword [eax + 0xc]
push eax
call fcn.00420a18
mov eax, dword [esi]
mov dword [eax + 0x94], 0x12c
add esp, 0x10
mov edx, dword [ebp - 0x44]
shr edx, 5
lea eax, [ebp - 0x18]
mov ecx, dword [ebp - 0x44]
and ecx, 0x1f
mov eax, dword [eax + edx*4]
sar eax, cl
test al, 1
je 0x421ac9
cmp dword [ebp - 0x3c], 0
jne 0x421ac9
mov eax, dword [esi]
cmp dword [eax + 0x80], 0
jne 0x421ac9
add esp, 0xfffffff8
push 0
mov eax, dword [ebp - 0x40]
push eax
call fcn.00420268
add esp, 0x10
cmp dword [ebp - 0x2c], 1
je 0x421ade
dec dword [ebp - 0x40]
mov edx, dword [ebp - 0x38]
cmp dword [ebp - 0x40], edx
jge 0x421668
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 0x1c]
sub edx, eax
mov eax, edx
lea esp, [ebp - 0x68]
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret