Function at 0x479250
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 0x4796b7
lea edi, [esi + 8]
cmp eax, 0x7c
je 0x4796b7
cmp eax, 0x29
jne 0x479290
cmp dword [esi + 0x10], 0
jne 0x4796b7
test dword [esi + 0x50], 0x10000000
je 0x4796c4
jmp 0x479650
cmp eax, 0x2e
jne 0x4792e3
push 5
lea ecx, [esi + 0x24]
call fcn.004796e0
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x479698
cmp byte [eax], 0x5c
jne 0x47949f
lea ecx, [eax + 1]
cmp ecx, edx
je 0x47949f
mov ebx, dword [esi + 0x50]
test bl, 8
jne 0x4792db
mov dl, byte [ecx]
cmp dl, 0x28
je 0x47949d
cmp dl, 0x29
je 0x47949d
test bl, 0x10
jmp 0x47948f
cmp eax, 0x5c
jne 0x479401
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x47932a
cmp byte [eax], 0x5c
jne 0x479327
lea ecx, [eax + 1]
cmp ecx, edx
je 0x479327
mov ebx, dword [esi + 0x50]
test bl, 8
jne 0x479314
mov dl, byte [ecx]
cmp dl, 0x28
je 0x479325
cmp dl, 0x29
je 0x479325
test bl, 0x10
jne 0x479327
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x479325
cmp dl, 0x7d
jne 0x479327
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.00476140
test byte [esi + 0x50], 0x80
je 0x4793f5
mov al, byte [esi + 0x48]
cmp al, 0x62
jne 0x479396
push 4
lea ecx, [esi + 0x24]
call fcn.004796e0
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x47938a
cmp byte [eax], 0x5c
jne 0x479387
lea ecx, [eax + 1]
cmp ecx, edx
je 0x479387
mov ebx, dword [esi + 0x50]
test bl, 8
jne 0x479374
mov dl, byte [ecx]
cmp dl, 0x28
je 0x479385
cmp dl, 0x29
je 0x479385
test bl, 0x10
jne 0x479387
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x479385
cmp dl, 0x7d
jne 0x479387
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.00476140
jmp 0x4796a9
cmp al, 0x42
jne 0x4793f5
push 4
lea ecx, [esi + 0x24]
call fcn.004796e0
mov eax, dword [esi + 0x28]
xor dword [eax + 8], 1
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x4793e9
cmp byte [eax], 0x5c
jne 0x4793e6
lea ecx, [eax + 1]
cmp ecx, edx
je 0x4793e6
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x4793d3
mov al, byte [ecx]
cmp al, 0x28
je 0x4793e4
cmp al, 0x29
je 0x4793e4
mov eax, dword [esi]
test dl, 0x10
jne 0x4793e6
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x4793e4
cmp dl, 0x7d
jne 0x4793e6
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.00476140
jmp 0x4796a9
mov ecx, esi
call fcn.0047ac00
jmp 0x47969f
cmp eax, 0x5b
jne 0x4794a7
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x479448
cmp byte [eax], 0x5c
jne 0x479445
lea ecx, [eax + 1]
cmp ecx, edx
je 0x479445
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x479432
mov al, byte [ecx]
cmp al, 0x28
je 0x479443
cmp al, 0x29
je 0x479443
mov eax, dword [esi]
test dl, 0x10
jne 0x479445
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x479443
cmp dl, 0x7d
jne 0x479445
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.00476140
mov ecx, esi
call fcn.0047aad0
cmp dword [esi + 0x4c], 0x5d
jne 0x4796d2
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x479698
cmp byte [eax], 0x5c
jne 0x47949f
lea ecx, [eax + 1]
cmp ecx, edx
je 0x47949f
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x47948c
mov al, byte [ecx]
cmp al, 0x28
je 0x47949d
cmp al, 0x29
je 0x47949d
mov eax, dword [esi]
test dl, 0x10
jne 0x47949f
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x47949d
cmp dl, 0x7d
jne 0x47949f
mov eax, ecx
inc eax
mov dword [esi], eax
jmp 0x479698
cmp eax, 0x28
jne 0x47955a
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x4794ee
cmp byte [eax], 0x5c
jne 0x4794eb
lea ecx, [eax + 1]
cmp ecx, edx
je 0x4794eb
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x4794d8
mov al, byte [ecx]
cmp al, 0x28
je 0x4794e9
cmp al, 0x29
je 0x4794e9
mov eax, dword [esi]
test dl, 0x10
jne 0x4794eb
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x4794e9
cmp dl, 0x7d
jne 0x4794eb
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.00476140
mov ecx, esi
call fcn.0047ad50
cmp dword [esi + 0x4c], 0x29
mov bl, al
jne 0x4796c4
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x479546
cmp byte [eax], 0x5c
jne 0x479543
lea ecx, [eax + 1]
cmp ecx, edx
je 0x479543
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x479530
mov al, byte [ecx]
cmp al, 0x28
je 0x479541
cmp al, 0x29
je 0x479541
mov eax, dword [esi]
test dl, 0x10
jne 0x479543
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x479541
cmp dl, 0x7d
jne 0x479543
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.00476140
test bl, bl
je 0x4796a9
jmp 0x47969f
cmp eax, 0x5e
jne 0x4795b0
push 2
lea ecx, [esi + 0x24]
call fcn.004796e0
mov eax, dword [esi]
mov ecx, dword [edi]
cmp eax, ecx
je 0x4795a4
cmp byte [eax], 0x5c
jne 0x4795a2
inc eax
cmp eax, ecx
je 0x4795a2
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x47958f
mov dl, byte [eax]
cmp dl, 0x28
je 0x4795a0
cmp dl, 0x29
je 0x4795a0
test cl, 0x10
jne 0x4795a2
mov cl, byte [eax]
cmp cl, 0x7b
je 0x4795a0
cmp cl, 0x7d
jne 0x4795a2
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.00476140
jmp 0x4796a9
cmp eax, 0x24
jne 0x479606
push 3
lea ecx, [esi + 0x24]
call fcn.004796e0
mov eax, dword [esi]
mov ecx, dword [edi]
cmp eax, ecx
je 0x4795fa
cmp byte [eax], 0x5c
jne 0x4795f8
inc eax
cmp eax, ecx
je 0x4795f8
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x4795e5
mov dl, byte [eax]
cmp dl, 0x28
je 0x4795f6
cmp dl, 0x29
je 0x4795f6
test cl, 0x10
jne 0x4795f8
mov cl, byte [eax]
cmp cl, 0x7b
je 0x4795f6
cmp cl, 0x7d
jne 0x4795f8
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.00476140
jmp 0x4796a9
cmp eax, 0x2a
je 0x4796bd
cmp eax, 0x2b
je 0x4796bd
cmp eax, 0x3f
je 0x4796bd
cmp eax, 0x7b
je 0x4796bd
cmp eax, 0x7d
jne 0x47963e
test dword [esi + 0x50], 0x10000000
je 0x4796cb
jmp 0x479650
cmp eax, 0x5d
jne 0x479650
test dword [esi + 0x50], 0x10000000
je 0x4796d2
movzx eax, byte [esi + 0x48]
lea ecx, [esi + 0x24]
push eax
call fcn.0047b1e0
mov eax, dword [esi]
mov ecx, dword [edi]
cmp eax, ecx
je 0x479698
cmp byte [eax], 0x5c
jne 0x479696
inc eax
cmp eax, ecx
je 0x479696
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x479683
mov dl, byte [eax]
cmp dl, 0x28
je 0x479694
cmp dl, 0x29
je 0x479694
test cl, 0x10
jne 0x479696
mov cl, byte [eax]
cmp cl, 0x7b
je 0x479694
cmp cl, 0x7d
jne 0x479696
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.00476140
mov ecx, esi
call fcn.0047afb0
lea edi, [esi + 8]
mov eax, dword [esi + 0x4c]
mov cl, 1
cmp eax, 0xffffffff
jne 0x479266
pop edi
pop esi
mov al, cl
pop ebx
ret
push 0xa
call fcn.00476130
push 5
call fcn.00476130
push 6
call fcn.00476130
push 4
call fcn.00476130
int3