	.arm
	.global Boot_Init
	.type Boot_Init, %function
Boot_Init:
	.word 0x29863753
	.word 0x00000000
	.word 0x00000000
	.word 0x00000000
	mov	r0, #18
	msr	CPSR_fc, r0
	ldr	sp, [pc, #164]
	mov	r0, #31
	msr	CPSR_fc, r0
	ldr	sp, [pc, #148]
	mov	r0, #0
	mov	r1, #4
	orr	r0, r0, r1
	mov	r1, #16
	orr	r0, r0, r1
	mov	r1, #16384
	orr	r0, r0, r1
	ldr	r1, [pc, #124]
	strh	r0, [r1]
	mov	r0, #33554432
	mov	r1, #262144
	mov	r2, #0
	bl	Boot_MemFill
	mov	r0, #50331648
	mov	r1, #32768
	mov	r2, #0
	bl	Boot_MemFill
	mov	r0, #100663296
	mov	r1, #98304
	mov	r2, #0
	bl	Boot_MemFill
	mov	r0, #117440512
	mov	r1, #1024
	mov	r2, #160
	bl	Boot_MemFill
	mov	r0, #83886080
	mov	r1, #1024
	mov	r2, #0
	bl	Boot_MemFill
	ldr	r0, [pc, #92]
	ldr	r1, [pc, #92]
	sub	r1, r1, r0
	mov	r2, #33554432
	bl	Boot_MemCopy
	ldr	r1, [pc, #80]
	mov	lr, pc
	bx	r1
	b	Boot_Init+0x10
	.word 0x03007F00
	.word 0x03007FA0
	.word 0x04000204
	.type Boot_MemFill, %function
Boot_MemFill:
	push	{r0, r1, r2}
	str	r2, [r0], #4
	subs	r1, r1, #4
	bne	Boot_MemFill+4
	pop	{r0, r1, r2}
	bx	lr
	.type Boot_MemCopy, %function
Boot_MemCopy:
	push	{r0, r1, r2, r3}
	ldrb	r3, [r0], #1
	strb	r3, [r2], #1
	subs	r1, r1, #1
	bne	Boot_MemCopy+4
	pop	{r0, r1, r2, r3}
	bx	lr
	.word 0x08CA05BC
	.word 0x08CA121C
	.word 0x08001575
