Function at 0x180126540
Capabilities:
Log keystrokes via polling

Disassembly:
mov rax, rsp
mov byte [rax + 8], cl
push rbp
push rdi
push r13
push r14
sub rsp, 0xd8
xor ebp, ebp
movabs rdi, 0x9a9112a0fe9a4713
cmp byte [0x1805b11cb], bpl
movabs r13, 0xd80958fc74e988a6
movabs r14, 0x428ca6dbd1094446
je 0x180126fc4
mov qword [rax + 0x18], rbx
mov qword [rax - 0x38], r15
movaps xmmword [rax - 0x48], xmm6
movsxd rax, dword [0x1805689c4]
cmp eax, 5
ja case.default.0x1801265a9
lea rdx, [0x180000000]
mov ecx, dword [rdx + rax*4 + 0x1270a4]
add rcx, rdx
jmp rcx
movss xmm6, dword [0x1805043b4]
jmp 0x1801265f0
movss xmm6, dword [0x180504464]
jmp 0x1801265f0
movss xmm6, dword [0x18050454c]
jmp 0x1801265f0
movss xmm6, dword [0x1805047ac]
jmp 0x1801265f0
movss xmm6, dword [0x180504184]
jmp 0x1801265f0
movss xmm6, dword [0x18050426c]
jmp 0x1801265f0
movss xmm6, dword [rsp + 0x100]
mov ecx, 0x11
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x180126619
mov eax, dword [0x1805689c4]
inc eax
mov dword [0x1805689c4], eax
cmp eax, 5
jle 0x180126619
mov dword [0x1805689c4], ebp
mov qword [rsp + 0x108], rbp
movabs r15, 0x91aef906bca88877
mov dword [rsp + 0x108], 2
mov rax, qword [rsp + 0x108]
mov qword [0x180587120], rax
mov eax, dword [str.O0Pd]
mov qword [rsp + 0x108], rbp
mov dword [rsp + 0x108], eax
mov rax, qword [rsp + 0x108]
mov qword [0x180587128], rax
mov dword [0x1805870f8], ebp
mov qword [0x1805dd278], r15
mov dword [0x1805870e8], 2
call fcn.1801e4620
mov ecx, 0x71
mov ebx, dword [rax]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jne 0x18012669c
test bl, 1
je 0x1801266b5
cmp byte [0x1805b0f5e], bpl
mov ecx, 0x64
sete byte [0x1805b0f5e]
call qword [sym.imp.KERNEL32.dll_Sleep]
cmp byte [0x1805b0f5e], bpl
je 0x180126f9f
mov qword [rsp + 0xd0], rsi
movabs rax, 0x837765a25378f0bb
movaps xmmword [rsp + 0xa0], xmm7
movaps xmmword [rsp + 0x90], xmm8
mov qword [0x1805dd278], rax
mov byte [0x1805b10e6], 1
mov dword [0x1805870f8], ebp
mov qword [0x180587120], rbp
mov dword [0x1805870e8], 1
call fcn.1801e4620
mov qword [0x1805dd278], r13
movsd xmm0, qword [rax + 0x10]
movups xmm8, xmmword [rax]
mov dword [0x1805870e8], ebp
movsd qword [rsp + 0x80], xmm0
mov dword [0x1805870f8], ebp
call fcn.1801e4620
mov qword [rsp + 0x108], rbp
mov qword [0x1805dd278], rdi
mov ecx, dword [rax]
mov dword [rsp + 0x108], ecx
mov rax, qword [rsp + 0x108]
mov qword [0x180587120], rax
mov dword [0x1805870f8], ebp
mov qword [0x180587128], rbp
mov dword [0x1805870e8], 2
call fcn.1801e4620
mov qword [rsp + 0x108], rbp
mov ebx, dword [rax]
movabs rax, 0xd5037ba82e12416f
mov qword [0x1805dd278], rax
mov dword [rsp + 0x108], ebx
mov rax, qword [rsp + 0x108]
mov qword [0x180587120], rax
mov dword [0x1805870f8], ebp
mov dword [0x1805870e8], 1
call fcn.1801e4620
mov qword [rsp + 0x108], rbp
mov dword [rsp + 0x108], ebx
mov qword [0x1805dd278], r14
movss xmm7, dword [rax]
mov rax, qword [rsp + 0x108]
mov qword [0x180587120], rax
mov dword [0x1805870f8], ebp
mov qword [0x180587128], rbp
mov dword [0x1805870e8], 2
call fcn.1801e4620
mov qword [rsp + 0x108], rbp
mov dword [rsp + 0x108], 2
mov rax, qword [rsp + 0x108]
mov qword [0x180587120], rax
mov eax, dword [0x180570930]
mov qword [rsp + 0x108], rbp
mov dword [rsp + 0x108], eax
mov rax, qword [rsp + 0x108]
mov qword [0x180587128], rax
mov dword [0x1805870f8], ebp
mov qword [0x1805dd278], r15
mov dword [0x1805870e8], 2
call fcn.1801e4620
mov qword [rsp + 0x108], rbp
mov dword [rsp + 0x108], 2
mov qword [0x1805dd278], r15
movzx edi, byte [rax]
mov rax, qword [rsp + 0x108]
and dil, 1
mov qword [0x180587120], rax
mov eax, dword [0x180570934]
mov qword [rsp + 0x108], rbp
mov dword [rsp + 0x108], eax
mov rax, qword [rsp + 0x108]
mov qword [0x180587128], rax
mov dword [0x1805870f8], ebp
mov dword [0x1805870e8], 2
call fcn.1801e4620
mov qword [0x1805dd278], r13
movzx esi, byte [rax]
and sil, 1
mov dword [0x1805870e8], ebp
mov dword [0x1805870f8], ebp
call fcn.1801e4620
mov ecx, dword [rax]
movabs rax, 0x997abd671d25ca0b
mov qword [rsp + 0x108], rbp
mov qword [0x1805dd278], rax
mov dword [rsp + 0x108], ecx
mov rax, qword [rsp + 0x108]
mov qword [0x180587120], rax
mov dword [0x1805870f8], ebp
mov qword [0x180587128], rbp
mov dword [0x1805870e8], 2
call fcn.1801e4620
cmp dword [rax], ebp
je 0x180126f7c
movss xmm3, dword [rsp + 0x80]
movaps xmm2, xmm8
shufps xmm2, xmm8, 0xaa
movaps xmm1, xmm8
mov dword [rsp + 0x28], 1
mov ecx, ebx
mov qword [rsp + 0xc8], r12
mov dword [rsp + 0x20], 2
call fcn.18015bbb0
mov ecx, 0x57
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
movabs r12, 0xab54a438726d25d5
test ax, ax
jne 0x180126a00
mov qword [rsp + 0x108], rbp
mov dword [rsp + 0x108], 2
mov rax, qword [rsp + 0x108]
mov qword [0x180587120], rax
mov eax, dword [0x180570934]
mov qword [rsp + 0x108], rbp
mov dword [rsp + 0x108], eax
mov rax, qword [rsp + 0x108]
mov qword [0x180587128], rax
mov dword [0x1805870f8], ebp
mov qword [0x1805dd278], r15
mov dword [0x1805870e8], 2
call fcn.1801e4620
test byte [rax], 1
je 0x180126ab0
mov qword [rsp + 0x108], rbp
mov dword [rsp + 0x108], ebx
mov rax, qword [rsp + 0x108]
mov qword [0x180587120], rax
mov dword [0x1805870f8], ebp
mov qword [0x1805dd278], r14
mov qword [0x180587128], rbp
mov dword [0x1805870e8], 2
call fcn.1801e4620
mov qword [rsp + 0x108], rbp
movaps xmm0, xmm7
addss xmm0, xmm6
mov dword [rsp + 0x108], ebx
mov rax, qword [rsp + 0x108]
mov qword [0x180587120], rax
mov qword [rsp + 0x108], rbp
mov dword [0x1805870f8], ebp
movss dword [rsp + 0x100], xmm0
mov eax, dword [rsp + 0x100]
mov dword [rsp + 0x108], eax
mov rax, qword [rsp + 0x108]
mov qword [0x180587128], rax
mov qword [0x1805dd278], r12
mov dword [0x1805870e8], 2
call fcn.1801e4620
mov ecx, 0x53
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jne 0x180126b2b
mov qword [rsp + 0x108], rbp
mov dword [rsp + 0x108], 2
mov rax, qword [rsp + 0x108]
mov qword [0x180587120], rax
mov eax, dword [0x180570930]
mov qword [rsp + 0x108], rbp
mov dword [rsp + 0x108], eax
mov rax, qword [rsp + 0x108]
mov qword [0x180587128], rax
mov dword [0x1805870f8], ebp
mov qword [0x1805dd278], r15
mov dword [0x1805870e8], 2
call fcn.1801e4620
test byte [rax], 1
je 0x180126bdf
mov qword [rsp + 0x108], rbp
mov dword [rsp + 0x108], ebx
mov rax, qword [rsp + 0x108]
mov qword [0x180587120], rax
mov dword [0x1805870f8], ebp
mov qword [0x1805dd278], r14
mov qword [0x180587128], rbp
mov dword [0x1805870e8], 2
call fcn.1801e4620
xorps xmm7, xmmword [0x18050a140]
mov qword [rsp + 0x108], rbp
subss xmm7, xmm6
mov dword [rsp + 0x108], ebx
mov rax, qword [rsp + 0x108]
mov qword [0x180587120], rax
mov qword [rsp + 0x108], rbp
movss dword [rsp + 0x100], xmm7
mov eax, dword [rsp + 0x100]
mov dword [rsp + 0x108], eax
mov rax, qword [rsp + 0x108]
mov qword [0x180587128], rax
mov dword [0x1805870f8], ebp
mov qword [0x1805dd278], r12
mov dword [0x1805870e8], 2
call fcn.1801e4620
mov ecx, 0x41
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
movss xmm7, dword [0x180504354]
xorps xmm6, xmm6
mov r12, qword [rsp + 0xc8]
test ax, ax
je 0x180126c95
mov qword [rsp + 0x108], rbp
mov dword [rsp + 0x108], ebx
mov rax, qword [rsp + 0x108]
mov qword [0x180587120], rax
mov dword [0x1805870f8], ebp
mov qword [0x1805dd278], r14
mov qword [0x180587128], rbp
mov dword [0x1805870e8], 2
call fcn.1801e4620
mov dword [rsp + 0x60], 1
movaps xmm3, xmm7
mov dword [rsp + 0x58], 1
xorps xmm2, xmm2
mov dword [rsp + 0x50], 1
mov edx, 1
mov dword [rsp + 0x48], ebp
mov ecx, ebx
mov dword [rsp + 0x40], 1
movss dword [rsp + 0x38], xmm6
movss dword [rsp + 0x30], xmm6
movss dword [rsp + 0x28], xmm6
movss dword [rsp + 0x20], xmm6
call fcn.18015d3f0
mov ecx, 0x44
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
movss xmm8, dword [0x180506bec]
test ax, ax
je 0x180126d42
mov qword [rsp + 0x108], rbp
mov dword [rsp + 0x108], ebx
mov rax, qword [rsp + 0x108]
mov qword [0x180587120], rax
mov dword [0x1805870f8], ebp
mov qword [0x1805dd278], r14
mov qword [0x180587128], rbp
mov dword [0x1805870e8], 2
call fcn.1801e4620
mov dword [rsp + 0x60], 1
movaps xmm3, xmm8
mov dword [rsp + 0x58], 1
xorps xmm2, xmm2
mov dword [rsp + 0x50], 1
mov edx, 1
mov dword [rsp + 0x48], ebp
mov ecx, ebx
mov dword [rsp + 0x40], 1
movss dword [rsp + 0x38], xmm6
movss dword [rsp + 0x30], xmm6
movss dword [rsp + 0x28], xmm6
movss dword [rsp + 0x20], xmm6
call fcn.18015d3f0
mov ecx, 0x10
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x180126de6
mov qword [rsp + 0x108], rbp
mov dword [rsp + 0x108], ebx
mov rax, qword [rsp + 0x108]
mov qword [0x180587120], rax
mov dword [0x1805870f8], ebp
mov qword [0x1805dd278], r14
mov qword [0x180587128], rbp
mov dword [0x1805870e8], 2
call fcn.1801e4620
mov dword [rsp + 0x60], 1
xorps xmm3, xmm3
mov dword [rsp + 0x58], 1
xorps xmm2, xmm2
mov dword [rsp + 0x50], 1
mov edx, 1
mov dword [rsp + 0x48], ebp
mov ecx, ebx
mov dword [rsp + 0x40], 1
movss dword [rsp + 0x38], xmm6
movss dword [rsp + 0x30], xmm6
movss dword [rsp + 0x28], xmm6
movss dword [rsp + 0x20], xmm8
call fcn.18015d3f0
mov ecx, 0x20
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x180126e8e
mov qword [rsp + 0x108], rbp
mov dword [rsp + 0x108], ebx
mov rax, qword [rsp + 0x108]
mov qword [0x180587120], rax
mov dword [0x1805870f8], ebp
mov qword [0x1805dd278], r14
mov qword [0x180587128], rbp
mov dword [0x1805870e8], 2
call fcn.1801e4620
mov dword [rsp + 0x60], 1
xorps xmm3, xmm3
mov dword [rsp + 0x58], 1
xorps xmm2, xmm2
mov dword [rsp + 0x50], 1
mov edx, 1
mov dword [rsp + 0x48], ebp
mov ecx, ebx
mov dword [rsp + 0x40], 1
movss dword [rsp + 0x38], xmm6
movss dword [rsp + 0x30], xmm6
movss dword [rsp + 0x28], xmm6
movss dword [rsp + 0x20], xmm7
call fcn.18015d3f0
jmp 0x180126f7c
mov ecx, 0x53
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jne 0x180126f7c
test dil, dil
jne 0x180126f7c
mov ecx, 0x57
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jne 0x180126f7c
test sil, sil
jne 0x180126f7c
mov ecx, 0x41
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jne 0x180126f7c
mov ecx, 0x44
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jne 0x180126f7c
mov ecx, 0x10
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jne 0x180126f7c
mov ecx, 0x20
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jne 0x180126f7c
mov ecx, 0x11
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jne 0x180126f7c
mov qword [rsp + 0x108], rbp
mov dword [rsp + 0x108], ebx
mov rax, qword [rsp + 0x108]
mov qword [rsp + 0x108], rbp
mov qword [0x180587120], rax
mov dword [rsp + 0x108], 1
mov rax, qword [rsp + 0x108]
mov qword [0x180587128], rax
mov dword [0x1805870f8], ebp
mov qword [0x1805dd278], r14
mov dword [0x1805870e8], 2
call fcn.1801e4620
movaps xmm7, xmmword [rsp + 0xa0]
movabs rdi, 0x9a9112a0fe9a4713
mov rsi, qword [rsp + 0xd0]
movaps xmm8, xmmword [rsp + 0x90]
cmp byte [0x1805b11cb], bpl
movaps xmm6, xmmword [rsp + 0xb0]
mov r15, qword [rsp + 0xc0]
mov rbx, qword [rsp + 0x110]
jne 0x180127096
cmp byte [0x1805b10e6], bpl
mov byte [0x1805b0f5e], bpl
je 0x180127096
lea rcx, [rsp + 0x108]
mov qword [rsp + 0x108], 1
call fcn.18007ab70
mov dword [0x1805870e8], ebp
mov dword [0x1805870f8], ebp
mov qword [0x1805dd278], r13
call fcn.1801e4620
mov qword [rsp + 0x108], rbp
mov qword [0x1805dd278], rdi
mov ecx, dword [rax]
mov dword [rsp + 0x108], ecx
mov rax, qword [rsp + 0x108]
mov qword [0x180587120], rax
mov dword [0x1805870f8], ebp
mov qword [0x180587128], rbp
mov dword [0x1805870e8], 2
call fcn.1801e4620
mov qword [rsp + 0x108], rbp
mov qword [0x1805dd278], r14
mov ecx, dword [rax]
mov dword [rsp + 0x108], ecx
mov rax, qword [rsp + 0x108]
mov qword [0x180587120], rax
mov dword [0x1805870f8], ebp
mov qword [0x180587128], rbp
mov dword [0x1805870e8], 2
call fcn.1801e4620
mov byte [0x1805b10e6], bpl
add rsp, 0xd8
pop r14
pop r13
pop rdi
pop rbp
ret