Function at 0x140056050
Capabilities:
Log keystrokes via polling

Disassembly:
push rbx
sub rsp, 0x20
movsxd rbx, ecx
mov ecx, reloc.WS2_32.dll_recvfrom
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x14005643e
cmp byte [0x140102743], 1
jne 0x140056141
mov rax, rbx
shl rax, 4
add rax, qword [0x140102880]
cmp byte [0x14010272b], 1
jne 0x1400560e3
cmp byte [0x140102746], 1
jne 0x1400560ac
movsd xmm1, qword [0x1400ec750]
movsd qword [0x140101338], xmm1
jmp 0x1400560b4
movsd xmm1, qword [0x140101338]
cmp byte [0x14010272a], 1
je 0x1400560d9
cmp byte [0x140102741], 1
je 0x1400560d9
cmp byte [0x140102744], 1
jne 0x1400560eb
movsd xmm1, qword [0x1400ec760]
jmp 0x1400560eb
movsd xmm1, qword [0x1400ec748]
jmp 0x1400560eb
movsd xmm1, qword [0x140101348]
call fcn.1400556e0
mulsd xmm0, qword [rax + 8]
mulsd xmm0, xmm1
movss xmm1, dword [0x14010110c]
mulss xmm1, dword [0x1400ec768]
cvtps2pd xmm2, xmm1
mov eax, dword [0x140101110]
xorps xmm1, xmm1
mulsd xmm2, qword [0x1400ec880]
add eax, eax
cvtsi2sd xmm1, eax
mulsd xmm2, qword [0x1400ec770]
divsd xmm1, qword [0x1400ec7c0]
mulsd xmm2, xmm1
divsd xmm0, xmm2
add rsp, 0x20
pop rbx
ret
cmp byte [0x14010272c], 1
jne 0x140056183
mov rax, rbx
shl rax, 4
add rax, qword [0x140102758]
cmp byte [0x14010272b], 1
jne 0x1400560e3
cmp byte [0x140102746], 1
jne 0x1400560ac
movsd xmm1, qword [0x1400ec750]
movsd qword [0x140101338], xmm1
jmp 0x1400560b4
cmp byte [0x140102754], 1
jne 0x1400561c9
mov rax, rbx
shl rax, 4
add rax, qword [0x140102800]
cmp byte [0x14010272b], 1
jne 0x1400560e3
cmp byte [0x140102746], 1
jne 0x1400560ac
movsd xmm1, qword [0x1400ec750]
movsd qword [0x140101338], xmm1
jmp 0x1400560b4
cmp byte [0x14010272f], 1
jne 0x14005620f
mov rax, rbx
shl rax, 4
add rax, qword [0x140102850]
cmp byte [0x14010272b], 1
jne 0x1400560e3
cmp byte [0x140102746], 1
jne 0x1400560ac
movsd xmm1, qword [0x1400ec750]
movsd qword [0x140101338], xmm1
jmp 0x1400560b4
cmp byte [0x140102746], 1
jne 0x14005627f
movzx ecx, byte [0x14010272b]
mov rax, rbx
shl rax, 4
add rax, qword [0x140102818]
cmp cl, 1
jne 0x1400560e3
cmp byte [0x14010272a], cl
movsd xmm1, qword [0x1400ec750]
movsd qword [0x140101338], xmm1
je 0x1400560d9
cmp byte [0x140102741], cl
je 0x1400560d9
cmp byte [0x140102744], cl
jne 0x1400560eb
cmp cl, cl
jne 0x1400560eb
movsd xmm1, qword [0x1400ec760]
jmp 0x1400560eb
cmp byte [0x140102747], 1
jne 0x1400562d7
mov rax, rbx
shl rax, 4
add rax, qword [0x140102790]
cmp byte [0x14010272b], 1
jne 0x1400560e3
cmp byte [0x14010272a], 1
je 0x1400560d9
cmp byte [0x140102741], 1
je 0x1400560d9
cmp byte [0x140102744], 1
je 0x1400560cf
movsd xmm1, qword [0x140101338]
jmp 0x1400560eb
cmp byte [0x14010272d], 1
jne 0x14005632b
mov rax, rbx
shl rax, 4
add rax, qword [0x1401027c8]
cmp byte [0x14010272b], 1
jne 0x1400560e3
cmp byte [0x14010272a], 1
je 0x1400560d9
cmp byte [0x140102741], 1
je 0x1400560d9
cmp byte [0x140102744], 1
jne 0x1400562ca
movsd xmm1, qword [0x1400ec760]
jmp 0x1400560eb
cmp byte [0x140102745], 1
jne 0x140056383
mov rax, rbx
shl rax, 4
add rax, qword [0x140102868]
cmp byte [0x14010272b], 1
jne 0x1400560e3
cmp byte [0x14010272a], 1
je 0x1400560d9
cmp byte [0x140102741], 1
je 0x1400560d9
cmp byte [0x140102744], 1
jne 0x1400562ca
movsd xmm1, qword [0x1400ec760]
jmp 0x1400560eb
cmp byte [0x14010272e], 1
jne 0x1400567ce
cmp byte [0x14010272b], 1
jne 0x1400563d2
cmp byte [0x14010272a], 1
je 0x1400563c8
cmp byte [0x140102741], 1
je 0x1400563c8
cmp byte [0x140102744], 1
jne 0x1400563be
movsd xmm1, qword [0x1400ec760]
jmp 0x1400563da
movsd xmm1, qword [0x140101338]
jmp 0x1400563da
movsd xmm1, qword [0x1400ec748]
jmp 0x1400563da
movsd xmm1, qword [0x140101348]
call fcn.1400556e0
mov rax, qword [0x1401028c8]
mov rcx, rbx
add rcx, rcx
mulsd xmm0, qword [rax + rcx*8 + 8]
mov eax, dword [0x140101110]
add eax, eax
mulsd xmm0, xmm1
movss xmm1, dword [0x14010110c]
mulss xmm1, dword [0x1400ec768]
cvtps2pd xmm2, xmm1
xorps xmm1, xmm1
mulsd xmm2, qword [0x1400ec880]
cvtsi2sd xmm1, eax
mulsd xmm2, qword [0x1400ec770]
divsd xmm1, qword [0x1400ec7c0]
mulsd xmm2, xmm1
divsd xmm0, xmm2
add rsp, 0x20
pop rbx
ret
cmp byte [0x140102743], 1
jne 0x1400564da
mov rax, rbx
shl rax, 4
add rax, qword [0x140102880]
cmp byte [0x14010272b], 1
jne 0x1400564b4
cmp byte [0x140102746], 1
jne 0x14005647d
movsd xmm1, qword [0x1400ec750]
movsd qword [0x140101338], xmm1
jmp 0x140056485
movsd xmm1, qword [0x140101338]
cmp byte [0x14010272a], 1
je 0x1400564aa
cmp byte [0x140102741], 1
je 0x1400564aa
cmp byte [0x140102744], 1
jne 0x1400564bc
movsd xmm1, qword [0x1400ec760]
jmp 0x1400564bc
movsd xmm1, qword [0x1400ec748]
jmp 0x1400564bc
movsd xmm1, qword [0x140101348]
call fcn.1400556e0
mulsd xmm0, qword [rax + 8]
movss xmm2, dword [0x14010110c]
cvtps2pd xmm2, xmm2
mulsd xmm0, xmm1
jmp 0x14005610c
cmp byte [0x14010272c], 1
jne 0x140056576
cmp byte [0x14010272b], 1
jne 0x140056542
cmp byte [0x140102746], 1
jne 0x14005650b
movsd xmm1, qword [0x1400ec750]
movsd qword [0x140101338], xmm1
jmp 0x140056513
movsd xmm1, qword [0x140101338]
cmp byte [0x14010272a], 1
je 0x140056538
cmp byte [0x140102741], 1
je 0x140056538
cmp byte [0x140102744], 1
jne 0x14005654a
movsd xmm1, qword [0x1400ec760]
jmp 0x14005654a
movsd xmm1, qword [0x1400ec748]
jmp 0x14005654a
movsd xmm1, qword [0x140101348]
call fcn.1400556e0
mov rax, qword [0x140102758]
mov rcx, rbx
movss xmm2, dword [0x14010110c]
add rcx, rcx
cvtps2pd xmm2, xmm2
mulsd xmm0, qword [rax + rcx*8 + 8]
mulsd xmm0, xmm1
jmp 0x14005610c
cmp byte [0x140102754], 1
jne 0x1400565bc
mov rax, rbx
shl rax, 4
add rax, qword [0x140102800]
cmp byte [0x14010272b], 1
jne 0x1400564b4
cmp byte [0x140102746], 1
jne 0x14005647d
movsd xmm1, qword [0x1400ec750]
movsd qword [0x140101338], xmm1
jmp 0x140056485
cmp byte [0x14010272f], 1
jne 0x140056602
mov rax, rbx
shl rax, 4
add rax, qword [0x140102850]
cmp byte [0x14010272b], 1
jne 0x1400564b4
cmp byte [0x140102746], 1
jne 0x14005647d
movsd xmm1, qword [0x1400ec750]
movsd qword [0x140101338], xmm1
jmp 0x140056485
cmp byte [0x140102746], 1
jne 0x140056672
movzx ecx, byte [0x14010272b]
mov rax, rbx
shl rax, 4
add rax, qword [0x140102818]
cmp cl, 1
jne 0x1400564b4
cmp byte [0x14010272a], cl
movsd xmm1, qword [0x1400ec750]
movsd qword [0x140101338], xmm1
je 0x1400564aa
cmp byte [0x140102741], cl
je 0x1400564aa
cmp byte [0x140102744], cl
jne 0x1400564bc
cmp cl, cl
jne 0x1400564bc
movsd xmm1, qword [0x1400ec760]
jmp 0x1400564bc
cmp byte [0x140102747], 1
jne 0x1400566ca
mov rax, rbx
shl rax, 4
add rax, qword [0x140102790]
cmp byte [0x14010272b], 1
jne 0x1400564b4
cmp byte [0x14010272a], 1
je 0x1400564aa
cmp byte [0x140102741], 1
je 0x1400564aa
cmp byte [0x140102744], 1
je 0x1400564a0
movsd xmm1, qword [0x140101338]
jmp 0x1400564bc
cmp byte [0x14010272d], 1
jne 0x14005671e
mov rax, rbx
shl rax, 4
add rax, qword [0x1401027c8]
cmp byte [0x14010272b], 1
jne 0x1400564b4
cmp byte [0x14010272a], 1
je 0x1400564aa
cmp byte [0x140102741], 1
je 0x1400564aa
cmp byte [0x140102744], 1
jne 0x1400566bd
movsd xmm1, qword [0x1400ec760]
jmp 0x1400564bc
cmp byte [0x140102745], 1
jne 0x140056776
mov rax, rbx
shl rax, 4
add rax, qword [0x140102868]
cmp byte [0x14010272b], 1
jne 0x1400564b4
cmp byte [0x14010272a], 1
je 0x1400564aa
cmp byte [0x140102741], 1
je 0x1400564aa
cmp byte [0x140102744], 1
jne 0x1400566bd
movsd xmm1, qword [0x1400ec760]
jmp 0x1400564bc
cmp byte [0x14010272e], 1
jne 0x1400567ce
mov rax, rbx
shl rax, 4
add rax, qword [0x1401028c8]
cmp byte [0x14010272b], 1
jne 0x1400564b4
cmp byte [0x14010272a], 1
je 0x1400564aa
cmp byte [0x140102741], 1
je 0x1400564aa
cmp byte [0x140102744], 1
jne 0x1400566bd
movsd xmm1, qword [0x1400ec760]
jmp 0x1400564bc
xorps xmm0, xmm0
add rsp, 0x20
pop rbx
ret