Function at 0x4052c0
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 0x405336
cmp cl, 0x33
je 0x405336
lea edx, [ecx - 0x50]
cmp dl, 7
ja 0x405301
push 1
push esi
push edi
call fcn.0041b9b0
add esp, 0xc
inc ebx
inc esi
inc edi
jmp 0x40534b
cmp cl, 0x64
jne 0x40531f
cmp al, 0xa1
je 0x4054b7
cmp al, 0x8b
je 0x405486
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
cmp cl, 0x68
je 0x405451
cmp cl, 0x6a
je 0x405336
cmp cl, 0x75
jne 0x40535c
cmp al, 0x23
jne 0x405316
push 2
push esi
push edi
call fcn.0041b9b0
add esp, 0xc
add ebx, 2
add esi, 2
add edi, 2
cmp ebx, 5
jae 0x405530
mov edx, dword [ebp + 8]
jmp 0x4052d1
cmp cl, 0x81
jne 0x40537c
cmp al, 0x3d
jne 0x405316
push 0xa
push esi
push edi
call fcn.0041b9b0
add esp, 0xc
add ebx, 0xa
add esi, 0xa
add edi, 0xa
jmp 0x40534b
cmp cl, 0x83
jne 0x405390
sub al, 0x78
cmp al, 7
ja 0x4054f7
jmp 0x4054d5
cmp cl, 0x8b
jne 0x40541a
cmp al, 0x45
je 0x4054f7
cmp al, 0x4d
je 0x4054f7
cmp al, 0x55
je 0x4054f7
cmp al, 0x5d
je 0x4054f7
cmp al, 0x75
je 0x4054f7
cmp al, 8
je 0x405336
cmp al, 0x10
je 0x405336
cmp al, 0xc2
je 0x405336
cmp al, 0xca
je 0x405336
cmp al, 0xd9
je 0x405336
cmp al, 0xec
je 0x405336
cmp al, 0xf1
je 0x405336
cmp al, 0xf2
je 0x405336
cmp al, 0xf9
je 0x405336
cmp al, 0xfa
je 0x405336
cmp al, 0xff
jne 0x405424
jmp 0x405336
cmp cl, 0x8d
je 0x405424
cmp cl, 0x89
jne 0x405436
cmp al, 0x44
je 0x40542c
cmp al, 0x4c
jne 0x405436
cmp byte [ebp - 1], 0x24
je 0x4054d5
cmp cl, 0x8d
jne 0x405442
cmp al, 0x45
jmp 0x4054f1
cmp cl, 0xa1
je 0x405451
cmp cl, 0xb8
je 0x405451
cmp cl, 0xba
jne 0x40546b
push 5
push esi
push edi
call fcn.0041b9b0
add esp, 0xc
add ebx, 5
add esi, 5
add edi, 5
jmp 0x40534b
cmp cl, 0xe8
je 0x405511
cmp cl, 0xe9
je 0x405566
cmp cl, 0xf6
jne 0x4054aa
cmp al, 5
jne 0x4054a0
push 7
push esi
push edi
call fcn.0041b9b0
add esp, 0xc
add ebx, 7
add esi, 7
add edi, 7
jmp 0x40534b
cmp al, 0x46
jne 0x405316
jmp 0x4054d5
cmp cl, 0xff
jne 0x405316
cmp al, 0x25
jne 0x4054d1
push 6
push esi
push edi
call fcn.0041b9b0
add esp, 0xc
add ebx, 6
add esi, 6
add edi, 6
jmp 0x40534b
cmp al, 0x74
jne 0x4054ef
push 4
push esi
push edi
call fcn.0041b9b0
add esp, 0xc
add ebx, 4
add esi, 4
add edi, 4
jmp 0x40534b
cmp al, 0x75
jne 0x405316
push 3
push esi
push edi
call fcn.0041b9b0
add esp, 0xc
add ebx, 3
add esi, 3
add edi, 3
jmp 0x40534b
test ebx, ebx
jne 0x405316
mov eax, dword [ebp + 8]
mov ecx, dword [ebp + 0xc]
push 5
push eax
push ecx
call fcn.0041b9b0
add esp, 0xc
mov ebx, 5
lea ecx, [ebx - 5]
xor eax, eax
test ecx, ecx
je 0x40554e
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 0x405541
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 0x405316
mov edx, dword [ebp + 8]
mov eax, dword [ebp + 0xc]
push 5
push edx
push eax
jmp 0x405523