Function at 0x432720
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
push ebx
push esi
mov esi, ecx
xor cl, cl
mov eax, dword [esi + 0x4c]
cmp eax, 0xffffffff
je 0x4327e6
nop dword [eax + eax]
cmp eax, 0x7c
je 0x4327e6
cmp eax, 0x29
jne 0x4327ee
cmp dword [esi + 0x10], 0
jne 0x4327e6
test dword [esi + 0x50], 0x10000000
je 0x432c2a
cmp eax, 0x5d
jne 0x43277b
test dword [esi + 0x50], 0x10000000
je 0x432c1c
movzx eax, word [esi + 0x48]
lea ecx, [esi + 0x24]
push eax
call fcn.00433c60
mov ecx, dword [esi + 8]
mov eax, dword [esi]
cmp eax, ecx
je 0x4327ca
cmp word [eax], 0x5c
jne 0x4327c7
add eax, 2
cmp eax, ecx
je 0x4327c7
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x4327b3
movzx edx, word [eax]
cmp edx, 0x28
je 0x4327c5
cmp edx, 0x29
je 0x4327c5
test cl, 0x10
jne 0x4327c7
movzx ecx, word [eax]
cmp ecx, 0x7b
je 0x4327c5
cmp ecx, 0x7d
jne 0x4327c7
mov dword [esi], eax
add dword [esi], 2
mov ecx, esi
call fcn.004315d0
mov ecx, esi
call fcn.00433a20
mov eax, dword [esi + 0x4c]
mov cl, 1
cmp eax, 0xffffffff
jne 0x432740
pop esi
mov al, cl
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 0x2e
jne 0x43285b
push 0x14
call fcn.004a4626
mov ecx, eax
xorps xmm0, xmm0
add esp, 4
mov dword [ebp - 4], ecx
movups xmmword [ecx], xmm0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x10], 0
mov dword [ecx], vtable.std::_Node_base.0
mov dword [ecx + 4], 5
mov dword [ecx + 8], 0
mov dword [ecx + 0xc], 0
mov eax, dword [esi + 0x28]
mov dword [ecx + 0x10], eax
mov eax, dword [esi + 0x28]
mov edx, dword [eax + 0xc]
test edx, edx
je 0x432850
mov dword [ecx + 0xc], edx
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
jmp 0x432788
cmp eax, 0x5c
jne 0x4329ed
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x4328a6
cmp word [eax], 0x5c
jne 0x4328a3
add eax, 2
cmp eax, ecx
je 0x4328a3
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x43288f
movzx edx, word [eax]
cmp edx, 0x28
je 0x4328a1
cmp edx, 0x29
je 0x4328a1
test cl, 0x10
jne 0x4328a3
movzx ecx, word [eax]
cmp ecx, 0x7b
je 0x4328a1
cmp ecx, 0x7d
jne 0x4328a3
mov dword [esi], eax
add dword [esi], 2
mov ecx, esi
call fcn.004315d0
test byte [esi + 0x50], 0x80
je 0x4329e1
cmp word [esi + 0x48], 0x62
jne 0x43296c
push 0x14
call fcn.004a4626
mov ecx, eax
xorps xmm0, xmm0
add esp, 4
mov dword [ebp - 4], ecx
movups xmmword [ecx], xmm0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x10], 0
mov dword [ecx], vtable.std::_Node_base.0
mov dword [ecx + 4], 4
mov dword [ecx + 8], 0
mov dword [ecx + 0xc], 0
mov eax, dword [esi + 0x28]
mov dword [ecx + 0x10], eax
mov eax, dword [esi + 0x28]
mov edx, dword [eax + 0xc]
test edx, edx
je 0x43291f
mov dword [ecx + 0xc], edx
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 0x432bde
cmp word [eax], 0x5c
jne 0x432bdb
add eax, 2
cmp eax, ecx
je 0x432bdb
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x432964
movzx ecx, word [eax]
cmp ecx, 0x28
je 0x432bd9
cmp ecx, 0x29
je 0x432bd9
test dl, 0x10
jmp 0x432bca
cmp word [esi + 0x48], 0x42
jne 0x4329e1
push 0x14
call fcn.004a4626
mov ecx, eax
xorps xmm0, xmm0
add esp, 4
mov dword [ebp - 4], ecx
movups xmmword [ecx], xmm0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x10], 0
mov dword [ecx], vtable.std::_Node_base.0
mov dword [ecx + 4], 4
mov dword [ecx + 8], 0
mov dword [ecx + 0xc], 0
mov eax, dword [esi + 0x28]
mov dword [ecx + 0x10], eax
mov eax, dword [esi + 0x28]
mov edx, dword [eax + 0xc]
test edx, edx
je 0x4329d0
mov dword [ecx + 0xc], edx
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 eax, ecx
mov dword [esi + 0x28], ecx
xor dword [eax + 8], 1
jmp 0x432925
mov ecx, esi
call fcn.00433740
jmp 0x4327d1
cmp eax, 0x5b
jne 0x432a51
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x432a34
cmp word [eax], 0x5c
jne 0x432a31
add eax, 2
cmp eax, ecx
je 0x432a31
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x432a1d
movzx edx, word [eax]
cmp edx, 0x28
je 0x432a2f
cmp edx, 0x29
je 0x432a2f
test cl, 0x10
jne 0x432a31
movzx ecx, word [eax]
cmp ecx, 0x7b
je 0x432a2f
cmp ecx, 0x7d
jne 0x432a31
mov dword [esi], eax
add dword [esi], 2
mov ecx, esi
call fcn.004315d0
mov ecx, esi
call fcn.00433610
cmp dword [esi + 0x4c], 0x5d
jne 0x432c1c
jmp 0x432788
cmp eax, 0x28
jne 0x432b0c
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x432a9c
cmp word [eax], 0x5c
jne 0x432a99
add eax, 2
cmp eax, ecx
je 0x432a99
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x432a85
movzx edx, word [eax]
cmp edx, 0x28
je 0x432a97
cmp edx, 0x29
je 0x432a97
test cl, 0x10
jne 0x432a99
movzx ecx, word [eax]
cmp ecx, 0x7b
je 0x432a97
cmp ecx, 0x7d
jne 0x432a99
mov dword [esi], eax
add dword [esi], 2
mov ecx, esi
call fcn.004315d0
mov ecx, esi
call fcn.00433890
cmp dword [esi + 0x4c], 0x29
mov bl, al
jne 0x432c2a
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x432af8
cmp word [eax], 0x5c
jne 0x432af5
add eax, 2
cmp eax, ecx
je 0x432af5
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x432ae1
movzx edx, word [eax]
cmp edx, 0x28
je 0x432af3
cmp edx, 0x29
je 0x432af3
test cl, 0x10
jne 0x432af5
movzx ecx, word [eax]
cmp ecx, 0x7b
je 0x432af3
cmp ecx, 0x7d
jne 0x432af5
mov dword [esi], eax
add dword [esi], 2
mov ecx, esi
call fcn.004315d0
test bl, bl
je 0x4327d8
jmp 0x4327d1
cmp eax, 0x5e
jne 0x432b30
push 0x14
call fcn.004a4626
mov ecx, eax
xorps xmm0, xmm0
movups xmmword [ecx], xmm0
mov dword [ecx + 0x10], 0
mov dword [ecx + 4], 2
jmp 0x432b56
cmp eax, 0x24
jne 0x432bea
push 0x14
call fcn.004a4626
mov ecx, eax
xorps xmm0, xmm0
movups xmmword [ecx], xmm0
mov dword [ecx + 0x10], 0
mov dword [ecx + 4], 3
mov dword [ecx], vtable.std::_Node_base.0
add esp, 4
mov dword [ecx + 8], 0
mov dword [ecx + 0xc], 0
mov dword [ecx + 0x10], 0
mov eax, dword [esi + 0x28]
mov dword [ecx + 0x10], eax
mov eax, dword [esi + 0x28]
mov dword [ebp - 4], ecx
mov edx, dword [eax + 0xc]
test edx, edx
je 0x432b96
mov dword [ecx + 0xc], edx
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 ecx, dword [esi + 8]
mov eax, dword [esi]
cmp eax, ecx
je 0x432bde
cmp word [eax], 0x5c
jne 0x432bdb
add eax, 2
cmp eax, ecx
je 0x432bdb
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x432bc7
movzx edx, word [eax]
cmp edx, 0x28
je 0x432bd9
cmp edx, 0x29
je 0x432bd9
test cl, 0x10
jne 0x432bdb
movzx ecx, word [eax]
cmp ecx, 0x7b
je 0x432bd9
cmp ecx, 0x7d
jne 0x432bdb
mov dword [esi], eax
add dword [esi], 2
mov ecx, esi
call fcn.004315d0
jmp 0x4327d8
cmp eax, 0x2a
je 0x432c15
cmp eax, 0x2b
je 0x432c15
cmp eax, 0x3f
je 0x432c15
cmp eax, 0x7b
je 0x432c15
cmp eax, 0x7d
jne 0x432769
test dword [esi + 0x50], 0x10000000
je 0x432c23
jmp 0x43277b
push 0xa
call fcn.004315c0
push 4
call fcn.004315c0
push 6
call fcn.004315c0
push 5
call fcn.004315c0
int3