Function at 0x42d840
Capabilities:
Parse credit card information

Disassembly:
push ebx
push esi
push edi
mov edi, dword [esp + 0x14]
test edi, edi
jne 0x42d852
pop edi
pop esi
or eax, 0xffffffff
pop ebx
ret
mov esi, dword [edi]
mov ebx, dword [esp + 0x10]
mov dl, 1
mov al, byte [esi]
cmp al, 0x61
jl 0x42d868
cmp al, 0x7a
jle 0x42d964
cmp al, 0x41
jl 0x42d874
cmp al, 0x5a
jle 0x42d964
cmp al, 0x30
jl 0x42d880
cmp al, 0x39
jle 0x42d964
cmp al, 0x2d
je 0x42d964
cmp al, 0x5f
je 0x42d964
cmp al, 0x2e
je 0x42d964
cmp al, 0x21
je 0x42d964
cmp al, 0x7e
je 0x42d964
cmp al, 0x2a
je 0x42d964
cmp al, 0x27
je 0x42d964
cmp al, 0x28
je 0x42d964
cmp al, 0x29
je 0x42d964
cmp al, 0x25
jne 0x42d90e
mov cl, byte [esi + 1]
cmp cl, 0x30
jl 0x42d8d9
cmp cl, 0x39
jle 0x42d8ed
cmp cl, 0x61
jl 0x42d8e3
cmp cl, 0x66
jle 0x42d8ed
cmp cl, 0x41
jl 0x42d90e
cmp cl, 0x46
jg 0x42d90e
mov cl, byte [esi + 2]
cmp cl, 0x30
jl 0x42d8fa
cmp cl, 0x39
jle 0x42d964
cmp cl, 0x61
jl 0x42d904
cmp cl, 0x66
jle 0x42d964
cmp cl, 0x41
jl 0x42d90e
cmp cl, 0x46
jle 0x42d964
cmp al, 0x3b
je 0x42d964
cmp al, 0x3f
je 0x42d964
cmp al, 0x3a
je 0x42d964
cmp al, 0x40
je 0x42d964
cmp al, 0x26
je 0x42d964
cmp al, 0x3d
je 0x42d964
cmp al, 0x2b
je 0x42d964
cmp al, 0x24
je 0x42d964
cmp al, 0x2c
je 0x42d964
test ebx, ebx
je 0x42d95b
test byte [ebx + 0x24], dl
je 0x42d95b
cmp al, 0x7b
je 0x42d964
cmp al, 0x7d
je 0x42d964
cmp al, 0x7c
je 0x42d964
cmp al, 0x5c
je 0x42d964
cmp al, 0x5e
je 0x42d964
cmp al, 0x5b
je 0x42d964
cmp al, 0x5d
je 0x42d964
cmp al, 0x60
je 0x42d964
pop edi
pop esi
mov eax, 3
pop ebx
ret
cmp al, 0x25
jne 0x42d96d
add esi, 3
jmp 0x42d96e
inc esi
mov al, byte [esi]
cmp al, 0x61
jl 0x42d97c
cmp al, 0x7a
jle 0x42da73
cmp al, 0x41
jl 0x42d988
cmp al, 0x5a
jle 0x42da73
cmp al, 0x30
jl 0x42d994
cmp al, 0x39
jle 0x42da73
cmp al, 0x2d
je 0x42da73
cmp al, 0x5f
je 0x42da73
cmp al, 0x2e
je 0x42da73
cmp al, 0x21
je 0x42da73
cmp al, 0x7e
je 0x42da73
cmp al, 0x2a
je 0x42da73
cmp al, 0x27
je 0x42da73
cmp al, 0x28
je 0x42da73
cmp al, 0x29
je 0x42da73
cmp al, 0x25
jne 0x42da22
mov cl, byte [esi + 1]
cmp cl, 0x30
jl 0x42d9ed
cmp cl, 0x39
jle 0x42da01
cmp cl, 0x61
jl 0x42d9f7
cmp cl, 0x66
jle 0x42da01
cmp cl, 0x41
jl 0x42da22
cmp cl, 0x46
jg 0x42da22
mov cl, byte [esi + 2]
cmp cl, 0x30
jl 0x42da0e
cmp cl, 0x39
jle 0x42da73
cmp cl, 0x61
jl 0x42da18
cmp cl, 0x66
jle 0x42da73
cmp cl, 0x41
jl 0x42da22
cmp cl, 0x46
jle 0x42da73
cmp al, 0x3b
je 0x42da73
cmp al, 0x2f
je 0x42da73
cmp al, 0x3f
je 0x42da73
cmp al, 0x3a
je 0x42da73
cmp al, 0x40
je 0x42da73
cmp al, 0x26
je 0x42da73
cmp al, 0x3d
je 0x42da73
cmp al, 0x2b
je 0x42da73
cmp al, 0x24
je 0x42da73
cmp al, 0x2c
je 0x42da73
cmp al, 0x5b
je 0x42da73
cmp al, 0x5d
je 0x42da73
test ebx, ebx
je 0x42dacc
test byte [ebx + 0x24], dl
je 0x42da83
cmp al, 0x7b
je 0x42da73
cmp al, 0x7d
je 0x42da73
cmp al, 0x7c
je 0x42da73
cmp al, 0x5c
je 0x42da73
cmp al, 0x5e
je 0x42da73
cmp al, 0x60
jne 0x42da83
cmp al, 0x25
jne 0x42d96d
add esi, 3
jmp 0x42d96e
test ebx, ebx
je 0x42dacc
mov eax, dword [ebx + 4]
test eax, eax
je 0x42da98
push eax
call dword [0x447940]
add esp, 4
test byte [ebx + 0x24], 2
mov eax, dword [edi]
je 0x42dab9
mov ecx, esi
sub ecx, eax
push ecx
push eax
call fcn.004105f0
add esp, 8
mov dword [ebx + 4], eax
mov dword [edi], esi
xor eax, eax
pop edi
pop esi
pop ebx
ret
mov edx, esi
push 0
sub edx, eax
push edx
push eax
call fcn.0042d150
add esp, 0xc
mov dword [ebx + 4], eax
mov dword [edi], esi
pop edi
pop esi
xor eax, eax
pop ebx
ret