Function at 0x1002b640
Capabilities:
Parse credit card information

Disassembly:
push ebx
push esi
mov esi, ecx
xor cl, cl
push edi
mov eax, dword [esi + 0x4c]
cmp eax, 0xffffffff
je 0x1002baa7
lea edi, [esi + 8]
cmp eax, 0x7c
je 0x1002baa7
cmp eax, 0x29
jne 0x1002b680
cmp dword [esi + 0x10], 0
jne 0x1002baa7
test dword [esi + 0x50], 0x10000000
je 0x1002bab4
jmp 0x1002ba40
cmp eax, 0x2e
jne 0x1002b6d3
push 5
lea ecx, [esi + 0x24]
call fcn.1002bad0
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x1002ba88
cmp byte [eax], 0x5c
jne 0x1002b88f
lea ecx, [eax + 1]
cmp ecx, edx
je 0x1002b88f
mov ebx, dword [esi + 0x50]
test bl, 8
jne 0x1002b6cb
mov dl, byte [ecx]
cmp dl, 0x28
je 0x1002b88d
cmp dl, 0x29
je 0x1002b88d
test bl, 0x10
jmp 0x1002b87f
cmp eax, 0x5c
jne 0x1002b7f1
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x1002b71a
cmp byte [eax], 0x5c
jne 0x1002b717
lea ecx, [eax + 1]
cmp ecx, edx
je 0x1002b717
mov ebx, dword [esi + 0x50]
test bl, 8
jne 0x1002b704
mov dl, byte [ecx]
cmp dl, 0x28
je 0x1002b715
cmp dl, 0x29
je 0x1002b715
test bl, 0x10
jne 0x1002b717
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x1002b715
cmp dl, 0x7d
jne 0x1002b717
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.10029e20
test byte [esi + 0x50], 0x80
je 0x1002b7e5
mov al, byte [esi + 0x48]
cmp al, 0x62
jne 0x1002b786
push 4
lea ecx, [esi + 0x24]
call fcn.1002bad0
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x1002b77a
cmp byte [eax], 0x5c
jne 0x1002b777
lea ecx, [eax + 1]
cmp ecx, edx
je 0x1002b777
mov ebx, dword [esi + 0x50]
test bl, 8
jne 0x1002b764
mov dl, byte [ecx]
cmp dl, 0x28
je 0x1002b775
cmp dl, 0x29
je 0x1002b775
test bl, 0x10
jne 0x1002b777
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x1002b775
cmp dl, 0x7d
jne 0x1002b777
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.10029e20
jmp 0x1002ba99
cmp al, 0x42
jne 0x1002b7e5
push 4
lea ecx, [esi + 0x24]
call fcn.1002bad0
mov eax, dword [esi + 0x28]
xor dword [eax + 8], 1
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x1002b7d9
cmp byte [eax], 0x5c
jne 0x1002b7d6
lea ecx, [eax + 1]
cmp ecx, edx
je 0x1002b7d6
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x1002b7c3
mov al, byte [ecx]
cmp al, 0x28
je 0x1002b7d4
cmp al, 0x29
je 0x1002b7d4
mov eax, dword [esi]
test dl, 0x10
jne 0x1002b7d6
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x1002b7d4
cmp dl, 0x7d
jne 0x1002b7d6
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.10029e20
jmp 0x1002ba99
mov ecx, esi
call fcn.1002cb00
jmp 0x1002ba8f
cmp eax, 0x5b
jne 0x1002b897
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x1002b838
cmp byte [eax], 0x5c
jne 0x1002b835
lea ecx, [eax + 1]
cmp ecx, edx
je 0x1002b835
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x1002b822
mov al, byte [ecx]
cmp al, 0x28
je 0x1002b833
cmp al, 0x29
je 0x1002b833
mov eax, dword [esi]
test dl, 0x10
jne 0x1002b835
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x1002b833
cmp dl, 0x7d
jne 0x1002b835
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.10029e20
mov ecx, esi
call fcn.1002c9d0
cmp dword [esi + 0x4c], 0x5d
jne 0x1002bac2
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x1002ba88
cmp byte [eax], 0x5c
jne 0x1002b88f
lea ecx, [eax + 1]
cmp ecx, edx
je 0x1002b88f
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x1002b87c
mov al, byte [ecx]
cmp al, 0x28
je 0x1002b88d
cmp al, 0x29
je 0x1002b88d
mov eax, dword [esi]
test dl, 0x10
jne 0x1002b88f
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x1002b88d
cmp dl, 0x7d
jne 0x1002b88f
mov eax, ecx
inc eax
mov dword [esi], eax
jmp 0x1002ba88
cmp eax, 0x28
jne 0x1002b94a
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x1002b8de
cmp byte [eax], 0x5c
jne 0x1002b8db
lea ecx, [eax + 1]
cmp ecx, edx
je 0x1002b8db
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x1002b8c8
mov al, byte [ecx]
cmp al, 0x28
je 0x1002b8d9
cmp al, 0x29
je 0x1002b8d9
mov eax, dword [esi]
test dl, 0x10
jne 0x1002b8db
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x1002b8d9
cmp dl, 0x7d
jne 0x1002b8db
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.10029e20
mov ecx, esi
call fcn.1002cc50
cmp dword [esi + 0x4c], 0x29
mov bl, al
jne 0x1002bab4
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x1002b936
cmp byte [eax], 0x5c
jne 0x1002b933
lea ecx, [eax + 1]
cmp ecx, edx
je 0x1002b933
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x1002b920
mov al, byte [ecx]
cmp al, 0x28
je 0x1002b931
cmp al, 0x29
je 0x1002b931
mov eax, dword [esi]
test dl, 0x10
jne 0x1002b933
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x1002b931
cmp dl, 0x7d
jne 0x1002b933
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.10029e20
test bl, bl
je 0x1002ba99
jmp 0x1002ba8f
cmp eax, 0x5e
jne 0x1002b9a0
push 2
lea ecx, [esi + 0x24]
call fcn.1002bad0
mov eax, dword [esi]
mov ecx, dword [edi]
cmp eax, ecx
je 0x1002b994
cmp byte [eax], 0x5c
jne 0x1002b992
inc eax
cmp eax, ecx
je 0x1002b992
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x1002b97f
mov dl, byte [eax]
cmp dl, 0x28
je 0x1002b990
cmp dl, 0x29
je 0x1002b990
test cl, 0x10
jne 0x1002b992
mov cl, byte [eax]
cmp cl, 0x7b
je 0x1002b990
cmp cl, 0x7d
jne 0x1002b992
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.10029e20
jmp 0x1002ba99
cmp eax, 0x24
jne 0x1002b9f6
push 3
lea ecx, [esi + 0x24]
call fcn.1002bad0
mov eax, dword [esi]
mov ecx, dword [edi]
cmp eax, ecx
je 0x1002b9ea
cmp byte [eax], 0x5c
jne 0x1002b9e8
inc eax
cmp eax, ecx
je 0x1002b9e8
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x1002b9d5
mov dl, byte [eax]
cmp dl, 0x28
je 0x1002b9e6
cmp dl, 0x29
je 0x1002b9e6
test cl, 0x10
jne 0x1002b9e8
mov cl, byte [eax]
cmp cl, 0x7b
je 0x1002b9e6
cmp cl, 0x7d
jne 0x1002b9e8
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.10029e20
jmp 0x1002ba99
cmp eax, 0x2a
je 0x1002baad
cmp eax, 0x2b
je 0x1002baad
cmp eax, 0x3f
je 0x1002baad
cmp eax, 0x7b
je 0x1002baad
cmp eax, 0x7d
jne 0x1002ba2e
test dword [esi + 0x50], 0x10000000
je 0x1002babb
jmp 0x1002ba40
cmp eax, 0x5d
jne 0x1002ba40
test dword [esi + 0x50], 0x10000000
je 0x1002bac2
movzx eax, byte [esi + 0x48]
lea ecx, [esi + 0x24]
push eax
call fcn.1002d030
mov eax, dword [esi]
mov ecx, dword [edi]
cmp eax, ecx
je 0x1002ba88
cmp byte [eax], 0x5c
jne 0x1002ba86
inc eax
cmp eax, ecx
je 0x1002ba86
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x1002ba73
mov dl, byte [eax]
cmp dl, 0x28
je 0x1002ba84
cmp dl, 0x29
je 0x1002ba84
test cl, 0x10
jne 0x1002ba86
mov cl, byte [eax]
cmp cl, 0x7b
je 0x1002ba84
cmp cl, 0x7d
jne 0x1002ba86
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.10029e20
mov ecx, esi
call fcn.1002ce00
lea edi, [esi + 8]
mov eax, dword [esi + 0x4c]
mov cl, 1
cmp eax, 0xffffffff
jne 0x1002b656
pop edi
pop esi
mov al, cl
pop ebx
ret
push 0xa
call fcn.10029e10
push 5
call fcn.10029e10
push 6
call fcn.10029e10
push 4
call fcn.10029e10
int3