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

Disassembly:
mov rax, rsp
push rbp
lea rbp, [rax - 0x5f]
sub rsp, 0xc0
cmp byte [0x180188431], 0
movaps xmmword [rax - 0x18], xmm6
movaps xmmword [rax - 0x28], xmm7
movaps xmmword [rax - 0x48], xmm9
movss xmm9, dword [0x180076f68]
movaps xmmword [rax - 0x58], xmm10
movsd xmm10, qword [0x180076fe0]
je 0x180041d06
call fcn.1800413f0
test rax, rax
je 0x1800420cf
xor r8d, r8d
lea rcx, [rbp - 0x39]
mov rdx, rax
call fcn.180040f20
movsd xmm0, qword [rbp - 0x39]
lea rdx, [rbp - 0x29]
mov eax, dword [rbp - 0x31]
lea rcx, [rbp + 0x67]
movsd qword [rbp - 0x29], xmm0
mov dword [rbp - 0x21], eax
call fcn.180040d20
movss xmm1, dword [0x180188594]
movss xmm0, dword [rbp + 0x6b]
movss xmm7, dword [0x180188590]
mulss xmm1, xmm9
cvtps2pd xmm0, xmm0
cvtps2pd xmm1, xmm1
mulss xmm7, xmm9
subsd xmm0, xmm1
movaps xmm1, xmm10
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movaps xmm6, xmm0
movss xmm0, dword [rbp + 0x67]
cvtps2pd xmm1, xmm7
cvtps2pd xmm0, xmm0
subsd xmm0, xmm1
movaps xmm1, xmm10
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
addsd xmm6, xmm0
xorps xmm1, xmm1
xorps xmm0, xmm0
cvtsd2ss xmm0, xmm6
ucomiss xmm1, xmm0
ja 0x180041cc0
sqrtss xmm0, xmm0
jmp 0x180041cc5
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movss xmm1, dword [0x180076f98]
comiss xmm1, xmm0
jbe 0x180041d06
xor edx, edx
mov qword [rsp + 0x20], 0
xor r9d, r9d
xor r8d, r8d
lea ecx, [rdx + 2]
call qword [sym.imp.USER32.dll_mouse_event]
xor edx, edx
mov qword [rsp + 0x20], 0
xor r9d, r9d
xor r8d, r8d
lea ecx, [rdx + 4]
call qword [sym.imp.USER32.dll_mouse_event]
cmp byte [0x180188430], 0
je 0x1800420cf
mov rax, qword [0x1801883e0]
mov qword [rsp + 0xd8], rbx
test rax, rax
jne 0x180041e07
mov rax, qword gs:[0x60]
mov qword [rsp + 0xe0], rsi
mov qword [rsp + 0xe8], rdi
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov rbx, rsi
nop dword [rax]
nop word [rax + rax]
mov r9, qword [rbx + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov r11d, dword [rax + r9 + 0x88]
add r11, r9
cmp r11, r9
je 0x180041dd8
mov r8d, dword [r11 + 0x18]
test r8d, r8d
je 0x180041dd8
mov edi, dword [r11 + 0x20]
nop word [rax + rax]
dec r8d
mov edx, 0x811c9dc5
lea rax, [rdi + r8*4]
mov ecx, dword [rax + r9]
add rcx, r9
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x180041dd3
nop dword [rax]
movsx eax, al
lea rcx, [rcx + 1]
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx - 1]
test al, al
jne 0x180041db0
cmp edx, 0x95466b05
je 0x180041e86
test r8d, r8d
jne 0x180041d90
mov rax, qword [rbx]
mov rbx, rax
cmp rax, rsi
je 0x180041dee
cmp qword [rax + 0x30], 0
jne 0x180041d60
xor eax, eax
mov rdi, qword [rsp + 0xe8]
mov rsi, qword [rsp + 0xe0]
mov qword [0x1801883e0], rax
mov ecx, dword [reloc.XINPUT1_3.dll_Ordinal_2]
call rax
bt ax, 0xf
jae 0x1800420c7
call fcn.1800413f0
mov rbx, rax
test rax, rax
je 0x1800420c7
mov eax, dword [0x180188440]
test eax, eax
jne 0x180041f71
movss xmm6, dword [0x180188594]
lea rcx, [rbp - 0x39]
movaps xmmword [rsp + 0x90], xmm8
xor r8d, r8d
movss xmm8, dword [0x180188590]
mov rdx, rbx
mulss xmm8, xmm9
mulss xmm6, xmm9
call fcn.180040f20
mov ecx, dword [0x18018843c]
sub ecx, 1
je 0x180041eb6
sub ecx, 1
je 0x180041eae
cmp ecx, 1
jne 0x180041ea4
mov r8d, ecx
jmp 0x180041ebc
mov ecx, dword [r11 + 0x24]
add rcx, r9
movzx edx, word [rcx + r8*2]
mov ecx, dword [r11 + 0x1c]
add rcx, r9
mov eax, dword [rcx + rdx*4]
add rax, r9
jmp 0x180041df0
mov ebx, dword [rbp - 0x31]
movsd xmm7, qword [rbp - 0x39]
jmp 0x180041ed0
mov r8d, 8
jmp 0x180041ebc
mov r8d, 7
mov rdx, rbx
lea rcx, [rbp - 0x29]
call fcn.180040f20
movsd xmm7, qword [rbp - 0x29]
mov ebx, dword [rbp - 0x21]
lea rdx, [rbp - 0x19]
movsd qword [rbp - 0x19], xmm7
lea rcx, [rbp + 0x67]
mov dword [rbp - 0x11], ebx
call fcn.180040d20
movss xmm0, dword [rbp + 0x6b]
movaps xmm1, xmm10
cvtps2pd xmm0, xmm0
cvtps2pd xmm2, xmm6
subsd xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movaps xmm6, xmm0
movaps xmm1, xmm10
movss xmm0, dword [rbp + 0x67]
cvtps2pd xmm0, xmm0
cvtps2pd xmm2, xmm8
subsd xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movaps xmm8, xmmword [rsp + 0x90]
addsd xmm6, xmm0
xorps xmm0, xmm0
xorps xmm1, xmm1
cvtsd2ss xmm0, xmm6
ucomiss xmm1, xmm0
ja 0x180041f3b
sqrtss xmm0, xmm0
jmp 0x180041f40
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
mov eax, dword [0x1801879a0]
lea ecx, [rax + rax*4]
add ecx, ecx
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
comiss xmm1, xmm0
jbe 0x1800420c7
lea rcx, [rbp - 9]
movsd qword [rbp - 9], xmm7
mov dword [rbp - 1], ebx
call fcn.1800417b0
jmp 0x1800420c7
cmp eax, 2
jne 0x1800420c7
call fcn.1800413f0
mov rbx, rax
test rax, rax
je 0x1800420c7
xor r8d, r8d
lea rcx, [rbp - 0x19]
mov rdx, rax
call fcn.180040f20
movsxd rax, dword [0x18018843c]
cmp eax, 6
ja case.default.0x180041fbe
mov rcx, rax
lea rax, [0x180000000]
mov edx, dword [rax + rcx*4 + 0x420f0]
add rdx, rax
jmp rdx
mov r8d, 0x796e
lea rcx, [rbp - 9]
mov rdx, rbx
call fcn.180040f20
movsd xmm0, qword [rbp - 9]
mov ecx, dword [rbp - 1]
jmp 0x180042092
mov r8d, 7
lea rcx, [rbp - 9]
mov rdx, rbx
call fcn.180040f20
movsd xmm0, qword [rbp - 9]
mov ecx, dword [rbp - 1]
jmp 0x180042092
mov r8d, 8
lea rcx, [rbp - 9]
mov rdx, rbx
call fcn.180040f20
movsd xmm0, qword [rbp - 9]
mov ecx, dword [rbp - 1]
jmp 0x180042092
mov r8d, 1
lea rcx, [rbp - 9]
mov rdx, rbx
call fcn.180040f20
movsd xmm0, qword [rbp - 9]
mov ecx, dword [rbp - 1]
jmp 0x180042092
mov r8d, 2
lea rcx, [rbp - 9]
mov rdx, rbx
call fcn.180040f20
movsd xmm0, qword [rbp - 9]
mov ecx, dword [rbp - 1]
jmp 0x180042092
mov r8d, 5
lea rcx, [rbp - 9]
mov rdx, rbx
call fcn.180040f20
movsd xmm0, qword [rbp - 9]
mov ecx, dword [rbp - 1]
jmp 0x180042092
mov r8d, 6
lea rcx, [rbp - 9]
mov rdx, rbx
call fcn.180040f20
movsd xmm0, qword [rbp - 9]
mov ecx, dword [rbp - 1]
jmp 0x180042092
mov ecx, dword [rbp - 0x11]
movsd xmm0, qword [rbp - 0x19]
mov rax, qword [0x1801885b0]
mov rdx, qword [rax]
test rdx, rdx
je 0x1800420c7
mov rdx, qword [rdx + 8]
test rdx, rdx
je 0x1800420c7
mov eax, dword [0x180188588]
mov rdx, qword [rax + rdx]
test rdx, rdx
je 0x1800420c7
movsd qword [rdx + 0x1a0], xmm0
mov dword [rdx + 0x1a8], ecx
mov rbx, qword [rsp + 0xd8]
lea r11, [rsp + 0xc0]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
mov rsp, r11
pop rbp
ret