Function at 0x14002f660
Capabilities:
Parse credit card information

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
mov rbx, rcx
xor al, al
mov ecx, dword [rcx + 0x7c]
cmp ecx, 0xffffffff
je 0x14002f974
nop dword [rax + rax]
cmp ecx, 0x7c
je 0x14002f974
cmp ecx, 0x29
jne 0x14002f6b1
cmp dword [rbx + 0x1c], 0
jne 0x14002f974
cmp ecx, ecx
jne 0x14002f6b1
test dword [rbx + 0x80], 0x10000000
je 0x14002f98a
jmp 0x14002f922
cmp ecx, 0x2e
jne 0x14002f6c9
lea rcx, [rbx + 0x40]
mov edx, 5
call fcn.14002f540
jmp 0x14002f7a9
cmp ecx, 0x5c
jne 0x14002f78a
mov rcx, qword [rbx]
mov rax, qword [rbx + 0x10]
cmp rcx, rax
je 0x14002f71e
cmp byte [rcx], 0x5c
jne 0x14002f717
lea rdx, [rcx + 1]
cmp rdx, rax
je 0x14002f717
mov r8d, dword [rbx + 0x80]
test r8b, 8
jne 0x14002f702
movzx eax, byte [rdx]
sub al, 0x28
cmp al, 1
jbe 0x14002f711
test r8b, 0x10
jne 0x14002f717
movzx eax, byte [rdx]
sub al, 0x7b
test al, 0xfd
jne 0x14002f717
mov qword [rbx], rdx
mov rcx, rdx
lea rax, [rcx + 1]
mov qword [rbx], rax
mov rcx, rbx
call fcn.14002dfe0
test byte [rbx + 0x80], 0x80
je 0x14002f77d
movzx eax, byte [rbx + 0x78]
cmp al, 0x62
jne 0x14002f752
lea rcx, [rbx + 0x40]
mov edx, 4
call fcn.14002f540
mov rcx, rbx
call fcn.14002f600
jmp 0x14002f966
cmp al, 0x42
jne 0x14002f77d
lea rcx, [rbx + 0x40]
mov edx, 4
call fcn.14002f540
mov rax, qword [rbx + 0x48]
mov rcx, rbx
xor dword [rax + 0xc], 1
add rax, 0xc
call fcn.14002f600
jmp 0x14002f966
mov rcx, rbx
call fcn.140031530
jmp 0x14002f95e
cmp ecx, 0x5b
jne 0x14002f802
mov rcx, rbx
call fcn.14002f600
mov rcx, rbx
call fcn.140031400
cmp dword [rbx + 0x7c], 0x5d
jne 0x14002f9a0
mov rax, qword [rbx + 0x10]
mov rcx, qword [rbx]
cmp rcx, rax
je 0x14002f7f5
cmp byte [rcx], 0x5c
jne 0x14002f7ee
lea rdx, [rcx + 1]
cmp rdx, rax
je 0x14002f7ee
mov r8d, dword [rbx + 0x80]
test r8b, 8
jne 0x14002f7d9
movzx eax, byte [rdx]
sub al, 0x28
cmp al, 1
jbe 0x14002f7e8
test r8b, 0x10
jne 0x14002f7ee
movzx eax, byte [rdx]
sub al, 0x7b
test al, 0xfd
jne 0x14002f7ee
mov rcx, rdx
mov qword [rbx], rdx
lea rax, [rcx + 1]
mov qword [rbx], rax
mov rcx, rbx
call fcn.14002dfe0
jmp 0x14002f95e
cmp ecx, 0x28
jne 0x14002f8d6
mov rcx, qword [rbx]
mov rax, qword [rbx + 0x10]
cmp rcx, rax
je 0x14002f857
cmp byte [rcx], 0x5c
jne 0x14002f850
lea rdx, [rcx + 1]
cmp rdx, rax
je 0x14002f850
mov r8d, dword [rbx + 0x80]
test r8b, 8
jne 0x14002f83b
movzx eax, byte [rdx]
sub al, 0x28
cmp al, 1
jbe 0x14002f84a
test r8b, 0x10
jne 0x14002f850
movzx eax, byte [rdx]
sub al, 0x7b
test al, 0xfd
jne 0x14002f850
mov qword [rbx], rdx
mov rcx, rdx
lea rax, [rcx + 1]
mov qword [rbx], rax
mov rcx, rbx
call fcn.14002dfe0
mov rcx, rbx
call fcn.1400317a0
cmp dword [rbx + 0x7c], 0x29
movzx edi, al
jne 0x14002f9ab
mov rcx, qword [rbx]
mov rax, qword [rbx + 0x10]
cmp rcx, rax
je 0x14002f8c0
cmp byte [rcx], 0x5c
jne 0x14002f8b9
lea rdx, [rcx + 1]
cmp rdx, rax
je 0x14002f8b9
mov r8d, dword [rbx + 0x80]
test r8b, 8
jne 0x14002f8a4
movzx eax, byte [rdx]
sub al, 0x28
cmp al, 1
jbe 0x14002f8b3
test r8b, 0x10
jne 0x14002f8b9
movzx eax, byte [rdx]
sub al, 0x7b
test al, 0xfd
jne 0x14002f8b9
mov qword [rbx], rdx
mov rcx, rdx
lea rax, [rcx + 1]
mov qword [rbx], rax
mov rcx, rbx
call fcn.14002dfe0
test dil, dil
je 0x14002f966
jmp 0x14002f95e
cmp ecx, 0x5e
jne 0x14002f8f3
lea rcx, [rbx + 0x40]
mov edx, 2
call fcn.14002f540
mov rcx, rbx
call fcn.14002f600
jmp 0x14002f966
cmp ecx, 0x24
jne 0x14002f910
lea rcx, [rbx + 0x40]
mov edx, 3
call fcn.14002f540
mov rcx, rbx
call fcn.14002f600
jmp 0x14002f966
lea eax, [rcx - 0x2a]
cmp eax, 1
jbe 0x14002f97f
cmp ecx, 0x3f
je 0x14002f97f
cmp ecx, 0x7b
je 0x14002f97f
mov eax, dword [rbx + 0x7c]
cmp eax, 0x7d
jne 0x14002f938
test dword [rbx + 0x80], 0x10000000
je 0x14002f995
jmp 0x14002f949
cmp eax, 0x5d
jne 0x14002f949
test dword [rbx + 0x80], 0x10000000
je 0x14002f9b6
movzx edx, byte [rbx + 0x78]
lea rcx, [rbx + 0x40]
call fcn.140031c20
mov rcx, rbx
call fcn.14002f600
mov rcx, rbx
call fcn.140031910
mov ecx, dword [rbx + 0x7c]
mov al, 1
cmp ecx, 0xffffffff
jne 0x14002f680
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
mov edx, 0xa
call fcn.14002d9d0
int3
mov edx, 5
call fcn.14002d9d0
int3
mov edx, 6
call fcn.14002d9d0
int3
mov edx, 4
call fcn.14002d9d0
int3
mov edx, 5
call fcn.14002d9d0
int3
mov edx, 4
call fcn.14002d9d0
int3