Function at 0x101499e0
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x14
movsx eax, byte [ebp + 0xc]
cmp eax, 0x20
je 0x10149a01
movsx ecx, byte [ebp + 0xc]
cmp ecx, 0xd
je 0x10149a01
movsx edx, byte [ebp + 0xc]
cmp edx, 0xa
jne 0x10149a0b
mov eax, 1
jmp 0x10149d87
movsx eax, byte [ebp + 0xc]
cmp eax, 9
je 0x10149a1d
movsx ecx, byte [ebp + 0xc]
cmp ecx, 0xc
jne 0x10149a27
mov eax, 1
jmp 0x10149d87
mov edx, dword [ebp + 8]
mov dword [ebp - 4], edx
mov eax, dword [ebp - 4]
sub eax, 0x14
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0xb
ja case.default.0x10149a43
mov ecx, dword [ebp - 4]
jmp dword [ecx*4 + 0x10149d8c]
movsx edx, byte [ebp + 0xc]
cmp edx, 0x2f
je 0x10149a5c
movsx eax, byte [ebp + 0xc]
cmp eax, 0x2a
jne 0x10149a66
mov eax, 0x1b
jmp 0x10149d87
movsx ecx, byte [ebp + 0xc]
or ecx, 0x20
movzx edx, cl
cmp edx, 0x61
jl 0x10149a8e
movsx eax, byte [ebp + 0xc]
or eax, 0x20
movzx ecx, al
cmp ecx, 0x7a
jg 0x10149a8e
mov eax, 0x15
jmp 0x10149d87
jmp case.default.0x10149a43
movsx edx, byte [ebp + 0xc]
or edx, 0x20
movzx eax, dl
cmp eax, 0x61
jl 0x10149ab9
movsx ecx, byte [ebp + 0xc]
or ecx, 0x20
movzx edx, cl
cmp edx, 0x7a
jg 0x10149ab9
mov eax, dword [ebp + 8]
jmp 0x10149d87
movsx eax, byte [ebp + 0xc]
cmp eax, 0x3a
jne 0x10149acc
mov eax, 0x16
jmp 0x10149d87
jmp case.default.0x10149a43
movsx ecx, byte [ebp + 0xc]
cmp ecx, 0x2f
jne 0x10149ae4
mov eax, 0x17
jmp 0x10149d87
jmp case.default.0x10149a43
movsx edx, byte [ebp + 0xc]
cmp edx, 0x2f
jne 0x10149afc
mov eax, 0x18
jmp 0x10149d87
jmp case.default.0x10149a43
movsx eax, byte [ebp + 0xc]
cmp eax, 0x40
jne case.0x10149a43.4
mov eax, 1
jmp 0x10149d87
movsx ecx, byte [ebp + 0xc]
cmp ecx, 0x2f
jne 0x10149b27
mov eax, 0x1b
jmp 0x10149d87
movsx edx, byte [ebp + 0xc]
cmp edx, 0x3f
jne 0x10149b3a
mov eax, 0x1c
jmp 0x10149d87
movsx eax, byte [ebp + 0xc]
cmp eax, 0x40
jne 0x10149b4d
mov eax, 0x1a
jmp 0x10149d87
movsx ecx, byte [ebp + 0xc]
or ecx, 0x20
movzx edx, cl
cmp edx, 0x61
jl 0x10149b6f
movsx eax, byte [ebp + 0xc]
or eax, 0x20
movzx ecx, al
cmp ecx, 0x7a
jle 0x10149c40
movsx edx, byte [ebp + 0xc]
cmp edx, 0x30
jl 0x10149b85
movsx eax, byte [ebp + 0xc]
cmp eax, 0x39
jle 0x10149c40
movsx ecx, byte [ebp + 0xc]
cmp ecx, 0x2d
je 0x10149c40
movsx edx, byte [ebp + 0xc]
cmp edx, 0x5f
je 0x10149c40
movsx eax, byte [ebp + 0xc]
cmp eax, 0x2e
je 0x10149c40
movsx ecx, byte [ebp + 0xc]
cmp ecx, 0x21
je 0x10149c40
movsx edx, byte [ebp + 0xc]
cmp edx, 0x7e
je 0x10149c40
movsx eax, byte [ebp + 0xc]
cmp eax, 0x2a
je 0x10149c40
movsx ecx, byte [ebp + 0xc]
cmp ecx, 0x27
je 0x10149c40
movsx edx, byte [ebp + 0xc]
cmp edx, 0x28
je 0x10149c40
movsx eax, byte [ebp + 0xc]
cmp eax, 0x29
je 0x10149c40
movsx ecx, byte [ebp + 0xc]
cmp ecx, 0x25
je 0x10149c40
movsx edx, byte [ebp + 0xc]
cmp edx, 0x3b
je 0x10149c40
movsx eax, byte [ebp + 0xc]
cmp eax, 0x3a
je 0x10149c40
movsx ecx, byte [ebp + 0xc]
cmp ecx, 0x26
je 0x10149c40
movsx edx, byte [ebp + 0xc]
cmp edx, 0x3d
je 0x10149c40
movsx eax, byte [ebp + 0xc]
cmp eax, 0x2b
je 0x10149c40
movsx ecx, byte [ebp + 0xc]
cmp ecx, 0x24
je 0x10149c40
movsx edx, byte [ebp + 0xc]
cmp edx, 0x2c
je 0x10149c40
movsx eax, byte [ebp + 0xc]
cmp eax, 0x5b
je 0x10149c40
movsx ecx, byte [ebp + 0xc]
cmp ecx, 0x5d
jne 0x10149c4a
mov eax, 0x19
jmp 0x10149d87
jmp case.default.0x10149a43
movzx edx, byte [ebp + 0xc]
shr edx, 3
movzx eax, byte [edx + 0x101b4338]
movzx ecx, byte [ebp + 0xc]
and ecx, 7
mov edx, 1
shl edx, cl
and eax, edx
je 0x10149c77
mov eax, dword [ebp + 8]
jmp 0x10149d87
mov al, byte [ebp + 0xc]
mov byte [ebp - 8], al
cmp byte [ebp - 8], 0x23
je 0x10149c95
cmp byte [ebp - 8], 0x3f
je 0x10149c8b
jmp 0x10149c9f
mov eax, 0x1c
jmp 0x10149d87
mov eax, 0x1e
jmp 0x10149d87
jmp case.default.0x10149a43
movzx ecx, byte [ebp + 0xc]
shr ecx, 3
movzx edx, byte [ecx + 0x101b4338]
movzx ecx, byte [ebp + 0xc]
and ecx, 7
mov eax, 1
shl eax, cl
and edx, eax
je 0x10149cce
mov eax, 0x1d
jmp 0x10149d87
mov cl, byte [ebp + 0xc]
mov byte [ebp - 0xc], cl
cmp byte [ebp - 0xc], 0x23
je 0x10149cec
cmp byte [ebp - 0xc], 0x3f
je 0x10149ce2
jmp 0x10149cf6
mov eax, 0x1d
jmp 0x10149d87
mov eax, 0x1e
jmp 0x10149d87
jmp case.default.0x10149a43
movzx edx, byte [ebp + 0xc]
shr edx, 3
movzx eax, byte [edx + 0x101b4338]
movzx ecx, byte [ebp + 0xc]
and ecx, 7
mov edx, 1
shl edx, cl
and eax, edx
je 0x10149d22
mov eax, 0x1f
jmp 0x10149d87
mov al, byte [ebp + 0xc]
mov byte [ebp - 0x10], al
cmp byte [ebp - 0x10], 0x23
je 0x10149d3d
cmp byte [ebp - 0x10], 0x3f
je 0x10149d36
jmp 0x10149d42
mov eax, 0x1f
jmp 0x10149d87
mov eax, dword [ebp + 8]
jmp 0x10149d87
jmp case.default.0x10149a43
movzx ecx, byte [ebp + 0xc]
shr ecx, 3
movzx edx, byte [ecx + 0x101b4338]
movzx ecx, byte [ebp + 0xc]
and ecx, 7
mov eax, 1
shl eax, cl
and edx, eax
je 0x10149d69
mov eax, dword [ebp + 8]
jmp 0x10149d87
mov cl, byte [ebp + 0xc]
mov byte [ebp - 0x14], cl
cmp byte [ebp - 0x14], 0x23
je 0x10149d7d
cmp byte [ebp - 0x14], 0x3f
je 0x10149d7d
jmp case.default.0x10149a43
mov eax, dword [ebp + 8]
jmp 0x10149d87
mov eax, 1
mov esp, ebp
pop ebp
ret