Function at 0x4256e0
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 0x425a5b
cmp eax, 0x7c
je 0x425a5b
cmp eax, 0x29
jne 0x42571d
cmp dword [esi + 0x10], 0
jne 0x425a5b
test dword [esi + 0x50], 0x10000000
je 0x425a68
jmp 0x4259ec
cmp eax, 0x2e
jne 0x425731
push 5
lea ecx, [esi + 0x24]
call fcn.00425ac0
jmp 0x4259f9
cmp eax, 0x5c
jne 0x42580d
mov eax, dword [esi]
mov edx, dword [esi + 8]
cmp eax, edx
je 0x425780
cmp word [eax], 0x5c
jne 0x42577b
lea ecx, [eax + 2]
mov eax, ecx
cmp ecx, edx
je 0x425779
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x425767
movzx edi, word [ecx]
cmp edi, 0x28
je 0x42577b
cmp edi, 0x29
je 0x42577b
test dl, 0x10
jne 0x425779
movzx ecx, word [ecx]
cmp ecx, 0x7b
je 0x42577b
cmp ecx, 0x7d
je 0x42577b
mov eax, dword [esi]
add eax, 2
mov dword [esi], eax
mov ecx, esi
call fcn.004220e0
test byte [esi + 0x50], 0x80
je 0x425801
movzx eax, word [esi + 0x48]
cmp eax, 0x62
jne 0x4257e9
push 4
lea ecx, [esi + 0x24]
call fcn.00425ac0
mov eax, dword [esi]
mov edx, dword [esi + 8]
cmp eax, edx
je 0x425996
cmp word [eax], 0x5c
jne 0x425991
lea ecx, [eax + 2]
mov eax, ecx
cmp ecx, edx
je 0x42598f
mov ebx, dword [esi + 0x50]
test bl, 8
jne 0x4257e1
movzx edx, word [ecx]
cmp edx, 0x28
je 0x425991
cmp edx, 0x29
je 0x425991
test bl, 0x10
jmp 0x425980
cmp eax, 0x42
jne 0x425801
push 4
lea ecx, [esi + 0x24]
call fcn.00425ac0
mov eax, dword [esi + 0x28]
xor dword [eax + 8], 1
jmp 0x4257a0
mov ecx, esi
call fcn.00427be0
jmp 0x425a46
cmp eax, 0x5b
jne 0x4258bf
mov eax, dword [esi]
mov edx, dword [esi + 8]
cmp eax, edx
je 0x42585c
cmp word [eax], 0x5c
jne 0x425857
lea ecx, [eax + 2]
mov eax, ecx
cmp ecx, edx
je 0x425855
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x425843
movzx edi, word [ecx]
cmp edi, 0x28
je 0x425857
cmp edi, 0x29
je 0x425857
test dl, 0x10
jne 0x425855
movzx ecx, word [ecx]
cmp ecx, 0x7b
je 0x425857
cmp ecx, 0x7d
je 0x425857
mov eax, dword [esi]
add eax, 2
mov dword [esi], eax
mov ecx, esi
call fcn.004220e0
lea ecx, [esi + 0x24]
call fcn.0042a870
mov eax, dword [esi + 0x4c]
cmp eax, 0x5e
jne 0x425884
mov eax, dword [esi + 0x28]
mov ecx, esi
xor dword [eax + 8], 1
call fcn.00425690
mov eax, dword [esi + 0x4c]
test dword [esi + 0x50], 0x20000000
je 0x4258a2
cmp eax, 0x5d
jne 0x4258a2
push eax
lea ecx, [esi + 0x24]
call fcn.0042a900
mov ecx, esi
call fcn.00425690
mov ecx, esi
call fcn.0042a400
cmp dword [esi + 0x4c], 0x5d
jne 0x425a76
mov ecx, esi
call fcn.00425690
jmp 0x425a46
cmp eax, 0x28
jne 0x425938
mov eax, dword [esi]
mov edx, dword [esi + 8]
cmp eax, edx
je 0x42590a
cmp word [eax], 0x5c
jne 0x425905
lea ecx, [eax + 2]
mov eax, ecx
cmp ecx, edx
je 0x425903
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x4258f1
movzx edi, word [ecx]
cmp edi, 0x28
je 0x425905
cmp edi, 0x29
je 0x425905
test dl, 0x10
jne 0x425903
movzx ecx, word [ecx]
cmp ecx, 0x7b
je 0x425905
cmp ecx, 0x7d
je 0x425905
mov eax, dword [esi]
add eax, 2
mov dword [esi], eax
mov ecx, esi
call fcn.004220e0
mov ecx, esi
call fcn.00427d30
cmp dword [esi + 0x4c], 0x29
mov bl, al
jne 0x425a68
mov ecx, esi
call fcn.00425690
test bl, bl
je 0x425a4d
jmp 0x425a46
cmp eax, 0x5e
jne 0x425941
push 2
jmp 0x425948
cmp eax, 0x24
jne 0x4259a2
push 3
lea ecx, [esi + 0x24]
call fcn.00425ac0
mov edx, dword [esi + 8]
mov eax, dword [esi]
cmp eax, edx
je 0x425996
cmp word [eax], 0x5c
jne 0x425991
lea ecx, [eax + 2]
mov eax, ecx
cmp ecx, edx
je 0x42598f
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x42597d
movzx edi, word [ecx]
cmp edi, 0x28
je 0x425991
cmp edi, 0x29
je 0x425991
test dl, 0x10
jne 0x42598f
movzx ecx, word [ecx]
cmp ecx, 0x7b
je 0x425991
cmp ecx, 0x7d
je 0x425991
mov eax, dword [esi]
add eax, 2
mov dword [esi], eax
mov ecx, esi
call fcn.004220e0
jmp 0x425a4d
cmp eax, 0x2a
je 0x425a61
cmp eax, 0x2b
je 0x425a61
cmp eax, 0x3f
je 0x425a61
cmp eax, 0x7b
je 0x425a61
cmp eax, 0x7d
jne 0x4259da
test dword [esi + 0x50], 0x10000000
je 0x425a6f
jmp 0x4259ec
cmp eax, 0x5d
jne 0x4259ec
test dword [esi + 0x50], 0x10000000
je 0x425a76
movzx eax, word [esi + 0x48]
lea ecx, [esi + 0x24]
push eax
call fcn.00427f90
mov edx, dword [esi + 8]
mov eax, dword [esi]
cmp eax, edx
je 0x425a3f
cmp word [eax], 0x5c
jne 0x425a3a
lea ecx, [eax + 2]
mov eax, ecx
cmp ecx, edx
je 0x425a38
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x425a26
movzx edi, word [ecx]
cmp edi, 0x28
je 0x425a3a
cmp edi, 0x29
je 0x425a3a
test dl, 0x10
jne 0x425a38
movzx ecx, word [ecx]
cmp ecx, 0x7b
je 0x425a3a
cmp ecx, 0x7d
je 0x425a3a
mov eax, dword [esi]
add eax, 2
mov dword [esi], eax
mov ecx, esi
call fcn.004220e0
mov ecx, esi
call fcn.00427e30
mov eax, dword [esi + 0x4c]
mov cl, 1
cmp eax, 0xffffffff
jne 0x4256f3
pop edi
pop esi
mov al, cl
pop ebx
ret
push 0xa
call fcn.004220d0
push 5
call fcn.004220d0
push 6
call fcn.004220d0
push 4
call fcn.004220d0
int3