// File: /workspace/github_c_makefile_star2_O1/erikdubbelboer[P]discnt/deps/jemalloc/src/ctl.c
// Function: arena_i_dss_ctl
static int
arena_i_dss_ctl(const size_t *mib, size_t miblen, void *oldp, size_t *oldlenp,
    void *newp, size_t newlen)
{
	int ret;
	const char *dss = NULL;
	unsigned arena_ind = mib[1];
	dss_prec_t dss_prec_old = dss_prec_limit;
	dss_prec_t dss_prec = dss_prec_limit;

	malloc_mutex_lock(&ctl_mtx);
	WRITE(dss, const char *);
	if (dss != NULL) {
		int i;
		bool match = false;

		for (i = 0; i < dss_prec_limit; i++) {
			if (strcmp(dss_prec_names[i], dss) == 0) {
				dss_prec = i;
				match = true;
				break;
			}
		}

		if (!match) {
			ret = EINVAL;
			goto label_return;
		}
	}

	if (arena_ind < ctl_stats.narenas) {
		arena_t *arena = arena_get(tsd_fetch(), arena_ind, false, true);
		if (arena == NULL || (dss_prec != dss_prec_limit &&
		    arena_dss_prec_set(arena, dss_prec))) {
			ret = EFAULT;
			goto label_return;
		}
		dss_prec_old = arena_dss_prec_get(arena);
	} else {
		if (dss_prec != dss_prec_limit &&
		    chunk_dss_prec_set(dss_prec)) {
			ret = EFAULT;
			goto label_return;
		}
		dss_prec_old = chunk_dss_prec_get();
	}

	dss = dss_prec_names[dss_prec_old];
	READ(dss, const char *);

	ret = 0;
label_return:
	malloc_mutex_unlock(&ctl_mtx);
	return (ret);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x18, %rsp
movq %r9, %r12
movq %r8, %rbx
movq %rcx, %r14
movq %rdx, 0x10(%rsp)
movq $0x0, 0x8(%rsp)
movq 0x8(%rdi), %r15
leaq 0x41029(%rip), %rdi     # 0x846f8
callq 0x12960
testq %rbx, %rbx
je 0x436f0
movl $0x16, %ebp
cmpq $0x8, %r12
jne 0x43866
movq (%rbx), %rax
movq %rax, 0x8(%rsp)
movq 0x8(%rsp), %r13
testq %r13, %r13
je 0x4373b
leaq 0x2b92f(%rip), %rbx     # 0x6f030
movq (%rbx), %rdi
movq %r13, %rsi
callq 0x124a0
xorl %r12d, %r12d
testl %eax, %eax
je 0x43743
cmpq $0x2, %r12
je 0x43747
movq 0x8(%rbx,%r12,8), %rdi
movq %r13, %rsi
callq 0x124a0
incq %r12
testl %eax, %eax
jne 0x43713
leaq -0x1(%r12), %rax
cmpq $0x2, %rax
setb %al
jmp 0x43750
movl $0x3, %r12d
jmp 0x4375d
movb $0x1, %al
jmp 0x43750
setb %al
movl $0x3, %r12d
movl $0x16, %ebp
testb %al, %al
je 0x43866
cmpl %r15d, 0x40fe4(%rip)    # 0x84748
jbe 0x437df
movq 0x2a87b(%rip), %rbx     # 0x6dfe8
movq %fs:0x0, %r13
addq %rbx, %r13
movl %fs:(%rbx), %eax
testl %eax, %eax
je 0x43898
cmpl $0x2, %eax
je 0x438a1
movq %fs:0x30(%rbx), %rax
testq %rax, %rax
je 0x43883
cmpl %r15d, %fs:0x38(%rbx)
jbe 0x43883
movl %r15d, %ecx
movq (%rax,%rcx,8), %rbx
testq %rbx, %rbx
je 0x43883
movl $0xe, %ebp
movl $0x3, %r15d
testq %rbx, %rbx
je 0x437db
cmpl $0x3, %r12d
je 0x43800
movq %rbx, %rdi
movl %r12d, %esi
callq 0x3c9e2
testb %al, %al
je 0x43800
xorl %eax, %eax
jmp 0x43812
cmpl $0x3, %r12d
je 0x437f6
movl %r12d, %edi
callq 0x412a1
movl $0xe, %ebp
testb %al, %al
jne 0x43866
callq 0x41278
movl %eax, %r15d
jmp 0x43816
movq %rbx, %rdi
callq 0x3c9b7
movl %eax, %r15d
movl $0x16, %ebp
movb $0x1, %al
testb %al, %al
je 0x43866
movl %r15d, %eax
leaq 0x2b810(%rip), %rcx     # 0x6f030
movq (%rcx,%rax,8), %rax
movq %rax, 0x8(%rsp)
movq 0x10(%rsp), %rdi
testq %rdi, %rdi
sete %cl
testq %r14, %r14
sete %dl
xorl %ebp, %ebp
orb %cl, %dl
jne 0x43866
movq (%r14), %rcx
cmpq $0x8, %rcx
jne 0x4384e
movq %rax, (%rdi)
jmp 0x43866
movl $0x8, %edx
cmovbq %rcx, %rdx
leaq 0x8(%rsp), %rsi
callq 0x12520
movl $0x16, %ebp
leaq 0x40e8b(%rip), %rdi     # 0x846f8
callq 0x125c0
movl %ebp, %eax
addq $0x18, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq %r13, %rdi
movl %r15d, %esi
xorl %edx, %edx
callq 0x348cd
movq %rax, %rbx
jmp 0x437b6
movl $0x1, %fs:(%rbx)
jmp 0x438a8
movl $0x3, %fs:(%rbx)
leaq 0x41555(%rip), %rax     # 0x84e04
movl (%rax), %edi
movq %r13, %rsi
callq 0x12990
testl %eax, %eax
je 0x4378d
leaq 0x162ec(%rip), %rdi     # 0x59bb4
callq 0x4f37c
leaq 0x3fe5c(%rip), %rax     # 0x83730
cmpb $0x1, (%rax)
jne 0x4378d
callq 0x120c0