Function at 0x4119f0
Capabilities:
Parse credit card information

Disassembly:
push esi
mov esi, ecx
xor cl, cl
mov eax, dword [esi + 0x4c]
cmp eax, 0xffffffff
je 0x411e24
push edi
lea edi, [esi + 8]
push ebx
cmp eax, 0x7c
je 0x411e22
cmp eax, 0x29
jne 0x411a30
cmp dword [esi + 0x10], 0
jne 0x411e22
test dword [esi + 0x50], 0x10000000
je 0x411e31
jmp 0x411dbb
cmp eax, 0x2e
jne 0x411a86
push 5
lea ecx, [esi + 0x24]
call fcn.00413f50
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x411e03
cmp byte [eax], 0x5c
jne 0x411a7e
lea ecx, [eax + 1]
cmp ecx, edx
je 0x411a7e
mov ebx, dword [esi + 0x50]
test bl, 8
jne 0x411a6b
mov dl, byte [ecx]
cmp dl, 0x28
je 0x411a7c
cmp dl, 0x29
je 0x411a7c
test bl, 0x10
jne 0x411a7e
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x411a7c
cmp dl, 0x7d
jne 0x411a7e
mov eax, ecx
inc eax
mov dword [esi], eax
jmp 0x411e03
cmp eax, 0x5c
jne 0x411ba4
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x411acd
cmp byte [eax], 0x5c
jne 0x411aca
lea ecx, [eax + 1]
cmp ecx, edx
je 0x411aca
mov ebx, dword [esi + 0x50]
test bl, 8
jne 0x411ab7
mov dl, byte [ecx]
cmp dl, 0x28
je 0x411ac8
cmp dl, 0x29
je 0x411ac8
test bl, 0x10
jne 0x411aca
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x411ac8
cmp dl, 0x7d
jne 0x411aca
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.00414460
test byte [esi + 0x50], 0x80
je 0x411b98
mov al, byte [esi + 0x48]
cmp al, 0x62
jne 0x411b39
push 4
lea ecx, [esi + 0x24]
call fcn.00413f50
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x411b2d
cmp byte [eax], 0x5c
jne 0x411b2a
lea ecx, [eax + 1]
cmp ecx, edx
je 0x411b2a
mov ebx, dword [esi + 0x50]
test bl, 8
jne 0x411b17
mov dl, byte [ecx]
cmp dl, 0x28
je 0x411b28
cmp dl, 0x29
je 0x411b28
test bl, 0x10
jne 0x411b2a
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x411b28
cmp dl, 0x7d
jne 0x411b2a
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.00414460
jmp 0x411e14
cmp al, 0x42
jne 0x411b98
push 4
lea ecx, [esi + 0x24]
call fcn.00413f50
mov eax, dword [esi + 0x28]
xor dword [eax + 8], 1
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x411b8c
cmp byte [eax], 0x5c
jne 0x411b89
lea ecx, [eax + 1]
cmp ecx, edx
je 0x411b89
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x411b76
mov al, byte [ecx]
cmp al, 0x28
je 0x411b87
cmp al, 0x29
je 0x411b87
mov eax, dword [esi]
test dl, 0x10
jne 0x411b89
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x411b87
cmp dl, 0x7d
jne 0x411b89
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.00414460
jmp 0x411e14
mov ecx, esi
call fcn.00411e50
jmp 0x411e0a
cmp eax, 0x5b
jne 0x411c4e
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x411beb
cmp byte [eax], 0x5c
jne 0x411be8
lea ecx, [eax + 1]
cmp ecx, edx
je 0x411be8
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x411bd5
mov al, byte [ecx]
cmp al, 0x28
je 0x411be6
cmp al, 0x29
je 0x411be6
mov eax, dword [esi]
test dl, 0x10
jne 0x411be8
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x411be6
cmp dl, 0x7d
jne 0x411be8
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.00414460
lea ecx, [esi + 0x24]
call fcn.00411290
mov eax, dword [esi + 0x4c]
cmp eax, 0x5e
jne 0x411c13
mov eax, dword [esi + 0x28]
mov ecx, esi
xor dword [eax + 8], 1
call fcn.00413fc0
mov eax, dword [esi + 0x4c]
test dword [esi + 0x50], 0x20000000
je 0x411c31
cmp eax, 0x5d
jne 0x411c31
push eax
lea ecx, [esi + 0x24]
call fcn.00411220
mov ecx, esi
call fcn.00413fc0
mov ecx, esi
call fcn.004126a0
cmp dword [esi + 0x4c], 0x5d
jne 0x411e43
mov ecx, esi
call fcn.00413fc0
jmp 0x411e0a
cmp eax, 0x28
jne 0x411cbf
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x411c91
cmp byte [eax], 0x5c
jne 0x411c8e
lea ecx, [eax + 1]
cmp ecx, edx
je 0x411c8e
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x411c7b
mov al, byte [ecx]
cmp al, 0x28
je 0x411c8c
cmp al, 0x29
je 0x411c8c
mov eax, dword [esi]
test dl, 0x10
jne 0x411c8e
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x411c8c
cmp dl, 0x7d
jne 0x411c8e
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.00414460
mov ecx, esi
call fcn.00414660
cmp dword [esi + 0x4c], 0x29
mov bl, al
jne 0x411e31
mov ecx, esi
call fcn.00413fc0
test bl, bl
je 0x411e14
jmp 0x411e0a
cmp eax, 0x5e
jne 0x411d18
push 2
lea ecx, [esi + 0x24]
call fcn.00413f50
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x411d0c
cmp byte [eax], 0x5c
jne 0x411d09
lea ecx, [eax + 1]
cmp ecx, edx
je 0x411d09
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x411cf6
mov al, byte [ecx]
cmp al, 0x28
je 0x411d07
cmp al, 0x29
je 0x411d07
mov eax, dword [esi]
test dl, 0x10
jne 0x411d09
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x411d07
cmp dl, 0x7d
jne 0x411d09
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.00414460
jmp 0x411e14
cmp eax, 0x24
jne 0x411d71
push 3
lea ecx, [esi + 0x24]
call fcn.00413f50
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x411d65
cmp byte [eax], 0x5c
jne 0x411d62
lea ecx, [eax + 1]
cmp ecx, edx
je 0x411d62
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x411d4f
mov al, byte [ecx]
cmp al, 0x28
je 0x411d60
cmp al, 0x29
je 0x411d60
mov eax, dword [esi]
test dl, 0x10
jne 0x411d62
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x411d60
cmp dl, 0x7d
jne 0x411d62
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.00414460
jmp 0x411e14
cmp eax, 0x2a
je 0x411e28
cmp eax, 0x2b
je 0x411e28
cmp eax, 0x3f
je 0x411e28
cmp eax, 0x7b
je 0x411e28
cmp eax, 0x7d
jne 0x411da9
test dword [esi + 0x50], 0x10000000
je 0x411e3a
jmp 0x411dbb
cmp eax, 0x5d
jne 0x411dbb
test dword [esi + 0x50], 0x10000000
je 0x411e43
movzx eax, byte [esi + 0x48]
lea ecx, [esi + 0x24]
push eax
call fcn.00411070
mov eax, dword [esi]
mov ecx, dword [edi]
cmp eax, ecx
je 0x411e03
cmp byte [eax], 0x5c
jne 0x411e01
inc eax
cmp eax, ecx
je 0x411e01
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x411dee
mov dl, byte [eax]
cmp dl, 0x28
je 0x411dff
cmp dl, 0x29
je 0x411dff
test cl, 0x10
jne 0x411e01
mov cl, byte [eax]
cmp cl, 0x7b
je 0x411dff
cmp cl, 0x7d
jne 0x411e01
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.00414460
mov ecx, esi
call fcn.00414020
lea edi, [esi + 8]
mov eax, dword [esi + 0x4c]
mov cl, 1
cmp eax, 0xffffffff
jne 0x411a06
pop ebx
pop edi
mov al, cl
pop esi
ret
push 0xa
mov ecx, esi
call fcn.004134d0
push 5
mov ecx, esi
call fcn.004134d0
push 6
mov ecx, esi
call fcn.004134d0
push 4
mov ecx, esi
call fcn.004134d0
int3