Function at 0x140012200
Capabilities:
Parse credit card information

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
xor cl, cl
cmp dword [rbx + 0x60], 0xffff
je 0x1400126de
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 0x1400126c6
cmp eax, 0x29
jne 0x14001225b
cmp dword [rbx + 0x1c], esi
jne 0x1400126c6
test dword [rbx + 0x64], 0x10000000
jne 0x14001225b
lea ecx, [rax - 0x24]
jmp 0x1400126aa
cmp eax, 0x2e
jne 0x140012316
lea ecx, [rax - 0xe]
call fcn.14005baec
mov r11, rax
test rax, rax
je 0x140012289
mov qword [rax], rbp
mov qword [rax + 8], 5
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rsi
jmp 0x14001228c
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 0x1400122b1
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 0x140012309
cmp word [rax], 0x5c
jne 0x140012305
add rax, 2
cmp rax, rcx
je 0x1400122ed
test byte [rbx + 0x64], 8
jne 0x1400122ed
movzx ecx, word [rax]
cmp cx, 0x28
je 0x140012302
cmp cx, 0x29
je 0x140012302
test byte [rbx + 0x64], 0x10
jne 0x140012305
movzx ecx, word [rax]
cmp cx, 0x7b
je 0x140012302
cmp cx, 0x7d
jne 0x140012305
mov qword [rbx], rax
add qword [rbx], 2
mov rcx, rbx
call fcn.140010970
jmp 0x1400126af
cmp eax, 0x5c
jne 0x140012473
mov rax, qword [rbx]
mov rcx, qword [rbx + 0x10]
cmp rax, rcx
je 0x14001236b
cmp word [rax], 0x5c
jne 0x140012367
add rax, 2
cmp rax, rcx
je 0x14001234f
test byte [rbx + 0x64], 8
jne 0x14001234f
movzx ecx, word [rax]
cmp cx, 0x28
je 0x140012364
cmp cx, 0x29
je 0x140012364
test byte [rbx + 0x64], 0x10
jne 0x140012367
movzx ecx, word [rax]
cmp cx, 0x7b
je 0x140012364
cmp cx, 0x7d
jne 0x140012367
mov qword [rbx], rax
add qword [rbx], 2
mov rcx, rbx
call fcn.140010970
mov eax, dword [rbx + 0x64]
and eax, 0x80
je 0x1400123eb
cmp word [rbx + 0x5e], 0x62
jne 0x1400123eb
lea rcx, [rbx + 0x28]
mov edx, 4
call fcn.1400127e0
mov rax, qword [rbx]
mov rcx, qword [rbx + 0x10]
cmp rax, rcx
je 0x1400123de
cmp word [rax], 0x5c
jne 0x1400123da
add rax, 2
cmp rax, rcx
je 0x1400123c2
test byte [rbx + 0x64], 8
jne 0x1400123c2
movzx ecx, word [rax]
cmp cx, 0x28
je 0x1400123d7
cmp cx, 0x29
je 0x1400123d7
test byte [rbx + 0x64], 0x10
jne 0x1400123da
movzx ecx, word [rax]
cmp cx, 0x7b
je 0x1400123d7
cmp cx, 0x7d
jne 0x1400123da
mov qword [rbx], rax
add qword [rbx], 2
mov rcx, rbx
call fcn.140010970
jmp 0x1400126b7
test eax, eax
je 0x140012466
cmp word [rbx + 0x5e], 0x42
jne 0x140012466
lea rcx, [rbx + 0x28]
mov edx, 4
call fcn.1400127e0
mov r11, qword [rbx + 0x30]
xor dword [r11 + 0xc], 1
mov rax, qword [rbx]
mov rcx, qword [rbx + 0x10]
cmp rax, rcx
je 0x140012459
cmp word [rax], 0x5c
jne 0x140012455
add rax, 2
cmp rax, rcx
je 0x14001243d
test byte [rbx + 0x64], 8
jne 0x14001243d
movzx ecx, word [rax]
cmp cx, 0x28
je 0x140012452
cmp cx, 0x29
je 0x140012452
test byte [rbx + 0x64], 0x10
jne 0x140012455
movzx ecx, word [rax]
cmp cx, 0x7b
je 0x140012452
cmp cx, 0x7d
jne 0x140012455
mov qword [rbx], rax
add qword [rbx], 2
mov rcx, rbx
call fcn.140010970
jmp 0x1400126b7
mov rcx, rbx
call fcn.140013350
jmp 0x1400126af
cmp eax, 0x5b
jne 0x140012541
mov rax, qword [rbx]
mov rcx, qword [rbx + 0x10]
cmp rax, rcx
je 0x1400124c8
cmp word [rax], 0x5c
jne 0x1400124c4
add rax, 2
cmp rax, rcx
je 0x1400124ac
test byte [rbx + 0x64], 8
jne 0x1400124ac
movzx ecx, word [rax]
cmp cx, 0x28
je 0x1400124c1
cmp cx, 0x29
je 0x1400124c1
test byte [rbx + 0x64], 0x10
jne 0x1400124c4
movzx ecx, word [rax]
cmp cx, 0x7b
je 0x1400124c1
cmp cx, 0x7d
jne 0x1400124c4
mov qword [rbx], rax
add qword [rbx], 2
mov rcx, rbx
call fcn.140010970
mov rcx, rbx
call fcn.140013240
cmp dword [rbx + 0x60], 0x5d
je 0x1400124e8
mov ecx, 4
call fcn.1400745d8
mov rax, qword [rbx]
mov rcx, qword [rbx + 0x10]
cmp rax, rcx
je 0x140012534
cmp word [rax], 0x5c
jne 0x140012530
add rax, 2
cmp rax, rcx
je 0x140012518
test byte [rbx + 0x64], 8
jne 0x140012518
movzx ecx, word [rax]
cmp cx, 0x28
je 0x14001252d
cmp cx, 0x29
je 0x14001252d
test byte [rbx + 0x64], 0x10
jne 0x140012530
movzx ecx, word [rax]
cmp cx, 0x7b
je 0x14001252d
cmp cx, 0x7d
jne 0x140012530
mov qword [rbx], rax
add qword [rbx], 2
mov rcx, rbx
call fcn.140010970
jmp 0x1400126af
cmp eax, 0x28
jne 0x14001261b
mov rax, qword [rbx]
mov rcx, qword [rbx + 0x10]
cmp rax, rcx
je 0x140012596
cmp word [rax], 0x5c
jne 0x140012592
add rax, 2
cmp rax, rcx
je 0x14001257a
test byte [rbx + 0x64], 8
jne 0x14001257a
movzx ecx, word [rax]
cmp cx, 0x28
je 0x14001258f
cmp cx, 0x29
je 0x14001258f
test byte [rbx + 0x64], 0x10
jne 0x140012592
movzx ecx, word [rax]
cmp cx, 0x7b
je 0x14001258f
cmp cx, 0x7d
jne 0x140012592
mov qword [rbx], rax
add qword [rbx], 2
mov rcx, rbx
call fcn.140010970
mov rcx, rbx
call fcn.140013420
cmp dword [rbx + 0x60], 0x29
movzx edi, al
je 0x1400125b9
mov ecx, 5
call fcn.1400745d8
mov rax, qword [rbx]
mov rcx, qword [rbx + 0x10]
cmp rax, rcx
je 0x140012605
cmp word [rax], 0x5c
jne 0x140012601
add rax, 2
cmp rax, rcx
je 0x1400125e9
test byte [rbx + 0x64], 8
jne 0x1400125e9
movzx ecx, word [rax]
cmp cx, 0x28
je 0x1400125fe
cmp cx, 0x29
je 0x1400125fe
test byte [rbx + 0x64], 0x10
jne 0x140012601
movzx ecx, word [rax]
cmp cx, 0x7b
je 0x1400125fe
cmp cx, 0x7d
jne 0x140012601
mov qword [rbx], rax
add qword [rbx], 2
mov rcx, rbx
call fcn.140010970
test dil, dil
je 0x1400126b7
jmp 0x1400126af
cmp eax, 0x5e
jne 0x140012639
lea rcx, [rbx + 0x28]
lea edx, [rax - 0x5c]
call fcn.1400127e0
mov rcx, rbx
call fcn.1400121a0
jmp 0x1400126b7
cmp eax, 0x24
jne 0x140012654
lea rcx, [rbx + 0x28]
lea edx, [rax - 0x21]
call fcn.1400127e0
mov rcx, rbx
call fcn.1400121a0
jmp 0x1400126b7
cmp eax, 0x2a
je 0x1400126a5
cmp eax, 0x2b
je 0x1400126a5
cmp eax, 0x3f
je 0x1400126a5
cmp eax, 0x7b
je 0x1400126a5
cmp eax, 0x7d
jne 0x14001267b
test dword [rbx + 0x64], 0x10000000
jne 0x14001267b
lea ecx, [rax - 0x77]
jmp 0x1400126aa
cmp eax, 0x5d
jne 0x14001268e
test dword [rbx + 0x64], 0x10000000
jne 0x14001268e
lea ecx, [rax - 0x59]
jmp 0x1400126aa
movzx edx, word [rbx + 0x5e]
lea rcx, [rbx + 0x28]
call fcn.140012dc0
mov rcx, rbx
call fcn.1400121a0
jmp 0x1400126af
mov ecx, 0xa
call fcn.1400745d8
mov rcx, rbx
call fcn.140013580
cmp dword [rbx + 0x60], 0xffff
mov cl, 1
jne 0x140012230
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