Function at 0x140008b80
Capabilities:
Log keystrokes via polling

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x138]
sub rsp, 0x210
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
movaps xmmword [rax - 0x98], xmm12
movaps xmmword [rax - 0xa8], xmm13
movaps xmmword [rax - 0xb8], xmm14
movaps xmmword [rax - 0xc8], xmm15
mov rax, qword [0x14008e040]
xor rax, rsp
mov qword [rbp + 0x68], rax
mov qword [rbp + 0x20], rcx
call fcn.140008010
mov r15, rax
mov qword [rsp + 0x68], rax
mov rdx, qword [0x1401ad210]
add rdx, 0x16d4f48
call fcn.140008740
mov qword [0x1401ad220], rax
mov qword [rsp + 0x40], rax
mov rdx, qword [0x1401ad210]
add rdx, 0x182cea0
mov ecx, dword [0x1401ade60]
mov dword [rsp + 0x78], ecx
mov qword [rbp - 0x80], rdx
lea rax, [rbp - 0x60]
mov qword [rbp - 0x78], rax
mov qword [rbp - 0x70], 0x40
xor r13d, r13d
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x30], r13
mov dword [rsp + 0x28], 0x20
lea rax, [rsp + 0x78]
mov qword [rsp + 0x20], rax
lea r9d, [r13 + 0x20]
lea r8, [rsp + 0x78]
mov edx, 0x22199c
mov rcx, qword [0x1401ade58]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
call fcn.140059000
mov r12, rax
mov qword [rsp + 0x70], rax
lea rdx, [rbp + 0x28]
lea rcx, [rsp + 0x40]
call fcn.1400590a0
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0x78], xmm0
lea rsi, [rbp + 0x28]
mov r14, qword [rbp + 0x28]
cmp qword [rbp + 0x40], 0xf
cmova rsi, r14
movabs rbx, 0x7fffffffffffffff
mov rdi, qword [rbp + 0x38]
cmp rdi, rbx
ja 0x14000969f
cmp rdi, 0xf
ja 0x140008cf4
mov qword [rbp - 0x78], rdi
mov qword [rbp - 0x70], 0xf
movups xmm0, xmmword [rsi]
movups xmmword [rsp + 0x78], xmm0
jmp 0x140008d89
mov rax, rdi
or rax, 0xf
cmp rax, rbx
jbe 0x140008d2c
movabs rax, 0x8000000000000000
add rax, 0x27
mov rcx, rax
call fcn.140078220
mov rcx, rax
test rax, rax
je 0x140008d57
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x140008d6d
mov rbx, rax
mov ecx, 0x16
cmp rax, rcx
cmovb rbx, rcx
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x140008d5e
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x1400096a5
jmp 0x140008d0e
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
test rcx, rcx
je 0x140008d6a
call fcn.140078220
jmp 0x140008d6d
mov rax, r13
mov qword [rsp + 0x78], rax
mov qword [rbp - 0x78], rdi
mov qword [rbp - 0x70], rbx
lea r8, [rdi + 1]
mov rdx, rsi
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
lea rcx, [rsp + 0x78]
call fcn.1400592d0
mov r13d, eax
mov rdi, qword [rsp + 0x40]
lea r8, [rdi + 0x1224]
lea rdx, [rbp + 0x48]
call fcn.140008860
lea rdx, [rdi + 0x3bf]
call fcn.1400087d0
mov esi, eax
mov dword [rsp + 0x50], eax
lea r8, [rdi + 0x114c]
lea rdx, [rbp + 0x18]
call fcn.140059860
lea rdx, [rdi + 0x12b0]
call fcn.140008740
mov ecx, dword [0x1401ade60]
mov dword [rsp + 0x78], ecx
lea rcx, [rax + 0x1570]
mov qword [rbp - 0x80], rcx
lea rax, [rbp - 0x20]
mov qword [rbp - 0x78], rax
mov qword [rbp - 0x70], 1
xor eax, eax
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], 0x20
lea rax, [rsp + 0x78]
mov qword [rsp + 0x20], rax
mov r9d, 0x20
lea r8, [rsp + 0x78]
mov edx, 0x22199c
mov rcx, qword [0x1401ade58]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
lea rdx, [rdi + 0x1420]
call fcn.1400087d0
mov dword [rsp + 0x54], eax
lea rdx, [rdi + 0x3c8]
call fcn.1400087d0
mov dword [rsp + 0x48], eax
mov edx, r13d
sub edx, 1
je 0x140008e9d
sub edx, 1
je 0x140008e94
sub edx, 1
je 0x140008e8b
sub edx, 1
je 0x140008e82
cmp edx, 1
jne 0x1400095fc
cmp byte [0x1401ad140], 0
jmp 0x140008ea4
cmp byte [0x1401ad160], 0
jmp 0x140008ea4
cmp byte [0x1401ad1a0], 0
jmp 0x140008ea4
cmp byte [0x1401ad180], 0
jmp 0x140008ea4
cmp byte [0x1401ad120], 0
je 0x1400095fc
mov r14d, 1
xorps xmm6, xmm6
cmp byte [0x1401ad2cc], 0
jne 0x140009315
mov r8d, r14d
mov rdx, r12
mov rcx, r15
call fcn.1400080b0
mov rcx, qword [0x1401ad220]
mov qword [rsp + 0x20], rcx
mov r9d, r14d
mov r8, rax
mov rdx, r15
lea rcx, [rsp + 0x60]
call fcn.1400081e0
mov rbx, qword [rsp + 0x60]
lea rdx, [rbx + 0x32c]
call fcn.1400087d0
dec eax
cmp eax, 0x63
ja 0x140009315
lea rdx, [rbx + 0x3bf]
call fcn.1400087d0
cmp eax, esi
je 0x140009315
lea rdx, [rbx + 0x1640]
call fcn.140008740
mov ecx, dword [0x1401ad228]
dec ecx
mov edx, 1
shl edx, cl
movsxd rcx, edx
and rcx, rax
mov qword [rsp + 0x58], rcx
lea rdx, [rbx + 0x310]
call fcn.140008740
lea rdx, [rax + 0x1e0]
call fcn.140008740
lea r8, [rbx + 0x1224]
lea rdx, [rbp + 0x58]
call fcn.140008860
mov edx, r13d
call fcn.140009720
movss dword [rsp + 0x4c], xmm0
movaps xmm8, xmm6
movaps xmm10, xmm6
movaps xmm9, xmm6
lea rdx, [rbx + 0x310]
call fcn.140008740
lea rdx, [rax + 0x1e0]
call fcn.140008740
lea r8, [rax + 0xc0]
lea rdx, [rsp + 0x78]
call fcn.140008860
lea rdx, [rbx + 0x310]
call fcn.140008740
lea rdx, [rax + 0x1e0]
call fcn.140008740
lea r8, [rax + 0xa0]
lea rdx, [rbp + 8]
call fcn.140008860
lea rdx, [rbx + 0x310]
call fcn.140008740
lea rdx, [rax + 0x1e0]
call fcn.140008740
lea r8, [rax + 0x80]
lea rdx, [rbp - 8]
call fcn.140008860
lea rdx, [rbx + 0x310]
call fcn.140008740
lea rdx, [rax + 0x1e0]
call fcn.140008740
mov r8, rax
lea rdx, [rbp - 0x18]
call fcn.140008860
mov ecx, r13d
sub ecx, 1
je 0x140009062
sub ecx, 1
je 0x14000905a
sub ecx, 1
je 0x140009052
sub ecx, 1
je 0x14000904a
cmp ecx, 1
jne 0x1400090cb
mov ecx, dword [0x1401ad150]
jmp 0x140009068
mov ecx, dword [0x1401ad170]
jmp 0x140009068
mov ecx, dword [0x1401ad1b0]
jmp 0x140009068
mov ecx, dword [0x1401ad190]
jmp 0x140009068
mov ecx, dword [0x1401ad130]
test ecx, ecx
je 0x1400090b7
sub ecx, 1
je 0x1400090a3
sub ecx, 1
je 0x14000908f
cmp ecx, 1
jne 0x1400090cb
movss xmm8, dword [rbp - 0x18]
movss xmm10, dword [rbp - 0x14]
movss xmm9, dword [rbp - 0x10]
jmp 0x1400090cb
movss xmm8, dword [rbp - 8]
movss xmm10, dword [rbp - 4]
movss xmm9, dword [rbp]
jmp 0x1400090cb
movss xmm8, dword [rbp + 8]
movss xmm10, dword [rbp + 0xc]
movss xmm9, dword [rbp + 0x10]
jmp 0x1400090cb
movss xmm8, dword [rsp + 0x78]
movss xmm10, dword [rsp + 0x7c]
movss xmm9, dword [rbp - 0x80]
mov edx, r13d
call fcn.140009770
movzx r12d, al
mov edx, r13d
call fcn.1400096b0
mov r15d, eax
mov edx, r13d
call fcn.1400097e0
movzx ebx, al
mov edx, r13d
call fcn.140009850
movss dword [rsp + 0x40], xmm0
mov edx, r13d
call fcn.1400098a0
movd xmm15, eax
cvtdq2ps xmm15, xmm15
mov edx, r13d
call fcn.1400098e0
mov esi, eax
movaps xmm11, xmm8
movss xmm13, dword [rbp + 0x48]
subss xmm11, xmm13
movaps xmm12, xmm10
movss xmm14, dword [rbp + 0x4c]
subss xmm12, xmm14
movaps xmm7, xmm9
cmp dword [rsp + 0x48], 0x10083
jne 0x14000914c
subss xmm7, dword [0x140083050]
jmp 0x140009154
subss xmm7, dword [0x140083058]
subss xmm7, dword [rbp + 0x50]
xorps xmm0, xmm0
cvtss2sd xmm0, xmm11
movsd xmm1, qword [0x140082fa0]
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movaps xmm6, xmm0
xorps xmm0, xmm0
cvtss2sd xmm0, xmm12
movsd xmm1, qword [0x140082fa0]
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movaps xmm1, xmm0
addsd xmm1, xmm6
xorps xmm0, xmm0
ucomisd xmm0, xmm1
ja 0x14000919f
xorps xmm0, xmm0
sqrtsd xmm0, xmm1
jmp 0x1400091a7
movaps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
xorps xmm6, xmm6
cvtsd2ss xmm6, xmm0
movaps xmm1, xmm11
movaps xmm0, xmm12
call sub.api_ms_win_crt_math_l1_1_0.dll_atan2f
mulss xmm0, dword [0x140083084]
xorps xmm2, xmm2
cvtss2sd xmm2, xmm0
divsd xmm2, qword [0x140082fb8]
movss xmm1, dword [rbp + 0x1c]
cvtps2pd xmm1, xmm1
subsd xmm2, xmm1
cvtpd2ps xmm12, xmm2
divss xmm7, xmm6
movaps xmm0, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_atanf
xorps xmm0, xmmword [0x1400833c0]
mulss xmm0, dword [0x140083084]
xorps xmm1, xmm1
cvtss2sd xmm1, xmm0
divsd xmm1, qword [0x140082fb8]
movss xmm0, dword [rbp + 0x18]
cvtps2pd xmm0, xmm0
subsd xmm1, xmm0
cvtpd2ps xmm11, xmm1
movss xmm0, dword [rbp + 0x58]
subss xmm0, xmm13
movss xmm7, dword [rbp + 0x5c]
subss xmm7, xmm14
cvtps2pd xmm0, xmm0
movsd xmm13, qword [0x140082fa0]
movaps xmm1, xmm13
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movaps xmm6, xmm0
cvtps2pd xmm0, xmm7
movaps xmm1, xmm13
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movaps xmm1, xmm0
addsd xmm1, xmm6
xorps xmm0, xmm0
ucomisd xmm0, xmm1
ja 0x14000926f
xorps xmm0, xmm0
sqrtsd xmm0, xmm1
jmp 0x140009277
movaps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
xorps xmm7, xmm7
cvtsd2ss xmm7, xmm0
cvtps2pd xmm0, xmm11
movaps xmm1, xmm13
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movaps xmm6, xmm0
cvtps2pd xmm0, xmm12
movaps xmm1, xmm13
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
addsd xmm6, xmm0
xorps xmm1, xmm1
ucomisd xmm1, xmm6
ja 0x1400092b1
xorps xmm0, xmm0
sqrtsd xmm0, xmm6
jmp 0x1400092b9
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
xorps xmm2, xmm2
cvtsd2ss xmm2, xmm0
movaps xmm1, xmm7
mulss xmm1, dword [0x140083108]
movaps xmm0, xmm7
movss xmm3, dword [rsp + 0x4c]
addss xmm0, xmm3
divss xmm1, xmm0
subss xmm2, xmm1
mulss xmm2, dword [0x140083010]
comiss xmm3, xmm2
jb 0x1400092f9
comiss xmm15, xmm7
jb 0x1400092f9
cmp byte [rbp - 0x20], 0
jne 0x140009327
mov r15, qword [rbp + 0x20]
mov word [r15 + 0xc], 0
xorps xmm6, xmm6
mov r15, qword [rsp + 0x68]
mov esi, dword [rsp + 0x50]
mov r12, qword [rsp + 0x70]
inc r14d
cmp r14d, 0x40
jl 0x140008eb3
jmp 0x1400095f8
mov rax, qword [rbp + 0x20]
mov word [rax + 0xc], 0x101
movaps xmm3, xmm8
mulss xmm3, dword [rbp - 0x60]
movaps xmm0, xmm10
mulss xmm0, dword [rbp - 0x5c]
addss xmm3, xmm0
movaps xmm1, xmm9
mulss xmm1, dword [rbp - 0x58]
addss xmm3, xmm1
addss xmm3, dword [rbp - 0x54]
movss dword [rax], xmm3
movaps xmm4, xmm8
mulss xmm4, dword [rbp - 0x50]
movaps xmm0, xmm10
mulss xmm0, dword [rbp - 0x4c]
addss xmm4, xmm0
movaps xmm1, xmm9
mulss xmm1, dword [rbp - 0x48]
addss xmm4, xmm1
addss xmm4, dword [rbp - 0x44]
movss dword [rax + 4], xmm4
mulss xmm8, dword [rbp - 0x30]
mulss xmm10, dword [rbp - 0x2c]
addss xmm8, xmm10
mulss xmm9, dword [rbp - 0x28]
addss xmm8, xmm9
addss xmm8, dword [rbp - 0x24]
movss xmm0, dword [0x140082e98]
comiss xmm0, xmm8
ja 0x140009421
movss xmm0, dword [0x140082f24]
divss xmm0, xmm8
mulss xmm3, xmm0
mulss xmm4, xmm0
xorps xmm1, xmm1
cvtsi2ss xmm1, dword [0x1401adeb4]
movss xmm2, dword [0x140082ed8]
mulss xmm3, xmm2
mulss xmm3, xmm1
addss xmm3, xmm2
mulss xmm1, xmm2
addss xmm3, xmm1
xorps xmm0, xmm0
cvtsi2ss xmm0, dword [0x1401adeb8]
movaps xmm1, xmm0
mulss xmm1, xmm2
mulss xmm4, xmm2
mulss xmm4, xmm0
addss xmm4, xmm2
subss xmm1, xmm4
movss dword [rax], xmm3
movss dword [rax + 4], xmm1
mov ecx, r15d
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x1400095f8
movss xmm0, dword [rbp + 0x18]
addss xmm11, xmm0
movss xmm3, dword [rbp + 0x1c]
addss xmm12, xmm3
cmp byte [0x1401ad1fd], 0
je 0x140009564
lea eax, [r13 - 1]
test eax, 0xfffffffb
jne 0x140009564
xor r14d, r14d
cmp dword [rsp + 0x54], r14d
je 0x14000954d
add rdi, 0x1740
mov qword [rsp + 0x78], r14
mov qword [rbp - 0x80], r14
mov eax, dword [0x1401ade60]
mov dword [rbp - 0x60], eax
mov qword [rbp - 0x58], rdi
lea rax, [rsp + 0x78]
mov qword [rbp - 0x50], rax
mov qword [rbp - 0x48], 0x10
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x30], r14
mov dword [rsp + 0x28], 0x20
lea rax, [rbp - 0x60]
mov qword [rsp + 0x20], rax
lea r9d, [r14 + 0x20]
lea r8, [rbp - 0x60]
mov edx, 0x22199c
mov rcx, qword [0x1401ade58]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov rax, qword [rsp + 0x78]
dec rax
lea rcx, [rax + rax*2]
mov rax, qword [rbp - 0x80]
lea r8, [rax + rcx*4]
lea rdx, [rbp + 0x20]
call fcn.140059860
movss xmm0, dword [rbp + 0x24]
movss xmm1, dword [rbp + 0x20]
xorps xmm2, xmm2
ucomiss xmm1, xmm2
jp 0x140009510
jne 0x140009510
ucomiss xmm0, xmm2
jp 0x140009510
je 0x1400095f8
mulss xmm1, dword [0x1401ad200]
subss xmm11, xmm1
mulss xmm0, dword [0x1401ad204]
subss xmm12, xmm0
movss dword [0x1401ade68], xmm1
movss dword [0x1401ade6c], xmm0
mov dword [0x1401ade70], r14d
movss xmm3, dword [rbp + 0x1c]
movss xmm0, dword [rbp + 0x18]
jmp 0x140009567
mov qword [0x1401ade68], 0
mov dword [0x1401ade70], 0
jmp 0x140009567
xor r14d, r14d
movss xmm1, dword [rsp + 0x40]
mulss xmm1, dword [0x140083080]
movss dword [rsp + 0x28], xmm1
movss dword [rsp + 0x20], xmm0
movaps xmm2, xmm11
movaps xmm1, xmm12
lea rcx, [rsp + 0x40]
call fcn.140077f40
test r12b, r12b
je 0x1400095a0
cmp qword [rsp + 0x58], 0
je 0x1400095f8
mov qword [rsp + 0x20], r14
xor r9d, r9d
cvttss2si r8, dword [rsp + 0x44]
cvttss2si rdx, dword [rsp + 0x40]
lea ecx, [r9 + 1]
call qword [sym.imp.USER32.dll_mouse_event]
test bl, bl
je 0x1400095f8
mov qword [rsp + 0x20], r14
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea ecx, [rdx + 2]
call qword [sym.imp.USER32.dll_mouse_event]
mov qword [rsp + 0x20], r14
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea ecx, [rdx + 4]
call qword [sym.imp.USER32.dll_mouse_event]
mov ecx, esi
call qword [sym.imp.KERNEL32.dll_Sleep]
mov r14, qword [rbp + 0x28]
mov rax, qword [rbp + 0x40]
cmp rax, 0xf
jbe 0x14000963a
lea rdx, [rax + 1]
mov rax, r14
cmp rdx, 0x1000
jb 0x140009632
add rdx, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140009632
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, r14
call fcn.1400784a4
mov rcx, qword [rbp + 0x68]
xor rcx, rsp
call fcn.1400780e0
lea r11, [rsp + 0x210]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
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 r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.1400012d0
nop
call fcn.140001230
int3