Function at 0x408a50
Capabilities:
Parse credit card information

Disassembly:
push 0xffffffffffffffff
push 0x56f4b8
mov eax, dword fs:[0]
push eax
sub esp, 0x18
push ebx
push ebp
push esi
push edi
mov eax, dword [0x5d7050]
xor eax, esp
push eax
lea eax, [esp + 0x2c]
mov dword fs:[0], eax
mov edi, ecx
xor eax, eax
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x18], vtable.CBufferT_wchar_t_.0
mov dword [esp + 0x28], eax
mov dword [esp + 0x24], eax
mov dword [esp + 0x34], eax
lea ebx, [eax + 1]
lea ebp, [eax + 0x2b]
lea ecx, [ecx]
cmp word [edi + 0xa8], 0
jne 0x408ab6
cmp dword [edi + 0xac], ebx
je 0x408c7d
mov eax, dword [edi + 0xac]
test eax, eax
jne 0x408b3c
cmp word [edi + 0xb8], 0x7b
jne 0x408ad6
cmp dword [edi + 0xbc], ebx
je 0x408c56
cmp word [edi + 0xb8], 0x3f
jne 0x408aec
cmp dword [edi + 0xbc], ebx
je 0x408c56
cmp word [edi + 0xb8], 0x2a
jne 0x408b02
cmp dword [edi + 0xbc], ebx
je 0x408c56
cmp word [edi + 0xb8], bp
jne 0x408b17
cmp dword [edi + 0xbc], ebx
je 0x408c56
movzx eax, word [edi + 0xa8]
lea ecx, [esp + 0x14]
push ecx
lea esi, [esp + 0x1c]
mov dword [esp + 0x18], eax
call fcn.0040af70
mov esi, edi
call fcn.00406f90
jmp 0x408aa0
cmp eax, ebx
jne 0x408aa0
movzx ecx, word [edi + 0xa8]
movzx eax, cx
cmp ax, 0x29
je 0x408c7d
cmp ax, 0x7c
je 0x408c7d
cmp dword [esp + 0x20], 0
jg 0x408c88
cmp ax, 0x28
je 0x408cc3
cmp ax, 0x5b
je 0x408cf7
cmp ax, 0x2e
je 0x408cf7
cmp ax, 0x77
je 0x408cf7
cmp ax, 0x57
je 0x408cf7
cmp ax, 0x73
je 0x408cf7
cmp ax, 0x53
je 0x408cf7
cmp ax, 0x64
je 0x408cf7
cmp ax, 0x44
je 0x408cf7
cmp ax, 0x5e
je 0x408ce9
cmp ax, 0x24
je 0x408ce9
cmp ax, 0x41
je 0x408ce9
cmp ax, 0x5a
je 0x408ce9
cmp ax, 0x7a
je 0x408ce9
cmp ax, 0x62
je 0x408ce9
cmp ax, 0x42
je 0x408ce9
cmp ax, 0x47
je 0x408ce9
cmp ax, 0x5c
je 0x408cdc
cmp ax, 0x6b
je 0x408cdc
cmp ax, 0x67
je 0x408cdc
movzx edx, cx
lea eax, [esp + 0x14]
push eax
lea esi, [esp + 0x1c]
mov dword [esp + 0x18], edx
call fcn.0040af70
mov esi, edi
call fcn.00406f90
jmp 0x408aa0
cmp dword [esp + 0x20], 0
jne 0x408c82
movzx ecx, word [edi + 0xa8]
lea edx, [esp + 0x14]
push edx
lea esi, [esp + 0x1c]
mov dword [esp + 0x18], ecx
call fcn.0040af70
mov esi, edi
call fcn.00406f90
cmp dword [esp + 0x20], 0
jle 0x408d19
push 0x20
call sub.MSVCR80.dll_void____cdecl_operator_new_unsigned_int_
mov ebp, dword [esp + 0x28]
mov esi, eax
add esp, 4
test esi, esi
je 0x408d05
test ebp, ebp
mov ecx, ebp
jne 0x408ca7
mov ecx, 0x58c320
mov edx, dword [esp + 0x3c]
mov eax, dword [edx]
mov edx, eax
and edx, 8
push edx
and eax, 0x10
push eax
mov eax, dword [esp + 0x28]
push ecx
call fcn.0040a8f0
jmp 0x408d07
mov eax, dword [esp + 0x3c]
push eax
mov ecx, edi
call fcn.00409640
lea ecx, [esp + 0x18]
mov esi, eax
call fcn.00405f30
jmp 0x408d34
mov ecx, dword [esp + 0x3c]
push ecx
push edi
call fcn.0040a530
jmp 0x408d20
mov edx, dword [esp + 0x3c]
push edx
mov eax, edi
call fcn.0040a2c0
jmp 0x408d20
mov eax, dword [esp + 0x3c]
push eax
mov ecx, edi
call fcn.00409050
jmp 0x408d20
xor eax, eax
mov ebx, eax
mov esi, edi
call fcn.00408160
test ebp, ebp
mov esi, eax
je 0x408d34
push ebp
jmp 0x408d2b
push 0
call fcn.00407e00
mov esi, eax
mov eax, dword [esp + 0x24]
test eax, eax
je 0x408d34
push eax
call dword [sym.imp.MSVCR80.dll_free]
add esp, 4
mov eax, esi
mov ecx, dword [esp + 0x2c]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x24
ret 4