Function at 0x180018340
Capabilities:
Encrypt data using chaskey
Hash data using murmur3
Inspect section memory permissions
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x60
mov rsi, rdx
or r14, 0xffffffffffffffff
xor edx, edx
mov rbx, r8
mov qword [rbp - 0x20], rdx
mov rdi, rcx
mov qword [rbp - 0x10], rdx
mov r15d, edx
mov qword [rbp - 0x18], rdx
mov r13d, edx
mov qword [rbp - 0x28], rdx
mov r12d, edx
mov qword [rbp - 0x30], rdx
mov qword [rbp - 8], rdx
test rcx, rcx
jne 0x1800183b2
test rsi, rsi
jne 0x180018809
test rbx, rbx
jne 0x180018809
mov ebx, 0xc000000d
jmp 0x1800188eb
cmp word [rcx], dx
je 0x180018466
test rsi, rsi
je 0x1800183c9
cmp word [rsi], dx
jne 0x180018466
mov edx, 0x5c
call qword [sym.imp.api_ms_win_core_crt_l1_1_0.dll_wcschr]
nop dword [rax + rax]
xor edx, edx
test rax, rax
je 0x180018466
mov rbx, r14
inc rbx
cmp word [rdi + rbx*2], dx
jne 0x1800183e8
cmp ebx, 0x7ffd
ja 0x1800183a8
lea edx, [rbx*2 + 2]
mov ecx, 0x40
add rdx, 2
call qword [sym.imp.api_ms_win_core_heap_l2_1_0.dll_LocalAlloc]
nop dword [rax + rax]
mov qword [rbp - 0x18], rax
test rax, rax
jne 0x180018428
mov ebx, 0xc0000017
jmp 0x1800188eb
mov r8d, ebx
mov rdx, rdi
add r8, r8
mov rcx, rax
call sub.api_ms_win_core_crt_l1_1_0.dll_memcpy
mov rbx, qword [rbp - 0x18]
mov edx, 0x5c
mov rcx, rbx
call qword [sym.imp.api_ms_win_core_crt_l1_1_0.dll_wcschr]
nop dword [rax + rax]
xor edx, edx
test rax, rax
je 0x180018462
mov word [rax], dx
lea rdi, [rax + 2]
mov rsi, rbx
mov rbx, qword [rbp + 0x50]
test rdi, rdi
je 0x18001880e
cmp word [rdi], dx
je 0x18001880e
test rsi, rsi
je 0x180018486
cmp word [rsi], dx
jne 0x18001880e
mov rcx, rdi
call fcn.180017834
test eax, eax
jne 0x1800184a4
mov rcx, rdi
call fcn.180016e30
xor ecx, ecx
test eax, eax
je 0x180018543
xor eax, eax
test rbx, rbx
je 0x1800184b9
mov rcx, r14
inc rcx
cmp word [rbx + rcx*2], ax
jne 0x1800184ae
jmp 0x1800184bb
mov ecx, eax
cmp ecx, 0x7ffd
jbe 0x1800184d3
mov ebx, 0xc000000d
mov r12, rax
mov r14, rax
jmp 0x180018838
mov r8, qword [rbp + 0x50]
lea rdx, str.__D_a_b_f_n_r
sub r8, rdx
mov ebx, eax
cmp ebx, ecx
jae 0x1800184fc
movzx eax, word [r8 + rdx]
cmp word [rdx], ax
jne 0x1800184fc
inc ebx
add rdx, 2
cmp ebx, 8
jb 0x1800184e3
lea r14d, [rcx + 8]
cmp ebx, 8
cmove r14d, ecx
mov rcx, rdi
call fcn.180017834
test eax, eax
jne 0x18001854b
lea r8, [rbp - 0x20]
mov rcx, rdi
lea rdx, [rbp + 0x40]
call fcn.180017024
mov r15, qword [rbp - 0x20]
xor ecx, ecx
test eax, eax
je 0x18001853d
mov ebx, 0xc000009a
mov r12, rcx
mov r14, rcx
jmp 0x180018838
cmp dword [rbp + 0x40], 4
je 0x18001854b
mov r12, rcx
jmp 0x18001880e
lea edx, [r14*2 + 2]
mov dword [rbp + 0x40], 3
add rdx, 2
mov ecx, 0x40
call qword [sym.imp.api_ms_win_core_heap_l2_1_0.dll_LocalAlloc]
nop dword [rax + rax]
mov rcx, rax
mov qword [rbp - 8], rax
xor eax, eax
test rcx, rcx
jne 0x180018587
mov ebx, 0xc0000017
jmp 0x1800184c8
mov rdx, qword [rbp + 0x50]
cmp ebx, 8
je 0x1800185a5
movups xmm0, xmmword [str.__D_a_b_f_n_r]
lea r8d, [r14 - 8]
movdqu xmmword [rcx], xmm0
add rcx, 0x10
jmp 0x1800185a8
mov r8d, r14d
add r8, r8
call sub.api_ms_win_core_crt_l1_1_0.dll_memcpy
mov rcx, qword [rbp - 8]
lea r8, [rbp - 0x10]
lea rdx, [rbp + 0x40]
call fcn.180017024
xor ebx, ebx
test eax, eax
je 0x1800185e0
mov rcx, rdi
call fcn.180017834
test eax, eax
jne 0x180018622
mov ebx, 0xc000000d
mov r14, r12
jmp 0x180018838
cmp dword [rbp + 0x40], 3
jne 0x1800185c7
mov rax, qword [rbp - 0x10]
mov r14, qword [rax + 8]
cmp word [r14], 0x18
jb 0x1800185d3
cmp dword [r14 + 8], ebx
je 0x1800186b9
mov ebx, dword [r14 + 8]
xor ecx, ecx
movzx eax, word [r14 + 0xc]
add rbx, r14
test ax, ax
je 0x180018691
cmp word [rbx], 0x1c
jae 0x18001862a
mov ebx, 0xc000000d
jmp 0x180018532
mov r12, rbx
jmp 0x18001880e
cmp word [rbx + 2], ax
ja 0x180018618
mov rax, qword [rbx + 4]
sub rax, qword [0x180023320]
jne 0x180018648
mov rax, qword [rbx + 0xc]
sub rax, qword [0x180023328]
test rax, rax
jne 0x180018543
movzx edx, word [rbx + 0x18]
lea ecx, [rax + 0x40]
add rdx, 6
call qword [sym.imp.api_ms_win_core_heap_l2_1_0.dll_LocalAlloc]
nop dword [rax + rax]
mov r13, rax
xor eax, eax
test r13, r13
je 0x18001857d
mov edx, dword [rbx + 0x14]
mov rcx, r13
movzx r8d, word [rbx + 0x18]
add rdx, rbx
call sub.api_ms_win_core_crt_l1_1_0.dll_memcpy
xor ebx, ebx
mov qword [rbp + 0x50], r13
jmp 0x1800186bd
mov edx, 4
lea ecx, [rdx + 0x3c]
call qword [sym.imp.api_ms_win_core_heap_l2_1_0.dll_LocalAlloc]
nop dword [rax + rax]
xor ebx, ebx
mov r13, rax
test rax, rax
jne 0x18001868b
mov ebx, 0xc0000017
jmp 0x1800185d8
mov qword [rbp + 0x50], rbx
movzx edx, word [r14 + 0x14]
mov ecx, 0x40
lea rdx, [rdx*2 + 4]
call qword [sym.imp.api_ms_win_core_heap_l2_1_0.dll_LocalAlloc]
nop dword [rax + rax]
mov qword [rbp - 0x28], rax
test rax, rax
jne 0x1800186ee
mov ebx, 0xc0000017
jmp 0x1800184cb
movzx r8d, word [r14 + 0x14]
mov rcx, rax
mov edx, dword [r14 + 0x10]
add r8, r8
add rdx, r14
call sub.api_ms_win_core_crt_l1_1_0.dll_memcpy
test r15, r15
je 0x1800187c0
mov rcx, qword [r15]
test rcx, rcx
je 0x1800187c0
mov edx, 0x5c
call qword [sym.imp.api_ms_win_core_crt_l1_1_0.dll_wcschr]
nop dword [rax + rax]
test rax, rax
je 0x1800187c0
mov rax, qword [r15]
or rsi, 0xffffffffffffffff
mov rdi, rsi
inc rdi
cmp word [rax + rdi*2], bx
jne 0x18001873e
cmp edi, 0x7ffd
jbe 0x18001875d
mov ebx, 0xc000000d
mov r14, qword [rbp - 0x28]
jmp 0x18001883c
lea edx, [rdi*2 + 2]
mov ecx, 0x40
add rdx, 2
call qword [sym.imp.api_ms_win_core_heap_l2_1_0.dll_LocalAlloc]
nop dword [rax + rax]
mov qword [rbp - 0x30], rax
mov r12, rax
test rax, rax
jne 0x18001878c
mov ebx, 0xc0000017
jmp 0x180018754
mov rdx, qword [r15]
mov rcx, r12
mov r8d, edi
add r8, r8
call sub.api_ms_win_core_crt_l1_1_0.dll_memcpy
mov edx, 0x5c
mov rcx, r12
call qword [sym.imp.api_ms_win_core_crt_l1_1_0.dll_wcschr]
nop dword [rax + rax]
mov r12, rax
test rax, rax
je 0x1800187c0
mov word [rax], bx
add r12, 2
test dword [r14 + 4], 0x20000
lea rsi, [0x180021788]
jne 0x1800187ea
test r12, r12
je 0x1800187db
mov rdi, r12
jmp 0x1800187ed
test r15, r15
je 0x1800187e5
mov rdi, qword [r15]
jmp 0x1800187ed
mov rdi, rsi
jmp 0x1800187ed
mov rdi, rbx
test dword [r14 + 4], 0x40000
mov r12, qword [rbp - 0x30]
jne 0x180018804
test r12, r12
cmovne rsi, r12
jmp 0x18001880e
mov rsi, rbx
jmp 0x18001880e
mov r12, rdx
jmp 0x18001880e
mov r14, qword [rbp - 0x28]
lea rax, [rbp + 0x40]
mov r8, qword [rbp + 0x50]
mov r9, r14
mov qword [rsp + 0x28], rax
mov rdx, rsi
mov rax, qword [rbp + 0x58]
mov rcx, rdi
mov qword [rsp + 0x20], rax
call fcn.180017424
mov ebx, eax
or rsi, 0xffffffffffffffff
mov rax, qword [rbp - 0x18]
test rax, rax
je 0x180018854
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l2_1_0.dll_LocalFree]
nop dword [rax + rax]
test r15, r15
je 0x180018868
mov rcx, r15
call qword [sym.imp.api_ms_win_core_heap_l2_1_0.dll_LocalFree]
nop dword [rax + rax]
mov rcx, qword [rbp - 0x10]
xor r15d, r15d
test rcx, rcx
je 0x180018880
call qword [sym.imp.api_ms_win_core_heap_l2_1_0.dll_LocalFree]
nop dword [rax + rax]
test r13, r13
je 0x1800188ab
inc rsi
cmp word [r13 + rsi*2], r15w
jne 0x180018885
xor eax, eax
mov ecx, esi
add rcx, rcx
mov rdi, r13
rep stosb byte [rdi], al
mov rcx, r13
call qword [sym.imp.api_ms_win_core_heap_l2_1_0.dll_LocalFree]
nop dword [rax + rax]
test r14, r14
je 0x1800188bf
mov rcx, r14
call qword [sym.imp.api_ms_win_core_heap_l2_1_0.dll_LocalFree]
nop dword [rax + rax]
test r12, r12
je 0x1800188d3
mov rcx, r12
call qword [sym.imp.api_ms_win_core_heap_l2_1_0.dll_LocalFree]
nop dword [rax + rax]
mov rax, qword [rbp - 8]
test rax, rax
je 0x1800188eb
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l2_1_0.dll_LocalFree]
nop dword [rax + rax]
mov ecx, ebx
mov rbx, qword [rsp + 0xa8]
add rsp, 0x60
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
jmp fcn.180007120