Function at 0x100053c0
Capabilities:
Log keystrokes via polling

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x3c
push ebx
push esi
push edi
mov edi, dword [ebp + 8]
xorps xmm0, xmm0
mov ebx, ecx
movq qword [ebp - 0x28], xmm0
push str.Shift
movups xmmword [ebp - 0x38], xmm0
push edi
mov dword [ebp - 4], ebx
xor esi, esi
mov dword [ebp - 0x3c], 1
mov dword [ebp - 0x34], 1
call fcn.10033ebe
add esp, 8
test eax, eax
jne 0x10005407
lea esi, [eax + 0x10]
jmp 0x1000585c
push str.Ctrl
push edi
call fcn.10033ebe
add esp, 8
test eax, eax
jne 0x10005421
lea esi, [eax + 0x11]
jmp 0x1000585c
push 0x1006cea8
push edi
call fcn.10033ebe
add esp, 8
test eax, eax
jne 0x1000543b
lea esi, [eax + 0x12]
jmp 0x1000585c
push 0x1006ceb0
push edi
call fcn.10033ebe
add esp, 8
test eax, eax
jne 0x10005455
lea esi, [eax + 0x5b]
jmp 0x1000585c
push 0x1006ceb8
push edi
call fcn.10033ebe
add esp, 8
test eax, eax
je 0x10005587
push 0x1006cebc
push edi
call fcn.10033ebe
add esp, 8
test eax, eax
je 0x100055a3
push 0x1006cec0
push edi
call fcn.10033ebe
add esp, 8
test eax, eax
je 0x100055bf
push 0x1006cec4
push edi
call fcn.10033ebe
add esp, 8
test eax, eax
je 0x100055db
mov ecx, edi
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x100054b2
movzx eax, word [edi]
sub ecx, edx
sar ecx, 1
cmp ecx, 1
jne 0x10005537
push eax
call fcn.1003a5ab
add esp, 4
test eax, eax
movzx eax, word [edi]
push eax
je 0x100054ea
call fcn.10030703
add esp, 4
movzx esi, ax
jmp 0x1000585c
call dword [sym.imp.USER32.dll_VkKeyScanW]
movzx eax, ax
mov ecx, eax
movzx esi, al
shr ecx, 8
test cl, 1
je 0x1000585c
mov ecx, dword [ebx]
xorps xmm0, xmm0
movups xmmword [ebp - 0x1c], xmm0
mov eax, 0xa0
mov dword [ebp - 0x20], 1
movq qword [ebp - 0xc], xmm0
mov word [ebp - 0x1c], ax
lea eax, [ebp - 0x20]
push eax
mov dword [ebp - 0x18], 1
call fcn.10017590
jmp 0x1000585c
cmp eax, 0x46
je 0x10005541
cmp eax, 0x66
jne 0x10005575
movzx eax, word [edi + 2]
lea ebx, [edi + 2]
push eax
call fcn.1003a5da
add esp, 4
test eax, eax
je 0x10005575
push ebx
call fcn.10039d47
add esp, 4
lea ecx, [eax - 1]
cmp ecx, 0x17
ja 0x1000585c
add eax, 0x6f
movzx esi, ax
jmp 0x1000585c
push str.Left
push edi
call fcn.10033ebe
add esp, 8
test eax, eax
jne 0x10005591
mov esi, 0x25
jmp 0x1000585c
push str.Right
push edi
call fcn.10033ebe
add esp, 8
test eax, eax
jne 0x100055ad
mov esi, 0x27
jmp 0x1000585c
push 0x1006cee0
push edi
call fcn.10033ebe
add esp, 8
test eax, eax
jne 0x100055c9
mov esi, 0x26
jmp 0x1000585c
push str.Down
push edi
call fcn.10033ebe
add esp, 8
test eax, eax
jne 0x100055e5
mov esi, 0x28
jmp 0x1000585c
push 0x1006cef4
push edi
call fcn.10033ebe
add esp, 8
test eax, eax
jne 0x100055ff
lea esi, [eax + 0x1b]
jmp 0x1000585c
push 0x1006cefc
push edi
call fcn.10033ebe
add esp, 8
test eax, eax
jne 0x10005619
lea esi, [eax + 9]
jmp 0x1000585c
push str.Backspace
push edi
call fcn.10033ebe
add esp, 8
test eax, eax
jne 0x10005633
lea esi, [eax + 8]
jmp 0x1000585c
push str.Enter
push edi
call fcn.10033ebe
add esp, 8
test eax, eax
jne 0x1000564d
lea esi, [eax + 0xd]
jmp 0x1000585c
push str.Space
push edi
call fcn.10033ebe
add esp, 8
test eax, eax
jne 0x10005667
lea esi, [eax + 0x20]
jmp 0x1000585c
push str.PrtSc
push edi
call fcn.10033ebe
add esp, 8
test eax, eax
jne 0x10005681
lea esi, [eax + 0x2c]
jmp 0x1000585c
push str.Scroll
push edi
call fcn.10033ebe
add esp, 8
test eax, eax
jne 0x1000569d
mov esi, 0x91
jmp 0x1000585c
push str.Pause
push edi
call fcn.10033ebe
add esp, 8
test eax, eax
je 0x100056c1
push str.Break
push edi
call fcn.10033ebe
add esp, 8
test eax, eax
jne 0x100056cb
mov esi, 0x13
jmp 0x1000585c
push str.Insert
push edi
call fcn.10033ebe
add esp, 8
test eax, eax
jne 0x100056e5
lea esi, [eax + 0x2d]
jmp 0x1000585c
push str.Delete
push edi
call fcn.10033ebe
add esp, 8
test eax, eax
jne 0x100056ff
lea esi, [eax + 0x2e]
jmp 0x1000585c
push 0x1006cf74
push edi
call fcn.10033ebe
add esp, 8
test eax, eax
jne 0x10005719
lea esi, [eax + 0x23]
jmp 0x1000585c
push str.Home
push edi
call fcn.10033ebe
add esp, 8
test eax, eax
jne 0x10005733
lea esi, [eax + 0x24]
jmp 0x1000585c
push str.PageUp
push edi
call fcn.10033ebe
add esp, 8
test eax, eax
je 0x10005769
push str.PageDown
push edi
call fcn.10033ebe
add esp, 8
test eax, eax
je 0x10005785
push str.PgUp
push edi
call fcn.10033ebe
add esp, 8
test eax, eax
jne 0x10005773
mov esi, 0x21
jmp 0x1000585c
push str.PgDn
push edi
call fcn.10033ebe
add esp, 8
test eax, eax
jne 0x1000578f
mov esi, 0x22
jmp 0x1000585c
push str.Plus
push edi
call fcn.10033ebe
add esp, 8
test eax, eax
jne 0x100057ab
mov esi, 0xbb
jmp 0x1000585c
push str.Minus
push edi
call fcn.10033ebe
add esp, 8
test eax, eax
jne 0x100057c7
mov esi, 0xbd
jmp 0x1000585c
push str.Back
push edi
call fcn.10033ebe
add esp, 8
test eax, eax
jne 0x100057e0
mov esi, 0xa6
jmp 0x1000585c
push str.Forward
push edi
call fcn.10033ebe
add esp, 8
test eax, eax
jne 0x100057f9
mov esi, 0xa7
jmp 0x1000585c
push str.Refresh
push edi
call fcn.10033ebe
add esp, 8
test eax, eax
jne 0x10005812
mov esi, 0xa8
jmp 0x1000585c
push str.VolumeMute
push edi
call fcn.10033ebe
add esp, 8
test eax, eax
jne 0x1000582b
mov esi, 0xad
jmp 0x1000585c
push str.VolumeDown
push edi
call fcn.10033ebe
add esp, 8
test eax, eax
jne 0x10005844
mov esi, 0xae
jmp 0x1000585c
push str.VolumeUp
push edi
call fcn.10033ebe
add esp, 8
mov ecx, 0xaf
test eax, eax
cmove esi, ecx
mov ecx, dword [ebp - 4]
lea eax, [ebp - 0x3c]
push eax
mov word [ebp - 0x38], si
mov ecx, dword [ecx]
call fcn.10017590
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4