Function at 0x180006940
Capabilities:
Parse credit card information

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
xor cl, cl
cmp dword [rbx + 0x60], 0xffffffff
je 0x180006e1f
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 0x180006e07
cmp eax, 0x29
jne 0x18000699b
cmp dword [rbx + 0x1c], esi
jne 0x180006e07
test dword [rbx + 0x64], 0x10000000
jne 0x18000699b
lea ecx, [rax - 0x24]
jmp 0x180006dee
cmp eax, 0x2e
jne 0x180006a4f
lea ecx, [rax - 0xe]
call fcn.18001093c
mov r11, rax
test rax, rax
je 0x1800069c9
mov qword [rax], rbp
mov qword [rax + 8], 5
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rsi
jmp 0x1800069cc
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 0x1800069f1
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 0x180006a42
cmp byte [rax], 0x5c
jne 0x180006a3f
inc rax
cmp rax, rcx
je 0x180006a29
test byte [rbx + 0x64], 8
jne 0x180006a29
movzx ecx, byte [rax]
cmp cl, 0x28
je 0x180006a3c
cmp cl, 0x29
je 0x180006a3c
test byte [rbx + 0x64], 0x10
jne 0x180006a3f
movzx ecx, byte [rax]
cmp cl, 0x7b
je 0x180006a3c
cmp cl, 0x7d
jne 0x180006a3f
mov qword [rbx], rax
inc qword [rbx]
mov rcx, rbx
call fcn.180005410
jmp 0x180006df3
cmp eax, 0x5c
jne 0x180006b95
mov rax, qword [rbx]
mov rcx, qword [rbx + 0x10]
cmp rax, rcx
je 0x180006a9d
cmp byte [rax], 0x5c
jne 0x180006a9a
inc rax
cmp rax, rcx
je 0x180006a84
test byte [rbx + 0x64], 8
jne 0x180006a84
movzx ecx, byte [rax]
cmp cl, 0x28
je 0x180006a97
cmp cl, 0x29
je 0x180006a97
test byte [rbx + 0x64], 0x10
jne 0x180006a9a
movzx ecx, byte [rax]
cmp cl, 0x7b
je 0x180006a97
cmp cl, 0x7d
jne 0x180006a9a
mov qword [rbx], rax
inc qword [rbx]
mov rcx, rbx
call fcn.180005410
mov eax, dword [rbx + 0x64]
and eax, 0x80
je 0x180006b15
cmp byte [rbx + 0x5e], 0x62
jne 0x180006b15
lea rcx, [rbx + 0x28]
mov edx, 4
call fcn.180007010
mov rax, qword [rbx]
mov rcx, qword [rbx + 0x10]
cmp rax, rcx
je 0x180006b08
cmp byte [rax], 0x5c
jne 0x180006b05
inc rax
cmp rax, rcx
je 0x180006aef
test byte [rbx + 0x64], 8
jne 0x180006aef
movzx ecx, byte [rax]
cmp cl, 0x28
je 0x180006b02
cmp cl, 0x29
je 0x180006b02
test byte [rbx + 0x64], 0x10
jne 0x180006b05
movzx ecx, byte [rax]
cmp cl, 0x7b
je 0x180006b02
cmp cl, 0x7d
jne 0x180006b05
mov qword [rbx], rax
inc qword [rbx]
mov rcx, rbx
call fcn.180005410
jmp 0x180006dfb
test eax, eax
je 0x180006b88
cmp byte [rbx + 0x5e], 0x42
jne 0x180006b88
lea rcx, [rbx + 0x28]
mov edx, 4
call fcn.180007010
mov r11, qword [rbx + 0x30]
xor dword [r11 + 0xc], 1
mov rax, qword [rbx]
mov rcx, qword [rbx + 0x10]
cmp rax, rcx
je 0x180006b7b
cmp byte [rax], 0x5c
jne 0x180006b78
inc rax
cmp rax, rcx
je 0x180006b62
test byte [rbx + 0x64], 8
jne 0x180006b62
movzx ecx, byte [rax]
cmp cl, 0x28
je 0x180006b75
cmp cl, 0x29
je 0x180006b75
test byte [rbx + 0x64], 0x10
jne 0x180006b78
movzx ecx, byte [rax]
cmp cl, 0x7b
je 0x180006b75
cmp cl, 0x7d
jne 0x180006b78
mov qword [rbx], rax
inc qword [rbx]
mov rcx, rbx
call fcn.180005410
jmp 0x180006dfb
mov rcx, rbx
call fcn.180007d70
jmp 0x180006df3
cmp eax, 0x5b
jne 0x180006c55
mov rax, qword [rbx]
mov rcx, qword [rbx + 0x10]
cmp rax, rcx
je 0x180006be3
cmp byte [rax], 0x5c
jne 0x180006be0
inc rax
cmp rax, rcx
je 0x180006bca
test byte [rbx + 0x64], 8
jne 0x180006bca
movzx ecx, byte [rax]
cmp cl, 0x28
je 0x180006bdd
cmp cl, 0x29
je 0x180006bdd
test byte [rbx + 0x64], 0x10
jne 0x180006be0
movzx ecx, byte [rax]
cmp cl, 0x7b
je 0x180006bdd
cmp cl, 0x7d
jne 0x180006be0
mov qword [rbx], rax
inc qword [rbx]
mov rcx, rbx
call fcn.180005410
mov rcx, rbx
call fcn.180007c70
cmp dword [rbx + 0x60], 0x5d
je 0x180006c03
mov ecx, 4
call fcn.1800104b4
mov rax, qword [rbx]
mov rcx, qword [rbx + 0x10]
cmp rax, rcx
je 0x180006c48
cmp byte [rax], 0x5c
jne 0x180006c45
inc rax
cmp rax, rcx
je 0x180006c2f
test byte [rbx + 0x64], 8
jne 0x180006c2f
movzx ecx, byte [rax]
cmp cl, 0x28
je 0x180006c42
cmp cl, 0x29
je 0x180006c42
test byte [rbx + 0x64], 0x10
jne 0x180006c45
movzx ecx, byte [rax]
cmp cl, 0x7b
je 0x180006c42
cmp cl, 0x7d
jne 0x180006c45
mov qword [rbx], rax
inc qword [rbx]
mov rcx, rbx
call fcn.180005410
jmp 0x180006df3
cmp eax, 0x28
jne 0x180006d1d
mov rax, qword [rbx]
mov rcx, qword [rbx + 0x10]
cmp rax, rcx
je 0x180006ca3
cmp byte [rax], 0x5c
jne 0x180006ca0
inc rax
cmp rax, rcx
je 0x180006c8a
test byte [rbx + 0x64], 8
jne 0x180006c8a
movzx ecx, byte [rax]
cmp cl, 0x28
je 0x180006c9d
cmp cl, 0x29
je 0x180006c9d
test byte [rbx + 0x64], 0x10
jne 0x180006ca0
movzx ecx, byte [rax]
cmp cl, 0x7b
je 0x180006c9d
cmp cl, 0x7d
jne 0x180006ca0
mov qword [rbx], rax
inc qword [rbx]
mov rcx, rbx
call fcn.180005410
mov rcx, rbx
call fcn.180007e30
cmp dword [rbx + 0x60], 0x29
movzx edi, al
je 0x180006cc6
mov ecx, 5
call fcn.1800104b4
mov rcx, qword [rbx]
mov rdx, qword [rbx + 0x10]
cmp rcx, rdx
je 0x180006d07
cmp byte [rcx], 0x5c
jne 0x180006d04
inc rcx
cmp rcx, rdx
je 0x180006cf0
test byte [rbx + 0x64], 8
jne 0x180006cf0
movzx eax, byte [rcx]
cmp al, 0x28
je 0x180006d01
cmp al, 0x29
je 0x180006d01
test byte [rbx + 0x64], 0x10
jne 0x180006d04
movzx eax, byte [rcx]
cmp al, 0x7b
je 0x180006d01
cmp al, 0x7d
jne 0x180006d04
mov qword [rbx], rcx
inc qword [rbx]
mov rcx, rbx
call fcn.180005410
test dil, dil
je 0x180006dfb
jmp 0x180006df3
cmp eax, 0x5e
jne 0x180006d7d
lea rcx, [rbx + 0x28]
lea edx, [rax - 0x5c]
call fcn.180007010
mov rax, qword [rbx]
mov rcx, qword [rbx + 0x10]
cmp rax, rcx
je 0x180006d73
cmp byte [rax], 0x5c
jne 0x180006d70
inc rax
cmp rax, rcx
je 0x180006d5a
test byte [rbx + 0x64], 8
jne 0x180006d5a
movzx ecx, byte [rax]
cmp cl, 0x28
je 0x180006d6d
cmp cl, 0x29
je 0x180006d6d
test byte [rbx + 0x64], 0x10
jne 0x180006d70
movzx ecx, byte [rax]
cmp cl, 0x7b
je 0x180006d6d
cmp cl, 0x7d
jne 0x180006d70
mov qword [rbx], rax
inc qword [rbx]
mov rcx, rbx
call fcn.180005410
jmp 0x180006dfb
cmp eax, 0x24
jne 0x180006d98
lea rcx, [rbx + 0x28]
lea edx, [rax - 0x21]
call fcn.180007010
mov rcx, rbx
call fcn.1800068f0
jmp 0x180006dfb
cmp eax, 0x2a
je 0x180006de9
cmp eax, 0x2b
je 0x180006de9
cmp eax, 0x3f
je 0x180006de9
cmp eax, 0x7b
je 0x180006de9
cmp eax, 0x7d
jne 0x180006dbf
test dword [rbx + 0x64], 0x10000000
jne 0x180006dbf
lea ecx, [rax - 0x77]
jmp 0x180006dee
cmp eax, 0x5d
jne 0x180006dd2
test dword [rbx + 0x64], 0x10000000
jne 0x180006dd2
lea ecx, [rax - 0x59]
jmp 0x180006dee
movzx edx, byte [rbx + 0x5e]
lea rcx, [rbx + 0x28]
call fcn.1800081b0
mov rcx, rbx
call fcn.1800068f0
jmp 0x180006df3
mov ecx, 0xa
call fcn.1800104b4
mov rcx, rbx
call fcn.180008020
cmp dword [rbx + 0x60], 0xffffffff
mov cl, 1
jne 0x180006970
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