Function at 0x14007df80
Capabilities:
Parse credit card information

Disassembly:
push rbp
push r14
push rsi
push rdi
push rbx
sub rsp, 0x70
lea rbp, [rsp + 0x70]
mov qword [rbp - 8], 0xfffffffffffffffe
mov rsi, rdx
cmp rdx, r8
je 0x14007e0dd
mov rbx, r8
mov rdi, rcx
movzx eax, word [rsi]
cmp eax, 0x5b
jg 0x14007e056
cmp eax, 0x24
je 0x14007e094
cmp eax, 0x28
jne 0x14007e0dd
lea rax, [rsi + 2]
cmp rax, rbx
je 0x14007e0dd
cmp word [rax], 0x3f
jne 0x14007e0dd
lea rax, [rsi + 4]
cmp rax, rbx
je 0x14007e0dd
movzx eax, word [rax]
cmp eax, 0x21
je 0x14007e196
cmp eax, 0x3d
jne 0x14007e0dd
lea r14, [rbp - 0x48]
mov rcx, r14
call fcn.14007e950
mov eax, dword [rdi + 0x18]
mov dword [rbp - 0x30], eax
add rsi, 6
mov rcx, r14
mov rdx, rsi
mov r8, rbx
call fcn.14007d210
mov rsi, rax
mov r14d, dword [rbp - 0x2c]
mov r9d, dword [rdi + 0x1c]
lea rdx, [rbp - 0x48]
mov rcx, rdi
xor r8d, r8d
call fcn.14007e9e0
add dword [rdi + 0x1c], r14d
cmp rsi, rbx
je 0x14007e051
cmp word [rsi], 0x29
je 0x14007e1e3
call fcn.14007ea90
cmp eax, 0x5c
je 0x14007e0eb
cmp eax, 0x5e
jne 0x14007e0dd
mov ecx, 0x18
call fcn.14010e7c0
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, vtable.std::__u::__l_anchor_multiline_wchar_t_.0
jmp 0x14007e0c2
mov ecx, 0x18
call fcn.14010e7c0
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, vtable.std::__u::__r_anchor_multiline_wchar_t_.0
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
add rsi, 2
mov rax, rsi
add rsp, 0x70
pop rbx
pop rdi
pop rsi
pop r14
pop rbp
ret
lea rax, [rsi + 2]
cmp rax, rbx
je 0x14007e0dd
movzx eax, word [rax]
cmp eax, 0x42
je 0x14007e13e
cmp eax, 0x62
jne 0x14007e0dd
mov ecx, 0x30
call fcn.14010e7c0
mov rbx, rax
mov rax, qword [rdi + 0x38]
mov rax, qword [rax + 8]
mov qword [rbx + 8], rax
lea rax, vtable.std::__u::__word_boundary_wchar_t__struct_std::__u::regex_traits_wchar_t__.0
mov qword [rbx], rax
lea rcx, [rbx + 0x10]
mov rdx, rdi
call fcn.140050b90
movups xmm0, xmmword [rdi + 8]
movups xmmword [rbx + 0x18], xmm0
mov byte [rbx + 0x28], 0
jmp 0x14007e179
mov ecx, 0x30
call fcn.14010e7c0
mov rbx, rax
mov rax, qword [rdi + 0x38]
mov rax, qword [rax + 8]
mov qword [rbx + 8], rax
lea rax, vtable.std::__u::__word_boundary_wchar_t__struct_std::__u::regex_traits_wchar_t__.0
mov qword [rbx], rax
lea rcx, [rbx + 0x10]
mov rdx, rdi
call fcn.140050b90
movups xmm0, xmmword [rdi + 8]
movups xmmword [rbx + 0x18], xmm0
mov byte [rbx + 0x28], 1
mov rax, qword [rdi + 0x38]
mov qword [rax + 8], rbx
mov rax, qword [rdi + 0x38]
mov rax, qword [rax + 8]
mov qword [rdi + 0x38], rax
add rsi, 4
jmp 0x14007e0dd
lea r14, [rbp - 0x48]
mov rcx, r14
call fcn.14007e950
mov eax, dword [rdi + 0x18]
mov dword [rbp - 0x30], eax
add rsi, 6
mov rcx, r14
mov rdx, rsi
mov r8, rbx
call fcn.14007d210
mov rsi, rax
mov r14d, dword [rbp - 0x2c]
mov r9d, dword [rdi + 0x1c]
lea rdx, [rbp - 0x48]
mov rcx, rdi
mov r8b, 1
call fcn.14007e9e0
add dword [rdi + 0x1c], r14d
cmp rsi, rbx
je 0x14007e1f5
cmp word [rsi], 0x29
jne 0x14007e1f5
add rsi, 2
lea rcx, [rbp - 0x48]
call fcn.14007cf20
jmp 0x14007e0dd
call fcn.14007ea90
int3