Function at 0x140039e70
Capabilities:
Log keystrokes via polling

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
push rbp
push rdi
push r14
lea rbp, [rax - 0xd8]
sub rsp, 0x1c0
movaps xmmword [rax - 0x28], xmm6
movaps xmmword [rax - 0x38], xmm7
movaps xmmword [rax - 0x48], xmm8
movaps xmmword [rax - 0x58], xmm9
mov rbx, rcx
xor ecx, ecx
call qword [sym.imp.USER32.dll_GetSystemMetrics]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss xmm7, dword [rbx + 0x10]
subss xmm7, xmm0
mov ecx, 1
call qword [sym.imp.USER32.dll_GetSystemMetrics]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss xmm8, dword [rbx + 0x14]
subss xmm8, xmm0
call fcn.1400596b0
movd xmm6, eax
cvtdq2ps xmm6, xmm6
mulss xmm6, dword [0x14009c1f8]
mov ecx, dword [reloc.XINPUT1_3.dll_Ordinal_2]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
movss xmm0, dword [0x1400af080]
test ax, ax
jne 0x140039f2d
comiss xmm0, dword [0x14009c254]
jae 0x140039f2d
cmp byte [0x1400aced0], al
jne 0x140039fb6
movss xmm1, dword [0x1400acedc]
jmp 0x140039f8d
cmp byte [0x1400af0a4], 0
je 0x140039f7c
mulss xmm0, dword [0x14009c294]
movss xmm2, dword [0x14009c2c4]
movaps xmm1, xmm2
subss xmm1, xmm0
cmp byte [0x1400acefc], 0
jne 0x140039f5e
movss xmm1, dword [0x1400acee0]
movaps xmm0, xmm1
addss xmm0, dword [0x14009c2d8]
addss xmm0, xmm1
divss xmm2, xmm0
mulss xmm7, xmm2
mulss xmm8, xmm2
jmp 0x140039fb6
cmp byte [0x1400aced0], 0
jne 0x140039fb6
movss xmm1, dword [0x1400acee0]
addss xmm1, dword [0x14009c250]
addss xmm1, xmm6
movss xmm0, dword [0x14009c2c4]
addss xmm1, xmm1
addss xmm1, xmm0
divss xmm0, xmm1
mulss xmm8, xmm0
mulss xmm7, xmm0
movss xmm9, dword [0x1400acf40]
mulss xmm9, dword [0x14009c230]
movss xmm6, dword [0x1400acf44]
mulss xmm6, dword [0x14009c230]
cmp byte [0x1400aced2], 0
je 0x14003a01c
mov ecx, dword [reloc.XINPUT1_3.dll_Ordinal_2]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jne 0x14003a003
movss xmm0, dword [0x1400af080]
comiss xmm0, dword [0x14009c254]
jbe 0x14003a01c
movss xmm0, dword [0x14009c3a4]
divss xmm0, dword [0x1400acf48]
mulss xmm9, xmm0
mulss xmm6, xmm0
mulss xmm7, xmm9
mulss xmm6, xmm8
movd xmm0, dword [0x1400acef8]
cvtdq2ps xmm0, xmm0
addss xmm6, xmm0
movss dword [0x1400af258], xmm7
movss dword [0x1400af25c], xmm6
movabs rax, 0x205834202da4fb62
mov qword [rsp + 0x20], rax
movabs rsi, 0xa115b44db0646fc8
mov qword [rsp + 0x28], rsi
movabs r14, 0x205834202da4fb3f
mov qword [rbp + 0x70], r14
mov qword [rbp + 0x78], rsi
movdqa xmm0, xmmword [rsp + 0x20]
xorps xmm0, xmmword [rbp + 0x70]
movdqa xmmword [rsp + 0x20], xmm0
xorps xmm0, xmm0
movups xmmword [rbp - 0x10], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp], xmm1
lea rax, [rsp + 0x20]
mov rdi, 0xffffffffffffffff
mov r8, rdi
inc r8
cmp byte [rax + r8], 0
jne 0x14003a0a3
lea rdx, [rsp + 0x20]
lea rcx, [rbp - 0x10]
call fcn.140038b20
nop
cvtss2sd xmm6, xmm6
movaps xmm1, xmm6
movq rdx, xmm6
lea rcx, [0x14009b7b0]
call fcn.1400391a0
movsxd rbx, eax
xor r8d, r8d
mov rdx, rbx
lea rcx, [rsp + 0x50]
call fcn.140044120
lea rcx, [rsp + 0x50]
cmp qword [rsp + 0x68], 0x10
cmovae rcx, qword [rsp + 0x50]
lea rdx, [rbx + 1]
movaps xmm3, xmm6
movq r9, xmm6
lea r8, [0x14009b7b0]
call fcn.140039140
nop
movabs rax, 0x205834202da4fb13
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], rsi
mov qword [rbp + 0x70], r14
mov qword [rbp + 0x78], rsi
movdqa xmm0, xmmword [rsp + 0x20]
xorps xmm0, xmmword [rbp + 0x70]
movdqa xmmword [rsp + 0x20], xmm0
xorps xmm0, xmm0
movups xmmword [rbp - 0x30], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x20], xmm1
lea rax, [rsp + 0x20]
mov r8, rdi
inc r8
cmp byte [rax + r8], 0
jne 0x14003a154
lea rdx, [rsp + 0x20]
lea rcx, [rbp - 0x30]
call fcn.140038b20
nop
xorps xmm6, xmm6
cvtss2sd xmm6, xmm7
movaps xmm1, xmm6
movq rdx, xmm6
lea rcx, [0x14009b7b0]
call fcn.1400391a0
movsxd rbx, eax
xor r8d, r8d
mov rdx, rbx
lea rcx, [rsp + 0x30]
call fcn.140044120
lea rcx, [rsp + 0x30]
cmp qword [rsp + 0x48], 0x10
cmovae rcx, qword [rsp + 0x30]
lea rdx, [rbx + 1]
movaps xmm3, xmm6
movq r9, xmm6
lea r8, [0x14009b7b0]
call fcn.140039140
nop
movabs rax, 0x625b7448d29472
mov qword [rsp + 0x20], rax
movabs rax, 0xa115b44db0646f93
mov qword [rsp + 0x28], rax
mov qword [rbp + 0x70], r14
mov qword [rbp + 0x78], rsi
movdqa xmm0, xmmword [rsp + 0x20]
xorps xmm0, xmmword [rbp + 0x70]
movdqa xmmword [rsp + 0x20], xmm0
xorps xmm0, xmm0
movups xmmword [rbp - 0x50], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x40], xmm1
lea rax, [rsp + 0x20]
mov r8, rdi
inc r8
cmp byte [rax + r8], 0
jne 0x14003a212
lea rdx, [rsp + 0x20]
lea rcx, [rbp - 0x50]
call fcn.140038b20
nop
lea r9, [rsp + 0x30]
lea r8, [rbp - 0x50]
lea rcx, [rbp + 0x50]
call fcn.140044ae0
nop
lea r9, [rbp - 0x30]
lea r8, [rbp + 0x50]
lea rcx, [rbp + 0x30]
call fcn.140044ae0
nop
lea r9, [rsp + 0x50]
lea r8, [rbp + 0x30]
lea rcx, [rbp + 0x10]
call fcn.140044ae0
nop
lea r9, [rbp - 0x10]
lea r8, [rbp + 0x10]
lea rcx, [rbp - 0x70]
call fcn.140044ae0
nop
lea rdx, [rbp - 0x70]
cmp qword [rbp - 0x58], 0x10
cmovae rdx, qword [rbp - 0x70]
xorps xmm0, xmm0
movups xmmword [rsp + 0x70], xmm0
mov qword [rbp - 0x80], 0
mov qword [rbp - 0x78], 0
nop dword [rax + rax]
inc rdi
cmp byte [rdx + rdi], 0
jne 0x14003a2a0
mov r8, rdi
lea rcx, [rsp + 0x70]
call fcn.140038b20
lea rdx, [rsp + 0x70]
mov ecx, 3
call fcn.1400392c0
nop
mov rdx, qword [rbp - 0x58]
cmp rdx, 0x10
jb 0x14003a302
inc rdx
mov rcx, qword [rbp - 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003a2fc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a537
call fcn.140045e10
nop
mov rdx, qword [rbp + 0x28]
cmp rdx, 0x10
jb 0x14003a33e
inc rdx
mov rcx, qword [rbp + 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003a338
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a53d
call fcn.140045e10
nop
mov rdx, qword [rbp + 0x48]
cmp rdx, 0x10
jb 0x14003a37a
inc rdx
mov rcx, qword [rbp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003a374
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a543
call fcn.140045e10
nop
mov rdx, qword [rbp + 0x68]
cmp rdx, 0x10
jb 0x14003a3b6
inc rdx
mov rcx, qword [rbp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003a3b0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a549
call fcn.140045e10
nop
mov rdx, qword [rbp - 0x38]
cmp rdx, 0x10
jb 0x14003a3f2
inc rdx
mov rcx, qword [rbp - 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003a3ec
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a54f
call fcn.140045e10
nop
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x14003a42f
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003a42a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a555
call fcn.140045e10
movdqa xmm0, xmmword [0x14009c460]
movdqu xmmword [rsp + 0x40], xmm0
mov byte [rsp + 0x30], 0
mov rdx, qword [rbp - 0x18]
cmp rdx, 0x10
jb 0x14003a47e
inc rdx
mov rcx, qword [rbp - 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003a478
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a55b
call fcn.140045e10
nop
mov rdx, qword [rsp + 0x68]
cmp rdx, 0x10
jb 0x14003a4bb
inc rdx
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003a4b6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a561
call fcn.140045e10
movdqa xmm0, xmmword [0x14009c460]
movdqu xmmword [rsp + 0x60], xmm0
mov byte [rsp + 0x50], 0
mov rdx, qword [rbp + 8]
cmp rdx, 0x10
jb 0x14003a505
inc rdx
mov rcx, qword [rbp - 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003a500
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a531
call fcn.140045e10
lea r11, [rsp + 0x1c0]
mov rbx, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
mov rsp, r11
pop r14
pop rdi
pop rbp
ret
call fcn.140059638
nop
call fcn.140059638
nop
call fcn.140059638
nop
call fcn.140059638
nop
call fcn.140059638
nop
call fcn.140059638
nop
call fcn.140059638
nop
call fcn.140059638
nop
call fcn.140059638
int3