Function at 0x1800069a0
Capabilities:
Log keystrokes via polling

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x78]
sub rsp, 0x150
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
movaps xmmword [rax - 0x88], xmm11
mov rax, qword [0x180056040]
xor rax, rsp
mov qword [rbp - 0x18], rax
call fcn.180001e20
test rax, rax
je 0x1800070fa
mov rcx, qword [rax + 0xa58]
test rcx, rcx
je 0x1800070fa
mov rcx, qword [rcx + 0x78]
test rcx, rcx
je 0x1800070fa
mov rax, qword [rcx + 0x1b8]
mov rax, qword [rax + 0x38]
mov rdi, qword [rax]
test rdi, rdi
je 0x1800070fa
mov rdi, qword [rdi + 0x30]
test rdi, rdi
je 0x1800070fa
mov rax, qword [rdi + 0x2a0]
mov qword [rbp - 0x60], rax
test rax, rax
je 0x1800070fa
mov rbx, qword [rdi + 0x340]
mov qword [rbp - 0x58], rbx
test rbx, rbx
je 0x1800070fa
cmp qword [rcx + 0x158], 0
je 0x1800070fa
mov rax, qword [rcx + 0x30]
test rax, rax
je 0x1800070fa
mov r12, qword [rax + 0x98]
test r12, r12
je 0x1800070fa
movsxd r13, dword [rax + 0xa0]
mov dword [rsp + 0x78], r13d
test r13d, r13d
je 0x1800070fa
mov rcx, rdi
call fcn.180004400
test rax, rax
je 0x1800070fa
xor r15b, r15b
mov ecx, dword [0x1800560bc]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
shr eax, 0xf
and al, 1
movss xmm7, dword [0x18004d9c0]
xorps xmm9, xmm9
cmp byte [0x180056c51], r15b
je 0x180006be4
test al, al
je 0x180006be4
mov r9, r12
mov r8d, r13d
mov rdx, rbx
mov rcx, rdi
call fcn.1800066b0
mov rbx, rax
test rax, rax
je 0x180006be4
mov rsi, qword [rax + 0x320]
test rsi, rsi
je 0x180006b6a
mov r8d, 9
lea rdx, [rsp + 0x50]
mov rcx, rsi
call fcn.1800028d0
mov r8, qword [rax]
lea rdx, [rbp - 0x50]
mov rcx, rsi
call fcn.180002570
xorps xmm0, xmm0
movups xmmword [rsp + 0x60], xmm0
lea r8, [rsp + 0x60]
lea rdx, [rbp - 0x50]
mov rcx, rdi
call fcn.180004a70
test al, al
je 0x180006b6a
movups xmm2, xmmword [rsp + 0x60]
movaps xmm1, xmm2
unpckhpd xmm1, xmm2
comisd xmm2, xmm9
jb 0x180006be4
jmp 0x180006b70
xorps xmm1, xmm1
xorps xmm2, xmm2
movsd xmm0, qword [0x180056cf8]
comisd xmm0, xmm2
jb 0x180006be4
comisd xmm1, xmm9
jb 0x180006be4
movsd xmm0, qword [0x180056d00]
comisd xmm0, xmm1
jb 0x180006be4
lea rdx, [rbp - 0x50]
mov rcx, qword [rdi + 0x350]
call fcn.180003990
lea rdx, [rbp - 0x80]
mov rcx, rbx
call fcn.180001f00
lea r8, [rbp - 0x50]
mov rdx, rbx
mov rcx, rdi
call fcn.1800040a0
movzx r15d, al
test al, al
je 0x180006be4
movaps xmm3, xmm7
divss xmm3, dword [0x1800560b4]
movss xmm2, dword [0x18004db34]
mov rdx, rbx
mov rcx, rdi
call fcn.1800062d0
xor r14d, r14d
movss xmm10, dword [0x18004d9f8]
cmp byte [0x180056c40], r14b
je 0x180006db5
lea rax, [rsp + 0x60]
test r15b, r15b
je 0x180006c10
movaps xmm0, xmmword [0x18004dc60]
jmp 0x180006c17
movaps xmm0, xmmword [0x18004dc50]
movups xmmword [rsp + 0x60], xmm0
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x60], xmm0
movsd xmm8, qword [0x180059888]
cvtpd2ps xmm8, xmm8
movsd xmm11, qword [0x180059890]
cvtpd2ps xmm11, xmm11
mov rax, qword [0x180056b58]
mov rax, qword [rax + 0x3430]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rax]
call fcn.18000f260
mov r10, rax
lea rcx, [rsp + 0x60]
call fcn.18000ca80
mov esi, eax
movaps xmm0, xmm8
movss xmm6, dword [0x18004da54]
addss xmm0, xmm6
movss dword [rsp + 0x70], xmm0
movss dword [rsp + 0x74], xmm11
movaps xmm0, xmm8
subss xmm0, xmm6
movss dword [rsp + 0x50], xmm0
movss dword [rsp + 0x54], xmm11
movss dword [rsp + 0x20], xmm7
mov r9d, eax
lea r8, [rsp + 0x70]
lea rdx, [rsp + 0x50]
mov rcx, r10
call fcn.18002c930
mov rax, qword [0x180056b58]
mov rax, qword [rax + 0x3430]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rax]
call fcn.18000f260
movss dword [rsp + 0x50], xmm8
movaps xmm0, xmm11
addss xmm0, xmm6
movss dword [rsp + 0x54], xmm0
movss dword [rsp + 0x70], xmm8
movaps xmm1, xmm11
subss xmm1, xmm6
movss dword [rsp + 0x74], xmm1
movss dword [rsp + 0x20], xmm7
mov r9d, esi
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x70]
mov rcx, rax
call fcn.18002c930
test r15b, r15b
je 0x180006db5
mov rax, qword [0x180056b58]
mov rax, qword [rax + 0x3430]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rax]
call fcn.18000f260
mov rbx, rax
movss dword [rsp + 0x50], xmm8
movss dword [rsp + 0x54], xmm11
test esi, 0xff000000
je 0x180006db5
mov dword [rsp + 0x20], 0x30
xor r9d, r9d
movaps xmm2, xmm10
lea rdx, [rsp + 0x50]
mov rcx, rax
call fcn.18002ba80
mov r8d, dword [rbx + 0x78]
dec r8d
mov dword [rbx + 0x78], r8d
movss dword [rsp + 0x28], xmm10
mov dword [rsp + 0x20], 1
mov r9d, esi
mov rdx, qword [rbx + 0x80]
mov rcx, rbx
call fcn.18002a5b0
mov dword [rbx + 0x78], r14d
cmp byte [0x180056c61], r14b
je 0x180006ebb
movaps xmm0, xmmword [0x18004dc40]
movaps xmmword [rsp + 0x60], xmm0
movsd xmm6, qword [0x180059888]
cvtpd2ps xmm6, xmm6
movsd xmm7, qword [0x180059890]
cvtpd2ps xmm7, xmm7
movss xmm0, dword [0x1800560c0]
movss xmm11, dword [0x18004d988]
mulss xmm0, xmm11
cvtps2pd xmm1, xmm0
mulsd xmm1, qword [0x18004d9c8]
cvtpd2ps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_tanf
movaps xmm8, xmm0
mulss xmm8, xmm7
mov rax, qword [0x180056b58]
mov rax, qword [rax + 0x3430]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rax]
call fcn.18000f260
mov rbx, rax
lea rcx, [rsp + 0x60]
call fcn.18000ca80
mov esi, eax
movss dword [rsp + 0x50], xmm6
movss dword [rsp + 0x54], xmm7
test eax, 0xff000000
je 0x180006ebb
xorps xmm3, xmm3
comiss xmm3, xmm8
jae 0x180006ebb
subss xmm8, xmm11
mov dword [rsp + 0x28], 0x3f
movss xmm0, dword [0x18004da64]
movss dword [rsp + 0x20], xmm0
movaps xmm2, xmm8
lea rdx, [rsp + 0x50]
mov rcx, rbx
call fcn.18002bf90
movss dword [rsp + 0x28], xmm10
mov dword [rsp + 0x20], 1
mov r9d, esi
mov r8d, dword [rbx + 0x78]
mov rdx, qword [rbx + 0x80]
mov rcx, rbx
call fcn.18002a5b0
mov dword [rbx + 0x78], r14d
test r13, r13
jle 0x1800070e2
movsd xmm10, qword [0x18004d9e8]
nop dword [rax]
mov rbx, qword [r12 + r14*8]
test rbx, rbx
je 0x1800070d6
call fcn.180003cd0
mov rcx, qword [rbx + 0x10]
test rcx, rcx
je 0x1800070d6
nop
cmp rcx, rax
je 0x180006f03
mov rcx, qword [rcx + 0x40]
test rcx, rcx
jne 0x180006ef0
jmp 0x1800070d6
mov rcx, qword [rbx + 0x2b8]
test rcx, rcx
je 0x1800070d6
cmp qword [rbp - 0x60], rcx
je 0x1800070d6
lea rdx, [rbp - 0x50]
call fcn.180004de0
lea rdx, [rbp - 0x38]
mov rcx, rax
call fcn.180001250
nop
xorps xmm0, xmm0
movups xmmword [rbp - 0x80], xmm0
movsd qword [rbp - 0x70], xmm9
lea r8, [rbp - 0x80]
mov rdx, rbx
mov rcx, rdi
call fcn.1800040a0
movzx r15d, al
mov rsi, qword [rbx + 0x320]
test rsi, rsi
je 0x180006fb7
mov r8d, 1
lea rdx, [rsp + 0x50]
mov rcx, rsi
call fcn.1800028d0
mov r8, qword [rax]
lea rdx, [rbp - 0x80]
mov rcx, rsi
call fcn.180002570
xorps xmm0, xmm0
movups xmmword [rsp + 0x60], xmm0
lea r8, [rsp + 0x60]
lea rdx, [rbp - 0x80]
mov rcx, rdi
call fcn.180004a70
test al, al
je 0x180006fb7
movups xmm8, xmmword [rsp + 0x60]
movaps xmm7, xmm8
unpckhpd xmm7, xmm8
movaps xmm6, xmm8
unpcklpd xmm6, xmm7
jmp 0x180006fc8
xorps xmm6, xmm6
xorps xmm0, xmm0
unpckhpd xmm0, xmm6
xorps xmm8, xmm8
movaps xmm7, xmm0
mov rsi, qword [rbx + 0x320]
test rsi, rsi
je 0x18000701b
mov r8d, 9
lea rdx, [rsp + 0x70]
mov rcx, rsi
call fcn.1800028d0
mov r8, qword [rax]
lea rdx, [rbp - 0x80]
mov rcx, rsi
call fcn.180002570
xorps xmm0, xmm0
movups xmmword [rsp + 0x60], xmm0
lea r8, [rsp + 0x60]
lea rdx, [rbp - 0x80]
mov rcx, rdi
call fcn.180004a70
test al, al
je 0x18000701b
movsd xmm0, qword [rsp + 0x68]
jmp 0x18000701f
movaps xmm0, xmm9
ucomisd xmm8, xmm9
jp 0x180007028
je 0x18000709f
ucomisd xmm7, xmm9
jp 0x180007031
je 0x18000709f
subsd xmm7, xmm0
movaps xmm8, xmm7
mulsd xmm8, xmm10
movaps xmm0, xmmword [0x18004dc50]
movups xmmword [rsp + 0x60], xmm0
test r15b, r15b
je 0x18000705f
mov dword [rsp + 0x60], 0x3da0a0a1
mov dword [rsp + 0x64], 0x3f800000
lea r8, [rsp + 0x60]
mov rdx, rbx
mov rcx, rdi
call fcn.180007150
movdqa xmmword [rbp - 0x80], xmm6
lea rax, [rsp + 0x60]
mov qword [rsp + 0x30], rax
movsd qword [rsp + 0x28], xmm7
movsd qword [rsp + 0x20], xmm8
lea r9, [rbp - 0x80]
mov r8, rbx
mov rdx, qword [rbp - 0x58]
mov rcx, rdi
call fcn.1800079a0
nop
mov rdx, qword [rbp - 0x20]
cmp rdx, 0xf
jbe 0x1800070d6
inc rdx
mov rcx, qword [rbp - 0x38]
cmp rdx, 0x1000
mov rax, rcx
jb 0x1800070d1
mov rcx, qword [rcx - 8]
sub rax, rcx
add rdx, 0x27
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180007145
call fcn.180045684
inc r14
cmp r14, r13
jl 0x180006ed0
cmp byte [0x180056cb8], 0
je 0x1800070fa
mov r8, r12
mov edx, dword [rsp + 0x78]
mov rcx, rdi
call fcn.180007c20
mov rcx, qword [rbp - 0x18]
xor rcx, rsp
call fcn.180045620
lea r11, [rsp + 0x150]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
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]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3