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

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x20], rbp
push rsi
push rdi
push r14
sub rsp, 0xc0
mov rax, qword [0x1401550c0]
xor rax, rsp
mov qword [rsp + 0xb0], rax
cmp qword [rdx + 0x18], 0xf
mov r14, r8
mov rsi, rdx
mov dword [rsp + 0x80], 0
mov rbp, rdx
jbe 0x140095fb5
mov rbp, qword [rdx]
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov ebx, dword [rcx + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x140096047
mov r9d, dword [rbx + 0x18]
test r9d, r9d
je 0x140096047
mov edi, dword [rbx + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0x1d650d02
lea rcx, [rdi + r9*4]
mov edx, dword [rcx + r10]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140096042
nop
movsx ecx, cl
lea rdx, [rdx + 1]
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx - 1]
test cl, cl
jne 0x140096020
cmp r8d, 0x84c7f2b9
je 0x14009604c
test r9d, r9d
jne 0x140096000
mov rax, qword [rax]
jmp 0x140095fd0
mov ecx, dword [rbx + 0x24]
xor r8d, r8d
add rcx, r10
movzx edx, word [rcx + r9*2]
mov r9d, 0xf003f
mov ecx, dword [rbx + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
lea rcx, [rsp + 0x70]
mov qword [rsp + 0x20], rcx
add rax, r10
mov rcx, 0xffffffff80000001
mov rdx, rbp
call rax
cmp eax, 2
jne 0x140096218
cmp qword [rsi + 0x18], 0xf
mov rcx, rsi
jbe 0x140096098
mov rcx, qword [rsi]
mov rdx, qword [rsi + 0x10]
lea r9, str.EdgeUI
mov qword [rsp + 0x20], 6
call fcn.140094c00
cmp rax, 0xffffffffffffffff
je 0x140096218
movabs rax, 0xf0bb3c48e1d4f7a0
movabs rcx, 0xeb214fe420a39aa6
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x50], rcx
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x68], rax
movabs rax, 0xf0bb751d84b393e5
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0xa0], rax
mov qword [rsp + 0x50], rcx
mov rax, qword [rsp + 0x50]
movdqa xmm0, xmmword [rsp + 0x60]
mov qword [rsp + 0xa8], rax
xorps xmm0, xmmword [rsp + 0xa0]
movdqa xmmword [rsp + 0x60], xmm0
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov r11d, dword [rcx + r10 + 0x88]
add r11, r10
cmp r11, r10
je 0x1400961b5
mov r9d, dword [r11 + 0x18]
test r9d, r9d
je 0x1400961b5
mov ebx, dword [r11 + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [rbx + r9*4]
mov r8d, dword [rdx + r10]
mov edx, 0x6b05ca0c
add r8, r10
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x1400961b0
nop
movsx ecx, cl
lea r8, [r8 + 1]
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8 - 1]
test cl, cl
jne 0x140096190
cmp edx, 0xa1e88257
je 0x1400961ba
test r9d, r9d
jne 0x140096170
mov rax, qword [rax]
jmp 0x140096140
mov ecx, dword [r11 + 0x24]
lea rdx, [rsp + 0x60]
add rcx, r10
movzx r8d, word [rcx + r9*2]
xor r9d, r9d
mov ecx, dword [r11 + 0x1c]
add rcx, r10
mov eax, dword [rcx + r8*4]
lea rcx, [rsp + 0x90]
mov qword [rsp + 0x40], rcx
add rax, r10
lea rcx, [rsp + 0x70]
xor r8d, r8d
mov qword [rsp + 0x38], rcx
mov rcx, 0xffffffff80000001
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0xf003f
mov dword [rsp + 0x20], 0
call rax
cmp qword [r14 + 0x18], 0xf
jbe 0x140096222
mov r14, qword [r14]
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov ebx, dword [rcx + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x1400962b5
mov r9d, dword [rbx + 0x18]
test r9d, r9d
je 0x1400962b5
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [r11 + r9*4]
mov r8d, dword [rdx + r10]
mov edx, 0x5c1963aa
add r8, r10
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x1400962b0
nop
movsx ecx, cl
lea r8, [r8 + 1]
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8 - 1]
test cl, cl
jne 0x140096290
cmp edx, 0x5367fd57
je 0x1400962ba
test r9d, r9d
jne 0x140096270
mov rax, qword [rax]
jmp 0x140096240
mov ecx, dword [rbx + 0x24]
xor r8d, r8d
add rcx, r10
mov dword [rsp + 0x28], 4
mov rdx, r14
movzx r9d, word [rcx + r9*2]
mov ecx, dword [rbx + 0x1c]
add rcx, r10
mov eax, dword [rcx + r9*4]
lea rcx, [rsp + 0x80]
mov qword [rsp + 0x20], rcx
add rax, r10
mov rcx, qword [rsp + 0x70]
mov r9d, 4
call rax
mov rcx, qword gs:[0x60]
mov edi, eax
mov rcx, qword [rcx + 0x18]
mov rcx, qword [rcx + 0x10]
nop dword [rax]
mov r10, qword [rcx + 0x30]
movsxd rdx, dword [r10 + 0x3c]
mov r11d, dword [rdx + r10 + 0x88]
add r11, r10
cmp r11, r10
je 0x140096387
mov r9d, dword [r11 + 0x18]
test r9d, r9d
je 0x140096387
mov ebx, dword [r11 + 0x20]
nop word [rax + rax]
dec r9d
mov r8d, 0xd744c120
lea rdx, [rbx + r9*4]
mov eax, dword [rdx + r10]
add rax, r10
movzx edx, byte [rax]
inc rax
test dl, dl
je 0x140096382
nop
movsx edx, dl
lea rax, [rax + 1]
xor edx, r8d
imul r8d, edx, 0x1000193
movzx edx, byte [rax - 1]
test dl, dl
jne 0x140096360
cmp r8d, 0x45ce1d6d
je 0x14009638c
test r9d, r9d
jne 0x140096340
mov rcx, qword [rcx]
jmp 0x140096310
mov edx, dword [r11 + 0x24]
mov rcx, 0xffffffff80000001
add rdx, r10
movzx r9d, word [rdx + r9*2]
mov edx, dword [r11 + 0x1c]
add rdx, r10
mov eax, dword [rdx + r9*4]
add rax, r10
call rax
cmp edi, 2
setne al
mov rcx, qword [rsp + 0xb0]
xor rcx, rsp
call fcn.1400cc9e0
lea r11, [rsp + 0xc0]
mov rbx, qword [r11 + 0x20]
mov rbp, qword [r11 + 0x38]
mov rsp, r11
pop r14
pop rdi
pop rsi
ret