Function at 0x420ad8
Capabilities:
Receive data
Receive data on socket

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x2c
push edi
push esi
push ebx
mov esi, dword [ebp + 8]
mov ebx, 0x1fff
add esp, 0xfffffffc
push 0x32
push 0x41f61e
push 0x44374c
call fcn.00421b44
add esp, 0xfffffffc
push 0x3c
push 0x420acc
push 0x4476dc
call fcn.00421b44
mov dword [0x44364c], 0x44e
sub ebx, dword [esi + 0x78]
mov byte [0x4437ac], 0
add esp, 0x20
test ebx, ebx
jle 0x420b7c
call sub.cygwin1.dll___errno
mov dword [eax], 0
push 0
push ebx
mov eax, dword [esi + 0x78]
add eax, dword [esi + 0x74]
push eax
mov eax, dword [esi + 0xc]
push eax
call sub.cygwin1.dll_recv
mov dword [ebp - 4], eax
add esp, 0x10
test eax, eax
jle 0x420b57
add dword [esi + 0x78], eax
cmp dword [ebp - 4], 0xffffffff
jne 0x420b71
call sub.cygwin1.dll___errno
cmp dword [eax], 0xb
je 0x420b88
call sub.cygwin1.dll___errno
cmp dword [eax], 0xb
je 0x420b88
cmp dword [ebp - 4], 0
jg 0x420b9c
jmp 0x420e4e
add esp, 0xfffffff4
mov eax, dword [esi + 0xc]
push eax
call fcn.0041fa58
mov byte [0x4437ac], 0
mov eax, 1
jmp 0x420e51
mov eax, dword [ebp - 4]
add dword [esi + 0x88], eax
cmp dword [esi + 0x14], 1
jne 0x420c10
mov eax, dword [ebp - 4]
dec eax
cmp eax, 0x1fff
jbe 0x420bc0
mov eax, 1
jmp 0x420e51
mov eax, dword [esi + 0x74]
add esp, 0xfffffffc
mov edx, dword [ebp - 4]
push edx
push eax
push 0x4437ac
call sub.cygwin1.dll_memcpy
mov ecx, dword [ebp - 4]
mov dword [esi + 0x18], ecx
mov dword [esi + 0x78], 0
add esp, 0x10
cmp dword [esi + 0x68], 0
je 0x420e4e
add esp, 0xfffffff4
mov eax, dword [esi + 0x90]
push eax
mov eax, dword [esi + 0x68]
call eax
jmp 0x420e4e
mov dword [ebp - 4], 0xffffffff
jmp 0x420e4e
mov edi, dword [esi + 0xc]
mov dword [ebp - 8], edi
add esp, 0xfffffff8
push 0xa
mov eax, dword [esi + 0x74]
push eax
call sub.cygwin1.dll_strchr
mov dword [ebp - 0x14], eax
add esp, 0x10
test eax, eax
jne 0x420e2b
jmp 0x420e17
inc dword [ebp - 0x14]
mov edx, 0x4437ac
xor eax, eax
mov edi, edx
cld
mov ecx, 0x800
rep stosd dword es:[edi], eax
mov edx, dword [esi + 0x74]
mov eax, dword [ebp - 0x14]
sub eax, edx
add esp, 0xfffffffc
push eax
push edx
push 0x4437ac
call sub.cygwin1.dll_memcpy
mov eax, dword [ebp - 0x14]
sub eax, dword [esi + 0x74]
mov ebx, 0x2000
mov edx, ebx
sub edx, eax
mov eax, edx
add esp, 0xfffffffc
push eax
mov ecx, dword [ebp - 0x14]
push ecx
push 0x43d130
call sub.cygwin1.dll_memcpy
mov edx, dword [esi + 0x74]
mov eax, dword [ebp - 0x14]
sub eax, edx
sub ebx, eax
add esp, 0x20
add esp, 0xfffffffc
push ebx
push 0x43d130
push edx
call sub.cygwin1.dll_memcpy
mov ecx, dword [esi + 0x74]
mov eax, dword [ebp - 0x14]
sub eax, ecx
mov edx, dword [esi + 0x78]
sub edx, eax
mov dword [esi + 0x78], edx
mov eax, 0x1fff
add esp, 0xfffffffc
sub eax, edx
push eax
push 0
add ecx, edx
push ecx
call sub.cygwin1.dll_memset
add esp, 0x20
add esp, 0xfffffffc
push 0x7f
push 0x25
push 0x4437ac
call fcn.00421e90
add esp, 0xfffffff8
push 0xd
push 0x4437ac
call sub.cygwin1.dll_strchr
add esp, 0x20
test eax, eax
jne 0x420d03
add esp, 0xfffffff8
push 0xa
push 0x4437ac
call sub.cygwin1.dll_strchr
add esp, 0x10
mov edi, dword [esi + 0xc]
mov dword [ebp - 8], edi
cmp dword [esi + 0x7c], 1
jne 0x420db7
add esp, 0xfffffff8
push 0x20
push 0x4437ac
call sub.cygwin1.dll_strchr
mov ebx, eax
add esp, 0x10
test ebx, ebx
je 0x420db7
inc ebx
add esp, 0xfffffff8
add esp, 0xfffffff4
push 0x322
call fcn.00421af4
push eax
push ebx
call sub.cygwin1.dll_strstr
add esp, 0x20
cmp eax, ebx
jne 0x420db7
cmp dword [esi + 0x80], 0
je 0x420d70
mov dword [esi + 0x80], 0
mov dword [esi + 0x84], 0
jmp 0x420db0
add esp, 0xfffffff4
mov eax, dword [esi + 0x90]
push eax
call fcn.00415bb0
mov dword [eax + 0x8d0], 0
add esp, 0xfffffff4
mov eax, dword [esi + 0x90]
push eax
call fcn.00415bb0
mov ebx, eax
add esp, 0x20
add esp, 0xfffffff4
push 0
call sub.cygwin1.dll_time
mov dword [ebx + 0x8d4], eax
add esp, 0x10
mov byte [0x4437ac], 0
cmp dword [esi + 0x68], 0
je 0x420de8
mov edi, 0x4437ac
mov al, 0
cld
mov ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov eax, ecx
not eax
dec eax
cmp eax, 1
jbe 0x420de8
add esp, 0xfffffff4
mov eax, dword [esi + 0x90]
push eax
mov eax, dword [esi + 0x68]
call eax
add esp, 0x10
add esp, 0xfffffff4
mov edx, dword [ebp - 8]
push edx
call fcn.0041f5a0
add esp, 0x10
test eax, eax
je 0x420c04
add esp, 0xfffffff8
push 0xa
mov eax, dword [esi + 0x74]
push eax
call sub.cygwin1.dll_strchr
mov dword [ebp - 0x14], eax
add esp, 0x10
test eax, eax
jne 0x420e31
add esp, 0xfffffff8
push 0xa
mov eax, dword [esi + 0x74]
push eax
call sub.cygwin1.dll_strchr
mov dword [ebp - 0x14], eax
add esp, 0x10
cmp dword [ebp - 0x14], 0
je 0x420e4e
add esp, 0xfffffff4
mov ecx, dword [ebp - 8]
push ecx
call fcn.0041f5a0
add esp, 0x10
test eax, eax
je 0x420e4e
cmp dword [ebp - 4], 0
jg 0x420c38
mov eax, dword [ebp - 4]
lea esp, [ebp - 0x38]
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret