Function at 0x41ce70
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 0x41d2d7
lea edi, [esi + 8]
cmp eax, 0x7c
je 0x41d2d7
cmp eax, 0x29
jne 0x41ceb0
cmp dword [esi + 0x10], 0
jne 0x41d2d7
test dword [esi + 0x50], 0x10000000
je 0x41d2e4
jmp 0x41d270
cmp eax, 0x2e
jne 0x41cf03
push 5
lea ecx, [esi + 0x24]
call fcn.0041d300
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x41d2b8
cmp byte [eax], 0x5c
jne 0x41d0bf
lea ecx, [eax + 1]
cmp ecx, edx
je 0x41d0bf
mov ebx, dword [esi + 0x50]
test bl, 8
jne 0x41cefb
mov dl, byte [ecx]
cmp dl, 0x28
je 0x41d0bd
cmp dl, 0x29
je 0x41d0bd
test bl, 0x10
jmp 0x41d0af
cmp eax, 0x5c
jne 0x41d021
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x41cf4a
cmp byte [eax], 0x5c
jne 0x41cf47
lea ecx, [eax + 1]
cmp ecx, edx
je 0x41cf47
mov ebx, dword [esi + 0x50]
test bl, 8
jne 0x41cf34
mov dl, byte [ecx]
cmp dl, 0x28
je 0x41cf45
cmp dl, 0x29
je 0x41cf45
test bl, 0x10
jne 0x41cf47
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x41cf45
cmp dl, 0x7d
jne 0x41cf47
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.0041b570
test byte [esi + 0x50], 0x80
je 0x41d015
mov al, byte [esi + 0x48]
cmp al, 0x62
jne 0x41cfb6
push 4
lea ecx, [esi + 0x24]
call fcn.0041d300
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x41cfaa
cmp byte [eax], 0x5c
jne 0x41cfa7
lea ecx, [eax + 1]
cmp ecx, edx
je 0x41cfa7
mov ebx, dword [esi + 0x50]
test bl, 8
jne 0x41cf94
mov dl, byte [ecx]
cmp dl, 0x28
je 0x41cfa5
cmp dl, 0x29
je 0x41cfa5
test bl, 0x10
jne 0x41cfa7
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x41cfa5
cmp dl, 0x7d
jne 0x41cfa7
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.0041b570
jmp 0x41d2c9
cmp al, 0x42
jne 0x41d015
push 4
lea ecx, [esi + 0x24]
call fcn.0041d300
mov eax, dword [esi + 0x28]
xor dword [eax + 8], 1
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x41d009
cmp byte [eax], 0x5c
jne 0x41d006
lea ecx, [eax + 1]
cmp ecx, edx
je 0x41d006
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x41cff3
mov al, byte [ecx]
cmp al, 0x28
je 0x41d004
cmp al, 0x29
je 0x41d004
mov eax, dword [esi]
test dl, 0x10
jne 0x41d006
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x41d004
cmp dl, 0x7d
jne 0x41d006
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.0041b570
jmp 0x41d2c9
mov ecx, esi
call fcn.0041ec00
jmp 0x41d2bf
cmp eax, 0x5b
jne 0x41d0c7
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x41d068
cmp byte [eax], 0x5c
jne 0x41d065
lea ecx, [eax + 1]
cmp ecx, edx
je 0x41d065
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x41d052
mov al, byte [ecx]
cmp al, 0x28
je 0x41d063
cmp al, 0x29
je 0x41d063
mov eax, dword [esi]
test dl, 0x10
jne 0x41d065
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x41d063
cmp dl, 0x7d
jne 0x41d065
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.0041b570
mov ecx, esi
call fcn.0041ead0
cmp dword [esi + 0x4c], 0x5d
jne 0x41d2f2
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x41d2b8
cmp byte [eax], 0x5c
jne 0x41d0bf
lea ecx, [eax + 1]
cmp ecx, edx
je 0x41d0bf
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x41d0ac
mov al, byte [ecx]
cmp al, 0x28
je 0x41d0bd
cmp al, 0x29
je 0x41d0bd
mov eax, dword [esi]
test dl, 0x10
jne 0x41d0bf
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x41d0bd
cmp dl, 0x7d
jne 0x41d0bf
mov eax, ecx
inc eax
mov dword [esi], eax
jmp 0x41d2b8
cmp eax, 0x28
jne 0x41d17a
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x41d10e
cmp byte [eax], 0x5c
jne 0x41d10b
lea ecx, [eax + 1]
cmp ecx, edx
je 0x41d10b
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x41d0f8
mov al, byte [ecx]
cmp al, 0x28
je 0x41d109
cmp al, 0x29
je 0x41d109
mov eax, dword [esi]
test dl, 0x10
jne 0x41d10b
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x41d109
cmp dl, 0x7d
jne 0x41d10b
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.0041b570
mov ecx, esi
call fcn.0041ed50
cmp dword [esi + 0x4c], 0x29
mov bl, al
jne 0x41d2e4
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x41d166
cmp byte [eax], 0x5c
jne 0x41d163
lea ecx, [eax + 1]
cmp ecx, edx
je 0x41d163
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x41d150
mov al, byte [ecx]
cmp al, 0x28
je 0x41d161
cmp al, 0x29
je 0x41d161
mov eax, dword [esi]
test dl, 0x10
jne 0x41d163
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x41d161
cmp dl, 0x7d
jne 0x41d163
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.0041b570
test bl, bl
je 0x41d2c9
jmp 0x41d2bf
cmp eax, 0x5e
jne 0x41d1d0
push 2
lea ecx, [esi + 0x24]
call fcn.0041d300
mov eax, dword [esi]
mov ecx, dword [edi]
cmp eax, ecx
je 0x41d1c4
cmp byte [eax], 0x5c
jne 0x41d1c2
inc eax
cmp eax, ecx
je 0x41d1c2
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x41d1af
mov dl, byte [eax]
cmp dl, 0x28
je 0x41d1c0
cmp dl, 0x29
je 0x41d1c0
test cl, 0x10
jne 0x41d1c2
mov cl, byte [eax]
cmp cl, 0x7b
je 0x41d1c0
cmp cl, 0x7d
jne 0x41d1c2
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.0041b570
jmp 0x41d2c9
cmp eax, 0x24
jne 0x41d226
push 3
lea ecx, [esi + 0x24]
call fcn.0041d300
mov eax, dword [esi]
mov ecx, dword [edi]
cmp eax, ecx
je 0x41d21a
cmp byte [eax], 0x5c
jne 0x41d218
inc eax
cmp eax, ecx
je 0x41d218
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x41d205
mov dl, byte [eax]
cmp dl, 0x28
je 0x41d216
cmp dl, 0x29
je 0x41d216
test cl, 0x10
jne 0x41d218
mov cl, byte [eax]
cmp cl, 0x7b
je 0x41d216
cmp cl, 0x7d
jne 0x41d218
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.0041b570
jmp 0x41d2c9
cmp eax, 0x2a
je 0x41d2dd
cmp eax, 0x2b
je 0x41d2dd
cmp eax, 0x3f
je 0x41d2dd
cmp eax, 0x7b
je 0x41d2dd
cmp eax, 0x7d
jne 0x41d25e
test dword [esi + 0x50], 0x10000000
je 0x41d2eb
jmp 0x41d270
cmp eax, 0x5d
jne 0x41d270
test dword [esi + 0x50], 0x10000000
je 0x41d2f2
movzx eax, byte [esi + 0x48]
lea ecx, [esi + 0x24]
push eax
call fcn.0041f130
mov eax, dword [esi]
mov ecx, dword [edi]
cmp eax, ecx
je 0x41d2b8
cmp byte [eax], 0x5c
jne 0x41d2b6
inc eax
cmp eax, ecx
je 0x41d2b6
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x41d2a3
mov dl, byte [eax]
cmp dl, 0x28
je 0x41d2b4
cmp dl, 0x29
je 0x41d2b4
test cl, 0x10
jne 0x41d2b6
mov cl, byte [eax]
cmp cl, 0x7b
je 0x41d2b4
cmp cl, 0x7d
jne 0x41d2b6
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.0041b570
mov ecx, esi
call fcn.0041ef00
lea edi, [esi + 8]
mov eax, dword [esi + 0x4c]
mov cl, 1
cmp eax, 0xffffffff
jne 0x41ce86
pop edi
pop esi
mov al, cl
pop ebx
ret
push 0xa
call fcn.0041b560
push 5
call fcn.0041b560
push 6
call fcn.0041b560
push 4
call fcn.0041b560
int3