Function at 0x43cca0
Capabilities:
Convert ip address from string
Resolve dns

Disassembly:
push ebp
push edi
mov ebp, edx
push esi
push ebx
sub esp, 0x7c
mov dword [esp], eax
mov dword [esp + 0x14], ecx
call sub.cygwin1.dll_strdup
test eax, eax
mov dword [esp + 0x10], eax
je 0x43d25a
mov edi, dword [esp + 0x10]
mov dword [esp], edi
call fcn.00418410
mov dword [esp], edi
mov dword [esp + 4], 0x460515
call sub.cygwin1.dll_strtok
test eax, eax
mov ebx, eax
mov edi, dword [esp + 0x14]
je 0x43cdbf
nop
lea esi, [esi]
mov esi, dword [edi]
test esi, esi
je 0x43ccff
cmp byte [esi], 0
jne 0x43ce40
test ebp, ebp
je 0x43cda1
cmp byte [ebp], 0
je 0x43cda1
mov dword [esp + 4], 0x2f
mov dword [esp], ebx
call sub.cygwin1.dll_strchr
test eax, eax
mov esi, eax
je 0x43cd2a
mov byte [eax], 0
mov dword [esp + 4], str..0123456789
mov dword [esp], ebx
call sub.cygwin1.dll_strspn
cmp byte [ebx + eax], 0
je 0x43cd54
mov dword [esp + 4], 0x3a
mov dword [esp], ebx
call sub.cygwin1.dll_strchr
test eax, eax
je 0x43cd9a
xor eax, eax
mov dword [esp + eax + 0x50], 0
add eax, 4
cmp eax, 0x20
jb 0x43cd56
lea eax, [esp + 0x34]
mov dword [esp + 4], 0
mov dword [esp], ebp
mov dword [esp + 0x58], 1
mov dword [esp + 0x50], 4
mov dword [esp + 0xc], eax
lea eax, [esp + 0x50]
mov dword [esp + 8], eax
call sub.cygwin1.dll_getaddrinfo
test eax, eax
je 0x43cdd5
test esi, esi
je 0x43cda1
mov byte [esi], 0x2f
mov dword [esp + 4], 0x460515
mov dword [esp], 0
call sub.cygwin1.dll_strtok
test eax, eax
mov ebx, eax
jne 0x43ccf0
mov eax, dword [esp + 0x10]
mov dword [esp], eax
call fcn.0044e534
add esp, 0x7c
xor eax, eax
pop ebx
pop esi
pop edi
pop ebp
ret
lea eax, [esp + 0x38]
mov dword [esp + 4], 0
mov dword [esp], ebx
mov dword [esp + 0xc], eax
lea eax, [esp + 0x50]
mov dword [esp + 8], eax
call sub.cygwin1.dll_getaddrinfo
test esi, esi
je 0x43d035
lea edx, [esi + 1]
mov byte [esi], 0x2f
test eax, eax
jne 0x43d000
mov eax, dword [esp + 0x38]
mov esi, dword [esp + 0x34]
mov ecx, dword [eax + 4]
cmp ecx, dword [esi + 4]
je 0x43cf30
mov dword [esp], esi
call sub.cygwin1.dll_freeaddrinfo
mov eax, dword [esp + 0x38]
mov dword [esp], eax
call sub.cygwin1.dll_freeaddrinfo
jmp 0x43cda1
mov dword [esp + 4], esi
mov dword [esp], ebx
call fcn.0043eb20
test eax, eax
jne 0x43cf10
mov eax, dword [0x47e300]
test eax, eax
je 0x43ccff
mov dword [esp + 4], str..0123456789
mov dword [esp], ebx
call sub.cygwin1.dll_strspn
cmp byte [ebx + eax], 0
je 0x43ccff
mov dword [esp + 4], str.:___
mov dword [esp], ebx
call sub.cygwin1.dll_strcspn
cmp byte [ebx + eax], 0
jne 0x43ccff
mov dword [esp], ebx
call sub.cygwin1.dll_gethostbyname
test eax, eax
mov ecx, eax
je 0x43ccff
mov eax, dword [eax + 0xc]
mov eax, dword [eax]
test eax, eax
je 0x43ccff
mov edx, 4
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], esi
mov ebx, edx
mov esi, ecx
jmp 0x43cee1
mov eax, dword [esi + 0xc]
mov eax, dword [eax + ebx]
add ebx, 4
test eax, eax
je 0x43d061
mov eax, dword [eax]
mov dword [esp], eax
call sub.cygwin1.dll_inet_ntoa
mov dword [esp], ebp
mov dword [esp + 4], eax
call sub.cygwin1.dll_strcmp
test eax, eax
jne 0x43ced0
mov esi, dword [esp + 0x1c]
mov ebx, dword [esp + 0x18]
cmp esi, str.UNDETERMINED
je 0x43d111
nop
mov eax, dword [esp + 0x10]
mov dword [esp], eax
call fcn.0044e534
add esp, 0x7c
mov eax, 1
pop ebx
pop esi
pop edi
pop ebp
ret
cmp ecx, 2
je 0x43d070
cmp ecx, 0x17
jne 0x43d040
mov eax, dword [eax + 0x18]
mov ecx, dword [esi + 0x18]
mov dword [esp + 0x18], eax
lea eax, [ecx + 8]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x18]
add eax, 8
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x18]
mov eax, dword [eax + 0x18]
test eax, eax
je 0x43cf72
cmp eax, dword [ecx + 0x18]
jne 0x43ce1f
mov dword [esp + 0x18], 0x10
test edx, edx
je 0x43d09e
lea eax, [esp + 0x40]
mov dword [esp + 4], edx
mov dword [esp + 0x28], edx
mov dword [esp + 8], eax
mov dword [esp + 0x1c], eax
mov eax, dword [esi + 0x18]
movzx eax, word [eax]
mov dword [esp], eax
call sub.cygwin1.dll_inet_pton
test eax, eax
mov edx, dword [esp + 0x28]
jle 0x43d129
mov esi, dword [esp + 0x34]
mov ecx, dword [esp + 0x20]
mov ebx, dword [esp + 0x24]
xor eax, eax
mov dword [esp + 0x20], ebp
mov ebp, dword [esp + 0x18]
mov dword [esp + 0x18], edi
mov edi, dword [esp + 0x1c]
nop
movzx edx, byte [ebx + eax]
xor dl, byte [ecx + eax]
test byte [edi + eax], dl
jne 0x43d091
add eax, 1
cmp eax, ebp
jne 0x43cfd0
mov dword [esp], esi
call sub.cygwin1.dll_freeaddrinfo
mov eax, dword [esp + 0x38]
mov dword [esp], eax
call sub.cygwin1.dll_freeaddrinfo
jmp 0x43cf10
mov dword [esp], eax
call sub.cygwin1.dll_gai_strerror
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
mov dword [esp + 4], str.error_matching_address__s:__s_n
mov dword [esp], 6
call fcn.00420340
mov eax, dword [esp + 0x34]
mov dword [esp], eax
call sub.cygwin1.dll_freeaddrinfo
jmp 0x43cda1
xor edx, edx
jmp 0x43ce03
mov dword [esp + 8], ecx
mov dword [esp + 4], str.unknown_family__u_n
mov dword [esp], 6
call fcn.00420340
mov esi, dword [esp + 0x34]
jmp 0x43ce1f
mov ebx, dword [esp + 0x18]
jmp 0x43cd07
mov ecx, dword [esi + 0x18]
mov eax, dword [eax + 0x18]
mov dword [esp + 0x18], 4
add ecx, 4
add eax, 4
mov dword [esp + 0x20], ecx
mov dword [esp + 0x24], eax
jmp 0x43cf7a
mov ebp, dword [esp + 0x20]
mov edi, dword [esp + 0x18]
jmp 0x43ce1f
lea eax, [esp + 0x40]
mov edx, 0x11
mov ebx, 0x10
mov dword [esp + 0x4c], 0xffffffff
mov dword [esp + 0x1c], eax
xor eax, eax
mov ecx, dword [esp + 0x1c]
mov dword [ecx + eax], 0xffffffff
add eax, 4
cmp eax, 0xc
jb 0x43d0ba
cmp dword [esp + 0x18], edx
jle 0x43cfb4
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
sub edx, ebx
lea eax, [eax + ebx + 1]
sub edx, 1
cmp edx, 4
jae 0x43d1ca
test edx, edx
je 0x43cfb4
test dl, 2
mov byte [eax], 0
je 0x43cfb4
xor ecx, ecx
mov word [edx + eax - 2], cx
jmp 0x43cfb4
mov dword [esp], ebx
call sub.cygwin1.dll_strdup
mov ecx, dword [esp + 0x14]
test eax, eax
cmove eax, esi
mov dword [ecx], eax
jmp 0x43cf10
lea eax, [esp + 0x3c]
mov dword [esp], edx
mov dword [esp + 8], 0xa
mov dword [esp + 0x28], edx
mov dword [esp + 0x3c], 0
mov dword [esp + 4], eax
call sub.cygwin1.dll_strtol
mov edx, dword [esp + 0x28]
cmp byte [edx], 0
je 0x43d208
mov edx, dword [esp + 0x3c]
cmp byte [edx], 0
jne 0x43d208
test eax, eax
je 0x43d23d
js 0x43d208
mov ecx, dword [esp + 0x18]
lea edx, [ecx*8]
cmp eax, edx
jg 0x43d208
mov ebx, eax
and eax, 7
sar ebx, 3
mov dword [esp + 0x2c], eax
test ebx, ebx
jne 0x43d266
mov esi, dword [esp + 0x34]
mov edx, 1
mov dword [esp + 0x28], 0
mov ecx, 8
sub ecx, dword [esp + 0x2c]
mov eax, 0xff
shl eax, cl
mov ecx, dword [esp + 0x28]
mov byte [esp + ecx + 0x40], al
jmp 0x43d0cd
lea ecx, [eax + 4]
mov dword [eax], 0
mov dword [edx + eax - 4], 0
and ecx, 0xfffffffc
sub eax, ecx
add eax, edx
and eax, 0xfffffffc
cmp eax, 4
jb 0x43cfb4
and eax, 0xfffffffc
mov edx, eax
xor eax, eax
mov dword [ecx + eax], 0
add eax, 4
cmp eax, edx
jb 0x43d1f5
jmp 0x43cfb4
mov dword [esp + 8], ebx
mov dword [esp + 4], str.malformed_mask_in__s_n
mov dword [esp], 6
call fcn.00420340
mov eax, dword [esp + 0x34]
mov dword [esp], eax
call sub.cygwin1.dll_freeaddrinfo
mov eax, dword [esp + 0x38]
mov dword [esp], eax
call sub.cygwin1.dll_freeaddrinfo
jmp 0x43cda1
mov eax, dword [esp + 0x34]
mov dword [esp], eax
call sub.cygwin1.dll_freeaddrinfo
mov eax, dword [esp + 0x38]
mov dword [esp], eax
call sub.cygwin1.dll_freeaddrinfo
jmp 0x43cf10
mov dword [esp], str.access_match
call fcn.0041a8d0
cmp ebx, 4
lea edx, [ebx + 1]
mov esi, dword [esp + 0x34]
jae 0x43d2a3
test ebx, ebx
je 0x43d290
mov eax, dword [esp + 0x1c]
test bl, 2
mov byte [eax], 0xff
je 0x43d290
mov eax, dword [esp + 0x1c]
mov ecx, 0xffffffff
mov word [eax + ebx - 2], cx
cmp ebx, dword [esp + 0x18]
jge 0x43d0cd
mov dword [esp + 0x28], ebx
jmp 0x43d1ad
mov eax, dword [esp + 0x1c]
mov dword [eax + ebx - 4], 0xffffffff
lea eax, [ebx - 1]
cmp eax, 4
jb 0x43d290
and eax, 0xfffffffc
mov dword [esp + 0x28], edx
mov ecx, eax
xor eax, eax
mov edx, dword [esp + 0x1c]
mov dword [edx + eax], 0xffffffff
add eax, 4
cmp eax, ecx
jb 0x43d2c2
mov edx, dword [esp + 0x28]
jmp 0x43d290