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

Disassembly:
mov qword [rsp + 8], rcx
push rbx
push rsi
push rdi
sub rsp, 0x30
and qword [rsp + 0x60], 0
xor sil, sil
mov r8, qword [0x140141750]
test r8, r8
jne 0x1400038fb
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov r9, qword [rax + 0x60]
mov r10d, 0x5803bc39
movzx ecx, word [rax + 0x58]
shr rcx, 1
lea r11, [r9 + rcx*2]
cmp r9, r11
je 0x1400038eb
movsx ecx, byte [r9]
mov edx, ecx
sub cl, 0x41
mov r8d, edx
or r8d, 0x20
cmp cl, 0x19
cmova r8d, edx
add r9, 2
xor r8d, r10d
imul r10d, r8d, 0x1000193
cmp r9, r11
jne 0x1400038b8
cmp r10d, 0xd64649a9
je 0x1400038f0
mov rax, qword [rax]
jmp 0x14000389e
mov r8, qword [rax + 0x30]
mov qword [0x140141750], r8
movsxd rax, dword [r8 + 0x3c]
xor edx, edx
mov r9d, dword [rax + r8 + 0x88]
mov ebx, dword [r9 + r8 + 0x20]
lea rax, [rbx + rdx*4]
mov r10d, 0x5703baa6
mov ecx, dword [rax + r8]
add rcx, r8
mov al, byte [rcx]
inc rcx
test al, al
je 0x140003947
movsx eax, al
xor eax, r10d
imul r10d, eax, 0x1000193
mov al, byte [rcx]
inc rcx
test al, al
jne 0x140003928
cmp r10d, 0x388e5318
je 0x14000394b
inc edx
jmp 0x14000390e
mov ecx, dword [r9 + r8 + 0x24]
add rcx, r8
movzx edx, word [rcx + rdx*2]
mov ecx, dword [r9 + r8 + 0x1c]
add rcx, r8
mov edi, dword [rcx + rdx*4]
add rdi, r8
mov r8, qword [0x140141790]
test r8, r8
jne 0x1400039df
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov r9, qword [rax + 0x60]
mov r10d, 0x5603b913
movzx ecx, word [rax + 0x58]
shr rcx, 1
lea r11, [r9 + rcx*2]
cmp r9, r11
je 0x1400039cf
movsx ecx, byte [r9]
mov edx, ecx
sub cl, 0x41
mov r8d, edx
or r8d, 0x20
cmp cl, 0x19
cmova r8d, edx
add r9, 2
xor r8d, r10d
imul r10d, r8d, 0x1000193
cmp r9, r11
jne 0x14000399c
cmp r10d, 0x82037971
je 0x1400039d4
mov rax, qword [rax]
jmp 0x140003982
mov r8, qword [rax + 0x30]
mov qword [0x140141790], r8
movsxd rax, dword [r8 + 0x3c]
xor edx, edx
mov r9d, dword [rax + r8 + 0x88]
mov ebx, dword [r9 + r8 + 0x20]
lea rax, [rbx + rdx*4]
mov r10d, 0x5503b780
mov ecx, dword [rax + r8]
add rcx, r8
mov al, byte [rcx]
inc rcx
test al, al
je 0x140003a2b
movsx eax, al
xor eax, r10d
imul r10d, eax, 0x1000193
mov al, byte [rcx]
inc rcx
test al, al
jne 0x140003a0c
cmp r10d, 0x2799c8a6
je 0x140003a2f
inc edx
jmp 0x1400039f2
mov ecx, dword [r9 + r8 + 0x24]
add rcx, r8
movzx edx, word [rcx + rdx*2]
mov ecx, dword [r9 + r8 + 0x1c]
add rcx, r8
mov eax, dword [rcx + rdx*4]
add rax, r8
call rax
lea r8, [rsp + 0x60]
mov edx, 8
mov rcx, rax
call rdi
test eax, eax
je 0x140003b7a
mov r8, qword [0x140141798]
mov edi, 4
mov dword [rsp + 0x50], edi
test r8, r8
jne 0x140003ae5
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov r9, qword [rax + 0x60]
mov r10d, 0xdeb65bda
movzx ecx, word [rax + 0x58]
shr rcx, 1
lea r11, [r9 + rcx*2]
cmp r9, r11
je 0x140003ad5
movsx ecx, byte [r9]
mov edx, ecx
sub cl, 0x41
mov r8d, edx
or r8d, 0x20
cmp cl, 0x19
cmova r8d, edx
add r9, 2
xor r8d, r10d
imul r10d, r8d, 0x1000193
cmp r9, r11
jne 0x140003aa2
cmp r10d, 0x2d5d47fe
je 0x140003ada
mov rax, qword [rax]
jmp 0x140003a88
mov r8, qword [rax + 0x30]
mov qword [0x140141798], r8
movsxd rax, dword [r8 + 0x3c]
xor edx, edx
mov r9d, dword [rax + r8 + 0x88]
mov ebx, dword [r9 + r8 + 0x20]
lea rax, [rbx + rdx*4]
mov r10d, 0xdfb65d6d
mov ecx, dword [rax + r8]
add rcx, r8
mov al, byte [rcx]
inc rcx
test al, al
je 0x140003b31
movsx eax, al
xor eax, r10d
imul r10d, eax, 0x1000193
mov al, byte [rcx]
inc rcx
test al, al
jne 0x140003b12
cmp r10d, 0x7fe4d32
je 0x140003b35
inc edx
jmp 0x140003af8
mov ecx, dword [r9 + r8 + 0x24]
add rcx, r8
movzx edx, word [rcx + rdx*2]
mov ecx, dword [r9 + r8 + 0x1c]
mov r9d, edi
add rcx, r8
mov eax, dword [rcx + rdx*4]
lea rcx, [rsp + 0x50]
mov qword [rsp + 0x20], rcx
add rax, r8
mov rcx, qword [rsp + 0x60]
lea r8, [rsp + 0x58]
mov edx, 0x14
call rax
test eax, eax
je 0x140003b7a
cmp dword [rsp + 0x58], 0
setne sil
mov r11, qword [rsp + 0x60]
test r11, r11
je 0x140003c7c
mov rcx, qword [0x140141770]
test rcx, rcx
jne 0x140003c07
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov r9, qword [rax + 0x60]
mov r10d, 0xf019c831
movzx ecx, word [rax + 0x58]
shr rcx, 1
lea r11, [r9 + rcx*2]
cmp r9, r11
je 0x140003bf2
movsx ecx, byte [r9]
mov edx, ecx
sub cl, 0x41
mov r8d, edx
or r8d, 0x20
cmp cl, 0x19
cmova r8d, edx
add r9, 2
xor r8d, r10d
imul r10d, r8d, 0x1000193
cmp r9, r11
jne 0x140003bbf
cmp r10d, 0x2dffc9ff
je 0x140003bf7
mov rax, qword [rax]
jmp 0x140003ba5
mov rcx, qword [rax + 0x30]
mov r11, qword [rsp + 0x60]
mov qword [0x140141770], rcx
movsxd rax, dword [rcx + 0x3c]
xor r8d, r8d
mov r10d, dword [rax + rcx + 0x88]
mov edi, dword [r10 + rcx + 0x20]
lea rax, [rdi + r8*4]
mov ebx, r8d
mov edx, dword [rax + rcx]
mov r9d, 0xef19c69e
add rdx, rcx
mov al, byte [rdx]
inc rdx
test al, al
je 0x140003c56
movsx eax, al
xor eax, r9d
imul r9d, eax, 0x1000193
mov al, byte [rdx]
inc rdx
test al, al
jne 0x140003c37
cmp r9d, 0xbba4c094
je 0x140003c5b
inc r8d
jmp 0x140003c1b
mov r8d, dword [r10 + rcx + 0x24]
add r8, rcx
movzx r9d, word [r8 + rbx*2]
mov r8d, dword [r10 + rcx + 0x1c]
add r8, rcx
mov edx, dword [r8 + r9*4]
add rdx, rcx
mov rcx, r11
call rdx
mov al, sil
add rsp, 0x30
pop rdi
pop rsi
pop rbx
ret