Function at 0x18002ab90
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 0x18002ac7f
lea rbp, vtable.std::_Node_base.0
xor esi, esi
nop
cmp ecx, 0x7c
je 0x18002ac7f
cmp ecx, 0x29
jne 0x18002ac94
cmp dword [rbx + 0x1c], esi
jne 0x18002ac7f
cmp ecx, ecx
jne 0x18002ac94
test dword [rbx + 0x80], 0x10000000
je 0x18002b075
lea rdi, [rbx + 0x80]
cmp ecx, 0x5d
jne 0x18002ac0f
test dword [rbx + 0x80], 0x10000000
je 0x18002b096
movzx edx, byte [rbx + 0x78]
lea rcx, [rbx + 0x40]
call fcn.18002c3c0
mov rax, qword [rbx]
mov rcx, qword [rbx + 0x10]
cmp rax, rcx
je 0x18002ac61
cmp byte [rax], 0x5c
jne 0x18002ac5e
inc rax
cmp rax, rcx
je 0x18002ac5e
mov edx, dword [rdi]
test dl, 8
jne 0x18002ac49
movzx ecx, byte [rax]
cmp cl, 0x28
je 0x18002ac5b
cmp cl, 0x29
je 0x18002ac5b
test dl, 0x10
jne 0x18002ac5e
movzx ecx, byte [rax]
cmp cl, 0x7b
je 0x18002ac5b
cmp cl, 0x7d
jne 0x18002ac5e
inc qword [rbx]
inc qword [rbx]
mov rcx, rbx
call fcn.1800297e0
mov rcx, rbx
call fcn.18002c210
mov ecx, dword [rbx + 0x7c]
mov al, 1
cmp ecx, 0xffffffff
jne 0x18002abc0
mov rbx, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
ret
cmp ecx, 0x2e
jne 0x18002ad3d
mov ecx, 0x20
call fcn.180065424
lea rcx, [rbx + 0x40]
mov rdx, rax
mov qword [rax], rbp
mov qword [rax + 8], 5
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rsi
call fcn.18002b0f0
mov rax, qword [rbx]
mov rdx, qword [rbx + 0x10]
cmp rax, rdx
je 0x18002ac61
cmp byte [rax], 0x5c
jne 0x18002ad32
lea r8, [rax + 1]
mov rcx, rax
cmp r8, rdx
je 0x18002ad2f
mov r9d, dword [rbx + 0x80]
test r9b, 8
jne 0x18002ad04
movzx ecx, byte [r8]
mov rdx, rax
cmp cl, 0x28
je 0x18002ad20
cmp cl, 0x29
je 0x18002ad20
mov rcx, rax
test r9b, 0x10
jne 0x18002ad2f
movzx r8d, byte [r8]
mov rdx, rax
cmp r8b, 0x7b
je 0x18002ad20
mov rdx, rcx
cmp r8b, 0x7d
jne 0x18002ad2f
lea rax, [rdx + 1]
inc rax
mov qword [rbx], rax
jmp 0x18002ac61
mov rax, rcx
inc rax
mov qword [rbx], rax
jmp 0x18002ac61
cmp ecx, 0x5c
jne 0x18002ae2d
mov rax, qword [rbx]
mov rdx, qword [rbx + 0x10]
cmp rax, rdx
je 0x18002adae
cmp byte [rax], cl
jne 0x18002ada8
lea r8, [rax + 1]
mov rcx, rax
cmp r8, rdx
je 0x18002ada5
mov r9d, dword [rbx + 0x80]
test r9b, 8
jne 0x18002ad83
movzx ecx, byte [r8]
mov rdx, rax
cmp cl, 0x28
je 0x18002ad9f
cmp cl, 0x29
je 0x18002ad9f
mov rcx, rax
test r9b, 0x10
jne 0x18002ada5
movzx r8d, byte [r8]
mov rdx, rax
cmp r8b, 0x7b
je 0x18002ad9f
mov rdx, rcx
cmp r8b, 0x7d
jne 0x18002ada5
lea rax, [rdx + 1]
jmp 0x18002ada8
mov rax, rcx
inc rax
mov qword [rbx], rax
mov rcx, rbx
call fcn.1800297e0
mov eax, dword [rbx + 0x80]
and eax, 0x80
je 0x18002ade0
cmp byte [rbx + 0x78], 0x62
jne 0x18002ade0
mov ecx, 0x20
call fcn.180065424
mov qword [rax + 8], 4
jmp 0x18002afc3
test eax, eax
je 0x18002ae20
cmp byte [rbx + 0x78], 0x42
jne 0x18002ae20
mov ecx, 0x20
call fcn.180065424
lea rcx, [rbx + 0x40]
mov rdx, rax
mov qword [rax], rbp
mov qword [rax + 8], 4
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rsi
call fcn.18002b0f0
mov rcx, qword [rbx + 0x48]
xor dword [rcx + 0xc], 1
jmp 0x18002afda
mov rcx, rbx
call fcn.18002bf50
jmp 0x18002ac69
cmp ecx, 0x5b
jne 0x18002aec9
mov rax, qword [rbx]
mov rcx, qword [rbx + 0x10]
cmp rax, rcx
je 0x18002ae7f
cmp byte [rax], 0x5c
jne 0x18002ae7c
inc rax
cmp rax, rcx
je 0x18002ae7c
mov edx, dword [rbx + 0x80]
test dl, 8
jne 0x18002ae67
movzx ecx, byte [rax]
cmp cl, 0x28
je 0x18002ae79
cmp cl, 0x29
je 0x18002ae79
test dl, 0x10
jne 0x18002ae7c
movzx ecx, byte [rax]
cmp cl, 0x7b
je 0x18002ae79
cmp cl, 0x7d
jne 0x18002ae7c
inc qword [rbx]
inc qword [rbx]
mov rcx, rbx
call fcn.1800297e0
mov rcx, rbx
call fcn.18002bde0
cmp dword [rbx + 0x7c], 0x5d
jne 0x18002b080
mov rax, qword [rbx]
mov rcx, qword [rbx + 0x10]
cmp rax, rcx
je 0x18002ac61
cmp byte [rax], 0x5c
jne 0x18002ac5e
inc rax
cmp rax, rcx
je 0x18002ac5e
mov edx, dword [rbx + 0x80]
jmp 0x18002ac37
cmp ecx, 0x28
jne 0x18002af93
mov rax, qword [rbx]
mov rcx, qword [rbx + 0x10]
cmp rax, rcx
je 0x18002af1b
cmp byte [rax], 0x5c
jne 0x18002af18
inc rax
cmp rax, rcx
je 0x18002af18
mov edx, dword [rbx + 0x80]
test dl, 8
jne 0x18002af03
movzx ecx, byte [rax]
cmp cl, 0x28
je 0x18002af15
cmp cl, 0x29
je 0x18002af15
test dl, 0x10
jne 0x18002af18
movzx ecx, byte [rax]
cmp cl, 0x7b
je 0x18002af15
cmp cl, 0x7d
jne 0x18002af18
inc qword [rbx]
inc qword [rbx]
mov rcx, rbx
call fcn.1800297e0
mov rcx, rbx
call fcn.18002c0a0
cmp dword [rbx + 0x7c], 0x29
movzx edi, al
jne 0x18002b08b
mov rcx, qword [rbx]
mov rdx, qword [rbx + 0x10]
cmp rcx, rdx
je 0x18002af7d
cmp byte [rcx], 0x5c
jne 0x18002af7a
inc rcx
cmp rcx, rdx
je 0x18002af7a
mov edx, dword [rbx + 0x80]
test dl, 8
jne 0x18002af67
movzx eax, byte [rcx]
cmp al, 0x28
je 0x18002af77
cmp al, 0x29
je 0x18002af77
test dl, 0x10
jne 0x18002af7a
movzx eax, byte [rcx]
cmp al, 0x7b
je 0x18002af77
cmp al, 0x7d
jne 0x18002af7a
inc qword [rbx]
inc qword [rbx]
mov rcx, rbx
call fcn.1800297e0
test dil, dil
je 0x18002ac71
jmp 0x18002ac69
cmp ecx, 0x5e
jne 0x18002afac
mov ecx, 0x20
call fcn.180065424
mov qword [rax + 8], 2
jmp 0x18002afc3
cmp ecx, 0x24
jne 0x18002b030
mov ecx, 0x20
call fcn.180065424
mov qword [rax + 8], 3
mov qword [rax], rbp
lea rcx, [rbx + 0x40]
mov qword [rax + 0x10], rsi
mov rdx, rax
mov qword [rax + 0x18], rsi
call fcn.18002b0f0
mov rcx, qword [rbx + 0x10]
mov rax, qword [rbx]
cmp rax, rcx
je 0x18002b023
cmp byte [rax], 0x5c
jne 0x18002b020
inc rax
cmp rax, rcx
je 0x18002b020
mov edx, dword [rbx + 0x80]
test dl, 8
jne 0x18002b00b
movzx ecx, byte [rax]
cmp cl, 0x28
je 0x18002b01d
cmp cl, 0x29
je 0x18002b01d
test dl, 0x10
jne 0x18002b020
movzx ecx, byte [rax]
cmp cl, 0x7b
je 0x18002b01d
cmp cl, 0x7d
jne 0x18002b020
inc qword [rbx]
inc qword [rbx]
mov rcx, rbx
call fcn.1800297e0
jmp 0x18002ac71
lea eax, [rcx - 0x2a]
cmp eax, 1
jbe 0x18002b05f
cmp ecx, 0x3f
je 0x18002b05f
cmp ecx, 0x7b
je 0x18002b05f
cmp ecx, 0x7d
jne 0x18002abf3
lea rdi, [rbx + 0x80]
test dword [rdi], 0x10000000
je 0x18002b06a
jmp 0x18002ac0f
mov edx, 0xa
call fcn.1800297d0
int3
mov edx, 6
call fcn.1800297d0
int3
mov edx, 5
call fcn.1800297d0
int3
mov edx, 4
call fcn.1800297d0
int3
mov edx, 5
call fcn.1800297d0
int3
mov edx, 4
call fcn.1800297d0
int3