Function at 0x419ac0
Capabilities:
Parse credit card information

Disassembly:
push ecx
push ebx
push ebp
push esi
push edi
mov edi, eax
xor ebp, ebp
xor al, al
cmp dword [edi + 0x40], 0xffffffff
je 0x419d9a
mov ecx, dword [edi + 0x40]
mov edx, 0x10000000
cmp ecx, 0x7c
je 0x419d9a
cmp ecx, 0x29
jne 0x419b08
cmp dword [edi + 0x10], ebp
jne 0x419d9a
test dword [edi + 0x44], edx
jne 0x419b08
push 5
call fcn.0043484a
add esp, 4
jmp 0x419d87
cmp ecx, 0x2e
jne 0x419ba5
push 0x14
call fcn.0043611c
add esp, 4
cmp eax, ebp
je 0x419b37
mov dword [eax], vtable.std::tr1::_Node_base.0
mov dword [eax + 4], 5
mov dword [eax + 8], ebp
mov dword [eax + 0xc], ebp
mov dword [eax + 0x10], ebp
jmp 0x419b39
xor eax, eax
mov ecx, dword [edi + 0x1c]
mov dword [eax + 0x10], ecx
mov edx, dword [edi + 0x1c]
mov ecx, dword [edx + 0xc]
cmp ecx, ebp
je 0x419b55
mov dword [eax + 0xc], ecx
mov ecx, dword [edi + 0x1c]
mov edx, dword [ecx + 0xc]
mov dword [edx + 0x10], eax
mov ecx, dword [edi + 0x1c]
mov dword [ecx + 0xc], eax
mov dword [edi + 0x1c], eax
mov eax, dword [edi]
mov ecx, dword [edi + 8]
cmp eax, ecx
je 0x419b99
cmp byte [eax], 0x5c
jne 0x419b97
inc eax
cmp eax, ecx
je 0x419b83
test byte [edi + 0x44], 8
jne 0x419b83
mov cl, byte [eax]
cmp cl, 0x28
je 0x419b95
cmp cl, 0x29
je 0x419b95
test byte [edi + 0x44], 0x10
jne 0x419b97
mov cl, byte [eax]
cmp cl, 0x7b
je 0x419b95
cmp cl, 0x7d
jne 0x419b97
mov dword [edi], eax
inc dword [edi]
mov esi, edi
call fcn.00418330
jmp 0x419d87
cmp ecx, 0x5c
jne 0x419c83
mov eax, dword [edi]
mov ecx, dword [edi + 8]
cmp eax, ecx
je 0x419be9
cmp byte [eax], 0x5c
jne 0x419be7
inc eax
cmp eax, ecx
je 0x419bd3
test byte [edi + 0x44], 8
jne 0x419bd3
mov cl, byte [eax]
cmp cl, 0x28
je 0x419be5
cmp cl, 0x29
je 0x419be5
test byte [edi + 0x44], 0x10
jne 0x419be7
mov cl, byte [eax]
cmp cl, 0x7b
je 0x419be5
cmp cl, 0x7d
jne 0x419be7
mov dword [edi], eax
inc dword [edi]
mov esi, edi
call fcn.00418330
mov eax, dword [edi + 0x44]
and eax, 0x80
je 0x419c4f
cmp byte [edi + 0x3e], 0x62
jne 0x419c4f
lea esi, [edi + 0x18]
call fcn.0041aff0
mov eax, dword [edi]
mov ecx, dword [edi + 8]
cmp eax, ecx
je 0x419c43
cmp byte [eax], 0x5c
jne 0x419c41
inc eax
cmp eax, ecx
je 0x419c2d
test byte [edi + 0x44], 8
jne 0x419c2d
mov cl, byte [eax]
cmp cl, 0x28
je 0x419c3f
cmp cl, 0x29
je 0x419c3f
test byte [edi + 0x44], 0x10
jne 0x419c41
mov cl, byte [eax]
cmp cl, 0x7b
je 0x419c3f
cmp cl, 0x7d
jne 0x419c41
mov dword [edi], eax
inc dword [edi]
mov esi, edi
call fcn.00418330
jmp 0x419d8e
cmp eax, ebp
je 0x419c77
cmp byte [edi + 0x3e], 0x42
jne 0x419c77
lea esi, [edi + 0x18]
call fcn.0041aff0
mov eax, dword [edi + 0x1c]
or dword [eax + 8], 1
add eax, 8
mov eax, edi
call fcn.00419a70
jmp 0x419d8e
mov eax, edi
call fcn.0041acc0
jmp 0x419d87
cmp ecx, 0x5b
jne 0x419d25
mov eax, dword [edi]
mov ecx, dword [edi + 8]
cmp eax, ecx
je 0x419cc7
cmp byte [eax], 0x5c
jne 0x419cc5
inc eax
cmp eax, ecx
je 0x419cb1
test byte [edi + 0x44], 8
jne 0x419cb1
mov cl, byte [eax]
cmp cl, 0x28
je 0x419cc3
cmp cl, 0x29
je 0x419cc3
test byte [edi + 0x44], 0x10
jne 0x419cc5
mov cl, byte [eax]
cmp cl, 0x7b
je 0x419cc3
cmp cl, 0x7d
jne 0x419cc5
mov dword [edi], eax
inc dword [edi]
mov esi, edi
call fcn.00418330
call fcn.0041ac10
cmp dword [edi + 0x40], 0x5d
je 0x419ce3
push 4
call fcn.0043484a
add esp, 4
mov eax, dword [edi]
mov ecx, dword [edi + 8]
cmp eax, ecx
je 0x419d1e
cmp byte [eax], 0x5c
jne 0x419d1c
inc eax
cmp eax, ecx
je 0x419d08
test byte [edi + 0x44], 8
jne 0x419d08
mov cl, byte [eax]
cmp cl, 0x28
je 0x419d1a
cmp cl, 0x29
je 0x419d1a
test byte [edi + 0x44], 0x10
jne 0x419d1c
mov cl, byte [eax]
cmp cl, 0x7b
je 0x419d1a
cmp cl, 0x7d
jne 0x419d1c
mov dword [edi], eax
inc dword [edi]
call fcn.00418330
jmp 0x419d87
cmp ecx, 0x28
jne 0x419da0
mov eax, dword [edi]
mov ecx, dword [edi + 8]
cmp eax, ecx
je 0x419d65
cmp byte [eax], 0x5c
jne 0x419d63
inc eax
cmp eax, ecx
je 0x419d4f
test byte [edi + 0x44], 8
jne 0x419d4f
mov cl, byte [eax]
cmp cl, 0x28
je 0x419d61
cmp cl, 0x29
je 0x419d61
test byte [edi + 0x44], 0x10
jne 0x419d63
mov cl, byte [eax]
cmp cl, 0x7b
je 0x419d61
cmp cl, 0x7d
jne 0x419d63
mov dword [edi], eax
inc dword [edi]
mov esi, edi
call fcn.00418330
mov eax, edi
call fcn.0041ad70
mov bl, al
push 0x29
mov ecx, 5
mov eax, edi
call fcn.0041abb0
test bl, bl
je 0x419d8e
mov eax, edi
call fcn.0041ae20
cmp dword [edi + 0x40], 0xffffffff
mov al, 1
jne 0x419ad5
pop edi
pop esi
pop ebp
pop ebx
pop ecx
ret
cmp ecx, 0x5e
jne 0x419db6
lea esi, [edi + 0x18]
call fcn.0041af50
mov eax, edi
call fcn.00419a70
jmp 0x419d8e
cmp ecx, 0x24
jne 0x419dcc
lea esi, [edi + 0x18]
call fcn.0041afa0
mov eax, edi
call fcn.00419a70
jmp 0x419d8e
cmp ecx, 0x2a
je 0x419e28
cmp ecx, 0x2b
je 0x419e28
cmp ecx, 0x3f
je 0x419e28
cmp ecx, 0x7b
je 0x419e28
cmp ecx, 0x7d
jne 0x419df6
test dword [edi + 0x44], edx
jne 0x419df6
push 6
call fcn.0043484a
add esp, 4
jmp 0x419d87
cmp ecx, 0x5d
jne 0x419e0f
test dword [edi + 0x44], edx
jne 0x419e0f
push 4
call fcn.0043484a
add esp, 4
jmp 0x419d87
movzx edx, byte [edi + 0x3e]
push edx
lea eax, [edi + 0x18]
call fcn.0041b040
mov eax, edi
call fcn.00419a70
jmp 0x419d87
push 0xa
call fcn.0043484a
add esp, 4
jmp 0x419d87