Function at 0x180019f30
Capabilities:
Log keystrokes via polling

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
push rbp
push rdi
push r13
push r14
push r15
lea rbp, [rax - 0x48]
sub rsp, 0x120
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
mov rax, qword [0x180133090]
xor rax, rsp
mov qword [rbp - 0x18], rax
mov rbx, rcx
cmp dword [rcx + 0x1ba0], 4
je 0x18001a7f2
mov ecx, 0xa4
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
shr eax, 0xf
test al, 1
jne 0x180019fa2
mov ecx, 0xa5
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
shr eax, 0xf
test al, 1
jne 0x180019fa2
xor r13b, r13b
jmp 0x180019fa5
mov r13b, 1
mov ecx, 0xa2
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
shr eax, 0xf
test al, 1
jne 0x180019fce
mov ecx, 0xa3
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
shr eax, 0xf
test al, 1
jne 0x180019fce
xor r15b, r15b
jmp 0x180019fd1
mov r15b, 1
xor edx, edx
mov cl, 1
call fcn.1800333e0
mov rdi, 0xffffffffffffffff
mov r14d, 4
xor esi, esi
test al, al
je 0x18001a11b
mov rax, qword [rbx]
mov rcx, rbx
cmp byte [0x180139108], sil
je 0x18001a008
call qword [rax + 0x88]
jmp 0x18001a00e
call qword [rax + 0x80]
cmp byte [0x180139108], sil
sete al
mov byte [0x180139108], al
lea rcx, str.Camera_enabled
lea rdx, str.Camera_disabled
test al, al
cmovne rdx, rcx
xorps xmm0, xmm0
movups xmmword [rbp - 0x38], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x28], xmm1
mov r8, rdi
inc r8
cmp byte [rdx + r8], sil
jne 0x18001a044
lea rcx, [rbp - 0x38]
call fcn.1800171d0
nop
mov edx, dword [0x180137b54]
mov rax, qword gs:[0x58]
mov rax, qword [rax + rdx*8]
mov ecx, dword [r14 + rax]
cmp dword [0x180139580], ecx
jle 0x18001a0cc
lea rcx, [0x180139580]
call fcn.180077e94
cmp dword [0x180139580], 0xffffffff
jne 0x18001a0cc
xorps xmm0, xmm0
movdqa xmmword [0x180139590], xmm0
mov qword [0x1801395a0], rsi
mov word [0x1801395a8], 0
mov qword [0x1801395e8], rsi
mov qword [0x180139628], rsi
lea rcx, [0x1800ff010]
call fcn.1800783f0
lea rcx, [0x180139580]
call fcn.180077e34
mov r8b, 3
lea rdx, [rbp - 0x38]
lea rcx, [0x180139590]
call fcn.180036380
nop
mov rdx, qword [rbp - 0x20]
cmp rdx, 0x10
jb 0x18001a11b
inc rdx
mov rcx, qword [rbp - 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001a116
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001a831
call fcn.180077bd0
xor edx, edx
mov cl, 4
call fcn.1800333e0
movss xmm6, dword [0x18011614c]
test al, al
je 0x18001a167
call fcn.1800298d0
test dword [rax + 0xcc], 0xfffffffd
jne 0x18001a167
mov rsi, qword [rbx + 0x1b70]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0xe0]
movss dword [rsi + 0x30], xmm0
comiss xmm6, xmm0
jbe 0x18001a165
mov dword [rsi + 0x30], 0x3a83126f
xor esi, esi
xor edx, edx
mov cl, 2
call fcn.1800333e0
movss xmm7, dword [0x180116270]
movss xmm8, dword [0x180116144]
test al, al
je 0x18001a1e6
call fcn.1800298d0
test dword [rax + 0xcc], 0xfffffffd
jne 0x18001a1e6
mov rax, qword [rbx + 0x1b70]
movss xmm1, dword [rbx + 0x1b84]
xorps xmm1, xmmword [0x180116290]
subss xmm1, dword [rax + 0x64]
mulss xmm1, dword [rax + 0x48]
addss xmm1, dword [rax + 0x64]
movss dword [rax + 0x64], xmm1
movaps xmm0, xmm1
andps xmm0, xmm7
comiss xmm0, xmm8
jbe 0x18001a1d0
mov byte [rax + 0x70], 1
addss xmm1, dword [rax + 0x30]
movss dword [rax + 0x30], xmm1
comiss xmm6, xmm1
jbe 0x18001a1e6
mov dword [rax + 0x30], 0x3a83126f
xor edx, edx
mov cl, 3
call fcn.1800333e0
test al, al
je 0x18001a24d
call fcn.1800298d0
test dword [rax + 0xcc], 0xfffffffd
jne 0x18001a24d
mov rax, qword [rbx + 0x1b70]
movss xmm1, dword [rbx + 0x1b84]
subss xmm1, dword [rax + 0x64]
mulss xmm1, dword [rax + 0x48]
addss xmm1, dword [rax + 0x64]
movss dword [rax + 0x64], xmm1
movaps xmm0, xmm1
andps xmm0, xmm7
comiss xmm0, xmm8
jbe 0x18001a237
mov byte [rax + 0x70], 1
addss xmm1, dword [rax + 0x30]
movss dword [rax + 0x30], xmm1
comiss xmm6, xmm1
jbe 0x18001a24d
mov dword [rax + 0x30], 0x3a83126f
cmp byte [0x180139108], 0
je 0x18001a7f2
mov rax, qword [rbx + 0x1b70]
mov byte [rax + 0x68], 0
mov qword [rax + 8], 0
mov dword [rax + 0x10], esi
xor edx, edx
xor ecx, ecx
call fcn.1800333e0
test al, al
je 0x18001a3bb
call fcn.1800298d0
movzx r14d, byte [rax + 1]
test r14b, r14b
sete sil
call fcn.1800298d0
cmp byte [rax + 1], sil
je 0x18001a3b9
mov rax, qword [rbx]
movzx edx, sil
mov rcx, rbx
call qword [rax + 0x108]
lea rax, str.Input_to_game_blocked
lea rdx, str.Input_to_game_enabled
test r14b, r14b
cmove rdx, rax
xorps xmm0, xmm0
movups xmmword [rbp - 0x38], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x28], xmm1
inc rdi
cmp byte [rdx + rdi], 0
jne 0x18001a2d5
mov r8, rdi
lea rcx, [rbp - 0x38]
call fcn.1800171d0
nop
mov edx, dword [0x180137b54]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + rdx*8]
mov ecx, dword [rcx + rax]
cmp dword [0x180139580], ecx
jle 0x18001a366
lea rcx, [0x180139580]
call fcn.180077e94
xor esi, esi
cmp dword [0x180139580], 0xffffffff
jne 0x18001a368
xorps xmm0, xmm0
movdqa xmmword [0x180139590], xmm0
mov qword [0x1801395a0], rsi
mov word [0x1801395a8], si
mov qword [0x1801395e8], rsi
mov qword [0x180139628], rsi
lea rcx, [0x1800ff010]
call fcn.1800783f0
lea rcx, [0x180139580]
call fcn.180077e34
jmp 0x18001a368
xor esi, esi
mov r8b, 3
lea rdx, [rbp - 0x38]
lea rcx, [0x180139590]
call fcn.180036380
nop
mov rdx, qword [rbp - 0x20]
cmp rdx, 0x10
jb 0x18001a3bb
inc rdx
mov rcx, qword [rbp - 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001a3b2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001a82b
call fcn.180077bd0
jmp 0x18001a3bb
xor esi, esi
xor edx, edx
mov cl, 5
call fcn.1800333e0
test al, al
je 0x18001a3da
cmp byte [rbx + 0x1b78], 0
sete dl
mov rcx, rbx
call fcn.18001b040
mov dl, 1
mov cl, 0x2e
call fcn.1800333e0
test al, al
je 0x18001a3f8
movzx r8d, r15b
mov edx, 1
mov rcx, rbx
call fcn.180019e10
mov dl, 1
mov cl, 0x2f
call fcn.1800333e0
test al, al
je 0x18001a416
movzx r8d, r15b
mov edx, 2
mov rcx, rbx
call fcn.180019e10
mov dl, 1
mov cl, 0x30
call fcn.1800333e0
test al, al
je 0x18001a434
movzx r8d, r15b
mov edx, 3
mov rcx, rbx
call fcn.180019e10
lea rdi, [rbx + 0x1e0]
xor edx, edx
mov cl, 0x18
call fcn.1800333e0
test al, al
je 0x18001a450
mov rcx, rdi
call fcn.18000f480
xor edx, edx
mov cl, 0x19
call fcn.1800333e0
xorps xmm6, xmm6
test al, al
je 0x18001a4a6
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0xa8]
mov rcx, rdi
call fcn.18000f550
mov dword [rbx + 0x1b50], esi
xorps xmm0, xmm0
unpcklps xmm0, xmm6
movsd qword [rbx + 0x1b58], xmm0
movss dword [rbx + 0x1b60], xmm6
xorps xmm0, xmm0
unpcklps xmm0, xmm6
movsd qword [rbx + 0x1b64], xmm0
movss dword [rbx + 0x1b6c], xmm6
xor edx, edx
mov cl, 0x1a
call fcn.1800333e0
test al, al
je 0x18001a4bb
mov rcx, rdi
call fcn.18000fd30
xor edx, edx
mov cl, 0x1b
call fcn.1800333e0
test al, al
je 0x18001a4d0
mov rcx, rbx
call fcn.180019d90
xor edx, edx
mov cl, 0x1c
call fcn.1800333e0
movabs r14, 0x7878787878787879
test al, al
je 0x18001a545
mov rcx, rdi
call fcn.180010180
mov r8, rax
cmp byte [rax + 0x3c], 0
jne 0x18001a545
mov rcx, qword [rax + 8]
sub rcx, qword [rax]
mov rax, r14
imul rcx
sar rdx, 6
mov rcx, rdx
shr rcx, 0x3f
add rdx, rcx
je 0x18001a519
mov dword [r8 + 0x38], esi
xorps xmm0, xmm0
unpcklps xmm0, xmm6
movsd qword [rsp + 0x20], xmm0
movss dword [rsp + 0x28], xmm6
lea r8, [rsp + 0x20]
lea rdx, [rsp + 0x30]
mov rcx, rdi
call fcn.18000e310
mov rcx, rdi
call fcn.18000e740
xor edx, edx
mov cl, 0x1d
call fcn.1800333e0
test al, al
je 0x18001a5b3
mov rcx, rdi
call fcn.180010180
mov r8, rax
cmp byte [rax + 0x3c], 0
jne 0x18001a5b3
mov rcx, qword [rax + 8]
sub rcx, qword [rax]
mov rax, r14
imul rcx
sar rdx, 6
mov rcx, rdx
shr rcx, 0x3f
add rdx, rcx
je 0x18001a587
lea eax, [rdx - 1]
mov dword [r8 + 0x38], eax
xorps xmm0, xmm0
unpcklps xmm0, xmm6
movsd qword [rsp + 0x20], xmm0
movss dword [rsp + 0x28], xmm6
lea r8, [rsp + 0x20]
lea rdx, [rsp + 0x30]
mov rcx, rdi
call fcn.18000e310
mov rcx, rdi
call fcn.18000e740
xor edx, edx
mov cl, 0x1e
call fcn.1800333e0
test al, al
je 0x18001a5c8
mov rcx, rdi
call fcn.18000e610
xor edx, edx
mov cl, 0x1f
call fcn.1800333e0
test al, al
je 0x18001a5dd
mov rcx, rdi
call fcn.18000e6b0
xor edx, edx
mov cl, 0x29
call fcn.1800333e0
test al, al
je 0x18001a602
lea rdx, [rsp + 0x40]
mov rcx, rbx
call fcn.18001ccf0
mov rdx, rax
mov rcx, rdi
call fcn.18000fb60
xor edx, edx
mov cl, 0x2a
call fcn.1800333e0
test al, al
je 0x18001a627
lea rdx, [rsp + 0x40]
mov rcx, rbx
call fcn.18001ccf0
mov rdx, rax
mov rcx, rdi
call fcn.18000f910
xor edx, edx
mov cl, 0x31
call fcn.1800333e0
test al, al
je 0x18001a64c
lea rdx, [rsp + 0x40]
mov rcx, rbx
call fcn.18001ccf0
mov rdx, rax
mov rcx, rdi
call fcn.18000faa0
movzx eax, byte [rbx + 0x21c]
sub al, 2
cmp al, 1
ja 0x18001a744
xor edx, edx
mov cl, 0x20
call fcn.1800333e0
test al, al
je 0x18001a674
xor edx, edx
mov rcx, rdi
call fcn.18000fc20
xor edx, edx
mov cl, 0x21
call fcn.1800333e0
test al, al
je 0x18001a68e
mov edx, 1
mov rcx, rdi
call fcn.18000fc20
xor edx, edx
mov cl, 0x22
call fcn.1800333e0
test al, al
je 0x18001a6a8
mov edx, 2
mov rcx, rdi
call fcn.18000fc20
xor edx, edx
mov cl, 0x23
call fcn.1800333e0
test al, al
je 0x18001a6c2
mov edx, 3
mov rcx, rdi
call fcn.18000fc20
xor edx, edx
mov cl, 0x24
call fcn.1800333e0
test al, al
je 0x18001a6dc
mov edx, 4
mov rcx, rdi
call fcn.18000fc20
xor edx, edx
mov cl, 0x25
call fcn.1800333e0
test al, al
je 0x18001a6f6
mov edx, 5
mov rcx, rdi
call fcn.18000fc20
xor edx, edx
mov cl, 0x26
call fcn.1800333e0
test al, al
je 0x18001a710
mov edx, 6
mov rcx, rdi
call fcn.18000fc20
xor edx, edx
mov cl, 0x27
call fcn.1800333e0
test al, al
je 0x18001a72a
mov edx, 7
mov rcx, rdi
call fcn.18000fc20
xor edx, edx
mov cl, 0x28
call fcn.1800333e0
test al, al
je 0x18001a744
mov edx, 8
mov rcx, rdi
call fcn.18000fc20
movss xmm8, dword [0x180116160]
test r13b, r13b
je 0x18001a76d
movss xmm7, dword [rbx + 0x1b7c]
lea rax, [rbx + 0x1b80]
test r15b, r15b
je 0x18001a788
movss xmm8, dword [rax]
jmp 0x18001a788
test r15b, r15b
je 0x18001a784
lea rax, [rbx + 0x1b80]
movss xmm7, dword [rax]
movss xmm8, dword [rax]
jmp 0x18001a788
movaps xmm7, xmm8
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0xe8]
movaps xmm6, xmm0
mulss xmm6, dword [rbx + 0x1b98]
mulss xmm7, xmm6
mulss xmm8, xmm6
call fcn.1800298d0
movss dword [rax + 0x290], xmm6
movzx r9d, r13b
movaps xmm2, xmm8
movaps xmm1, xmm7
mov rcx, rbx
call fcn.18001c640
movaps xmm2, xmm8
movaps xmm1, xmm7
mov rcx, rbx
call fcn.18001c400
movaps xmm1, xmm6
mov rcx, rbx
call fcn.18001b1d0
mov rcx, qword [rbx + 0x1b70]
call fcn.180005de0
xor al, al
jmp 0x18001a7f4
mov al, 1
mov rcx, qword [rbp - 0x18]
xor rcx, rsp
call fcn.180077bb0
lea r11, [rsp + 0x120]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
mov rsp, r11
pop r15
pop r14
pop r13
pop rdi
pop rbp
ret
call fcn.18008a744
int3
call fcn.18008a744
int3