	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_main                           ## -- Begin function main
	.p2align	4, 0x90
_main:                                  ## @main
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	pushq	%r15
	pushq	%r14
	pushq	%r13
	pushq	%r12
	pushq	%rbx
	subq	$88, %rsp
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movq	%rsi, %rbx
	movl	%edi, %r12d
	movq	_PROC_MAIN@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movq	_ypldap_process@GOTPCREL(%rip), %rcx
	movl	%eax, (%rcx)
	movl	$1, %edi
	callq	_log_init
	leaq	L_.str.7(%rip), %rdx
	movb	$1, %al
	leaq	L_.str(%rip), %r13
	leaq	L_.str.6(%rip), %r15
	leaq	LJTI0_0(%rip), %r14
	xorl	%ecx, %ecx
	jmp	LBB0_1
	.p2align	4, 0x90
LBB0_8:                                 ##   in Loop: Header=BB0_1 Depth=1
	movq	_YPLDAP_OPT_NOACTION@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movq	_opts@GOTPCREL(%rip), %rdx
	orl	%eax, (%rdx)
	xorl	%eax, %eax
	movq	%r15, %rdx
LBB0_1:                                 ## =>This Loop Header: Depth=1
                                        ##     Child Loop BB0_2 Depth 2
	movl	%ecx, -68(%rbp)                 ## 4-byte Spill
	movq	%rdx, -80(%rbp)                 ## 8-byte Spill
                                        ## kill: def $al killed $al killed $eax
	movb	%al, -41(%rbp)                  ## 1-byte Spill
	jmp	LBB0_2
	.p2align	4, 0x90
LBB0_10:                                ##   in Loop: Header=BB0_2 Depth=2
	movq	_YPLDAP_OPT_VERBOSE@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movq	_opts@GOTPCREL(%rip), %rcx
	orl	%eax, (%rcx)
LBB0_2:                                 ##   Parent Loop BB0_1 Depth=1
                                        ## =>  This Inner Loop Header: Depth=2
	movl	%r12d, %edi
	movq	%rbx, %rsi
	movq	%r13, %rdx
	callq	_getopt
                                        ## kill: def $eax killed $eax def $rax
	leal	-100(%rax), %edx
	cmpl	$18, %edx
	ja	LBB0_3
## %bb.31:                              ##   in Loop: Header=BB0_2 Depth=2
	movl	$2, %ecx
	xorl	%eax, %eax
	movslq	(%r14,%rdx,4), %rsi
	addq	%r14, %rsi
	movq	%r15, %rdx
	jmpq	*%rsi
LBB0_9:                                 ##   in Loop: Header=BB0_2 Depth=2
	movq	_optarg@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movq	_conffile@GOTPCREL(%rip), %rcx
	movl	%eax, (%rcx)
	jmp	LBB0_2
	.p2align	4, 0x90
LBB0_3:                                 ##   in Loop: Header=BB0_2 Depth=2
	cmpl	$68, %eax
	je	LBB0_6
## %bb.4:                               ##   in Loop: Header=BB0_2 Depth=2
	cmpl	$-1, %eax
	je	LBB0_11
LBB0_5:                                 ##   in Loop: Header=BB0_2 Depth=2
	xorl	%eax, %eax
	callq	_usage
	jmp	LBB0_2
LBB0_6:                                 ##   in Loop: Header=BB0_2 Depth=2
	movq	_optarg@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	callq	_cmdline_symset
	testl	%eax, %eax
	jns	LBB0_2
## %bb.7:                               ##   in Loop: Header=BB0_2 Depth=2
	movq	_optarg@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	leaq	L_.str.1(%rip), %rdi
	callq	_log_warnx
	jmp	LBB0_2
LBB0_11:
	movq	_optind@GOTPCREL(%rip), %rax
	cmpl	%r12d, (%rax)
	je	LBB0_13
## %bb.12:
	xorl	%eax, %eax
	callq	_usage
LBB0_13:
	leaq	-52(%rbp), %rdi
	callq	_RB_INIT
	leaq	-56(%rbp), %rdi
	callq	_RB_INIT
	movq	_conffile@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	_opts@GOTPCREL(%rip), %rbx
	movl	(%rbx), %edx
	leaq	-64(%rbp), %rdi
	callq	_parse_config
	testq	%rax, %rax
	jne	LBB0_32
## %bb.14:
	movq	_YPLDAP_OPT_NOACTION@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	testl	%eax, (%rbx)
	jne	LBB0_33
## %bb.15:
	xorl	%eax, %eax
	callq	_geteuid
	testq	%rax, %rax
	je	LBB0_17
## %bb.16:
	leaq	L_.str.3(%rip), %rsi
	movl	$1, %edi
	callq	_errx
