// File: linuxmao-org[P]VL1-emulator/utils/sources/json.hpp
// Function: nlohmann::detail::iter_impl<nlohmann::basic_json<std::map, std::vector, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, bool, long, unsigned long, double, std::allocator, nlohmann::adl_serializer>>::operator*() const
reference operator*() const
    {
        assert(m_object != nullptr);

        switch (m_object->m_type)
        {
            case value_t::object:
            {
                assert(m_it.object_iterator != m_object->m_value.object->end());
                return m_it.object_iterator->second;
            }

            case value_t::array:
            {
                assert(m_it.array_iterator != m_object->m_value.array->end());
                return *m_it.array_iterator;
            }

            case value_t::null:
                JSON_THROW(invalid_iterator::create(214, "cannot get value"));

            default:
            {
                if (JSON_HEDLEY_LIKELY(m_it.primitive_iterator.is_begin()))
                {
                    return *m_object;
                }

                JSON_THROW(invalid_iterator::create(214, "cannot get value"));
            }
        }
    }

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xc0, %rsp
movq %rdi, -0x10(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x88(%rbp)
cmpq $0x0, (%rax)
je 0x223d2
jmp 0x223f1
leaq 0x6956(%rip), %rdi      # 0x28d2f
leaq 0x3748(%rip), %rsi      # 0x25b28
movl $0x254c, %edx           # imm = 0x254C
leaq 0x6ad0(%rip), %rcx      # 0x28ebc
callq 0x4220
movq -0x88(%rbp), %rax
movq (%rax), %rax
movb (%rax), %al
movb %al, -0x89(%rbp)
testb %al, %al
je 0x2251e
jmp 0x2240d
movb -0x89(%rbp), %al
subb $0x1, %al
je 0x22428
jmp 0x22419
movb -0x89(%rbp), %al
subb $0x2, %al
je 0x224a1
jmp 0x225db
movq -0x88(%rbp), %rax
movq %rax, %rcx
addq $0x8, %rcx
movq %rcx, -0x98(%rbp)
movq (%rax), %rax
movq 0x8(%rax), %rdi
callq 0x18430
movq -0x98(%rbp), %rdi
movq %rax, -0x18(%rbp)
leaq -0x18(%rbp), %rsi
callq 0x18490
testb $0x1, %al
jne 0x22463
jmp 0x22465
jmp 0x22484
leaq 0x52f5(%rip), %rdi      # 0x27761
leaq 0x36b5(%rip), %rsi      # 0x25b28
movl $0x2552, %edx           # imm = 0x2552
leaq 0x6a3d(%rip), %rcx      # 0x28ebc
callq 0x4220
movq -0x88(%rbp), %rdi
addq $0x8, %rdi
callq 0x184c0
addq $0x20, %rax
movq %rax, -0x8(%rbp)
jmp 0x226c3
movq -0x88(%rbp), %rax
movq %rax, %rcx
addq $0x8, %rcx
addq $0x8, %rcx
movq %rcx, -0xa0(%rbp)
movq (%rax), %rax
movq 0x8(%rax), %rdi
callq 0x12da0
movq -0xa0(%rbp), %rdi
movq %rax, -0x20(%rbp)
leaq -0x20(%rbp), %rsi
callq 0x184e0
testb $0x1, %al
jne 0x224e0
jmp 0x224e2
jmp 0x22501
leaq 0x52b0(%rip), %rdi      # 0x27799
leaq 0x3638(%rip), %rsi      # 0x25b28
movl $0x2558, %edx           # imm = 0x2558
leaq 0x69c0(%rip), %rcx      # 0x28ebc
callq 0x4220
movq -0x88(%rbp), %rdi
addq $0x8, %rdi
addq $0x8, %rdi
callq 0x13430
movq %rax, -0x8(%rbp)
jmp 0x226c3
movb $0x1, -0x55(%rbp)
movl $0x20, %edi
callq 0x4180
movq %rax, -0xb0(%rbp)
leaq -0x41(%rbp), %rdi
movq %rdi, -0xa8(%rbp)
callq 0x4560
movq -0xa8(%rbp), %rdx
leaq 0x527e(%rip), %rsi      # 0x277cf
leaq -0x40(%rbp), %rdi
callq 0x5430
jmp 0x2255c
movq -0xb0(%rbp), %rdi
movl $0xd6, %esi
leaq -0x40(%rbp), %rdx
callq 0x17890
jmp 0x22573
movq -0xb0(%rbp), %rdi
movb $0x0, -0x55(%rbp)
leaq 0x166cb(%rip), %rsi     # 0x38c50
leaq -0xabac(%rip), %rdx     # 0x179e0
callq 0x4530
jmp 0x226d9
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x50(%rbp)
movl %eax, -0x54(%rbp)
jmp 0x225b9
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x50(%rbp)
movl %eax, -0x54(%rbp)
leaq -0x40(%rbp), %rdi
callq 0x4200
leaq -0x41(%rbp), %rdi
callq 0x4360
testb $0x1, -0x55(%rbp)
jne 0x225ca
jmp 0x225d6
movq -0xb0(%rbp), %rdi
callq 0x4280
jmp 0x226d0
movq -0x88(%rbp), %rdi
addq $0x8, %rdi
addq $0x10, %rdi
callq 0x18520
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x225f9
jmp 0x2260c
movq -0x88(%rbp), %rax
movq (%rax), %rax
movq %rax, -0x8(%rbp)
jmp 0x226c3
movb $0x1, -0x7a(%rbp)
movl $0x20, %edi
callq 0x4180
movq %rax, -0xc0(%rbp)
leaq -0x79(%rbp), %rdi
movq %rdi, -0xb8(%rbp)
callq 0x4560
movq -0xb8(%rbp), %rdx
leaq 0x5190(%rip), %rsi      # 0x277cf
leaq -0x78(%rbp), %rdi
callq 0x5430
jmp 0x2264a
movq -0xc0(%rbp), %rdi
movl $0xd6, %esi
leaq -0x78(%rbp), %rdx
callq 0x17890
jmp 0x22661
movq -0xc0(%rbp), %rdi
movb $0x0, -0x7a(%rbp)
leaq 0x165dd(%rip), %rsi     # 0x38c50
leaq -0xac9a(%rip), %rdx     # 0x179e0
callq 0x4530
jmp 0x226d9
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x50(%rbp)
movl %eax, -0x54(%rbp)
jmp 0x226a4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x50(%rbp)
movl %eax, -0x54(%rbp)
leaq -0x78(%rbp), %rdi
callq 0x4200
leaq -0x79(%rbp), %rdi
callq 0x4360
testb $0x1, -0x7a(%rbp)
jne 0x226b5
jmp 0x226c1
movq -0xc0(%rbp), %rdi
callq 0x4280
jmp 0x226d0
movq -0x8(%rbp), %rax
addq $0xc0, %rsp
popq %rbp
retq
movq -0x50(%rbp), %rdi
callq 0x4550
nopl (%rax)