Function at 0x419ce0
Capabilities:
Parse credit card information

Disassembly:
push esi
mov esi, ecx
xor cl, cl
cmp dword [esi + 0x4c], 0xffffffff
je 0x41a074
push ebx
mov eax, dword [esi + 0x4c]
cmp eax, 0x7c
je 0x41a073
cmp eax, 0x29
jne 0x419d18
cmp dword [esi + 0x10], 0
jne 0x41a073
test dword [esi + 0x50], 0x10000000
je 0x41a078
cmp eax, 0x2e
jne 0x419dc4
push 0x14
call fcn.0047c547
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x419d55
mov dword [ecx], vtable.std::_Node_base.0
mov dword [ecx + 4], 5
mov dword [ecx + 8], 0
mov dword [ecx + 0xc], 0
mov dword [ecx + 0x10], 0
jmp 0x419d57
xor ecx, ecx
mov eax, dword [esi + 0x28]
mov dword [ecx + 0x10], eax
mov eax, dword [esi + 0x28]
mov eax, dword [eax + 0xc]
test eax, eax
je 0x419d73
mov dword [ecx + 0xc], eax
mov eax, dword [esi + 0x28]
mov eax, dword [eax + 0xc]
mov dword [eax + 0x10], ecx
mov eax, dword [esi + 0x28]
mov dword [eax + 0xc], ecx
mov dword [esi + 0x28], ecx
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x419db8
cmp byte [eax], 0x5c
jne 0x419db6
inc eax
cmp eax, ecx
je 0x419db6
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x419da3
mov dl, byte [eax]
cmp dl, 0x28
je 0x419db4
cmp dl, 0x29
je 0x419db4
test cl, 0x10
jne 0x419db6
mov cl, byte [eax]
cmp cl, 0x7b
je 0x419db4
cmp cl, 0x7d
jne 0x419db6
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.0041cf70
jmp 0x41a060
cmp eax, 0x5c
jne 0x419ee1
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x419e09
cmp byte [eax], 0x5c
jne 0x419e07
inc eax
cmp eax, ecx
je 0x419e07
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x419df4
mov dl, byte [eax]
cmp dl, 0x28
je 0x419e05
cmp dl, 0x29
je 0x419e05
test cl, 0x10
jne 0x419e07
mov cl, byte [eax]
cmp cl, 0x7b
je 0x419e05
cmp cl, 0x7d
jne 0x419e07
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.0041cf70
mov eax, dword [esi + 0x50]
and eax, 0x80
je 0x419e72
cmp byte [esi + 0x48], 0x62
jne 0x419e72
push 4
lea ecx, [esi + 0x24]
call fcn.0041c8e0
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x419e66
cmp byte [eax], 0x5c
jne 0x419e64
inc eax
cmp eax, ecx
je 0x419e64
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x419e51
mov cl, byte [eax]
cmp cl, 0x28
je 0x419e62
cmp cl, 0x29
je 0x419e62
test dl, 0x10
jne 0x419e64
mov cl, byte [eax]
cmp cl, 0x7b
je 0x419e62
cmp cl, 0x7d
jne 0x419e64
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.0041cf70
jmp 0x41a067
test eax, eax
je 0x419ed5
cmp byte [esi + 0x48], 0x42
jne 0x419ed5
push 4
lea ecx, [esi + 0x24]
call fcn.0041c8e0
mov eax, dword [esi + 0x28]
xor dword [eax + 8], 1
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x419ec9
cmp byte [eax], 0x5c
jne 0x419ec7
inc eax
cmp eax, ecx
je 0x419ec7
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x419eb4
mov cl, byte [eax]
cmp cl, 0x28
je 0x419ec5
cmp cl, 0x29
je 0x419ec5
test dl, 0x10
jne 0x419ec7
mov cl, byte [eax]
cmp cl, 0x7b
je 0x419ec5
cmp cl, 0x7d
jne 0x419ec7
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.0041cf70
jmp 0x41a067
mov ecx, esi
call fcn.0041a0a0
jmp 0x41a060
cmp eax, 0x5b
jne 0x419f86
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x419f26
cmp byte [eax], 0x5c
jne 0x419f24
inc eax
cmp eax, ecx
je 0x419f24
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x419f11
mov dl, byte [eax]
cmp dl, 0x28
je 0x419f22
cmp dl, 0x29
je 0x419f22
test cl, 0x10
jne 0x419f24
mov cl, byte [eax]
cmp cl, 0x7b
je 0x419f22
cmp cl, 0x7d
jne 0x419f24
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.0041cf70
mov ecx, esi
call fcn.0041a680
cmp dword [esi + 0x4c], 0x5d
jne 0x41a07f
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x419f7a
cmp byte [eax], 0x5c
jne 0x419f78
inc eax
cmp eax, ecx
je 0x419f78
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x419f65
mov dl, byte [eax]
cmp dl, 0x28
je 0x419f76
cmp dl, 0x29
je 0x419f76
test cl, 0x10
jne 0x419f78
mov cl, byte [eax]
cmp cl, 0x7b
je 0x419f76
cmp cl, 0x7d
jne 0x419f78
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.0041cf70
jmp 0x41a060
cmp eax, 0x28
jne 0x419fec
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x419fc7
cmp byte [eax], 0x5c
jne 0x419fc5
inc eax
cmp eax, ecx
je 0x419fc5
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x419fb2
mov dl, byte [eax]
cmp dl, 0x28
je 0x419fc3
cmp dl, 0x29
je 0x419fc3
test cl, 0x10
jne 0x419fc5
mov cl, byte [eax]
cmp cl, 0x7b
je 0x419fc3
cmp cl, 0x7d
jne 0x419fc5
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.0041cf70
mov ecx, esi
call fcn.0041d190
push 5
push 0x29
mov ecx, esi
mov bl, al
call fcn.0041bbd0
test bl, bl
je 0x41a067
jmp 0x41a060
cmp eax, 0x5e
jne 0x41a004
push 2
lea ecx, [esi + 0x24]
call fcn.0041c8e0
mov ecx, esi
call fcn.0041c950
jmp 0x41a067
cmp eax, 0x24
jne 0x41a01c
push 3
lea ecx, [esi + 0x24]
call fcn.0041c8e0
mov ecx, esi
call fcn.0041c950
jmp 0x41a067
cmp eax, 0x2a
je 0x41a08d
cmp eax, 0x2b
je 0x41a08d
cmp eax, 0x3f
je 0x41a08d
cmp eax, 0x7b
je 0x41a08d
cmp eax, 0x7d
jne 0x41a03e
test dword [esi + 0x50], 0x10000000
je 0x41a086
cmp eax, 0x5d
jne 0x41a04c
test dword [esi + 0x50], 0x10000000
je 0x41a07f
movzx eax, byte [esi + 0x48]
lea ecx, [esi + 0x24]
push eax
call fcn.00419520
mov ecx, esi
call fcn.0041c950
mov ecx, esi
call fcn.0041c9a0
cmp dword [esi + 0x4c], 0xffffffff
mov cl, 1
jne 0x419cf0
pop ebx
mov al, cl
pop esi
ret
push 5
call fcn.0047776c
push 4
call fcn.0047776c
push 6
call fcn.0047776c
push 0xa
call fcn.0047776c
int3