Function at 0x180041450
Capabilities:
Log keystrokes via polling

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x80
xor edi, edi
mov ecx, dword [0x1800d08c8]
mov rax, qword gs:[0x58]
mov edx, 4
mov rax, qword [rax + rcx*8]
lea rbx, [rdi - 1]
movabs r13, 0x7378d3e768a61111
movabs r12, 0x8cd1d8fe650c0046
movabs r14, 0x1c0cf38c0bcf7d52
movabs r15, 0x8cd1f69a0b656266
lea rsi, [0x1800d1960]
mov eax, dword [rdx + rax]
cmp dword [0x1800d1980], eax
jle 0x18004154f
lea rcx, [0x1800d1980]
call fcn.180053840
cmp dword [0x1800d1980], ebx
jne 0x18004154f
mov qword [rbp - 0x10], r13
mov qword [rbp - 8], r12
mov qword [rbp - 0x20], r14
mov qword [rbp - 0x18], r15
movaps xmm0, xmmword [rbp - 0x20]
xorps xmm0, xmmword [rbp - 0x10]
movdqa xmmword [rbp - 0x10], xmm0
xorps xmm0, xmm0
movups xmmword [0x1800d1960], xmm0
mov qword [0x1800d1970], rdi
mov qword [0x1800d1978], rdi
lea rax, [rbp - 0x10]
mov r8, rbx
nop
inc r8
cmp byte [rax + r8], 0
jne 0x180041520
lea rdx, [rbp - 0x10]
mov rcx, rsi
call fcn.180003490
lea rcx, [0x180080090]
call fcn.180053ce0
nop
lea rcx, [0x1800d1980]
call fcn.1800537d4
mov dword [rbp - 0x20], 0x42c80000
mov dword [rbp - 0x1c], 0x41a00000
mov rcx, rsi
cmp qword [0x1800d1978], 0xf
cmova rcx, qword [0x1800d1960]
lea rdx, [rbp - 0x20]
call fcn.18002b4a0
test al, al
je 0x180041586
mov byte [0x1800d1884], 1
jmp 0x180041593
cmp byte [0x1800d1884], 0
je 0x180041644
mov edi, 1
mov ecx, edi
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jns 0x1800415bf
cmp edi, 0xc
je 0x1800415bf
mov eax, edi
cmp edi, 0x1b
cmove eax, ebx
mov dword [0x1800cf5b8], eax
mov byte [0x1800d1884], 0
inc edi
cmp edi, 0x100
jl 0x180041598
mov qword [rbp - 0x20], r13
mov qword [rbp - 0x18], r12
movabs rax, 0x5319f3941bc36341
mov qword [rbp - 0x10], rax
movabs rax, 0x8cd1d8fe4b75650d
mov qword [rbp - 8], rax
movaps xmm0, xmmword [rbp - 0x10]
xorps xmm0, xmmword [rbp - 0x20]
movdqa xmmword [rbp - 0x20], xmm0
lea rax, [rbp - 0x20]
nop
inc rbx
cmp byte [rax + rbx], 0
jne 0x180041600
mov rax, qword [0x1800d1978]
cmp rbx, rax
ja 0x1800416b0
cmp rax, 0xf
cmova rsi, qword [0x1800d1960]
mov qword [0x1800d1970], rbx
mov r8, rbx
lea rdx, [rbp - 0x20]
mov rcx, rsi
call fcn.18007e290
mov byte [rsi + rbx], 0
jmp 0x18004180f
mov edx, dword [0x1800cf5b8]
cmp edx, 0xffffffff
jne 0x1800416c4
mov qword [rbp - 0x20], r13
mov qword [rbp - 0x18], r12
mov qword [rbp - 0x10], r14
mov qword [rbp - 8], r15
movaps xmm0, xmmword [rbp - 0x10]
xorps xmm0, xmmword [rbp - 0x20]
movdqa xmmword [rbp - 0x20], xmm0
lea rax, [rbp - 0x20]
inc rbx
cmp byte [rax + rbx], 0
jne 0x180041670
mov rax, qword [0x1800d1978]
cmp rbx, rax
ja 0x1800416b0
cmp rax, 0xf
cmova rsi, qword [0x1800d1960]
mov qword [0x1800d1970], rbx
mov r8, rbx
lea rdx, [rbp - 0x20]
mov rcx, rsi
call fcn.18007e290
mov byte [rsi + rbx], 0
jmp 0x18004180f
lea r9, [rbp - 0x20]
mov rdx, rbx
mov rcx, rsi
call fcn.180044dd0
jmp 0x18004180f
lea rcx, [rbp - 0x40]
call fcn.180044ac0
nop
mov qword [rbp - 0x20], r13
mov qword [rbp - 0x18], r12
movabs rax, 0x7378f39948df745a
mov qword [rbp - 0x10], rax
mov qword [rbp - 8], r12
movaps xmm0, xmmword [rbp - 0x10]
xorps xmm0, xmmword [rbp - 0x20]
movdqa xmmword [rbp - 0x10], xmm0
lea r8, [rbp - 0x40]
lea rdx, [rbp - 0x10]
lea rcx, [rbp - 0x60]
call fcn.180044ca0
mov rbx, rax
cmp rsi, rax
je 0x180041790
mov rdx, qword [0x1800d1978]
cmp rdx, 0xf
jbe 0x180041753
inc rdx
mov rcx, qword [0x1800d1960]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18004174e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180041836
call fcn.180053720
mov qword [0x1800d1970], rdi
mov qword [0x1800d1978], 0xf
mov byte [0x1800d1960], 0
movups xmm0, xmmword [rbx]
movups xmmword [0x1800d1960], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [0x1800d1970], xmm1
mov qword [rbx + 0x10], rdi
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
mov rdx, qword [rbp - 0x48]
cmp rdx, 0xf
jbe 0x1800417c7
inc rdx
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800417c2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180041836
call fcn.180053720
movdqa xmm0, xmmword [0x1800bf640]
movdqu xmmword [rbp - 0x50], xmm0
mov byte [rbp - 0x60], 0
mov rdx, qword [rbp - 0x28]
cmp rdx, 0xf
jbe 0x18004180f
inc rdx
mov rcx, qword [rbp - 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18004180a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180041830
call fcn.180053720
lea r11, [rsp + 0x80]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.18005aa30
nop
call fcn.18005aa30
nop
int3