Function at 0x4052e0
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
push ecx
mov edx, dword [ebp + 8]
push ebx
push esi
push edi
mov edi, dword [ebp + 0xc]
xor ebx, ebx
mov esi, edx
mov cl, byte [esi]
mov al, byte [edx + ebx + 1]
mov dl, byte [edx + ebx + 2]
mov byte [ebp - 1], dl
cmp cl, 0xb
je 0x405356
cmp cl, 0x33
je 0x405356
lea edx, [ecx - 0x50]
cmp dl, 7
ja 0x405321
push 1
push esi
push edi
call fcn.0041bdd0
add esp, 0xc
inc ebx
inc esi
inc edi
jmp 0x40536b
cmp cl, 0x64
jne 0x40533f
cmp al, 0xa1
je 0x4054d7
cmp al, 0x8b
je 0x4054a6
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
cmp cl, 0x68
je 0x405471
cmp cl, 0x6a
je 0x405356
cmp cl, 0x75
jne 0x40537c
cmp al, 0x23
jne 0x405336
push 2
push esi
push edi
call fcn.0041bdd0
add esp, 0xc
add ebx, 2
add esi, 2
add edi, 2
cmp ebx, 5
jae 0x405550
mov edx, dword [ebp + 8]
jmp 0x4052f1
cmp cl, 0x81
jne 0x40539c
cmp al, 0x3d
jne 0x405336
push 0xa
push esi
push edi
call fcn.0041bdd0
add esp, 0xc
add ebx, 0xa
add esi, 0xa
add edi, 0xa
jmp 0x40536b
cmp cl, 0x83
jne 0x4053b0
sub al, 0x78
cmp al, 7
ja 0x405517
jmp 0x4054f5
cmp cl, 0x8b
jne 0x40543a
cmp al, 0x45
je 0x405517
cmp al, 0x4d
je 0x405517
cmp al, 0x55
je 0x405517
cmp al, 0x5d
je 0x405517
cmp al, 0x75
je 0x405517
cmp al, 8
je 0x405356
cmp al, 0x10
je 0x405356
cmp al, 0xc2
je 0x405356
cmp al, 0xca
je 0x405356
cmp al, 0xd9
je 0x405356
cmp al, 0xec
je 0x405356
cmp al, 0xf1
je 0x405356
cmp al, 0xf2
je 0x405356
cmp al, 0xf9
je 0x405356
cmp al, 0xfa
je 0x405356
cmp al, 0xff
jne 0x405444
jmp 0x405356
cmp cl, 0x8d
je 0x405444
cmp cl, 0x89
jne 0x405456
cmp al, 0x44
je 0x40544c
cmp al, 0x4c
jne 0x405456
cmp byte [ebp - 1], 0x24
je 0x4054f5
cmp cl, 0x8d
jne 0x405462
cmp al, 0x45
jmp 0x405511
cmp cl, 0xa1
je 0x405471
cmp cl, 0xb8
je 0x405471
cmp cl, 0xba
jne 0x40548b
push 5
push esi
push edi
call fcn.0041bdd0
add esp, 0xc
add ebx, 5
add esi, 5
add edi, 5
jmp 0x40536b
cmp cl, 0xe8
je 0x405531
cmp cl, 0xe9
je 0x405586
cmp cl, 0xf6
jne 0x4054ca
cmp al, 5
jne 0x4054c0
push 7
push esi
push edi
call fcn.0041bdd0
add esp, 0xc
add ebx, 7
add esi, 7
add edi, 7
jmp 0x40536b
cmp al, 0x46
jne 0x405336
jmp 0x4054f5
cmp cl, 0xff
jne 0x405336
cmp al, 0x25
jne 0x4054f1
push 6
push esi
push edi
call fcn.0041bdd0
add esp, 0xc
add ebx, 6
add esi, 6
add edi, 6
jmp 0x40536b
cmp al, 0x74
jne 0x40550f
push 4
push esi
push edi
call fcn.0041bdd0
add esp, 0xc
add ebx, 4
add esi, 4
add edi, 4
jmp 0x40536b
cmp al, 0x75
jne 0x405336
push 3
push esi
push edi
call fcn.0041bdd0
add esp, 0xc
add ebx, 3
add esi, 3
add edi, 3
jmp 0x40536b
test ebx, ebx
jne 0x405336
mov eax, dword [ebp + 8]
mov ecx, dword [ebp + 0xc]
push 5
push eax
push ecx
call fcn.0041bdd0
add esp, 0xc
mov ebx, 5
lea ecx, [ebx - 5]
xor eax, eax
test ecx, ecx
je 0x40556e
mov edx, dword [ebp + 0xc]
mov esi, dword [ebp + 0x14]
add edx, ebx
mov byte [edx + eax], 0x46
mov byte [eax + esi], 0x4e
inc eax
cmp eax, ecx
jb 0x405561
mov eax, dword [ebp + 0x18]
add dword [eax], ecx
mov eax, dword [ebp + 0x10]
pop edi
add ebx, ecx
add dword [eax], ebx
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret
test ebx, ebx
jne 0x405336
mov edx, dword [ebp + 8]
mov eax, dword [ebp + 0xc]
push 5
push edx
push eax
jmp 0x405543