Function at 0x10011320
Capabilities:
Parse credit card information

Disassembly:
push ebx
push esi
mov esi, ecx
xor cl, cl
push edi
mov eax, dword [esi + 0x4c]
cmp eax, 0xffffffff
je 0x10011787
lea edi, [esi + 8]
cmp eax, 0x7c
je 0x10011787
cmp eax, 0x29
jne 0x10011360
cmp dword [esi + 0x10], 0
jne 0x10011787
test dword [esi + 0x50], 0x10000000
je 0x10011794
jmp 0x10011720
cmp eax, 0x2e
jne 0x100113b3
push 5
lea ecx, [esi + 0x24]
call fcn.100117b0
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x10011768
cmp byte [eax], 0x5c
jne 0x1001156f
lea ecx, [eax + 1]
cmp ecx, edx
je 0x1001156f
mov ebx, dword [esi + 0x50]
test bl, 8
jne 0x100113ab
mov dl, byte [ecx]
cmp dl, 0x28
je 0x1001156d
cmp dl, 0x29
je 0x1001156d
test bl, 0x10
jmp 0x1001155f
cmp eax, 0x5c
jne 0x100114d1
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x100113fa
cmp byte [eax], 0x5c
jne 0x100113f7
lea ecx, [eax + 1]
cmp ecx, edx
je 0x100113f7
mov ebx, dword [esi + 0x50]
test bl, 8
jne 0x100113e4
mov dl, byte [ecx]
cmp dl, 0x28
je 0x100113f5
cmp dl, 0x29
je 0x100113f5
test bl, 0x10
jne 0x100113f7
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x100113f5
cmp dl, 0x7d
jne 0x100113f7
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.1000f860
test byte [esi + 0x50], 0x80
je 0x100114c5
mov al, byte [esi + 0x48]
cmp al, 0x62
jne 0x10011466
push 4
lea ecx, [esi + 0x24]
call fcn.100117b0
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x1001145a
cmp byte [eax], 0x5c
jne 0x10011457
lea ecx, [eax + 1]
cmp ecx, edx
je 0x10011457
mov ebx, dword [esi + 0x50]
test bl, 8
jne 0x10011444
mov dl, byte [ecx]
cmp dl, 0x28
je 0x10011455
cmp dl, 0x29
je 0x10011455
test bl, 0x10
jne 0x10011457
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x10011455
cmp dl, 0x7d
jne 0x10011457
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.1000f860
jmp 0x10011779
cmp al, 0x42
jne 0x100114c5
push 4
lea ecx, [esi + 0x24]
call fcn.100117b0
mov eax, dword [esi + 0x28]
xor dword [eax + 8], 1
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x100114b9
cmp byte [eax], 0x5c
jne 0x100114b6
lea ecx, [eax + 1]
cmp ecx, edx
je 0x100114b6
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x100114a3
mov al, byte [ecx]
cmp al, 0x28
je 0x100114b4
cmp al, 0x29
je 0x100114b4
mov eax, dword [esi]
test dl, 0x10
jne 0x100114b6
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x100114b4
cmp dl, 0x7d
jne 0x100114b6
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.1000f860
jmp 0x10011779
mov ecx, esi
call fcn.100122b0
jmp 0x1001176f
cmp eax, 0x5b
jne 0x10011577
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x10011518
cmp byte [eax], 0x5c
jne 0x10011515
lea ecx, [eax + 1]
cmp ecx, edx
je 0x10011515
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x10011502
mov al, byte [ecx]
cmp al, 0x28
je 0x10011513
cmp al, 0x29
je 0x10011513
mov eax, dword [esi]
test dl, 0x10
jne 0x10011515
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x10011513
cmp dl, 0x7d
jne 0x10011515
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.1000f860
mov ecx, esi
call fcn.10012180
cmp dword [esi + 0x4c], 0x5d
jne 0x100117a2
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x10011768
cmp byte [eax], 0x5c
jne 0x1001156f
lea ecx, [eax + 1]
cmp ecx, edx
je 0x1001156f
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x1001155c
mov al, byte [ecx]
cmp al, 0x28
je 0x1001156d
cmp al, 0x29
je 0x1001156d
mov eax, dword [esi]
test dl, 0x10
jne 0x1001156f
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x1001156d
cmp dl, 0x7d
jne 0x1001156f
mov eax, ecx
inc eax
mov dword [esi], eax
jmp 0x10011768
cmp eax, 0x28
jne 0x1001162a
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x100115be
cmp byte [eax], 0x5c
jne 0x100115bb
lea ecx, [eax + 1]
cmp ecx, edx
je 0x100115bb
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x100115a8
mov al, byte [ecx]
cmp al, 0x28
je 0x100115b9
cmp al, 0x29
je 0x100115b9
mov eax, dword [esi]
test dl, 0x10
jne 0x100115bb
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x100115b9
cmp dl, 0x7d
jne 0x100115bb
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.1000f860
mov ecx, esi
call fcn.10012400
cmp dword [esi + 0x4c], 0x29
mov bl, al
jne 0x10011794
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x10011616
cmp byte [eax], 0x5c
jne 0x10011613
lea ecx, [eax + 1]
cmp ecx, edx
je 0x10011613
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x10011600
mov al, byte [ecx]
cmp al, 0x28
je 0x10011611
cmp al, 0x29
je 0x10011611
mov eax, dword [esi]
test dl, 0x10
jne 0x10011613
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x10011611
cmp dl, 0x7d
jne 0x10011613
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.1000f860
test bl, bl
je 0x10011779
jmp 0x1001176f
cmp eax, 0x5e
jne 0x10011680
push 2
lea ecx, [esi + 0x24]
call fcn.100117b0
mov eax, dword [esi]
mov ecx, dword [edi]
cmp eax, ecx
je 0x10011674
cmp byte [eax], 0x5c
jne 0x10011672
inc eax
cmp eax, ecx
je 0x10011672
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x1001165f
mov dl, byte [eax]
cmp dl, 0x28
je 0x10011670
cmp dl, 0x29
je 0x10011670
test cl, 0x10
jne 0x10011672
mov cl, byte [eax]
cmp cl, 0x7b
je 0x10011670
cmp cl, 0x7d
jne 0x10011672
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.1000f860
jmp 0x10011779
cmp eax, 0x24
jne 0x100116d6
push 3
lea ecx, [esi + 0x24]
call fcn.100117b0
mov eax, dword [esi]
mov ecx, dword [edi]
cmp eax, ecx
je 0x100116ca
cmp byte [eax], 0x5c
jne 0x100116c8
inc eax
cmp eax, ecx
je 0x100116c8
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x100116b5
mov dl, byte [eax]
cmp dl, 0x28
je 0x100116c6
cmp dl, 0x29
je 0x100116c6
test cl, 0x10
jne 0x100116c8
mov cl, byte [eax]
cmp cl, 0x7b
je 0x100116c6
cmp cl, 0x7d
jne 0x100116c8
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.1000f860
jmp 0x10011779
cmp eax, 0x2a
je 0x1001178d
cmp eax, 0x2b
je 0x1001178d
cmp eax, 0x3f
je 0x1001178d
cmp eax, 0x7b
je 0x1001178d
cmp eax, 0x7d
jne 0x1001170e
test dword [esi + 0x50], 0x10000000
je 0x1001179b
jmp 0x10011720
cmp eax, 0x5d
jne 0x10011720
test dword [esi + 0x50], 0x10000000
je 0x100117a2
movzx eax, byte [esi + 0x48]
lea ecx, [esi + 0x24]
push eax
call fcn.100127e0
mov eax, dword [esi]
mov ecx, dword [edi]
cmp eax, ecx
je 0x10011768
cmp byte [eax], 0x5c
jne 0x10011766
inc eax
cmp eax, ecx
je 0x10011766
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x10011753
mov dl, byte [eax]
cmp dl, 0x28
je 0x10011764
cmp dl, 0x29
je 0x10011764
test cl, 0x10
jne 0x10011766
mov cl, byte [eax]
cmp cl, 0x7b
je 0x10011764
cmp cl, 0x7d
jne 0x10011766
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.1000f860
mov ecx, esi
call fcn.100125b0
lea edi, [esi + 8]
mov eax, dword [esi + 0x4c]
mov cl, 1
cmp eax, 0xffffffff
jne 0x10011336
pop edi
pop esi
mov al, cl
pop ebx
ret
push 0xa
call fcn.1000f850
push 5
call fcn.1000f850
push 6
call fcn.1000f850
push 4
call fcn.1000f850
int3