Function at 0x14006c970
Capabilities:
Convert ip address from string

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1f]
sub rsp, 0xa0
mov rax, qword [0x14012df00]
xor rax, rsp
mov qword [rbp + 0xf], rax
mov rax, qword [rbp + 0x7f]
movzx r13d, r9b
mov r14, qword [rcx + 0x20]
mov r15d, r8d
mov qword [rbp - 0x39], rax
mov rsi, rdx
mov rax, 0xffffffffffffffff
mov rdi, rcx
mov r12d, 0xffffffff
nop dword [rax]
inc rax
cmp byte [rdx + rax], 0
jne 0x14006c9c0
mov qword [rsp + 0xf8], rbx
cmp rax, 7
jb 0x14006ca17
lea rbx, [rdx + rax]
lea rcx, [rbx - 6]
lea rdx, str..onion
call fcn.14004c440
test eax, eax
jne 0x14006ca03
lea rcx, [rbx - 7]
lea rdx, str..onion.
call fcn.14004c440
test eax, eax
je 0x14006ca17
lea rdx, str.Not_resolving_.onion_address__RFC_7686_
mov rcx, rdi
call fcn.14004dfc0
jmp 0x14006ce9c
mov rax, qword [rbp - 0x39]
xor ebx, ebx
mov qword [rax], rbx
mov eax, 2
mov byte [r14 + 0x359], bl
cmp qword [rdi + 0xe8], rbx
je 0x14006ca45
mov r8d, eax
mov edx, 3
mov rcx, rdi
call fcn.1400554d0
mov r8d, r15d
mov rdx, rsi
mov rcx, rdi
call fcn.14006d010
mov qword [rbp - 0x51], rax
test rax, rax
je 0x14006ca78
mov r8, rsi
lea rdx, str.Hostname__s_was_found_in_DNS_cache
mov rcx, rdi
call fcn.14004e0b0
mov rax, qword [rbp - 0x51]
mov r12d, ebx
inc dword [rax + 0x10]
cmp qword [rdi + 0xe8], rbx
je 0x14006ca8e
mov edx, 3
mov rcx, rdi
call fcn.140055510
cmp qword [rbp - 0x51], rbx
jne 0x14006ce91
mov dword [rbp - 0x49], ebx
cmp qword [rdi + 0x9d8], rbx
je 0x14006cad8
mov dl, 1
mov rcx, rdi
call fcn.140057830
mov r8, qword [rdi + 0x9e0]
xor edx, edx
mov rcx, qword [rdi + 0xd30]
call qword [rdi + 0x9d8]
xor edx, edx
mov rcx, rdi
mov ebx, eax
call fcn.140057830
test ebx, ebx
jne 0x14006ce6e
mov ebx, 2
lea r8, [rbp - 0x45]
mov ecx, ebx
mov rdx, rsi
call qword [sym.imp.WS2_32.dll_inet_pton]
test eax, eax
jle 0x14006caf6
lea rdx, [rbp - 0x45]
jmp 0x14006cb16
mov ebx, reloc.WS2_32.dll_socket
lea r8, [rbp - 0x11]
mov ecx, ebx
mov rdx, rsi
call qword [sym.imp.WS2_32.dll_inet_pton]
test eax, eax
jle 0x14006cb97
lea rdx, [rbp - 0x11]
mov r8, rsi
mov r9d, r15d
mov ecx, ebx
call fcn.140089b40
mov rbx, rax
test rax, rax
je 0x14006ce6e
cmp qword [rdi + 0xe8], 0
je 0x14006cb4c
mov edx, 3
mov r8d, 2
mov rcx, rdi
call fcn.1400554d0
xor r9d, r9d
mov dword [rsp + 0x20], r15d
mov r8, rsi
mov rdx, rbx
mov rcx, rdi
call fcn.14006c390
cmp qword [rdi + 0xe8], 0
mov qword [rbp - 0x51], rax
je 0x14006cb81
mov edx, 3
mov rcx, rdi
call fcn.140055510
mov rax, qword [rbp - 0x51]
test rax, rax
jne 0x14006ce83
mov rcx, rbx
call fcn.140089960
jmp 0x14006ce91
cmp byte [r14 + 0x777], 2
jne 0x14006cbe0
mov rax, qword [rdi + 0xd8]
cmp byte [rax + 0x1c8], 0
jne 0x14006cbcc
xor ecx, ecx
call fcn.14006c8a0
test al, al
mov rax, qword [rdi + 0xd8]
setne cl
inc cl
mov byte [rax + 0x1c8], cl
mov rax, qword [rdi + 0xd8]
cmp byte [rax + 0x1c8], 2
jne 0x14006ce6e
lea rdx, str.localhost
mov rcx, rsi
call fcn.14004c440
test eax, eax
jne 0x14006cc87
mov rax, 0xffffffffffffffff
nop
inc rax
cmp byte [rsi + rax], 0
jne 0x14006cc00
cmp rax, 0xa
jb 0x14006cc2c
lea rdx, [rsi - 0xa]
mov r8d, 0xa
add rdx, rax
lea rcx, str..localhost
call fcn.14004c4b0
test eax, eax
jne 0x14006cc87
test r13b, r13b
je 0x14006cc57
cmp byte [rdi + 0xa63], 0
je 0x14006cc57
lea r9, [rbp - 0x49]
mov r8d, r15d
mov rdx, rsi
mov rcx, rdi
call fcn.1400601c0
mov rbx, rax
xor r13d, r13d
jmp 0x14006ce2a
mov rdx, r14
mov rcx, rdi
call fcn.140095150
test al, al
je 0x14006ce6e
lea r9, [rbp - 0x49]
mov r8d, r15d
mov rdx, rsi
mov rcx, rdi
call fcn.14008dc60
mov rbx, rax
xor r13d, r13d
jmp 0x14006ce2a
mov rbx, 0xffffffffffffffff
nop
cmp byte [rsi + rbx + 1], 0
lea rbx, [rbx + 1]
jne 0x14006cc90
xor r13d, r13d
mov r14d, 2
movzx ecx, r15w
mov qword [rbp + 7], r13
mov word [rbp - 1], r14w
call qword [sym.imp.WS2_32.dll_htons]
lea r8, [rbp - 0x41]
mov ecx, r14d
lea rdx, str.127.0.0.1
mov word [rbp + 1], ax
call qword [sym.imp.WS2_32.dll_inet_pton]
cmp eax, 1
jge 0x14006ccdc
mov ebx, r13d
jmp 0x14006ce2a
mov eax, dword [rbp - 0x41]
lea rdx, [rbx + 0x41]
mov ecx, 1
mov dword [rbp + 3], eax
call qword [case.0x140059e75.3]
mov r14, rax
test rax, rax
jne 0x14006cd01
mov rbx, r13
jmp 0x14006ce2a
movups xmm0, xmmword [rbp - 1]
mov dword [rax], r13d
mov rdx, rsi
mov dword [rax + 4], 2
mov dword [rax + 8], 1
mov dword [rax + 0xc], 6
mov dword [rax + reloc.WS2_32.dll_recv], 0x10
add rax, 0x30
mov qword [r14 + 0x20], rax
lea rcx, [rax + 0x10]
movups xmmword [rax], xmm0
mov qword [r14 + 0x18], rcx
nop word [rax + rax]
movzx eax, byte [rdx]
lea rdx, [rdx + 1]
mov byte [rcx], al
lea rcx, [rcx + 1]
test al, al
jne 0x14006cd40
mov rdx, 0xffffffffffffffff
nop dword [rax + rax]
inc rdx
cmp byte [rsi + rdx], r13b
jne 0x14006cd60
add rdx, 0x4d
mov ecx, 1
call qword [case.0x140059e75.3]
mov rbx, rax
test rax, rax
je 0x14006ce27
mov eax, reloc.WS2_32.dll_socket
movzx ecx, r15w
mov word [rbp - 0x31], ax
call qword [sym.imp.WS2_32.dll_htons]
lea r8, [rbp - 1]
mov dword [rbp - 0x2d], r13d
lea rdx, [0x1400f3af0]
mov word [rbp - 0x2f], ax
mov ecx, reloc.WS2_32.dll_socket
call qword [sym.imp.WS2_32.dll_inet_pton]
cmp eax, 1
jl 0x14006ce27
movups xmm1, xmmword [rbp - 1]
lea rax, [rbx + 0x30]
mov dword [rbx], r13d
mov dword [rbx + 4], reloc.WS2_32.dll_socket
lea rcx, [rax + 0x1c]
mov dword [rbx + 8], 1
mov rdx, rsi
mov dword [rbx + 0xc], 6
mov dword [rbx + 0x10], 0x1c
mov qword [rbx + 0x28], r13
mov qword [rbx + 0x20], rax
movups xmmword [rbp - 0x29], xmm1
movups xmm0, xmmword [rbp - 0x31]
unpckhpd xmm1, xmm1
movups xmmword [rax], xmm0
movsd qword [rax + 0x10], xmm1
mov dword [rax + 0x18], r13d
mov qword [rbx + 0x18], rcx
nop dword [rax]
movzx eax, byte [rdx]
lea rdx, [rdx + 1]
mov byte [rcx], al
lea rcx, [rcx + 1]
test al, al
jne 0x14006ce10
mov qword [rbx + 0x28], r14
jmp 0x14006ce2a
mov rbx, r14
test rbx, rbx
jne 0x14006cb2f
cmp dword [rbp - 0x49], ebx
je 0x14006ce91
mov rax, qword [rdi + 0x20]
lea rdx, [rbp - 0x51]
mov rcx, rdi
cmp byte [rax + 0x359], bl
je 0x14006ce52
call fcn.140060360
jmp 0x14006ce57
call fcn.140059040
mov rdx, qword [rbp - 0x51]
mov ebx, eax
test rdx, rdx
je 0x14006ce6a
mov rcx, rdi
call fcn.14006d1f0
test ebx, ebx
je 0x14006ce75
mov eax, 0xffffffff
jmp 0x14006ce9f
cmp qword [rbp - 0x51], 0
mov r12d, r13d
sete r12b
jmp 0x14006ce91
xor r12d, r12d
mov rdx, rax
mov rcx, rdi
call fcn.14006d1f0
mov rax, qword [rbp - 0x39]
mov rcx, qword [rbp - 0x51]
mov qword [rax], rcx
mov eax, r12d
mov rbx, qword [rsp + 0xf8]
mov rcx, qword [rbp + 0xf]
xor rcx, rsp
call fcn.1400b5ad0
add rsp, 0xa0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret