Function at 0x412680
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffe84
cmp byte [0x453d88], 0
jne 0x4126ad
cmp dword [0x67870c], 0
jne 0x4126ad
cmp dword [0x678710], 0
jne 0x4126ad
mov dword [ebp - 0x10], 0x1f4
jmp 0x4126b4
mov dword [ebp - 0x10], 0x226
xor eax, eax
mov dword [ebp - 4], eax
mov edx, dword [ebp - 4]
cmp edx, dword [ebp - 0x10]
jge 0x4126e8
mov ecx, dword [ebp - 4]
mov eax, ecx
shl ecx, 6
sub ecx, eax
mov byte [ecx*4 + 0x655fec], 0
mov edx, dword [ebp - 4]
mov byte [edx + 0x678240], 0
inc dword [ebp - 4]
mov ecx, dword [ebp - 4]
cmp ecx, dword [ebp - 0x10]
jl 0x4126c1
xor eax, eax
mov dword [ebp - 8], eax
xor edx, edx
mov dword [ebp - 4], edx
jmp 0x412778
mov ecx, dword [ebp + 8]
mov eax, dword [ecx*4 + 0x46db6c]
mov edx, dword [0x4529a8]
lea ecx, [edx + eax]
mov eax, dword [ebp - 4]
mov dl, byte [ecx + eax]
mov byte [ebp - 0x11], dl
cmp dword [ebp - 8], 0
jle 0x412745
cmp byte [ebp - 0x11], 0
je 0x412731
cmp byte [ebp - 0x11], 0x3b
je 0x412731
cmp byte [ebp - 0x11], 0xd
je 0x412731
cmp byte [ebp - 0x11], 0xa
jne 0x412745
xor ecx, ecx
mov dword [ebp - 8], ecx
lea eax, [ebp - 0x118]
push eax
call fcn.004121e4
pop ecx
jmp 0x412775
cmp byte [ebp - 0x11], 0x20
jae 0x412751
cmp byte [ebp - 0x11], 9
jne 0x412775
mov edx, dword [ebp - 8]
mov cl, byte [ebp - 0x11]
mov byte [ebp + edx - 0x118], cl
cmp dword [ebp - 8], 0x104
jge 0x41276a
inc dword [ebp - 8]
mov eax, dword [ebp - 8]
mov byte [ebp + eax - 0x118], 0
inc dword [ebp - 4]
mov edx, dword [ebp + 8]
mov ecx, dword [edx*4 + 0x4cf5ec]
cmp ecx, dword [ebp - 4]
jg 0x4126f7
cmp dword [ebp - 8], 0
jle 0x41279e
lea eax, [ebp - 0x118]
push eax
call fcn.004121e4
pop ecx
cmp dword [0x678694], 3
je 0x41280f
cmp dword [0x678694], 4
je 0x41280f
cmp dword [0x678694], 5
je 0x41280f
cmp dword [0x678694], 6
je 0x41280f
cmp dword [0x678694], 7
je 0x41280f
cmp dword [0x678694], 0xa
je 0x41280f
cmp dword [0x678694], 0xb
je 0x41280f
cmp dword [0x678694], 0xc
je 0x41280f
cmp dword [0x678694], 0xd
je 0x41280f
cmp dword [0x678694], 0xe
je 0x41280f
cmp dword [0x678694], 2
je 0x41280f
mov edx, dword [0x678694]
mov dword [ebp - 0xc], edx
jmp 0x4128ff
cmp dword [0x678694], 3
jne 0x412846
push str.S4_1.
call fcn.0044438c
pop ecx
push eax
push str.S4_1.
push 0x6786d8
call fcn.00444458
add esp, 0xc
test eax, eax
jne 0x412846
mov dword [ebp - 0xc], 0xf
jmp 0x4128ff
push 0x6561e4
call fcn.0044438c
pop ecx
cmp eax, 0x28
jae 0x412862
mov dword [ebp - 0xc], 5
jmp 0x4128ff
mov cl, byte [0x6561f0]
mov byte [ebp - 0x11], cl
cmp byte [ebp - 0x11], 0x31
jb 0x412880
cmp byte [ebp - 0x11], 0x34
ja 0x412880
mov dword [ebp - 0xc], 3
jmp 0x4128ff
cmp byte [ebp - 0x11], 0x35
jne 0x41288f
mov dword [ebp - 0xc], 4
jmp 0x4128ff
cmp byte [ebp - 0x11], 0x36
jne 0x41289e
mov dword [ebp - 0xc], 6
jmp 0x4128ff
cmp byte [ebp - 0x11], 0x37
jne 0x4128ad
mov dword [ebp - 0xc], 7
jmp 0x4128ff
cmp byte [ebp - 0x11], 0x39
jne 0x4128bc
mov dword [ebp - 0xc], 0xa
jmp 0x4128ff
cmp byte [ebp - 0x11], 0x41
jne 0x4128cb
mov dword [ebp - 0xc], 0xb
jmp 0x4128ff
cmp byte [ebp - 0x11], 0x42
jne 0x4128da
mov dword [ebp - 0xc], 0xc
jmp 0x4128ff
cmp byte [ebp - 0x11], 0x43
jne 0x4128e9
mov dword [ebp - 0xc], 0xd
jmp 0x4128ff
cmp byte [ebp - 0x11], 0x44
jne 0x4128f8
mov dword [ebp - 0xc], 0xe
jmp 0x4128ff
mov dword [ebp - 0xc], 5
cmp dword [ebp - 0xc], 3
je 0x412911
cmp dword [ebp - 0xc], 5
je 0x412911
cmp dword [ebp - 0xc], 4
jne 0x41298f
push 0x453121
call fcn.0044438c
pop ecx
push eax
push 0x453121
push 0x6786d8
call fcn.00444458
add esp, 0xc
test eax, eax
je 0x41298f
push 0x669ce4
call fcn.004125cc
pop ecx
test eax, eax
jne 0x41298f
cmp dword [ebp - 0xc], 3
jne 0x41295c
push str.DIN_VDE_0701
push 0x669ce4
call fcn.0044435c
add esp, 8
jmp 0x412988
cmp dword [ebp - 0xc], 4
jne 0x412976
push str.DIN_VDE_0702
push 0x669ce4
call fcn.0044435c
add esp, 8
jmp 0x412988
push str.DIN_VDE_0701_0702
push 0x669ce4
call fcn.0044435c
add esp, 8
mov dword [ebp - 0xc], 5
cmp dword [0x4528e4], 0
je 0x4129a0
mov eax, dword [ebp - 0xc]
jmp 0x412c73
xor edx, edx
mov dword [0x678714], edx
mov dword [0x678710], edx
mov dword [0x67870c], edx
cmp dword [ebp - 0xc], 0
jne 0x4129c4
call fcn.00424b38
jmp 0x412c1a
cmp dword [ebp - 0xc], 1
jne 0x412ae7
push 0x45311b
push dword [0x454c68]
push str._s__s
lea eax, [ebp - 0x17c]
push eax
call fcn.00447d04
add esp, 0x10
push 0x453118
call fcn.0044438c
pop ecx
push eax
push 0x453118
push 0x6786d8
call fcn.00444458
add esp, 0xc
test eax, eax
jne 0x412a19
call fcn.00425068
jmp 0x412c1a
push 0x45311b
call fcn.0044438c
pop ecx
push eax
push 0x45311b
push 0x6786d8
call fcn.00444458
add esp, 0xc
test eax, eax
jne 0x412a7b
lea ecx, [ebp - 0x17c]
push ecx
push 0x668b2c
call fcn.0044449d
add esp, 8
test eax, eax
jne 0x412a67
lea eax, [ebp - 0x17c]
push eax
push 0x668b2c
call fcn.0044435c
add esp, 8
mov dword [0x67870c], 1
call fcn.004257a0
jmp 0x412c1a
lea edx, [ebp - 0x17c]
push edx
push 0x668b2c
call fcn.0044449d
add esp, 8
test eax, eax
je 0x412aa7
mov dword [0x67870c], 1
call fcn.004257a0
jmp 0x412c1a
push 0x45311e
call fcn.0044438c
pop ecx
push eax
push 0x45311e
push 0x6786d8
call fcn.00444458
add esp, 0xc
test eax, eax
jne 0x412add
mov dword [0x678710], 1
call fcn.0042582c
jmp 0x412c1a
call fcn.00424d58
jmp 0x412c1a
cmp dword [ebp - 0xc], 2
jne 0x412af7
call fcn.004258b8
jmp 0x412c1a
cmp dword [ebp - 0xc], 0xf
jne 0x412b07
call fcn.00429de4
jmp 0x412c1a
cmp dword [ebp - 0xc], 3
je 0x412b13
cmp dword [ebp - 0xc], 5
jne 0x412b70
push 0x453121
call fcn.0044438c
pop ecx
push eax
push 0x453121
push 0x6786d8
call fcn.00444458
add esp, 0xc
test eax, eax
jne 0x412b49
mov dword [0x678714], 1
call fcn.00429de0
jmp 0x412c1a
call fcn.00426bdc
cmp dword [0x4528c0], 0
je 0x412c1a
call fcn.00429f18
test eax, eax
jne 0x412c1a
or eax, 0xffffffff
jmp 0x412c73
cmp dword [ebp - 0xc], 4
jne 0x412bb0
push 0x453121
call fcn.0044438c
pop ecx
push eax
push 0x453121
push 0x6786d8
call fcn.00444458
add esp, 0xc
test eax, eax
jne 0x412ba9
mov dword [0x678714], 1
call fcn.00429de0
jmp 0x412c1a
call fcn.004258c0
jmp 0x412c1a
cmp dword [ebp - 0xc], 6
jne 0x412bbd
call fcn.00425928
jmp 0x412c1a
cmp dword [ebp - 0xc], 7
je 0x412bcf
cmp dword [ebp - 0xc], 0xa
jl 0x412bd6
cmp dword [ebp - 0xc], 0xe
jg 0x412bd6
call fcn.00425930
jmp 0x412c1a
cmp dword [ebp - 0xc], 8
jne 0x412c0f
push 0x45312a
call fcn.0044438c
pop ecx
push eax
push 0x45312a
push 0x6786d8
call fcn.00444458
add esp, 0xc
test eax, eax
sete dl
and edx, 1
mov dword [0x45313c], edx
call fcn.0042594c
jmp 0x412c1a
cmp dword [ebp - 0xc], 9
jne 0x412c1a
call fcn.00425cac
push dword [ebp - 0xc]
push dword [ebp + 8]
call fcn.004170fc
add esp, 8
push 0
push dword [ebp - 0xc]
call fcn.00415704
add esp, 8
cmp dword [0x454d00], 0
jle 0x412c70
xor ecx, ecx
mov dword [ebp - 4], ecx
push dword [ebp - 4]
push dword [ebp + 8]
push str.__d__d_
imul eax, dword [ebp - 4], 0xfc
add eax, 0x655fec
push eax
call fcn.00447d04
add esp, 0x10
inc dword [ebp - 4]
cmp dword [ebp - 4], 0x226
jl 0x412c43
mov eax, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret