Function at 0x180006880
Capabilities:
Parse credit card information

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
xor cl, cl
cmp dword [rbx + 0x60], 0xffffffff
je 0x180006d5f
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 0x180006d47
cmp eax, 0x29
jne 0x1800068db
cmp dword [rbx + 0x1c], esi
jne 0x180006d47
test dword [rbx + 0x64], 0x10000000
jne 0x1800068db
lea ecx, [rax - 0x24]
jmp 0x180006d2e
cmp eax, 0x2e
jne 0x18000698f
lea ecx, [rax - 0xe]
call fcn.18001083c
mov r11, rax
test rax, rax
je 0x180006909
mov qword [rax], rbp
mov qword [rax + 8], 5
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rsi
jmp 0x18000690c
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 0x180006931
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 0x180006982
cmp byte [rax], 0x5c
jne 0x18000697f
inc rax
cmp rax, rcx
je 0x180006969
test byte [rbx + 0x64], 8
jne 0x180006969
movzx ecx, byte [rax]
cmp cl, 0x28
je 0x18000697c
cmp cl, 0x29
je 0x18000697c
test byte [rbx + 0x64], 0x10
jne 0x18000697f
movzx ecx, byte [rax]
cmp cl, 0x7b
je 0x18000697c
cmp cl, 0x7d
jne 0x18000697f
mov qword [rbx], rax
inc qword [rbx]
mov rcx, rbx
call fcn.180005380
jmp 0x180006d33
cmp eax, 0x5c
jne 0x180006ad5
mov rax, qword [rbx]
mov rcx, qword [rbx + 0x10]
cmp rax, rcx
je 0x1800069dd
cmp byte [rax], 0x5c
jne 0x1800069da
inc rax
cmp rax, rcx
je 0x1800069c4
test byte [rbx + 0x64], 8
jne 0x1800069c4
movzx ecx, byte [rax]
cmp cl, 0x28
je 0x1800069d7
cmp cl, 0x29
je 0x1800069d7
test byte [rbx + 0x64], 0x10
jne 0x1800069da
movzx ecx, byte [rax]
cmp cl, 0x7b
je 0x1800069d7
cmp cl, 0x7d
jne 0x1800069da
mov qword [rbx], rax
inc qword [rbx]
mov rcx, rbx
call fcn.180005380
mov eax, dword [rbx + 0x64]
and eax, 0x80
je 0x180006a55
cmp byte [rbx + 0x5e], 0x62
jne 0x180006a55
lea rcx, [rbx + 0x28]
mov edx, 4
call fcn.180006f50
mov rax, qword [rbx]
mov rcx, qword [rbx + 0x10]
cmp rax, rcx
je 0x180006a48
cmp byte [rax], 0x5c
jne 0x180006a45
inc rax
cmp rax, rcx
je 0x180006a2f
test byte [rbx + 0x64], 8
jne 0x180006a2f
movzx ecx, byte [rax]
cmp cl, 0x28
je 0x180006a42
cmp cl, 0x29
je 0x180006a42
test byte [rbx + 0x64], 0x10
jne 0x180006a45
movzx ecx, byte [rax]
cmp cl, 0x7b
je 0x180006a42
cmp cl, 0x7d
jne 0x180006a45
mov qword [rbx], rax
inc qword [rbx]
mov rcx, rbx
call fcn.180005380
jmp 0x180006d3b
test eax, eax
je 0x180006ac8
cmp byte [rbx + 0x5e], 0x42
jne 0x180006ac8
lea rcx, [rbx + 0x28]
mov edx, 4
call fcn.180006f50
mov r11, qword [rbx + 0x30]
xor dword [r11 + 0xc], 1
mov rax, qword [rbx]
mov rcx, qword [rbx + 0x10]
cmp rax, rcx
je 0x180006abb
cmp byte [rax], 0x5c
jne 0x180006ab8
inc rax
cmp rax, rcx
je 0x180006aa2
test byte [rbx + 0x64], 8
jne 0x180006aa2
movzx ecx, byte [rax]
cmp cl, 0x28
je 0x180006ab5
cmp cl, 0x29
je 0x180006ab5
test byte [rbx + 0x64], 0x10
jne 0x180006ab8
movzx ecx, byte [rax]
cmp cl, 0x7b
je 0x180006ab5
cmp cl, 0x7d
jne 0x180006ab8
mov qword [rbx], rax
inc qword [rbx]
mov rcx, rbx
call fcn.180005380
jmp 0x180006d3b
mov rcx, rbx
call fcn.180007cb0
jmp 0x180006d33
cmp eax, 0x5b
jne 0x180006b95
mov rax, qword [rbx]
mov rcx, qword [rbx + 0x10]
cmp rax, rcx
je 0x180006b23
cmp byte [rax], 0x5c
jne 0x180006b20
inc rax
cmp rax, rcx
je 0x180006b0a
test byte [rbx + 0x64], 8
jne 0x180006b0a
movzx ecx, byte [rax]
cmp cl, 0x28
je 0x180006b1d
cmp cl, 0x29
je 0x180006b1d
test byte [rbx + 0x64], 0x10
jne 0x180006b20
movzx ecx, byte [rax]
cmp cl, 0x7b
je 0x180006b1d
cmp cl, 0x7d
jne 0x180006b20
mov qword [rbx], rax
inc qword [rbx]
mov rcx, rbx
call fcn.180005380
mov rcx, rbx
call fcn.180007bb0
cmp dword [rbx + 0x60], 0x5d
je 0x180006b43
mov ecx, 4
call fcn.18000fe24
mov rax, qword [rbx]
mov rcx, qword [rbx + 0x10]
cmp rax, rcx
je 0x180006b88
cmp byte [rax], 0x5c
jne 0x180006b85
inc rax
cmp rax, rcx
je 0x180006b6f
test byte [rbx + 0x64], 8
jne 0x180006b6f
movzx ecx, byte [rax]
cmp cl, 0x28
je 0x180006b82
cmp cl, 0x29
je 0x180006b82
test byte [rbx + 0x64], 0x10
jne 0x180006b85
movzx ecx, byte [rax]
cmp cl, 0x7b
je 0x180006b82
cmp cl, 0x7d
jne 0x180006b85
mov qword [rbx], rax
inc qword [rbx]
mov rcx, rbx
call fcn.180005380
jmp 0x180006d33
cmp eax, 0x28
jne 0x180006c5d
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.180005380
mov rcx, rbx
call fcn.180007d70
cmp dword [rbx + 0x60], 0x29
movzx edi, al
je 0x180006c06
mov ecx, 5
call fcn.18000fe24
mov rcx, qword [rbx]
mov rdx, qword [rbx + 0x10]
cmp rcx, rdx
je 0x180006c47
cmp byte [rcx], 0x5c
jne 0x180006c44
inc rcx
cmp rcx, rdx
je 0x180006c30
test byte [rbx + 0x64], 8
jne 0x180006c30
movzx eax, byte [rcx]
cmp al, 0x28
je 0x180006c41
cmp al, 0x29
je 0x180006c41
test byte [rbx + 0x64], 0x10
jne 0x180006c44
movzx eax, byte [rcx]
cmp al, 0x7b
je 0x180006c41
cmp al, 0x7d
jne 0x180006c44
mov qword [rbx], rcx
inc qword [rbx]
mov rcx, rbx
call fcn.180005380
test dil, dil
je 0x180006d3b
jmp 0x180006d33
cmp eax, 0x5e
jne 0x180006cbd
lea rcx, [rbx + 0x28]
lea edx, [rax - 0x5c]
call fcn.180006f50
mov rax, qword [rbx]
mov rcx, qword [rbx + 0x10]
cmp rax, rcx
je 0x180006cb3
cmp byte [rax], 0x5c
jne 0x180006cb0
inc rax
cmp rax, rcx
je 0x180006c9a
test byte [rbx + 0x64], 8
jne 0x180006c9a
movzx ecx, byte [rax]
cmp cl, 0x28
je 0x180006cad
cmp cl, 0x29
je 0x180006cad
test byte [rbx + 0x64], 0x10
jne 0x180006cb0
movzx ecx, byte [rax]
cmp cl, 0x7b
je 0x180006cad
cmp cl, 0x7d
jne 0x180006cb0
mov qword [rbx], rax
inc qword [rbx]
mov rcx, rbx
call fcn.180005380
jmp 0x180006d3b
cmp eax, 0x24
jne 0x180006cd8
lea rcx, [rbx + 0x28]
lea edx, [rax - 0x21]
call fcn.180006f50
mov rcx, rbx
call fcn.180006830
jmp 0x180006d3b
cmp eax, 0x2a
je 0x180006d29
cmp eax, 0x2b
je 0x180006d29
cmp eax, 0x3f
je 0x180006d29
cmp eax, 0x7b
je 0x180006d29
cmp eax, 0x7d
jne 0x180006cff
test dword [rbx + 0x64], 0x10000000
jne 0x180006cff
lea ecx, [rax - 0x77]
jmp 0x180006d2e
cmp eax, 0x5d
jne 0x180006d12
test dword [rbx + 0x64], 0x10000000
jne 0x180006d12
lea ecx, [rax - 0x59]
jmp 0x180006d2e
movzx edx, byte [rbx + 0x5e]
lea rcx, [rbx + 0x28]
call fcn.1800080f0
mov rcx, rbx
call fcn.180006830
jmp 0x180006d33
mov ecx, 0xa
call fcn.18000fe24
mov rcx, rbx
call fcn.180007f60
cmp dword [rbx + 0x60], 0xffffffff
mov cl, 1
jne 0x1800068b0
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