LBB0_17:
	movl	-68(%rbp), %edi                 ## 4-byte Reload
	callq	_log_init
	testb	$1, -41(%rbp)                   ## 1-byte Folded Reload
	je	LBB0_20
## %bb.18:
	movl	$1, %edi
	xorl	%esi, %esi
	callq	_daemon
	cmpl	$-1, %eax
	jne	LBB0_20
## %bb.19:
	leaq	L_.str.4(%rip), %rsi
	movl	$1, %edi
	callq	_err
LBB0_20:
	leaq	L_.str.5(%rip), %rdi
	movq	-80(%rbp), %rsi                 ## 8-byte Reload
	callq	_log_info
	movq	_AF_UNIX@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	movq	_SOCK_STREAM@GOTPCREL(%rip), %rax
	movq	_SOCK_NONBLOCK@GOTPCREL(%rip), %rcx
	movl	(%rcx), %esi
	orl	(%rax), %esi
	movq	_PF_UNSPEC@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	movq	_pipe_main2client@GOTPCREL(%rip), %rbx
	movq	(%rbx), %rcx
	callq	_socketpair
	cmpl	$-1, %eax
	jne	LBB0_22
## %bb.21:
	leaq	L_.str.8(%rip), %rdi
	callq	_fatal
LBB0_22:
	movq	(%rbx), %rdi
	callq	_ldapclient
	movq	_client_pid@GOTPCREL(%rip), %rcx
	movl	%eax, (%rcx)
	leaq	L_.str.9(%rip), %rdi
	callq	_setproctitle
	xorl	%eax, %eax
	callq	_event_init
	movq	_SIGINT@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	_main_sig_handler@GOTPCREL(%rip), %rbx
	movl	(%rbx), %edx
	leaq	-128(%rbp), %r14
	leaq	-64(%rbp), %r12
	movq	%r14, %rdi
	movq	%r12, %rcx
	callq	_signal_set
	movq	_SIGTERM@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movl	(%rbx), %edx
	leaq	-120(%rbp), %r15
	movq	%r15, %rdi
	movq	%r12, %rcx
	callq	_signal_set
	movq	_SIGHUP@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movl	(%rbx), %edx
	leaq	-104(%rbp), %r13
	movq	%r13, %rdi
	movq	%r12, %rcx
	callq	_signal_set
	movq	_SIGCHLD@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movl	(%rbx), %edx
	leaq	-112(%rbp), %rbx
	movq	%rbx, %rdi
	movq	%r12, %rcx
	callq	_signal_set
	movq	%r14, %rdi
	xorl	%esi, %esi
	callq	_signal_add
	movq	%r15, %rdi
	xorl	%esi, %esi
	callq	_signal_add
	movq	%r13, %rdi
	xorl	%esi, %esi
	callq	_signal_add
	movq	%rbx, %rdi
	movq	_pipe_main2client@GOTPCREL(%rip), %rbx
	xorl	%esi, %esi
	callq	_signal_add
	movq	(%rbx), %rax
	movl	4(%rax), %edi
	callq	_close
	movl	$1, %edi
	movl	$24, %esi
	callq	_calloc
	movq	%rax, -64(%rbp)
	testq	%rax, %rax
	jne	LBB0_24
## %bb.23:
	xorl	%edi, %edi
	callq	_fatal
	movq	-64(%rbp), %rax
LBB0_24:
	addq	$12, %rax
	movq	(%rbx), %rcx
	movl	(%rcx), %esi
	movq	%rax, %rdi
	callq	_imsg_init
	movq	_main_dispatch_client@GOTPCREL(%rip), %rax
	movl	(%rax), %ecx
	movq	-64(%rbp), %rdi
	movl	%ecx, 4(%rdi)
	movq	_EV_READ@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	movl	%edx, 8(%rdi)
	movq	%r12, 16(%rdi)
	movl	12(%rdi), %esi
	movq	%r12, %r8
	callq	_event_set
	movq	-64(%rbp), %rdi
	xorl	%esi, %esi
	callq	_event_add
	movq	%r12, %rdi
	callq	_yp_init
	movq	_YPLDAP_USER@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	callq	_getpwnam
	movq	%rax, %r14
	testq	%rax, %rax
	jne	LBB0_26
## %bb.25:
	leaq	L_.str.10(%rip), %rdi
	callq	_fatal
LBB0_26:
	leaq	4(%r14), %rbx
	movl	$1, %edi
	movq	%rbx, %rsi
	callq	_setgroups
	testq	%rax, %rax
	jne	LBB0_29
