	.file	"189446.c"
	.intel_syntax noprefix
	.text
	.section	.rodata
.LC0:
	.string	"ethers"
.LC1:
	.string	"group"
.LC2:
	.string	"hosts"
.LC3:
	.string	"networks"
.LC4:
	.string	"passwd"
.LC5:
	.string	"protocols"
.LC6:
	.string	"rpc"
.LC7:
	.string	"services"
.LC8:
	.string	"shells"
	.section	.data.rel.local,"aw"
	.align 32
	.type	databases, @object
	.size	databases, 160
databases:
	.quad	.LC0
	.quad	ethers
	.quad	.LC1
	.quad	group
	.quad	.LC2
	.quad	hosts
	.quad	.LC3
	.quad	networks
	.quad	.LC4
	.quad	passwd
	.quad	.LC5
	.quad	protocols
	.quad	.LC6
	.quad	rpc
	.quad	.LC7
	.quad	services
	.quad	.LC8
	.quad	shells
	.quad	0
	.quad	0
	.section	.rodata
.LC9:
	.string	"%s: unknown database: %s\n"
	.text
	.globl	main
	.type	main, @function
main:
.LFB6:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	DWORD PTR -20[rbp], edi
	mov	QWORD PTR -32[rbp], rsi
	cmp	DWORD PTR -20[rbp], 1
	jg	.L2
	call	usage
.L2:
	lea	rax, databases[rip]
	mov	QWORD PTR -8[rbp], rax
	jmp	.L3
.L5:
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 8
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR [rax]
	mov	rsi, rdx
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L4
	mov	rax, QWORD PTR -8[rbp]
	mov	rcx, QWORD PTR 8[rax]
	mov	rdx, QWORD PTR -32[rbp]
	mov	eax, DWORD PTR -20[rbp]
	mov	rsi, rdx
	mov	edi, eax
	call	rcx
	mov	edi, eax
	call	exit@PLT
.L4:
	add	QWORD PTR -8[rbp], 16
