Function at 0x140002ac0
Capabilities:
Parse credit card information

Disassembly:
push r15
push r14
push rsi
push rdi
push rbx
sub rsp, 0x60
cmp rdx, r8
je 0x140002c28
movzx eax, byte [rdx]
cmp eax, 0x5b
jg 0x140002b92
cmp eax, 0x24
je 0x140002bda
cmp eax, 0x28
jne 0x140002c28
lea rax, [rdx + 1]
cmp rax, r8
je 0x140002c28
cmp byte [rax], 0x3f
jne 0x140002c28
lea rax, [rdx + 2]
cmp rax, r8
je 0x140002c28
movzx eax, byte [rax]
cmp eax, 0x21
je 0x140002cf4
cmp eax, 0x3d
jne 0x140002c28
lea rsi, [rsp + 0x20]
mov r15, rcx
mov rcx, rsi
mov rdi, rdx
mov rbx, r8
call fcn.140003390
mov r14, r15
mov eax, dword [r15 + 0x18]
mov dword [rsp + 0x38], eax
add rdi, 3
mov rcx, rsi
mov rdx, rdi
mov rdi, rbx
mov r8, rbx
call fcn.140001d00
mov rsi, rax
mov ebx, dword [rsp + 0x3c]
mov rcx, r14
mov r9d, dword [r14 + 0x1c]
lea rdx, [rsp + 0x20]
xor r8d, r8d
call fcn.140003400
add dword [r14 + 0x1c], ebx
cmp rsi, rdi
je 0x140002b8d
cmp byte [rsi], 0x29
je 0x140002d53
call fcn.1400034b0
cmp eax, 0x5c
je 0x140002c37
cmp eax, 0x5e
jne 0x140002c28
mov rdi, rcx
mov ecx, 0x18
mov rsi, rdx
call fcn.14000f4f0
mov rdx, rsi
mov ecx, 0x5f0
and ecx, dword [rdi + 0x18]
cmp ecx, 0x400
mov rcx, qword [rdi + 0x38]
mov r8, qword [rcx + 8]
mov qword [rax + 8], r8
lea r8, [0x14007d550]
jmp 0x140002c0e
mov rdi, rcx
mov ecx, 0x18
mov rsi, rdx
call fcn.14000f4f0
mov rdx, rsi
mov ecx, 0x5f0
and ecx, dword [rdi + 0x18]
cmp ecx, 0x400
mov rcx, qword [rdi + 0x38]
mov r8, qword [rcx + 8]
mov qword [rax + 8], r8
lea r8, [0x14007d5c0]
mov qword [rax], r8
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 rdx
mov rax, rdx
add rsp, 0x60
pop rbx
pop rdi
pop rsi
pop r14
pop r15
ret
lea rax, [rdx + 1]
cmp rax, r8
je 0x140002c28
movzx eax, byte [rax]
cmp eax, 0x42
je 0x140002c93
cmp eax, 0x62
jne 0x140002c28
mov rsi, rcx
mov ecx, 0x30
mov rbx, rdx
call fcn.14000f4f0
mov rdi, rax
mov rax, qword [rsi + 0x38]
mov rax, qword [rax + 8]
mov qword [rdi + 8], rax
lea rax, [0x14007d630]
mov qword [rdi], rax
lea rcx, [rdi + 0x10]
mov rdx, rsi
call fcn.14003bdd0
mov rdx, rbx
movups xmm0, xmmword [rsi + 8]
movups xmmword [rdi + 0x18], xmm0
mov byte [rdi + 0x28], 0
jmp 0x140002cd7
mov rsi, rcx
mov ecx, 0x30
mov rbx, rdx
call fcn.14000f4f0
mov rdi, rax
mov rax, qword [rsi + 0x38]
mov rax, qword [rax + 8]
mov qword [rdi + 8], rax
lea rax, [0x14007d630]
mov qword [rdi], rax
lea rcx, [rdi + 0x10]
mov rdx, rsi
call fcn.14003bdd0
mov rdx, rbx
movups xmm0, xmmword [rsi + 8]
movups xmmword [rdi + 0x18], xmm0
mov byte [rdi + 0x28], 1
mov rax, qword [rsi + 0x38]
mov qword [rax + 8], rdi
mov rax, qword [rsi + 0x38]
mov rax, qword [rax + 8]
mov qword [rsi + 0x38], rax
add rdx, 2
jmp 0x140002c28
lea rsi, [rsp + 0x20]
mov r15, rcx
mov rcx, rsi
mov rdi, rdx
mov rbx, r8
call fcn.140003390
mov r14, r15
mov eax, dword [r15 + 0x18]
mov dword [rsp + 0x38], eax
add rdi, 3
mov rcx, rsi
mov rdx, rdi
mov rdi, rbx
mov r8, rbx
call fcn.140001d00
mov rsi, rax
mov ebx, dword [rsp + 0x3c]
mov rcx, r14
mov r9d, dword [r14 + 0x1c]
lea rdx, [rsp + 0x20]
mov r8b, 1
call fcn.140003400
add dword [r14 + 0x1c], ebx
cmp rsi, rdi
je 0x140002d68
cmp byte [rsi], 0x29
jne 0x140002d68
inc rsi
lea rcx, [rsp + 0x20]
call fcn.140001ba0
mov rdx, rsi
jmp 0x140002c28
call fcn.1400034b0
jmp 0x140002d73
mov rsi, rax
lea rcx, [rsp + 0x20]
call fcn.140001ba0
mov rcx, rsi
call fcn.140052210
int3