Function at 0x14004e0f0
Capabilities:
Parse credit card information

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
mov qword [rsp + 0x20], r12
push rbp
push r14
push r15
mov rbp, rsp
sub rsp, 0x40
mov rbx, rcx
call fcn.14004ddf0
mov qword [rcx + 0x128], rdx
mov qword [rcx + 0x130], rdx
lea rcx, [rdx + r8]
mov qword [rbx + 0x138], rcx
cmp rdx, rcx
jae 0x14004e422
mov r8, rdx
xor r12d, r12d
cmp byte [rdx], 0x3c
jne 0x14004e3ba
lea rdx, [rbp - 0x20]
mov rcx, rbx
mov r15d, r12d
mov r14d, r12d
call fcn.14004e560
cmp eax, 0x43
je 0x14004e408
mov rcx, rbx
cmp eax, 0x44
jne 0x14004e189
mov rdx, qword [rbp - 0x20]
mov r8, qword [rbp - 0x18]
add rdx, 9
sub r8, 3
mov qword [rbp - 0x20], rdx
mov qword [rbp - 0x18], r8
jmp 0x14004e400
lea rdx, [rbp - 0x20]
call fcn.14004e560
cmp eax, 0x2f
jne 0x14004e1da
lea rdx, [rbp - 0x20]
mov rcx, rbx
call fcn.14004e560
cmp eax, 0x49
jne 0x14004e44c
mov rdx, qword [rbp - 0x20]
mov rcx, rbx
mov r8, qword [rbp - 0x18]
sub r8, rdx
call fcn.14004df70
test eax, eax
jne 0x14004e466
lea rdx, [rbp - 0x20]
mov rcx, rbx
call fcn.14004e560
mov edi, eax
jmp 0x14004e391
cmp eax, 0x21
jne 0x14004e1f3
lea rdx, [rbp - 0x20]
mov rcx, rbx
call fcn.14004e560
mov r14d, 1
jmp 0x14004e20a
cmp eax, 0x3f
jne 0x14004e20a
lea rdx, [rbp - 0x20]
mov rcx, rbx
call fcn.14004e560
mov r15d, 1
cmp eax, 0x49
jne 0x14004e4af
mov rdx, qword [rbp - 0x20]
mov rcx, rbx
mov r8, qword [rbp - 0x18]
sub r8, rdx
mov dword [rbx + 4], r12d
call fcn.14004de00
test eax, eax
jne 0x14004e466
lea rdx, [rbp - 0x20]
mov rcx, rbx
call fcn.14004e560
mov edi, eax
cmp eax, 0x49
je 0x14004e257
cmp eax, 0x53
jne 0x14004e31e
test r14d, r14d
je 0x14004e346
lea rdx, [rbp - 0x10]
mov rcx, rbx
call fcn.14004e560
mov edi, eax
cmp eax, 0x3d
jne 0x14004e2e7
lea rdx, [rbp - 0x10]
mov rcx, rbx
call fcn.14004e560
cmp eax, 0x49
je 0x14004e284
cmp eax, 0x53
jne 0x14004e46d
mov rsi, qword [rbp - 0x20]
mov rcx, rbx
mov rdi, qword [rbp - 0x18]
mov rdx, rsi
sub rdi, rsi
mov dword [rbx + 4], 1
mov r8, rdi
call fcn.14004de00
test eax, eax
jne 0x14004e466
mov rdx, qword [rbp - 0x10]
mov rcx, rbx
mov r8, qword [rbp - 8]
sub r8, rdx
call fcn.14004e880
test eax, eax
jne 0x14004e466
mov r8, rdi
mov rdx, rsi
mov rcx, rbx
call fcn.14004df70
test eax, eax
je 0x14004e232
mov eax, 1
jmp 0x14004e4d2
cmp eax, 0x49
jne 0x14004e30e
mov rsi, qword [rbp - 0x20]
mov rcx, rbx
mov rdi, qword [rbp - 0x18]
mov rdx, rsi
sub rdi, rsi
mov dword [rbx + 4], 1
mov r8, rdi
call fcn.14004de00
jmp 0x14004e2bf
cmp eax, 0x53
jne 0x14004e31e
test r14d, r14d
jne 0x14004e232
jmp 0x14004e346
cmp edi, 0x2f
jne 0x14004e346
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call fcn.14004df70
test eax, eax
jne 0x14004e466
lea rdx, [rbp - 0x20]
mov rcx, rbx
call fcn.14004e560
mov edi, eax
test r15d, r15d
je 0x14004e377
cmp edi, 0x3f
jne 0x14004e48e
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call fcn.14004df70
test eax, eax
jne 0x14004e466
lea rdx, [rbp - 0x20]
mov rcx, rbx
call fcn.14004e560
mov edi, eax
test r14d, r14d
je 0x14004e391
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call fcn.14004df70
test eax, eax
jne 0x14004e466
cmp edi, 0x3e
je 0x14004e408
mov ecx, edi
call fcn.14004dbe0
mov r8, rax
lea rcx, [rbx + 8]
lea rdx, str._s_unexpected____wanted_
call fcn.140007880
mov eax, 1
jmp 0x14004e4d2
mov qword [rbp - 0x20], rdx
cmp rdx, rcx
jae 0x14004e3de
mov rax, rdx
cmp byte [rax], 0x3c
je 0x14004e3de
lea r8, [rax + 1]
mov qword [rbx + 0x130], r8
mov rax, r8
cmp r8, rcx
jb 0x14004e3c6
test byte [rbx], 2
mov qword [rbp - 0x18], r8
jne 0x14004e3f8
lea rcx, [rbp - 0x20]
call fcn.14004e090
mov r8, qword [rbp - 0x18]
mov rdx, qword [rbp - 0x20]
cmp rdx, r8
je 0x14004e408
mov rcx, rbx
sub r8, rdx
call fcn.14004e880
mov rdx, qword [rbx + 0x130]
mov rcx, qword [rbx + 0x138]
mov r8, rdx
cmp rdx, rcx
jb 0x14004e140
mov rax, qword [rbx + 0x118]
cmp byte [rax], 0
je 0x14004e4d0
lea rcx, [rbx + 8]
lea rdx, str.unexpected_END_OF_INPUT
call fcn.140007880
mov eax, 1
jmp 0x14004e4d2
mov ecx, eax
call fcn.14004dbe0
mov r8, rax
lea rcx, [rbx + 8]
lea rdx, str._s_unexpected__ident_wanted_
call fcn.140007880
mov eax, 1
jmp 0x14004e4d2
mov ecx, eax
call fcn.14004dbe0
mov r8, rax
lea rcx, [rbx + 8]
lea rdx, str._s_unexpected__ident_or_string_wanted_
call fcn.140007880
mov eax, 1
jmp 0x14004e4d2
mov ecx, edi
call fcn.14004dbe0
mov r8, rax
lea rcx, [rbx + 8]
lea rdx, [0x140323460]
call fcn.140007880
mov eax, 1
jmp 0x14004e4d2
mov ecx, eax
call fcn.14004dbe0
mov r8, rax
lea rcx, [rbx + 8]
lea rdx, str._s_unexpected__ident_or___wanted_
call fcn.140007880
mov eax, 1
jmp 0x14004e4d2
xor eax, eax
mov rbx, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x70]
mov r12, qword [rsp + 0x78]
add rsp, 0x40
pop r15
pop r14
pop rbp
ret