Function at 0x1002883e
Capabilities:
Log keystrokes

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1007b70b
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x130
push esi
push 3
lea ecx, [ebp - 0x3c]
call fcn.10018ca8
and dword [ebp - 4], 0
mov dword [ebp - 0x14], 1
mov dword [ebp - 0x18], 0xffffffff
mov dword [ebp - 0x100], 7
mov dword [ebp - 0xfc], 7
mov dword [ebp - 0xf8], 7
mov dword [ebp - 0xf4], 7
mov dword [ebp - 0xa8], 0xa9d45c54
mov dword [ebp - 0x1c], 0
jmp 0x100288bb
mov eax, dword [ebp - 0x1c]
inc eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 3
jge 0x100288d4
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x3c]
call fcn.10018d32
mov dword [eax], 0x6c9
jmp 0x100288b4
mov dword [ebp - 0x1c], 0
jmp 0x100288e4
mov eax, dword [ebp - 0x1c]
inc eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 3
jge 0x100288fa
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x118], 0xfffffff9
jmp 0x100288dd
push 2
lea ecx, [ebp - 0x3c]
call fcn.10018d32
cmp dword [eax], 0
jne 0x1002896e
push 2
lea ecx, [ebp - 0x3c]
call fcn.10018d32
cmp dword [eax], 0
je 0x10028922
push 2
lea ecx, [ebp - 0x3c]
call fcn.10018d32
push 2
lea ecx, [ebp - 0x3c]
call fcn.10018d32
mov esi, eax
push 2
lea ecx, [ebp - 0x3c]
call fcn.10018d32
mov ecx, dword [esi]
cmp ecx, dword [eax]
jle 0x1002894a
mov dword [ebp - 0x98], 1
jmp 0x10028951
and dword [ebp - 0x98], 0
push 2
lea ecx, [ebp - 0x3c]
call fcn.10018d32
mov ecx, dword [ebp - 0x98]
cmp ecx, dword [eax]
jg 0x1002896e
and dword [ebp - 0xd4], 0
jmp 0x10028978
mov dword [ebp - 0xd4], 1
push 2
lea ecx, [ebp - 0x3c]
call fcn.10018d32
mov ecx, dword [ebp - 0xd4]
cmp ecx, dword [eax]
je 0x10028998
mov dword [ebp - 0xd0], 1
jmp 0x1002899f
and dword [ebp - 0xd0], 0
push 2
lea ecx, [ebp - 0x3c]
call fcn.10018d32
mov ecx, dword [ebp - 0xd0]
add ecx, dword [eax]
cmp ecx, 0xd022
jge 0x100289c5
mov dword [ebp - 0xac], 1
jmp 0x100289cc
and dword [ebp - 0xac], 0
cmp dword [ebp - 0xac], 0xfffffffa
jle 0x100289de
mov dword [ebp - 0x7c], 1
jmp 0x100289e2
and dword [ebp - 0x7c], 0
mov eax, dword [ebp - 0x7c]
add eax, 0x9d3b208
cmp eax, dword [ebp - 0x14]
jl 0x100289fb
mov dword [ebp - 0xb4], 1
jmp 0x10028a02
and dword [ebp - 0xb4], 0
cmp dword [ebp - 0xb4], 0x1966
je 0x10028a1a
mov dword [ebp - 0xd8], 1
jmp 0x10028a21
and dword [ebp - 0xd8], 0
push 2
lea ecx, [ebp - 0x3c]
call fcn.10018d32
push 2
lea ecx, [ebp - 0x3c]
call fcn.10018d32
push 2
lea ecx, [ebp - 0x3c]
call fcn.10018d32
mov esi, dword [ebp - 0x14]
add esi, dword [eax]
push 2
lea ecx, [ebp - 0x3c]
call fcn.10018d32
cmp esi, dword [eax]
je 0x10028a5e
mov dword [ebp - 0x84], 1
jmp 0x10028a65
and dword [ebp - 0x84], 0
push 2
lea ecx, [ebp - 0x3c]
call fcn.10018d32
mov ecx, dword [ebp - 0x84]
sub ecx, dword [eax]
mov dword [ebp - 0xbc], ecx
push 4
pop eax
shl eax, 1
mov ecx, dword [ebp - 0xbc]
mov dword [ebp + eax - 0x118], ecx
mov eax, dword [ebp - 0xbc]
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0
je 0x10028aa8
push 2
lea ecx, [ebp - 0x3c]
call fcn.10018d32
push 4
pop eax
shl eax, 1
cmp dword [ebp + eax - 0x118], 0x58d0336d
jge 0x10028ac6
mov dword [ebp - 0x8c], 1
jmp 0x10028acd
and dword [ebp - 0x8c], 0
push 2
lea ecx, [ebp - 0x3c]
call fcn.10018d32
mov ecx, dword [ebp - 0x8c]
imul ecx, dword [eax]
imul eax, ecx, 0xffffffff
cmp eax, 0x5a52
jl 0x10028af6
mov dword [ebp - 0xc4], 1
jmp 0x10028afd
and dword [ebp - 0xc4], 0
push 2
lea ecx, [ebp - 0x3c]
call fcn.10018d32
mov ecx, dword [ebp - 0xc4]
cmp ecx, dword [eax]
jge 0x10028b24
push 0xfffffffffffffffb
pop eax
test eax, eax
je 0x10028b24
mov dword [ebp - 0xcc], 1
jmp 0x10028b2b
and dword [ebp - 0xcc], 0
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0xcc]
mov dword [ebp + eax - 0x100], ecx
mov dword [ebp - 0x18], 3
jmp 0x10028b4e
mov eax, dword [ebp - 0x18]
dec eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0
jl 0x10028c98
mov dword [ebp - 0xe0], 0xfffffff8
mov dword [ebp - 0x14], 0
jmp 0x10028b72
mov eax, dword [ebp - 0x14]
inc eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 2
jg 0x10028c86
mov dword [ebp - 0x48], 0xfffffff7
mov dword [ebp - 0x48], 0
jmp 0x10028b93
mov eax, dword [ebp - 0x48]
inc eax
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x48], 2
jg 0x10028c81
mov dword [ebp - 0xe8], 0xca727646
mov eax, dword [ebp - 0x48]
cmp dword [ebp + eax*4 - 0x118], 0
je 0x10028bbe
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0x100]
push dword [ebp - 0x14]
lea ecx, [ebp - 0x3c]
call fcn.10018d32
push dword [ebp - 0x14]
lea ecx, [ebp - 0x3c]
call fcn.10018d32
mov eax, dword [eax]
neg eax
jne 0x10028bf0
push dword [ebp - 0x14]
lea ecx, [ebp - 0x3c]
call fcn.10018d32
cmp dword [eax], 0
jne 0x10028bf0
and dword [ebp - 0x70], 0
jmp 0x10028bf7
mov dword [ebp - 0x70], 1
mov eax, dword [ebp - 0xe0]
cmp dword [ebp - 0x70], eax
jle 0x10028c0e
mov dword [ebp - 0xb8], 1
jmp 0x10028c15
and dword [ebp - 0xb8], 0
mov eax, dword [ebp - 0xe8]
add eax, dword [ebp - 0xb8]
jne 0x10028c30
xor eax, eax
jne 0x10028c30
and dword [ebp - 0xa0], 0
jmp 0x10028c3a
mov dword [ebp - 0xa0], 1
cmp dword [ebp - 0xa0], 0xcd0a
jle 0x10028c52
mov dword [ebp - 0xc8], 1
jmp 0x10028c59
and dword [ebp - 0xc8], 0
mov eax, dword [ebp - 0xc8]
neg eax
imul eax, dword [ebp - 0x18]
push 4
pop ecx
imul ecx, ecx, 0
add eax, dword [ebp + ecx - 0x100]
mov ecx, dword [ebp - 0x18]
mov dword [ebp + ecx*4 - 0x100], eax
jmp 0x10028b8c
jmp 0x10028b6b
mov eax, dword [ebp - 0xa8]
inc eax
mov dword [ebp - 0xa8], eax
jmp 0x10028b47
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x3c]
call fcn.10018d2d
movzx eax, byte [ebp + 8]
test eax, eax
je 0x10028da0
push 1
lea ecx, [ebp - 0x134]
call fcn.10018ca8
mov dword [ebp - 4], 1
mov dword [ebp - 0x24], 0
jmp 0x10028cd4
mov eax, dword [ebp - 0x24]
inc eax
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 1
jge 0x10028ce7
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x4c], 0x17571177
jmp 0x10028ccd
mov dword [ebp - 0x24], 0
jmp 0x10028cf7
mov eax, dword [ebp - 0x24]
inc eax
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 1
jge 0x10028d10
push dword [ebp - 0x24]
lea ecx, [ebp - 0x134]
call fcn.10018d32
and dword [eax], 0
jmp 0x10028cf0
push 4
pop eax
imul eax, eax, 0
mov dword [ebp + eax - 0x4c], 0
jmp 0x10028d35
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x4c]
dec eax
push 4
pop ecx
imul ecx, ecx, 0
mov dword [ebp + ecx - 0x4c], eax
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x4c], 0xffffffe7
je 0x10028d74
mov dword [ebp - 0xdc], 0x51cdcb36
mov dword [ebp - 0xe4], 5
mov eax, dword [ebp - 0xdc]
mov dword [ebp - 0x13c], eax
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x4c]
mov dword [ebp - 0xe4], eax
jmp 0x10028d20
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x134]
call fcn.10018d2d
push 0
push 0
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_PlayEnhMetaFile]
jmp 0x100291e7
mov dword [ebp - 0x20], 0xffffffff
mov dword [ebp - 0x138], 0
mov dword [ebp - 0x128], 1
push 3
lea ecx, [ebp - 0x124]
call fcn.10018ca8
mov dword [ebp - 4], 2
mov dword [ebp - 0x58], 0
jmp 0x10028ddf
mov eax, dword [ebp - 0x58]
inc eax
mov dword [ebp - 0x58], eax
cmp dword [ebp - 0x58], 3
jge 0x10028dfb
push dword [ebp - 0x58]
lea ecx, [ebp - 0x124]
call fcn.10018d32
mov dword [eax], 0xca9869ec
jmp 0x10028dd8
mov dword [ebp - 0x20], 0xffffffee
jmp 0x10028e0b
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 4
jge 0x10028e2a
mov dword [ebp - 0xc0], 0x961c0f80
mov eax, dword [ebp - 0xc0]
inc eax
mov dword [ebp - 0xc0], eax
jmp 0x10028e04
mov dword [ebp - 0x20], 0
jmp 0x10028e3a
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 3
jge 0x10028e56
push dword [ebp - 0x20]
lea ecx, [ebp - 0x124]
call fcn.10018d32
mov dword [eax], 0x85a1fa14
jmp 0x10028e33
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x124]
call fcn.10018d2d
push 2
lea ecx, [ebp - 0x6c]
call fcn.10018ca8
mov dword [ebp - 4], 3
mov dword [ebp - 0x10], 0xfffffffe
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x5c], 0
jmp 0x10028e94
mov eax, dword [ebp - 0x5c]
inc eax
mov dword [ebp - 0x5c], eax
cmp dword [ebp - 0x5c], 2
jge 0x10028ead
push dword [ebp - 0x5c]
lea ecx, [ebp - 0x6c]
call fcn.10018d32
mov dword [eax], 1
jmp 0x10028e8d
push 1
lea ecx, [ebp - 0x6c]
call fcn.10018d32
mov eax, dword [eax]
mov dword [ebp - 0x10], eax
mov eax, 0x6950a4ba
test eax, eax
je 0x10028f1c
cmp dword [ebp - 0x10], 0
je 0x10028ed7
mov dword [ebp - 0xb0], 1
jmp 0x10028ede
and dword [ebp - 0xb0], 0
cmp dword [ebp - 0xb0], 0xa019
jle 0x10028ef6
mov dword [ebp - 0x90], 1
jmp 0x10028efd
and dword [ebp - 0x90], 0
mov eax, dword [ebp - 0x10]
imul eax, dword [ebp - 0x90]
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 0
je 0x10028f1c
mov dword [ebp - 0x94], 1
jmp 0x10028f23
and dword [ebp - 0x94], 0
mov eax, dword [ebp - 0x10]
cmp dword [ebp - 0x94], eax
jle 0x10028f46
push 1
lea ecx, [ebp - 0x6c]
call fcn.10018d32
cmp dword [eax], 0
jne 0x10028f46
and dword [ebp - 0x9c], 0
jmp 0x10028f50
mov dword [ebp - 0x9c], 1
cmp dword [ebp - 0x9c], 1
jg 0x10028f65
mov dword [ebp - 0xf0], 1
jmp 0x10028f6c
and dword [ebp - 0xf0], 0
push 1
lea ecx, [ebp - 0x6c]
call fcn.10018d32
mov eax, dword [ebp - 0x10]
cmp dword [ebp - 0x10], eax
jne 0x10028f8a
mov dword [ebp - 0xa4], 1
jmp 0x10028f91
and dword [ebp - 0xa4], 0
mov eax, dword [ebp - 0x10]
cmp dword [ebp - 0xa4], eax
je 0x10028fa5
mov dword [ebp - 0x74], 1
jmp 0x10028fa9
and dword [ebp - 0x74], 0
push 1
lea ecx, [ebp - 0x6c]
call fcn.10018d32
mov ecx, dword [ebp - 0x74]
sub ecx, dword [eax]
cmp ecx, 0x21b18574
jne 0x10028fc9
mov dword [ebp - 0x78], 1
jmp 0x10028fcd
and dword [ebp - 0x78], 0
push 1
lea ecx, [ebp - 0x6c]
call fcn.10018d32
mov esi, dword [ebp - 0x78]
add esi, dword [eax]
push 0
lea ecx, [ebp - 0x6c]
call fcn.10018d32
sub esi, dword [eax]
push 0
lea ecx, [ebp - 0x6c]
call fcn.10018d32
cmp esi, dword [eax]
jge 0x10029002
mov dword [ebp - 0xec], 1
jmp 0x10029009
and dword [ebp - 0xec], 0
push 1
lea ecx, [ebp - 0x6c]
call fcn.10018d32
mov ecx, dword [ebp - 0x2c]
cmp dword [eax], ecx
jl 0x10029023
mov dword [ebp - 0x80], 1
jmp 0x10029027
and dword [ebp - 0x80], 0
mov esi, dword [ebp - 0x80]
neg esi
push 1
lea ecx, [ebp - 0x6c]
call fcn.10018d32
cmp esi, dword [eax]
jg 0x1002905a
mov byte [ebp - 0x2d], 0
movzx eax, byte [ebp - 0x2d]
test eax, eax
je 0x10029058
push 0
push 0xb56
push 0x9be
call dword [sym.imp.USER32.dll_AttachThreadInput]
jmp 0x100290b4
mov dword [ebp - 0x2c], 0
jmp 0x1002906a
mov eax, dword [ebp - 0x2c]
inc eax
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 1
jg 0x1002908b
mov byte [ebp - 0x26], 0
movzx eax, byte [ebp - 0x26]
test eax, eax
je 0x10029089
push 0x26ca
push 0
call dword [sym.imp.USER32.dll_CharLowerBuffW]
jmp 0x10029063
mov dword [ebp - 0x10], 0
jmp 0x1002909b
mov eax, dword [ebp - 0x10]
inc eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 2
jge 0x100290b4
push dword [ebp - 0x10]
lea ecx, [ebp - 0x6c]
call fcn.10018d32
mov dword [eax], 0xfffffff6
jmp 0x10029094
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x6c]
call fcn.10018d2d
mov byte [ebp - 0x25], 0
movzx eax, byte [ebp - 0x25]
test eax, eax
je 0x100290d6
push 0
push 0
call dword [sym.imp.KERNEL32.dll_GetCommState]
push 2
lea ecx, [ebp - 0x10c]
call fcn.10018ca8
mov dword [ebp - 4], 4
mov dword [ebp - 0x44], 0xc08901f2
mov dword [ebp - 0x40], 0xdfe0091d
mov dword [ebp - 0x50], 0
jmp 0x10029108
mov eax, dword [ebp - 0x50]
inc eax
mov dword [ebp - 0x50], eax
cmp dword [ebp - 0x50], 2
jge 0x10029124
push dword [ebp - 0x50]
lea ecx, [ebp - 0x10c]
call fcn.10018d32
mov dword [eax], 0xfffc
jmp 0x10029101
mov dword [ebp - 0x44], 1
jmp 0x10029134
mov eax, dword [ebp - 0x44]
dec eax
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0
jl 0x100291d8
mov dword [ebp - 0x60], 1
mov dword [ebp - 0x60], 1
jmp 0x10029155
mov eax, dword [ebp - 0x60]
dec eax
mov dword [ebp - 0x60], eax
cmp dword [ebp - 0x60], 0
jl 0x100291a6
mov dword [ebp - 0x54], 0xfffffff8
mov dword [ebp - 0x54], 0
jmp 0x10029172
mov eax, dword [ebp - 0x54]
inc eax
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 1
jg 0x10029191
mov dword [ebp - 0x88], 0x4800fa7
mov eax, dword [ebp - 0x88]
dec eax
mov dword [ebp - 0x88], eax
jmp 0x1002916b
push dword [ebp - 0x44]
lea ecx, [ebp - 0x10c]
call fcn.10018d32
mov eax, dword [eax]
mov dword [ebp - 0x40], eax
jmp 0x1002914e
mov dword [ebp - 0x40], 1
jmp 0x100291b6
mov eax, dword [ebp - 0x40]
dec eax
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 0
jl 0x100291d3
push dword [ebp - 0x40]
lea ecx, [ebp - 0x10c]
call fcn.10018d32
cmp dword [eax], 0
je 0x100291d1
jmp 0x100291d3
jmp 0x100291af
jmp 0x1002912d
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x10c]
call fcn.10018d2d
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
ret