Function at 0x447b50
Capabilities:
Parse credit card information

Disassembly:
push ebx
push esi
mov esi, ecx
xor cl, cl
cmp dword [esi + 0x4c], 0xffffffff
push edi
je 0x447edc
mov edi, dword [sym.imp.MSVCR110.dll_void____cdecl_operator_new_unsigned_int_]
jmp 0x447b70
mov eax, dword [esi + 0x4c]
cmp eax, 0x7c
je 0x447edc
cmp eax, 0x29
jne 0x447b98
cmp dword [esi + 0x10], 0
jne 0x447edc
test dword [esi + 0x50], 0x10000000
je 0x447ee2
cmp eax, 0x2e
jne 0x447c47
push 0x14
call edi
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x447bd2
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 0x447bd4
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 0x447bf0
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 0x447c3b
cmp word [eax], 0x5c
jne 0x447c38
add eax, 2
cmp eax, ecx
je 0x447c38
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x447c24
movzx edx, word [eax]
cmp edx, 0x28
je 0x447c36
cmp edx, 0x29
je 0x447c36
test cl, 0x10
jne 0x447c38
movzx ecx, word [eax]
cmp ecx, 0x7b
je 0x447c36
cmp ecx, 0x7d
jne 0x447c38
mov dword [esi], eax
add dword [esi], 2
mov ecx, esi
call fcn.00447620
jmp 0x447ec9
cmp eax, 0x5c
jne 0x447d36
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x447c92
cmp word [eax], 0x5c
jne 0x447c8f
add eax, 2
cmp eax, ecx
je 0x447c8f
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x447c7b
movzx edx, word [eax]
cmp edx, 0x28
je 0x447c8d
cmp edx, 0x29
je 0x447c8d
test cl, 0x10
jne 0x447c8f
movzx ecx, word [eax]
cmp ecx, 0x7b
je 0x447c8d
cmp ecx, 0x7d
jne 0x447c8f
mov dword [esi], eax
add dword [esi], 2
mov ecx, esi
call fcn.00447620
mov eax, dword [esi + 0x50]
and eax, 0x80
je 0x447d02
cmp word [esi + 0x48], 0x62
jne 0x447d02
lea ecx, [esi + 0x24]
push 4
call fcn.004480c0
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x447cf6
cmp word [eax], 0x5c
jne 0x447cf3
add eax, 2
cmp eax, ecx
je 0x447cf3
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x447cdf
movzx ecx, word [eax]
cmp ecx, 0x28
je 0x447cf1
cmp ecx, 0x29
je 0x447cf1
test dl, 0x10
jne 0x447cf3
movzx ecx, word [eax]
cmp ecx, 0x7b
je 0x447cf1
cmp ecx, 0x7d
jne 0x447cf3
mov dword [esi], eax
add dword [esi], 2
mov ecx, esi
call fcn.00447620
jmp 0x447ed0
test eax, eax
je 0x447d2a
cmp word [esi + 0x48], 0x42
jne 0x447d2a
lea ecx, [esi + 0x24]
push 4
call fcn.004480c0
mov eax, dword [esi + 0x28]
mov ecx, esi
xor dword [eax + 8], 1
call fcn.00447b00
jmp 0x447ed0
mov ecx, esi
call fcn.00448730
jmp 0x447ec9
cmp eax, 0x5b
jne 0x447de7
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x447d81
cmp word [eax], 0x5c
jne 0x447d7e
add eax, 2
cmp eax, ecx
je 0x447d7e
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x447d6a
movzx edx, word [eax]
cmp edx, 0x28
je 0x447d7c
cmp edx, 0x29
je 0x447d7c
test cl, 0x10
jne 0x447d7e
movzx ecx, word [eax]
cmp ecx, 0x7b
je 0x447d7c
cmp ecx, 0x7d
jne 0x447d7e
mov dword [esi], eax
add dword [esi], 2
mov ecx, esi
call fcn.00447620
mov ecx, esi
call fcn.004486c0
cmp dword [esi + 0x4c], 0x5d
jne 0x447eea
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x447ddb
cmp word [eax], 0x5c
jne 0x447dd8
add eax, 2
cmp eax, ecx
je 0x447dd8
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x447dc4
movzx edx, word [eax]
cmp edx, 0x28
je 0x447dd6
cmp edx, 0x29
je 0x447dd6
test cl, 0x10
jne 0x447dd8
movzx ecx, word [eax]
cmp ecx, 0x7b
je 0x447dd6
cmp ecx, 0x7d
jne 0x447dd8
mov dword [esi], eax
add dword [esi], 2
mov ecx, esi
call fcn.00447620
jmp 0x447ec9
cmp eax, 0x28
jne 0x447e55
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x447e2e
cmp word [eax], 0x5c
jne 0x447e2b
add eax, 2
cmp eax, ecx
je 0x447e2b
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x447e17
movzx edx, word [eax]
cmp edx, 0x28
je 0x447e29
cmp edx, 0x29
je 0x447e29
test cl, 0x10
jne 0x447e2b
movzx ecx, word [eax]
cmp ecx, 0x7b
je 0x447e29
cmp ecx, 0x7d
jne 0x447e2b
mov dword [esi], eax
add dword [esi], 2
mov ecx, esi
call fcn.00447620
mov ecx, esi
call fcn.00448810
cmp dword [esi + 0x4c], 0x29
mov bl, al
jne 0x447ee2
mov ecx, esi
call fcn.00447b00
test bl, bl
je 0x447ed0
jmp 0x447ec9
cmp eax, 0x5e
jne 0x447e6d
lea ecx, [esi + 0x24]
push 2
call fcn.004480c0
mov ecx, esi
call fcn.00447b00
jmp 0x447ed0
cmp eax, 0x24
jne 0x447e85
lea ecx, [esi + 0x24]
push 3
call fcn.004480c0
mov ecx, esi
call fcn.00447b00
jmp 0x447ed0
cmp eax, 0x2a
je 0x447efa
cmp eax, 0x2b
je 0x447efa
cmp eax, 0x3f
je 0x447efa
cmp eax, 0x7b
je 0x447efa
cmp eax, 0x7d
jne 0x447ea7
test dword [esi + 0x50], 0x10000000
je 0x447ef2
cmp eax, 0x5d
jne 0x447eb5
test dword [esi + 0x50], 0x10000000
je 0x447eea
movzx eax, word [esi + 0x48]
lea ecx, [esi + 0x24]
push eax
call fcn.004489f0
mov ecx, esi
call fcn.00447b00
mov ecx, esi
call fcn.004488c0
cmp dword [esi + 0x4c], 0xffffffff
mov cl, 1
jne 0x447b70
pop edi
pop esi
mov al, cl
pop ebx
ret
push 5
call dword [sym.imp.MSVCP110.dll_void___cdecl_std::_Xregex_error_enum_std::regex_constants::error_type_]
push 4
call dword [sym.imp.MSVCP110.dll_void___cdecl_std::_Xregex_error_enum_std::regex_constants::error_type_]
push 6
call dword [sym.imp.MSVCP110.dll_void___cdecl_std::_Xregex_error_enum_std::regex_constants::error_type_]
push 0xa
call dword [sym.imp.MSVCP110.dll_void___cdecl_std::_Xregex_error_enum_std::regex_constants::error_type_]
int3