Function at 0x463e80
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffff8
push ebx
push esi
push edi
mov dword [ebp - 8], ecx
mov dword [ebp - 4], edx
mov ebx, eax
mov eax, dword [ebp - 4]
mov edi, dword [eax + 0x30]
jmp 0x4640b6
and eax, 0xff
cmp eax, 0x5c
jne 0x463ef0
inc ebx
mov dl, byte [ebx]
test dl, dl
jne 0x463eb5
or eax, 0xffffffff
jmp 0x4640c3
xor edx, edx
mov dl, byte [ebx]
cmp edx, 0x51
jne 0x4640b5
inc ebx
mov cl, byte [ebx]
test cl, cl
je 0x463ed2
xor eax, eax
mov al, byte [ebx]
cmp eax, 0x5c
jne 0x463ec2
mov dl, byte [ebx]
test dl, dl
jne 0x463ee0
or eax, 0xffffffff
jmp 0x4640c3
inc ebx
xor edx, edx
mov dl, byte [ebx]
cmp edx, 0x45
je 0x4640b5
jmp 0x463ec2
xor ecx, ecx
mov cl, byte [ebx]
cmp ecx, 0x5b
jne 0x463fc0
xor esi, esi
inc ebx
xor eax, eax
mov al, byte [ebx]
cmp eax, 0x5c
jne 0x463f32
xor edx, edx
mov dl, byte [ebx + 1]
cmp edx, 0x45
jne 0x463f16
inc ebx
jmp 0x463eff
push 3
push 0x48eb01
lea ecx, [ebx + 1]
push ecx
call sub.MSVCRT.DLL_strncmp
add esp, 0xc
test eax, eax
jne 0x463f42
add ebx, 3
jmp 0x463eff
test esi, esi
jne 0x463f42
cmp eax, 0x5e
jne 0x463f42
mov esi, 1
jmp 0x463eff
xor eax, eax
mov al, byte [ebx + 1]
cmp eax, 0x5d
jne 0x463fb1
mov edx, dword [ebp - 4]
test byte [edx + 0x43], 2
jne 0x463fb1
inc ebx
jmp 0x463fb1
mov al, byte [ebx]
test al, al
jne 0x463f66
or eax, 0xffffffff
jmp 0x4640c3
xor edx, edx
mov dl, al
cmp edx, 0x5c
jne 0x463fb1
inc ebx
mov cl, byte [ebx]
test cl, cl
jne 0x463f7e
or eax, 0xffffffff
jmp 0x4640c3
xor edx, edx
mov dl, byte [ebx]
cmp edx, 0x51
jne 0x463fb1
inc ebx
mov cl, byte [ebx]
test cl, cl
je 0x463f97
xor eax, eax
mov al, byte [ebx]
cmp eax, 0x5c
jne 0x463f87
mov dl, byte [ebx]
test dl, dl
jne 0x463fa5
or eax, 0xffffffff
jmp 0x4640c3
inc ebx
xor edx, edx
mov dl, byte [ebx]
cmp edx, 0x45
je 0x463fb1
jmp 0x463f87
inc ebx
xor ecx, ecx
mov cl, byte [ebx]
cmp ecx, 0x5d
jne 0x463f58
jmp 0x4640b5
mov eax, dword [ebp + 8]
test eax, eax
je 0x463ff2
xor edx, edx
mov dl, byte [ebx]
cmp edx, 0x23
jne 0x463ff2
inc ebx
mov cl, byte [ebx]
test cl, cl
je 0x463fe0
xor eax, eax
mov al, byte [ebx]
cmp eax, 0xa
jne 0x463fd0
mov dl, byte [ebx]
test dl, dl
jne 0x4640b5
or eax, 0xffffffff
jmp 0x4640c3
xor edx, edx
mov dl, byte [ebx]
cmp edx, 0x28
jne 0x4640b5
xor eax, eax
mov al, byte [ebx + 1]
cmp eax, 0x3f
je 0x46402c
cmp eax, 0x2a
je 0x46402c
inc edi
mov edx, dword [ebp - 8]
test edx, edx
jne 0x4640b5
mov ecx, dword [ebp + 0xc]
cmp edi, ecx
jne 0x4640b5
mov eax, edi
jmp 0x4640c3
add ebx, 2
xor edx, edx
mov dl, byte [ebx]
cmp edx, 0x50
jne 0x464039
inc ebx
xor eax, eax
mov al, byte [ebx]
cmp eax, 0x3c
jne 0x464056
xor edx, edx
mov dl, byte [ebx + 1]
cmp edx, 0x21
je 0x464056
xor ecx, ecx
mov cl, byte [ebx + 1]
cmp ecx, 0x3d
jne 0x46405b
cmp eax, 0x27
jne 0x4640b5
inc edi
mov eax, dword [ebp - 8]
test eax, eax
jne 0x46406e
mov edx, dword [ebp + 0xc]
cmp edi, edx
jne 0x46406e
mov eax, edi
jmp 0x4640c3
xor eax, eax
mov al, byte [ebx]
inc ebx
cmp eax, 0x3c
jne 0x46407d
mov eax, 0x3e
mov edx, ebx
jmp 0x464082
inc ebx
xor ecx, ecx
mov cl, byte [ebx]
cmp eax, ecx
jne 0x464081
mov eax, dword [ebp - 8]
test eax, eax
je 0x4640b5
mov ecx, ebx
sub ecx, edx
mov eax, dword [ebp + 0xc]
cmp ecx, eax
jne 0x4640b5
mov ecx, dword [ebp + 0xc]
push ecx
push edx
mov edx, dword [ebp - 8]
push edx
call sub.MSVCRT.DLL_strncmp
add esp, 0xc
test eax, eax
jne 0x4640b5
mov eax, edi
jmp 0x4640c3
inc ebx
mov al, byte [ebx]
test al, al
jne 0x463e9c
or eax, 0xffffffff
pop edi
pop esi
pop ebx
pop ecx
pop ecx
pop ebp
ret 8