Function at 0x1800076a0
Capabilities:
Log keystrokes via polling

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x18], rdi
push rbp
lea rbp, [rsp - 0x80]
sub rsp, 0x180
movaps xmmword [rax - 0x18], xmm6
movaps xmmword [rax - 0x28], xmm7
movaps xmmword [rax - 0x38], xmm8
movaps xmmword [rax - 0x48], xmm9
movaps xmmword [rax - 0x58], xmm10
movaps xmmword [rax - 0x68], xmm11
movaps xmmword [rax - 0x78], xmm12
movaps xmmword [rax - 0x88], xmm13
movaps xmmword [rax - 0x98], xmm14
movaps xmmword [rax - 0xa8], xmm15
mov rax, qword [0x180012040]
xor rax, rsp
mov qword [rbp - 0x30], rax
mov rdi, rdx
inc dword [0x18001636c]
movsd xmm7, qword [0x180015a00]
movsd xmm1, qword [0x18000e970]
addsd xmm7, xmm1
movss xmm0, dword [0x180016364]
cvtps2pd xmm0, xmm0
addsd xmm7, xmm0
movsd xmm2, qword [0x180015a08]
movaps xmm8, xmm2
addsd xmm8, qword [0x18000e9a0]
movss xmm0, dword [0x180016374]
cvtps2pd xmm0, xmm0
addsd xmm8, xmm0
movsd xmm14, qword [0x18000e940]
cmp byte [0x180016378], 0
je 0x18000779c
movsd xmm7, qword [0x180015990]
addsd xmm7, qword [0x180015a40]
addsd xmm7, xmm1
movsd xmm8, qword [0x180015998]
mulsd xmm8, xmm14
addsd xmm8, qword [0x180015a48]
movsd xmm0, qword [rdx + 8]
mulsd xmm0, xmm14
subsd xmm8, xmm0
xorps xmm15, xmm15
cmp byte [0x180016368], 0
je 0x1800077db
movss xmm8, dword [0x180016360]
cvtps2pd xmm8, xmm8
mov byte [0x180016368], 0
mov dword [0x180016360], 0
movaps xmm0, xmm8
subsd xmm0, xmm2
cvtpd2ps xmm0, xmm0
movss dword [0x180016374], xmm0
movsd xmm9, qword [rdx]
movsd xmm6, qword [rdx + 8]
lea rcx, [rbp - 0x40]
call qword [sym.imp.USER32.dll_GetCursorPos]
movd xmm0, dword [rbp - 0x40]
cvtdq2ps xmm0, xmm0
cvtps2pd xmm3, xmm0
movd xmm1, dword [rbp - 0x3c]
cvtdq2ps xmm1, xmm1
cvtps2pd xmm2, xmm1
comisd xmm3, xmm7
jbe 0x1800078e2
comisd xmm2, xmm8
jbe 0x1800078e2
movaps xmm0, xmm9
addsd xmm0, xmm7
comisd xmm0, xmm3
jbe 0x1800078e2
movaps xmm0, xmm6
addsd xmm0, xmm8
comisd xmm0, xmm2
jbe 0x1800078e2
mov bl, 1
movaps xmm11, xmm8
movsd xmm13, qword [0x18000e968]
subsd xmm11, xmm13
movups xmm0, xmmword [0x1800159e0]
movdqa xmmword [rbp - 0x80], xmm0
cvtpd2ps xmm12, xmm6
cvtpd2ps xmm1, xmm9
xorps xmm9, xmm9
comiss xmm12, xmm15
jbe 0x1800078d7
cvtps2pd xmm6, xmm1
addsd xmm6, xmm7
movss xmm10, dword [0x18000e938]
movsd qword [rsp + 0x70], xmm6
xorps xmm0, xmm0
cvtss2sd xmm0, xmm9
addsd xmm0, xmm11
movsd qword [rsp + 0x78], xmm0
movsd qword [rbp - 0x70], xmm7
movsd qword [rbp - 0x68], xmm0
lea rax, [rbp - 0x80]
mov qword [rsp + 0x20], rax
movaps xmm3, xmm10
lea r8, [rsp + 0x70]
lea rdx, [rbp - 0x70]
mov rcx, qword [0x180016390]
call fcn.180004d80
addss xmm9, xmm10
comiss xmm12, xmm9
ja 0x180007882
movsd xmm6, qword [rdi + 8]
mov byte [0x180016370], bl
jmp 0x180007985
xor bl, bl
movaps xmm11, xmm8
movsd xmm13, qword [0x18000e968]
subsd xmm11, xmm13
movups xmm0, xmmword [0x180015900]
movdqa xmmword [rbp - 0x80], xmm0
cvtpd2ps xmm12, xmm6
cvtpd2ps xmm1, xmm9
xorps xmm9, xmm9
comiss xmm12, xmm15
jbe 0x180007985
cvtps2pd xmm6, xmm1
addsd xmm6, xmm7
movss xmm10, dword [0x18000e938]
nop word [rax + rax]
movsd qword [rbp - 0x70], xmm6
xorps xmm0, xmm0
cvtss2sd xmm0, xmm9
addsd xmm0, xmm11
movsd qword [rbp - 0x68], xmm0
movsd qword [rsp + 0x70], xmm7
movsd qword [rsp + 0x78], xmm0
lea rax, [rbp - 0x80]
mov qword [rsp + 0x20], rax
movaps xmm3, xmm10
lea r8, [rbp - 0x70]
lea rdx, [rsp + 0x70]
mov rcx, qword [0x180016390]
call fcn.180004d80
addss xmm9, xmm10
comiss xmm12, xmm9
ja 0x180007930
movsd xmm6, qword [rdi + 8]
cmp byte [0x180016378], 0
jne 0x1800079b4
movaps xmm1, xmm6
addsd xmm1, qword [0x18000e9a0]
movss xmm0, dword [0x180016374]
cvtps2pd xmm0, xmm0
addsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
movss dword [0x180016374], xmm0
movsd xmm1, qword [rdi]
mulsd xmm1, xmm14
addsd xmm1, xmm7
mulsd xmm6, xmm14
movaps xmm0, xmm8
subsd xmm0, xmm13
addsd xmm6, xmm0
mov eax, dword [0x18001636c]
movaps xmm0, xmmword [0x18000f230]
cmp dword [0x1800158d0], eax
jne 0x180007b1c
movaps xmmword [rbp - 0x80], xmm0
movsd qword [rsp + 0x70], xmm1
movsd qword [rsp + 0x78], xmm6
addsd xmm1, qword [0x18000e948]
movsd qword [rbp - 0x70], xmm1
addsd xmm6, qword [0x18000e948]
movsd qword [rbp - 0x68], xmm6
movaps xmm0, xmmword [0x18000f250]
movups xmmword [rbp - 0x50], xmm0
lea rcx, str._Press_Key_
call fcn.180005690
mov rcx, 0xffffffffffffffff
inc rcx
cmp word [rax + rcx*2], 0
jne 0x180007a34
inc ecx
mov qword [rbp - 0x40], rax
mov dword [rbp - 0x38], ecx
mov dword [rbp - 0x34], ecx
lea rax, [0x1800158c0]
mov qword [rsp + 0x60], rax
mov byte [rsp + 0x48], 1
lea rax, [rbp - 0x70]
mov qword [rsp + 0x40], rax
lea rax, [0x180016238]
mov qword [rsp + 0x38], rax
movss dword [rsp + 0x30], xmm15
lea rax, [rbp - 0x80]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x50]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x70]
lea r8, [rbp - 0x40]
mov rdx, qword [0x1800163a0]
mov rcx, qword [0x180016390]
call fcn.1800050f0
cmp byte [0x180016350], 0
jne 0x180007adb
cmp byte [0x180016351], 0
jne 0x180007adb
cmp byte [0x180016352], 0
jne 0x180007adb
cmp byte [0x180016353], 0
jne 0x180007adb
cmp byte [0x180016354], 0
jne 0x180007adb
mov byte [0x180016369], 0
jmp 0x180007ae8
cmp byte [0x180016369], 0
jne 0x180007c43
xor ebx, ebx
nop word [rax + rax]
mov ecx, ebx
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x180007b0d
mov dword [0x1800120b0], ebx
mov dword [0x1800158d0], 0xffffffff
inc ebx
cmp ebx, 0xff
jl 0x180007af0
jmp 0x180007c43
movaps xmmword [rbp - 0x50], xmm0
unpcklpd xmm1, xmm6
movdqa xmmword [rbp - 0x80], xmm1
movzx edx, byte [0x1800120b0]
lea rcx, [rbp - 0x70]
call fcn.180007480
nop
cmp qword [rax + 0x18], 0xf
jbe 0x180007b44
mov rax, qword [rax]
lea r8, [rbp - 0x50]
lea rdx, [rbp - 0x80]
mov rcx, rax
call fcn.180005b60
nop
mov rdx, qword [rbp - 0x58]
cmp rdx, 0xf
jbe 0x180007b93
inc rdx
mov rcx, qword [rbp - 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180007b8e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180007b8e
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18000ba98
test bl, bl
je 0x180007bfe
movsxd rdx, dword [0x18001636c]
cmp byte [0x180016350], 0
je 0x180007be4
lea rax, [0x180016250]
cmp byte [rdx + rax], 0
jne 0x180007c43
mov byte [rdx + rax], 1
mov byte [0x180016369], 1
mov dword [0x1800158d0], edx
xor ebx, ebx
nop dword [rax + rax]
mov ecx, ebx
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
inc ebx
cmp ebx, 0xff
jl 0x180007bd0
jmp 0x180007c43
cmp rdx, 0x100
jae 0x180007ce2
lea rax, [0x180016250]
mov byte [rdx + rax], 0
jmp 0x180007c43
movsxd rcx, dword [0x18001636c]
cmp byte [0x180016350], 0
je 0x180007c2b
lea rax, [0x180016250]
cmp byte [rcx + rax], 0
jne 0x180007c43
mov byte [rcx + rax], 1
mov dword [0x1800158d0], 0xffffffff
jmp 0x180007c43
cmp rcx, 0x100
jae 0x180007ce2
lea rax, [0x180016250]
mov byte [rcx + rax], 0
mov byte [0x180016378], 0
movsd qword [0x180015a40], xmm7
movsd qword [0x180015a48], xmm8
movups xmm0, xmmword [rdi]
movups xmmword [0x180015990], xmm0
xorps xmm2, xmm2
movsd xmm0, qword [0x180015940]
ucomisd xmm0, xmm2
jp 0x180007c89
jne 0x180007c89
movsd qword [0x180015940], xmm7
movsd qword [0x180015948], xmm8
mov rcx, qword [rbp - 0x30]
xor rcx, rsp
call fcn.18000ba70
lea r11, [rsp + 0x180]
mov rbx, qword [r11 + 0x10]
mov rdi, qword [r11 + 0x20]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
movaps xmm13, xmmword [r11 - 0x80]
movaps xmm14, xmmword [r11 - 0x90]
movaps xmm15, xmmword [r11 - 0xa0]
mov rsp, r11
pop rbp
ret
call fcn.18000be78
int3