Function at 0x14001ad30
Capabilities:
Parse credit card information

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x20
mov rbx, rcx
xor al, al
mov ecx, dword [rcx + 0x7c]
cmp ecx, 0xffffffff
je 0x14001b317
lea rsi, [rbx + 0x10]
mov ebp, 0xfffd
nop
cmp ecx, 0x7c
je 0x14001b317
cmp ecx, 0x29
jne 0x14001ad8d
cmp dword [rbx + 0x1c], 0
jne 0x14001b317
test dword [rbx + 0x80], 0x10000000
je 0x14001b337
jmp 0x14001b29c
cmp ecx, 0x2e
jne 0x14001ae29
lea rcx, [rbx + 0x40]
mov edx, 5
call fcn.14001b370
mov rax, qword [rbx]
mov rdx, qword [rsi]
cmp rax, rdx
je 0x14001b2f5
cmp word [rax], 0x5c
jne 0x14001b0d4
lea r8, [rax + 2]
mov rcx, rax
cmp r8, rdx
je 0x14001ae1a
mov r9d, dword [rbx + 0x80]
test r9b, 8
jne 0x14001adec
movzx ecx, word [r8]
mov rdx, rax
cmp cx, 0x28
je 0x14001ae0a
cmp cx, 0x29
je 0x14001ae0a
mov rcx, rax
test r9b, 0x10
jne 0x14001ae1a
movzx r8d, word [r8]
mov rdx, rax
cmp r8w, 0x7b
je 0x14001ae0a
mov rdx, rcx
cmp r8w, 0x7d
jne 0x14001ae1a
lea rax, [rdx + 2]
add rax, 2
mov qword [rbx], rax
jmp 0x14001b2f5
mov rax, rcx
add rax, 2
mov qword [rbx], rax
jmp 0x14001b2f5
cmp ecx, 0x5c
jne 0x14001aff5
mov rax, qword [rbx]
mov rdx, qword [rsi]
cmp rax, rdx
je 0x14001ae9f
cmp word [rax], cx
jne 0x14001ae98
lea r8, [rax + 2]
mov rcx, rax
cmp r8, rdx
je 0x14001ae95
mov r9d, dword [rbx + 0x80]
test r9b, 8
jne 0x14001ae71
movzx ecx, word [r8]
mov rdx, rax
cmp cx, 0x28
je 0x14001ae8f
cmp cx, 0x29
je 0x14001ae8f
mov rcx, rax
test r9b, 0x10
jne 0x14001ae95
movzx r8d, word [r8]
mov rdx, rax
cmp r8w, 0x7b
je 0x14001ae8f
mov rdx, rcx
cmp r8w, 0x7d
jne 0x14001ae95
lea rax, [rdx + 2]
jmp 0x14001ae98
mov rax, rcx
add rax, 2
mov qword [rbx], rax
mov rcx, rbx
call fcn.140019aa0
test byte [rbx + 0x80], 0x80
je 0x14001afe8
movzx eax, word [rbx + 0x78]
cmp ax, 0x62
jne 0x14001af5d
lea rcx, [rbx + 0x40]
mov edx, 4
call fcn.14001b370
mov rax, qword [rbx]
mov rdx, qword [rsi]
cmp rax, rdx
je 0x14001af50
cmp word [rax], 0x5c
jne 0x14001af49
lea r8, [rax + 2]
mov rcx, rax
cmp r8, rdx
je 0x14001af46
mov r9d, dword [rbx + 0x80]
test r9b, 8
jne 0x14001af10
movzx ecx, word [r8]
mov rdx, rax
cmp cx, 0x28
je 0x14001af2e
cmp cx, 0x29
je 0x14001af2e
mov rcx, rax
test r9b, 0x10
jne 0x14001af46
movzx r8d, word [r8]
mov rdx, rax
cmp r8w, 0x7b
je 0x14001af2e
mov rdx, rcx
cmp r8w, 0x7d
jne 0x14001af46
lea rax, [rdx + 2]
mov rcx, rbx
add rax, 2
mov qword [rbx], rax
call fcn.140019aa0
jmp 0x14001b309
mov rax, rcx
add rax, 2
mov qword [rbx], rax
mov rcx, rbx
call fcn.140019aa0
jmp 0x14001b309
cmp ax, 0x42
jne 0x14001afe8
lea rcx, [rbx + 0x40]
mov edx, 4
call fcn.14001b370
mov rax, qword [rbx + 0x48]
xor dword [rax + 0xc], 1
mov rax, qword [rbx]
mov rcx, qword [rsi]
cmp rax, rcx
je 0x14001afdb
cmp word [rax], 0x5c
jne 0x14001afd4
lea r8, [rax + 2]
cmp r8, rcx
je 0x14001afd4
mov r9d, dword [rbx + 0x80]
test r9b, 8
jne 0x14001afb7
movzx edx, word [r8]
mov rcx, rax
cmp dx, 0x28
je 0x14001afd0
cmp dx, 0x29
je 0x14001afd0
test r9b, 0x10
jne 0x14001afd4
movzx edx, word [r8]
mov rcx, rax
cmp dx, 0x7b
je 0x14001afd0
cmp dx, 0x7d
jne 0x14001afd4
lea rax, [rcx + 2]
add rax, 2
mov qword [rbx], rax
mov rcx, rbx
call fcn.140019aa0
jmp 0x14001b309
mov rcx, rbx
call fcn.14001bd80
jmp 0x14001b2fd
cmp ecx, 0x5b
jne 0x14001b0e0
mov rax, qword [rbx]
mov rcx, qword [rsi]
cmp rax, rcx
je 0x14001b05d
cmp word [rax], 0x5c
jne 0x14001b056
lea rdx, [rax + 2]
cmp rdx, rcx
je 0x14001b056
mov r9d, dword [rbx + 0x80]
test r9b, 8
jne 0x14001b03a
movzx r8d, word [rdx]
mov rcx, rax
cmp r8w, 0x28
je 0x14001b052
cmp r8w, 0x29
je 0x14001b052
test r9b, 0x10
jne 0x14001b056
movzx edx, word [rdx]
mov rcx, rax
cmp dx, 0x7b
je 0x14001b052
cmp dx, 0x7d
jne 0x14001b056
lea rax, [rcx + 2]
add rax, 2
mov qword [rbx], rax
mov rcx, rbx
call fcn.140019aa0
mov rcx, rbx
call fcn.14001bbe0
cmp dword [rbx + 0x7c], 0x5d
jne 0x14001b358
mov rax, qword [rbx]
mov rcx, qword [rbx + 0x10]
cmp rax, rcx
je 0x14001b2f5
cmp word [rax], 0x5c
jne 0x14001b0d4
lea rdx, [rax + 2]
cmp rdx, rcx
je 0x14001b0d4
mov r9d, dword [rbx + 0x80]
test r9b, 8
jne 0x14001b0b8
movzx r8d, word [rdx]
mov rcx, rax
cmp r8w, 0x28
je 0x14001b0d0
cmp r8w, 0x29
je 0x14001b0d0
test r9b, 0x10
jne 0x14001b0d4
movzx edx, word [rdx]
mov rcx, rax
cmp dx, 0x7b
je 0x14001b0d0
cmp dx, 0x7d
jne 0x14001b0d4
lea rax, [rcx + 2]
add rax, 2
mov qword [rbx], rax
jmp 0x14001b2f5
cmp ecx, 0x28
jne 0x14001b1da
mov rax, qword [rbx]
mov rcx, qword [rsi]
cmp rax, rcx
je 0x14001b148
cmp word [rax], 0x5c
jne 0x14001b141
lea rdx, [rax + 2]
cmp rdx, rcx
je 0x14001b141
mov r9d, dword [rbx + 0x80]
test r9b, 8
jne 0x14001b125
movzx r8d, word [rdx]
mov rcx, rax
cmp r8w, 0x28
je 0x14001b13d
cmp r8w, 0x29
je 0x14001b13d
test r9b, 0x10
jne 0x14001b141
movzx edx, word [rdx]
mov rcx, rax
cmp dx, 0x7b
je 0x14001b13d
cmp dx, 0x7d
jne 0x14001b141
lea rax, [rcx + 2]
add rax, 2
mov qword [rbx], rax
mov rcx, rbx
call fcn.140019aa0
mov rcx, rbx
call fcn.14001bf00
cmp dword [rbx + 0x7c], 0x29
movzx edi, al
jne 0x14001b363
mov rax, qword [rbx]
mov rcx, qword [rbx + 0x10]
cmp rax, rcx
je 0x14001b1c4
cmp word [rax], 0x5c
jne 0x14001b1bd
lea r8, [rax + 2]
cmp r8, rcx
je 0x14001b1bd
mov r9d, dword [rbx + 0x80]
test r9b, 8
jne 0x14001b1a0
movzx edx, word [r8]
mov rcx, rax
cmp dx, 0x28
je 0x14001b1b9
cmp dx, 0x29
je 0x14001b1b9
test r9b, 0x10
jne 0x14001b1bd
movzx edx, word [r8]
mov rcx, rax
cmp dx, 0x7b
je 0x14001b1b9
cmp dx, 0x7d
jne 0x14001b1bd
lea rax, [rcx + 2]
add rax, 2
mov qword [rbx], rax
mov rcx, rbx
call fcn.140019aa0
test dil, dil
je 0x14001b309
jmp 0x14001b2fd
cmp ecx, 0x5e
jne 0x14001b248
lea edx, [rcx - 0x5c]
lea rcx, [rbx + 0x40]
call fcn.14001b370
mov rdx, qword [rbx + 0x10]
lea rsi, [rbx + 0x10]
mov rax, qword [rbx]
cmp rax, rdx
je 0x14001b23b
cmp word [rax], 0x5c
jne 0x14001b237
lea rcx, [rax + 2]
cmp rcx, rdx
je 0x14001b237
mov edx, dword [rbx + 0x80]
test dl, 8
jne 0x14001b222
movzx eax, word [rcx]
sub ax, 0x28
cmp ax, 1
jbe 0x14001b233
test dl, 0x10
jne 0x14001b237
movzx eax, word [rcx]
sub ax, 0x7b
test bp, ax
jne 0x14001b237
add qword [rbx], 2
add qword [rbx], 2
mov rcx, rbx
call fcn.140019aa0
jmp 0x14001b309
cmp ecx, 0x24
jne 0x14001b252
lea edx, [rcx - 0x21]
jmp 0x14001b1e2
lea eax, [rcx - 0x2a]
cmp eax, 1
jbe 0x14001b34d
cmp ecx, 0x3f
je 0x14001b34d
cmp ecx, 0x7b
je 0x14001b34d
cmp ecx, 0x7d
jne 0x14001b287
test dword [rbx + 0x80], 0x10000000
je 0x14001b342
jmp 0x14001b29c
cmp ecx, 0x5d
jne 0x14001b29c
test dword [rbx + 0x80], 0x10000000
je 0x14001b32c
movzx edx, word [rbx + 0x78]
lea rcx, [rbx + 0x40]
call fcn.14001c3e0
mov rax, qword [rbx]
mov rdx, qword [rbx + 0x10]
cmp rax, rdx
je 0x14001b2f5
cmp word [rax], 0x5c
jne 0x14001b2f1
lea rcx, [rax + 2]
cmp rcx, rdx
je 0x14001b2f1
mov edx, dword [rbx + 0x80]
test dl, 8
jne 0x14001b2dc
movzx eax, word [rcx]
sub ax, 0x28
cmp ax, 1
jbe 0x14001b2ed
test dl, 0x10
jne 0x14001b2f1
movzx eax, word [rcx]
sub ax, 0x7b
test bp, ax
jne 0x14001b2f1
add qword [rbx], 2
add qword [rbx], 2
mov rcx, rbx
call fcn.140019aa0
mov rcx, rbx
call fcn.14001c150
lea rsi, [rbx + 0x10]
mov ecx, dword [rbx + 0x7c]
mov al, 1
cmp ecx, 0xffffffff
jne 0x14001ad60
mov rbx, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
ret
mov edx, 4
call fcn.140019a90
int3
mov edx, 5
call fcn.140019a90
int3
mov edx, 6
call fcn.140019a90
int3
mov edx, 0xa
call fcn.140019a90
int3
mov edx, 4
call fcn.140019a90
int3
mov edx, 5
call fcn.140019a90
int3