Function at 0x1002f800
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1013507b
mov eax, dword fs:[0]
push eax
sub esp, 8
push ebx
push esi
mov eax, dword [0x101ba518]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
xor cl, cl
cmp dword [esi + 0x4c], 0xffffffff
je 0x1002fbc0
jmp 0x1002f840
mov eax, dword [esi + 0x4c]
cmp eax, 0x7c
je 0x1002fbc0
cmp eax, 0x29
jne 0x1002f868
cmp dword [esi + 0x10], 0
jne 0x1002fbc0
test dword [esi + 0x50], 0x10000000
je 0x1002fbd3
cmp eax, 0x2e
jne 0x1002f92b
push 0x14
call fcn.101161a1
mov ecx, eax
add esp, 4
mov dword [ebp - 0x10], ecx
mov dword [ebp - 4], 0
test ecx, ecx
je 0x1002f8af
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 0x1002f8b1
xor ecx, ecx
mov dword [ebp - 4], 0xffffffff
mov eax, dword [esi + 0x28]
mov dword [ecx + 0x10], eax
mov eax, dword [esi + 0x28]
mov eax, dword [eax + 0xc]
test eax, eax
je 0x1002f8d4
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 0x1002f91f
cmp word [eax], 0x5c
jne 0x1002f91c
add eax, 2
cmp eax, ecx
je 0x1002f91c
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x1002f908
movzx edx, word [eax]
cmp edx, 0x28
je 0x1002f91a
cmp edx, 0x29
je 0x1002f91a
test cl, 0x10
jne 0x1002f91c
movzx ecx, word [eax]
cmp ecx, 0x7b
je 0x1002f91a
cmp ecx, 0x7d
jne 0x1002f91c
mov dword [esi], eax
add dword [esi], 2
mov ecx, esi
call fcn.1002db00
jmp 0x1002fbad
cmp eax, 0x5c
jne 0x1002fa1a
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x1002f976
cmp word [eax], 0x5c
jne 0x1002f973
add eax, 2
cmp eax, ecx
je 0x1002f973
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x1002f95f
movzx edx, word [eax]
cmp edx, 0x28
je 0x1002f971
cmp edx, 0x29
je 0x1002f971
test cl, 0x10
jne 0x1002f973
movzx ecx, word [eax]
cmp ecx, 0x7b
je 0x1002f971
cmp ecx, 0x7d
jne 0x1002f973
mov dword [esi], eax
add dword [esi], 2
mov ecx, esi
call fcn.1002db00
mov eax, dword [esi + 0x50]
and eax, 0x80
je 0x1002f9e6
cmp word [esi + 0x48], 0x62
jne 0x1002f9e6
push 4
lea ecx, [esi + 0x24]
call fcn.1002fe40
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x1002f9da
cmp word [eax], 0x5c
jne 0x1002f9d7
add eax, 2
cmp eax, ecx
je 0x1002f9d7
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x1002f9c3
movzx ecx, word [eax]
cmp ecx, 0x28
je 0x1002f9d5
cmp ecx, 0x29
je 0x1002f9d5
test dl, 0x10
jne 0x1002f9d7
movzx ecx, word [eax]
cmp ecx, 0x7b
je 0x1002f9d5
cmp ecx, 0x7d
jne 0x1002f9d7
mov dword [esi], eax
add dword [esi], 2
mov ecx, esi
call fcn.1002db00
jmp 0x1002fbb4
test eax, eax
je 0x1002fa0e
cmp word [esi + 0x48], 0x42
jne 0x1002fa0e
push 4
lea ecx, [esi + 0x24]
call fcn.1002fe40
mov eax, dword [esi + 0x28]
mov ecx, esi
xor dword [eax + 8], 1
call fcn.1002f7b0
jmp 0x1002fbb4
mov ecx, esi
call fcn.10030de0
jmp 0x1002fbad
cmp eax, 0x5b
jne 0x1002facb
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x1002fa65
cmp word [eax], 0x5c
jne 0x1002fa62
add eax, 2
cmp eax, ecx
je 0x1002fa62
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x1002fa4e
movzx edx, word [eax]
cmp edx, 0x28
je 0x1002fa60
cmp edx, 0x29
je 0x1002fa60
test cl, 0x10
jne 0x1002fa62
movzx ecx, word [eax]
cmp ecx, 0x7b
je 0x1002fa60
cmp ecx, 0x7d
jne 0x1002fa62
mov dword [esi], eax
add dword [esi], 2
mov ecx, esi
call fcn.1002db00
mov ecx, esi
call fcn.10030d70
cmp dword [esi + 0x4c], 0x5d
jne 0x1002fbda
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x1002fabf
cmp word [eax], 0x5c
jne 0x1002fabc
add eax, 2
cmp eax, ecx
je 0x1002fabc
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x1002faa8
movzx edx, word [eax]
cmp edx, 0x28
je 0x1002faba
cmp edx, 0x29
je 0x1002faba
test cl, 0x10
jne 0x1002fabc
movzx ecx, word [eax]
cmp ecx, 0x7b
je 0x1002faba
cmp ecx, 0x7d
jne 0x1002fabc
mov dword [esi], eax
add dword [esi], 2
mov ecx, esi
call fcn.1002db00
jmp 0x1002fbad
cmp eax, 0x28
jne 0x1002fb39
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x1002fb12
cmp word [eax], 0x5c
jne 0x1002fb0f
add eax, 2
cmp eax, ecx
je 0x1002fb0f
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x1002fafb
movzx edx, word [eax]
cmp edx, 0x28
je 0x1002fb0d
cmp edx, 0x29
je 0x1002fb0d
test cl, 0x10
jne 0x1002fb0f
movzx ecx, word [eax]
cmp ecx, 0x7b
je 0x1002fb0d
cmp ecx, 0x7d
jne 0x1002fb0f
mov dword [esi], eax
add dword [esi], 2
mov ecx, esi
call fcn.1002db00
mov ecx, esi
call fcn.10030eb0
cmp dword [esi + 0x4c], 0x29
mov bl, al
jne 0x1002fbd3
mov ecx, esi
call fcn.1002f7b0
test bl, bl
je 0x1002fbb4
jmp 0x1002fbad
cmp eax, 0x5e
jne 0x1002fb51
push 2
lea ecx, [esi + 0x24]
call fcn.1002fe40
mov ecx, esi
call fcn.1002f7b0
jmp 0x1002fbb4
cmp eax, 0x24
jne 0x1002fb69
push 3
lea ecx, [esi + 0x24]
call fcn.1002fe40
mov ecx, esi
call fcn.1002f7b0
jmp 0x1002fbb4
cmp eax, 0x2a
je 0x1002fbe8
cmp eax, 0x2b
je 0x1002fbe8
cmp eax, 0x3f
je 0x1002fbe8
cmp eax, 0x7b
je 0x1002fbe8
cmp eax, 0x7d
jne 0x1002fb8b
test dword [esi + 0x50], 0x10000000
je 0x1002fbe1
cmp eax, 0x5d
jne 0x1002fb99
test dword [esi + 0x50], 0x10000000
je 0x1002fbda
movzx eax, word [esi + 0x48]
lea ecx, [esi + 0x24]
push eax
call fcn.100310a0
mov ecx, esi
call fcn.1002f7b0
mov ecx, esi
call fcn.10030f70
cmp dword [esi + 0x4c], 0xffffffff
mov cl, 1
jne 0x1002f840
mov al, cl
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 5
call fcn.10110736
push 4
call fcn.10110736
push 6
call fcn.10110736
push 0xa
call fcn.10110736
int3