// File: rksdna[P]json/./json.hpp
// Function: json::basic_reader<char, std::char_traits<char>, std::allocator<char>>::scan(char)
inline bool scan(char_type input)
    {
        switch (m_char_state)
        {
        case default_state:
            if (std::isspace(input))
                return next(default_state);

            if (input == '{')
                return token(object_begin_token), next(default_state);

            if (input == '}')
                return token(object_end_token), next(default_state);

            if (input == '[')
                return token(array_begin_token), next(default_state);

            if (input == ']')
                return token(array_end_token), next(default_state);

            if (input == ':')
                return token(colon_token), next(default_state);

            if (input == ',')
                return token(comma_token), next(default_state);

            if (input == '"')
                return next(string_state);

            if (input == '-')
                return take(input), next(integer_1_state);

            if (input == 'n')
                return next(null_1_state);

            if (input == 't')
                return next(true_1_state);

            if (input == 'f')
                return next(false_1_state);

            if (std::isdigit(input))
                return take(input), next(input == '0' ? integer_z_state : integer_n_state);

            break;

        case string_state:
            if (input == '"')
                return token(string_token), next(default_state);

            if (input == '\\')
                return next(escape_state);

            return take(input), next(string_state);

        case escape_state:
            if (input == '"')
                return take('"'), next(string_state);

            if (input == '\\')
                return take('\\'), next(string_state);

            if (input == '/')
                return take('/'), next(string_state);

            if (input == 'b')
                return take('\b'), next(string_state);

            if (input == 'f')
                return take('\f'), next(string_state);

            if (input == 'n')
                return take('\n'), next(string_state);

            if (input == 'r')
                return take('\r'), next(string_state);

            if (input == 't')
                return take('\t'), next(string_state);

            if (input == 'u')
                return next(unicode_1_state);

            break;

        case unicode_1_state:
            if (std::isxdigit(input))
                return unicode(input), next(unicode_2_state);

            break;

        case unicode_2_state:
            if (std::isxdigit(input))
                return unicode(input), next(unicode_3_state);

            break;

        case unicode_3_state:
            if (std::isxdigit(input))
                return unicode(input), next(unicode_4_state);

            break;

        case unicode_4_state:
            if (std::isxdigit(input))
                return unicode(input), take_unicode(), next(string_state);

            break;

        case integer_1_state:
            if (std::isdigit(input))
                return take(input), next(input == '0' ? integer_z_state : integer_n_state);

            break;

        case integer_n_state:
            if (std::isdigit(input))
                return take(input), next(integer_n_state);

            // no break

        case integer_z_state:
            if (input == '.')
                return take(input), next(fractional_1_state);

            if (input == 'e' || input == 'E')
                return take(input), next(exponent_state);

            return token(integer_token), repeat(default_state);

        case fractional_1_state:
            if (std::isdigit(input))
                return take(input), next(fractional_n_state);

            break;

        case fractional_n_state:
            if (std::isdigit(input))
                return take(input), next(fractional_n_state);

            if (input == 'e' || input == 'E')
                return take(input), next(exponent_state);

            return token(real_token), repeat(default_state);

        case exponent_state:
            if (std::isdigit(input))
                return take(input), next(exponent_n_state);

            if (input == '-' || input == '+')
                return take(input), next(exponent_1_state);

            break;

        case exponent_1_state:
            if (std::isdigit(input))
                return take(input), next(exponent_n_state);

            break;

        case exponent_n_state:
            if (std::isdigit(input))
                return take(input), next(exponent_n_state);

            return token(real_token), repeat(default_state);

        case null_1_state:
            if (input == 'u')
                return next(null_2_state);

            break;

        case null_2_state:
            if (input == 'l')
                return next(null_3_state);

            break;

        case null_3_state:
            if (input == 'l')
                return token(null_token), next(default_state);

            break;

        case true_1_state:
            if (input == 'r')
                return next(true_2_state);

            break;

        case true_2_state:
            if (input == 'u')
                return next(true_3_state);

            break;

        case true_3_state:
            if (input == 'e')
                return token(true_token), next(default_state);

            break;

        case false_1_state:
            if (input == 'a')
                return next(false_2_state);

            break;

        case false_2_state:
            if (input == 'l')
                return next(false_3_state);

            break;

        case false_3_state:
            if (input == 's')
                return next(false_4_state);

            break;

        case false_4_state:
            if (input == 'e')
                return token(false_token), next(default_state);

            break;
        }

        throw json::exception("unexpected character", m_row, m_column);
    }

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x40, %rsp
movb %sil, %al
movq %rdi, -0x10(%rbp)
movb %al, -0x11(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x38(%rbp)
movl 0x70(%rax), %eax
movq %rax, -0x30(%rbp)
subq $0x18, %rax
ja 0x81bd
movq -0x30(%rbp), %rax
leaq 0x37ee(%rip), %rcx      # 0xb034
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movsbl -0x11(%rbp), %edi
callq 0x2030
cmpl $0x0, %eax
je 0x7872
movq -0x38(%rbp), %rdi
xorl %esi, %esi
callq 0x82a0
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
movsbl -0x11(%rbp), %eax
cmpl $0x7b, %eax
jne 0x789b
movq -0x38(%rbp), %rdi
xorl %esi, %esi
callq 0x82c0
movq -0x38(%rbp), %rdi
xorl %esi, %esi
callq 0x82a0
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
movsbl -0x11(%rbp), %eax
cmpl $0x7d, %eax
jne 0x78c7
movq -0x38(%rbp), %rdi
movl $0x1, %esi
callq 0x82c0
movq -0x38(%rbp), %rdi
xorl %esi, %esi
callq 0x82a0
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
movsbl -0x11(%rbp), %eax
cmpl $0x5b, %eax
jne 0x78f3
movq -0x38(%rbp), %rdi
movl $0x2, %esi
callq 0x82c0
movq -0x38(%rbp), %rdi
xorl %esi, %esi
callq 0x82a0
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
movsbl -0x11(%rbp), %eax
cmpl $0x5d, %eax
jne 0x791f
movq -0x38(%rbp), %rdi
movl $0x3, %esi
callq 0x82c0
movq -0x38(%rbp), %rdi
xorl %esi, %esi
callq 0x82a0
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
movsbl -0x11(%rbp), %eax
cmpl $0x3a, %eax
jne 0x794b
movq -0x38(%rbp), %rdi
movl $0x4, %esi
callq 0x82c0
movq -0x38(%rbp), %rdi
xorl %esi, %esi
callq 0x82a0
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
movsbl -0x11(%rbp), %eax
cmpl $0x2c, %eax
jne 0x7977
movq -0x38(%rbp), %rdi
movl $0x5, %esi
callq 0x82c0
movq -0x38(%rbp), %rdi
xorl %esi, %esi
callq 0x82a0
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
movsbl -0x11(%rbp), %eax
cmpl $0x22, %eax
jne 0x7998
movq -0x38(%rbp), %rdi
movl $0x1, %esi
callq 0x82a0
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
movsbl -0x11(%rbp), %eax
cmpl $0x2d, %eax
jne 0x79c6
movq -0x38(%rbp), %rdi
movsbl -0x11(%rbp), %esi
callq 0x8940
movq -0x38(%rbp), %rdi
movl $0x7, %esi
callq 0x82a0
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
movsbl -0x11(%rbp), %eax
cmpl $0x6e, %eax
jne 0x79e7
movq -0x38(%rbp), %rdi
movl $0xf, %esi
callq 0x82a0
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
movsbl -0x11(%rbp), %eax
cmpl $0x74, %eax
jne 0x7a08
movq -0x38(%rbp), %rdi
movl $0x12, %esi
callq 0x82a0
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
movsbl -0x11(%rbp), %eax
cmpl $0x66, %eax
jne 0x7a29
movq -0x38(%rbp), %rdi
movl $0x15, %esi
callq 0x82a0
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
movsbl -0x11(%rbp), %edi
callq 0x2180
cmpl $0x0, %eax
je 0x7a6b
movq -0x38(%rbp), %rdi
movsbl -0x11(%rbp), %esi
callq 0x8940
movq -0x38(%rbp), %rdi
movsbl -0x11(%rbp), %ecx
movl $0x8, %esi
movl $0x9, %eax
cmpl $0x30, %ecx
cmovel %eax, %esi
callq 0x82a0
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
jmp 0x81bd
movsbl -0x11(%rbp), %eax
cmpl $0x22, %eax
jne 0x7a9c
movq -0x38(%rbp), %rdi
movl $0x6, %esi
callq 0x82c0
movq -0x38(%rbp), %rdi
xorl %esi, %esi
callq 0x82a0
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
movsbl -0x11(%rbp), %eax
cmpl $0x5c, %eax
jne 0x7abd
movq -0x38(%rbp), %rdi
movl $0x2, %esi
callq 0x82a0
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
movq -0x38(%rbp), %rdi
movsbl -0x11(%rbp), %esi
callq 0x8940
movq -0x38(%rbp), %rdi
movl $0x1, %esi
callq 0x82a0
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
movsbl -0x11(%rbp), %eax
cmpl $0x22, %eax
jne 0x7b11
movq -0x38(%rbp), %rdi
movl $0x22, %esi
callq 0x8940
movq -0x38(%rbp), %rdi
movl $0x1, %esi
callq 0x82a0
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
movsbl -0x11(%rbp), %eax
cmpl $0x5c, %eax
jne 0x7b40
movq -0x38(%rbp), %rdi
movl $0x5c, %esi
callq 0x8940
movq -0x38(%rbp), %rdi
movl $0x1, %esi
callq 0x82a0
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
movsbl -0x11(%rbp), %eax
cmpl $0x2f, %eax
jne 0x7b6f
movq -0x38(%rbp), %rdi
movl $0x2f, %esi
callq 0x8940
movq -0x38(%rbp), %rdi
movl $0x1, %esi
callq 0x82a0
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
movsbl -0x11(%rbp), %eax
cmpl $0x62, %eax
jne 0x7b9e
movq -0x38(%rbp), %rdi
movl $0x8, %esi
callq 0x8940
movq -0x38(%rbp), %rdi
movl $0x1, %esi
callq 0x82a0
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
movsbl -0x11(%rbp), %eax
cmpl $0x66, %eax
jne 0x7bcd
movq -0x38(%rbp), %rdi
movl $0xc, %esi
callq 0x8940
movq -0x38(%rbp), %rdi
movl $0x1, %esi
callq 0x82a0
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
movsbl -0x11(%rbp), %eax
cmpl $0x6e, %eax
jne 0x7bfc
movq -0x38(%rbp), %rdi
movl $0xa, %esi
callq 0x8940
movq -0x38(%rbp), %rdi
movl $0x1, %esi
callq 0x82a0
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
movsbl -0x11(%rbp), %eax
cmpl $0x72, %eax
jne 0x7c2b
movq -0x38(%rbp), %rdi
movl $0xd, %esi
callq 0x8940
movq -0x38(%rbp), %rdi
movl $0x1, %esi
callq 0x82a0
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
movsbl -0x11(%rbp), %eax
cmpl $0x74, %eax
jne 0x7c5a
movq -0x38(%rbp), %rdi
movl $0x9, %esi
callq 0x8940
movq -0x38(%rbp), %rdi
movl $0x1, %esi
callq 0x82a0
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
movsbl -0x11(%rbp), %eax
cmpl $0x75, %eax
jne 0x7c7b
movq -0x38(%rbp), %rdi
movl $0x3, %esi
callq 0x82a0
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
jmp 0x81bd
movsbl -0x11(%rbp), %edi
callq 0x2040
cmpl $0x0, %eax
je 0x7cb3
movq -0x38(%rbp), %rdi
movsbl -0x11(%rbp), %esi
callq 0x8970
movq -0x38(%rbp), %rdi
movl $0x4, %esi
callq 0x82a0
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
jmp 0x81bd
movsbl -0x11(%rbp), %edi
callq 0x2040
cmpl $0x0, %eax
je 0x7ceb
movq -0x38(%rbp), %rdi
movsbl -0x11(%rbp), %esi
callq 0x8970
movq -0x38(%rbp), %rdi
movl $0x5, %esi
callq 0x82a0
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
jmp 0x81bd
movsbl -0x11(%rbp), %edi
callq 0x2040
cmpl $0x0, %eax
je 0x7d23
movq -0x38(%rbp), %rdi
movsbl -0x11(%rbp), %esi
callq 0x8970
movq -0x38(%rbp), %rdi
movl $0x6, %esi
callq 0x82a0
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
jmp 0x81bd
movsbl -0x11(%rbp), %edi
callq 0x2040
cmpl $0x0, %eax
je 0x7d64
movq -0x38(%rbp), %rdi
movsbl -0x11(%rbp), %esi
callq 0x8970
movq -0x38(%rbp), %rdi
callq 0x8a50
movq -0x38(%rbp), %rdi
movl $0x1, %esi
callq 0x82a0
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
jmp 0x81bd
movsbl -0x11(%rbp), %edi
callq 0x2180
cmpl $0x0, %eax
je 0x7dab
movq -0x38(%rbp), %rdi
movsbl -0x11(%rbp), %esi
callq 0x8940
movq -0x38(%rbp), %rdi
movsbl -0x11(%rbp), %ecx
movl $0x8, %esi
movl $0x9, %eax
cmpl $0x30, %ecx
cmovel %eax, %esi
callq 0x82a0
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
jmp 0x81bd
movsbl -0x11(%rbp), %edi
callq 0x2180
cmpl $0x0, %eax
je 0x7de3
movq -0x38(%rbp), %rdi
movsbl -0x11(%rbp), %esi
callq 0x8940
movq -0x38(%rbp), %rdi
movl $0x8, %esi
callq 0x82a0
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
jmp 0x7de5
movsbl -0x11(%rbp), %eax
cmpl $0x2e, %eax
jne 0x7e13
movq -0x38(%rbp), %rdi
movsbl -0x11(%rbp), %esi
callq 0x8940
movq -0x38(%rbp), %rdi
movl $0xa, %esi
callq 0x82a0
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
movsbl -0x11(%rbp), %eax
cmpl $0x65, %eax
je 0x7e25
movsbl -0x11(%rbp), %eax
cmpl $0x45, %eax
jne 0x7e4a
movq -0x38(%rbp), %rdi
movsbl -0x11(%rbp), %esi
callq 0x8940
movq -0x38(%rbp), %rdi
movl $0xc, %esi
callq 0x82a0
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
movq -0x38(%rbp), %rdi
movl $0x7, %esi
callq 0x82c0
movq -0x38(%rbp), %rdi
xorl %esi, %esi
callq 0x8b70
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
movsbl -0x11(%rbp), %edi
callq 0x2180
cmpl $0x0, %eax
je 0x7ea0
movq -0x38(%rbp), %rdi
movsbl -0x11(%rbp), %esi
callq 0x8940
movq -0x38(%rbp), %rdi
movl $0xb, %esi
callq 0x82a0
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
jmp 0x81bd
movsbl -0x11(%rbp), %edi
callq 0x2180
cmpl $0x0, %eax
je 0x7ed8
movq -0x38(%rbp), %rdi
movsbl -0x11(%rbp), %esi
callq 0x8940
movq -0x38(%rbp), %rdi
movl $0xb, %esi
callq 0x82a0
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
movsbl -0x11(%rbp), %eax
cmpl $0x65, %eax
je 0x7eea
movsbl -0x11(%rbp), %eax
cmpl $0x45, %eax
jne 0x7f0f
movq -0x38(%rbp), %rdi
movsbl -0x11(%rbp), %esi
callq 0x8940
movq -0x38(%rbp), %rdi
movl $0xc, %esi
callq 0x82a0
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
movq -0x38(%rbp), %rdi
movl $0x8, %esi
callq 0x82c0
movq -0x38(%rbp), %rdi
xorl %esi, %esi
callq 0x8b70
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
movsbl -0x11(%rbp), %edi
callq 0x2180
cmpl $0x0, %eax
je 0x7f65
movq -0x38(%rbp), %rdi
movsbl -0x11(%rbp), %esi
callq 0x8940
movq -0x38(%rbp), %rdi
movl $0xe, %esi
callq 0x82a0
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
movsbl -0x11(%rbp), %eax
cmpl $0x2d, %eax
je 0x7f77
movsbl -0x11(%rbp), %eax
cmpl $0x2b, %eax
jne 0x7f9c
movq -0x38(%rbp), %rdi
movsbl -0x11(%rbp), %esi
callq 0x8940
movq -0x38(%rbp), %rdi
movl $0xd, %esi
callq 0x82a0
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
jmp 0x81bd
movsbl -0x11(%rbp), %edi
callq 0x2180
cmpl $0x0, %eax
je 0x7fd4
movq -0x38(%rbp), %rdi
movsbl -0x11(%rbp), %esi
callq 0x8940
movq -0x38(%rbp), %rdi
movl $0xe, %esi
callq 0x82a0
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
jmp 0x81bd
movsbl -0x11(%rbp), %edi
callq 0x2180
cmpl $0x0, %eax
je 0x800c
movq -0x38(%rbp), %rdi
movsbl -0x11(%rbp), %esi
callq 0x8940
movq -0x38(%rbp), %rdi
movl $0xe, %esi
callq 0x82a0
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
movq -0x38(%rbp), %rdi
movl $0x8, %esi
callq 0x82c0
movq -0x38(%rbp), %rdi
xorl %esi, %esi
callq 0x8b70
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
movsbl -0x11(%rbp), %eax
cmpl $0x75, %eax
jne 0x8050
movq -0x38(%rbp), %rdi
movl $0x10, %esi
callq 0x82a0
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
jmp 0x81bd
movsbl -0x11(%rbp), %eax
cmpl $0x6c, %eax
jne 0x8076
movq -0x38(%rbp), %rdi
movl $0x11, %esi
callq 0x82a0
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
jmp 0x81bd
movsbl -0x11(%rbp), %eax
cmpl $0x6c, %eax
jne 0x80a7
movq -0x38(%rbp), %rdi
movl $0x9, %esi
callq 0x82c0
movq -0x38(%rbp), %rdi
xorl %esi, %esi
callq 0x82a0
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
jmp 0x81bd
movsbl -0x11(%rbp), %eax
cmpl $0x72, %eax
jne 0x80cd
movq -0x38(%rbp), %rdi
movl $0x13, %esi
callq 0x82a0
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
jmp 0x81bd
movsbl -0x11(%rbp), %eax
cmpl $0x75, %eax
jne 0x80f3
movq -0x38(%rbp), %rdi
movl $0x14, %esi
callq 0x82a0
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
jmp 0x81bd
movsbl -0x11(%rbp), %eax
cmpl $0x65, %eax
jne 0x8124
movq -0x38(%rbp), %rdi
movl $0xa, %esi
callq 0x82c0
movq -0x38(%rbp), %rdi
xorl %esi, %esi
callq 0x82a0
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
jmp 0x81bd
movsbl -0x11(%rbp), %eax
cmpl $0x61, %eax
jne 0x814a
movq -0x38(%rbp), %rdi
movl $0x16, %esi
callq 0x82a0
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
jmp 0x81bd
movsbl -0x11(%rbp), %eax
cmpl $0x6c, %eax
jne 0x816d
movq -0x38(%rbp), %rdi
movl $0x17, %esi
callq 0x82a0
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
jmp 0x81bd
movsbl -0x11(%rbp), %eax
cmpl $0x73, %eax
jne 0x8190
movq -0x38(%rbp), %rdi
movl $0x18, %esi
callq 0x82a0
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
jmp 0x81bd
movsbl -0x11(%rbp), %eax
cmpl $0x65, %eax
jne 0x81bb
movq -0x38(%rbp), %rdi
movl $0xb, %esi
callq 0x82c0
movq -0x38(%rbp), %rdi
xorl %esi, %esi
callq 0x82a0
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x821f
jmp 0x81bd
movl $0x20, %edi
callq 0x20d0
movq %rax, %rdi
movq -0x38(%rbp), %rax
movq %rdi, %rcx
movq %rcx, -0x40(%rbp)
movq 0x98(%rax), %rdx
movq 0xa0(%rax), %rcx
leaq 0x2f94(%rip), %rsi      # 0xb17e
callq 0x5550
jmp 0x81f1
movq -0x40(%rbp), %rdi
leaq 0x7b34(%rip), %rsi      # 0xfd30
leaq -0x2c53(%rip), %rdx     # 0x55b0
callq 0x22a0
movq -0x40(%rbp), %rdi
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
callq 0x2130
jmp 0x822a
movb -0x1(%rbp), %al
andb $0x1, %al
addq $0x40, %rsp
popq %rbp
retq
movq -0x20(%rbp), %rdi
callq 0x22b0
nopw %cs:(%rax,%rax)
nopl (%rax)