Function at 0x4793b0
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 0x479817
lea edi, [esi + 8]
cmp eax, 0x7c
je 0x479817
cmp eax, 0x29
jne 0x4793f0
cmp dword [esi + 0x10], 0
jne 0x479817
test dword [esi + 0x50], 0x10000000
je 0x479824
jmp 0x4797b0
cmp eax, 0x2e
jne 0x479443
push 5
lea ecx, [esi + 0x24]
call fcn.00479840
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x4797f8
cmp byte [eax], 0x5c
jne 0x4795ff
lea ecx, [eax + 1]
cmp ecx, edx
je 0x4795ff
mov ebx, dword [esi + 0x50]
test bl, 8
jne 0x47943b
mov dl, byte [ecx]
cmp dl, 0x28
je 0x4795fd
cmp dl, 0x29
je 0x4795fd
test bl, 0x10
jmp 0x4795ef
cmp eax, 0x5c
jne 0x479561
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x47948a
cmp byte [eax], 0x5c
jne 0x479487
lea ecx, [eax + 1]
cmp ecx, edx
je 0x479487
mov ebx, dword [esi + 0x50]
test bl, 8
jne 0x479474
mov dl, byte [ecx]
cmp dl, 0x28
je 0x479485
cmp dl, 0x29
je 0x479485
test bl, 0x10
jne 0x479487
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x479485
cmp dl, 0x7d
jne 0x479487
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.004762a0
test byte [esi + 0x50], 0x80
je 0x479555
mov al, byte [esi + 0x48]
cmp al, 0x62
jne 0x4794f6
push 4
lea ecx, [esi + 0x24]
call fcn.00479840
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x4794ea
cmp byte [eax], 0x5c
jne 0x4794e7
lea ecx, [eax + 1]
cmp ecx, edx
je 0x4794e7
mov ebx, dword [esi + 0x50]
test bl, 8
jne 0x4794d4
mov dl, byte [ecx]
cmp dl, 0x28
je 0x4794e5
cmp dl, 0x29
je 0x4794e5
test bl, 0x10
jne 0x4794e7
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x4794e5
cmp dl, 0x7d
jne 0x4794e7
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.004762a0
jmp 0x479809
cmp al, 0x42
jne 0x479555
push 4
lea ecx, [esi + 0x24]
call fcn.00479840
mov eax, dword [esi + 0x28]
xor dword [eax + 8], 1
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x479549
cmp byte [eax], 0x5c
jne 0x479546
lea ecx, [eax + 1]
cmp ecx, edx
je 0x479546
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x479533
mov al, byte [ecx]
cmp al, 0x28
je 0x479544
cmp al, 0x29
je 0x479544
mov eax, dword [esi]
test dl, 0x10
jne 0x479546
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x479544
cmp dl, 0x7d
jne 0x479546
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.004762a0
jmp 0x479809
mov ecx, esi
call fcn.0047ad60
jmp 0x4797ff
cmp eax, 0x5b
jne 0x479607
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x4795a8
cmp byte [eax], 0x5c
jne 0x4795a5
lea ecx, [eax + 1]
cmp ecx, edx
je 0x4795a5
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x479592
mov al, byte [ecx]
cmp al, 0x28
je 0x4795a3
cmp al, 0x29
je 0x4795a3
mov eax, dword [esi]
test dl, 0x10
jne 0x4795a5
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x4795a3
cmp dl, 0x7d
jne 0x4795a5
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.004762a0
mov ecx, esi
call fcn.0047ac30
cmp dword [esi + 0x4c], 0x5d
jne 0x479832
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x4797f8
cmp byte [eax], 0x5c
jne 0x4795ff
lea ecx, [eax + 1]
cmp ecx, edx
je 0x4795ff
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x4795ec
mov al, byte [ecx]
cmp al, 0x28
je 0x4795fd
cmp al, 0x29
je 0x4795fd
mov eax, dword [esi]
test dl, 0x10
jne 0x4795ff
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x4795fd
cmp dl, 0x7d
jne 0x4795ff
mov eax, ecx
inc eax
mov dword [esi], eax
jmp 0x4797f8
cmp eax, 0x28
jne 0x4796ba
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x47964e
cmp byte [eax], 0x5c
jne 0x47964b
lea ecx, [eax + 1]
cmp ecx, edx
je 0x47964b
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x479638
mov al, byte [ecx]
cmp al, 0x28
je 0x479649
cmp al, 0x29
je 0x479649
mov eax, dword [esi]
test dl, 0x10
jne 0x47964b
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x479649
cmp dl, 0x7d
jne 0x47964b
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.004762a0
mov ecx, esi
call fcn.0047aeb0
cmp dword [esi + 0x4c], 0x29
mov bl, al
jne 0x479824
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x4796a6
cmp byte [eax], 0x5c
jne 0x4796a3
lea ecx, [eax + 1]
cmp ecx, edx
je 0x4796a3
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x479690
mov al, byte [ecx]
cmp al, 0x28
je 0x4796a1
cmp al, 0x29
je 0x4796a1
mov eax, dword [esi]
test dl, 0x10
jne 0x4796a3
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x4796a1
cmp dl, 0x7d
jne 0x4796a3
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.004762a0
test bl, bl
je 0x479809
jmp 0x4797ff
cmp eax, 0x5e
jne 0x479710
push 2
lea ecx, [esi + 0x24]
call fcn.00479840
mov eax, dword [esi]
mov ecx, dword [edi]
cmp eax, ecx
je 0x479704
cmp byte [eax], 0x5c
jne 0x479702
inc eax
cmp eax, ecx
je 0x479702
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x4796ef
mov dl, byte [eax]
cmp dl, 0x28
je 0x479700
cmp dl, 0x29
je 0x479700
test cl, 0x10
jne 0x479702
mov cl, byte [eax]
cmp cl, 0x7b
je 0x479700
cmp cl, 0x7d
jne 0x479702
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.004762a0
jmp 0x479809
cmp eax, 0x24
jne 0x479766
push 3
lea ecx, [esi + 0x24]
call fcn.00479840
mov eax, dword [esi]
mov ecx, dword [edi]
cmp eax, ecx
je 0x47975a
cmp byte [eax], 0x5c
jne 0x479758
inc eax
cmp eax, ecx
je 0x479758
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x479745
mov dl, byte [eax]
cmp dl, 0x28
je 0x479756
cmp dl, 0x29
je 0x479756
test cl, 0x10
jne 0x479758
mov cl, byte [eax]
cmp cl, 0x7b
je 0x479756
cmp cl, 0x7d
jne 0x479758
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.004762a0
jmp 0x479809
cmp eax, 0x2a
je 0x47981d
cmp eax, 0x2b
je 0x47981d
cmp eax, 0x3f
je 0x47981d
cmp eax, 0x7b
je 0x47981d
cmp eax, 0x7d
jne 0x47979e
test dword [esi + 0x50], 0x10000000
je 0x47982b
jmp 0x4797b0
cmp eax, 0x5d
jne 0x4797b0
test dword [esi + 0x50], 0x10000000
je 0x479832
movzx eax, byte [esi + 0x48]
lea ecx, [esi + 0x24]
push eax
call fcn.0047b340
mov eax, dword [esi]
mov ecx, dword [edi]
cmp eax, ecx
je 0x4797f8
cmp byte [eax], 0x5c
jne 0x4797f6
inc eax
cmp eax, ecx
je 0x4797f6
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x4797e3
mov dl, byte [eax]
cmp dl, 0x28
je 0x4797f4
cmp dl, 0x29
je 0x4797f4
test cl, 0x10
jne 0x4797f6
mov cl, byte [eax]
cmp cl, 0x7b
je 0x4797f4
cmp cl, 0x7d
jne 0x4797f6
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.004762a0
mov ecx, esi
call fcn.0047b110
lea edi, [esi + 8]
mov eax, dword [esi + 0x4c]
mov cl, 1
cmp eax, 0xffffffff
jne 0x4793c6
pop edi
pop esi
mov al, cl
pop ebx
ret
push 0xa
call fcn.00476290
push 5
call fcn.00476290
push 6
call fcn.00476290
push 4
call fcn.00476290
int3