Function at 0x43f6b0
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
push ecx
push ebx
push esi
mov esi, ecx
xor al, al
push edi
mov ecx, dword [esi + 0x4c]
cmp ecx, 0xffffffff
je 0x43f77b
cmp ecx, 0x7c
je 0x43f77b
cmp ecx, 0x29
jne 0x43f782
cmp dword [esi + 0x10], 0
jne 0x43f77b
cmp ecx, ecx
jne 0x43f782
test dword [esi + 0x50], 0x10000000
je 0x43fc6c
lea edi, [esi + 0x50]
cmp ecx, 0x5d
jne 0x43f70c
test dword [edi], 0x10000000
je 0x43fc73
movzx eax, word [esi + 0x48]
lea ecx, [esi + 0x24]
push eax
call fcn.00440ae0
mov ecx, dword [esi]
mov eax, dword [esi + 8]
cmp ecx, eax
je 0x43f75f
cmp word [ecx], 0x5c
jne 0x43f75c
add ecx, 2
cmp ecx, eax
je 0x43f75c
mov edx, dword [edi]
test dl, 8
jne 0x43f745
movzx eax, word [ecx]
mov edi, eax
cmp eax, 0x28
je 0x43f759
cmp edi, 0x29
je 0x43f759
test dl, 0x10
jne 0x43f75c
movzx eax, word [ecx]
mov ecx, eax
cmp eax, 0x7b
je 0x43f759
cmp ecx, 0x7d
jne 0x43f75c
add dword [esi], 2
add dword [esi], 2
mov ecx, esi
call fcn.0043ead0
mov ecx, esi
call fcn.004408b0
mov ecx, dword [esi + 0x4c]
mov al, 1
cmp ecx, 0xffffffff
jne 0x43f6c7
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp ecx, 0x2e
jne 0x43f84a
push 0x14
call fcn.0046de66
mov ecx, eax
add esp, 4
mov dword [ebp - 4], ecx
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 eax, dword [eax + 0xc]
test eax, eax
je 0x43f7d8
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 ecx, dword [esi]
mov eax, dword [esi + 8]
cmp ecx, eax
je 0x43f75f
cmp word [ecx], 0x5c
jne 0x43f840
lea ebx, [ecx + 2]
mov edx, ecx
cmp ebx, eax
je 0x43f83e
mov eax, dword [esi + 0x50]
test al, 8
jne 0x43f81a
movzx eax, word [ebx]
mov edi, ecx
mov edx, eax
cmp eax, 0x28
je 0x43f831
cmp edx, 0x29
je 0x43f831
mov eax, dword [esi + 0x50]
mov edx, ecx
test al, 0x10
jne 0x43f83e
movzx eax, word [ebx]
mov edi, ecx
mov ebx, eax
cmp eax, 0x7b
je 0x43f831
mov edi, edx
cmp ebx, 0x7d
jne 0x43f83e
lea ecx, [edi + 2]
lea eax, [ecx + 2]
mov dword [esi], eax
jmp 0x43f75f
mov ecx, edx
lea eax, [ecx + 2]
mov dword [esi], eax
jmp 0x43f75f
cmp ecx, 0x5c
jne 0x43fa10
mov ecx, dword [esi]
mov eax, dword [esi + 8]
cmp ecx, eax
je 0x43f8ab
cmp word [ecx], 0x5c
jne 0x43f8a6
lea ebx, [ecx + 2]
mov edx, ecx
cmp ebx, eax
je 0x43f8a4
mov eax, dword [esi + 0x50]
test al, 8
jne 0x43f888
movzx eax, word [ebx]
mov edi, ecx
mov edx, eax
cmp eax, 0x28
je 0x43f89f
cmp edx, 0x29
je 0x43f89f
mov eax, dword [esi + 0x50]
mov edx, ecx
test al, 0x10
jne 0x43f8a4
movzx eax, word [ebx]
mov edi, ecx
mov ebx, eax
cmp eax, 0x7b
je 0x43f89f
mov edi, edx
cmp ebx, 0x7d
jne 0x43f8a4
lea ecx, [edi + 2]
jmp 0x43f8a6
mov ecx, edx
lea eax, [ecx + 2]
mov dword [esi], eax
mov ecx, esi
call fcn.0043ead0
mov eax, dword [esi + 0x50]
and eax, 0x80
je 0x43f998
cmp word [esi + 0x48], 0x62
jne 0x43f998
push 0x14
call fcn.0046de66
mov ecx, eax
add esp, 4
mov dword [ebp - 4], ecx
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 eax, dword [eax + 0xc]
test eax, eax
je 0x43f918
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 ecx, dword [esi]
mov eax, dword [esi + 8]
cmp ecx, eax
je 0x43fc24
cmp word [ecx], 0x5c
jne 0x43f987
lea ebx, [ecx + 2]
mov edx, ecx
cmp ebx, eax
je 0x43f985
mov eax, dword [esi + 0x50]
test al, 8
jne 0x43f95a
movzx eax, word [ebx]
mov edi, ecx
mov edx, eax
cmp eax, 0x28
je 0x43f971
cmp edx, 0x29
je 0x43f971
mov eax, dword [esi + 0x50]
mov edx, ecx
test al, 0x10
jne 0x43f985
movzx eax, word [ebx]
mov edi, ecx
mov ebx, eax
cmp eax, 0x7b
je 0x43f971
mov edi, edx
cmp ebx, 0x7d
jne 0x43f985
lea ecx, [edi + 2]
lea eax, [ecx + 2]
mov ecx, esi
mov dword [esi], eax
call fcn.0043ead0
jmp 0x43f76d
mov ecx, edx
lea eax, [ecx + 2]
mov ecx, esi
mov dword [esi], eax
call fcn.0043ead0
jmp 0x43f76d
test eax, eax
je 0x43fa04
cmp word [esi + 0x48], 0x42
jne 0x43fa04
push 0x14
call fcn.0046de66
mov ecx, eax
add esp, 4
mov dword [ebp - 4], ecx
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 eax, dword [eax + 0xc]
test eax, eax
je 0x43f9f0
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 eax, ecx
mov dword [esi + 0x28], ecx
xor dword [eax + 8], 1
jmp 0x43fbdd
mov ecx, esi
call fcn.00440610
jmp 0x43f766
cmp ecx, 0x5b
jne 0x43faa2
mov ecx, dword [esi]
mov eax, dword [esi + 8]
cmp ecx, eax
je 0x43fa60
cmp word [ecx], 0x5c
jne 0x43fa5d
add ecx, 2
cmp ecx, eax
je 0x43fa5d
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x43fa46
movzx eax, word [ecx]
mov edi, eax
cmp eax, 0x28
je 0x43fa5a
cmp edi, 0x29
je 0x43fa5a
test dl, 0x10
jne 0x43fa5d
movzx eax, word [ecx]
mov ecx, eax
cmp eax, 0x7b
je 0x43fa5a
cmp ecx, 0x7d
jne 0x43fa5d
add dword [esi], 2
add dword [esi], 2
mov ecx, esi
call fcn.0043ead0
mov ecx, esi
call fcn.004404c0
cmp dword [esi + 0x4c], 0x5d
jne 0x43fc73
mov ecx, dword [esi]
mov eax, dword [esi + 8]
cmp ecx, eax
je 0x43f75f
cmp word [ecx], 0x5c
jne 0x43f75c
add ecx, 2
cmp ecx, eax
je 0x43f75c
mov edx, dword [esi + 0x50]
jmp 0x43f731
cmp ecx, 0x28
jne 0x43fb67
mov ecx, dword [esi]
mov eax, dword [esi + 8]
cmp ecx, eax
je 0x43faf2
cmp word [ecx], 0x5c
jne 0x43faef
add ecx, 2
cmp ecx, eax
je 0x43faef
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x43fad8
movzx eax, word [ecx]
mov edi, eax
cmp eax, 0x28
je 0x43faec
cmp edi, 0x29
je 0x43faec
test dl, 0x10
jne 0x43faef
movzx eax, word [ecx]
mov ecx, eax
cmp eax, 0x7b
je 0x43faec
cmp ecx, 0x7d
jne 0x43faef
add dword [esi], 2
add dword [esi], 2
mov ecx, esi
call fcn.0043ead0
mov ecx, esi
call fcn.00440760
cmp dword [esi + 0x4c], 0x29
mov bl, al
jne 0x43fc6c
mov ecx, dword [esi]
mov edx, dword [esi + 8]
cmp ecx, edx
je 0x43fb53
cmp word [ecx], 0x5c
jne 0x43fb50
add ecx, 2
cmp ecx, edx
je 0x43fb50
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x43fb39
movzx eax, word [ecx]
mov edi, eax
cmp eax, 0x28
je 0x43fb4d
cmp edi, 0x29
je 0x43fb4d
test dl, 0x10
jne 0x43fb50
movzx eax, word [ecx]
mov ecx, eax
cmp eax, 0x7b
je 0x43fb4d
cmp ecx, 0x7d
jne 0x43fb50
add dword [esi], 2
add dword [esi], 2
mov ecx, esi
call fcn.0043ead0
test bl, bl
je 0x43f76d
jmp 0x43f766
cmp ecx, 0x5e
jne 0x43fb7e
push 0x14
call fcn.0046de66
mov ecx, eax
mov dword [ecx + 4], 2
jmp 0x43fb97
cmp ecx, 0x24
jne 0x43fc30
push 0x14
call fcn.0046de66
mov ecx, eax
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 eax, dword [eax + 0xc]
test eax, eax
je 0x43fbd4
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 + 8]
mov ecx, dword [esi]
cmp ecx, eax
je 0x43fc24
cmp word [ecx], 0x5c
jne 0x43fc21
add ecx, 2
cmp ecx, eax
je 0x43fc21
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x43fc0a
movzx eax, word [ecx]
mov edi, eax
cmp eax, 0x28
je 0x43fc1e
cmp edi, 0x29
je 0x43fc1e
test dl, 0x10
jne 0x43fc21
movzx eax, word [ecx]
mov ecx, eax
cmp eax, 0x7b
je 0x43fc1e
cmp ecx, 0x7d
jne 0x43fc21
add dword [esi], 2
add dword [esi], 2
mov ecx, esi
call fcn.0043ead0
jmp 0x43f76d
cmp ecx, 0x2a
je 0x43fc5e
cmp ecx, 0x2b
je 0x43fc5e
cmp ecx, 0x3f
je 0x43fc5e
cmp ecx, 0x7b
je 0x43fc5e
cmp ecx, 0x7d
jne 0x43f6f8
test dword [esi + 0x50], 0x10000000
lea edi, [esi + 0x50]
je 0x43fc65
jmp 0x43f70c
push 0xa
call fcn.0043eac0
push 6
call fcn.0043eac0
push 5
call fcn.0043eac0
push 4
call fcn.0043eac0
int3