Function at 0x180049f00
Capabilities:
Log keystrokes via polling

Disassembly:
mov r11, rsp
mov qword [r11 + 0x20], rbx
push rbp
lea rbp, [r11 - 0x68]
sub rsp, 0x160
movaps xmmword [r11 - 0x28], xmm7
mov rax, qword [0x18010d3c0]
xor rax, rsp
mov qword [rbp - 0x30], rax
cmp byte [0x18014989e], 0
mov rbx, rcx
movss xmm7, dword [0x180112480]
movss dword [rsp + 0x40], xmm7
je 0x18004a8a3
mov qword [r11 + 8], rsi
mov qword [r11 + 0x10], rdi
movaps xmmword [r11 - 0x18], xmm6
movaps xmmword [r11 - 0x38], xmm8
movaps xmmword [r11 - 0x48], xmm9
movaps xmmword [r11 - 0x58], xmm10
movaps xmmword [r11 - 0x68], xmm11
movaps xmmword [r11 - 0x78], xmm12
movaps xmmword [r11 - 0x88], xmm15
call fcn.18001db20
lea rcx, [rsp + 0x48]
mov esi, eax
call fcn.180046e80
mov r8d, 1
lea rcx, [rsp + 0x48]
mov edx, esi
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x48], xmm0
movsd xmm1, qword [rax + 0x10]
movsd qword [rbp - 0x38], xmm1
call fcn.18001b7d0
lea rcx, [rbp - 0x60]
xor r8d, r8d
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x60], xmm0
movsd xmm1, qword [rax + 0x10]
lea rax, [rbp - 0x48]
sub rcx, rax
movsd qword [rbp - 0x50], xmm1
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
lea rcx, [rsp + 0x48]
mov rdi, rdx
mov edx, esi
sar rdi, 2
mov rax, rdi
shr rax, 0x3f
add rdi, rax
call fcn.18001b7d0
movsd xmm0, qword [rax + 0x10]
movups xmm1, xmmword [rax]
movsd qword [rsp + 0x58], xmm0
test rbx, rbx
je 0x18004a433
cmp rbx, 1
jne 0x18004a855
movss xmm3, dword [rsp + 0x58]
movaps xmm2, xmm1
mov dword [rsp + 0x30], ebx
mov ecx, esi
shufps xmm2, xmm1, 0xaa
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], ebx
call fcn.18001bfe0
cmp byte [0x1801498b4], 0
je 0x18004a04f
cvttss2si ebx, dword [0x1801123b4]
call fcn.18001db20
mov edx, ebx
mov ecx, eax
call fcn.180047660
cmp byte [0x1801498b2], 0
je 0x18004a07a
mov ebx, dword [0x18014eb38]
add ebx, 5
mov dword [0x18014eb38], ebx
call fcn.18001db20
movd xmm1, ebx
mov ecx, eax
cvtdq2ps xmm1, xmm1
call fcn.18001c0c0
mov ecx, 0x53
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
movss xmm6, dword [0x1801001f0]
movss xmm15, dword [0x1800fff4c]
test ax, ax
jne 0x18004a0ad
mov edx, 0x10c
call fcn.1800487a0
test eax, eax
je 0x18004a267
call qword [sym.imp.USER32.dll_GetForegroundWindow]
test rax, rax
je 0x18004a0c8
mov ecx, 0xa0
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x18004a0d6
mov edx, 0x15
call fcn.1800487a0
test eax, eax
je 0x18004a0eb
xorps xmm0, xmm0
cvtsi2sd xmm0, rdi
subsd xmm0, qword [0x180100040]
cvttsd2si rdi, xmm0
call qword [sym.imp.USER32.dll_GetForegroundWindow]
test rax, rax
je 0x18004a106
mov ecx, 0x20
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x18004a114
mov edx, 0x16
call fcn.1800487a0
test eax, eax
je 0x18004a129
xorps xmm0, xmm0
cvtsi2sd xmm0, rdi
addsd xmm0, qword [0x180100008]
cvttsd2si rdi, xmm0
xorps xmm0, xmm0
lea rcx, [rsp + 0x48]
cvtsi2ss xmm0, rdi
xor edx, edx
xorps xmm1, xmm1
subss xmm0, xmm7
cvttss2si rax, xmm0
cvtsi2ss xmm1, rax
subss xmm1, dword [0x1800fffbc]
cvttss2si rdi, xmm1
call fcn.180046ed0
movsd xmm1, qword [rax + 0x10]
xorps xmm12, xmm12
mulss xmm1, xmm15
xorps xmm8, xmm8
movups xmm0, xmmword [rax]
cvtss2sd xmm8, xmm1
mulss xmm0, xmm15
cvtss2sd xmm12, xmm0
movaps xmm0, xmm12
call sub.api_ms_win_crt_math_l1_1_0.dll_cos
xorps xmm1, xmm1
lea rcx, [rsp + 0x60]
cvtsd2ss xmm1, xmm0
mov r8d, 1
mov edx, esi
xorps xmm11, xmm11
andps xmm1, xmm6
cvtps2pd xmm6, xmm1
cvtsi2ss xmm11, rdi
call fcn.18001b7d0
movups xmm7, xmmword [rax]
movsd xmm10, qword [rax + 0x10]
movaps xmm0, xmm8
call sub.api_ms_win_crt_math_l1_1_0.dll_sin
xorps xmm2, xmm2
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm0
movaps xmm0, xmm8
xorps xmm1, xmmword [0x180100220]
cvtss2sd xmm2, xmm1
mulsd xmm2, xmm6
cvtpd2ps xmm9, xmm2
mulss xmm9, xmm11
addss xmm9, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_cos
xorps xmm1, xmm1
shufps xmm7, xmm7, 0xaa
cvtsd2ss xmm1, xmm0
movaps xmm0, xmm12
cvtps2pd xmm2, xmm1
mulsd xmm2, xmm6
cvtpd2ps xmm6, xmm2
mulss xmm6, xmm11
addss xmm6, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_sin
xorps xmm3, xmm3
mov dword [rsp + 0x30], 1
cvtsd2ss xmm3, xmm0
mov dword [rsp + 0x28], 1
mov ecx, esi
mov dword [rsp + 0x20], 1
movaps xmm2, xmm6
movsd qword [rsp + 0x70], xmm10
mulss xmm3, xmm11
movaps xmm1, xmm9
addss xmm3, xmm10
call fcn.18001bfe0
movss xmm6, dword [0x1801001f0]
movss xmm7, dword [rsp + 0x40]
mov ecx, 0x57
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jne 0x18004a289
mov edx, 0x10d
call fcn.1800487a0
test eax, eax
je 0x18004a855
call qword [sym.imp.USER32.dll_GetForegroundWindow]
test rax, rax
je 0x18004a2a4
mov ecx, 0xa0
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x18004a2b2
mov edx, 0x15
call fcn.1800487a0
test eax, eax
je 0x18004a2c7
xorps xmm0, xmm0
cvtsi2sd xmm0, rdi
addsd xmm0, qword [0x180100040]
cvttsd2si rdi, xmm0
call qword [sym.imp.USER32.dll_GetForegroundWindow]
test rax, rax
je 0x18004a2e2
mov ecx, 0x20
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x18004a2f0
mov edx, 0x16
call fcn.1800487a0
test eax, eax
je 0x18004a305
xorps xmm0, xmm0
cvtsi2sd xmm0, rdi
subsd xmm0, qword [0x180100008]
cvttsd2si rdi, xmm0
xor edx, edx
lea rcx, [rsp + 0x60]
call fcn.180046ed0
xorps xmm12, xmm12
xorps xmm10, xmm10
movups xmm0, xmmword [rax]
movsd xmm1, qword [rax + 0x10]
mulss xmm0, xmm15
mulss xmm1, xmm15
cvtss2sd xmm12, xmm0
cvtss2sd xmm10, xmm1
movaps xmm0, xmm12
call sub.api_ms_win_crt_math_l1_1_0.dll_cos
xorps xmm1, xmm1
lea rcx, [rsp + 0x48]
cvtsd2ss xmm1, xmm0
mov r8d, 1
mov edx, esi
xorps xmm0, xmm0
xorps xmm11, xmm11
andps xmm1, xmm6
cvtps2pd xmm6, xmm1
xorps xmm1, xmm1
cvtsi2ss xmm0, rdi
addss xmm0, xmm7
cvttss2si rax, xmm0
cvtsi2ss xmm1, rax
addss xmm1, dword [0x1800ffff8]
cvttss2si rax, xmm1
cvtsi2ss xmm11, rax
call fcn.18001b7d0
movups xmm7, xmmword [rax]
movsd xmm9, qword [rax + 0x10]
movaps xmm0, xmm10
call sub.api_ms_win_crt_math_l1_1_0.dll_sin
xorps xmm2, xmm2
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm0
movaps xmm0, xmm10
xorps xmm1, xmmword [0x180100220]
cvtss2sd xmm2, xmm1
mulsd xmm2, xmm6
cvtpd2ps xmm8, xmm2
mulss xmm8, xmm11
addss xmm8, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_cos
xorps xmm1, xmm1
shufps xmm7, xmm7, 0xaa
cvtsd2ss xmm1, xmm0
movaps xmm0, xmm12
cvtps2pd xmm2, xmm1
mulsd xmm2, xmm6
cvtpd2ps xmm6, xmm2
mulss xmm6, xmm11
addss xmm6, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_sin
xorps xmm3, xmm3
mov dword [rsp + 0x30], 1
cvtsd2ss xmm3, xmm0
mov dword [rsp + 0x28], 1
mov ecx, esi
mov dword [rsp + 0x20], 1
movaps xmm2, xmm6
movaps xmm1, xmm8
mulss xmm3, xmm11
addss xmm3, xmm9
call fcn.18001bfe0
jmp 0x18004a855
movss xmm3, dword [rsp + 0x58]
movaps xmm2, xmm1
mov qword [rsp + 0x180], r14
mov ecx, esi
xor r14d, r14d
shufps xmm2, xmm1, 0xaa
mov dword [rsp + 0x30], r14d
mov dword [rsp + 0x28], r14d
mov dword [rsp + 0x20], r14d
call fcn.18001bfe0
cmp byte [0x1801498b4], r14b
je 0x18004a480
cvttss2si ebx, dword [0x1801123b4]
call fcn.18001db20
mov edx, ebx
mov ecx, eax
call fcn.180047660
cmp byte [0x1801498b2], r14b
je 0x18004a4ab
mov ebx, dword [0x18014eb8c]
add ebx, 5
mov dword [0x18014eb8c], ebx
call fcn.18001db20
movd xmm1, ebx
mov ecx, eax
cvtdq2ps xmm1, xmm1
call fcn.18001c0c0
mov ecx, 0x53
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
movss xmm6, dword [0x1801001f0]
movss xmm15, dword [0x1800fff4c]
test ax, ax
jne 0x18004a4de
mov edx, 0x10c
call fcn.1800487a0
test eax, eax
je 0x18004a68f
call qword [sym.imp.USER32.dll_GetForegroundWindow]
test rax, rax
je 0x18004a4f9
mov ecx, 0xa0
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x18004a507
mov edx, 0x15
call fcn.1800487a0
test eax, eax
je 0x18004a51c
xorps xmm0, xmm0
cvtsi2sd xmm0, rdi
subsd xmm0, qword [0x180100040]
cvttsd2si rdi, xmm0
call qword [sym.imp.USER32.dll_GetForegroundWindow]
test rax, rax
je 0x18004a537
mov ecx, 0x20
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x18004a545
mov edx, 0x16
call fcn.1800487a0
test eax, eax
je 0x18004a55a
xorps xmm0, xmm0
cvtsi2sd xmm0, rdi
addsd xmm0, qword [0x180100008]
cvttsd2si rdi, xmm0
xorps xmm0, xmm0
lea rcx, [rsp + 0x60]
cvtsi2ss xmm0, rdi
xor edx, edx
xorps xmm1, xmm1
subss xmm0, xmm7
cvttss2si rax, xmm0
cvtsi2ss xmm1, rax
subss xmm1, dword [0x1800fffbc]
cvttss2si rdi, xmm1
call fcn.180046ed0
movsd xmm1, qword [rax + 0x10]
xorps xmm12, xmm12
mulss xmm1, xmm15
xorps xmm8, xmm8
movups xmm0, xmmword [rax]
cvtss2sd xmm8, xmm1
mulss xmm0, xmm15
cvtss2sd xmm12, xmm0
movaps xmm0, xmm12
call sub.api_ms_win_crt_math_l1_1_0.dll_cos
xorps xmm1, xmm1
lea rcx, [rsp + 0x48]
cvtsd2ss xmm1, xmm0
mov r8d, 1
mov edx, esi
xorps xmm11, xmm11
andps xmm1, xmm6
cvtps2pd xmm6, xmm1
cvtsi2ss xmm11, rdi
call fcn.18001b7d0
movups xmm7, xmmword [rax]
movsd xmm10, qword [rax + 0x10]
movaps xmm0, xmm8
call sub.api_ms_win_crt_math_l1_1_0.dll_sin
xorps xmm2, xmm2
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm0
movaps xmm0, xmm8
xorps xmm1, xmmword [0x180100220]
cvtss2sd xmm2, xmm1
mulsd xmm2, xmm6
cvtpd2ps xmm9, xmm2
mulss xmm9, xmm11
addss xmm9, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_cos
xorps xmm1, xmm1
shufps xmm7, xmm7, 0xaa
cvtsd2ss xmm1, xmm0
movaps xmm0, xmm12
cvtps2pd xmm2, xmm1
mulsd xmm2, xmm6
cvtpd2ps xmm6, xmm2
mulss xmm6, xmm11
addss xmm6, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_sin
xorps xmm3, xmm3
mov dword [rsp + 0x30], r14d
cvtsd2ss xmm3, xmm0
mov dword [rsp + 0x28], r14d
mov ecx, esi
mov dword [rsp + 0x20], r14d
movaps xmm2, xmm6
movsd qword [rsp + 0x70], xmm10
mulss xmm3, xmm11
movaps xmm1, xmm9
addss xmm3, xmm10
call fcn.18001bfe0
movss xmm6, dword [0x1801001f0]
movss xmm7, dword [rsp + 0x40]
mov ecx, 0x57
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jne 0x18004a6b1
mov edx, 0x10d
call fcn.1800487a0
test eax, eax
je 0x18004a84d
call qword [sym.imp.USER32.dll_GetForegroundWindow]
test rax, rax
je 0x18004a6cc
mov ecx, 0xa0
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x18004a6da
mov edx, 0x15
call fcn.1800487a0
test eax, eax
je 0x18004a6ef
xorps xmm0, xmm0
cvtsi2sd xmm0, rdi
addsd xmm0, qword [0x180100040]
cvttsd2si rdi, xmm0
call qword [sym.imp.USER32.dll_GetForegroundWindow]
test rax, rax
je 0x18004a70a
mov ecx, 0x20
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x18004a718
mov edx, 0x16
call fcn.1800487a0
test eax, eax
je 0x18004a72d
xorps xmm0, xmm0
cvtsi2sd xmm0, rdi
subsd xmm0, qword [0x180100008]
cvttsd2si rdi, xmm0
xor edx, edx
lea rcx, [rsp + 0x60]
call fcn.180046ed0
xorps xmm12, xmm12
xorps xmm10, xmm10
movups xmm0, xmmword [rax]
movsd xmm1, qword [rax + 0x10]
mulss xmm0, xmm15
mulss xmm1, xmm15
cvtss2sd xmm12, xmm0
cvtss2sd xmm10, xmm1
movaps xmm0, xmm12
call sub.api_ms_win_crt_math_l1_1_0.dll_cos
xorps xmm1, xmm1
lea rcx, [rsp + 0x48]
cvtsd2ss xmm1, xmm0
mov r8d, 1
mov edx, esi
xorps xmm0, xmm0
xorps xmm11, xmm11
andps xmm1, xmm6
cvtps2pd xmm6, xmm1
xorps xmm1, xmm1
cvtsi2ss xmm0, rdi
addss xmm0, xmm7
cvttss2si rax, xmm0
cvtsi2ss xmm1, rax
addss xmm1, dword [0x1800ffff8]
cvttss2si rax, xmm1
cvtsi2ss xmm11, rax
call fcn.18001b7d0
movups xmm7, xmmword [rax]
movsd xmm9, qword [rax + 0x10]
movaps xmm0, xmm10
call sub.api_ms_win_crt_math_l1_1_0.dll_sin
xorps xmm2, xmm2
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm0
movaps xmm0, xmm10
xorps xmm1, xmmword [0x180100220]
cvtss2sd xmm2, xmm1
mulsd xmm2, xmm6
cvtpd2ps xmm8, xmm2
mulss xmm8, xmm11
addss xmm8, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_cos
xorps xmm1, xmm1
shufps xmm7, xmm7, 0xaa
cvtsd2ss xmm1, xmm0
movaps xmm0, xmm12
cvtps2pd xmm2, xmm1
mulsd xmm2, xmm6
cvtpd2ps xmm6, xmm2
mulss xmm6, xmm11
addss xmm6, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_sin
xorps xmm3, xmm3
mov dword [rsp + 0x30], r14d
cvtsd2ss xmm3, xmm0
mov dword [rsp + 0x28], r14d
mov ecx, esi
mov dword [rsp + 0x20], r14d
movaps xmm2, xmm6
movaps xmm1, xmm8
mulss xmm3, xmm11
addss xmm3, xmm9
call fcn.18001bfe0
mov r14, qword [rsp + 0x180]
movaps xmm11, xmmword [rsp + 0x100]
movaps xmm10, xmmword [rsp + 0x110]
movaps xmm9, xmmword [rsp + 0x120]
movaps xmm8, xmmword [rsp + 0x130]
movaps xmm6, xmmword [rsp + 0x150]
movaps xmm12, xmmword [rsp + 0xf0]
movaps xmm15, xmmword [rsp + 0xe0]
mov rsi, qword [rsp + 0x170]
mov rdi, qword [rsp + 0x178]
mov rcx, qword [rbp - 0x30]
xor rcx, rsp
call fcn.180059b80
mov rbx, qword [rsp + 0x188]
movaps xmm7, xmmword [rsp + 0x140]
add rsp, 0x160
pop rbp
ret