Function at 0x40b6f0
Capabilities:
Log keystrokes via polling
Parse credit card information

Disassembly:
push ecx
test edx, edx
je 0x40be66
cmp eax, 0x30
jl 0x40b749
cmp eax, 0x39
jg 0x40b749
mov dword [0x462498], eax
cmp eax, 0x50
jae 0x40b755
cmp eax, 0x33
jae 0x40ba78
cmp eax, 0x20
jae 0x40bba4
cmp eax, 0x10
jae 0x40bc9d
cmp eax, 0xd
jne 0x40bd15
mov dword [0x462498], 0xfe
or byte [0x4624b1], 1
mov eax, 1
pop ecx
ret
cmp eax, 0x41
jl 0x40b708
cmp eax, 0x5a
jle 0x40b703
jmp 0x40b708
ja 0x40b765
or byte [0x4624b0], 0x80
mov eax, 1
pop ecx
ret
cmp eax, 0x76
jae 0x40b793
cmp eax, 0x59
jae 0x40b9a1
cmp eax, 0x54
jae 0x40ba32
cmp eax, 0x53
jne 0x40ba61
or byte [0x4624b0], 0x10
mov eax, 1
pop ecx
ret
ja 0x40b7a6
mov dword [0x462498], 0xf4
mov eax, 1
pop ecx
ret
cmp eax, 0xbd
jae 0x40b7d0
cmp eax, 0x7a
jae 0x40b901
cmp eax, 0x79
jne 0x40b987
mov dword [0x462498], 0xf7
mov eax, 1
pop ecx
ret
ja 0x40b7f0
test byte [0x4624a3], 0x10
je 0x40bdd3
mov eax, 0x5f
mov dword [0x462498], eax
mov eax, 1
pop ecx
ret
cmp eax, 0xdb
jae 0x40b820
cmp eax, 0xc0
jne 0x40b8b3
test byte [0x4624a3], 0x10
je 0x40be06
mov eax, 0x7e
mov dword [0x462498], eax
mov eax, 1
pop ecx
ret
ja 0x40b840
test byte [0x4624a3], 0x10
je 0x40be17
mov eax, 0x7b
mov dword [0x462498], eax
mov eax, 1
pop ecx
ret
cmp eax, 0xde
jne 0x40b865
test byte [0x4624a3], 0x10
je 0x40be4a
mov eax, 0x22
mov dword [0x462498], eax
mov eax, 1
pop ecx
ret
cmp eax, 0xdd
jne 0x40b88a
test byte [0x4624a3], 0x10
je 0x40be39
mov eax, 0x7d
mov dword [0x462498], eax
mov eax, 1
pop ecx
ret
cmp eax, 0xdc
jne 0x40be62
test byte [0x4624a3], 0x10
je 0x40be28
mov eax, 0x7c
mov dword [0x462498], eax
mov eax, 1
pop ecx
ret
cmp eax, 0xbf
jne 0x40b8d8
test byte [0x4624a3], 0x10
je 0x40bdf5
mov eax, 0x3f
mov dword [0x462498], eax
mov eax, 1
pop ecx
ret
cmp eax, 0xbe
jne 0x40be62
test byte [0x4624a3], 0x10
je 0x40bdc2
mov eax, 0x3e
mov dword [0x462498], eax
mov eax, 1
pop ecx
ret
ja 0x40b914
mov dword [0x462498], 0xf8
mov eax, 1
pop ecx
ret
cmp eax, 0xbc
jne 0x40b939
test byte [0x4624a3], 0x10
je 0x40bdb1
mov eax, 0x3c
mov dword [0x462498], eax
mov eax, 1
pop ecx
ret
cmp eax, 0xbb
jne 0x40b95e
test byte [0x4624a3], 0x10
je 0x40bde4
mov eax, 0x2b
mov dword [0x462498], eax
mov eax, 1
pop ecx
ret
cmp eax, 0xba
jne 0x40be62
test byte [0x4624a3], 0x10
sete al
and eax, 0xff
add eax, 0x3a
mov dword [0x462498], eax
mov eax, 1
pop ecx
ret
cmp eax, 0x78
jne 0x40bd53
mov dword [0x462498], 0xf6
mov eax, 1
pop ecx
ret
jbe 0x40b757
cmp eax, 0x72
jae 0x40b9c2
cmp eax, 0x71
jne 0x40ba05
mov dword [0x462498], 0xef
mov eax, 1
pop ecx
ret
ja 0x40b9d5
mov dword [0x462498], 0xf0
mov eax, 1
pop ecx
ret
cmp eax, 0x75
jne 0x40b9eb
mov dword [0x462498], 0xf3
mov eax, 1
pop ecx
ret
cmp eax, 0x74
jne 0x40bd42
mov dword [0x462498], 0xf2
mov eax, 1
pop ecx
ret
cmp eax, 0x70
jne 0x40ba1b
mov dword [0x462498], 0xee
mov eax, 1
pop ecx
ret
cmp eax, 0x5a
jne 0x40be62
or byte [0x4624b0], 0x20
mov eax, 1
pop ecx
ret
cmp eax, 0x55
ja 0x40ba45
or byte [0x4624b0], 0x40
mov eax, 1
pop ecx
ret
cmp eax, 0x58
je 0x40ba24
cmp eax, 0x57
je 0x40b757
or byte [0x4624b0], 0x20
mov eax, 1
pop ecx
ret
cmp eax, 0x52
je 0x40b757
or byte [0x4624b0], 0x40
mov eax, 1
pop ecx
ret
ja 0x40ba98
test byte [0x4624a3], 0x10
je 0x40bd64
mov eax, 0x23
mov dword [0x462498], eax
mov eax, 1
pop ecx
ret
cmp eax, 0x42
jae 0x40bac5
cmp eax, 0x37
jae 0x40bb16
cmp eax, 0x36
jne 0x40bb81
test byte [0x4624a3], 0x10
je 0x40bab9
mov eax, 0x5e
mov dword [0x462498], eax
mov eax, 1
pop ecx
ret
cmp eax, 0x43
jbe 0x40ba24
cmp eax, 0x49
jae 0x40baf0
cmp eax, 0x45
jb 0x40b785
jbe 0x40ba37
or byte [0x4624b0], 0x10
mov eax, 1
pop ecx
ret
jbe 0x40b757
cmp eax, 0x4f
je 0x40ba37
cmp eax, 0x4c
jbe 0x40b785
or byte [0x4624b0], 0x20
mov eax, 1
pop ecx
ret
ja 0x40bb36
test byte [0x4624a3], 0x10
je 0x40bda0
mov eax, 0x26
mov dword [0x462498], eax
mov eax, 1
pop ecx
ret
cmp eax, 0x41
je 0x40b785
cmp eax, 0x39
jne 0x40bb5e
test byte [0x4624a3], 0x10
je 0x40bb52
mov eax, 0x28
mov dword [0x462498], eax
mov eax, 1
pop ecx
ret
cmp eax, 0x38
jne 0x40be62
test byte [0x4624a3], 0x10
je 0x40bb75
mov eax, 0x2a
mov dword [0x462498], eax
mov eax, 1
pop ecx
ret
cmp eax, 0x35
jne 0x40bd75
test byte [0x4624a3], 0x10
je 0x40bb98
mov eax, 0x25
mov dword [0x462498], eax
mov eax, 1
pop ecx
ret
ja 0x40bbbe
mov dword [0x462498], 0x20
or byte [0x4624b0], 0x10
mov eax, 1
pop ecx
ret
cmp eax, 0x28
jae 0x40bbe4
cmp eax, 0x27
jne 0x40bc5f
mov dword [0x462498], 0xfb
or byte [0x4624b0], 2
mov eax, 1
pop ecx
ret
ja 0x40bbfe
mov dword [0x462498], 0xfd
or byte [0x4624b0], 8
mov eax, 1
pop ecx
ret
cmp eax, 0x32
jne 0x40bc1d
test byte [0x4624a3], 0x10
je 0x40bc11
mov eax, 0x40
mov dword [0x462498], eax
mov eax, 1
pop ecx
ret
cmp eax, 0x31
jne 0x40bc3c
test byte [0x4624a3], 0x10
je 0x40bc30
mov eax, 0x21
mov dword [0x462498], eax
mov eax, 1
pop ecx
ret
cmp eax, 0x30
jne 0x40be62
test byte [0x4624a3], 0x10
je 0x40bc53
mov eax, 0x29
mov dword [0x462498], eax
mov eax, 1
pop ecx
ret
cmp eax, 0x26
jne 0x40bc7c
mov dword [0x462498], 0xfc
or byte [0x4624b0], 4
mov eax, 1
pop ecx
ret
cmp eax, 0x25
jne 0x40be62
mov dword [0x462498], 0xfa
or byte [0x4624b0], 1
mov eax, 1
pop ecx
ret
ja 0x40bcad
or byte [0x4624a3], 0x10
mov eax, 1
pop ecx
ret
cmp eax, 0x1b
jne 0x40bcca
mov dword [0x462498], 0xff
or byte [0x4624b1], 4
mov eax, 1
pop ecx
ret
cmp eax, 0x14
jne 0x40bcfe
push eax
call dword [sym.imp.USER32.DLL_GetKeyState]
test al, 1
je 0x40be5b
mov eax, 0x8000000
mov edx, dword [0x4624a0]
and edx, 0xf7ffffff
or edx, eax
mov dword [0x4624a0], edx
mov eax, 1
pop ecx
ret
cmp eax, 0x11
jne 0x40be62
or byte [0x4624a3], 0x20
mov eax, 1
pop ecx
ret
cmp eax, 9
jne 0x40bd2d
or byte [0x4624b1], 2
mov dword [0x462498], eax
mov eax, 1
pop ecx
ret
cmp eax, 8
jne 0x40be62
mov dword [0x462498], eax
mov eax, 1
pop ecx
ret
mov dword [0x462498], 0xf1
mov eax, 1
pop ecx
ret
mov dword [0x462498], 0xf5
mov eax, 1
pop ecx
ret
mov eax, 0x33
mov dword [0x462498], eax
mov eax, 1
pop ecx
ret
test byte [0x4624a3], 0x10
je 0x40bd8f
mov eax, 0x24
mov dword [0x462498], eax
mov eax, 1
pop ecx
ret
mov eax, 0x34
mov dword [0x462498], eax
mov eax, 1
pop ecx
ret
mov eax, 0x37
mov dword [0x462498], eax
mov eax, 1
pop ecx
ret
mov eax, 0x2c
mov dword [0x462498], eax
mov eax, 1
pop ecx
ret
mov eax, 0x2e
mov dword [0x462498], eax
mov eax, 1
pop ecx
ret
mov eax, 0x2d
mov dword [0x462498], eax
mov eax, 1
pop ecx
ret
mov eax, 0x3d
mov dword [0x462498], eax
mov eax, 1
pop ecx
ret
mov eax, 0x2f
mov dword [0x462498], eax
mov eax, 1
pop ecx
ret
mov eax, 0x60
mov dword [0x462498], eax
mov eax, 1
pop ecx
ret
mov eax, 0x5b
mov dword [0x462498], eax
mov eax, 1
pop ecx
ret
mov eax, 0x5c
mov dword [0x462498], eax
mov eax, 1
pop ecx
ret
mov eax, 0x5d
mov dword [0x462498], eax
mov eax, 1
pop ecx
ret
mov eax, 0x27
mov dword [0x462498], eax
mov eax, 1
pop ecx
ret
xor eax, eax
jmp 0x40bce3
xor eax, eax
pop ecx
ret
mov dword [0x462498], edx
cmp eax, 0x46
jae 0x40be9a
cmp eax, 0x25
jae 0x40bf45
cmp eax, 0x11
jae 0x40bfb9
cmp eax, 0x10
jne 0x40c019
and byte [0x4624a3], 0xef
mov eax, 1
pop ecx
ret
cmp eax, 0x48
ja 0x40bead
and byte [0x4624b0], 0xef
mov eax, 1
pop ecx
ret
cmp eax, 0x53
jae 0x40bece
cmp eax, 0x4f
jae 0x40bf06
cmp eax, 0x4a
jae 0x40bf2e
and byte [0x4624b0], 0x7f
mov eax, 1
pop ecx
ret
jbe 0x40be9f
cmp eax, 0x58
jae 0x40beed
cmp eax, 0x57
je 0x40bec0
cmp eax, 0x56
jne 0x40bf08
and byte [0x4624b0], 0xdf
mov eax, 1
pop ecx
ret
jbe 0x40bedf
cmp eax, 0x7b
je 0x40c043
cmp eax, 0x5a
je 0x40bedf
cmp eax, 0x59
je 0x40bec0
xor eax, eax
pop ecx
ret
ja 0x40bf16
and byte [0x4624b0], 0xbf
mov eax, 1
pop ecx
ret
cmp eax, 0x52
je 0x40bec0
cmp eax, 0x51
je 0x40bf08
and byte [0x4624b0], 0x7f
mov eax, 1
pop ecx
ret
cmp eax, 0x4c
jbe 0x40be9f
and byte [0x4624b0], 0xdf
mov eax, 1
pop ecx
ret
ja 0x40bf55
and byte [0x4624b0], 0xfe
mov eax, 1
pop ecx
ret
cmp eax, 0x41
jae 0x40bf6d
cmp eax, 0x28
jne 0x40bf8f
and byte [0x4624b0], 0xf7
mov eax, 1
pop ecx
ret
jbe 0x40be9f
cmp eax, 0x45
je 0x40bf08
cmp eax, 0x44
je 0x40be9f
and byte [0x4624b0], 0xdf
mov eax, 1
pop ecx
ret
cmp eax, 0x27
jne 0x40bfa2
and byte [0x4624b0], 0xfd
mov eax, 1
pop ecx
ret
cmp eax, 0x26
jne 0x40bf02
and byte [0x4624b0], 0xfb
mov eax, 1
pop ecx
ret
ja 0x40bfc9
and byte [0x4624a3], 0xdf
mov eax, 1
pop ecx
ret
cmp eax, 0x20
je 0x40be9f
cmp eax, 0x1b
jne 0x40bfe5
and byte [0x4624b1], 0xfb
mov eax, 1
pop ecx
ret
cmp eax, 0x14
jne 0x40bf02
push eax
call dword [sym.imp.USER32.DLL_GetKeyState]
test al, 1
je 0x40c057
mov eax, 0x8000000
mov edx, dword [0x4624a0]
and edx, 0xf7ffffff
or edx, eax
mov dword [0x4624a0], edx
mov eax, 1
pop ecx
ret
cmp eax, 0xd
jne 0x40c02c
and byte [0x4624b1], 0xfe
mov eax, 1
pop ecx
ret
cmp eax, 9
jne 0x40bf02
and byte [0x4624b1], 0xfd
mov eax, 1
pop ecx
ret
mov ecx, dword [0x4624b8]
push ecx
call dword [sym.imp.USER32.DLL_DestroyWindow]
mov eax, 1
pop ecx
ret
xor eax, eax
jmp 0x40bffe