Function at 0x429510
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 0x42976e
cmp eax, 0x7c
je 0x42976e
cmp eax, 0x29
jne 0x429551
cmp dword [esi + 0x10], 0
jne 0x42976e
cmp eax, eax
jne 0x429551
test dword [esi + 0x50], 0x10000000
je 0x42977b
jmp 0x429727
cmp eax, 0x2e
jne 0x4295b0
push 5
lea ecx, [esi + 0x24]
call fcn.004297e0
mov eax, dword [esi]
mov edx, dword [esi + 8]
cmp eax, edx
je 0x4295a4
cmp word [eax], 0x5c
jne 0x42959f
lea ecx, [eax + 2]
cmp ecx, edx
je 0x42959f
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x42958b
movzx edi, word [ecx]
cmp edi, 0x28
je 0x42959d
cmp edi, 0x29
je 0x42959d
test dl, 0x10
jne 0x42959f
movzx edx, word [ecx]
cmp edx, 0x7b
je 0x42959d
cmp edx, 0x7d
jne 0x42959f
mov eax, ecx
add eax, 2
mov dword [esi], eax
mov ecx, esi
call fcn.00427a20
jmp 0x429759
cmp eax, 0x5c
jne 0x42960f
mov ecx, esi
call fcn.004294c0
test byte [esi + 0x50], 0x80
je 0x429603
movzx eax, word [esi + 0x48]
cmp eax, 0x62
jne 0x4295e1
push 4
lea ecx, [esi + 0x24]
call fcn.004297e0
mov ecx, esi
call fcn.004294c0
jmp 0x429760
cmp eax, 0x42
jne 0x429603
push 4
lea ecx, [esi + 0x24]
call fcn.004297e0
mov eax, dword [esi + 0x28]
mov ecx, esi
xor dword [eax + 8], 1
call fcn.004294c0
jmp 0x429760
mov ecx, esi
call fcn.0042ab70
jmp 0x429759
cmp eax, 0x5b
jne 0x4296b9
mov ecx, esi
call fcn.004294c0
lea ecx, [esi + 0x24]
call fcn.0042c0b0
mov eax, dword [esi + 0x4c]
cmp eax, 0x5e
jne 0x429684
mov eax, dword [esi + 0x28]
xor dword [eax + 8], 1
mov eax, dword [esi]
mov edx, dword [esi + 8]
cmp eax, edx
je 0x42967a
cmp word [eax], 0x5c
jne 0x429675
lea ecx, [eax + 2]
cmp ecx, edx
je 0x429675
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x429661
movzx edi, word [ecx]
cmp edi, 0x28
je 0x429673
cmp edi, 0x29
je 0x429673
test dl, 0x10
jne 0x429675
movzx edx, word [ecx]
cmp edx, 0x7b
je 0x429673
cmp edx, 0x7d
jne 0x429675
mov eax, ecx
add eax, 2
mov dword [esi], eax
mov ecx, esi
call fcn.00427a20
mov eax, dword [esi + 0x4c]
test dword [esi + 0x50], 0x20000000
je 0x4296a2
cmp eax, 0x5d
jne 0x4296a2
push eax
lea ecx, [esi + 0x24]
call fcn.0042c140
mov ecx, esi
call fcn.004294c0
mov ecx, esi
call fcn.0042bcf0
push 4
push 0x5d
mov ecx, esi
call fcn.0042ab10
jmp 0x429759
cmp eax, 0x28
jne 0x4296e3
mov ecx, esi
call fcn.004294c0
mov ecx, esi
call fcn.0042acc0
push 5
push 0x29
mov ecx, esi
mov bl, al
call fcn.0042ab10
test bl, bl
je 0x429760
jmp 0x429759
cmp eax, 0x5e
jne 0x4296fb
push 2
lea ecx, [esi + 0x24]
call fcn.004297e0
mov ecx, esi
call fcn.004294c0
jmp 0x429760
cmp eax, 0x24
jne 0x429713
push 3
lea ecx, [esi + 0x24]
call fcn.004297e0
mov ecx, esi
call fcn.004294c0
jmp 0x429760
cmp eax, 0x2a
je 0x429774
cmp eax, 0x2b
je 0x429774
cmp eax, 0x3f
je 0x429774
cmp eax, 0x7b
je 0x429774
cmp eax, 0x7d
jne 0x429737
test dword [esi + 0x50], 0x10000000
je 0x429782
jmp 0x429745
cmp eax, 0x5d
jne 0x429745
test dword [esi + 0x50], 0x10000000
je 0x429789
movzx eax, word [esi + 0x48]
lea ecx, [esi + 0x24]
push eax
call fcn.0042af60
mov ecx, esi
call fcn.004294c0
mov ecx, esi
call fcn.0042add0
mov eax, dword [esi + 0x4c]
mov cl, 1
cmp eax, 0xffffffff
jne 0x429523
pop edi
pop esi
mov al, cl
pop ebx
ret
push 0xa
call fcn.00427a10
push 5
call fcn.00427a10
push 6
call fcn.00427a10
push 4
call fcn.00427a10
int3