Function at 0x1800068f0
Capabilities:
Parse credit card information

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
xor cl, cl
cmp dword [rbx + 0x60], 0xffffffff
je 0x180006dcf
mov qword [rsp + 0x30], rbp
mov qword [rsp + 0x38], rsi
xor esi, esi
mov qword [rsp + 0x40], rdi
lea rbp, vtable.std::tr1::_Node_base.0
nop dword [rax]
mov eax, dword [rbx + 0x60]
cmp eax, 0x7c
je 0x180006db7
cmp eax, 0x29
jne 0x18000694b
cmp dword [rbx + 0x1c], esi
jne 0x180006db7
test dword [rbx + 0x64], 0x10000000
jne 0x18000694b
lea ecx, [rax - 0x24]
jmp 0x180006d9e
cmp eax, 0x2e
jne 0x1800069ff
lea ecx, [rax - 0xe]
call fcn.18001092c
mov r11, rax
test rax, rax
je 0x180006979
mov qword [rax], rbp
mov qword [rax + 8], 5
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rsi
jmp 0x18000697c
mov r11, rsi
mov rax, qword [rbx + 0x30]
mov qword [r11 + 0x18], rax
mov rax, qword [rbx + 0x30]
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x1800069a1
mov qword [r11 + 0x10], rcx
mov rax, qword [rbx + 0x30]
mov rcx, qword [rax + 0x10]
mov qword [rcx + 0x18], r11
mov rax, qword [rbx + 0x30]
mov qword [rax + 0x10], r11
mov qword [rbx + 0x30], r11
mov rax, qword [rbx]
mov rcx, qword [rbx + 0x10]
cmp rax, rcx
je 0x1800069f2
cmp byte [rax], 0x5c
jne 0x1800069ef
inc rax
cmp rax, rcx
je 0x1800069d9
test byte [rbx + 0x64], 8
jne 0x1800069d9
movzx ecx, byte [rax]
cmp cl, 0x28
je 0x1800069ec
cmp cl, 0x29
je 0x1800069ec
test byte [rbx + 0x64], 0x10
jne 0x1800069ef
movzx ecx, byte [rax]
cmp cl, 0x7b
je 0x1800069ec
cmp cl, 0x7d
jne 0x1800069ef
mov qword [rbx], rax
inc qword [rbx]
mov rcx, rbx
call fcn.1800053d0
jmp 0x180006da3
cmp eax, 0x5c
jne 0x180006b45
mov rax, qword [rbx]
mov rcx, qword [rbx + 0x10]
cmp rax, rcx
je 0x180006a4d
cmp byte [rax], 0x5c
jne 0x180006a4a
inc rax
cmp rax, rcx
je 0x180006a34
test byte [rbx + 0x64], 8
jne 0x180006a34
movzx ecx, byte [rax]
cmp cl, 0x28
je 0x180006a47
cmp cl, 0x29
je 0x180006a47
test byte [rbx + 0x64], 0x10
jne 0x180006a4a
movzx ecx, byte [rax]
cmp cl, 0x7b
je 0x180006a47
cmp cl, 0x7d
jne 0x180006a4a
mov qword [rbx], rax
inc qword [rbx]
mov rcx, rbx
call fcn.1800053d0
mov eax, dword [rbx + 0x64]
and eax, 0x80
je 0x180006ac5
cmp byte [rbx + 0x5e], 0x62
jne 0x180006ac5
lea rcx, [rbx + 0x28]
mov edx, 4
call fcn.180006fc0
mov rax, qword [rbx]
mov rcx, qword [rbx + 0x10]
cmp rax, rcx
je 0x180006ab8
cmp byte [rax], 0x5c
jne 0x180006ab5
inc rax
cmp rax, rcx
je 0x180006a9f
test byte [rbx + 0x64], 8
jne 0x180006a9f
movzx ecx, byte [rax]
cmp cl, 0x28
je 0x180006ab2
cmp cl, 0x29
je 0x180006ab2
test byte [rbx + 0x64], 0x10
jne 0x180006ab5
movzx ecx, byte [rax]
cmp cl, 0x7b
je 0x180006ab2
cmp cl, 0x7d
jne 0x180006ab5
mov qword [rbx], rax
inc qword [rbx]
mov rcx, rbx
call fcn.1800053d0
jmp 0x180006dab
test eax, eax
je 0x180006b38
cmp byte [rbx + 0x5e], 0x42
jne 0x180006b38
lea rcx, [rbx + 0x28]
mov edx, 4
call fcn.180006fc0
mov r11, qword [rbx + 0x30]
xor dword [r11 + 0xc], 1
mov rax, qword [rbx]
mov rcx, qword [rbx + 0x10]
cmp rax, rcx
je 0x180006b2b
cmp byte [rax], 0x5c
jne 0x180006b28
inc rax
cmp rax, rcx
je 0x180006b12
test byte [rbx + 0x64], 8
jne 0x180006b12
movzx ecx, byte [rax]
cmp cl, 0x28
je 0x180006b25
cmp cl, 0x29
je 0x180006b25
test byte [rbx + 0x64], 0x10
jne 0x180006b28
movzx ecx, byte [rax]
cmp cl, 0x7b
je 0x180006b25
cmp cl, 0x7d
jne 0x180006b28
mov qword [rbx], rax
inc qword [rbx]
mov rcx, rbx
call fcn.1800053d0
jmp 0x180006dab
mov rcx, rbx
call fcn.180007d20
jmp 0x180006da3
cmp eax, 0x5b
jne 0x180006c05
mov rax, qword [rbx]
mov rcx, qword [rbx + 0x10]
cmp rax, rcx
je 0x180006b93
cmp byte [rax], 0x5c
jne 0x180006b90
inc rax
cmp rax, rcx
je 0x180006b7a
test byte [rbx + 0x64], 8
jne 0x180006b7a
movzx ecx, byte [rax]
cmp cl, 0x28
je 0x180006b8d
cmp cl, 0x29
je 0x180006b8d
test byte [rbx + 0x64], 0x10
jne 0x180006b90
movzx ecx, byte [rax]
cmp cl, 0x7b
je 0x180006b8d
cmp cl, 0x7d
jne 0x180006b90
mov qword [rbx], rax
inc qword [rbx]
mov rcx, rbx
call fcn.1800053d0
mov rcx, rbx
call fcn.180007c20
cmp dword [rbx + 0x60], 0x5d
je 0x180006bb3
mov ecx, 4
call fcn.1800104a4
mov rax, qword [rbx]
mov rcx, qword [rbx + 0x10]
cmp rax, rcx
je 0x180006bf8
cmp byte [rax], 0x5c
jne 0x180006bf5
inc rax
cmp rax, rcx
je 0x180006bdf
test byte [rbx + 0x64], 8
jne 0x180006bdf
movzx ecx, byte [rax]
cmp cl, 0x28
je 0x180006bf2
cmp cl, 0x29
je 0x180006bf2
test byte [rbx + 0x64], 0x10
jne 0x180006bf5
movzx ecx, byte [rax]
cmp cl, 0x7b
je 0x180006bf2
cmp cl, 0x7d
jne 0x180006bf5
mov qword [rbx], rax
inc qword [rbx]
mov rcx, rbx
call fcn.1800053d0
jmp 0x180006da3
cmp eax, 0x28
jne 0x180006ccd
mov rax, qword [rbx]
mov rcx, qword [rbx + 0x10]
cmp rax, rcx
je 0x180006c53
cmp byte [rax], 0x5c
jne 0x180006c50
inc rax
cmp rax, rcx
je 0x180006c3a
test byte [rbx + 0x64], 8
jne 0x180006c3a
movzx ecx, byte [rax]
cmp cl, 0x28
je 0x180006c4d
cmp cl, 0x29
je 0x180006c4d
test byte [rbx + 0x64], 0x10
jne 0x180006c50
movzx ecx, byte [rax]
cmp cl, 0x7b
je 0x180006c4d
cmp cl, 0x7d
jne 0x180006c50
mov qword [rbx], rax
inc qword [rbx]
mov rcx, rbx
call fcn.1800053d0
mov rcx, rbx
call fcn.180007de0
cmp dword [rbx + 0x60], 0x29
movzx edi, al
je 0x180006c76
mov ecx, 5
call fcn.1800104a4
mov rcx, qword [rbx]
mov rdx, qword [rbx + 0x10]
cmp rcx, rdx
je 0x180006cb7
cmp byte [rcx], 0x5c
jne 0x180006cb4
inc rcx
cmp rcx, rdx
je 0x180006ca0
test byte [rbx + 0x64], 8
jne 0x180006ca0
movzx eax, byte [rcx]
cmp al, 0x28
je 0x180006cb1
cmp al, 0x29
je 0x180006cb1
test byte [rbx + 0x64], 0x10
jne 0x180006cb4
movzx eax, byte [rcx]
cmp al, 0x7b
je 0x180006cb1
cmp al, 0x7d
jne 0x180006cb4
mov qword [rbx], rcx
inc qword [rbx]
mov rcx, rbx
call fcn.1800053d0
test dil, dil
je 0x180006dab
jmp 0x180006da3
cmp eax, 0x5e
jne 0x180006d2d
lea rcx, [rbx + 0x28]
lea edx, [rax - 0x5c]
call fcn.180006fc0
mov rax, qword [rbx]
mov rcx, qword [rbx + 0x10]
cmp rax, rcx
je 0x180006d23
cmp byte [rax], 0x5c
jne 0x180006d20
inc rax
cmp rax, rcx
je 0x180006d0a
test byte [rbx + 0x64], 8
jne 0x180006d0a
movzx ecx, byte [rax]
cmp cl, 0x28
je 0x180006d1d
cmp cl, 0x29
je 0x180006d1d
test byte [rbx + 0x64], 0x10
jne 0x180006d20
movzx ecx, byte [rax]
cmp cl, 0x7b
je 0x180006d1d
cmp cl, 0x7d
jne 0x180006d20
mov qword [rbx], rax
inc qword [rbx]
mov rcx, rbx
call fcn.1800053d0
jmp 0x180006dab
cmp eax, 0x24
jne 0x180006d48
lea rcx, [rbx + 0x28]
lea edx, [rax - 0x21]
call fcn.180006fc0
mov rcx, rbx
call fcn.1800068a0
jmp 0x180006dab
cmp eax, 0x2a
je 0x180006d99
cmp eax, 0x2b
je 0x180006d99
cmp eax, 0x3f
je 0x180006d99
cmp eax, 0x7b
je 0x180006d99
cmp eax, 0x7d
jne 0x180006d6f
test dword [rbx + 0x64], 0x10000000
jne 0x180006d6f
lea ecx, [rax - 0x77]
jmp 0x180006d9e
cmp eax, 0x5d
jne 0x180006d82
test dword [rbx + 0x64], 0x10000000
jne 0x180006d82
lea ecx, [rax - 0x59]
jmp 0x180006d9e
movzx edx, byte [rbx + 0x5e]
lea rcx, [rbx + 0x28]
call fcn.180008160
mov rcx, rbx
call fcn.1800068a0
jmp 0x180006da3
mov ecx, 0xa
call fcn.1800104a4
mov rcx, rbx
call fcn.180007fd0
cmp dword [rbx + 0x60], 0xffffffff
mov cl, 1
jne 0x180006920
mov rdi, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
movzx eax, cl
add rsp, 0x20
pop rbx
ret
movzx eax, cl
add rsp, 0x20
pop rbx
ret