Function at 0x434af0
Capabilities:
Parse credit card information

Disassembly:
push esi
mov esi, ecx
xor cl, cl
cmp dword [esi + 0x4c], 0xffffffff
je 0x434e84
push ebx
mov eax, dword [esi + 0x4c]
cmp eax, 0x7c
je 0x434e83
cmp eax, 0x29
jne 0x434b28
cmp dword [esi + 0x10], 0
jne 0x434e83
test dword [esi + 0x50], 0x10000000
je 0x434e88
cmp eax, 0x2e
jne 0x434bd4
push 0x14
call fcn.0053cde7
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x434b65
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 0x434b67
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 0x434b83
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 0x434bc8
cmp byte [eax], 0x5c
jne 0x434bc6
inc eax
cmp eax, ecx
je 0x434bc6
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x434bb3
mov dl, byte [eax]
cmp dl, 0x28
je 0x434bc4
cmp dl, 0x29
je 0x434bc4
test cl, 0x10
jne 0x434bc6
mov cl, byte [eax]
cmp cl, 0x7b
je 0x434bc4
cmp cl, 0x7d
jne 0x434bc6
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.00437eb0
jmp 0x434e70
cmp eax, 0x5c
jne 0x434cf1
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x434c19
cmp byte [eax], 0x5c
jne 0x434c17
inc eax
cmp eax, ecx
je 0x434c17
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x434c04
mov dl, byte [eax]
cmp dl, 0x28
je 0x434c15
cmp dl, 0x29
je 0x434c15
test cl, 0x10
jne 0x434c17
mov cl, byte [eax]
cmp cl, 0x7b
je 0x434c15
cmp cl, 0x7d
jne 0x434c17
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.00437eb0
mov eax, dword [esi + 0x50]
and eax, 0x80
je 0x434c82
cmp byte [esi + 0x48], 0x62
jne 0x434c82
push 4
lea ecx, [esi + 0x24]
call fcn.004376f0
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x434c76
cmp byte [eax], 0x5c
jne 0x434c74
inc eax
cmp eax, ecx
je 0x434c74
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x434c61
mov cl, byte [eax]
cmp cl, 0x28
je 0x434c72
cmp cl, 0x29
je 0x434c72
test dl, 0x10
jne 0x434c74
mov cl, byte [eax]
cmp cl, 0x7b
je 0x434c72
cmp cl, 0x7d
jne 0x434c74
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.00437eb0
jmp 0x434e77
test eax, eax
je 0x434ce5
cmp byte [esi + 0x48], 0x42
jne 0x434ce5
push 4
lea ecx, [esi + 0x24]
call fcn.004376f0
mov eax, dword [esi + 0x28]
xor dword [eax + 8], 1
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x434cd9
cmp byte [eax], 0x5c
jne 0x434cd7
inc eax
cmp eax, ecx
je 0x434cd7
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x434cc4
mov cl, byte [eax]
cmp cl, 0x28
je 0x434cd5
cmp cl, 0x29
je 0x434cd5
test dl, 0x10
jne 0x434cd7
mov cl, byte [eax]
cmp cl, 0x7b
je 0x434cd5
cmp cl, 0x7d
jne 0x434cd7
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.00437eb0
jmp 0x434e77
mov ecx, esi
call fcn.00434eb0
jmp 0x434e70
cmp eax, 0x5b
jne 0x434d96
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x434d36
cmp byte [eax], 0x5c
jne 0x434d34
inc eax
cmp eax, ecx
je 0x434d34
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x434d21
mov dl, byte [eax]
cmp dl, 0x28
je 0x434d32
cmp dl, 0x29
je 0x434d32
test cl, 0x10
jne 0x434d34
mov cl, byte [eax]
cmp cl, 0x7b
je 0x434d32
cmp cl, 0x7d
jne 0x434d34
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.00437eb0
mov ecx, esi
call fcn.00435490
cmp dword [esi + 0x4c], 0x5d
jne 0x434e8f
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x434d8a
cmp byte [eax], 0x5c
jne 0x434d88
inc eax
cmp eax, ecx
je 0x434d88
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x434d75
mov dl, byte [eax]
cmp dl, 0x28
je 0x434d86
cmp dl, 0x29
je 0x434d86
test cl, 0x10
jne 0x434d88
mov cl, byte [eax]
cmp cl, 0x7b
je 0x434d86
cmp cl, 0x7d
jne 0x434d88
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.00437eb0
jmp 0x434e70
cmp eax, 0x28
jne 0x434dfc
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x434dd7
cmp byte [eax], 0x5c
jne 0x434dd5
inc eax
cmp eax, ecx
je 0x434dd5
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x434dc2
mov dl, byte [eax]
cmp dl, 0x28
je 0x434dd3
cmp dl, 0x29
je 0x434dd3
test cl, 0x10
jne 0x434dd5
mov cl, byte [eax]
cmp cl, 0x7b
je 0x434dd3
cmp cl, 0x7d
jne 0x434dd5
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.00437eb0
mov ecx, esi
call fcn.004380d0
push 5
push 0x29
mov ecx, esi
mov bl, al
call fcn.004369e0
test bl, bl
je 0x434e77
jmp 0x434e70
cmp eax, 0x5e
jne 0x434e14
push 2
lea ecx, [esi + 0x24]
call fcn.004376f0
mov ecx, esi
call fcn.00437760
jmp 0x434e77
cmp eax, 0x24
jne 0x434e2c
push 3
lea ecx, [esi + 0x24]
call fcn.004376f0
mov ecx, esi
call fcn.00437760
jmp 0x434e77
cmp eax, 0x2a
je 0x434e9d
cmp eax, 0x2b
je 0x434e9d
cmp eax, 0x3f
je 0x434e9d
cmp eax, 0x7b
je 0x434e9d
cmp eax, 0x7d
jne 0x434e4e
test dword [esi + 0x50], 0x10000000
je 0x434e96
cmp eax, 0x5d
jne 0x434e5c
test dword [esi + 0x50], 0x10000000
je 0x434e8f
movzx eax, byte [esi + 0x48]
lea ecx, [esi + 0x24]
push eax
call fcn.00434330
mov ecx, esi
call fcn.00437760
mov ecx, esi
call fcn.004377b0
cmp dword [esi + 0x4c], 0xffffffff
mov cl, 1
jne 0x434b00
pop ebx
mov al, cl
pop esi
ret
push 5
call fcn.00537d85
push 4
call fcn.00537d85
push 6
call fcn.00537d85
push 0xa
call fcn.00537d85
int3