Function at 0x100b7510
Capabilities:
Parse credit card information

Disassembly:
push ebx
push ebp
mov ebp, dword [edi + 0x44]
mov ebx, eax
mov eax, dword [esp + 0x10]
mov dword [ebx], 0
mov dword [eax], 0
mov ecx, dword [edi + 0x1a78]
push esi
push ecx
call fcn.100ab5c0
mov esi, eax
add esp, 4
cmp esi, 0x2f
je 0x100b7628
cmp esi, 0x3e
je 0x100b7646
cmp esi, 0x3c
je 0x100b7666
cmp esi, 0x3d
jne 0x100b7569
mov edx, dword [ebp + 0x3c]
push 0x114
push 0
push edx
jmp 0x100b7605
cmp esi, 0x22
je 0x100b75fa
cmp esi, 0x27
je 0x100b75fa
cmp esi, 0xffffffff
je 0x100b76da
cmp esi, 0x80
jae 0x100b7595
mov eax, dword [esi*4 + 0x1014e680]
jmp 0x100b7597
xor eax, eax
test al, 8
jne 0x100b760e
mov ecx, dword [ebp + 0x5c]
mov dword [esp + 0x14], ecx
mov ebx, esi
cmp esi, 0x3d
je 0x100b7765
lea ecx, [ecx]
cmp esi, 0x3e
je 0x100b7765
cmp esi, 0x3c
je 0x100b77af
cmp esi, 0xffffffff
je 0x100b77af
cmp ebx, 0x2d
jne 0x100b75e2
cmp esi, 0x22
je 0x100b77a3
cmp esi, 0x27
je 0x100b77a3
cmp esi, 0x80
jae 0x100b7702
mov eax, dword [esi*4 + 0x1014e680]
jmp 0x100b7704
mov eax, dword [ebp + 0x3c]
push 0x10a
push 0
push eax
push edi
call fcn.100ba310
add esp, 0x10
mov ecx, dword [edi + 0x1a78]
push ecx
call fcn.100ab5c0
mov esi, eax
add esp, 4
cmp esi, 0x2f
jne 0x100b7542
mov edx, dword [edi + 0x1a78]
push edx
call fcn.100ab5c0
add esp, 4
cmp eax, 0x3e
jne 0x100b764c
mov eax, dword [esp + 0x10]
mov dword [eax], 1
pop esi
pop ebp
xor eax, eax
pop ebx
ret
mov ecx, dword [edi + 0x1a78]
push ecx
push eax
call fcn.100aaf40
add esp, 8
mov esi, 0x2f
jmp 0x100b759b
mov edx, dword [edi + 0x1a78]
push edx
call fcn.100ab5c0
add esp, 4
cmp eax, 0x25
jne 0x100b768b
push edi
call fcn.100b7350
add esp, 4
pop esi
mov dword [ebx], eax
pop ebp
xor eax, eax
pop ebx
ret
cmp eax, 0x3f
jne 0x100b76a5
push edi
call fcn.100b7430
mov ecx, dword [esp + 0x18]
add esp, 4
pop esi
pop ebp
mov dword [ecx], eax
xor eax, eax
pop ebx
ret
mov edx, dword [edi + 0x1a78]
push edx
push eax
call fcn.100aaf40
mov eax, dword [edi + 0x1a78]
push eax
push 0x3c
call fcn.100aaf40
mov ecx, dword [ebp + 0x3c]
push 0x102
push 0
push ecx
push edi
call fcn.100ba310
add esp, 0x20
pop esi
pop ebp
xor eax, eax
pop ebx
ret
mov edx, dword [ebp + 0x3c]
push 0x11a
push 0
push edx
push edi
call fcn.100ba310
mov eax, dword [edi + 0x1a78]
push eax
push 0xffffffffffffffff
call fcn.100aaf40
add esp, 0x18
pop esi
pop ebp
xor eax, eax
pop ebx
ret
xor eax, eax
test al, 8
jne 0x100b7775
cmp dword [edi + 0xa8], 0
jne 0x100b7742
cmp esi, 0x80
jae 0x100b7722
mov eax, dword [esi*4 + 0x1014e680]
jmp 0x100b7724
xor eax, eax
test al, 0x40
je 0x100b7742
cmp esi, 0x80
jae 0x100b7739
mov eax, dword [esi*4 + 0x1014e680]
jmp 0x100b773b
xor eax, eax
test al, 0x40
je 0x100b7742
add esi, 0x20
push esi
push ebp
call fcn.100b5a00
mov edx, dword [edi + 0x1a78]
push edx
mov ebx, esi
call fcn.100ab5c0
mov esi, eax
add esp, 0xc
cmp esi, 0x3d
jne 0x100b75b0
mov edx, dword [edi + 0x1a78]
push edx
push esi
call fcn.100aaf40
add esp, 8
mov eax, dword [ebp + 0x5c]
mov ecx, dword [esp + 0x14]
sub eax, ecx
test eax, eax
jle 0x100b77b8
push eax
mov eax, dword [ebp + 0x54]
add eax, ecx
mov ecx, dword [edi + 0x1ac8]
push eax
push ecx
call fcn.100c3dd0
mov edx, dword [esp + 0x20]
add esp, 0xc
pop esi
mov dword [ebp + 0x5c], edx
pop ebp
pop ebx
ret
dec dword [ebp + 0x5c]
mov eax, dword [edi + 0x1a78]
push eax
jmp 0x100b776c
mov ecx, dword [edi + 0x1a78]
push ecx
jmp 0x100b776c
mov edx, dword [esp + 0x14]
pop esi
mov dword [ebp + 0x5c], edx
pop ebp
xor eax, eax
pop ebx
ret