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

Disassembly:
mov r11, rsp
push rbp
lea rbp, [r11 - 0x5f]
sub rsp, 0xe0
mov rax, qword [0x1401f2100]
xor rax, rsp
mov qword [rbp + 0x37], rax
cmp byte [0x140298af4], 0
jne 0x140028c28
mov qword [r11 + 8], rbx
mov qword [r11 + 0x10], rsi
xor esi, esi
mov qword [r11 + 0x18], rdi
movaps xmmword [r11 - 0x18], xmm6
nop dword [rax]
mov eax, dword [0x140298b00]
inc eax
movsxd rcx, eax
mov qword [rbp - 0x59], rcx
lea rcx, [rbp - 0x59]
call fcn.140005440
cmp byte [0x1402989d0], sil
je 0x140028bfb
cmp qword [0x140298970], rsi
je 0x140028bfb
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 edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x140028797
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140028797
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0x7d14d1ee
lea rcx, [rbx + r9*4]
mov edx, dword [rcx + r10]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140028792
nop
movsx ecx, cl
lea rdx, [rdx + 1]
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx - 1]
test cl, cl
jne 0x140028770
cmp r8d, 0xace64556
je 0x14002879c
test r9d, r9d
jne 0x140028750
mov rax, qword [rax]
jmp 0x140028720
mov ecx, dword [rdi + 0x24]
add rcx, r10
movzx edx, word [rcx + r9*2]
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
mov ecx, dword [0x1402989d4]
add rax, r10
call rax
test ax, ax
jne 0x140028899
cmp byte [0x140298359], sil
je 0x140028bfb
mov dword [rbp - 0x21], esi
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x1d], xmm0
mov dword [rbp - 0xd], 4
xorps xmm1, xmm1
movdqu xmmword [rbp - 9], xmm1
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x140028877
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140028877
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0x197b57ad
lea rcx, [rbx + r9*4]
mov edx, dword [rcx + r10]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140028872
nop
movsx ecx, cl
lea rdx, [rdx + 1]
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx - 1]
test cl, cl
jne 0x140028850
cmp r8d, 0x2aa08f65
je 0x14002887c
test r9d, r9d
jne 0x140028830
mov rax, qword [rax]
jmp 0x140028800
mov ecx, dword [rdi + 0x24]
add rcx, r10
movzx edx, word [rcx + r9*2]
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
lea rdx, [rbp - 0x21]
jmp 0x140028be4
mov rcx, qword [0x1402984a0]
test rcx, rcx
je 0x1400288d0
cmp dword [0x140298408], esi
je 0x1400288d0
mov rdx, qword [0x140298700]
lea r8, [rbp + 7]
mov r9d, 8
mov qword [rsp + 0x20], rsi
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rcx, qword [0x1402984a0]
mov rdi, qword [rbp + 7]
mov qword [rbp - 0x31], rdi
test rdi, rdi
je 0x140028b10
movaps xmm0, xmmword [0x140298970]
movaps xmm6, xmmword [0x140298980]
movups xmmword [rbp - 0x21], xmm0
test rcx, rcx
je 0x140028920
cmp dword [0x140298408], esi
je 0x140028920
lea rdx, [rdi + 0x90]
mov qword [rsp + 0x20], rsi
mov r9d, 0xc
lea r8, [rbp - 0x51]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rdi, qword [rbp - 0x31]
movaps xmm0, xmm6
movaps xmm1, xmm6
shufps xmm1, xmm6, 0xaa
subss xmm1, dword [rbp - 0x4d]
shufps xmm0, xmm6, 0x55
subss xmm0, dword [rbp - 0x51]
shufps xmm6, xmm6, 0xff
subss xmm6, dword [rbp - 0x49]
mulss xmm1, xmm1
mulss xmm0, xmm0
mulss xmm6, xmm6
addss xmm1, xmm0
xorps xmm0, xmm0
addss xmm1, xmm6
ucomiss xmm0, xmm1
ja 0x140028966
xorps xmm0, xmm0
sqrtss xmm0, xmm1
jmp 0x14002896e
movaps xmm0, xmm1
call fcn.140114640
movd xmm1, dword [0x1402989dc]
mov rcx, rdi
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
setbe bl
call fcn.140028600
test al, al
je 0x140028998
cmp byte [0x1402989d8], sil
movzx ebx, bl
cmove ebx, esi
cmp byte [0x1402989b9], sil
je 0x1400289b2
mov rcx, qword [rbp - 0x31]
call fcn.140028570
test al, al
movzx ebx, bl
cmove ebx, esi
mov rcx, qword [0x1402984a0]
test rcx, rcx
je 0x1400289e2
cmp dword [0x140298408], esi
je 0x1400289e2
mov rdx, qword [0x1402986f8]
lea r8, [rbp - 0x29]
mov r9d, 1
mov qword [rsp + 0x20], rsi
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
cmp byte [rbp - 0x29], sil
lea r8, [rbp - 0x31]
lea rdx, [rbp - 0x41]
lea rcx, [0x140298680]
cmove ebx, esi
call fcn.140028c60
mov edx, esi
mov rcx, qword [rax]
movzx eax, bl
cmp byte [rcx + 0x60], dl
cmove edx, eax
test dl, dl
je 0x140028b10
cmp byte [0x140298359], sil
jne 0x140028bfb
movsxd rax, dword [0x1402989e0]
lea rcx, [rbp - 0x59]
mov qword [rbp - 0x59], rax
call fcn.140005440
mov dword [rbp - 0x21], esi
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x1d], xmm0
mov dword [rbp - 0xd], 2
xorps xmm1, xmm1
movdqu xmmword [rbp - 9], xmm1
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x140028ad7
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140028ad7
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0xcbc3c177
lea rcx, [rbx + r9*4]
mov edx, dword [rcx + r10]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140028ad2
nop
movsx ecx, cl
lea rdx, [rdx + 1]
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx - 1]
test cl, cl
jne 0x140028ab0
cmp r8d, 0x118a3c57
je 0x140028adc
test r9d, r9d
jne 0x140028a90
mov rax, qword [rax]
jmp 0x140028a60
mov ecx, dword [rdi + 0x24]
mov r8d, 0x28
add rcx, r10
movzx edx, word [rcx + r9*2]
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
lea rdx, [rbp - 0x21]
add rax, r10
mov ecx, 1
call rax
mov byte [0x140298359], 1
jmp 0x140028bfb
cmp byte [0x140298359], sil
je 0x140028bfb
mov dword [rbp + 0xf], esi
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x13], xmm0
mov dword [rbp + 0x23], 4
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x27], xmm1
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x140028bc7
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140028bc7
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0xee560f78
lea rcx, [rbx + r9*4]
mov edx, dword [rcx + r10]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140028bc2
nop
movsx ecx, cl
lea rdx, [rdx + 1]
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx - 1]
test cl, cl
jne 0x140028ba0
cmp r8d, 0xe0200b0a
je 0x140028bcc
test r9d, r9d
jne 0x140028b80
mov rax, qword [rax]
jmp 0x140028b50
mov ecx, dword [rdi + 0x24]
add rcx, r10
movzx edx, word [rcx + r9*2]
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
lea rdx, [rbp + 0xf]
mov r8d, 0x28
mov ecx, 1
add rax, r10
call rax
mov byte [0x140298359], sil
cmp byte [0x140298af4], sil
je 0x1400286d0
movaps xmm6, xmmword [rsp + 0xd0]
mov rdi, qword [rsp + 0x100]
mov rsi, qword [rsp + 0xf8]
mov rbx, qword [rsp + 0xf0]
mov rcx, qword [rbp + 0x37]
xor rcx, rsp
call fcn.1400a7300
add rsp, 0xe0
pop rbp
ret