Function at 0x140051b70
Capabilities:
Log keystrokes via polling

Disassembly:
push rbx
sub rsp, 0x20
movsxd rbx, ecx
mov ecx, 0x11
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x140051f6e
cmp byte [0x140068a53], 1
jne 0x140051c67
mov rax, rbx
shl rax, 4
add rax, qword [0x140068b10]
cmp byte [0x140068a3b], 1
jne 0x140051c03
cmp byte [0x140068a56], 1
jne 0x140051bcc
movsd xmm1, qword [0x14005e750]
movsd qword [0x140068338], xmm1
jmp 0x140051bd4
movsd xmm1, qword [0x140068338]
cmp byte [0x140068a3a], 1
je 0x140051bf9
cmp byte [0x140068a51], 1
je 0x140051bf9
cmp byte [0x140068a54], 1
jne 0x140051c0b
movsd xmm1, qword [0x14005e760]
jmp 0x140051c0b
movsd xmm1, qword [0x14005e748]
jmp 0x140051c0b
movsd xmm1, qword [0x140068348]
call fcn.1400511e0
movaps xmm3, xmm0
movss xmm0, dword [0x14006810c]
mulsd xmm3, qword [rax + 8]
mov eax, dword [0x140068110]
mulss xmm0, dword [0x14005e768]
add eax, eax
mulsd xmm3, xmm1
xorps xmm1, xmm1
cvtsi2sd xmm1, eax
cvtps2pd xmm2, xmm0
divsd xmm1, qword [0x14005e7c0]
mulsd xmm2, qword [0x14005e880]
mulsd xmm2, qword [0x14005e770]
mulsd xmm2, xmm1
divsd xmm3, xmm2
movaps xmm0, xmm3
add rsp, 0x20
pop rbx
ret
cmp byte [0x140068a3c], 1
jne 0x140051cad
mov rax, rbx
shl rax, 4
add rax, qword [0x140068a68]
cmp byte [0x140068a3b], 1
jne 0x140051c03
cmp byte [0x140068a56], 1
jne 0x140051bcc
movsd xmm1, qword [0x14005e750]
movsd qword [0x140068338], xmm1
jmp 0x140051bd4
cmp byte [0x140068a64], 1
jne 0x140051cf3
mov rax, rbx
shl rax, 4
add rax, qword [0x140068ab0]
cmp byte [0x140068a3b], 1
jne 0x140051c03
cmp byte [0x140068a56], 1
jne 0x140051bcc
movsd xmm1, qword [0x14005e750]
movsd qword [0x140068338], xmm1
jmp 0x140051bd4
cmp byte [0x140068a3f], 1
jne 0x140051d39
mov rax, rbx
shl rax, 4
add rax, qword [0x140068ae0]
cmp byte [0x140068a3b], 1
jne 0x140051c03
cmp byte [0x140068a56], 1
jne 0x140051bcc
movsd xmm1, qword [0x14005e750]
movsd qword [0x140068338], xmm1
jmp 0x140051bd4
cmp byte [0x140068a56], 1
jne 0x140051da9
movzx ecx, byte [0x140068a3b]
mov rax, rbx
shl rax, 4
add rax, qword [0x140068ac8]
cmp cl, 1
jne 0x140051c03
cmp byte [0x140068a3a], cl
movsd xmm1, qword [0x14005e750]
movsd qword [0x140068338], xmm1
je 0x140051bf9
cmp byte [0x140068a51], cl
je 0x140051bf9
cmp byte [0x140068a54], cl
jne 0x140051c0b
cmp cl, cl
jne 0x140051c0b
movsd xmm1, qword [0x14005e760]
jmp 0x140051c0b
cmp byte [0x140068a57], 1
jne 0x140051e01
mov rax, rbx
shl rax, 4
add rax, qword [0x140068a80]
cmp byte [0x140068a3b], 1
jne 0x140051c03
cmp byte [0x140068a3a], 1
je 0x140051bf9
cmp byte [0x140068a51], 1
je 0x140051bf9
cmp byte [0x140068a54], 1
je 0x140051bef
movsd xmm1, qword [0x140068338]
jmp 0x140051c0b
cmp byte [0x140068a3d], 1
jne 0x140051e55
mov rax, rbx
shl rax, 4
add rax, qword [0x140068a98]
cmp byte [0x140068a3b], 1
jne 0x140051c03
cmp byte [0x140068a3a], 1
je 0x140051bf9
cmp byte [0x140068a51], 1
je 0x140051bf9
cmp byte [0x140068a54], 1
jne 0x140051df4
movsd xmm1, qword [0x14005e760]
jmp 0x140051c0b
cmp byte [0x140068a55], 1
jne 0x140051ead
mov rax, rbx
shl rax, 4
add rax, qword [0x140068af8]
cmp byte [0x140068a3b], 1
jne 0x140051c03
cmp byte [0x140068a3a], 1
je 0x140051bf9
cmp byte [0x140068a51], 1
je 0x140051bf9
cmp byte [0x140068a54], 1
jne 0x140051df4
movsd xmm1, qword [0x14005e760]
jmp 0x140051c0b
cmp byte [0x140068a3e], 1
jne 0x14005231f
cmp byte [0x140068a3b], 1
jne 0x140051efc
cmp byte [0x140068a3a], 1
je 0x140051ef2
cmp byte [0x140068a51], 1
je 0x140051ef2
cmp byte [0x140068a54], 1
jne 0x140051ee8
movsd xmm1, qword [0x14005e760]
jmp 0x140051f04
movsd xmm1, qword [0x140068338]
jmp 0x140051f04
movsd xmm1, qword [0x14005e748]
jmp 0x140051f04
movsd xmm1, qword [0x140068348]
call fcn.1400511e0
mov rax, qword [0x140068b38]
movaps xmm3, xmm0
movss xmm0, dword [0x14006810c]
mov rcx, rbx
mulss xmm0, dword [0x14005e768]
add rcx, rcx
mulsd xmm3, qword [rax + rcx*8 + 8]
mov eax, dword [0x140068110]
add eax, eax
cvtps2pd xmm2, xmm0
mulsd xmm3, xmm1
xorps xmm1, xmm1
mulsd xmm2, qword [0x14005e880]
cvtsi2sd xmm1, eax
mulsd xmm2, qword [0x14005e770]
divsd xmm1, qword [0x14005e7c0]
mulsd xmm2, xmm1
divsd xmm3, xmm2
movaps xmm0, xmm3
add rsp, 0x20
pop rbx
ret
cmp byte [0x140068a53], 1
jne 0x14005203a
mov rax, rbx
shl rax, 4
add rax, qword [0x140068b10]
cmp byte [0x140068a3b], 1
jne 0x140051fe4
cmp byte [0x140068a56], 1
jne 0x140051fad
movsd xmm1, qword [0x14005e750]
movsd qword [0x140068338], xmm1
jmp 0x140051fb5
movsd xmm1, qword [0x140068338]
cmp byte [0x140068a3a], 1
je 0x140051fda
cmp byte [0x140068a51], 1
je 0x140051fda
cmp byte [0x140068a54], 1
jne 0x140051fec
movsd xmm1, qword [0x14005e760]
jmp 0x140051fec
movsd xmm1, qword [0x14005e748]
jmp 0x140051fec
movsd xmm1, qword [0x140068348]
call fcn.1400511e0
mulsd xmm0, qword [rax + 8]
mov eax, dword [0x140068110]
movss xmm2, dword [0x14006810c]
add eax, eax
mulsd xmm0, xmm1
xorps xmm1, xmm1
cvtps2pd xmm2, xmm2
cvtsi2sd xmm1, eax
mulsd xmm2, qword [0x14005e880]
divsd xmm1, qword [0x14005e7c0]
mulsd xmm2, qword [0x14005e770]
mulsd xmm2, xmm1
divsd xmm0, xmm2
add rsp, 0x20
pop rbx
ret
cmp byte [0x140068a3c], 1
jne 0x1400520c7
cmp byte [0x140068a3b], 1
jne 0x1400520a2
cmp byte [0x140068a56], 1
jne 0x14005206b
movsd xmm1, qword [0x14005e750]
movsd qword [0x140068338], xmm1
jmp 0x140052073
movsd xmm1, qword [0x140068338]
cmp byte [0x140068a3a], 1
je 0x140052098
cmp byte [0x140068a51], 1
je 0x140052098
cmp byte [0x140068a54], 1
jne 0x1400520aa
movsd xmm1, qword [0x14005e760]
jmp 0x1400520aa
movsd xmm1, qword [0x14005e748]
jmp 0x1400520aa
movsd xmm1, qword [0x140068348]
call fcn.1400511e0
mov rax, qword [0x140068a68]
mov rcx, rbx
add rcx, rcx
mulsd xmm0, qword [rax + rcx*8 + 8]
jmp 0x140051ff6
cmp byte [0x140068a64], 1
jne 0x14005210d
mov rax, rbx
shl rax, 4
add rax, qword [0x140068ab0]
cmp byte [0x140068a3b], 1
jne 0x140051fe4
cmp byte [0x140068a56], 1
jne 0x140051fad
movsd xmm1, qword [0x14005e750]
movsd qword [0x140068338], xmm1
jmp 0x140051fb5
cmp byte [0x140068a3f], 1
jne 0x140052153
mov rax, rbx
shl rax, 4
add rax, qword [0x140068ae0]
cmp byte [0x140068a3b], 1
jne 0x140051fe4
cmp byte [0x140068a56], 1
jne 0x140051fad
movsd xmm1, qword [0x14005e750]
movsd qword [0x140068338], xmm1
jmp 0x140051fb5
cmp byte [0x140068a56], 1
jne 0x1400521c3
movzx ecx, byte [0x140068a3b]
mov rax, rbx
shl rax, 4
add rax, qword [0x140068ac8]
cmp cl, 1
jne 0x140051fe4
cmp byte [0x140068a3a], cl
movsd xmm1, qword [0x14005e750]
movsd qword [0x140068338], xmm1
je 0x140051fda
cmp byte [0x140068a51], cl
je 0x140051fda
cmp byte [0x140068a54], cl
jne 0x140051fec
cmp cl, cl
jne 0x140051fec
movsd xmm1, qword [0x14005e760]
jmp 0x140051fec
cmp byte [0x140068a57], 1
jne 0x14005221b
mov rax, rbx
shl rax, 4
add rax, qword [0x140068a80]
cmp byte [0x140068a3b], 1
jne 0x140051fe4
cmp byte [0x140068a3a], 1
je 0x140051fda
cmp byte [0x140068a51], 1
je 0x140051fda
cmp byte [0x140068a54], 1
je 0x140051fd0
movsd xmm1, qword [0x140068338]
jmp 0x140051fec
cmp byte [0x140068a3d], 1
jne 0x14005226f
mov rax, rbx
shl rax, 4
add rax, qword [0x140068a98]
cmp byte [0x140068a3b], 1
jne 0x140051fe4
cmp byte [0x140068a3a], 1
je 0x140051fda
cmp byte [0x140068a51], 1
je 0x140051fda
cmp byte [0x140068a54], 1
jne 0x14005220e
movsd xmm1, qword [0x14005e760]
jmp 0x140051fec
cmp byte [0x140068a55], 1
jne 0x1400522c7
mov rax, rbx
shl rax, 4
add rax, qword [0x140068af8]
cmp byte [0x140068a3b], 1
jne 0x140051fe4
cmp byte [0x140068a3a], 1
je 0x140051fda
cmp byte [0x140068a51], 1
je 0x140051fda
cmp byte [0x140068a54], 1
jne 0x14005220e
movsd xmm1, qword [0x14005e760]
jmp 0x140051fec
cmp byte [0x140068a3e], 1
jne 0x14005231f
mov rax, rbx
shl rax, 4
add rax, qword [0x140068b38]
cmp byte [0x140068a3b], 1
jne 0x140051fe4
cmp byte [0x140068a3a], 1
je 0x140051fda
cmp byte [0x140068a51], 1
je 0x140051fda
cmp byte [0x140068a54], 1
jne 0x14005220e
movsd xmm1, qword [0x14005e760]
jmp 0x140051fec
xorps xmm0, xmm0
add rsp, 0x20
pop rbx
ret