// File: /workspace/github_cpp_makefile_star2_O3/0x0584[P]scmin-plus/src/repl/token.cpp
// Function: token::next_symbol(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&)
bool token::next_symbol(string& e) {
    const string delim = "() \"";
    int j = 0;

    for (; e[j] and delim.find(e[j]) == string::npos; j++)
        s += e[j];
    if (not is_cons_flavor(s, this))
        type = (s == "lambda" ? tok_lambda : tok_num_or_symb);
    e.erase(0, j);
    return true;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x48, %rsp
movq %rsi, %rbx
movq %rdi, %r14
leaq -0x40(%rbp), %rax
movq %rax, -0x10(%rax)
leaq 0x23b6(%rip), %rsi      # 0x139d0
leaq 0x23b3(%rip), %rdx      # 0x139d4
leaq -0x50(%rbp), %rdi
callq 0x6b44
movq (%rbx), %rax
movb (%rax), %al
testb %al, %al
je 0x11672
leaq 0x58(%r14), %r12
xorl %r15d, %r15d
leaq -0x50(%rbp), %r13
movsbl %al, %esi
movq %r13, %rdi
xorl %edx, %edx
callq 0x3240
cmpq $-0x1, %rax
jne 0x11675
movq (%rbx), %rax
movsbl (%rax,%r15), %esi
movq %r12, %rdi
callq 0x31b0
movq (%rbx), %rax
movb 0x1(%rax,%r15), %al
incq %r15
testb %al, %al
jne 0x1163e
jmp 0x11675
xorl %r15d, %r15d
leaq 0x58(%r14), %rdi
leaq -0x60(%rbp), %rax
movq %rax, -0x10(%rax)
movw $0x2172, (%rax)         # imm = 0x2172
movq $0x2, -0x8(%rax)
movb $0x0, 0x2(%rax)
leaq 0x2359(%rip), %rsi      # 0x139f2
movl $0x5, %ecx
movq %rdi, -0x30(%rbp)
xorl %edx, %edx
callq 0x3260
movq 0x58(%r14), %rcx
testq %rax, %rax
jne 0x116fb
xorl %eax, %eax
testb %al, %al
jne 0x116fb
movq 0x60(%r14), %r13
movq -0x68(%rbp), %rax
testq %rax, %rax
je 0x116ed
movq -0x70(%rbp), %rdx
addq %rax, %rdx
decq %rdx
negq %rax
leaq (%rcx,%r13), %rsi
decq %rsi
xorl %edi, %edi
movb (%rsi,%rdi), %r8b
cmpb (%rdx,%rdi), %r8b
jne 0x116fb
decq %rdi
cmpq %rdi, %rax
jne 0x116db
addq $-0x2, %r13
movl $0x5, %r12d
movb $0x1, %al
jmp 0x11717
cmpb $0x63, (%rcx)
jne 0x1176e
movq 0x60(%r14), %r13
cmpb $0x72, -0x1(%rcx,%r13)
jne 0x1176e
decq %r13
movl $0x1, %r12d
xorl %eax, %eax
movb %al, 0x50(%r14)
cmpq %r13, %r12
jae 0x11761
movq -0x30(%rbp), %rax
movq (%rax), %rsi
movzbl (%rsi,%r12), %eax
cmpl $0x64, %eax
je 0x11736
cmpl $0x61, %eax
jne 0x1176e
movq 0x30(%r14), %rcx
movq 0x40(%r14), %rdx
decq %rdx
cmpq %rdx, %rcx
je 0x1174e
movb %al, (%rcx)
incq 0x30(%r14)
jmp 0x11759
addq %r12, %rsi
movq %r14, %rdi
callq 0x11e36
incq %r12
cmpq %r12, %r13
jne 0x11720
movl $0xa, 0x7c(%r14)
movb $0x1, %r12b
jmp 0x11771
xorl %r12d, %r12d
movq -0x70(%rbp), %rdi
leaq -0x60(%rbp), %rax
cmpq %rax, %rdi
je 0x1178a
movq -0x60(%rbp), %rsi
incq %rsi
callq 0x31f0
testb %r12b, %r12b
jne 0x117b2
leaq 0x20ba(%rip), %rsi      # 0x13850
movq -0x30(%rbp), %rdi
callq 0x30a0
testl %eax, %eax
movl $0x9, %eax
movl $0x3, %ecx
cmovel %eax, %ecx
movl %ecx, 0x7c(%r14)
movq %rbx, %rdi
xorl %esi, %esi
movq %r15, %rdx
callq 0x3080
movq -0x50(%rbp), %rdi
leaq -0x40(%rbp), %rax
cmpq %rax, %rdi
je 0x117d8
movq -0x40(%rbp), %rsi
incq %rsi
callq 0x31f0
movb $0x1, %al
addq $0x48, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0x11809
movq %rax, %rbx
movq -0x70(%rbp), %rdi
leaq -0x60(%rbp), %rax
cmpq %rax, %rdi
je 0x1180c
movq -0x60(%rbp), %rsi
incq %rsi
callq 0x31f0
jmp 0x1180c
movq %rax, %rbx
movq -0x50(%rbp), %rdi
leaq -0x40(%rbp), %rax
cmpq %rax, %rdi
je 0x11825
movq -0x40(%rbp), %rsi
incq %rsi
callq 0x31f0
movq %rbx, %rdi
callq 0x3310
nop