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

Disassembly:
mov r11, rsp
sub rsp, 0x78
mov rax, qword [0x18022c768]
mov rcx, qword [rax]
test rcx, rcx
je 0x180028e50
mov qword [r11 + 0x18], rbp
mov rbp, qword [rcx + 8]
test rbp, rbp
jne 0x1800289d7
mov byte [0x18022c757], bpl
mov rbp, qword [r11 + 0x18]
add rsp, 0x78
ret
mov qword [rsp + 0x88], rbx
movabs rbx, 0xd80958fc74e988a6
mov rcx, rbx
mov qword [rsp + 0x70], rsi
mov qword [rsp + 0x60], r14
call fcn.18001bc80
mov edx, eax
movabs rcx, 0x814fa8be5449445d
mov esi, eax
call fcn.18001bd40
mov rcx, rbx
call fcn.18001bc80
mov r8d, 1
mov edx, eax
movabs rcx, 0x9a9112a0fe9a4713
call fcn.18001be30
cmp byte [0x18022c715], 0
jne 0x180028a60
cmp byte [0x18022c716], 0
je 0x180028a7e
xor r9d, r9d
mov edx, esi
movabs rcx, 0xea1c610a04db6bbb
lea r8d, [r9 + 1]
call fcn.18001c870
mov byte [0x18022c716], 0
jmp 0x180028a7e
xor r9d, r9d
mov byte [0x18022c716], 1
xor r8d, r8d
mov edx, esi
movabs rcx, 0xea1c610a04db6bbb
call fcn.18001c870
cmp byte [0x18022c70e], 0
je 0x180028aa8
movss xmm0, dword [0x180198a4c]
comiss xmm0, dword [rbp + 0x280]
jbe 0x180028aa8
movss xmm0, dword [rbp + 0x284]
movss dword [rbp + 0x280], xmm0
cmp byte [0x18022c70b], 0
je 0x180028ac9
mov edx, esi
movabs rcx, 0x71bc8e838b9c6035
call fcn.18001c660
mov byte [0x18022c70b], 0
cmp byte [0x18022c70d], 0
je 0x180028afd
xor r9d, r9d
xor r8d, r8d
mov edx, esi
movabs rcx, 0x39ff19c64ef7da5b
call fcn.18001c870
xor r8d, r8d
mov edx, esi
movabs rcx, 0xe0a7d1e497ffcd6f
call fcn.18001c750
cmp byte [0x18022c70f], 0
je 0x180028b1c
movd xmm0, dword [0x1802293d0]
mov eax, dword [0x18022c790]
cvtdq2ps xmm0, xmm0
movss dword [rax + rbp], xmm0
xor r14d, r14d
mov edx, esi
mov r8d, r14d
movabs rcx, 0xb128377056a54e2a
cmp byte [0x18022c719], r8b
sete r8b
call fcn.18001c750
mov r8d, r14d
mov edx, esi
cmp byte [0x18022c71a], r8b
movabs rcx, 0xebd76f2359f190ac
sete r8b
call fcn.18001c750
cmp byte [0x18022c71b], r14b
je 0x180028ca1
lea r8d, [r14 + 1]
mov edx, esi
movabs rcx, 0x3317dedb88c95038
call fcn.18001be30
test eax, eax
jne 0x180028ca1
mov rax, qword gs:[0x60]
mov qword [rsp + 0x68], rdi
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov ebx, dword [rcx + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x180028c17
mov r9d, dword [rbx + 0x18]
test r9d, r9d
je 0x180028c17
mov edi, dword [rbx + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0xb7aa683a
lea rcx, [rdi + r9*4]
mov edx, dword [rcx + r10]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x180028c12
nop
movsx ecx, cl
lea rdx, [rdx + 1]
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx - 1]
test cl, cl
jne 0x180028bf0
cmp r8d, 0x3bd13d12
je 0x180028c1c
test r9d, r9d
jne 0x180028bd0
mov rax, qword [rax]
jmp 0x180028ba0
mov ecx, dword [rbx + 0x24]
add rcx, r10
movzx edx, word [rcx + r9*2]
mov ecx, dword [rbx + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
mov ecx, 0x45
add rax, r10
call rax
mov rdi, qword [rsp + 0x68]
test ax, ax
js 0x180028ca1
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
mov dword [rsp + 0x30], 1
xorps xmm3, xmm3
mov r8d, eax
mov dword [rsp + 0x28], 1
mov eax, 0x1b4e81b5
xorps xmm2, xmm2
imul r8d
sar edx, 5
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
imul ecx, edx, 0x12c
mov edx, esi
sub r8d, ecx
movabs rcx, 0x8524a8b0171d5e07
add r8d, 0x3d
movd xmm0, r8d
cvtdq2ps xmm0, xmm0
movss dword [rsp + 0x20], xmm0
call fcn.18001d070
cmp byte [0x18022c71c], r14b
je 0x180028cbb
mov edx, esi
movabs rcx, 0xa6f312fcce9c1dfe
call fcn.18001c660
cmp byte [0x18022c70c], r14b
mov edx, esi
movabs rcx, 0x3882114bde571ad4
setne r14b
mov r8d, r14d
call fcn.18001c750
cmp byte [0x18022c712], 0
mov r14, qword [rsp + 0x60]
je 0x180028d07
mov eax, dword [0x18022c7a0]
mov rcx, qword [rax + rbp]
test rcx, rcx
je 0x180028d07
movss xmm0, dword [0x1802293c8]
movss dword [rcx + 0xcf0], xmm0
cmp byte [0x18022c718], 0
je 0x180028d30
movabs rcx, 0x4f8644af03d0e0d6
call fcn.18001bc80
mov edx, eax
movabs rcx, 0x57fff03e423a4c0b
call fcn.18001c660
cmp byte [0x18022c713], 0
je 0x180028d56
movd xmm0, dword [0x1802293d0]
mov eax, dword [0x18022c790]
cvtdq2ps xmm0, xmm0
movss dword [rax + rbp], xmm0
mov byte [0x18022c713], 0
cmp byte [0x18022c711], 0
je 0x180028dd9
mov edx, 8
movabs rcx, 0x1bede233e6cd2a1f
call fcn.18001bd40
mov edx, eax
movabs rcx, 0xa6db27d19ecbb7da
mov ebx, eax
call fcn.18001bd40
test eax, eax
je 0x180028dd2
mov r8d, ebx
lea rcx, [rsp + 0x40]
movabs rdx, 0x586afe3ff72d996e
call fcn.18001c290
movss xmm0, dword [rsp + 0x50]
mov edx, esi
addss xmm0, dword [0x1801989a0]
movss xmm3, dword [rsp + 0x48]
movabs rcx, 0x9afeff481a85ab2e
movss xmm2, dword [rsp + 0x40]
movss dword [rsp + 0x20], xmm0
call fcn.18001cf20
mov byte [0x18022c711], 0
cmp byte [0x18022c710], 0
mov rsi, qword [rsp + 0x70]
mov rbx, qword [rsp + 0x88]
je 0x180028e0e
mov eax, dword [0x1802293cc]
add eax, 0x64
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x280], xmm0
mov byte [0x18022c710], 0
cmp byte [0x18022c717], 0
je 0x180028e48
mov rax, qword [0x18022c780]
test rax, rax
je 0x180028e28
mov rax, qword [rax]
jmp 0x180028e30
mov rax, qword [rsp + 0x80]
mov rax, qword [rax + 0x10]
movss xmm0, dword [0x1802293d8]
movss dword [rax + 0x30], xmm0
mov byte [0x18022c717], 0
mov rbp, qword [rsp + 0x90]
add rsp, 0x78
ret