Function at 0x1000ddc0
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 0x1000e227
lea edi, [esi + 8]
cmp eax, 0x7c
je 0x1000e227
cmp eax, 0x29
jne 0x1000de00
cmp dword [esi + 0x10], 0
jne 0x1000e227
test dword [esi + 0x50], 0x10000000
je 0x1000e234
jmp 0x1000e1c0
cmp eax, 0x2e
jne 0x1000de53
push 5
lea ecx, [esi + 0x24]
call fcn.1000e250
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x1000e208
cmp byte [eax], 0x5c
jne 0x1000e00f
lea ecx, [eax + 1]
cmp ecx, edx
je 0x1000e00f
mov ebx, dword [esi + 0x50]
test bl, 8
jne 0x1000de4b
mov dl, byte [ecx]
cmp dl, 0x28
je 0x1000e00d
cmp dl, 0x29
je 0x1000e00d
test bl, 0x10
jmp 0x1000dfff
cmp eax, 0x5c
jne 0x1000df71
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x1000de9a
cmp byte [eax], 0x5c
jne 0x1000de97
lea ecx, [eax + 1]
cmp ecx, edx
je 0x1000de97
mov ebx, dword [esi + 0x50]
test bl, 8
jne 0x1000de84
mov dl, byte [ecx]
cmp dl, 0x28
je 0x1000de95
cmp dl, 0x29
je 0x1000de95
test bl, 0x10
jne 0x1000de97
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x1000de95
cmp dl, 0x7d
jne 0x1000de97
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.1000cba0
test byte [esi + 0x50], 0x80
je 0x1000df65
mov al, byte [esi + 0x48]
cmp al, 0x62
jne 0x1000df06
push 4
lea ecx, [esi + 0x24]
call fcn.1000e250
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x1000defa
cmp byte [eax], 0x5c
jne 0x1000def7
lea ecx, [eax + 1]
cmp ecx, edx
je 0x1000def7
mov ebx, dword [esi + 0x50]
test bl, 8
jne 0x1000dee4
mov dl, byte [ecx]
cmp dl, 0x28
je 0x1000def5
cmp dl, 0x29
je 0x1000def5
test bl, 0x10
jne 0x1000def7
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x1000def5
cmp dl, 0x7d
jne 0x1000def7
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.1000cba0
jmp 0x1000e219
cmp al, 0x42
jne 0x1000df65
push 4
lea ecx, [esi + 0x24]
call fcn.1000e250
mov eax, dword [esi + 0x28]
xor dword [eax + 8], 1
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x1000df59
cmp byte [eax], 0x5c
jne 0x1000df56
lea ecx, [eax + 1]
cmp ecx, edx
je 0x1000df56
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x1000df43
mov al, byte [ecx]
cmp al, 0x28
je 0x1000df54
cmp al, 0x29
je 0x1000df54
mov eax, dword [esi]
test dl, 0x10
jne 0x1000df56
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x1000df54
cmp dl, 0x7d
jne 0x1000df56
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.1000cba0
jmp 0x1000e219
mov ecx, esi
call fcn.1000ee90
jmp 0x1000e20f
cmp eax, 0x5b
jne 0x1000e017
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x1000dfb8
cmp byte [eax], 0x5c
jne 0x1000dfb5
lea ecx, [eax + 1]
cmp ecx, edx
je 0x1000dfb5
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x1000dfa2
mov al, byte [ecx]
cmp al, 0x28
je 0x1000dfb3
cmp al, 0x29
je 0x1000dfb3
mov eax, dword [esi]
test dl, 0x10
jne 0x1000dfb5
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x1000dfb3
cmp dl, 0x7d
jne 0x1000dfb5
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.1000cba0
mov ecx, esi
call fcn.1000ed60
cmp dword [esi + 0x4c], 0x5d
jne 0x1000e242
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x1000e208
cmp byte [eax], 0x5c
jne 0x1000e00f
lea ecx, [eax + 1]
cmp ecx, edx
je 0x1000e00f
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x1000dffc
mov al, byte [ecx]
cmp al, 0x28
je 0x1000e00d
cmp al, 0x29
je 0x1000e00d
mov eax, dword [esi]
test dl, 0x10
jne 0x1000e00f
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x1000e00d
cmp dl, 0x7d
jne 0x1000e00f
mov eax, ecx
inc eax
mov dword [esi], eax
jmp 0x1000e208
cmp eax, 0x28
jne 0x1000e0ca
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x1000e05e
cmp byte [eax], 0x5c
jne 0x1000e05b
lea ecx, [eax + 1]
cmp ecx, edx
je 0x1000e05b
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x1000e048
mov al, byte [ecx]
cmp al, 0x28
je 0x1000e059
cmp al, 0x29
je 0x1000e059
mov eax, dword [esi]
test dl, 0x10
jne 0x1000e05b
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x1000e059
cmp dl, 0x7d
jne 0x1000e05b
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.1000cba0
mov ecx, esi
call fcn.1000efe0
cmp dword [esi + 0x4c], 0x29
mov bl, al
jne 0x1000e234
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x1000e0b6
cmp byte [eax], 0x5c
jne 0x1000e0b3
lea ecx, [eax + 1]
cmp ecx, edx
je 0x1000e0b3
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x1000e0a0
mov al, byte [ecx]
cmp al, 0x28
je 0x1000e0b1
cmp al, 0x29
je 0x1000e0b1
mov eax, dword [esi]
test dl, 0x10
jne 0x1000e0b3
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x1000e0b1
cmp dl, 0x7d
jne 0x1000e0b3
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.1000cba0
test bl, bl
je 0x1000e219
jmp 0x1000e20f
cmp eax, 0x5e
jne 0x1000e120
push 2
lea ecx, [esi + 0x24]
call fcn.1000e250
mov eax, dword [esi]
mov ecx, dword [edi]
cmp eax, ecx
je 0x1000e114
cmp byte [eax], 0x5c
jne 0x1000e112
inc eax
cmp eax, ecx
je 0x1000e112
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x1000e0ff
mov dl, byte [eax]
cmp dl, 0x28
je 0x1000e110
cmp dl, 0x29
je 0x1000e110
test cl, 0x10
jne 0x1000e112
mov cl, byte [eax]
cmp cl, 0x7b
je 0x1000e110
cmp cl, 0x7d
jne 0x1000e112
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.1000cba0
jmp 0x1000e219
cmp eax, 0x24
jne 0x1000e176
push 3
lea ecx, [esi + 0x24]
call fcn.1000e250
mov eax, dword [esi]
mov ecx, dword [edi]
cmp eax, ecx
je 0x1000e16a
cmp byte [eax], 0x5c
jne 0x1000e168
inc eax
cmp eax, ecx
je 0x1000e168
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x1000e155
mov dl, byte [eax]
cmp dl, 0x28
je 0x1000e166
cmp dl, 0x29
je 0x1000e166
test cl, 0x10
jne 0x1000e168
mov cl, byte [eax]
cmp cl, 0x7b
je 0x1000e166
cmp cl, 0x7d
jne 0x1000e168
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.1000cba0
jmp 0x1000e219
cmp eax, 0x2a
je 0x1000e22d
cmp eax, 0x2b
je 0x1000e22d
cmp eax, 0x3f
je 0x1000e22d
cmp eax, 0x7b
je 0x1000e22d
cmp eax, 0x7d
jne 0x1000e1ae
test dword [esi + 0x50], 0x10000000
je 0x1000e23b
jmp 0x1000e1c0
cmp eax, 0x5d
jne 0x1000e1c0
test dword [esi + 0x50], 0x10000000
je 0x1000e242
movzx eax, byte [esi + 0x48]
lea ecx, [esi + 0x24]
push eax
call fcn.1000f490
mov eax, dword [esi]
mov ecx, dword [edi]
cmp eax, ecx
je 0x1000e208
cmp byte [eax], 0x5c
jne 0x1000e206
inc eax
cmp eax, ecx
je 0x1000e206
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x1000e1f3
mov dl, byte [eax]
cmp dl, 0x28
je 0x1000e204
cmp dl, 0x29
je 0x1000e204
test cl, 0x10
jne 0x1000e206
mov cl, byte [eax]
cmp cl, 0x7b
je 0x1000e204
cmp cl, 0x7d
jne 0x1000e206
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.1000cba0
mov ecx, esi
call fcn.1000f260
lea edi, [esi + 8]
mov eax, dword [esi + 0x4c]
mov cl, 1
cmp eax, 0xffffffff
jne 0x1000ddd6
pop edi
pop esi
mov al, cl
pop ebx
ret
push 0xa
call fcn.1000cb90
push 5
call fcn.1000cb90
push 6
call fcn.1000cb90
push 4
call fcn.1000cb90
int3