Function at 0x14003d680
Capabilities:
Parse credit card information

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
xor cl, cl
cmp dword [rbx + 0x60], 0xffff
je 0x14003db5e
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
mov eax, dword [rbx + 0x60]
cmp eax, 0x7c
je 0x14003db46
cmp eax, 0x29
jne 0x14003d6db
cmp dword [rbx + 0x1c], esi
jne 0x14003db46
test dword [rbx + 0x64], 0x10000000
jne 0x14003d6db
lea ecx, [rax - 0x24]
jmp 0x14003db2a
cmp eax, 0x2e
jne 0x14003d796
lea ecx, [rax - 0xe]
call fcn.140063640
mov r11, rax
test rax, rax
je 0x14003d709
mov qword [rax], rbp
mov qword [rax + 8], 5
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rsi
jmp 0x14003d70c
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 0x14003d731
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 0x14003d789
cmp word [rax], 0x5c
jne 0x14003d785
add rax, 2
cmp rax, rcx
je 0x14003d76d
test byte [rbx + 0x64], 8
jne 0x14003d76d
movzx ecx, word [rax]
cmp cx, 0x28
je 0x14003d782
cmp cx, 0x29
je 0x14003d782
test byte [rbx + 0x64], 0x10
jne 0x14003d785
movzx ecx, word [rax]
cmp cx, 0x7b
je 0x14003d782
cmp cx, 0x7d
jne 0x14003d785
mov qword [rbx], rax
add qword [rbx], 2
mov rcx, rbx
call fcn.14003bc20
jmp 0x14003db2f
cmp eax, 0x5c
jne 0x14003d8f3
mov rax, qword [rbx]
mov rcx, qword [rbx + 0x10]
cmp rax, rcx
je 0x14003d7eb
cmp word [rax], 0x5c
jne 0x14003d7e7
add rax, 2
cmp rax, rcx
je 0x14003d7cf
test byte [rbx + 0x64], 8
jne 0x14003d7cf
movzx ecx, word [rax]
cmp cx, 0x28
je 0x14003d7e4
cmp cx, 0x29
je 0x14003d7e4
test byte [rbx + 0x64], 0x10
jne 0x14003d7e7
movzx ecx, word [rax]
cmp cx, 0x7b
je 0x14003d7e4
cmp cx, 0x7d
jne 0x14003d7e7
mov qword [rbx], rax
add qword [rbx], 2
mov rcx, rbx
call fcn.14003bc20
mov eax, dword [rbx + 0x64]
and eax, 0x80
je 0x14003d86b
cmp word [rbx + 0x5e], 0x62
jne 0x14003d86b
lea rcx, [rbx + 0x28]
mov edx, 4
call fcn.14003dd50
mov rax, qword [rbx]
mov rcx, qword [rbx + 0x10]
cmp rax, rcx
je 0x14003d85e
cmp word [rax], 0x5c
jne 0x14003d85a
add rax, 2
cmp rax, rcx
je 0x14003d842
test byte [rbx + 0x64], 8
jne 0x14003d842
movzx ecx, word [rax]
cmp cx, 0x28
je 0x14003d857
cmp cx, 0x29
je 0x14003d857
test byte [rbx + 0x64], 0x10
jne 0x14003d85a
movzx ecx, word [rax]
cmp cx, 0x7b
je 0x14003d857
cmp cx, 0x7d
jne 0x14003d85a
mov qword [rbx], rax
add qword [rbx], 2
mov rcx, rbx
call fcn.14003bc20
jmp 0x14003db37
test eax, eax
je 0x14003d8e6
cmp word [rbx + 0x5e], 0x42
jne 0x14003d8e6
lea rcx, [rbx + 0x28]
mov edx, 4
call fcn.14003dd50
mov r11, qword [rbx + 0x30]
xor dword [r11 + 0xc], 1
mov rax, qword [rbx]
mov rcx, qword [rbx + 0x10]
cmp rax, rcx
je 0x14003d8d9
cmp word [rax], 0x5c
jne 0x14003d8d5
add rax, 2
cmp rax, rcx
je 0x14003d8bd
test byte [rbx + 0x64], 8
jne 0x14003d8bd
movzx ecx, word [rax]
cmp cx, 0x28
je 0x14003d8d2
cmp cx, 0x29
je 0x14003d8d2
test byte [rbx + 0x64], 0x10
jne 0x14003d8d5
movzx ecx, word [rax]
cmp cx, 0x7b
je 0x14003d8d2
cmp cx, 0x7d
jne 0x14003d8d5
mov qword [rbx], rax
add qword [rbx], 2
mov rcx, rbx
call fcn.14003bc20
jmp 0x14003db37
mov rcx, rbx
call fcn.14003f050
jmp 0x14003db2f
cmp eax, 0x5b
jne 0x14003d9c1
mov rax, qword [rbx]
mov rcx, qword [rbx + 0x10]
cmp rax, rcx
je 0x14003d948
cmp word [rax], 0x5c
jne 0x14003d944
add rax, 2
cmp rax, rcx
je 0x14003d92c
test byte [rbx + 0x64], 8
jne 0x14003d92c
movzx ecx, word [rax]
cmp cx, 0x28
je 0x14003d941
cmp cx, 0x29
je 0x14003d941
test byte [rbx + 0x64], 0x10
jne 0x14003d944
movzx ecx, word [rax]
cmp cx, 0x7b
je 0x14003d941
cmp cx, 0x7d
jne 0x14003d944
mov qword [rbx], rax
add qword [rbx], 2
mov rcx, rbx
call fcn.14003bc20
mov rcx, rbx
call fcn.14003ef40
cmp dword [rbx + 0x60], 0x5d
je 0x14003d968
mov ecx, 4
call fcn.14004868c
mov rax, qword [rbx]
mov rcx, qword [rbx + 0x10]
cmp rax, rcx
je 0x14003d9b4
cmp word [rax], 0x5c
jne 0x14003d9b0
add rax, 2
cmp rax, rcx
je 0x14003d998
test byte [rbx + 0x64], 8
jne 0x14003d998
movzx ecx, word [rax]
cmp cx, 0x28
je 0x14003d9ad
cmp cx, 0x29
je 0x14003d9ad
test byte [rbx + 0x64], 0x10
jne 0x14003d9b0
movzx ecx, word [rax]
cmp cx, 0x7b
je 0x14003d9ad
cmp cx, 0x7d
jne 0x14003d9b0
mov qword [rbx], rax
add qword [rbx], 2
mov rcx, rbx
call fcn.14003bc20
jmp 0x14003db2f
cmp eax, 0x28
jne 0x14003da9b
mov rax, qword [rbx]
mov rcx, qword [rbx + 0x10]
cmp rax, rcx
je 0x14003da16
cmp word [rax], 0x5c
jne 0x14003da12
add rax, 2
cmp rax, rcx
je 0x14003d9fa
test byte [rbx + 0x64], 8
jne 0x14003d9fa
movzx ecx, word [rax]
cmp cx, 0x28
je 0x14003da0f
cmp cx, 0x29
je 0x14003da0f
test byte [rbx + 0x64], 0x10
jne 0x14003da12
movzx ecx, word [rax]
cmp cx, 0x7b
je 0x14003da0f
cmp cx, 0x7d
jne 0x14003da12
mov qword [rbx], rax
add qword [rbx], 2
mov rcx, rbx
call fcn.14003bc20
mov rcx, rbx
call fcn.14003f120
cmp dword [rbx + 0x60], 0x29
movzx edi, al
je 0x14003da39
mov ecx, 5
call fcn.14004868c
mov rax, qword [rbx]
mov rcx, qword [rbx + 0x10]
cmp rax, rcx
je 0x14003da85
cmp word [rax], 0x5c
jne 0x14003da81
add rax, 2
cmp rax, rcx
je 0x14003da69
test byte [rbx + 0x64], 8
jne 0x14003da69
movzx ecx, word [rax]
cmp cx, 0x28
je 0x14003da7e
cmp cx, 0x29
je 0x14003da7e
test byte [rbx + 0x64], 0x10
jne 0x14003da81
movzx ecx, word [rax]
cmp cx, 0x7b
je 0x14003da7e
cmp cx, 0x7d
jne 0x14003da81
mov qword [rbx], rax
add qword [rbx], 2
mov rcx, rbx
call fcn.14003bc20
test dil, dil
je 0x14003db37
jmp 0x14003db2f
cmp eax, 0x5e
jne 0x14003dab9
lea rcx, [rbx + 0x28]
lea edx, [rax - 0x5c]
call fcn.14003dd50
mov rcx, rbx
call fcn.14003d620
jmp 0x14003db37
cmp eax, 0x24
jne 0x14003dad4
lea rcx, [rbx + 0x28]
lea edx, [rax - 0x21]
call fcn.14003dd50
mov rcx, rbx
call fcn.14003d620
jmp 0x14003db37
cmp eax, 0x2a
je 0x14003db25
cmp eax, 0x2b
je 0x14003db25
cmp eax, 0x3f
je 0x14003db25
cmp eax, 0x7b
je 0x14003db25
cmp eax, 0x7d
jne 0x14003dafb
test dword [rbx + 0x64], 0x10000000
jne 0x14003dafb
lea ecx, [rax - 0x77]
jmp 0x14003db2a
cmp eax, 0x5d
jne 0x14003db0e
test dword [rbx + 0x64], 0x10000000
jne 0x14003db0e
lea ecx, [rax - 0x59]
jmp 0x14003db2a
movzx edx, word [rbx + 0x5e]
lea rcx, [rbx + 0x28]
call fcn.14003f3d0
mov rcx, rbx
call fcn.14003d620
jmp 0x14003db2f
mov ecx, 0xa
call fcn.14004868c
mov rcx, rbx
call fcn.14003f280
cmp dword [rbx + 0x60], 0xffff
mov cl, 1
jne 0x14003d6b0
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