Function at 0x1000bab0
Capabilities:
Parse credit card information

Disassembly:
push 0xffffffffffffffff
push 0x10023e48
mov eax, dword fs:[0]
push eax
sub esp, 0x18
push ebx
push ebp
push esi
push edi
mov eax, dword [0x1002f72c]
xor eax, esp
push eax
lea eax, [esp + 0x2c]
mov dword fs:[0], eax
mov edi, ecx
xor edx, edx
xor ebp, ebp
xor ebx, ebx
mov dword [esp + 0x1c], edx
mov dword [esp + 0x20], ebp
mov dword [esp + 0x18], vtable.CBufferT_char_.0
mov dword [esp + 0x28], edx
mov dword [esp + 0x24], ebx
mov dword [esp + 0x34], edx
jmp 0x1000bb00
cmp byte [edi + 0xa8], 0
mov ecx, 1
jne 0x1000bb1a
cmp dword [edi + 0xac], ecx
je 0x1000bd10
mov eax, dword [edi + 0xac]
test eax, eax
jne 0x1000bbf2
cmp byte [edi + 0xb8], 0x7b
jne 0x1000bb3d
cmp dword [edi + 0xbc], ecx
je 0x1000bce4
cmp byte [edi + 0xb8], 0x3f
jne 0x1000bb52
cmp dword [edi + 0xbc], ecx
je 0x1000bce4
cmp byte [edi + 0xb8], 0x2a
jne 0x1000bb67
cmp dword [edi + 0xbc], ecx
je 0x1000bce4
cmp byte [edi + 0xb8], 0x2b
jne 0x1000bb7c
cmp dword [edi + 0xbc], ecx
je 0x1000bce4
cmp edx, 8
mov bl, byte [edi + 0xa8]
mov esi, edx
jge 0x1000bb8e
mov esi, 8
lea eax, [ebp + 2]
cmp eax, esi
jle 0x1000bbae
add esi, esi
cmp eax, esi
jle 0x1000bbae
lea esi, [ebp + 0xd]
mov eax, esi
and eax, 0x80000007
jns 0x1000bbac
dec eax
or eax, 0xfffffff8
inc eax
sub esi, eax
cmp esi, edx
jle 0x1000bbce
mov ecx, dword [esp + 0x24]
push esi
push ecx
call fcn.10012e26
add esp, 8
mov dword [esp + 0x24], eax
mov dword [esp + 0x1c], eax
mov dword [esp + 0x28], esi
jmp 0x1000bbd2
mov eax, dword [esp + 0x24]
mov byte [eax + ebp], bl
inc ebp
mov esi, edi
mov dword [esp + 0x20], ebp
mov byte [eax + ebp], 0
call fcn.1000a040
mov edx, dword [esp + 0x28]
mov ebx, dword [esp + 0x24]
jmp 0x1000bb00
cmp eax, ecx
jne 0x1000bb00
mov al, byte [edi + 0xa8]
cmp al, 0x29
je 0x1000bd10
cmp al, 0x7c
je 0x1000bd10
test ebp, ebp
jg 0x1000bd18
cmp al, 0x28
je 0x1000bd55
cmp al, 0x5b
je 0x1000bd8a
cmp al, 0x2e
je 0x1000bd8a
cmp al, 0x77
je 0x1000bd8a
cmp al, 0x57
je 0x1000bd8a
cmp al, 0x73
je 0x1000bd8a
cmp al, 0x53
je 0x1000bd8a
cmp al, 0x64
je 0x1000bd8a
cmp al, 0x44
je 0x1000bd8a
cmp al, 0x5e
je 0x1000bd7c
cmp al, 0x24
je 0x1000bd7c
cmp al, 0x41
je 0x1000bd7c
cmp al, 0x5a
je 0x1000bd7c
cmp al, 0x7a
je 0x1000bd7c
cmp al, 0x62
je 0x1000bd7c
cmp al, 0x42
je 0x1000bd7c
cmp al, 0x47
je 0x1000bd7c
cmp al, 0x5c
je 0x1000bd6e
cmp al, 0x6b
je 0x1000bd6e
cmp al, 0x67
je 0x1000bd6e
push 1
lea edx, [esp + 0x18]
push edx
lea esi, [esp + 0x20]
mov byte [esp + 0x1c], al
call fcn.1000d9d0
mov esi, edi
call fcn.1000a040
mov ebp, dword [esp + 0x20]
mov edx, dword [esp + 0x28]
mov ebx, dword [esp + 0x24]
jmp 0x1000bb00
test ebp, ebp
jne 0x1000bd12
mov al, byte [edi + 0xa8]
push ecx
lea ecx, [esp + 0x18]
push ecx
lea esi, [esp + 0x20]
mov byte [esp + 0x1c], al
call fcn.1000d9d0
mov esi, edi
call fcn.1000a040
mov ebp, dword [esp + 0x20]
mov ebx, dword [esp + 0x24]
test ebp, ebp
jle 0x1000bda4
push 0x20
call fcn.100130ad
mov esi, eax
add esp, 4
test esi, esi
je 0x1000bd98
mov ecx, ebx
test ebx, ebx
jne 0x1000bd33
mov ecx, 0x1002ae99
mov eax, dword [esp + 0x3c]
mov eax, dword [eax]
mov edx, eax
and edx, 8
push edx
and eax, 0x10
push eax
push ecx
mov eax, ebp
call fcn.1000db00
push eax
mov esi, edi
call fcn.1000b1e0
jmp 0x1000bdab
mov edx, dword [esp + 0x3c]
push edx
mov ecx, edi
call fcn.1000c660
lea ecx, [esp + 0x18]
mov esi, eax
call fcn.10009070
jmp 0x1000bdba
mov eax, dword [esp + 0x3c]
push eax
mov ecx, edi
call fcn.1000d630
jmp 0x1000bdab
mov ecx, dword [esp + 0x3c]
push ecx
mov eax, edi
call fcn.1000d3c0
jmp 0x1000bdab
mov edx, dword [esp + 0x3c]
push edx
mov ecx, edi
call fcn.1000c0c0
jmp 0x1000bdab
xor eax, eax
push eax
mov esi, edi
call fcn.1000b1e0
jmp 0x1000bdab
push 0
call fcn.1000ae30
mov esi, eax
test ebx, ebx
je 0x1000bdba
push ebx
call fcn.100124f1
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