Function at 0x10001474
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x84
mov eax, dword [ebp + 0xc]
push ebx
push esi
mov esi, dword [ebp + 8]
push edi
push 0x1b
xor edx, edx
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x74], eax
pop ecx
xor eax, eax
lea edi, [ebp - 0x70]
mov dword [ebp - 0x84], edx
mov dword [ebp - 0x80], edx
mov dword [ebp - 0x7c], edx
mov dword [ebp - 4], edx
rep stosd dword es:[edi], eax
mov eax, dword [esi]
lea edi, [ebp - 0x70]
mov dword [ebp + 0xc], edi
mov dl, byte [eax]
test dl, dl
je 0x100015e3
mov ebx, 0x10000
jmp 0x100014c3
mov edi, dword [ebp + 0xc]
cmp dl, 0x29
je 0x100015e3
cmp dl, 0x7d
je 0x100015e3
cmp dl, 0x5d
je 0x100015e3
cmp dl, 0x2c
je 0x100015e3
movsx ecx, dl
cmp ecx, 0x2f
jg 0x1000163f
je 0x10001753
cmp ecx, 0x26
jg 0x100015ab
cmp ecx, 0x25
jge 0x10001753
sub ecx, 9
je 0x100015a6
sub ecx, 0x17
je 0x100015a6
dec ecx
je 0x10001753
dec ecx
je 0x10001728
dec ecx
jne 0x100015d0
inc eax
mov dword [esi], eax
mov al, byte [eax]
cmp al, 0x5b
je 0x1000154b
cmp al, 0x7b
je 0x1000154b
mov dword [ebp - 4], 1
jmp 0x100015d7
call fcn.10003179
mov ecx, dword [esi]
mov dword [ebp - 0x80], eax
xor edx, edx
cmp byte [ecx], 0x5b
setne dl
dec edx
xor dl, dl
add edx, 0x40200
mov dword [eax], edx
mov eax, dword [ebp - 0x80]
inc dword [esi]
add eax, 4
push eax
push esi
call fcn.10001474
mov eax, dword [ebp - 0x80]
lea edi, [eax + 8]
jmp 0x1000159b
call fcn.10003179
mov dword [edi], eax
mov dword [eax], ebx
inc dword [esi]
mov eax, dword [edi]
add eax, 4
push eax
push esi
call fcn.10001474
mov edi, dword [edi]
add edi, 0xc
mov eax, dword [esi]
pop ecx
pop ecx
cmp byte [eax], 0x2c
je 0x1000157f
jmp 0x100015d5
inc eax
mov dword [esi], eax
jmp 0x100015d7
cmp ecx, 0x27
je 0x10001728
cmp ecx, 0x28
je 0x10001600
cmp ecx, 0x29
jle 0x100015d0
cmp ecx, 0x2b
jle 0x10001753
cmp ecx, 0x2d
je 0x10001753
mov byte [edi], dl
inc dword [ebp + 0xc]
inc dword [esi]
mov eax, dword [esi]
mov dl, byte [eax]
test dl, dl
jne 0x100014c0
lea eax, [ebp - 0x84]
push 0xff
push eax
lea eax, [ebp + 0xc]
push eax
call section..text
add esp, 0xc
pop edi
pop esi
pop ebx
leave
ret
lea ecx, [ebp - 0x70]
cmp edi, ecx
jbe 0x10001620
push dword [ebp - 4]
lea eax, [ebp - 0x84]
push eax
lea eax, [ebp + 0xc]
push esi
push eax
call fcn.10001153
add esp, 0x10
jmp 0x10001639
inc eax
mov dword [esi], eax
lea eax, [ebp - 0x80]
push eax
push esi
call fcn.10001474
mov eax, dword [esi]
pop ecx
pop ecx
cmp byte [eax], 0x29
jne 0x10001639
inc eax
mov dword [esi], eax
and dword [ebp - 4], 0
jmp 0x100015d7
cmp ecx, 0x5e
jg 0x1000173e
je 0x10001753
cmp ecx, 0x30
jl 0x100015d0
cmp ecx, 0x39
jle 0x1000171d
cmp ecx, 0x3b
je 0x100016ea
jle 0x100015d0
cmp ecx, 0x3e
jle 0x10001753
cmp ecx, 0x5b
jne 0x100015d0
lea eax, [ebp - 0x84]
push eax
push 1
lea eax, [ebp + 0xc]
push 0x60002
push eax
call fcn.1000137d
mov eax, dword [ebp - 0x80]
inc dword [esi]
add eax, 8
push eax
push esi
call fcn.10001474
mov eax, dword [esi]
add esp, 0x18
cmp byte [eax], 0x2c
jne 0x100015d5
call fcn.10003179
mov edi, eax
mov dword [edi], ebx
mov eax, dword [ebp - 0x80]
mov eax, dword [eax + 8]
mov dword [edi + 4], eax
mov eax, dword [ebp - 0x80]
mov dword [eax + 8], edi
call fcn.10003179
mov dword [edi + 0xc], eax
mov dword [eax], ebx
inc dword [esi]
add eax, 4
push eax
push esi
call fcn.10001474
pop ecx
pop ecx
jmp 0x100015d5
lea eax, [ebp - 0x84]
push 0xff
push eax
lea eax, [ebp + 0xc]
push eax
call section..text
mov eax, dword [ebp - 0x74]
add esp, 0xc
cmp dword [eax], 0
je 0x100015d5
mov dword [ebp - 0x84], 1
jmp 0x100015d5
lea eax, [ebp - 0x70]
cmp edi, eax
ja 0x100015d0
call fcn.10003179
push 0x700
push eax
push esi
mov dword [ebp - 0x80], eax
call fcn.10002bf3
jmp 0x10001764
sub ecx, 0x60
je 0x10001728
sub ecx, 0x1b
je 0x1000176c
dec ecx
je 0x10001753
dec ecx
dec ecx
jne 0x100015d0
lea eax, [ebp - 0x84]
push eax
lea eax, [ebp + 0xc]
push eax
push esi
call fcn.100013fd
add esp, 0xc
jmp 0x100015d7
call fcn.10003179
mov dword [ebp - 0x80], eax
push 0x400
mov dword [eax], 0x50317
call fcn.10003195
pop ecx
mov ecx, dword [ebp - 0x80]
mov dword [ecx + 4], eax
mov edi, dword [eax + 4]
jmp 0x100017b3
inc eax
mov dword [esi], eax
mov eax, dword [edi + 8]
mov ecx, dword [edi]
lea eax, [ecx + eax*4]
push eax
push esi
call fcn.10001474
mov eax, dword [edi + 8]
pop ecx
pop ecx
mov ecx, dword [edi]
cmp dword [ecx + eax*4], 0
je 0x100017b3
inc eax
mov dword [edi + 8], eax
mov eax, dword [esi]
cmp byte [eax], 0x7d
jne 0x10001790
jmp 0x100015d5