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

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x50
mov r12, r8
mov r13, rdx
test r8, r8
je 0x140013f9f
test ecx, ecx
mov eax, 4
mov esi, eax
cmovne esi, ecx
movzx ecx, byte [r13]
xor r14d, r14d
mov r8d, r14d
mov edx, r14d
mov r10d, r14d
test cl, cl
je 0x140013dbb
mov r9, r13
movabs r11, 0x3f0000003f
nop dword [rax]
cmp cl, 0x2e
jne 0x140013e4d
inc r8d
cmp r8d, 3
jle 0x140013e82
mov eax, 4
mov r15, qword [0x14020f4c0]
mov edi, reloc.WS2_32.dll_socket
lea ebx, [rdi - 0x15]
test r15, r15
je 0x140013f06
cmp esi, 6
je 0x140013de0
mov r14d, ebx
cmp esi, 0x40
jne 0x140013de3
mov r14d, edi
mov ebp, 8
mov word [r12], r14w
cmp r14w, di
mov r8d, ebp
mov rdx, r13
mov ecx, r14d
cmovne r8, rax
add r8, r12
call r15
test eax, eax
jne 0x140013efe
lea eax, [rsi - 4]
test eax, 0xfffffffd
je 0x140013f9f
cmp esi, 0x2e
mov r10d, 4
mov rdx, r13
cmove ebx, edi
cmp bx, di
mov word [r12], bx
mov ecx, ebx
cmovne ebp, r10d
lea r8, [r12 + rbp]
call r15
test eax, eax
je 0x140013f9f
mov eax, ebx
jmp 0x140013fa1
cmp cl, 0x3a
jne 0x140013e5f
inc edx
cmp edx, 7
jg 0x140013db6
jmp 0x140013e82
cmp cl, 0x25
je 0x140013e7f
lea eax, [rcx - 0x41]
cmp al, 0x25
ja 0x140013e71
bt r11, rax
jb 0x140013e7f
sub cl, 0x30
cmp cl, 9
ja 0x140013db6
jmp 0x140013e82
inc r10d
movzx ecx, byte [r9 + 1]
inc r9
test cl, cl
jne 0x140013da0
mov edi, reloc.WS2_32.dll_socket
cmp r8d, 3
jne 0x140013eaf
test edx, edx
jne 0x140013eaf
test r10d, r10d
jne 0x140013db6
lea ebx, [rdi - 0x15]
jmp 0x140013eba
cmp edx, 2
jl 0x140013db6
mov ebx, edi
cmp esi, 4
jne 0x140013ec8
cmp ebx, 2
jne 0x140013f9f
cmp esi, 6
mov r10d, 4
mov r8d, 8
mov rdx, r13
cmove bx, di
movzx ecx, bx
cmp ecx, edi
mov word [r12], cx
cmovne r8d, r10d
add r8, r12
call qword [sym.imp.WS2_32.dll_inet_pton]
test eax, eax
jle 0x140013efe
movzx r14d, word [r12]
mov eax, r14d
jmp 0x140013fa1
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
movups xmmword [rsp + 0x30], xmm0
movups xmmword [rsp + 0x40], xmm0
cmp esi, 6
je 0x140013f26
mov dword [rsp + 0x24], ebx
cmp esi, 0x40
jne 0x140013f2a
mov dword [rsp + 0x24], edi
lea r9, [rsp + 0x90]
xor edx, edx
lea r8, [rsp + 0x20]
mov rcx, r13
call qword [sym.imp.WS2_32.dll_getaddrinfo]
test eax, eax
je 0x140013f76
cmp esi, 0x40
je 0x140013f53
cmp esi, 0x2e
jne 0x140013f9f
cmp esi, 0x40
cmove edi, ebx
lea r9, [rsp + 0x90]
xor edx, edx
mov dword [rsp + 0x24], edi
lea r8, [rsp + 0x20]
mov rcx, r13
call qword [sym.imp.WS2_32.dll_getaddrinfo]
test eax, eax
jne 0x140013f9f
mov rbx, qword [rsp + 0x90]
test rbx, rbx
je 0x140013f9f
mov rax, qword [rbx + 0x20]
movzx ecx, word [rax]
cmp cx, 2
je 0x140013fbf
cmp cx, 0x17
je 0x140013fbf
mov rcx, rbx
call qword [sym.imp.WS2_32.dll_freeaddrinfo]
xor eax, eax
lea r11, [rsp + 0x50]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
mov word [r12], cx
mov r10d, 4
mov r9, qword [rbx + 0x20]
mov r8d, r10d
mov edx, reloc.WS2_32.dll_recv
mov ebp, 8
cmp word [r9], 0x17
cmove r8d, edx
mov edx, ebp
cmovne edx, r10d
add rdx, r9
cmp cx, 0x17
cmovne ebp, r10d
lea rcx, [r12 + rbp]
call fcn.14016bcc0
mov rcx, rbx
call qword [sym.imp.WS2_32.dll_freeaddrinfo]
movzx eax, word [r12]
jmp 0x140013fa1