Function at 0x18000ad10
Capabilities:
Access peb ldr_data
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x170]
sub rsp, 0x270
mov rax, qword gs:[0x30]
xor r13d, r13d
mov r12d, r8d
mov r14d, edx
mov r15, rcx
mov r9, qword [rax + 0x60]
mov rsi, qword [r9 + 0x18]
add rsi, 0x20
mov rdi, qword [rsi]
cmp rdi, rsi
je 0x18000aeb7
nop dword [rax]
nop dword [rax + rax]
mov r8, qword [rdi + 0x50]
mov rbx, 0xffffffffffffffff
nop dword [rax + rax]
inc rbx
cmp word [r8 + rbx*2], 0
jne 0x18000ad80
xorps xmm0, xmm0
lea rcx, [rbp + 0x90]
xor eax, eax
movups xmmword [rbp + 0x90], xmm0
mov qword [rbp + 0x100], rax
movups xmmword [rbp + 0xa0], xmm0
lea edx, [rax + 0x3c]
movups xmmword [rbp + 0xb0], xmm0
movups xmmword [rbp + 0xc0], xmm0
movups xmmword [rbp + 0xd0], xmm0
movups xmmword [rbp + 0xe0], xmm0
movups xmmword [rbp + 0xf0], xmm0
call qword [sym.imp.msvcrt.dll_wcscpy_s]
mov rdx, r13
test rbx, rbx
je 0x18000ae16
movzx eax, word [rbp + rdx*2 + 0x90]
lea ecx, [rax - 0x41]
cmp cx, 0x19
ja 0x18000adfd
add ax, 0x20
mov word [rbp + rdx*2 + 0x90], ax
cmp ax, 0x2e
je 0x18000ae0d
inc rdx
cmp rdx, rbx
jb 0x18000ade0
jmp 0x18000ae16
mov word [rbp + rdx*2 + 0x90], r13w
mov edx, 0x811c9dc5
lea rcx, [rbp + 0x90]
lea r8, [rbp + 0x90]
mov rax, 0xffffffffffffffff
inc rax
cmp word [r8 + rax*2], 0
jne 0x18000ae30
add eax, eax
lea r8, [rbp + 0x90]
add r8, rax
lea rax, [rbp + 0x90]
cmp rax, r8
jae 0x18000ae73
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rcx]
inc rcx
xor eax, edx
imul edx, eax, 0x1000193
cmp rcx, r8
jb 0x18000ae60
lea rcx, [0x18000f89c]
lea r13, [0x18000f8a0]
movzx eax, byte [rcx]
inc rcx
xor eax, edx
imul edx, eax, 0x1000193
cmp rcx, r13
jb 0x18000ae81
xor r13d, r13d
cmp edx, r14d
je 0x18000aeaa
mov rdi, qword [rdi]
cmp rdi, rsi
jne 0x18000ad70
jmp 0x18000aeb7
mov rcx, qword [rdi + 0x20]
test rcx, rcx
jne 0x18000b061
xor eax, eax
mov qword [rsp + 0x38], r13
mov qword [rbp - 0x28], rax
xorps xmm0, xmm0
mov rax, qword [section..data]
movups xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x60], r15
mov qword [rsp + 0x68], r13
mov rcx, qword [rax + 0x88]
lea rax, [rsp + 0x40]
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0x70], r13
mov qword [rsp + 0x78], r13
mov qword [rbp - 0x80], r13
mov qword [rbp - 0x78], r13
mov qword [rbp - 0x70], r13
mov qword [rbp - 0x68], r13
mov qword [rbp - 0x60], r13
mov qword [rbp - 0x58], r13
mov qword [rbp - 0x50], r13
mov qword [rbp - 0x48], r13
mov qword [rbp - 0x40], r13
mov qword [rbp - 0x38], r13
mov qword [rbp - 0x30], r13
call fcn.18000c040
mov qword [rbp - 0x20], rax
mov rax, qword [0x180015018]
test rax, rax
jne 0x18000af7e
lea rax, [rbp + 0x1b8]
mov dword [rbp + 0x1b8], r13d
xor edx, edx
mov qword [rsp + 0x20], rax
mov rax, qword [section..data]
lea r8, [rbp + 0x110]
mov r9d, 0x30
lea rcx, [rdx - 2]
call qword [rax + 0x78]
mov rax, qword [rbp + 0x118]
mov rax, qword [rax + 8]
mov qword [0x180015018], rax
lea rcx, [rsp + 0x50]
mov qword [rbp - 0x18], rax
call fcn.18000f5d0
xor eax, eax
mov qword [rbp - 8], r13
mov qword [rbp + 0x78], rax
mov rax, qword [section..data]
mov qword [rbp], r13
mov qword [rbp + 0x18], r13
mov qword [rbp + 0x20], r13
mov rcx, qword [rax + 8]
lea rax, [rsp + 0x40]
mov qword [rbp + 8], rax
lea rax, [rsp + 0x38]
mov qword [rbp + 0x10], rax
mov qword [rbp - 0x10], rcx
mov qword [rbp + 0x28], r13
mov qword [rbp + 0x30], r13
mov qword [rbp + 0x38], r13
mov qword [rbp + 0x40], r13
mov qword [rbp + 0x48], r13
mov qword [rbp + 0x50], r13
mov qword [rbp + 0x58], r13
mov qword [rbp + 0x60], r13
mov qword [rbp + 0x68], r13
mov qword [rbp + 0x70], r13
call fcn.18000c040
mov qword [rbp + 0x80], rax
mov rax, qword [0x180015018]
test rax, rax
jne 0x18000b041
lea rax, [rsp + 0x30]
mov dword [rsp + 0x30], r13d
xor edx, edx
mov qword [rsp + 0x20], rax
mov rax, qword [section..data]
lea r8, [rbp + 0x140]
mov r9d, 0x30
lea rcx, [rdx - 2]
call qword [rax + 0x78]
mov rax, qword [rbp + 0x148]
mov rax, qword [rax + 8]
mov qword [0x180015018], rax
lea rcx, [rbp - 0x10]
mov qword [rbp + 0x88], rax
call fcn.18000f5d0
test eax, eax
mov rcx, r13
cmovns rcx, qword [rsp + 0x38]
test rcx, rcx
je 0x18000b06b
mov edx, r12d
call fcn.18000a9c0
jmp 0x18000b06d
xor eax, eax
lea r11, [rsp + 0x270]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret