Function at 0x10048584
Capabilities:
Log keystrokes via polling

Disassembly:
sub esp, 0x34
push str.renderKillList__
call fcn.1004d30e
cmp dword [0x101ac888], 0
pop ecx
je 0x100488ef
push esi
mov esi, dword [sym.imp.USER32.dll_GetAsyncKeyState]
push 9
call esi
test ax, ax
jns 0x100485bc
cmp dword [0x101900f4], 0
jne 0x100488ee
mov eax, dword [0x101ac88c]
cmp dword [eax], 0
jne 0x100488ee
push 0x79
call esi
test ax, ax
js 0x100488ee
mov eax, dword [0x10150b3c]
cmp dword [eax + 0x10e], 0
jne 0x100488ee
mov eax, dword [0x101ac888]
push str.kill_list
push 0x101b9e24
push 0x100d4900
push eax
push eax
call fcn.10045d66
add esp, 0x14
cmp dword [0x101b9e24], 0
je 0x100488ee
call fcn.1002b0cc
test eax, eax
jne 0x100488ee
mov eax, dword [0x101b44dc]
movss xmm3, dword [0x100895d8]
mov ecx, dword [0x101b4530]
movss dword [esp + 4], xmm3
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x100783e0]
cvtpd2ps xmm4, xmm0
movss dword [esp + 8], xmm4
test ecx, ecx
je 0x1004867c
push ecx
mov ecx, dword [0x101b4628]
call fcn.1003fd85
mov ecx, dword [0x101b4530]
movss xmm3, dword [0x100895d8]
movss xmm4, dword [esp + 8]
push ebx
push ebp
push edi
xor edi, edi
mov esi, dword [0x101ac888]
add esi, 4
add esi, edi
lea ebx, [esi + 0x19]
mov edx, ebx
lea ebp, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x10048694
sub edx, ebp
je 0x100488b7
movzx eax, byte [esi + 0x3a]
cmp eax, 0x31
jne 0x100486b0
push 0x14
jmp 0x100486ca
cmp eax, 0x36
jne 0x100486b9
push 0x15
jmp 0x100486ca
cmp eax, 0x12
jb 0x100486c3
cmp eax, 0x14
jbe 0x100486c8
cmp eax, 0x2f
jb 0x100486cb
push 0x13
pop eax
test ecx, ecx
je 0x1004877f
push 0xa
pop ecx
xor edx, edx
sub esp, 0x20
div ecx
imul eax, eax, 0x18
imul ecx, edx, 0x18
movd xmm1, eax
cvtdq2ps xmm1, xmm1
movd xmm2, ecx
mulss xmm1, dword [0x10089530]
mov ecx, dword [0x101b4628]
cvtdq2ps xmm2, xmm2
movaps xmm0, xmm1
addss xmm0, dword [0x10089540]
mulss xmm2, dword [0x10089530]
movss dword [esp + 0x1c], xmm0
movaps xmm0, xmm2
addss xmm0, dword [0x10089540]
movss dword [esp + 0x18], xmm0
movaps xmm0, xmm3
addss xmm0, dword [0x1007dc5c]
movss dword [esp + 0x14], xmm1
movss dword [esp + 0x10], xmm2
movss dword [esp + 0xc], xmm0
movaps xmm0, xmm4
subss xmm0, dword [0x100895c0]
movss dword [esp + 8], xmm0
movaps xmm0, xmm3
subss xmm0, dword [0x1007dc5c]
movss dword [esp + 4], xmm0
movaps xmm0, xmm4
subss xmm0, dword [0x100895d0]
movss dword [esp], xmm0
call fcn.10040106
jmp 0x100487cd
push eax
lea eax, [esp + 0x28]
push 0x1008814c
push eax
call fcn.1000b0cc
movss xmm0, dword [esp + 0x1c]
lea eax, [esp + 0x30]
subss xmm0, dword [0x1007dc5c]
add esp, 0xc
push eax
push 0xffffffffffffffff
push ecx
push ecx
mov ecx, dword [0x101b4640]
movss dword [esp + 4], xmm0
movss xmm0, dword [esp + 0x24]
subss xmm0, dword [0x100895d0]
movss dword [esp], xmm0
call fcn.1004120b
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100487d2
movss xmm1, dword [esp + 0x10]
sub ecx, edx
mov ecx, dword [0x101b4640]
push 0
movss xmm0, dword [ecx + 0xe46]
mulss xmm0, dword [0x100783cc]
subss xmm1, xmm0
movss xmm0, dword [esp + 0x18]
subss xmm0, dword [0x100895d4]
movss dword [esp + 0x20], xmm1
movss dword [esp + 0x24], xmm0
jne 0x10048843
push ebx
call fcn.10040308
movss xmm0, dword [esp + 0x1c]
push ebx
push dword [esi + 0x36]
fstp dword [esp + 0x20]
push ecx
push ecx
movss dword [esp + 4], xmm0
movss xmm0, dword [esp + 0x30]
subss xmm0, dword [esp + 0x28]
jmp 0x1004889b
push esi
call fcn.10040308
movss xmm0, dword [esp + 0x1c]
push esi
push dword [esi + 0x32]
fstp dword [esp + 0x20]
push ecx
push ecx
mov ecx, dword [0x101b4640]
movss dword [esp + 4], xmm0
movss xmm0, dword [esp + 0x30]
subss xmm0, dword [esp + 0x28]
movss dword [esp], xmm0
call fcn.1004120b
movss xmm0, dword [esp + 0x1c]
push ebx
push dword [esi + 0x36]
push ecx
push ecx
movss dword [esp + 4], xmm0
movss xmm0, dword [esp + 0x24]
subss xmm0, dword [0x100895bc]
mov ecx, dword [0x101b4640]
movss dword [esp], xmm0
call fcn.1004120b
movss xmm3, dword [esp + 0x10]
mov ecx, dword [0x101b4530]
addss xmm3, dword [0x10089580]
movss xmm4, dword [esp + 0x14]
add edi, 0x3b
movss dword [esp + 0x10], xmm3
cmp edi, 0x127
jl 0x10048681
pop edi
pop ebp
pop ebx
test ecx, ecx
je 0x100488ee
mov ecx, dword [0x101b4628]
push 0
call fcn.1003fd85
pop esi
add esp, 0x34
ret