## %bb.27:
	movl	(%rbx), %edi
	movl	%edi, %esi
	movl	%edi, %edx
	callq	_setresgid
	testq	%rax, %rax
	jne	LBB0_29
## %bb.28:
	movl	(%r14), %edi
	movl	%edi, %esi
	movl	%edi, %edx
	callq	_setresuid
	testq	%rax, %rax
	je	LBB0_30
LBB0_29:
	leaq	L_.str.11(%rip), %rdi
	callq	_fatal
LBB0_30:
	leaq	-88(%rbp), %r14
	movq	%r14, %rdi
	xorl	%esi, %esi
	movl	$4, %edx
	callq	_memset
	movq	_main_init_timer@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	leaq	-96(%rbp), %rbx
	leaq	-64(%rbp), %rdx
	movq	%rbx, %rdi
	callq	_evtimer_set
	movq	%rbx, %rdi
	movq	%r14, %rsi
	callq	_evtimer_add
	xorl	%eax, %eax
	callq	_yp_enable_events
	xorl	%eax, %eax
	callq	_event_dispatch
	xorl	%eax, %eax
	callq	_main_shutdown
	xorl	%eax, %eax
	addq	$88, %rsp
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
LBB0_32:
	movl	$1, %edi
	callq	_exit
LBB0_33:
	movq	_stderr@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	leaq	L_.str.2(%rip), %rsi
	callq	_fprintf
	xorl	%edi, %edi
	callq	_exit
	.cfi_endproc
	.p2align	2, 0x90
	.data_region jt32
.set L0_0_set_1, LBB0_1-LJTI0_0
.set L0_0_set_5, LBB0_5-LJTI0_0
.set L0_0_set_9, LBB0_9-LJTI0_0
.set L0_0_set_8, LBB0_8-LJTI0_0
.set L0_0_set_10, LBB0_10-LJTI0_0
LJTI0_0:
	.long	L0_0_set_1
	.long	L0_0_set_5
	.long	L0_0_set_9
	.long	L0_0_set_5
	.long	L0_0_set_5
	.long	L0_0_set_5
	.long	L0_0_set_5
	.long	L0_0_set_5
	.long	L0_0_set_5
	.long	L0_0_set_5
	.long	L0_0_set_8
	.long	L0_0_set_5
	.long	L0_0_set_5
	.long	L0_0_set_5
	.long	L0_0_set_5
	.long	L0_0_set_5
	.long	L0_0_set_5
	.long	L0_0_set_5
	.long	L0_0_set_10
	.end_data_region
                                        ## -- End function
	.comm	_PROC_MAIN,4,2                  ## @PROC_MAIN
	.comm	_ypldap_process,4,2             ## @ypldap_process
	.section	__TEXT,__cstring,cstring_literals
L_.str:                                 ## @.str
	.asciz	"dD:nf:v"

	.comm	_optarg,4,2                     ## @optarg
L_.str.1:                               ## @.str.1
	.asciz	"could not parse macro definition %s"

	.comm	_YPLDAP_OPT_NOACTION,4,2        ## @YPLDAP_OPT_NOACTION
	.comm	_opts,4,2                       ## @opts
	.comm	_conffile,4,2                   ## @conffile
	.comm	_YPLDAP_OPT_VERBOSE,4,2         ## @YPLDAP_OPT_VERBOSE
	.comm	_optind,8,3                     ## @optind
	.comm	_stderr,4,2                     ## @stderr
L_.str.2:                               ## @.str.2
	.asciz	"configuration OK\n"

L_.str.3:                               ## @.str.3
	.asciz	"need root privileges"

L_.str.4:                               ## @.str.4
	.asciz	"failed to daemonize"

L_.str.5:                               ## @.str.5
	.asciz	"startup%s"

L_.str.6:                               ## @.str.6
	.asciz	" [debug mode]"

L_.str.7:                               ## @.str.7
	.space	1

	.comm	_AF_UNIX,4,2                    ## @AF_UNIX
	.comm	_SOCK_STREAM,4,2                ## @SOCK_STREAM
	.comm	_SOCK_NONBLOCK,4,2              ## @SOCK_NONBLOCK
	.comm	_PF_UNSPEC,4,2                  ## @PF_UNSPEC
	.comm	_pipe_main2client,8,3           ## @pipe_main2client
L_.str.8:                               ## @.str.8
	.asciz	"socketpair"

	.comm	_client_pid,4,2                 ## @client_pid
