Function at 0x1402d97e0
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 [0x1403c0f00]
xor rax, rsp
mov qword [rbp + 0x17], rax
mov rax, qword [rbp + 0x7f]
mov r14, 0xffffffffffffffff
mov r15, qword [rcx + 0x18]
mov r12d, r8d
mov qword [rbp - 0x31], rax
mov rsi, rdx
mov rax, r14
mov byte [rbp - 0x51], r9b
mov rdi, rcx
mov r13d, r14d
nop dword [rax]
inc rax
cmp byte [rdx + rax], 0
jne 0x1402d9830
mov qword [rsp + 0xf8], rbx
cmp rax, 7
jb 0x1402d988a
lea rbx, [rdx + rax]
lea rcx, [rbx - 6]
lea rdx, str..onion
call fcn.1402cc450
test eax, eax
jne 0x1402d9873
lea rcx, [rbx - 7]
lea rdx, str..onion.
call fcn.1402cc450
test eax, eax
je 0x1402d988a
lea rdx, str.Not_resolving_.onion_address__RFC_7686_
mov rcx, rdi
call fcn.1402c5c10
mov eax, r14d
jmp 0x1402d9cfa
mov rax, qword [rbp - 0x31]
xor ebx, ebx
mov qword [rax], rbx
lea eax, [rbx + 2]
mov byte [r15 + 0x3d1], bl
cmp qword [rdi + 0xf8], rbx
je 0x1402d98b4
mov r8d, eax
lea edx, [rbx + 3]
mov rcx, rdi
call fcn.1402cfd80
mov r8d, r12d
mov rdx, rsi
mov rcx, rdi
call fcn.1402d9eb0
mov qword [rbp - 0x49], rax
test rax, rax
je 0x1402d98e8
mov r8, rsi
lea rdx, str.Hostname__s_was_found_in_DNS_cache
mov rcx, rdi
call fcn.1402c5d00
mov rax, qword [rbp - 0x49]
mov r13d, ebx
inc qword [rax + 0x10]
cmp qword [rdi + 0xf8], rbx
je 0x1402d98fe
mov edx, 3
mov rcx, rdi
call fcn.1402cfdc0
cmp qword [rbp - 0x49], rbx
jne 0x1402d9cec
mov dword [rbp - 0x41], ebx
cmp qword [rdi + 0x9f8], rbx
je 0x1402d9948
mov dl, 1
mov rcx, rdi
call fcn.1402b1b10
mov r8, qword [rdi + 0xa00]
xor edx, edx
mov rcx, qword [rdi + 0xd48]
call qword [rdi + 0x9f8]
xor edx, edx
mov rcx, rdi
mov ebx, eax
call fcn.1402b1b10
test ebx, ebx
jne 0x1402d9882
mov ebx, 2
lea r8, [rbp - 0x3d]
mov ecx, ebx
mov rdx, rsi
call qword [sym.imp.WS2_32.dll_inet_pton]
test eax, eax
jle 0x1402d9966
lea rdx, [rbp - 0x3d]
jmp 0x1402d9982
mov ebx, reloc.WS2_32.dll_socket
lea r8, [rbp - 9]
mov ecx, ebx
mov rdx, rsi
call qword [sym.imp.WS2_32.dll_inet_pton]
test eax, eax
jle 0x1402d99a0
lea rdx, [rbp - 9]
mov r8, rsi
mov r9d, r12d
mov ecx, ebx
call fcn.1402e3eb0
mov rbx, rax
test rax, rax
je 0x1402d9882
jmp 0x1402d9c4a
cmp byte [r15 + 0x7df], 2
jne 0x1402d99e9
mov rax, qword [rdi + 0xe8]
cmp byte [rax + 0x258], 0
jne 0x1402d99d5
xor ecx, ecx
call fcn.1402d91d0
test al, al
mov rax, qword [rdi + 0xe8]
setne cl
inc cl
mov byte [rax + 0x258], cl
mov rax, qword [rdi + 0xe8]
cmp byte [rax + 0x258], 2
jne 0x1402d9882
lea rdx, str.localhost
mov rcx, rsi
call fcn.1402cc450
test eax, eax
jne 0x1402d9ab3
mov rax, r14
inc rax
cmp byte [rsi + rax], 0
jne 0x1402d9a03
cmp rax, 0xa
jb 0x1402d9a33
lea rdx, [rsi - 0xa]
mov r8d, 0xa
add rdx, rax
lea rcx, str..localhost
call fcn.1402cc4c0
test eax, eax
jne 0x1402d9ab3
cmp byte [rbp - 0x51], 0
je 0x1402d9a56
cmp byte [rdi + 0xa83], 0
je 0x1402d9a56
lea r9, [rbp - 0x41]
mov r8d, r12d
mov rdx, rsi
mov rcx, rdi
call fcn.1402e4a90
jmp 0x1402d9a7b
mov rdx, r15
mov rcx, rdi
call fcn.14031c0a0
test al, al
je 0x1402d9882
lea r9, [rbp - 0x41]
mov r8d, r12d
mov rdx, rsi
mov rcx, rdi
call fcn.1402e42f0
mov rbx, rax
test rax, rax
jne 0x1402d9c4a
cmp dword [rbp - 0x41], 0
je 0x1402d9cec
mov rax, qword [rdi + 0x18]
lea rdx, [rbp - 0x49]
mov rcx, rdi
cmp byte [rax + 0x3d1], 0
je 0x1402d9cbe
call fcn.1402e4d30
jmp 0x1402d9cc3
mov rbx, r14
nop word [rax + rax]
cmp byte [rsi + rbx + 1], 0
lea rbx, [rbx + 1]
jne 0x1402d9ac0
mov r15d, 2
mov qword [rbp + 0xf], 0
movzx ecx, r12w
mov word [rbp + 7], r15w
call qword [sym.imp.WS2_32.dll_htons]
lea r8, [rbp - 0x39]
mov ecx, r15d
lea rdx, str.127.0.0.1
mov word [rbp + 9], ax
call qword [sym.imp.WS2_32.dll_inet_pton]
cmp eax, 1
jl 0x1402d9a87
mov eax, dword [rbp - 0x39]
lea rdx, [rbx + 0x41]
lea ecx, [r15 - 1]
mov dword [rbp + 0xb], eax
call qword [0x1403c0098]
mov r15, rax
test rax, rax
je 0x1402d9a87
movups xmm0, xmmword [rbp + 7]
lea rcx, [rax + 0x30]
mov dword [rax], 0
mov qword [rax + 0x20], rcx
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
movups xmmword [rcx], xmm0
add rcx, 0x10
mov qword [rax + 0x18], rcx
movzx eax, byte [rdx]
lea rdx, [rdx + 1]
mov byte [rcx], al
lea rcx, [rcx + 1]
test al, al
jne 0x1402d9b61
cmp byte [rsi + r14 + 1], 0
lea r14, [r14 + 1]
jne 0x1402d9b72
lea rdx, [r14 + 0x4d]
mov ecx, 1
call qword [0x1403c0098]
mov rbx, rax
test rax, rax
je 0x1402d9c47
mov r14d, reloc.WS2_32.dll_socket
movzx ecx, r12w
mov word [rbp - 0x29], r14w
call qword [sym.imp.WS2_32.dll_htons]
lea r8, [rbp + 7]
mov dword [rbp - 0x25], 0
lea rdx, [0x140352ac0]
mov word [rbp - 0x27], ax
mov ecx, r14d
call qword [sym.imp.WS2_32.dll_inet_pton]
movups xmm1, xmmword [rbp + 7]
lea rax, [rbx + 0x30]
mov dword [rbx], 0
mov dword [rbx + 4], r14d
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], 0
mov qword [rbx + 0x20], rax
movups xmmword [rbp - 0x21], xmm1
movups xmm0, xmmword [rbp - 0x29]
unpckhpd xmm1, xmm1
movups xmmword [rax], xmm0
movsd qword [rax + 0x10], xmm1
mov dword [rax + 0x18], 0
mov qword [rbx + 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 0x1402d9c30
mov qword [rbx + 0x28], r15
jmp 0x1402d9c4a
mov rbx, r15
cmp qword [rdi + 0xf8], 0
je 0x1402d9c65
mov edx, 3
mov rcx, rdi
lea r8d, [rdx - 1]
call fcn.1402cfd80
mov byte [rsp + 0x28], 0
xor r9d, r9d
mov r8, rsi
mov dword [rsp + 0x20], r12d
mov rdx, rbx
mov rcx, rdi
call fcn.1402d8c70
cmp qword [rdi + 0xf8], 0
mov qword [rbp - 0x49], rax
je 0x1402d9c9f
mov edx, 3
mov rcx, rdi
call fcn.1402cfdc0
mov rax, qword [rbp - 0x49]
test rax, rax
jne 0x1402d9cae
mov rcx, rbx
call fcn.1402e3cd0
jmp 0x1402d9cec
xor r13d, r13d
mov rdx, rax
mov rcx, rdi
call fcn.1402da0c0
jmp 0x1402d9cec
call fcn.1402b7510
mov ebx, eax
mov rax, qword [rbp - 0x49]
test rax, rax
je 0x1402d9cd9
mov rdx, rax
mov rcx, rdi
call fcn.1402da0c0
test ebx, ebx
jne 0x1402d9882
xor r13d, r13d
cmp qword [rbp - 0x49], r13
sete r13b
mov rax, qword [rbp - 0x31]
mov rcx, qword [rbp - 0x49]
mov qword [rax], rcx
mov eax, r13d
mov rbx, qword [rsp + 0xf8]
mov rcx, qword [rbp + 0x17]
xor rcx, rsp
call fcn.140331c20
add rsp, 0xa0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret