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

Disassembly:
sub esp, 0x20
push ebx
push ebp
mov ebp, dword [esp + 0x34]
push esi
push edi
test ebp, ebp
je 0x4194ec
mov eax, dword [esp + 0x34]
mov esi, 4
mov edi, dword [esp + 0x38]
test eax, eax
cmovne esi, eax
xor edx, edx
xor ecx, ecx
xor ebx, ebx
mov al, byte [edi]
test al, al
je 0x4193a7
cmp al, 0x2e
jne 0x419447
inc edx
cmp edx, 3
jle 0x419478
mov edi, dword [esp + 0x38]
mov ebx, dword [0x450494]
test ebx, ebx
je 0x4194f6
cmp esi, 6
je 0x4193c4
mov edi, 2
cmp esi, 0x40
jne 0x4193c9
mov edi, 0x17
xor ecx, ecx
movzx eax, di
cmp eax, 0x17
mov word [ebp], ax
sete cl
lea ecx, [ecx*4 + 4]
add ecx, ebp
push ecx
push dword [esp + 0x3c]
push edi
call ebx
add esp, 0xc
test eax, eax
jne 0x41943d
cmp esi, 4
je 0x4194ec
cmp esi, 6
je 0x4194ec
cmp esi, 0x2e
mov eax, 0x17
mov edi, 2
cmove edi, eax
xor ecx, ecx
movzx eax, di
cmp eax, 0x17
mov word [ebp], ax
sete cl
lea ecx, [ecx*4 + 4]
add ecx, ebp
push ecx
push dword [esp + 0x3c]
push edi
call ebx
add esp, 0xc
test eax, eax
je 0x4194ec
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x20
ret
cmp al, 0x3a
jne 0x419457
inc ecx
cmp ecx, 7
jg 0x4193a3
jmp 0x419478
cmp al, 0x25
je 0x419477
cmp al, 0x61
jb 0x419463
cmp al, 0x66
jbe 0x419477
cmp al, 0x41
jb 0x41946b
cmp al, 0x46
jbe 0x419477
sub al, 0x30
cmp al, 9
ja 0x4193a3
jmp 0x419478
inc ebx
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x419391
cmp edx, 3
jne 0x41949a
test ecx, ecx
jne 0x41949a
test ebx, ebx
jne 0x4193a3
lea eax, [edx - 1]
jmp 0x4194a8
cmp ecx, 2
jl 0x4193a3
mov eax, 0x17
cmp esi, 4
jne 0x4194b2
cmp eax, 2
jne 0x4194ec
movzx eax, ax
cmp esi, 6
mov ecx, 0x17
cmove eax, ecx
movzx ecx, ax
xor eax, eax
cmp ecx, 0x17
mov word [ebp], cx
sete al
lea eax, [eax*4 + 4]
add eax, ebp
push eax
push dword [esp + 0x3c]
push ecx
call dword [sym.imp.WS2_32.dll_inet_pton]
test eax, eax
jne 0x4195e5
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x20
ret
xorps xmm0, xmm0
movups xmmword [esp + 0x10], xmm0
movups xmmword [esp + 0x20], xmm0
cmp esi, 6
je 0x419515
mov dword [esp + 0x14], 2
cmp esi, 0x40
jne 0x41951d
mov dword [esp + 0x14], 0x17
lea eax, [esp + 0x3c]
push eax
lea eax, [esp + 0x14]
push eax
push 0
push edi
mov edi, dword [sym.imp.WS2_32.dll_getaddrinfo]
call edi
test eax, eax
je 0x41956a
cmp esi, 0x40
je 0x419540
cmp esi, 0x2e
jne 0x4194ec
mov ecx, 2
cmp esi, 0x40
mov eax, 0x17
cmove eax, ecx
mov dword [esp + 0x14], eax
lea eax, [esp + 0x3c]
push eax
lea eax, [esp + 0x14]
push eax
push 0
push dword [esp + 0x44]
call edi
test eax, eax
jne 0x4194ec
mov esi, dword [esp + 0x3c]
test esi, esi
je 0x4194ec
mov eax, dword [esi + 0x18]
movzx edi, word [eax]
cmp edi, 2
je 0x419597
cmp edi, 0x17
je 0x419597
push esi
call dword [sym.imp.WS2_32.dll_freeaddrinfo]
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x20
ret
mov word [ebp], di
mov ebx, 0x10
mov edx, dword [esi + 0x18]
mov eax, 4
movzx ecx, word [edx]
cmp ecx, 0x17
cmove eax, ebx
push eax
xor eax, eax
cmp ecx, 0x17
sete al
lea eax, [eax*4 + 4]
add eax, edx
push eax
xor eax, eax
cmp edi, 0x17
sete al
lea eax, [eax*4 + 4]
add eax, ebp
push eax
call fcn.00421eb0
add esp, 0xc
push esi
call dword [sym.imp.WS2_32.dll_freeaddrinfo]
movzx eax, word [ebp]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x20
ret