Function at 0x427050
Capabilities:
Parse credit card information

Disassembly:
push ecx
push ebx
push esi
mov esi, ecx
xor cl, cl
cmp dword [esi + 0x4c], 0xffffffff
je 0x427404
mov eax, dword [esi + 0x4c]
cmp eax, 0x7c
je 0x427404
cmp eax, 0x29
jne 0x427089
cmp dword [esi + 0x10], 0
jne 0x427404
test dword [esi + 0x50], 0x10000000
je 0x42740a
cmp eax, 0x2e
jne 0x42713b
push 0x14
call fcn.0043d3c3
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x4270c6
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 0x4270c8
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 0x4270e4
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 0x42712f
cmp word [eax], 0x5c
jne 0x42712c
add eax, 2
cmp eax, ecx
je 0x42712c
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x427118
movzx edx, word [eax]
cmp edx, 0x28
je 0x42712a
cmp edx, 0x29
je 0x42712a
test cl, 0x10
jne 0x42712c
movzx ecx, word [eax]
cmp ecx, 0x7b
je 0x42712a
cmp ecx, 0x7d
jne 0x42712c
mov dword [esi], eax
add dword [esi], 2
mov ecx, esi
call fcn.00425e90
jmp 0x4273f1
cmp eax, 0x5c
jne 0x427268
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x427186
cmp word [eax], 0x5c
jne 0x427183
add eax, 2
cmp eax, ecx
je 0x427183
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x42716f
movzx edx, word [eax]
cmp edx, 0x28
je 0x427181
cmp edx, 0x29
je 0x427181
test cl, 0x10
jne 0x427183
movzx ecx, word [eax]
cmp ecx, 0x7b
je 0x427181
cmp ecx, 0x7d
jne 0x427183
mov dword [esi], eax
add dword [esi], 2
mov ecx, esi
call fcn.00425e90
mov eax, dword [esi + 0x50]
and eax, 0x80
je 0x4271f4
cmp word [esi + 0x48], 0x62
jne 0x4271f4
lea ecx, [esi + 0x24]
call fcn.00428990
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x4271e8
cmp word [eax], 0x5c
jne 0x4271e5
add eax, 2
cmp eax, ecx
je 0x4271e5
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x4271d1
movzx ecx, word [eax]
cmp ecx, 0x28
je 0x4271e3
cmp ecx, 0x29
je 0x4271e3
test dl, 0x10
jne 0x4271e5
movzx ecx, word [eax]
cmp ecx, 0x7b
je 0x4271e3
cmp ecx, 0x7d
jne 0x4271e5
mov dword [esi], eax
add dword [esi], 2
mov ecx, esi
call fcn.00425e90
jmp 0x4273f8
test eax, eax
je 0x42725c
cmp word [esi + 0x48], 0x42
jne 0x42725c
lea ecx, [esi + 0x24]
call fcn.00428990
mov eax, dword [esi + 0x28]
xor dword [eax + 8], 1
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x427250
cmp word [eax], 0x5c
jne 0x42724d
add eax, 2
cmp eax, ecx
je 0x42724d
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x427239
movzx ecx, word [eax]
cmp ecx, 0x28
je 0x42724b
cmp ecx, 0x29
je 0x42724b
test dl, 0x10
jne 0x42724d
movzx ecx, word [eax]
cmp ecx, 0x7b
je 0x42724b
cmp ecx, 0x7d
jne 0x42724d
mov dword [esi], eax
add dword [esi], 2
mov ecx, esi
call fcn.00425e90
jmp 0x4273f8
mov ecx, esi
call fcn.00428600
jmp 0x4273f1
cmp eax, 0x5b
jne 0x427319
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x4272b3
cmp word [eax], 0x5c
jne 0x4272b0
add eax, 2
cmp eax, ecx
je 0x4272b0
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x42729c
movzx edx, word [eax]
cmp edx, 0x28
je 0x4272ae
cmp edx, 0x29
je 0x4272ae
test cl, 0x10
jne 0x4272b0
movzx ecx, word [eax]
cmp ecx, 0x7b
je 0x4272ae
cmp ecx, 0x7d
jne 0x4272b0
mov dword [esi], eax
add dword [esi], 2
mov ecx, esi
call fcn.00425e90
mov ecx, esi
call fcn.00428550
cmp dword [esi + 0x4c], 0x5d
jne 0x427411
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x42730d
cmp word [eax], 0x5c
jne 0x42730a
add eax, 2
cmp eax, ecx
je 0x42730a
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x4272f6
movzx edx, word [eax]
cmp edx, 0x28
je 0x427308
cmp edx, 0x29
je 0x427308
test cl, 0x10
jne 0x42730a
movzx ecx, word [eax]
cmp ecx, 0x7b
je 0x427308
cmp ecx, 0x7d
jne 0x42730a
mov dword [esi], eax
add dword [esi], 2
mov ecx, esi
call fcn.00425e90
jmp 0x4273f1
cmp eax, 0x28
jne 0x427381
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x427360
cmp word [eax], 0x5c
jne 0x42735d
add eax, 2
cmp eax, ecx
je 0x42735d
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x427349
movzx edx, word [eax]
cmp edx, 0x28
je 0x42735b
cmp edx, 0x29
je 0x42735b
test cl, 0x10
jne 0x42735d
movzx ecx, word [eax]
cmp ecx, 0x7b
je 0x42735b
cmp ecx, 0x7d
jne 0x42735d
mov dword [esi], eax
add dword [esi], 2
mov ecx, esi
call fcn.00425e90
mov ecx, esi
call fcn.004286e0
push 5
push 0x29
mov ecx, esi
mov bl, al
call fcn.004284e0
test bl, bl
je 0x4273f8
jmp 0x4273f1
cmp eax, 0x5e
jne 0x427397
lea ecx, [esi + 0x24]
call fcn.004288d0
mov ecx, esi
call fcn.00427000
jmp 0x4273f8
cmp eax, 0x24
jne 0x4273ad
lea ecx, [esi + 0x24]
call fcn.00428930
mov ecx, esi
call fcn.00427000
jmp 0x4273f8
cmp eax, 0x2a
je 0x42741f
cmp eax, 0x2b
je 0x42741f
cmp eax, 0x3f
je 0x42741f
cmp eax, 0x7b
je 0x42741f
cmp eax, 0x7d
jne 0x4273cf
test dword [esi + 0x50], 0x10000000
je 0x427418
cmp eax, 0x5d
jne 0x4273dd
test dword [esi + 0x50], 0x10000000
je 0x427411
movzx eax, word [esi + 0x48]
lea ecx, [esi + 0x24]
push eax
call fcn.004289f0
mov ecx, esi
call fcn.00427000
mov ecx, esi
call fcn.004287a0
cmp dword [esi + 0x4c], 0xffffffff
mov cl, 1
jne 0x427061
pop esi
mov al, cl
pop ebx
pop ecx
ret
push 5
call fcn.0043c819
push 4
call fcn.0043c819
push 6
call fcn.0043c819
push 0xa
call fcn.0043c819
int3