Function at 0x4c1260
Capabilities:
Log keystrokes
Parse pe header

Disassembly:
push ebp
mov ebp, esp
mov eax, dword [ebp + 8]
add eax, 0xfffffff8
cmp eax, 0xd6
ja case.0x4c127b.10
movzx eax, byte [eax + 0x4c1754]
jmp dword [eax*4 + 0x4c15c8]
mov eax, dword fs:[0x2c]
mov ecx, dword [0x5d42d0]
mov ecx, dword [eax + ecx*4]
mov eax, dword [0x5d3a84]
cmp eax, dword [ecx + 4]
jg 0x4c1588
mov eax, dword [ebp + 0xc]
sar eax, 0x10
movzx ecx, al
xor eax, eax
cmp ecx, dword [0x5d3a80]
setne al
lea eax, [eax*4 + 0x26]
pop ebp
ret
mov eax, dword [ebp + 0xc]
shr eax, 0x10
and eax, 0x100
neg eax
sbb eax, eax
and eax, 4
add eax, 0x27
pop ebp
ret
mov eax, dword [ebp + 0xc]
shr eax, 0x10
and eax, 0x100
neg eax
sbb eax, eax
and eax, 4
add eax, 0x25
pop ebp
ret
mov eax, 0x28
pop ebp
ret
mov eax, 0x2c
pop ebp
ret
mov eax, 0x2d
pop ebp
ret
mov eax, 0x30
pop ebp
ret
mov eax, 0x34
pop ebp
ret
mov eax, 0x37
pop ebp
ret
mov eax, 0x38
pop ebp
ret
mov eax, 0x2e
pop ebp
ret
mov eax, 0x2f
pop ebp
ret
mov eax, 0x31
pop ebp
ret
mov eax, 0x32
pop ebp
ret
mov eax, 0x33
pop ebp
ret
mov eax, 0x35
pop ebp
ret
mov eax, 0x36
pop ebp
ret
mov eax, 0x24
pop ebp
ret
mov eax, 0x39
pop ebp
ret
mov eax, 0x3a
pop ebp
ret
mov eax, 0x3b
pop ebp
ret
mov eax, 0x3c
pop ebp
ret
mov eax, 0x3d
pop ebp
ret
mov eax, 0x3e
pop ebp
ret
mov eax, 0x3f
pop ebp
ret
mov eax, 0x40
pop ebp
ret
mov eax, 0x41
pop ebp
ret
mov eax, 0x42
pop ebp
ret
mov eax, 0x43
pop ebp
ret
mov eax, 0x44
pop ebp
ret
mov eax, 0x45
pop ebp
ret
mov eax, 0x46
pop ebp
ret
mov eax, 0x64
pop ebp
ret
mov eax, 0x55
pop ebp
ret
mov eax, 0x56
pop ebp
ret
mov eax, 0x57
pop ebp
ret
mov eax, 0x58
pop ebp
ret
mov eax, 0x59
pop ebp
ret
mov eax, 0x5a
pop ebp
ret
mov eax, 0x5b
pop ebp
ret
mov eax, 0x5c
pop ebp
ret
mov eax, 0x5d
pop ebp
ret
mov eax, 0x5e
pop ebp
ret
mov eax, 0x5f
pop ebp
ret
mov eax, 0x60
pop ebp
ret
mov eax, 0x61
pop ebp
ret
mov eax, 0x62
pop ebp
ret
mov eax, 0x63
pop ebp
ret
mov eax, 0x47
pop ebp
ret
mov eax, 0x48
pop ebp
ret
mov eax, 0x49
pop ebp
ret
mov eax, 0x4a
pop ebp
ret
mov eax, 0x4b
pop ebp
ret
mov eax, 0x4c
pop ebp
ret
mov eax, 0x4d
pop ebp
ret
mov eax, 0x4e
pop ebp
ret
mov eax, 0x4f
pop ebp
ret
mov eax, 0x50
pop ebp
ret
mov eax, 0x51
pop ebp
ret
mov eax, 0x52
pop ebp
ret
mov eax, 0x53
pop ebp
ret
mov eax, 0x54
pop ebp
ret
xor eax, eax
pop ebp
ret
mov eax, 0x19
pop ebp
ret
mov eax, 4
pop ebp
ret
mov eax, 0x11
pop ebp
ret
mov eax, 0x13
pop ebp
ret
mov eax, 0x18
pop ebp
ret
mov eax, 0x14
pop ebp
ret
mov eax, 8
pop ebp
ret
mov eax, 0xe
pop ebp
ret
mov eax, 0xf
pop ebp
ret
mov eax, 0x10
pop ebp
ret
mov eax, 0x12
pop ebp
ret
mov eax, 3
pop ebp
ret
mov eax, 5
pop ebp
ret
mov eax, 6
pop ebp
ret
mov eax, 7
pop ebp
ret
mov eax, 9
pop ebp
ret
mov eax, 0xa
pop ebp
ret
mov eax, 0xb
pop ebp
ret
mov eax, 0xc
pop ebp
ret
mov eax, 0x16
pop ebp
ret
mov eax, 0x17
pop ebp
ret
mov eax, 2
pop ebp
ret
mov eax, 0x15
pop ebp
ret
mov eax, 1
pop ebp
ret
mov eax, 0xd
pop ebp
ret
mov eax, 0x1a
pop ebp
ret
mov eax, 0x1b
pop ebp
ret
mov eax, 0x1c
pop ebp
ret
mov eax, 0x1d
pop ebp
ret
mov eax, 0x1e
pop ebp
ret
mov eax, 0x1f
pop ebp
ret
mov eax, 0x20
pop ebp
ret
mov eax, 0x21
pop ebp
ret
mov eax, 0x22
pop ebp
ret
mov eax, 0x23
pop ebp
ret
or eax, 0xffffffff
pop ebp
ret
push 0x5d3a84
call fcn.004dea5c
add esp, 4
cmp dword [0x5d3a84], 0xffffffff
jne 0x4c12a2
push 0
push 0xa0
call dword [sym.imp.USER32.dll_MapVirtualKeyW]
push 0x5d3a84
mov dword [0x5d3a80], eax
call fcn.004dea12
add esp, 4
jmp 0x4c12a2