.L3:
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR [rax]
	test	rax, rax
	jne	.L5
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 8
	mov	rcx, QWORD PTR [rax]
	mov	rdx, QWORD PTR __progname[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rsi, .LC9[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	eax, 1
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE6:
	.size	main, .-main
	.section	.rodata
.LC10:
	.string	"usage: %s database [key ...]\n"
	.text
	.type	usage, @function
usage:
.LFB7:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	rdx, QWORD PTR __progname[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rsi, .LC10[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	edi, 1
	call	exit@PLT
	.cfi_endproc
.LFE7:
	.size	usage, .-usage
	.section	.rodata
.LC11:
	.string	"%s%s"
	.text
	.type	printfmtstrings, @function
printfmtstrings:
.LFB8:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 256
	mov	QWORD PTR -232[rbp], rdi
	mov	QWORD PTR -240[rbp], rsi
	mov	QWORD PTR -248[rbp], rdx
	mov	QWORD PTR -256[rbp], rcx
	mov	QWORD PTR -144[rbp], r8
	mov	QWORD PTR -136[rbp], r9
	test	al, al
	je	.L9
	movaps	XMMWORD PTR -128[rbp], xmm0
	movaps	XMMWORD PTR -112[rbp], xmm1
	movaps	XMMWORD PTR -96[rbp], xmm2
	movaps	XMMWORD PTR -80[rbp], xmm3
	movaps	XMMWORD PTR -64[rbp], xmm4
	movaps	XMMWORD PTR -48[rbp], xmm5
	movaps	XMMWORD PTR -32[rbp], xmm6
	movaps	XMMWORD PTR -16[rbp], xmm7
.L9:
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -184[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -208[rbp], 32
	mov	DWORD PTR -204[rbp], 48
	lea	rax, 16[rbp]
	mov	QWORD PTR -200[rbp], rax
	lea	rax, -176[rbp]
	mov	QWORD PTR -192[rbp], rax
	lea	rdx, -208[rbp]
	mov	rax, QWORD PTR -256[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	vprintf@PLT
	mov	rax, QWORD PTR -240[rbp]
	mov	QWORD PTR -216[rbp], rax
	mov	DWORD PTR -220[rbp], 0
	jmp	.L10
.L11:
	mov	eax, DWORD PTR -220[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -232[rbp]
	add	rax, rdx
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -216[rbp]
	mov	rsi, rax
	lea	rdi, .LC11[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rax, QWORD PTR -248[rbp]
	mov	QWORD PTR -216[rbp], rax
	add	DWORD PTR -220[rbp], 1
.L10:
	mov	eax, DWORD PTR -220[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -232[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	test	rax, rax
	jne	.L11
	mov	edi, 10
	call	putchar@PLT
	nop
	mov	rax, QWORD PTR -184[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L12
	call	__stack_chk_fail@PLT
.L12:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE8:
	.size	printfmtstrings, .-printfmtstrings
	.section	.rodata
	.align 8
.LC12:
	.string	"%s: Enumeration not supported on ethers\n"
.LC13:
	.string	"%-17s  %s\n"
	.text
	.type	ethers, @function
ethers:
.LFB9:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	add	rsp, -128
	mov	DWORD PTR -116[rbp], edi
	mov	QWORD PTR -128[rbp], rsi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -108[rbp], 0
	cmp	DWORD PTR -116[rbp], 2
	jne	.L14
	mov	rdx, QWORD PTR __progname[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rsi, .LC12[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	DWORD PTR -108[rbp], 3
	jmp	.L15
.L14:
	mov	DWORD PTR -112[rbp], 2
	jmp	.L16
.L19:
	mov	eax, DWORD PTR -112[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -128[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	rdi, rax
	mov	eax, 0
	call	ether_aton@PLT
	cdqe
	mov	QWORD PTR -96[rbp], rax
	cmp	QWORD PTR -96[rbp], 0
	jne	.L17
	lea	rax, -86[rbp]
	mov	QWORD PTR -96[rbp], rax
	mov	eax, DWORD PTR -112[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -128[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	QWORD PTR -104[rbp], rax
	mov	rdx, QWORD PTR -96[rbp]
	mov	rax, QWORD PTR -104[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	mov	eax, 0
	call	ether_hostton@PLT
	test	eax, eax
	je	.L18
	mov	DWORD PTR -108[rbp], 2
	jmp	.L15
.L17:
	lea	rax, -80[rbp]
	mov	QWORD PTR -104[rbp], rax
	mov	rdx, QWORD PTR -96[rbp]
	mov	rax, QWORD PTR -104[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	mov	eax, 0
	call	ether_ntohost@PLT
	test	eax, eax
	je	.L18
	mov	DWORD PTR -108[rbp], 2
	jmp	.L15
.L18:
	mov	rax, QWORD PTR -96[rbp]
	mov	rdi, rax
	mov	eax, 0
	call	ether_ntoa@PLT
	mov	ecx, eax
	mov	rax, QWORD PTR -104[rbp]
	mov	rdx, rax
	mov	esi, ecx
	lea	rdi, .LC13[rip]
	mov	eax, 0
	call	printf@PLT
	add	DWORD PTR -112[rbp], 1
.L16:
	mov	eax, DWORD PTR -112[rbp]
	cmp	eax, DWORD PTR -116[rbp]
	jl	.L19
.L15:
	mov	eax, DWORD PTR -108[rbp]
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L21
	call	__stack_chk_fail@PLT
.L21:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE9:
	.size	ethers, .-ethers
	.section	.rodata
.LC14:
	.string	"%s:%s:%u"
.LC15:
	.string	","
.LC16:
	.string	":"
	.text
	.type	group, @function
group:
.LFB10:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 64
	mov	DWORD PTR -52[rbp], edi
	mov	QWORD PTR -64[rbp], rsi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -36[rbp], 0
	mov	edi, 1
	mov	eax, 0
	call	setgroupent@PLT
	cmp	DWORD PTR -52[rbp], 2
	jne	.L23
	jmp	.L24
.L25:
	mov	rax, QWORD PTR -24[rbp]
	mov	edx, DWORD PTR 16[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	rcx, QWORD PTR [rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 24[rax]
	sub	rsp, 8
	push	rdx
	mov	r9, rsi
	mov	r8, rcx
	lea	rcx, .LC14[rip]
	lea	rdx, .LC15[rip]
	lea	rsi, .LC16[rip]
	mov	rdi, rax
	mov	eax, 0
	call	printfmtstrings
	add	rsp, 16
.L24:
	call	getgrent@PLT
	mov	QWORD PTR -24[rbp], rax
	cmp	QWORD PTR -24[rbp], 0
	jne	.L25
	jmp	.L26
.L23:
	mov	DWORD PTR -40[rbp], 2
	jmp	.L27
.L31:
	mov	eax, DWORD PTR -40[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -64[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rdx, -32[rbp]
	mov	rcx, rdx
	mov	edx, -1
	mov	esi, 0
	mov	rdi, rax
	mov	eax, 0
	call	strtonum@PLT
	cdqe
	mov	QWORD PTR -16[rbp], rax
	mov	rax, QWORD PTR -32[rbp]
	test	rax, rax
	jne	.L28
	mov	rax, QWORD PTR -16[rbp]
	mov	edi, eax
	call	getgrgid@PLT
	mov	QWORD PTR -24[rbp], rax
	jmp	.L29
.L28:
	mov	eax, DWORD PTR -40[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -64[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	rdi, rax
	call	getgrnam@PLT
	mov	QWORD PTR -24[rbp], rax
.L29:
	cmp	QWORD PTR -24[rbp], 0
	je	.L30
	mov	rax, QWORD PTR -24[rbp]
	mov	edx, DWORD PTR 16[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	rcx, QWORD PTR [rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 24[rax]
	sub	rsp, 8
	push	rdx
	mov	r9, rsi
	mov	r8, rcx
	lea	rcx, .LC14[rip]
	lea	rdx, .LC15[rip]
	lea	rsi, .LC16[rip]
	mov	rdi, rax
	mov	eax, 0
	call	printfmtstrings
	add	rsp, 16
	add	DWORD PTR -40[rbp], 1
	jmp	.L27
.L30:
	mov	DWORD PTR -36[rbp], 2
	jmp	.L26
.L27:
	mov	eax, DWORD PTR -40[rbp]
	cmp	eax, DWORD PTR -52[rbp]
	jl	.L31
.L26:
	call	endgrent@PLT
	mov	eax, DWORD PTR -36[rbp]
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L33
	call	__stack_chk_fail@PLT
.L33:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE10:
	.size	group, .-group
	.section	.rodata
.LC17:
	.string	"# unknown"
.LC18:
	.string	"%-16s  %s"
.LC19:
	.string	" "
.LC20:
	.string	"  "
	.text
	.type	hostsprint, @function
hostsprint:
.LFB11:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 80
	mov	QWORD PTR -72[rbp], rdi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	rax, QWORD PTR -72[rbp]
	mov	rax, QWORD PTR 24[rax]
	mov	rsi, QWORD PTR [rax]
	mov	rax, QWORD PTR -72[rbp]
	mov	eax, DWORD PTR 16[rax]
	lea	rdx, -64[rbp]
	mov	ecx, 46
	mov	edi, eax
	call	inet_ntop@PLT
	test	rax, rax
	jne	.L35
	lea	rax, -64[rbp]
	mov	edx, 46
	lea	rsi, .LC17[rip]
	mov	rdi, rax
	mov	eax, 0
	call	strlcpy@PLT
.L35:
	mov	rax, QWORD PTR -72[rbp]
	mov	rcx, QWORD PTR [rax]
	mov	rax, QWORD PTR -72[rbp]
	mov	rax, QWORD PTR 8[rax]
	lea	rdx, -64[rbp]
	mov	r9, rcx
	mov	r8, rdx
	lea	rcx, .LC18[rip]
	lea	rdx, .LC19[rip]
	lea	rsi, .LC20[rip]
	mov	rdi, rax
	mov	eax, 0
	call	printfmtstrings
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L36
	call	__stack_chk_fail@PLT
.L36:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE11:
	.size	hostsprint, .-hostsprint
	.type	hosts, @function
hosts:
.LFB12:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 64
	mov	DWORD PTR -52[rbp], edi
	mov	QWORD PTR -64[rbp], rsi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -44[rbp], 0
	mov	edi, 1
	call	sethostent@PLT
	cmp	DWORD PTR -52[rbp], 2
	jne	.L38
	jmp	.L39
.L40:
	mov	rax, QWORD PTR -40[rbp]
	mov	rdi, rax
	call	hostsprint
.L39:
	call	gethostent@PLT
	mov	QWORD PTR -40[rbp], rax
	cmp	QWORD PTR -40[rbp], 0
	jne	.L40
	jmp	.L41
.L38:
	mov	DWORD PTR -48[rbp], 2
	jmp	.L42
.L48:
	mov	eax, DWORD PTR -48[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -64[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rdx, -32[rbp]
	mov	rsi, rax
	mov	edi, 10
	call	inet_pton@PLT
	test	eax, eax
	jle	.L43
	lea	rax, -32[rbp]
	mov	edx, 10
	mov	esi, 16
	mov	rdi, rax
	call	gethostbyaddr@PLT
	mov	QWORD PTR -40[rbp], rax
	jmp	.L44
.L43:
	mov	eax, DWORD PTR -48[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -64[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rdx, -32[rbp]
	mov	rsi, rax
	mov	edi, 2
	call	inet_pton@PLT
	test	eax, eax
	jle	.L45
	lea	rax, -32[rbp]
	mov	edx, 2
	mov	esi, 4
	mov	rdi, rax
	call	gethostbyaddr@PLT
	mov	QWORD PTR -40[rbp], rax
	jmp	.L44
.L45:
	mov	eax, DWORD PTR -48[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -64[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	rdi, rax
	call	gethostbyname@PLT
	mov	QWORD PTR -40[rbp], rax
.L44:
	cmp	QWORD PTR -40[rbp], 0
	je	.L46
	mov	rax, QWORD PTR -40[rbp]
	mov	rdi, rax
	call	hostsprint
	jmp	.L51
.L46:
	mov	DWORD PTR -44[rbp], 2
	jmp	.L41
.L51:
	add	DWORD PTR -48[rbp], 1
.L42:
	mov	eax, DWORD PTR -48[rbp]
	cmp	eax, DWORD PTR -52[rbp]
	jl	.L48
.L41:
	call	endhostent@PLT
	mov	eax, DWORD PTR -44[rbp]
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L50
	call	__stack_chk_fail@PLT
.L50:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE12:
	.size	hosts, .-hosts
	.type	networksprint, @function
networksprint:
.LFB13:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 96
	mov	QWORD PTR -88[rbp], rdi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	rax, QWORD PTR -88[rbp]
	mov	eax, DWORD PTR 20[rax]
	mov	esi, 0
	mov	edi, eax
	call	inet_makeaddr@PLT
	mov	DWORD PTR -68[rbp], eax
	mov	rax, QWORD PTR -88[rbp]
	mov	eax, DWORD PTR 16[rax]
	lea	rdx, -64[rbp]
	lea	rsi, -68[rbp]
	mov	ecx, 46
	mov	edi, eax
	call	inet_ntop@PLT
	test	rax, rax
	jne	.L53
	lea	rax, -64[rbp]
	mov	edx, 46
	lea	rsi, .LC17[rip]
	mov	rdi, rax
	mov	eax, 0
	call	strlcpy@PLT
.L53:
	mov	rax, QWORD PTR -88[rbp]
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -88[rbp]
	mov	rax, QWORD PTR 8[rax]
	lea	rcx, -64[rbp]
	mov	r9, rcx
	mov	r8, rdx
	lea	rcx, .LC18[rip]
	lea	rdx, .LC19[rip]
	lea	rsi, .LC20[rip]
	mov	rdi, rax
	mov	eax, 0
	call	printfmtstrings
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L54
	call	__stack_chk_fail@PLT
.L54:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE13:
	.size	networksprint, .-networksprint
	.type	networks, @function
networks:
.LFB14:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	DWORD PTR -36[rbp], edi
	mov	QWORD PTR -48[rbp], rsi
	mov	DWORD PTR -16[rbp], 0
	mov	edi, 1
	call	setnetent@PLT
	cmp	DWORD PTR -36[rbp], 2
	jne	.L56
	jmp	.L57
.L58:
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	networksprint
.L57:
	call	getnetent@PLT
	mov	QWORD PTR -8[rbp], rax
	cmp	QWORD PTR -8[rbp], 0
	jne	.L58
	jmp	.L59
.L56:
	mov	DWORD PTR -20[rbp], 2
	jmp	.L60
.L65:
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -48[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	rdi, rax
	call	inet_network@PLT
	mov	DWORD PTR -12[rbp], eax
	cmp	DWORD PTR -12[rbp], -1
	je	.L61
	mov	eax, DWORD PTR -12[rbp]
	mov	esi, 2
	mov	edi, eax
	call	getnetbyaddr@PLT
	mov	QWORD PTR -8[rbp], rax
	jmp	.L62
.L61:
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -48[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	rdi, rax
	call	getnetbyname@PLT
	mov	QWORD PTR -8[rbp], rax
.L62:
	cmp	QWORD PTR -8[rbp], 0
	je	.L63
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	networksprint
	jmp	.L67
.L63:
	mov	DWORD PTR -16[rbp], 2
	jmp	.L59
.L67:
	add	DWORD PTR -20[rbp], 1
.L60:
	mov	eax, DWORD PTR -20[rbp]
	cmp	eax, DWORD PTR -36[rbp]
	jl	.L65
.L59:
	call	endnetent@PLT
	mov	eax, DWORD PTR -16[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE14:
	.size	networks, .-networks
	.section	.rodata
.LC21:
	.string	"%s:%s:%u:%u:%s:%s:%s\n"
	.text
	.type	passwd, @function
passwd:
.LFB15:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 64
	mov	DWORD PTR -52[rbp], edi
	mov	QWORD PTR -64[rbp], rsi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -36[rbp], 0
	mov	edi, 1
	mov	eax, 0
	call	setpassent@PLT
	cmp	DWORD PTR -52[rbp], 2
	jne	.L69
	jmp	.L70
.L71:
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, QWORD PTR 40[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	r9, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	r8d, DWORD PTR 20[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	ecx, DWORD PTR 16[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	rdx, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR [rax]
	push	rdi
	push	rsi
	mov	rsi, rax
	lea	rdi, .LC21[rip]
	mov	eax, 0
	call	printf@PLT
	add	rsp, 16
.L70:
	call	getpwent@PLT
	mov	QWORD PTR -24[rbp], rax
	cmp	QWORD PTR -24[rbp], 0
	jne	.L71
	jmp	.L72
.L69:
	mov	DWORD PTR -40[rbp], 2
	jmp	.L73
.L77:
	mov	eax, DWORD PTR -40[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -64[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rdx, -32[rbp]
	mov	rcx, rdx
	mov	edx, -1
	mov	esi, 0
	mov	rdi, rax
	mov	eax, 0
	call	strtonum@PLT
	cdqe
	mov	QWORD PTR -16[rbp], rax
	mov	rax, QWORD PTR -32[rbp]
	test	rax, rax
	jne	.L74
	mov	rax, QWORD PTR -16[rbp]
	mov	edi, eax
	call	getpwuid@PLT
	mov	QWORD PTR -24[rbp], rax
	jmp	.L75
.L74:
	mov	eax, DWORD PTR -40[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -64[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	rdi, rax
	call	getpwnam@PLT
	mov	QWORD PTR -24[rbp], rax
.L75:
	cmp	QWORD PTR -24[rbp], 0
	je	.L76
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, QWORD PTR 40[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	r9, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	r8d, DWORD PTR 20[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	ecx, DWORD PTR 16[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	rdx, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR [rax]
	push	rdi
	push	rsi
	mov	rsi, rax
	lea	rdi, .LC21[rip]
	mov	eax, 0
	call	printf@PLT
	add	rsp, 16
	add	DWORD PTR -40[rbp], 1
	jmp	.L73
.L76:
	mov	DWORD PTR -36[rbp], 2
	jmp	.L72
.L73:
	mov	eax, DWORD PTR -40[rbp]
	cmp	eax, DWORD PTR -52[rbp]
	jl	.L77
.L72:
	call	endpwent@PLT
	mov	eax, DWORD PTR -36[rbp]
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L79
	call	__stack_chk_fail@PLT
.L79:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE15:
	.size	passwd, .-passwd
	.section	.rodata
.LC22:
	.string	"%-16s  %5d"
	.text
	.type	protocols, @function
protocols:
.LFB16:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 64
	mov	DWORD PTR -52[rbp], edi
	mov	QWORD PTR -64[rbp], rsi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -36[rbp], 0
	mov	edi, 1
	call	setprotoent@PLT
	cmp	DWORD PTR -52[rbp], 2
	jne	.L81
	jmp	.L82
.L83:
	mov	rax, QWORD PTR -24[rbp]
	mov	ecx, DWORD PTR 16[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	r9d, ecx
	mov	r8, rdx
	lea	rcx, .LC22[rip]
	lea	rdx, .LC19[rip]
	lea	rsi, .LC20[rip]
	mov	rdi, rax
	mov	eax, 0
	call	printfmtstrings
.L82:
	call	getprotoent@PLT
	mov	QWORD PTR -24[rbp], rax
	cmp	QWORD PTR -24[rbp], 0
	jne	.L83
	jmp	.L84
.L81:
	mov	DWORD PTR -40[rbp], 2
	jmp	.L85
.L89:
	mov	eax, DWORD PTR -40[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -64[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rdx, -32[rbp]
	mov	rcx, rdx
	mov	edx, -1
	mov	esi, 0
	mov	rdi, rax
	mov	eax, 0
	call	strtonum@PLT
	cdqe
	mov	QWORD PTR -16[rbp], rax
	mov	rax, QWORD PTR -32[rbp]
	test	rax, rax
	jne	.L86
	mov	rax, QWORD PTR -16[rbp]
	mov	edi, eax
	call	getprotobynumber@PLT
	mov	QWORD PTR -24[rbp], rax
	jmp	.L87
.L86:
	mov	eax, DWORD PTR -40[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -64[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	rdi, rax
	call	getprotobyname@PLT
	mov	QWORD PTR -24[rbp], rax
.L87:
	cmp	QWORD PTR -24[rbp], 0
	je	.L88
	mov	rax, QWORD PTR -24[rbp]
	mov	ecx, DWORD PTR 16[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	r9d, ecx
	mov	r8, rdx
	lea	rcx, .LC22[rip]
	lea	rdx, .LC19[rip]
	lea	rsi, .LC20[rip]
	mov	rdi, rax
	mov	eax, 0
	call	printfmtstrings
	add	DWORD PTR -40[rbp], 1
	jmp	.L85
.L88:
	mov	DWORD PTR -36[rbp], 2
	jmp	.L84
.L85:
	mov	eax, DWORD PTR -40[rbp]
	cmp	eax, DWORD PTR -52[rbp]
	jl	.L89
.L84:
	call	endprotoent@PLT
	mov	eax, DWORD PTR -36[rbp]
	mov	rsi, QWORD PTR -8[rbp]
	sub	rsi, QWORD PTR fs:40
	je	.L91
	call	__stack_chk_fail@PLT
.L91:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE16:
	.size	protocols, .-protocols
	.section	.rodata
.LC23:
	.string	"%-16s  %6d"
	.text
	.type	rpc, @function
rpc:
.LFB17:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 64
	mov	DWORD PTR -52[rbp], edi
	mov	QWORD PTR -64[rbp], rsi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -36[rbp], 0
	mov	edi, 1
	call	setrpcent@PLT
	cmp	DWORD PTR -52[rbp], 2
	jne	.L93
	jmp	.L94
.L95:
	mov	rax, QWORD PTR -24[rbp]
	mov	ecx, DWORD PTR 16[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	r9d, ecx
	mov	r8, rdx
	lea	rcx, .LC23[rip]
	lea	rdx, .LC19[rip]
	lea	rsi, .LC20[rip]
	mov	rdi, rax
	mov	eax, 0
	call	printfmtstrings
.L94:
	call	getrpcent@PLT
	mov	QWORD PTR -24[rbp], rax
	cmp	QWORD PTR -24[rbp], 0
	jne	.L95
	jmp	.L96
.L93:
	mov	DWORD PTR -40[rbp], 2
	jmp	.L97
.L101:
	mov	eax, DWORD PTR -40[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -64[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rdx, -32[rbp]
	mov	rcx, rdx
	mov	edx, -1
	mov	esi, 0
	mov	rdi, rax
	mov	eax, 0
	call	strtonum@PLT
	cdqe
	mov	QWORD PTR -16[rbp], rax
	mov	rax, QWORD PTR -32[rbp]
	test	rax, rax
	jne	.L98
	mov	rax, QWORD PTR -16[rbp]
	mov	edi, eax
	call	getrpcbynumber@PLT
	mov	QWORD PTR -24[rbp], rax
	jmp	.L99
.L98:
	mov	eax, DWORD PTR -40[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -64[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	rdi, rax
	call	getrpcbyname@PLT
	mov	QWORD PTR -24[rbp], rax
.L99:
	cmp	QWORD PTR -24[rbp], 0
	je	.L100
	mov	rax, QWORD PTR -24[rbp]
	mov	ecx, DWORD PTR 16[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	r9d, ecx
	mov	r8, rdx
	lea	rcx, .LC23[rip]
	lea	rdx, .LC19[rip]
	lea	rsi, .LC20[rip]
	mov	rdi, rax
	mov	eax, 0
	call	printfmtstrings
	add	DWORD PTR -40[rbp], 1
	jmp	.L97
.L100:
	mov	DWORD PTR -36[rbp], 2
	jmp	.L96
.L97:
	mov	eax, DWORD PTR -40[rbp]
	cmp	eax, DWORD PTR -52[rbp]
	jl	.L101
.L96:
	call	endrpcent@PLT
	mov	eax, DWORD PTR -36[rbp]
	mov	rsi, QWORD PTR -8[rbp]
	sub	rsi, QWORD PTR fs:40
	je	.L103
	call	__stack_chk_fail@PLT
.L103:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE17:
	.size	rpc, .-rpc
	.section	.rodata
.LC24:
	.string	"%-16s  %5d/%s"
	.text
	.type	services, @function
services:
.LFB18:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 72
	.cfi_offset 3, -24
	mov	DWORD PTR -68[rbp], edi
	mov	QWORD PTR -80[rbp], rsi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -24[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -60[rbp], 0
	mov	edi, 1
	call	setservent@PLT
	cmp	DWORD PTR -68[rbp], 2
	jne	.L105
	jmp	.L106
.L107:
	mov	rax, QWORD PTR -48[rbp]
	mov	rbx, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -48[rbp]
	mov	eax, DWORD PTR 16[rax]
	movzx	eax, ax
	mov	edi, eax
	call	ntohs@PLT
	movzx	ecx, ax
	mov	rax, QWORD PTR -48[rbp]
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -48[rbp]
	mov	rax, QWORD PTR 8[rax]
	sub	rsp, 8
	push	rbx
	mov	r9d, ecx
	mov	r8, rdx
	lea	rcx, .LC24[rip]
	lea	rdx, .LC19[rip]
	lea	rsi, .LC20[rip]
	mov	rdi, rax
	mov	eax, 0
	call	printfmtstrings
	add	rsp, 16
.L106:
	call	getservent@PLT
	mov	QWORD PTR -48[rbp], rax
	cmp	QWORD PTR -48[rbp], 0
	jne	.L107
	jmp	.L108
.L105:
	mov	DWORD PTR -64[rbp], 2
	jmp	.L109
.L114:
	mov	eax, DWORD PTR -64[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -80[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	esi, 47
	mov	rdi, rax
	call	strchr@PLT
	mov	QWORD PTR -40[rbp], rax
	cmp	QWORD PTR -40[rbp], 0
	je	.L110
	mov	rax, QWORD PTR -40[rbp]
	lea	rdx, 1[rax]
	mov	QWORD PTR -40[rbp], rdx
	mov	BYTE PTR [rax], 0
.L110:
	mov	eax, DWORD PTR -64[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -80[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rdx, -56[rbp]
	mov	rcx, rdx
	mov	edx, -1
	mov	esi, 0
	mov	rdi, rax
	mov	eax, 0
	call	strtonum@PLT
	cdqe
	mov	QWORD PTR -32[rbp], rax
	mov	rax, QWORD PTR -56[rbp]
	test	rax, rax
	jne	.L111
	mov	rax, QWORD PTR -32[rbp]
	movzx	eax, ax
	mov	edi, eax
	call	htons@PLT
	movzx	eax, ax
	mov	rdx, QWORD PTR -40[rbp]
	mov	rsi, rdx
	mov	edi, eax
	call	getservbyport@PLT
	mov	QWORD PTR -48[rbp], rax
	jmp	.L112
.L111:
	mov	eax, DWORD PTR -64[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -80[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	rdx, QWORD PTR -40[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	getservbyname@PLT
	mov	QWORD PTR -48[rbp], rax
.L112:
	cmp	QWORD PTR -48[rbp], 0
	je	.L113
	mov	rax, QWORD PTR -48[rbp]
	mov	rbx, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -48[rbp]
	mov	eax, DWORD PTR 16[rax]
	movzx	eax, ax
	mov	edi, eax
	call	ntohs@PLT
	movzx	ecx, ax
	mov	rax, QWORD PTR -48[rbp]
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -48[rbp]
	mov	rax, QWORD PTR 8[rax]
	sub	rsp, 8
	push	rbx
	mov	r9d, ecx
	mov	r8, rdx
	lea	rcx, .LC24[rip]
	lea	rdx, .LC19[rip]
	lea	rsi, .LC20[rip]
	mov	rdi, rax
	mov	eax, 0
	call	printfmtstrings
	add	rsp, 16
	add	DWORD PTR -64[rbp], 1
	jmp	.L109
.L113:
	mov	DWORD PTR -60[rbp], 2
	jmp	.L108
.L109:
	mov	eax, DWORD PTR -64[rbp]
	cmp	eax, DWORD PTR -68[rbp]
	jl	.L114
.L108:
	call	endservent@PLT
	mov	eax, DWORD PTR -60[rbp]
	mov	rbx, QWORD PTR -24[rbp]
	sub	rbx, QWORD PTR fs:40
	je	.L116
	call	__stack_chk_fail@PLT
.L116:
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE18:
	.size	services, .-services
	.type	shells, @function
shells:
.LFB19:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	DWORD PTR -20[rbp], edi
	mov	QWORD PTR -32[rbp], rsi
	mov	DWORD PTR -12[rbp], 0
	call	setusershell@PLT
	cmp	DWORD PTR -20[rbp], 2
	jne	.L118
	jmp	.L119
.L120:
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	puts@PLT
.L119:
	call	getusershell@PLT
	mov	QWORD PTR -8[rbp], rax
	cmp	QWORD PTR -8[rbp], 0
	jne	.L120
	jmp	.L121
.L118:
	mov	DWORD PTR -16[rbp], 2
	jmp	.L122
.L127:
	call	setusershell@PLT
	jmp	.L123
.L125:
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, rdx
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L123
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	puts@PLT
	jmp	.L124
.L123:
	call	getusershell@PLT
	mov	QWORD PTR -8[rbp], rax
	cmp	QWORD PTR -8[rbp], 0
	jne	.L125
.L124:
	cmp	QWORD PTR -8[rbp], 0
	jne	.L126
	mov	DWORD PTR -12[rbp], 2
	jmp	.L121
.L126:
	add	DWORD PTR -16[rbp], 1
.L122:
	mov	eax, DWORD PTR -16[rbp]
	cmp	eax, DWORD PTR -20[rbp]
	jl	.L127
.L121:
	call	endusershell@PLT
	mov	eax, DWORD PTR -12[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE19:
	.size	shells, .-shells
	.ident	"GCC: (Ubuntu 10.5.0-1ubuntu1~20.04) 10.5.0"
	.section	.note.GNU-stack,"",@progbits
	.section	.note.gnu.property,"a"
	.align 8
	.long	 1f - 0f
	.long	 4f - 1f
	.long	 5
0:
	.string	 "GNU"
1:
	.align 8
	.long	 0xc0000002
	.long	 3f - 2f
2:
	.long	 0x3
3:
	.align 8
4:

	.arch armv5t
	.eabi_attribute 20, 1
	.eabi_attribute 21, 1
	.eabi_attribute 23, 3
	.eabi_attribute 24, 1
	.eabi_attribute 25, 1
	.eabi_attribute 26, 2
	.eabi_attribute 30, 6
	.eabi_attribute 34, 0
	.eabi_attribute 18, 4
	.file	"189446.c"
	.text
	.section	.rodata
	.align	2
.LC0:
	.ascii	"ethers\000"
	.align	2
.LC1:
	.ascii	"group\000"
	.align	2
.LC2:
	.ascii	"hosts\000"
	.align	2
.LC3:
	.ascii	"networks\000"
	.align	2
.LC4:
	.ascii	"passwd\000"
	.align	2
.LC5:
	.ascii	"protocols\000"
	.align	2
.LC6:
	.ascii	"rpc\000"
	.align	2
.LC7:
	.ascii	"services\000"
	.align	2
.LC8:
	.ascii	"shells\000"
	.data
	.align	2
	.type	databases, %object
	.size	databases, 80
databases:
	.word	.LC0
	.word	ethers
	.word	.LC1
	.word	group
	.word	.LC2
	.word	hosts
	.word	.LC3
	.word	networks
	.word	.LC4
	.word	passwd
	.word	.LC5
	.word	protocols
	.word	.LC6
	.word	rpc
	.word	.LC7
	.word	services
	.word	.LC8
	.word	shells
	.word	0
	.word	0
	.section	.rodata
	.align	2
.LC9:
	.ascii	"%s: unknown database: %s\012\000"
	.text
	.align	2
	.global	main
	.syntax unified
	.arm
	.fpu softvfp
	.type	main, %function
main:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	ldr	r3, [fp, #-16]
	cmp	r3, #1
	bgt	.L2
	bl	usage
.L2:
	ldr	r3, .L7
	str	r3, [fp, #-8]
	b	.L3
.L5:
	ldr	r3, [fp, #-8]
	ldr	r2, [r3]
	ldr	r3, [fp, #-20]
	add	r3, r3, #4
	ldr	r3, [r3]
	mov	r1, r3
	mov	r0, r2
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L4
	ldr	r3, [fp, #-8]
	ldr	r3, [r3, #4]
	ldr	r1, [fp, #-20]
	ldr	r0, [fp, #-16]
	blx	r3
	mov	r3, r0
	mov	r0, r3
	bl	exit
.L4:
	ldr	r3, [fp, #-8]
	add	r3, r3, #8
	str	r3, [fp, #-8]
.L3:
	ldr	r3, [fp, #-8]
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L5
	ldr	r3, .L7+4
	ldr	r0, [r3]
	ldr	r3, .L7+8
	ldr	r2, [r3]
	ldr	r3, [fp, #-20]
	add	r3, r3, #4
	ldr	r3, [r3]
	ldr	r1, .L7+12
	bl	fprintf
	mov	r3, #1
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L8:
	.align	2
.L7:
	.word	databases
	.word	stderr
	.word	__progname
	.word	.LC9
	.size	main, .-main
	.section	.rodata
	.align	2
.LC10:
	.ascii	"usage: %s database [key ...]\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	usage, %function
usage:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	ldr	r3, .L10
	ldr	r3, [r3]
	ldr	r2, .L10+4
	ldr	r2, [r2]
	ldr	r1, .L10+8
	mov	r0, r3
	bl	fprintf
	mov	r0, #1
	bl	exit
.L11:
	.align	2
.L10:
	.word	stderr
	.word	__progname
	.word	.LC10
	.size	usage, .-usage
	.section	.rodata
	.align	2
.LC11:
	.ascii	"%s%s\000"
	.align	2
.LC12:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	printfmtstrings, %function
printfmtstrings:
	@ args = 4, pretend = 4, frame = 32
	@ frame_needed = 1, uses_anonymous_args = 1
	str	r3, [sp, #-4]!
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #36
	str	r0, [fp, #-28]
	str	r1, [fp, #-32]
	str	r2, [fp, #-36]
	ldr	r3, [fp, #4]
	str	r3, [fp, #-40]
	ldr	r3, .L16
	ldr	r3, [r3]
	str	r3, [fp, #-12]
	mov	r3,#0
	add	r3, fp, #8
	str	r3, [fp, #-24]
	ldr	r1, [fp, #-24]
	ldr	r0, [fp, #-40]
	bl	vprintf
	ldr	r3, [fp, #-32]
	str	r3, [fp, #-20]
	mov	r3, #0
	str	r3, [fp, #-16]
	b	.L13
.L14:
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-28]
	add	r3, r2, r3
	ldr	r3, [r3]
	mov	r2, r3
	ldr	r1, [fp, #-20]
	ldr	r0, .L16+4
	bl	printf
	ldr	r3, [fp, #-36]
	str	r3, [fp, #-20]
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L13:
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-28]
	add	r3, r2, r3
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L14
	mov	r0, #10
	bl	putchar
	nop
	ldr	r3, .L16
	ldr	r2, [r3]
	ldr	r3, [fp, #-12]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L15
	bl	__stack_chk_fail
.L15:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, lr}
	add	sp, sp, #4
	bx	lr
.L17:
	.align	2
.L16:
	.word	.LC12
	.word	.LC11
	.size	printfmtstrings, .-printfmtstrings
	.section	.rodata
	.align	2
.LC13:
	.ascii	"%s: Enumeration not supported on ethers\012\000"
	.align	2
.LC14:
	.ascii	"%-17s  %s\012\000"
	.align	2
.LC15:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	ethers, %function
ethers:
	@ args = 0, pretend = 0, frame = 104
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #104
	str	r0, [fp, #-104]
	str	r1, [fp, #-108]
	ldr	r3, .L27
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	mov	r3, #0
	str	r3, [fp, #-88]
	ldr	r3, [fp, #-104]
	cmp	r3, #2
	bne	.L19
	ldr	r3, .L27+4
	ldr	r3, [r3]
	ldr	r2, .L27+8
	ldr	r2, [r2]
	ldr	r1, .L27+12
	mov	r0, r3
	bl	fprintf
	mov	r3, #3
	str	r3, [fp, #-88]
	b	.L20
.L19:
	mov	r3, #2
	str	r3, [fp, #-92]
	b	.L21
.L24:
	ldr	r3, [fp, #-92]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-108]
	add	r3, r2, r3
	ldr	r3, [r3]
	mov	r0, r3
	bl	ether_aton
	mov	r3, r0
	str	r3, [fp, #-84]
	ldr	r3, [fp, #-84]
	cmp	r3, #0
	bne	.L22
	sub	r3, fp, #80
	str	r3, [fp, #-84]
	ldr	r3, [fp, #-92]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-108]
	add	r3, r2, r3
	ldr	r3, [r3]
	str	r3, [fp, #-96]
	ldr	r1, [fp, #-84]
	ldr	r0, [fp, #-96]
	bl	ether_hostton
	mov	r3, r0
	cmp	r3, #0
	beq	.L23
	mov	r3, #2
	str	r3, [fp, #-88]
	b	.L20
.L22:
	sub	r3, fp, #72
	str	r3, [fp, #-96]
	ldr	r1, [fp, #-84]
	ldr	r0, [fp, #-96]
	bl	ether_ntohost
	mov	r3, r0
	cmp	r3, #0
	beq	.L23
	mov	r3, #2
	str	r3, [fp, #-88]
	b	.L20
.L23:
	ldr	r0, [fp, #-84]
	bl	ether_ntoa
	mov	r3, r0
	ldr	r2, [fp, #-96]
	mov	r1, r3
	ldr	r0, .L27+16
	bl	printf
	ldr	r3, [fp, #-92]
	add	r3, r3, #1
	str	r3, [fp, #-92]
.L21:
	ldr	r2, [fp, #-92]
	ldr	r3, [fp, #-104]
	cmp	r2, r3
	blt	.L24
.L20:
	ldr	r3, [fp, #-88]
	ldr	r2, .L27
	ldr	r1, [r2]
	ldr	r2, [fp, #-8]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L26
	bl	__stack_chk_fail
.L26:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L28:
	.align	2
.L27:
	.word	.LC15
	.word	stderr
	.word	__progname
	.word	.LC13
	.word	.LC14
	.size	ethers, .-ethers
	.section	.rodata
	.align	2
.LC16:
	.ascii	"%s:%s:%u\000"
	.align	2
.LC17:
	.ascii	",\000"
	.align	2
.LC18:
	.ascii	":\000"
	.align	2
.LC19:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	group, %function
group:
	@ args = 0, pretend = 0, frame = 40
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #56
	str	r0, [fp, #-40]
	str	r1, [fp, #-44]
	ldr	r3, .L41
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	mov	r3, #0
	str	r3, [fp, #-28]
	mov	r0, #1
	bl	setgroupent
	ldr	r3, [fp, #-40]
	cmp	r3, #2
	bne	.L30
	b	.L31
.L32:
	ldr	r3, [fp, #-24]
	ldr	r0, [r3, #12]
	ldr	r3, [fp, #-24]
	ldr	r3, [r3]
	ldr	r2, [fp, #-24]
	ldr	r2, [r2, #4]
	ldr	r1, [fp, #-24]
	ldr	r1, [r1, #8]
	str	r1, [sp, #8]
	str	r2, [sp, #4]
	str	r3, [sp]
	ldr	r3, .L41+4
	ldr	r2, .L41+8
	ldr	r1, .L41+12
	bl	printfmtstrings
.L31:
	bl	getgrent
	str	r0, [fp, #-24]
	ldr	r3, [fp, #-24]
	cmp	r3, #0
	bne	.L32
	b	.L33
.L30:
	mov	r3, #2
	str	r3, [fp, #-32]
	b	.L34
.L38:
	ldr	r3, [fp, #-32]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-44]
	add	r3, r2, r3
	ldr	r0, [r3]
	sub	r3, fp, #36
	mvn	r2, #0
	mov	r1, #0
	bl	strtonum
	mov	r3, r0
	mov	r2, r3
	asr	r3, r2, #31
	str	r2, [fp, #-20]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-36]
	cmp	r3, #0
	bne	.L35
	ldr	r3, [fp, #-20]
	mov	r0, r3
	bl	getgrgid
	str	r0, [fp, #-24]
	b	.L36
.L35:
	ldr	r3, [fp, #-32]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-44]
	add	r3, r2, r3
	ldr	r3, [r3]
	mov	r0, r3
	bl	getgrnam
	str	r0, [fp, #-24]
.L36:
	ldr	r3, [fp, #-24]
	cmp	r3, #0
	beq	.L37
	ldr	r3, [fp, #-24]
	ldr	r0, [r3, #12]
	ldr	r3, [fp, #-24]
	ldr	r3, [r3]
	ldr	r2, [fp, #-24]
	ldr	r2, [r2, #4]
	ldr	r1, [fp, #-24]
	ldr	r1, [r1, #8]
	str	r1, [sp, #8]
	str	r2, [sp, #4]
	str	r3, [sp]
	ldr	r3, .L41+4
	ldr	r2, .L41+8
	ldr	r1, .L41+12
	bl	printfmtstrings
	ldr	r3, [fp, #-32]
	add	r3, r3, #1
	str	r3, [fp, #-32]
	b	.L34
.L37:
	mov	r3, #2
	str	r3, [fp, #-28]
	b	.L33
.L34:
	ldr	r2, [fp, #-32]
	ldr	r3, [fp, #-40]
	cmp	r2, r3
	blt	.L38
.L33:
	bl	endgrent
	ldr	r3, [fp, #-28]
	ldr	r2, .L41
	ldr	r1, [r2]
	ldr	r2, [fp, #-8]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L40
	bl	__stack_chk_fail
.L40:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L42:
	.align	2
.L41:
	.word	.LC19
	.word	.LC16
	.word	.LC17
	.word	.LC18
	.size	group, .-group
	.section	.rodata
	.align	2
.LC20:
	.ascii	"# unknown\000"
	.align	2
.LC21:
	.ascii	"%-16s  %s\000"
	.align	2
.LC22:
	.ascii	" \000"
	.align	2
.LC23:
	.ascii	"  \000"
	.align	2
.LC24:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	hostsprint, %function
hostsprint:
	@ args = 0, pretend = 0, frame = 64
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #72
	str	r0, [fp, #-64]
	ldr	r3, .L46
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	ldr	r3, [fp, #-64]
	ldr	r0, [r3, #8]
	ldr	r3, [fp, #-64]
	ldr	r3, [r3, #16]
	ldr	r1, [r3]
	sub	r2, fp, #56
	mov	r3, #46
	bl	inet_ntop
	mov	r3, r0
	cmp	r3, #0
	bne	.L44
	sub	r3, fp, #56
	mov	r2, #46
	ldr	r1, .L46+4
	mov	r0, r3
	bl	strlcpy
.L44:
	ldr	r3, [fp, #-64]
	ldr	r0, [r3, #4]
	ldr	r3, [fp, #-64]
	ldr	r3, [r3]
	str	r3, [sp, #4]
	sub	r3, fp, #56
	str	r3, [sp]
	ldr	r3, .L46+8
	ldr	r2, .L46+12
	ldr	r1, .L46+16
	bl	printfmtstrings
	nop
	ldr	r3, .L46
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L45
	bl	__stack_chk_fail
.L45:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L47:
	.align	2
.L46:
	.word	.LC24
	.word	.LC20
	.word	.LC21
	.word	.LC22
	.word	.LC23
	.size	hostsprint, .-hostsprint
	.section	.rodata
	.align	2
.LC25:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	hosts, %function
hosts:
	@ args = 0, pretend = 0, frame = 40
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #40
	str	r0, [fp, #-40]
	str	r1, [fp, #-44]
	ldr	r3, .L63
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	mov	r3, #0
	str	r3, [fp, #-32]
	mov	r0, #1
	bl	sethostent
	ldr	r3, [fp, #-40]
	cmp	r3, #2
	bne	.L49
	b	.L50
.L51:
	ldr	r0, [fp, #-28]
	bl	hostsprint
.L50:
	bl	gethostent
	str	r0, [fp, #-28]
	ldr	r3, [fp, #-28]
	cmp	r3, #0
	bne	.L51
	b	.L52
.L49:
	mov	r3, #2
	str	r3, [fp, #-36]
	b	.L53
.L59:
	ldr	r3, [fp, #-36]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-44]
	add	r3, r2, r3
	ldr	r3, [r3]
	sub	r2, fp, #24
	mov	r1, r3
	mov	r0, #10
	bl	inet_pton
	mov	r3, r0
	cmp	r3, #0
	ble	.L54
	sub	r3, fp, #24
	mov	r2, #10
	mov	r1, #16
	mov	r0, r3
	bl	gethostbyaddr
	str	r0, [fp, #-28]
	b	.L55
.L54:
	ldr	r3, [fp, #-36]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-44]
	add	r3, r2, r3
	ldr	r3, [r3]
	sub	r2, fp, #24
	mov	r1, r3
	mov	r0, #2
	bl	inet_pton
	mov	r3, r0
	cmp	r3, #0
	ble	.L56
	sub	r3, fp, #24
	mov	r2, #2
	mov	r1, #4
	mov	r0, r3
	bl	gethostbyaddr
	str	r0, [fp, #-28]
	b	.L55
.L56:
	ldr	r3, [fp, #-36]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-44]
	add	r3, r2, r3
	ldr	r3, [r3]
	mov	r0, r3
	bl	gethostbyname
	str	r0, [fp, #-28]
.L55:
	ldr	r3, [fp, #-28]
	cmp	r3, #0
	beq	.L57
	ldr	r0, [fp, #-28]
	bl	hostsprint
	b	.L62
.L57:
	mov	r3, #2
	str	r3, [fp, #-32]
	b	.L52
.L62:
	ldr	r3, [fp, #-36]
	add	r3, r3, #1
	str	r3, [fp, #-36]
.L53:
	ldr	r2, [fp, #-36]
	ldr	r3, [fp, #-40]
	cmp	r2, r3
	blt	.L59
.L52:
	bl	endhostent
	ldr	r3, [fp, #-32]
	ldr	r2, .L63
	ldr	r1, [r2]
	ldr	r2, [fp, #-8]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L61
	bl	__stack_chk_fail
.L61:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L64:
	.align	2
.L63:
	.word	.LC25
	.size	hosts, .-hosts
	.section	.rodata
	.align	2
.LC26:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	networksprint, %function
networksprint:
	@ args = 0, pretend = 0, frame = 64
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #72
	str	r0, [fp, #-64]
	ldr	r3, .L68
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	ldr	r3, [fp, #-64]
	ldr	r3, [r3, #12]
	mov	r1, #0
	mov	r0, r3
	bl	inet_makeaddr
	mov	r3, r0
	str	r3, [fp, #-60]
	ldr	r3, [fp, #-64]
	ldr	r0, [r3, #8]
	sub	r2, fp, #56
	sub	r1, fp, #60
	mov	r3, #46
	bl	inet_ntop
	mov	r3, r0
	cmp	r3, #0
	bne	.L66
	sub	r3, fp, #56
	mov	r2, #46
	ldr	r1, .L68+4
	mov	r0, r3
	bl	strlcpy
.L66:
	ldr	r3, [fp, #-64]
	ldr	r0, [r3, #4]
	ldr	r3, [fp, #-64]
	ldr	r3, [r3]
	sub	r2, fp, #56
	str	r2, [sp, #4]
	str	r3, [sp]
	ldr	r3, .L68+8
	ldr	r2, .L68+12
	ldr	r1, .L68+16
	bl	printfmtstrings
	nop
	ldr	r3, .L68
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L67
	bl	__stack_chk_fail
.L67:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L69:
	.align	2
.L68:
	.word	.LC26
	.word	.LC20
	.word	.LC21
	.word	.LC22
	.word	.LC23
	.size	networksprint, .-networksprint
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	networks, %function
networks:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-24]
	str	r1, [fp, #-28]
	mov	r3, #0
	str	r3, [fp, #-16]
	mov	r0, #1
	bl	setnetent
	ldr	r3, [fp, #-24]
	cmp	r3, #2
	bne	.L71
	b	.L72
.L73:
	ldr	r0, [fp, #-12]
	bl	networksprint
.L72:
	bl	getnetent
	str	r0, [fp, #-12]
	ldr	r3, [fp, #-12]
	cmp	r3, #0
	bne	.L73
	b	.L74
.L71:
	mov	r3, #2
	str	r3, [fp, #-20]
	b	.L75
.L80:
	ldr	r3, [fp, #-20]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-28]
	add	r3, r2, r3
	ldr	r3, [r3]
	mov	r0, r3
	bl	inet_network
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	beq	.L76
	mov	r1, #2
	ldr	r0, [fp, #-8]
	bl	getnetbyaddr
	str	r0, [fp, #-12]
	b	.L77
.L76:
	ldr	r3, [fp, #-20]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-28]
	add	r3, r2, r3
	ldr	r3, [r3]
	mov	r0, r3
	bl	getnetbyname
	str	r0, [fp, #-12]
.L77:
	ldr	r3, [fp, #-12]
	cmp	r3, #0
	beq	.L78
	ldr	r0, [fp, #-12]
	bl	networksprint
	b	.L82
.L78:
	mov	r3, #2
	str	r3, [fp, #-16]
	b	.L74
.L82:
	ldr	r3, [fp, #-20]
	add	r3, r3, #1
	str	r3, [fp, #-20]
.L75:
	ldr	r2, [fp, #-20]
	ldr	r3, [fp, #-24]
	cmp	r2, r3
	blt	.L80
.L74:
	bl	endnetent
	ldr	r3, [fp, #-16]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	networks, .-networks
	.section	.rodata
	.align	2
.LC27:
	.ascii	"%s:%s:%u:%u:%s:%s:%s\012\000"
	.align	2
.LC28:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	passwd, %function
passwd:
	@ args = 0, pretend = 0, frame = 40
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #60
	str	r0, [fp, #-48]
	str	r1, [fp, #-52]
	ldr	r3, .L95
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	mov	r3, #0
	str	r3, [fp, #-36]
	mov	r0, #1
	bl	setpassent
	ldr	r3, [fp, #-48]
	cmp	r3, #2
	bne	.L84
	b	.L85
.L86:
	ldr	r3, [fp, #-32]
	ldr	ip, [r3]
	ldr	r3, [fp, #-32]
	ldr	lr, [r3, #4]
	ldr	r3, [fp, #-32]
	ldr	r4, [r3, #8]
	ldr	r3, [fp, #-32]
	ldr	r3, [r3, #12]
	ldr	r2, [fp, #-32]
	ldr	r2, [r2, #16]
	ldr	r1, [fp, #-32]
	ldr	r1, [r1, #20]
	ldr	r0, [fp, #-32]
	ldr	r0, [r0, #24]
	str	r0, [sp, #12]
	str	r1, [sp, #8]
	str	r2, [sp, #4]
	str	r3, [sp]
	mov	r3, r4
	mov	r2, lr
	mov	r1, ip
	ldr	r0, .L95+4
	bl	printf
.L85:
	bl	getpwent
	str	r0, [fp, #-32]
	ldr	r3, [fp, #-32]
	cmp	r3, #0
	bne	.L86
	b	.L87
.L84:
	mov	r3, #2
	str	r3, [fp, #-40]
	b	.L88
.L92:
	ldr	r3, [fp, #-40]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-52]
	add	r3, r2, r3
	ldr	r0, [r3]
	sub	r3, fp, #44
	mvn	r2, #0
	mov	r1, #0
	bl	strtonum
	mov	r3, r0
	mov	r2, r3
	asr	r3, r2, #31
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-44]
	cmp	r3, #0
	bne	.L89
	ldr	r3, [fp, #-28]
	mov	r0, r3
	bl	getpwuid
	str	r0, [fp, #-32]
	b	.L90
.L89:
	ldr	r3, [fp, #-40]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-52]
	add	r3, r2, r3
	ldr	r3, [r3]
	mov	r0, r3
	bl	getpwnam
	str	r0, [fp, #-32]
.L90:
	ldr	r3, [fp, #-32]
	cmp	r3, #0
	beq	.L91
	ldr	r3, [fp, #-32]
	ldr	ip, [r3]
	ldr	r3, [fp, #-32]
	ldr	lr, [r3, #4]
	ldr	r3, [fp, #-32]
	ldr	r4, [r3, #8]
	ldr	r3, [fp, #-32]
	ldr	r3, [r3, #12]
	ldr	r2, [fp, #-32]
	ldr	r2, [r2, #16]
	ldr	r1, [fp, #-32]
	ldr	r1, [r1, #20]
	ldr	r0, [fp, #-32]
	ldr	r0, [r0, #24]
	str	r0, [sp, #12]
	str	r1, [sp, #8]
	str	r2, [sp, #4]
	str	r3, [sp]
	mov	r3, r4
	mov	r2, lr
	mov	r1, ip
	ldr	r0, .L95+4
	bl	printf
	ldr	r3, [fp, #-40]
	add	r3, r3, #1
	str	r3, [fp, #-40]
	b	.L88
.L91:
	mov	r3, #2
	str	r3, [fp, #-36]
	b	.L87
.L88:
	ldr	r2, [fp, #-40]
	ldr	r3, [fp, #-48]
	cmp	r2, r3
	blt	.L92
.L87:
	bl	endpwent
	ldr	r3, [fp, #-36]
	ldr	r2, .L95
	ldr	r1, [r2]
	ldr	r2, [fp, #-16]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L94
	bl	__stack_chk_fail
.L94:
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L96:
	.align	2
.L95:
	.word	.LC28
	.word	.LC27
	.size	passwd, .-passwd
	.section	.rodata
	.align	2
.LC29:
	.ascii	"%-16s  %5d\000"
	.align	2
.LC30:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	protocols, %function
protocols:
	@ args = 0, pretend = 0, frame = 40
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #48
	str	r0, [fp, #-40]
	str	r1, [fp, #-44]
	ldr	r3, .L109
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	mov	r3, #0
	str	r3, [fp, #-24]
	mov	r0, #1
	bl	setprotoent
	ldr	r3, [fp, #-40]
	cmp	r3, #2
	bne	.L98
	b	.L99
.L100:
	ldr	r3, [fp, #-32]
	ldr	r0, [r3, #4]
	ldr	r3, [fp, #-32]
	ldr	r3, [r3]
	ldr	r2, [fp, #-32]
	ldr	r2, [r2, #8]
	str	r2, [sp, #4]
	str	r3, [sp]
	ldr	r3, .L109+4
	ldr	r2, .L109+8
	ldr	r1, .L109+12
	bl	printfmtstrings
.L99:
	bl	getprotoent
	str	r0, [fp, #-32]
	ldr	r3, [fp, #-32]
	cmp	r3, #0
	bne	.L100
	b	.L101
.L98:
	mov	r3, #2
	str	r3, [fp, #-28]
	b	.L102
.L106:
	ldr	r3, [fp, #-28]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-44]
	add	r3, r2, r3
	ldr	r0, [r3]
	sub	r3, fp, #36
	mvn	r2, #0
	mov	r1, #0
	bl	strtonum
	mov	r3, r0
	mov	r2, r3
	asr	r3, r2, #31
	str	r2, [fp, #-20]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-36]
	cmp	r3, #0
	bne	.L103
	ldr	r3, [fp, #-20]
	mov	r0, r3
	bl	getprotobynumber
	str	r0, [fp, #-32]
	b	.L104
.L103:
	ldr	r3, [fp, #-28]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-44]
	add	r3, r2, r3
	ldr	r3, [r3]
	mov	r0, r3
	bl	getprotobyname
	str	r0, [fp, #-32]
.L104:
	ldr	r3, [fp, #-32]
	cmp	r3, #0
	beq	.L105
	ldr	r3, [fp, #-32]
	ldr	r0, [r3, #4]
	ldr	r3, [fp, #-32]
	ldr	r3, [r3]
	ldr	r2, [fp, #-32]
	ldr	r2, [r2, #8]
	str	r2, [sp, #4]
	str	r3, [sp]
	ldr	r3, .L109+4
	ldr	r2, .L109+8
	ldr	r1, .L109+12
	bl	printfmtstrings
	ldr	r3, [fp, #-28]
	add	r3, r3, #1
	str	r3, [fp, #-28]
	b	.L102
.L105:
	mov	r3, #2
	str	r3, [fp, #-24]
	b	.L101
.L102:
	ldr	r2, [fp, #-28]
	ldr	r3, [fp, #-40]
	cmp	r2, r3
	blt	.L106
.L101:
	bl	endprotoent
	ldr	r3, [fp, #-24]
	ldr	r2, .L109
	ldr	r1, [r2]
	ldr	r2, [fp, #-8]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L108
	bl	__stack_chk_fail
.L108:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L110:
	.align	2
.L109:
	.word	.LC30
	.word	.LC29
	.word	.LC22
	.word	.LC23
	.size	protocols, .-protocols
	.section	.rodata
	.align	2
.LC31:
	.ascii	"%-16s  %6d\000"
	.align	2
.LC32:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	rpc, %function
rpc:
	@ args = 0, pretend = 0, frame = 40
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #48
	str	r0, [fp, #-40]
	str	r1, [fp, #-44]
	ldr	r3, .L123
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	mov	r3, #0
	str	r3, [fp, #-24]
	mov	r0, #1
	bl	setrpcent
	ldr	r3, [fp, #-40]
	cmp	r3, #2
	bne	.L112
	b	.L113
.L114:
	ldr	r3, [fp, #-32]
	ldr	r0, [r3, #4]
	ldr	r3, [fp, #-32]
	ldr	r3, [r3]
	ldr	r2, [fp, #-32]
	ldr	r2, [r2, #8]
	str	r2, [sp, #4]
	str	r3, [sp]
	ldr	r3, .L123+4
	ldr	r2, .L123+8
	ldr	r1, .L123+12
	bl	printfmtstrings
.L113:
	bl	getrpcent
	str	r0, [fp, #-32]
	ldr	r3, [fp, #-32]
	cmp	r3, #0
	bne	.L114
	b	.L115
.L112:
	mov	r3, #2
	str	r3, [fp, #-28]
	b	.L116
.L120:
	ldr	r3, [fp, #-28]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-44]
	add	r3, r2, r3
	ldr	r0, [r3]
	sub	r3, fp, #36
	mvn	r2, #0
	mov	r1, #0
	bl	strtonum
	mov	r3, r0
	mov	r2, r3
	asr	r3, r2, #31
	str	r2, [fp, #-20]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-36]
	cmp	r3, #0
	bne	.L117
	ldr	r3, [fp, #-20]
	mov	r0, r3
	bl	getrpcbynumber
	str	r0, [fp, #-32]
	b	.L118
.L117:
	ldr	r3, [fp, #-28]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-44]
	add	r3, r2, r3
	ldr	r3, [r3]
	mov	r0, r3
	bl	getrpcbyname
	str	r0, [fp, #-32]
.L118:
	ldr	r3, [fp, #-32]
	cmp	r3, #0
	beq	.L119
	ldr	r3, [fp, #-32]
	ldr	r0, [r3, #4]
	ldr	r3, [fp, #-32]
	ldr	r3, [r3]
	ldr	r2, [fp, #-32]
	ldr	r2, [r2, #8]
	str	r2, [sp, #4]
	str	r3, [sp]
	ldr	r3, .L123+4
	ldr	r2, .L123+8
	ldr	r1, .L123+12
	bl	printfmtstrings
	ldr	r3, [fp, #-28]
	add	r3, r3, #1
	str	r3, [fp, #-28]
	b	.L116
.L119:
	mov	r3, #2
	str	r3, [fp, #-24]
	b	.L115
.L116:
	ldr	r2, [fp, #-28]
	ldr	r3, [fp, #-40]
	cmp	r2, r3
	blt	.L120
.L115:
	bl	endrpcent
	ldr	r3, [fp, #-24]
	ldr	r2, .L123
	ldr	r1, [r2]
	ldr	r2, [fp, #-8]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L122
	bl	__stack_chk_fail
.L122:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L124:
	.align	2
.L123:
	.word	.LC32
	.word	.LC31
	.word	.LC22
	.word	.LC23
	.size	rpc, .-rpc
	.section	.rodata
	.align	2
.LC33:
	.ascii	"%-16s  %5d/%s\000"
	.align	2
.LC34:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	services, %function
services:
	@ args = 0, pretend = 0, frame = 48
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #64
	str	r0, [fp, #-56]
	str	r1, [fp, #-60]
	ldr	r3, .L138
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	mov	r3, #0
	str	r3, [fp, #-36]
	mov	r0, #1
	bl	setservent
	ldr	r3, [fp, #-56]
	cmp	r3, #2
	bne	.L126
	b	.L127
.L128:
	ldr	r3, [fp, #-44]
	ldr	r5, [r3, #4]
	ldr	r3, [fp, #-44]
	ldr	r4, [r3]
	ldr	r3, [fp, #-44]
	ldr	r3, [r3, #8]
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	bl	ntohs
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #-44]
	ldr	r3, [r3, #12]
	str	r3, [sp, #8]
	str	r2, [sp, #4]
	str	r4, [sp]
	ldr	r3, .L138+4
	ldr	r2, .L138+8
	ldr	r1, .L138+12
	mov	r0, r5
	bl	printfmtstrings
.L127:
	bl	getservent
	str	r0, [fp, #-44]
	ldr	r3, [fp, #-44]
	cmp	r3, #0
	bne	.L128
	b	.L129
.L126:
	mov	r3, #2
	str	r3, [fp, #-40]
	b	.L130
.L135:
	ldr	r3, [fp, #-40]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-60]
	add	r3, r2, r3
	ldr	r3, [r3]
	mov	r1, #47
	mov	r0, r3
	bl	strchr
	str	r0, [fp, #-32]
	ldr	r3, [fp, #-32]
	cmp	r3, #0
	beq	.L131
	ldr	r3, [fp, #-32]
	add	r2, r3, #1
	str	r2, [fp, #-32]
	mov	r2, #0
	strb	r2, [r3]
.L131:
	ldr	r3, [fp, #-40]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-60]
	add	r3, r2, r3
	ldr	r0, [r3]
	sub	r3, fp, #48
	mvn	r2, #0
	mov	r1, #0
	bl	strtonum
	mov	r3, r0
	mov	r2, r3
	asr	r3, r2, #31
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-48]
	cmp	r3, #0
	bne	.L132
	ldrh	r3, [fp, #-28]
	mov	r0, r3
	bl	htons
	mov	r3, r0
	ldr	r1, [fp, #-32]
	mov	r0, r3
	bl	getservbyport
	str	r0, [fp, #-44]
	b	.L133
.L132:
	ldr	r3, [fp, #-40]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-60]
	add	r3, r2, r3
	ldr	r3, [r3]
	ldr	r1, [fp, #-32]
	mov	r0, r3
	bl	getservbyname
	str	r0, [fp, #-44]
.L133:
	ldr	r3, [fp, #-44]
	cmp	r3, #0
	beq	.L134
	ldr	r3, [fp, #-44]
	ldr	r5, [r3, #4]
	ldr	r3, [fp, #-44]
	ldr	r4, [r3]
	ldr	r3, [fp, #-44]
	ldr	r3, [r3, #8]
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	bl	ntohs
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #-44]
	ldr	r3, [r3, #12]
	str	r3, [sp, #8]
	str	r2, [sp, #4]
	str	r4, [sp]
	ldr	r3, .L138+4
	ldr	r2, .L138+8
	ldr	r1, .L138+12
	mov	r0, r5
	bl	printfmtstrings
	ldr	r3, [fp, #-40]
	add	r3, r3, #1
	str	r3, [fp, #-40]
	b	.L130
.L134:
	mov	r3, #2
	str	r3, [fp, #-36]
	b	.L129
.L130:
	ldr	r2, [fp, #-40]
	ldr	r3, [fp, #-56]
	cmp	r2, r3
	blt	.L135
.L129:
	bl	endservent
	ldr	r3, [fp, #-36]
	ldr	r2, .L138
	ldr	r1, [r2]
	ldr	r2, [fp, #-16]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L137
	bl	__stack_chk_fail
.L137:
	mov	r0, r3
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L139:
	.align	2
.L138:
	.word	.LC34
	.word	.LC33
	.word	.LC22
	.word	.LC23
	.size	services, .-services
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	shells, %function
shells:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-24]
	str	r1, [fp, #-28]
	mov	r3, #0
	str	r3, [fp, #-12]
	bl	setusershell
	ldr	r3, [fp, #-24]
	cmp	r3, #2
	bne	.L141
	b	.L142
.L143:
	ldr	r0, [fp, #-8]
	bl	puts
.L142:
	bl	getusershell
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	bne	.L143
	b	.L144
.L141:
	mov	r3, #2
	str	r3, [fp, #-16]
	b	.L145
.L150:
	bl	setusershell
	b	.L146
.L148:
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-28]
	add	r3, r2, r3
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r0, [fp, #-8]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L146
	ldr	r0, [fp, #-8]
	bl	puts
	b	.L147
.L146:
	bl	getusershell
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	bne	.L148
.L147:
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	bne	.L149
	mov	r3, #2
	str	r3, [fp, #-12]
	b	.L144
.L149:
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L145:
	ldr	r2, [fp, #-16]
	ldr	r3, [fp, #-24]
	cmp	r2, r3
	blt	.L150
.L144:
	bl	endusershell
	ldr	r3, [fp, #-12]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	shells, .-shells
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",%progbits
