Function at 0x423890
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x48
push ebx
push esi
push edi
push ecx
lea edi, [ebp - 0x48]
mov ecx, 0x12
mov eax, 0xcccccccc
rep stosd dword es:[edi], eax
pop ecx
mov dword [ebp - 4], ecx
mov al, byte [ebp + 8]
mov byte [ebp - 8], al
mov ecx, dword [ebp - 4]
movsx edx, byte [ecx + 4]
cmp edx, 1
jne 0x423e30
mov eax, dword [ebp - 8]
and eax, 0xff
cmp eax, 1
jl 0x423901
mov ecx, dword [ebp - 8]
and ecx, 0xff
cmp ecx, 0x25
jg 0x423901
mov edx, dword [ebp - 8]
and edx, 0xff
sub edx, 1
push edx
push 0x4e21ac
mov eax, dword [ebp + 0xc]
push eax
call fcn.00466a20
add esp, 0xc
jmp 0x423e2b
mov ecx, dword [ebp - 8]
and ecx, 0xff
cmp ecx, 0x26
jl 0x423999
mov edx, dword [ebp - 8]
and edx, 0xff
cmp edx, 0x3d
jg 0x423999
mov eax, dword [ebp - 8]
and eax, 0xff
sub eax, 0x26
cdq
sub eax, edx
sar eax, 1
imul eax, eax, 3
mov ecx, dword [ebp - 8]
and ecx, 0xff
sub ecx, 0x26
and ecx, 0x80000001
jns 0x42394d
dec ecx
or ecx, 0xfffffffe
inc ecx
lea edx, [eax + ecx + 2]
push edx
mov eax, dword [ebp - 8]
and eax, 0xff
sub eax, 0x26
cdq
sub eax, edx
sar eax, 1
imul eax, eax, 3
mov ecx, dword [ebp - 8]
and ecx, 0xff
sub ecx, 0x26
and ecx, 0x80000001
jns 0x42397e
dec ecx
or ecx, 0xfffffffe
inc ecx
lea edx, [eax + ecx + 1]
push edx
push str.__d__d_
mov eax, dword [ebp + 0xc]
push eax
call fcn.00466a20
add esp, 0x10
jmp 0x423e2b
mov ecx, dword [ebp - 8]
and ecx, 0xff
cmp ecx, 0x3e
jl 0x423a2f
mov edx, dword [ebp - 8]
and edx, 0xff
cmp edx, 0x5e
jg 0x423a2f
mov eax, dword [ebp - 8]
and eax, 0xff
sub eax, 0x3e
cdq
mov ecx, 3
idiv ecx
mov ecx, eax
imul ecx, ecx, 3
mov eax, dword [ebp - 8]
and eax, 0xff
sub eax, 0x3e
cdq
mov esi, 3
idiv esi
lea edx, [ecx + edx + 4]
push edx
mov eax, dword [ebp - 8]
and eax, 0xff
sub eax, 0x3e
cdq
mov ecx, 3
idiv ecx
mov ecx, eax
imul ecx, ecx, 3
mov eax, dword [ebp - 8]
and eax, 0xff
sub eax, 0x3e
cdq
mov esi, 3
idiv esi
lea edx, [ecx + edx + 1]
push edx
push str.__d__d_
mov eax, dword [ebp + 0xc]
push eax
call fcn.00466a20
add esp, 0x10
jmp 0x423e2b
mov ecx, dword [ebp - 8]
and ecx, 0xff
cmp ecx, 0x5f
jl 0x423a99
mov edx, dword [ebp - 8]
and edx, 0xff
cmp edx, 0x6a
jg 0x423a99
mov eax, dword [ebp - 8]
and eax, 0xff
sub eax, 0x5f
imul eax, eax, 3
add eax, 3
push eax
mov ecx, dword [ebp - 8]
and ecx, 0xff
sub ecx, 0x5f
imul ecx, ecx, 3
add ecx, 2
push ecx
mov edx, dword [ebp - 8]
and edx, 0xff
sub edx, 0x5f
imul edx, edx, 3
add edx, 1
push edx
push str.__d__d__d_
mov eax, dword [ebp + 0xc]
push eax
call fcn.00466a20
add esp, 0x14
jmp 0x423e2b
mov ecx, dword [ebp - 8]
and ecx, 0xff
cmp ecx, 0x6b
jl 0x423b9a
mov edx, dword [ebp - 8]
and edx, 0xff
cmp edx, 0x80
jg 0x423b9a
mov eax, dword [ebp - 8]
and eax, 0xff
sub eax, 0x6b
cdq
sub eax, edx
sar eax, 1
imul eax, eax, 3
mov ecx, dword [ebp - 8]
and ecx, 0xff
sub ecx, 0x6b
and ecx, 0x80000001
jns 0x423aec
dec ecx
or ecx, 0xfffffffe
inc ecx
lea edx, [eax + ecx + 5]
push edx
mov eax, dword [ebp - 8]
and eax, 0xff
sub eax, 0x6b
cdq
sub eax, edx
sar eax, 1
imul eax, eax, 3
mov ecx, dword [ebp - 8]
and ecx, 0xff
sub ecx, 0x6b
and ecx, 0x80000001
jns 0x423b1d
dec ecx
or ecx, 0xfffffffe
inc ecx
lea edx, [eax + ecx + 4]
push edx
mov eax, dword [ebp - 8]
and eax, 0xff
sub eax, 0x6b
cdq
sub eax, edx
sar eax, 1
imul eax, eax, 3
mov ecx, dword [ebp - 8]
and ecx, 0xff
sub ecx, 0x6b
and ecx, 0x80000001
jns 0x423b4e
dec ecx
or ecx, 0xfffffffe
inc ecx
lea edx, [eax + ecx + 2]
push edx
mov eax, dword [ebp - 8]
and eax, 0xff
sub eax, 0x6b
cdq
sub eax, edx
sar eax, 1
imul eax, eax, 3
mov ecx, dword [ebp - 8]
and ecx, 0xff
sub ecx, 0x6b
and ecx, 0x80000001
jns 0x423b7f
dec ecx
or ecx, 0xfffffffe
inc ecx
lea edx, [eax + ecx + 1]
push edx
push str.__d__d__d__d_
mov eax, dword [ebp + 0xc]
push eax
call fcn.00466a20
add esp, 0x18
jmp 0x423e2b
mov ecx, dword [ebp - 8]
and ecx, 0xff
cmp ecx, 0x81
jl 0x423c5a
mov edx, dword [ebp - 8]
and edx, 0xff
cmp edx, 0x8b
jg 0x423c5a
mov eax, dword [ebp - 8]
and eax, 0xff
sub eax, 0x81
imul eax, eax, 3
add eax, 6
push eax
mov ecx, dword [ebp - 8]
and ecx, 0xff
sub ecx, 0x81
imul ecx, ecx, 3
add ecx, 5
push ecx
mov edx, dword [ebp - 8]
and edx, 0xff
sub edx, 0x81
imul edx, edx, 3
add edx, 4
push edx
mov eax, dword [ebp - 8]
and eax, 0xff
sub eax, 0x81
imul eax, eax, 3
add eax, 3
push eax
mov ecx, dword [ebp - 8]
and ecx, 0xff
sub ecx, 0x81
imul ecx, ecx, 3
add ecx, 2
push ecx
mov edx, dword [ebp - 8]
and edx, 0xff
sub edx, 0x81
imul edx, edx, 3
add edx, 1
push edx
push str.__d__d__d__d__d__d_
mov eax, dword [ebp + 0xc]
push eax
call fcn.00466a20
add esp, 0x20
jmp 0x423e2b
mov ecx, dword [ebp - 8]
and ecx, 0xff
cmp ecx, 0x8c
jne 0x423c81
push 0x4e2890
mov edx, dword [ebp + 0xc]
push edx
call fcn.00466930
add esp, 8
jmp 0x423e2b
mov eax, dword [ebp - 8]
and eax, 0xff
cmp eax, 0x8d
jne 0x423ca6
push 0x4e2888
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.00466930
add esp, 8
jmp 0x423e2b
mov edx, dword [ebp - 8]
and edx, 0xff
cmp edx, 0x8e
jne 0x423ccd
push 0x4e2880
mov eax, dword [ebp + 0xc]
push eax
call fcn.00466930
add esp, 8
jmp 0x423e2b
mov ecx, dword [ebp - 8]
and ecx, 0xff
cmp ecx, 0x8f
jne 0x423cf4
push 0x4e2878
mov edx, dword [ebp + 0xc]
push edx
call fcn.00466930
add esp, 8
jmp 0x423e2b
mov eax, dword [ebp - 8]
and eax, 0xff
cmp eax, 0x90
jne 0x423d19
push 0x4e2870
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.00466930
add esp, 8
jmp 0x423e2b
mov edx, dword [ebp - 8]
and edx, 0xff
cmp edx, 0x91
jne 0x423d40
push 0x4e2868
mov eax, dword [ebp + 0xc]
push eax
call fcn.00466930
add esp, 8
jmp 0x423e2b
mov ecx, dword [ebp - 8]
and ecx, 0xff
cmp ecx, 0x92
jne 0x423d67
push 0x4e2130
mov edx, dword [ebp + 0xc]
push edx
call fcn.00466930
add esp, 8
jmp 0x423e2b
mov eax, dword [ebp - 8]
and eax, 0xff
cmp eax, 0x93
jne 0x423d8c
push 0x4e2134
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.00466930
add esp, 8
jmp 0x423e2b
mov edx, dword [ebp - 8]
and edx, 0xff
cmp edx, 0x94
jne 0x423db0
push 0x4e212c
mov eax, dword [ebp + 0xc]
push eax
call fcn.00466930
add esp, 8
jmp 0x423e2b
mov ecx, dword [ebp - 8]
and ecx, 0xff
cmp ecx, 0x95
jne 0x423dd4
push 0x4e2864
mov edx, dword [ebp + 0xc]
push edx
call fcn.00466930
add esp, 8
jmp 0x423e2b
mov eax, dword [ebp - 8]
and eax, 0xff
cmp eax, 0x96
jne 0x423df6
push 0x4e2148
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.00466930
add esp, 8
jmp 0x423e2b
mov edx, dword [ebp - 8]
and edx, 0xff
cmp edx, 0x97
jne 0x423e1a
push 0x4e2138
mov eax, dword [ebp + 0xc]
push eax
call fcn.00466930
add esp, 8
jmp 0x423e2b
push 0x4e2860
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.00466930
add esp, 8
jmp 0x42414d
mov edx, dword [ebp - 4]
movsx eax, byte [edx + 4]
cmp eax, 4
jne 0x42414d
mov ecx, dword [ebp - 8]
and ecx, 0xff
cmp ecx, 1
jne 0x423e64
push 0x4e2858
mov edx, dword [ebp + 0xc]
push edx
call fcn.00466930
add esp, 8
jmp 0x42414d
mov eax, dword [ebp - 8]
and eax, 0xff
cmp eax, 2
jl 0x423ea2
mov ecx, dword [ebp - 8]
and ecx, 0xff
cmp ecx, 0x19
jg 0x423ea2
mov edx, dword [ebp - 8]
and edx, 0xff
sub edx, 1
push edx
push 0x4e21ac
mov eax, dword [ebp + 0xc]
push eax
call fcn.00466a20
add esp, 0xc
jmp 0x42414d
mov ecx, dword [ebp - 8]
and ecx, 0xff
cmp ecx, 0x1a
jne 0x423ec6
push 0x4e2854
mov edx, dword [ebp + 0xc]
push edx
call fcn.00466930
add esp, 8
jmp 0x42414d
mov eax, dword [ebp - 8]
and eax, 0xff
cmp eax, 0x1b
jne 0x423ee9
push 0x4e2850
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.00466930
add esp, 8
jmp 0x42414d
mov edx, dword [ebp - 8]
and edx, 0xff
cmp edx, 0x1c
jne 0x423f0d
push 0x4e284c
mov eax, dword [ebp + 0xc]
push eax
call fcn.00466930
add esp, 8
jmp 0x42414d
mov ecx, dword [ebp - 8]
and ecx, 0xff
cmp ecx, 0x1d
jne 0x423f31
push 0x4e2848
mov edx, dword [ebp + 0xc]
push edx
call fcn.00466930
add esp, 8
jmp 0x42414d
mov eax, dword [ebp - 8]
and eax, 0xff
cmp eax, 0x1e
jne 0x423f54
push 0x4e2844
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.00466930
add esp, 8
jmp 0x42414d
mov edx, dword [ebp - 8]
and edx, 0xff
cmp edx, 0x1f
jne 0x423f78
push 0x4e2840
mov eax, dword [ebp + 0xc]
push eax
call fcn.00466930
add esp, 8
jmp 0x42414d
mov ecx, dword [ebp - 8]
and ecx, 0xff
cmp ecx, 0x20
jne 0x423f9c
push 0x4e283c
mov edx, dword [ebp + 0xc]
push edx
call fcn.00466930
add esp, 8
jmp 0x42414d
mov eax, dword [ebp - 8]
and eax, 0xff
cmp eax, 0x21
jne 0x423fbf
push 0x4e2838
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.00466930
add esp, 8
jmp 0x42414d
mov edx, dword [ebp - 8]
and edx, 0xff
cmp edx, 0x22
jne 0x423fe3
push 0x4e2834
mov eax, dword [ebp + 0xc]
push eax
call fcn.00466930
add esp, 8
jmp 0x42414d
mov ecx, dword [ebp - 8]
and ecx, 0xff
cmp ecx, 0x23
jne 0x424007
push 0x4e2830
mov edx, dword [ebp + 0xc]
push edx
call fcn.00466930
add esp, 8
jmp 0x42414d
mov eax, dword [ebp - 8]
and eax, 0xff
cmp eax, 0x24
jne 0x42402a
push 0x4e282c
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.00466930
add esp, 8
jmp 0x42414d
mov edx, dword [ebp - 8]
and edx, 0xff
cmp edx, 0x25
jne 0x42404e
push 0x4e2828
mov eax, dword [ebp + 0xc]
push eax
call fcn.00466930
add esp, 8
jmp 0x42414d
mov ecx, dword [ebp - 8]
and ecx, 0xff
cmp ecx, 0x26
jne 0x424072
push 0x4e281c
mov edx, dword [ebp + 0xc]
push edx
call fcn.00466930
add esp, 8
jmp 0x42414d
mov eax, dword [ebp - 8]
and eax, 0xff
cmp eax, 0x27
jne 0x424095
push 0x4e2810
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.00466930
add esp, 8
jmp 0x42414d
mov edx, dword [ebp - 8]
and edx, 0xff
cmp edx, 0x28
jne 0x4240b9
push 0x4e2804
mov eax, dword [ebp + 0xc]
push eax
call fcn.00466930
add esp, 8
jmp 0x42414d
mov ecx, dword [ebp - 8]
and ecx, 0xff
cmp ecx, 0x29
jne 0x4240da
push 0x4e27f8
mov edx, dword [ebp + 0xc]
push edx
call fcn.00466930
add esp, 8
jmp 0x42414d
mov eax, dword [ebp - 8]
and eax, 0xff
cmp eax, 0x2a
jne 0x4240fa
push 0x4e2134
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.00466930
add esp, 8
jmp 0x42414d
mov edx, dword [ebp - 8]
and edx, 0xff
cmp edx, 0x2b
jne 0x42411b
push 0x4e2130
mov eax, dword [ebp + 0xc]
push eax
call fcn.00466930
add esp, 8
jmp 0x42414d
mov ecx, dword [ebp - 8]
and ecx, 0xff
cmp ecx, 0x2c
jne 0x42413c
push 0x4e27ec
mov edx, dword [ebp + 0xc]
push edx
call fcn.00466930
add esp, 8
jmp 0x42414d
push 0x4e2860
mov eax, dword [ebp + 0xc]
push eax
call fcn.00466930
add esp, 8
pop edi
pop esi
pop ebx
add esp, 0x48
cmp ebp, esp
call fcn.004667e0
mov esp, ebp
pop ebp
ret 8