L_.str.9:                               ## @.str.9
	.asciz	"parent"

	.comm	_SIGINT,4,2                     ## @SIGINT
	.comm	_main_sig_handler,4,2           ## @main_sig_handler
	.comm	_SIGTERM,4,2                    ## @SIGTERM
	.comm	_SIGHUP,4,2                     ## @SIGHUP
	.comm	_SIGCHLD,4,2                    ## @SIGCHLD
	.comm	_main_dispatch_client,4,2       ## @main_dispatch_client
	.comm	_EV_READ,4,2                    ## @EV_READ
	.comm	_YPLDAP_USER,4,2                ## @YPLDAP_USER
L_.str.10:                              ## @.str.10
	.asciz	"getpwnam"

L_.str.11:                              ## @.str.11
	.asciz	"cannot drop privileges"

	.comm	_main_init_timer,4,2            ## @main_init_timer
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_main                           ; -- Begin function main
	.p2align	2
_main:                                  ; @main
	.cfi_startproc
; %bb.0:
	sub	sp, sp, #176
	.cfi_def_cfa_offset 176
	stp	x28, x27, [sp, #80]             ; 16-byte Folded Spill
	stp	x26, x25, [sp, #96]             ; 16-byte Folded Spill
	stp	x24, x23, [sp, #112]            ; 16-byte Folded Spill
	stp	x22, x21, [sp, #128]            ; 16-byte Folded Spill
	stp	x20, x19, [sp, #144]            ; 16-byte Folded Spill
	stp	x29, x30, [sp, #160]            ; 16-byte Folded Spill
	add	x29, sp, #160
	.cfi_def_cfa w29, 16
	.cfi_offset w30, -8
	.cfi_offset w29, -16
	.cfi_offset w19, -24
	.cfi_offset w20, -32
	.cfi_offset w21, -40
	.cfi_offset w22, -48
	.cfi_offset w23, -56
	.cfi_offset w24, -64
	.cfi_offset w25, -72
	.cfi_offset w26, -80
	.cfi_offset w27, -88
	.cfi_offset w28, -96
	mov	x22, x1
	mov	x21, x0
Lloh0:
	adrp	x8, _PROC_MAIN@GOTPAGE
Lloh1:
	ldr	x8, [x8, _PROC_MAIN@GOTPAGEOFF]
Lloh2:
	ldr	w8, [x8]
Lloh3:
	adrp	x9, _ypldap_process@GOTPAGE
Lloh4:
	ldr	x9, [x9, _ypldap_process@GOTPAGEOFF]
Lloh5:
	str	w8, [x9]
	mov	w24, #1
	mov	w0, #1
	bl	_log_init
	mov	w8, #0
Lloh6:
	adrp	x9, l_.str.7@PAGE
Lloh7:
	add	x9, x9, l_.str.7@PAGEOFF
Lloh8:
	adrp	x23, l_.str@PAGE
Lloh9:
	add	x23, x23, l_.str@PAGEOFF
Lloh10:
	adrp	x26, l_.str.6@PAGE
Lloh11:
	add	x26, x26, l_.str.6@PAGEOFF
Lloh12:
	adrp	x19, _optarg@GOTPAGE
Lloh13:
	ldr	x19, [x19, _optarg@GOTPAGEOFF]
Lloh14:
	adrp	x28, _conffile@GOTPAGE
Lloh15:
	ldr	x28, [x28, _conffile@GOTPAGEOFF]
Lloh16:
	adrp	x27, _opts@GOTPAGE
Lloh17:
	ldr	x27, [x27, _opts@GOTPAGEOFF]
Lloh18:
	adrp	x25, _YPLDAP_OPT_VERBOSE@GOTPAGE
Lloh19:
	ldr	x25, [x25, _YPLDAP_OPT_VERBOSE@GOTPAGEOFF]
Lloh20:
	adrp	x20, lJTI0_0@PAGE
Lloh21:
	add	x20, x20, lJTI0_0@PAGEOFF
	b	LBB0_2
LBB0_1:                                 ;   in Loop: Header=BB0_2 Depth=1
	mov	w24, #0
Lloh22:
	adrp	x8, _YPLDAP_OPT_NOACTION@GOTPAGE
Lloh23:
	ldr	x8, [x8, _YPLDAP_OPT_NOACTION@GOTPAGEOFF]
Lloh24:
	ldr	w8, [x8]
	ldr	w9, [x27]
	orr	w8, w9, w8
	str	w8, [x27]
	mov	w8, #2
	mov	x9, x26
LBB0_2:                                 ; =>This Loop Header: Depth=1
                                        ;     Child Loop BB0_4 Depth 2
	stp	w8, w24, [sp]                   ; 8-byte Folded Spill
	str	x9, [sp, #8]                    ; 8-byte Folded Spill
	b	LBB0_4
LBB0_3:                                 ;   in Loop: Header=BB0_4 Depth=2
	ldr	w8, [x25]
	ldr	w9, [x27]
	orr	w8, w9, w8
	str	w8, [x27]
LBB0_4:                                 ;   Parent Loop BB0_2 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	mov	x0, x21
	mov	x1, x22
	mov	x2, x23
	bl	_getopt
	sub	w9, w0, #100
	cmp	w9, #18
	b.hi	LBB0_7
; %bb.5:                                ;   in Loop: Header=BB0_4 Depth=2
	mov	w24, #0
	mov	w8, #2
	adr	x10, LBB0_1
	ldrb	w11, [x20, x9]
	add	x10, x10, x11, lsl #2
	mov	x9, x26
	br	x10
LBB0_6:                                 ;   in Loop: Header=BB0_4 Depth=2
	ldr	w8, [x19]
	str	w8, [x28]
	b	LBB0_4
LBB0_7:                                 ;   in Loop: Header=BB0_4 Depth=2
	cmp	w0, #68
	b.eq	LBB0_10
; %bb.8:                                ;   in Loop: Header=BB0_4 Depth=2
	cmn	w0, #1
	b.eq	LBB0_12
LBB0_9:                                 ;   in Loop: Header=BB0_4 Depth=2
	bl	_usage
	b	LBB0_4
LBB0_10:                                ;   in Loop: Header=BB0_4 Depth=2
	ldr	w0, [x19]
	bl	_cmdline_symset
	tbz	w0, #31, LBB0_4
; %bb.11:                               ;   in Loop: Header=BB0_4 Depth=2
	ldr	w1, [x19]
Lloh25:
	adrp	x0, l_.str.1@PAGE
Lloh26:
	add	x0, x0, l_.str.1@PAGEOFF
	bl	_log_warnx
	b	LBB0_4
LBB0_12:
Lloh27:
	adrp	x8, _optind@GOTPAGE
Lloh28:
	ldr	x8, [x8, _optind@GOTPAGEOFF]
Lloh29:
	ldr	w8, [x8]
	cmp	w8, w21
	b.eq	LBB0_14
; %bb.13:
	bl	_usage
LBB0_14:
	add	x19, sp, #64
	add	x0, x19, #12
	bl	_RB_INIT
	add	x0, x19, #8
	bl	_RB_INIT
	ldr	w1, [x28]
	ldr	w2, [x27]
	add	x0, sp, #64
	bl	_parse_config
	cbnz	x0, LBB0_32
; %bb.15:
	ldr	w8, [x27]
Lloh30:
	adrp	x9, _YPLDAP_OPT_NOACTION@GOTPAGE
Lloh31:
	ldr	x9, [x9, _YPLDAP_OPT_NOACTION@GOTPAGEOFF]
Lloh32:
	ldr	w9, [x9]
	tst	w9, w8
	b.ne	LBB0_33
; %bb.16:
	bl	_geteuid
	cbz	x0, LBB0_18
; %bb.17:
Lloh33:
	adrp	x1, l_.str.3@PAGE
Lloh34:
	add	x1, x1, l_.str.3@PAGEOFF
	mov	w0, #1
	bl	_errx
LBB0_18:
	ldr	w0, [sp]                        ; 4-byte Folded Reload
	bl	_log_init
	ldr	w8, [sp, #4]                    ; 4-byte Folded Reload
	tbz	w8, #0, LBB0_21
; %bb.19:
	mov	w0, #1
	mov	w1, #0
	bl	_daemon
	cmn	w0, #1
	b.ne	LBB0_21
; %bb.20:
Lloh35:
	adrp	x1, l_.str.4@PAGE
Lloh36:
	add	x1, x1, l_.str.4@PAGEOFF
	mov	w0, #1
	bl	_err
LBB0_21:
Lloh37:
	adrp	x0, l_.str.5@PAGE
Lloh38:
	add	x0, x0, l_.str.5@PAGEOFF
	ldr	x1, [sp, #8]                    ; 8-byte Folded Reload
	bl	_log_info
Lloh39:
	adrp	x8, _AF_UNIX@GOTPAGE
Lloh40:
	ldr	x8, [x8, _AF_UNIX@GOTPAGEOFF]
Lloh41:
	adrp	x9, _SOCK_STREAM@GOTPAGE
Lloh42:
	ldr	x9, [x9, _SOCK_STREAM@GOTPAGEOFF]
Lloh43:
	ldr	w0, [x8]
Lloh44:
	ldr	w8, [x9]
Lloh45:
	adrp	x9, _SOCK_NONBLOCK@GOTPAGE
Lloh46:
	ldr	x9, [x9, _SOCK_NONBLOCK@GOTPAGEOFF]
Lloh47:
	ldr	w9, [x9]
	orr	w1, w9, w8
Lloh48:
	adrp	x8, _PF_UNSPEC@GOTPAGE
Lloh49:
	ldr	x8, [x8, _PF_UNSPEC@GOTPAGEOFF]
Lloh50:
	ldr	w2, [x8]
Lloh51:
	adrp	x19, _pipe_main2client@GOTPAGE
Lloh52:
	ldr	x19, [x19, _pipe_main2client@GOTPAGEOFF]
	ldr	x3, [x19]
	bl	_socketpair
	cmn	w0, #1
	b.ne	LBB0_23
; %bb.22:
Lloh53:
	adrp	x0, l_.str.8@PAGE
Lloh54:
	add	x0, x0, l_.str.8@PAGEOFF
	bl	_fatal
LBB0_23:
	ldr	x0, [x19]
	bl	_ldapclient
Lloh55:
	adrp	x8, _client_pid@GOTPAGE
Lloh56:
	ldr	x8, [x8, _client_pid@GOTPAGEOFF]
Lloh57:
	str	w0, [x8]
Lloh58:
	adrp	x0, l_.str.9@PAGE
Lloh59:
	add	x0, x0, l_.str.9@PAGEOFF
	bl	_setproctitle
	bl	_event_init
Lloh60:
	adrp	x8, _SIGINT@GOTPAGE
Lloh61:
	ldr	x8, [x8, _SIGINT@GOTPAGEOFF]
Lloh62:
	ldr	w1, [x8]
Lloh63:
	adrp	x21, _main_sig_handler@GOTPAGE
Lloh64:
	ldr	x21, [x21, _main_sig_handler@GOTPAGEOFF]
	ldr	w2, [x21]
	add	x20, sp, #64
	add	x0, sp, #56
	add	x3, sp, #64
	bl	_signal_set
Lloh65:
	adrp	x8, _SIGTERM@GOTPAGE
Lloh66:
	ldr	x8, [x8, _SIGTERM@GOTPAGEOFF]
Lloh67:
	ldr	w1, [x8]
	ldr	w2, [x21]
	add	x0, sp, #48
	add	x3, sp, #64
	bl	_signal_set
Lloh68:
	adrp	x8, _SIGHUP@GOTPAGE
Lloh69:
	ldr	x8, [x8, _SIGHUP@GOTPAGEOFF]
Lloh70:
	ldr	w1, [x8]
	ldr	w2, [x21]
	add	x0, sp, #32
	add	x3, sp, #64
	bl	_signal_set
Lloh71:
	adrp	x8, _SIGCHLD@GOTPAGE
Lloh72:
	ldr	x8, [x8, _SIGCHLD@GOTPAGEOFF]
Lloh73:
	ldr	w1, [x8]
	ldr	w2, [x21]
	add	x0, sp, #40
	add	x3, sp, #64
	bl	_signal_set
	add	x0, sp, #56
	mov	x1, #0
	bl	_signal_add
	add	x0, sp, #48
	mov	x1, #0
	bl	_signal_add
	add	x0, sp, #32
	mov	x1, #0
	bl	_signal_add
	add	x0, sp, #40
	mov	x1, #0
	bl	_signal_add
	ldr	x8, [x19]
	ldr	w0, [x8, #4]
	bl	_close
	mov	w0, #1
	mov	w1, #24
	bl	_calloc
	str	x0, [sp, #64]
	cbnz	x0, LBB0_25
; %bb.24:
	bl	_fatal
	ldr	x0, [sp, #64]
LBB0_25:
	add	x0, x0, #12
	ldr	x8, [x19]
	ldr	w1, [x8]
	bl	_imsg_init
Lloh74:
	adrp	x8, _main_dispatch_client@GOTPAGE
Lloh75:
	ldr	x8, [x8, _main_dispatch_client@GOTPAGEOFF]
Lloh76:
	ldr	w3, [x8]
Lloh77:
	adrp	x8, _EV_READ@GOTPAGE
Lloh78:
	ldr	x8, [x8, _EV_READ@GOTPAGEOFF]
	ldr	x0, [sp, #64]
Lloh79:
	ldr	w2, [x8]
	stp	w3, w2, [x0, #4]
	str	x20, [x0, #16]
	ldr	w1, [x0, #12]
	add	x4, sp, #64
	bl	_event_set
	ldr	x0, [sp, #64]
	mov	x1, #0
	bl	_event_add
	add	x0, sp, #64
	bl	_yp_init
Lloh80:
	adrp	x8, _YPLDAP_USER@GOTPAGE
Lloh81:
	ldr	x8, [x8, _YPLDAP_USER@GOTPAGEOFF]
Lloh82:
	ldr	w0, [x8]
	bl	_getpwnam
	mov	x19, x0
	cbnz	x0, LBB0_27
; %bb.26:
Lloh83:
	adrp	x0, l_.str.10@PAGE
Lloh84:
	add	x0, x0, l_.str.10@PAGEOFF
	bl	_fatal
LBB0_27:
	add	x20, x19, #4
	mov	w0, #1
	mov	x1, x20
	bl	_setgroups
	cbnz	x0, LBB0_30
; %bb.28:
	ldr	w0, [x20]
	mov	x1, x0
	mov	x2, x0
	bl	_setresgid
	cbnz	x0, LBB0_30
; %bb.29:
	ldr	w0, [x19]
	mov	x1, x0
	mov	x2, x0
	bl	_setresuid
	cbz	x0, LBB0_31
LBB0_30:
Lloh85:
	adrp	x0, l_.str.11@PAGE
Lloh86:
	add	x0, x0, l_.str.11@PAGEOFF
	bl	_fatal
LBB0_31:
	add	x0, sp, #16
	mov	w1, #0
	mov	w2, #4
	bl	_memset
Lloh87:
	adrp	x8, _main_init_timer@GOTPAGE
Lloh88:
	ldr	x8, [x8, _main_init_timer@GOTPAGEOFF]
Lloh89:
	ldr	w1, [x8]
	add	x0, sp, #24
	add	x2, sp, #64
	bl	_evtimer_set
	add	x0, sp, #24
	add	x1, sp, #16
	bl	_evtimer_add
	bl	_yp_enable_events
	bl	_event_dispatch
	bl	_main_shutdown
	mov	w0, #0
	ldp	x29, x30, [sp, #160]            ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #144]            ; 16-byte Folded Reload
	ldp	x22, x21, [sp, #128]            ; 16-byte Folded Reload
	ldp	x24, x23, [sp, #112]            ; 16-byte Folded Reload
	ldp	x26, x25, [sp, #96]             ; 16-byte Folded Reload
	ldp	x28, x27, [sp, #80]             ; 16-byte Folded Reload
	add	sp, sp, #176
	ret
LBB0_32:
	mov	w0, #1
	bl	_exit
LBB0_33:
Lloh90:
	adrp	x8, _stderr@GOTPAGE
Lloh91:
	ldr	x8, [x8, _stderr@GOTPAGEOFF]
Lloh92:
	ldr	w0, [x8]
Lloh93:
	adrp	x1, l_.str.2@PAGE
Lloh94:
	add	x1, x1, l_.str.2@PAGEOFF
	bl	_fprintf
	mov	w0, #0
	bl	_exit
	.loh AdrpAdd	Lloh20, Lloh21
	.loh AdrpLdrGot	Lloh18, Lloh19
	.loh AdrpLdrGot	Lloh16, Lloh17
	.loh AdrpLdrGot	Lloh14, Lloh15
	.loh AdrpLdrGot	Lloh12, Lloh13
	.loh AdrpAdd	Lloh10, Lloh11
	.loh AdrpAdd	Lloh8, Lloh9
	.loh AdrpAdd	Lloh6, Lloh7
	.loh AdrpLdrGotStr	Lloh3, Lloh4, Lloh5
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpLdrGotLdr	Lloh22, Lloh23, Lloh24
	.loh AdrpAdd	Lloh25, Lloh26
	.loh AdrpLdrGotLdr	Lloh27, Lloh28, Lloh29
	.loh AdrpLdrGotLdr	Lloh30, Lloh31, Lloh32
	.loh AdrpAdd	Lloh33, Lloh34
	.loh AdrpAdd	Lloh35, Lloh36
	.loh AdrpLdrGot	Lloh51, Lloh52
	.loh AdrpLdrGotLdr	Lloh48, Lloh49, Lloh50
	.loh AdrpLdrGotLdr	Lloh45, Lloh46, Lloh47
	.loh AdrpLdrGotLdr	Lloh41, Lloh42, Lloh44
	.loh AdrpLdrGotLdr	Lloh39, Lloh40, Lloh43
	.loh AdrpAdd	Lloh37, Lloh38
	.loh AdrpAdd	Lloh53, Lloh54
	.loh AdrpLdrGotLdr	Lloh71, Lloh72, Lloh73
	.loh AdrpLdrGotLdr	Lloh68, Lloh69, Lloh70
	.loh AdrpLdrGotLdr	Lloh65, Lloh66, Lloh67
	.loh AdrpLdrGot	Lloh63, Lloh64
	.loh AdrpLdrGotLdr	Lloh60, Lloh61, Lloh62
	.loh AdrpAdd	Lloh58, Lloh59
	.loh AdrpLdrGotStr	Lloh55, Lloh56, Lloh57
	.loh AdrpLdrGotLdr	Lloh80, Lloh81, Lloh82
	.loh AdrpLdrGotLdr	Lloh77, Lloh78, Lloh79
	.loh AdrpLdrGotLdr	Lloh74, Lloh75, Lloh76
	.loh AdrpAdd	Lloh83, Lloh84
	.loh AdrpAdd	Lloh85, Lloh86
	.loh AdrpLdrGotLdr	Lloh87, Lloh88, Lloh89
	.loh AdrpAdd	Lloh93, Lloh94
	.loh AdrpLdrGotLdr	Lloh90, Lloh91, Lloh92
	.cfi_endproc
	.section	__TEXT,__const
lJTI0_0:
	.byte	(LBB0_2-LBB0_1)>>2
	.byte	(LBB0_9-LBB0_1)>>2
	.byte	(LBB0_6-LBB0_1)>>2
	.byte	(LBB0_9-LBB0_1)>>2
	.byte	(LBB0_9-LBB0_1)>>2
	.byte	(LBB0_9-LBB0_1)>>2
	.byte	(LBB0_9-LBB0_1)>>2
	.byte	(LBB0_9-LBB0_1)>>2
	.byte	(LBB0_9-LBB0_1)>>2
	.byte	(LBB0_9-LBB0_1)>>2
	.byte	(LBB0_1-LBB0_1)>>2
	.byte	(LBB0_9-LBB0_1)>>2
	.byte	(LBB0_9-LBB0_1)>>2
	.byte	(LBB0_9-LBB0_1)>>2
	.byte	(LBB0_9-LBB0_1)>>2
	.byte	(LBB0_9-LBB0_1)>>2
	.byte	(LBB0_9-LBB0_1)>>2
	.byte	(LBB0_9-LBB0_1)>>2
	.byte	(LBB0_3-LBB0_1)>>2
                                        ; -- End function
	.comm	_PROC_MAIN,4,2                  ; @PROC_MAIN
	.comm	_ypldap_process,4,2             ; @ypldap_process
	.section	__TEXT,__cstring,cstring_literals
l_.str:                                 ; @.str
	.asciz	"dD:nf:v"

	.comm	_optarg,4,2                     ; @optarg
l_.str.1:                               ; @.str.1
	.asciz	"could not parse macro definition %s"

	.comm	_YPLDAP_OPT_NOACTION,4,2        ; @YPLDAP_OPT_NOACTION
	.comm	_opts,4,2                       ; @opts
	.comm	_conffile,4,2                   ; @conffile
	.comm	_YPLDAP_OPT_VERBOSE,4,2         ; @YPLDAP_OPT_VERBOSE
	.comm	_optind,8,3                     ; @optind
	.comm	_stderr,4,2                     ; @stderr
l_.str.2:                               ; @.str.2
	.asciz	"configuration OK\n"

l_.str.3:                               ; @.str.3
	.asciz	"need root privileges"

l_.str.4:                               ; @.str.4
	.asciz	"failed to daemonize"

l_.str.5:                               ; @.str.5
	.asciz	"startup%s"

l_.str.6:                               ; @.str.6
	.asciz	" [debug mode]"

l_.str.7:                               ; @.str.7
	.space	1

	.comm	_AF_UNIX,4,2                    ; @AF_UNIX
	.comm	_SOCK_STREAM,4,2                ; @SOCK_STREAM
	.comm	_SOCK_NONBLOCK,4,2              ; @SOCK_NONBLOCK
	.comm	_PF_UNSPEC,4,2                  ; @PF_UNSPEC
	.comm	_pipe_main2client,8,3           ; @pipe_main2client
l_.str.8:                               ; @.str.8
	.asciz	"socketpair"

	.comm	_client_pid,4,2                 ; @client_pid
l_.str.9:                               ; @.str.9
	.asciz	"parent"

	.comm	_SIGINT,4,2                     ; @SIGINT
	.comm	_main_sig_handler,4,2           ; @main_sig_handler
	.comm	_SIGTERM,4,2                    ; @SIGTERM
	.comm	_SIGHUP,4,2                     ; @SIGHUP
	.comm	_SIGCHLD,4,2                    ; @SIGCHLD
	.comm	_main_dispatch_client,4,2       ; @main_dispatch_client
	.comm	_EV_READ,4,2                    ; @EV_READ
	.comm	_YPLDAP_USER,4,2                ; @YPLDAP_USER
l_.str.10:                              ; @.str.10
	.asciz	"getpwnam"

l_.str.11:                              ; @.str.11
	.asciz	"cannot drop privileges"

	.comm	_main_init_timer,4,2            ; @main_init_timer
.subsections_via_symbols
