Function at 0x1400875d0
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 [0x140111ec0]
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 0x140087620
mov qword [rsp + 0xf8], rbx
cmp rax, 7
jb 0x14008767a
lea rbx, [rdx + rax]
lea rcx, [rbx - 6]
lea rdx, str..onion
call fcn.14007fad0
test eax, eax
jne 0x140087663
lea rcx, [rbx - 7]
lea rdx, str..onion.
call fcn.14007fad0
test eax, eax
je 0x14008767a
lea rdx, str.Not_resolving_.onion_address__RFC_7686_
mov rcx, rdi
call fcn.140079aa0
mov eax, r14d
jmp 0x140087aea
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 0x1400876a4
mov r8d, eax
lea edx, [rbx + 3]
mov rcx, rdi
call fcn.140083400
mov r8d, r12d
mov rdx, rsi
mov rcx, rdi
call fcn.140087c70
mov qword [rbp - 0x49], rax
test rax, rax
je 0x1400876d8
mov r8, rsi
lea rdx, str.Hostname__s_was_found_in_DNS_cache
mov rcx, rdi
call fcn.140079b90
mov rax, qword [rbp - 0x49]
mov r13d, ebx
inc qword [rax + 0x10]
cmp qword [rdi + 0xf8], rbx
je 0x1400876ee
mov edx, 3
mov rcx, rdi
call fcn.140083440
cmp qword [rbp - 0x49], rbx
jne 0x140087adc
mov dword [rbp - 0x41], ebx
cmp qword [rdi + 0x9f8], rbx
je 0x140087738
mov dl, 1
mov rcx, rdi
call fcn.14006c060
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.14006c060
test ebx, ebx
jne 0x140087672
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 0x140087756
lea rdx, [rbp - 0x3d]
jmp 0x140087772
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 0x140087790
lea rdx, [rbp - 9]
mov r8, rsi
mov r9d, r12d
mov ecx, ebx
call fcn.140091890
mov rbx, rax
test rax, rax
je 0x140087672
jmp 0x140087a3a
cmp byte [r15 + 0x7df], 2
jne 0x1400877d9
mov rax, qword [rdi + 0xe8]
cmp byte [rax + 0x258], 0
jne 0x1400877c5
xor ecx, ecx
call fcn.140087510
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 0x140087672
lea rdx, str.localhost
mov rcx, rsi
call fcn.14007fad0
test eax, eax
jne 0x1400878a3
mov rax, r14
inc rax
cmp byte [rsi + rax], 0
jne 0x1400877f3
cmp rax, 0xa
jb 0x140087823
lea rdx, [rsi - 0xa]
mov r8d, 0xa
add rdx, rax
lea rcx, str..localhost
call fcn.14007fb40
test eax, eax
jne 0x1400878a3
cmp byte [rbp - 0x51], 0
je 0x140087846
cmp byte [rdi + 0xa83], 0
je 0x140087846
lea r9, [rbp - 0x41]
mov r8d, r12d
mov rdx, rsi
mov rcx, rdi
call fcn.140092300
jmp 0x14008786b
mov rdx, r15
mov rcx, rdi
call fcn.1400c5240
test al, al
je 0x140087672
lea r9, [rbp - 0x41]
mov r8d, r12d
mov rdx, rsi
mov rcx, rdi
call fcn.140091b60
mov rbx, rax
test rax, rax
jne 0x140087a3a
cmp dword [rbp - 0x41], 0
je 0x140087adc
mov rax, qword [rdi + 0x18]
lea rdx, [rbp - 0x49]
mov rcx, rdi
cmp byte [rax + 0x3d1], 0
je 0x140087aae
call fcn.1400925a0
jmp 0x140087ab3
mov rbx, r14
nop word [rax + rax]
cmp byte [rsi + rbx + 1], 0
lea rbx, [rbx + 1]
jne 0x1400878b0
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 0x140087877
mov eax, dword [rbp - 0x39]
lea rdx, [rbx + 0x41]
lea ecx, [r15 - 1]
mov dword [rbp + 0xb], eax
call qword [0x140111080]
mov r15, rax
test rax, rax
je 0x140087877
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 0x140087951
cmp byte [rsi + r14 + 1], 0
lea r14, [r14 + 1]
jne 0x140087962
lea rdx, [r14 + 0x4d]
mov ecx, 1
call qword [0x140111080]
mov rbx, rax
test rax, rax
je 0x140087a37
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, [0x1400e8258]
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 0x140087a20
mov qword [rbx + 0x28], r15
jmp 0x140087a3a
mov rbx, r15
cmp qword [rdi + 0xf8], 0
je 0x140087a55
mov edx, 3
mov rcx, rdi
lea r8d, [rdx - 1]
call fcn.140083400
mov byte [rsp + 0x28], 0
xor r9d, r9d
mov r8, rsi
mov dword [rsp + 0x20], r12d
mov rdx, rbx
mov rcx, rdi
call fcn.140086fe0
cmp qword [rdi + 0xf8], 0
mov qword [rbp - 0x49], rax
je 0x140087a8f
mov edx, 3
mov rcx, rdi
call fcn.140083440
mov rax, qword [rbp - 0x49]
test rax, rax
jne 0x140087a9e
mov rcx, rbx
call fcn.1400916b0
jmp 0x140087adc
xor r13d, r13d
mov rdx, rax
mov rcx, rdi
call fcn.140087e50
jmp 0x140087adc
call fcn.14006fa90
mov ebx, eax
mov rax, qword [rbp - 0x49]
test rax, rax
je 0x140087ac9
mov rdx, rax
mov rcx, rdi
call fcn.140087e50
test ebx, ebx
jne 0x140087672
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.1400d59a0
add rsp, 0xa0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret