Function at 0x1400020b0
Capabilities:
Log keystrokes via polling

Disassembly:
mov qword [rsp + 8], rbx
push rbp
lea rbp, [rsp - 0x10]
sub rsp, 0x110
movaps xmmword [rsp + 0x100], xmm6
mov rax, qword [0x140050040]
xor rax, rsp
mov qword [rbp - 0x10], rax
xor ebx, ebx
cmp byte [0x1400500c8], bl
je 0x1400021b3
mov rdx, qword [0x140062dc0]
test rdx, rdx
je 0x1400021b3
cmp qword [0x140062db0], rbx
je 0x1400021b3
mov rcx, qword [0x140062d88]
lea rax, [rsp + 0x70]
add rdx, 0x760
mov qword [rsp + 0x20], rax
lea r9d, [rbx + 4]
mov dword [rsp + 0x50], ebx
lea r8, [rsp + 0x50]
mov qword [rsp + 0x70], rbx
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
movss xmm0, dword [rsp + 0x50]
lea rax, [rbp - 0x78]
subss xmm0, dword [0x1400494b8]
mov rdx, qword [0x140062dc0]
lea r9d, [rbx + 4]
mov rcx, qword [0x140062d88]
lea r8, [rsp + 0x68]
add rdx, 0x760
mov qword [rbp - 0x78], rbx
mov qword [rsp + 0x20], rax
movss dword [rsp + 0x68], xmm0
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
mov rdx, qword [0x140062db0]
lea rax, [rsp + 0x70]
mov rcx, qword [0x140062d88]
lea r9d, [rbx + 4]
add rdx, 0x9e0
mov dword [rsp + 0x50], 1
lea r8, [rsp + 0x50]
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
cmp byte [0x1400500c2], bl
movss xmm6, dword [0x1400494a4]
mov rdx, qword [0x140062da0]
je 0x1400021e6
test rdx, rdx
je 0x1400021e6
mov dword [rsp + 0x68], 0xbf800000
lea rax, [rbp - 0x78]
mov qword [rbp - 0x78], rbx
lea r8, [rsp + 0x68]
jmp 0x1400021fb
mov dword [rsp + 0x78], 0x3f800000
lea rax, [rbp - 0x70]
mov qword [rbp - 0x70], rbx
lea r8, [rsp + 0x78]
mov rcx, qword [0x140062d88]
mov r9d, 4
add rdx, 0xc0
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
cmp byte [0x1400500c1], bl
mov rdx, qword [0x140062dc0]
je 0x140002247
test rdx, rdx
je 0x140002247
mov dword [rsp + 0x50], 0x7f7fffff
lea rax, [rsp + 0x70]
mov qword [rsp + 0x70], rbx
lea r8, [rsp + 0x50]
jmp 0x140002256
mov dword [rbp - 0x80], ebx
lea rax, [rbp - 0x68]
mov qword [rbp - 0x68], rbx
lea r8, [rbp - 0x80]
mov rcx, qword [0x140062d88]
mov r9d, 4
add rdx, 0xc0
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
cmp byte [0x1400500bf], bl
mov rdx, qword [0x140062d98]
je 0x14000229d
test rdx, rdx
je 0x14000229d
mov byte [rsp + 0x58], 1
lea rax, [rbp - 0x70]
mov qword [rbp - 0x70], rbx
lea r8, [rsp + 0x58]
jmp 0x1400022ae
mov byte [rsp + 0x60], bl
lea rax, [rbp - 0x78]
mov qword [rbp - 0x78], rbx
lea r8, [rsp + 0x60]
mov rcx, qword [0x140062d88]
mov r9d, 1
add rdx, 0x24fd
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
cmp byte [0x140062dba], bl
mov rdx, qword [0x140062dc8]
je 0x140002384
test rdx, rdx
je 0x140002384
mov rax, qword gs:[0x58]
mov r8d, 4
mov rcx, qword [rax]
mov eax, dword [r8 + rcx]
cmp dword [0x140062edc], eax
jle 0x14000233c
lea rcx, [0x140062edc]
call fcn.14003fd44
cmp dword [0x140062edc], 0xffffffff
jne 0x140002335
lea rcx, [0x140062edc]
mov qword [0x140062ed0], rbx
mov dword [0x140062ed8], ebx
call fcn.14003fcd8
mov rdx, qword [0x140062dc8]
movsd xmm0, qword [0x140062ed0]
lea r8, [rbp - 0x30]
movss xmm1, dword [0x140062ed4]
mov eax, dword [0x140062ed8]
addss xmm1, dword [0x1400494f8]
shufps xmm0, xmm0, 0xe1
mov dword [rbp - 0x28], eax
lea rax, [rbp - 0x68]
mov qword [rbp - 0x68], rbx
movss xmm0, xmm1
shufps xmm0, xmm0, 0xe1
movsd qword [0x140062ed0], xmm0
movsd qword [rbp - 0x30], xmm0
jmp 0x14000239f
mov dword [rbp - 0x40], ebx
lea rax, [rsp + 0x70]
mov dword [rbp - 0x3c], 0xc2b40000
lea r8, [rbp - 0x40]
mov dword [rbp - 0x38], ebx
mov qword [rsp + 0x70], rbx
mov rcx, qword [0x140062d88]
mov r9d, 0xc
add rdx, 0x170
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
cmp byte [0x1400500bd], bl
je 0x1400023e4
cmp qword [0x140062dc8], rbx
je 0x1400023e4
mov dword [rbp - 0x80], 0x3f800000
lea rax, [rbp - 0x70]
mov qword [rbp - 0x70], rbx
lea r8, [rbp - 0x80]
jmp 0x1400023f5
mov dword [rsp + 0x78], ebx
lea rax, [rbp - 0x20]
mov qword [rbp - 0x20], rbx
lea r8, [rsp + 0x78]
mov rdx, qword [0x140062d98]
mov r9d, 4
mov rcx, qword [0x140062d88]
add rdx, 0x2178
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
cmp byte [0x1400500be], bl
je 0x14000248a
cmp qword [0x140062dc8], rbx
je 0x14000248a
mov ecx, 0x10
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
mov rdx, qword [0x140062d98]
mov r9d, 4
mov rcx, qword [0x140062d88]
add rdx, 0xc0
test ax, ax
je 0x14000246a
mov dword [rsp + 0x68], ebx
lea rax, [rbp - 0x68]
mov qword [rbp - 0x68], rbx
lea r8, [rsp + 0x68]
jmp 0x14000247f
mov dword [rsp + 0x50], 0x3f800000
lea rax, [rbp - 0x18]
mov qword [rbp - 0x18], rbx
lea r8, [rsp + 0x50]
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
cmp byte [0x1400500c0], bl
je 0x1400024f7
cmp qword [0x140062dc8], rbx
je 0x1400024f7
mov ecx, 0x10
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
mov rdx, qword [0x140062d98]
mov r9d, 4
mov rcx, qword [0x140062d88]
add rdx, 0xc0
test ax, ax
je 0x1400024d7
mov dword [rbp - 0x78], ebx
lea rax, [rbp - 0x50]
mov qword [rbp - 0x50], rbx
lea r8, [rbp - 0x78]
jmp 0x1400024ec
mov dword [rsp + 0x70], 0x3f800000
lea rax, [rbp - 0x60]
mov qword [rbp - 0x60], rbx
lea r8, [rsp + 0x70]
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
cmp byte [0x140062db8], bl
mov rdx, qword [0x140062da8]
je 0x140002534
test rdx, rdx
je 0x140002534
movss xmm1, dword [0x1400500c4]
lea rax, [rbp - 0x30]
movaps xmm0, xmm1
movss dword [rsp + 0x38], xmm1
unpcklps xmm0, xmm1
lea r8, [rsp + 0x30]
movsd qword [rsp + 0x30], xmm0
mov qword [rbp - 0x30], rbx
jmp 0x140002553
movaps xmm0, xmm6
movss dword [rsp + 0x48], xmm6
unpcklps xmm0, xmm6
lea rax, [rbp - 0x40]
movsd qword [rsp + 0x40], xmm0
lea r8, [rsp + 0x40]
mov qword [rbp - 0x40], rbx
mov rcx, qword [0x140062d88]
mov r9d, 0xc
add rdx, 0x17c
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
cmp byte [0x140062db9], bl
mov rdx, qword [0x140062dc8]
je 0x14000259b
test rdx, rdx
je 0x14000259b
movss xmm1, dword [0x1400500cc]
movaps xmm0, xmm1
movss dword [rbp - 0x48], xmm1
unpcklps xmm0, xmm1
jmp 0x1400025a6
movaps xmm0, xmm6
movss dword [rbp - 0x48], xmm6
unpcklps xmm0, xmm6
mov rcx, qword [0x140062d88]
lea rax, [rbp - 0x60]
mov r9d, 0xc
mov qword [rsp + 0x20], rax
lea r8, [rbp - 0x50]
movsd qword [rbp - 0x50], xmm0
add rdx, 0x17c
mov qword [rbp - 0x60], rbx
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
mov al, 1
mov rcx, qword [rbp - 0x10]
xor rcx, rsp
call fcn.14003fa00
mov rbx, qword [rsp + 0x120]
movaps xmm6, xmmword [rsp + 0x100]
add rsp, 0x110
pop rbp
ret