Function at 0x10030260
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
mov eax, dword [esi + 0x4c]
xor cl, cl
cmp eax, 0xffffffff
je 0x10030616
cmp eax, 0x7c
je 0x10030616
cmp eax, 0x29
jne 0x100302bc
cmp dword [esi + 0x10], 0
jne 0x10030616
test dword [esi + 0x50], 0x10000000
je 0x10030629
cmp eax, 0x2e
jne 0x1003037f
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 0x10030303
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 0x10030305
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 0x10030328
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 0x10030373
cmp word [eax], 0x5c
jne 0x10030370
add eax, 2
cmp eax, ecx
je 0x10030370
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x1003035c
movzx edx, word [eax]
cmp edx, 0x28
je 0x1003036e
cmp edx, 0x29
je 0x1003036e
test cl, 0x10
jne 0x10030370
movzx ecx, word [eax]
cmp ecx, 0x7b
je 0x1003036e
cmp ecx, 0x7d
jne 0x10030370
mov dword [esi], eax
add dword [esi], 2
mov ecx, esi
call fcn.1002db00
jmp 0x10030601
cmp eax, 0x5c
jne 0x1003046e
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x100303ca
cmp word [eax], 0x5c
jne 0x100303c7
add eax, 2
cmp eax, ecx
je 0x100303c7
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x100303b3
movzx edx, word [eax]
cmp edx, 0x28
je 0x100303c5
cmp edx, 0x29
je 0x100303c5
test cl, 0x10
jne 0x100303c7
movzx ecx, word [eax]
cmp ecx, 0x7b
je 0x100303c5
cmp ecx, 0x7d
jne 0x100303c7
mov dword [esi], eax
add dword [esi], 2
mov ecx, esi
call fcn.1002db00
mov eax, dword [esi + 0x50]
and eax, 0x80
je 0x1003043a
cmp word [esi + 0x48], 0x62
jne 0x1003043a
push 4
lea ecx, [esi + 0x24]
call fcn.1002fe40
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x1003042e
cmp word [eax], 0x5c
jne 0x1003042b
add eax, 2
cmp eax, ecx
je 0x1003042b
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x10030417
movzx ecx, word [eax]
cmp ecx, 0x28
je 0x10030429
cmp ecx, 0x29
je 0x10030429
test dl, 0x10
jne 0x1003042b
movzx ecx, word [eax]
cmp ecx, 0x7b
je 0x10030429
cmp ecx, 0x7d
jne 0x1003042b
mov dword [esi], eax
add dword [esi], 2
mov ecx, esi
call fcn.1002db00
jmp 0x10030608
test eax, eax
je 0x10030462
cmp word [esi + 0x48], 0x42
jne 0x10030462
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 0x10030608
mov ecx, esi
call fcn.10031ae0
jmp 0x10030601
cmp eax, 0x5b
jne 0x1003051f
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x100304b9
cmp word [eax], 0x5c
jne 0x100304b6
add eax, 2
cmp eax, ecx
je 0x100304b6
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x100304a2
movzx edx, word [eax]
cmp edx, 0x28
je 0x100304b4
cmp edx, 0x29
je 0x100304b4
test cl, 0x10
jne 0x100304b6
movzx ecx, word [eax]
cmp ecx, 0x7b
je 0x100304b4
cmp ecx, 0x7d
jne 0x100304b6
mov dword [esi], eax
add dword [esi], 2
mov ecx, esi
call fcn.1002db00
mov ecx, esi
call fcn.10031a70
cmp dword [esi + 0x4c], 0x5d
jne 0x10030630
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x10030513
cmp word [eax], 0x5c
jne 0x10030510
add eax, 2
cmp eax, ecx
je 0x10030510
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x100304fc
movzx edx, word [eax]
cmp edx, 0x28
je 0x1003050e
cmp edx, 0x29
je 0x1003050e
test cl, 0x10
jne 0x10030510
movzx ecx, word [eax]
cmp ecx, 0x7b
je 0x1003050e
cmp ecx, 0x7d
jne 0x10030510
mov dword [esi], eax
add dword [esi], 2
mov ecx, esi
call fcn.1002db00
jmp 0x10030601
cmp eax, 0x28
jne 0x1003058d
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x10030566
cmp word [eax], 0x5c
jne 0x10030563
add eax, 2
cmp eax, ecx
je 0x10030563
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x1003054f
movzx edx, word [eax]
cmp edx, 0x28
je 0x10030561
cmp edx, 0x29
je 0x10030561
test cl, 0x10
jne 0x10030563
movzx ecx, word [eax]
cmp ecx, 0x7b
je 0x10030561
cmp ecx, 0x7d
jne 0x10030563
mov dword [esi], eax
add dword [esi], 2
mov ecx, esi
call fcn.1002db00
mov ecx, esi
call fcn.10031bb0
cmp dword [esi + 0x4c], 0x29
mov bl, al
jne 0x10030629
mov ecx, esi
call fcn.1002f7b0
test bl, bl
je 0x10030608
jmp 0x10030601
cmp eax, 0x5e
jne 0x100305a5
push 2
lea ecx, [esi + 0x24]
call fcn.1002fe40
mov ecx, esi
call fcn.1002f7b0
jmp 0x10030608
cmp eax, 0x24
jne 0x100305bd
push 3
lea ecx, [esi + 0x24]
call fcn.1002fe40
mov ecx, esi
call fcn.1002f7b0
jmp 0x10030608
cmp eax, 0x2a
je 0x1003063e
cmp eax, 0x2b
je 0x1003063e
cmp eax, 0x3f
je 0x1003063e
cmp eax, 0x7b
je 0x1003063e
cmp eax, 0x7d
jne 0x100305df
test dword [esi + 0x50], 0x10000000
je 0x10030637
cmp eax, 0x5d
jne 0x100305ed
test dword [esi + 0x50], 0x10000000
je 0x10030630
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
mov eax, dword [esi + 0x4c]
mov cl, 1
cmp eax, 0xffffffff
jne 0x10030297
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