
sharp_mmcsd_m.o:     file format elf32-littlearm

Disassembly of section .text:

00000000 <collie_set_mount_state>:
       0:	e1a0c00d 	mov	ip, sp
       4:	e92dd800 	stmdb	sp!, {fp, ip, lr, pc}
       8:	e24cb004 	sub	fp, ip, #4	; 0x4
       c:	e3500000 	cmp	r0, #0	; 0x0
      10:	159f2010 	ldrne	r2, [pc, #16]	; 28 <collie_set_mount_state+0x28>
      14:	13a03001 	movne	r3, #1	; 0x1
      18:	15823000 	strne	r3, [r2]
      1c:	059f3004 	ldreq	r3, [pc, #4]	; 28 <collie_set_mount_state+0x28>
      20:	05830000 	streq	r0, [r3]
      24:	e91ba800 	ldmdb	fp, {fp, sp, pc}
      28:	00000000 	andeq	r0, r0, r0

0000002c <collie_request_remount>:
      2c:	e1a0c00d 	mov	ip, sp
      30:	e92dd800 	stmdb	sp!, {fp, ip, lr, pc}
      34:	e24cb004 	sub	fp, ip, #4	; 0x4
      38:	e59f2008 	ldr	r2, [pc, #8]	; 48 <collie_request_remount+0x1c>
      3c:	e3a03001 	mov	r3, #1	; 0x1
      40:	e5823000 	str	r3, [r2]
      44:	e91ba800 	ldmdb	fp, {fp, sp, pc}
      48:	00000000 	andeq	r0, r0, r0

0000004c <collie_send_card_event>:
      4c:	e1a0c00d 	mov	ip, sp
      50:	e92dd800 	stmdb	sp!, {fp, ip, lr, pc}
      54:	e59f001c 	ldr	r0, [pc, #28]	; 78 <collie_send_card_event+0x2c>
      58:	e5903000 	ldr	r3, [r0]
      5c:	e24cb004 	sub	fp, ip, #4	; 0x4
      60:	e3530000 	cmp	r3, #0	; 0x0
      64:	0a00001b 	beq	d8 <collie_mmcd_power+0x58>
      68:	e59f200c 	ldr	r2, [pc, #12]	; 7c <collie_send_card_event+0x30>
      6c:	e3a0101d 	mov	r1, #29	; 0x1d
      70:	ebfffffe 	bl	70 <collie_send_card_event+0x24>
      74:	e91ba800 	ldmdb	fp, {fp, sp, pc}
      78:	00000008 	andeq	r0, r0, r8
      7c:	00020001 	andeq	r0, r2, r1

00000080 <collie_mmcd_power>:
      80:	e1a0c00d 	mov	ip, sp
      84:	e92dd800 	stmdb	sp!, {fp, ip, lr, pc}
      88:	e24cb004 	sub	fp, ip, #4	; 0x4
      8c:	e3500001 	cmp	r0, #1	; 0x1
      90:	1a00002a 	bne	140 <collie_mmcd_interrupt+0x64>
      94:	e59f2034 	ldr	r2, [pc, #52]	; d0 <collie_mmcd_power+0x50>
      98:	e1d230b0 	ldrh	r3, [r2]
      9c:	e59f0030 	ldr	r0, [pc, #48]	; d4 <collie_mmcd_power+0x54>
      a0:	e3833902 	orr	r3, r3, #32768	; 0x8000
      a4:	e1c230b0 	strh	r3, [r2]
      a8:	ebfffffe 	bl	a8 <collie_mmcd_power+0x28>
      ac:	e91ba800 	ldmdb	fp, {fp, sp, pc}
      b0:	e59f2018 	ldr	r2, [pc, #24]	; d0 <collie_mmcd_power+0x50>
      b4:	e1d230b0 	ldrh	r3, [r2]
      b8:	e59f0018 	ldr	r0, [pc, #24]	; d8 <collie_mmcd_power+0x58>
      bc:	e1a03883 	mov	r3, r3, lsl #17
      c0:	e1a038a3 	mov	r3, r3, lsr #17
      c4:	e1c230b0 	strh	r3, [r2]
      c8:	ebfffffe 	bl	c8 <collie_mmcd_power+0x48>
      cc:	e91ba800 	ldmdb	fp, {fp, sp, pc}
      d0:	f000009c 	mulnv	r0, ip, r0
      d4:	000186a0 	andeq	r8, r1, r0, lsr #13
      d8:	001e8480 	andeqs	r8, lr, r0, lsl #9

000000dc <collie_mmcd_interrupt>:
      dc:	e1a0c00d 	mov	ip, sp
      e0:	e92dd8f0 	stmdb	sp!, {r4, r5, r6, r7, fp, ip, lr, pc}
      e4:	e24cb004 	sub	fp, ip, #4	; 0x4
      e8:	e1a07001 	mov	r7, r1
      ec:	e59f308c 	ldr	r3, [pc, #140]	; 180 <collie_mmcd_interrupt+0xa4>
      f0:	e3a06000 	mov	r6, #0	; 0x0
      f4:	e1d330b0 	ldrh	r3, [r3]
      f8:	e1a05006 	mov	r5, r6
      fc:	e2034a02 	and	r4, r3, #8192	; 0x2000
     100:	e3540000 	cmp	r4, #0	; 0x0
     104:	0a000046 	beq	224 <collie_install_cardirq+0x94>
     108:	e59f3074 	ldr	r3, [pc, #116]	; 184 <collie_mmcd_interrupt+0xa8>
     10c:	e7933005 	ldr	r3, [r3, r5]
     110:	e3530000 	cmp	r3, #0	; 0x0
     114:	0a000046 	beq	234 <collie_deinstall_cardirq+0xc>
     118:	e3a00001 	mov	r0, #1	; 0x1
     11c:	ebfffffe 	bl	11c <collie_mmcd_interrupt+0x40>
     120:	e2855090 	add	r5, r5, #144	; 0x90
     124:	e2566001 	subs	r6, r6, #1	; 0x1
     128:	5a00003e 	bpl	228 <collie_deinstall_cardirq>
     12c:	e3540000 	cmp	r4, #0	; 0x0
     130:	1a000052 	bne	280 <collie_enable_cardirq+0x38>
     134:	e59f304c 	ldr	r3, [pc, #76]	; 188 <collie_mmcd_interrupt+0xac>
     138:	e5933000 	ldr	r3, [r3]
     13c:	e3530000 	cmp	r3, #0	; 0x0
     140:	0a000052 	beq	290 <collie_enable_cardirq+0x48>
     144:	e59f0040 	ldr	r0, [pc, #64]	; 18c <collie_mmcd_interrupt+0xb0>
     148:	ebfffffe 	bl	148 <collie_mmcd_interrupt+0x6c>
     14c:	e91ba8f0 	ldmdb	fp, {r4, r5, r6, r7, fp, sp, pc}
     150:	e3540000 	cmp	r4, #0	; 0x0
     154:	1a000056 	bne	2b4 <collie_disable_cardirq+0xc>
     158:	e3a00001 	mov	r0, #1	; 0x1
     15c:	eb00001e 	bl	1dc <collie_install_cardirq+0x4c>
     160:	e1a00007 	mov	r0, r7
     164:	ebfffffe 	bl	164 <collie_mmcd_interrupt+0x88>
     168:	e3540000 	cmp	r4, #0	; 0x0
     16c:	0a00005c 	beq	2e4 <collie_card_exists+0x20>
     170:	e3a00000 	mov	r0, #0	; 0x0
     174:	eb00001e 	bl	1f4 <collie_install_cardirq+0x64>
     178:	ebfffffe 	bl	178 <collie_mmcd_interrupt+0x9c>
     17c:	e91ba8f0 	ldmdb	fp, {r4, r5, r6, r7, fp, sp, pc}
     180:	f0000098 	mulnv	r0, r8, r0
     184:	0000008c 	andeq	r0, r0, ip, lsl #1
	...

00000190 <collie_install_cardirq>:
     190:	e1a0c00d 	mov	ip, sp
     194:	e92dd800 	stmdb	sp!, {fp, ip, lr, pc}
     198:	e24cb004 	sub	fp, ip, #4	; 0x4
     
     19c:	e59f1074 	ldr	r1, [pc, #116]	; 218 <collie_install_cardirq+0x88>
     1a0:	e24dd004 	sub	sp, sp, #4	; 0x4
     1a4:	e1d130b0 	ldrh	r3, [r1]
     1a8:	e3e0c902 	mvn	ip, #32768	; 0x8000
     1ac:	e59f2068 	ldr	r2, [pc, #104]	; 21c <collie_install_cardirq+0x8c>
     1b0:	e003300c 	and	r3, r3, ip
     1b4:	e1c130b0 	strh	r3, [r1]
     1b8:	e1d230b0 	ldrh	r3, [r2]
     1bc:	e003300c 	and	r3, r3, ip
     1c0:	e1c230b0 	strh	r3, [r2]
     1c4:	e1d130b0 	ldrh	r3, [r1]
     1c8:	e3833a02 	orr	r3, r3, #8192	; 0x2000
     1cc:	e1c130b0 	strh	r3, [r1]
     
     1d0:	e1d230b0 	ldrh	r3, [r2]
     1d4:	e3833a02 	orr	r3, r3, #8192	; 0x2000
     1d8:	e1c230b0 	strh	r3, [r2]
     
     1dc:	e282200c 	add	r2, r2, #12	; 0xc
     1e0:	e1d230b0 	ldrh	r3, [r2]
     1e4:	e3833a02 	orr	r3, r3, #8192	; 0x2000
     1e8:	e1c230b0 	strh	r3, [r2]
     
     1ec:	e2822004 	add	r2, r2, #4	; 0x4
     1f0:	e1d230b0 	ldrh	r3, [r2]
     1f4:	e59f1024 	ldr	r1, [pc, #36]	; 220 <collie_install_cardirq+0x90>
     1f8:	e3833a02 	orr	r3, r3, #8192	; 0x2000
     1fc:	e1c230b0 	strh	r3, [r2]
     
     200:	e58d0000 	str	r0, [sp]
     204:	e3a00043 	mov	r0, #67	; 0x43
     208:	e59f3014 	ldr	r3, [pc, #20]	; 224 <collie_install_cardirq+0x94>
     20c:	e3a02301 	mov	r2, #67108864	; 0x4000000
     210:	ebfffffe 	bl	210 <collie_install_cardirq+0x80>
     214:	e91ba800 	ldmdb	fp, {fp, sp, pc}
     218:	f0000090 	mulnv	r0, r0, r0
     21c:	f0000094 	mulnv	r0, r4, r0
     220:	000000dc 	ldreqd	r0, [r0], -ip
     224:	0000001c 	andeq	r0, r0, ip, lsl r0

00000228 <collie_deinstall_cardirq>:
     228:	e1a0c00d 	mov	ip, sp
     22c:	e92dd800 	stmdb	sp!, {fp, ip, lr, pc}
     230:	e24cb004 	sub	fp, ip, #4	; 0x4
     234:	e1a01000 	mov	r1, r0
     238:	e3a00043 	mov	r0, #67	; 0x43
     23c:	ebfffffe 	bl	23c <collie_deinstall_cardirq+0x14>
     240:	e3a00000 	mov	r0, #0	; 0x0
     244:	e91ba800 	ldmdb	fp, {fp, sp, pc}

00000248 <collie_enable_cardirq>:
     248:	e1a0c00d 	mov	ip, sp
     24c:	e92dd800 	stmdb	sp!, {fp, ip, lr, pc}
     250:	e59f204c 	ldr	r2, [pc, #76]	; 2a4 <collie_enable_cardirq+0x5c>
     254:	e1d230b0 	ldrh	r3, [r2]
     258:	e3833a02 	orr	r3, r3, #8192	; 0x2000
     25c:	e1c230b0 	strh	r3, [r2]
     
     260:	e2822004 	add	r2, r2, #4	; 0x4
     264:	e1d230b0 	ldrh	r3, [r2]
     268:	e3833a02 	orr	r3, r3, #8192	; 0x2000
     26c:	e1c230b0 	strh	r3, [r2]
     
     270:	e282200c 	add	r2, r2, #12	; 0xc
     274:	e1d230b0 	ldrh	r3, [r2]
     278:	e24cb004 	sub	fp, ip, #4	; 0x4
     27c:	e3833a02 	orr	r3, r3, #8192	; 0x2000
     280:	e1c230b0 	strh	r3, [r2]
     
     284:	e2822004 	add	r2, r2, #4	; 0x4
     288:	e1d230b0 	ldrh	r3, [r2]
     28c:	e3a00043 	mov	r0, #67	; 0x43
     290:	e3833a02 	orr	r3, r3, #8192	; 0x2000
     294:	e1c230b0 	strh	r3, [r2]
     
     298:	ebfffffe 	bl	298 <collie_enable_cardirq+0x50>
     29c:	e3a00000 	mov	r0, #0	; 0x0
     2a0:	e91ba800 	ldmdb	fp, {fp, sp, pc}
     2a4:	f0000090 	mulnv	r0, r0, r0

000002a8 <collie_disable_cardirq>:
     2a8:	e1a0c00d 	mov	ip, sp
     2ac:	e92dd800 	stmdb	sp!, {fp, ip, lr, pc}
     2b0:	e24cb004 	sub	fp, ip, #4	; 0x4
     2b4:	e3a00043 	mov	r0, #67	; 0x43
     2b8:	ebfffffe 	bl	2b8 <collie_disable_cardirq+0x10>
     2bc:	e3a00000 	mov	r0, #0	; 0x0
     2c0:	e91ba800 	ldmdb	fp, {fp, sp, pc}

000002c4 <collie_card_exists>:
     2c4:	e1a0c00d 	mov	ip, sp
     2c8:	e92dd800 	stmdb	sp!, {fp, ip, lr, pc}
     2cc:	e59f3014 	ldr	r3, [pc, #20]	; 2e8 <collie_card_exists+0x24>
     2d0:	e1d300b0 	ldrh	r0, [r3]
     2d4:	e24cb004 	sub	fp, ip, #4	; 0x4
     2d8:	e1a006a0 	mov	r0, r0, lsr #13
     2dc:	e2200001 	eor	r0, r0, #1	; 0x1
     2e0:	e2000001 	and	r0, r0, #1	; 0x1
     2e4:	e91ba800 	ldmdb	fp, {fp, sp, pc}
     2e8:	f0000098 	mulnv	r0, r8, r0

000002ec <slotdetect_fasync>:
     2ec:	e1a0c00d 	mov	ip, sp
     2f0:	e92dd800 	stmdb	sp!, {fp, ip, lr, pc}
     2f4:	e59f3010 	ldr	r3, [pc, #16]	; 30c <slotdetect_fasync+0x20>
     2f8:	e24cb004 	sub	fp, ip, #4	; 0x4
     2fc:	ebfffffe 	bl	2fc <slotdetect_fasync+0x10>
     300:	e3500000 	cmp	r0, #0	; 0x0
     304:	a3a00000 	movge	r0, #0	; 0x0
     308:	e91ba800 	ldmdb	fp, {fp, sp, pc}
     30c:	00000008 	andeq	r0, r0, r8

00000310 <slotdetect_open>:
     310:	e1a0c00d 	mov	ip, sp
     314:	e92dd800 	stmdb	sp!, {fp, ip, lr, pc}
     318:	e24cb004 	sub	fp, ip, #4	; 0x4
     31c:	e59f2030 	ldr	r2, [pc, #48]	; 354 <slotdetect_open+0x44>
     320:	e10f1000 	mrs	r1, CPSR
     324:	e3813080 	orr	r3, r1, #128	; 0x80
     328:	e121f003 	msr	CPSR_c, r3
     32c:	e5923000 	ldr	r3, [r2]
     330:	e2833001 	add	r3, r3, #1	; 0x1
     334:	e5823000 	str	r3, [r2]
     338:	e121f001 	msr	CPSR_c, r1
     33c:	e2422010 	sub	r2, r2, #16	; 0x10
     340:	e5923014 	ldr	r3, [r2, #20]
     344:	e3a00000 	mov	r0, #0	; 0x0
     348:	e3833018 	orr	r3, r3, #24	; 0x18
     34c:	e5823014 	str	r3, [r2, #20]
     350:	e91ba800 	ldmdb	fp, {fp, sp, pc}
     354:	00000010 	andeq	r0, r0, r0, lsl r0

00000358 <slotdetect_release>:
     358:	e1a0c00d 	mov	ip, sp
     35c:	e92dd800 	stmdb	sp!, {fp, ip, lr, pc}
     360:	e24cb004 	sub	fp, ip, #4	; 0x4
     364:	e59f2030 	ldr	r2, [pc, #48]	; 39c <slotdetect_release+0x44>
     368:	e10f1000 	mrs	r1, CPSR
     36c:	e3813080 	orr	r3, r1, #128	; 0x80
     370:	e121f003 	msr	CPSR_c, r3
     374:	e5923000 	ldr	r3, [r2]
     378:	e2433001 	sub	r3, r3, #1	; 0x1
     37c:	e5823000 	str	r3, [r2]
     380:	e121f001 	msr	CPSR_c, r1
     384:	e2422010 	sub	r2, r2, #16	; 0x10
     388:	e5923014 	ldr	r3, [r2, #20]
     38c:	e3a00000 	mov	r0, #0	; 0x0
     390:	e3833008 	orr	r3, r3, #8	; 0x8
     394:	e5823014 	str	r3, [r2, #20]
     398:	e91ba800 	ldmdb	fp, {fp, sp, pc}
     39c:	00000010 	andeq	r0, r0, r0, lsl r0

000003a0 <slotdetect_ioctl>:
     3a0:	e1a0c00d 	mov	ip, sp
     3a4:	e92dd810 	stmdb	sp!, {r4, fp, ip, lr, pc}
     3a8:	e24cb004 	sub	fp, ip, #4	; 0x4
     3ac:	e59f110c 	ldr	r1, [pc, #268]	; 4c0 <slotdetect_ioctl+0x120>
     3b0:	e1a04003 	mov	r4, r3
     3b4:	e1520001 	cmp	r2, r1
     3b8:	0a000110 	beq	800 <mmcsd_enable_irqs+0x20>
     3bc:	8a0000f2 	bhi	78c <mmcsd_deinstall_irqs+0x1c>
     3c0:	e59f30fc 	ldr	r3, [pc, #252]	; 4c4 <slotdetect_ioctl+0x124>
     3c4:	e1520003 	cmp	r2, r3
     3c8:	0a0000f6 	beq	7a8 <mmcsd_deinstall_irqs+0x38>
     3cc:	ea0000f8 	b	7b4 <mmcsd_deinstall_irqs+0x44>
     3d0:	e59f30f0 	ldr	r3, [pc, #240]	; 4c8 <slotdetect_ioctl+0x128>
     3d4:	e1520003 	cmp	r2, r3
     3d8:	0a000128 	beq	880 <mmcsd_disable_irqs+0x30>
     3dc:	ea0000f8 	b	7c4 <mmcsd_deinstall_irqs+0x54>
     3e0:	e3540000 	cmp	r4, #0	; 0x0
     3e4:	1a0000fa 	bne	7d4 <mmcsd_deinstall_irqs+0x64>
     3e8:	e3e00015 	mvn	r0, #21	; 0x15
     3ec:	e91ba810 	ldmdb	fp, {r4, fp, sp, pc}
     3f0:	eb0000af 	bl	6b4 <mmcsd_quitsys+0x38>
     3f4:	e1a01000 	mov	r1, r0
     3f8:	e1a00004 	mov	r0, r4
     3fc:	ebfffffe 	bl	3fc <slotdetect_ioctl+0x5c>
     400:	e59f30c4 	ldr	r3, [pc, #196]	; 4cc <slotdetect_ioctl+0x12c>
     404:	e5933000 	ldr	r3, [r3]
     408:	e3530000 	cmp	r3, #0	; 0x0
     40c:	13510000 	cmpne	r1, #0	; 0x0
     410:	1a000107 	bne	834 <mmcsd_enable_irqs+0x54>
     414:	e59f30b4 	ldr	r3, [pc, #180]	; 4d0 <slotdetect_ioctl+0x130>
     418:	e5933000 	ldr	r3, [r3]
     41c:	e3530000 	cmp	r3, #0	; 0x0
     420:	0a00010d 	beq	85c <mmcsd_disable_irqs+0xc>
     424:	e3a01003 	mov	r1, #3	; 0x3
     428:	e1a00004 	mov	r0, r4
     42c:	e59f209c 	ldr	r2, [pc, #156]	; 4d0 <slotdetect_ioctl+0x130>
     430:	e3a03000 	mov	r3, #0	; 0x0
     434:	e5823000 	str	r3, [r2]
     438:	ebfffffe 	bl	438 <slotdetect_ioctl+0x98>
     43c:	e3500000 	cmp	r0, #0	; 0x0
     440:	0a00012c 	beq	8f8 <mmcsd_invalidate_devices+0x38>
     444:	e91ba810 	ldmdb	fp, {r4, fp, sp, pc}
     448:	e3540000 	cmp	r4, #0	; 0x0
     44c:	0a0000f8 	beq	834 <mmcsd_enable_irqs+0x54>
     450:	eb0000af 	bl	714 <mmcsd_install_irqs+0x14>
     454:	e1a01000 	mov	r1, r0
     458:	e1a00004 	mov	r0, r4
     45c:	ebfffffe 	bl	45c <slotdetect_ioctl+0xbc>
     460:	e3500000 	cmp	r0, #0	; 0x0
     464:	1a00012d 	bne	920 <event_starttimer>
     468:	e59f3064 	ldr	r3, [pc, #100]	; 4d4 <slotdetect_ioctl+0x134>
     46c:	e1d330b0 	ldrh	r3, [r3]
     470:	e2840004 	add	r0, r4, #4	; 0x4
     474:	e3130901 	tst	r3, #16384	; 0x4000
     478:	03a01000 	moveq	r1, #0	; 0x0
     47c:	13a01001 	movne	r1, #1	; 0x1
     480:	ebfffffe 	bl	480 <slotdetect_ioctl+0xe0>
     484:	e3500000 	cmp	r0, #0	; 0x0
     488:	1a00012d 	bne	944 <event_starttimer+0x24>
     48c:	e59f3044 	ldr	r3, [pc, #68]	; 4d8 <slotdetect_ioctl+0x138>
     490:	e2840008 	add	r0, r4, #8	; 0x8
     494:	e5d31000 	ldrb	r1, [r3]
     498:	ebfffffe 	bl	498 <slotdetect_ioctl+0xf8>
     49c:	e3500000 	cmp	r0, #0	; 0x0
     4a0:	0a00012c 	beq	958 <event_starttimer+0x38>
     4a4:	e91ba810 	ldmdb	fp, {r4, fp, sp, pc}
     4a8:	e3540002 	cmp	r4, #2	; 0x2
     4ac:	8a0000f8 	bhi	894 <mmcsd_disable_irqs+0x44>
     4b0:	e59f3020 	ldr	r3, [pc, #32]	; 4d8 <slotdetect_ioctl+0x138>
     4b4:	e5c34000 	strb	r4, [r3]
     4b8:	e3a00000 	mov	r0, #0	; 0x0
     4bc:	e91ba810 	ldmdb	fp, {r4, fp, sp, pc}
     4c0:	00005681 	andeq	r5, r0, r1, lsl #13
     4c4:	00005680 	andeq	r5, r0, r0, lsl #13
     4c8:	00005682 	andeq	r5, r0, r2, lsl #13
	...
     4d4:	f0000098 	mulnv	r0, r8, r0
     4d8:	00000000 	andeq	r0, r0, r0

000004dc <slotdetect_init>:
     4dc:	e1a0c00d 	mov	ip, sp
     4e0:	e92dd800 	stmdb	sp!, {fp, ip, lr, pc}
     4e4:	e59f001c 	ldr	r0, [pc, #28]	; 508 <slotdetect_init+0x2c>
     4e8:	e24cb004 	sub	fp, ip, #4	; 0x4
     4ec:	ebfffffe 	bl	4ec <slotdetect_init+0x10>
     4f0:	e3500000 	cmp	r0, #0	; 0x0
     4f4:	0a00013e 	beq	9f4 <mmcsd_resume+0x84>
     4f8:	e59f000c 	ldr	r0, [pc, #12]	; 50c <slotdetect_init+0x30>
     4fc:	ebfffffe 	bl	4fc <slotdetect_init+0x20>
     500:	e3a00000 	mov	r0, #0	; 0x0
     504:	e91ba800 	ldmdb	fp, {fp, sp, pc}
     508:	00000054 	andeq	r0, r0, r4, asr r0
     50c:	0000003c 	andeq	r0, r0, ip, lsr r0

00000510 <slotdetect_cleanup>:
     510:	e1a0c00d 	mov	ip, sp
     514:	e92dd800 	stmdb	sp!, {fp, ip, lr, pc}
     518:	e59f0008 	ldr	r0, [pc, #8]	; 528 <slotdetect_cleanup+0x18>
     51c:	e24cb004 	sub	fp, ip, #4	; 0x4
     520:	ebfffffe 	bl	520 <slotdetect_cleanup+0x10>
     524:	e91ba800 	ldmdb	fp, {fp, sp, pc}
     528:	00000054 	andeq	r0, r0, r4, asr r0

0000052c <kfree_s>:
     52c:	e1a0c00d 	mov	ip, sp
     530:	e92dd800 	stmdb	sp!, {fp, ip, lr, pc}
     534:	e24cb004 	sub	fp, ip, #4	; 0x4
     538:	ebfffffe 	bl	538 <kfree_s+0xc>
     53c:	e91ba800 	ldmdb	fp, {fp, sp, pc}

00000540 <mmcsd_initsys>:
     540:	e1a0c00d 	mov	ip, sp
     544:	e92dddf0 	stmdb	sp!, {r4, r5, r6, r7, r8, sl, fp, ip, lr, pc}
     548:	e24cb004 	sub	fp, ip, #4	; 0x4
     54c:	e3a08000 	mov	r8, #0	; 0x0
     550:	e1a00008 	mov	r0, r8
     554:	e59fa110 	ldr	sl, [pc, #272]	; 66c <mmcsd_initsys+0x12c>
     558:	e1a04008 	mov	r4, r8
     55c:	e58a8000 	str	r8, [sl]
     560:	e2544001 	subs	r4, r4, #1	; 0x1
     564:	e59f3104 	ldr	r3, [pc, #260]	; 670 <mmcsd_initsys+0x130>
     568:	e3a01000 	mov	r1, #0	; 0x0
     56c:	e0802003 	add	r2, r0, r3
     570:	e5c21008 	strb	r1, [r2, #8]
     574:	e283200c 	add	r2, r3, #12	; 0xc
     578:	e7821000 	str	r1, [r2, r0]
     57c:	e283308c 	add	r3, r3, #140	; 0x8c
     580:	e7831000 	str	r1, [r3, r0]
     584:	e2800090 	add	r0, r0, #144	; 0x90
     588:	5a000156 	bpl	ae8 <mmcsd_resume+0x178>
     58c:	e59f70e0 	ldr	r7, [pc, #224]	; 674 <mmcsd_initsys+0x134>
     590:	e5973004 	ldr	r3, [r7, #4]
     594:	e1a04001 	mov	r4, r1
     598:	e1530001 	cmp	r3, r1
     59c:	0a000181 	beq	ba8 <mmcsd_resume+0x238>
     5a0:	e1a06004 	mov	r6, r4
     5a4:	e1a05007 	mov	r5, r7
     5a8:	e2853008 	add	r3, r5, #8	; 0x8
     5ac:	e7932006 	ldr	r2, [r3, r6]
     5b0:	e3a00000 	mov	r0, #0	; 0x0
     5b4:	e1520000 	cmp	r2, r0
     5b8:	0a000171 	beq	b84 <mmcsd_resume+0x214>
     5bc:	e2853004 	add	r3, r5, #4	; 0x4
     5c0:	e7930006 	ldr	r0, [r3, r6]
     5c4:	e1a0e00f 	mov	lr, pc
     5c8:	e1a0f002 	mov	pc, r2
     5cc:	e3500000 	cmp	r0, #0	; 0x0
     5d0:	1a000179 	bne	bbc <mmcsd_resume+0x24c>
     5d4:	e59a3000 	ldr	r3, [sl]
     5d8:	e59f1098 	ldr	r1, [pc, #152]	; 678 <mmcsd_initsys+0x138>
     5dc:	e0862005 	add	r2, r6, r5
     5e0:	e7812103 	str	r2, [r1, r3, lsl #2]
     5e4:	e2833001 	add	r3, r3, #1	; 0x1
     5e8:	e58a3000 	str	r3, [sl]
     5ec:	e2866034 	add	r6, r6, #52	; 0x34
     5f0:	e2844001 	add	r4, r4, #1	; 0x1
     5f4:	e3540000 	cmp	r4, #0	; 0x0
     5f8:	ca000181 	bgt	c04 <setup_partition_table+0x30>
     5fc:	e2873004 	add	r3, r7, #4	; 0x4
     600:	e7933006 	ldr	r3, [r3, r6]
     604:	e3530000 	cmp	r3, #0	; 0x0
     608:	1a000167 	bne	bac <mmcsd_resume+0x23c>
     60c:	e59f5058 	ldr	r5, [pc, #88]	; 66c <mmcsd_initsys+0x12c>
     610:	e5953000 	ldr	r3, [r5]
     614:	e3a04000 	mov	r4, #0	; 0x0
     618:	e1540003 	cmp	r4, r3
     61c:	aa000197 	bge	c80 <get_geo_head_and_sector+0x28>
     620:	e59f3050 	ldr	r3, [pc, #80]	; 678 <mmcsd_initsys+0x138>
     624:	e7933104 	ldr	r3, [r3, r4, lsl #2]
     628:	e3530000 	cmp	r3, #0	; 0x0
     62c:	0a000193 	beq	c80 <get_geo_head_and_sector+0x28>
     630:	e5930004 	ldr	r0, [r3, #4]
     634:	e3500000 	cmp	r0, #0	; 0x0
     638:	0a000193 	beq	c8c <get_geo_head_and_sector+0x34>
     63c:	e5933014 	ldr	r3, [r3, #20]
     640:	e3530000 	cmp	r3, #0	; 0x0
     644:	0a000193 	beq	c98 <get_geo_head_and_sector+0x40>
     648:	e1a0e00f 	mov	lr, pc
     64c:	e1a0f003 	mov	pc, r3
     650:	e0888000 	add	r8, r8, r0
     654:	e5953000 	ldr	r3, [r5]
     658:	e2844001 	add	r4, r4, #1	; 0x1
     65c:	e1540003 	cmp	r4, r3
     660:	ba000186 	blt	c80 <get_geo_head_and_sector+0x28>
     664:	e1a00008 	mov	r0, r8
     668:	e91badf0 	ldmdb	fp, {r4, r5, r6, r7, r8, sl, fp, sp, pc}
     66c:	00000018 	andeq	r0, r0, r8, lsl r0
     670:	00000000 	andeq	r0, r0, r0
     674:	0000006c 	andeq	r0, r0, ip, rrx
     678:	000001e8 	andeq	r0, r0, r8, ror #3

0000067c <mmcsd_quitsys>:
     67c:	e1a0c00d 	mov	ip, sp
     680:	e92dd9f0 	stmdb	sp!, {r4, r5, r6, r7, r8, fp, ip, lr, pc}
     684:	e59f806c 	ldr	r8, [pc, #108]	; 6f8 <mmcsd_quitsys+0x7c>
     688:	e24cb004 	sub	fp, ip, #4	; 0x4
     68c:	e5983000 	ldr	r3, [r8]
     690:	e3a05000 	mov	r5, #0	; 0x0
     694:	e1550003 	cmp	r5, r3
     698:	aa0001b7 	bge	d7c <mmcd_open+0x7c>
     69c:	e59f7058 	ldr	r7, [pc, #88]	; 6fc <mmcsd_quitsys+0x80>
     6a0:	e1a06105 	mov	r6, r5, lsl #2
     6a4:	e7973006 	ldr	r3, [r7, r6]
     6a8:	e3530000 	cmp	r3, #0	; 0x0
     6ac:	0a0001b3 	beq	d80 <mmcd_open+0x80>
     6b0:	e5930004 	ldr	r0, [r3, #4]
     6b4:	e3500000 	cmp	r0, #0	; 0x0
     6b8:	0a0001b3 	beq	d8c <mmcd_open+0x8c>
     6bc:	e5934010 	ldr	r4, [r3, #16]
     6c0:	e3540000 	cmp	r4, #0	; 0x0
     6c4:	1a0001b3 	bne	d98 <mmcd_open+0x98>
     6c8:	e1a0e00f 	mov	lr, pc
     6cc:	e1a0f004 	mov	pc, r4
     6d0:	e7874006 	str	r4, [r7, r6]
     6d4:	e5983000 	ldr	r3, [r8]
     6d8:	e2855001 	add	r5, r5, #1	; 0x1
     6dc:	e1550003 	cmp	r5, r3
     6e0:	ba0001a5 	blt	d7c <mmcd_open+0x7c>
     6e4:	e3a03000 	mov	r3, #0	; 0x0
     6e8:	e59f2008 	ldr	r2, [pc, #8]	; 6f8 <mmcsd_quitsys+0x7c>
     6ec:	e1a00003 	mov	r0, r3
     6f0:	e5823000 	str	r3, [r2]
     6f4:	e91ba9f0 	ldmdb	fp, {r4, r5, r6, r7, r8, fp, sp, pc}
     6f8:	00000018 	andeq	r0, r0, r8, lsl r0
     6fc:	000001e8 	andeq	r0, r0, r8, ror #3

00000700 <mmcsd_install_irqs>:
     700:	e1a0c00d 	mov	ip, sp
     704:	e92dd830 	stmdb	sp!, {r4, r5, fp, ip, lr, pc}
     708:	e59f5058 	ldr	r5, [pc, #88]	; 768 <mmcsd_install_irqs+0x68>
     70c:	e24cb004 	sub	fp, ip, #4	; 0x4
     710:	e5953000 	ldr	r3, [r5]
     714:	e3a04000 	mov	r4, #0	; 0x0
     718:	e1540003 	cmp	r4, r3
     71c:	aa0001d6 	bge	e7c <mmcd_release+0x80>
     720:	e59f3044 	ldr	r3, [pc, #68]	; 76c <mmcsd_install_irqs+0x6c>
     724:	e7930104 	ldr	r0, [r3, r4, lsl #2]
     728:	e3500000 	cmp	r0, #0	; 0x0
     72c:	0a0001d2 	beq	e7c <mmcd_release+0x80>
     730:	e5903004 	ldr	r3, [r0, #4]
     734:	e3530000 	cmp	r3, #0	; 0x0
     738:	0a0001d2 	beq	e88 <mmcd_release+0x8c>
     73c:	e590301c 	ldr	r3, [r0, #28]
     740:	e3530000 	cmp	r3, #0	; 0x0
     744:	0a0001d2 	beq	e94 <mmcd_release+0x98>
     748:	e1a0e00f 	mov	lr, pc
     74c:	e1a0f003 	mov	pc, r3
     750:	e5953000 	ldr	r3, [r5]
     754:	e2844001 	add	r4, r4, #1	; 0x1
     758:	e1540003 	cmp	r4, r3
     75c:	ba0001c6 	blt	e7c <mmcd_release+0x80>
     760:	e3a00000 	mov	r0, #0	; 0x0
     764:	e91ba830 	ldmdb	fp, {r4, r5, fp, sp, pc}
     768:	00000018 	andeq	r0, r0, r8, lsl r0
     76c:	000001e8 	andeq	r0, r0, r8, ror #3

00000770 <mmcsd_deinstall_irqs>:
     770:	e1a0c00d 	mov	ip, sp
     774:	e92dd830 	stmdb	sp!, {r4, r5, fp, ip, lr, pc}
     778:	e59f5058 	ldr	r5, [pc, #88]	; 7d8 <mmcsd_deinstall_irqs+0x68>
     77c:	e24cb004 	sub	fp, ip, #4	; 0x4
     780:	e5953000 	ldr	r3, [r5]
     784:	e3a04000 	mov	r4, #0	; 0x0
     788:	e1540003 	cmp	r4, r3
     78c:	aa0001f2 	bge	f5c <mmcd_ioctl+0x8c>
     790:	e59f3044 	ldr	r3, [pc, #68]	; 7dc <mmcsd_deinstall_irqs+0x6c>
     794:	e7930104 	ldr	r0, [r3, r4, lsl #2]
     798:	e3500000 	cmp	r0, #0	; 0x0
     79c:	0a0001ee 	beq	f5c <mmcd_ioctl+0x8c>
     7a0:	e5903004 	ldr	r3, [r0, #4]
     7a4:	e3530000 	cmp	r3, #0	; 0x0
     7a8:	0a0001ee 	beq	f68 <mmcd_ioctl+0x98>
     7ac:	e5903020 	ldr	r3, [r0, #32]
     7b0:	e3530000 	cmp	r3, #0	; 0x0
     7b4:	0a0001ee 	beq	f74 <mmcd_ioctl+0xa4>
     7b8:	e1a0e00f 	mov	lr, pc
     7bc:	e1a0f003 	mov	pc, r3
     7c0:	e5953000 	ldr	r3, [r5]
     7c4:	e2844001 	add	r4, r4, #1	; 0x1
     7c8:	e1540003 	cmp	r4, r3
     7cc:	ba0001e2 	blt	f5c <mmcd_ioctl+0x8c>
     7d0:	e3a00000 	mov	r0, #0	; 0x0
     7d4:	e91ba830 	ldmdb	fp, {r4, r5, fp, sp, pc}
     7d8:	00000018 	andeq	r0, r0, r8, lsl r0
     7dc:	000001e8 	andeq	r0, r0, r8, ror #3

000007e0 <mmcsd_enable_irqs>:
     7e0:	e1a0c00d 	mov	ip, sp
     7e4:	e92dd830 	stmdb	sp!, {r4, r5, fp, ip, lr, pc}
     7e8:	e59f5058 	ldr	r5, [pc, #88]	; 848 <mmcsd_enable_irqs+0x68>
     7ec:	e24cb004 	sub	fp, ip, #4	; 0x4
     7f0:	e5953000 	ldr	r3, [r5]
     7f4:	e3a04000 	mov	r4, #0	; 0x0
     7f8:	e1540003 	cmp	r4, r3
     7fc:	aa00020e 	bge	103c <mmcd_ioctl+0x16c>
     800:	e59f3044 	ldr	r3, [pc, #68]	; 84c <mmcsd_enable_irqs+0x6c>
     804:	e7930104 	ldr	r0, [r3, r4, lsl #2]
     808:	e3500000 	cmp	r0, #0	; 0x0
     80c:	0a00020a 	beq	103c <mmcd_ioctl+0x16c>
     810:	e5903004 	ldr	r3, [r0, #4]
     814:	e3530000 	cmp	r3, #0	; 0x0
     818:	0a00020a 	beq	1048 <mmcd_ioctl+0x178>
     81c:	e5903024 	ldr	r3, [r0, #36]
     820:	e3530000 	cmp	r3, #0	; 0x0
     824:	0a00020a 	beq	1054 <mmcd_ioctl+0x184>
     828:	e1a0e00f 	mov	lr, pc
     82c:	e1a0f003 	mov	pc, r3
     830:	e5953000 	ldr	r3, [r5]
     834:	e2844001 	add	r4, r4, #1	; 0x1
     838:	e1540003 	cmp	r4, r3
     83c:	ba0001fe 	blt	103c <mmcd_ioctl+0x16c>
     840:	e3a00000 	mov	r0, #0	; 0x0
     844:	e91ba830 	ldmdb	fp, {r4, r5, fp, sp, pc}
     848:	00000018 	andeq	r0, r0, r8, lsl r0
     84c:	000001e8 	andeq	r0, r0, r8, ror #3

00000850 <mmcsd_disable_irqs>:
     850:	e1a0c00d 	mov	ip, sp
     854:	e92dd830 	stmdb	sp!, {r4, r5, fp, ip, lr, pc}
     858:	e59f5058 	ldr	r5, [pc, #88]	; 8b8 <mmcsd_disable_irqs+0x68>
     85c:	e24cb004 	sub	fp, ip, #4	; 0x4
     860:	e5953000 	ldr	r3, [r5]
     864:	e3a04000 	mov	r4, #0	; 0x0
     868:	e1540003 	cmp	r4, r3
     86c:	aa00022a 	bge	111c <mmcd_ioctl+0x24c>
     870:	e59f3044 	ldr	r3, [pc, #68]	; 8bc <mmcsd_disable_irqs+0x6c>
     874:	e7930104 	ldr	r0, [r3, r4, lsl #2]
     878:	e3500000 	cmp	r0, #0	; 0x0
     87c:	0a000226 	beq	111c <mmcd_ioctl+0x24c>
     880:	e5903004 	ldr	r3, [r0, #4]
     884:	e3530000 	cmp	r3, #0	; 0x0
     888:	0a000226 	beq	1128 <mmcd_ioctl+0x258>
     88c:	e5903028 	ldr	r3, [r0, #40]
     890:	e3530000 	cmp	r3, #0	; 0x0
     894:	0a000226 	beq	1134 <mmcd_ioctl+0x264>
     898:	e1a0e00f 	mov	lr, pc
     89c:	e1a0f003 	mov	pc, r3
     8a0:	e5953000 	ldr	r3, [r5]
     8a4:	e2844001 	add	r4, r4, #1	; 0x1
     8a8:	e1540003 	cmp	r4, r3
     8ac:	ba00021a 	blt	111c <mmcd_ioctl+0x24c>
     8b0:	e3a00000 	mov	r0, #0	; 0x0
     8b4:	e91ba830 	ldmdb	fp, {r4, r5, fp, sp, pc}
     8b8:	00000018 	andeq	r0, r0, r8, lsl r0
     8bc:	000001e8 	andeq	r0, r0, r8, ror #3

000008c0 <mmcsd_invalidate_devices>:
     8c0:	e1a0c00d 	mov	ip, sp
     8c4:	e92dd870 	stmdb	sp!, {r4, r5, r6, fp, ip, lr, pc}
     8c8:	e24cb004 	sub	fp, ip, #4	; 0x4
     8cc:	e1a04001 	mov	r4, r1
     8d0:	e284300a 	add	r3, r4, #10	; 0xa
     8d4:	e1540003 	cmp	r4, r3
     8d8:	e1a06000 	mov	r6, r0
     8dc:	e1a05004 	mov	r5, r4
     8e0:	aa000240 	bge	11e8 <mmcd_check_change+0x10>
     8e4:	e1840406 	orr	r0, r4, r6, lsl #8
     8e8:	e1a00800 	mov	r0, r0, lsl #16
     8ec:	e1a00820 	mov	r0, r0, lsr #16
     8f0:	e3a01001 	mov	r1, #1	; 0x1
     8f4:	ebfffffe 	bl	8f4 <mmcsd_invalidate_devices+0x34>
     8f8:	e2844001 	add	r4, r4, #1	; 0x1
     8fc:	e285300a 	add	r3, r5, #10	; 0xa
     900:	e1540003 	cmp	r4, r3
     904:	ba000237 	blt	11e8 <mmcd_check_change+0x10>
     908:	e91ba870 	ldmdb	fp, {r4, r5, r6, fp, sp, pc}

0000090c <fire_card_event>:
     90c:	e1a0c00d 	mov	ip, sp
     910:	e92dd800 	stmdb	sp!, {fp, ip, lr, pc}
     914:	e24cb004 	sub	fp, ip, #4	; 0x4
     918:	ebfffffe 	bl	918 <fire_card_event+0xc>
     91c:	e91ba800 	ldmdb	fp, {fp, sp, pc}

00000920 <event_starttimer>:
     920:	e1a0c00d 	mov	ip, sp
     924:	e92dd810 	stmdb	sp!, {r4, fp, ip, lr, pc}
     928:	e59f2034 	ldr	r2, [pc, #52]	; 964 <event_starttimer+0x44>
     92c:	e59f3034 	ldr	r3, [pc, #52]	; 968 <event_starttimer+0x48>
     930:	e59f1034 	ldr	r1, [pc, #52]	; 96c <event_starttimer+0x4c>
     934:	e3a04000 	mov	r4, #0	; 0x0
     938:	e5824004 	str	r4, [r2, #4]
     93c:	e5824000 	str	r4, [r2]
     940:	e24cb004 	sub	fp, ip, #4	; 0x4
     944:	e5933000 	ldr	r3, [r3]
     948:	e1a00002 	mov	r0, r2
     94c:	e5821010 	str	r1, [r2, #16]
     950:	e2833001 	add	r3, r3, #1	; 0x1
     954:	e5823008 	str	r3, [r2, #8]
     958:	ebfffffe 	bl	958 <event_starttimer+0x38>
     95c:	e1a00004 	mov	r0, r4
     960:	e91ba810 	ldmdb	fp, {r4, fp, sp, pc}
	...
     96c:	0000090c 	andeq	r0, r0, ip, lsl #18

00000970 <mmcsd_resume>:
     970:	e1a0c00d 	mov	ip, sp
     974:	e92dddf0 	stmdb	sp!, {r4, r5, r6, r7, r8, sl, fp, ip, lr, pc}
     978:	e24cb004 	sub	fp, ip, #4	; 0x4
     97c:	e3a08000 	mov	r8, #0	; 0x0
     980:	e24b60b4 	sub	r6, fp, #180	; 0xb4
     984:	e1a07008 	mov	r7, r8
     988:	e24dd090 	sub	sp, sp, #144	; 0x90
     98c:	e1a00006 	mov	r0, r6
     990:	e2866090 	add	r6, r6, #144	; 0x90
     994:	e59f4224 	ldr	r4, [pc, #548]	; bc0 <mmcsd_resume+0x250>
     998:	e3a02090 	mov	r2, #144	; 0x90
     99c:	e0875004 	add	r5, r7, r4
     9a0:	e1a01005 	mov	r1, r5
     9a4:	ebfffffe 	bl	9a4 <mmcsd_resume+0x34>
     9a8:	e3a02000 	mov	r2, #0	; 0x0
     9ac:	e5c52008 	strb	r2, [r5, #8]
     9b0:	e284400c 	add	r4, r4, #12	; 0xc
     9b4:	e7842007 	str	r2, [r4, r7]
     9b8:	e2877090 	add	r7, r7, #144	; 0x90
     9bc:	e2588001 	subs	r8, r8, #1	; 0x1
     9c0:	5a000261 	bpl	134c <mmcd_request+0x30>
     9c4:	e59f41f8 	ldr	r4, [pc, #504]	; bc4 <mmcsd_resume+0x254>
     9c8:	e5943000 	ldr	r3, [r4]
     9cc:	e1a08002 	mov	r8, r2
     9d0:	e1580003 	cmp	r8, r3
     9d4:	aa00027d 	bge	13d0 <mmcd_request+0xb4>
     9d8:	e59f31e8 	ldr	r3, [pc, #488]	; bc8 <mmcsd_resume+0x258>
     9dc:	e7930108 	ldr	r0, [r3, r8, lsl #2]
     9e0:	e3500000 	cmp	r0, #0	; 0x0
     9e4:	0a000279 	beq	13d0 <mmcd_request+0xb4>
     9e8:	ebfffffe 	bl	9e8 <mmcsd_resume+0x78>
     9ec:	e5943000 	ldr	r3, [r4]
     9f0:	e2888001 	add	r8, r8, #1	; 0x1
     9f4:	e1580003 	cmp	r8, r3
     9f8:	ba000274 	blt	13d0 <mmcd_request+0xb4>
     9fc:	e3a08000 	mov	r8, #0	; 0x0
     a00:	e24b50ac 	sub	r5, fp, #172	; 0xac
     a04:	e1a04008 	mov	r4, r8
     a08:	e3a06000 	mov	r6, #0	; 0x0
     a0c:	e1a0a006 	mov	sl, r6
     a10:	e5d52000 	ldrb	r2, [r5]
     a14:	e1a07006 	mov	r7, r6
     a18:	e1520006 	cmp	r2, r6
     a1c:	1a00028b 	bne	1450 <mmcd_request+0x134>
     a20:	e59f3198 	ldr	r3, [pc, #408]	; bc0 <mmcsd_resume+0x250>
     a24:	e0843003 	add	r3, r4, r3
     a28:	e5d33008 	ldrb	r3, [r3, #8]
     a2c:	e1530006 	cmp	r3, r6
     a30:	0a0002c5 	beq	154c <mmcd_request+0x230>
     a34:	e3520000 	cmp	r2, #0	; 0x0
     a38:	1a000294 	bne	1490 <mmcd_request+0x174>
     a3c:	e59f317c 	ldr	r3, [pc, #380]	; bc0 <mmcsd_resume+0x250>
     a40:	e0843003 	add	r3, r4, r3
     a44:	e5d33008 	ldrb	r3, [r3, #8]
     a48:	e3530000 	cmp	r3, #0	; 0x0
     a4c:	0a000294 	beq	14a4 <mmcd_request+0x188>
     a50:	e3a07001 	mov	r7, #1	; 0x1
     a54:	ea0002c5 	b	1570 <mmcd_request+0x254>
     a58:	e5d53000 	ldrb	r3, [r5]
     a5c:	e3530000 	cmp	r3, #0	; 0x0
     a60:	0a0002a2 	beq	14f0 <mmcd_request+0x1d4>
     a64:	e59f3154 	ldr	r3, [pc, #340]	; bc0 <mmcsd_resume+0x250>
     a68:	e0843003 	add	r3, r4, r3
     a6c:	e5d33008 	ldrb	r3, [r3, #8]
     a70:	e3530000 	cmp	r3, #0	; 0x0
     a74:	1a0002a2 	bne	1504 <mmcd_request+0x1e8>
     a78:	e24b3028 	sub	r3, fp, #40	; 0x28
     a7c:	e7933004 	ldr	r3, [r3, r4]
     a80:	e3530000 	cmp	r3, #0	; 0x0
     a84:	0a000292 	beq	14d4 <mmcd_request+0x1b8>
     a88:	e59f013c 	ldr	r0, [pc, #316]	; bcc <mmcsd_resume+0x25c>
     a8c:	ea0002c1 	b	1598 <mmcd_request+0x27c>
     a90:	e5d53000 	ldrb	r3, [r5]
     a94:	e3530000 	cmp	r3, #0	; 0x0
     a98:	0a0002c5 	beq	15b4 <mmcd_request+0x298>
     a9c:	e59f111c 	ldr	r1, [pc, #284]	; bc0 <mmcsd_resume+0x250>
     aa0:	e0843001 	add	r3, r4, r1
     aa4:	e5d33008 	ldrb	r3, [r3, #8]
     aa8:	e3530000 	cmp	r3, #0	; 0x0
     aac:	0a0002c5 	beq	15c8 <mmcd_request+0x2ac>
     ab0:	e24b3090 	sub	r3, fp, #144	; 0x90
     ab4:	e7932004 	ldr	r2, [r3, r4]
     ab8:	e2813024 	add	r3, r1, #36	; 0x24
     abc:	e7933004 	ldr	r3, [r3, r4]
     ac0:	e1520003 	cmp	r2, r3
     ac4:	1a0002bc 	bne	15bc <mmcd_request+0x2a0>
     ac8:	e24b3078 	sub	r3, fp, #120	; 0x78
     acc:	e7932004 	ldr	r2, [r3, r4]
     ad0:	e281303c 	add	r3, r1, #60	; 0x3c
     ad4:	e7933004 	ldr	r3, [r3, r4]
     ad8:	e1520003 	cmp	r2, r3
     adc:	1a0002bc 	bne	15d4 <mmcd_request+0x2b8>
     ae0:	e24b3028 	sub	r3, fp, #40	; 0x28
     ae4:	e7933004 	ldr	r3, [r3, r4]
     ae8:	e3530000 	cmp	r3, #0	; 0x0
     aec:	13a06000 	movne	r6, #0	; 0x0
     af0:	03a06001 	moveq	r6, #1	; 0x1
     af4:	ea0002c5 	b	1610 <mmcd_request+0x2f4>
     af8:	e24b3028 	sub	r3, fp, #40	; 0x28
     afc:	e7933004 	ldr	r3, [r3, r4]
     b00:	e3530000 	cmp	r3, #0	; 0x0
     b04:	0a0002c4 	beq	161c <mmcd_request+0x300>
     b08:	e59f00c0 	ldr	r0, [pc, #192]	; bd0 <mmcsd_resume+0x260>
     b0c:	e3a0a001 	mov	sl, #1	; 0x1
     b10:	ebfffffe 	bl	b10 <mmcsd_resume+0x1a0>
     b14:	ea0002c5 	b	1630 <mmcd_request+0x314>
     b18:	e3a06001 	mov	r6, #1	; 0x1
     b1c:	e35a0000 	cmp	sl, #0	; 0x0
     b20:	0a0002ca 	beq	1650 <mmcd_request+0x334>
     b24:	e3a00001 	mov	r0, #1	; 0x1
     b28:	ebfffffe 	bl	b28 <mmcsd_resume+0x1b8>
     b2c:	e3a07001 	mov	r7, #1	; 0x1
     b30:	e3560000 	cmp	r6, #0	; 0x0
     b34:	0a0002ce 	beq	1674 <mmcd_request+0x358>
     b38:	ebfffffe 	bl	b38 <mmcsd_resume+0x1c8>
     b3c:	e3a07001 	mov	r7, #1	; 0x1
     b40:	e2855090 	add	r5, r5, #144	; 0x90
     b44:	e2844090 	add	r4, r4, #144	; 0x90
     b48:	e2888001 	add	r8, r8, #1	; 0x1
     b4c:	e3580000 	cmp	r8, #0	; 0x0
     b50:	da000280 	ble	1558 <mmcd_request+0x23c>
     b54:	e59f4068 	ldr	r4, [pc, #104]	; bc4 <mmcsd_resume+0x254>
     b58:	e5943000 	ldr	r3, [r4]
     b5c:	e3a08000 	mov	r8, #0	; 0x0
     b60:	e1580003 	cmp	r8, r3
     b64:	aa0002e8 	bge	170c <mmcd_request+0x3f0>
     b68:	e59f3058 	ldr	r3, [pc, #88]	; bc8 <mmcsd_resume+0x258>
     b6c:	e7933108 	ldr	r3, [r3, r8, lsl #2]
     b70:	e3530000 	cmp	r3, #0	; 0x0
     b74:	0a0002e4 	beq	170c <mmcd_request+0x3f0>
     b78:	e5930004 	ldr	r0, [r3, #4]
     b7c:	e3500000 	cmp	r0, #0	; 0x0
     b80:	0a0002e4 	beq	1718 <mmcsd_geninit>
     b84:	e5933030 	ldr	r3, [r3, #48]
     b88:	e3530000 	cmp	r3, #0	; 0x0
     b8c:	0a0002e4 	beq	1724 <mmcsd_geninit+0xc>
     b90:	e1a0e00f 	mov	lr, pc
     b94:	e1a0f003 	mov	pc, r3
     b98:	e5943000 	ldr	r3, [r4]
     b9c:	e2888001 	add	r8, r8, #1	; 0x1
     ba0:	e1580003 	cmp	r8, r3
     ba4:	ba0002d8 	blt	170c <mmcd_request+0x3f0>
     ba8:	eb0001f6 	bl	1388 <mmcd_request+0x6c>
     bac:	e3570000 	cmp	r7, #0	; 0x0
     bb0:	0a0002ec 	beq	1768 <mmcsd_geninit+0x50>
     bb4:	eb000246 	bl	14d4 <mmcd_request+0x1b8>
     bb8:	e3a00000 	mov	r0, #0	; 0x0
     bbc:	e91badf0 	ldmdb	fp, {r4, r5, r6, r7, r8, sl, fp, sp, pc}
     bc0:	00000000 	andeq	r0, r0, r0
     bc4:	00000018 	andeq	r0, r0, r8, lsl r0
     bc8:	000001e8 	andeq	r0, r0, r8, ror #3
     bcc:	00000078 	andeq	r0, r0, r8, ror r0
     bd0:	000000b0 	streqh	r0, [r0], -r0

00000bd4 <setup_partition_table>:
     bd4:	e1a0c00d 	mov	ip, sp
     bd8:	e92dd870 	stmdb	sp!, {r4, r5, r6, fp, ip, lr, pc}
     bdc:	e24cb004 	sub	fp, ip, #4	; 0x4
     be0:	e2506000 	subs	r6, r0, #0	; 0x0
     be4:	1a00030e 	bne	1824 <mmcsd_pm_callback+0x30>
     be8:	e59f4054 	ldr	r4, [pc, #84]	; c44 <setup_partition_table+0x70>
     bec:	e3a0103c 	mov	r1, #60	; 0x3c
     bf0:	e59f5050 	ldr	r5, [pc, #80]	; c48 <setup_partition_table+0x74>
     bf4:	e1a00004 	mov	r0, r4
     bf8:	ebfffffe 	bl	bf8 <setup_partition_table+0x24>
     bfc:	e595301c 	ldr	r3, [r5, #28]
     c00:	e3a0103c 	mov	r1, #60	; 0x3c
     c04:	e59f0040 	ldr	r0, [pc, #64]	; c4c <setup_partition_table+0x78>
     c08:	e1a03523 	mov	r3, r3, lsr #10
     c0c:	e7843006 	str	r3, [r4, r6]
     c10:	ebfffffe 	bl	c10 <setup_partition_table+0x3c>
     c14:	e59f4034 	ldr	r4, [pc, #52]	; c50 <setup_partition_table+0x7c>
     c18:	e3a010f0 	mov	r1, #240	; 0xf0
     c1c:	e1a00004 	mov	r0, r4
     c20:	ebfffffe 	bl	c20 <setup_partition_table+0x4c>
     c24:	e1a01006 	mov	r1, r6
     c28:	e595301c 	ldr	r3, [r5, #28]
     c2c:	e1a02001 	mov	r2, r1
     c30:	e59f001c 	ldr	r0, [pc, #28]	; c54 <setup_partition_table+0x80>
     c34:	e1a034a3 	mov	r3, r3, lsr #9
     c38:	e5843004 	str	r3, [r4, #4]
     c3c:	ebfffffe 	bl	c3c <setup_partition_table+0x68>
     c40:	e91ba870 	ldmdb	fp, {r4, r5, r6, fp, sp, pc}
     c44:	0000001c 	andeq	r0, r0, ip, lsl r0
     c48:	00000000 	andeq	r0, r0, r0
     c4c:	0000005c 	andeq	r0, r0, ip, asr r0
	...

00000c58 <get_geo_head_and_sector>:
     c58:	e1a0c00d 	mov	ip, sp
     c5c:	e92dd800 	stmdb	sp!, {fp, ip, lr, pc}
     c60:	e24cb004 	sub	fp, ip, #4	; 0x4
     c64:	e3500a01 	cmp	r0, #4096	; 0x1000
     c68:	d3a03002 	movle	r3, #2	; 0x2
     c6c:	d5813000 	strle	r3, [r1]
     c70:	d283300e 	addle	r3, r3, #14	; 0xe
     c74:	d5823000 	strle	r3, [r2]
     c78:	d91ba800 	ldmledb	fp, {fp, sp, pc}
     c7c:	e3500902 	cmp	r0, #32768	; 0x8000
     c80:	ca000324 	bgt	1918 <collie_mmcsd_proc_read+0xf0>
     c84:	e3a03002 	mov	r3, #2	; 0x2
     c88:	e5813000 	str	r3, [r1]
     c8c:	e3a03020 	mov	r3, #32	; 0x20
     c90:	e5823000 	str	r3, [r2]
     c94:	e91ba800 	ldmdb	fp, {fp, sp, pc}
     c98:	e3500801 	cmp	r0, #65536	; 0x10000
     c9c:	d3a03004 	movle	r3, #4	; 0x4
     ca0:	da000320 	ble	1928 <collie_mmcsd_proc_read+0x100>
     ca4:	e3500701 	cmp	r0, #262144	; 0x40000
     ca8:	d3a03008 	movle	r3, #8	; 0x8
     cac:	da000320 	ble	1934 <collie_mmcsd_proc_read+0x10c>
     cb0:	e3500702 	cmp	r0, #524288	; 0x80000
     cb4:	d3a03010 	movle	r3, #16	; 0x10
     cb8:	da000320 	ble	1940 <collie_mmcsd_proc_read+0x118>
     cbc:	e350093f 	cmp	r0, #1032192	; 0xfc000
     cc0:	ca000334 	bgt	1998 <collie_mmcsd_proc_read+0x170>
     cc4:	e3a03010 	mov	r3, #16	; 0x10
     cc8:	e5813000 	str	r3, [r1]
     ccc:	e3a0303f 	mov	r3, #63	; 0x3f
     cd0:	e5823000 	str	r3, [r2]
     cd4:	e91ba800 	ldmdb	fp, {fp, sp, pc}
     cd8:	e350097e 	cmp	r0, #2064384	; 0x1f8000
     cdc:	d3a03020 	movle	r3, #32	; 0x20
     ce0:	da000330 	ble	19a8 <collie_mmcsd_proc_read+0x180>
     ce4:	e350083f 	cmp	r0, #4128768	; 0x3f0000
     ce8:	d3a03040 	movle	r3, #64	; 0x40
     cec:	da000330 	ble	19b4 <collie_mmcsd_proc_read+0x18c>
     cf0:	e3500501 	cmp	r0, #4194304	; 0x400000
     cf4:	e3a03080 	mov	r3, #128	; 0x80
     cf8:	da000330 	ble	19c0 <collie_mmcsd_proc_read+0x198>
     cfc:	ea00031f 	b	1980 <collie_mmcsd_proc_read+0x158>

00000d00 <mmcd_open>:
     d00:	e1a0c00d 	mov	ip, sp
     d04:	e92dd870 	stmdb	sp!, {r4, r5, r6, fp, ip, lr, pc}
     d08:	e24cb004 	sub	fp, ip, #4	; 0x4
     d0c:	e1a05000 	mov	r5, r0
     d10:	e5d53040 	ldrb	r3, [r5, #64]
     d14:	e1a06001 	mov	r6, r1
     d18:	e1a02223 	mov	r2, r3, lsr #4
     d1c:	e3520000 	cmp	r2, #0	; 0x0
     d20:	c3e00012 	mvngt	r0, #18	; 0x12
     d24:	c91ba870 	ldmgtdb	fp, {r4, r5, r6, fp, sp, pc}
     d28:	e59f30c4 	ldr	r3, [pc, #196]	; df4 <mmcd_open+0xf4>
     d2c:	e0822182 	add	r2, r2, r2, lsl #3
     d30:	e0834202 	add	r4, r3, r2, lsl #4
     d34:	e594308c 	ldr	r3, [r4, #140]
     d38:	e3530000 	cmp	r3, #0	; 0x0
     d3c:	1a000354 	bne	1a94 <collie_mmcsd_proc_setup+0x4>
     d40:	e1d504b0 	ldrh	r0, [r5, #64]
     d44:	ebfffffe 	bl	d44 <mmcd_open+0x44>
     d48:	e5d43008 	ldrb	r3, [r4, #8]
     d4c:	e3530000 	cmp	r3, #0	; 0x0
     d50:	03e00005 	mvneq	r0, #5	; 0x5
     d54:	091ba870 	ldmeqdb	fp, {r4, r5, r6, fp, sp, pc}
     d58:	e5943000 	ldr	r3, [r4]
     d5c:	e3530000 	cmp	r3, #0	; 0x0
     d60:	0a000366 	beq	1b00 <collie_mmcsd_proc_setup+0x70>
     d64:	e5933050 	ldr	r3, [r3, #80]
     d68:	e3530000 	cmp	r3, #0	; 0x0
     d6c:	0a000366 	beq	1b0c <collie_mmcsd_proc_setup+0x7c>
     d70:	e1a0e00f 	mov	lr, pc
     d74:	e1a0f003 	mov	pc, r3
     d78:	e3500000 	cmp	r0, #0	; 0x0
     d7c:	0a000366 	beq	1b1c <collie_mmcsd_proc_setup+0x8c>
     d80:	e1d504b0 	ldrh	r0, [r5, #64]
     d84:	e3a01001 	mov	r1, #1	; 0x1
     d88:	ebfffffe 	bl	d88 <mmcd_open+0x88>
     d8c:	e1d631bc 	ldrh	r3, [r6, #28]
     d90:	e3130002 	tst	r3, #2	; 0x2
     d94:	0a000369 	beq	1b40 <collie_mmcsd_proc_setup+0xb0>
     d98:	e3e0001d 	mvn	r0, #29	; 0x1d
     d9c:	e91ba870 	ldmdb	fp, {r4, r5, r6, fp, sp, pc}
     da0:	e1d504b0 	ldrh	r0, [r5, #64]
     da4:	e3a01000 	mov	r1, #0	; 0x0
     da8:	ebfffffe 	bl	da8 <mmcd_open+0xa8>
     dac:	e586405c 	str	r4, [r6, #92]
     db0:	e594308c 	ldr	r3, [r4, #140]
     db4:	e59f203c 	ldr	r2, [pc, #60]	; df8 <mmcd_open+0xf8>
     db8:	e2833001 	add	r3, r3, #1	; 0x1
     dbc:	e584308c 	str	r3, [r4, #140]
     dc0:	e10f1000 	mrs	r1, CPSR
     dc4:	e3813080 	orr	r3, r1, #128	; 0x80
     dc8:	e121f003 	msr	CPSR_c, r3
     dcc:	e5923000 	ldr	r3, [r2]
     dd0:	e2833001 	add	r3, r3, #1	; 0x1
     dd4:	e5823000 	str	r3, [r2]
     dd8:	e121f001 	msr	CPSR_c, r1
     ddc:	e2422010 	sub	r2, r2, #16	; 0x10
     de0:	e5923014 	ldr	r3, [r2, #20]
     de4:	e3a00000 	mov	r0, #0	; 0x0
     de8:	e3833018 	orr	r3, r3, #24	; 0x18
     dec:	e5823014 	str	r3, [r2, #20]
     df0:	e91ba870 	ldmdb	fp, {r4, r5, r6, fp, sp, pc}
     df4:	00000000 	andeq	r0, r0, r0
     df8:	00000010 	andeq	r0, r0, r0, lsl r0

00000dfc <mmcd_release>:
     dfc:	e1a0c00d 	mov	ip, sp
     e00:	e92dd830 	stmdb	sp!, {r4, r5, fp, ip, lr, pc}
     e04:	e1a05000 	mov	r5, r0
     e08:	e5d53040 	ldrb	r3, [r5, #64]
     e0c:	e59f20b4 	ldr	r2, [pc, #180]	; ec8 <mmcd_release+0xcc>
     e10:	e1a03223 	mov	r3, r3, lsr #4
     e14:	e0833183 	add	r3, r3, r3, lsl #3
     e18:	e0824203 	add	r4, r2, r3, lsl #4
     e1c:	e594308c 	ldr	r3, [r4, #140]
     e20:	e24cb004 	sub	fp, ip, #4	; 0x4
     e24:	e59f20a0 	ldr	r2, [pc, #160]	; ecc <mmcd_release+0xd0>
     e28:	e2433001 	sub	r3, r3, #1	; 0x1
     e2c:	e584308c 	str	r3, [r4, #140]
     e30:	e10f1000 	mrs	r1, CPSR
     e34:	e3813080 	orr	r3, r1, #128	; 0x80
     e38:	e121f003 	msr	CPSR_c, r3
     e3c:	e5923000 	ldr	r3, [r2]
     e40:	e2433001 	sub	r3, r3, #1	; 0x1
     e44:	e5823000 	str	r3, [r2]
     e48:	e121f001 	msr	CPSR_c, r1
     e4c:	e594108c 	ldr	r1, [r4, #140]
     e50:	e2422010 	sub	r2, r2, #16	; 0x10
     e54:	e5923014 	ldr	r3, [r2, #20]
     e58:	e3510000 	cmp	r1, #0	; 0x0
     e5c:	e3833008 	orr	r3, r3, #8	; 0x8
     e60:	e5823014 	str	r3, [r2, #20]
     e64:	1a00039a 	bne	1cd4 <init_module+0xf8>
     e68:	e1d504b0 	ldrh	r0, [r5, #64]
     e6c:	ebfffffe 	bl	e6c <mmcd_release+0x70>
     e70:	e1d504b0 	ldrh	r0, [r5, #64]
     e74:	e3a01000 	mov	r1, #0	; 0x0
     e78:	ebfffffe 	bl	e78 <mmcd_release+0x7c>
     e7c:	e5943004 	ldr	r3, [r4, #4]
     e80:	e3530000 	cmp	r3, #0	; 0x0
     e84:	0a0003a9 	beq	1d30 <cleanup_module+0x8>
     e88:	e5933008 	ldr	r3, [r3, #8]
     e8c:	e3530000 	cmp	r3, #0	; 0x0
     e90:	0a0003a9 	beq	1d3c <cleanup_module+0x14>
     e94:	e1a00004 	mov	r0, r4
     e98:	e1a0e00f 	mov	lr, pc
     e9c:	e1a0f003 	mov	pc, r3
     ea0:	e3500000 	cmp	r0, #0	; 0x0
     ea4:	b3e00000 	mvnlt	r0, #0	; 0x0
     ea8:	b91ba830 	ldmltdb	fp, {r4, r5, fp, sp, pc}
     eac:	e594308c 	ldr	r3, [r4, #140]
     eb0:	e3530000 	cmp	r3, #0	; 0x0
     eb4:	ca0003ae 	bgt	1d74 <cleanup_module+0x4c>
     eb8:	e3a00000 	mov	r0, #0	; 0x0
     ebc:	ebfffffe 	bl	ebc <mmcd_release+0xc0>
     ec0:	e3a00000 	mov	r0, #0	; 0x0
     ec4:	e91ba830 	ldmdb	fp, {r4, r5, fp, sp, pc}
     ec8:	00000000 	andeq	r0, r0, r0
     ecc:	00000010 	andeq	r0, r0, r0, lsl r0

00000ed0 <mmcd_ioctl>:
     ed0:	e1a0c00d 	mov	ip, sp
     ed4:	e92dd8f0 	stmdb	sp!, {r4, r5, r6, r7, fp, ip, lr, pc}
     ed8:	e24cb004 	sub	fp, ip, #4	; 0x4
     edc:	e3a05000 	mov	r5, #0	; 0x0
     ee0:	e1a06000 	mov	r6, r0
     ee4:	e1a04003 	mov	r4, r3
     ee8:	e59f12c4 	ldr	r1, [pc, #708]	; 11b4 <mmcd_ioctl+0x2e4>
     eec:	e24dd008 	sub	sp, sp, #8	; 0x8
     ef0:	e50b5020 	str	r5, [fp, #-32]
     ef4:	e1520001 	cmp	r2, r1
     ef8:	e50b5024 	str	r5, [fp, #-36]
     efc:	0a0003ce 	beq	1e3c <sd_idle_card_present+0x58>
     f00:	8a0003c6 	bhi	1e20 <sd_idle_card_present+0x3c>
     f04:	e59f32ac 	ldr	r3, [pc, #684]	; 11b8 <mmcd_ioctl+0x2e8>
     f08:	e1520003 	cmp	r2, r3
     f0c:	0a00043d 	beq	2008 <sd_all_send_cid+0x144>
     f10:	e59f32a4 	ldr	r3, [pc, #676]	; 11bc <mmcd_ioctl+0x2ec>
     f14:	e1520003 	cmp	r2, r3
     f18:	0a00043a 	beq	2008 <sd_all_send_cid+0x144>
     f1c:	ea000469 	b	20c8 <sd_all_send_cid+0x204>
     f20:	e59f3298 	ldr	r3, [pc, #664]	; 11c0 <mmcd_ioctl+0x2f0>
     f24:	e1520003 	cmp	r2, r3
     f28:	0a000422 	beq	1fb8 <sd_all_send_cid+0xf4>
     f2c:	3a0003e6 	bcc	1ecc <sd_all_send_cid+0x8>
     f30:	e2833001 	add	r3, r3, #1	; 0x1
     f34:	e1520003 	cmp	r2, r3
     f38:	0a00040e 	beq	1f78 <sd_all_send_cid+0xb4>
     f3c:	ea000469 	b	20e8 <sd_all_send_cid+0x224>
     f40:	e3540000 	cmp	r4, #0	; 0x0
     f44:	1a0003d2 	bne	1e94 <sd_idle_card_present+0xb0>
     f48:	e3e00015 	mvn	r0, #21	; 0x15
     f4c:	e91ba8f0 	ldmdb	fp, {r4, r5, r6, r7, fp, sp, pc}
     f50:	e3cd3d7f 	bic	r3, sp, #8128	; 0x1fc0
     f54:	e3c3303f 	bic	r3, r3, #63	; 0x3f
     f58:	e593300c 	ldr	r3, [r3, #12]
     f5c:	e2942004 	adds	r2, r4, #4	; 0x4
     f60:	30d22003 	sbcccs	r2, r2, r3
     f64:	33a03000 	movcc	r3, #0	; 0x0
     f68:	e3530000 	cmp	r3, #0	; 0x0
     f6c:	13e0500d 	mvnne	r5, #13	; 0xd
     f70:	03a05000 	moveq	r5, #0	; 0x0
     f74:	0a0003de 	beq	1ef4 <sd_all_send_cid+0x30>
     f78:	e1a00005 	mov	r0, r5
     f7c:	e91ba8f0 	ldmdb	fp, {r4, r5, r6, r7, fp, sp, pc}
     f80:	e59f323c 	ldr	r3, [pc, #572]	; 11c4 <mmcd_ioctl+0x2f4>
     f84:	e5d62040 	ldrb	r2, [r6, #64]
     f88:	e5933010 	ldr	r3, [r3, #16]
     f8c:	e1a00004 	mov	r0, r4
     f90:	e0833202 	add	r3, r3, r2, lsl #4
     f94:	e5931004 	ldr	r1, [r3, #4]
     f98:	ebfffffe 	bl	f98 <mmcd_ioctl+0xc8>
     f9c:	ea000420 	b	2024 <sd_all_send_cid+0x160>
     fa0:	e59f3220 	ldr	r3, [pc, #544]	; 11c8 <mmcd_ioctl+0x2f8>
     fa4:	e5933000 	ldr	r3, [r3]
     fa8:	e3130001 	tst	r3, #1	; 0x1
     fac:	1a0003f3 	bne	1f80 <sd_all_send_cid+0xbc>
     fb0:	e3cd2d7f 	bic	r2, sp, #8128	; 0x1fc0
     fb4:	e3c2203f 	bic	r2, r2, #63	; 0x3f
     fb8:	e5923134 	ldr	r3, [r2, #308]
     fbc:	e3530000 	cmp	r3, #0	; 0x0
     fc0:	05923004 	ldreq	r3, [r2, #4]
     fc4:	03a01001 	moveq	r1, #1	; 0x1
     fc8:	03833c01 	orreq	r3, r3, #256	; 0x100
     fcc:	05823004 	streq	r3, [r2, #4]
     fd0:	0a0003f4 	beq	1fa8 <sd_all_send_cid+0xe4>
     fd4:	e3a01000 	mov	r1, #0	; 0x0
     fd8:	e3510000 	cmp	r1, #0	; 0x0
     fdc:	1a0003f8 	bne	1fc4 <sd_all_send_cid+0x100>
     fe0:	e3e0000c 	mvn	r0, #12	; 0xc
     fe4:	e91ba8f0 	ldmdb	fp, {r4, r5, r6, r7, fp, sp, pc}
     fe8:	e1d604b0 	ldrh	r0, [r6, #64]
     fec:	ebfffffe 	bl	fec <mmcd_ioctl+0x11c>
     ff0:	e1d604b0 	ldrh	r0, [r6, #64]
     ff4:	e3a01000 	mov	r1, #0	; 0x0
     ff8:	ebfffffe 	bl	ff8 <mmcd_ioctl+0x128>
     ffc:	e5d63040 	ldrb	r3, [r6, #64]
    1000:	e59f21c4 	ldr	r2, [pc, #452]	; 11cc <mmcd_ioctl+0x2fc>
    1004:	e1a03223 	mov	r3, r3, lsr #4
    1008:	e0833183 	add	r3, r3, r3, lsl #3
    100c:	e0820203 	add	r0, r2, r3, lsl #4
    1010:	e5903004 	ldr	r3, [r0, #4]
    1014:	e3530000 	cmp	r3, #0	; 0x0
    1018:	0a000420 	beq	20a0 <sd_all_send_cid+0x1dc>
    101c:	e5933008 	ldr	r3, [r3, #8]
    1020:	e3530000 	cmp	r3, #0	; 0x0
    1024:	0a000420 	beq	20ac <sd_all_send_cid+0x1e8>
    1028:	e1a0e00f 	mov	lr, pc
    102c:	e1a0f003 	mov	pc, r3
    1030:	e3500000 	cmp	r0, #0	; 0x0
    1034:	e3e00000 	mvn	r0, #0	; 0x0
    1038:	ba00046a 	blt	21e8 <sd_get_csd+0x78>
    103c:	ea000420 	b	20c4 <sd_all_send_cid+0x200>
    1040:	e3540000 	cmp	r4, #0	; 0x0
    1044:	0a0003d0 	beq	1f8c <sd_all_send_cid+0xc8>
    1048:	e3cd3d7f 	bic	r3, sp, #8128	; 0x1fc0
    104c:	e3c3303f 	bic	r3, r3, #63	; 0x3f
    1050:	e593300c 	ldr	r3, [r3, #12]
    1054:	e2942004 	adds	r2, r4, #4	; 0x4
    1058:	30d22003 	sbcccs	r2, r2, r3
    105c:	33a03000 	movcc	r3, #0	; 0x0
    1060:	e3530000 	cmp	r3, #0	; 0x0
    1064:	13e0500d 	mvnne	r5, #13	; 0xd
    1068:	03a05000 	moveq	r5, #0	; 0x0
    106c:	1a0003dc 	bne	1fe4 <sd_all_send_cid+0x120>
    1070:	e1d634b0 	ldrh	r3, [r6, #64]
    1074:	e1a00004 	mov	r0, r4
    1078:	e59f2150 	ldr	r2, [pc, #336]	; 11d0 <mmcd_ioctl+0x300>
    107c:	e1a03423 	mov	r3, r3, lsr #8
    1080:	e7921103 	ldr	r1, [r2, r3, lsl #2]
    1084:	ebfffffe 	bl	1084 <mmcd_ioctl+0x1b4>
    1088:	e3a00000 	mov	r0, #0	; 0x0
    108c:	e91ba8f0 	ldmdb	fp, {r4, r5, r6, r7, fp, sp, pc}
    1090:	e59f3130 	ldr	r3, [pc, #304]	; 11c8 <mmcd_ioctl+0x2f8>
    1094:	e5933000 	ldr	r3, [r3]
    1098:	e3130001 	tst	r3, #1	; 0x1
    109c:	1a00042f 	bne	2160 <sd_set_relative_address+0x4>
    10a0:	e3cd2d7f 	bic	r2, sp, #8128	; 0x1fc0
    10a4:	e3c2203f 	bic	r2, r2, #63	; 0x3f
    10a8:	e5923134 	ldr	r3, [r2, #308]
    10ac:	e3530000 	cmp	r3, #0	; 0x0
    10b0:	05923004 	ldreq	r3, [r2, #4]
    10b4:	03a01001 	moveq	r1, #1	; 0x1
    10b8:	03833c01 	orreq	r3, r3, #256	; 0x100
    10bc:	05823004 	streq	r3, [r2, #4]
    10c0:	0a000430 	beq	2188 <sd_get_csd+0x18>
    10c4:	e3a01000 	mov	r1, #0	; 0x0
    10c8:	e3510000 	cmp	r1, #0	; 0x0
    10cc:	0a0003f6 	beq	20ac <sd_all_send_cid+0x1e8>
    10d0:	e35400ff 	cmp	r4, #255	; 0xff
    10d4:	8a0003d0 	bhi	201c <sd_all_send_cid+0x158>
    10d8:	e1d634b0 	ldrh	r3, [r6, #64]
    10dc:	e3a00000 	mov	r0, #0	; 0x0
    10e0:	e59f20e8 	ldr	r2, [pc, #232]	; 11d0 <mmcd_ioctl+0x300>
    10e4:	e1a03423 	mov	r3, r3, lsr #8
    10e8:	e7824103 	str	r4, [r2, r3, lsl #2]
    10ec:	e91ba8f0 	ldmdb	fp, {r4, r5, r6, r7, fp, sp, pc}
    10f0:	e1d604b0 	ldrh	r0, [r6, #64]
    10f4:	ebfffffe 	bl	10f4 <mmcd_ioctl+0x224>
    10f8:	e91ba8f0 	ldmdb	fp, {r4, r5, r6, r7, fp, sp, pc}
    10fc:	e5d62040 	ldrb	r2, [r6, #64]
    1100:	e59f10cc 	ldr	r1, [pc, #204]	; 11d4 <mmcd_ioctl+0x304>
    1104:	e1a02222 	mov	r2, r2, lsr #4
    1108:	e1a03382 	mov	r3, r2, lsl #7
    110c:	e0833202 	add	r3, r3, r2, lsl #4
    1110:	e7913203 	ldr	r3, [r1, r3, lsl #4]
    1114:	e3540000 	cmp	r4, #0	; 0x0
    1118:	e1a074a3 	mov	r7, r3, lsr #9
    111c:	0a0003d0 	beq	2064 <sd_all_send_cid+0x1a0>
    1120:	e3cd3d7f 	bic	r3, sp, #8128	; 0x1fc0
    1124:	e3c3303f 	bic	r3, r3, #63	; 0x3f
    1128:	e593300c 	ldr	r3, [r3, #12]
    112c:	e2942008 	adds	r2, r4, #8	; 0x8
    1130:	30d22003 	sbcccs	r2, r2, r3
    1134:	33a03000 	movcc	r3, #0	; 0x0
    1138:	e3530000 	cmp	r3, #0	; 0x0
    113c:	13e0500d 	mvnne	r5, #13	; 0xd
    1140:	03a05000 	moveq	r5, #0	; 0x0
    1144:	1a0003dc 	bne	20bc <sd_all_send_cid+0x1f8>
    1148:	e1a00007 	mov	r0, r7
    114c:	e24b1020 	sub	r1, fp, #32	; 0x20
    1150:	e24b2024 	sub	r2, fp, #36	; 0x24
    1154:	eb000314 	bl	1dac <cleanup_module+0x84>
    1158:	e51b2020 	ldr	r2, [fp, #-32]
    115c:	e51b3024 	ldr	r3, [fp, #-36]
    1160:	e1a00007 	mov	r0, r7
    1164:	e0010293 	mul	r1, r3, r2
    1168:	ebfffffe 	bl	1168 <mmcd_ioctl+0x298>
    116c:	e1a01000 	mov	r1, r0
    1170:	e2840002 	add	r0, r4, #2	; 0x2
    1174:	ebfffffe 	bl	1174 <mmcd_ioctl+0x2a4>
    1178:	e1a00004 	mov	r0, r4
    117c:	e55b1020 	ldrb	r1, [fp, #-32]
    1180:	ebfffffe 	bl	1180 <mmcd_ioctl+0x2b0>
    1184:	e2840001 	add	r0, r4, #1	; 0x1
    1188:	e55b1024 	ldrb	r1, [fp, #-36]
    118c:	ebfffffe 	bl	118c <mmcd_ioctl+0x2bc>
    1190:	e59f302c 	ldr	r3, [pc, #44]	; 11c4 <mmcd_ioctl+0x2f4>
    1194:	e5d62040 	ldrb	r2, [r6, #64]
    1198:	e5933010 	ldr	r3, [r3, #16]
    119c:	e2840004 	add	r0, r4, #4	; 0x4
    11a0:	e7931202 	ldr	r1, [r3, r2, lsl #4]
    11a4:	ebfffffe 	bl	11a4 <mmcd_ioctl+0x2d4>
    11a8:	ea000420 	b	2230 <sd_get_csd+0xc0>
    11ac:	e3e00015 	mvn	r0, #21	; 0x15
    11b0:	e91ba8f0 	ldmdb	fp, {r4, r5, r6, r7, fp, sp, pc}
    11b4:	00001260 	andeq	r1, r0, r0, ror #4
    11b8:	00000301 	andeq	r0, r0, r1, lsl #6
    11bc:	0000125f 	andeq	r1, r0, pc, asr r2
    11c0:	00001262 	andeq	r1, r0, r2, ror #4
	...
    11d4:	0000001c 	andeq	r0, r0, ip, lsl r0

000011d8 <mmcd_check_change>:
    11d8:	e1a0c00d 	mov	ip, sp
    11dc:	e92dd800 	stmdb	sp!, {fp, ip, lr, pc}
    11e0:	e24cb004 	sub	fp, ip, #4	; 0x4
    11e4:	e31000f0 	tst	r0, #240	; 0xf0
    11e8:	13a00000 	movne	r0, #0	; 0x0
    11ec:	03a00001 	moveq	r0, #1	; 0x1
    11f0:	e91ba800 	ldmdb	fp, {fp, sp, pc}

000011f4 <mmcd_revalidate>:
    11f4:	e1a0c00d 	mov	ip, sp
    11f8:	e92dddf0 	stmdb	sp!, {r4, r5, r6, r7, r8, sl, fp, ip, lr, pc}
    11fc:	e24cb004 	sub	fp, ip, #4	; 0x4
    1200:	e1a00220 	mov	r0, r0, lsr #4
    1204:	e200400f 	and	r4, r0, #15	; 0xf
    1208:	e3540000 	cmp	r4, #0	; 0x0
    120c:	e1a03204 	mov	r3, r4, lsl #4
    1210:	e2835001 	add	r5, r3, #1	; 0x1
    1214:	e3a0600f 	mov	r6, #15	; 0xf
    1218:	c3a00001 	movgt	r0, #1	; 0x1
    121c:	c91badf0 	ldmgtdb	fp, {r4, r5, r6, r7, r8, sl, fp, sp, pc}
    1220:	e59f80dc 	ldr	r8, [pc, #220]	; 1304 <mmcd_revalidate+0x110>
    1224:	e5980014 	ldr	r0, [r8, #20]
    1228:	e1a01106 	mov	r1, r6, lsl #2
    122c:	e0800105 	add	r0, r0, r5, lsl #2
    1230:	ebfffffe 	bl	1230 <mmcd_revalidate+0x3c>
    1234:	e5980010 	ldr	r0, [r8, #16]
    1238:	e1a01206 	mov	r1, r6, lsl #4
    123c:	e0800205 	add	r0, r0, r5, lsl #4
    1240:	ebfffffe 	bl	1240 <mmcd_revalidate+0x4c>
    1244:	e1a07184 	mov	r7, r4, lsl #3
    1248:	e59f60b8 	ldr	r6, [pc, #184]	; 1308 <mmcd_revalidate+0x114>
    124c:	e0873004 	add	r3, r7, r4
    1250:	e0863203 	add	r3, r6, r3, lsl #4
    1254:	e5d32008 	ldrb	r2, [r3, #8]
    1258:	e3520000 	cmp	r2, #0	; 0x0
    125c:	1a0004ab 	bne	2510 <sd_get_card_status+0x4c>
    1260:	e59fa0a4 	ldr	sl, [pc, #164]	; 130c <mmcd_revalidate+0x118>
    1264:	e59a3000 	ldr	r3, [sl]
    1268:	e1a05002 	mov	r5, r2
    126c:	e1550003 	cmp	r5, r3
    1270:	aa0004ab 	bge	2524 <sd_get_card_status+0x60>
    1274:	e59f3094 	ldr	r3, [pc, #148]	; 1310 <mmcd_revalidate+0x11c>
    1278:	e7933105 	ldr	r3, [r3, r5, lsl #2]
    127c:	e3530000 	cmp	r3, #0	; 0x0
    1280:	0a0004a7 	beq	2524 <sd_get_card_status+0x60>
    1284:	e5930004 	ldr	r0, [r3, #4]
    1288:	e3500000 	cmp	r0, #0	; 0x0
    128c:	0a0004a7 	beq	2530 <sd_get_card_status+0x6c>
    1290:	e5933014 	ldr	r3, [r3, #20]
    1294:	e3530000 	cmp	r3, #0	; 0x0
    1298:	0a0004a7 	beq	253c <sd_get_card_status+0x78>
    129c:	e1a0e00f 	mov	lr, pc
    12a0:	e1a0f003 	mov	pc, r3
    12a4:	e59a3000 	ldr	r3, [sl]
    12a8:	e2855001 	add	r5, r5, #1	; 0x1
    12ac:	e1550003 	cmp	r5, r3
    12b0:	ba00049b 	blt	2524 <sd_get_card_status+0x60>
    12b4:	e0873004 	add	r3, r7, r4
    12b8:	e1a02203 	mov	r2, r3, lsl #4
    12bc:	e0823006 	add	r3, r2, r6
    12c0:	e5d33008 	ldrb	r3, [r3, #8]
    12c4:	e3530000 	cmp	r3, #0	; 0x0
    12c8:	0a0004bd 	beq	25c4 <sd_read_single_block+0x40>
    12cc:	e286301c 	add	r3, r6, #28	; 0x1c
    12d0:	e7933002 	ldr	r3, [r3, r2]
    12d4:	e1a00008 	mov	r0, r8
    12d8:	e59f1034 	ldr	r1, [pc, #52]	; 1314 <mmcd_revalidate+0x120>
    12dc:	e1a02523 	mov	r2, r3, lsr #10
    12e0:	e7812304 	str	r2, [r1, r4, lsl #6]
    12e4:	e1a01004 	mov	r1, r4
    12e8:	e59f2028 	ldr	r2, [pc, #40]	; 1318 <mmcd_revalidate+0x124>
    12ec:	e1a034a3 	mov	r3, r3, lsr #9
    12f0:	e7823404 	str	r3, [r2, r4, lsl #8]
    12f4:	e1a02001 	mov	r2, r1
    12f8:	ebfffffe 	bl	12f8 <mmcd_revalidate+0x104>
    12fc:	e3a00000 	mov	r0, #0	; 0x0
    1300:	e91badf0 	ldmdb	fp, {r4, r5, r6, r7, r8, sl, fp, sp, pc}
	...
    130c:	00000018 	andeq	r0, r0, r8, lsl r0
    1310:	000001e8 	andeq	r0, r0, r8, ror #3
    1314:	0000001c 	andeq	r0, r0, ip, lsl r0
    1318:	00000004 	andeq	r0, r0, r4

0000131c <mmcd_request>:
    131c:	e1a0c00d 	mov	ip, sp
    1320:	e92ddff0 	stmdb	sp!, {r4, r5, r6, r7, r8, r9, sl, fp, ip, lr, pc}
    1324:	e24cb004 	sub	fp, ip, #4	; 0x4
    1328:	e59f93b4 	ldr	r9, [pc, #948]	; 16e4 <mmcd_request+0x3c8>
    132c:	e5992000 	ldr	r2, [r9]
    1330:	e1520009 	cmp	r2, r9
    1334:	0a0005c3 	beq	2a48 <sd_write_single_block_withcheck+0x10>
    1338:	e1d231b0 	ldrh	r3, [r2, #16]
    133c:	e1a03423 	mov	r3, r3, lsr #8
    1340:	e353003c 	cmp	r3, #60	; 0x3c
    1344:	0a0004d2 	beq	2694 <sd_read_single_block+0x110>
    1348:	e59f0398 	ldr	r0, [pc, #920]	; 16e8 <mmcd_request+0x3cc>
    134c:	ebfffffe 	bl	134c <mmcd_request+0x30>
    1350:	e5923044 	ldr	r3, [r2, #68]
    1354:	e3530000 	cmp	r3, #0	; 0x0
    1358:	0a0004da 	beq	26c8 <sd_write_single_block+0x24>
    135c:	e5933018 	ldr	r3, [r3, #24]
    1360:	e3130004 	tst	r3, #4	; 0x4
    1364:	1a0004da 	bne	26d4 <sd_write_single_block+0x30>
    1368:	e59f037c 	ldr	r0, [pc, #892]	; 16ec <mmcd_request+0x3d0>
    136c:	ebfffffe 	bl	136c <mmcd_request+0x50>
    1370:	e5998000 	ldr	r8, [r9]
    1374:	e5d83010 	ldrb	r3, [r8, #16]
    1378:	e1a03803 	mov	r3, r3, lsl #16
    137c:	e1a02a23 	mov	r2, r3, lsr #20
    1380:	e3520001 	cmp	r2, #1	; 0x1
    1384:	e1a00823 	mov	r0, r3, lsr #16
    1388:	da0004f7 	ble	276c <sd_write_single_block+0xc8>
    138c:	e59f335c 	ldr	r3, [pc, #860]	; 16f0 <mmcd_request+0x3d4>
    1390:	e5932000 	ldr	r2, [r3]
    1394:	e2822001 	add	r2, r2, #1	; 0x1
    1398:	e5832000 	str	r2, [r3]
    139c:	e10f5000 	mrs	r5, CPSR
    13a0:	e3853080 	orr	r3, r5, #128	; 0x80
    13a4:	e121f003 	msr	CPSR_c, r3
    13a8:	e5994000 	ldr	r4, [r9]
    13ac:	e3a01000 	mov	r1, #0	; 0x0
    13b0:	e59f233c 	ldr	r2, [pc, #828]	; 16f4 <mmcd_request+0x3d8>
    13b4:	e1a00004 	mov	r0, r4
    13b8:	ebfffffe 	bl	13b8 <mmcd_request+0x9c>
    13bc:	e3500000 	cmp	r0, #0	; 0x0
    13c0:	1a0004f5 	bne	279c <sd_write_single_block+0xf8>
    13c4:	e5942004 	ldr	r2, [r4, #4]
    13c8:	e5943000 	ldr	r3, [r4]
    13cc:	e5832004 	str	r2, [r3, #4]
    13d0:	e1a00004 	mov	r0, r4
    13d4:	e5823000 	str	r3, [r2]
    13d8:	ebfffffe 	bl	13d8 <mmcd_request+0xbc>
    13dc:	e121f005 	msr	CPSR_c, r5
    13e0:	ea0004c8 	b	2708 <sd_write_single_block+0x64>
    13e4:	e0823182 	add	r3, r2, r2, lsl #3
    13e8:	e59f6308 	ldr	r6, [pc, #776]	; 16f8 <mmcd_request+0x3dc>
    13ec:	e1a04203 	mov	r4, r3, lsl #4
    13f0:	e0845006 	add	r5, r4, r6
    13f4:	e5d51008 	ldrb	r1, [r5, #8]
    13f8:	e3510000 	cmp	r1, #0	; 0x0
    13fc:	1a00050f 	bne	2840 <sd_write_single_block+0x19c>
    1400:	e10f5000 	mrs	r5, CPSR
    1404:	e3853080 	orr	r3, r5, #128	; 0x80
    1408:	e121f003 	msr	CPSR_c, r3
    140c:	e5994000 	ldr	r4, [r9]
    1410:	e59f22dc 	ldr	r2, [pc, #732]	; 16f4 <mmcd_request+0x3d8>
    1414:	e1a00004 	mov	r0, r4
    1418:	ebfffffe 	bl	1418 <mmcd_request+0xfc>
    141c:	e3500000 	cmp	r0, #0	; 0x0
    1420:	1a00050d 	bne	285c <sd_write_multiple_block+0x18>
    1424:	e5942004 	ldr	r2, [r4, #4]
    1428:	e5943000 	ldr	r3, [r4]
    142c:	e5832004 	str	r2, [r3, #4]
    1430:	e1a00004 	mov	r0, r4
    1434:	e5823000 	str	r3, [r2]
    1438:	ebfffffe 	bl	1438 <mmcd_request+0x11c>
    143c:	e121f005 	msr	CPSR_c, r5
    1440:	ea0004c8 	b	2768 <sd_write_single_block+0xc4>
    1444:	e59f32b0 	ldr	r3, [pc, #688]	; 16fc <mmcd_request+0x3e0>
    1448:	e598e01c 	ldr	lr, [r8, #28]
    144c:	e598c034 	ldr	ip, [r8, #52]
    1450:	e5933010 	ldr	r3, [r3, #16]
    1454:	e1a00200 	mov	r0, r0, lsl #4
    1458:	e59f22a0 	ldr	r2, [pc, #672]	; 1700 <mmcd_request+0x3e4>
    145c:	e0803003 	add	r3, r0, r3
    1460:	e5931004 	ldr	r1, [r3, #4]
    1464:	e08e300c 	add	r3, lr, ip
    1468:	e1530001 	cmp	r3, r1
    146c:	e7923000 	ldr	r3, [r2, r0]
    1470:	e2862010 	add	r2, r6, #16	; 0x10
    1474:	e7922004 	ldr	r2, [r2, r4]
    1478:	e083300e 	add	r3, r3, lr
    147c:	e0040293 	mul	r4, r3, r2
    1480:	e00a0c92 	mul	sl, r2, ip
    1484:	9a000532 	bls	2954 <sd_write_multiple_block+0x110>
    1488:	e10f5000 	mrs	r5, CPSR
    148c:	e3853080 	orr	r3, r5, #128	; 0x80
    1490:	e121f003 	msr	CPSR_c, r3
    1494:	e5994000 	ldr	r4, [r9]
    1498:	e3a01000 	mov	r1, #0	; 0x0
    149c:	e59f2250 	ldr	r2, [pc, #592]	; 16f4 <mmcd_request+0x3d8>
    14a0:	e1a00004 	mov	r0, r4
    14a4:	ebfffffe 	bl	14a4 <mmcd_request+0x188>
    14a8:	e3500000 	cmp	r0, #0	; 0x0
    14ac:	1a000530 	bne	2974 <sd_write_multiple_block+0x130>
    14b0:	e5942004 	ldr	r2, [r4, #4]
    14b4:	e5943000 	ldr	r3, [r4]
    14b8:	e5832004 	str	r2, [r3, #4]
    14bc:	e1a00004 	mov	r0, r4
    14c0:	e5823000 	str	r3, [r2]
    14c4:	ebfffffe 	bl	14c4 <mmcd_request+0x1a8>
    14c8:	e121f005 	msr	CPSR_c, r5
    14cc:	ea0004c8 	b	27f4 <sd_write_single_block+0x150>
    14d0:	e5957004 	ldr	r7, [r5, #4]
    14d4:	e3570000 	cmp	r7, #0	; 0x0
    14d8:	1a000547 	bne	29fc <sd_write_multiple_block+0x1b8>
    14dc:	e10f5000 	mrs	r5, CPSR
    14e0:	e3853080 	orr	r3, r5, #128	; 0x80
    14e4:	e121f003 	msr	CPSR_c, r3
    14e8:	e5994000 	ldr	r4, [r9]
    14ec:	e59f2200 	ldr	r2, [pc, #512]	; 16f4 <mmcd_request+0x3d8>
    14f0:	e1a00004 	mov	r0, r4
    14f4:	e1a01007 	mov	r1, r7
    14f8:	ebfffffe 	bl	14f8 <mmcd_request+0x1dc>
    14fc:	e3500000 	cmp	r0, #0	; 0x0
    1500:	1a000545 	bne	2a1c <sd_write_multiple_block+0x1d8>
    1504:	e5942004 	ldr	r2, [r4, #4]
    1508:	e5943000 	ldr	r3, [r4]
    150c:	e5832004 	str	r2, [r3, #4]
    1510:	e1a00004 	mov	r0, r4
    1514:	e5823000 	str	r3, [r2]
    1518:	ebfffffe 	bl	1518 <mmcd_request+0x1fc>
    151c:	e121f005 	msr	CPSR_c, r5
    1520:	ea0004c8 	b	2848 <sd_write_multiple_block+0x4>
    1524:	e5986014 	ldr	r6, [r8, #20]
    1528:	e3560000 	cmp	r6, #0	; 0x0
    152c:	0a00054d 	beq	2a68 <sd_write_single_block_withcheck+0x30>
    1530:	e3560001 	cmp	r6, #1	; 0x1
    1534:	0a00056b 	beq	2ae8 <sd_write_single_block_withcheck+0xb0>
    1538:	ea000592 	b	2b88 <sd_write_single_block_withcheck+0x150>
    153c:	e1a00005 	mov	r0, r5
    1540:	e1a01004 	mov	r1, r4
    1544:	e598203c 	ldr	r2, [r8, #60]
    1548:	e1a0300a 	mov	r3, sl
    154c:	e1a0e00f 	mov	lr, pc
    1550:	e597f000 	ldr	pc, [r7]
    1554:	e3500000 	cmp	r0, #0	; 0x0
    1558:	aa0005a4 	bge	2bf0 <sd_write_single_block_withcheck+0x1b8>
    155c:	e1a01004 	mov	r1, r4
    1560:	e59f019c 	ldr	r0, [pc, #412]	; 1704 <mmcd_request+0x3e8>
    1564:	e1a0200a 	mov	r2, sl
    1568:	ebfffffe 	bl	1568 <mmcd_request+0x24c>
    156c:	e10f5000 	mrs	r5, CPSR
    1570:	e3853080 	orr	r3, r5, #128	; 0x80
    1574:	e121f003 	msr	CPSR_c, r3
    1578:	e5994000 	ldr	r4, [r9]
    157c:	e59f2170 	ldr	r2, [pc, #368]	; 16f4 <mmcd_request+0x3d8>
    1580:	e1a00004 	mov	r0, r4
    1584:	e1a01006 	mov	r1, r6
    1588:	ebfffffe 	bl	1588 <mmcd_request+0x26c>
    158c:	e3500000 	cmp	r0, #0	; 0x0
    1590:	1a000569 	bne	2b3c <sd_write_single_block_withcheck+0x104>
    1594:	e5942004 	ldr	r2, [r4, #4]
    1598:	e5943000 	ldr	r3, [r4]
    159c:	e5832004 	str	r2, [r3, #4]
    15a0:	e1a00004 	mov	r0, r4
    15a4:	e5823000 	str	r3, [r2]
    15a8:	ebfffffe 	bl	15a8 <mmcd_request+0x28c>
    15ac:	e121f005 	msr	CPSR_c, r5
    15b0:	ea0004c8 	b	28d8 <sd_write_multiple_block+0x94>
    15b4:	e5953080 	ldr	r3, [r5, #128]
    15b8:	e3530000 	cmp	r3, #0	; 0x0
    15bc:	1a000573 	bne	2b90 <sd_write_single_block_withcheck+0x158>
    15c0:	e59f3140 	ldr	r3, [pc, #320]	; 1708 <mmcd_request+0x3ec>
    15c4:	e1530424 	cmp	r3, r4, lsr #8
    15c8:	3a000573 	bcc	2b9c <sd_write_single_block_withcheck+0x164>
    15cc:	e59f0138 	ldr	r0, [pc, #312]	; 170c <mmcd_request+0x3f0>
    15d0:	ebfffffe 	bl	15d0 <mmcd_request+0x2b4>
    15d4:	e1a00005 	mov	r0, r5
    15d8:	e5993000 	ldr	r3, [r9]
    15dc:	e1a01004 	mov	r1, r4
    15e0:	e593203c 	ldr	r2, [r3, #60]
    15e4:	e1a0300a 	mov	r3, sl
    15e8:	e1a0e00f 	mov	lr, pc
    15ec:	e597f004 	ldr	pc, [r7, #4]
    15f0:	e3500000 	cmp	r0, #0	; 0x0
    15f4:	aa0005a4 	bge	2c8c <sd_write_single_block_withcheck+0x254>
    15f8:	e1a01004 	mov	r1, r4
    15fc:	e59f010c 	ldr	r0, [pc, #268]	; 1710 <mmcd_request+0x3f4>
    1600:	e1a0200a 	mov	r2, sl
    1604:	ebfffffe 	bl	1604 <mmcd_request+0x2e8>
    1608:	e10f5000 	mrs	r5, CPSR
    160c:	e3853080 	orr	r3, r5, #128	; 0x80
    1610:	e121f003 	msr	CPSR_c, r3
    1614:	e5994000 	ldr	r4, [r9]
    1618:	e3a01000 	mov	r1, #0	; 0x0
    161c:	e59f20d0 	ldr	r2, [pc, #208]	; 16f4 <mmcd_request+0x3d8>
    1620:	e1a00004 	mov	r0, r4
    1624:	ebfffffe 	bl	1624 <mmcd_request+0x308>
    1628:	e3500000 	cmp	r0, #0	; 0x0
    162c:	1a000590 	bne	2c74 <sd_write_single_block_withcheck+0x23c>
    1630:	e5942004 	ldr	r2, [r4, #4]
    1634:	e5943000 	ldr	r3, [r4]
    1638:	e5832004 	str	r2, [r3, #4]
    163c:	e1a00004 	mov	r0, r4
    1640:	e5823000 	str	r3, [r2]
    1644:	ebfffffe 	bl	1644 <mmcd_request+0x328>
    1648:	e121f005 	msr	CPSR_c, r5
    164c:	ea0004c8 	b	2974 <sd_write_multiple_block+0x130>
    1650:	e10f5000 	mrs	r5, CPSR
    1654:	e3853080 	orr	r3, r5, #128	; 0x80
    1658:	e121f003 	msr	CPSR_c, r3
    165c:	e5994000 	ldr	r4, [r9]
    1660:	e3a01000 	mov	r1, #0	; 0x0
    1664:	e59f2088 	ldr	r2, [pc, #136]	; 16f4 <mmcd_request+0x3d8>
    1668:	e1a00004 	mov	r0, r4
    166c:	ebfffffe 	bl	166c <mmcd_request+0x350>
    1670:	e3500000 	cmp	r0, #0	; 0x0
    1674:	1a0005a2 	bne	2d04 <sd_flush_internal_w_buffer+0x30>
    1678:	e5942004 	ldr	r2, [r4, #4]
    167c:	e5943000 	ldr	r3, [r4]
    1680:	e5832004 	str	r2, [r3, #4]
    1684:	e1a00004 	mov	r0, r4
    1688:	e5823000 	str	r3, [r2]
    168c:	ebfffffe 	bl	168c <mmcd_request+0x370>
    1690:	e121f005 	msr	CPSR_c, r5
    1694:	ea0004c8 	b	29bc <sd_write_multiple_block+0x178>
    1698:	e10f5000 	mrs	r5, CPSR
    169c:	e3853080 	orr	r3, r5, #128	; 0x80
    16a0:	e121f003 	msr	CPSR_c, r3
    16a4:	e59f3038 	ldr	r3, [pc, #56]	; 16e4 <mmcd_request+0x3c8>
    16a8:	e5934000 	ldr	r4, [r3]
    16ac:	e3a01001 	mov	r1, #1	; 0x1
    16b0:	e59f203c 	ldr	r2, [pc, #60]	; 16f4 <mmcd_request+0x3d8>
    16b4:	e1a00004 	mov	r0, r4
    16b8:	ebfffffe 	bl	16b8 <mmcd_request+0x39c>
    16bc:	e3500000 	cmp	r0, #0	; 0x0
    16c0:	1a0005b5 	bne	2d9c <sd_flush_internal_w_buffer+0xc8>
    16c4:	e5942004 	ldr	r2, [r4, #4]
    16c8:	e5943000 	ldr	r3, [r4]
    16cc:	e5832004 	str	r2, [r3, #4]
    16d0:	e1a00004 	mov	r0, r4
    16d4:	e5823000 	str	r3, [r2]
    16d8:	ebfffffe 	bl	16d8 <mmcd_request+0x3bc>
    16dc:	e121f005 	msr	CPSR_c, r5
    16e0:	ea0004c8 	b	2a08 <sd_write_multiple_block+0x1c4>
    16e4:	00001f08 	andeq	r1, r0, r8, lsl #30
    16e8:	000000fc 	streqd	r0, [r0], -ip
    16ec:	0000011c 	andeq	r0, r0, ip, lsl r1
    16f0:	000000ec 	andeq	r0, r0, ip, ror #1
    16f4:	0000005c 	andeq	r0, r0, ip, asr r0
	...
    1704:	00000134 	andeq	r0, r0, r4, lsr r1
    1708:	0000022f 	andeq	r0, r0, pc, lsr #4
    170c:	00000150 	andeq	r0, r0, r0, asr r1
    1710:	00000164 	andeq	r0, r0, r4, ror #2
    1714:	e91baff0 	ldmdb	fp, {r4, r5, r6, r7, r8, r9, sl, fp, sp, pc}

00001718 <mmcsd_geninit>:
    1718:	e1a0c00d 	mov	ip, sp
    171c:	e92dd9f0 	stmdb	sp!, {r4, r5, r6, r7, r8, fp, ip, lr, pc}
    1720:	e24cb004 	sub	fp, ip, #4	; 0x4
    1724:	e59f20a8 	ldr	r2, [pc, #168]	; 17d4 <mmcsd_geninit+0xbc>
    1728:	e3a0303c 	mov	r3, #60	; 0x3c
    172c:	e5823000 	str	r3, [r2]
    1730:	eb00014e 	bl	1c70 <init_module+0x94>
    1734:	e3500000 	cmp	r0, #0	; 0x0
    1738:	ba0005f2 	blt	2f08 <sd_resetbus+0x14>
    173c:	e3a01040 	mov	r1, #64	; 0x40
    1740:	e59f4090 	ldr	r4, [pc, #144]	; 17d8 <mmcsd_geninit+0xc0>
    1744:	e3a03001 	mov	r3, #1	; 0x1
    1748:	e59f508c 	ldr	r5, [pc, #140]	; 17dc <mmcsd_geninit+0xc4>
    174c:	e1a00004 	mov	r0, r4
    1750:	e5853018 	str	r3, [r5, #24]
    1754:	ebfffffe 	bl	1754 <mmcsd_geninit+0x3c>
    1758:	e3a07000 	mov	r7, #0	; 0x0
    175c:	e5854014 	str	r4, [r5, #20]
    1760:	e1a08007 	mov	r8, r7
    1764:	e59f6074 	ldr	r6, [pc, #116]	; 17e0 <mmcsd_geninit+0xc8>
    1768:	e3a01040 	mov	r1, #64	; 0x40
    176c:	e59f3070 	ldr	r3, [pc, #112]	; 17e4 <mmcsd_geninit+0xcc>
    1770:	e1a00006 	mov	r0, r6
    1774:	e58340f0 	str	r4, [r3, #240]
    1778:	ebfffffe 	bl	1778 <mmcsd_geninit+0x60>
    177c:	e59f4064 	ldr	r4, [pc, #100]	; 17e8 <mmcsd_geninit+0xd0>
    1780:	e3a01c01 	mov	r1, #256	; 0x100
    1784:	e59f3060 	ldr	r3, [pc, #96]	; 17ec <mmcsd_geninit+0xd4>
    1788:	e1a00004 	mov	r0, r4
    178c:	e58360f0 	str	r6, [r3, #240]
    1790:	ebfffffe 	bl	1790 <mmcsd_geninit+0x78>
    1794:	e5854010 	str	r4, [r5, #16]
    1798:	e59f3050 	ldr	r3, [pc, #80]	; 17f0 <mmcsd_geninit+0xd8>
    179c:	e0883003 	add	r3, r8, r3
    17a0:	e5d33008 	ldrb	r3, [r3, #8]
    17a4:	e3530000 	cmp	r3, #0	; 0x0
    17a8:	0a0005eb 	beq	2f5c <sd_resetbus+0x68>
    17ac:	e1a00007 	mov	r0, r7
    17b0:	eb0002f3 	bl	2384 <sd_get_csd+0x214>
    17b4:	e2888090 	add	r8, r8, #144	; 0x90
    17b8:	e2877001 	add	r7, r7, #1	; 0x1
    17bc:	e3570000 	cmp	r7, #0	; 0x0
    17c0:	da0005e4 	ble	2f58 <sd_resetbus+0x64>
    17c4:	e3a0700f 	mov	r7, #15	; 0xf
    17c8:	e2577001 	subs	r7, r7, #1	; 0x1
    17cc:	5a0005f0 	bpl	2f94 <sd_resetbus+0xa0>
    17d0:	e91ba9f0 	ldmdb	fp, {r4, r5, r6, r7, r8, fp, sp, pc}
    17d4:	000000a0 	andeq	r0, r0, r0, lsr #1
    17d8:	0000001c 	andeq	r0, r0, ip, lsl r0
    17dc:	00000000 	andeq	r0, r0, r0
    17e0:	0000005c 	andeq	r0, r0, ip, asr r0
	...

000017f4 <mmcsd_pm_callback>:
    17f4:	e1a0c00d 	mov	ip, sp
    17f8:	e92dd800 	stmdb	sp!, {fp, ip, lr, pc}
    17fc:	e24cb004 	sub	fp, ip, #4	; 0x4
    1800:	e3510000 	cmp	r1, #0	; 0x0
    1804:	0a000603 	beq	3018 <sd_initbus+0x44>
    1808:	e3510001 	cmp	r1, #1	; 0x1
    180c:	0a000605 	beq	3028 <sd_initbus+0x54>
    1810:	ea000606 	b	3030 <sd_initbus+0x5c>
    1814:	ebfffffe 	bl	1814 <mmcsd_pm_callback+0x20>
    1818:	ea000606 	b	3038 <sd_initbus+0x64>
    181c:	eb00025a 	bl	218c <sd_get_csd+0x1c>
    1820:	e3a00000 	mov	r0, #0	; 0x0
    1824:	e91ba800 	ldmdb	fp, {fp, sp, pc}

00001828 <collie_mmcsd_proc_read>:
    1828:	e1a0c00d 	mov	ip, sp
    182c:	e92dd8f0 	stmdb	sp!, {r4, r5, r6, r7, fp, ip, lr, pc}
    1830:	e24cb004 	sub	fp, ip, #4	; 0x4
    1834:	e1a07000 	mov	r7, r0
    1838:	e1a05007 	mov	r5, r7
    183c:	e5db0009 	ldrb	r0, [fp, #9]
    1840:	e3a0c000 	mov	ip, #0	; 0x0
    1844:	e5dbe008 	ldrb	lr, [fp, #8]
    1848:	e150000c 	cmp	r0, ip
    184c:	11a0000c 	movne	r0, ip
    1850:	191ba8f0 	ldmnedb	fp, {r4, r5, r6, r7, fp, sp, pc}
    1854:	e59f3204 	ldr	r3, [pc, #516]	; 1a60 <collie_mmcsd_proc_read+0x238>
    1858:	e1d320b0 	ldrh	r2, [r3]
    185c:	e1d330b0 	ldrh	r3, [r3]
    1860:	e35e003f 	cmp	lr, #63	; 0x3f
    1864:	e59f11f8 	ldr	r1, [pc, #504]	; 1a64 <collie_mmcsd_proc_read+0x23c>
    1868:	e1a03723 	mov	r3, r3, lsr #14
    186c:	e203c001 	and	ip, r3, #1	; 0x1
    1870:	e1a026a2 	mov	r2, r2, lsr #13
    1874:	e2222001 	eor	r2, r2, #1	; 0x1
    1878:	e2022001 	and	r2, r2, #1	; 0x1
    187c:	da000624 	ble	3114 <sd_initbus+0x140>
    1880:	e3520000 	cmp	r2, #0	; 0x0
    1884:	0a000623 	beq	3118 <sd_initbus+0x144>
    1888:	e5d13008 	ldrb	r3, [r1, #8]
    188c:	e3530000 	cmp	r3, #0	; 0x0
    1890:	1a000624 	bne	3128 <sd_initbus+0x154>
    1894:	e91ba8f0 	ldmdb	fp, {r4, r5, r6, r7, fp, sp, pc}
    1898:	e2816024 	add	r6, r1, #36	; 0x24
    189c:	e24e3031 	sub	r3, lr, #49	; 0x31
    18a0:	e3530030 	cmp	r3, #48	; 0x30
    18a4:	979ff103 	ldrls	pc, [pc, r3, lsl #2]
    18a8:	ea000694 	b	3300 <sd_detect_insert+0x6c>
    18ac:	00001970 	andeq	r1, r0, r0, ror r9
    18b0:	00001978 	andeq	r1, r0, r8, ror r9
    18b4:	00001a58 	andeq	r1, r0, r8, asr sl
    18b8:	00001a58 	andeq	r1, r0, r8, asr sl
    18bc:	00001a58 	andeq	r1, r0, r8, asr sl
    18c0:	00001a58 	andeq	r1, r0, r8, asr sl
    18c4:	00001a58 	andeq	r1, r0, r8, asr sl
    18c8:	00001a58 	andeq	r1, r0, r8, asr sl
    18cc:	00001a58 	andeq	r1, r0, r8, asr sl
    18d0:	00001a58 	andeq	r1, r0, r8, asr sl
    18d4:	00001a58 	andeq	r1, r0, r8, asr sl
    18d8:	00001a58 	andeq	r1, r0, r8, asr sl
    18dc:	00001a58 	andeq	r1, r0, r8, asr sl
    18e0:	00001a58 	andeq	r1, r0, r8, asr sl
    18e4:	00001a58 	andeq	r1, r0, r8, asr sl
    18e8:	00001a58 	andeq	r1, r0, r8, asr sl
    18ec:	00001988 	andeq	r1, r0, r8, lsl #19
    18f0:	00001a58 	andeq	r1, r0, r8, asr sl
    18f4:	00001a58 	andeq	r1, r0, r8, asr sl
    18f8:	00001a58 	andeq	r1, r0, r8, asr sl
    18fc:	00001a58 	andeq	r1, r0, r8, asr sl
    1900:	00001a58 	andeq	r1, r0, r8, asr sl
    1904:	00001a58 	andeq	r1, r0, r8, asr sl
    1908:	00001a58 	andeq	r1, r0, r8, asr sl
    190c:	00001a58 	andeq	r1, r0, r8, asr sl
    1910:	00001a58 	andeq	r1, r0, r8, asr sl
    1914:	00001a58 	andeq	r1, r0, r8, asr sl
    1918:	00001a58 	andeq	r1, r0, r8, asr sl
    191c:	00001a58 	andeq	r1, r0, r8, asr sl
    1920:	00001a58 	andeq	r1, r0, r8, asr sl
    1924:	00001a58 	andeq	r1, r0, r8, asr sl
    1928:	00001a58 	andeq	r1, r0, r8, asr sl
    192c:	000019b4 	streqh	r1, [r0], -r4
    1930:	000019c0 	andeq	r1, r0, r0, asr #19
    1934:	000019cc 	andeq	r1, r0, ip, asr #19
    1938:	000019dc 	ldreqd	r1, [r0], -ip
    193c:	000019ec 	andeq	r1, r0, ip, ror #19
    1940:	00001a04 	andeq	r1, r0, r4, lsl #20
    1944:	00001a58 	andeq	r1, r0, r8, asr sl
    1948:	00001a58 	andeq	r1, r0, r8, asr sl
    194c:	00001a58 	andeq	r1, r0, r8, asr sl
    1950:	00001a58 	andeq	r1, r0, r8, asr sl
    1954:	00001a58 	andeq	r1, r0, r8, asr sl
    1958:	00001a58 	andeq	r1, r0, r8, asr sl
    195c:	00001a58 	andeq	r1, r0, r8, asr sl
    1960:	00001a58 	andeq	r1, r0, r8, asr sl
    1964:	00001a58 	andeq	r1, r0, r8, asr sl
    1968:	00001a58 	andeq	r1, r0, r8, asr sl
    196c:	00001a20 	andeq	r1, r0, r0, lsr #20
    1970:	e59f10f0 	ldr	r1, [pc, #240]	; 1a68 <collie_mmcsd_proc_read+0x240>
    1974:	ea00067b 	b	3368 <sd_detect_insert+0xd4>
    1978:	e1a00007 	mov	r0, r7
    197c:	e59f10e4 	ldr	r1, [pc, #228]	; 1a68 <collie_mmcsd_proc_read+0x240>
    1980:	e1a0200c 	mov	r2, ip
    1984:	ea00067c 	b	337c <sd_detect_insert+0xe8>
    1988:	e5914080 	ldr	r4, [r1, #128]
    198c:	e3540000 	cmp	r4, #0	; 0x0
    1990:	0a000668 	beq	3338 <sd_detect_insert+0xa4>
    1994:	e59f20d0 	ldr	r2, [pc, #208]	; 1a6c <collie_mmcsd_proc_read+0x244>
    1998:	e59f30d0 	ldr	r3, [pc, #208]	; 1a70 <collie_mmcsd_proc_read+0x248>
    199c:	e3540001 	cmp	r4, #1	; 0x1
    19a0:	01a02003 	moveq	r2, r3
    19a4:	ea000669 	b	3350 <sd_detect_insert+0xbc>
    19a8:	e59f20c4 	ldr	r2, [pc, #196]	; 1a74 <collie_mmcsd_proc_read+0x24c>
    19ac:	e59f10c4 	ldr	r1, [pc, #196]	; 1a78 <collie_mmcsd_proc_read+0x250>
    19b0:	ea00067b 	b	33a4 <sd_detect_insert+0x110>
    19b4:	e59f10c0 	ldr	r1, [pc, #192]	; 1a7c <collie_mmcsd_proc_read+0x254>
    19b8:	e5962000 	ldr	r2, [r6]
    19bc:	ea00067b 	b	33b0 <sd_detect_insert+0x11c>
    19c0:	e59f10b4 	ldr	r1, [pc, #180]	; 1a7c <collie_mmcsd_proc_read+0x254>
    19c4:	e1d620b4 	ldrh	r2, [r6, #4]
    19c8:	ea00067b 	b	33bc <sd_detect_insert+0x128>
    19cc:	e1a00007 	mov	r0, r7
    19d0:	e59f10a0 	ldr	r1, [pc, #160]	; 1a78 <collie_mmcsd_proc_read+0x250>
    19d4:	e2862006 	add	r2, r6, #6	; 0x6
    19d8:	ea00067c 	b	33d0 <sd_detect_insert+0x13c>
    19dc:	e59f109c 	ldr	r1, [pc, #156]	; 1a80 <collie_mmcsd_proc_read+0x258>
    19e0:	e5962010 	ldr	r2, [r6, #16]
    19e4:	e5963014 	ldr	r3, [r6, #20]
    19e8:	ea000682 	b	33f8 <sd_detect_insert+0x164>
    19ec:	e59f1088 	ldr	r1, [pc, #136]	; 1a7c <collie_mmcsd_proc_read+0x254>
    19f0:	e5962018 	ldr	r2, [r6, #24]
    19f4:	e1a00007 	mov	r0, r7
    19f8:	ebfffffe 	bl	19f8 <collie_mmcsd_proc_read+0x1d0>
    19fc:	e0875000 	add	r5, r7, r0
    1a00:	ea000694 	b	3458 <sd_detect_insert+0x1c4>
    1a04:	e59f1078 	ldr	r1, [pc, #120]	; 1a84 <collie_mmcsd_proc_read+0x25c>
    1a08:	e5962020 	ldr	r2, [r6, #32]
    1a0c:	e596301c 	ldr	r3, [r6, #28]
    1a10:	e1a00007 	mov	r0, r7
    1a14:	ebfffffe 	bl	1a14 <collie_mmcsd_proc_read+0x1ec>
    1a18:	e0875000 	add	r5, r7, r0
    1a1c:	ea000694 	b	3474 <sd_detect_insert+0x1e0>
    1a20:	e3a04000 	mov	r4, #0	; 0x0
    1a24:	e1a00005 	mov	r0, r5
    1a28:	e59f1058 	ldr	r1, [pc, #88]	; 1a88 <collie_mmcsd_proc_read+0x260>
    1a2c:	e2863024 	add	r3, r6, #36	; 0x24
    1a30:	e7d32004 	ldrb	r2, [r3, r4]
    1a34:	e2844001 	add	r4, r4, #1	; 0x1
    1a38:	ebfffffe 	bl	1a38 <collie_mmcsd_proc_read+0x210>
    1a3c:	e0855000 	add	r5, r5, r0
    1a40:	e354000f 	cmp	r4, #15	; 0xf
    1a44:	da000687 	ble	3468 <sd_detect_insert+0x1d4>
    1a48:	e59f103c 	ldr	r1, [pc, #60]	; 1a8c <collie_mmcsd_proc_read+0x264>
    1a4c:	e1a00005 	mov	r0, r5
    1a50:	ebfffffe 	bl	1a50 <collie_mmcsd_proc_read+0x228>
    1a54:	e0855000 	add	r5, r5, r0
    1a58:	e0670005 	rsb	r0, r7, r5
    1a5c:	e91ba8f0 	ldmdb	fp, {r4, r5, r6, r7, fp, sp, pc}
    1a60:	f0000098 	mulnv	r0, r8, r0
    1a64:	00000000 	andeq	r0, r0, r0
    1a68:	000001e4 	andeq	r0, r0, r4, ror #3
    1a6c:	000001f0 	streqd	r0, [r0], -r0
    1a70:	000001ec 	andeq	r0, r0, ip, ror #3
    1a74:	000001f8 	streqd	r0, [r0], -r8
    1a78:	000001e8 	andeq	r0, r0, r8, ror #3
    1a7c:	000001fc 	streqd	r0, [r0], -ip
    1a80:	00000200 	andeq	r0, r0, r0, lsl #4
    1a84:	00000208 	andeq	r0, r0, r8, lsl #4
    1a88:	00000214 	andeq	r0, r0, r4, lsl r2
    1a8c:	0000021c 	andeq	r0, r0, ip, lsl r2

00001a90 <collie_mmcsd_proc_setup>:
    1a90:	e1a0c00d 	mov	ip, sp
    1a94:	e92dd9f0 	stmdb	sp!, {r4, r5, r6, r7, r8, fp, ip, lr, pc}
    1a98:	e24cb004 	sub	fp, ip, #4	; 0x4
    1a9c:	e2508000 	subs	r8, r0, #0	; 0x0
    1aa0:	e59f5098 	ldr	r5, [pc, #152]	; 1b40 <collie_mmcsd_proc_setup+0xb0>
    1aa4:	e24dd004 	sub	sp, sp, #4	; 0x4
    1aa8:	0a0006ab 	beq	355c <sd_detect_removal+0xd4>
    1aac:	e3a00001 	mov	r0, #1	; 0x1
    1ab0:	e91ba9f0 	ldmdb	fp, {r4, r5, r6, r7, r8, fp, sp, pc}
    1ab4:	e24b4024 	sub	r4, fp, #36	; 0x24
    1ab8:	e1a00004 	mov	r0, r4
    1abc:	e59f1080 	ldr	r1, [pc, #128]	; 1b44 <collie_mmcsd_proc_setup+0xb4>
    1ac0:	e1a02008 	mov	r2, r8
    1ac4:	ebfffffe 	bl	1ac4 <collie_mmcsd_proc_setup+0x34>
    1ac8:	e59f3078 	ldr	r3, [pc, #120]	; 1b48 <collie_mmcsd_proc_setup+0xb8>
    1acc:	e5931000 	ldr	r1, [r3]
    1ad0:	e1a00004 	mov	r0, r4
    1ad4:	ebfffffe 	bl	1ad4 <collie_mmcsd_proc_setup+0x44>
    1ad8:	e1a06000 	mov	r6, r0
    1adc:	e59f3068 	ldr	r3, [pc, #104]	; 1b4c <collie_mmcsd_proc_setup+0xbc>
    1ae0:	e3560000 	cmp	r6, #0	; 0x0
    1ae4:	e7836008 	str	r6, [r3, r8]
    1ae8:	0a0006a9 	beq	3594 <collie_sd_reg_open+0x20>
    1aec:	e5d53000 	ldrb	r3, [r5]
    1af0:	e3530000 	cmp	r3, #0	; 0x0
    1af4:	0a0006cc 	beq	362c <collie_sd_reg_open+0xb8>
    1af8:	e3a01000 	mov	r1, #0	; 0x0
    1afc:	e4d53001 	ldrb	r3, [r5], #1
    1b00:	e1a02006 	mov	r2, r6
    1b04:	e1a00005 	mov	r0, r5
    1b08:	e1837408 	orr	r7, r3, r8, lsl #8
    1b0c:	ebfffffe 	bl	1b0c <collie_mmcsd_proc_setup+0x7c>
    1b10:	e3500000 	cmp	r0, #0	; 0x0
    1b14:	e59f4034 	ldr	r4, [pc, #52]	; 1b50 <collie_mmcsd_proc_setup+0xc0>
    1b18:	15804038 	strne	r4, [r0, #56]
    1b1c:	15807034 	strne	r7, [r0, #52]
    1b20:	e1a00005 	mov	r0, r5
    1b24:	ebfffffe 	bl	1b24 <collie_mmcsd_proc_setup+0x94>
    1b28:	e2800001 	add	r0, r0, #1	; 0x1
    1b2c:	e7f53000 	ldrb	r3, [r5, r0]!
    1b30:	e3530000 	cmp	r3, #0	; 0x0
    1b34:	1a0006bc 	bne	362c <collie_sd_reg_open+0xb8>
    1b38:	e3a00000 	mov	r0, #0	; 0x0
    1b3c:	e91ba9f0 	ldmdb	fp, {r4, r5, r6, r7, r8, fp, sp, pc}
    1b40:	00000184 	andeq	r0, r0, r4, lsl #3
    1b44:	00000220 	andeq	r0, r0, r0, lsr #4
    1b48:	000000f0 	streqd	r0, [r0], -r0
    1b4c:	0000019c 	muleq	r0, ip, r1
    1b50:	00001828 	andeq	r1, r0, r8, lsr #16

00001b54 <collie_mmcsd_proc_remove>:
    1b54:	e1a0c00d 	mov	ip, sp
    1b58:	e92dd830 	stmdb	sp!, {r4, r5, fp, ip, lr, pc}
    1b5c:	e24cb004 	sub	fp, ip, #4	; 0x4
    1b60:	e3500000 	cmp	r0, #0	; 0x0
    1b64:	e59f4064 	ldr	r4, [pc, #100]	; 1bd0 <collie_mmcsd_proc_remove+0x7c>
    1b68:	0a0006db 	beq	36dc <collie_sd_reg_open+0x168>
    1b6c:	e3a00001 	mov	r0, #1	; 0x1
    1b70:	e91ba830 	ldmdb	fp, {r4, r5, fp, sp, pc}
    1b74:	e59f3058 	ldr	r3, [pc, #88]	; 1bd4 <collie_mmcsd_proc_remove+0x80>
    1b78:	e7935000 	ldr	r5, [r3, r0]
    1b7c:	e3550000 	cmp	r5, #0	; 0x0
    1b80:	0a0006d9 	beq	36ec <collie_sd_reg_open+0x178>
    1b84:	e5d43000 	ldrb	r3, [r4]
    1b88:	e3530000 	cmp	r3, #0	; 0x0
    1b8c:	0a0006ec 	beq	3744 <collie_sd_reg_release+0x30>
    1b90:	e2844001 	add	r4, r4, #1	; 0x1
    1b94:	e1a00004 	mov	r0, r4
    1b98:	e1a01005 	mov	r1, r5
    1b9c:	ebfffffe 	bl	1b9c <collie_mmcsd_proc_remove+0x48>
    1ba0:	e1a00004 	mov	r0, r4
    1ba4:	ebfffffe 	bl	1ba4 <collie_mmcsd_proc_remove+0x50>
    1ba8:	e2800001 	add	r0, r0, #1	; 0x1
    1bac:	e7f43000 	ldrb	r3, [r4, r0]!
    1bb0:	e3530000 	cmp	r3, #0	; 0x0
    1bb4:	1a0006e2 	bne	3744 <collie_sd_reg_release+0x30>
    1bb8:	e59f3018 	ldr	r3, [pc, #24]	; 1bd8 <collie_mmcsd_proc_remove+0x84>
    1bbc:	e5950004 	ldr	r0, [r5, #4]
    1bc0:	e5931000 	ldr	r1, [r3]
    1bc4:	ebfffffe 	bl	1bc4 <collie_mmcsd_proc_remove+0x70>
    1bc8:	e3a00000 	mov	r0, #0	; 0x0
    1bcc:	e91ba830 	ldmdb	fp, {r4, r5, fp, sp, pc}
    1bd0:	00000184 	andeq	r0, r0, r4, lsl #3
    1bd4:	0000019c 	muleq	r0, ip, r1
    1bd8:	000000f0 	streqd	r0, [r0], -r0

00001bdc <init_module>:
    1bdc:	e1a0c00d 	mov	ip, sp
    1be0:	e92dd830 	stmdb	sp!, {r4, r5, fp, ip, lr, pc}
    1be4:	e59f10fc 	ldr	r1, [pc, #252]	; 1ce8 <init_module+0x10c>
    1be8:	e59f50fc 	ldr	r5, [pc, #252]	; 1cec <init_module+0x110>
    1bec:	e59f20fc 	ldr	r2, [pc, #252]	; 1cf0 <init_module+0x114>
    1bf0:	e5950000 	ldr	r0, [r5]
    1bf4:	e24cb004 	sub	fp, ip, #4	; 0x4
    1bf8:	ebfffffe 	bl	1bf8 <init_module+0x1c>
    1bfc:	e3500000 	cmp	r0, #0	; 0x0
    1c00:	b3a00000 	movlt	r0, #0	; 0x0
    1c04:	b91ba830 	ldmltdb	fp, {r4, r5, fp, sp, pc}
    1c08:	e5953000 	ldr	r3, [r5]
    1c0c:	e3530000 	cmp	r3, #0	; 0x0
    1c10:	05850000 	streq	r0, [r5]
    1c14:	e59f10d8 	ldr	r1, [pc, #216]	; 1cf4 <init_module+0x118>
    1c18:	e5953000 	ldr	r3, [r5]
    1c1c:	e59f20d4 	ldr	r2, [pc, #212]	; 1cf8 <init_module+0x11c>
    1c20:	e59f40d4 	ldr	r4, [pc, #212]	; 1cfc <init_module+0x120>
    1c24:	e0830283 	add	r0, r3, r3, lsl #5
    1c28:	e0820100 	add	r0, r2, r0, lsl #2
    1c2c:	e5843000 	str	r3, [r4]
    1c30:	ebfffffe 	bl	1c30 <init_module+0x54>
    1c34:	e59f20c4 	ldr	r2, [pc, #196]	; 1d00 <init_module+0x124>
    1c38:	e5953000 	ldr	r3, [r5]
    1c3c:	e3a05008 	mov	r5, #8	; 0x8
    1c40:	e7825103 	str	r5, [r2, r3, lsl #2]
    1c44:	e59f30b8 	ldr	r3, [pc, #184]	; 1d04 <init_module+0x128>
    1c48:	e5932000 	ldr	r2, [r3]
    1c4c:	e5834000 	str	r4, [r3]
    1c50:	e5842020 	str	r2, [r4, #32]
    1c54:	ebfffffe 	bl	1c54 <init_module+0x78>
    1c58:	eb0001be 	bl	2358 <sd_get_csd+0x1e8>
    1c5c:	e1a00005 	mov	r0, r5
    1c60:	e59f20a0 	ldr	r2, [pc, #160]	; 1d08 <init_module+0x12c>
    1c64:	e3a01000 	mov	r1, #0	; 0x0
    1c68:	ebfffffe 	bl	1c68 <init_module+0x8c>
    1c6c:	e59f3098 	ldr	r3, [pc, #152]	; 1d0c <init_module+0x130>
    1c70:	e5830000 	str	r0, [r3]
    1c74:	e59f0094 	ldr	r0, [pc, #148]	; 1d10 <init_module+0x134>
    1c78:	ebfffffe 	bl	1c78 <init_module+0x9c>
    1c7c:	e59f0090 	ldr	r0, [pc, #144]	; 1d14 <init_module+0x138>
    1c80:	ebfffffe 	bl	1c80 <init_module+0xa4>
    1c84:	ebfffffe 	bl	1c84 <init_module+0xa8>
    1c88:	e59f4088 	ldr	r4, [pc, #136]	; 1d18 <init_module+0x13c>
    1c8c:	e59f1088 	ldr	r1, [pc, #136]	; 1d1c <init_module+0x140>
    1c90:	e1a00004 	mov	r0, r4
    1c94:	e5911000 	ldr	r1, [r1]
    1c98:	ebfffffe 	bl	1c98 <init_module+0xbc>
    1c9c:	e59f307c 	ldr	r3, [pc, #124]	; 1d20 <init_module+0x144>
    1ca0:	e3500000 	cmp	r0, #0	; 0x0
    1ca4:	e5830000 	str	r0, [r3]
    1ca8:	1a00072d 	bne	3964 <collie_sd_setclock+0x1a4>
    1cac:	e59f0070 	ldr	r0, [pc, #112]	; 1d24 <init_module+0x148>
    1cb0:	e1a01004 	mov	r1, r4
    1cb4:	ebfffffe 	bl	1cb4 <init_module+0xd8>
    1cb8:	ea000736 	b	3998 <collie_sd_setclock+0x1d8>
    1cbc:	e3a04000 	mov	r4, #0	; 0x0
    1cc0:	ea000730 	b	3988 <collie_sd_setclock+0x1c8>
    1cc4:	e2844001 	add	r4, r4, #1	; 0x1
    1cc8:	e3540000 	cmp	r4, #0	; 0x0
    1ccc:	ca000736 	bgt	39ac <collie_sd_setclock+0x1ec>
    1cd0:	e1a00004 	mov	r0, r4
    1cd4:	eb0006a2 	bl	3764 <collie_sd_reg_release+0x50>
    1cd8:	e3500000 	cmp	r0, #0	; 0x0
    1cdc:	0a00072f 	beq	39a0 <collie_sd_setclock+0x1e0>
    1ce0:	e3a00000 	mov	r0, #0	; 0x0
    1ce4:	e91ba830 	ldmdb	fp, {r4, r5, fp, sp, pc}
    1ce8:	000000f4 	streqd	r0, [r0], -r4
    1cec:	000000a0 	andeq	r0, r0, r0, lsr #1
    1cf0:	00000000 	andeq	r0, r0, r0
    1cf4:	0000131c 	andeq	r1, r0, ip, lsl r3
	...
    1d08:	000017f4 	streqd	r1, [r0], -r4
    1d0c:	00000014 	andeq	r0, r0, r4, lsl r0
    1d10:	00000228 	andeq	r0, r0, r8, lsr #4
    1d14:	00000240 	andeq	r0, r0, r0, asr #4
    1d18:	00000180 	andeq	r0, r0, r0, lsl #3
    1d1c:	00000000 	andeq	r0, r0, r0
    1d20:	000000f0 	streqd	r0, [r0], -r0
    1d24:	00000260 	andeq	r0, r0, r0, ror #4

00001d28 <cleanup_module>:
    1d28:	e1a0c00d 	mov	ip, sp
    1d2c:	e92dd830 	stmdb	sp!, {r4, r5, fp, ip, lr, pc}
    1d30:	e59f508c 	ldr	r5, [pc, #140]	; 1dc4 <cleanup_module+0x9c>
    1d34:	e5953000 	ldr	r3, [r5]
    1d38:	e24cb004 	sub	fp, ip, #4	; 0x4
    1d3c:	e3530000 	cmp	r3, #0	; 0x0
    1d40:	0a00075e 	beq	3ac0 <collie_sd_setclock+0x300>
    1d44:	e3a04000 	mov	r4, #0	; 0x0
    1d48:	ea000752 	b	3a98 <collie_sd_setclock+0x2d8>
    1d4c:	e2844001 	add	r4, r4, #1	; 0x1
    1d50:	e3540000 	cmp	r4, #0	; 0x0
    1d54:	ca000758 	bgt	3abc <collie_sd_setclock+0x2fc>
    1d58:	e1a00004 	mov	r0, r4
    1d5c:	eb0006d3 	bl	38b0 <collie_sd_setclock+0xf0>
    1d60:	e3500000 	cmp	r0, #0	; 0x0
    1d64:	0a000751 	beq	3ab0 <collie_sd_setclock+0x2f0>
    1d68:	e59f105c 	ldr	r1, [pc, #92]	; 1dcc <cleanup_module+0xa4>
    1d6c:	e59f0054 	ldr	r0, [pc, #84]	; 1dc8 <cleanup_module+0xa0>
    1d70:	e5911000 	ldr	r1, [r1]
    1d74:	ebfffffe 	bl	1d74 <cleanup_module+0x4c>
    1d78:	e3a03000 	mov	r3, #0	; 0x0
    1d7c:	e5853000 	str	r3, [r5]
    1d80:	e59f0048 	ldr	r0, [pc, #72]	; 1dd0 <cleanup_module+0xa8>
    1d84:	ebfffffe 	bl	1d84 <cleanup_module+0x5c>
    1d88:	eb0001da 	bl	24f8 <sd_get_card_status+0x34>
    1d8c:	e59f4040 	ldr	r4, [pc, #64]	; 1dd4 <cleanup_module+0xac>
    1d90:	eb00019d 	bl	240c <sd_get_csd+0x29c>
    1d94:	e5940000 	ldr	r0, [r4]
    1d98:	e59f3038 	ldr	r3, [pc, #56]	; 1dd8 <cleanup_module+0xb0>
    1d9c:	e0800280 	add	r0, r0, r0, lsl #5
    1da0:	e0830100 	add	r0, r3, r0, lsl #2
    1da4:	ebfffffe 	bl	1da4 <cleanup_module+0x7c>
    1da8:	e5940000 	ldr	r0, [r4]
    1dac:	e59f1028 	ldr	r1, [pc, #40]	; 1ddc <cleanup_module+0xb4>
    1db0:	ebfffffe 	bl	1db0 <cleanup_module+0x88>
    1db4:	e59f0024 	ldr	r0, [pc, #36]	; 1de0 <cleanup_module+0xb8>
    1db8:	ebfffffe 	bl	1db8 <cleanup_module+0x90>
    1dbc:	ebfffffe 	bl	1dbc <cleanup_module+0x94>
    1dc0:	e91ba830 	ldmdb	fp, {r4, r5, fp, sp, pc}
    1dc4:	000000f0 	streqd	r0, [r0], -r0
    1dc8:	00000180 	andeq	r0, r0, r0, lsl #3
    1dcc:	00000000 	andeq	r0, r0, r0
    1dd0:	000017f4 	streqd	r1, [r0], -r4
    1dd4:	000000a0 	andeq	r0, r0, r0, lsr #1
    1dd8:	00000000 	andeq	r0, r0, r0
    1ddc:	000000f4 	streqd	r0, [r0], -r4
    1de0:	0000027c 	andeq	r0, r0, ip, ror r2

00001de4 <sd_idle_card_present>:
    1de4:	e1a0c00d 	mov	ip, sp
    1de8:	e92dd9f0 	stmdb	sp!, {r4, r5, r6, r7, r8, fp, ip, lr, pc}
    1dec:	e24cb004 	sub	fp, ip, #4	; 0x4
    1df0:	e1a04000 	mov	r4, r0
    1df4:	e1a08001 	mov	r8, r1
    1df8:	e3a07000 	mov	r7, #0	; 0x0
    1dfc:	e24dd014 	sub	sp, sp, #20	; 0x14
    1e00:	e3a00037 	mov	r0, #55	; 0x37
    1e04:	e3a01000 	mov	r1, #0	; 0x0
    1e08:	e1a0e00f 	mov	lr, pc
    1e0c:	e594f01c 	ldr	pc, [r4, #28]
    1e10:	e1a0e00f 	mov	lr, pc
    1e14:	e594f024 	ldr	pc, [r4, #36]
    1e18:	e59f10a0 	ldr	r1, [pc, #160]	; 1ec0 <sd_idle_card_present+0xdc>
    1e1c:	e3a000a9 	mov	r0, #169	; 0xa9
    1e20:	e1a0e00f 	mov	lr, pc
    1e24:	e594f01c 	ldr	pc, [r4, #28]
    1e28:	e1a0e00f 	mov	lr, pc
    1e2c:	e594f024 	ldr	pc, [r4, #36]
    1e30:	e1a05000 	mov	r5, r0
    1e34:	e24b6034 	sub	r6, fp, #52	; 0x34
    1e38:	e1a00006 	mov	r0, r6
    1e3c:	e1a0e00f 	mov	lr, pc
    1e40:	e594f028 	ldr	pc, [r4, #40]
    1e44:	e55b3031 	ldrb	r3, [fp, #-49]
    1e48:	e20330fe 	and	r3, r3, #254	; 0xfe
    1e4c:	e3530004 	cmp	r3, #4	; 0x4
    1e50:	1a00079c 	bne	3cc8 <collie_sd_put_command+0x178>
    1e54:	e59f1064 	ldr	r1, [pc, #100]	; 1ec0 <sd_idle_card_present+0xdc>
    1e58:	e3a00001 	mov	r0, #1	; 0x1
    1e5c:	e1a0e00f 	mov	lr, pc
    1e60:	e594f01c 	ldr	pc, [r4, #28]
    1e64:	e1a0e00f 	mov	lr, pc
    1e68:	e594f024 	ldr	pc, [r4, #36]
    1e6c:	e1a05000 	mov	r5, r0
    1e70:	e3a03000 	mov	r3, #0	; 0x0
    1e74:	ea00079d 	b	3cf0 <collie_sd_put_command+0x1a0>
    1e78:	e3a03001 	mov	r3, #1	; 0x1
    1e7c:	e5883000 	str	r3, [r8]
    1e80:	e3550000 	cmp	r5, #0	; 0x0
    1e84:	1a0007ac 	bne	3d3c <collie_sd_put_command+0x1ec>
    1e88:	e1a00006 	mov	r0, r6
    1e8c:	e1a0e00f 	mov	lr, pc
    1e90:	e594f028 	ldr	pc, [r4, #40]
    1e94:	e55b3031 	ldrb	r3, [fp, #-49]
    1e98:	e3130001 	tst	r3, #1	; 0x1
    1e9c:	03a00001 	moveq	r0, #1	; 0x1
    1ea0:	091ba9f0 	ldmeqdb	fp, {r4, r5, r6, r7, r8, fp, sp, pc}
    1ea4:	e2877001 	add	r7, r7, #1	; 0x1
    1ea8:	e3570005 	cmp	r7, #5	; 0x5
    1eac:	da00077e 	ble	3cac <collie_sd_put_command+0x15c>
    1eb0:	e1a00005 	mov	r0, r5
    1eb4:	e91ba9f0 	ldmdb	fp, {r4, r5, r6, r7, r8, fp, sp, pc}
    1eb8:	e3a00000 	mov	r0, #0	; 0x0
    1ebc:	e91ba9f0 	ldmdb	fp, {r4, r5, r6, r7, r8, fp, sp, pc}
    1ec0:	00ffc000 	rsceqs	ip, pc, r0

00001ec4 <sd_all_send_cid>:
    1ec4:	e1a0c00d 	mov	ip, sp
    1ec8:	e92dd8f0 	stmdb	sp!, {r4, r5, r6, r7, fp, ip, lr, pc}
    1ecc:	e24cb004 	sub	fp, ip, #4	; 0x4
    1ed0:	e1a05000 	mov	r5, r0
    1ed4:	e3a0000a 	mov	r0, #10	; 0xa
    1ed8:	e1a04001 	mov	r4, r1
    1edc:	e1a06002 	mov	r6, r2
    1ee0:	e3a01000 	mov	r1, #0	; 0x0
    1ee4:	e24dd028 	sub	sp, sp, #40	; 0x28
    1ee8:	e1a0e00f 	mov	lr, pc
    1eec:	e595f01c 	ldr	pc, [r5, #28]
    1ef0:	e1a0e00f 	mov	lr, pc
    1ef4:	e595f024 	ldr	pc, [r5, #36]
    1ef8:	e2507000 	subs	r7, r0, #0	; 0x0
    1efc:	11a00007 	movne	r0, r7
    1f00:	191ba8f0 	ldmnedb	fp, {r4, r5, r6, r7, fp, sp, pc}
    1f04:	e3560000 	cmp	r6, #0	; 0x0
    1f08:	1a00080b 	bne	3f3c <collie_sd_get_response_value+0x38>
    1f0c:	e24b0044 	sub	r0, fp, #68	; 0x44
    1f10:	e1a0e00f 	mov	lr, pc
    1f14:	e595f028 	ldr	pc, [r5, #40]
    1f18:	e51b3044 	ldr	r3, [fp, #-68]
    1f1c:	e1a02823 	mov	r2, r3, lsr #16
    1f20:	e5c42024 	strb	r2, [r4, #36]
    1f24:	e2842024 	add	r2, r4, #36	; 0x24
    1f28:	e1a03423 	mov	r3, r3, lsr #8
    1f2c:	e5c23001 	strb	r3, [r2, #1]
    1f30:	e55b3044 	ldrb	r3, [fp, #-68]
    1f34:	e5c23002 	strb	r3, [r2, #2]
    1f38:	e55b303d 	ldrb	r3, [fp, #-61]
    1f3c:	e5c23003 	strb	r3, [r2, #3]
    1f40:	e15b33be 	ldrh	r3, [fp, #-62]
    1f44:	e5c23004 	strb	r3, [r2, #4]
    1f48:	e51b3040 	ldr	r3, [fp, #-64]
    1f4c:	e1a03423 	mov	r3, r3, lsr #8
    1f50:	e5c23005 	strb	r3, [r2, #5]
    1f54:	e55b3040 	ldrb	r3, [fp, #-64]
    1f58:	e5c23006 	strb	r3, [r2, #6]
    1f5c:	e55b3039 	ldrb	r3, [fp, #-57]
    1f60:	e5c23007 	strb	r3, [r2, #7]
    1f64:	e15b33ba 	ldrh	r3, [fp, #-58]
    1f68:	e5c23008 	strb	r3, [r2, #8]
    1f6c:	e51b303c 	ldr	r3, [fp, #-60]
    1f70:	e1a03423 	mov	r3, r3, lsr #8
    1f74:	e5c23009 	strb	r3, [r2, #9]
    1f78:	e55b303c 	ldrb	r3, [fp, #-60]
    1f7c:	e5c2300a 	strb	r3, [r2, #10]
    1f80:	e55b3035 	ldrb	r3, [fp, #-53]
    1f84:	e5c2300b 	strb	r3, [r2, #11]
    1f88:	e15b33b6 	ldrh	r3, [fp, #-54]
    1f8c:	e5c2300c 	strb	r3, [r2, #12]
    1f90:	e51b3038 	ldr	r3, [fp, #-56]
    1f94:	e1a03423 	mov	r3, r3, lsr #8
    1f98:	e5c2300d 	strb	r3, [r2, #13]
    1f9c:	e55b3038 	ldrb	r3, [fp, #-56]
    1fa0:	e5c2300e 	strb	r3, [r2, #14]
    1fa4:	e55b3031 	ldrb	r3, [fp, #-49]
    1fa8:	e5c2300f 	strb	r3, [r2, #15]
    1fac:	e51b3044 	ldr	r3, [fp, #-68]
    1fb0:	e51b2040 	ldr	r2, [fp, #-64]
    1fb4:	e3c334ff 	bic	r3, r3, #-16777216	; 0xff000000
    1fb8:	e5843000 	str	r3, [r4]
    1fbc:	e1a03c22 	mov	r3, r2, lsr #24
    1fc0:	e5c43006 	strb	r3, [r4, #6]
    1fc4:	e1a03822 	mov	r3, r2, lsr #16
    1fc8:	e5c43007 	strb	r3, [r4, #7]
    1fcc:	e1a02422 	mov	r2, r2, lsr #8
    1fd0:	e5c42008 	strb	r2, [r4, #8]
    1fd4:	e5c4700d 	strb	r7, [r4, #13]
    1fd8:	e55b3040 	ldrb	r3, [fp, #-64]
    1fdc:	e51b203c 	ldr	r2, [fp, #-60]
    1fe0:	e5c43009 	strb	r3, [r4, #9]
    1fe4:	e1a03c22 	mov	r3, r2, lsr #24
    1fe8:	e5c4300a 	strb	r3, [r4, #10]
    1fec:	e1a03822 	mov	r3, r2, lsr #16
    1ff0:	e5c4300b 	strb	r3, [r4, #11]
    1ff4:	e1a03422 	mov	r3, r2, lsr #8
    1ff8:	e5c4300c 	strb	r3, [r4, #12]
    1ffc:	e1a03222 	mov	r3, r2, lsr #4
    2000:	e203300f 	and	r3, r3, #15	; 0xf
    2004:	e5843010 	str	r3, [r4, #16]
    2008:	e51b1038 	ldr	r1, [fp, #-56]
    200c:	e202200f 	and	r2, r2, #15	; 0xf
    2010:	e5842014 	str	r2, [r4, #20]
    2014:	e1a03421 	mov	r3, r1, lsr #8
    2018:	e5843018 	str	r3, [r4, #24]
    201c:	e1a03221 	mov	r3, r1, lsr #4
    2020:	e203300f 	and	r3, r3, #15	; 0xf
    2024:	e584301c 	str	r3, [r4, #28]
    2028:	e201100f 	and	r1, r1, #15	; 0xf
    202c:	e5841020 	str	r1, [r4, #32]
    2030:	ea000853 	b	4184 <collie_sd_receive_chars+0x11c>
    2034:	e24b0044 	sub	r0, fp, #68	; 0x44
    2038:	e1a0e00f 	mov	lr, pc
    203c:	e595f028 	ldr	pc, [r5, #40]
    2040:	e51b3044 	ldr	r3, [fp, #-68]
    2044:	e1a02823 	mov	r2, r3, lsr #16
    2048:	e5c42024 	strb	r2, [r4, #36]
    204c:	e2842024 	add	r2, r4, #36	; 0x24
    2050:	e1a03423 	mov	r3, r3, lsr #8
    2054:	e5c23001 	strb	r3, [r2, #1]
    2058:	e55b3044 	ldrb	r3, [fp, #-68]
    205c:	e5c23002 	strb	r3, [r2, #2]
    2060:	e55b303d 	ldrb	r3, [fp, #-61]
    2064:	e5c23003 	strb	r3, [r2, #3]
    2068:	e15b33be 	ldrh	r3, [fp, #-62]
    206c:	e5c23004 	strb	r3, [r2, #4]
    2070:	e51b3040 	ldr	r3, [fp, #-64]
    2074:	e1a03423 	mov	r3, r3, lsr #8
    2078:	e5c23005 	strb	r3, [r2, #5]
    207c:	e55b3040 	ldrb	r3, [fp, #-64]
    2080:	e5c23006 	strb	r3, [r2, #6]
    2084:	e55b3039 	ldrb	r3, [fp, #-57]
    2088:	e5c23007 	strb	r3, [r2, #7]
    208c:	e15b33ba 	ldrh	r3, [fp, #-58]
    2090:	e5c23008 	strb	r3, [r2, #8]
    2094:	e51b303c 	ldr	r3, [fp, #-60]
    2098:	e1a03423 	mov	r3, r3, lsr #8
    209c:	e5c23009 	strb	r3, [r2, #9]
    20a0:	e55b303c 	ldrb	r3, [fp, #-60]
    20a4:	e5c2300a 	strb	r3, [r2, #10]
    20a8:	e55b3035 	ldrb	r3, [fp, #-53]
    20ac:	e5c2300b 	strb	r3, [r2, #11]
    20b0:	e15b33b6 	ldrh	r3, [fp, #-54]
    20b4:	e5c2300c 	strb	r3, [r2, #12]
    20b8:	e51b3038 	ldr	r3, [fp, #-56]
    20bc:	e1a03423 	mov	r3, r3, lsr #8
    20c0:	e5c2300d 	strb	r3, [r2, #13]
    20c4:	e55b3038 	ldrb	r3, [fp, #-56]
    20c8:	e5c2300e 	strb	r3, [r2, #14]
    20cc:	e55b3031 	ldrb	r3, [fp, #-49]
    20d0:	e5c2300f 	strb	r3, [r2, #15]
    20d4:	e55b3042 	ldrb	r3, [fp, #-66]
    20d8:	e5843000 	str	r3, [r4]
    20dc:	e15b34b4 	ldrh	r3, [fp, #-68]
    20e0:	e1c430b4 	strh	r3, [r4, #4]
    20e4:	e51b2040 	ldr	r2, [fp, #-64]
    20e8:	e5c4700b 	strb	r7, [r4, #11]
    20ec:	e1a03c22 	mov	r3, r2, lsr #24
    20f0:	e5c43006 	strb	r3, [r4, #6]
    20f4:	e1a03822 	mov	r3, r2, lsr #16
    20f8:	e5c43007 	strb	r3, [r4, #7]
    20fc:	e1a02422 	mov	r2, r2, lsr #8
    2100:	e5c42008 	strb	r2, [r4, #8]
    2104:	e55b3040 	ldrb	r3, [fp, #-64]
    2108:	e51b103c 	ldr	r1, [fp, #-60]
    210c:	e5c43009 	strb	r3, [r4, #9]
    2110:	e1a03c21 	mov	r3, r1, lsr #24
    2114:	e5c4300a 	strb	r3, [r4, #10]
    2118:	e1a03a21 	mov	r3, r1, lsr #20
    211c:	e203300f 	and	r3, r3, #15	; 0xf
    2120:	e5843010 	str	r3, [r4, #16]
    2124:	e1a03821 	mov	r3, r1, lsr #16
    2128:	e51b2038 	ldr	r2, [fp, #-56]
    212c:	e203300f 	and	r3, r3, #15	; 0xf
    2130:	e5843014 	str	r3, [r4, #20]
    2134:	e1a03822 	mov	r3, r2, lsr #16
    2138:	e1833801 	orr	r3, r3, r1, lsl #16
    213c:	e5843018 	str	r3, [r4, #24]
    2140:	e1a03222 	mov	r3, r2, lsr #4
    2144:	e20330ff 	and	r3, r3, #255	; 0xff
    2148:	e5843020 	str	r3, [r4, #32]
    214c:	e202200f 	and	r2, r2, #15	; 0xf
    2150:	e584201c 	str	r2, [r4, #28]
    2154:	e3a00000 	mov	r0, #0	; 0x0
    2158:	e91ba8f0 	ldmdb	fp, {r4, r5, r6, r7, fp, sp, pc}

0000215c <sd_set_relative_address>:
    215c:	e1a0c00d 	mov	ip, sp
    2160:	e92dd800 	stmdb	sp!, {fp, ip, lr, pc}
    2164:	e24cb004 	sub	fp, ip, #4	; 0x4
    2168:	e3a00000 	mov	r0, #0	; 0x0
    216c:	e91ba800 	ldmdb	fp, {fp, sp, pc}

00002170 <sd_get_csd>:
    2170:	e1a0c00d 	mov	ip, sp
    2174:	e92dd870 	stmdb	sp!, {r4, r5, r6, fp, ip, lr, pc}
    2178:	e24cb004 	sub	fp, ip, #4	; 0x4
    217c:	e1a05000 	mov	r5, r0
    2180:	e3a00009 	mov	r0, #9	; 0x9
    2184:	e1a04002 	mov	r4, r2
    2188:	e1a06003 	mov	r6, r3
    218c:	e1a01801 	mov	r1, r1, lsl #16
    2190:	e24dd014 	sub	sp, sp, #20	; 0x14
    2194:	e1a0e00f 	mov	lr, pc
    2198:	e595f018 	ldr	pc, [r5, #24]
    219c:	e1a0e00f 	mov	lr, pc
    21a0:	e595f020 	ldr	pc, [r5, #32]
    21a4:	e3500000 	cmp	r0, #0	; 0x0
    21a8:	1a00092e 	bne	4668 <lock_sd+0x50>
    21ac:	e3560000 	cmp	r6, #0	; 0x0
    21b0:	1a0008ce 	bne	44f0 <collie_sd_transmit_chars+0xc4>
    21b4:	e24b002c 	sub	r0, fp, #44	; 0x2c
    21b8:	e1a0e00f 	mov	lr, pc
    21bc:	e595f028 	ldr	pc, [r5, #40]
    21c0:	e51b202c 	ldr	r2, [fp, #-44]
    21c4:	e1a03b22 	mov	r3, r2, lsr #22
    21c8:	e2033003 	and	r3, r3, #3	; 0x3
    21cc:	e5c43000 	strb	r3, [r4]
    21d0:	e1a03922 	mov	r3, r2, lsr #18
    21d4:	e203300f 	and	r3, r3, #15	; 0xf
    21d8:	e5c43001 	strb	r3, [r4, #1]
    21dc:	e1a02422 	mov	r2, r2, lsr #8
    21e0:	e5c42002 	strb	r2, [r4, #2]
    21e4:	e55b302c 	ldrb	r3, [fp, #-44]
    21e8:	e51b2028 	ldr	r2, [fp, #-40]
    21ec:	e5c43003 	strb	r3, [r4, #3]
    21f0:	e1a03c22 	mov	r3, r2, lsr #24
    21f4:	e5c43004 	strb	r3, [r4, #4]
    21f8:	e3e03a0f 	mvn	r3, #61440	; 0xf000
    21fc:	e0033622 	and	r3, r3, r2, lsr #12
    2200:	e1c430b6 	strh	r3, [r4, #6]
    2204:	e1a03422 	mov	r3, r2, lsr #8
    2208:	e203300f 	and	r3, r3, #15	; 0xf
    220c:	e5c43008 	strb	r3, [r4, #8]
    2210:	e1a033a2 	mov	r3, r2, lsr #7
    2214:	e2033001 	and	r3, r3, #1	; 0x1
    2218:	e5c43009 	strb	r3, [r4, #9]
    221c:	e1a03322 	mov	r3, r2, lsr #6
    2220:	e2033001 	and	r3, r3, #1	; 0x1
    2224:	e5c4300a 	strb	r3, [r4, #10]
    2228:	e1a032a2 	mov	r3, r2, lsr #5
    222c:	e2033001 	and	r3, r3, #1	; 0x1
    2230:	e5c4300b 	strb	r3, [r4, #11]
    2234:	e1a02222 	mov	r2, r2, lsr #4
    2238:	e15b32b8 	ldrh	r3, [fp, #-40]
    223c:	e2022001 	and	r2, r2, #1	; 0x1
    2240:	e5c4200c 	strb	r2, [r4, #12]
    2244:	e51b2024 	ldr	r2, [fp, #-36]
    2248:	e1a03503 	mov	r3, r3, lsl #10
    224c:	e2033b03 	and	r3, r3, #3072	; 0xc00
    2250:	e1833b22 	orr	r3, r3, r2, lsr #22
    2254:	e1c430be 	strh	r3, [r4, #14]
    2258:	e1a039a2 	mov	r3, r2, lsr #19
    225c:	e2033007 	and	r3, r3, #7	; 0x7
    2260:	e5c43010 	strb	r3, [r4, #16]
    2264:	e1a03822 	mov	r3, r2, lsr #16
    2268:	e2033007 	and	r3, r3, #7	; 0x7
    226c:	e5c43011 	strb	r3, [r4, #17]
    2270:	e1a036a2 	mov	r3, r2, lsr #13
    2274:	e2033007 	and	r3, r3, #7	; 0x7
    2278:	e5c43012 	strb	r3, [r4, #18]
    227c:	e1a03522 	mov	r3, r2, lsr #10
    2280:	e2033007 	and	r3, r3, #7	; 0x7
    2284:	e5c43013 	strb	r3, [r4, #19]
    2288:	e1a033a2 	mov	r3, r2, lsr #7
    228c:	e2033007 	and	r3, r3, #7	; 0x7
    2290:	e5c43014 	strb	r3, [r4, #20]
    2294:	e1a02122 	mov	r2, r2, lsr #2
    2298:	e55b3024 	ldrb	r3, [fp, #-36]
    229c:	e202201f 	and	r2, r2, #31	; 0x1f
    22a0:	e5c42015 	strb	r2, [r4, #21]
    22a4:	e51b2020 	ldr	r2, [fp, #-32]
    22a8:	e1a03183 	mov	r3, r3, lsl #3
    22ac:	e2033018 	and	r3, r3, #24	; 0x18
    22b0:	e1833ea2 	orr	r3, r3, r2, lsr #29
    22b4:	e5c43016 	strb	r3, [r4, #22]
    22b8:	e1a03c22 	mov	r3, r2, lsr #24
    22bc:	e203301f 	and	r3, r3, #31	; 0x1f
    22c0:	e5c43018 	strb	r3, [r4, #24]
    22c4:	e1a03ba2 	mov	r3, r2, lsr #23
    22c8:	e2033001 	and	r3, r3, #1	; 0x1
    22cc:	e5c43019 	strb	r3, [r4, #25]
    22d0:	e1a03aa2 	mov	r3, r2, lsr #21
    22d4:	e2033003 	and	r3, r3, #3	; 0x3
    22d8:	e5c4301a 	strb	r3, [r4, #26]
    22dc:	e1a03922 	mov	r3, r2, lsr #18
    22e0:	e2033007 	and	r3, r3, #7	; 0x7
    22e4:	e5c4301b 	strb	r3, [r4, #27]
    22e8:	e1a03722 	mov	r3, r2, lsr #14
    22ec:	e203300f 	and	r3, r3, #15	; 0xf
    22f0:	e5c4301c 	strb	r3, [r4, #28]
    22f4:	e1a037a2 	mov	r3, r2, lsr #15
    22f8:	e2033001 	and	r3, r3, #1	; 0x1
    22fc:	e5c4301d 	strb	r3, [r4, #29]
    2300:	e1a03322 	mov	r3, r2, lsr #6
    2304:	e2033001 	and	r3, r3, #1	; 0x1
    2308:	e5c4301f 	strb	r3, [r4, #31]
    230c:	e1a032a2 	mov	r3, r2, lsr #5
    2310:	e2033001 	and	r3, r3, #1	; 0x1
    2314:	e5c43020 	strb	r3, [r4, #32]
    2318:	e1a03222 	mov	r3, r2, lsr #4
    231c:	e2033001 	and	r3, r3, #1	; 0x1
    2320:	e5c43021 	strb	r3, [r4, #33]
    2324:	e1a02122 	mov	r2, r2, lsr #2
    2328:	e55b3020 	ldrb	r3, [fp, #-32]
    232c:	e2022003 	and	r2, r2, #3	; 0x3
    2330:	e5c42022 	strb	r2, [r4, #34]
    2334:	e2033003 	and	r3, r3, #3	; 0x3
    2338:	e5c43023 	strb	r3, [r4, #35]
    233c:	ea00092d 	b	47f8 <calc_crc7+0x64>
    2340:	e24b002c 	sub	r0, fp, #44	; 0x2c
    2344:	e1a0e00f 	mov	lr, pc
    2348:	e595f028 	ldr	pc, [r5, #40]
    234c:	e51b202c 	ldr	r2, [fp, #-44]
    2350:	e1a03b22 	mov	r3, r2, lsr #22
    2354:	e2033003 	and	r3, r3, #3	; 0x3
    2358:	e5c43000 	strb	r3, [r4]
    235c:	e1a02422 	mov	r2, r2, lsr #8
    2360:	e5c42002 	strb	r2, [r4, #2]
    2364:	e55b302c 	ldrb	r3, [fp, #-44]
    2368:	e51b2028 	ldr	r2, [fp, #-40]
    236c:	e5c43003 	strb	r3, [r4, #3]
    2370:	e1a03c22 	mov	r3, r2, lsr #24
    2374:	e5c43004 	strb	r3, [r4, #4]
    2378:	e3e03a0f 	mvn	r3, #61440	; 0xf000
    237c:	e0033622 	and	r3, r3, r2, lsr #12
    2380:	e1c430b6 	strh	r3, [r4, #6]
    2384:	e1a03422 	mov	r3, r2, lsr #8
    2388:	e203300f 	and	r3, r3, #15	; 0xf
    238c:	e5c43008 	strb	r3, [r4, #8]
    2390:	e1a033a2 	mov	r3, r2, lsr #7
    2394:	e2033001 	and	r3, r3, #1	; 0x1
    2398:	e5c43009 	strb	r3, [r4, #9]
    239c:	e1a03322 	mov	r3, r2, lsr #6
    23a0:	e2033001 	and	r3, r3, #1	; 0x1
    23a4:	e5c4300a 	strb	r3, [r4, #10]
    23a8:	e1a032a2 	mov	r3, r2, lsr #5
    23ac:	e2033001 	and	r3, r3, #1	; 0x1
    23b0:	e5c4300b 	strb	r3, [r4, #11]
    23b4:	e1a02222 	mov	r2, r2, lsr #4
    23b8:	e15b32b8 	ldrh	r3, [fp, #-40]
    23bc:	e2022001 	and	r2, r2, #1	; 0x1
    23c0:	e5c4200c 	strb	r2, [r4, #12]
    23c4:	e51b2024 	ldr	r2, [fp, #-36]
    23c8:	e1a03503 	mov	r3, r3, lsl #10
    23cc:	e2033b03 	and	r3, r3, #3072	; 0xc00
    23d0:	e1833b22 	orr	r3, r3, r2, lsr #22
    23d4:	e1c430be 	strh	r3, [r4, #14]
    23d8:	e1a039a2 	mov	r3, r2, lsr #19
    23dc:	e2033007 	and	r3, r3, #7	; 0x7
    23e0:	e5c43010 	strb	r3, [r4, #16]
    23e4:	e1a03822 	mov	r3, r2, lsr #16
    23e8:	e2033007 	and	r3, r3, #7	; 0x7
    23ec:	e5c43011 	strb	r3, [r4, #17]
    23f0:	e1a036a2 	mov	r3, r2, lsr #13
    23f4:	e2033007 	and	r3, r3, #7	; 0x7
    23f8:	e5c43012 	strb	r3, [r4, #18]
    23fc:	e1a03522 	mov	r3, r2, lsr #10
    2400:	e2033007 	and	r3, r3, #7	; 0x7
    2404:	e5c43013 	strb	r3, [r4, #19]
    2408:	e1a033a2 	mov	r3, r2, lsr #7
    240c:	e2033007 	and	r3, r3, #7	; 0x7
    2410:	e5c43014 	strb	r3, [r4, #20]
    2414:	e1a02322 	mov	r2, r2, lsr #6
    2418:	e55b3024 	ldrb	r3, [fp, #-36]
    241c:	e2022001 	and	r2, r2, #1	; 0x1
    2420:	e5c42017 	strb	r2, [r4, #23]
    2424:	e51b2020 	ldr	r2, [fp, #-32]
    2428:	e1a03083 	mov	r3, r3, lsl #1
    242c:	e203307e 	and	r3, r3, #126	; 0x7e
    2430:	e1833fa2 	orr	r3, r3, r2, lsr #31
    2434:	e5c43015 	strb	r3, [r4, #21]
    2438:	e1a03c22 	mov	r3, r2, lsr #24
    243c:	e203307f 	and	r3, r3, #127	; 0x7f
    2440:	e5c43018 	strb	r3, [r4, #24]
    2444:	e1a03ba2 	mov	r3, r2, lsr #23
    2448:	e2033001 	and	r3, r3, #1	; 0x1
    244c:	e5c43019 	strb	r3, [r4, #25]
    2450:	e1a03922 	mov	r3, r2, lsr #18
    2454:	e2033007 	and	r3, r3, #7	; 0x7
    2458:	e5c4301b 	strb	r3, [r4, #27]
    245c:	e1a03722 	mov	r3, r2, lsr #14
    2460:	e203300f 	and	r3, r3, #15	; 0xf
    2464:	e5c4301c 	strb	r3, [r4, #28]
    2468:	e1a036a2 	mov	r3, r2, lsr #13
    246c:	e2033001 	and	r3, r3, #1	; 0x1
    2470:	e5c4301d 	strb	r3, [r4, #29]
    2474:	e1a033a2 	mov	r3, r2, lsr #7
    2478:	e2033001 	and	r3, r3, #1	; 0x1
    247c:	e5c4301e 	strb	r3, [r4, #30]
    2480:	e1a03322 	mov	r3, r2, lsr #6
    2484:	e2033001 	and	r3, r3, #1	; 0x1
    2488:	e5c4301f 	strb	r3, [r4, #31]
    248c:	e1a032a2 	mov	r3, r2, lsr #5
    2490:	e2033001 	and	r3, r3, #1	; 0x1
    2494:	e5c43020 	strb	r3, [r4, #32]
    2498:	e1a03222 	mov	r3, r2, lsr #4
    249c:	e2033001 	and	r3, r3, #1	; 0x1
    24a0:	e5c43021 	strb	r3, [r4, #33]
    24a4:	e1a02122 	mov	r2, r2, lsr #2
    24a8:	e51b301c 	ldr	r3, [fp, #-28]
    24ac:	e2022003 	and	r2, r2, #3	; 0x3
    24b0:	e5c42022 	strb	r2, [r4, #34]
    24b4:	e1a03ca3 	mov	r3, r3, lsr #25
    24b8:	e5c43024 	strb	r3, [r4, #36]
    24bc:	e3a00000 	mov	r0, #0	; 0x0
    24c0:	e91ba870 	ldmdb	fp, {r4, r5, r6, fp, sp, pc}

000024c4 <sd_get_card_status>:
    24c4:	e1a0c00d 	mov	ip, sp
    24c8:	e92dd870 	stmdb	sp!, {r4, r5, r6, fp, ip, lr, pc}
    24cc:	e24cb004 	sub	fp, ip, #4	; 0x4
    24d0:	e1a04000 	mov	r4, r0
    24d4:	e3a00037 	mov	r0, #55	; 0x37
    24d8:	e1a05001 	mov	r5, r1
    24dc:	e3a01000 	mov	r1, #0	; 0x0
    24e0:	e1a06002 	mov	r6, r2
    24e4:	e24dd028 	sub	sp, sp, #40	; 0x28
    24e8:	e1a0e00f 	mov	lr, pc
    24ec:	e594f01c 	ldr	pc, [r4, #28]
    24f0:	e24b002c 	sub	r0, fp, #44	; 0x2c
    24f4:	e1a0e00f 	mov	lr, pc
    24f8:	e594f028 	ldr	pc, [r4, #40]
    24fc:	e55b3029 	ldrb	r3, [fp, #-41]
    2500:	e20330fe 	and	r3, r3, #254	; 0xfe
    2504:	e3530004 	cmp	r3, #4	; 0x4
    2508:	1a000946 	bne	4a28 <collie_sd_transmit_block+0x94>
    250c:	e3a0000d 	mov	r0, #13	; 0xd
    2510:	e1a01805 	mov	r1, r5, lsl #16
    2514:	e1a0e00f 	mov	lr, pc
    2518:	e594f018 	ldr	pc, [r4, #24]
    251c:	ea00094a 	b	4a4c <collie_sd_transmit_block+0xb8>
    2520:	e3a0008d 	mov	r0, #141	; 0x8d
    2524:	e1a01805 	mov	r1, r5, lsl #16
    2528:	e1a0e00f 	mov	lr, pc
    252c:	e594f018 	ldr	pc, [r4, #24]
    2530:	e1a0e00f 	mov	lr, pc
    2534:	e594f020 	ldr	pc, [r4, #32]
    2538:	e2505000 	subs	r5, r0, #0	; 0x0
    253c:	1a000958 	bne	4aa4 <collie_sd_transmit_block+0x110>
    2540:	e24b0040 	sub	r0, fp, #64	; 0x40
    2544:	e1a0e00f 	mov	lr, pc
    2548:	e594f028 	ldr	pc, [r4, #40]
    254c:	e15b13be 	ldrh	r1, [fp, #-62]
    2550:	e31100ff 	tst	r1, #255	; 0xff
    2554:	0a000956 	beq	4ab4 <collie_sd_transmit_block+0x120>
    2558:	e59f0010 	ldr	r0, [pc, #16]	; 2570 <sd_get_card_status+0xac>
    255c:	ebfffffe 	bl	255c <sd_get_card_status+0x98>
    2560:	e3853c09 	orr	r3, r5, #2304	; 0x900
    2564:	e5863000 	str	r3, [r6]
    2568:	e1a00005 	mov	r0, r5
    256c:	e91ba870 	ldmdb	fp, {r4, r5, r6, fp, sp, pc}
    2570:	00000294 	muleq	r0, r4, r2

00002574 <sd_wait_for_ready>:
    2574:	e1a0c00d 	mov	ip, sp
    2578:	e92dd800 	stmdb	sp!, {fp, ip, lr, pc}
    257c:	e24cb004 	sub	fp, ip, #4	; 0x4
    2580:	e91ba800 	ldmdb	fp, {fp, sp, pc}

00002584 <sd_read_single_block>:
    2584:	e1a0c00d 	mov	ip, sp
    2588:	e92ddff0 	stmdb	sp!, {r4, r5, r6, r7, r8, r9, sl, fp, ip, lr, pc}
    258c:	e24cb004 	sub	fp, ip, #4	; 0x4
    2590:	e1a0c000 	mov	ip, r0
    2594:	e3a00001 	mov	r0, #1	; 0x1
    2598:	e1a0a001 	mov	sl, r1
    259c:	e28c7010 	add	r7, ip, #16	; 0x10
    25a0:	e1a01007 	mov	r1, r7
    25a4:	e1a09002 	mov	r9, r2
    25a8:	e59c4000 	ldr	r4, [ip]
    25ac:	e1a08003 	mov	r8, r3
    25b0:	e59c600c 	ldr	r6, [ip, #12]
    25b4:	e1a0e00f 	mov	lr, pc
    25b8:	e594f00c 	ldr	pc, [r4, #12]
    25bc:	e1a00006 	mov	r0, r6
    25c0:	e1a0e00f 	mov	lr, pc
    25c4:	e594f038 	ldr	pc, [r4, #56]
    25c8:	e1a05000 	mov	r5, r0
    25cc:	e3550000 	cmp	r5, #0	; 0x0
    25d0:	1a0009a6 	bne	4c70 <rx+0x120>
    25d4:	e1a00004 	mov	r0, r4
    25d8:	e1a01006 	mov	r1, r6
    25dc:	eb00095b 	bl	4b50 <rx>
    25e0:	e1a00008 	mov	r0, r8
    25e4:	e1a0e00f 	mov	lr, pc
    25e8:	e594f010 	ldr	pc, [r4, #16]
    25ec:	e5973070 	ldr	r3, [r7, #112]
    25f0:	e3530000 	cmp	r3, #0	; 0x0
    25f4:	0a00098b 	beq	4c28 <rx+0xd8>
    25f8:	e3a00010 	mov	r0, #16	; 0x10
    25fc:	e1a01008 	mov	r1, r8
    2600:	e1a0e00f 	mov	lr, pc
    2604:	e594f018 	ldr	pc, [r4, #24]
    2608:	e1a0e00f 	mov	lr, pc
    260c:	e594f020 	ldr	pc, [r4, #32]
    2610:	e3500000 	cmp	r0, #0	; 0x0
    2614:	0a000988 	beq	4c3c <rx+0xec>
    2618:	e1a0e00f 	mov	lr, pc
    261c:	e594f03c 	ldr	pc, [r4, #60]
    2620:	e3a00000 	mov	r0, #0	; 0x0
    2624:	e91baff0 	ldmdb	fp, {r4, r5, r6, r7, r8, r9, sl, fp, sp, pc}
    2628:	e1a00004 	mov	r0, r4
    262c:	e1a01006 	mov	r1, r6
    2630:	eb00095b 	bl	4ba4 <rx+0x54>
    2634:	e3a00001 	mov	r0, #1	; 0x1
    2638:	e1a01007 	mov	r1, r7
    263c:	e1a0e00f 	mov	lr, pc
    2640:	e594f00c 	ldr	pc, [r4, #12]
    2644:	e3a00011 	mov	r0, #17	; 0x11
    2648:	e1a0100a 	mov	r1, sl
    264c:	e1a0e00f 	mov	lr, pc
    2650:	e594f018 	ldr	pc, [r4, #24]
    2654:	e1a0e00f 	mov	lr, pc
    2658:	e594f020 	ldr	pc, [r4, #32]
    265c:	e2505000 	subs	r5, r0, #0	; 0x0
    2660:	1a000984 	bne	4c78 <collie_sd_receive_block>
    2664:	e1a00009 	mov	r0, r9
    2668:	e1a01008 	mov	r1, r8
    266c:	e1a0e00f 	mov	lr, pc
    2670:	e594f030 	ldr	pc, [r4, #48]
    2674:	e3500000 	cmp	r0, #0	; 0x0
    2678:	1a0009a3 	bne	4d0c <collie_sd_receive_block+0x94>
    267c:	e1a0e00f 	mov	lr, pc
    2680:	e594f02c 	ldr	pc, [r4, #44]
    2684:	e1a0e00f 	mov	lr, pc
    2688:	e594f03c 	ldr	pc, [r4, #60]
    268c:	e1a00008 	mov	r0, r8
    2690:	e91baff0 	ldmdb	fp, {r4, r5, r6, r7, r8, r9, sl, fp, sp, pc}
    2694:	e1a0e00f 	mov	lr, pc
    2698:	e594f03c 	ldr	pc, [r4, #60]
    269c:	e1a00005 	mov	r0, r5
    26a0:	e91baff0 	ldmdb	fp, {r4, r5, r6, r7, r8, r9, sl, fp, sp, pc}

000026a4 <sd_write_single_block>:
    26a4:	e1a0c00d 	mov	ip, sp
    26a8:	e92ddff0 	stmdb	sp!, {r4, r5, r6, r7, r8, r9, sl, fp, ip, lr, pc}
    26ac:	e1a08000 	mov	r8, r0
    26b0:	e24dd00c 	sub	sp, sp, #12	; 0xc
    26b4:	e5984000 	ldr	r4, [r8]
    26b8:	e5940050 	ldr	r0, [r4, #80]
    26bc:	e24cb004 	sub	fp, ip, #4	; 0x4
    26c0:	e50b102c 	str	r1, [fp, #-44]
    26c4:	e1a0a003 	mov	sl, r3
    26c8:	e50b2030 	str	r2, [fp, #-48]
    26cc:	e2883010 	add	r3, r8, #16	; 0x10
    26d0:	e50b3034 	str	r3, [fp, #-52]
    26d4:	e3500000 	cmp	r0, #0	; 0x0
    26d8:	e598700c 	ldr	r7, [r8, #12]
    26dc:	0a0009bb 	beq	4dd0 <collie_sd_receive_block+0x158>
    26e0:	e1a0e00f 	mov	lr, pc
    26e4:	e1a0f000 	mov	pc, r0
    26e8:	e3500000 	cmp	r0, #0	; 0x0
    26ec:	13a00000 	movne	r0, #0	; 0x0
    26f0:	191baff0 	ldmnedb	fp, {r4, r5, r6, r7, r8, r9, sl, fp, sp, pc}
    26f4:	e51b1034 	ldr	r1, [fp, #-52]
    26f8:	e3a00001 	mov	r0, #1	; 0x1
    26fc:	e1a0e00f 	mov	lr, pc
    2700:	e594f00c 	ldr	pc, [r4, #12]
    2704:	e1a00007 	mov	r0, r7
    2708:	e1a0e00f 	mov	lr, pc
    270c:	e594f038 	ldr	pc, [r4, #56]
    2710:	e1a05000 	mov	r5, r0
    2714:	e1a06005 	mov	r6, r5
    2718:	e3560000 	cmp	r6, #0	; 0x0
    271c:	e1a00006 	mov	r0, r6
    2720:	1a000a0e 	bne	4f60 <sd_read_single_block_withcheck+0x13c>
    2724:	e1a00004 	mov	r0, r4
    2728:	e1a01007 	mov	r1, r7
    272c:	eb00095b 	bl	4ca0 <collie_sd_receive_block+0x28>
    2730:	e1a0000a 	mov	r0, sl
    2734:	e1a0e00f 	mov	lr, pc
    2738:	e594f010 	ldr	pc, [r4, #16]
    273c:	e3a00010 	mov	r0, #16	; 0x10
    2740:	e1a0100a 	mov	r1, sl
    2744:	e1a0e00f 	mov	lr, pc
    2748:	e594f018 	ldr	pc, [r4, #24]
    274c:	e1a0e00f 	mov	lr, pc
    2750:	e594f020 	ldr	pc, [r4, #32]
    2754:	e1a05000 	mov	r5, r0
    2758:	e3550000 	cmp	r5, #0	; 0x0
    275c:	e1a09005 	mov	r9, r5
    2760:	0a0009db 	beq	4ed4 <sd_read_single_block_withcheck+0xb0>
    2764:	e1a0e00f 	mov	lr, pc
    2768:	e594f03c 	ldr	pc, [r4, #60]
    276c:	e3a00000 	mov	r0, #0	; 0x0
    2770:	e91baff0 	ldmdb	fp, {r4, r5, r6, r7, r8, r9, sl, fp, sp, pc}
    2774:	e1a00004 	mov	r0, r4
    2778:	e1a01007 	mov	r1, r7
    277c:	eb00095b 	bl	4cf0 <collie_sd_receive_block+0x78>
    2780:	e5986080 	ldr	r6, [r8, #128]
    2784:	e3560001 	cmp	r6, #1	; 0x1
    2788:	1a0009f2 	bne	4f58 <sd_read_single_block_withcheck+0x134>
    278c:	e3a00037 	mov	r0, #55	; 0x37
    2790:	e1a01005 	mov	r1, r5
    2794:	e1a0e00f 	mov	lr, pc
    2798:	e594f018 	ldr	pc, [r4, #24]
    279c:	e1a0e00f 	mov	lr, pc
    27a0:	e594f020 	ldr	pc, [r4, #32]
    27a4:	e1a05000 	mov	r5, r0
    27a8:	e3550000 	cmp	r5, #0	; 0x0
    27ac:	1a0009d7 	bne	4f10 <sd_read_single_block_withcheck+0xec>
    27b0:	e3a00097 	mov	r0, #151	; 0x97
    27b4:	e1a01006 	mov	r1, r6
    27b8:	e1a0e00f 	mov	lr, pc
    27bc:	e594f018 	ldr	pc, [r4, #24]
    27c0:	e1a0e00f 	mov	lr, pc
    27c4:	e594f020 	ldr	pc, [r4, #32]
    27c8:	e3500000 	cmp	r0, #0	; 0x0
    27cc:	1a0009d7 	bne	4f30 <sd_read_single_block_withcheck+0x10c>
    27d0:	e51b1034 	ldr	r1, [fp, #-52]
    27d4:	e3a00001 	mov	r0, #1	; 0x1
    27d8:	e1a0e00f 	mov	lr, pc
    27dc:	e594f00c 	ldr	pc, [r4, #12]
    27e0:	e51b102c 	ldr	r1, [fp, #-44]
    27e4:	e3a00018 	mov	r0, #24	; 0x18
    27e8:	e1a0e00f 	mov	lr, pc
    27ec:	e594f018 	ldr	pc, [r4, #24]
    27f0:	e1a0e00f 	mov	lr, pc
    27f4:	e594f020 	ldr	pc, [r4, #32]
    27f8:	e2505000 	subs	r5, r0, #0	; 0x0
    27fc:	1a0009d7 	bne	4f60 <sd_read_single_block_withcheck+0x13c>
    2800:	e51b0030 	ldr	r0, [fp, #-48]
    2804:	e1a0100a 	mov	r1, sl
    2808:	e1a0e00f 	mov	lr, pc
    280c:	e594f034 	ldr	pc, [r4, #52]
    2810:	e3500000 	cmp	r0, #0	; 0x0
    2814:	1a000a0b 	bne	5048 <sd_read_multiple_block+0x64>
    2818:	e3a00001 	mov	r0, #1	; 0x1
    281c:	e1a0e00f 	mov	lr, pc
    2820:	e594f02c 	ldr	pc, [r4, #44]
    2824:	e1a0e00f 	mov	lr, pc
    2828:	e594f03c 	ldr	pc, [r4, #60]
    282c:	e1a0000a 	mov	r0, sl
    2830:	e91baff0 	ldmdb	fp, {r4, r5, r6, r7, r8, r9, sl, fp, sp, pc}
    2834:	e1a0e00f 	mov	lr, pc
    2838:	e594f03c 	ldr	pc, [r4, #60]
    283c:	e1a00005 	mov	r0, r5
    2840:	e91baff0 	ldmdb	fp, {r4, r5, r6, r7, r8, r9, sl, fp, sp, pc}

00002844 <sd_write_multiple_block>:
    2844:	e1a0c00d 	mov	ip, sp
    2848:	e92ddff0 	stmdb	sp!, {r4, r5, r6, r7, r8, r9, sl, fp, ip, lr, pc}
    284c:	e24cb004 	sub	fp, ip, #4	; 0x4
    2850:	e1a08000 	mov	r8, r0
    2854:	e24dd00c 	sub	sp, sp, #12	; 0xc
    2858:	e5985000 	ldr	r5, [r8]
    285c:	e1a06003 	mov	r6, r3
    2860:	e59b3004 	ldr	r3, [fp, #4]
    2864:	e5950050 	ldr	r0, [r5, #80]
    2868:	e50b102c 	str	r1, [fp, #-44]
    286c:	e2889010 	add	r9, r8, #16	; 0x10
    2870:	e50b2030 	str	r2, [fp, #-48]
    2874:	e0030396 	mul	r3, r6, r3
    2878:	e50b3034 	str	r3, [fp, #-52]
    287c:	e3500000 	cmp	r0, #0	; 0x0
    2880:	e598700c 	ldr	r7, [r8, #12]
    2884:	0a000a25 	beq	5120 <mmcsd_suspend+0x44>
    2888:	e1a0e00f 	mov	lr, pc
    288c:	e1a0f000 	mov	pc, r0
    2890:	e3500000 	cmp	r0, #0	; 0x0
    2894:	13a00000 	movne	r0, #0	; 0x0
    2898:	191baff0 	ldmnedb	fp, {r4, r5, r6, r7, r8, r9, sl, fp, sp, pc}
    289c:	e3a00001 	mov	r0, #1	; 0x1
    28a0:	e1a01009 	mov	r1, r9
    28a4:	e1a0e00f 	mov	lr, pc
    28a8:	e595f00c 	ldr	pc, [r5, #12]
    28ac:	e1a00007 	mov	r0, r7
    28b0:	e1a0e00f 	mov	lr, pc
    28b4:	e595f038 	ldr	pc, [r5, #56]
    28b8:	e1a04000 	mov	r4, r0
    28bc:	e1a0a004 	mov	sl, r4
    28c0:	e35a0000 	cmp	sl, #0	; 0x0
    28c4:	e3a00000 	mov	r0, #0	; 0x0
    28c8:	1a000a8b 	bne	52fc <crc16_arm+0xb4>
    28cc:	e1a00005 	mov	r0, r5
    28d0:	e1a01007 	mov	r1, r7
    28d4:	eb00095b 	bl	4e48 <sd_read_single_block_withcheck+0x24>
    28d8:	e59b1004 	ldr	r1, [fp, #4]
    28dc:	e1a00006 	mov	r0, r6
    28e0:	e1a0e00f 	mov	lr, pc
    28e4:	e595f014 	ldr	pc, [r5, #20]
    28e8:	e3a00010 	mov	r0, #16	; 0x10
    28ec:	e1a01006 	mov	r1, r6
    28f0:	e1a0e00f 	mov	lr, pc
    28f4:	e595f018 	ldr	pc, [r5, #24]
    28f8:	e1a0e00f 	mov	lr, pc
    28fc:	e595f020 	ldr	pc, [r5, #32]
    2900:	e1a04000 	mov	r4, r0
    2904:	e3540000 	cmp	r4, #0	; 0x0
    2908:	e1a06004 	mov	r6, r4
    290c:	0a000a46 	beq	522c <mmcdsd_gencheckcard+0xbc>
    2910:	e1a0e00f 	mov	lr, pc
    2914:	e595f03c 	ldr	pc, [r5, #60]
    2918:	e3a00000 	mov	r0, #0	; 0x0
    291c:	e91baff0 	ldmdb	fp, {r4, r5, r6, r7, r8, r9, sl, fp, sp, pc}
    2920:	e1a00005 	mov	r0, r5
    2924:	e1a01007 	mov	r1, r7
    2928:	eb00095b 	bl	4e9c <sd_read_single_block_withcheck+0x78>
    292c:	e5983080 	ldr	r3, [r8, #128]
    2930:	e3530001 	cmp	r3, #1	; 0x1
    2934:	1a000a5d 	bne	52b0 <crc16_arm+0x68>
    2938:	e3a00037 	mov	r0, #55	; 0x37
    293c:	e1a01004 	mov	r1, r4
    2940:	e1a0e00f 	mov	lr, pc
    2944:	e595f018 	ldr	pc, [r5, #24]
    2948:	e1a0e00f 	mov	lr, pc
    294c:	e595f020 	ldr	pc, [r5, #32]
    2950:	e1a04000 	mov	r4, r0
    2954:	e3540000 	cmp	r4, #0	; 0x0
    2958:	1a000a42 	bne	5268 <crc16_arm+0x20>
    295c:	e59b1004 	ldr	r1, [fp, #4]
    2960:	e3a00097 	mov	r0, #151	; 0x97
    2964:	e1a0e00f 	mov	lr, pc
    2968:	e595f018 	ldr	pc, [r5, #24]
    296c:	e1a0e00f 	mov	lr, pc
    2970:	e595f020 	ldr	pc, [r5, #32]
    2974:	e3500000 	cmp	r0, #0	; 0x0
    2978:	1a000a42 	bne	5288 <crc16_arm+0x40>
    297c:	e3a00001 	mov	r0, #1	; 0x1
    2980:	e1a01009 	mov	r1, r9
    2984:	e1a0e00f 	mov	lr, pc
    2988:	e595f00c 	ldr	pc, [r5, #12]
    298c:	e595c048 	ldr	ip, [r5, #72]
    2990:	e35c0000 	cmp	ip, #0	; 0x0
    2994:	0a000a6c 	beq	534c <crc16_arm+0x104>
    2998:	e51b102c 	ldr	r1, [fp, #-44]
    299c:	e51b2030 	ldr	r2, [fp, #-48]
    29a0:	e51b3034 	ldr	r3, [fp, #-52]
    29a4:	e1a00009 	mov	r0, r9
    29a8:	e1a0e00f 	mov	lr, pc
    29ac:	e1a0f00c 	mov	pc, ip
    29b0:	e3500000 	cmp	r0, #0	; 0x0
    29b4:	1a000a42 	bne	52c4 <crc16_arm+0x7c>
    29b8:	e51b102c 	ldr	r1, [fp, #-44]
    29bc:	e3a00019 	mov	r0, #25	; 0x19
    29c0:	e1a0e00f 	mov	lr, pc
    29c4:	e595f018 	ldr	pc, [r5, #24]
    29c8:	e1a0e00f 	mov	lr, pc
    29cc:	e595f020 	ldr	pc, [r5, #32]
    29d0:	e2504000 	subs	r4, r0, #0	; 0x0
    29d4:	1a000a42 	bne	52e4 <crc16_arm+0x9c>
    29d8:	e51b0030 	ldr	r0, [fp, #-48]
    29dc:	e51b1034 	ldr	r1, [fp, #-52]
    29e0:	e1a0e00f 	mov	lr, pc
    29e4:	e595f034 	ldr	pc, [r5, #52]
    29e8:	e2506000 	subs	r6, r0, #0	; 0x0
    29ec:	1a000a42 	bne	52fc <crc16_arm+0xb4>
    29f0:	e3a00001 	mov	r0, #1	; 0x1
    29f4:	e1a0e00f 	mov	lr, pc
    29f8:	e595f02c 	ldr	pc, [r5, #44]
    29fc:	e595c04c 	ldr	ip, [r5, #76]
    2a00:	e35c0000 	cmp	ip, #0	; 0x0
    2a04:	0a000a88 	beq	542c <crc16_arm+0x1e4>
    2a08:	e51b102c 	ldr	r1, [fp, #-44]
    2a0c:	e51b2030 	ldr	r2, [fp, #-48]
    2a10:	e51b3034 	ldr	r3, [fp, #-52]
    2a14:	e1a00009 	mov	r0, r9
    2a18:	e1a0e00f 	mov	lr, pc
    2a1c:	e1a0f00c 	mov	pc, ip
    2a20:	e3500000 	cmp	r0, #0	; 0x0
    2a24:	1a000a42 	bne	5334 <crc16_arm+0xec>
    2a28:	e1a0e00f 	mov	lr, pc
    2a2c:	e595f03c 	ldr	pc, [r5, #60]
    2a30:	e51b0034 	ldr	r0, [fp, #-52]
    2a34:	e91baff0 	ldmdb	fp, {r4, r5, r6, r7, r8, r9, sl, fp, sp, pc}

00002a38 <sd_write_single_block_withcheck>:
    2a38:	e1a0c00d 	mov	ip, sp
    2a3c:	e92ddff0 	stmdb	sp!, {r4, r5, r6, r7, r8, r9, sl, fp, ip, lr, pc}
    2a40:	e24cb004 	sub	fp, ip, #4	; 0x4
    2a44:	e1a08001 	mov	r8, r1
    2a48:	e1a06003 	mov	r6, r3
    2a4c:	e3a01000 	mov	r1, #0	; 0x0
    2a50:	e1a09002 	mov	r9, r2
    2a54:	e259a000 	subs	sl, r9, #0	; 0x0
    2a58:	e24dd00c 	sub	sp, sp, #12	; 0xc
    2a5c:	e50b102c 	str	r1, [fp, #-44]
    2a60:	e1a05000 	mov	r5, r0
    2a64:	e5957014 	ldr	r7, [r5, #20]
    2a68:	1a000a9b 	bne	54dc <crc16_arm+0x294>
    2a6c:	e3e00000 	mvn	r0, #0	; 0x0
    2a70:	e91baff0 	ldmdb	fp, {r4, r5, r6, r7, r8, r9, sl, fp, sp, pc}
    2a74:	e3550000 	cmp	r5, #0	; 0x0
    2a78:	0a000a99 	beq	54e4 <crc16_arm+0x29c>
    2a7c:	e5d53008 	ldrb	r3, [r5, #8]
    2a80:	e3e00000 	mvn	r0, #0	; 0x0
    2a84:	e3530000 	cmp	r3, #0	; 0x0
    2a88:	0a000b2a 	beq	5738 <crc16_arm+0x4f0>
    2a8c:	e1a00008 	mov	r0, r8
    2a90:	e1a01007 	mov	r1, r7
    2a94:	ebfffffe 	bl	2a94 <sd_write_single_block_withcheck+0x5c>
    2a98:	e3500000 	cmp	r0, #0	; 0x0
    2a9c:	e3e00000 	mvn	r0, #0	; 0x0
    2aa0:	1a000b2a 	bne	5750 <crc16_arm+0x508>
    2aa4:	e5953080 	ldr	r3, [r5, #128]
    2aa8:	e59f2204 	ldr	r2, [pc, #516]	; 2cb4 <sd_write_single_block_withcheck+0x27c>
    2aac:	e3530001 	cmp	r3, #1	; 0x1
    2ab0:	e51b302c 	ldr	r3, [fp, #-44]
    2ab4:	e5823000 	str	r3, [r2]
    2ab8:	1a000afa 	bne	56a8 <crc16_arm+0x460>
    2abc:	e5953000 	ldr	r3, [r5]
    2ac0:	e5933014 	ldr	r3, [r3, #20]
    2ac4:	e3530000 	cmp	r3, #0	; 0x0
    2ac8:	0a000afa 	beq	56b8 <crc16_arm+0x470>
    2acc:	e59f11e4 	ldr	r1, [pc, #484]	; 2cb8 <sd_write_single_block_withcheck+0x280>
    2ad0:	e5913000 	ldr	r3, [r1]
    2ad4:	e3530000 	cmp	r3, #0	; 0x0
    2ad8:	0a000afa 	beq	56c8 <crc16_arm+0x480>
    2adc:	e1a00006 	mov	r0, r6
    2ae0:	e1a01007 	mov	r1, r7
    2ae4:	ebfffffe 	bl	2ae4 <sd_write_single_block_withcheck+0xac>
    2ae8:	e3500000 	cmp	r0, #0	; 0x0
    2aec:	1a000afa 	bne	56dc <crc16_arm+0x494>
    2af0:	e1a00006 	mov	r0, r6
    2af4:	e1a01007 	mov	r1, r7
    2af8:	ebfffffe 	bl	2af8 <sd_write_single_block_withcheck+0xc0>
    2afc:	e50b0030 	str	r0, [fp, #-48]
    2b00:	e59f01b4 	ldr	r0, [pc, #436]	; 2cbc <sd_write_single_block_withcheck+0x284>
    2b04:	e59f41b4 	ldr	r4, [pc, #436]	; 2cc0 <sd_write_single_block_withcheck+0x288>
    2b08:	ebfffffe 	bl	2b08 <sd_write_single_block_withcheck+0xd0>
    2b0c:	e5943000 	ldr	r3, [r4]
    2b10:	e3530000 	cmp	r3, #0	; 0x0
    2b14:	0a000ac6 	beq	5634 <crc16_arm+0x3ec>
    2b18:	e59f01a4 	ldr	r0, [pc, #420]	; 2cc4 <sd_write_single_block_withcheck+0x28c>
    2b1c:	ebfffffe 	bl	2b1c <sd_write_single_block_withcheck+0xe4>
    2b20:	e59fa1a0 	ldr	sl, [pc, #416]	; 2cc8 <sd_write_single_block_withcheck+0x290>
    2b24:	e5943000 	ldr	r3, [r4]
    2b28:	e59a2000 	ldr	r2, [sl]
    2b2c:	e3833002 	orr	r3, r3, #2	; 0x2
    2b30:	e5843000 	str	r3, [r4]
    2b34:	e3520000 	cmp	r2, #0	; 0x0
    2b38:	0a000ade 	beq	56b8 <crc16_arm+0x470>
    2b3c:	e51b1030 	ldr	r1, [fp, #-48]
    2b40:	e0823001 	add	r3, r2, r1
    2b44:	e3530020 	cmp	r3, #32	; 0x20
    2b48:	ca000ad6 	bgt	56a8 <crc16_arm+0x460>
    2b4c:	e59f3178 	ldr	r3, [pc, #376]	; 2ccc <sd_write_single_block_withcheck+0x294>
    2b50:	e5933000 	ldr	r3, [r3]
    2b54:	e0233297 	mla	r3, r7, r2, r3
    2b58:	e1530008 	cmp	r3, r8
    2b5c:	0a000ade 	beq	56dc <crc16_arm+0x494>
    2b60:	e1a00005 	mov	r0, r5
    2b64:	eb000b33 	bl	5838 <crc16_arm+0x5f0>
    2b68:	e3500000 	cmp	r0, #0	; 0x0
    2b6c:	aa000ade 	bge	56ec <crc16_arm+0x4a4>
    2b70:	e5943000 	ldr	r3, [r4]
    2b74:	e3c33002 	bic	r3, r3, #2	; 0x2
    2b78:	e5843000 	str	r3, [r4]
    2b7c:	e91baff0 	ldmdb	fp, {r4, r5, r6, r7, r8, r9, sl, fp, sp, pc}
    2b80:	e59a3000 	ldr	r3, [sl]
    2b84:	e3530000 	cmp	r3, #0	; 0x0
    2b88:	059f313c 	ldreq	r3, [pc, #316]	; 2ccc <sd_write_single_block_withcheck+0x294>
    2b8c:	05838000 	streq	r8, [r3]
    2b90:	e59a0000 	ldr	r0, [sl]
    2b94:	e59f211c 	ldr	r2, [pc, #284]	; 2cb8 <sd_write_single_block_withcheck+0x280>
    2b98:	e1a01009 	mov	r1, r9
    2b9c:	e5923000 	ldr	r3, [r2]
    2ba0:	e1a02006 	mov	r2, r6
    2ba4:	e0203097 	mla	r0, r7, r0, r3
    2ba8:	ebfffffe 	bl	2ba8 <sd_write_single_block_withcheck+0x170>
    2bac:	e59f1108 	ldr	r1, [pc, #264]	; 2cbc <sd_write_single_block_withcheck+0x284>
    2bb0:	e5943000 	ldr	r3, [r4]
    2bb4:	e581500c 	str	r5, [r1, #12]
    2bb8:	e3c33002 	bic	r3, r3, #2	; 0x2
    2bbc:	e5843000 	str	r3, [r4]
    2bc0:	e59f3108 	ldr	r3, [pc, #264]	; 2cd0 <sd_write_single_block_withcheck+0x298>
    2bc4:	e1a00001 	mov	r0, r1
    2bc8:	e51b1030 	ldr	r1, [fp, #-48]
    2bcc:	e59a2000 	ldr	r2, [sl]
    2bd0:	e5933000 	ldr	r3, [r3]
    2bd4:	e0822001 	add	r2, r2, r1
    2bd8:	e58a2000 	str	r2, [sl]
    2bdc:	e2833032 	add	r3, r3, #50	; 0x32
    2be0:	e5803008 	str	r3, [r0, #8]
    2be4:	ebfffffe 	bl	2be4 <sd_write_single_block_withcheck+0x1ac>
    2be8:	e1a00006 	mov	r0, r6
    2bec:	e91baff0 	ldmdb	fp, {r4, r5, r6, r7, r8, r9, sl, fp, sp, pc}
    2bf0:	e1a00005 	mov	r0, r5
    2bf4:	eb000b33 	bl	58c8 <crc16_arm+0x680>
    2bf8:	e3500000 	cmp	r0, #0	; 0x0
    2bfc:	ba000b2a 	blt	58ac <crc16_arm+0x664>
    2c00:	e5953080 	ldr	r3, [r5, #128]
    2c04:	e3530001 	cmp	r3, #1	; 0x1
    2c08:	1a000b16 	bne	5868 <crc16_arm+0x620>
    2c0c:	e5953000 	ldr	r3, [r5]
    2c10:	e5933014 	ldr	r3, [r3, #20]
    2c14:	e3530000 	cmp	r3, #0	; 0x0
    2c18:	11560007 	cmpne	r6, r7
    2c1c:	9a000b16 	bls	587c <crc16_arm+0x634>
    2c20:	e1a00006 	mov	r0, r6
    2c24:	e1a01007 	mov	r1, r7
    2c28:	ebfffffe 	bl	2c28 <sd_write_single_block_withcheck+0x1f0>
    2c2c:	e3500000 	cmp	r0, #0	; 0x0
    2c30:	1a000b16 	bne	5890 <crc16_arm+0x648>
    2c34:	e1a00006 	mov	r0, r6
    2c38:	e1a01007 	mov	r1, r7
    2c3c:	ebfffffe 	bl	2c3c <sd_write_single_block_withcheck+0x204>
    2c40:	e58d0000 	str	r0, [sp]
    2c44:	e1a00005 	mov	r0, r5
    2c48:	e1a01008 	mov	r1, r8
    2c4c:	e1a02009 	mov	r2, r9
    2c50:	e1a03007 	mov	r3, r7
    2c54:	eb000a0f 	bl	5498 <crc16_arm+0x250>
    2c58:	e91baff0 	ldmdb	fp, {r4, r5, r6, r7, r8, r9, sl, fp, sp, pc}
    2c5c:	e91baff0 	ldmdb	fp, {r4, r5, r6, r7, r8, r9, sl, fp, sp, pc}
    2c60:	e3560000 	cmp	r6, #0	; 0x0
    2c64:	0a000b29 	beq	5910 <crc16_arm+0x6c8>
    2c68:	e1a00005 	mov	r0, r5
    2c6c:	e1a01008 	mov	r1, r8
    2c70:	e1a0200a 	mov	r2, sl
    2c74:	e1560007 	cmp	r6, r7
    2c78:	31a04006 	movcc	r4, r6
    2c7c:	21a04007 	movcs	r4, r7
    2c80:	e1a03004 	mov	r3, r4
    2c84:	eb0009a7 	bl	5328 <crc16_arm+0xe0>
    2c88:	e3500000 	cmp	r0, #0	; 0x0
    2c8c:	ba000b15 	blt	58e8 <crc16_arm+0x6a0>
    2c90:	e0888004 	add	r8, r8, r4
    2c94:	e08aa004 	add	sl, sl, r4
    2c98:	e51b202c 	ldr	r2, [fp, #-44]
    2c9c:	e0566004 	subs	r6, r6, r4
    2ca0:	e0822004 	add	r2, r2, r4
    2ca4:	e50b202c 	str	r2, [fp, #-44]
    2ca8:	1a000b18 	bne	5910 <crc16_arm+0x6c8>
    2cac:	e51b002c 	ldr	r0, [fp, #-44]
    2cb0:	e91baff0 	ldmdb	fp, {r4, r5, r6, r7, r8, r9, sl, fp, sp, pc}
    2cb4:	00000000 	andeq	r0, r0, r0
    2cb8:	000000f4 	streqd	r0, [r0], -r4
    2cbc:	000001a0 	andeq	r0, r0, r0, lsr #3
    2cc0:	00000100 	andeq	r0, r0, r0, lsl #2
    2cc4:	000002a8 	andeq	r0, r0, r8, lsr #5
    2cc8:	000000fc 	streqd	r0, [r0], -ip
    2ccc:	000000f8 	streqd	r0, [r0], -r8
    2cd0:	00000000 	andeq	r0, r0, r0

00002cd4 <sd_flush_internal_w_buffer>:
    2cd4:	e1a0c00d 	mov	ip, sp
    2cd8:	e92ddff0 	stmdb	sp!, {r4, r5, r6, r7, r8, r9, sl, fp, ip, lr, pc}
    2cdc:	e1a09000 	mov	r9, r0
    2ce0:	e59f0150 	ldr	r0, [pc, #336]	; 2e38 <sd_flush_internal_w_buffer+0x164>
    2ce4:	e24cb004 	sub	fp, ip, #4	; 0x4
    2ce8:	e59f714c 	ldr	r7, [pc, #332]	; 2e3c <sd_flush_internal_w_buffer+0x168>
    2cec:	e24dd004 	sub	sp, sp, #4	; 0x4
    2cf0:	e5998014 	ldr	r8, [r9, #20]
    2cf4:	ebfffffe 	bl	2cf4 <sd_flush_internal_w_buffer+0x20>
    2cf8:	e5973000 	ldr	r3, [r7]
    2cfc:	e3a04000 	mov	r4, #0	; 0x0
    2d00:	e3130001 	tst	r3, #1	; 0x1
    2d04:	0a000b42 	beq	5a14 <crc16_arm+0x7cc>
    2d08:	e59f0130 	ldr	r0, [pc, #304]	; 2e40 <sd_flush_internal_w_buffer+0x16c>
    2d0c:	ebfffffe 	bl	2d0c <sd_flush_internal_w_buffer+0x38>
    2d10:	e5973000 	ldr	r3, [r7]
    2d14:	e59f1128 	ldr	r1, [pc, #296]	; 2e44 <sd_flush_internal_w_buffer+0x170>
    2d18:	e3833001 	orr	r3, r3, #1	; 0x1
    2d1c:	e5873000 	str	r3, [r7]
    2d20:	e59f3120 	ldr	r3, [pc, #288]	; 2e48 <sd_flush_internal_w_buffer+0x174>
    2d24:	e593a000 	ldr	sl, [r3]
    2d28:	e5912000 	ldr	r2, [r1]
    2d2c:	e59f3118 	ldr	r3, [pc, #280]	; 2e4c <sd_flush_internal_w_buffer+0x178>
    2d30:	e0050298 	mul	r5, r8, r2
    2d34:	e3520000 	cmp	r2, #0	; 0x0
    2d38:	e5936000 	ldr	r6, [r3]
    2d3c:	1a000b53 	bne	5a90 <crc16_arm+0x848>
    2d40:	e5973000 	ldr	r3, [r7]
    2d44:	e1a00004 	mov	r0, r4
    2d48:	e3c33001 	bic	r3, r3, #1	; 0x1
    2d4c:	e5873000 	str	r3, [r7]
    2d50:	e91baff0 	ldmdb	fp, {r4, r5, r6, r7, r8, r9, sl, fp, sp, pc}
    2d54:	e5993080 	ldr	r3, [r9, #128]
    2d58:	e3530001 	cmp	r3, #1	; 0x1
    2d5c:	1a000b74 	bne	5b34 <crc16_arm+0x8ec>
    2d60:	e5993000 	ldr	r3, [r9]
    2d64:	e5933014 	ldr	r3, [r3, #20]
    2d68:	e3530000 	cmp	r3, #0	; 0x0
    2d6c:	11550008 	cmpne	r5, r8
    2d70:	9a000b74 	bls	5b48 <crc16_arm+0x900>
    2d74:	e1a00005 	mov	r0, r5
    2d78:	e1a01008 	mov	r1, r8
    2d7c:	ebfffffe 	bl	2d7c <sd_flush_internal_w_buffer+0xa8>
    2d80:	e3500000 	cmp	r0, #0	; 0x0
    2d84:	1a000b74 	bne	5b5c <crc16_arm+0x914>
    2d88:	e1a00005 	mov	r0, r5
    2d8c:	e1a01008 	mov	r1, r8
    2d90:	ebfffffe 	bl	2d90 <sd_flush_internal_w_buffer+0xbc>
    2d94:	e58d0000 	str	r0, [sp]
    2d98:	e1a00009 	mov	r0, r9
    2d9c:	e1a0100a 	mov	r1, sl
    2da0:	e1a02006 	mov	r2, r6
    2da4:	e1a03008 	mov	r3, r8
    2da8:	eb000a0f 	bl	55ec <crc16_arm+0x3a4>
    2dac:	e1500005 	cmp	r0, r5
    2db0:	05973000 	ldreq	r3, [r7]
    2db4:	059f2088 	ldreq	r2, [pc, #136]	; 2e44 <sd_flush_internal_w_buffer+0x170>
    2db8:	01a00004 	moveq	r0, r4
    2dbc:	05824000 	streq	r4, [r2]
    2dc0:	0a000b50 	beq	5b08 <crc16_arm+0x8c0>
    2dc4:	e5973000 	ldr	r3, [r7]
    2dc8:	e3e00000 	mvn	r0, #0	; 0x0
    2dcc:	ea000b50 	b	5b14 <crc16_arm+0x8cc>
    2dd0:	e5973000 	ldr	r3, [r7]
    2dd4:	ea000b50 	b	5b1c <crc16_arm+0x8d4>
    2dd8:	e3550000 	cmp	r5, #0	; 0x0
    2ddc:	0a000b84 	beq	5bf4 <crc16_arm+0x9ac>
    2de0:	e1a00009 	mov	r0, r9
    2de4:	e1a0100a 	mov	r1, sl
    2de8:	e1a02006 	mov	r2, r6
    2dec:	e1550008 	cmp	r5, r8
    2df0:	31a04005 	movcc	r4, r5
    2df4:	21a04008 	movcs	r4, r8
    2df8:	e1a03004 	mov	r3, r4
    2dfc:	eb0009a7 	bl	54a0 <crc16_arm+0x258>
    2e00:	e3500000 	cmp	r0, #0	; 0x0
    2e04:	ba000b72 	blt	5bd4 <crc16_arm+0x98c>
    2e08:	e08aa004 	add	sl, sl, r4
    2e0c:	e0866004 	add	r6, r6, r4
    2e10:	e0555004 	subs	r5, r5, r4
    2e14:	1a000b76 	bne	5bf4 <crc16_arm+0x9ac>
    2e18:	e5973000 	ldr	r3, [r7]
    2e1c:	e3a02000 	mov	r2, #0	; 0x0
    2e20:	e59f101c 	ldr	r1, [pc, #28]	; 2e44 <sd_flush_internal_w_buffer+0x170>
    2e24:	e1a00002 	mov	r0, r2
    2e28:	e5812000 	str	r2, [r1]
    2e2c:	e3c33001 	bic	r3, r3, #1	; 0x1
    2e30:	e5873000 	str	r3, [r7]
    2e34:	e91baff0 	ldmdb	fp, {r4, r5, r6, r7, r8, r9, sl, fp, sp, pc}
    2e38:	000001a0 	andeq	r0, r0, r0, lsr #3
    2e3c:	00000100 	andeq	r0, r0, r0, lsl #2
    2e40:	000002c8 	andeq	r0, r0, r8, asr #5
    2e44:	000000fc 	streqd	r0, [r0], -ip
    2e48:	000000f8 	streqd	r0, [r0], -r8
    2e4c:	000000f4 	streqd	r0, [r0], -r4

00002e50 <sd_flush_internal_w_buffer_>:
    2e50:	e1a0c00d 	mov	ip, sp
    2e54:	e92dd810 	stmdb	sp!, {r4, fp, ip, lr, pc}
    2e58:	e59f403c 	ldr	r4, [pc, #60]	; 2e9c <sd_flush_internal_w_buffer_+0x4c>
    2e5c:	e5943000 	ldr	r3, [r4]
    2e60:	e24cb004 	sub	fp, ip, #4	; 0x4
    2e64:	e3530000 	cmp	r3, #0	; 0x0
    2e68:	1a000ba1 	bne	5cf4 <crc16_arm+0xaac>
    2e6c:	e5943000 	ldr	r3, [r4]
    2e70:	e3833004 	orr	r3, r3, #4	; 0x4
    2e74:	e5843000 	str	r3, [r4]
    2e78:	eb000b33 	bl	5b4c <crc16_arm+0x904>
    2e7c:	e5943000 	ldr	r3, [r4]
    2e80:	e3c33004 	bic	r3, r3, #4	; 0x4
    2e84:	e5843000 	str	r3, [r4]
    2e88:	e91ba810 	ldmdb	fp, {r4, fp, sp, pc}
    2e8c:	e59f000c 	ldr	r0, [pc, #12]	; 2ea0 <sd_flush_internal_w_buffer_+0x50>
    2e90:	ebfffffe 	bl	2e90 <sd_flush_internal_w_buffer_+0x40>
    2e94:	e3e00000 	mvn	r0, #0	; 0x0
    2e98:	e91ba810 	ldmdb	fp, {r4, fp, sp, pc}
    2e9c:	00000100 	andeq	r0, r0, r0, lsl #2
    2ea0:	000002e8 	andeq	r0, r0, r8, ror #5

00002ea4 <sd_fire_w_buffer_flush_timer>:
    2ea4:	e1a0c00d 	mov	ip, sp
    2ea8:	e92dd810 	stmdb	sp!, {r4, fp, ip, lr, pc}
    2eac:	e59f4038 	ldr	r4, [pc, #56]	; 2eec <sd_fire_w_buffer_flush_timer+0x48>
    2eb0:	e5943000 	ldr	r3, [r4]
    2eb4:	e24cb004 	sub	fp, ip, #4	; 0x4
    2eb8:	e3530000 	cmp	r3, #0	; 0x0
    2ebc:	0a000bb1 	beq	5d88 <crc16_arm+0xb40>
    2ec0:	e59f0028 	ldr	r0, [pc, #40]	; 2ef0 <sd_fire_w_buffer_flush_timer+0x4c>
    2ec4:	ebfffffe 	bl	2ec4 <sd_fire_w_buffer_flush_timer+0x20>
    2ec8:	e91ba810 	ldmdb	fp, {r4, fp, sp, pc}
    2ecc:	e5943000 	ldr	r3, [r4]
    2ed0:	e3833008 	orr	r3, r3, #8	; 0x8
    2ed4:	e5843000 	str	r3, [r4]
    2ed8:	eb000b33 	bl	5bac <crc16_arm+0x964>
    2edc:	e5943000 	ldr	r3, [r4]
    2ee0:	e3c33008 	bic	r3, r3, #8	; 0x8
    2ee4:	e5843000 	str	r3, [r4]
    2ee8:	e91ba810 	ldmdb	fp, {r4, fp, sp, pc}
    2eec:	00000100 	andeq	r0, r0, r0, lsl #2
    2ef0:	00000308 	andeq	r0, r0, r8, lsl #6

00002ef4 <sd_resetbus>:
    2ef4:	e1a0c00d 	mov	ip, sp
    2ef8:	e92dd830 	stmdb	sp!, {r4, r5, fp, ip, lr, pc}
    2efc:	e24cb004 	sub	fp, ip, #4	; 0x4
    2f00:	e1a04000 	mov	r4, r0
    2f04:	e24dd014 	sub	sp, sp, #20	; 0x14
    2f08:	e1a0e00f 	mov	lr, pc
    2f0c:	e594f004 	ldr	pc, [r4, #4]
    2f10:	e1a0e00f 	mov	lr, pc
    2f14:	e594f000 	ldr	pc, [r4]
    2f18:	e3a00000 	mov	r0, #0	; 0x0
    2f1c:	e1a01000 	mov	r1, r0
    2f20:	e1a0e00f 	mov	lr, pc
    2f24:	e594f01c 	ldr	pc, [r4, #28]
    2f28:	e3a03000 	mov	r3, #0	; 0x0
    2f2c:	e2833001 	add	r3, r3, #1	; 0x1
    2f30:	e3530a01 	cmp	r3, #4096	; 0x1000
    2f34:	ba000bc9 	blt	5e60 <crc16_arm+0xc18>
    2f38:	e3a00037 	mov	r0, #55	; 0x37
    2f3c:	e3a01000 	mov	r1, #0	; 0x0
    2f40:	e1a0e00f 	mov	lr, pc
    2f44:	e594f01c 	ldr	pc, [r4, #28]
    2f48:	e24b5028 	sub	r5, fp, #40	; 0x28
    2f4c:	e1a00005 	mov	r0, r5
    2f50:	e1a0e00f 	mov	lr, pc
    2f54:	e594f028 	ldr	pc, [r4, #40]
    2f58:	e55b3025 	ldrb	r3, [fp, #-37]
    2f5c:	e2133004 	ands	r3, r3, #4	; 0x4
    2f60:	0a000bdc 	beq	5ed8 <crc16_arm+0xc90>
    2f64:	e3a00001 	mov	r0, #1	; 0x1
    2f68:	e3a01000 	mov	r1, #0	; 0x0
    2f6c:	e1a0e00f 	mov	lr, pc
    2f70:	e594f01c 	ldr	pc, [r4, #28]
    2f74:	ea000bed 	b	5f30 <crc16_arm+0xce8>
    2f78:	e2833001 	add	r3, r3, #1	; 0x1
    2f7c:	e3530a01 	cmp	r3, #4096	; 0x1000
    2f80:	ba000bdc 	blt	5ef8 <crc16_arm+0xcb0>
    2f84:	e3a000a9 	mov	r0, #169	; 0xa9
    2f88:	e3a01000 	mov	r1, #0	; 0x0
    2f8c:	e1a0e00f 	mov	lr, pc
    2f90:	e594f01c 	ldr	pc, [r4, #28]
    2f94:	e1a00005 	mov	r0, r5
    2f98:	e1a0e00f 	mov	lr, pc
    2f9c:	e594f028 	ldr	pc, [r4, #40]
    2fa0:	e55b3025 	ldrb	r3, [fp, #-37]
    2fa4:	e3130004 	tst	r3, #4	; 0x4
    2fa8:	0a000bed 	beq	5f64 <crc16_arm+0xd1c>
    2fac:	e3a00001 	mov	r0, #1	; 0x1
    2fb0:	e3a01000 	mov	r1, #0	; 0x0
    2fb4:	e1a0e00f 	mov	lr, pc
    2fb8:	e594f01c 	ldr	pc, [r4, #28]
    2fbc:	e3a03000 	mov	r3, #0	; 0x0
    2fc0:	e2833001 	add	r3, r3, #1	; 0x1
    2fc4:	e3530a01 	cmp	r3, #4096	; 0x1000
    2fc8:	ba000bee 	blt	5f88 <crc16_arm+0xd40>
    2fcc:	e3a00000 	mov	r0, #0	; 0x0
    2fd0:	e91ba830 	ldmdb	fp, {r4, r5, fp, sp, pc}

00002fd4 <sd_initbus>:
    2fd4:	e1a0c00d 	mov	ip, sp
    2fd8:	e92dd870 	stmdb	sp!, {r4, r5, r6, fp, ip, lr, pc}
    2fdc:	e24cb004 	sub	fp, ip, #4	; 0x4
    2fe0:	e59f6170 	ldr	r6, [pc, #368]	; 3158 <sd_initbus+0x184>
    2fe4:	e24dd018 	sub	sp, sp, #24	; 0x18
    2fe8:	e5964000 	ldr	r4, [r6]
    2fec:	e1a05000 	mov	r5, r0
    2ff0:	e3540000 	cmp	r4, #0	; 0x0
    2ff4:	1a000c02 	bne	6004 <crc16_arm+0xdbc>
    2ff8:	e3a00a02 	mov	r0, #8192	; 0x2000
    2ffc:	e3a01e1f 	mov	r1, #496	; 0x1f0
    3000:	ebfffffe 	bl	3000 <sd_initbus+0x2c>
    3004:	e59f3150 	ldr	r3, [pc, #336]	; 315c <sd_initbus+0x188>
    3008:	e5860000 	str	r0, [r6]
    300c:	e5834000 	str	r4, [r3]
    3010:	e59f6148 	ldr	r6, [pc, #328]	; 3160 <sd_initbus+0x18c>
    3014:	e5964000 	ldr	r4, [r6]
    3018:	e3540000 	cmp	r4, #0	; 0x0
    301c:	1a000c14 	bne	6074 <crc16_arm+0xe2c>
    3020:	e3a00901 	mov	r0, #16384	; 0x4000
    3024:	e3a01e1f 	mov	r1, #496	; 0x1f0
    3028:	ebfffffe 	bl	3028 <sd_initbus+0x54>
    302c:	e5860000 	str	r0, [r6]
    3030:	e59f312c 	ldr	r3, [pc, #300]	; 3164 <sd_initbus+0x190>
    3034:	e59f212c 	ldr	r2, [pc, #300]	; 3168 <sd_initbus+0x194>
    3038:	e5834000 	str	r4, [r3]
    303c:	e59f3128 	ldr	r3, [pc, #296]	; 316c <sd_initbus+0x198>
    3040:	e5834004 	str	r4, [r3, #4]
    3044:	e5834000 	str	r4, [r3]
    3048:	e5832010 	str	r2, [r3, #16]
    304c:	e5834008 	str	r4, [r3, #8]
    3050:	e59f3118 	ldr	r3, [pc, #280]	; 3170 <sd_initbus+0x19c>
    3054:	e5834000 	str	r4, [r3]
    3058:	e1a0e00f 	mov	lr, pc
    305c:	e595f000 	ldr	pc, [r5]
    3060:	e3a00000 	mov	r0, #0	; 0x0
    3064:	e1a01000 	mov	r1, r0
    3068:	e1a0e00f 	mov	lr, pc
    306c:	e595f00c 	ldr	pc, [r5, #12]
    3070:	e3a00000 	mov	r0, #0	; 0x0
    3074:	e1a01000 	mov	r1, r0
    3078:	e1a0e00f 	mov	lr, pc
    307c:	e595f01c 	ldr	pc, [r5, #28]
    3080:	e3a03000 	mov	r3, #0	; 0x0
    3084:	ea000c22 	b	6114 <crc16_arm+0xecc>
    3088:	e51b3030 	ldr	r3, [fp, #-48]
    308c:	e2833001 	add	r3, r3, #1	; 0x1
    3090:	e50b3030 	str	r3, [fp, #-48]
    3094:	e51b3030 	ldr	r3, [fp, #-48]
    3098:	e3530a01 	cmp	r3, #4096	; 0x1000
    309c:	ba000c20 	blt	6124 <crc16_arm+0xedc>
    30a0:	e3a00037 	mov	r0, #55	; 0x37
    30a4:	e3a01000 	mov	r1, #0	; 0x0
    30a8:	e1a0e00f 	mov	lr, pc
    30ac:	e595f01c 	ldr	pc, [r5, #28]
    30b0:	e24b402c 	sub	r4, fp, #44	; 0x2c
    30b4:	e1a00004 	mov	r0, r4
    30b8:	e1a0e00f 	mov	lr, pc
    30bc:	e595f028 	ldr	pc, [r5, #40]
    30c0:	e55b3029 	ldrb	r3, [fp, #-41]
    30c4:	e2133004 	ands	r3, r3, #4	; 0x4
    30c8:	0a000c38 	beq	61b0 <crc16_arm+0xf68>
    30cc:	e3a00001 	mov	r0, #1	; 0x1
    30d0:	e3a01000 	mov	r1, #0	; 0x0
    30d4:	e1a0e00f 	mov	lr, pc
    30d8:	e595f01c 	ldr	pc, [r5, #28]
    30dc:	ea000c4a 	b	620c <crc16_arm+0xfc4>
    30e0:	e51b3030 	ldr	r3, [fp, #-48]
    30e4:	e2833001 	add	r3, r3, #1	; 0x1
    30e8:	e50b3030 	str	r3, [fp, #-48]
    30ec:	e51b3030 	ldr	r3, [fp, #-48]
    30f0:	e3530a01 	cmp	r3, #4096	; 0x1000
    30f4:	ba000c36 	blt	61d4 <crc16_arm+0xf8c>
    30f8:	e3a000a9 	mov	r0, #169	; 0xa9
    30fc:	e3a01000 	mov	r1, #0	; 0x0
    3100:	e1a0e00f 	mov	lr, pc
    3104:	e595f01c 	ldr	pc, [r5, #28]
    3108:	e1a00004 	mov	r0, r4
    310c:	e1a0e00f 	mov	lr, pc
    3110:	e595f028 	ldr	pc, [r5, #40]
    3114:	e55b3029 	ldrb	r3, [fp, #-41]
    3118:	e3130004 	tst	r3, #4	; 0x4
    311c:	0a000c4a 	beq	624c <crc16_arm+0x1004>
    3120:	e3a00001 	mov	r0, #1	; 0x1
    3124:	e3a01000 	mov	r1, #0	; 0x0
    3128:	e1a0e00f 	mov	lr, pc
    312c:	e595f01c 	ldr	pc, [r5, #28]
    3130:	e3a03000 	mov	r3, #0	; 0x0
    3134:	ea000c4e 	b	6274 <crc16_arm+0x102c>
    3138:	e51b3030 	ldr	r3, [fp, #-48]
    313c:	e2833001 	add	r3, r3, #1	; 0x1
    3140:	e50b3030 	str	r3, [fp, #-48]
    3144:	e51b3030 	ldr	r3, [fp, #-48]
    3148:	e3530a01 	cmp	r3, #4096	; 0x1000
    314c:	ba000c4c 	blt	6284 <crc16_arm+0x103c>
    3150:	e3a00000 	mov	r0, #0	; 0x0
    3154:	e91ba870 	ldmdb	fp, {r4, r5, r6, fp, sp, pc}
	...
    3160:	000000f4 	streqd	r0, [r0], -r4
    3164:	000000fc 	streqd	r0, [r0], -ip
    3168:	00002ea4 	andeq	r2, r0, r4, lsr #29
    316c:	000001a0 	andeq	r0, r0, r0, lsr #3
    3170:	00000100 	andeq	r0, r0, r0, lsl #2

00003174 <sd_quitbus>:
    3174:	e1a0c00d 	mov	ip, sp
    3178:	e92dd830 	stmdb	sp!, {r4, r5, fp, ip, lr, pc}
    317c:	e24cb004 	sub	fp, ip, #4	; 0x4
    3180:	e1a04000 	mov	r4, r0
    3184:	e1a0e00f 	mov	lr, pc
    3188:	e594f008 	ldr	pc, [r4, #8]
    318c:	e3a00000 	mov	r0, #0	; 0x0
    3190:	e1a01000 	mov	r1, r0
    3194:	e1a0e00f 	mov	lr, pc
    3198:	e594f00c 	ldr	pc, [r4, #12]
    319c:	e3a00000 	mov	r0, #0	; 0x0
    31a0:	e1a01000 	mov	r1, r0
    31a4:	e1a0e00f 	mov	lr, pc
    31a8:	e594f01c 	ldr	pc, [r4, #28]
    31ac:	e59f5060 	ldr	r5, [pc, #96]	; 3214 <sd_quitbus+0xa0>
    31b0:	e1a0e00f 	mov	lr, pc
    31b4:	e594f004 	ldr	pc, [r4, #4]
    31b8:	e5950000 	ldr	r0, [r5]
    31bc:	e3500000 	cmp	r0, #0	; 0x0
    31c0:	0a000c74 	beq	6398 <crc16_arm+0x1150>
    31c4:	ebfffffe 	bl	31c4 <sd_quitbus+0x50>
    31c8:	e59f3048 	ldr	r3, [pc, #72]	; 3218 <sd_quitbus+0xa4>
    31cc:	e3a02000 	mov	r2, #0	; 0x0
    31d0:	e5852000 	str	r2, [r5]
    31d4:	e5832000 	str	r2, [r3]
    31d8:	e59f503c 	ldr	r5, [pc, #60]	; 321c <sd_quitbus+0xa8>
    31dc:	e5950000 	ldr	r0, [r5]
    31e0:	e3500000 	cmp	r0, #0	; 0x0
    31e4:	0a000c81 	beq	63f0 <crc16_arm+0x11a8>
    31e8:	ebfffffe 	bl	31e8 <sd_quitbus+0x74>
    31ec:	e3a04000 	mov	r4, #0	; 0x0
    31f0:	e5854000 	str	r4, [r5]
    31f4:	e59f3024 	ldr	r3, [pc, #36]	; 3220 <sd_quitbus+0xac>
    31f8:	e59f0024 	ldr	r0, [pc, #36]	; 3224 <sd_quitbus+0xb0>
    31fc:	e5834000 	str	r4, [r3]
    3200:	ebfffffe 	bl	3200 <sd_quitbus+0x8c>
    3204:	e59f301c 	ldr	r3, [pc, #28]	; 3228 <sd_quitbus+0xb4>
    3208:	e5834000 	str	r4, [r3]
    320c:	e3a00000 	mov	r0, #0	; 0x0
    3210:	e91ba830 	ldmdb	fp, {r4, r5, fp, sp, pc}
	...
    321c:	000000f4 	streqd	r0, [r0], -r4
    3220:	000000fc 	streqd	r0, [r0], -ip
    3224:	000001a0 	andeq	r0, r0, r0, lsr #3
    3228:	00000100 	andeq	r0, r0, r0, lsl #2

0000322c <sd_suspend>:
    322c:	e1a0c00d 	mov	ip, sp
    3230:	e92dd810 	stmdb	sp!, {r4, fp, ip, lr, pc}
    3234:	e24cb004 	sub	fp, ip, #4	; 0x4
    3238:	e1a04000 	mov	r4, r0
    323c:	e3a00000 	mov	r0, #0	; 0x0
    3240:	e1a0e00f 	mov	lr, pc
    3244:	e594f038 	ldr	pc, [r4, #56]
    3248:	e1a0e00f 	mov	lr, pc
    324c:	e594f008 	ldr	pc, [r4, #8]
    3250:	e3a00000 	mov	r0, #0	; 0x0
    3254:	e1a01000 	mov	r1, r0
    3258:	e1a0e00f 	mov	lr, pc
    325c:	e594f00c 	ldr	pc, [r4, #12]
    3260:	e3a00000 	mov	r0, #0	; 0x0
    3264:	e1a01000 	mov	r1, r0
    3268:	e1a0e00f 	mov	lr, pc
    326c:	e594f01c 	ldr	pc, [r4, #28]
    3270:	e1a0e00f 	mov	lr, pc
    3274:	e594f004 	ldr	pc, [r4, #4]
    3278:	e91ba810 	ldmdb	fp, {r4, fp, sp, pc}

0000327c <sd_resume>:
    327c:	e1a0c00d 	mov	ip, sp
    3280:	e92dd800 	stmdb	sp!, {fp, ip, lr, pc}
    3284:	e24cb004 	sub	fp, ip, #4	; 0x4
    3288:	e1a0e00f 	mov	lr, pc
    328c:	e590f03c 	ldr	pc, [r0, #60]
    3290:	e91ba800 	ldmdb	fp, {fp, sp, pc}

00003294 <sd_detect_insert>:
    3294:	e1a0c00d 	mov	ip, sp
    3298:	e92ddff0 	stmdb	sp!, {r4, r5, r6, r7, r8, r9, sl, fp, ip, lr, pc}
    329c:	e24cb004 	sub	fp, ip, #4	; 0x4
    32a0:	e1a07000 	mov	r7, r0
    32a4:	e3a01000 	mov	r1, #0	; 0x0
    32a8:	e24dd00c 	sub	sp, sp, #12	; 0xc
    32ac:	e50b1034 	str	r1, [fp, #-52]
    32b0:	e1a08001 	mov	r8, r1
    32b4:	e50b1030 	str	r1, [fp, #-48]
    32b8:	e59fa1a4 	ldr	sl, [pc, #420]	; 3464 <sd_detect_insert+0x1d0>
    32bc:	e088900a 	add	r9, r8, sl
    32c0:	e5d90008 	ldrb	r0, [r9, #8]
    32c4:	e3500000 	cmp	r0, #0	; 0x0
    32c8:	1a000d08 	bne	66f0 <crc16_arm+0x14a8>
    32cc:	e1a01000 	mov	r1, r0
    32d0:	e1a0e00f 	mov	lr, pc
    32d4:	e597f00c 	ldr	pc, [r7, #12]
    32d8:	e59f2188 	ldr	r2, [pc, #392]	; 3468 <sd_detect_insert+0x1d4>
    32dc:	e1a00007 	mov	r0, r7
    32e0:	e0885002 	add	r5, r8, r2
    32e4:	e2851070 	add	r1, r5, #112	; 0x70
    32e8:	eb000777 	bl	50cc <sd_read_multiple_block+0xe8>
    32ec:	e3500000 	cmp	r0, #0	; 0x0
    32f0:	0a000d0e 	beq	6730 <crc16_arm+0x14e8>
    32f4:	e1a00007 	mov	r0, r7
    32f8:	e5952070 	ldr	r2, [r5, #112]
    32fc:	e2851014 	add	r1, r5, #20	; 0x14
    3300:	eb0007af 	bl	51c4 <mmcdsd_gencheckcard+0x54>
    3304:	e3500000 	cmp	r0, #0	; 0x0
    3308:	e50b002c 	str	r0, [fp, #-44]
    330c:	1a000d08 	bne	6734 <crc16_arm+0x14ec>
    3310:	e51b3030 	ldr	r3, [fp, #-48]
    3314:	e1a00007 	mov	r0, r7
    3318:	e2836001 	add	r6, r3, #1	; 0x1
    331c:	e1a01006 	mov	r1, r6
    3320:	eb000855 	bl	547c <crc16_arm+0x234>
    3324:	e3500000 	cmp	r0, #0	; 0x0
    3328:	e50b002c 	str	r0, [fp, #-44]
    332c:	1a000d08 	bne	6754 <crc16_arm+0x150c>
    3330:	e1a00007 	mov	r0, r7
    3334:	e1a01006 	mov	r1, r6
    3338:	e2854048 	add	r4, r5, #72	; 0x48
    333c:	e5953070 	ldr	r3, [r5, #112]
    3340:	e1a02004 	mov	r2, r4
    3344:	eb00085a 	bl	54b4 <crc16_arm+0x26c>
    3348:	e3500000 	cmp	r0, #0	; 0x0
    334c:	e50b002c 	str	r0, [fp, #-44]
    3350:	1a000d08 	bne	6778 <crc16_arm+0x1530>
    3354:	e3a01001 	mov	r1, #1	; 0x1
    3358:	e5c91008 	strb	r1, [r9, #8]
    335c:	e28ac00c 	add	ip, sl, #12	; 0xc
    3360:	e78c6008 	str	r6, [ip, r8]
    3364:	e78a7008 	str	r7, [sl, r8]
    3368:	e59f20fc 	ldr	r2, [pc, #252]	; 346c <sd_detect_insert+0x1d8>
    336c:	e28a3004 	add	r3, sl, #4	; 0x4
    3370:	e7832008 	str	r2, [r3, r8]
    3374:	e5d43008 	ldrb	r3, [r4, #8]
    3378:	e59f20e8 	ldr	r2, [pc, #232]	; 3468 <sd_detect_insert+0x1d4>
    337c:	e1a03311 	mov	r3, r1, lsl r3
    3380:	e7883002 	str	r3, [r8, r2]
    3384:	e5d4301c 	ldrb	r3, [r4, #28]
    3388:	e1a01311 	mov	r1, r1, lsl r3
    338c:	e5851004 	str	r1, [r5, #4]
    3390:	e1d420be 	ldrh	r2, [r4, #14]
    3394:	e5d43014 	ldrb	r3, [r4, #20]
    3398:	e2822001 	add	r2, r2, #1	; 0x1
    339c:	e2833002 	add	r3, r3, #2	; 0x2
    33a0:	e1a02312 	mov	r2, r2, lsl r3
    33a4:	e5852008 	str	r2, [r5, #8]
    33a8:	e1d430be 	ldrh	r3, [r4, #14]
    33ac:	e5d42014 	ldrb	r2, [r4, #20]
    33b0:	e5d41008 	ldrb	r1, [r4, #8]
    33b4:	e2833001 	add	r3, r3, #1	; 0x1
    33b8:	e2822002 	add	r2, r2, #2	; 0x2
    33bc:	e1a03213 	mov	r3, r3, lsl r2
    33c0:	e1a03113 	mov	r3, r3, lsl r1
    33c4:	e585300c 	str	r3, [r5, #12]
    33c8:	e5d43004 	ldrb	r3, [r4, #4]
    33cc:	e59f109c 	ldr	r1, [pc, #156]	; 3470 <sd_detect_insert+0x1dc>
    33d0:	e2032007 	and	r2, r3, #7	; 0x7
    33d4:	e7911102 	ldr	r1, [r1, r2, lsl #2]
    33d8:	e1a031a3 	mov	r3, r3, lsr #3
    33dc:	e59f2090 	ldr	r2, [pc, #144]	; 3474 <sd_detect_insert+0x1e0>
    33e0:	e203300f 	and	r3, r3, #15	; 0xf
    33e4:	e7d23003 	ldrb	r3, [r2, r3]
    33e8:	e59f2088 	ldr	r2, [pc, #136]	; 3478 <sd_detect_insert+0x1e4>
    33ec:	e0030391 	mul	r3, r1, r3
    33f0:	e0831392 	umull	r1, r3, r2, r3
    33f4:	e1a031a3 	mov	r3, r3, lsr #3
    33f8:	e5853010 	str	r3, [r5, #16]
    33fc:	e51b2034 	ldr	r2, [fp, #-52]
    3400:	e2822001 	add	r2, r2, #1	; 0x1
    3404:	e50b2034 	str	r2, [fp, #-52]
    3408:	e28a3080 	add	r3, sl, #128	; 0x80
    340c:	e7933008 	ldr	r3, [r3, r8]
    3410:	e3530000 	cmp	r3, #0	; 0x0
    3414:	1a000d08 	bne	683c <crc16_arm+0x15f4>
    3418:	e1a00007 	mov	r0, r7
    341c:	e79c1008 	ldr	r1, [ip, r8]
    3420:	e24b202c 	sub	r2, fp, #44	; 0x2c
    3424:	eb00092f 	bl	58e8 <crc16_arm+0x6a0>
    3428:	e51b3030 	ldr	r3, [fp, #-48]
    342c:	e2888090 	add	r8, r8, #144	; 0x90
    3430:	e2833001 	add	r3, r3, #1	; 0x1
    3434:	e3530000 	cmp	r3, #0	; 0x0
    3438:	e50b3030 	str	r3, [fp, #-48]
    343c:	da000cac 	ble	66f4 <crc16_arm+0x14ac>
    3440:	e59f3034 	ldr	r3, [pc, #52]	; 347c <sd_detect_insert+0x1e8>
    3444:	e3a02000 	mov	r2, #0	; 0x0
    3448:	e5832000 	str	r2, [r3]
    344c:	e59f302c 	ldr	r3, [pc, #44]	; 3480 <sd_detect_insert+0x1ec>
    3450:	e5832000 	str	r2, [r3]
    3454:	e59f3028 	ldr	r3, [pc, #40]	; 3484 <sd_detect_insert+0x1f0>
    3458:	e51b0034 	ldr	r0, [fp, #-52]
    345c:	e5832000 	str	r2, [r3]
    3460:	e91baff0 	ldmdb	fp, {r4, r5, r6, r7, r8, r9, sl, fp, sp, pc}
    3464:	00000000 	andeq	r0, r0, r0
    3468:	00000010 	andeq	r0, r0, r0, lsl r0
    346c:	00000000 	andeq	r0, r0, r0
    3470:	00000104 	andeq	r0, r0, r4, lsl #2
    3474:	00000124 	andeq	r0, r0, r4, lsr #2
    3478:	cccccccd 	stcgtl	12, cr12, [ip], {205}
    347c:	00000000 	andeq	r0, r0, r0
    3480:	000000fc 	streqd	r0, [r0], -ip
    3484:	00000100 	andeq	r0, r0, r0, lsl #2

00003488 <sd_detect_removal>:
    3488:	e1a0c00d 	mov	ip, sp
    348c:	e92dddf0 	stmdb	sp!, {r4, r5, r6, r7, r8, sl, fp, ip, lr, pc}
    3490:	e24cb004 	sub	fp, ip, #4	; 0x4
    3494:	e1a07000 	mov	r7, r0
    3498:	e3a0a000 	mov	sl, #0	; 0x0
    349c:	e1a0500a 	mov	r5, sl
    34a0:	e1a0800a 	mov	r8, sl
    34a4:	e24dd004 	sub	sp, sp, #4	; 0x4
    34a8:	e59f60ac 	ldr	r6, [pc, #172]	; 355c <sd_detect_removal+0xd4>
    34ac:	e7963005 	ldr	r3, [r6, r5]
    34b0:	e1530007 	cmp	r3, r7
    34b4:	1a000d42 	bne	69c4 <crc16_arm+0x177c>
    34b8:	e3a00000 	mov	r0, #0	; 0x0
    34bc:	e1a01000 	mov	r1, r0
    34c0:	e1a0e00f 	mov	lr, pc
    34c4:	e597f00c 	ldr	pc, [r7, #12]
    34c8:	e0854006 	add	r4, r5, r6
    34cc:	e5d43008 	ldrb	r3, [r4, #8]
    34d0:	e3530000 	cmp	r3, #0	; 0x0
    34d4:	0a000d42 	beq	69e4 <crc16_arm+0x179c>
    34d8:	e286600c 	add	r6, r6, #12	; 0xc
    34dc:	e7961005 	ldr	r1, [r6, r5]
    34e0:	e3510000 	cmp	r1, #0	; 0x0
    34e4:	da000d42 	ble	69f4 <crc16_arm+0x17ac>
    34e8:	e1a00007 	mov	r0, r7
    34ec:	e24b2028 	sub	r2, fp, #40	; 0x28
    34f0:	eb00092f 	bl	59b4 <crc16_arm+0x76c>
    34f4:	e3500000 	cmp	r0, #0	; 0x0
    34f8:	13a03000 	movne	r3, #0	; 0x0
    34fc:	15c43008 	strneb	r3, [r4, #8]
    3500:	128aa001 	addne	sl, sl, #1	; 0x1
    3504:	17863005 	strne	r3, [r6, r5]
    3508:	05c40008 	streqb	r0, [r4, #8]
    350c:	07860005 	streq	r0, [r6, r5]
    3510:	e2855090 	add	r5, r5, #144	; 0x90
    3514:	e2588001 	subs	r8, r8, #1	; 0x1
    3518:	5a000d28 	bpl	69c0 <crc16_arm+0x1778>
    351c:	e59f503c 	ldr	r5, [pc, #60]	; 3560 <sd_detect_removal+0xd8>
    3520:	e59f303c 	ldr	r3, [pc, #60]	; 3564 <sd_detect_removal+0xdc>
    3524:	e5952000 	ldr	r2, [r5]
    3528:	e3a04000 	mov	r4, #0	; 0x0
    352c:	e5834000 	str	r4, [r3]
    3530:	e1520004 	cmp	r2, r4
    3534:	0a000d50 	beq	6a7c <crc16_arm+0x1834>
    3538:	e59f3028 	ldr	r3, [pc, #40]	; 3568 <sd_detect_removal+0xe0>
    353c:	e59f0028 	ldr	r0, [pc, #40]	; 356c <sd_detect_removal+0xe4>
    3540:	e5931000 	ldr	r1, [r3]
    3544:	ebfffffe 	bl	3544 <sd_detect_removal+0xbc>
    3548:	e5854000 	str	r4, [r5]
    354c:	e59f301c 	ldr	r3, [pc, #28]	; 3570 <sd_detect_removal+0xe8>
    3550:	e1a0000a 	mov	r0, sl
    3554:	e5834000 	str	r4, [r3]
    3558:	e91badf0 	ldmdb	fp, {r4, r5, r6, r7, r8, sl, fp, sp, pc}
    355c:	00000000 	andeq	r0, r0, r0
    3560:	000000fc 	streqd	r0, [r0], -ip
    3564:	00000000 	andeq	r0, r0, r0
    3568:	000000f8 	streqd	r0, [r0], -r8
    356c:	00000324 	andeq	r0, r0, r4, lsr #6
    3570:	00000100 	andeq	r0, r0, r0, lsl #2

00003574 <collie_sd_reg_open>:
    3574:	e1a0c00d 	mov	ip, sp
    3578:	e92dd830 	stmdb	sp!, {r4, r5, fp, ip, lr, pc}
    357c:	e59f1158 	ldr	r1, [pc, #344]	; 36dc <collie_sd_reg_open+0x168>
    3580:	e1d130b0 	ldrh	r3, [r1]
    3584:	e59f2154 	ldr	r2, [pc, #340]	; 36e0 <collie_sd_reg_open+0x16c>
    3588:	e3833a02 	orr	r3, r3, #8192	; 0x2000
    358c:	e1c130b0 	strh	r3, [r1]
    3590:	e1d230b0 	ldrh	r3, [r2]
    3594:	e3833a02 	orr	r3, r3, #8192	; 0x2000
    3598:	e1c230b0 	strh	r3, [r2]
    359c:	e1d130b0 	ldrh	r3, [r1]
    35a0:	e3833901 	orr	r3, r3, #16384	; 0x4000
    35a4:	e1c130b0 	strh	r3, [r1]
    35a8:	e1d230b0 	ldrh	r3, [r2]
    35ac:	e3833901 	orr	r3, r3, #16384	; 0x4000
    35b0:	e1c230b0 	strh	r3, [r2]
    35b4:	e1d130b0 	ldrh	r3, [r1]
    35b8:	e3e00902 	mvn	r0, #32768	; 0x8000
    35bc:	e0033000 	and	r3, r3, r0
    35c0:	e1c130b0 	strh	r3, [r1]
    35c4:	e1d230b0 	ldrh	r3, [r2]
    35c8:	e59f5114 	ldr	r5, [pc, #276]	; 36e4 <collie_sd_reg_open+0x170>
    35cc:	e0033000 	and	r3, r3, r0
    35d0:	e1c230b0 	strh	r3, [r2]
    35d4:	e59f210c 	ldr	r2, [pc, #268]	; 36e8 <collie_sd_reg_open+0x174>
    35d8:	e24cb004 	sub	fp, ip, #4	; 0x4
    35dc:	e1d510b0 	ldrh	r1, [r5]
    35e0:	e3a03001 	mov	r3, #1	; 0x1
    35e4:	e5823000 	str	r3, [r2]
    35e8:	e3110a02 	tst	r1, #8192	; 0x2000
    35ec:	1a000d80 	bne	6bf4 <crc16_arm+0x19ac>
    35f0:	e59f20f4 	ldr	r2, [pc, #244]	; 36ec <collie_sd_reg_open+0x178>
    35f4:	e1d230b0 	ldrh	r3, [r2]
    35f8:	e59f00f0 	ldr	r0, [pc, #240]	; 36f0 <collie_sd_reg_open+0x17c>
    35fc:	e3833902 	orr	r3, r3, #32768	; 0x8000
    3600:	e1c230b0 	strh	r3, [r2]
    3604:	ebfffffe 	bl	3604 <collie_sd_reg_open+0x90>
    3608:	e59f20e4 	ldr	r2, [pc, #228]	; 36f4 <collie_sd_reg_open+0x180>
    360c:	e3a03002 	mov	r3, #2	; 0x2
    3610:	e59f00e0 	ldr	r0, [pc, #224]	; 36f8 <collie_sd_reg_open+0x184>
    3614:	e3a01004 	mov	r1, #4	; 0x4
    3618:	e5c23000 	strb	r3, [r2]
    361c:	e1a03183 	mov	r3, r3, lsl #3
    3620:	e3833b1b 	orr	r3, r3, #27648	; 0x6c00
    3624:	e1813003 	orr	r3, r1, r3
    3628:	e1c030b0 	strh	r3, [r0]
    362c:	e59f30c8 	ldr	r3, [pc, #200]	; 36fc <collie_sd_reg_open+0x188>
    3630:	e1d520b0 	ldrh	r2, [r5]
    3634:	e5c31000 	strb	r1, [r3]
    3638:	e3120a02 	tst	r2, #8192	; 0x2000
    363c:	1a000d94 	bne	6c94 <crc16_arm+0x1a4c>
    3640:	e1d030b0 	ldrh	r3, [r0]
    3644:	e3833080 	orr	r3, r3, #128	; 0x80
    3648:	e1c030b0 	strh	r3, [r0]
    364c:	e1d030b0 	ldrh	r3, [r0]
    3650:	e3833040 	orr	r3, r3, #64	; 0x40
    3654:	e1c030b0 	strh	r3, [r0]
    3658:	e59f40a0 	ldr	r4, [pc, #160]	; 3700 <collie_sd_reg_open+0x18c>
    365c:	e3a03040 	mov	r3, #64	; 0x40
    3660:	e1c430b0 	strh	r3, [r4]
    3664:	e1d430b0 	ldrh	r3, [r4]
    3668:	e3a000c8 	mov	r0, #200	; 0xc8
    366c:	e3833080 	orr	r3, r3, #128	; 0x80
    3670:	e1c430b0 	strh	r3, [r4]
    3674:	ebfffffe 	bl	3674 <collie_sd_reg_open+0x100>
    3678:	e1d430b0 	ldrh	r3, [r4]
    367c:	e1c430b0 	strh	r3, [r4]
    3680:	e1d430b0 	ldrh	r3, [r4]
    3684:	e3833001 	orr	r3, r3, #1	; 0x1
    3688:	e1c430b0 	strh	r3, [r4]
    368c:	e1d530b0 	ldrh	r3, [r5]
    3690:	e3130a02 	tst	r3, #8192	; 0x2000
    3694:	1a000da7 	bne	6d38 <crc16_arm+0x1af0>
    3698:	e59f0064 	ldr	r0, [pc, #100]	; 3704 <collie_sd_reg_open+0x190>
    369c:	e3a0100a 	mov	r1, #10	; 0xa
    36a0:	eb001109 	bl	7acc <crc16_arm+0x2884>
    36a4:	e1d430b0 	ldrh	r3, [r4]
    36a8:	e59f2058 	ldr	r2, [pc, #88]	; 3708 <collie_sd_reg_open+0x194>
    36ac:	e3c33040 	bic	r3, r3, #64	; 0x40
    36b0:	e1a03803 	mov	r3, r3, lsl #16
    36b4:	e1a03823 	mov	r3, r3, lsr #16
    36b8:	e1c430b0 	strh	r3, [r4]
    36bc:	e3a03080 	mov	r3, #128	; 0x80
    36c0:	e5823000 	str	r3, [r2]
    36c4:	e59f3040 	ldr	r3, [pc, #64]	; 370c <collie_sd_reg_open+0x198>
    36c8:	e3a02000 	mov	r2, #0	; 0x0
    36cc:	e5832000 	str	r2, [r3]
    36d0:	e59f3038 	ldr	r3, [pc, #56]	; 3710 <collie_sd_reg_open+0x19c>
    36d4:	e5832000 	str	r2, [r3]
    36d8:	e91ba830 	ldmdb	fp, {r4, r5, fp, sp, pc}
    36dc:	f0000090 	mulnv	r0, r0, r0
    36e0:	f0000094 	mulnv	r0, r4, r0
    36e4:	f0000098 	mulnv	r0, r8, r0
    36e8:	0000017c 	andeq	r0, r0, ip, ror r1
    36ec:	f000009c 	mulnv	r0, ip, r0
    36f0:	000186a0 	andeq	r8, r1, r0, lsr #13
    36f4:	00000198 	muleq	r0, r8, r1
    36f8:	f0000060 	andnv	r0, r0, r0, rrx
    36fc:	00000199 	muleq	r0, r9, r1
    3700:	f0000064 	andnv	r0, r0, r4, rrx
    3704:	00000170 	andeq	r0, r0, r0, ror r1
    3708:	000001b4 	streqh	r0, [r0], -r4
    370c:	000001d4 	ldreqd	r0, [r0], -r4
    3710:	00000180 	andeq	r0, r0, r0, lsl #3

00003714 <collie_sd_reg_release>:
    3714:	e1a0c00d 	mov	ip, sp
    3718:	e92dd800 	stmdb	sp!, {fp, ip, lr, pc}
    371c:	e59f106c 	ldr	r1, [pc, #108]	; 3790 <collie_sd_reg_release+0x7c>
    3720:	e1d130b0 	ldrh	r3, [r1]
    3724:	e3e00080 	mvn	r0, #128	; 0x80
    3728:	e59f2064 	ldr	r2, [pc, #100]	; 3794 <collie_sd_reg_release+0x80>
    372c:	e0033000 	and	r3, r3, r0
    3730:	e1c130b0 	strh	r3, [r1]
    3734:	e1d230b0 	ldrh	r3, [r2]
    3738:	e3c33040 	bic	r3, r3, #64	; 0x40
    373c:	e1a03803 	mov	r3, r3, lsl #16
    3740:	e1a03823 	mov	r3, r3, lsr #16
    3744:	e1c230b0 	strh	r3, [r2]
    3748:	e1d230b0 	ldrh	r3, [r2]
    374c:	e0033000 	and	r3, r3, r0
    3750:	e1c230b0 	strh	r3, [r2]
    3754:	e1d130b0 	ldrh	r3, [r1]
    3758:	e3833040 	orr	r3, r3, #64	; 0x40
    375c:	e1c130b0 	strh	r3, [r1]
    3760:	e282203c 	add	r2, r2, #60	; 0x3c
    3764:	e1d230b0 	ldrh	r3, [r2]
    3768:	e24cb004 	sub	fp, ip, #4	; 0x4
    376c:	e59f0024 	ldr	r0, [pc, #36]	; 3798 <collie_sd_reg_release+0x84>
    3770:	e1a03883 	mov	r3, r3, lsl #17
    3774:	e1a038a3 	mov	r3, r3, lsr #17
    3778:	e1c230b0 	strh	r3, [r2]
    377c:	ebfffffe 	bl	377c <collie_sd_reg_release+0x68>
    3780:	e59f2014 	ldr	r2, [pc, #20]	; 379c <collie_sd_reg_release+0x88>
    3784:	e3a03000 	mov	r3, #0	; 0x0
    3788:	e5823000 	str	r3, [r2]
    378c:	e91ba800 	ldmdb	fp, {fp, sp, pc}
    3790:	f0000064 	andnv	r0, r0, r4, rrx
    3794:	f0000060 	andnv	r0, r0, r0, rrx
    3798:	001e8480 	andeqs	r8, lr, r0, lsl #9
    379c:	0000017c 	andeq	r0, r0, ip, ror r1

000037a0 <collie_sd_reg_reset>:
    37a0:	e1a0c00d 	mov	ip, sp
    37a4:	e92dd800 	stmdb	sp!, {fp, ip, lr, pc}
    37a8:	e24cb004 	sub	fp, ip, #4	; 0x4
    37ac:	e59f2008 	ldr	r2, [pc, #8]	; 37bc <collie_sd_reg_reset+0x1c>
    37b0:	e3a03000 	mov	r3, #0	; 0x0
    37b4:	e5823000 	str	r3, [r2]
    37b8:	e91ba800 	ldmdb	fp, {fp, sp, pc}
    37bc:	000001d4 	ldreqd	r0, [r0], -r4

000037c0 <collie_sd_setclock>:
    37c0:	e1a0c00d 	mov	ip, sp
    37c4:	e92dd800 	stmdb	sp!, {fp, ip, lr, pc}
    37c8:	e24cb004 	sub	fp, ip, #4	; 0x4
    37cc:	e3a0c000 	mov	ip, #0	; 0x0
    37d0:	e150000c 	cmp	r0, ip
    37d4:	13a02003 	movne	r2, #3	; 0x3
    37d8:	03a02004 	moveq	r2, #4	; 0x4
    37dc:	e3500001 	cmp	r0, #1	; 0x1
    37e0:	1a000e1c 	bne	7058 <crc16_arm+0x1e10>
    37e4:	e151000c 	cmp	r1, ip
    37e8:	0a000dfd 	beq	6fe4 <crc16_arm+0x1d9c>
    37ec:	e5913070 	ldr	r3, [r1, #112]
    37f0:	e153000c 	cmp	r3, ip
    37f4:	159f32ec 	ldrne	r3, [pc, #748]	; 3ae8 <collie_sd_setclock+0x328>
    37f8:	15d3c000 	ldrneb	ip, [r3]
    37fc:	e35c0002 	cmp	ip, #2	; 0x2
    3800:	1a000e06 	bne	7020 <crc16_arm+0x1dd8>
    3804:	e5911010 	ldr	r1, [r1, #16]
    3808:	e35100f0 	cmp	r1, #240	; 0xf0
    380c:	8a000e14 	bhi	7064 <crc16_arm+0x1e1c>
    3810:	e3510078 	cmp	r1, #120	; 0x78
    3814:	8a000e18 	bhi	707c <crc16_arm+0x1e34>
    3818:	e351003c 	cmp	r1, #60	; 0x3c
    381c:	ea000e1b 	b	7090 <crc16_arm+0x1e48>
    3820:	e35c0001 	cmp	ip, #1	; 0x1
    3824:	1a000e0f 	bne	7068 <crc16_arm+0x1e20>
    3828:	e5911010 	ldr	r1, [r1, #16]
    382c:	e35100dc 	cmp	r1, #220	; 0xdc
    3830:	8a000e14 	bhi	7088 <crc16_arm+0x1e40>
    3834:	e351006e 	cmp	r1, #110	; 0x6e
    3838:	8a000e18 	bhi	70a0 <crc16_arm+0x1e58>
    383c:	e3510032 	cmp	r1, #50	; 0x32
    3840:	ea000e1b 	b	70b4 <crc16_arm+0x1e6c>
    3844:	e35c0000 	cmp	ip, #0	; 0x0
    3848:	1a000e1c 	bne	70c0 <crc16_arm+0x1e78>
    384c:	e5911010 	ldr	r1, [r1, #16]
    3850:	e35100b4 	cmp	r1, #180	; 0xb4
    3854:	9a000e16 	bls	70b4 <crc16_arm+0x1e6c>
    3858:	e3a02000 	mov	r2, #0	; 0x0
    385c:	ea000e1c 	b	70d4 <crc16_arm+0x1e8c>
    3860:	e351005a 	cmp	r1, #90	; 0x5a
    3864:	9a000e1a 	bls	70d4 <crc16_arm+0x1e8c>
    3868:	e3a02001 	mov	r2, #1	; 0x1
    386c:	ea000e1c 	b	70e4 <crc16_arm+0x1e9c>
    3870:	e351002d 	cmp	r1, #45	; 0x2d
    3874:	83a02002 	movhi	r2, #2	; 0x2
    3878:	e3520004 	cmp	r2, #4	; 0x4
    387c:	979ff102 	ldrls	pc, [pc, r2, lsl #2]
    3880:	ea000e8a 	b	72b0 <crc16_arm+0x2068>
    3884:	00003898 	muleq	r0, r8, r8
    3888:	0000394c 	andeq	r3, r0, ip, asr #18
    388c:	00003998 	muleq	r0, r8, r9
    3890:	000039e4 	andeq	r3, r0, r4, ror #19
    3894:	00003a30 	andeq	r3, r0, r0, lsr sl
    3898:	e59f024c 	ldr	r0, [pc, #588]	; 3aec <collie_sd_setclock+0x32c>
    389c:	e5d02000 	ldrb	r2, [r0]
    38a0:	e3520000 	cmp	r2, #0	; 0x0
    38a4:	1a000e2c 	bne	715c <crc16_arm+0x1f14>
    38a8:	e59f3240 	ldr	r3, [pc, #576]	; 3af0 <collie_sd_setclock+0x330>
    38ac:	e5d33000 	ldrb	r3, [r3]
    38b0:	e153000c 	cmp	r3, ip
    38b4:	0a000eb7 	beq	7398 <crc16_arm+0x2150>
    38b8:	e3520000 	cmp	r2, #0	; 0x0
    38bc:	0a000e36 	beq	719c <crc16_arm+0x1f54>
    38c0:	e59f322c 	ldr	r3, [pc, #556]	; 3af4 <collie_sd_setclock+0x334>
    38c4:	e1d320b0 	ldrh	r2, [r3]
    38c8:	e3a01000 	mov	r1, #0	; 0x0
    38cc:	e5c01000 	strb	r1, [r0]
    38d0:	e3c22007 	bic	r2, r2, #7	; 0x7
    38d4:	e1a02802 	mov	r2, r2, lsl #16
    38d8:	e1a02822 	mov	r2, r2, lsr #16
    38dc:	e1c320b0 	strh	r2, [r3]
    38e0:	e59f1208 	ldr	r1, [pc, #520]	; 3af0 <collie_sd_setclock+0x330>
    38e4:	e5d13000 	ldrb	r3, [r1]
    38e8:	e153000c 	cmp	r3, ip
    38ec:	0a000eb7 	beq	73d0 <crc16_arm+0x2188>
    38f0:	e59f3200 	ldr	r3, [pc, #512]	; 3af8 <collie_sd_setclock+0x338>
    38f4:	e1d330b0 	ldrh	r3, [r3]
    38f8:	e3130a02 	tst	r3, #8192	; 0x2000
    38fc:	1a000eb7 	bne	73e0 <crc16_arm+0x2198>
    3900:	e59f21ec 	ldr	r2, [pc, #492]	; 3af4 <collie_sd_setclock+0x334>
    3904:	e1d230b0 	ldrh	r3, [r2]
    3908:	e3c33040 	bic	r3, r3, #64	; 0x40
    390c:	e1a03803 	mov	r3, r3, lsl #16
    3910:	e1a03823 	mov	r3, r3, lsr #16
    3914:	e1c230b0 	strh	r3, [r2]
    3918:	e1d230b0 	ldrh	r3, [r2]
    391c:	e3c33018 	bic	r3, r3, #24	; 0x18
    3920:	e1a03803 	mov	r3, r3, lsl #16
    3924:	e1a03823 	mov	r3, r3, lsr #16
    3928:	e183318c 	orr	r3, r3, ip, lsl #3
    392c:	e1c230b0 	strh	r3, [r2]
    3930:	e1d230b0 	ldrh	r3, [r2]
    3934:	e3a000c8 	mov	r0, #200	; 0xc8
    3938:	e5c1c000 	strb	ip, [r1]
    393c:	e3833040 	orr	r3, r3, #64	; 0x40
    3940:	e1c230b0 	strh	r3, [r2]
    3944:	ebfffffe 	bl	3944 <collie_sd_setclock+0x184>
    3948:	e91ba800 	ldmdb	fp, {fp, sp, pc}
    394c:	e59f0198 	ldr	r0, [pc, #408]	; 3aec <collie_sd_setclock+0x32c>
    3950:	e5d02000 	ldrb	r2, [r0]
    3954:	e3520001 	cmp	r2, #1	; 0x1
    3958:	1a000e59 	bne	72c4 <crc16_arm+0x207c>
    395c:	e59f318c 	ldr	r3, [pc, #396]	; 3af0 <collie_sd_setclock+0x330>
    3960:	e5d33000 	ldrb	r3, [r3]
    3964:	e153000c 	cmp	r3, ip
    3968:	0a000eb7 	beq	744c <crc16_arm+0x2204>
    396c:	e3520001 	cmp	r2, #1	; 0x1
    3970:	0a000e36 	beq	7250 <crc16_arm+0x2008>
    3974:	e59f3178 	ldr	r3, [pc, #376]	; 3af4 <collie_sd_setclock+0x334>
    3978:	e1d320b0 	ldrh	r2, [r3]
    397c:	e3a01001 	mov	r1, #1	; 0x1
    3980:	e5c01000 	strb	r1, [r0]
    3984:	e3c22007 	bic	r2, r2, #7	; 0x7
    3988:	e1a02802 	mov	r2, r2, lsl #16
    398c:	e1a02822 	mov	r2, r2, lsr #16
    3990:	e1822001 	orr	r2, r2, r1
    3994:	ea000e35 	b	7270 <crc16_arm+0x2028>
    3998:	e59f014c 	ldr	r0, [pc, #332]	; 3aec <collie_sd_setclock+0x32c>
    399c:	e5d02000 	ldrb	r2, [r0]
    39a0:	e3520002 	cmp	r2, #2	; 0x2
    39a4:	1a000e6c 	bne	735c <crc16_arm+0x2114>
    39a8:	e59f3140 	ldr	r3, [pc, #320]	; 3af0 <collie_sd_setclock+0x330>
    39ac:	e5d33000 	ldrb	r3, [r3]
    39b0:	e153000c 	cmp	r3, ip
    39b4:	0a000eb7 	beq	7498 <crc16_arm+0x2250>
    39b8:	e3520002 	cmp	r2, #2	; 0x2
    39bc:	0a000e36 	beq	729c <crc16_arm+0x2054>
    39c0:	e59f312c 	ldr	r3, [pc, #300]	; 3af4 <collie_sd_setclock+0x334>
    39c4:	e1d320b0 	ldrh	r2, [r3]
    39c8:	e3a01002 	mov	r1, #2	; 0x2
    39cc:	e5c01000 	strb	r1, [r0]
    39d0:	e3c22007 	bic	r2, r2, #7	; 0x7
    39d4:	e1a02802 	mov	r2, r2, lsl #16
    39d8:	e1a02822 	mov	r2, r2, lsr #16
    39dc:	e1822001 	orr	r2, r2, r1
    39e0:	ea000e35 	b	72bc <crc16_arm+0x2074>
    39e4:	e59f0100 	ldr	r0, [pc, #256]	; 3aec <collie_sd_setclock+0x32c>
    39e8:	e5d02000 	ldrb	r2, [r0]
    39ec:	e3520003 	cmp	r2, #3	; 0x3
    39f0:	1a000e7f 	bne	73f4 <crc16_arm+0x21ac>
    39f4:	e59f30f4 	ldr	r3, [pc, #244]	; 3af0 <collie_sd_setclock+0x330>
    39f8:	e5d33000 	ldrb	r3, [r3]
    39fc:	e153000c 	cmp	r3, ip
    3a00:	0a000eb7 	beq	74e4 <crc16_arm+0x229c>
    3a04:	e3520003 	cmp	r2, #3	; 0x3
    3a08:	0a000e36 	beq	72e8 <crc16_arm+0x20a0>
    3a0c:	e59f30e0 	ldr	r3, [pc, #224]	; 3af4 <collie_sd_setclock+0x334>
    3a10:	e1d320b0 	ldrh	r2, [r3]
    3a14:	e3a01003 	mov	r1, #3	; 0x3
    3a18:	e5c01000 	strb	r1, [r0]
    3a1c:	e3c22007 	bic	r2, r2, #7	; 0x7
    3a20:	e1a02802 	mov	r2, r2, lsl #16
    3a24:	e1a02822 	mov	r2, r2, lsr #16
    3a28:	e1822001 	orr	r2, r2, r1
    3a2c:	ea000e35 	b	7308 <crc16_arm+0x20c0>
    3a30:	e59f00b4 	ldr	r0, [pc, #180]	; 3aec <collie_sd_setclock+0x32c>
    3a34:	e5d02000 	ldrb	r2, [r0]
    3a38:	e3520004 	cmp	r2, #4	; 0x4
    3a3c:	1a000e92 	bne	748c <crc16_arm+0x2244>
    3a40:	e59f30a8 	ldr	r3, [pc, #168]	; 3af0 <collie_sd_setclock+0x330>
    3a44:	e5d33000 	ldrb	r3, [r3]
    3a48:	e153000c 	cmp	r3, ip
    3a4c:	0a000eb7 	beq	7530 <crc16_arm+0x22e8>
    3a50:	e3520004 	cmp	r2, #4	; 0x4
    3a54:	0a000e9d 	beq	74d0 <crc16_arm+0x2288>
    3a58:	e59f3094 	ldr	r3, [pc, #148]	; 3af4 <collie_sd_setclock+0x334>
    3a5c:	e1d320b0 	ldrh	r2, [r3]
    3a60:	e3a01004 	mov	r1, #4	; 0x4
    3a64:	e5c01000 	strb	r1, [r0]
    3a68:	e3c22007 	bic	r2, r2, #7	; 0x7
    3a6c:	e1a02802 	mov	r2, r2, lsl #16
    3a70:	e1a02822 	mov	r2, r2, lsr #16
    3a74:	e1822001 	orr	r2, r2, r1
    3a78:	e1c320b0 	strh	r2, [r3]
    3a7c:	e59f106c 	ldr	r1, [pc, #108]	; 3af0 <collie_sd_setclock+0x330>
    3a80:	e5d13000 	ldrb	r3, [r1]
    3a84:	e153000c 	cmp	r3, ip
    3a88:	0a000eb7 	beq	756c <crc16_arm+0x2324>
    3a8c:	e59f3064 	ldr	r3, [pc, #100]	; 3af8 <collie_sd_setclock+0x338>
    3a90:	e1d330b0 	ldrh	r3, [r3]
    3a94:	e3130a02 	tst	r3, #8192	; 0x2000
    3a98:	1a000eb7 	bne	757c <crc16_arm+0x2334>
    3a9c:	e59f2050 	ldr	r2, [pc, #80]	; 3af4 <collie_sd_setclock+0x334>
    3aa0:	e1d230b0 	ldrh	r3, [r2]
    3aa4:	e3c33040 	bic	r3, r3, #64	; 0x40
    3aa8:	e1a03803 	mov	r3, r3, lsl #16
    3aac:	e1a03823 	mov	r3, r3, lsr #16
    3ab0:	e1c230b0 	strh	r3, [r2]
    3ab4:	e1d230b0 	ldrh	r3, [r2]
    3ab8:	e3c33018 	bic	r3, r3, #24	; 0x18
    3abc:	e1a03803 	mov	r3, r3, lsl #16
    3ac0:	e1a03823 	mov	r3, r3, lsr #16
    3ac4:	e183318c 	orr	r3, r3, ip, lsl #3
    3ac8:	e1c230b0 	strh	r3, [r2]
    3acc:	e1d230b0 	ldrh	r3, [r2]
    3ad0:	e3a000c8 	mov	r0, #200	; 0xc8
    3ad4:	e5c1c000 	strb	ip, [r1]
    3ad8:	e3833040 	orr	r3, r3, #64	; 0x40
    3adc:	e1c230b0 	strh	r3, [r2]
    3ae0:	ebfffffe 	bl	3ae0 <collie_sd_setclock+0x320>
    3ae4:	e91ba800 	ldmdb	fp, {fp, sp, pc}
    3ae8:	00000000 	andeq	r0, r0, r0
    3aec:	00000199 	muleq	r0, r9, r1
    3af0:	00000198 	muleq	r0, r8, r1
    3af4:	f0000060 	andnv	r0, r0, r0, rrx
    3af8:	f0000098 	mulnv	r0, r8, r0

00003afc <collie_sd_set_transfer_length>:
    3afc:	e1a0c00d 	mov	ip, sp
    3b00:	e92dd800 	stmdb	sp!, {fp, ip, lr, pc}
    3b04:	e59f3014 	ldr	r3, [pc, #20]	; 3b20 <collie_sd_set_transfer_length+0x24>
    3b08:	e59f2014 	ldr	r2, [pc, #20]	; 3b24 <collie_sd_set_transfer_length+0x28>
    3b0c:	e24cb004 	sub	fp, ip, #4	; 0x4
    3b10:	e5830000 	str	r0, [r3]
    3b14:	e3a03001 	mov	r3, #1	; 0x1
    3b18:	e5823000 	str	r3, [r2]
    3b1c:	e91ba800 	ldmdb	fp, {fp, sp, pc}
    3b20:	000001cc 	andeq	r0, r0, ip, asr #3
    3b24:	000001d0 	ldreqd	r0, [r0], -r0

00003b28 <collie_sd_set_transfer_length_multi>:
    3b28:	e1a0c00d 	mov	ip, sp
    3b2c:	e92dd800 	stmdb	sp!, {fp, ip, lr, pc}
    3b30:	e59f3010 	ldr	r3, [pc, #16]	; 3b48 <collie_sd_set_transfer_length_multi+0x20>
    3b34:	e5830000 	str	r0, [r3]
    3b38:	e59f300c 	ldr	r3, [pc, #12]	; 3b4c <collie_sd_set_transfer_length_multi+0x24>
    3b3c:	e24cb004 	sub	fp, ip, #4	; 0x4
    3b40:	e5831000 	str	r1, [r3]
    3b44:	e91ba800 	ldmdb	fp, {fp, sp, pc}
    3b48:	000001cc 	andeq	r0, r0, ip, asr #3
    3b4c:	000001d0 	ldreqd	r0, [r0], -r0

00003b50 <collie_sd_put_command>:
    3b50:	e1a0c00d 	mov	ip, sp
    3b54:	e92ddff0 	stmdb	sp!, {r4, r5, r6, r7, r8, r9, sl, fp, ip, lr, pc}
    3b58:	e24cb004 	sub	fp, ip, #4	; 0x4
    3b5c:	e3a02000 	mov	r2, #0	; 0x0
    3b60:	e1a07000 	mov	r7, r0
    3b64:	e59f32d4 	ldr	r3, [pc, #724]	; 3e40 <collie_sd_put_command+0x2f0>
    3b68:	e24dd018 	sub	sp, sp, #24	; 0x18
    3b6c:	e5933000 	ldr	r3, [r3]
    3b70:	e1a04001 	mov	r4, r1
    3b74:	e1530002 	cmp	r3, r2
    3b78:	1a000ee1 	bne	7704 <crc16_arm+0x24bc>
    3b7c:	e59f32c0 	ldr	r3, [pc, #704]	; 3e44 <collie_sd_put_command+0x2f4>
    3b80:	e1d330b0 	ldrh	r3, [r3]
    3b84:	e2130a02 	ands	r0, r3, #8192	; 0x2000
    3b88:	0a000ee9 	beq	7734 <crc16_arm+0x24ec>
    3b8c:	e1a05002 	mov	r5, r2
    3b90:	e59f22b0 	ldr	r2, [pc, #688]	; 3e48 <collie_sd_put_command+0x2f8>
    3b94:	e3a030ff 	mov	r3, #255	; 0xff
    3b98:	e7c23005 	strb	r3, [r2, r5]
    3b9c:	e2855001 	add	r5, r5, #1	; 0x1
    3ba0:	e3550013 	cmp	r5, #19	; 0x13
    3ba4:	9a000ee2 	bls	7734 <crc16_arm+0x24ec>
    3ba8:	e91baff0 	ldmdb	fp, {r4, r5, r6, r7, r8, r9, sl, fp, sp, pc}
    3bac:	e3570010 	cmp	r7, #16	; 0x10
    3bb0:	1a000ef1 	bne	777c <crc16_arm+0x2534>
    3bb4:	e59f3290 	ldr	r3, [pc, #656]	; 3e4c <collie_sd_put_command+0x2fc>
    3bb8:	e5932000 	ldr	r2, [r3]
    3bbc:	e5834000 	str	r4, [r3]
    3bc0:	e1520004 	cmp	r2, r4
    3bc4:	13a02000 	movne	r2, #0	; 0x0
    3bc8:	03a02001 	moveq	r2, #1	; 0x1
    3bcc:	e3520000 	cmp	r2, #0	; 0x0
    3bd0:	0a000efd 	beq	77cc <crc16_arm+0x2584>
    3bd4:	e1a05000 	mov	r5, r0
    3bd8:	e59f2268 	ldr	r2, [pc, #616]	; 3e48 <collie_sd_put_command+0x2f8>
    3bdc:	e3a030ff 	mov	r3, #255	; 0xff
    3be0:	e7c23005 	strb	r3, [r2, r5]
    3be4:	e2855001 	add	r5, r5, #1	; 0x1
    3be8:	e3550013 	cmp	r5, #19	; 0x13
    3bec:	9a000ef4 	bls	77c4 <crc16_arm+0x257c>
    3bf0:	e24330ff 	sub	r3, r3, #255	; 0xff
    3bf4:	e5c23000 	strb	r3, [r2]
    3bf8:	e91baff0 	ldmdb	fp, {r4, r5, r6, r7, r8, r9, sl, fp, sp, pc}
    3bfc:	eb000ff2 	bl	7bcc <crc16_arm+0x2984>
    3c00:	e24b5030 	sub	r5, fp, #48	; 0x30
    3c04:	e1a00005 	mov	r0, r5
    3c08:	e207103f 	and	r1, r7, #63	; 0x3f
    3c0c:	e50b103c 	str	r1, [fp, #-60]
    3c10:	e3813040 	orr	r3, r1, #64	; 0x40
    3c14:	e54b3030 	strb	r3, [fp, #-48]
    3c18:	e1a03c24 	mov	r3, r4, lsr #24
    3c1c:	e54b302f 	strb	r3, [fp, #-47]
    3c20:	e1a03824 	mov	r3, r4, lsr #16
    3c24:	e54b302e 	strb	r3, [fp, #-46]
    3c28:	e1a03424 	mov	r3, r4, lsr #8
    3c2c:	e54b302d 	strb	r3, [fp, #-45]
    3c30:	e3a01005 	mov	r1, #5	; 0x5
    3c34:	e54b402c 	strb	r4, [fp, #-44]
    3c38:	eb0011e3 	bl	83cc <crc16_arm+0x3184>
    3c3c:	e59f320c 	ldr	r3, [pc, #524]	; 3e50 <collie_sd_put_command+0x300>
    3c40:	e1a00080 	mov	r0, r0, lsl #1
    3c44:	e59f2208 	ldr	r2, [pc, #520]	; 3e54 <collie_sd_put_command+0x304>
    3c48:	e0003003 	and	r3, r0, r3
    3c4c:	e5d22000 	ldrb	r2, [r2]
    3c50:	e3833001 	orr	r3, r3, #1	; 0x1
    3c54:	e54b302b 	strb	r3, [fp, #-43]
    3c58:	e3520004 	cmp	r2, #4	; 0x4
    3c5c:	1a000f18 	bne	78c4 <crc16_arm+0x267c>
    3c60:	e59f01f0 	ldr	r0, [pc, #496]	; 3e58 <collie_sd_put_command+0x308>
    3c64:	ebfffffe 	bl	3c64 <collie_sd_put_command+0x114>
    3c68:	e1a00005 	mov	r0, r5
    3c6c:	e3a01006 	mov	r1, #6	; 0x6
    3c70:	eb001109 	bl	809c <crc16_arm+0x2e54>
    3c74:	e357001d 	cmp	r7, #29	; 0x1d
    3c78:	8a000f24 	bhi	7910 <crc16_arm+0x26c8>
    3c7c:	e357001c 	cmp	r7, #28	; 0x1c
    3c80:	2a000f30 	bcs	7948 <crc16_arm+0x2700>
    3c84:	e357000c 	cmp	r7, #12	; 0xc
    3c88:	0a000f30 	beq	7950 <crc16_arm+0x2708>
    3c8c:	e357000d 	cmp	r7, #13	; 0xd
    3c90:	0a000f2c 	beq	7948 <crc16_arm+0x2700>
    3c94:	ea000f34 	b	796c <crc16_arm+0x2724>
    3c98:	e357003a 	cmp	r7, #58	; 0x3a
    3c9c:	0a000f2e 	beq	795c <crc16_arm+0x2714>
    3ca0:	8a000f2a 	bhi	7950 <crc16_arm+0x2708>
    3ca4:	e3570026 	cmp	r7, #38	; 0x26
    3ca8:	0a000f30 	beq	7970 <crc16_arm+0x2728>
    3cac:	ea000f34 	b	7984 <crc16_arm+0x273c>
    3cb0:	e357008d 	cmp	r7, #141	; 0x8d
    3cb4:	1a000f34 	bne	798c <crc16_arm+0x2744>
    3cb8:	e3a09002 	mov	r9, #2	; 0x2
    3cbc:	ea000f35 	b	7998 <crc16_arm+0x2750>
    3cc0:	e3a09005 	mov	r9, #5	; 0x5
    3cc4:	ea000f35 	b	79a0 <crc16_arm+0x2758>
    3cc8:	e59f318c 	ldr	r3, [pc, #396]	; 3e5c <collie_sd_put_command+0x30c>
    3ccc:	e3a09001 	mov	r9, #1	; 0x1
    3cd0:	e5839000 	str	r9, [r3]
    3cd4:	ea000f35 	b	79b0 <crc16_arm+0x2768>
    3cd8:	e3a09001 	mov	r9, #1	; 0x1
    3cdc:	e3a05000 	mov	r5, #0	; 0x0
    3ce0:	e59fa160 	ldr	sl, [pc, #352]	; 3e48 <collie_sd_put_command+0x2f8>
    3ce4:	e3a030ff 	mov	r3, #255	; 0xff
    3ce8:	e7ca3005 	strb	r3, [sl, r5]
    3cec:	e2855001 	add	r5, r5, #1	; 0x1
    3cf0:	e3550013 	cmp	r5, #19	; 0x13
    3cf4:	9a000f36 	bls	79d4 <crc16_arm+0x278c>
    3cf8:	e1a0000a 	mov	r0, sl
    3cfc:	e1a01009 	mov	r1, r9
    3d00:	e3a02080 	mov	r2, #128	; 0x80
    3d04:	e24330ff 	sub	r3, r3, #255	; 0xff
    3d08:	eb001018 	bl	7d70 <crc16_arm+0x2b28>
    3d0c:	e1a05000 	mov	r5, r0
    3d10:	e357000c 	cmp	r7, #12	; 0xc
    3d14:	1a000f48 	bne	7a3c <crc16_arm+0x27f4>
    3d18:	e5da3000 	ldrb	r3, [sl]
    3d1c:	e353007f 	cmp	r3, #127	; 0x7f
    3d20:	03a03000 	moveq	r3, #0	; 0x0
    3d24:	05ca3000 	streqb	r3, [sl]
    3d28:	e3550000 	cmp	r5, #0	; 0x0
    3d2c:	da000f6b 	ble	7ae0 <crc16_arm+0x2898>
    3d30:	e5da3000 	ldrb	r3, [sl]
    3d34:	e20330fe 	and	r3, r3, #254	; 0xfe
    3d38:	e3530000 	cmp	r3, #0	; 0x0
    3d3c:	0a000f6b 	beq	7af0 <crc16_arm+0x28a8>
    3d40:	e3c5333e 	bic	r3, r5, #-134217728	; 0xf8000000
    3d44:	e50bd040 	str	sp, [fp, #-64]
    3d48:	e04dd103 	sub	sp, sp, r3, lsl #2
    3d4c:	e3a03000 	mov	r3, #0	; 0x0
    3d50:	e1a06003 	mov	r6, r3
    3d54:	e1560005 	cmp	r6, r5
    3d58:	e1a0800d 	mov	r8, sp
    3d5c:	e5cd3000 	strb	r3, [sp]
    3d60:	aa000f62 	bge	7af0 <crc16_arm+0x28a8>
    3d64:	e24b4038 	sub	r4, fp, #56	; 0x38
    3d68:	e59f10f0 	ldr	r1, [pc, #240]	; 3e60 <collie_sd_put_command+0x310>
    3d6c:	e1a00004 	mov	r0, r4
    3d70:	e7da2006 	ldrb	r2, [sl, r6]
    3d74:	e2866001 	add	r6, r6, #1	; 0x1
    3d78:	ebfffffe 	bl	3d78 <collie_sd_put_command+0x228>
    3d7c:	e1a00008 	mov	r0, r8
    3d80:	e1a01004 	mov	r1, r4
    3d84:	ebfffffe 	bl	3d84 <collie_sd_put_command+0x234>
    3d88:	e1560005 	cmp	r6, r5
    3d8c:	ba000f57 	blt	7af0 <crc16_arm+0x28a8>
    3d90:	e59fc0cc 	ldr	ip, [pc, #204]	; 3e64 <collie_sd_put_command+0x314>
    3d94:	e51b203c 	ldr	r2, [fp, #-60]
    3d98:	e3170080 	tst	r7, #128	; 0x80
    3d9c:	e59f10c4 	ldr	r1, [pc, #196]	; 3e68 <collie_sd_put_command+0x318>
    3da0:	e1a03008 	mov	r3, r8
    3da4:	e59f00c0 	ldr	r0, [pc, #192]	; 3e6c <collie_sd_put_command+0x31c>
    3da8:	01a0100c 	moveq	r1, ip
    3dac:	ebfffffe 	bl	3dac <collie_sd_put_command+0x25c>
    3db0:	e51bd040 	ldr	sp, [fp, #-64]
    3db4:	e1550009 	cmp	r5, r9
    3db8:	1a000f8d 	bne	7bf4 <crc16_arm+0x29ac>
    3dbc:	e2473009 	sub	r3, r7, #9	; 0x9
    3dc0:	e3530001 	cmp	r3, #1	; 0x1
    3dc4:	8a000f8d 	bhi	7c00 <crc16_arm+0x29b8>
    3dc8:	e3a04010 	mov	r4, #16	; 0x10
    3dcc:	e1a00004 	mov	r0, r4
    3dd0:	eb000ebd 	bl	78cc <crc16_arm+0x2684>
    3dd4:	e59f606c 	ldr	r6, [pc, #108]	; 3e48 <collie_sd_put_command+0x2f8>
    3dd8:	e1a01004 	mov	r1, r4
    3ddc:	e0850006 	add	r0, r5, r6
    3de0:	ebfffffe 	bl	3de0 <collie_sd_put_command+0x290>
    3de4:	e3500000 	cmp	r0, #0	; 0x0
    3de8:	1a000f8a 	bne	7c18 <crc16_arm+0x29d0>
    3dec:	e3570009 	cmp	r7, #9	; 0x9
    3df0:	1a000f8d 	bne	7c2c <crc16_arm+0x29e4>
    3df4:	e5d62002 	ldrb	r2, [r6, #2]
    3df8:	e59f0070 	ldr	r0, [pc, #112]	; 3e70 <collie_sd_put_command+0x320>
    3dfc:	e59f1070 	ldr	r1, [pc, #112]	; 3e74 <collie_sd_put_command+0x324>
    3e00:	e1a031a2 	mov	r3, r2, lsr #3
    3e04:	e203300f 	and	r3, r3, #15	; 0xf
    3e08:	e7d11003 	ldrb	r1, [r1, r3]
    3e0c:	e2022007 	and	r2, r2, #7	; 0x7
    3e10:	e7903102 	ldr	r3, [r0, r2, lsl #2]
    3e14:	e59f205c 	ldr	r2, [pc, #92]	; 3e78 <collie_sd_put_command+0x328>
    3e18:	e0030391 	mul	r3, r1, r3
    3e1c:	e0831392 	umull	r1, r3, r2, r3
    3e20:	e59f2054 	ldr	r2, [pc, #84]	; 3e7c <collie_sd_put_command+0x32c>
    3e24:	e1a032a3 	mov	r3, r3, lsr #5
    3e28:	e5823000 	str	r3, [r2]
    3e2c:	e91baff0 	ldmdb	fp, {r4, r5, r6, r7, r8, r9, sl, fp, sp, pc}
    3e30:	e5d63000 	ldrb	r3, [r6]
    3e34:	e3833008 	orr	r3, r3, #8	; 0x8
    3e38:	e5c63000 	strb	r3, [r6]
    3e3c:	e91baff0 	ldmdb	fp, {r4, r5, r6, r7, r8, r9, sl, fp, sp, pc}
    3e40:	00000000 	andeq	r0, r0, r0
    3e44:	f0000098 	mulnv	r0, r8, r0
    3e48:	000001b8 	streqh	r0, [r0], -r8
    3e4c:	00000180 	andeq	r0, r0, r0, lsl #3
    3e50:	000001fe 	streqd	r0, [r0], -lr
    3e54:	00000199 	muleq	r0, r9, r1
    3e58:	00007530 	andeq	r7, r0, r0, lsr r5
    3e5c:	000001d4 	ldreqd	r0, [r0], -r4
    3e60:	00000340 	andeq	r0, r0, r0, asr #6
    3e64:	00000374 	andeq	r0, r0, r4, ror r3
    3e68:	00000370 	andeq	r0, r0, r0, ror r3
    3e6c:	00000348 	andeq	r0, r0, r8, asr #6
    3e70:	00000140 	andeq	r0, r0, r0, asr #2
    3e74:	00000160 	andeq	r0, r0, r0, ror #2
    3e78:	cccccccd 	stcgtl	12, cr12, [ip], {205}
    3e7c:	000001b4 	streqh	r0, [r0], -r4

00003e80 <collie_sd_opendrain_command>:
    3e80:	e1a0c00d 	mov	ip, sp
    3e84:	e92dd800 	stmdb	sp!, {fp, ip, lr, pc}
    3e88:	e24cb004 	sub	fp, ip, #4	; 0x4
    3e8c:	eb000ed2 	bl	79dc <crc16_arm+0x2794>
    3e90:	e91ba800 	ldmdb	fp, {fp, sp, pc}

00003e94 <collie_sd_wait_response>:
    3e94:	e1a0c00d 	mov	ip, sp
    3e98:	e92dd800 	stmdb	sp!, {fp, ip, lr, pc}
    3e9c:	e59f3024 	ldr	r3, [pc, #36]	; 3ec8 <collie_sd_wait_response+0x34>
    3ea0:	e5d30000 	ldrb	r0, [r3]
    3ea4:	e24cb004 	sub	fp, ip, #4	; 0x4
    3ea8:	e3100080 	tst	r0, #128	; 0x80
    3eac:	1a000fae 	bne	7d6c <crc16_arm+0x2b24>
    3eb0:	e200007c 	and	r0, r0, #124	; 0x7c
    3eb4:	e2500000 	subs	r0, r0, #0	; 0x0
    3eb8:	13a00001 	movne	r0, #1	; 0x1
    3ebc:	e91ba800 	ldmdb	fp, {fp, sp, pc}
    3ec0:	e3a00002 	mov	r0, #2	; 0x2
    3ec4:	e91ba800 	ldmdb	fp, {fp, sp, pc}
    3ec8:	000001b8 	streqh	r0, [r0], -r8

00003ecc <collie_sd_wait_id_response>:
    3ecc:	e1a0c00d 	mov	ip, sp
    3ed0:	e92dd800 	stmdb	sp!, {fp, ip, lr, pc}
    3ed4:	e59f3024 	ldr	r3, [pc, #36]	; 3f00 <collie_sd_wait_id_response+0x34>
    3ed8:	e5d30000 	ldrb	r0, [r3]
    3edc:	e24cb004 	sub	fp, ip, #4	; 0x4
    3ee0:	e3100080 	tst	r0, #128	; 0x80
    3ee4:	1a000fbc 	bne	7ddc <crc16_arm+0x2b94>
    3ee8:	e200007c 	and	r0, r0, #124	; 0x7c
    3eec:	e2500000 	subs	r0, r0, #0	; 0x0
    3ef0:	13a00001 	movne	r0, #1	; 0x1
    3ef4:	e91ba800 	ldmdb	fp, {fp, sp, pc}
    3ef8:	e3a00003 	mov	r0, #3	; 0x3
    3efc:	e91ba800 	ldmdb	fp, {fp, sp, pc}
    3f00:	000001b8 	streqh	r0, [r0], -r8

00003f04 <collie_sd_get_response_value>:
    3f04:	e1a0c00d 	mov	ip, sp
    3f08:	e92dd800 	stmdb	sp!, {fp, ip, lr, pc}
    3f0c:	e59f20b8 	ldr	r2, [pc, #184]	; 3fcc <collie_sd_get_response_value+0xc8>
    3f10:	e24cb004 	sub	fp, ip, #4	; 0x4
    3f14:	e5d2c002 	ldrb	ip, [r2, #2]
    3f18:	e5d23001 	ldrb	r3, [r2, #1]
    3f1c:	e5d21000 	ldrb	r1, [r2]
    3f20:	e1a03803 	mov	r3, r3, lsl #16
    3f24:	e1833c01 	orr	r3, r3, r1, lsl #24
    3f28:	e5d21003 	ldrb	r1, [r2, #3]
    3f2c:	e183340c 	orr	r3, r3, ip, lsl #8
    3f30:	e1833001 	orr	r3, r3, r1
    3f34:	e5803000 	str	r3, [r0]
    3f38:	e5d23005 	ldrb	r3, [r2, #5]
    3f3c:	e5d21004 	ldrb	r1, [r2, #4]
    3f40:	e1a03803 	mov	r3, r3, lsl #16
    3f44:	e5d2c006 	ldrb	ip, [r2, #6]
    3f48:	e1833c01 	orr	r3, r3, r1, lsl #24
    3f4c:	e5d21007 	ldrb	r1, [r2, #7]
    3f50:	e183340c 	orr	r3, r3, ip, lsl #8
    3f54:	e1833001 	orr	r3, r3, r1
    3f58:	e5803004 	str	r3, [r0, #4]
    3f5c:	e5d23009 	ldrb	r3, [r2, #9]
    3f60:	e5d21008 	ldrb	r1, [r2, #8]
    3f64:	e1a03803 	mov	r3, r3, lsl #16
    3f68:	e5d2c00a 	ldrb	ip, [r2, #10]
    3f6c:	e1833c01 	orr	r3, r3, r1, lsl #24
    3f70:	e5d2100b 	ldrb	r1, [r2, #11]
    3f74:	e183340c 	orr	r3, r3, ip, lsl #8
    3f78:	e1833001 	orr	r3, r3, r1
    3f7c:	e5803008 	str	r3, [r0, #8]
    3f80:	e5d2300d 	ldrb	r3, [r2, #13]
    3f84:	e5d2100c 	ldrb	r1, [r2, #12]
    3f88:	e1a03803 	mov	r3, r3, lsl #16
    3f8c:	e5d2c00e 	ldrb	ip, [r2, #14]
    3f90:	e1833c01 	orr	r3, r3, r1, lsl #24
    3f94:	e5d2100f 	ldrb	r1, [r2, #15]
    3f98:	e183340c 	orr	r3, r3, ip, lsl #8
    3f9c:	e1833001 	orr	r3, r3, r1
    3fa0:	e580300c 	str	r3, [r0, #12]
    3fa4:	e5d23011 	ldrb	r3, [r2, #17]
    3fa8:	e5d21010 	ldrb	r1, [r2, #16]
    3fac:	e5d2c012 	ldrb	ip, [r2, #18]
    3fb0:	e1a03803 	mov	r3, r3, lsl #16
    3fb4:	e5d22013 	ldrb	r2, [r2, #19]
    3fb8:	e1833c01 	orr	r3, r3, r1, lsl #24
    3fbc:	e183340c 	orr	r3, r3, ip, lsl #8
    3fc0:	e1833002 	orr	r3, r3, r2
    3fc4:	e5803010 	str	r3, [r0, #16]
    3fc8:	e91ba800 	ldmdb	fp, {fp, sp, pc}
    3fcc:	000001b8 	streqh	r0, [r0], -r8

00003fd0 <collie_sd_wait_complete>:
    3fd0:	e1a0c00d 	mov	ip, sp
    3fd4:	e92dd810 	stmdb	sp!, {r4, fp, ip, lr, pc}
    3fd8:	e59f2070 	ldr	r2, [pc, #112]	; 4050 <collie_sd_wait_complete+0x80>
    3fdc:	e24dd004 	sub	sp, sp, #4	; 0x4
    3fe0:	e5923000 	ldr	r3, [r2]
    3fe4:	e24cb004 	sub	fp, ip, #4	; 0x4
    3fe8:	e3530000 	cmp	r3, #0	; 0x0
    3fec:	0a001011 	beq	8038 <crc16_arm+0x2df0>
    3ff0:	e3a03000 	mov	r3, #0	; 0x0
    3ff4:	e1a04003 	mov	r4, r3
    3ff8:	e5823000 	str	r3, [r2]
    3ffc:	ea001007 	b	8020 <crc16_arm+0x2dd8>
    4000:	e59f304c 	ldr	r3, [pc, #76]	; 4054 <collie_sd_wait_complete+0x84>
    4004:	e2832004 	add	r2, r3, #4	; 0x4
    4008:	e892000c 	ldmia	r2, {r2, r3}
    400c:	e0823003 	add	r3, r2, r3
    4010:	e3530000 	cmp	r3, #0	; 0x0
    4014:	1a001006 	bne	8034 <crc16_arm+0x2dec>
    4018:	e3a00001 	mov	r0, #1	; 0x1
    401c:	ebfffffe 	bl	401c <collie_sd_wait_complete+0x4c>
    4020:	e2844001 	add	r4, r4, #1	; 0x1
    4024:	e3540601 	cmp	r4, #1048576	; 0x100000
    4028:	aa001011 	bge	8074 <crc16_arm+0x2e2c>
    402c:	e24b0011 	sub	r0, fp, #17	; 0x11
    4030:	e3a01001 	mov	r1, #1	; 0x1
    4034:	e3a02000 	mov	r2, #0	; 0x0
    4038:	e3a03005 	mov	r3, #5	; 0x5
    403c:	eb001018 	bl	80a4 <crc16_arm+0x2e5c>
    4040:	e55b3011 	ldrb	r3, [fp, #-17]
    4044:	e35300ff 	cmp	r3, #255	; 0xff
    4048:	1a000ffe 	bne	8048 <crc16_arm+0x2e00>
    404c:	e91ba810 	ldmdb	fp, {r4, fp, sp, pc}
    4050:	000001d4 	ldreqd	r0, [r0], -r4
    4054:	00000000 	andeq	r0, r0, r0

00004058 <_collie_sd_wait_complete>:
    4058:	e1a0c00d 	mov	ip, sp
    405c:	e92dd800 	stmdb	sp!, {fp, ip, lr, pc}
    4060:	e24cb004 	sub	fp, ip, #4	; 0x4
    4064:	e91ba800 	ldmdb	fp, {fp, sp, pc}

00004068 <collie_sd_receive_chars>:
    4068:	e1a0c00d 	mov	ip, sp
    406c:	e92dd9f0 	stmdb	sp!, {r4, r5, r6, r7, r8, fp, ip, lr, pc}
    4070:	e24cb004 	sub	fp, ip, #4	; 0x4
    4074:	e3a0c000 	mov	ip, #0	; 0x0
    4078:	e1a04000 	mov	r4, r0
    407c:	e1a0700c 	mov	r7, ip
    4080:	e1a05001 	mov	r5, r1
    4084:	e2551000 	subs	r1, r5, #0	; 0x0
    4088:	e1a06002 	mov	r6, r2
    408c:	e203e0ff 	and	lr, r3, #255	; 0xff
    4090:	0a001101 	beq	849c <crc16_arm+0x3254>
    4094:	e156000c 	cmp	r6, ip
    4098:	0a0010ac 	beq	8350 <crc16_arm+0x3108>
    409c:	e35e0004 	cmp	lr, #4	; 0x4
    40a0:	115e000c 	cmpne	lr, ip
    40a4:	0a00102a 	beq	8154 <crc16_arm+0x2f0c>
    40a8:	e35e0001 	cmp	lr, #1	; 0x1
    40ac:	1a0010ac 	bne	8364 <crc16_arm+0x311c>
    40b0:	e1a0800c 	mov	r8, ip
    40b4:	e1580006 	cmp	r8, r6
    40b8:	2a00108c 	bcs	82f0 <crc16_arm+0x30a8>
    40bc:	e59fc350 	ldr	ip, [pc, #848]	; 4414 <collie_sd_receive_chars+0x3ac>
    40c0:	e5dc2000 	ldrb	r2, [ip]
    40c4:	e3520000 	cmp	r2, #0	; 0x0
    40c8:	1a00103e 	bne	81c8 <crc16_arm+0x2f80>
    40cc:	e59f3344 	ldr	r3, [pc, #836]	; 4418 <collie_sd_receive_chars+0x3b0>
    40d0:	e5d33000 	ldrb	r3, [r3]
    40d4:	e3530000 	cmp	r3, #0	; 0x0
    40d8:	0a00103e 	beq	81d8 <crc16_arm+0x2f90>
    40dc:	e59f3338 	ldr	r3, [pc, #824]	; 441c <collie_sd_receive_chars+0x3b4>
    40e0:	e1d330b0 	ldrh	r3, [r3]
    40e4:	e3130001 	tst	r3, #1	; 0x1
    40e8:	1a001054 	bne	8240 <crc16_arm+0x2ff8>
    40ec:	e1a03002 	mov	r3, r2
    40f0:	e2822001 	add	r2, r2, #1	; 0x1
    40f4:	e3530008 	cmp	r3, #8	; 0x8
    40f8:	9a001035 	bls	81d4 <crc16_arm+0x2f8c>
    40fc:	ea001054 	b	8254 <crc16_arm+0x300c>
    4100:	e5dc3000 	ldrb	r3, [ip]
    4104:	e3530004 	cmp	r3, #4	; 0x4
    4108:	1a00104b 	bne	823c <crc16_arm+0x2ff4>
    410c:	e3a02000 	mov	r2, #0	; 0x0
    4110:	e59f3304 	ldr	r3, [pc, #772]	; 441c <collie_sd_receive_chars+0x3b4>
    4114:	e1d330b0 	ldrh	r3, [r3]
    4118:	e3130001 	tst	r3, #1	; 0x1
    411c:	1a001054 	bne	8274 <crc16_arm+0x302c>
    4120:	e1a03002 	mov	r3, r2
    4124:	e2822001 	add	r2, r2, #1	; 0x1
    4128:	e3530801 	cmp	r3, #65536	; 0x10000
    412c:	3a001042 	bcc	823c <crc16_arm+0x2ff4>
    4130:	ea001054 	b	8288 <crc16_arm+0x3040>
    4134:	e3a02000 	mov	r2, #0	; 0x0
    4138:	e59f32dc 	ldr	r3, [pc, #732]	; 441c <collie_sd_receive_chars+0x3b4>
    413c:	e1d330b0 	ldrh	r3, [r3]
    4140:	e3130001 	tst	r3, #1	; 0x1
    4144:	1a001054 	bne	829c <crc16_arm+0x3054>
    4148:	e1a03002 	mov	r3, r2
    414c:	e2822001 	add	r2, r2, #1	; 0x1
    4150:	e3530008 	cmp	r3, #8	; 0x8
    4154:	9a00104c 	bls	828c <crc16_arm+0x3044>
    4158:	e59f32b4 	ldr	r3, [pc, #692]	; 4414 <collie_sd_receive_chars+0x3ac>
    415c:	e59f22bc 	ldr	r2, [pc, #700]	; 4420 <collie_sd_receive_chars+0x3b8>
    4160:	e5d3c000 	ldrb	ip, [r3]
    4164:	e1d230b0 	ldrh	r3, [r2]
    4168:	e35c0000 	cmp	ip, #0	; 0x0
    416c:	e5c43000 	strb	r3, [r4]
    4170:	1a00105f 	bne	82f4 <crc16_arm+0x30ac>
    4174:	e59f329c 	ldr	r3, [pc, #668]	; 4418 <collie_sd_receive_chars+0x3b0>
    4178:	e5d33000 	ldrb	r3, [r3]
    417c:	e3530000 	cmp	r3, #0	; 0x0
    4180:	1a001074 	bne	8358 <crc16_arm+0x3110>
    4184:	e35c0004 	cmp	ip, #4	; 0x4
    4188:	1a00106b 	bne	833c <crc16_arm+0x30f4>
    418c:	e3a02000 	mov	r2, #0	; 0x0
    4190:	e59f3284 	ldr	r3, [pc, #644]	; 441c <collie_sd_receive_chars+0x3b4>
    4194:	e1d330b0 	ldrh	r3, [r3]
    4198:	e3130001 	tst	r3, #1	; 0x1
    419c:	0a001074 	beq	8374 <crc16_arm+0x312c>
    41a0:	e1a03002 	mov	r3, r2
    41a4:	e2822001 	add	r2, r2, #1	; 0x1
    41a8:	e3530801 	cmp	r3, #65536	; 0x10000
    41ac:	3a001062 	bcc	833c <crc16_arm+0x30f4>
    41b0:	ea001074 	b	8388 <crc16_arm+0x3140>
    41b4:	e3a02000 	mov	r2, #0	; 0x0
    41b8:	e59f325c 	ldr	r3, [pc, #604]	; 441c <collie_sd_receive_chars+0x3b4>
    41bc:	e1d330b0 	ldrh	r3, [r3]
    41c0:	e3130001 	tst	r3, #1	; 0x1
    41c4:	0a001074 	beq	839c <crc16_arm+0x3154>
    41c8:	e1a03002 	mov	r3, r2
    41cc:	e2822001 	add	r2, r2, #1	; 0x1
    41d0:	e3530008 	cmp	r3, #8	; 0x8
    41d4:	9a00106c 	bls	838c <crc16_arm+0x3144>
    41d8:	e35e0000 	cmp	lr, #0	; 0x0
    41dc:	1a00107a 	bne	83cc <crc16_arm+0x3184>
    41e0:	e5d43000 	ldrb	r3, [r4]
    41e4:	e3130080 	tst	r3, #128	; 0x80
    41e8:	0a00108c 	beq	8420 <crc16_arm+0x31d8>
    41ec:	ea001089 	b	8418 <crc16_arm+0x31d0>
    41f0:	e35e0004 	cmp	lr, #4	; 0x4
    41f4:	0a001085 	beq	8410 <crc16_arm+0x31c8>
    41f8:	e35e0001 	cmp	lr, #1	; 0x1
    41fc:	1a001089 	bne	8428 <crc16_arm+0x31e0>
    4200:	e5d43000 	ldrb	r3, [r4]
    4204:	e35300fe 	cmp	r3, #254	; 0xfe
    4208:	0a00108c 	beq	8440 <crc16_arm+0x31f8>
    420c:	e20330f0 	and	r3, r3, #240	; 0xf0
    4210:	e3530000 	cmp	r3, #0	; 0x0
    4214:	1a001089 	bne	8440 <crc16_arm+0x31f8>
    4218:	ea00108c 	b	8450 <crc16_arm+0x3208>
    421c:	e5d43000 	ldrb	r3, [r4]
    4220:	e2033011 	and	r3, r3, #17	; 0x11
    4224:	e3530001 	cmp	r3, #1	; 0x1
    4228:	0a00108c 	beq	8460 <crc16_arm+0x3218>
    422c:	e2888001 	add	r8, r8, #1	; 0x1
    4230:	e1580006 	cmp	r8, r6
    4234:	3a00102d 	bcc	82f0 <crc16_arm+0x30a8>
    4238:	e35e0000 	cmp	lr, #0	; 0x0
    423c:	1a001093 	bne	8490 <crc16_arm+0x3248>
    4240:	e5d43000 	ldrb	r3, [r4]
    4244:	e3130080 	tst	r3, #128	; 0x80
    4248:	0a00109a 	beq	84b8 <crc16_arm+0x3270>
    424c:	e1a0c00e 	mov	ip, lr
    4250:	ea001101 	b	865c <crc16_arm+0x3414>
    4254:	e35e0004 	cmp	lr, #4	; 0x4
    4258:	1a00109e 	bne	84d8 <crc16_arm+0x3290>
    425c:	e5d43000 	ldrb	r3, [r4]
    4260:	e2033011 	and	r3, r3, #17	; 0x11
    4264:	e3530001 	cmp	r3, #1	; 0x1
    4268:	13a0c000 	movne	ip, #0	; 0x0
    426c:	1a001101 	bne	8678 <crc16_arm+0x3430>
    4270:	e2840001 	add	r0, r4, #1	; 0x1
    4274:	e3a07001 	mov	r7, #1	; 0x1
    4278:	e2451001 	sub	r1, r5, #1	; 0x1
    427c:	ea0010ac 	b	8534 <crc16_arm+0x32ec>
    4280:	e35e0001 	cmp	lr, #1	; 0x1
    4284:	1a0010ac 	bne	853c <crc16_arm+0x32f4>
    4288:	e5d42000 	ldrb	r2, [r4]
    428c:	e35200fe 	cmp	r2, #254	; 0xfe
    4290:	0a0010ac 	beq	8548 <crc16_arm+0x3300>
    4294:	e20230f0 	and	r3, r2, #240	; 0xf0
    4298:	e3530000 	cmp	r3, #0	; 0x0
    429c:	059f3180 	ldreq	r3, [pc, #384]	; 4424 <collie_sd_receive_chars+0x3bc>
    42a0:	05c32001 	streqb	r2, [r3, #1]
    42a4:	e59f017c 	ldr	r0, [pc, #380]	; 4428 <collie_sd_receive_chars+0x3c0>
    42a8:	e5d41000 	ldrb	r1, [r4]
    42ac:	ebfffffe 	bl	42ac <collie_sd_receive_chars+0x244>
    42b0:	e3a0c000 	mov	ip, #0	; 0x0
    42b4:	ea001101 	b	86c0 <crc16_arm+0x3478>
    42b8:	e59f2154 	ldr	r2, [pc, #340]	; 4414 <collie_sd_receive_chars+0x3ac>
    42bc:	e5d23000 	ldrb	r3, [r2]
    42c0:	e3530000 	cmp	r3, #0	; 0x0
    42c4:	1a0010c6 	bne	85e4 <crc16_arm+0x339c>
    42c8:	e59f3148 	ldr	r3, [pc, #328]	; 4418 <collie_sd_receive_chars+0x3b0>
    42cc:	e5d33000 	ldrb	r3, [r3]
    42d0:	e3530000 	cmp	r3, #0	; 0x0
    42d4:	0a0010c6 	beq	85f4 <crc16_arm+0x33ac>
    42d8:	e3510000 	cmp	r1, #0	; 0x0
    42dc:	0a001100 	beq	86e4 <crc16_arm+0x349c>
    42e0:	e3a02000 	mov	r2, #0	; 0x0
    42e4:	e59f3130 	ldr	r3, [pc, #304]	; 441c <collie_sd_receive_chars+0x3b4>
    42e8:	e1d330b0 	ldrh	r3, [r3]
    42ec:	e3130001 	tst	r3, #1	; 0x1
    42f0:	1a0010bf 	bne	85f4 <crc16_arm+0x33ac>
    42f4:	e1a03002 	mov	r3, r2
    42f8:	e2822001 	add	r2, r2, #1	; 0x1
    42fc:	e3530008 	cmp	r3, #8	; 0x8
    4300:	9a0010b7 	bls	85e4 <crc16_arm+0x339c>
    4304:	e59f3114 	ldr	r3, [pc, #276]	; 4420 <collie_sd_receive_chars+0x3b8>
    4308:	e2877001 	add	r7, r7, #1	; 0x1
    430c:	e1d330b0 	ldrh	r3, [r3]
    4310:	e2511001 	subs	r1, r1, #1	; 0x1
    4314:	e4c03001 	strb	r3, [r0], #1
    4318:	1a0010b6 	bne	85f8 <crc16_arm+0x33b0>
    431c:	ea001100 	b	8724 <crc16_arm+0x34dc>
    4320:	e5d23000 	ldrb	r3, [r2]
    4324:	e3530004 	cmp	r3, #4	; 0x4
    4328:	1a0010e5 	bne	86c4 <crc16_arm+0x347c>
    432c:	e3510000 	cmp	r1, #0	; 0x0
    4330:	0a001100 	beq	8738 <crc16_arm+0x34f0>
    4334:	e3a02000 	mov	r2, #0	; 0x0
    4338:	e59f30dc 	ldr	r3, [pc, #220]	; 441c <collie_sd_receive_chars+0x3b4>
    433c:	e1d330b0 	ldrh	r3, [r3]
    4340:	e3130001 	tst	r3, #1	; 0x1
    4344:	1a0010d4 	bne	869c <crc16_arm+0x3454>
    4348:	e1a03002 	mov	r3, r2
    434c:	e2822001 	add	r2, r2, #1	; 0x1
    4350:	e3530801 	cmp	r3, #65536	; 0x10000
    4354:	3a0010cc 	bcc	868c <crc16_arm+0x3444>
    4358:	e59f30c0 	ldr	r3, [pc, #192]	; 4420 <collie_sd_receive_chars+0x3b8>
    435c:	e1d330b0 	ldrh	r3, [r3]
    4360:	e3a02000 	mov	r2, #0	; 0x0
    4364:	e5c03000 	strb	r3, [r0]
    4368:	e59f30ac 	ldr	r3, [pc, #172]	; 441c <collie_sd_receive_chars+0x3b4>
    436c:	e1d330b0 	ldrh	r3, [r3]
    4370:	e3130001 	tst	r3, #1	; 0x1
    4374:	0a0010e0 	beq	86fc <crc16_arm+0x34b4>
    4378:	e1a03002 	mov	r3, r2
    437c:	e2822001 	add	r2, r2, #1	; 0x1
    4380:	e3530801 	cmp	r3, #65536	; 0x10000
    4384:	3a0010d8 	bcc	86ec <crc16_arm+0x34a4>
    4388:	e2800001 	add	r0, r0, #1	; 0x1
    438c:	e2877001 	add	r7, r7, #1	; 0x1
    4390:	e2511001 	subs	r1, r1, #1	; 0x1
    4394:	1a0010cb 	bne	86c8 <crc16_arm+0x3480>
    4398:	ea001100 	b	87a0 <crc16_arm+0x3558>
    439c:	e3510000 	cmp	r1, #0	; 0x0
    43a0:	0a001100 	beq	87a8 <crc16_arm+0x3560>
    43a4:	e3a02000 	mov	r2, #0	; 0x0
    43a8:	e59f306c 	ldr	r3, [pc, #108]	; 441c <collie_sd_receive_chars+0x3b4>
    43ac:	e1d330b0 	ldrh	r3, [r3]
    43b0:	e3130001 	tst	r3, #1	; 0x1
    43b4:	1a0010f0 	bne	877c <crc16_arm+0x3534>
    43b8:	e1a03002 	mov	r3, r2
    43bc:	e2822001 	add	r2, r2, #1	; 0x1
    43c0:	e3530008 	cmp	r3, #8	; 0x8
    43c4:	9a0010e8 	bls	876c <crc16_arm+0x3524>
    43c8:	e59f3050 	ldr	r3, [pc, #80]	; 4420 <collie_sd_receive_chars+0x3b8>
    43cc:	e1d330b0 	ldrh	r3, [r3]
    43d0:	e3a02000 	mov	r2, #0	; 0x0
    43d4:	e5c03000 	strb	r3, [r0]
    43d8:	e59f303c 	ldr	r3, [pc, #60]	; 441c <collie_sd_receive_chars+0x3b4>
    43dc:	e1d330b0 	ldrh	r3, [r3]
    43e0:	e3130001 	tst	r3, #1	; 0x1
    43e4:	0a0010fc 	beq	87dc <crc16_arm+0x3594>
    43e8:	e1a03002 	mov	r3, r2
    43ec:	e2822001 	add	r2, r2, #1	; 0x1
    43f0:	e3530008 	cmp	r3, #8	; 0x8
    43f4:	9a0010f4 	bls	87cc <crc16_arm+0x3584>
    43f8:	e2800001 	add	r0, r0, #1	; 0x1
    43fc:	e2877001 	add	r7, r7, #1	; 0x1
    4400:	e2511001 	subs	r1, r1, #1	; 0x1
    4404:	1a0010e7 	bne	87a8 <crc16_arm+0x3560>
    4408:	e1a0c007 	mov	ip, r7
    440c:	e1a0000c 	mov	r0, ip
    4410:	e91ba9f0 	ldmdb	fp, {r4, r5, r6, r7, r8, fp, sp, pc}
    4414:	00000199 	muleq	r0, r9, r1
    4418:	00000198 	muleq	r0, r8, r1
    441c:	f0000068 	andnv	r0, r0, r8, rrx
    4420:	f0000084 	andnv	r0, r0, r4, lsl #1
    4424:	000001b8 	streqh	r0, [r0], -r8
    4428:	00000378 	andeq	r0, r0, r8, ror r3

0000442c <collie_sd_transmit_chars>:
    442c:	e1a0c00d 	mov	ip, sp
    4430:	e92dd800 	stmdb	sp!, {fp, ip, lr, pc}
    4434:	e24cb004 	sub	fp, ip, #4	; 0x4
    4438:	e59fc1c8 	ldr	ip, [pc, #456]	; 4608 <collie_sd_transmit_chars+0x1dc>
    443c:	e5dc2000 	ldrb	r2, [ip]
    4440:	e3520000 	cmp	r2, #0	; 0x0
    4444:	1a001127 	bne	88e8 <crc16_arm+0x36a0>
    4448:	e59f31bc 	ldr	r3, [pc, #444]	; 460c <collie_sd_transmit_chars+0x1e0>
    444c:	e5d33000 	ldrb	r3, [r3]
    4450:	e3530000 	cmp	r3, #0	; 0x0
    4454:	0a001127 	beq	88f8 <crc16_arm+0x36b0>
    4458:	e1a0e002 	mov	lr, r2
    445c:	e15e0001 	cmp	lr, r1
    4460:	2a001161 	bcs	89ec <crc16_arm+0x37a4>
    4464:	e3a02000 	mov	r2, #0	; 0x0
    4468:	e59f31a0 	ldr	r3, [pc, #416]	; 4610 <collie_sd_transmit_chars+0x1e4>
    446c:	e1d330b0 	ldrh	r3, [r3]
    4470:	e3130002 	tst	r3, #2	; 0x2
    4474:	1a001120 	bne	88fc <crc16_arm+0x36b4>
    4478:	e1a03002 	mov	r3, r2
    447c:	e2822001 	add	r2, r2, #1	; 0x1
    4480:	e3530008 	cmp	r3, #8	; 0x8
    4484:	9a001118 	bls	88ec <crc16_arm+0x36a4>
    4488:	e59f2184 	ldr	r2, [pc, #388]	; 4614 <collie_sd_transmit_chars+0x1e8>
    448c:	e28ee001 	add	lr, lr, #1	; 0x1
    4490:	e4d03001 	ldrb	r3, [r0], #1
    4494:	e15e0001 	cmp	lr, r1
    4498:	e1c230b0 	strh	r3, [r2]
    449c:	3a001117 	bcc	8900 <crc16_arm+0x36b8>
    44a0:	ea001161 	b	8a2c <crc16_arm+0x37e4>
    44a4:	e5dc3000 	ldrb	r3, [ip]
    44a8:	e3530004 	cmp	r3, #4	; 0x4
    44ac:	1a001146 	bne	89cc <crc16_arm+0x3784>
    44b0:	e3a0e000 	mov	lr, #0	; 0x0
    44b4:	e15e0001 	cmp	lr, r1
    44b8:	2a001161 	bcs	8a44 <crc16_arm+0x37fc>
    44bc:	e3a02000 	mov	r2, #0	; 0x0
    44c0:	e59f3148 	ldr	r3, [pc, #328]	; 4610 <collie_sd_transmit_chars+0x1e4>
    44c4:	e1d330b0 	ldrh	r3, [r3]
    44c8:	e3130002 	tst	r3, #2	; 0x2
    44cc:	1a001136 	bne	89ac <crc16_arm+0x3764>
    44d0:	e1a03002 	mov	r3, r2
    44d4:	e2822001 	add	r2, r2, #1	; 0x1
    44d8:	e3530801 	cmp	r3, #65536	; 0x10000
    44dc:	3a00112e 	bcc	899c <crc16_arm+0x3754>
    44e0:	e59f212c 	ldr	r2, [pc, #300]	; 4614 <collie_sd_transmit_chars+0x1e8>
    44e4:	e4d03001 	ldrb	r3, [r0], #1
    44e8:	e3a0c000 	mov	ip, #0	; 0x0
    44ec:	e1c230b0 	strh	r3, [r2]
    44f0:	e59f3118 	ldr	r3, [pc, #280]	; 4610 <collie_sd_transmit_chars+0x1e4>
    44f4:	e1d330b0 	ldrh	r3, [r3]
    44f8:	e3130002 	tst	r3, #2	; 0x2
    44fc:	0a001142 	beq	8a0c <crc16_arm+0x37c4>
    4500:	e1a0300c 	mov	r3, ip
    4504:	e28cc001 	add	ip, ip, #1	; 0x1
    4508:	e3530801 	cmp	r3, #65536	; 0x10000
    450c:	3a00113a 	bcc	89fc <crc16_arm+0x37b4>
    4510:	e28ee001 	add	lr, lr, #1	; 0x1
    4514:	e15e0001 	cmp	lr, r1
    4518:	3a00112d 	bcc	89d4 <crc16_arm+0x378c>
    451c:	ea001161 	b	8aa8 <crc16_arm+0x3860>
    4520:	e3a0e000 	mov	lr, #0	; 0x0
    4524:	e15e0001 	cmp	lr, r1
    4528:	2a001161 	bcs	8ab4 <crc16_arm+0x386c>
    452c:	e3a02000 	mov	r2, #0	; 0x0
    4530:	e59f30d8 	ldr	r3, [pc, #216]	; 4610 <collie_sd_transmit_chars+0x1e4>
    4534:	e1d330b0 	ldrh	r3, [r3]
    4538:	e3130002 	tst	r3, #2	; 0x2
    453c:	1a001152 	bne	8a8c <crc16_arm+0x3844>
    4540:	e1a03002 	mov	r3, r2
    4544:	e2822001 	add	r2, r2, #1	; 0x1
    4548:	e3530008 	cmp	r3, #8	; 0x8
    454c:	9a00114a 	bls	8a7c <crc16_arm+0x3834>
    4550:	e59f20bc 	ldr	r2, [pc, #188]	; 4614 <collie_sd_transmit_chars+0x1e8>
    4554:	e4d03001 	ldrb	r3, [r0], #1
    4558:	e3a0c000 	mov	ip, #0	; 0x0
    455c:	e1c230b0 	strh	r3, [r2]
    4560:	e59f30a8 	ldr	r3, [pc, #168]	; 4610 <collie_sd_transmit_chars+0x1e4>
    4564:	e1d330b0 	ldrh	r3, [r3]
    4568:	e3130002 	tst	r3, #2	; 0x2
    456c:	0a00115e 	beq	8aec <crc16_arm+0x38a4>
    4570:	e1a0300c 	mov	r3, ip
    4574:	e28cc001 	add	ip, ip, #1	; 0x1
    4578:	e3530008 	cmp	r3, #8	; 0x8
    457c:	9a001156 	bls	8adc <crc16_arm+0x3894>
    4580:	e28ee001 	add	lr, lr, #1	; 0x1
    4584:	e15e0001 	cmp	lr, r1
    4588:	3a001149 	bcc	8ab4 <crc16_arm+0x386c>
    458c:	e59f3074 	ldr	r3, [pc, #116]	; 4608 <collie_sd_transmit_chars+0x1dc>
    4590:	e5d32000 	ldrb	r2, [r3]
    4594:	e3520000 	cmp	r2, #0	; 0x0
    4598:	1a001169 	bne	8b44 <crc16_arm+0x38fc>
    459c:	e59f3068 	ldr	r3, [pc, #104]	; 460c <collie_sd_transmit_chars+0x1e0>
    45a0:	e5d33000 	ldrb	r3, [r3]
    45a4:	e3530000 	cmp	r3, #0	; 0x0
    45a8:	1a00117e 	bne	8ba8 <crc16_arm+0x3960>
    45ac:	e3520004 	cmp	r2, #4	; 0x4
    45b0:	1a001175 	bne	8b8c <crc16_arm+0x3944>
    45b4:	e3a02000 	mov	r2, #0	; 0x0
    45b8:	e59f3050 	ldr	r3, [pc, #80]	; 4610 <collie_sd_transmit_chars+0x1e4>
    45bc:	e1d330b0 	ldrh	r3, [r3]
    45c0:	e3130008 	tst	r3, #8	; 0x8
    45c4:	1a00117e 	bne	8bc4 <crc16_arm+0x397c>
    45c8:	e1a03002 	mov	r3, r2
    45cc:	e2822001 	add	r2, r2, #1	; 0x1
    45d0:	e3530801 	cmp	r3, #65536	; 0x10000
    45d4:	3a00116c 	bcc	8b8c <crc16_arm+0x3944>
    45d8:	ea00117e 	b	8bd8 <crc16_arm+0x3990>
    45dc:	e3a02000 	mov	r2, #0	; 0x0
    45e0:	e59f3028 	ldr	r3, [pc, #40]	; 4610 <collie_sd_transmit_chars+0x1e4>
    45e4:	e1d330b0 	ldrh	r3, [r3]
    45e8:	e3130008 	tst	r3, #8	; 0x8
    45ec:	1a00117e 	bne	8bec <crc16_arm+0x39a4>
    45f0:	e1a03002 	mov	r3, r2
    45f4:	e2822001 	add	r2, r2, #1	; 0x1
    45f8:	e3530008 	cmp	r3, #8	; 0x8
    45fc:	9a001176 	bls	8bdc <crc16_arm+0x3994>
    4600:	e3a00000 	mov	r0, #0	; 0x0
    4604:	e91ba800 	ldmdb	fp, {fp, sp, pc}
    4608:	00000199 	muleq	r0, r9, r1
    460c:	00000198 	muleq	r0, r8, r1
    4610:	f0000068 	andnv	r0, r0, r8, rrx
    4614:	f0000080 	andnv	r0, r0, r0, lsl #1

00004618 <lock_sd>:
    4618:	e1a0c00d 	mov	ip, sp
    461c:	e92dd8f0 	stmdb	sp!, {r4, r5, r6, r7, fp, ip, lr, pc}
    4620:	e59f70dc 	ldr	r7, [pc, #220]	; 4704 <lock_sd+0xec>
    4624:	e24cb004 	sub	fp, ip, #4	; 0x4
    4628:	e5972000 	ldr	r2, [r7]
    462c:	e3a03001 	mov	r3, #1	; 0x1
    4630:	e3520000 	cmp	r2, #0	; 0x0
    4634:	e24dd020 	sub	sp, sp, #32	; 0x20
    4638:	05873000 	streq	r3, [r7]
    463c:	01a03002 	moveq	r3, r2
    4640:	e3530000 	cmp	r3, #0	; 0x0
    4644:	0a0011bd 	beq	8d40 <crc16_arm+0x3af8>
    4648:	e24b403c 	sub	r4, fp, #60	; 0x3c
    464c:	e1a00004 	mov	r0, r4
    4650:	e3a01000 	mov	r1, #0	; 0x0
    4654:	e3a02010 	mov	r2, #16	; 0x10
    4658:	ebfffffe 	bl	4658 <lock_sd+0x40>
    465c:	e59f20a4 	ldr	r2, [pc, #164]	; 4708 <lock_sd+0xf0>
    4660:	e3cd3d7f 	bic	r3, sp, #8128	; 0x1fc0
    4664:	e2821004 	add	r1, r2, #4	; 0x4
    4668:	e8910006 	ldmia	r1, {r1, r2}
    466c:	e0812002 	add	r2, r1, r2
    4670:	e3c3303f 	bic	r3, r3, #63	; 0x3f
    4674:	e50b3038 	str	r3, [fp, #-56]
    4678:	e3520000 	cmp	r2, #0	; 0x0
    467c:	e894000f 	ldmia	r4, {r0, r1, r2, r3}
    4680:	e24b402c 	sub	r4, fp, #44	; 0x2c
    4684:	e884000f 	stmia	r4, {r0, r1, r2, r3}
    4688:	13e00000 	mvnne	r0, #0	; 0x0
    468c:	191ba8f0 	ldmnedb	fp, {r4, r5, r6, r7, fp, sp, pc}
    4690:	e59f6074 	ldr	r6, [pc, #116]	; 470c <lock_sd+0xf4>
    4694:	e1a01004 	mov	r1, r4
    4698:	e1a00006 	mov	r0, r6
    469c:	ebfffffe 	bl	469c <lock_sd+0x84>
    46a0:	e3cd5d7f 	bic	r5, sp, #8128	; 0x1fc0
    46a4:	e3c5503f 	bic	r5, r5, #63	; 0x3f
    46a8:	e3a02001 	mov	r2, #1	; 0x1
    46ac:	e5852000 	str	r2, [r5]
    46b0:	e5973000 	ldr	r3, [r7]
    46b4:	e3530000 	cmp	r3, #0	; 0x0
    46b8:	0a0011b8 	beq	8da0 <crc16_arm+0x3b58>
    46bc:	ebfffffe 	bl	46bc <lock_sd+0xa4>
    46c0:	e5953008 	ldr	r3, [r5, #8]
    46c4:	e3530000 	cmp	r3, #0	; 0x0
    46c8:	0a0011a6 	beq	8d68 <crc16_arm+0x3b20>
    46cc:	e1a00006 	mov	r0, r6
    46d0:	e1a01004 	mov	r1, r4
    46d4:	e3a03000 	mov	r3, #0	; 0x0
    46d8:	e5853000 	str	r3, [r5]
    46dc:	ebfffffe 	bl	46dc <lock_sd+0xc4>
    46e0:	e3e00003 	mvn	r0, #3	; 0x3
    46e4:	e91ba8f0 	ldmdb	fp, {r4, r5, r6, r7, fp, sp, pc}
    46e8:	e5872000 	str	r2, [r7]
    46ec:	e5853000 	str	r3, [r5]
    46f0:	e1a00006 	mov	r0, r6
    46f4:	e1a01004 	mov	r1, r4
    46f8:	ebfffffe 	bl	46f8 <lock_sd+0xe0>
    46fc:	e3a00000 	mov	r0, #0	; 0x0
    4700:	e91ba8f0 	ldmdb	fp, {r4, r5, r6, r7, fp, sp, pc}
    4704:	00000184 	andeq	r0, r0, r4, lsl #3
    4708:	00000000 	andeq	r0, r0, r0
    470c:	0000018c 	andeq	r0, r0, ip, lsl #3

00004710 <unlock_sd>:
    4710:	e1a0c00d 	mov	ip, sp
    4714:	e92dd800 	stmdb	sp!, {fp, ip, lr, pc}
    4718:	e59f201c 	ldr	r2, [pc, #28]	; 473c <unlock_sd+0x2c>
    471c:	e3a03000 	mov	r3, #0	; 0x0
    4720:	e5823000 	str	r3, [r2]
    4724:	e24cb004 	sub	fp, ip, #4	; 0x4
    4728:	e59f0010 	ldr	r0, [pc, #16]	; 4740 <unlock_sd+0x30>
    472c:	e3a01001 	mov	r1, #1	; 0x1
    4730:	e1a02001 	mov	r2, r1
    4734:	ebfffffe 	bl	4734 <unlock_sd+0x24>
    4738:	e91ba800 	ldmdb	fp, {fp, sp, pc}
    473c:	00000184 	andeq	r0, r0, r4, lsl #3
    4740:	0000018c 	andeq	r0, r0, ip, lsl #3

00004744 <collie_sd_selectcard>:
    4744:	e1a0c00d 	mov	ip, sp
    4748:	e92dd800 	stmdb	sp!, {fp, ip, lr, pc}
    474c:	e24cb004 	sub	fp, ip, #4	; 0x4
    4750:	eb001184 	bl	8d68 <crc16_arm+0x3b20>
    4754:	e91ba800 	ldmdb	fp, {fp, sp, pc}

00004758 <collie_sd_deselectcard>:
    4758:	e1a0c00d 	mov	ip, sp
    475c:	e92dd800 	stmdb	sp!, {fp, ip, lr, pc}
    4760:	e24cb004 	sub	fp, ip, #4	; 0x4
    4764:	eb0011c2 	bl	8e74 <crc16_arm+0x3c2c>
    4768:	e91ba800 	ldmdb	fp, {fp, sp, pc}

0000476c <collie_sd_write_protected>:
    476c:	e1a0c00d 	mov	ip, sp
    4770:	e92dd800 	stmdb	sp!, {fp, ip, lr, pc}
    4774:	e59f3014 	ldr	r3, [pc, #20]	; 4790 <collie_sd_write_protected+0x24>
    4778:	e1d330b0 	ldrh	r3, [r3]
    477c:	e24cb004 	sub	fp, ip, #4	; 0x4
    4780:	e3130901 	tst	r3, #16384	; 0x4000
    4784:	13a00001 	movne	r0, #1	; 0x1
    4788:	03a00000 	moveq	r0, #0	; 0x0
    478c:	e91ba800 	ldmdb	fp, {fp, sp, pc}
    4790:	f0000098 	mulnv	r0, r8, r0

00004794 <calc_crc7>:
    4794:	e1a0c00d 	mov	ip, sp
    4798:	e92dd810 	stmdb	sp!, {r4, fp, ip, lr, pc}
    479c:	e24cb004 	sub	fp, ip, #4	; 0x4
    47a0:	e1a04000 	mov	r4, r0
    47a4:	e3a00000 	mov	r0, #0	; 0x0
    47a8:	e1a0c000 	mov	ip, r0
    47ac:	e1500001 	cmp	r0, r1
    47b0:	2a0011fe 	bcs	8fb0 <crc16_arm+0x3d68>
    47b4:	e3a0e007 	mov	lr, #7	; 0x7
    47b8:	e4d42001 	ldrb	r2, [r4], #1
    47bc:	e3100040 	tst	r0, #64	; 0x40
    47c0:	11a03080 	movne	r3, r0, lsl #1
    47c4:	120300ff 	andne	r0, r3, #255	; 0xff
    47c8:	12200009 	eorne	r0, r0, #9	; 0x9
    47cc:	01a03080 	moveq	r3, r0, lsl #1
    47d0:	020300ff 	andeq	r0, r3, #255	; 0xff
    47d4:	e3120080 	tst	r2, #128	; 0x80
    47d8:	11a03082 	movne	r3, r2, lsl #1
    47dc:	120320ff 	andne	r2, r3, #255	; 0xff
    47e0:	12200001 	eorne	r0, r0, #1	; 0x1
    47e4:	01a03082 	moveq	r3, r2, lsl #1
    47e8:	020320fe 	andeq	r2, r3, #254	; 0xfe
    47ec:	e25ee001 	subs	lr, lr, #1	; 0x1
    47f0:	5a0011ed 	bpl	8fac <crc16_arm+0x3d64>
    47f4:	e28cc001 	add	ip, ip, #1	; 0x1
    47f8:	e15c0001 	cmp	ip, r1
    47fc:	3a0011eb 	bcc	8fb0 <crc16_arm+0x3d68>
    4800:	e3a0c000 	mov	ip, #0	; 0x0
    4804:	e3100040 	tst	r0, #64	; 0x40
    4808:	11a03080 	movne	r3, r0, lsl #1
    480c:	120300ff 	andne	r0, r3, #255	; 0xff
    4810:	12200009 	eorne	r0, r0, #9	; 0x9
    4814:	01a03080 	moveq	r3, r0, lsl #1
    4818:	020300ff 	andeq	r0, r3, #255	; 0xff
    481c:	e28cc001 	add	ip, ip, #1	; 0x1
    4820:	e35c0006 	cmp	ip, #6	; 0x6
    4824:	9a0011ff 	bls	9028 <crc16_arm+0x3de0>
    4828:	e200007f 	and	r0, r0, #127	; 0x7f
    482c:	e91ba810 	ldmdb	fp, {r4, fp, sp, pc}

00004830 <tx>:
    4830:	e92d4030 	stmdb	sp!, {r4, r5, lr}
    4834:	e59fe0f8 	ldr	lr, [pc, #248]	; 4934 <tx+0x104>
    4838:	e1a04000 	mov	r4, r0
    483c:	e1a00001 	mov	r0, r1
    4840:	e5dec000 	ldrb	ip, [lr]
    4844:	e35c0000 	cmp	ip, #0	; 0x0
    4848:	1a001228 	bne	90f0 <crc16_arm+0x3ea8>
    484c:	e59f30e4 	ldr	r3, [pc, #228]	; 4938 <tx+0x108>
    4850:	e5d32000 	ldrb	r2, [r3]
    4854:	e3520000 	cmp	r2, #0	; 0x0
    4858:	0a001228 	beq	9100 <crc16_arm+0x3eb8>
    485c:	e15c0000 	cmp	ip, r0
    4860:	e1a0100c 	mov	r1, ip
    4864:	2a001227 	bcs	9108 <crc16_arm+0x3ec0>
    4868:	e59fc0cc 	ldr	ip, [pc, #204]	; 493c <tx+0x10c>
    486c:	e59fe0cc 	ldr	lr, [pc, #204]	; 4940 <tx+0x110>
    4870:	e3a02000 	mov	r2, #0	; 0x0
    4874:	e1dc30b0 	ldrh	r3, [ip]
    4878:	e2822001 	add	r2, r2, #1	; 0x1
    487c:	e3130002 	tst	r3, #2	; 0x2
    4880:	1a001221 	bne	910c <crc16_arm+0x3ec4>
    4884:	e3520009 	cmp	r2, #9	; 0x9
    4888:	9a00121b 	bls	90fc <crc16_arm+0x3eb4>
    488c:	e7d43001 	ldrb	r3, [r4, r1]
    4890:	e2811001 	add	r1, r1, #1	; 0x1
    4894:	e1510000 	cmp	r1, r0
    4898:	e1ce30b0 	strh	r3, [lr]
    489c:	3a00121a 	bcc	910c <crc16_arm+0x3ec4>
    48a0:	e8bd8030 	ldmia	sp!, {r4, r5, pc}
    48a4:	e8bd8030 	ldmia	sp!, {r4, r5, pc}
    48a8:	e5de2000 	ldrb	r2, [lr]
    48ac:	e59f3090 	ldr	r3, [pc, #144]	; 4944 <tx+0x114>
    48b0:	e3a01000 	mov	r1, #0	; 0x0
    48b4:	e3520004 	cmp	r2, #4	; 0x4
    48b8:	01a0c003 	moveq	ip, r3
    48bc:	13a0c00a 	movne	ip, #10	; 0xa
    48c0:	e1510000 	cmp	r1, r0
    48c4:	2a001227 	bcs	9168 <crc16_arm+0x3f20>
    48c8:	e59f5070 	ldr	r5, [pc, #112]	; 4940 <tx+0x110>
    48cc:	e3a02000 	mov	r2, #0	; 0x0
    48d0:	e152000c 	cmp	r2, ip
    48d4:	2a00123b 	bcs	91c8 <crc16_arm+0x3f80>
    48d8:	e59fe05c 	ldr	lr, [pc, #92]	; 493c <tx+0x10c>
    48dc:	e1de30b0 	ldrh	r3, [lr]
    48e0:	e2822001 	add	r2, r2, #1	; 0x1
    48e4:	e3130002 	tst	r3, #2	; 0x2
    48e8:	1a00123b 	bne	91dc <crc16_arm+0x3f94>
    48ec:	e152000c 	cmp	r2, ip
    48f0:	3a001235 	bcc	91cc <crc16_arm+0x3f84>
    48f4:	e7d43001 	ldrb	r3, [r4, r1]
    48f8:	e3a02000 	mov	r2, #0	; 0x0
    48fc:	e152000c 	cmp	r2, ip
    4900:	e1c530b0 	strh	r3, [r5]
    4904:	2a001247 	bcs	9228 <crc16_arm+0x3fe0>
    4908:	e59fe02c 	ldr	lr, [pc, #44]	; 493c <tx+0x10c>
    490c:	e1de30b0 	ldrh	r3, [lr]
    4910:	e2822001 	add	r2, r2, #1	; 0x1
    4914:	e3130002 	tst	r3, #2	; 0x2
    4918:	0a001247 	beq	923c <crc16_arm+0x3ff4>
    491c:	e152000c 	cmp	r2, ip
    4920:	3a001241 	bcc	922c <crc16_arm+0x3fe4>
    4924:	e2811001 	add	r1, r1, #1	; 0x1
    4928:	e1510000 	cmp	r1, r0
    492c:	3a001231 	bcc	91f8 <crc16_arm+0x3fb0>
    4930:	ea001227 	b	91d4 <crc16_arm+0x3f8c>
    4934:	00000199 	muleq	r0, r9, r1
    4938:	00000198 	muleq	r0, r8, r1
    493c:	f0000068 	andnv	r0, r0, r8, rrx
    4940:	f0000080 	andnv	r0, r0, r0, lsl #1
    4944:	00010001 	andeq	r0, r1, r1

00004948 <xxxwait>:
    4948:	e59f3038 	ldr	r3, [pc, #56]	; 4988 <xxxwait+0x40>
    494c:	e59f2038 	ldr	r2, [pc, #56]	; 498c <xxxwait+0x44>
    4950:	e3a00000 	mov	r0, #0	; 0x0
    4954:	e5d31000 	ldrb	r1, [r3]
    4958:	e3510004 	cmp	r1, #4	; 0x4
    495c:	13a0200a 	movne	r2, #10	; 0xa
    4960:	e1500002 	cmp	r0, r2
    4964:	21a0f00e 	movcs	pc, lr
    4968:	e59f1020 	ldr	r1, [pc, #32]	; 4990 <xxxwait+0x48>
    496c:	e1d130b0 	ldrh	r3, [r1]
    4970:	e2800001 	add	r0, r0, #1	; 0x1
    4974:	e3130008 	tst	r3, #8	; 0x8
    4978:	11a0f00e 	movne	pc, lr
    497c:	e1500002 	cmp	r0, r2
    4980:	3a001259 	bcc	92ec <crc16_arm+0x40a4>
    4984:	e1a0f00e 	mov	pc, lr
    4988:	00000199 	muleq	r0, r9, r1
    498c:	00010001 	andeq	r0, r1, r1
    4990:	f0000068 	andnv	r0, r0, r8, rrx

00004994 <collie_sd_transmit_block>:
    4994:	e92d4ff0 	stmdb	sp!, {r4, r5, r6, r7, r8, r9, sl, fp, lr}
    4998:	e59f7194 	ldr	r7, [pc, #404]	; 4b34 <collie_sd_transmit_block+0x1a0>
    499c:	e59f6194 	ldr	r6, [pc, #404]	; 4b38 <collie_sd_transmit_block+0x1a4>
    49a0:	e1a04001 	mov	r4, r1
    49a4:	e5971000 	ldr	r1, [r7]
    49a8:	e5962000 	ldr	r2, [r6]
    49ac:	e24dd008 	sub	sp, sp, #8	; 0x8
    49b0:	e1a05000 	mov	r5, r0
    49b4:	e0030192 	mul	r3, r2, r1
    49b8:	e1530004 	cmp	r3, r4
    49bc:	0a001271 	beq	9388 <crc16_arm+0x4140>
    49c0:	e3a00001 	mov	r0, #1	; 0x1
    49c4:	e28dd008 	add	sp, sp, #8	; 0x8
    49c8:	e8bd8ff0 	ldmia	sp!, {r4, r5, r6, r7, r8, r9, sl, fp, pc}
    49cc:	e3540000 	cmp	r4, #0	; 0x0
    49d0:	0a0012ac 	beq	9488 <crc16_arm+0x4240>
    49d4:	e28db006 	add	fp, sp, #6	; 0x6
    49d8:	e28d9007 	add	r9, sp, #7	; 0x7
    49dc:	e5971000 	ldr	r1, [r7]
    49e0:	e1a00005 	mov	r0, r5
    49e4:	ebfffffe 	bl	49e4 <collie_sd_transmit_block+0x50>
    49e8:	e5963000 	ldr	r3, [r6]
    49ec:	e1a00800 	mov	r0, r0, lsl #16
    49f0:	e1a02c20 	mov	r2, r0, lsr #24
    49f4:	e3530001 	cmp	r3, #1	; 0x1
    49f8:	e1a00820 	mov	r0, r0, lsr #16
    49fc:	e3e03003 	mvn	r3, #3	; 0x3
    4a00:	e3a01001 	mov	r1, #1	; 0x1
    4a04:	93e03001 	mvnls	r3, #1	; 0x1
    4a08:	e5cd0001 	strb	r0, [sp, #1]
    4a0c:	e1a0000b 	mov	r0, fp
    4a10:	e5cd2000 	strb	r2, [sp]
    4a14:	e5cd3006 	strb	r3, [sp, #6]
    4a18:	e1a08001 	mov	r8, r1
    4a1c:	eb00120a 	bl	924c <crc16_arm+0x4004>
    4a20:	e5971000 	ldr	r1, [r7]
    4a24:	e1a00005 	mov	r0, r5
    4a28:	eb00120a 	bl	9258 <crc16_arm+0x4010>
    4a2c:	e28d0000 	add	r0, sp, #0	; 0x0
    4a30:	e3a01002 	mov	r1, #2	; 0x2
    4a34:	eb00120a 	bl	9264 <crc16_arm+0x401c>
    4a38:	eb001250 	bl	9380 <crc16_arm+0x4138>
    4a3c:	e59f30f8 	ldr	r3, [pc, #248]	; 4b3c <collie_sd_transmit_block+0x1a8>
    4a40:	e1a01008 	mov	r1, r8
    4a44:	e3e0c000 	mvn	ip, #0	; 0x0
    4a48:	e5932000 	ldr	r2, [r3]
    4a4c:	e1a00009 	mov	r0, r9
    4a50:	e3a03004 	mov	r3, #4	; 0x4
    4a54:	e5cdc007 	strb	ip, [sp, #7]
    4a58:	eb001018 	bl	8ac0 <crc16_arm+0x3878>
    4a5c:	e5dd1007 	ldrb	r1, [sp, #7]
    4a60:	e59fa0d8 	ldr	sl, [pc, #216]	; 4b40 <collie_sd_transmit_block+0x1ac>
    4a64:	e1a03831 	mov	r3, r1, lsr r8
    4a68:	e2033007 	and	r3, r3, #7	; 0x7
    4a6c:	e3530005 	cmp	r3, #5	; 0x5
    4a70:	0a0012c7 	beq	9594 <crc16_arm+0x434c>
    4a74:	ca0012c2 	bgt	9584 <crc16_arm+0x433c>
    4a78:	e3530002 	cmp	r3, #2	; 0x2
    4a7c:	1a0012ba 	bne	956c <crc16_arm+0x4324>
    4a80:	e59f20ac 	ldr	r2, [pc, #172]	; 4b34 <collie_sd_transmit_block+0x1a0>
    4a84:	e5963000 	ldr	r3, [r6]
    4a88:	e58a8000 	str	r8, [sl]
    4a8c:	e5921000 	ldr	r1, [r2]
    4a90:	e3530001 	cmp	r3, #1	; 0x1
    4a94:	e0614004 	rsb	r4, r1, r4
    4a98:	e0855001 	add	r5, r5, r1
    4a9c:	8a0012b8 	bhi	9584 <crc16_arm+0x433c>
    4aa0:	e3540000 	cmp	r4, #0	; 0x0
    4aa4:	1a001275 	bne	9480 <crc16_arm+0x4238>
    4aa8:	e59f3088 	ldr	r3, [pc, #136]	; 4b38 <collie_sd_transmit_block+0x1a4>
    4aac:	e5932000 	ldr	r2, [r3]
    4ab0:	e3520001 	cmp	r2, #1	; 0x1
    4ab4:	8a0012ae 	bhi	9574 <crc16_arm+0x432c>
    4ab8:	e1a00004 	mov	r0, r4
    4abc:	ea00126f 	b	9480 <crc16_arm+0x4238>
    4ac0:	e3e03002 	mvn	r3, #2	; 0x2
    4ac4:	e1a0000b 	mov	r0, fp
    4ac8:	e1a01008 	mov	r1, r8
    4acc:	e5cd3006 	strb	r3, [sp, #6]
    4ad0:	eb00120a 	bl	9300 <crc16_arm+0x40b8>
    4ad4:	eb001250 	bl	941c <crc16_arm+0x41d4>
    4ad8:	e58a8000 	str	r8, [sl]
    4adc:	eb000ff2 	bl	8aac <crc16_arm+0x3864>
    4ae0:	e58a8000 	str	r8, [sl]
    4ae4:	ea0012ac 	b	959c <crc16_arm+0x4354>
    4ae8:	eb000ff2 	bl	8ab8 <crc16_arm+0x3870>
    4aec:	ea0012a6 	b	958c <crc16_arm+0x4344>
    4af0:	e59f004c 	ldr	r0, [pc, #76]	; 4b44 <collie_sd_transmit_block+0x1b0>
    4af4:	e201101f 	and	r1, r1, #31	; 0x1f
    4af8:	ebfffffe 	bl	4af8 <collie_sd_transmit_block+0x164>
    4afc:	e3a0000c 	mov	r0, #12	; 0xc
    4b00:	e3a01000 	mov	r1, #0	; 0x0
    4b04:	eb000ed2 	bl	8654 <crc16_arm+0x340c>
    4b08:	e3a00002 	mov	r0, #2	; 0x2
    4b0c:	ea00126f 	b	94d0 <crc16_arm+0x4288>
    4b10:	e3530006 	cmp	r3, #6	; 0x6
    4b14:	0201101f 	andeq	r1, r1, #31	; 0x1f
    4b18:	059f0028 	ldreq	r0, [pc, #40]	; 4b48 <collie_sd_transmit_block+0x1b4>
    4b1c:	1a0012ba 	bne	960c <crc16_arm+0x43c4>
    4b20:	ea0012bc 	b	9618 <crc16_arm+0x43d0>
    4b24:	e201101f 	and	r1, r1, #31	; 0x1f
    4b28:	e59f001c 	ldr	r0, [pc, #28]	; 4b4c <collie_sd_transmit_block+0x1b8>
    4b2c:	ebfffffe 	bl	4b2c <collie_sd_transmit_block+0x198>
    4b30:	ea00126e 	b	94f0 <crc16_arm+0x42a8>
    4b34:	000001cc 	andeq	r0, r0, ip, asr #3
    4b38:	000001d0 	ldreqd	r0, [r0], -r0
    4b3c:	000001b4 	streqh	r0, [r0], -r4
    4b40:	000001d4 	ldreqd	r0, [r0], -r4
    4b44:	00000000 	andeq	r0, r0, r0
    4b48:	00000028 	andeq	r0, r0, r8, lsr #32
    4b4c:	00000040 	andeq	r0, r0, r0, asr #32

00004b50 <rx>:
    4b50:	e92d4030 	stmdb	sp!, {r4, r5, lr}
    4b54:	e59fe108 	ldr	lr, [pc, #264]	; 4c64 <rx+0x114>
    4b58:	e1a04000 	mov	r4, r0
    4b5c:	e1a00001 	mov	r0, r1
    4b60:	e5dec000 	ldrb	ip, [lr]
    4b64:	e35c0000 	cmp	ip, #0	; 0x0
    4b68:	1a0012f4 	bne	9740 <crc16_arm+0x44f8>
    4b6c:	e59f30f4 	ldr	r3, [pc, #244]	; 4c68 <rx+0x118>
    4b70:	e5d32000 	ldrb	r2, [r3]
    4b74:	e3520000 	cmp	r2, #0	; 0x0
    4b78:	0a0012f4 	beq	9750 <crc16_arm+0x4508>
    4b7c:	e15c0000 	cmp	ip, r0
    4b80:	e1a0100c 	mov	r1, ip
    4b84:	2a0012f3 	bcs	9758 <crc16_arm+0x4510>
    4b88:	e59fe0dc 	ldr	lr, [pc, #220]	; 4c6c <rx+0x11c>
    4b8c:	e3a02000 	mov	r2, #0	; 0x0
    4b90:	e2822001 	add	r2, r2, #1	; 0x1
    4b94:	e352000c 	cmp	r2, #12	; 0xc
    4b98:	9a0012e2 	bls	9728 <crc16_arm+0x44e0>
    4b9c:	e59fc0cc 	ldr	ip, [pc, #204]	; 4c70 <rx+0x120>
    4ba0:	e3a02000 	mov	r2, #0	; 0x0
    4ba4:	e1dc30b0 	ldrh	r3, [ip]
    4ba8:	e2822001 	add	r2, r2, #1	; 0x1
    4bac:	e3130001 	tst	r3, #1	; 0x1
    4bb0:	1a0012ed 	bne	976c <crc16_arm+0x4524>
    4bb4:	e3520009 	cmp	r2, #9	; 0x9
    4bb8:	9a0012e7 	bls	975c <crc16_arm+0x4514>
    4bbc:	e1de30b0 	ldrh	r3, [lr]
    4bc0:	e7c43001 	strb	r3, [r4, r1]
    4bc4:	e2811001 	add	r1, r1, #1	; 0x1
    4bc8:	e1510000 	cmp	r1, r0
    4bcc:	3a0012e1 	bcc	9758 <crc16_arm+0x4510>
    4bd0:	e8bd8030 	ldmia	sp!, {r4, r5, pc}
    4bd4:	e8bd8030 	ldmia	sp!, {r4, r5, pc}
    4bd8:	e5de2000 	ldrb	r2, [lr]
    4bdc:	e59f3090 	ldr	r3, [pc, #144]	; 4c74 <rx+0x124>
    4be0:	e3a01000 	mov	r1, #0	; 0x0
    4be4:	e3520004 	cmp	r2, #4	; 0x4
    4be8:	01a0c003 	moveq	ip, r3
    4bec:	13a0c00a 	movne	ip, #10	; 0xa
    4bf0:	e1510000 	cmp	r1, r0
    4bf4:	2a0012f3 	bcs	97c8 <crc16_arm+0x4580>
    4bf8:	e59f506c 	ldr	r5, [pc, #108]	; 4c6c <rx+0x11c>
    4bfc:	e3a02000 	mov	r2, #0	; 0x0
    4c00:	e152000c 	cmp	r2, ip
    4c04:	2a001307 	bcs	9828 <crc16_arm+0x45e0>
    4c08:	e59fe060 	ldr	lr, [pc, #96]	; 4c70 <rx+0x120>
    4c0c:	e1de30b0 	ldrh	r3, [lr]
    4c10:	e2822001 	add	r2, r2, #1	; 0x1
    4c14:	e3130001 	tst	r3, #1	; 0x1
    4c18:	1a001307 	bne	983c <crc16_arm+0x45f4>
    4c1c:	e152000c 	cmp	r2, ip
    4c20:	3a001301 	bcc	982c <crc16_arm+0x45e4>
    4c24:	e1d530b0 	ldrh	r3, [r5]
    4c28:	e3a02000 	mov	r2, #0	; 0x0
    4c2c:	e152000c 	cmp	r2, ip
    4c30:	e7c43001 	strb	r3, [r4, r1]
    4c34:	2a001313 	bcs	9888 <crc16_arm+0x4640>
    4c38:	e59fe030 	ldr	lr, [pc, #48]	; 4c70 <rx+0x120>
    4c3c:	e1de30b0 	ldrh	r3, [lr]
    4c40:	e2822001 	add	r2, r2, #1	; 0x1
    4c44:	e3130001 	tst	r3, #1	; 0x1
    4c48:	0a001313 	beq	989c <crc16_arm+0x4654>
    4c4c:	e152000c 	cmp	r2, ip
    4c50:	3a00130d 	bcc	988c <crc16_arm+0x4644>
    4c54:	e2811001 	add	r1, r1, #1	; 0x1
    4c58:	e1510000 	cmp	r1, r0
    4c5c:	3a0012fd 	bcc	9858 <crc16_arm+0x4610>
    4c60:	ea0012f3 	b	9834 <crc16_arm+0x45ec>
    4c64:	00000199 	muleq	r0, r9, r1
    4c68:	00000198 	muleq	r0, r8, r1
    4c6c:	f0000084 	andnv	r0, r0, r4, lsl #1
    4c70:	f0000068 	andnv	r0, r0, r8, rrx
    4c74:	00010001 	andeq	r0, r1, r1

00004c78 <collie_sd_receive_block>:
    4c78:	e92d47f0 	stmdb	sp!, {r4, r5, r6, r7, r8, r9, sl, lr}
    4c7c:	e59f7184 	ldr	r7, [pc, #388]	; 4e08 <collie_sd_receive_block+0x190>
    4c80:	e59fa184 	ldr	sl, [pc, #388]	; 4e0c <collie_sd_receive_block+0x194>
    4c84:	e1a06001 	mov	r6, r1
    4c88:	e5971000 	ldr	r1, [r7]
    4c8c:	e59a2000 	ldr	r2, [sl]
    4c90:	e1a04000 	mov	r4, r0
    4c94:	e24dd004 	sub	sp, sp, #4	; 0x4
    4c98:	e0030192 	mul	r3, r2, r1
    4c9c:	e3a09000 	mov	r9, #0	; 0x0
    4ca0:	e1530006 	cmp	r3, r6
    4ca4:	13a00001 	movne	r0, #1	; 0x1
    4ca8:	0a00132b 	beq	995c <crc16_arm+0x4714>
    4cac:	e28dd004 	add	sp, sp, #4	; 0x4
    4cb0:	e8bd87f0 	ldmia	sp!, {r4, r5, r6, r7, r8, r9, sl, pc}
    4cb4:	e3560000 	cmp	r6, #0	; 0x0
    4cb8:	0a00134e 	beq	99f8 <crc16_arm+0x47b0>
    4cbc:	e59f814c 	ldr	r8, [pc, #332]	; 4e10 <collie_sd_receive_block+0x198>
    4cc0:	e5983000 	ldr	r3, [r8]
    4cc4:	e3530000 	cmp	r3, #0	; 0x0
    4cc8:	0a001337 	beq	99ac <crc16_arm+0x4764>
    4ccc:	e3a05000 	mov	r5, #0	; 0x0
    4cd0:	e1550003 	cmp	r5, r3
    4cd4:	25d41000 	ldrcsb	r1, [r4]
    4cd8:	3a001373 	bcc	9aac <crc16_arm+0x4864>
    4cdc:	e35100fe 	cmp	r1, #254	; 0xfe
    4ce0:	1a00136a 	bne	9a90 <crc16_arm+0x4848>
    4ce4:	e5971000 	ldr	r1, [r7]
    4ce8:	e1a00004 	mov	r0, r4
    4cec:	eb0012d2 	bl	983c <crc16_arm+0x45f4>
    4cf0:	e1a0000d 	mov	r0, sp
    4cf4:	e3a01002 	mov	r1, #2	; 0x2
    4cf8:	eb0012d2 	bl	9848 <crc16_arm+0x4600>
    4cfc:	e5971000 	ldr	r1, [r7]
    4d00:	e1a00004 	mov	r0, r4
    4d04:	ebfffffe 	bl	4d04 <collie_sd_receive_block+0x8c>
    4d08:	e5dd1000 	ldrb	r1, [sp]
    4d0c:	e1a00800 	mov	r0, r0, lsl #16
    4d10:	e1a0c820 	mov	ip, r0, lsr #16
    4d14:	e1510c20 	cmp	r1, r0, lsr #24
    4d18:	1a001368 	bne	9ac0 <crc16_arm+0x4878>
    4d1c:	e5dd2001 	ldrb	r2, [sp, #1]
    4d20:	e20c30ff 	and	r3, ip, #255	; 0xff
    4d24:	e1530002 	cmp	r3, r2
    4d28:	1a001362 	bne	9ab8 <crc16_arm+0x4870>
    4d2c:	e59f20d4 	ldr	r2, [pc, #212]	; 4e08 <collie_sd_receive_block+0x190>
    4d30:	e5923000 	ldr	r3, [r2]
    4d34:	e0566003 	subs	r6, r6, r3
    4d38:	e0844003 	add	r4, r4, r3
    4d3c:	1a00132e 	bne	99fc <crc16_arm+0x47b4>
    4d40:	e59a0000 	ldr	r0, [sl]
    4d44:	e3500001 	cmp	r0, #1	; 0x1
    4d48:	8a00135d 	bhi	9ac4 <crc16_arm+0x487c>
    4d4c:	e3500001 	cmp	r0, #1	; 0x1
    4d50:	0a001355 	beq	9aac <crc16_arm+0x4864>
    4d54:	e1a00009 	mov	r0, r9
    4d58:	ea001329 	b	9a04 <crc16_arm+0x47bc>
    4d5c:	e59f30b0 	ldr	r3, [pc, #176]	; 4e14 <collie_sd_receive_block+0x19c>
    4d60:	e2831004 	add	r1, r3, #4	; 0x4
    4d64:	e8910006 	ldmia	r1, {r1, r2}
    4d68:	e0812002 	add	r2, r1, r2
    4d6c:	e3520000 	cmp	r2, #0	; 0x0
    4d70:	1a001353 	bne	9ac4 <crc16_arm+0x487c>
    4d74:	ebfffffe 	bl	4d74 <collie_sd_receive_block+0xfc>
    4d78:	ea001353 	b	9acc <crc16_arm+0x4884>
    4d7c:	e3a0000c 	mov	r0, #12	; 0xc
    4d80:	e3a01000 	mov	r1, #0	; 0x0
    4d84:	eb000ed2 	bl	88d4 <crc16_arm+0x368c>
    4d88:	e59a0000 	ldr	r0, [sl]
    4d8c:	ea001351 	b	9ad8 <crc16_arm+0x4890>
    4d90:	e20220ff 	and	r2, r2, #255	; 0xff
    4d94:	e1a0300c 	mov	r3, ip
    4d98:	e59f0078 	ldr	r0, [pc, #120]	; 4e18 <collie_sd_receive_block+0x1a0>
    4d9c:	ebfffffe 	bl	4d9c <collie_sd_receive_block+0x124>
    4da0:	e3a09002 	mov	r9, #2	; 0x2
    4da4:	ea00134e 	b	9ae4 <crc16_arm+0x489c>
    4da8:	e5dd2001 	ldrb	r2, [sp, #1]
    4dac:	ea001362 	b	9b3c <crc16_arm+0x48f4>
    4db0:	e31100f0 	tst	r1, #240	; 0xf0
    4db4:	059f3060 	ldreq	r3, [pc, #96]	; 4e1c <collie_sd_receive_block+0x1a4>
    4db8:	e59f0060 	ldr	r0, [pc, #96]	; 4e20 <collie_sd_receive_block+0x1a8>
    4dbc:	e3a09001 	mov	r9, #1	; 0x1
    4dc0:	05c31001 	streqb	r1, [r3, #1]
    4dc4:	05d41000 	ldreqb	r1, [r4]
    4dc8:	e20110ff 	and	r1, r1, #255	; 0xff
    4dcc:	ebfffffe 	bl	4dcc <collie_sd_receive_block+0x154>
    4dd0:	ea00134e 	b	9b10 <crc16_arm+0x48c8>
    4dd4:	e3a01001 	mov	r1, #1	; 0x1
    4dd8:	e1a00004 	mov	r0, r4
    4ddc:	eb0012d2 	bl	992c <crc16_arm+0x46e4>
    4de0:	e5d41000 	ldrb	r1, [r4]
    4de4:	e2855001 	add	r5, r5, #1	; 0x1
    4de8:	e35100fe 	cmp	r1, #254	; 0xfe
    4dec:	0a001337 	beq	9ad0 <crc16_arm+0x4888>
    4df0:	e31100f0 	tst	r1, #240	; 0xf0
    4df4:	0a001335 	beq	9ad0 <crc16_arm+0x4888>
    4df8:	e5983000 	ldr	r3, [r8]
    4dfc:	e1550003 	cmp	r5, r3
    4e00:	3a001373 	bcc	9bd4 <crc16_arm+0x498c>
    4e04:	ea001335 	b	9ae0 <crc16_arm+0x4898>
    4e08:	000001cc 	andeq	r0, r0, ip, asr #3
    4e0c:	000001d0 	ldreqd	r0, [r0], -r0
    4e10:	000001b4 	streqh	r0, [r0], -r4
    4e14:	00000000 	andeq	r0, r0, r0
    4e18:	0000005c 	andeq	r0, r0, ip, asr r0
    4e1c:	000001b8 	streqh	r0, [r0], -r8
    4e20:	00000084 	andeq	r0, r0, r4, lsl #1

00004e24 <sd_read_single_block_withcheck>:
    4e24:	e92d47f0 	stmdb	sp!, {r4, r5, r6, r7, r8, r9, sl, lr}
    4e28:	e3530000 	cmp	r3, #0	; 0x0
    4e2c:	e24dd004 	sub	sp, sp, #4	; 0x4
    4e30:	e1a0a003 	mov	sl, r3
    4e34:	e1a06000 	mov	r6, r0
    4e38:	e1a09002 	mov	r9, r2
    4e3c:	e1a07001 	mov	r7, r1
    4e40:	e5905010 	ldr	r5, [r0, #16]
    4e44:	e1a08002 	mov	r8, r2
    4e48:	0a0013f2 	beq	9e18 <crc16_arm+0x4bd0>
    4e4c:	e5d03008 	ldrb	r3, [r0, #8]
    4e50:	e3530000 	cmp	r3, #0	; 0x0
    4e54:	0a0013f2 	beq	9e24 <crc16_arm+0x4bdc>
    4e58:	e1a00001 	mov	r0, r1
    4e5c:	e1a01005 	mov	r1, r5
    4e60:	ebfffffe 	bl	4e60 <sd_read_single_block_withcheck+0x3c>
    4e64:	e3500000 	cmp	r0, #0	; 0x0
    4e68:	1a0013f2 	bne	9e38 <crc16_arm+0x4bf0>
    4e6c:	e1a0000a 	mov	r0, sl
    4e70:	e1a01005 	mov	r1, r5
    4e74:	ebfffffe 	bl	4e74 <sd_read_single_block_withcheck+0x50>
    4e78:	e3500000 	cmp	r0, #0	; 0x0
    4e7c:	1a0013f2 	bne	9e4c <crc16_arm+0x4c04>
    4e80:	e1a00006 	mov	r0, r6
    4e84:	eb000b33 	bl	7b58 <crc16_arm+0x2910>
    4e88:	e3500000 	cmp	r0, #0	; 0x0
    4e8c:	ba0013a9 	blt	9d38 <crc16_arm+0x4af0>
    4e90:	e5963080 	ldr	r3, [r6, #128]
    4e94:	e3530001 	cmp	r3, #1	; 0x1
    4e98:	0a0013b7 	beq	9d7c <crc16_arm+0x4b34>
    4e9c:	e35a0000 	cmp	sl, #0	; 0x0
    4ea0:	e1a0400a 	mov	r4, sl
    4ea4:	1a0013ab 	bne	9d58 <crc16_arm+0x4b10>
    4ea8:	e1a0000a 	mov	r0, sl
    4eac:	e28dd004 	add	sp, sp, #4	; 0x4
    4eb0:	e8bd87f0 	ldmia	sp!, {r4, r5, r6, r7, r8, r9, sl, pc}
    4eb4:	e1a01007 	mov	r1, r7
    4eb8:	e1a02008 	mov	r2, r8
    4ebc:	e1a00006 	mov	r0, r6
    4ec0:	e1a03005 	mov	r3, r5
    4ec4:	eb00095f 	bl	7448 <crc16_arm+0x2200>
    4ec8:	e3500000 	cmp	r0, #0	; 0x0
    4ecc:	e0877005 	add	r7, r7, r5
    4ed0:	e0888005 	add	r8, r8, r5
    4ed4:	ba0013a9 	blt	9d80 <crc16_arm+0x4b38>
    4ed8:	e0544005 	subs	r4, r4, r5
    4edc:	1a0013ab 	bne	9d90 <crc16_arm+0x4b48>
    4ee0:	ea0013a8 	b	9d88 <crc16_arm+0x4b40>
    4ee4:	e5963000 	ldr	r3, [r6]
    4ee8:	e5932014 	ldr	r2, [r3, #20]
    4eec:	e3520000 	cmp	r2, #0	; 0x0
    4ef0:	0a0013a5 	beq	9d8c <crc16_arm+0x4b44>
    4ef4:	e59fc0dc 	ldr	ip, [pc, #220]	; 4fd8 <sd_read_single_block_withcheck+0x1b4>
    4ef8:	e59c3000 	ldr	r3, [ip]
    4efc:	e3530000 	cmp	r3, #0	; 0x0
    4f00:	0a0013c7 	beq	9e24 <crc16_arm+0x4bdc>
    4f04:	e59f30d0 	ldr	r3, [pc, #208]	; 4fdc <sd_read_single_block_withcheck+0x1b8>
    4f08:	e5930000 	ldr	r0, [r3]
    4f0c:	e1570000 	cmp	r7, r0
    4f10:	3a0013c7 	bcc	9e34 <crc16_arm+0x4bec>
    4f14:	e087200a 	add	r2, r7, sl
    4f18:	e2803a02 	add	r3, r0, #8192	; 0x2000
    4f1c:	e1520003 	cmp	r2, r3
    4f20:	9a0013eb 	bls	9ed4 <crc16_arm+0x4c8c>
    4f24:	e596301c 	ldr	r3, [r6, #28]
    4f28:	e35a0a02 	cmp	sl, #8192	; 0x2000
    4f2c:	a3a02000 	movge	r2, #0	; 0x0
    4f30:	b3a02001 	movlt	r2, #1	; 0x1
    4f34:	e2871a02 	add	r1, r7, #8192	; 0x2000
    4f38:	e1510003 	cmp	r1, r3
    4f3c:	83a02000 	movhi	r2, #0	; 0x0
    4f40:	92022001 	andls	r2, r2, #1	; 0x1
    4f44:	e3520000 	cmp	r2, #0	; 0x0
    4f48:	0a0013a5 	beq	9de4 <crc16_arm+0x4b9c>
    4f4c:	e3a03000 	mov	r3, #0	; 0x0
    4f50:	e58c3000 	str	r3, [ip]
    4f54:	e1a01005 	mov	r1, r5
    4f58:	e3a00a02 	mov	r0, #8192	; 0x2000
    4f5c:	ebfffffe 	bl	4f5c <sd_read_single_block_withcheck+0x138>
    4f60:	e59f8078 	ldr	r8, [pc, #120]	; 4fe0 <sd_read_single_block_withcheck+0x1bc>
    4f64:	e1a0c000 	mov	ip, r0
    4f68:	e1a03005 	mov	r3, r5
    4f6c:	e5984000 	ldr	r4, [r8]
    4f70:	e1a00006 	mov	r0, r6
    4f74:	e1a01007 	mov	r1, r7
    4f78:	e1a02004 	mov	r2, r4
    4f7c:	e58dc000 	str	ip, [sp]
    4f80:	eb0013f7 	bl	9f64 <crc16_arm+0x4d1c>
    4f84:	e3500000 	cmp	r0, #0	; 0x0
    4f88:	ba0013a9 	blt	9e34 <crc16_arm+0x4bec>
    4f8c:	e59f3044 	ldr	r3, [pc, #68]	; 4fd8 <sd_read_single_block_withcheck+0x1b4>
    4f90:	e59fc044 	ldr	ip, [pc, #68]	; 4fdc <sd_read_single_block_withcheck+0x1b8>
    4f94:	e5981000 	ldr	r1, [r8]
    4f98:	e3a0e001 	mov	lr, #1	; 0x1
    4f9c:	e1a00009 	mov	r0, r9
    4fa0:	e1a0200a 	mov	r2, sl
    4fa4:	e583e000 	str	lr, [r3]
    4fa8:	e58c7000 	str	r7, [ip]
    4fac:	ebfffffe 	bl	4fac <sd_read_single_block_withcheck+0x188>
    4fb0:	ea0013a8 	b	9e58 <crc16_arm+0x4c10>
    4fb4:	e59f3024 	ldr	r3, [pc, #36]	; 4fe0 <sd_read_single_block_withcheck+0x1bc>
    4fb8:	e060c007 	rsb	ip, r0, r7
    4fbc:	e1a0200a 	mov	r2, sl
    4fc0:	e5931000 	ldr	r1, [r3]
    4fc4:	e1a00009 	mov	r0, r9
    4fc8:	e081100c 	add	r1, r1, ip
    4fcc:	ea0013e9 	b	9f78 <crc16_arm+0x4d30>
    4fd0:	e3e00000 	mvn	r0, #0	; 0x0
    4fd4:	ea0013a9 	b	9e80 <crc16_arm+0x4c38>
	...

00004fe4 <sd_read_multiple_block>:
    4fe4:	e92d47f0 	stmdb	sp!, {r4, r5, r6, r7, r8, r9, sl, lr}
    4fe8:	e2808010 	add	r8, r0, #16	; 0x10
    4fec:	e1a04000 	mov	r4, r0
    4ff0:	e5907000 	ldr	r7, [r0]
    4ff4:	e1a0a001 	mov	sl, r1
    4ff8:	e3a00001 	mov	r0, #1	; 0x1
    4ffc:	e1a01008 	mov	r1, r8
    5000:	e1a06003 	mov	r6, r3
    5004:	e59d5020 	ldr	r5, [sp, #32]
    5008:	e1a09002 	mov	r9, r2
    500c:	e1a0e00f 	mov	lr, pc
    5010:	e597f00c 	ldr	pc, [r7, #12]
    5014:	e594000c 	ldr	r0, [r4, #12]
    5018:	e1a0e00f 	mov	lr, pc
    501c:	e597f038 	ldr	pc, [r7, #56]
    5020:	e1a03000 	mov	r3, r0
    5024:	e3530000 	cmp	r3, #0	; 0x0
    5028:	e0040596 	mul	r4, r6, r5
    502c:	e1a01005 	mov	r1, r5
    5030:	e1a00006 	mov	r0, r6
    5034:	e3a03000 	mov	r3, #0	; 0x0
    5038:	0a00140f 	beq	a07c <crc16_arm+0x4e34>
    503c:	e1a00003 	mov	r0, r3
    5040:	e8bd87f0 	ldmia	sp!, {r4, r5, r6, r7, r8, r9, sl, pc}
    5044:	e1a0e00f 	mov	lr, pc
    5048:	e597f014 	ldr	pc, [r7, #20]
    504c:	e1a01006 	mov	r1, r6
    5050:	e3a00010 	mov	r0, #16	; 0x10
    5054:	e1a0e00f 	mov	lr, pc
    5058:	e597f018 	ldr	pc, [r7, #24]
    505c:	e1a0e00f 	mov	lr, pc
    5060:	e597f020 	ldr	pc, [r7, #32]
    5064:	e1a03000 	mov	r3, r0
    5068:	e3530000 	cmp	r3, #0	; 0x0
    506c:	e1a01008 	mov	r1, r8
    5070:	e3a00001 	mov	r0, #1	; 0x1
    5074:	1a001431 	bne	a140 <crc16_arm+0x4ef8>
    5078:	e1a0e00f 	mov	lr, pc
    507c:	e597f00c 	ldr	pc, [r7, #12]
    5080:	e1a0100a 	mov	r1, sl
    5084:	e3a00012 	mov	r0, #18	; 0x12
    5088:	e1a0e00f 	mov	lr, pc
    508c:	e597f018 	ldr	pc, [r7, #24]
    5090:	e1a0e00f 	mov	lr, pc
    5094:	e597f020 	ldr	pc, [r7, #32]
    5098:	e1a03000 	mov	r3, r0
    509c:	e3530000 	cmp	r3, #0	; 0x0
    50a0:	e1a00009 	mov	r0, r9
    50a4:	e1a01004 	mov	r1, r4
    50a8:	1a001431 	bne	a174 <crc16_arm+0x4f2c>
    50ac:	e1a0e00f 	mov	lr, pc
    50b0:	e597f030 	ldr	pc, [r7, #48]
    50b4:	e3500000 	cmp	r0, #0	; 0x0
    50b8:	1a001431 	bne	a184 <crc16_arm+0x4f3c>
    50bc:	e1a0e00f 	mov	lr, pc
    50c0:	e597f03c 	ldr	pc, [r7, #60]
    50c4:	e1a03004 	mov	r3, r4
    50c8:	ea00140d 	b	a104 <crc16_arm+0x4ebc>
    50cc:	e1a0e00f 	mov	lr, pc
    50d0:	e597f03c 	ldr	pc, [r7, #60]
    50d4:	e3a03000 	mov	r3, #0	; 0x0
    50d8:	ea00140d 	b	a114 <crc16_arm+0x4ecc>

000050dc <mmcsd_suspend>:
    50dc:	e92d4010 	stmdb	sp!, {r4, lr}
    50e0:	e3a04000 	mov	r4, #0	; 0x0
    50e4:	e3840b0f 	orr	r0, r4, #15360	; 0x3c00
    50e8:	e1a00800 	mov	r0, r0, lsl #16
    50ec:	e1a00820 	mov	r0, r0, lsr #16
    50f0:	e2844001 	add	r4, r4, #1	; 0x1
    50f4:	ebfffffe 	bl	50f4 <mmcsd_suspend+0x18>
    50f8:	e3540009 	cmp	r4, #9	; 0x9
    50fc:	da001437 	ble	a1e0 <crc16_arm+0x4f98>
    5100:	eb000212 	bl	5950 <crc16_arm+0x708>
    5104:	e59f005c 	ldr	r0, [pc, #92]	; 5168 <mmcsd_suspend+0x8c>
    5108:	e5d03008 	ldrb	r3, [r0, #8]
    510c:	e3530000 	cmp	r3, #0	; 0x0
    5110:	0a001447 	beq	a234 <crc16_arm+0x4fec>
    5114:	e5903004 	ldr	r3, [r0, #4]
    5118:	e5933008 	ldr	r3, [r3, #8]
    511c:	e3530000 	cmp	r3, #0	; 0x0
    5120:	1a001452 	bne	a270 <crc16_arm+0x5028>
    5124:	e59f3040 	ldr	r3, [pc, #64]	; 516c <mmcsd_suspend+0x90>
    5128:	e5933000 	ldr	r3, [r3]
    512c:	e593202c 	ldr	r2, [r3, #44]
    5130:	e3520000 	cmp	r2, #0	; 0x0
    5134:	1a00144e 	bne	a274 <crc16_arm+0x502c>
    5138:	e3a00000 	mov	r0, #0	; 0x0
    513c:	e8bd8010 	ldmia	sp!, {r4, pc}
    5140:	e5930004 	ldr	r0, [r3, #4]
    5144:	e1a0e00f 	mov	lr, pc
    5148:	e1a0f002 	mov	pc, r2
    514c:	ea00144c 	b	a284 <crc16_arm+0x503c>
    5150:	e1a0e00f 	mov	lr, pc
    5154:	e1a0f003 	mov	pc, r3
    5158:	e3500000 	cmp	r0, #0	; 0x0
    515c:	aa001447 	bge	a280 <crc16_arm+0x5038>
    5160:	e3e00000 	mvn	r0, #0	; 0x0
    5164:	e8bd8010 	ldmia	sp!, {r4, pc}
    5168:	00000000 	andeq	r0, r0, r0
    516c:	000001e8 	andeq	r0, r0, r8, ror #3

00005170 <mmcdsd_gencheckcard>:
    5170:	e92d41f0 	stmdb	sp!, {r4, r5, r6, r7, r8, lr}
    5174:	e59f80bc 	ldr	r8, [pc, #188]	; 5238 <mmcdsd_gencheckcard+0xc8>
    5178:	e1a05000 	mov	r5, r0
    517c:	e3a07f4b 	mov	r7, #300	; 0x12c
    5180:	e5983000 	ldr	r3, [r8]
    5184:	e3530000 	cmp	r3, #0	; 0x0
    5188:	1a001488 	bne	a3b0 <crc16_arm+0x5168>
    518c:	e59f20a8 	ldr	r2, [pc, #168]	; 523c <mmcdsd_gencheckcard+0xcc>
    5190:	e3a03001 	mov	r3, #1	; 0x1
    5194:	e5883000 	str	r3, [r8]
    5198:	e592308c 	ldr	r3, [r2, #140]
    519c:	e3530000 	cmp	r3, #0	; 0x0
    51a0:	13a06003 	movne	r6, #3	; 0x3
    51a4:	03a06000 	moveq	r6, #0	; 0x0
    51a8:	e3760001 	cmn	r6, #1	; 0x1
    51ac:	0a001486 	beq	a3cc <crc16_arm+0x5184>
    51b0:	e5950004 	ldr	r0, [r5, #4]
    51b4:	e1a0e00f 	mov	lr, pc
    51b8:	e595f018 	ldr	pc, [r5, #24]
    51bc:	e2474001 	sub	r4, r7, #1	; 0x1
    51c0:	e5950004 	ldr	r0, [r5, #4]
    51c4:	e1a0e00f 	mov	lr, pc
    51c8:	e595f00c 	ldr	pc, [r5, #12]
    51cc:	e3740001 	cmn	r4, #1	; 0x1
    51d0:	0a001478 	beq	a3b8 <crc16_arm+0x5170>
    51d4:	e3a00ffa 	mov	r0, #1000	; 0x3e8
    51d8:	e2444001 	sub	r4, r4, #1	; 0x1
    51dc:	ebfffffe 	bl	51dc <mmcdsd_gencheckcard+0x6c>
    51e0:	e3740001 	cmn	r4, #1	; 0x1
    51e4:	1a001473 	bne	a3b8 <crc16_arm+0x5170>
    51e8:	e5950004 	ldr	r0, [r5, #4]
    51ec:	e1a0e00f 	mov	lr, pc
    51f0:	e595f014 	ldr	pc, [r5, #20]
    51f4:	e3500000 	cmp	r0, #0	; 0x0
    51f8:	1a001486 	bne	a418 <crc16_arm+0x51d0>
    51fc:	e3560000 	cmp	r6, #0	; 0x0
    5200:	e1a07087 	mov	r7, r7, lsl #1
    5204:	0a001489 	beq	a430 <crc16_arm+0x51e8>
    5208:	e1a01007 	mov	r1, r7
    520c:	e59f002c 	ldr	r0, [pc, #44]	; 5240 <mmcdsd_gencheckcard+0xd0>
    5210:	ebfffffe 	bl	5210 <mmcdsd_gencheckcard+0xa0>
    5214:	e2466001 	sub	r6, r6, #1	; 0x1
    5218:	e3760001 	cmn	r6, #1	; 0x1
    521c:	1a00146a 	bne	a3cc <crc16_arm+0x5184>
    5220:	e3a03000 	mov	r3, #0	; 0x0
    5224:	e5883000 	str	r3, [r8]
    5228:	e8bd81f0 	ldmia	sp!, {r4, r5, r6, r7, r8, pc}
    522c:	e59f0010 	ldr	r0, [pc, #16]	; 5244 <mmcdsd_gencheckcard+0xd4>
    5230:	ebfffffe 	bl	5230 <mmcdsd_gencheckcard+0xc0>
    5234:	ea001483 	b	a448 <crc16_arm+0x5200>
    5238:	000001e4 	andeq	r0, r0, r4, ror #3
    523c:	00000000 	andeq	r0, r0, r0
    5240:	000000a0 	andeq	r0, r0, r0, lsr #1
    5244:	000000dc 	ldreqd	r0, [r0], -ip

00005248 <crc16_arm>:
    5248:	e2102003 	ands	r2, r0, #3	; 0x3
    524c:	13a03000 	movne	r3, #0	; 0x0
    5250:	03a03001 	moveq	r3, #1	; 0x1
    5254:	e3510003 	cmp	r1, #3	; 0x3
    5258:	d3a03000 	movle	r3, #0	; 0x0
    525c:	c2033001 	andgt	r3, r3, #1	; 0x1
    5260:	e3530000 	cmp	r3, #0	; 0x0
    5264:	e92d4030 	stmdb	sp!, {r4, r5, lr}
    5268:	e3e05000 	mvn	r5, #0	; 0x0
    526c:	e1a04000 	mov	r4, r0
    5270:	e1a0e001 	mov	lr, r1
    5274:	e1a05825 	mov	r5, r5, lsr #16
    5278:	0a0014ef 	beq	a63c <crc16_arm+0x53f4>
    527c:	e3510000 	cmp	r1, #0	; 0x0
    5280:	13a0c000 	movne	ip, #0	; 0x0
    5284:	1241e004 	subne	lr, r1, #4	; 0x4
    5288:	1a0014a3 	bne	a51c <crc16_arm+0x52d4>
    528c:	e1a00001 	mov	r0, r1
    5290:	e8bd8030 	ldmia	sp!, {r4, r5, pc}
    5294:	e35e0000 	cmp	lr, #0	; 0x0
    5298:	ba0014bc 	blt	a590 <crc16_arm+0x5348>
    529c:	e4940004 	ldr	r0, [r4], #4
    52a0:	e02c322c 	eor	r3, ip, ip, lsr #4
    52a4:	e023342c 	eor	r3, r3, ip, lsr #8
    52a8:	e023362c 	eor	r3, r3, ip, lsr #12
    52ac:	e023c5ac 	eor	ip, r3, ip, lsr #11
    52b0:	e0002005 	and	r2, r0, r5
    52b4:	e02c3402 	eor	r3, ip, r2, lsl #8
    52b8:	e0233422 	eor	r3, r3, r2, lsr #8
    52bc:	e023328c 	eor	r3, r3, ip, lsl #5
    52c0:	e023c60c 	eor	ip, r3, ip, lsl #12
    52c4:	e00cc005 	and	ip, ip, r5
    52c8:	e02c222c 	eor	r2, ip, ip, lsr #4
    52cc:	e022242c 	eor	r2, r2, ip, lsr #8
    52d0:	e022262c 	eor	r2, r2, ip, lsr #12
    52d4:	e022c5ac 	eor	ip, r2, ip, lsr #11
    52d8:	e1a03820 	mov	r3, r0, lsr #16
    52dc:	e02c3403 	eor	r3, ip, r3, lsl #8
    52e0:	e0233c20 	eor	r3, r3, r0, lsr #24
    52e4:	e023328c 	eor	r3, r3, ip, lsl #5
    52e8:	e023c60c 	eor	ip, r3, ip, lsl #12
    52ec:	e25ee004 	subs	lr, lr, #4	; 0x4
    52f0:	e00cc005 	and	ip, ip, r5
    52f4:	5a0014a5 	bpl	a590 <crc16_arm+0x5348>
    52f8:	e02c322c 	eor	r3, ip, ip, lsr #4
    52fc:	e023342c 	eor	r3, r3, ip, lsr #8
    5300:	e023362c 	eor	r3, r3, ip, lsr #12
    5304:	e023c5ac 	eor	ip, r3, ip, lsr #11
    5308:	e02c228c 	eor	r2, ip, ip, lsl #5
    530c:	e022c60c 	eor	ip, r2, ip, lsl #12
    5310:	e37e0004 	cmn	lr, #4	; 0x4
    5314:	e00cc005 	and	ip, ip, r5
    5318:	0a0014ed 	beq	a6d4 <crc16_arm+0x548c>
    531c:	e37e0001 	cmn	lr, #1	; 0x1
    5320:	0a0014df 	beq	a6a4 <crc16_arm+0x545c>
    5324:	e37e0002 	cmn	lr, #2	; 0x2
    5328:	0a0014d4 	beq	a680 <crc16_arm+0x5438>
    532c:	e37e0003 	cmn	lr, #3	; 0x3
    5330:	0a0014cd 	beq	a66c <crc16_arm+0x5424>
    5334:	e00c0005 	and	r0, ip, r5
    5338:	e8bd8030 	ldmia	sp!, {r4, r5, pc}
    533c:	e5d43000 	ldrb	r3, [r4]
    5340:	e023042c 	eor	r0, r3, ip, lsr #8
    5344:	e0200220 	eor	r0, r0, r0, lsr #4
    5348:	e020340c 	eor	r3, r0, ip, lsl #8
    534c:	e0233280 	eor	r3, r3, r0, lsl #5
    5350:	e023c600 	eor	ip, r3, r0, lsl #12
    5354:	ea0014cb 	b	a688 <crc16_arm+0x5440>
    5358:	e5d42000 	ldrb	r2, [r4]
    535c:	e5d41001 	ldrb	r1, [r4, #1]
    5360:	e02c2402 	eor	r2, ip, r2, lsl #8
    5364:	e022c001 	eor	ip, r2, r1
    5368:	e02c322c 	eor	r3, ip, ip, lsr #4
    536c:	e023342c 	eor	r3, r3, ip, lsr #8
    5370:	e023362c 	eor	r3, r3, ip, lsr #12
    5374:	e023c5ac 	eor	ip, r3, ip, lsr #11
    5378:	e02c228c 	eor	r2, ip, ip, lsl #5
    537c:	e022c60c 	eor	ip, r2, ip, lsl #12
    5380:	ea0014cb 	b	a6b4 <crc16_arm+0x546c>
    5384:	e5d42000 	ldrb	r2, [r4]
    5388:	e5d41001 	ldrb	r1, [r4, #1]
    538c:	e5d40002 	ldrb	r0, [r4, #2]
    5390:	e02c2402 	eor	r2, ip, r2, lsl #8
    5394:	e022c001 	eor	ip, r2, r1
    5398:	e02c322c 	eor	r3, ip, ip, lsr #4
    539c:	e023342c 	eor	r3, r3, ip, lsr #8
    53a0:	e023362c 	eor	r3, r3, ip, lsr #12
    53a4:	e023c5ac 	eor	ip, r3, ip, lsr #11
    53a8:	e02c228c 	eor	r2, ip, ip, lsl #5
    53ac:	e022c60c 	eor	ip, r2, ip, lsl #12
    53b0:	e00cc005 	and	ip, ip, r5
    53b4:	e020042c 	eor	r0, r0, ip, lsr #8
    53b8:	ea0014cf 	b	a6fc <crc16_arm+0x54b4>
    53bc:	e1a0000c 	mov	r0, ip
    53c0:	e8bd8030 	ldmia	sp!, {r4, r5, pc}
    53c4:	e3510001 	cmp	r1, #1	; 0x1
    53c8:	13520003 	cmpne	r2, #3	; 0x3
    53cc:	04d4c001 	ldreqb	ip, [r4], #1
    53d0:	0241e005 	subeq	lr, r1, #5	; 0x5
    53d4:	0a0014a3 	beq	a668 <crc16_arm+0x5420>
    53d8:	e3510002 	cmp	r1, #2	; 0x2
    53dc:	13520002 	cmpne	r2, #2	; 0x2
    53e0:	04d42001 	ldreqb	r2, [r4], #1
    53e4:	0241e006 	subeq	lr, r1, #6	; 0x6
    53e8:	04d43001 	ldreqb	r3, [r4], #1
    53ec:	0183c402 	orreq	ip, r3, r2, lsl #8
    53f0:	0a0014a3 	beq	a684 <crc16_arm+0x543c>
    53f4:	e3510003 	cmp	r1, #3	; 0x3
    53f8:	13520001 	cmpne	r2, #1	; 0x1
    53fc:	1a0014a3 	bne	a690 <crc16_arm+0x5448>
    5400:	e4d4c001 	ldrb	ip, [r4], #1
    5404:	e241e007 	sub	lr, r1, #7	; 0x7
    5408:	e4d41001 	ldrb	r1, [r4], #1
    540c:	e02cc22c 	eor	ip, ip, ip, lsr #4
    5410:	e4d42001 	ldrb	r2, [r4], #1
    5414:	e1820401 	orr	r0, r2, r1, lsl #8
    5418:	e02c3000 	eor	r3, ip, r0
    541c:	e023328c 	eor	r3, r3, ip, lsl #5
    5420:	e023c60c 	eor	ip, r3, ip, lsl #12
    5424:	e00cc005 	and	ip, ip, r5
    5428:	ea0014a3 	b	a6bc <crc16_arm+0x5474>
Disassembly of section .rodata:

00000000 <.rodata>:
   0:	4d2f4453 	cfstrsmi	mvf4, [pc, #-332]!
   4:	6320434d 	teqvs	r0, #872415233	; 0x34000001
   8:	20647261 	rsbcs	r7, r4, r1, ror #4
   c:	6d207369 	stcvs	3, cr7, [r0, #-420]!
  10:	746e756f 	strvcbt	r7, [lr], #-1391
  14:	0a2e6465 	beq	b991b0 <crc16_arm+0xb93f68>
  18:	00000000 	andeq	r0, r0, r0
  1c:	64636d6d 	strvsbt	r6, [r3], #-3437
  20:	7273775f 	rsbvcs	r7, r3, #24903680	; 0x17c0000
  24:	00000063 	andeq	r0, r0, r3, rrx
  28:	6c6c6f63 	stcvsl	15, cr6, [ip], #-396
  2c:	735f6569 	cmpvc	pc, #440401920	; 0x1a400000
  30:	64746f6c 	ldrvsbt	r6, [r4], #-3948
  34:	63657465 	cmnvs	r5, #1694498816	; 0x65000000
  38:	00000074 	andeq	r0, r0, r4, ror r0
  3c:	6c696166 	stfvse	f6, [r9], #-408
  40:	74206465 	strvct	r6, [r0], #-1125
  44:	6572206f 	ldrvsb	r2, [r2, #-111]!
  48:	74736967 	ldrvcbt	r6, [r3], #-2407
  4c:	73207265 	teqvc	r0, #1342177286	; 0x50000006
  50:	64746f6c 	ldrvsbt	r6, [r4], #-3948
  54:	63657465 	cmnvs	r5, #1694498816	; 0x65000000
  58:	00000a74 	andeq	r0, r0, r4, ror sl
  5c:	73636d6d 	cmnvc	r3, #6976	; 0x1b40
  60:	00000064 	andeq	r0, r0, r4, rrx
  64:	6f436f4c 	swivs	0x00436f4c
  68:	53206f4d 	teqpl	r0, #308	; 0x134
  6c:	43282044 	teqmi	r8, #68	; 0x44
  70:	696c6c6f 	stmvsdb	ip!, {r0, r1, r2, r3, r5, r6, sl, fp, sp, lr}^
  74:	00002965 	andeq	r2, r0, r5, ror #18
  78:	20212121 	eorcs	r2, r1, r1, lsr #2
  7c:	2f636d6d 	swics	0x00636d6d
  80:	63206473 	teqvs	r0, #1929379840	; 0x73000000
  84:	20647261 	rsbcs	r7, r4, r1, ror #4
  88:	20736177 	rsbcss	r6, r3, r7, ror r1
  8c:	6f6d6572 	swivs	0x006d6572
  90:	2e646576 	mcrcs	5, 3, r6, cr4, cr6, {3}
  94:	656c5020 	strvsb	r5, [ip, #-32]!
  98:	20657361 	rsbcs	r7, r5, r1, ror #6
  9c:	6f6d6e75 	swivs	0x006d6e75
  a0:	20746e75 	rsbcss	r6, r4, r5, ror lr
  a4:	20656874 	rsbcs	r6, r5, r4, ror r8
  a8:	64726163 	ldrvsbt	r6, [r2], #-355
  ac:	00000a2e 	andeq	r0, r0, lr, lsr #20
  b0:	20212121 	eorcs	r2, r1, r1, lsr #2
  b4:	2f636d6d 	swics	0x00636d6d
  b8:	63206473 	teqvs	r0, #1929379840	; 0x73000000
  bc:	20647261 	rsbcs	r7, r4, r1, ror #4
  c0:	20736177 	rsbcss	r6, r3, r7, ror r1
  c4:	6e616863 	cdpvs	8, 6, cr6, cr1, cr3, {3}
  c8:	2e646567 	cdpcs	5, 6, cr6, cr4, cr7, {3}
  cc:	656c5020 	strvsb	r5, [ip, #-32]!
  d0:	20657361 	rsbcs	r7, r5, r1, ror #6
  d4:	756f6d75 	strvcb	r6, [pc, #-3445]!	; fffff367 <crc16_arm+0xffffa11f>
  d8:	6120746e 	teqvs	r0, lr, ror #8
  dc:	7220646e 	eorvc	r6, r0, #1845493760	; 0x6e000000
  e0:	766f6d65 	strvcbt	r6, [pc], -r5, ror #26
  e4:	68742065 	ldmvsda	r4!, {r0, r2, r5, r6, sp}^
  e8:	61632065 	cmnvs	r3, r5, rrx
  ec:	0a2e6472 	beq	b992bc <crc16_arm+0xb94074>
  f0:	00000000 	andeq	r0, r0, r0
  f4:	64636d6d 	strvsbt	r6, [r3], #-3437
  f8:	00000000 	andeq	r0, r0, r0
  fc:	73636d6d 	cmnvc	r3, #6976	; 0x1b40
 100:	72203a64 	eorvc	r3, r0, #409600	; 0x64000
 104:	65757165 	ldrvsb	r7, [r5, #-357]!
 108:	6c207473 	cfstrsvs	mvf7, [r0], #-460
 10c:	20747369 	rsbcss	r7, r4, r9, ror #6
 110:	74736564 	ldrvcbt	r6, [r3], #-1380
 114:	65796f72 	ldrvsb	r6, [r9, #-3954]!
 118:	00000064 	andeq	r0, r0, r4, rrx
 11c:	73636d6d 	cmnvc	r3, #6976	; 0x1b40
 120:	62203a64 	eorvs	r3, r0, #409600	; 0x64000
 124:	6b636f6c 	blvs	18dbedc <crc16_arm+0x18d6c94>
 128:	746f6e20 	strvcbt	r6, [pc], #3616	; 130 <.rodata+0x130>
 12c:	636f6c20 	cmnvs	pc, #8192	; 0x2000
 130:	0064656b 	rsbeq	r6, r4, fp, ror #10
 134:	5d44535b 	stcpll	3, cr5, [r4, #-364]
 138:	2520522d 	strcs	r5, [r0, #-557]!
 13c:	20783430 	rsbcss	r3, r8, r0, lsr r4
 140:	78343025 	ldmvcda	r4!, {r0, r2, r5, ip, sp}
 144:	52524520 	subpls	r4, r2, #134217728	; 0x8000000
 148:	0a21524f 	beq	854a8c <crc16_arm+0x84f844>
 14c:	00000000 	andeq	r0, r0, r0
 150:	202d572d 	eorcs	r5, sp, sp, lsr #14
 154:	276e6f44 	strcsb	r6, [lr, -r4, asr #30]!
 158:	65642074 	strvsb	r2, [r4, #-116]!
 15c:	6574656c 	ldrvsb	r6, [r4, #-1388]!
 160:	00000a2e 	andeq	r0, r0, lr, lsr #20
 164:	5d44535b 	stcpll	3, cr5, [r4, #-364]
 168:	2520572d 	strcs	r5, [r0, #-1837]!
 16c:	20783430 	rsbcss	r3, r8, r0, lsr r4
 170:	78343025 	ldmvcda	r4!, {r0, r2, r5, ip, sp}
 174:	52524520 	subpls	r4, r2, #134217728	; 0x8000000
 178:	0a21524f 	beq	854abc <crc16_arm+0x84f874>
 17c:	00000000 	andeq	r0, r0, r0
 180:	00697073 	rsbeq	r7, r9, r3, ror r0
 184:	74656431 	strvcbt	r6, [r5], #-1073
 188:	00746365 	rsbeqs	r6, r4, r5, ror #6
 18c:	69727732 	ldmvsdb	r2!, {r1, r4, r5, r8, r9, sl, ip, sp, lr}^
 190:	72706574 	rsbvcs	r6, r0, #486539264	; 0x1d000000
 194:	6365746f 	cmnvs	r5, #1862270976	; 0x6f000000
 198:	74410074 	strvcb	r0, [r1], #-116
 19c:	00657079 	rsbeq	r7, r5, r9, ror r0
 1a0:	6e616d51 	mcrvs	13, 3, r6, cr1, cr1, {2}
 1a4:	63616675 	cmnvs	r1, #122683392	; 0x7500000
 1a8:	65727574 	ldrvsb	r7, [r2, #-1396]!
 1ac:	70615200 	rsbvc	r5, r1, r0, lsl #4
 1b0:	63696c70 	cmnvs	r9, #28672	; 0x7000
 1b4:	6f697461 	swivs	0x00697461
 1b8:	7053006e 	subvcs	r0, r3, lr, rrx
 1bc:	75646f72 	strvcb	r6, [r4, #-3954]!
 1c0:	54007463 	strpl	r7, [r0], #-1123
 1c4:	69766572 	ldmvsdb	r6!, {r1, r4, r5, r6, r8, sl, sp, lr}^
 1c8:	6e6f6973 	mcrvs	9, 3, r6, cr15, cr3, {3}
 1cc:	65735500 	ldrvsb	r5, [r3, #-1280]!
 1d0:	6c616972 	stcvsl	9, cr6, [r1], #-456
 1d4:	61645600 	cmnvs	r4, r0, lsl #12
 1d8:	61006574 	tstvs	r0, r4, ror r5
 1dc:	00776172 	rsbeqs	r6, r7, r2, ror r1
 1e0:	00000000 	andeq	r0, r0, r0
 1e4:	000a6425 	andeq	r6, sl, r5, lsr #8
 1e8:	000a7325 	andeq	r7, sl, r5, lsr #6
 1ec:	00004453 	andeq	r4, r0, r3, asr r4
 1f0:	6e6b6e75 	mcrvs	14, 3, r6, cr11, cr5, {3}
 1f4:	006e776f 	rsbeq	r7, lr, pc, ror #14
 1f8:	00434d4d 	subeq	r4, r3, sp, asr #26
 1fc:	000a7525 	andeq	r7, sl, r5, lsr #10
 200:	252e6425 	strcs	r6, [lr, #-1061]!
 204:	00000a64 	andeq	r0, r0, r4, ror #20
 208:	64323025 	ldrvst	r3, [r2], #-37
 20c:	3230252f 	eorccs	r2, r0, #197132288	; 0xbc00000
 210:	00000a64 	andeq	r0, r0, r4, ror #20
 214:	78323025 	ldmvcda	r2!, {r0, r2, r5, ip, sp}
 218:	00000000 	andeq	r0, r0, r0
 21c:	0000000a 	andeq	r0, r0, sl
 220:	64323025 	ldrvst	r3, [r2], #-37
 224:	00000000 	andeq	r0, r0, r0
 228:	44204453 	strmit	r4, [r0], #-1107
 22c:	65766972 	ldrvsb	r6, [r6, #-2418]!
 230:	6e492072 	mcrvs	0, 2, r2, cr9, cr2, {3}
 234:	61697469 	cmnvs	r9, r9, ror #8
 238:	657a696c 	ldrvsb	r6, [sl, #-2412]!
 23c:	000a2e64 	andeq	r2, sl, r4, ror #28
 240:	72616873 	rsbvc	r6, r1, #7536640	; 0x730000
 244:	6d6d5f70 	stcvsl	15, cr5, [sp, #-448]!
 248:	20647363 	rsbcs	r7, r4, r3, ror #6
 24c:	31322e30 	teqcc	r2, r0, lsr lr
 250:	20373220 	eorcss	r3, r7, r0, lsr #4
 254:	20706553 	rsbcss	r6, r0, r3, asr r5
 258:	32303032 	eorccs	r3, r0, #50	; 0x32
 25c:	0000000a 	andeq	r0, r0, sl
 260:	633e333c 	teqvs	lr, #-268435456	; 0xf0000000
 264:	74276e61 	strvct	r6, [r7], #-3681
 268:	65726320 	ldrvsb	r6, [r2, #-800]!
 26c:	20657461 	rsbcs	r7, r5, r1, ror #8
 270:	6f72702f 	swivs	0x0072702f
 274:	73252f63 	teqvc	r5, #396	; 0x18c
 278:	0000000a 	andeq	r0, r0, sl
 27c:	44204453 	strmit	r4, [r0], #-1107
 280:	65766972 	ldrvsb	r6, [r6, #-2418]!
 284:	6e552072 	mrcvs	0, 2, r2, cr5, cr2, {3}
 288:	64616f6c 	strvsbt	r6, [r1], #-3948
 28c:	0a2e6465 	beq	b99428 <crc16_arm+0xb941e0>
 290:	00000000 	andeq	r0, r0, r0
 294:	645f6473 	ldrvsb	r6, [pc], #1139	; 29c <.rodata+0x29c>
 298:	646f6365 	strvsbt	r6, [pc], #869	; 2a0 <.rodata+0x2a0>
 29c:	72735f65 	rsbvcs	r5, r3, #404	; 0x194
 2a0:	3430253a 	ldrcct	r2, [r0], #-1338
 2a4:	00000a78 	andeq	r0, r0, r8, ror sl
 2a8:	63204453 	teqvs	r0, #1392508928	; 0x53000000
 2ac:	72746e6f 	rsbvcs	r6, r4, #1776	; 0x6f0
 2b0:	63696461 	cmnvs	r9, #1627389952	; 0x61000000
 2b4:	6e6f6974 	mcrvs	9, 3, r6, cr15, cr4, {3}
 2b8:	73203a20 	teqvc	r0, #131072	; 0x20000
 2bc:	72772064 	rsbvcs	r2, r7, #100	; 0x64
 2c0:	20657469 	rsbcs	r7, r5, r9, ror #8
 2c4:	000a2121 	andeq	r2, sl, r1, lsr #2
 2c8:	63204453 	teqvs	r0, #1392508928	; 0x53000000
 2cc:	72746e6f 	rsbvcs	r6, r4, #1776	; 0x6f0
 2d0:	63696461 	cmnvs	r9, #1627389952	; 0x61000000
 2d4:	6e6f6974 	mcrvs	9, 3, r6, cr15, cr4, {3}
 2d8:	73203a20 	teqvc	r0, #131072	; 0x20000
 2dc:	6c662064 	stcvsl	0, cr2, [r6], #-400
 2e0:	20687375 	rsbcs	r7, r8, r5, ror r3
 2e4:	000a2121 	andeq	r2, sl, r1, lsr #2
 2e8:	66206473 	undefined
 2ec:	6873756c 	ldmvsda	r3!, {r2, r3, r5, r6, r8, sl, ip, sp, lr}^
 2f0:	6e616320 	cdpvs	3, 6, cr6, cr1, cr0, {1}
 2f4:	656c6563 	strvsb	r6, [ip, #-1379]!
 2f8:	735b2064 	cmpvc	fp, #100	; 0x64
 2fc:	65707375 	ldrvsb	r7, [r0, #-885]!
 300:	0a5d646e 	beq	17594c0 <crc16_arm+0x1754278>
 304:	00000000 	andeq	r0, r0, r0
 308:	66206473 	undefined
 30c:	6873756c 	ldmvsda	r3!, {r2, r3, r5, r6, r8, sl, ip, sp, lr}^
 310:	6e616320 	cdpvs	3, 6, cr6, cr1, cr0, {1}
 314:	656c6563 	strvsb	r6, [ip, #-1379]!
 318:	745b2064 	ldrvcb	r2, [fp], #-100
 31c:	72656d69 	rsbvc	r6, r5, #6720	; 0x1a40
 320:	00000a5d 	andeq	r0, r0, sp, asr sl
 324:	77204453 	undefined
 328:	65746972 	ldrvsb	r6, [r4, #-2418]!
 32c:	72726520 	rsbvcs	r6, r2, #134217728	; 0x8000000
 330:	5b20726f 	blpl	81ccf4 <crc16_arm+0x817aac>
 334:	30257830 	eorcc	r7, r5, r0, lsr r8
 338:	25207838 	strcs	r7, [r0, #-2104]!
 33c:	000a5d64 	andeq	r5, sl, r4, ror #26
 340:	78323025 	ldmvcda	r2!, {r0, r2, r5, ip, sp}
 344:	00000020 	andeq	r0, r0, r0, lsr #32
 348:	733e333c 	teqvc	lr, #-268435456	; 0xf0000000
 34c:	203a2064 	eorcss	r2, sl, r4, rrx
 350:	6d637325 	stcvsl	3, cr7, [r3, #-148]!
 354:	205b2064 	subcss	r2, fp, r4, rrx
 358:	5d206425 	cfstrspl	mvf6, [r0, #-148]!
 35c:	73657220 	cmnvc	r5, #2	; 0x2
 360:	736e6f70 	cmnvc	lr, #448	; 0x1c0
 364:	205b2065 	subcss	r2, fp, r5, rrx
 368:	5d207325 	stcpl	3, cr7, [r0, #-148]!
 36c:	0000000a 	andeq	r0, r0, sl
 370:	00000061 	andeq	r0, r0, r1, rrx
 374:	00000000 	andeq	r0, r0, r0
 378:	533e333c 	teqpl	lr, #-268435456	; 0xf0000000
 37c:	65722044 	ldrvsb	r2, [r2, #-68]!
 380:	65206461 	strvs	r6, [r0, #-1121]!
 384:	726f7272 	rsbvc	r7, pc, #536870919	; 0x20000007
 388:	32302520 	eorccs	r2, r0, #134217728	; 0x8000000
 38c:	00000a78 	andeq	r0, r0, r8, ror sl
Disassembly of section .modinfo:

00000000 <__module_kernel_version>:
   0:	6e72656b 	cdpvs	5, 7, cr6, cr2, cr11, {3}
   4:	765f6c65 	ldrvcb	r6, [pc], -r5, ror #24
   8:	69737265 	ldmvsdb	r3!, {r0, r2, r5, r6, r9, ip, sp, lr}^
   c:	323d6e6f 	eorccs	r6, sp, #1776	; 0x6f0
  10:	312e342e 	teqcc	lr, lr, lsr #8
  14:	6d722d38 	ldcvsl	13, cr2, [r2, #-224]!
  18:	702d376b 	eorvc	r3, sp, fp, ror #14
  1c:	2d336178 	ldfcss	f6, [r3, #-480]!
  20:	65626d65 	strvsb	r6, [r2, #-3429]!
  24:	00786964 	rsbeqs	r6, r8, r4, ror #18

00000028 <__module_author>:
  28:	68747561 	ldmvsda	r4!, {r0, r5, r6, r8, sl, ip, sp, lr}^
  2c:	533d726f 	teqpl	sp, #-268435450	; 0xf0000006
  30:	70726168 	rsbvcs	r6, r2, r8, ror #2
  34:	646e6120 	strvsbt	r6, [lr], #-288
  38:	6e694c20 	cdpvs	12, 6, cr4, cr9, cr0, {1}
  3c:	61206f65 	teqvs	r0, r5, ror #30
  40:	4820646e 	stmmida	r0!, {r1, r2, r3, r5, r6, sl, sp, lr}
  44:	00004354 	andeq	r4, r0, r4, asr r3

00000048 <__module_description>:
  48:	63736564 	cmnvs	r3, #419430400	; 0x19000000
  4c:	74706972 	ldrvcbt	r6, [r0], #-2418
  50:	3d6e6f69 	stcccl	15, cr6, [lr, #-420]!
  54:	72616853 	rsbvc	r6, r1, #5439488	; 0x530000
  58:	44502070 	ldrmib	r2, [r0], #-112
  5c:	4d4d2041 	stcmil	0, cr2, [sp, #-260]
  60:	44532f43 	ldrmib	r2, [r3], #-3907
  64:	69726420 	ldmvsdb	r2!, {r5, sl, sp, lr}^
  68:	00726576 	rsbeqs	r6, r2, r6, ror r5
Disassembly of section .rodata.str1.4:

00000000 <.rodata.str1.4>:
   0:	533e333c 	teqpl	lr, #-268435456	; 0xf0000000
   4:	72772044 	rsbvcs	r2, r7, #68	; 0x44
   8:	20657469 	rsbcs	r7, r5, r9, ror #8
   c:	6f727265 	swivs	0x00727265
  10:	6e752072 	mrcvs	0, 3, r2, cr5, cr2, {3}
  14:	776f6e6b 	strvcb	r6, [pc, -fp, ror #28]!
  18:	7473206e 	ldrvcbt	r2, [r3], #-110
  1c:	73757461 	cmnvc	r5, #1627389952	; 0x61000000
  20:	32302520 	eorccs	r2, r0, #134217728	; 0x8000000
  24:	00000a78 	andeq	r0, r0, r8, ror sl
  28:	533e333c 	teqpl	lr, #-268435456	; 0xf0000000
  2c:	72772044 	rsbvcs	r2, r7, #68	; 0x44
  30:	20657469 	rsbcs	r7, r5, r9, ror #8
  34:	6f727265 	swivs	0x00727265
  38:	30252072 	eorcc	r2, r5, r2, ror r0
  3c:	000a7832 	andeq	r7, sl, r2, lsr r8
  40:	533e333c 	teqpl	lr, #-268435456	; 0xf0000000
  44:	72772044 	rsbvcs	r2, r7, #68	; 0x44
  48:	20657469 	rsbcs	r7, r5, r9, ror #8
  4c:	20435243 	subcs	r5, r3, r3, asr #4
  50:	6f727265 	swivs	0x00727265
  54:	30252072 	eorcc	r2, r5, r2, ror r0
  58:	000a7832 	andeq	r7, sl, r2, lsr r8
  5c:	533e333c 	teqpl	lr, #-268435456	; 0xf0000000
  60:	65722044 	ldrvsb	r2, [r2, #-68]!
  64:	43206461 	teqmi	r0, #1627389952	; 0x61000000
  68:	65204352 	strvs	r4, [r0, #-850]!
  6c:	726f7272 	rsbvc	r7, pc, #536870919	; 0x20000007
  70:	25203a20 	strcs	r3, [r0, #-2592]!
  74:	25783230 	ldrcsb	r3, [r8, #-560]!
  78:	20783230 	rsbcss	r3, r8, r0, lsr r2
  7c:	3025203a 	eorcc	r2, r5, sl, lsr r0
  80:	000a7834 	andeq	r7, sl, r4, lsr r8
  84:	533e333c 	teqpl	lr, #-268435456	; 0xf0000000
  88:	6c622044 	stcvsl	0, cr2, [r2], #-272
  8c:	6572206b 	ldrvsb	r2, [r2, #-107]!
  90:	65206461 	strvs	r6, [r0, #-1121]!
  94:	726f7272 	rsbvc	r7, pc, #536870919	; 0x20000007
  98:	32302520 	eorccs	r2, r0, #134217728	; 0x8000000
  9c:	00000a78 	andeq	r0, r0, r8, ror sl
  a0:	73636d6d 	cmnvc	r3, #6976	; 0x1b40
  a4:	65675f64 	strvsb	r5, [r7, #-3940]!
  a8:	6568636e 	strvsb	r6, [r8, #-878]!
  ac:	61636b63 	cmnvs	r3, r3, ror #22
  b0:	203a6472 	eorcss	r6, sl, r2, ror r4
  b4:	65746564 	ldrvsb	r6, [r4, #-1380]!
  b8:	66207463 	strvst	r7, [r0], -r3, ror #8
  bc:	656c6961 	strvsb	r6, [ip, #-2401]!
  c0:	72202c64 	eorvc	r2, r0, #25600	; 0x6400
  c4:	79727465 	ldmvcdb	r2!, {r0, r2, r5, r6, sl, ip, sp, lr}^
  c8:	20676e69 	rsbcs	r6, r7, r9, ror #28
  cc:	68746977 	ldmvsda	r4!, {r0, r1, r2, r4, r5, r6, r8, fp, sp, lr}^
  d0:	6c656420 	cfstrdvs	mvd6, [r5], #-128
  d4:	253d7961 	ldrcs	r7, [sp, #-2401]!
  d8:	00000a64 	andeq	r0, r0, r4, ror #20
  dc:	73636d6d 	cmnvc	r3, #6976	; 0x1b40
  e0:	65675f64 	strvsb	r5, [r7, #-3940]!
  e4:	6568636e 	strvsb	r6, [r8, #-878]!
  e8:	61636b63 	cmnvs	r3, r3, ror #22
  ec:	203a6472 	eorcss	r6, sl, r2, ror r4
  f0:	65746564 	ldrvsb	r6, [r4, #-1380]!
  f4:	66207463 	strvst	r7, [r0], -r3, ror #8
  f8:	656c6961 	strvsb	r6, [ip, #-2401]!
  fc:	73202c64 	teqvc	r0, #25600	; 0x6400
 100:	7972726f 	ldmvcdb	r2!, {r0, r1, r2, r3, r5, r6, r9, ip, sp, lr}^
 104:	0000000a 	andeq	r0, r0, sl
Disassembly of section .data:

00000000 <left_mount>:
   0:	00000000 	andeq	r0, r0, r0

00000004 <do_remount>:
   4:	00000000 	andeq	r0, r0, r0

00000008 <fasyncptr>:
   8:	00000000 	andeq	r0, r0, r0

0000000c <slotdetect_fops>:
	...
  24:	000003a0 	andeq	r0, r0, r0, lsr #7
  28:	00000000 	andeq	r0, r0, r0
  2c:	00000310 	andeq	r0, r0, r0, lsl r3
  30:	00000000 	andeq	r0, r0, r0
  34:	00000358 	andeq	r0, r0, r8, asr r3
  38:	00000000 	andeq	r0, r0, r0
  3c:	000002ec 	andeq	r0, r0, ip, ror #5
	...

00000054 <slotdetect_device>:
  54:	000000f0 	streqd	r0, [r0], -r0
  58:	00000028 	andeq	r0, r0, r8, lsr #32
	...

0000006c <search_busses>:
  6c:	00000064 	andeq	r0, r0, r4, rrx
	...

000000a0 <mmcd_major_no>:
  a0:	0000003c 	andeq	r0, r0, ip, lsr r0

000000a4 <mmcd_gendisk>:
  a4:	0000003c 	andeq	r0, r0, ip, lsr r0
  a8:	000000f4 	streqd	r0, [r0], -r4
  ac:	00000004 	andeq	r0, r0, r4
  b0:	00000010 	andeq	r0, r0, r0, lsl r0
  b4:	00000000 	andeq	r0, r0, r0
  b8:	0000001c 	andeq	r0, r0, ip, lsl r0
	...

000000d4 <mmcd_fops>:
	...

000000ec <count.959>:
  ec:	00000000 	andeq	r0, r0, r0

000000f0 <proc_mmcsd_root>:
  f0:	00000000 	andeq	r0, r0, r0

000000f4 <mmcsd_internal_w_buffer>:
  f4:	00000000 	andeq	r0, r0, r0

000000f8 <mmcsd_internal_w_buffer_adr>:
  f8:	00000000 	andeq	r0, r0, r0

000000fc <mmcsd_internal_w_buffer_blocknum>:
  fc:	00000000 	andeq	r0, r0, r0

00000100 <mmcsd_internal_w_state>:
 100:	00000000 	andeq	r0, r0, r0

00000104 <sd_transpeed_exponent_table>:
 104:	00000001 	andeq	r0, r0, r1
 108:	0000000a 	andeq	r0, r0, sl
 10c:	00000064 	andeq	r0, r0, r4, rrx
 110:	000003e8 	andeq	r0, r0, r8, ror #7
	...

00000124 <sd_transpeed_mantissa_table>:
 124:	0d0c0a00 	fstseq	s0, [ip]
 128:	1e19140e 	cfmulsne	mvf1, mvf9, mvf14
 12c:	322d2823 	eorcc	r2, sp, #2293760	; 0x230000
 130:	50463c37 	subpl	r3, r6, r7, lsr ip

00000134 <sd_control>:
 134:	00000000 	andeq	r0, r0, r0
 138:	00002a38 	andeq	r2, r0, r8, lsr sl
 13c:	00002e50 	andeq	r2, r0, r0, asr lr

00000140 <sd_taac_exponent_table>:
 140:	00000001 	andeq	r0, r0, r1
 144:	0000000a 	andeq	r0, r0, sl
 148:	00000064 	andeq	r0, r0, r4, rrx
 14c:	000003e8 	andeq	r0, r0, r8, ror #7
 150:	00002710 	andeq	r2, r0, r0, lsl r7
 154:	000186a0 	andeq	r8, r1, r0, lsr #13
 158:	000f4240 	andeq	r4, pc, r0, asr #4
 15c:	00989680 	addeqs	r9, r8, r0, lsl #13

00000160 <sd_taac_mantissa_table>:
 160:	0d0c0a00 	fstseq	s0, [ip]
 164:	1e19140e 	cfmulsne	mvf1, mvf9, mvf14
 168:	322d2823 	eorcc	r2, sp, #2293760	; 0x230000
 16c:	50463c37 	subpl	r3, r6, r7, lsr ip

00000170 <CardResetSequence>:
 170:	ffffffff 	swinv	0x00ffffff
 174:	ffffffff 	swinv	0x00ffffff
 178:	0000ffff 	streqd	pc, [r0], -pc

0000017c <is_open>:
 17c:	00000000 	andeq	r0, r0, r0

00000180 <current_block_len>:
 180:	00000000 	andeq	r0, r0, r0

00000184 <sd_busy>:
 184:	00000000 	andeq	r0, r0, r0

00000188 <sd_lock>:
 188:	00000000 	andeq	r0, r0, r0

0000018c <sd_wait>:
 18c:	00000000 	andeq	r0, r0, r0
 190:	00000190 	muleq	r0, r0, r1
 194:	00000190 	muleq	r0, r0, r1

00000198 <x_sel>:
 198:	00020402 	andeq	r0, r2, r2, lsl #8

00000199 <clock_sel>:
 199:	74000204 	strvc	r0, [r0], #-516

0000019a <clock_x>:
 19a:	35740002 	ldrccb	r0, [r4, #-2]!

0000019c <collie_sd_busctrl>:
 19c:	00003574 	andeq	r3, r0, r4, ror r5
 1a0:	00003714 	andeq	r3, r0, r4, lsl r7
 1a4:	000037a0 	andeq	r3, r0, r0, lsr #15
 1a8:	000037c0 	andeq	r3, r0, r0, asr #15
 1ac:	00003afc 	streqd	r3, [r0], -ip
 1b0:	00003b28 	andeq	r3, r0, r8, lsr #22
 1b4:	00003b50 	andeq	r3, r0, r0, asr fp
 1b8:	00003e80 	andeq	r3, r0, r0, lsl #29
 1bc:	00003e94 	muleq	r0, r4, lr
 1c0:	00003ecc 	andeq	r3, r0, ip, asr #29
 1c4:	00003f04 	andeq	r3, r0, r4, lsl #30
 1c8:	00004058 	andeq	r4, r0, r8, asr r0
	...
 1d4:	00004744 	andeq	r4, r0, r4, asr #14
 1d8:	00004758 	andeq	r4, r0, r8, asr r7
	...
 1ec:	0000476c 	andeq	r4, r0, ip, ror #14
Disassembly of section .bss:

00000000 <timer.931>:
	...

00000014 <mmcsd_pm_dev>:
  14:	00000000 	andeq	r0, r0, r0

00000018 <found_busses_total>:
  18:	00000000 	andeq	r0, r0, r0

0000001c <mmcd_sizes>:
	...

0000005c <mmcd_blksizes>:
	...

0000009c <mmcd_partitions>:
	...

0000019c <proc_mmcsd>:
 19c:	00000000 	andeq	r0, r0, r0

000001a0 <w_buffer_flush_timer>:
	...

000001b4 <taac>:
 1b4:	00000000 	andeq	r0, r0, r0

000001b8 <response>:
	...

000001cc <rw_block_len>:
 1cc:	00000000 	andeq	r0, r0, r0

000001d0 <rw_block_num>:
 1d0:	00000000 	andeq	r0, r0, r0

000001d4 <is_need_wait>:
 1d4:	00000000 	andeq	r0, r0, r0

000001d8 <mmcsd_internal_r_buffer_adr>:
 1d8:	00000000 	andeq	r0, r0, r0

000001dc <mmcsd_internal_r_buffer_valid>:
 1dc:	00000000 	andeq	r0, r0, r0

000001e0 <mmcsd_internal_r_buffer>:
 1e0:	00000000 	andeq	r0, r0, r0

000001e4 <checking.0>:
 1e4:	00000000 	andeq	r0, r0, r0

000001e8 <found_busses>:
 1e8:	00000000 	andeq	r0, r0, r0
Disassembly of section .comment:

00000000 <.comment>:
   0:	43434700 	cmpmi	r3, #0	; 0x0
   4:	4728203a 	undefined
   8:	2029554e 	eorcs	r5, r9, lr, asr #10
   c:	2e332e33 	mrccs	14, 1, r2, cr3, cr3, {1}
  10:	44282032 	strmit	r2, [r8], #-50
  14:	61696265 	cmnvs	r9, r5, ror #4
  18:	Address 0x18 is out of bounds.

