Function at 0x479f60
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 0x47a3c7
lea edi, [esi + 8]
cmp eax, 0x7c
je 0x47a3c7
cmp eax, 0x29
jne 0x479fa0
cmp dword [esi + 0x10], 0
jne 0x47a3c7
test dword [esi + 0x50], 0x10000000
je 0x47a3d4
jmp 0x47a360
cmp eax, 0x2e
jne 0x479ff3
push 5
lea ecx, [esi + 0x24]
call fcn.0047a3f0
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x47a3a8
cmp byte [eax], 0x5c
jne 0x47a1af
lea ecx, [eax + 1]
cmp ecx, edx
je 0x47a1af
mov ebx, dword [esi + 0x50]
test bl, 8
jne 0x479feb
mov dl, byte [ecx]
cmp dl, 0x28
je 0x47a1ad
cmp dl, 0x29
je 0x47a1ad
test bl, 0x10
jmp 0x47a19f
cmp eax, 0x5c
jne 0x47a111
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x47a03a
cmp byte [eax], 0x5c
jne 0x47a037
lea ecx, [eax + 1]
cmp ecx, edx
je 0x47a037
mov ebx, dword [esi + 0x50]
test bl, 8
jne 0x47a024
mov dl, byte [ecx]
cmp dl, 0x28
je 0x47a035
cmp dl, 0x29
je 0x47a035
test bl, 0x10
jne 0x47a037
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x47a035
cmp dl, 0x7d
jne 0x47a037
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.00476dd0
test byte [esi + 0x50], 0x80
je 0x47a105
mov al, byte [esi + 0x48]
cmp al, 0x62
jne 0x47a0a6
push 4
lea ecx, [esi + 0x24]
call fcn.0047a3f0
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x47a09a
cmp byte [eax], 0x5c
jne 0x47a097
lea ecx, [eax + 1]
cmp ecx, edx
je 0x47a097
mov ebx, dword [esi + 0x50]
test bl, 8
jne 0x47a084
mov dl, byte [ecx]
cmp dl, 0x28
je 0x47a095
cmp dl, 0x29
je 0x47a095
test bl, 0x10
jne 0x47a097
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x47a095
cmp dl, 0x7d
jne 0x47a097
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.00476dd0
jmp 0x47a3b9
cmp al, 0x42
jne 0x47a105
push 4
lea ecx, [esi + 0x24]
call fcn.0047a3f0
mov eax, dword [esi + 0x28]
xor dword [eax + 8], 1
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x47a0f9
cmp byte [eax], 0x5c
jne 0x47a0f6
lea ecx, [eax + 1]
cmp ecx, edx
je 0x47a0f6
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x47a0e3
mov al, byte [ecx]
cmp al, 0x28
je 0x47a0f4
cmp al, 0x29
je 0x47a0f4
mov eax, dword [esi]
test dl, 0x10
jne 0x47a0f6
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x47a0f4
cmp dl, 0x7d
jne 0x47a0f6
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.00476dd0
jmp 0x47a3b9
mov ecx, esi
call fcn.0047b910
jmp 0x47a3af
cmp eax, 0x5b
jne 0x47a1b7
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x47a158
cmp byte [eax], 0x5c
jne 0x47a155
lea ecx, [eax + 1]
cmp ecx, edx
je 0x47a155
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x47a142
mov al, byte [ecx]
cmp al, 0x28
je 0x47a153
cmp al, 0x29
je 0x47a153
mov eax, dword [esi]
test dl, 0x10
jne 0x47a155
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x47a153
cmp dl, 0x7d
jne 0x47a155
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.00476dd0
mov ecx, esi
call fcn.0047b7e0
cmp dword [esi + 0x4c], 0x5d
jne 0x47a3e2
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x47a3a8
cmp byte [eax], 0x5c
jne 0x47a1af
lea ecx, [eax + 1]
cmp ecx, edx
je 0x47a1af
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x47a19c
mov al, byte [ecx]
cmp al, 0x28
je 0x47a1ad
cmp al, 0x29
je 0x47a1ad
mov eax, dword [esi]
test dl, 0x10
jne 0x47a1af
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x47a1ad
cmp dl, 0x7d
jne 0x47a1af
mov eax, ecx
inc eax
mov dword [esi], eax
jmp 0x47a3a8
cmp eax, 0x28
jne 0x47a26a
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x47a1fe
cmp byte [eax], 0x5c
jne 0x47a1fb
lea ecx, [eax + 1]
cmp ecx, edx
je 0x47a1fb
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x47a1e8
mov al, byte [ecx]
cmp al, 0x28
je 0x47a1f9
cmp al, 0x29
je 0x47a1f9
mov eax, dword [esi]
test dl, 0x10
jne 0x47a1fb
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x47a1f9
cmp dl, 0x7d
jne 0x47a1fb
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.00476dd0
mov ecx, esi
call fcn.0047ba60
cmp dword [esi + 0x4c], 0x29
mov bl, al
jne 0x47a3d4
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x47a256
cmp byte [eax], 0x5c
jne 0x47a253
lea ecx, [eax + 1]
cmp ecx, edx
je 0x47a253
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x47a240
mov al, byte [ecx]
cmp al, 0x28
je 0x47a251
cmp al, 0x29
je 0x47a251
mov eax, dword [esi]
test dl, 0x10
jne 0x47a253
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x47a251
cmp dl, 0x7d
jne 0x47a253
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.00476dd0
test bl, bl
je 0x47a3b9
jmp 0x47a3af
cmp eax, 0x5e
jne 0x47a2c0
push 2
lea ecx, [esi + 0x24]
call fcn.0047a3f0
mov eax, dword [esi]
mov ecx, dword [edi]
cmp eax, ecx
je 0x47a2b4
cmp byte [eax], 0x5c
jne 0x47a2b2
inc eax
cmp eax, ecx
je 0x47a2b2
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x47a29f
mov dl, byte [eax]
cmp dl, 0x28
je 0x47a2b0
cmp dl, 0x29
je 0x47a2b0
test cl, 0x10
jne 0x47a2b2
mov cl, byte [eax]
cmp cl, 0x7b
je 0x47a2b0
cmp cl, 0x7d
jne 0x47a2b2
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.00476dd0
jmp 0x47a3b9
cmp eax, 0x24
jne 0x47a316
push 3
lea ecx, [esi + 0x24]
call fcn.0047a3f0
mov eax, dword [esi]
mov ecx, dword [edi]
cmp eax, ecx
je 0x47a30a
cmp byte [eax], 0x5c
jne 0x47a308
inc eax
cmp eax, ecx
je 0x47a308
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x47a2f5
mov dl, byte [eax]
cmp dl, 0x28
je 0x47a306
cmp dl, 0x29
je 0x47a306
test cl, 0x10
jne 0x47a308
mov cl, byte [eax]
cmp cl, 0x7b
je 0x47a306
cmp cl, 0x7d
jne 0x47a308
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.00476dd0
jmp 0x47a3b9
cmp eax, 0x2a
je 0x47a3cd
cmp eax, 0x2b
je 0x47a3cd
cmp eax, 0x3f
je 0x47a3cd
cmp eax, 0x7b
je 0x47a3cd
cmp eax, 0x7d
jne 0x47a34e
test dword [esi + 0x50], 0x10000000
je 0x47a3db
jmp 0x47a360
cmp eax, 0x5d
jne 0x47a360
test dword [esi + 0x50], 0x10000000
je 0x47a3e2
movzx eax, byte [esi + 0x48]
lea ecx, [esi + 0x24]
push eax
call fcn.0047bef0
mov eax, dword [esi]
mov ecx, dword [edi]
cmp eax, ecx
je 0x47a3a8
cmp byte [eax], 0x5c
jne 0x47a3a6
inc eax
cmp eax, ecx
je 0x47a3a6
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x47a393
mov dl, byte [eax]
cmp dl, 0x28
je 0x47a3a4
cmp dl, 0x29
je 0x47a3a4
test cl, 0x10
jne 0x47a3a6
mov cl, byte [eax]
cmp cl, 0x7b
je 0x47a3a4
cmp cl, 0x7d
jne 0x47a3a6
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.00476dd0
mov ecx, esi
call fcn.0047bcc0
lea edi, [esi + 8]
mov eax, dword [esi + 0x4c]
mov cl, 1
cmp eax, 0xffffffff
jne 0x479f76
pop edi
pop esi
mov al, cl
pop ebx
ret
push 0xa
call fcn.00476dc0
push 5
call fcn.00476dc0
push 6
call fcn.00476dc0
push 4
call fcn.00476dc0
int3