1	.section ".note.openbsd.ident", "a"
2	.p2align 2
3	.long	8
4	.long	4
5	.long	1
6	.ascii "OpenBSD\0"
7	.long	0
8	.previous
9	.file	"crt0.c"
10	.globl	__progname
11	.section	.rodata
12.LC0:
13	.string	""
14	.data
15	.align 8
16	.type	__progname, @object
17	.size	__progname, 8
18__progname:
19	.quad	.LC0
20#APP
21	 .text
22	.align	8
23	.globl	__start
24	.globl	_start
25_start:
26__start:
27	movq	%rdx,%rcx
28	movq	(%rsp),%rdi
29	leaq	16(%rsp,%rdi,8),%rdx
30	leaq	8(%rsp),%rsi
31	subq	$8,%rsp
32	andq	$~15,%rsp
33	addq	$8,%rsp
34	jmp	___start
35
36#NO_APP
37	.text
38	.globl	___start
39	.type	___start, @function
40___start:
41.LFB9:
42	pushq	%rbp
43.LCFI0:
44	movq	%rsp, %rbp
45.LCFI1:
46	subq	$64, %rsp
47.LCFI2:
48	movl	%edi, -20(%rbp)
49	movq	%rsi, -32(%rbp)
50	movq	%rdx, -40(%rbp)
51	movq	%rcx, -48(%rbp)
52	movq	%r8, -56(%rbp)
53	movq	%r9, -64(%rbp)
54	movq	-40(%rbp), %rax
55	movq	%rax, environ(%rip)
56	movq    %rax,operatingsystem_parameter_envp(%rip)
57	movq	-32(%rbp), %rax
58	movq	(%rax), %rax
59	movq	%rax, -8(%rbp)
60	cmpq	$0, -8(%rbp)
61	je	.L2
62	movq	-8(%rbp), %rdi
63	movl	$47, %esi
64	call	_strrchr
65	movq	%rax, __progname(%rip)
66	movq	__progname(%rip), %rax
67	testq	%rax, %rax
68	jne	.L4
69	movq	-8(%rbp), %rax
70	movq	%rax, __progname(%rip)
71	jmp	.L6
72.L4:
73	movq	__progname(%rip), %rax
74	addq	$1, %rax
75	movq	%rax, __progname(%rip)
76.L6:
77	leaq	__progname_storage(%rip), %rax
78	movq	%rax, -16(%rbp)
79	jmp	.L7
80.L8:
81	movq	__progname(%rip), %rcx
82	movzbl	(%rcx), %edx
83	movq	-16(%rbp), %rax
84	movb	%dl, (%rax)
85	addq	$1, -16(%rbp)
86	leaq	1(%rcx), %rax
87	movq	%rax, __progname(%rip)
88.L7:
89	movq	__progname(%rip), %rax
90	movzbl	(%rax), %eax
91	testb	%al, %al
92	je	.L9
93	leaq	__progname_storage+255(%rip), %rax
94	cmpq	%rax, -16(%rbp)
95	jb	.L8
96.L9:
97	leaq	__progname_storage(%rip), %rax
98	movq	%rax, __progname(%rip)
99	movq	-16(%rbp), %rax
100	movb	$0, (%rax)
101.L2:
102	# movl	$_mcleanup, %edi
103	# call	atexit
104	# movl	$_etext, %eax
105	# movq	%rax, %rsi
106	# movl	$_eprol, %eax
107	# movq	%rax, %rdi
108	# call	monstartup
109	# movl	$0, %eax
110	# call	__init
111	movq	environ(%rip), %rdx
112	movq	-32(%rbp), %rsi
113	movl	-20(%rbp), %edi
114	movq    %rdi,operatingsystem_parameter_argc(%rip)
115	movq    %rsi,operatingsystem_parameter_argv(%rip)
116	movl	$0, %eax
117	call	main
118	# movl	%eax, %edi
119	# call	exit
120	jmp _haltproc
121        .p2align 2,0x90
122
123.globl _haltproc
124.type _haltproc,@function
125
126_haltproc:
127           movq $1,%rax
128           movzwq operatingsystem_result(%rip),%rdi
129           syscall
130           jmp   _haltproc
131.LFE9:
132	.size	___start, .-___start
133	.type	_strrchr, @function
134_strrchr:
135.LFB10:
136	pushq	%rbp
137.LCFI3:
138	movq	%rsp, %rbp
139.LCFI4:
140	movq	%rdi, -24(%rbp)
141	movb	%sil, -25(%rbp)
142	movq	$0, -8(%rbp)
143.L13:
144	movq	-24(%rbp), %rdx
145	movzbl	(%rdx), %eax
146	cmpb	-25(%rbp), %al
147	jne	.L14
148	movq	-24(%rbp), %rax
149	movq	%rax, -8(%rbp)
150.L14:
151	movq	-24(%rbp), %rdx
152	movzbl	(%rdx), %eax
153	testb	%al, %al
154	jne	.L16
155	movq	-8(%rbp), %rax
156	movq	%rax, -16(%rbp)
157	jmp	.L12
158.L16:
159	addq	$1, -24(%rbp)
160	jmp	.L13
161.L12:
162	movq	-16(%rbp), %rax
163	leave
164	ret
165.LFE10:
166	.size	_strrchr, .-_strrchr
167#APP
168	  .text
169	_eprol:
170#NO_APP
171	.comm	environ,8,8
172	.comm	__progname_storage,256,32
173        .comm   operatingsystem_parameter_envp,8,8
174        .comm   operatingsystem_parameter_argc,8,8
175        .comm   operatingsystem_parameter_argv,8,8
176	.section	.eh_frame,"a",@unwind
177.Lframe1:
178	.long	.LECIE1-.LSCIE1
179.LSCIE1:
180	.long	0x0
181	.byte	0x1
182	.string	"zR"
183	.uleb128 0x1
184	.sleb128 -8
185	.byte	0x10
186	.uleb128 0x1
187	.byte	0x3
188	.byte	0xc
189	.uleb128 0x7
190	.uleb128 0x8
191	.byte	0x90
192	.uleb128 0x1
193	.align 8
194.LECIE1:
195.LSFDE1:
196	.long	.LEFDE1-.LASFDE1
197.LASFDE1:
198	.long	.LASFDE1-.Lframe1
199	.long	.LFB9-.
200	.long	.LFE9-.LFB9
201	.uleb128 0x0
202	.byte	0x4
203	.long	.LCFI0-.LFB9
204	.byte	0xe
205	.uleb128 0x10
206	.byte	0x86
207	.uleb128 0x2
208	.byte	0x4
209	.long	.LCFI1-.LCFI0
210	.byte	0xd
211	.uleb128 0x6
212	.align 8
213.LEFDE1:
214.LSFDE3:
215	.long	.LEFDE3-.LASFDE3
216.LASFDE3:
217	.long	.LASFDE3-.Lframe1
218	.long	.LFB10-.
219	.long	.LFE10-.LFB10
220	.uleb128 0x0
221	.byte	0x4
222	.long	.LCFI3-.LFB10
223	.byte	0xe
224	.uleb128 0x10
225	.byte	0x86
226	.uleb128 0x2
227	.byte	0x4
228	.long	.LCFI4-.LCFI3
229	.byte	0xd
230	.uleb128 0x6
231	.align 8
232.LEFDE3:
233	.ident	"GCC: (GNU) 4.2.1 20070719 "
234