Function at 0x402bf0
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x14
mov eax, dword [0x43e010]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
xorps xmm0, xmm0
push ebx
push esi
push edi
mov edi, edx
mov dword [ebp - 0x14], eax
push edi
movlpd qword [ebp - 0xc], xmm0
call dword [sym.imp.KERNEL32.dll_lstrlenA]
cmp eax, 0x27
je 0x402c27
or esi, 0xffffffff
jmp 0x4033ae
cmp byte [edi + 8], 0x2d
jne 0x4033a9
cmp byte [edi + 0xe], 0x2d
jne 0x4033a9
cmp byte [edi + 0x14], 0x2d
jne 0x4033a9
cmp byte [edi + 0x1a], 0x2d
jne 0x4033a9
mov dl, byte [edi + 0x17]
cmp dl, 0x31
jl 0x402c61
cmp dl, 0x39
jg 0x402c61
lea eax, [edx - 0x41]
jmp 0x402c6c
lea eax, [edx - 0x41]
cmp al, 5
ja 0x4033a2
mov ecx, 5
cmp cl, al
movsx eax, dl
mov dl, byte [edi + 0xd]
sbb ecx, ecx
and ecx, 7
add ecx, 0xffffffc9
add ecx, eax
lea eax, [edx - 0x30]
cmp al, 5
ja 0x40339b
mov al, byte [edi + 0x13]
movsx edx, dl
cmp ecx, 0xb
jge 0x402cab
cmp al, 0x41
jl 0x402ca1
cmp al, 0x4c
jle 0x402cb5
mov esi, 0xfffffffb
jmp 0x4033ae
sub al, 0x30
cmp al, 5
ja 0x403394
lea eax, [edx + edi]
xor edx, edx
mov dword [ebp - 0x10], eax
xor esi, esi
mov ax, word [eax - 0x15]
mov word [ebp - 0xc], ax
mov bl, byte [ebp + esi - 0xc]
lea eax, [ebx - 0x30]
cmp al, 9
ja 0x402cdb
shl edx, 4
sub dx, 0x30
jmp 0x402cf9
lea eax, [ebx - 0x41]
cmp al, 5
ja 0x402ceb
shl edx, 4
sub dx, 0x37
jmp 0x402cf9
lea eax, [ebx - 0x61]
cmp al, 5
ja 0x402d02
shl edx, 4
sub dx, 0x57
movzx eax, bl
add dx, ax
movzx edx, dx
inc esi
cmp esi, 2
jl 0x402cc7
mov esi, 0xfffffff5
cmp dx, 0x3b
jbe 0x402d1d
mov esi, 0xfffffff9
jmp 0x4033ae
mov eax, dword [ebp - 0x10]
mov dh, byte [edi + 0x26]
mov dl, byte [eax - 0x12]
mov bl, byte [eax - 0x10]
cmp dl, 0x41
jl 0x40338d
cmp dl, 0x58
jg 0x40338d
cmp dl, 0x47
jg 0x402d44
xor eax, eax
jmp 0x402d5b
cmp dl, 0x4d
jg 0x402d50
mov eax, 1
jmp 0x402d5b
xor eax, eax
cmp dl, 0x53
setg al
add eax, 2
sub bl, 0x30
cmp bl, 3
ja 0x403386
cmp dh, 0x44
jl 0x40337f
test eax, eax
jne 0x402ec6
cmp ecx, 1
jne 0x402d8c
cmp byte [edi + 2], 0x41
cmove esi, eax
cmp byte [edi], 0x35
jmp 0x403351
cmp ecx, 2
jne 0x402da2
xor eax, eax
cmp byte [edi + 2], 0x43
cmove esi, eax
cmp byte [edi], 0x33
jmp 0x403351
cmp ecx, 3
jne 0x402db8
xor eax, eax
cmp byte [edi + 2], 0x45
cmove esi, eax
cmp byte [edi], 0x31
jmp 0x403351
cmp ecx, 4
jne 0x402dce
xor eax, eax
cmp byte [edi + 2], 0x47
cmove esi, eax
cmp byte [edi], 0x39
jmp 0x403351
cmp ecx, 5
jne 0x402de4
xor eax, eax
cmp byte [edi + 2], 0x49
cmove esi, eax
cmp byte [edi], 0x37
jmp 0x403351
cmp ecx, 6
jne 0x402dfa
xor eax, eax
cmp byte [edi + 2], 0x4b
cmove esi, eax
cmp byte [edi], 0x44
jmp 0x403351
cmp ecx, 7
jne 0x402e10
xor eax, eax
cmp byte [edi + 2], 0x4d
cmove esi, eax
cmp byte [edi], 0x46
jmp 0x403351
cmp ecx, 8
jne 0x402e26
xor eax, eax
cmp byte [edi + 2], 0x4f
cmove esi, eax
cmp byte [edi], 0x48
jmp 0x403351
cmp ecx, 9
jne 0x402e3c
xor eax, eax
cmp byte [edi + 2], 0x51
cmove esi, eax
cmp byte [edi], 0x4a
jmp 0x403351
cmp ecx, 0xa
jne 0x402e52
xor eax, eax
cmp byte [edi + 2], 0x53
cmove esi, eax
cmp byte [edi], 0x4c
jmp 0x403351
cmp ecx, 0xb
jne 0x402e68
xor eax, eax
cmp byte [edi + 2], 0x31
cmove esi, eax
cmp byte [edi], 0x4e
jmp 0x403351
cmp ecx, 0xc
jne 0x402e78
xor eax, eax
cmp byte [edi + 2], 0x33
jmp 0x40334b
cmp ecx, 0xd
jne 0x402e8e
xor eax, eax
cmp byte [edi + 2], 0x35
cmove esi, eax
cmp byte [edi], 0x52
jmp 0x403186
cmp ecx, 0xe
jne 0x402e9e
xor eax, eax
cmp byte [edi + 2], 0x37
jmp 0x403180
cmp ecx, 0xf
jne 0x403378
xor eax, eax
cmp byte [edi + 2], 0x39
cmove esi, eax
cmp byte [edi], 0x56
jne 0x403378
mov eax, dword [ebp - 0x14]
lea esi, [ecx - 0xe]
mov dword [eax], ecx
jmp 0x4033ae
cmp eax, 1
jne 0x403026
cmp ecx, eax
jne 0x402ee4
xor eax, eax
cmp byte [edi + 2], 0x41
cmove esi, eax
cmp byte [edi], 0x53
jmp 0x403157
cmp ecx, 2
jne 0x402efa
xor eax, eax
cmp byte [edi + 2], 0x43
cmove esi, eax
cmp byte [edi], 0x55
jmp 0x403157
cmp ecx, 3
jne 0x402f10
xor eax, eax
cmp byte [edi + 2], 0x45
cmove esi, eax
cmp byte [edi], 0x35
jmp 0x403157
cmp ecx, 4
jne 0x402f26
xor eax, eax
cmp byte [edi + 2], 0x47
cmove esi, eax
cmp byte [edi], 0x37
jmp 0x403157
cmp ecx, 5
jne 0x402f3c
xor eax, eax
cmp byte [edi + 2], 0x49
cmove esi, eax
cmp byte [edi], 0x39
jmp 0x403157
cmp ecx, 6
jne 0x402f52
xor eax, eax
cmp byte [edi + 2], 0x4b
cmove esi, eax
cmp byte [edi], 0x31
jmp 0x403157
cmp ecx, 7
jne 0x402f68
xor eax, eax
cmp byte [edi + 2], 0x4d
cmove esi, eax
cmp byte [edi], 0x33
jmp 0x403157
cmp ecx, 8
jne 0x402f7e
xor eax, eax
cmp byte [edi + 2], 0x4f
cmove esi, eax
cmp byte [edi], 0x43
jmp 0x403157
cmp ecx, 9
jne 0x402f94
xor eax, eax
cmp byte [edi + 2], 0x51
cmove esi, eax
cmp byte [edi], 0x45
jmp 0x403157
cmp ecx, 0xa
jne 0x402faa
xor eax, eax
cmp byte [edi + 2], 0x53
cmove esi, eax
cmp byte [edi], 0x47
jmp 0x403157
cmp ecx, 0xb
jne 0x402fc0
xor eax, eax
cmp byte [edi + 2], 0x31
cmove esi, eax
cmp byte [edi], 0x49
jmp 0x403157
cmp ecx, 0xc
jne 0x402fd0
xor eax, eax
cmp byte [edi + 2], 0x33
jmp 0x403151
cmp ecx, 0xd
jne 0x402fe6
xor eax, eax
cmp byte [edi + 2], 0x35
cmove esi, eax
cmp byte [edi], 0x4d
jmp 0x403351
cmp ecx, 0xe
jne 0x402ffc
xor eax, eax
cmp byte [edi + 2], 0x37
cmove esi, eax
cmp byte [edi], 0x4f
jmp 0x403351
cmp ecx, 0xf
jne 0x403378
xor eax, eax
cmp byte [edi + 2], 0x39
cmove esi, eax
cmp byte [edi], 0x51
jne 0x403378
mov eax, dword [ebp - 0x14]
mov esi, 1
mov dword [eax], ecx
jmp 0x4033ae
cmp eax, 2
jne 0x40316c
cmp ecx, 1
jne 0x403042
xor eax, eax
cmp byte [edi + 2], 0x41
cmove esi, eax
cmp byte [edi], 0x4d
jmp 0x403011
cmp ecx, 2
jne 0x403055
xor eax, eax
cmp byte [edi + 2], 0x43
cmove esi, eax
cmp byte [edi], 0x4f
jmp 0x403011
cmp ecx, 3
jne 0x403062
xor eax, eax
cmp byte [edi + 2], 0x45
jmp 0x40300b
cmp ecx, 4
jne 0x403078
xor eax, eax
cmp byte [edi + 2], 0x47
cmove esi, eax
cmp byte [edi], 0x53
jmp 0x403157
cmp ecx, 5
jne 0x40308e
xor eax, eax
cmp byte [edi + 2], 0x49
cmove esi, eax
cmp byte [edi], 0x31
jmp 0x403157
cmp ecx, 6
jne 0x4030a4
xor eax, eax
cmp byte [edi + 2], 0x4b
cmove esi, eax
cmp byte [edi], 0x33
jmp 0x403157
cmp ecx, 7
jne 0x4030ba
xor eax, eax
cmp byte [edi + 2], 0x4d
cmove esi, eax
cmp byte [edi], 0x35
jmp 0x403157
cmp ecx, 8
jne 0x4030d0
xor eax, eax
cmp byte [edi + 2], 0x4f
cmove esi, eax
cmp byte [edi], 0x37
jmp 0x403157
cmp ecx, 9
jne 0x4030e3
xor eax, eax
cmp byte [edi + 2], 0x51
cmove esi, eax
cmp byte [edi], 0x39
jmp 0x403157
cmp ecx, 0xa
jne 0x4030f6
xor eax, eax
cmp byte [edi + 2], 0x53
cmove esi, eax
cmp byte [edi], 0x41
jmp 0x403157
cmp ecx, 0xb
jne 0x403109
xor eax, eax
cmp byte [edi + 2], 0x31
cmove esi, eax
cmp byte [edi], 0x43
jmp 0x403157
cmp ecx, 0xc
jne 0x40311c
xor eax, eax
cmp byte [edi + 2], 0x33
cmove esi, eax
cmp byte [edi], 0x45
jmp 0x403157
cmp ecx, 0xd
jne 0x40312f
xor eax, eax
cmp byte [edi + 2], 0x35
cmove esi, eax
cmp byte [edi], 0x47
jmp 0x403157
cmp ecx, 0xe
jne 0x403142
xor eax, eax
cmp byte [edi + 2], 0x37
cmove esi, eax
cmp byte [edi], 0x49
jmp 0x403157
cmp ecx, 0xf
jne 0x403378
xor eax, eax
cmp byte [edi + 2], 0x39
cmove esi, eax
cmp byte [edi], 0x4b
jne 0x403378
mov eax, dword [ebp - 0x14]
mov esi, 1
mov dword [eax], ecx
jmp 0x4033ae
cmp eax, 3
jne 0x403378
cmp ecx, 1
jne 0x40319b
xor eax, eax
cmp byte [edi + 2], 0x41
cmove esi, eax
cmp byte [edi], 0x54
jne 0x403378
mov eax, dword [ebp - 0x14]
mov esi, 1
mov dword [eax], ecx
jmp 0x4033ae
cmp ecx, 2
jne 0x4031bf
xor eax, eax
cmp byte [edi + 2], 0x43
cmove esi, eax
cmp byte [edi], 0x39
jne 0x403378
mov eax, dword [ebp - 0x14]
lea esi, [ecx - 1]
mov dword [eax], ecx
jmp 0x4033ae
cmp ecx, 3
jne 0x4031e3
xor eax, eax
cmp byte [edi + 2], 0x45
cmove esi, eax
cmp byte [edi], 0x37
jne 0x403378
mov eax, dword [ebp - 0x14]
lea esi, [ecx - 2]
mov dword [eax], ecx
jmp 0x4033ae
cmp ecx, 4
jne 0x403207
xor eax, eax
cmp byte [edi + 2], 0x47
cmove esi, eax
cmp byte [edi], 0x35
jne 0x403378
mov eax, dword [ebp - 0x14]
lea esi, [ecx - 3]
mov dword [eax], ecx
jmp 0x4033ae
cmp ecx, 5
jne 0x40322b
xor eax, eax
cmp byte [edi + 2], 0x49
cmove esi, eax
cmp byte [edi], 0x33
jne 0x403378
mov eax, dword [ebp - 0x14]
lea esi, [ecx - 4]
mov dword [eax], ecx
jmp 0x4033ae
cmp ecx, 6
jne 0x40324f
xor eax, eax
cmp byte [edi + 2], 0x4b
cmove esi, eax
cmp byte [edi], 0x31
jne 0x403378
mov eax, dword [ebp - 0x14]
lea esi, [ecx - 5]
mov dword [eax], ecx
jmp 0x4033ae
cmp ecx, 7
jne 0x403273
xor eax, eax
cmp byte [edi + 2], 0x4d
cmove esi, eax
cmp byte [edi], 0x42
jne 0x403378
mov eax, dword [ebp - 0x14]
lea esi, [ecx - 6]
mov dword [eax], ecx
jmp 0x4033ae
cmp ecx, 8
jne 0x403297
xor eax, eax
cmp byte [edi + 2], 0x4f
cmove esi, eax
cmp byte [edi], 0x44
jne 0x403378
mov eax, dword [ebp - 0x14]
lea esi, [ecx - 7]
mov dword [eax], ecx
jmp 0x4033ae
cmp ecx, 9
jne 0x4032bb
xor eax, eax
cmp byte [edi + 2], 0x51
cmove esi, eax
cmp byte [edi], 0x46
jne 0x403378
mov eax, dword [ebp - 0x14]
lea esi, [ecx - 8]
mov dword [eax], ecx
jmp 0x4033ae
cmp ecx, 0xa
jne 0x4032df
xor eax, eax
cmp byte [edi + 2], 0x53
cmove esi, eax
cmp byte [edi], 0x48
jne 0x403378
mov eax, dword [ebp - 0x14]
lea esi, [ecx - 9]
mov dword [eax], ecx
jmp 0x4033ae
cmp ecx, 0xb
jne 0x403303
xor eax, eax
cmp byte [edi + 2], 0x31
cmove esi, eax
cmp byte [edi], 0x4a
jne 0x403378
mov eax, dword [ebp - 0x14]
lea esi, [ecx - 0xa]
mov dword [eax], ecx
jmp 0x4033ae
cmp ecx, 0xc
jne 0x403323
xor eax, eax
cmp byte [edi + 2], 0x33
cmove esi, eax
cmp byte [edi], 0x4c
jne 0x403378
mov eax, dword [ebp - 0x14]
lea esi, [ecx - 0xb]
mov dword [eax], ecx
jmp 0x4033ae
cmp ecx, 0xd
jne 0x403340
xor eax, eax
cmp byte [edi + 2], 0x35
cmove esi, eax
cmp byte [edi], 0x4e
jne 0x403378
mov eax, dword [ebp - 0x14]
lea esi, [ecx - 0xc]
mov dword [eax], ecx
jmp 0x4033ae
cmp ecx, 0xe
jne 0x40335f
xor eax, eax
cmp byte [edi + 2], 0x37
cmove esi, eax
cmp byte [edi], 0x50
jne 0x403378
mov eax, dword [ebp - 0x14]
mov esi, 1
mov dword [eax], ecx
jmp 0x4033ae
cmp ecx, 0xf
jne 0x403378
xor eax, eax
cmp byte [edi + 2], 0x39
cmove esi, eax
cmp byte [edi], 0x52
mov eax, 1
cmove esi, eax
mov eax, dword [ebp - 0x14]
mov dword [eax], ecx
jmp 0x4033ae
mov esi, 0xfffffff6
jmp 0x4033ae
mov esi, 0xfffffff7
jmp 0x4033ae
mov esi, 0xfffffff8
jmp 0x4033ae
mov esi, 0xfffffffa
jmp 0x4033ae
mov esi, 0xfffffffc
jmp 0x4033ae
mov esi, 0xfffffffd
jmp 0x4033ae
mov esi, 0xfffffffe
mov ecx, dword [ebp - 4]
mov eax, esi
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0041d3d1
mov esp, ebp
pop ebp
ret 4