Function at 0x1400c6320
Capabilities:
Parse credit card information

Disassembly:
push r14
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x60
mov rsi, rdx
cmp rdx, r8
je 0x1400c6471
mov rbx, r8
mov rdi, rcx
movsx eax, byte [rsi]
cmp eax, 0x5b
jg 0x1400c63eb
cmp eax, 0x24
je 0x1400c6429
cmp eax, 0x28
jne 0x1400c6471
lea rax, [rsi + 1]
cmp rax, rbx
je 0x1400c6471
cmp byte [rax], 0x3f
jne 0x1400c6471
lea rax, [rsi + 2]
cmp rax, rbx
je 0x1400c6471
movsx eax, byte [rax]
cmp eax, 0x21
je 0x1400c6522
cmp eax, 0x3d
jne 0x1400c6471
movaps xmm0, xmmword [0x140270690]
lea r14, [rsp + 0x20]
movaps xmmword [r14 + 0x30], xmm0
movaps xmmword [r14 + 0x20], xmm0
movaps xmmword [r14 + 0x10], xmm0
movaps xmmword [r14], xmm0
mov rcx, r14
call fcn.1401bfb90
mov eax, dword [rdi + 0x18]
mov dword [r14 + 0x18], eax
add rsi, 3
mov rcx, r14
mov rdx, rsi
mov r8, rbx
call fcn.1401dfe50
mov rsi, rax
mov ebp, dword [r14 + 0x1c]
mov r9d, dword [rdi + 0x1c]
mov rcx, rdi
mov rdx, r14
xor r8d, r8d
jmp 0x1400c6576
cmp eax, 0x5c
je 0x1400c647f
cmp eax, 0x5e
jne 0x1400c6471
mov ecx, 0x18
call fcn.14017b1d8
mov rcx, qword [rdi + 0x38]
mov rdx, qword [rcx + 8]
mov r8d, 0x7f0
and r8d, dword [rdi + 0x18]
cmp r8d, 0x600
mov qword [rax + 8], rdx
lea rdx, [0x14026b9e0]
jmp 0x1400c6457
mov ecx, 0x18
call fcn.14017b1d8
mov rcx, qword [rdi + 0x38]
mov rdx, qword [rcx + 8]
mov r8d, 0x7f0
and r8d, dword [rdi + 0x18]
cmp r8d, 0x600
mov qword [rax + 8], rdx
lea rdx, [0x14026ba00]
mov qword [rax], rdx
sete byte [rax + 0x10]
mov qword [rcx + 8], rax
mov rax, qword [rdi + 0x38]
mov rax, qword [rax + 8]
mov qword [rdi + 0x38], rax
inc rsi
mov rax, rsi
add rsp, 0x60
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
ret
lea rax, [rsi + 1]
cmp rax, rbx
je 0x1400c6471
movzx eax, byte [rax]
cmp eax, 0x42
je 0x1400c64ce
cmp eax, 0x62
jne 0x1400c6471
mov ecx, 0x30
call fcn.14017b1d8
mov rcx, qword [rdi + 0x38]
mov rcx, qword [rcx + 8]
mov qword [rax + 8], rcx
lea rcx, [0x14026ba20]
mov qword [rax], rcx
mov rcx, qword [rdi]
mov qword [rax + 0x10], rcx
lock inc dword [rcx + 8]
movups xmm0, xmmword [rdi + 8]
movups xmmword [rax + 0x18], xmm0
mov byte [rax + 0x28], 0
jmp 0x1400c6505
mov ecx, 0x30
call fcn.14017b1d8
mov rcx, qword [rdi + 0x38]
mov rcx, qword [rcx + 8]
mov qword [rax + 8], rcx
lea rcx, [0x14026ba20]
mov qword [rax], rcx
mov rcx, qword [rdi]
mov qword [rax + 0x10], rcx
lock inc dword [rcx + 8]
movups xmm0, xmmword [rdi + 8]
movups xmmword [rax + 0x18], xmm0
mov byte [rax + 0x28], 1
mov rcx, qword [rdi + 0x38]
mov qword [rcx + 8], rax
mov rax, qword [rdi + 0x38]
mov rax, qword [rax + 8]
mov qword [rdi + 0x38], rax
add rsi, 2
jmp 0x1400c6471
movaps xmm0, xmmword [0x140270690]
lea r14, [rsp + 0x20]
movaps xmmword [r14 + 0x30], xmm0
movaps xmmword [r14 + 0x20], xmm0
movaps xmmword [r14 + 0x10], xmm0
movaps xmmword [r14], xmm0
mov rcx, r14
call fcn.1401bfb90
mov eax, dword [rdi + 0x18]
mov dword [r14 + 0x18], eax
add rsi, 3
mov rcx, r14
mov rdx, rsi
mov r8, rbx
call fcn.1401dfe50
mov rsi, rax
mov ebp, dword [r14 + 0x1c]
mov r9d, dword [rdi + 0x1c]
mov rcx, rdi
mov rdx, r14
mov r8b, 1
call fcn.1401bfbf0
add dword [rdi + 0x1c], ebp
cmp rsi, rbx
je 0x1400c6600
cmp byte [rsi], 0x29
jne 0x1400c6600
mov rdi, qword [rsp + 0x50]
test rdi, rdi
je 0x1400c65c7
mov eax, 0xffffffff
lock xadd dword [rdi + 8], eax
test eax, eax
jne 0x1400c65c7
mov rax, qword [rdi]
mov rax, qword [rax + 8]
mov rcx, rdi
call qword [case.0x1401e7f70.0]
mov eax, dword [rdi + 0x10]
test eax, eax
jne 0x1400c65f0
mov rax, qword [rdi]
mov rax, qword [rax + 0x18]
mov rcx, rdi
call qword [case.0x1401e7f70.0]
mov rcx, qword [rsp + 0x20]
mov eax, 0xffffffff
lock xadd dword [rcx + 8], eax
test eax, eax
jne 0x1400c646e
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x1401e7f70.0]
jmp 0x1400c646e
mov eax, 0xffffffff
lock xadd dword [rdi + 0x10], eax
test eax, eax
jne 0x1400c65c7
jmp 0x1400c65b7
call fcn.1401be9c0
int3