Function at 0x43fc00
Capabilities:
Parse credit card information

Disassembly:
push ecx
push ebx
push ebp
push esi
push edi
mov edi, eax
xor ebp, ebp
xor al, al
cmp dword [edi + 0x40], 0xffff
je 0x43fedd
jmp 0x43fc20
mov ecx, dword [edi + 0x40]
mov edx, 0x10000000
cmp ecx, 0x7c
je 0x43fedd
cmp ecx, 0x29
jne 0x43fc53
cmp dword [edi + 0x10], ebp
jne 0x43fedd
test dword [edi + 0x44], edx
jne 0x43fc53
push 5
call fcn.00469592
add esp, 4
jmp 0x43fec7
cmp ecx, 0x2e
jne 0x43fcfa
push 0x14
call fcn.00469670
add esp, 4
cmp eax, ebp
je 0x43fc82
mov dword [eax], vtable.std::tr1::_Node_base.0
mov dword [eax + 4], 5
mov dword [eax + 8], ebp
mov dword [eax + 0xc], ebp
mov dword [eax + 0x10], ebp
jmp 0x43fc84
xor eax, eax
mov ecx, dword [edi + 0x1c]
mov dword [eax + 0x10], ecx
mov edx, dword [edi + 0x1c]
mov ecx, dword [edx + 0xc]
cmp ecx, ebp
je 0x43fca0
mov dword [eax + 0xc], ecx
mov ecx, dword [edi + 0x1c]
mov edx, dword [ecx + 0xc]
mov dword [edx + 0x10], eax
mov ecx, dword [edi + 0x1c]
mov dword [ecx + 0xc], eax
mov dword [edi + 0x1c], eax
mov eax, dword [edi]
mov ecx, dword [edi + 8]
cmp eax, ecx
je 0x43fcee
cmp word [eax], 0x5c
jne 0x43fceb
add eax, 2
cmp eax, ecx
je 0x43fcd4
test byte [edi + 0x44], 8
jne 0x43fcd4
movzx ecx, word [eax]
cmp cx, 0x28
je 0x43fce9
cmp cx, 0x29
je 0x43fce9
test byte [edi + 0x44], 0x10
jne 0x43fceb
movzx ecx, word [eax]
cmp cx, 0x7b
je 0x43fce9
cmp cx, 0x7d
jne 0x43fceb
mov dword [edi], eax
add dword [edi], 2
mov esi, edi
call fcn.0043ebe0
jmp 0x43fec7
cmp ecx, 0x5c
jne 0x43fde9
mov eax, dword [edi]
mov ecx, dword [edi + 8]
cmp eax, ecx
je 0x43fd48
cmp word [eax], 0x5c
jne 0x43fd45
add eax, 2
cmp eax, ecx
je 0x43fd2e
test byte [edi + 0x44], 8
jne 0x43fd2e
movzx ecx, word [eax]
cmp cx, 0x28
je 0x43fd43
cmp cx, 0x29
je 0x43fd43
test byte [edi + 0x44], 0x10
jne 0x43fd45
movzx ecx, word [eax]
cmp cx, 0x7b
je 0x43fd43
cmp cx, 0x7d
jne 0x43fd45
mov dword [edi], eax
add dword [edi], 2
mov esi, edi
call fcn.0043ebe0
mov eax, dword [edi + 0x44]
and eax, 0x80
je 0x43fd94
cmp word [edi + 0x3e], 0x62
jne 0x43fd94
lea esi, [edi + 0x18]
call fcn.00440f00
mov esi, dword [edi]
cmp esi, dword [edi + 8]
je 0x43fd88
cmp word [esi], 0x5c
jne 0x43fd85
mov edx, edi
call fcn.0043fb90
test al, al
je 0x43fd85
add esi, 2
mov dword [edi], esi
add dword [edi], 2
mov esi, edi
call fcn.0043ebe0
jmp 0x43fece
cmp eax, ebp
je 0x43fddd
cmp word [edi + 0x3e], 0x42
jne 0x43fddd
lea esi, [edi + 0x18]
call fcn.00440f00
mov eax, dword [edi + 0x1c]
or dword [eax + 8], 1
mov esi, dword [edi]
add eax, 8
cmp esi, dword [edi + 8]
je 0x43fdd1
cmp word [esi], 0x5c
jne 0x43fdce
mov edx, edi
call fcn.0043fb90
test al, al
je 0x43fdce
add esi, 2
mov dword [edi], esi
add dword [edi], 2
mov esi, edi
call fcn.0043ebe0
jmp 0x43fece
mov eax, edi
call fcn.00440b70
jmp 0x43fec7
cmp ecx, 0x5b
jne 0x43fe53
mov esi, dword [edi]
cmp esi, dword [edi + 8]
je 0x43fe0e
cmp word [esi], 0x5c
jne 0x43fe0b
mov edx, edi
call fcn.0043fb90
test al, al
je 0x43fe0b
add esi, 2
mov dword [edi], esi
add dword [edi], 2
mov esi, edi
call fcn.0043ebe0
call fcn.00440ad0
cmp dword [edi + 0x40], 0x5d
je 0x43fe2a
push 4
call fcn.00469592
add esp, 4
mov esi, dword [edi]
cmp esi, dword [edi + 8]
je 0x43fe4a
cmp word [esi], 0x5c
jne 0x43fe47
mov edx, edi
call fcn.0043fb90
test al, al
je 0x43fe47
add esi, 2
mov dword [edi], esi
add dword [edi], 2
mov esi, edi
call fcn.0043ebe0
jmp 0x43fec7
cmp ecx, 0x28
jne 0x43fee3
mov esi, dword [edi]
cmp esi, dword [edi + 8]
je 0x43fe7c
cmp word [esi], 0x5c
jne 0x43fe79
mov edx, edi
call fcn.0043fb90
test al, al
je 0x43fe79
add esi, 2
mov dword [edi], esi
add dword [edi], 2
mov esi, edi
call fcn.0043ebe0
mov eax, edi
call fcn.00440c30
cmp dword [edi + 0x40], 0x29
mov bl, al
je 0x43fe9c
push 5
call fcn.00469592
add esp, 4
mov esi, dword [edi]
cmp esi, dword [edi + 8]
je 0x43febc
cmp word [esi], 0x5c
jne 0x43feb9
mov edx, edi
call fcn.0043fb90
test al, al
je 0x43feb9
add esi, 2
mov dword [edi], esi
add dword [edi], 2
mov esi, edi
call fcn.0043ebe0
test bl, bl
je 0x43fece
mov eax, edi
call fcn.00440d20
cmp dword [edi + 0x40], 0xffff
mov al, 1
jne 0x43fc20
pop edi
pop esi
pop ebp
pop ebx
pop ecx
ret
cmp ecx, 0x5e
jne 0x43ff19
lea esi, [edi + 0x18]
call fcn.00440e60
mov esi, dword [edi]
cmp esi, dword [edi + 8]
je 0x43ff10
cmp word [esi], 0x5c
jne 0x43ff0d
mov edx, edi
call fcn.0043fb90
test al, al
je 0x43ff0d
add esi, 2
mov dword [edi], esi
add dword [edi], 2
mov esi, edi
call fcn.0043ebe0
jmp 0x43fece
cmp ecx, 0x24
jne 0x43ff2f
lea esi, [edi + 0x18]
call fcn.00440eb0
mov eax, edi
call fcn.0043fbd0
jmp 0x43fece
cmp ecx, 0x2a
je 0x43ff8e
cmp ecx, 0x2b
je 0x43ff8e
cmp ecx, 0x3f
je 0x43ff8e
cmp ecx, 0x7b
je 0x43ff8e
cmp ecx, 0x7d
jne 0x43ff5c
test dword [edi + 0x44], edx
jne 0x43ff5c
push 6
call fcn.00469592
add esp, 4
jmp 0x43fec7
cmp ecx, 0x5d
jne 0x43ff75
test dword [edi + 0x44], edx
jne 0x43ff75
push 4
call fcn.00469592
add esp, 4
jmp 0x43fec7
movzx edx, word [edi + 0x3e]
push edx
lea eax, [edi + 0x18]
call fcn.00440f50
mov eax, edi
call fcn.0043fbd0
jmp 0x43fec7
push 0xa
call fcn.00469592
add esp, 4
jmp 0x43fec7