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

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x70
mov rax, qword [0x14033c140]
xor rax, rsp
mov qword [rsp + 0x60], rax
mov r12, rdx
mov r15, rcx
mov qword [rsp + 0x38], rcx
xor r13d, r13d
mov r14, rdx
cmp qword [rdx + 0x18], 0xf
jbe 0x1400788ae
mov r14, qword [rdx]
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop
mov rbx, qword [rax + 0x30]
movsxd rcx, dword [rbx + 0x3c]
mov esi, dword [rcx + rbx + 0x88]
add rsi, rbx
cmp rsi, rbx
je 0x140078948
mov r11d, dword [rsi + 0x18]
test r11d, r11d
je 0x140078948
mov ebp, dword [rsi + 0x20]
nop dword [rax]
nop word [rax + rax]
dec r11d
lea rcx, [rbx + r11*4]
mov r9d, dword [rcx + rbp]
add r9, rbx
mov r10d, 0xfcc23f85
movzx ecx, byte [r9]
inc r9
test cl, cl
je 0x140078943
nop
movsx edx, cl
sub cl, 0x41
mov r8d, edx
or r8d, 0x20
cmp cl, 0x19
cmova r8d, edx
xor r8d, r10d
imul r10d, r8d, 0x1000193
movzx ecx, byte [r9]
lea r9, [r9 + 1]
test cl, cl
jne 0x140078910
cmp r10d, 0x67157ce2
je 0x140078950
test r11d, r11d
jne 0x1400788f0
mov rax, qword [rax]
jmp 0x1400788c0
mov ecx, dword [rsi + 0x1c]
add rcx, rbx
mov eax, dword [rsi + 0x24]
add rax, rbx
movzx eax, word [rax + r11*2]
mov r10d, dword [rcx + rax*4]
add r10, rbx
mov dword [rsp + 0x28], r13d
mov qword [rsp + 0x20], r13
mov r9d, 0xffffffff
mov r8, r14
xor edx, edx
mov ecx, 0xfde9
call r10
mov r14d, eax
test eax, eax
jne 0x1400789b2
xorps xmm0, xmm0
movups xmmword [r15], xmm0
mov qword [r15 + 0x10], r13
mov qword [r15 + 0x18], r13
xor r8d, r8d
lea rdx, [0x14031ce4c]
mov rcx, r15
call fcn.14008b1e0
jmp 0x140078af7
xor r8d, r8d
dec eax
movsxd rdx, eax
lea rcx, [rsp + 0x40]
call fcn.140089650
nop
lea rbp, [rsp + 0x40]
cmp qword [rsp + 0x58], 7
cmova rbp, qword [rsp + 0x40]
cmp qword [r12 + 0x18], 0xf
jbe 0x1400789e2
mov r12, qword [r12]
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
nop word [rax + rax]
mov rbx, qword [rax + 0x30]
movsxd rcx, dword [rbx + 0x3c]
mov esi, dword [rcx + rbx + 0x88]
add rsi, rbx
cmp rsi, rbx
je 0x140078a89
mov r11d, dword [rsi + 0x18]
test r11d, r11d
je 0x140078a89
mov edi, dword [rsi + 0x20]
nop dword [rax]
nop word [rax + rax]
dec r11d
lea rdx, [rbx + r11*4]
mov r9d, dword [rdx + rdi]
add r9, rbx
mov r10d, 0x395d7304
movzx r8d, byte [r9]
inc r9
test r8b, r8b
je 0x140078a84
movsx ecx, r8b
sub r8b, 0x41
mov edx, ecx
or edx, 0x20
cmp r8b, 0x19
cmova edx, ecx
xor edx, r10d
imul r10d, edx, 0x1000193
movzx r8d, byte [r9]
lea r9, [r9 + 1]
test r8b, r8b
jne 0x140078a50
cmp r10d, 0xc7cf0129
je 0x140078a91
test r11d, r11d
jne 0x140078a30
mov rax, qword [rax]
jmp 0x140078a00
mov r10d, dword [rsi + 0x1c]
add r10, rbx
mov edx, dword [rsi + 0x24]
add rdx, rbx
movzx edx, word [rdx + r11*2]
mov eax, dword [r10 + rdx*4]
add rax, rbx
mov dword [rsp + 0x28], r14d
mov qword [rsp + 0x20], rbp
mov r9d, 0xffffffff
mov r8, r12
xor edx, edx
mov ecx, 0xfde9
call rax
movups xmm0, xmmword [rsp + 0x40]
movups xmmword [r15], xmm0
movups xmm1, xmmword [rsp + 0x50]
movups xmmword [r15 + 0x10], xmm1
movdqa xmm0, xmmword [0x14031e070]
movdqu xmmword [rsp + 0x50], xmm0
mov word [rsp + 0x40], r13w
lea rcx, [rsp + 0x40]
call fcn.14008bcd0
mov rax, r15
mov rcx, qword [rsp + 0x60]
xor rcx, rsp
call fcn.1402bd6f0
mov rbx, qword [rsp + 0xc0]
add rsp, 0x70
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret