Function at 0x1400592f0
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.140058fb0
mov qword [rcx + 0x128], rdx
mov qword [rcx + 0x130], rdx
lea rcx, [rdx + r8]
mov qword [rbx + 0x138], rcx
cmp rdx, rcx
jae 0x140059622
mov r8, rdx
xor r12d, r12d
cmp byte [rdx], 0x3c
jne 0x1400595ba
lea rdx, [rbp - 0x20]
mov rcx, rbx
mov r15d, r12d
mov r14d, r12d
call fcn.140059760
cmp eax, 0x43
je 0x140059608
mov rcx, rbx
cmp eax, 0x44
jne 0x140059389
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 0x140059600
lea rdx, [rbp - 0x20]
call fcn.140059760
cmp eax, 0x2f
jne 0x1400593da
lea rdx, [rbp - 0x20]
mov rcx, rbx
call fcn.140059760
cmp eax, 0x49
jne 0x14005964c
mov rdx, qword [rbp - 0x20]
mov rcx, rbx
mov r8, qword [rbp - 0x18]
sub r8, rdx
call fcn.140059130
test eax, eax
jne 0x140059666
lea rdx, [rbp - 0x20]
mov rcx, rbx
call fcn.140059760
mov edi, eax
jmp 0x140059591
cmp eax, 0x21
jne 0x1400593f3
lea rdx, [rbp - 0x20]
mov rcx, rbx
call fcn.140059760
mov r14d, 1
jmp 0x14005940a
cmp eax, 0x3f
jne 0x14005940a
lea rdx, [rbp - 0x20]
mov rcx, rbx
call fcn.140059760
mov r15d, 1
cmp eax, 0x49
jne 0x1400596af
mov rdx, qword [rbp - 0x20]
mov rcx, rbx
mov r8, qword [rbp - 0x18]
sub r8, rdx
mov dword [rbx + 4], r12d
call fcn.140058fc0
test eax, eax
jne 0x140059666
lea rdx, [rbp - 0x20]
mov rcx, rbx
call fcn.140059760
mov edi, eax
cmp eax, 0x49
je 0x140059457
cmp eax, 0x53
jne 0x14005951e
test r14d, r14d
je 0x140059546
lea rdx, [rbp - 0x10]
mov rcx, rbx
call fcn.140059760
mov edi, eax
cmp eax, 0x3d
jne 0x1400594e7
lea rdx, [rbp - 0x10]
mov rcx, rbx
call fcn.140059760
cmp eax, 0x49
je 0x140059484
cmp eax, 0x53
jne 0x14005966d
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.140058fc0
test eax, eax
jne 0x140059666
mov rdx, qword [rbp - 0x10]
mov rcx, rbx
mov r8, qword [rbp - 8]
sub r8, rdx
call fcn.140059a80
test eax, eax
jne 0x140059666
mov r8, rdi
mov rdx, rsi
mov rcx, rbx
call fcn.140059130
test eax, eax
je 0x140059432
mov eax, 1
jmp 0x1400596d2
cmp eax, 0x49
jne 0x14005950e
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.140058fc0
jmp 0x1400594bf
cmp eax, 0x53
jne 0x14005951e
test r14d, r14d
jne 0x140059432
jmp 0x140059546
cmp edi, 0x2f
jne 0x140059546
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call fcn.140059130
test eax, eax
jne 0x140059666
lea rdx, [rbp - 0x20]
mov rcx, rbx
call fcn.140059760
mov edi, eax
test r15d, r15d
je 0x140059577
cmp edi, 0x3f
jne 0x14005968e
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call fcn.140059130
test eax, eax
jne 0x140059666
lea rdx, [rbp - 0x20]
mov rcx, rbx
call fcn.140059760
mov edi, eax
test r14d, r14d
je 0x140059591
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call fcn.140059130
test eax, eax
jne 0x140059666
cmp edi, 0x3e
je 0x140059608
mov ecx, edi
call fcn.140058da0
mov r8, rax
lea rcx, [rbx + 8]
lea rdx, str._s_unexpected____wanted_
call fcn.1400032d0
mov eax, 1
jmp 0x1400596d2
mov qword [rbp - 0x20], rdx
cmp rdx, rcx
jae 0x1400595de
mov rax, rdx
cmp byte [rax], 0x3c
je 0x1400595de
lea r8, [rax + 1]
mov qword [rbx + 0x130], r8
mov rax, r8
cmp r8, rcx
jb 0x1400595c6
test byte [rbx], 2
mov qword [rbp - 0x18], r8
jne 0x1400595f8
lea rcx, [rbp - 0x20]
call fcn.140059290
mov r8, qword [rbp - 0x18]
mov rdx, qword [rbp - 0x20]
cmp rdx, r8
je 0x140059608
mov rcx, rbx
sub r8, rdx
call fcn.140059a80
mov rdx, qword [rbx + 0x130]
mov rcx, qword [rbx + 0x138]
mov r8, rdx
cmp rdx, rcx
jb 0x140059340
mov rax, qword [rbx + 0x118]
cmp byte [rax], 0
je 0x1400596d0
lea rcx, [rbx + 8]
lea rdx, str.unexpected_END_OF_INPUT
call fcn.1400032d0
mov eax, 1
jmp 0x1400596d2
mov ecx, eax
call fcn.140058da0
mov r8, rax
lea rcx, [rbx + 8]
lea rdx, str._s_unexpected__ident_wanted_
call fcn.1400032d0
mov eax, 1
jmp 0x1400596d2
mov ecx, eax
call fcn.140058da0
mov r8, rax
lea rcx, [rbx + 8]
lea rdx, str._s_unexpected__ident_or_string_wanted_
call fcn.1400032d0
mov eax, 1
jmp 0x1400596d2
mov ecx, edi
call fcn.140058da0
mov r8, rax
lea rcx, [rbx + 8]
lea rdx, [0x1401b1c30]
call fcn.1400032d0
mov eax, 1
jmp 0x1400596d2
mov ecx, eax
call fcn.140058da0
mov r8, rax
lea rcx, [rbx + 8]
lea rdx, str._s_unexpected__ident_or___wanted_
call fcn.1400032d0
mov eax, 1
jmp 0x1400596d2
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