⬢ DragonFlyBSD Kernel Audit
DF-2489 / ad_attach_fixed_disasm.txt
← back to finding ↓ download raw
/boot/kernel/kernel:     file format elf64-x86-64


Disassembly of section .text:

ffffffff80328d30 <ad_attach>:
ffffffff80328d30:	55                   	push   %rbp
ffffffff80328d31:	48 89 e5             	mov    %rsp,%rbp
ffffffff80328d34:	41 57                	push   %r15
ffffffff80328d36:	41 56                	push   %r14
ffffffff80328d38:	41 55                	push   %r13
ffffffff80328d3a:	41 54                	push   %r12
ffffffff80328d3c:	53                   	push   %rbx
ffffffff80328d3d:	48 89 fb             	mov    %rdi,%rbx
ffffffff80328d40:	48 81 ec f8 00 00 00 	sub    $0xf8,%rsp
ffffffff80328d47:	e8 04 44 36 00       	callq  ffffffff8068d150 <device_get_parent>
ffffffff80328d4c:	48 89 c7             	mov    %rax,%rdi
ffffffff80328d4f:	e8 ac 47 36 00       	callq  ffffffff8068d500 <device_get_softc>
ffffffff80328d54:	48 89 df             	mov    %rbx,%rdi
ffffffff80328d57:	49 89 c6             	mov    %rax,%r14
ffffffff80328d5a:	e8 a1 47 36 00       	callq  ffffffff8068d500 <device_get_softc>
ffffffff80328d5f:	48 89 df             	mov    %rbx,%rdi
ffffffff80328d62:	49 89 c4             	mov    %rax,%r12
ffffffff80328d65:	e8 26 48 36 00       	callq  ffffffff8068d590 <device_get_ivars>
ffffffff80328d6a:	49 89 c5             	mov    %rax,%r13
ffffffff80328d6d:	b8 11 00 00 00       	mov    $0x11,%eax
ffffffff80328d72:	4d 85 ed             	test   %r13,%r13
ffffffff80328d75:	74 19                	je     ffffffff80328d90 <ad_attach+0x60>
ffffffff80328d77:	48 8d 65 d8          	lea    -0x28(%rbp),%rsp
ffffffff80328d7b:	5b                   	pop    %rbx
ffffffff80328d7c:	41 5c                	pop    %r12
ffffffff80328d7e:	41 5d                	pop    %r13
ffffffff80328d80:	41 5e                	pop    %r14
ffffffff80328d82:	41 5f                	pop    %r15
ffffffff80328d84:	5d                   	pop    %rbp
ffffffff80328d85:	c3                   	retq   
ffffffff80328d86:	66 2e 0f 1f 84 00 00 	nopw   %cs:0x0(%rax,%rax,1)
ffffffff80328d8d:	00 00 00 
ffffffff80328d90:	ba 02 12 00 00       	mov    $0x1202,%edx
ffffffff80328d95:	48 c7 c6 40 e5 05 81 	mov    $0xffffffff8105e540,%rsi
ffffffff80328d9c:	bf e8 05 00 00       	mov    $0x5e8,%edi
ffffffff80328da1:	e8 2a e0 32 00       	callq  ffffffff80656dd0 <_kmalloc>
ffffffff80328da6:	48 8d 78 08          	lea    0x8(%rax),%rdi
ffffffff80328daa:	48 89 c1             	mov    %rax,%rcx
ffffffff80328dad:	48 c7 00 00 00 00 00 	movq   $0x0,(%rax)
ffffffff80328db4:	49 89 c7             	mov    %rax,%r15
ffffffff80328db7:	48 83 e7 f8          	and    $0xfffffffffffffff8,%rdi
ffffffff80328dbb:	4c 89 fe             	mov    %r15,%rsi
ffffffff80328dbe:	48 c7 80 e0 05 00 00 	movq   $0x0,0x5e0(%rax)
ffffffff80328dc5:	00 00 00 00 
ffffffff80328dc9:	4c 89 e8             	mov    %r13,%rax
ffffffff80328dcc:	48 29 f9             	sub    %rdi,%rcx
ffffffff80328dcf:	81 c1 e8 05 00 00    	add    $0x5e8,%ecx
ffffffff80328dd5:	c1 e9 03             	shr    $0x3,%ecx
ffffffff80328dd8:	f3 48 ab             	rep stos %rax,%es:(%rdi)
ffffffff80328ddb:	48 89 df             	mov    %rbx,%rdi
ffffffff80328dde:	e8 bd 47 36 00       	callq  ffffffff8068d5a0 <device_set_ivars>
ffffffff80328de3:	48 89 df             	mov    %rbx,%rdi
ffffffff80328de6:	e8 15 47 36 00       	callq  ffffffff8068d500 <device_get_softc>
ffffffff80328deb:	48 89 df             	mov    %rbx,%rdi
ffffffff80328dee:	49 89 c5             	mov    %rax,%r13
ffffffff80328df1:	e8 9a 47 36 00       	callq  ffffffff8068d590 <device_get_ivars>
ffffffff80328df6:	41 f6 45 76 01       	testb  $0x1,0x76(%r13)
ffffffff80328dfb:	74 0e                	je     ffffffff80328e0b <ad_attach+0xdb>
ffffffff80328dfd:	41 0f b7 55 7a       	movzwl 0x7a(%r13),%edx
ffffffff80328e02:	66 85 d2             	test   %dx,%dx
ffffffff80328e05:	0f 85 85 03 00 00    	jne    ffffffff80329190 <ad_attach+0x460>
ffffffff80328e0b:	41 0f b7 55 12       	movzwl 0x12(%r13),%edx
ffffffff80328e10:	0f b6 ca             	movzbl %dl,%ecx
ffffffff80328e13:	88 50 08             	mov    %dl,0x8(%rax)
ffffffff80328e16:	41 0f b7 55 18       	movzwl 0x18(%r13),%edx
ffffffff80328e1b:	89 cf                	mov    %ecx,%edi
ffffffff80328e1d:	44 0f b6 c2          	movzbl %dl,%r8d
ffffffff80328e21:	88 50 09             	mov    %dl,0x9(%rax)
ffffffff80328e24:	41 0f b7 55 0e       	movzwl 0xe(%r13),%edx
ffffffff80328e29:	41 0f af c8          	imul   %r8d,%ecx
ffffffff80328e2d:	44 89 c6             	mov    %r8d,%esi
ffffffff80328e30:	0f af d1             	imul   %ecx,%edx
ffffffff80328e33:	48 63 d2             	movslq %edx,%rdx
ffffffff80328e36:	48 89 10             	mov    %rdx,(%rax)
ffffffff80328e39:	40 84 ff             	test   %dil,%dil
ffffffff80328e3c:	75 04                	jne    ffffffff80328e42 <ad_attach+0x112>
ffffffff80328e3e:	c6 40 08 10          	movb   $0x10,0x8(%rax)
ffffffff80328e42:	40 84 f6             	test   %sil,%sil
ffffffff80328e45:	75 04                	jne    ffffffff80328e4b <ad_attach+0x11b>
ffffffff80328e47:	c6 40 09 3f          	movb   $0x3f,0x9(%rax)
ffffffff80328e4b:	41 0f b7 b5 ac 00 00 	movzwl 0xac(%r13),%esi
ffffffff80328e52:	00 
ffffffff80328e53:	41 8b 8d 84 00 00 00 	mov    0x84(%r13),%ecx
ffffffff80328e5a:	66 83 fe ff          	cmp    $0xffff,%si
ffffffff80328e5e:	74 16                	je     ffffffff80328e76 <ad_attach+0x146>
ffffffff80328e60:	ba 0f 00 00 00       	mov    $0xf,%edx
ffffffff80328e65:	0f a3 d6             	bt     %edx,%esi
ffffffff80328e68:	0f 82 62 03 00 00    	jb     ffffffff803291d0 <ad_attach+0x4a0>
ffffffff80328e6e:	83 ea 01             	sub    $0x1,%edx
ffffffff80328e71:	83 fa ff             	cmp    $0xffffffff,%edx
ffffffff80328e74:	75 ef                	jne    ffffffff80328e65 <ad_attach+0x135>
ffffffff80328e76:	41 83 8d 34 02 00 00 	orl    $0x1,0x234(%r13)
ffffffff80328e7d:	01 
ffffffff80328e7e:	66 41 81 7d 0e ff 3f 	cmpw   $0x3fff,0xe(%r13)
ffffffff80328e85:	89 ca                	mov    %ecx,%edx
ffffffff80328e87:	0f 84 f5 02 00 00    	je     ffffffff80329182 <ad_attach+0x452>
ffffffff80328e8d:	48 39 10             	cmp    %rdx,(%rax)
ffffffff80328e90:	0f 82 ec 02 00 00    	jb     ffffffff80329182 <ad_attach+0x452>
ffffffff80328e96:	49 8b 95 d4 00 00 00 	mov    0xd4(%r13),%rdx
ffffffff80328e9d:	41 f6 85 b3 00 00 00 	testb  $0x4,0xb3(%r13)
ffffffff80328ea4:	04 
ffffffff80328ea5:	74 0d                	je     ffffffff80328eb4 <ad_attach+0x184>
ffffffff80328ea7:	48 81 fa ff ff ff 0f 	cmp    $0xfffffff,%rdx
ffffffff80328eae:	0f 87 0c 03 00 00    	ja     ffffffff803291c0 <ad_attach+0x490>
ffffffff80328eb4:	48 89 df             	mov    %rbx,%rdi
ffffffff80328eb7:	e8 a4 fc ff ff       	callq  ffffffff80328b60 <ad_init>
ffffffff80328ebc:	48 89 df             	mov    %rbx,%rdi
ffffffff80328ebf:	e8 6c 43 36 00       	callq  ffffffff8068d230 <device_get_unit>
ffffffff80328ec4:	48 83 ec 08          	sub    $0x8,%rsp
ffffffff80328ec8:	b9 00 02 00 00       	mov    $0x200,%ecx
ffffffff80328ecd:	41 b9 20 00 00 00    	mov    $0x20,%r9d
ffffffff80328ed3:	68 10 01 00 00       	pushq  $0x110
ffffffff80328ed8:	89 c2                	mov    %eax,%edx
ffffffff80328eda:	49 8d 7f 18          	lea    0x18(%r15),%rdi
ffffffff80328ede:	41 b8 02 00 00 00    	mov    $0x2,%r8d
ffffffff80328ee4:	48 c7 c6 c2 f5 c3 80 	mov    $0xffffffff80c3f5c2,%rsi
ffffffff80328eeb:	e8 d0 94 36 00       	callq  ffffffff806923c0 <devstat_add_entry>
ffffffff80328ef0:	49 8d 87 e0 00 00 00 	lea    0xe0(%r15),%rax
ffffffff80328ef7:	48 89 df             	mov    %rbx,%rdi
ffffffff80328efa:	49 89 c5             	mov    %rax,%r13
ffffffff80328efd:	48 89 85 00 ff ff ff 	mov    %rax,-0x100(%rbp)
ffffffff80328f04:	e8 27 43 36 00       	callq  ffffffff8068d230 <device_get_unit>
ffffffff80328f09:	48 c7 c2 c0 e6 05 81 	mov    $0xffffffff8105e6c0,%rdx
ffffffff80328f10:	4c 89 ee             	mov    %r13,%rsi
ffffffff80328f13:	89 c7                	mov    %eax,%edi
ffffffff80328f15:	e8 d6 b1 36 00       	callq  ffffffff806940f0 <disk_create>
ffffffff80328f1a:	ba 00 00 01 00       	mov    $0x10000,%edx
ffffffff80328f1f:	48 89 98 98 00 00 00 	mov    %rbx,0x98(%rax)
ffffffff80328f26:	49 8b 8e d8 01 00 00 	mov    0x1d8(%r14),%rcx
ffffffff80328f2d:	5e                   	pop    %rsi
ffffffff80328f2e:	5f                   	pop    %rdi
ffffffff80328f2f:	48 85 c9             	test   %rcx,%rcx
ffffffff80328f32:	74 03                	je     ffffffff80328f37 <ad_attach+0x207>
ffffffff80328f34:	8b 51 64             	mov    0x64(%rcx),%edx
ffffffff80328f37:	89 90 b8 00 00 00    	mov    %edx,0xb8(%rax)
ffffffff80328f3d:	b9 06 00 00 00       	mov    $0x6,%ecx
ffffffff80328f42:	48 8d bd 18 ff ff ff 	lea    -0xe8(%rbp),%rdi
ffffffff80328f49:	41 0f b6 57 09       	movzbl 0x9(%r15),%edx
ffffffff80328f4e:	49 89 87 e0 05 00 00 	mov    %rax,0x5e0(%r15)
ffffffff80328f55:	31 c0                	xor    %eax,%eax
ffffffff80328f57:	f3 48 ab             	rep stos %rax,%es:(%rdi)
ffffffff80328f5a:	41 0f b6 4f 08       	movzbl 0x8(%r15),%ecx
ffffffff80328f5f:	49 8b 07             	mov    (%r15),%rax
ffffffff80328f62:	48 89 df             	mov    %rbx,%rdi
ffffffff80328f65:	89 95 3c ff ff ff    	mov    %edx,-0xc4(%rbp)
ffffffff80328f6b:	89 8d 34 ff ff ff    	mov    %ecx,-0xcc(%rbp)
ffffffff80328f71:	0f af ca             	imul   %edx,%ecx
ffffffff80328f74:	31 d2                	xor    %edx,%edx
ffffffff80328f76:	48 89 85 20 ff ff ff 	mov    %rax,-0xe0(%rbp)
ffffffff80328f7d:	c7 85 28 ff ff ff 00 	movl   $0x200,-0xd8(%rbp)
ffffffff80328f84:	02 00 00 
ffffffff80328f87:	48 63 f1             	movslq %ecx,%rsi
ffffffff80328f8a:	89 8d 40 ff ff ff    	mov    %ecx,-0xc0(%rbp)
ffffffff80328f90:	48 f7 f6             	div    %rsi
ffffffff80328f93:	89 85 38 ff ff ff    	mov    %eax,-0xc8(%rbp)
ffffffff80328f99:	49 8d 44 24 20       	lea    0x20(%r12),%rax
ffffffff80328f9e:	48 89 85 48 ff ff ff 	mov    %rax,-0xb8(%rbp)
ffffffff80328fa5:	e8 86 42 36 00       	callq  ffffffff8068d230 <device_get_unit>
ffffffff80328faa:	48 c7 c6 c5 f5 c3 80 	mov    $0xffffffff80c3f5c5,%rsi
ffffffff80328fb1:	48 89 df             	mov    %rbx,%rdi
ffffffff80328fb4:	89 c2                	mov    %eax,%edx
ffffffff80328fb6:	e8 65 40 36 00       	callq  ffffffff8068d020 <device_add_child>
ffffffff80328fbb:	48 89 df             	mov    %rbx,%rdi
ffffffff80328fbe:	e8 1d 68 36 00       	callq  ffffffff8068f7e0 <bus_generic_attach>
ffffffff80328fc3:	48 89 df             	mov    %rbx,%rdi
ffffffff80328fc6:	e8 85 41 36 00       	callq  ffffffff8068d150 <device_get_parent>
ffffffff80328fcb:	48 89 c7             	mov    %rax,%rdi
ffffffff80328fce:	e8 2d 45 36 00       	callq  ffffffff8068d500 <device_get_softc>
ffffffff80328fd3:	48 89 df             	mov    %rbx,%rdi
ffffffff80328fd6:	48 89 85 f8 fe ff ff 	mov    %rax,-0x108(%rbp)
ffffffff80328fdd:	e8 1e 45 36 00       	callq  ffffffff8068d500 <device_get_softc>
ffffffff80328fe2:	48 89 df             	mov    %rbx,%rdi
ffffffff80328fe5:	49 89 c5             	mov    %rax,%r13
ffffffff80328fe8:	e8 a3 45 36 00       	callq  ffffffff8068d590 <device_get_ivars>
ffffffff80328fed:	4d 8d 75 42          	lea    0x42(%r13),%r14
ffffffff80328ff1:	be 20 00 00 00       	mov    $0x20,%esi
ffffffff80328ff6:	4c 89 f7             	mov    %r14,%rdi
ffffffff80328ff9:	49 89 c7             	mov    %rax,%r15
ffffffff80328ffc:	e8 8f bf 6a 00       	callq  ffffffff809d4f90 <index>
ffffffff80329001:	48 85 c0             	test   %rax,%rax
ffffffff80329004:	0f 84 2b 02 00 00    	je     ffffffff80329235 <ad_attach+0x505>
ffffffff8032900a:	4c 29 f0             	sub    %r14,%rax
ffffffff8032900d:	4c 89 f6             	mov    %r14,%rsi
ffffffff80329010:	4c 63 c0             	movslq %eax,%r8
ffffffff80329013:	48 89 85 f0 fe ff ff 	mov    %rax,-0x110(%rbp)
ffffffff8032901a:	48 8d 85 50 ff ff ff 	lea    -0xb0(%rbp),%rax
ffffffff80329021:	4c 89 c2             	mov    %r8,%rdx
ffffffff80329024:	48 89 c7             	mov    %rax,%rdi
ffffffff80329027:	4c 89 85 e8 fe ff ff 	mov    %r8,-0x118(%rbp)
ffffffff8032902e:	48 89 85 08 ff ff ff 	mov    %rax,-0xf8(%rbp)
ffffffff80329035:	e8 c6 e7 6a 00       	callq  ffffffff809d7800 <strncpy>
ffffffff8032903a:	48 8b 8d f0 fe ff ff 	mov    -0x110(%rbp),%rcx
ffffffff80329041:	4c 8b 85 e8 fe ff ff 	mov    -0x118(%rbp),%r8
ffffffff80329048:	48 c7 c6 bb ae c3 80 	mov    $0xffffffff80c3aebb,%rsi
ffffffff8032904f:	48 8b bd 08 ff ff ff 	mov    -0xf8(%rbp),%rdi
ffffffff80329056:	42 c6 84 05 50 ff ff 	movb   $0x0,-0xb0(%rbp,%r8,1)
ffffffff8032905d:	ff 00 
ffffffff8032905f:	83                   	.byte 0x83