Function at 0x4136c0
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 0x413a3b
cmp eax, 0x7c
je 0x413a3b
cmp eax, 0x29
jne 0x4136fd
cmp dword [esi + 0x10], 0
jne 0x413a3b
test dword [esi + 0x50], 0x10000000
je 0x413a48
jmp 0x4139cc
cmp eax, 0x2e
jne 0x413711
push 5
lea ecx, [esi + 0x24]
call fcn.00413a60
jmp 0x4139d9
cmp eax, 0x5c
jne 0x4137ed
mov eax, dword [esi]
mov edx, dword [esi + 8]
cmp eax, edx
je 0x413760
cmp word [eax], 0x5c
jne 0x41375b
lea ecx, [eax + 2]
mov eax, ecx
cmp ecx, edx
je 0x413759
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x413747
movzx edi, word [ecx]
cmp edi, 0x28
je 0x41375b
cmp edi, 0x29
je 0x41375b
test dl, 0x10
jne 0x413759
movzx ecx, word [ecx]
cmp ecx, 0x7b
je 0x41375b
cmp ecx, 0x7d
je 0x41375b
mov eax, dword [esi]
add eax, 2
mov dword [esi], eax
mov ecx, esi
call fcn.00412590
test byte [esi + 0x50], 0x80
je 0x4137e1
movzx eax, word [esi + 0x48]
cmp eax, 0x62
jne 0x4137c9
push 4
lea ecx, [esi + 0x24]
call fcn.00413a60
mov eax, dword [esi]
mov edx, dword [esi + 8]
cmp eax, edx
je 0x413976
cmp word [eax], 0x5c
jne 0x413971
lea ecx, [eax + 2]
mov eax, ecx
cmp ecx, edx
je 0x41396f
mov ebx, dword [esi + 0x50]
test bl, 8
jne 0x4137c1
movzx edx, word [ecx]
cmp edx, 0x28
je 0x413971
cmp edx, 0x29
je 0x413971
test bl, 0x10
jmp 0x413960
cmp eax, 0x42
jne 0x4137e1
push 4
lea ecx, [esi + 0x24]
call fcn.00413a60
mov eax, dword [esi + 0x28]
xor dword [eax + 8], 1
jmp 0x413780
mov ecx, esi
call fcn.004143e0
jmp 0x413a26
cmp eax, 0x5b
jne 0x413855
mov eax, dword [esi]
mov edx, dword [esi + 8]
cmp eax, edx
je 0x413838
cmp word [eax], 0x5c
jne 0x413833
lea ecx, [eax + 2]
mov eax, ecx
cmp ecx, edx
je 0x413831
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x41381f
movzx edi, word [ecx]
cmp edi, 0x28
je 0x413833
cmp edi, 0x29
je 0x413833
test dl, 0x10
jne 0x413831
movzx ecx, word [ecx]
cmp ecx, 0x7b
je 0x413833
cmp ecx, 0x7d
je 0x413833
mov eax, dword [esi]
add eax, 2
mov dword [esi], eax
mov ecx, esi
call fcn.00412590
mov ecx, esi
call fcn.00414300
cmp dword [esi + 0x4c], 0x5d
jne 0x413a4f
jmp 0x4139d9
cmp eax, 0x28
jne 0x413918
mov eax, dword [esi]
mov edx, dword [esi + 8]
cmp eax, edx
je 0x4138a4
cmp word [eax], 0x5c
jne 0x41389f
lea ecx, [eax + 2]
mov eax, ecx
cmp ecx, edx
je 0x41389d
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x41388b
movzx edi, word [ecx]
cmp edi, 0x28
je 0x41389f
cmp edi, 0x29
je 0x41389f
test dl, 0x10
jne 0x41389d
movzx ecx, word [ecx]
cmp ecx, 0x7b
je 0x41389f
cmp ecx, 0x7d
je 0x41389f
mov eax, dword [esi]
add eax, 2
mov dword [esi], eax
mov ecx, esi
call fcn.00412590
mov ecx, esi
call fcn.00414570
cmp dword [esi + 0x4c], 0x29
mov bl, al
jne 0x413a48
mov eax, dword [esi]
mov edx, dword [esi + 8]
cmp eax, edx
je 0x413904
cmp word [eax], 0x5c
jne 0x4138ff
lea ecx, [eax + 2]
mov eax, ecx
cmp ecx, edx
je 0x4138fd
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x4138eb
movzx edi, word [ecx]
cmp edi, 0x28
je 0x4138ff
cmp edi, 0x29
je 0x4138ff
test dl, 0x10
jne 0x4138fd
movzx ecx, word [ecx]
cmp ecx, 0x7b
je 0x4138ff
cmp ecx, 0x7d
je 0x4138ff
mov eax, dword [esi]
add eax, 2
mov dword [esi], eax
mov ecx, esi
call fcn.00412590
test bl, bl
je 0x413a2d
jmp 0x413a26
cmp eax, 0x5e
jne 0x413921
push 2
jmp 0x413928
cmp eax, 0x24
jne 0x413982
push 3
lea ecx, [esi + 0x24]
call fcn.00413a60
mov edx, dword [esi + 8]
mov eax, dword [esi]
cmp eax, edx
je 0x413976
cmp word [eax], 0x5c
jne 0x413971
lea ecx, [eax + 2]
mov eax, ecx
cmp ecx, edx
je 0x41396f
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x41395d
movzx edi, word [ecx]
cmp edi, 0x28
je 0x413971
cmp edi, 0x29
je 0x413971
test dl, 0x10
jne 0x41396f
movzx ecx, word [ecx]
cmp ecx, 0x7b
je 0x413971
cmp ecx, 0x7d
je 0x413971
mov eax, dword [esi]
add eax, 2
mov dword [esi], eax
mov ecx, esi
call fcn.00412590
jmp 0x413a2d
cmp eax, 0x2a
je 0x413a41
cmp eax, 0x2b
je 0x413a41
cmp eax, 0x3f
je 0x413a41
cmp eax, 0x7b
je 0x413a41
cmp eax, 0x7d
jne 0x4139ba
test dword [esi + 0x50], 0x10000000
je 0x413a56
jmp 0x4139cc
cmp eax, 0x5d
jne 0x4139cc
test dword [esi + 0x50], 0x10000000
je 0x413a4f
movzx eax, word [esi + 0x48]
lea ecx, [esi + 0x24]
push eax
call fcn.00414950
mov edx, dword [esi + 8]
mov eax, dword [esi]
cmp eax, edx
je 0x413a1f
cmp word [eax], 0x5c
jne 0x413a1a
lea ecx, [eax + 2]
mov eax, ecx
cmp ecx, edx
je 0x413a18
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x413a06
movzx edi, word [ecx]
cmp edi, 0x28
je 0x413a1a
cmp edi, 0x29
je 0x413a1a
test dl, 0x10
jne 0x413a18
movzx ecx, word [ecx]
cmp ecx, 0x7b
je 0x413a1a
cmp ecx, 0x7d
je 0x413a1a
mov eax, dword [esi]
add eax, 2
mov dword [esi], eax
mov ecx, esi
call fcn.00412590
mov ecx, esi
call fcn.00414710
mov eax, dword [esi + 0x4c]
mov cl, 1
cmp eax, 0xffffffff
jne 0x4136d3
pop edi
pop esi
mov al, cl
pop ebx
ret
push 0xa
call fcn.00412580
push 5
call fcn.00412580
push 4
call fcn.00412580
push 6
call fcn.00412580
int3