// File: andrakis[P]alisp/stdlib/debug.cpp
// Function: ALisp::Stdlib::print_env(std::vector<ALisp::Cell, std::allocator<ALisp::Cell>> const&, std::shared_ptr<ALisp::Environment>)
Cell print_env(const ListType &args, EnvironmentType env) {
			// Get depth count
			size_t depth = depthCount(env);
			auto e = env;
			for (;;) {
				for (auto it = e->cbegin(); it != e->cend(); ++it) {
					std::cout << std::string(depth, '-') << "> ";
					std::cout << Atoms::Get(it->first) << " = " << it->second << std::endl;
				}
				if (!e->has_parent())
					break;
				e = e->get_parent();
				--depth;
			}
			return Nil;
		}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x110, %rsp            # imm = 0x110
movq %rdx, -0xc8(%rbp)
movq %rsi, %rax
movq -0xc8(%rbp), %rsi
movq %rdi, -0xc0(%rbp)
movq %rdi, %rcx
movq %rcx, -0xb8(%rbp)
movq %rdi, -0x8(%rbp)
movq %rax, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
leaq -0x30(%rbp), %rdi
movq %rdi, -0xb0(%rbp)
callq 0xf830
movq -0xb0(%rbp), %rdi
callq 0x34a00
movq %rax, -0xa8(%rbp)
jmp 0x34ace
leaq -0x30(%rbp), %rdi
callq 0xb8e0
movq -0xa8(%rbp), %rax
movq -0xc8(%rbp), %rsi
movq %rax, -0x20(%rbp)
leaq -0x50(%rbp), %rdi
callq 0xf830
leaq -0x50(%rbp), %rdi
callq 0xba80
movq %rax, %rdi
callq 0x30de0
movq %rax, -0xd0(%rbp)
jmp 0x34b0c
movq -0xd0(%rbp), %rax
movq %rax, -0x58(%rbp)
leaq -0x50(%rbp), %rdi
callq 0xba80
movq %rax, %rdi
callq 0x28a30
movq %rax, -0xd8(%rbp)
jmp 0x34b31
movq -0xd8(%rbp), %rax
movq %rax, -0x60(%rbp)
leaq -0x58(%rbp), %rdi
leaq -0x60(%rbp), %rsi
callq 0x28a00
testb $0x1, %al
jne 0x34b52
jmp 0x34cf3
movq -0x20(%rbp), %rax
movq %rax, -0xe8(%rbp)
leaq -0x81(%rbp), %rdi
movq %rdi, -0xe0(%rbp)
callq 0x87d0
movq -0xe8(%rbp), %rsi
movq -0xe0(%rbp), %rcx
leaq -0x80(%rbp), %rdi
movl $0x2d, %edx
callq 0x82b0
jmp 0x34b8e
movq 0x22433(%rip), %rdi     # 0x56fc8
leaq -0x80(%rbp), %rsi
callq 0x8390
movq %rax, -0xf0(%rbp)
jmp 0x34ba7
movq -0xf0(%rbp), %rdi
leaq 0x8d33(%rip), %rsi      # 0x3d8e8
callq 0x83e0
jmp 0x34bbc
leaq -0x80(%rbp), %rdi
callq 0x8878
leaq -0x81(%rbp), %rdi
callq 0x8490
leaq -0x58(%rbp), %rdi
callq 0x28a60
movq (%rax), %rsi
leaq -0x90(%rbp), %rdi
callq 0x17bb0
jmp 0x34beb
movq 0x223d6(%rip), %rdi     # 0x56fc8
leaq -0x90(%rbp), %rsi
callq 0x1c140
movq %rax, -0xf8(%rbp)
jmp 0x34c07
movq -0xf8(%rbp), %rdi
leaq 0x8ebb(%rip), %rsi      # 0x3dad0
callq 0x83e0
movq %rax, -0x100(%rbp)
jmp 0x34c23
leaq -0x58(%rbp), %rdi
callq 0x28a60
movq -0x100(%rbp), %rdi
movq %rax, %rsi
addq $0x8, %rsi
callq 0x1c140
movq %rax, -0x108(%rbp)
jmp 0x34c48
movq -0x108(%rbp), %rdi
movq 0x2233a(%rip), %rsi     # 0x56f90
callq 0x8460
jmp 0x34c5d
leaq -0x90(%rbp), %rdi
callq 0xb9d0
leaq -0x58(%rbp), %rdi
callq 0x30e10
jmp 0x34b17
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
leaq -0x30(%rbp), %rdi
callq 0xb8e0
jmp 0x34d98
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
jmp 0x34d8f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
jmp 0x34cc5
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
leaq -0x80(%rbp), %rdi
callq 0x8878
leaq -0x81(%rbp), %rdi
callq 0x8490
jmp 0x34d8f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
leaq -0x90(%rbp), %rdi
callq 0xb9d0
jmp 0x34d8f
leaq -0x50(%rbp), %rdi
callq 0xba80
movq %rax, %rdi
callq 0x17840
movb %al, -0x109(%rbp)
jmp 0x34d0c
movb -0x109(%rbp), %al
testb $0x1, %al
jne 0x34d1a
jmp 0x34d18
jmp 0x34d61
leaq -0x50(%rbp), %rdi
callq 0xba80
movq %rax, %rsi
leaq -0xa0(%rbp), %rdi
callq 0x30e40
jmp 0x34d34
leaq -0x50(%rbp), %rdi
leaq -0xa0(%rbp), %rsi
callq 0x30e70
leaq -0xa0(%rbp), %rdi
callq 0xb8e0
movq -0x20(%rbp), %rax
addq $-0x1, %rax
movq %rax, -0x20(%rbp)
jmp 0x34af2
movq -0xc0(%rbp), %rdi
leaq 0x22de9(%rip), %rsi     # 0x57b58
callq 0xb900
jmp 0x34d76
leaq -0x50(%rbp), %rdi
callq 0xb8e0
movq -0xb8(%rbp), %rax
addq $0x110, %rsp            # imm = 0x110
popq %rbp
retq
leaq -0x50(%rbp), %rdi
callq 0xb8e0
movq -0x38(%rbp), %rdi
callq 0x87b0
nopw %cs:(%rax,%rax)