Function at 0x456340
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 0x4567ed
lea edi, [esi + 8]
cmp eax, 0x7c
je 0x4567ed
cmp eax, 0x29
jne 0x456380
cmp dword [esi + 0x10], 0
jne 0x4567ed
test dword [esi + 0x50], 0x10000000
je 0x4567fa
jmp 0x456780
cmp eax, 0x2e
jne 0x4563d5
push 5
lea ecx, [esi + 0x24]
call fcn.00456810
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x4567ce
cmp word [eax], 0x5c
jne 0x4565b3
lea ecx, [eax + 2]
cmp ecx, edx
je 0x4565b3
mov ebx, dword [esi + 0x50]
test bl, 8
jne 0x4563cd
movzx edx, word [ecx]
cmp edx, 0x28
je 0x4565b1
cmp edx, 0x29
je 0x4565b1
test bl, 0x10
jmp 0x4565a2
cmp eax, 0x5c
jne 0x456509
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x456421
cmp word [eax], 0x5c
jne 0x45641c
lea ecx, [eax + 2]
cmp ecx, edx
je 0x45641c
mov ebx, dword [esi + 0x50]
test bl, 8
jne 0x456408
movzx edx, word [ecx]
cmp edx, 0x28
je 0x45641a
cmp edx, 0x29
je 0x45641a
test bl, 0x10
jne 0x45641c
movzx edx, word [ecx]
cmp edx, 0x7b
je 0x45641a
cmp edx, 0x7d
jne 0x45641c
mov eax, ecx
add eax, 2
mov dword [esi], eax
mov ecx, esi
call fcn.00454f60
test byte [esi + 0x50], 0x80
je 0x4564fd
movzx eax, word [esi + 0x48]
mov ecx, eax
cmp eax, 0x62
jne 0x456496
push 4
lea ecx, [esi + 0x24]
call fcn.00456810
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x45648a
cmp word [eax], 0x5c
jne 0x456485
lea ecx, [eax + 2]
cmp ecx, edx
je 0x456485
mov ebx, dword [esi + 0x50]
test bl, 8
jne 0x456471
movzx edx, word [ecx]
cmp edx, 0x28
je 0x456483
cmp edx, 0x29
je 0x456483
test bl, 0x10
jne 0x456485
movzx edx, word [ecx]
cmp edx, 0x7b
je 0x456483
cmp edx, 0x7d
jne 0x456485
mov eax, ecx
add eax, 2
mov dword [esi], eax
mov ecx, esi
call fcn.00454f60
jmp 0x4567df
cmp ecx, 0x42
jne 0x4564fd
push 4
lea ecx, [esi + 0x24]
call fcn.00456810
mov eax, dword [esi + 0x28]
xor dword [eax + 8], 1
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x4564f1
cmp word [eax], 0x5c
jne 0x4564ec
lea ecx, [eax + 2]
cmp ecx, edx
je 0x4564ec
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x4564d8
movzx eax, word [ecx]
cmp eax, 0x28
je 0x4564ea
cmp eax, 0x29
je 0x4564ea
mov eax, dword [esi]
test dl, 0x10
jne 0x4564ec
movzx edx, word [ecx]
cmp edx, 0x7b
je 0x4564ea
cmp edx, 0x7d
jne 0x4564ec
mov eax, ecx
add eax, 2
mov dword [esi], eax
mov ecx, esi
call fcn.00454f60
jmp 0x4567df
mov ecx, esi
call fcn.00457920
jmp 0x4567d5
cmp eax, 0x5b
jne 0x4565bd
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x456557
cmp word [eax], 0x5c
jne 0x456552
lea ecx, [eax + 2]
cmp ecx, edx
je 0x456552
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x45653e
movzx eax, word [ecx]
cmp eax, 0x28
je 0x456550
cmp eax, 0x29
je 0x456550
mov eax, dword [esi]
test dl, 0x10
jne 0x456552
movzx edx, word [ecx]
cmp edx, 0x7b
je 0x456550
cmp edx, 0x7d
jne 0x456552
mov eax, ecx
add eax, 2
mov dword [esi], eax
mov ecx, esi
call fcn.00454f60
mov ecx, esi
call fcn.004577d0
cmp dword [esi + 0x4c], 0x5d
jne 0x456808
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x4567ce
cmp word [eax], 0x5c
jne 0x4565b3
lea ecx, [eax + 2]
cmp ecx, edx
je 0x4565b3
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x45659f
movzx eax, word [ecx]
cmp eax, 0x28
je 0x4565b1
cmp eax, 0x29
je 0x4565b1
mov eax, dword [esi]
test dl, 0x10
jne 0x4565b3
movzx edx, word [ecx]
cmp edx, 0x7b
je 0x4565b1
cmp edx, 0x7d
jne 0x4565b3
mov eax, ecx
add eax, 2
mov dword [esi], eax
jmp 0x4567ce
cmp eax, 0x28
jne 0x45667e
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x45660b
cmp word [eax], 0x5c
jne 0x456606
lea ecx, [eax + 2]
cmp ecx, edx
je 0x456606
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x4565f2
movzx eax, word [ecx]
cmp eax, 0x28
je 0x456604
cmp eax, 0x29
je 0x456604
mov eax, dword [esi]
test dl, 0x10
jne 0x456606
movzx edx, word [ecx]
cmp edx, 0x7b
je 0x456604
cmp edx, 0x7d
jne 0x456606
mov eax, ecx
add eax, 2
mov dword [esi], eax
mov ecx, esi
call fcn.00454f60
mov ecx, esi
call fcn.00457a70
cmp dword [esi + 0x4c], 0x29
mov bl, al
jne 0x4567fa
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x45666a
cmp word [eax], 0x5c
jne 0x456665
lea ecx, [eax + 2]
cmp ecx, edx
je 0x456665
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x456651
movzx eax, word [ecx]
cmp eax, 0x28
je 0x456663
cmp eax, 0x29
je 0x456663
mov eax, dword [esi]
test dl, 0x10
jne 0x456665
movzx edx, word [ecx]
cmp edx, 0x7b
je 0x456663
cmp edx, 0x7d
jne 0x456665
mov eax, ecx
add eax, 2
mov dword [esi], eax
mov ecx, esi
call fcn.00454f60
test bl, bl
je 0x4567df
jmp 0x4567d5
cmp eax, 0x5e
jne 0x4566da
push 2
lea ecx, [esi + 0x24]
call fcn.00456810
mov eax, dword [esi]
mov ecx, dword [edi]
cmp eax, ecx
je 0x4566ce
cmp word [eax], 0x5c
jne 0x4566cb
add eax, 2
cmp eax, ecx
je 0x4566cb
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x4566b7
movzx edx, word [eax]
cmp edx, 0x28
je 0x4566c9
cmp edx, 0x29
je 0x4566c9
test cl, 0x10
jne 0x4566cb
movzx ecx, word [eax]
cmp ecx, 0x7b
je 0x4566c9
cmp ecx, 0x7d
jne 0x4566cb
mov dword [esi], eax
add dword [esi], 2
mov ecx, esi
call fcn.00454f60
jmp 0x4567df
cmp eax, 0x24
jne 0x456736
push 3
lea ecx, [esi + 0x24]
call fcn.00456810
mov eax, dword [esi]
mov ecx, dword [edi]
cmp eax, ecx
je 0x45672a
cmp word [eax], 0x5c
jne 0x456727
add eax, 2
cmp eax, ecx
je 0x456727
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x456713
movzx edx, word [eax]
cmp edx, 0x28
je 0x456725
cmp edx, 0x29
je 0x456725
test cl, 0x10
jne 0x456727
movzx ecx, word [eax]
cmp ecx, 0x7b
je 0x456725
cmp ecx, 0x7d
jne 0x456727
mov dword [esi], eax
add dword [esi], 2
mov ecx, esi
call fcn.00454f60
jmp 0x4567df
cmp eax, 0x2a
je 0x4567f3
cmp eax, 0x2b
je 0x4567f3
cmp eax, 0x3f
je 0x4567f3
cmp eax, 0x7b
je 0x4567f3
cmp eax, 0x7d
jne 0x45676e
test dword [esi + 0x50], 0x10000000
je 0x456801
jmp 0x456780
cmp eax, 0x5d
jne 0x456780
test dword [esi + 0x50], 0x10000000
je 0x456808
movzx eax, word [esi + 0x48]
lea ecx, [esi + 0x24]
push eax
call fcn.00457e30
mov eax, dword [esi]
mov ecx, dword [edi]
cmp eax, ecx
je 0x4567ce
cmp word [eax], 0x5c
jne 0x4567cb
add eax, 2
cmp eax, ecx
je 0x4567cb
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x4567b7
movzx edx, word [eax]
cmp edx, 0x28
je 0x4567c9
cmp edx, 0x29
je 0x4567c9
test cl, 0x10
jne 0x4567cb
movzx ecx, word [eax]
cmp ecx, 0x7b
je 0x4567c9
cmp ecx, 0x7d
jne 0x4567cb
mov dword [esi], eax
add dword [esi], 2
mov ecx, esi
call fcn.00454f60
mov ecx, esi
call fcn.00457c00
lea edi, [esi + 8]
mov eax, dword [esi + 0x4c]
mov cl, 1
cmp eax, 0xffffffff
jne 0x456356
pop edi
pop esi
mov al, cl
pop ebx
ret
push 0xa
call fcn.00454f50
push 5
call fcn.00454f50
push 6
call fcn.00454f50
push 4
call fcn.00454f50
int3