Function at 0x14048f4d0
Capabilities:
Log keystrokes via polling

Disassembly:
push rbp
push r15
push r14
push r12
push rsi
push rdi
push rbx
sub rsp, 0xf0
lea rbp, [rsp + 0x80]
movaps xmmword [rbp + 0x60], xmm7
movdqa xmmword [rbp + 0x50], xmm6
mov qword [rbp + 0x48], 0xfffffffffffffffe
mov r14, rcx
mov r12d, dword [0x140ae7668]
mov r15d, dword [0x140ae766c]
mov r8d, dword [0x140aca89c]
add r8, qword [0x140ae76e0]
lea rdi, [0x140ae75f8]
lea rdx, [rbp - 0x18]
mov r9d, ntohs
mov rcx, rdi
call fcn.1403879b0
mov r8d, dword [0x140aca8e0]
add r8, qword [0x140ae7828]
lea rdx, [rbp - 0x48]
mov r9d, Ordinal_32
mov rcx, rdi
call fcn.140384320
movss xmm1, dword [rbp - 0x34]
movss xmm0, dword [rbp - 0x3c]
movd xmm2, dword [rbp - 0x38]
mov eax, dword [0x140ae0d80]
mov ecx, dword [0x140ae0d84]
lea edx, [rax - 1]
imul edx, eax
test dl, 1
sete byte [rbp + 0x40]
mov eax, 0xfd17c9fa
mov esi, 0xa48902e5
cmove esi, eax
cmp ecx, 0xa
setl byte [rbp - 8]
lea r8, [rbp + 0x24]
cmovl esi, eax
mov eax, 0x1d44077a
mov edi, 0x64c51a5e
nop
cmp eax, 0xfd17c9f9
jg 0x14048f5c0
cmp eax, 0x933c2d37
je 0x14048f5ec
cmp eax, 0xa48902e5
je 0x14048f5f8
cmp eax, 0xda2046c0
jne 0x14048f5a0
jmp 0x14048f614
cmp eax, 0xfd17c9fa
je 0x14048f604
cmp eax, 0x64c51a5e
je 0x14048f60b
cmp eax, 0x1d44077a
jne 0x14048f5a0
movzx ebx, byte [rbp + 0x40]
cmp byte [rbp - 8], 0
mov eax, 0xa48902e5
cmovne eax, edi
test bl, bl
cmovne eax, edi
jmp 0x14048f5a0
movd dword [rbp + 0x24], xmm2
mov eax, 0xda2046c0
jmp 0x14048f5a0
movss dword [rbp + 0x20], xmm0
mov eax, 0x64c51a5e
jmp 0x14048f5a0
mov eax, 0x933c2d37
jmp 0x14048f5a0
movss dword [rbp + 0x20], xmm0
mov eax, esi
jmp 0x14048f5a0
movd xmm2, r12d
movd xmm3, r15d
punpckldq xmm3, xmm2
cvtdq2ps xmm7, xmm3
movss dword [rbp + 0x28], xmm1
movss xmm3, dword [rbp - 0x18]
movss xmm4, dword [rbp - 0x14]
subss xmm1, dword [rbp - 0x10]
mov eax, 0xa2a5b00f
nop
cmp eax, 0xa2a5b00f
je 0x14048f650
cmp eax, 0x279b2815
jne 0x14048f640
jmp 0x14048f657
mov eax, 0x279b2815
jmp 0x14048f640
test dl, 1
movss dword [rbp + 0x38], xmm1
mov qword [rbp + 0x40], r8
mov rax, qword [rbp + 0x40]
movss xmm1, dword [rax]
movss xmm2, dword [rbp + 0x38]
sete byte [rbp + 0x18]
cmp ecx, 0xa
setl byte [rbp + 0x30]
subss xmm1, xmm4
subss xmm0, xmm3
mov eax, 0x1d44077a
mov ecx, 0x64c51a5e
nop dword [rax]
cmp eax, 0xfd17c9f9
jg 0x14048f6b0
cmp eax, 0x933c2d37
je 0x14048f6dc
cmp eax, 0xa48902e5
je 0x14048f6e3
cmp eax, 0xda2046c0
jne 0x14048f690
jmp 0x14048f6f5
cmp eax, 0xfd17c9fa
je 0x14048f6ea
cmp eax, 0x64c51a5e
je 0x14048f6f1
cmp eax, 0x1d44077a
jne 0x14048f690
movzx edx, byte [rbp + 0x18]
cmp byte [rbp + 0x30], 0
mov eax, 0xa48902e5
cmovne eax, ecx
test dl, dl
cmovne eax, ecx
jmp 0x14048f690
mov eax, 0xda2046c0
jmp 0x14048f690
mov eax, 0x64c51a5e
jmp 0x14048f690
mov eax, 0x933c2d37
jmp 0x14048f690
mov eax, esi
jmp 0x14048f690
movss dword [rbp + 8], xmm0
movss dword [rbp + 0xc], xmm1
movss dword [rbp + 0x10], xmm2
lea rcx, [rbp - 8]
lea rdx, [rbp + 8]
call fcn.140386c40
movaps xmm0, xmmword [0x14066ec10]
mulps xmm0, xmm7
cvttps2dq xmm6, xmm0
mov ecx, 1
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x14048f749
mov dword [0x140ae79fc], 0
xorps xmm0, xmm0
movss dword [0x140ae7a00], xmm0
jmp 0x14048fa2b
divps xmm7, xmmword [0x1406840c0]
cvttps2dq xmm7, xmm7
lea rcx, [rbp + 0x40]
call fcn.1403de590
mov rax, qword [rbp + 0x40]
mov qword [0x140ae7a38], rax
lea rdx, [0x140ae7a38]
lea r8, [0x140ae7a40]
lea rcx, [rbp - 0x20]
call fcn.14048f270
mov eax, 0xce707985
nop word cs:[rax + rax]
nop
cmp eax, 0xce707985
je 0x14048f7a0
cmp eax, 0x75c2ba99
jne 0x14048f790
jmp 0x14048f7a7
mov eax, 0x75c2ba99
jmp 0x14048f790
lea rax, [rbp - 0x28]
mov qword [rbp + 0x30], rax
lea rcx, [rbp + 0x18]
mov qword [rbp + 0x38], rcx
mov rax, qword [rbp + 0x38]
lea rdx, [rbp - 0x20]
call fcn.1405a99c0
mov eax, 0x16178d65
movsd xmm0, qword [rbp + 0x18]
nop
cmp eax, 0x16178d65
je 0x14048f7e0
cmp eax, 0xc38dec3e
jne 0x14048f7d0
jmp 0x14048f7e7
mov eax, 0xc38dec3e
jmp 0x14048f7d0
movsd qword [rbp + 0x40], xmm0
movsd xmm0, qword [rbp + 0x40]
mov rax, qword [rbp + 0x38]
mov rax, qword [rbp + 0x30]
movsd qword [rax], xmm0
mov eax, 0x16178d65
movsd xmm0, qword [rbp - 0x28]
nop word [rax + rax]
cmp eax, 0x16178d65
je 0x14048f820
cmp eax, 0xc38dec3e
jne 0x14048f810
jmp 0x14048f827
mov eax, 0xc38dec3e
jmp 0x14048f810
movsd qword [rbp + 0x40], xmm0
movsd xmm0, qword [rbp + 0x40]
cvtdq2ps xmm1, xmm7
movsd xmm2, qword [rbp - 8]
mulps xmm2, xmm1
cvtdq2ps xmm1, xmm6
movaps xmm3, xmm1
subps xmm3, xmm2
addps xmm2, xmm1
shufps xmm2, xmm3, 1
shufps xmm2, xmm3, 0xe2
cvttps2dq xmm6, xmm2
ucomisd xmm0, qword [0x14066f4b0]
jbe 0x14048fa2b
lea rcx, [rbp + 0x40]
call fcn.1403de590
mov eax, dword [0x140ae7660]
pshufd xmm0, xmm6, 0x55
movd ecx, xmm0
sub eax, ecx
mov ebx, dword [0x140ae9408]
mov ecx, dword [0x140ae940c]
lea edx, [rbx - 1]
imul edx, ebx
test dl, 1
sete byte [rbp + 0x30]
mov ebx, 0xba79c28f
mov edi, 0xd7e5f6b9
cmove edi, ebx
cmp ecx, 0xa
setl byte [rbp + 0x38]
mov rsi, qword [rbp + 0x40]
mov qword [0x140ae7a40], rsi
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
cmovl edi, ebx
mov eax, 0xd3b93cb
mov esi, 0xc272c1fe
nop dword [rax]
cmp eax, 0xd3b93ca
jg 0x14048f900
cmp eax, 0xba79c28f
je 0x14048f92c
cmp eax, 0xc272c1fe
je 0x14048f933
cmp eax, 0xd7e5f6b9
jne 0x14048f8d0
mov eax, 0xc272c1fe
jmp 0x14048f8d0
cmp eax, 0x7a1bee7d
je 0x14048f93e
cmp eax, 0x4467f86e
je 0x14048f937
cmp eax, 0xd3b93cb
jne 0x14048f8d0
movzx ebx, byte [rbp + 0x30]
cmp byte [rbp + 0x38], 0
mov eax, 0xd7e5f6b9
cmovne eax, esi
test bl, bl
cmovne eax, esi
jmp 0x14048f8d0
mov eax, 0x4467f86e
jmp 0x14048f8d0
mov eax, edi
jmp 0x14048f8d0
mov eax, 0x7a1bee7d
jmp 0x14048f8d0
mov eax, dword [0x140ae7664]
movd ebx, xmm6
sub eax, ebx
test dl, 1
movsd qword [rbp + 0x40], xmm0
movsd xmm0, qword [rbp + 0x40]
cvtsd2ss xmm0, xmm0
movss dword [0x140ae79fc], xmm0
sete byte [rbp + 0x30]
cmp ecx, 0xa
setl byte [rbp + 0x38]
xorps xmm1, xmm1
cvtsi2sd xmm1, rax
mov edx, 0xd3b93cb
mov ecx, 0xc272c1fe
cmp edx, 0xd3b93ca
jg 0x14048f9b0
cmp edx, 0xba79c28f
je 0x14048f9df
cmp edx, 0xc272c1fe
je 0x14048f9e6
cmp edx, 0xd7e5f6b9
jne 0x14048f980
mov edx, 0xc272c1fe
jmp 0x14048f980
cmp edx, 0x7a1bee7d
je 0x14048f9f1
cmp edx, 0x4467f86e
je 0x14048f9ea
cmp edx, 0xd3b93cb
jne 0x14048f980
movzx eax, byte [rbp + 0x30]
cmp byte [rbp + 0x38], 0
mov edx, 0xd7e5f6b9
cmovne edx, ecx
test al, al
cmovne edx, ecx
jmp 0x14048f980
mov edx, 0x4467f86e
jmp 0x14048f980
mov edx, edi
jmp 0x14048f980
mov edx, 0x7a1bee7d
jmp 0x14048f980
movsd qword [rbp + 0x40], xmm1
movsd xmm1, qword [rbp + 0x40]
cvtsd2ss xmm1, xmm1
movss dword [0x140ae7a00], xmm1
ucomiss xmm0, dword [0x14066f498]
jbe 0x14048fa1a
mov dword [0x140ae79fc], 0x42b40000
movss xmm0, dword [0x14066f498]
ucomiss xmm1, xmm0
ja 0x14048f73c
cmp byte [0x140ae7d46], 0
je 0x14048fa58
movups xmm0, xmmword [r14]
movaps xmmword [rbp - 0x60], xmm0
movd edx, xmm6
pshufd xmm0, xmm6, 0x55
movd ecx, xmm0
lea r9, [rbp - 0x60]
mov r8d, 3
call fcn.14039a900
mov eax, 0xbbe4760e
nop dword [rax]
cmp eax, 0xbbe4760e
je 0x14048fa70
cmp eax, 0x1d0e94a6
jne 0x14048fa60
jmp 0x14048fa77
mov eax, 0x1d0e94a6
jmp 0x14048fa60
lea rax, [rbp - 0x48]
mov qword [rbp + 0x20], rax
mov rax, qword [rbp + 0x20]
movaps xmm6, xmmword [rbp + 0x50]
movaps xmm7, xmmword [rbp + 0x60]
add rsp, 0xf0
pop rbx
pop rdi
pop rsi
pop r12
pop r14
pop r15
pop rbp
ret