Function at 0x453c60
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 0x45410d
lea edi, [esi + 8]
cmp eax, 0x7c
je 0x45410d
cmp eax, 0x29
jne 0x453ca0
cmp dword [esi + 0x10], 0
jne 0x45410d
test dword [esi + 0x50], 0x10000000
je 0x45411a
jmp 0x4540a0
cmp eax, 0x2e
jne 0x453cf5
push 5
lea ecx, [esi + 0x24]
call fcn.00454130
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x4540ee
cmp word [eax], 0x5c
jne 0x453ed3
lea ecx, [eax + 2]
cmp ecx, edx
je 0x453ed3
mov ebx, dword [esi + 0x50]
test bl, 8
jne 0x453ced
movzx edx, word [ecx]
cmp edx, 0x28
je 0x453ed1
cmp edx, 0x29
je 0x453ed1
test bl, 0x10
jmp 0x453ec2
cmp eax, 0x5c
jne 0x453e29
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x453d41
cmp word [eax], 0x5c
jne 0x453d3c
lea ecx, [eax + 2]
cmp ecx, edx
je 0x453d3c
mov ebx, dword [esi + 0x50]
test bl, 8
jne 0x453d28
movzx edx, word [ecx]
cmp edx, 0x28
je 0x453d3a
cmp edx, 0x29
je 0x453d3a
test bl, 0x10
jne 0x453d3c
movzx edx, word [ecx]
cmp edx, 0x7b
je 0x453d3a
cmp edx, 0x7d
jne 0x453d3c
mov eax, ecx
add eax, 2
mov dword [esi], eax
mov ecx, esi
call fcn.00453060
test byte [esi + 0x50], 0x80
je 0x453e1d
movzx eax, word [esi + 0x48]
mov ecx, eax
cmp eax, 0x62
jne 0x453db6
push 4
lea ecx, [esi + 0x24]
call fcn.00454130
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x453daa
cmp word [eax], 0x5c
jne 0x453da5
lea ecx, [eax + 2]
cmp ecx, edx
je 0x453da5
mov ebx, dword [esi + 0x50]
test bl, 8
jne 0x453d91
movzx edx, word [ecx]
cmp edx, 0x28
je 0x453da3
cmp edx, 0x29
je 0x453da3
test bl, 0x10
jne 0x453da5
movzx edx, word [ecx]
cmp edx, 0x7b
je 0x453da3
cmp edx, 0x7d
jne 0x453da5
mov eax, ecx
add eax, 2
mov dword [esi], eax
mov ecx, esi
call fcn.00453060
jmp 0x4540ff
cmp ecx, 0x42
jne 0x453e1d
push 4
lea ecx, [esi + 0x24]
call fcn.00454130
mov eax, dword [esi + 0x28]
xor dword [eax + 8], 1
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x453e11
cmp word [eax], 0x5c
jne 0x453e0c
lea ecx, [eax + 2]
cmp ecx, edx
je 0x453e0c
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x453df8
movzx eax, word [ecx]
cmp eax, 0x28
je 0x453e0a
cmp eax, 0x29
je 0x453e0a
mov eax, dword [esi]
test dl, 0x10
jne 0x453e0c
movzx edx, word [ecx]
cmp edx, 0x7b
je 0x453e0a
cmp edx, 0x7d
jne 0x453e0c
mov eax, ecx
add eax, 2
mov dword [esi], eax
mov ecx, esi
call fcn.00453060
jmp 0x4540ff
mov ecx, esi
call fcn.004548e0
jmp 0x4540f5
cmp eax, 0x5b
jne 0x453edd
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x453e77
cmp word [eax], 0x5c
jne 0x453e72
lea ecx, [eax + 2]
cmp ecx, edx
je 0x453e72
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x453e5e
movzx eax, word [ecx]
cmp eax, 0x28
je 0x453e70
cmp eax, 0x29
je 0x453e70
mov eax, dword [esi]
test dl, 0x10
jne 0x453e72
movzx edx, word [ecx]
cmp edx, 0x7b
je 0x453e70
cmp edx, 0x7d
jne 0x453e72
mov eax, ecx
add eax, 2
mov dword [esi], eax
mov ecx, esi
call fcn.00453060
mov ecx, esi
call fcn.004547a0
cmp dword [esi + 0x4c], 0x5d
jne 0x454128
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x4540ee
cmp word [eax], 0x5c
jne 0x453ed3
lea ecx, [eax + 2]
cmp ecx, edx
je 0x453ed3
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x453ebf
movzx eax, word [ecx]
cmp eax, 0x28
je 0x453ed1
cmp eax, 0x29
je 0x453ed1
mov eax, dword [esi]
test dl, 0x10
jne 0x453ed3
movzx edx, word [ecx]
cmp edx, 0x7b
je 0x453ed1
cmp edx, 0x7d
jne 0x453ed3
mov eax, ecx
add eax, 2
mov dword [esi], eax
jmp 0x4540ee
cmp eax, 0x28
jne 0x453f9e
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x453f2b
cmp word [eax], 0x5c
jne 0x453f26
lea ecx, [eax + 2]
cmp ecx, edx
je 0x453f26
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x453f12
movzx eax, word [ecx]
cmp eax, 0x28
je 0x453f24
cmp eax, 0x29
je 0x453f24
mov eax, dword [esi]
test dl, 0x10
jne 0x453f26
movzx edx, word [ecx]
cmp edx, 0x7b
je 0x453f24
cmp edx, 0x7d
jne 0x453f26
mov eax, ecx
add eax, 2
mov dword [esi], eax
mov ecx, esi
call fcn.00453060
mov ecx, esi
call fcn.00454a20
cmp dword [esi + 0x4c], 0x29
mov bl, al
jne 0x45411a
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x453f8a
cmp word [eax], 0x5c
jne 0x453f85
lea ecx, [eax + 2]
cmp ecx, edx
je 0x453f85
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x453f71
movzx eax, word [ecx]
cmp eax, 0x28
je 0x453f83
cmp eax, 0x29
je 0x453f83
mov eax, dword [esi]
test dl, 0x10
jne 0x453f85
movzx edx, word [ecx]
cmp edx, 0x7b
je 0x453f83
cmp edx, 0x7d
jne 0x453f85
mov eax, ecx
add eax, 2
mov dword [esi], eax
mov ecx, esi
call fcn.00453060
test bl, bl
je 0x4540ff
jmp 0x4540f5
cmp eax, 0x5e
jne 0x453ffa
push 2
lea ecx, [esi + 0x24]
call fcn.00454130
mov eax, dword [esi]
mov ecx, dword [edi]
cmp eax, ecx
je 0x453fee
cmp word [eax], 0x5c
jne 0x453feb
add eax, 2
cmp eax, ecx
je 0x453feb
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x453fd7
movzx edx, word [eax]
cmp edx, 0x28
je 0x453fe9
cmp edx, 0x29
je 0x453fe9
test cl, 0x10
jne 0x453feb
movzx ecx, word [eax]
cmp ecx, 0x7b
je 0x453fe9
cmp ecx, 0x7d
jne 0x453feb
mov dword [esi], eax
add dword [esi], 2
mov ecx, esi
call fcn.00453060
jmp 0x4540ff
cmp eax, 0x24
jne 0x454056
push 3
lea ecx, [esi + 0x24]
call fcn.00454130
mov eax, dword [esi]
mov ecx, dword [edi]
cmp eax, ecx
je 0x45404a
cmp word [eax], 0x5c
jne 0x454047
add eax, 2
cmp eax, ecx
je 0x454047
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x454033
movzx edx, word [eax]
cmp edx, 0x28
je 0x454045
cmp edx, 0x29
je 0x454045
test cl, 0x10
jne 0x454047
movzx ecx, word [eax]
cmp ecx, 0x7b
je 0x454045
cmp ecx, 0x7d
jne 0x454047
mov dword [esi], eax
add dword [esi], 2
mov ecx, esi
call fcn.00453060
jmp 0x4540ff
cmp eax, 0x2a
je 0x454113
cmp eax, 0x2b
je 0x454113
cmp eax, 0x3f
je 0x454113
cmp eax, 0x7b
je 0x454113
cmp eax, 0x7d
jne 0x45408e
test dword [esi + 0x50], 0x10000000
je 0x454121
jmp 0x4540a0
cmp eax, 0x5d
jne 0x4540a0
test dword [esi + 0x50], 0x10000000
je 0x454128
movzx eax, word [esi + 0x48]
lea ecx, [esi + 0x24]
push eax
call fcn.00454df0
mov eax, dword [esi]
mov ecx, dword [edi]
cmp eax, ecx
je 0x4540ee
cmp word [eax], 0x5c
jne 0x4540eb
add eax, 2
cmp eax, ecx
je 0x4540eb
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x4540d7
movzx edx, word [eax]
cmp edx, 0x28
je 0x4540e9
cmp edx, 0x29
je 0x4540e9
test cl, 0x10
jne 0x4540eb
movzx ecx, word [eax]
cmp ecx, 0x7b
je 0x4540e9
cmp ecx, 0x7d
jne 0x4540eb
mov dword [esi], eax
add dword [esi], 2
mov ecx, esi
call fcn.00453060
mov ecx, esi
call fcn.00454bc0
lea edi, [esi + 8]
mov eax, dword [esi + 0x4c]
mov cl, 1
cmp eax, 0xffffffff
jne 0x453c76
pop edi
pop esi
mov al, cl
pop ebx
ret
push 0xa
call fcn.00453050
push 5
call fcn.00453050
push 6
call fcn.00453050
push 4
call fcn.00453050
int3