
;  GNU C 2.7.2 [AL 1.1, MM 40] RISC NEWS-OS compiled by CC

;  Cc1 defaults:
;  -mmemcpy

;  Cc1 arguments (-G value = 0, Cpu = 3000, ISA = 1):
;  -quiet -dumpbase -O2 -Wall -o

gcc2_compiled.:
__gnu_compiled_c:
	.code
	.align	2
BulletML_ptrListInfo:
	.word	ptr_copy
	.word	ptr_delete
	.code
	.align	1
BulletML_roundDirection:
;	.frame	%sp,20,$31		# vars= 16, regs= 1/0, args= 0, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	sub	%sp,0x4		; 	xsub	%sp,%sp,16
	ld.w	%r10,%r12
	ext	0x14c0		; 	xld.w	%r12,-184320			; 0xfffd3000
	ld.w	%r12,0x0
	ext	0x2d		; 	xadd	%r11,%r10,368640
	ext	0x0
	add	%r11,%r10
__LX71:				; __L71:
	cmp	%r10,%r12
	jrge	__LX72		; 	xjrge	__L72
	ld.w	%r10,%r11
	ext	0x1680		; 	xadd	%r11,%r11,368640
	add	%r11,0x0
	jp	__LX71		; 	xjp	__L71
__LX72:				; __L72:
	ext	0xb3f		; 	xld.w	%r11,0x0002cfff		; 184319
	ld.w	%r11,0x3f
__LX80:				; __L80:
	cmp	%r10,%r11
	jrle	__LX81		; 	xjrle	__L81
	ext	0x1680		; 	xsub	%r10,%r10,368640
	sub	%r10,0x0
	jp	__LX80		; 	xjp	__L80
__LX81:				; __L81:
	add	%sp,0x4		; 	xadd	%sp,%sp,16
	ret
	.align	1
BulletML_skipWhiteSpace:
;	.frame	%sp,12,$31		# vars= 0, regs= 3/0, args= 0, extra= 0
;	.mask	0x80030000,-4
;	.fmask	0x00000000,0
	pushn	%r1
	ld.w	%r1,%r12
	ld.w	%r0,[%r1]	; 	xld.w	%r0,[%r1]
__LX90:				; __L90:
	ld.b	%r12,[%r0]	; 	xld.b	%r12,[%r0]
	ext	isspace@rm	; 	xcall	isspace
	call	isspace@rl
	cmp	%r10,0x0
	jreq	__LX91		; 	xjreq	__L91
	add	%r0,0x1		; 	xadd	%r0,%r0,1
	jp	__LX90		; 	xjp	__L90
__LX91:				; __L91:
	ld.w	[%r1],%r0	; 	xld.w	[%r1],%r0
	ld.b	%r10,[%r0]	; 	xld.b	%r10,[%r0]
	popn	%r1
	ret
	.code
	.align	2
__LC0:
	.ascii	"xmlns\000"
	.align	2
__LC1:
	.ascii	"type\000"
	.align	2
__LC2:
	.ascii	"label\000"
	.align	2
__LC3:
	.ascii	"bltml.$(%d)\000"
	.code
	.align	1
BulletML_translateElement:
;	.frame	%sp,32,$31		# vars= 4, regs= 5/0, args= 8, extra= 0
;	.mask	0x800f0000,-4
;	.fmask	0x00000000,0
	pushn	%r3
	sub	%sp,0x3		; 	xsub	%sp,%sp,12
	ld.w	[%sp+0x2],%r12	; 	xld.w	[%sp+8],%r12
	ld.w	%r12,[%sp+0x2]	; 	xld.w	%r12,[%sp+8]
	ext	TiXmlNode_Value@rm	; 	xcall	TiXmlNode_Value
	call	TiXmlNode_Value@rl
	ld.w	%r12,%r10
	ext	BulletMLNode_new@rm	; 	xcall	BulletMLNode_new
	call	BulletMLNode_new@rl
	ld.w	%r3,%r10
	ld.w	%r12,[%sp+0x2]	; 	xld.w	%r12,[%sp+8]
	ext	TiXmlElement_FirstAttribute@rm	; 	xcall	TiXmlElement_FirstAttribute
	call	TiXmlElement_FirstAttribute@rl
	jp	__LX131		; 	xjp	__L131
__LX98:				; __L98:
	ld.w	%r12,%r0
	ext	TiXmlAttribute_Name@rm	; 	xcall	TiXmlAttribute_Name
	call	TiXmlAttribute_Name@rl
	ld.w	%r12,%r10
	ext	__LC0+0x0@h	; 	xld.w	%r13,__LC0
	ext	__LC0+0x0@m
	ld.w	%r13,__LC0+0x0@l
	ext	strcmp@rm	; 	xcall	strcmp
	call	strcmp@rl
	cmp	%r10,0x0
	jreq	__LX97		; 	xjreq	__L97
	ld.w	%r12,%r0
	ext	TiXmlAttribute_Name@rm	; 	xcall	TiXmlAttribute_Name
	call	TiXmlAttribute_Name@rl
	ld.w	%r12,%r10
	ext	__LC1+0x0@h	; 	xld.w	%r13,__LC1
	ext	__LC1+0x0@m
	ld.w	%r13,__LC1+0x0@l
	ext	strcmp@rm	; 	xcall	strcmp
	call	strcmp@rl
	cmp	%r10,0x0
	jrne	__LX100		; 	xjrne	__L100
	ld.w	%r12,%r0
	ext	TiXmlAttribute_Value@rm	; 	xcall	TiXmlAttribute_Value
	call	TiXmlAttribute_Value@rl
	ld.w	%r12,%r3
	ld.w	%r13,%r10
	ext	BulletMLNode_setType@rm	; 	xcall	BulletMLNode_setType
	call	BulletMLNode_setType@rl
	jp	__LX97		; 	xjp	__L97
__LX100:				; __L100:
	ld.w	%r12,%r0
	ext	TiXmlAttribute_Name@rm	; 	xcall	TiXmlAttribute_Name
	call	TiXmlAttribute_Name@rl
	ld.w	%r12,%r10
	ext	__LC2+0x0@h	; 	xld.w	%r13,__LC2
	ext	__LC2+0x0@m
	ld.w	%r13,__LC2+0x0@l
	ext	strcmp@rm	; 	xcall	strcmp
	call	strcmp@rl
	cmp	%r10,0x0
	jrne	__LX101		; 	xjrne	__L101
	ld.w	%r12,%r0
	ext	TiXmlAttribute_Value@rm	; 	xcall	TiXmlAttribute_Value
	call	TiXmlAttribute_Value@rl
	ld.w	%r12,%r3
	ld.w	%r13,%r10
	ext	BulletMLNode_setLabel@rm	; 	xcall	BulletMLNode_setLabel
	call	BulletMLNode_setLabel@rl
	jp	__LX97		; 	xjp	__L97
__LX101:				; __L101:
	ext	__LC3+0x0@h	; 	xld.w	%r10,__LC3
	ext	__LC3+0x0@m
	ld.w	%r10,__LC3+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	0x1		; 	xld.w	%r10,0x00000053		; 83
	ld.w	%r10,0x13
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX97:				; __L97:
	ld.w	%r12,%r0
	ext	TiXmlAttribute_Next@rm	; 	xcall	TiXmlAttribute_Next
	call	TiXmlAttribute_Next@rl
__LX131:				; __L131:
	ld.w	%r0,%r10
	cmp	%r0,0x0
	jrne	__LX98		; 	xjrne	__L98
	ld.w	%r12,%r3
	ext	BulletMLNode_getName@rm	; 	xcall	BulletMLNode_getName
	call	BulletMLNode_getName@rl
	cmp	%r10,0x1	; 	xcmp	%r10,1
	jrlt	__LX103		; 	xjrlt	__L103
	cmp	%r10,0x3	; 	xcmp	%r10,3
	jrle	__LX106		; 	xjrle	__L106
	cmp	%r10,0x12	; 	xcmp	%r10,18
	jrgt	__LX103		; 	xjrgt	__L103
	cmp	%r10,0x10	; 	xcmp	%r10,16
	jrlt	__LX103		; 	xjrlt	__L103
	jp	__LX116		; 	xjp	__L116
__LX106:				; __L106:
	ld.w	%r12,%r3
	ext	BulletMLNode_getLabel@rm	; 	xcall	BulletMLNode_getLabel
	call	BulletMLNode_getLabel@rl
	ld.b	%r10,[%r10]	; 	xld.b	%r10,[%r10]
	cmp	%r10,0x0
	jreq	__LX103		; 	xjreq	__L103
	ld.w	%r2,0x0
__LX108:				; __L108:
	ext	BulletML_refTo+0x0@ah	; 	xld.w	%r12,[BulletML_refTo]
	ext	BulletML_refTo+0x0@al
	ld.w	%r12,[%r8]
	ext	list_size@rm	; 	xcall	list_size
	call	list_size@rl
	cmp	%r2,%r10
	jrge	__LX109		; 	xjrge	__L109
	ext	BulletML_refTo+0x0@ah	; 	xld.w	%r12,[BulletML_refTo]
	ext	BulletML_refTo+0x0@al
	ld.w	%r12,[%r8]
	ld.w	%r13,%r2
	ext	list_get@rm	; 	xcall	list_get
	call	list_get@rl
	ld.w	%r1,%r10
	ld.w	%r12,%r1
	ext	BulletMLNode_getName@rm	; 	xcall	BulletMLNode_getName
	call	BulletMLNode_getName@rl
	ld.w	%r0,%r10
	ld.w	%r12,%r3
	ext	BulletMLNode_getName@rm	; 	xcall	BulletMLNode_getName
	call	BulletMLNode_getName@rl
	cmp	%r0,%r10
	jrne	__LX110		; 	xjrne	__L110
	ld.w	%r12,%r1
	ext	BulletMLNode_getLabel@rm	; 	xcall	BulletMLNode_getLabel
	call	BulletMLNode_getLabel@rl
	ld.w	%r0,%r10
	ld.w	%r12,%r3
	ext	BulletMLNode_getLabel@rm	; 	xcall	BulletMLNode_getLabel
	call	BulletMLNode_getLabel@rl
	ld.w	%r12,%r0
	ld.w	%r13,%r10
	ext	strcmp@rm	; 	xcall	strcmp
	call	strcmp@rl
	cmp	%r10,0x0
	jrne	__LX110		; 	xjrne	__L110
	ext	__LC3+0x0@h	; 	xld.w	%r10,__LC3
	ext	__LC3+0x0@m
	ld.w	%r10,__LC3+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	0x1		; 	xld.w	%r10,0x0000005f		; 95
	ld.w	%r10,0x1f
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX110:				; __L110:
	add	%r2,0x1		; 	xadd	%r2,%r2,1
	jp	__LX108		; 	xjp	__L108
__LX109:				; __L109:
	ext	BulletML_refTo+0x0@ah	; 	xld.w	%r12,[BulletML_refTo]
	ext	BulletML_refTo+0x0@al
	ld.w	%r12,[%r8]
	jp	__LX132		; 	xjp	__L132
__LX116:				; __L116:
	ld.w	%r12,%r3
	ext	BulletMLNode_getLabel@rm	; 	xcall	BulletMLNode_getLabel
	call	BulletMLNode_getLabel@rl
	ld.b	%r10,[%r10]	; 	xld.b	%r10,[%r10]
	cmp	%r10,0x0
	jreq	__LX117		; 	xjreq	__L117
	ext	BulletML_refFrom+0x0@ah	; 	xld.w	%r12,[BulletML_refFrom]
	ext	BulletML_refFrom+0x0@al
	ld.w	%r12,[%r8]
__LX132:				; __L132:
	ld.w	%r13,%r3
	ext	list_add@rm	; 	xcall	list_add
	call	list_add@rl
	jp	__LX103		; 	xjp	__L103
__LX117:				; __L117:
	ext	__LC3+0x0@h	; 	xld.w	%r10,__LC3
	ext	__LC3+0x0@m
	ld.w	%r10,__LC3+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	0x1		; 	xld.w	%r10,0x0000006d		; 109
	ld.w	%r10,0x2d
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX103:				; __L103:
	ld.w	%r12,[%sp+0x2]	; 	xld.w	%r12,[%sp+8]
	ld.w	%r13,0x0
	ext	TiXmlNode_FirstChild@rm	; 	xcall	TiXmlNode_FirstChild
	call	TiXmlNode_FirstChild@rl
	jp	__LX133		; 	xjp	__L133
__LX125:				; __L125:
	ld.w	%r12,%r0
	ext	TiXmlNode_ToElement@rm	; 	xcall	TiXmlNode_ToElement
	call	TiXmlNode_ToElement@rl
	ld.w	[%sp+0x2],%r10	; 	xld.w	[%sp+8],%r10
	cmp	%r10,0x0
	jreq	__LX126		; 	xjreq	__L126
	ld.w	%r12,[%sp+0x2]	; 	xld.w	%r12,[%sp+8]
	ext	BulletML_translateElement@rm	; 	xcall	BulletML_translateElement
	call	BulletML_translateElement@rl
	ld.w	%r12,%r3
	ld.w	%r13,%r10
	ext	BulletMLNode_addChild@rm	; 	xcall	BulletMLNode_addChild
	call	BulletMLNode_addChild@rl
	jp	__LX124		; 	xjp	__L124
__LX126:				; __L126:
	ld.w	%r12,%r0
	ext	TiXmlNode_ToText@rm	; 	xcall	TiXmlNode_ToText
	call	TiXmlNode_ToText@rl
	cmp	%r10,0x0
	jreq	__LX127		; 	xjreq	__L127
	ld.w	%r12,%r10
	ext	TiXmlNode_Value@rm	; 	xcall	TiXmlNode_Value
	call	TiXmlNode_Value@rl
	ld.w	%r12,%r3
	ld.w	%r13,%r10
	ext	BulletMLNode_setValue@rm	; 	xcall	BulletMLNode_setValue
	call	BulletMLNode_setValue@rl
	jp	__LX124		; 	xjp	__L124
__LX127:				; __L127:
	ld.w	%r12,%r0
	ext	TiXmlNode_ToComment@rm	; 	xcall	TiXmlNode_ToComment
	call	TiXmlNode_ToComment@rl
	cmp	%r10,0x0
	jrne	__LX124		; 	xjrne	__L124
	ext	__LC3+0x0@h	; 	xld.w	%r10,__LC3
	ext	__LC3+0x0@m
	ld.w	%r10,__LC3+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	0x2		; 	xld.w	%r10,0x00000082		; 130
	ld.w	%r10,0x2
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX124:				; __L124:
	ld.w	%r12,%r0
	ld.w	%r13,0x0
	ext	TiXmlNode_NextSibling@rm	; 	xcall	TiXmlNode_NextSibling
	call	TiXmlNode_NextSibling@rl
__LX133:				; __L133:
	ld.w	%r0,%r10
	cmp	%r0,0x0
	jrne	__LX125		; 	xjrne	__L125
	ld.w	%r10,%r3
	add	%sp,0x3		; 	xadd	%sp,%sp,12
	popn	%r3
	ret
	.code
	.align	2
__LC4:
	.ascii	"bulletml\000"
	.code
	.align	1
	.global	BulletML_load
BulletML_load:
;	.frame	%sp,36,$31		# vars= 8, regs= 5/0, args= 8, extra= 0
;	.mask	0x800f0000,-4
;	.fmask	0x00000000,0
	pushn	%r3
	sub	%sp,0x4		; 	xsub	%sp,%sp,16
	ld.w	%r1,%r12
	ext	BulletML_ptrListInfo+0x0@h	; 	xld.w	%r0,BulletML_ptrListInfo
	ext	BulletML_ptrListInfo+0x0@m
	ld.w	%r0,BulletML_ptrListInfo+0x0@l
	ld.w	%r12,%r0
	ext	list_create@rm	; 	xcall	list_create
	call	list_create@rl
	ext	BulletML_refFrom+0x0@ah	; 	xld.w	[BulletML_refFrom],%r10
	ext	BulletML_refFrom+0x0@al
	ld.w	[%r8],%r10
	ld.w	%r12,%r0
	ext	list_create@rm	; 	xcall	list_create
	call	list_create@rl
	ext	BulletML_refTo+0x0@ah	; 	xld.w	[BulletML_refTo],%r10
	ext	BulletML_refTo+0x0@al
	ld.w	[%r8],%r10
	ld.w	%r12,0x0
	ext	TiXmlDocument_new@rm	; 	xcall	TiXmlDocument_new
	call	TiXmlDocument_new@rl
	ld.w	%r0,%r10
	ld.w	%r12,%r1
	ext	0x0		; 	xld.w	%r13,0x0000003c		; 60
	ld.w	%r13,0x3c
	ext	strchr@rm	; 	xcall	strchr
	call	strchr@rl
	cmp	%r10,0x0
	jreq	__LX135		; 	xjreq	__L135
	ld.w	%r10,[%r0]	; 	xld.w	%r10,[%r0]
	ext	0xc		; 	xld.w	%r10,[%r10+12]
	ld.w	%r10,[%r10]
	ld.w	%r12,%r0
	ld.w	%r13,%r1
	call	%r10
	jp	__LX136		; 	xjp	__L136
__LX135:				; __L135:
	ld.w	%r12,%r0
	ld.w	%r13,%r1
	ext	TiXmlDocument_LoadFile@rm	; 	xcall	TiXmlDocument_LoadFile
	call	TiXmlDocument_LoadFile@rl
__LX136:				; __L136:
	ld.w	%r12,%r0
	ext	__LC4+0x0@h	; 	xld.w	%r13,__LC4
	ext	__LC4+0x0@m
	ld.w	%r13,__LC4+0x0@l
	ext	TiXmlNode_FirstChildElement@rm	; 	xcall	TiXmlNode_FirstChildElement
	call	TiXmlNode_FirstChildElement@rl
	cmp	%r10,0x0
	jrne	__LX138		; 	xjrne	__L138
	ext	__LC3+0x0@h	; 	xld.w	%r10,__LC3
	ext	__LC3+0x0@m
	ld.w	%r10,__LC3+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	0x2		; 	xld.w	%r10,0x000000a2		; 162
	ld.w	%r10,0x22
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX138:				; __L138:
	ld.w	%r12,%r10
	ext	BulletML_translateElement@rm	; 	xcall	BulletML_translateElement
	call	BulletML_translateElement@rl
	ld.w	[%sp+0x2],%r10	; 	xld.w	[%sp+8],%r10
	ld.w	%r12,%r0
	ext	TiXmlDocument_delete@rm	; 	xcall	TiXmlDocument_delete
	call	TiXmlDocument_delete@rl
	ld.w	%r11,0x0
__LX152:				; __L152:
	ld.w	[%sp+0x3],%r11	; 	xld.w	[%sp+12],%r11
	ext	BulletML_refFrom+0x0@ah	; 	xld.w	%r12,[BulletML_refFrom]
	ext	BulletML_refFrom+0x0@al
	ld.w	%r12,[%r8]
	ext	list_size@rm	; 	xcall	list_size
	call	list_size@rl
	ld.w	%r11,[%sp+0x3]	; 	xld.w	%r11,[%sp+12]
	cmp	%r11,%r10
	jrge	__LX140		; 	xjrge	__L140
	ext	BulletML_refFrom+0x0@ah	; 	xld.w	%r12,[BulletML_refFrom]
	ext	BulletML_refFrom+0x0@al
	ld.w	%r12,[%r8]
	ld.w	%r13,[%sp+0x3]	; 	xld.w	%r13,[%sp+12]
	ext	list_get@rm	; 	xcall	list_get
	call	list_get@rl
	ld.w	%r2,%r10
	ld.w	%r3,0x0
__LX143:				; __L143:
	ext	BulletML_refTo+0x0@ah	; 	xld.w	%r12,[BulletML_refTo]
	ext	BulletML_refTo+0x0@al
	ld.w	%r12,[%r8]
	ext	list_size@rm	; 	xcall	list_size
	call	list_size@rl
	cmp	%r3,%r10
	jrge	__LX144		; 	xjrge	__L144
	ext	BulletML_refTo+0x0@ah	; 	xld.w	%r12,[BulletML_refTo]
	ext	BulletML_refTo+0x0@al
	ld.w	%r12,[%r8]
	ld.w	%r13,%r3
	ext	list_get@rm	; 	xcall	list_get
	call	list_get@rl
	ld.w	%r1,%r10
	ld.w	%r12,%r2
	ext	BulletMLNode_getName@rm	; 	xcall	BulletMLNode_getName
	call	BulletMLNode_getName@rl
	cmp	%r10,0x10	; 	xcmp	%r10,16
	jrne	__LX149		; 	xjrne	__L149
	ld.w	%r12,%r1
	ext	BulletMLNode_getName@rm	; 	xcall	BulletMLNode_getName
	call	BulletMLNode_getName@rl
	cmp	%r10,0x1	; 	xcmp	%r10,1
	jrne	__LX149		; 	xjrne	__L149
	ld.w	%r12,%r2
	ext	BulletMLNode_getLabel@rm	; 	xcall	BulletMLNode_getLabel
	call	BulletMLNode_getLabel@rl
	ld.w	%r0,%r10
	ld.w	%r12,%r1
	ext	BulletMLNode_getLabel@rm	; 	xcall	BulletMLNode_getLabel
	call	BulletMLNode_getLabel@rl
	ld.w	%r12,%r0
	ld.w	%r13,%r10
	ext	strcmp@rm	; 	xcall	strcmp
	call	strcmp@rl
	cmp	%r10,0x0
	jreq	__LX148		; 	xjreq	__L148
__LX149:				; __L149:
	ld.w	%r12,%r2
	ext	BulletMLNode_getName@rm	; 	xcall	BulletMLNode_getName
	call	BulletMLNode_getName@rl
	cmp	%r10,0x11	; 	xcmp	%r10,17
	jrne	__LX150		; 	xjrne	__L150
	ld.w	%r12,%r1
	ext	BulletMLNode_getName@rm	; 	xcall	BulletMLNode_getName
	call	BulletMLNode_getName@rl
	cmp	%r10,0x2	; 	xcmp	%r10,2
	jrne	__LX150		; 	xjrne	__L150
	ld.w	%r12,%r2
	ext	BulletMLNode_getLabel@rm	; 	xcall	BulletMLNode_getLabel
	call	BulletMLNode_getLabel@rl
	ld.w	%r0,%r10
	ld.w	%r12,%r1
	ext	BulletMLNode_getLabel@rm	; 	xcall	BulletMLNode_getLabel
	call	BulletMLNode_getLabel@rl
	ld.w	%r12,%r0
	ld.w	%r13,%r10
	ext	strcmp@rm	; 	xcall	strcmp
	call	strcmp@rl
	cmp	%r10,0x0
	jreq	__LX148		; 	xjreq	__L148
__LX150:				; __L150:
	ld.w	%r12,%r2
	ext	BulletMLNode_getName@rm	; 	xcall	BulletMLNode_getName
	call	BulletMLNode_getName@rl
	cmp	%r10,0x12	; 	xcmp	%r10,18
	jrne	__LX145		; 	xjrne	__L145
	ld.w	%r12,%r1
	ext	BulletMLNode_getName@rm	; 	xcall	BulletMLNode_getName
	call	BulletMLNode_getName@rl
	cmp	%r10,0x3	; 	xcmp	%r10,3
	jrne	__LX145		; 	xjrne	__L145
	ld.w	%r12,%r2
	ext	BulletMLNode_getLabel@rm	; 	xcall	BulletMLNode_getLabel
	call	BulletMLNode_getLabel@rl
	ld.w	%r0,%r10
	ld.w	%r12,%r1
	ext	BulletMLNode_getLabel@rm	; 	xcall	BulletMLNode_getLabel
	call	BulletMLNode_getLabel@rl
	ld.w	%r12,%r0
	ld.w	%r13,%r10
	ext	strcmp@rm	; 	xcall	strcmp
	call	strcmp@rl
	cmp	%r10,0x0
	jrne	__LX145		; 	xjrne	__L145
__LX148:				; __L148:
	ld.w	%r12,%r2
	ld.w	%r13,%r1
	ext	BulletMLNode_setRef@rm	; 	xcall	BulletMLNode_setRef
	call	BulletMLNode_setRef@rl
	jp	__LX144		; 	xjp	__L144
__LX145:				; __L145:
	add	%r3,0x1		; 	xadd	%r3,%r3,1
	jp	__LX143		; 	xjp	__L143
__LX144:				; __L144:
	ext	BulletML_refTo+0x0@ah	; 	xld.w	%r12,[BulletML_refTo]
	ext	BulletML_refTo+0x0@al
	ld.w	%r12,[%r8]
	ext	list_size@rm	; 	xcall	list_size
	call	list_size@rl
	cmp	%r3,%r10
	jrne	__LX141		; 	xjrne	__L141
	ext	__LC3+0x0@h	; 	xld.w	%r10,__LC3
	ext	__LC3+0x0@m
	ld.w	%r10,__LC3+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	0x2		; 	xld.w	%r10,0x000000b4		; 180
	ld.w	%r10,0x34
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX141:				; __L141:
	ld.w	%r11,[%sp+0x3]	; 	xld.w	%r11,[%sp+12]
	add	%r11,0x1	; 	xadd	%r11,%r11,1
	jp	__LX152		; 	xjp	__L152
__LX140:				; __L140:
	ext	BulletML_refFrom+0x0@ah	; 	xld.w	%r12,[BulletML_refFrom]
	ext	BulletML_refFrom+0x0@al
	ld.w	%r12,[%r8]
	ext	list_delete@rm	; 	xcall	list_delete
	call	list_delete@rl
	ext	BulletML_refTo+0x0@ah	; 	xld.w	%r12,[BulletML_refTo]
	ext	BulletML_refTo+0x0@al
	ld.w	%r12,[%r8]
	ext	list_delete@rm	; 	xcall	list_delete
	call	list_delete@rl
	ld.w	%r10,[%sp+0x2]	; 	xld.w	%r10,[%sp+8]
	add	%sp,0x4		; 	xadd	%sp,%sp,16
	popn	%r3
	ret
	.align	1
BulletML_expr:
;	.frame	%sp,28,$31		# vars= 4, regs= 4/0, args= 8, extra= 0
;	.mask	0x80070000,-4
;	.fmask	0x00000000,0
	pushn	%r2
	sub	%sp,0x3		; 	xsub	%sp,%sp,12
	ld.w	%r2,%r12
	ld.w	%r10,[%r2]	; 	xld.w	%r10,[%r2]
	ld.w	[%sp+0x2],%r10	; 	xld.w	[%sp+8],%r10
	ld.w	%r12,%sp	; 	xadd	%r12,%sp,8
	add	%r12,0x8
	call	BulletML_term	; 	xcall	BulletML_term
	ld.w	%r1,%r10
	cmp	%r1,0x0
	jreq	__LX154		; 	xjreq	__L154
__LX155:				; __L155:
	ld.w	%r12,%sp	; 	xadd	%r12,%sp,8
	add	%r12,0x8
	ext	BulletML_skipWhiteSpace@rm	; 	xcall	BulletML_skipWhiteSpace
	call	BulletML_skipWhiteSpace@rl
	ld.w	%r0,%r10
	ext	0x0		; 	xcmp	%r0,43
	cmp	%r0,0x2b
	jreq	__LX159		; 	xjreq	__L159
	ext	0x0		; 	xcmp	%r0,45
	cmp	%r0,0x2d
	jrne	__LX154		; 	xjrne	__L154
__LX159:				; __L159:
	ld.w	%r10,[%sp+0x2]	; 	xld.w	%r10,[%sp+8]
	add	%r10,0x1	; 	xadd	%r10,%r10,1
	ld.w	[%sp+0x2],%r10	; 	xld.w	[%sp+8],%r10
	ld.w	%r12,%sp	; 	xadd	%r12,%sp,8
	add	%r12,0x8
	call	BulletML_term	; 	xcall	BulletML_term
	cmp	%r10,0x0
	jrne	__LX160		; 	xjrne	__L160
	ext	__LC3+0x0@h	; 	xld.w	%r10,__LC3
	ext	__LC3+0x0@m
	ld.w	%r10,__LC3+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	0x3		; 	xld.w	%r10,0x000000eb		; 235
	ld.w	%r10,0x2b
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX160:				; __L160:
	ld.w	%r12,%r0
	ld.w	%r13,%r1
	ld.w	%r14,%r10
	ext	BulletMLBinExpr_new@rm	; 	xcall	BulletMLBinExpr_new
	call	BulletMLBinExpr_new@rl
	ld.w	%r1,%r10
	jp	__LX155		; 	xjp	__L155
__LX154:				; __L154:
	ld.w	%r10,[%sp+0x2]	; 	xld.w	%r10,[%sp+8]
	ld.w	[%r2],%r10	; 	xld.w	[%r2],%r10
	ld.w	%r10,%r1
	add	%sp,0x3		; 	xadd	%sp,%sp,12
	popn	%r2
	ret
	.align	1
BulletML_term:
;	.frame	%sp,28,$31		# vars= 4, regs= 4/0, args= 8, extra= 0
;	.mask	0x80070000,-4
;	.fmask	0x00000000,0
	pushn	%r2
	sub	%sp,0x3		; 	xsub	%sp,%sp,12
	ld.w	%r2,%r12
	ld.w	%r10,[%r2]	; 	xld.w	%r10,[%r2]
	ld.w	[%sp+0x2],%r10	; 	xld.w	[%sp+8],%r10
	ld.w	%r12,%sp	; 	xadd	%r12,%sp,8
	add	%r12,0x8
	call	BulletML_factor	; 	xcall	BulletML_factor
	ld.w	%r1,%r10
	cmp	%r1,0x0
	jreq	__LX164		; 	xjreq	__L164
__LX165:				; __L165:
	ld.w	%r12,%sp	; 	xadd	%r12,%sp,8
	add	%r12,0x8
	ext	BulletML_skipWhiteSpace@rm	; 	xcall	BulletML_skipWhiteSpace
	call	BulletML_skipWhiteSpace@rl
	ld.w	%r0,%r10
	ext	0x0		; 	xcmp	%r0,42
	cmp	%r0,0x2a
	jreq	__LX169		; 	xjreq	__L169
	ext	0x0		; 	xcmp	%r0,47
	cmp	%r0,0x2f
	jreq	__LX169		; 	xjreq	__L169
	ext	0x0		; 	xcmp	%r0,37
	cmp	%r0,0x25
	jrne	__LX164		; 	xjrne	__L164
__LX169:				; __L169:
	ld.w	%r10,[%sp+0x2]	; 	xld.w	%r10,[%sp+8]
	add	%r10,0x1	; 	xadd	%r10,%r10,1
	ld.w	[%sp+0x2],%r10	; 	xld.w	[%sp+8],%r10
	ld.w	%r12,%sp	; 	xadd	%r12,%sp,8
	add	%r12,0x8
	call	BulletML_factor	; 	xcall	BulletML_factor
	cmp	%r10,0x0
	jrne	__LX170		; 	xjrne	__L170
	ext	__LC3+0x0@h	; 	xld.w	%r10,__LC3
	ext	__LC3+0x0@m
	ld.w	%r10,__LC3+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	0x4		; 	xld.w	%r10,0x0000010a		; 266
	ld.w	%r10,0xa
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX170:				; __L170:
	ld.w	%r12,%r0
	ld.w	%r13,%r1
	ld.w	%r14,%r10
	ext	BulletMLBinExpr_new@rm	; 	xcall	BulletMLBinExpr_new
	call	BulletMLBinExpr_new@rl
	ld.w	%r1,%r10
	jp	__LX165		; 	xjp	__L165
__LX164:				; __L164:
	ld.w	%r10,[%sp+0x2]	; 	xld.w	%r10,[%sp+8]
	ld.w	[%r2],%r10	; 	xld.w	[%r2],%r10
	ld.w	%r10,%r1
	add	%sp,0x3		; 	xadd	%sp,%sp,12
	popn	%r2
	ret
	.align	1
BulletML_factor:
;	.frame	%sp,28,$31		# vars= 4, regs= 4/0, args= 8, extra= 0
;	.mask	0x80070000,-4
;	.fmask	0x00000000,0
	pushn	%r2
	sub	%sp,0x3		; 	xsub	%sp,%sp,12
	ld.w	%r2,%r12
	ld.w	%r10,[%r2]	; 	xld.w	%r10,[%r2]
	ld.w	[%sp+0x2],%r10	; 	xld.w	[%sp+8],%r10
	ld.w	%r12,%sp	; 	xadd	%r12,%sp,8
	add	%r12,0x8
	ext	BulletML_skipWhiteSpace@rm	; 	xcall	BulletML_skipWhiteSpace
	call	BulletML_skipWhiteSpace@rl
	ld.w	%r1,%r10
	ld.w	%r12,%r1
	ext	isdigit@rm	; 	xcall	isdigit
	call	isdigit@rl
	cmp	%r10,0x0
	jrne	__LX175		; 	xjrne	__L175
	ext	0x0		; 	xcmp	%r1,46
	cmp	%r1,0x2e
	jrne	__LX174		; 	xjrne	__L174
__LX175:				; __L175:
	ld.w	%r12,%sp	; 	xadd	%r12,%sp,8
	add	%r12,0x8
	ext	BulletMLNumber_new@rm	; 	xcall	BulletMLNumber_new
	call	BulletMLNumber_new@rl
	ld.w	%r0,%r10
	jp	__LX177		; 	xjp	__L177
__LX174:				; __L174:
	ext	0x0		; 	xcmp	%r1,36
	cmp	%r1,0x24
	jrne	__LX178		; 	xjrne	__L178
	ld.w	%r12,%sp	; 	xadd	%r12,%sp,8
	add	%r12,0x8
	ext	BulletMLVar_new@rm	; 	xcall	BulletMLVar_new
	call	BulletMLVar_new@rl
	ld.w	%r0,%r10
	jp	__LX177		; 	xjp	__L177
__LX178:				; __L178:
	ext	0x0		; 	xcmp	%r1,45
	cmp	%r1,0x2d
	jrne	__LX181		; 	xjrne	__L181
	ld.w	%r10,[%sp+0x2]	; 	xld.w	%r10,[%sp+8]
	add	%r10,0x1	; 	xadd	%r10,%r10,1
	ld.w	[%sp+0x2],%r10	; 	xld.w	[%sp+8],%r10
	ld.w	%r12,%sp	; 	xadd	%r12,%sp,8
	add	%r12,0x8
	call	BulletML_factor	; 	xcall	BulletML_factor
	ld.w	%r0,%r10
	cmp	%r0,0x0
	jrne	__LX182		; 	xjrne	__L182
	ext	__LC3+0x0@h	; 	xld.w	%r10,__LC3
	ext	__LC3+0x0@m
	ld.w	%r10,__LC3+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	0x4		; 	xld.w	%r10,0x00000127		; 295
	ld.w	%r10,0x27
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX182:				; __L182:
	ld.w	%r12,%r1
	ld.w	%r13,%r0
	ext	BulletMLUnExpr_new@rm	; 	xcall	BulletMLUnExpr_new
	call	BulletMLUnExpr_new@rl
	ld.w	%r0,%r10
	jp	__LX177		; 	xjp	__L177
__LX181:				; __L181:
	ext	0x0		; 	xcmp	%r1,40
	cmp	%r1,0x28
	jrne	__LX185		; 	xjrne	__L185
	ld.w	%r10,[%sp+0x2]	; 	xld.w	%r10,[%sp+8]
	add	%r10,0x1	; 	xadd	%r10,%r10,1
	ld.w	[%sp+0x2],%r10	; 	xld.w	[%sp+8],%r10
	ld.w	%r12,%sp	; 	xadd	%r12,%sp,8
	add	%r12,0x8
	ext	BulletML_expr@rm	; 	xcall	BulletML_expr
	call	BulletML_expr@rl
	ld.w	%r0,%r10
	ld.w	%r12,%sp	; 	xadd	%r12,%sp,8
	add	%r12,0x8
	ext	BulletML_skipWhiteSpace@rm	; 	xcall	BulletML_skipWhiteSpace
	call	BulletML_skipWhiteSpace@rl
	ext	0x0		; 	xcmp	%r10,41
	cmp	%r10,0x29
	jrne	__LX186		; 	xjrne	__L186
	ld.w	%r10,[%sp+0x2]	; 	xld.w	%r10,[%sp+8]
	add	%r10,0x1	; 	xadd	%r10,%r10,1
	ld.w	[%sp+0x2],%r10	; 	xld.w	[%sp+8],%r10
	jp	__LX177		; 	xjp	__L177
__LX186:				; __L186:
	ext	__LC3+0x0@h	; 	xld.w	%r10,__LC3
	ext	__LC3+0x0@m
	ld.w	%r10,__LC3+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	0x4		; 	xld.w	%r10,0x00000131		; 305
	ld.w	%r10,0x31
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX185:				; __L185:
	ext	__LC3+0x0@h	; 	xld.w	%r10,__LC3
	ext	__LC3+0x0@m
	ld.w	%r10,__LC3+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	0x4		; 	xld.w	%r10,0x00000134		; 308
	ld.w	%r10,0x34
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX177:				; __L177:
	ld.w	%r10,[%sp+0x2]	; 	xld.w	%r10,[%sp+8]
	ld.w	[%r2],%r10	; 	xld.w	[%r2],%r10
	ld.w	%r10,%r0
	add	%sp,0x3		; 	xadd	%sp,%sp,12
	popn	%r2
	ret
	.code
	.align	2
BulletMLNode_nameTbl:
	.word	__LC4
	.word	__LC5
	.word	__LC6
	.word	__LC7
	.word	__LC8
	.word	__LC9
	.word	__LC10
	.word	__LC11
	.word	__LC12
	.word	__LC13
	.word	__LC14
	.word	__LC15
	.word	__LC16
	.word	__LC17
	.word	__LC18
	.word	__LC19
	.word	__LC20
	.word	__LC21
	.word	__LC22
	.word	__LC23
	.align	2
__LC23:
	.ascii	"param\000"
	.align	2
__LC22:
	.ascii	"fireRef\000"
	.align	2
__LC21:
	.ascii	"actionRef\000"
	.align	2
__LC20:
	.ascii	"bulletRef\000"
	.align	2
__LC19:
	.ascii	"times\000"
	.align	2
__LC18:
	.ascii	"term\000"
	.align	2
__LC17:
	.ascii	"vertical\000"
	.align	2
__LC16:
	.ascii	"horizontal\000"
	.align	2
__LC15:
	.ascii	"speed\000"
	.align	2
__LC14:
	.ascii	"direction\000"
	.align	2
__LC13:
	.ascii	"repeat\000"
	.align	2
__LC12:
	.ascii	"vanish\000"
	.align	2
__LC11:
	.ascii	"wait\000"
	.align	2
__LC10:
	.ascii	"accel\000"
	.align	2
__LC9:
	.ascii	"changeSpeed\000"
	.align	2
__LC8:
	.ascii	"changeDirection\000"
	.align	2
__LC7:
	.ascii	"fire\000"
	.align	2
__LC6:
	.ascii	"action\000"
	.align	2
__LC5:
	.ascii	"bullet\000"
	.align	2
BulletMLNode_typeTbl:
	.word	__LC24
	.word	__LC17
	.word	__LC16
	.word	__LC25
	.word	__LC26
	.word	__LC27
	.word	__LC28
	.align	2
__LC28:
	.ascii	"sequence\000"
	.align	2
__LC27:
	.ascii	"relative\000"
	.align	2
__LC26:
	.ascii	"absolute\000"
	.align	2
__LC25:
	.ascii	"aim\000"
	.align	2
__LC24:
	.ascii	"none\000"
	.code
	.align	1
BulletMLNode_getParams:
;	.frame	%sp,36,$31		# vars= 8, regs= 5/0, args= 8, extra= 0
;	.mask	0x800f0000,-4
;	.fmask	0x00000000,0
	pushn	%r3
	sub	%sp,0x4		; 	xsub	%sp,%sp,16
	ld.w	[%sp+0x2],%r13	; 	xld.w	[%sp+8],%r13
	ld.w	%r3,%r14
	ld.w	[%sp+0x3],%r15	; 	xld.w	[%sp+12],%r15
	ld.w	%r1,0x0
	cmp	%r13,0x0
	jreq	__LX191		; 	xjreq	__L191
	cmp	%r3,0x0
	jreq	__LX191		; 	xjreq	__L191
	cmp	%r13,%r3
	jrne	__LX190		; 	xjrne	__L190
__LX191:				; __L191:
	ext	__LC3+0x0@h	; 	xld.w	%r10,__LC3
	ext	__LC3+0x0@m
	ld.w	%r10,__LC3+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	0x5		; 	xld.w	%r10,0x00000169		; 361
	ld.w	%r10,0x29
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX190:				; __L190:
	ext	BulletMLNode_firstChild@rm	; 	xcall	BulletMLNode_firstChild
	call	BulletMLNode_firstChild@rl
	ld.w	%r0,%r10
	cmp	%r0,0x0
	jreq	__LX193		; 	xjreq	__L193
	ld.w	%r2,[%sp+0x2]	; 	xld.w	%r2,[%sp+8]
__LX195:				; __L195:
	ld.w	%r12,%r0
	ext	BulletMLNode_getName@rm	; 	xcall	BulletMLNode_getName
	call	BulletMLNode_getName@rl
	cmp	%r10,0x13	; 	xcmp	%r10,19
	jrne	__LX199		; 	xjrne	__L199
	cmp	%r1,0x8		; 	xcmp	%r1,8
	jrle	__LX198		; 	xjrle	__L198
	ext	__LC3+0x0@h	; 	xld.w	%r11,__LC3
	ext	__LC3+0x0@m
	ld.w	%r11,__LC3+0x0@l
	ld.w	[%sp+0x0],%r11	; 	xld.w	[%sp],%r11
	ext	0x5		; 	xld.w	%r10,0x00000171		; 369
	ld.w	%r10,0x31
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX198:				; __L198:
	ext	0x10		; 	xld.w	%r12,[%r0+16]
	ld.w	%r12,[%r0]
	ld.w	%r10,[%r12]	; 	xld.w	%r10,[%r12]
	ext	0x4		; 	xld.w	%r10,[%r10+4]
	ld.w	%r10,[%r10]
	ld.w	%r13,%r3
	ld.w	%r14,[%sp+0x3]	; 	xld.w	%r14,[%sp+12]
	ld.w	%r15,[%sp+0x9]	; 	xld.w	%r15,[%sp+36]
	call	%r10
	ld.w	[%r2],%r10	; 	xld.w	[%r2],%r10
	add	%r2,0x4		; 	xadd	%r2,%r2,4
	add	%r1,0x1		; 	xadd	%r1,%r1,1
	jp	__LX194		; 	xjp	__L194
__LX199:				; __L199:
	ext	__LC3+0x0@h	; 	xld.w	%r11,__LC3
	ext	__LC3+0x0@m
	ld.w	%r11,__LC3+0x0@l
	ld.w	[%sp+0x0],%r11	; 	xld.w	[%sp],%r11
	ext	0x5		; 	xld.w	%r10,0x00000176		; 374
	ld.w	%r10,0x36
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX194:				; __L194:
	ld.w	%r12,%r0
	ext	BulletMLNode_nextSibling@rm	; 	xcall	BulletMLNode_nextSibling
	call	BulletMLNode_nextSibling@rl
	ld.w	%r0,%r10
	cmp	%r0,0x0
	jrne	__LX195		; 	xjrne	__L195
__LX193:				; __L193:
	cmp	%r1,0x8		; 	xcmp	%r1,8
	jrgt	__LX206		; 	xjrgt	__L206
	ld.w	%r10,%r1
	sll	%r10,0x2	; 	xsll	%r10,2
	ld.w	%r11,[%sp+0x2]	; 	xld.w	%r11,[%sp+8]
	add	%r10,%r11
__LX204:				; __L204:
	ld.w	%r11,0x0
	ld.w	[%r10],%r11	; 	xld.w	[%r10],%r11
	add	%r10,0x4	; 	xadd	%r10,%r10,4
	add	%r1,0x1		; 	xadd	%r1,%r1,1
	cmp	%r1,0x8		; 	xcmp	%r1,8
	jrle	__LX204		; 	xjrle	__L204
__LX206:				; __L206:
	add	%sp,0x4		; 	xadd	%sp,%sp,16
	popn	%r3
	ret
	.align	1
	.global	BulletMLNode_new
BulletMLNode_new:
;	.frame	%sp,20,$31		# vars= 0, regs= 3/0, args= 8, extra= 0
;	.mask	0x80030000,-4
;	.fmask	0x00000000,0
	pushn	%r1
	sub	%sp,0x2		; 	xsub	%sp,%sp,8
	ld.w	%r1,%r12
	ld.w	%r12,0x1	; 	xld.w	%r12,0x00000001		; 1
	ld.w	%r13,0x1c	; 	xld.w	%r13,0x0000001c		; 28
	ext	calloc@rm	; 	xcall	calloc
	call	calloc@rl
	ld.w	%r0,%r10
	cmp	%r0,0x0
	jrne	__LX208		; 	xjrne	__L208
	ext	__LC3+0x0@h	; 	xld.w	%r10,__LC3
	ext	__LC3+0x0@m
	ld.w	%r10,__LC3+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	0x6		; 	xld.w	%r10,0x00000185		; 389
	ld.w	%r10,0x5
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX208:				; __L208:
	ld.w	%r12,%r0
	ld.w	%r13,%r1
	call	_BulletMLNode_construct	; 	xcall	_BulletMLNode_construct
	ld.w	%r10,%r0
	add	%sp,0x2		; 	xadd	%sp,%sp,8
	popn	%r1
	ret
	.align	1
	.global	BulletMLNode_delete
BulletMLNode_delete:
;	.frame	%sp,8,$31		# vars= 0, regs= 2/0, args= 0, extra= 0
;	.mask	0x80010000,-4
;	.fmask	0x00000000,0
	pushn	%r0
	ld.w	%r0,%r12
	cmp	%r0,0x0
	jreq	__LX210		; 	xjreq	__L210
	call	_BulletMLNode_destruct	; 	xcall	_BulletMLNode_destruct
	ld.w	%r12,%r0
	ext	free@rm		; 	xcall	free
	call	free@rl
__LX210:				; __L210:
	popn	%r0
	ret
	.align	1
	.global	_BulletMLNode_construct
_BulletMLNode_construct:
;	.frame	%sp,24,$31		# vars= 0, regs= 4/0, args= 8, extra= 0
;	.mask	0x80070000,-4
;	.fmask	0x00000000,0
	pushn	%r2
	sub	%sp,0x2		; 	xsub	%sp,%sp,8
	ld.w	%r0,%r12
	ld.w	%r1,%r13
	ld.w	%r11,0x0
	ld.w	[%r0],%r11	; 	xld.w	[%r0],%r11
	ext	BulletMLNode_nameTbl+0x0@h	; 	xld.w	%r2,BulletMLNode_nameTbl
	ext	BulletMLNode_nameTbl+0x0@m
	ld.w	%r2,BulletMLNode_nameTbl+0x0@l
__LX215:				; __L215:
	ld.w	%r10,[%r0]	; 	xld.w	%r10,[%r0]
	sll	%r10,0x2	; 	xsll	%r10,2
	add	%r10,%r2
	ld.w	%r12,[%r10]	; 	xld.w	%r12,[%r10]
	ld.w	%r13,%r1
	ext	strcmp@rm	; 	xcall	strcmp
	call	strcmp@rl
	cmp	%r10,0x0
	jreq	__LX213		; 	xjreq	__L213
	ld.w	%r10,[%r0]	; 	xld.w	%r10,[%r0]
	add	%r10,0x1	; 	xadd	%r10,%r10,1
	ld.w	[%r0],%r10	; 	xld.w	[%r0],%r10
	cmp	%r10,0x13	; 	xcmp	%r10,19
	jrle	__LX215		; 	xjrle	__L215
__LX213:				; __L213:
	ld.w	%r10,[%r0]	; 	xld.w	%r10,[%r0]
	cmp	%r10,0x14	; 	xcmp	%r10,20
	jrne	__LX218		; 	xjrne	__L218
	ext	__LC3+0x0@h	; 	xld.w	%r10,__LC3
	ext	__LC3+0x0@m
	ld.w	%r10,__LC3+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	0x6		; 	xld.w	%r10,0x000001a2		; 418
	ld.w	%r10,0x22
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX218:				; __L218:
	cmp	%r10,0x1	; 	xcmp	%r10,1
	jrlt	__LX219		; 	xjrlt	__L219
	cmp	%r10,0x3	; 	xcmp	%r10,3
	jrle	__LX225		; 	xjrle	__L225
	cmp	%r10,0x12	; 	xcmp	%r10,18
	jrgt	__LX219		; 	xjrgt	__L219
	cmp	%r10,0x10	; 	xcmp	%r10,16
	jrlt	__LX219		; 	xjrlt	__L219
__LX225:				; __L225:
	ld.w	%r12,0x0
	ext	StdString_new@rm	; 	xcall	StdString_new
	call	StdString_new@rl
	ext	0x8		; 	xld.w	[%r0+8],%r10
	ld.w	[%r0],%r10
__LX219:				; __L219:
	add	%sp,0x2		; 	xadd	%sp,%sp,8
	popn	%r2
	ret
	.align	1
	.global	_BulletMLNode_destruct
_BulletMLNode_destruct:
;	.frame	%sp,12,$31		# vars= 0, regs= 3/0, args= 0, extra= 0
;	.mask	0x80030000,-4
;	.fmask	0x00000000,0
	pushn	%r1
	ld.w	%r1,%r12
	ext	0x14		; 	xld.w	%r12,[%r1+20]
	ld.w	%r12,[%r1]
	cmp	%r12,0x0
	jreq	__LX230		; 	xjreq	__L230
__LX231:				; __L231:
	ext	0x18		; 	xld.w	%r0,[%r12+24]
	ld.w	%r0,[%r12]
	call	BulletMLNode_delete	; 	xcall	BulletMLNode_delete
	ld.w	%r12,%r0
	cmp	%r12,0x0
	jrne	__LX231		; 	xjrne	__L231
__LX230:				; __L230:
	ext	0x8		; 	xld.w	%r12,[%r1+8]
	ld.w	%r12,[%r1]
	ext	StdString_delete@rm	; 	xcall	StdString_delete
	call	StdString_delete@rl
	ext	0x10		; 	xld.w	%r12,[%r1+16]
	ld.w	%r12,[%r1]
	ext	BulletMLValue_delete@rm	; 	xcall	BulletMLValue_delete
	call	BulletMLValue_delete@rl
	popn	%r1
	ret
	.align	1
	.global	BulletMLNode_getName
BulletMLNode_getName:
;	.frame	%sp,4,$31		# vars= 0, regs= 1/0, args= 0, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	ld.w	%r10,[%r12]	; 	xld.w	%r10,[%r12]
	ret
	.align	1
	.global	BulletMLNode_setType
BulletMLNode_setType:
;	.frame	%sp,24,$31		# vars= 0, regs= 4/0, args= 8, extra= 0
;	.mask	0x80070000,-4
;	.fmask	0x00000000,0
	pushn	%r2
	sub	%sp,0x2		; 	xsub	%sp,%sp,8
	ld.w	%r0,%r12
	ld.w	%r1,%r13
	ld.w	%r11,0x0
	ext	0x4		; 	xld.w	[%r0+4],%r11
	ld.w	[%r0],%r11
	ext	BulletMLNode_typeTbl+0x0@h	; 	xld.w	%r2,BulletMLNode_typeTbl
	ext	BulletMLNode_typeTbl+0x0@m
	ld.w	%r2,BulletMLNode_typeTbl+0x0@l
__LX238:				; __L238:
	ext	0x4		; 	xld.w	%r10,[%r0+4]
	ld.w	%r10,[%r0]
	sll	%r10,0x2	; 	xsll	%r10,2
	add	%r10,%r2
	ld.w	%r12,[%r10]	; 	xld.w	%r12,[%r10]
	ld.w	%r13,%r1
	ext	strcmp@rm	; 	xcall	strcmp
	call	strcmp@rl
	cmp	%r10,0x0
	jreq	__LX236		; 	xjreq	__L236
	ext	0x4		; 	xld.w	%r10,[%r0+4]
	ld.w	%r10,[%r0]
	add	%r10,0x1	; 	xadd	%r10,%r10,1
	ext	0x4		; 	xld.w	[%r0+4],%r10
	ld.w	[%r0],%r10
	cmp	%r10,0x6	; 	xcmp	%r10,6
	jrle	__LX238		; 	xjrle	__L238
__LX236:				; __L236:
	ext	0x4		; 	xld.w	%r10,[%r0+4]
	ld.w	%r10,[%r0]
	cmp	%r10,0x7	; 	xcmp	%r10,7
	jrne	__LX241		; 	xjrne	__L241
	ext	__LC3+0x0@h	; 	xld.w	%r10,__LC3
	ext	__LC3+0x0@m
	ld.w	%r10,__LC3+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	0x7		; 	xld.w	%r10,0x000001d8		; 472
	ld.w	%r10,0x18
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX241:				; __L241:
	add	%sp,0x2		; 	xadd	%sp,%sp,8
	popn	%r2
	ret
	.align	1
	.global	BulletMLNode_getType
BulletMLNode_getType:
;	.frame	%sp,4,$31		# vars= 0, regs= 1/0, args= 0, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	ext	0x4		; 	xld.w	%r10,[%r12+4]
	ld.w	%r10,[%r12]
	ret
	.align	1
	.global	BulletMLNode_setLabel
BulletMLNode_setLabel:
;	.frame	%sp,12,$31		# vars= 0, regs= 1/0, args= 8, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	sub	%sp,0x2		; 	xsub	%sp,%sp,8
	ext	0x8		; 	xld.w	%r12,[%r12+8]
	ld.w	%r12,[%r12]
	cmp	%r12,0x0
	jrne	__LX244		; 	xjrne	__L244
	ext	__LC3+0x0@h	; 	xld.w	%r10,__LC3
	ext	__LC3+0x0@m
	ld.w	%r10,__LC3+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	0x7		; 	xld.w	%r10,0x000001e6		; 486
	ld.w	%r10,0x26
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX244:				; __L244:
	ext	StdString_assign@rm	; 	xcall	StdString_assign
	call	StdString_assign@rl
	add	%sp,0x2		; 	xadd	%sp,%sp,8
	ret
	.align	1
	.global	BulletMLNode_getLabel
BulletMLNode_getLabel:
;	.frame	%sp,12,$31		# vars= 0, regs= 1/0, args= 8, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	sub	%sp,0x2		; 	xsub	%sp,%sp,8
	ext	0x8		; 	xld.w	%r12,[%r12+8]
	ld.w	%r12,[%r12]
	cmp	%r12,0x0
	jrne	__LX246		; 	xjrne	__L246
	ext	__LC3+0x0@h	; 	xld.w	%r10,__LC3
	ext	__LC3+0x0@m
	ld.w	%r10,__LC3+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	0x7		; 	xld.w	%r10,0x000001ef		; 495
	ld.w	%r10,0x2f
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX246:				; __L246:
	ext	StdString_c_str@rm	; 	xcall	StdString_c_str
	call	StdString_c_str@rl
	add	%sp,0x2		; 	xadd	%sp,%sp,8
	ret
	.align	1
	.global	BulletMLNode_setRef
BulletMLNode_setRef:
;	.frame	%sp,4,$31		# vars= 0, regs= 1/0, args= 0, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	ext	0xc		; 	xld.w	[%r12+12],%r13
	ld.w	[%r12],%r13
	ret
	.align	1
	.global	BulletMLNode_getRef
BulletMLNode_getRef:
;	.frame	%sp,12,$31		# vars= 0, regs= 1/0, args= 8, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	sub	%sp,0x2		; 	xsub	%sp,%sp,8
	ext	0xc		; 	xld.w	%r10,[%r12+12]
	ld.w	%r10,[%r12]
	cmp	%r10,0x0
	jrne	__LX249		; 	xjrne	__L249
	ext	__LC3+0x0@h	; 	xld.w	%r10,__LC3
	ext	__LC3+0x0@m
	ld.w	%r10,__LC3+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	0x7		; 	xld.w	%r10,0x000001fe		; 510
	ld.w	%r10,0x3e
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX249:				; __L249:
	add	%sp,0x2		; 	xadd	%sp,%sp,8
	ret
	.align	1
	.global	BulletMLNode_setValue
BulletMLNode_setValue:
;	.frame	%sp,20,$31		# vars= 4, regs= 2/0, args= 8, extra= 0
;	.mask	0x80010000,-4
;	.fmask	0x00000000,0
	pushn	%r0
	sub	%sp,0x3		; 	xsub	%sp,%sp,12
	ld.w	%r0,%r12
	ld.w	[%sp+0x2],%r13	; 	xld.w	[%sp+8],%r13
	ext	0x10		; 	xld.w	%r10,[%r0+16]
	ld.w	%r10,[%r0]
	cmp	%r10,0x0
	jreq	__LX251		; 	xjreq	__L251
	ext	__LC3+0x0@h	; 	xld.w	%r10,__LC3
	ext	__LC3+0x0@m
	ld.w	%r10,__LC3+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	0x8		; 	xld.w	%r10,0x00000207		; 519
	ld.w	%r10,0x7
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX251:				; __L251:
	ld.w	%r12,%sp	; 	xadd	%r12,%sp,8
	add	%r12,0x8
	ext	BulletML_expr@rm	; 	xcall	BulletML_expr
	call	BulletML_expr@rl
	ext	0x10		; 	xld.w	[%r0+16],%r10
	ld.w	[%r0],%r10
	cmp	%r10,0x0
	jrne	__LX252		; 	xjrne	__L252
	ext	__LC3+0x0@h	; 	xld.w	%r10,__LC3
	ext	__LC3+0x0@m
	ld.w	%r10,__LC3+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	0x8		; 	xld.w	%r10,0x0000020b		; 523
	ld.w	%r10,0xb
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX252:				; __L252:
	ld.w	%r12,%sp	; 	xadd	%r12,%sp,8
	add	%r12,0x8
	ext	BulletML_skipWhiteSpace@rm	; 	xcall	BulletML_skipWhiteSpace
	call	BulletML_skipWhiteSpace@rl
	cmp	%r10,0x0
	jreq	__LX253		; 	xjreq	__L253
	ext	__LC3+0x0@h	; 	xld.w	%r10,__LC3
	ext	__LC3+0x0@m
	ld.w	%r10,__LC3+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	0x8		; 	xld.w	%r10,0x0000020e		; 526
	ld.w	%r10,0xe
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX253:				; __L253:
	add	%sp,0x3		; 	xadd	%sp,%sp,12
	popn	%r0
	ret
	.align	1
	.global	BulletMLNode_getValue
BulletMLNode_getValue:
;	.frame	%sp,12,$31		# vars= 0, regs= 1/0, args= 8, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	sub	%sp,0x2		; 	xsub	%sp,%sp,8
	ext	0x10		; 	xld.w	%r10,[%r12+16]
	ld.w	%r10,[%r12]
	cmp	%r10,0x0
	jrne	__LX255		; 	xjrne	__L255
	ext	__LC3+0x0@h	; 	xld.w	%r10,__LC3
	ext	__LC3+0x0@m
	ld.w	%r10,__LC3+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	0x8		; 	xld.w	%r10,0x00000216		; 534
	ld.w	%r10,0x16
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX255:				; __L255:
	add	%sp,0x2		; 	xadd	%sp,%sp,8
	ret
	.align	1
	.global	BulletMLNode_firstChild
BulletMLNode_firstChild:
;	.frame	%sp,4,$31		# vars= 0, regs= 1/0, args= 0, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	ext	0x14		; 	xld.w	%r10,[%r12+20]
	ld.w	%r10,[%r12]
	ret
	.align	1
	.global	BulletMLNode_nextSibling
BulletMLNode_nextSibling:
;	.frame	%sp,4,$31		# vars= 0, regs= 1/0, args= 0, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	ext	0x18		; 	xld.w	%r10,[%r12+24]
	ld.w	%r10,[%r12]
	ret
	.align	1
	.global	BulletMLNode_addChild
BulletMLNode_addChild:
;	.frame	%sp,4,$31		# vars= 0, regs= 1/0, args= 0, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	add	%r12,0x14	; 	xadd	%r12,%r12,20
	jp	__LX263		; 	xjp	__L263
__LX261:				; __L261:
	ld.w	%r10,[%r12]	; 	xld.w	%r10,[%r12]
	ext	0x18		; 	xadd	%r12,%r10,24
	add	%r12,%r10
__LX263:				; __L263:
	ld.w	%r10,[%r12]	; 	xld.w	%r10,[%r12]
	cmp	%r10,0x0
	jrne	__LX261		; 	xjrne	__L261
	ld.w	[%r12],%r13	; 	xld.w	[%r12],%r13
	ret
	.align	1
	.global	BulletMLNode_getChild
BulletMLNode_getChild:
;	.frame	%sp,4,$31		# vars= 0, regs= 1/0, args= 0, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	ext	0x14		; 	xld.w	%r11,[%r12+20]
	ld.w	%r11,[%r12]
	cmp	%r11,0x0
	jreq	__LX266		; 	xjreq	__L266
__LX268:				; __L268:
	ld.w	%r10,[%r11]	; 	xld.w	%r10,[%r11]
	cmp	%r10,%r13
	jrne	__LX267		; 	xjrne	__L267
	ld.w	%r10,%r11
	jp	__LX271		; 	xjp	__L271
__LX267:				; __L267:
	ext	0x18		; 	xld.w	%r11,[%r11+24]
	ld.w	%r11,[%r11]
	cmp	%r11,0x0
	jrne	__LX268		; 	xjrne	__L268
__LX266:				; __L266:
	ld.w	%r10,0x0
__LX271:				; __L271:
	ret
	.code
	.align	2
__LC29:
	.ascii	"\t\000"
	.align	2
__LC30:
	.ascii	"<%s\000"
	.align	2
__LC31:
	.ascii	" type=\"%s\"\000"
	.align	2
__LC32:
	.ascii	" label=\"%s\"\000"
	.align	2
__LC33:
	.ascii	">\000"
	.align	2
__LC34:
	.ascii	"\n\000"
	.align	2
__LC35:
	.ascii	"</%s>\n\000"
	.align	2
__LC36:
	.ascii	"/>\n\000"
	.code
	.align	1
	.global	BulletMLNode_dump
BulletMLNode_dump:
;	.frame	%sp,28,$31		# vars= 0, regs= 5/0, args= 8, extra= 0
;	.mask	0x800f0000,-4
;	.fmask	0x00000000,0
	pushn	%r3
	sub	%sp,0x2		; 	xsub	%sp,%sp,8
	ld.w	%r1,%r12
	ld.w	%r2,%r13
	ld.w	%r0,0x0
	cmp	%r0,%r2
	jrge	__LX274		; 	xjrge	__L274
	ext	__LC29+0x0@h	; 	xld.w	%r3,__LC29
	ext	__LC29+0x0@m
	ld.w	%r3,__LC29+0x0@l
__LX276:				; __L276:
	ld.w	[%sp+0x0],%r3	; 	xld.w	[%sp],%r3
	ext	printf@rm	; 	xcall	printf
	call	printf@rl
	add	%r0,0x1		; 	xadd	%r0,%r0,1
	cmp	%r0,%r2
	jrlt	__LX276		; 	xjrlt	__L276
__LX274:				; __L274:
	ext	__LC30+0x0@h	; 	xld.w	%r10,__LC30
	ext	__LC30+0x0@m
	ld.w	%r10,__LC30+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ld.w	%r10,[%r1]	; 	xld.w	%r10,[%r1]
	sll	%r10,0x2	; 	xsll	%r10,2
	ext	BulletMLNode_nameTbl+0x0@h	; 	xld.w	%r10,[%r10+BulletMLNode_nameTbl]
	ext	BulletMLNode_nameTbl+0x0@m
	ld.w	%r9,BulletMLNode_nameTbl+0x0@l
	add	%r9,%r10
	ld.w	%r10,[%r9]
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	printf@rm	; 	xcall	printf
	call	printf@rl
	ext	0x4		; 	xld.w	%r10,[%r1+4]
	ld.w	%r10,[%r1]
	cmp	%r10,0x0
	jreq	__LX278		; 	xjreq	__L278
	ext	__LC31+0x0@h	; 	xld.w	%r10,__LC31
	ext	__LC31+0x0@m
	ld.w	%r10,__LC31+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	0x4		; 	xld.w	%r10,[%r1+4]
	ld.w	%r10,[%r1]
	sll	%r10,0x2	; 	xsll	%r10,2
	ext	BulletMLNode_typeTbl+0x0@h	; 	xld.w	%r10,[%r10+BulletMLNode_typeTbl]
	ext	BulletMLNode_typeTbl+0x0@m
	ld.w	%r9,BulletMLNode_typeTbl+0x0@l
	add	%r9,%r10
	ld.w	%r10,[%r9]
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	printf@rm	; 	xcall	printf
	call	printf@rl
__LX278:				; __L278:
	ext	0x8		; 	xld.w	%r12,[%r1+8]
	ld.w	%r12,[%r1]
	cmp	%r12,0x0
	jreq	__LX279		; 	xjreq	__L279
	ext	StdString_c_str@rm	; 	xcall	StdString_c_str
	call	StdString_c_str@rl
	ld.b	%r10,[%r10]	; 	xld.b	%r10,[%r10]
	cmp	%r10,0x0
	jreq	__LX279		; 	xjreq	__L279
	ext	0x8		; 	xld.w	%r12,[%r1+8]
	ld.w	%r12,[%r1]
	ext	StdString_c_str@rm	; 	xcall	StdString_c_str
	call	StdString_c_str@rl
	ext	__LC32+0x0@h	; 	xld.w	%r11,__LC32
	ext	__LC32+0x0@m
	ld.w	%r11,__LC32+0x0@l
	ld.w	[%sp+0x0],%r11	; 	xld.w	[%sp],%r11
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	printf@rm	; 	xcall	printf
	call	printf@rl
__LX279:				; __L279:
	ext	0x10		; 	xld.w	%r10,[%r1+16]
	ld.w	%r10,[%r1]
	cmp	%r10,0x0
	jrne	__LX281		; 	xjrne	__L281
	ext	0x14		; 	xld.w	%r10,[%r1+20]
	ld.w	%r10,[%r1]
	cmp	%r10,0x0
	jreq	__LX280		; 	xjreq	__L280
__LX281:				; __L281:
	ext	__LC33+0x0@h	; 	xld.w	%r10,__LC33
	ext	__LC33+0x0@m
	ld.w	%r10,__LC33+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	printf@rm	; 	xcall	printf
	call	printf@rl
	ext	0x10		; 	xld.w	%r12,[%r1+16]
	ld.w	%r12,[%r1]
	cmp	%r12,0x0
	jreq	__LX282		; 	xjreq	__L282
	ld.w	%r10,[%r12]	; 	xld.w	%r10,[%r12]
	ext	0x8		; 	xld.w	%r10,[%r10+8]
	ld.w	%r10,[%r10]
	call	%r10
__LX282:				; __L282:
	ext	0x14		; 	xld.w	%r10,[%r1+20]
	ld.w	%r10,[%r1]
	cmp	%r10,0x0
	jreq	__LX283		; 	xjreq	__L283
	ext	__LC34+0x0@h	; 	xld.w	%r10,__LC34
	ext	__LC34+0x0@m
	ld.w	%r10,__LC34+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	printf@rm	; 	xcall	printf
	call	printf@rl
	ext	0x14		; 	xld.w	%r0,[%r1+20]
	ld.w	%r0,[%r1]
	cmp	%r0,0x0
	jreq	__LX285		; 	xjreq	__L285
__LX287:				; __L287:
	ld.w	%r12,%r0
	ext	0x1		; 	xadd	%r13,%r2,1
	add	%r13,%r2
	call	BulletMLNode_dump	; 	xcall	BulletMLNode_dump
	ext	0x18		; 	xld.w	%r0,[%r0+24]
	ld.w	%r0,[%r0]
	cmp	%r0,0x0
	jrne	__LX287		; 	xjrne	__L287
__LX285:				; __L285:
	ld.w	%r0,0x0
	cmp	%r0,%r2
	jrge	__LX283		; 	xjrge	__L283
	ext	__LC29+0x0@h	; 	xld.w	%r3,__LC29
	ext	__LC29+0x0@m
	ld.w	%r3,__LC29+0x0@l
__LX292:				; __L292:
	ld.w	[%sp+0x0],%r3	; 	xld.w	[%sp],%r3
	ext	printf@rm	; 	xcall	printf
	call	printf@rl
	add	%r0,0x1		; 	xadd	%r0,%r0,1
	cmp	%r0,%r2
	jrlt	__LX292		; 	xjrlt	__L292
__LX283:				; __L283:
	ext	__LC35+0x0@h	; 	xld.w	%r10,__LC35
	ext	__LC35+0x0@m
	ld.w	%r10,__LC35+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ld.w	%r10,[%r1]	; 	xld.w	%r10,[%r1]
	sll	%r10,0x2	; 	xsll	%r10,2
	ext	BulletMLNode_nameTbl+0x0@h	; 	xld.w	%r10,[%r10+BulletMLNode_nameTbl]
	ext	BulletMLNode_nameTbl+0x0@m
	ld.w	%r9,BulletMLNode_nameTbl+0x0@l
	add	%r9,%r10
	ld.w	%r10,[%r9]
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	printf@rm	; 	xcall	printf
	call	printf@rl
	jp	__LX294		; 	xjp	__L294
__LX280:				; __L280:
	ext	__LC36+0x0@h	; 	xld.w	%r10,__LC36
	ext	__LC36+0x0@m
	ld.w	%r10,__LC36+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	printf@rm	; 	xcall	printf
	call	printf@rl
__LX294:				; __L294:
	add	%sp,0x2		; 	xadd	%sp,%sp,8
	popn	%r3
	ret
	.align	1
BulletMLUserFunc_createBullet:
;	.frame	%sp,8,$31		# vars= 0, regs= 1/0, args= 4, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	sub	%sp,0x1		; 	xsub	%sp,%sp,4
	ld.w	%r11,[%sp+0x3]	; 	xld.w	%r11,[%sp+12]
	ld.w	%r10,[%r12]	; 	xld.w	%r10,[%r12]
	cmp	%r10,0x0
	jreq	__LX296		; 	xjreq	__L296
	ld.w	[%sp+0x0],%r11	; 	xld.w	[%sp],%r11
	ld.w	%r12,%r13
	ld.w	%r13,%r14
	ld.w	%r14,%r15
	ld.w	%r15,[%sp+0x2]	; 	xld.w	%r15,[%sp+8]
	call	%r10
__LX296:				; __L296:
	add	%sp,0x1		; 	xadd	%sp,%sp,4
	ret
	.align	1
BulletMLUserFunc_setDirection:
;	.frame	%sp,12,$31		# vars= 0, regs= 3/0, args= 0, extra= 0
;	.mask	0x80030000,-4
;	.fmask	0x00000000,0
	pushn	%r1
	ld.w	%r1,%r13
	ext	0x4		; 	xld.w	%r0,[%r12+4]
	ld.w	%r0,[%r12]
	cmp	%r0,0x0
	jreq	__LX298		; 	xjreq	__L298
	ld.w	%r12,%r14
	ext	BulletML_roundDirection@rm	; 	xcall	BulletML_roundDirection
	call	BulletML_roundDirection@rl
	ld.w	%r12,%r1
	ld.w	%r13,%r10
	call	%r0
__LX298:				; __L298:
	popn	%r1
	ret
	.align	1
BulletMLUserFunc_setSpeed:
;	.frame	%sp,4,$31		# vars= 0, regs= 1/0, args= 0, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	ext	0x8		; 	xld.w	%r10,[%r12+8]
	ld.w	%r10,[%r12]
	cmp	%r10,0x0
	jreq	__LX300		; 	xjreq	__L300
	ld.w	%r12,%r13
	ld.w	%r13,%r14
	call	%r10
__LX300:				; __L300:
	ret
	.align	1
BulletMLUserFunc_setAccelH:
;	.frame	%sp,4,$31		# vars= 0, regs= 1/0, args= 0, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	ext	0xc		; 	xld.w	%r10,[%r12+12]
	ld.w	%r10,[%r12]
	cmp	%r10,0x0
	jreq	__LX302		; 	xjreq	__L302
	ld.w	%r12,%r13
	ld.w	%r13,%r14
	call	%r10
__LX302:				; __L302:
	ret
	.align	1
BulletMLUserFunc_setAccelV:
;	.frame	%sp,4,$31		# vars= 0, regs= 1/0, args= 0, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	ext	0x10		; 	xld.w	%r10,[%r12+16]
	ld.w	%r10,[%r12]
	cmp	%r10,0x0
	jreq	__LX304		; 	xjreq	__L304
	ld.w	%r12,%r13
	ld.w	%r13,%r14
	call	%r10
__LX304:				; __L304:
	ret
	.align	1
BulletMLUserFunc_vanish:
;	.frame	%sp,4,$31		# vars= 0, regs= 1/0, args= 0, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	ext	0x14		; 	xld.w	%r10,[%r12+20]
	ld.w	%r10,[%r12]
	cmp	%r10,0x0
	jreq	__LX306		; 	xjreq	__L306
	ld.w	%r12,%r13
	call	%r10
__LX306:				; __L306:
	ret

	.lcomm	seed.130 4
	.align	1
BulletMLUserFunc_getRand:
;	.frame	%sp,4,$31		# vars= 0, regs= 1/0, args= 0, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	ext	0x18		; 	xld.w	%r10,[%r12+24]
	ld.w	%r10,[%r12]
	cmp	%r10,0x0
	jreq	__LX308		; 	xjreq	__L308
	ld.w	%r12,%r13
	call	%r10
	jp	__LX309		; 	xjp	__L309
__LX308:				; __L308:
	ext	seed.130+0x0@h	; 	xld.w	%r12,seed.130
	ext	seed.130+0x0@m
	ld.w	%r12,seed.130+0x0@l
	ext	frnd@rm		; 	xcall	frnd
	call	frnd@rl
__LX309:				; __L309:
	ret
	.align	1
BulletMLUserFunc_getRank:
;	.frame	%sp,4,$31		# vars= 0, regs= 1/0, args= 0, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	ext	0x1c		; 	xld.w	%r10,[%r12+28]
	ld.w	%r10,[%r12]
	cmp	%r10,0x0
	jreq	__LX311		; 	xjreq	__L311
	ld.w	%r12,%r13
	call	%r10
__LX311:				; __L311:
	ret
	.align	1
BulletMLUserFunc_getAimDirection:
;	.frame	%sp,4,$31		# vars= 0, regs= 1/0, args= 0, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	ext	0x20		; 	xld.w	%r10,[%r12+32]
	ld.w	%r10,[%r12]
	cmp	%r10,0x0
	jreq	__LX314		; 	xjreq	__L314
	ld.w	%r12,%r13
	call	%r10
	ld.w	%r12,%r10
	ext	BulletML_roundDirection@rm	; 	xcall	BulletML_roundDirection
	call	BulletML_roundDirection@rl
__LX314:				; __L314:
	ret
	.align	1
BulletMLUserFunc_getDirection:
;	.frame	%sp,4,$31		# vars= 0, regs= 1/0, args= 0, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	ext	0x24		; 	xld.w	%r10,[%r12+36]
	ld.w	%r10,[%r12]
	cmp	%r10,0x0
	jreq	__LX317		; 	xjreq	__L317
	ld.w	%r12,%r13
	call	%r10
	ld.w	%r12,%r10
	ext	BulletML_roundDirection@rm	; 	xcall	BulletML_roundDirection
	call	BulletML_roundDirection@rl
__LX317:				; __L317:
	ret
	.align	1
BulletMLUserFunc_getSpeed:
;	.frame	%sp,4,$31		# vars= 0, regs= 1/0, args= 0, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	ext	0x28		; 	xld.w	%r10,[%r12+40]
	ld.w	%r10,[%r12]
	cmp	%r10,0x0
	jreq	__LX320		; 	xjreq	__L320
	ld.w	%r12,%r13
	call	%r10
	jp	__LX321		; 	xjp	__L321
__LX320:				; __L320:
	ext	0x10		; 	xld.w	%r10,0x00000400		; 1024
	ld.w	%r10,0x0
__LX321:				; __L321:
	ret
	.align	1
BulletMLUserFunc_getAccelH:
;	.frame	%sp,4,$31		# vars= 0, regs= 1/0, args= 0, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	ext	0x2c		; 	xld.w	%r10,[%r12+44]
	ld.w	%r10,[%r12]
	cmp	%r10,0x0
	jreq	__LX323		; 	xjreq	__L323
	ld.w	%r12,%r13
	call	%r10
__LX323:				; __L323:
	ret
	.align	1
BulletMLUserFunc_getAccelV:
;	.frame	%sp,4,$31		# vars= 0, regs= 1/0, args= 0, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	ext	0x30		; 	xld.w	%r10,[%r12+48]
	ld.w	%r10,[%r12]
	cmp	%r10,0x0
	jreq	__LX326		; 	xjreq	__L326
	ld.w	%r12,%r13
	call	%r10
__LX326:				; __L326:
	ret
	.align	1
BulletMLBullet_addAction:
;	.frame	%sp,4,$31		# vars= 0, regs= 1/0, args= 0, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	ext	0x1		; 	xadd	%r12,%r12,124
	add	%r12,0x3c
	ld.w	%r10,[%r12]	; 	xld.w	%r10,[%r12]
	cmp	%r10,0x0
	jreq	__LX330		; 	xjreq	__L330
	ext	0x0		; 	xld.w	%r11,0x00000038		; 56
	ld.w	%r11,0x38
__LX331:				; __L331:
	ld.w	%r10,[%r12]	; 	xld.w	%r10,[%r12]
	ld.w	%r12,%r10
	add	%r12,%r11
	ld.w	%r10,[%r12]	; 	xld.w	%r10,[%r12]
	cmp	%r10,0x0
	jrne	__LX331		; 	xjrne	__L331
__LX330:				; __L330:
	ld.w	[%r12],%r13	; 	xld.w	[%r12],%r13
	ret
	.align	1
BulletMLBullet_changeDirection:
;	.frame	%sp,16,$31		# vars= 0, regs= 4/0, args= 0, extra= 0
;	.mask	0x80070000,-4
;	.fmask	0x00000000,0
	pushn	%r2
	ld.w	%r2,%r12
	ld.w	%r0,%r13
	ld.w	%r1,%r14
	ld.w	%r12,[%r2]	; 	xld.w	%r12,[%r2]
	ext	0x4		; 	xld.w	%r13,[%r2+4]
	ld.w	%r13,[%r2]
	call	BulletMLUserFunc_getDirection	; 	xcall	BulletMLUserFunc_getDirection
	ext	0x2c		; 	xld.w	[%r2+44],%r10
	ld.w	[%r2],%r10
	ld.w	%r12,%r0
	sub	%r12,%r10
	ext	BulletML_roundDirection@rm	; 	xcall	BulletML_roundDirection
	call	BulletML_roundDirection@rl
	ext	0x30		; 	xld.w	[%r2+48],%r10
	ld.w	[%r2],%r10
	cmp	%r1,0x1		; 	xcmp	%r1,1
	jrge	__LX335		; 	xjrge	__L335
	ld.w	%r1,0x1		; 	xld.w	%r1,0x00000001		; 1
__LX335:				; __L335:
	ext	0x34		; 	xld.w	[%r2+52],%r1
	ld.w	[%r2],%r1
	ld.w	%r11,0x0
	ext	0x38		; 	xld.w	[%r2+56],%r11
	ld.w	[%r2],%r11
	popn	%r2
	ret
	.align	1
BulletMLBullet_changeSpeed:
;	.frame	%sp,16,$31		# vars= 0, regs= 4/0, args= 0, extra= 0
;	.mask	0x80070000,-4
;	.fmask	0x00000000,0
	pushn	%r2
	ld.w	%r2,%r12
	ld.w	%r0,%r13
	ld.w	%r1,%r14
	ld.w	%r12,[%r2]	; 	xld.w	%r12,[%r2]
	ext	0x4		; 	xld.w	%r13,[%r2+4]
	ld.w	%r13,[%r2]
	call	BulletMLUserFunc_getSpeed	; 	xcall	BulletMLUserFunc_getSpeed
	ext	0x40		; 	xld.w	[%r2+64],%r10
	ld.w	[%r2],%r10
	sub	%r0,%r10
	ext	0x44		; 	xld.w	[%r2+68],%r0
	ld.w	[%r2],%r0
	cmp	%r1,0x1		; 	xcmp	%r1,1
	jrge	__LX338		; 	xjrge	__L338
	ld.w	%r1,0x1		; 	xld.w	%r1,0x00000001		; 1
__LX338:				; __L338:
	ext	0x48		; 	xld.w	[%r2+72],%r1
	ld.w	[%r2],%r1
	ld.w	%r11,0x0
	ext	0x4c		; 	xld.w	[%r2+76],%r11
	ld.w	[%r2],%r11
	popn	%r2
	ret
	.align	1
BulletMLBullet_changeAccelH:
;	.frame	%sp,16,$31		# vars= 0, regs= 4/0, args= 0, extra= 0
;	.mask	0x80070000,-4
;	.fmask	0x00000000,0
	pushn	%r2
	ld.w	%r2,%r12
	ld.w	%r0,%r13
	ld.w	%r1,%r14
	ld.w	%r12,[%r2]	; 	xld.w	%r12,[%r2]
	ext	0x4		; 	xld.w	%r13,[%r2+4]
	ld.w	%r13,[%r2]
	call	BulletMLUserFunc_getAccelH	; 	xcall	BulletMLUserFunc_getAccelH
	ext	0x54		; 	xld.w	[%r2+84],%r10
	ld.w	[%r2],%r10
	sub	%r0,%r10
	ext	0x58		; 	xld.w	[%r2+88],%r0
	ld.w	[%r2],%r0
	cmp	%r1,0x1		; 	xcmp	%r1,1
	jrge	__LX341		; 	xjrge	__L341
	ld.w	%r1,0x1		; 	xld.w	%r1,0x00000001		; 1
__LX341:				; __L341:
	ext	0x5c		; 	xld.w	[%r2+92],%r1
	ld.w	[%r2],%r1
	ld.w	%r11,0x0
	ext	0x60		; 	xld.w	[%r2+96],%r11
	ld.w	[%r2],%r11
	popn	%r2
	ret
	.align	1
BulletMLBullet_changeAccelV:
;	.frame	%sp,16,$31		# vars= 0, regs= 4/0, args= 0, extra= 0
;	.mask	0x80070000,-4
;	.fmask	0x00000000,0
	pushn	%r2
	ld.w	%r2,%r12
	ld.w	%r0,%r13
	ld.w	%r1,%r14
	ld.w	%r12,[%r2]	; 	xld.w	%r12,[%r2]
	ext	0x4		; 	xld.w	%r13,[%r2+4]
	ld.w	%r13,[%r2]
	call	BulletMLUserFunc_getAccelV	; 	xcall	BulletMLUserFunc_getAccelV
	ext	0x68		; 	xld.w	[%r2+104],%r10
	ld.w	[%r2],%r10
	sub	%r0,%r10
	ext	0x6c		; 	xld.w	[%r2+108],%r0
	ld.w	[%r2],%r0
	cmp	%r1,0x1		; 	xcmp	%r1,1
	jrge	__LX344		; 	xjrge	__L344
	ld.w	%r1,0x1		; 	xld.w	%r1,0x00000001		; 1
__LX344:				; __L344:
	ext	0x70		; 	xld.w	[%r2+112],%r1
	ld.w	[%r2],%r1
	ld.w	%r11,0x0
	ext	0x74		; 	xld.w	[%r2+116],%r11
	ld.w	[%r2],%r11
	popn	%r2
	ret
	.align	1
BulletMLBullet_calcDirection:
;	.frame	%sp,24,$31		# vars= 0, regs= 4/0, args= 8, extra= 0
;	.mask	0x80070000,-4
;	.fmask	0x00000000,0
	pushn	%r2
	sub	%sp,0x2		; 	xsub	%sp,%sp,8
	ld.w	%r1,%r12
	ld.w	%r2,%r13
	ld.w	%r0,%r14
	cmp	%r2,0x0
	jreq	__LX346		; 	xjreq	__L346
	ld.w	%r12,%r2
	ext	BulletMLNode_getValue@rm	; 	xcall	BulletMLNode_getValue
	call	BulletMLNode_getValue@rl
	ld.w	%r11,[%r10]	; 	xld.w	%r11,[%r10]
	ext	0x4		; 	xld.w	%r11,[%r11+4]
	ld.w	%r11,[%r11]
	ld.w	%r12,%r10
	ld.w	%r13,%r0
	ld.w	%r14,[%r1]	; 	xld.w	%r14,[%r1]
	ext	0x4		; 	xld.w	%r15,[%r1+4]
	ld.w	%r15,[%r1]
	call	%r11
	ld.w	%r0,%r10
	ld.w	%r12,%r2
	ext	BulletMLNode_getType@rm	; 	xcall	BulletMLNode_getType
	call	BulletMLNode_getType@rl
	cmp	%r10,0x6	; 	xcmp	%r10,6
	jrugt	__L368		; 	xjrugt	__L368
	sll	%r10,0x2	; 	xsll	%r10,2
	ext	__L369+0x0@h	; 	xld.w	%r10,[%r10+__L369]
	ext	__L369+0x0@m
	ld.w	%r9,__L369+0x0@l
	add	%r9,%r10
	ld.w	%r10,[%r9]
	jp	%r10
	.code
	.align	2
__L369:
	.word	__L349
	.word	__L368
	.word	__L368
	.word	__L349
	.word	__L370
	.word	__L356
	.word	__L362
	.code
__L349:
	ld.w	%r12,[%r1]	; 	xld.w	%r12,[%r1]
	ext	0x4		; 	xld.w	%r13,[%r1+4]
	ld.w	%r13,[%r1]
	ext	BulletMLUserFunc_getAimDirection@rm	; 	xcall	BulletMLUserFunc_getAimDirection
	call	BulletMLUserFunc_getAimDirection@rl
	add	%r0,%r10
	jp	__L370		; 	xjp	__L370
__L356:
	ld.w	%r12,[%r1]	; 	xld.w	%r12,[%r1]
	ext	0x4		; 	xld.w	%r13,[%r1+4]
	ld.w	%r13,[%r1]
	ext	BulletMLUserFunc_getDirection@rm	; 	xcall	BulletMLUserFunc_getDirection
	call	BulletMLUserFunc_getDirection@rl
	add	%r0,%r10
	jp	__L370		; 	xjp	__L370
__L362:
	ext	0x3c		; 	xld.w	%r10,[%r1+60]
	ld.w	%r10,[%r1]
	add	%r0,%r10
	jp	__L370		; 	xjp	__L370
__L368:
	ext	__LC3+0x0@h	; 	xld.w	%r10,__LC3
	ext	__LC3+0x0@m
	ld.w	%r10,__LC3+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	0xd		; 	xld.w	%r10,0x00000345		; 837
	ld.w	%r10,0x5
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX346:				; __L346:
	ld.w	%r12,[%r1]	; 	xld.w	%r12,[%r1]
	ext	0x4		; 	xld.w	%r13,[%r1+4]
	ld.w	%r13,[%r1]
	ext	BulletMLUserFunc_getAimDirection@rm	; 	xcall	BulletMLUserFunc_getAimDirection
	call	BulletMLUserFunc_getAimDirection@rl
	ld.w	%r0,%r10
__L370:
	ld.w	%r12,%r0
	ext	BulletML_roundDirection@rm	; 	xcall	BulletML_roundDirection
	call	BulletML_roundDirection@rl
	ext	0x3c		; 	xld.w	[%r1+60],%r10
	ld.w	[%r1],%r10
	add	%sp,0x2		; 	xadd	%sp,%sp,8
	popn	%r2
	ret
	.align	1
BulletMLBullet_calcSpeed:
;	.frame	%sp,24,$31		# vars= 0, regs= 4/0, args= 8, extra= 0
;	.mask	0x80070000,-4
;	.fmask	0x00000000,0
	pushn	%r2
	sub	%sp,0x2		; 	xsub	%sp,%sp,8
	ld.w	%r1,%r12
	ld.w	%r2,%r13
	ld.w	%r0,%r14
	cmp	%r2,0x0
	jreq	__LX372		; 	xjreq	__L372
	ld.w	%r12,%r2
	ext	BulletMLNode_getValue@rm	; 	xcall	BulletMLNode_getValue
	call	BulletMLNode_getValue@rl
	ld.w	%r11,[%r10]	; 	xld.w	%r11,[%r10]
	ext	0x4		; 	xld.w	%r11,[%r11+4]
	ld.w	%r11,[%r11]
	ld.w	%r12,%r10
	ld.w	%r13,%r0
	ld.w	%r14,[%r1]	; 	xld.w	%r14,[%r1]
	ext	0x4		; 	xld.w	%r15,[%r1+4]
	ld.w	%r15,[%r1]
	call	%r11
	ld.w	%r0,%r10
	ld.w	%r12,%r2
	ext	BulletMLNode_getType@rm	; 	xcall	BulletMLNode_getType
	call	BulletMLNode_getType@rl
	cmp	%r10,0x4	; 	xcmp	%r10,4
	jreq	__LX391		; 	xjreq	__L391
	jrgt	__LX390		; 	xjrgt	__L390
	cmp	%r10,0x0
	jreq	__LX391		; 	xjreq	__L391
	jp	__LX388		; 	xjp	__L388
__LX390:				; __L390:
	cmp	%r10,0x5	; 	xcmp	%r10,5
	jreq	__LX376		; 	xjreq	__L376
	cmp	%r10,0x6	; 	xcmp	%r10,6
	jreq	__LX382		; 	xjreq	__L382
	jp	__LX388		; 	xjp	__L388
__LX376:				; __L376:
	ld.w	%r12,[%r1]	; 	xld.w	%r12,[%r1]
	ext	0x4		; 	xld.w	%r13,[%r1+4]
	ld.w	%r13,[%r1]
	ext	BulletMLUserFunc_getSpeed@rm	; 	xcall	BulletMLUserFunc_getSpeed
	call	BulletMLUserFunc_getSpeed@rl
	add	%r0,%r10
	jp	__LX391		; 	xjp	__L391
__LX382:				; __L382:
	ext	0x50		; 	xld.w	%r10,[%r1+80]
	ld.w	%r10,[%r1]
	add	%r0,%r10
	jp	__LX391		; 	xjp	__L391
__LX388:				; __L388:
	ext	__LC3+0x0@h	; 	xld.w	%r10,__LC3
	ext	__LC3+0x0@m
	ld.w	%r10,__LC3+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	0xd		; 	xld.w	%r10,0x00000363		; 867
	ld.w	%r10,0x23
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX372:				; __L372:
	ext	0x10		; 	xld.w	%r0,0x00000400		; 1024
	ld.w	%r0,0x0
__LX391:				; __L391:
	ext	0x50		; 	xld.w	[%r1+80],%r0
	ld.w	[%r1],%r0
	ld.w	%r10,%r0
	add	%sp,0x2		; 	xadd	%sp,%sp,8
	popn	%r2
	ret
	.align	1
BulletMLBullet_calcAccelH:
;	.frame	%sp,24,$31		# vars= 0, regs= 4/0, args= 8, extra= 0
;	.mask	0x80070000,-4
;	.fmask	0x00000000,0
	pushn	%r2
	sub	%sp,0x2		; 	xsub	%sp,%sp,8
	ld.w	%r2,%r12
	ld.w	%r1,%r13
	ld.w	%r0,%r14
	ld.w	%r12,%r1
	ext	BulletMLNode_getValue@rm	; 	xcall	BulletMLNode_getValue
	call	BulletMLNode_getValue@rl
	ld.w	%r11,[%r10]	; 	xld.w	%r11,[%r10]
	ext	0x4		; 	xld.w	%r11,[%r11+4]
	ld.w	%r11,[%r11]
	ld.w	%r12,%r10
	ld.w	%r13,%r0
	ld.w	%r14,[%r2]	; 	xld.w	%r14,[%r2]
	ext	0x4		; 	xld.w	%r15,[%r2+4]
	ld.w	%r15,[%r2]
	call	%r11
	ld.w	%r0,%r10
	ld.w	%r12,%r1
	ext	BulletMLNode_getType@rm	; 	xcall	BulletMLNode_getType
	call	BulletMLNode_getType@rl
	cmp	%r10,0x4	; 	xcmp	%r10,4
	jreq	__LX393		; 	xjreq	__L393
	jrgt	__LX410		; 	xjrgt	__L410
	cmp	%r10,0x0
	jreq	__LX393		; 	xjreq	__L393
	jp	__LX408		; 	xjp	__L408
__LX410:				; __L410:
	cmp	%r10,0x5	; 	xcmp	%r10,5
	jreq	__LX396		; 	xjreq	__L396
	cmp	%r10,0x6	; 	xcmp	%r10,6
	jreq	__LX402		; 	xjreq	__L402
	jp	__LX408		; 	xjp	__L408
__LX396:				; __L396:
	ld.w	%r12,[%r2]	; 	xld.w	%r12,[%r2]
	ext	0x4		; 	xld.w	%r13,[%r2+4]
	ld.w	%r13,[%r2]
	ext	BulletMLUserFunc_getAccelH@rm	; 	xcall	BulletMLUserFunc_getAccelH
	call	BulletMLUserFunc_getAccelH@rl
	add	%r0,%r10
	jp	__LX393		; 	xjp	__L393
__LX402:				; __L402:
	ext	0x64		; 	xld.w	%r10,[%r2+100]
	ld.w	%r10,[%r2]
	add	%r0,%r10
	jp	__LX393		; 	xjp	__L393
__LX408:				; __L408:
	ext	__LC3+0x0@h	; 	xld.w	%r10,__LC3
	ext	__LC3+0x0@m
	ld.w	%r10,__LC3+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	0xe		; 	xld.w	%r10,0x00000380		; 896
	ld.w	%r10,0x0
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX393:				; __L393:
	ext	0x64		; 	xld.w	[%r2+100],%r0
	ld.w	[%r2],%r0
	ld.w	%r10,%r0
	add	%sp,0x2		; 	xadd	%sp,%sp,8
	popn	%r2
	ret
	.align	1
BulletMLBullet_calcAccelV:
;	.frame	%sp,24,$31		# vars= 0, regs= 4/0, args= 8, extra= 0
;	.mask	0x80070000,-4
;	.fmask	0x00000000,0
	pushn	%r2
	sub	%sp,0x2		; 	xsub	%sp,%sp,8
	ld.w	%r2,%r12
	ld.w	%r1,%r13
	ld.w	%r0,%r14
	ld.w	%r12,%r1
	ext	BulletMLNode_getValue@rm	; 	xcall	BulletMLNode_getValue
	call	BulletMLNode_getValue@rl
	ld.w	%r11,[%r10]	; 	xld.w	%r11,[%r10]
	ext	0x4		; 	xld.w	%r11,[%r11+4]
	ld.w	%r11,[%r11]
	ld.w	%r12,%r10
	ld.w	%r13,%r0
	ld.w	%r14,[%r2]	; 	xld.w	%r14,[%r2]
	ext	0x4		; 	xld.w	%r15,[%r2+4]
	ld.w	%r15,[%r2]
	call	%r11
	ld.w	%r0,%r10
	ld.w	%r12,%r1
	ext	BulletMLNode_getType@rm	; 	xcall	BulletMLNode_getType
	call	BulletMLNode_getType@rl
	cmp	%r10,0x4	; 	xcmp	%r10,4
	jreq	__LX412		; 	xjreq	__L412
	jrgt	__LX429		; 	xjrgt	__L429
	cmp	%r10,0x0
	jreq	__LX412		; 	xjreq	__L412
	jp	__LX427		; 	xjp	__L427
__LX429:				; __L429:
	cmp	%r10,0x5	; 	xcmp	%r10,5
	jreq	__LX415		; 	xjreq	__L415
	cmp	%r10,0x6	; 	xcmp	%r10,6
	jreq	__LX421		; 	xjreq	__L421
	jp	__LX427		; 	xjp	__L427
__LX415:				; __L415:
	ld.w	%r12,[%r2]	; 	xld.w	%r12,[%r2]
	ext	0x4		; 	xld.w	%r13,[%r2+4]
	ld.w	%r13,[%r2]
	ext	BulletMLUserFunc_getAccelV@rm	; 	xcall	BulletMLUserFunc_getAccelV
	call	BulletMLUserFunc_getAccelV@rl
	add	%r0,%r10
	jp	__LX412		; 	xjp	__L412
__LX421:				; __L421:
	ext	0x78		; 	xld.w	%r10,[%r2+120]
	ld.w	%r10,[%r2]
	add	%r0,%r10
	jp	__LX412		; 	xjp	__L412
__LX427:				; __L427:
	ext	__LC3+0x0@h	; 	xld.w	%r10,__LC3
	ext	__LC3+0x0@m
	ld.w	%r10,__LC3+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	0xe		; 	xld.w	%r10,0x0000039a		; 922
	ld.w	%r10,0x1a
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX412:				; __L412:
	ext	0x78		; 	xld.w	[%r2+120],%r0
	ld.w	[%r2],%r0
	ld.w	%r10,%r0
	add	%sp,0x2		; 	xadd	%sp,%sp,8
	popn	%r2
	ret
	.data
	.align	2
pool.163:
	.word	128
	.space	28
	.code
	.align	1
	.global	BulletMLBullet_new
BulletMLBullet_new:
;	.frame	%sp,28,$31		# vars= 4, regs= 5/0, args= 4, extra= 0
;	.mask	0x800f0000,-4
;	.fmask	0x00000000,0
	pushn	%r3
	sub	%sp,0x2		; 	xsub	%sp,%sp,8
	ld.w	%r2,%r12
	ld.w	%r3,%r13
	ld.w	[%sp+0x1],%r14	; 	xld.w	[%sp+4],%r14
	ld.w	%r0,%r15
	ext	pool.163+0x0@h	; 	xld.w	%r12,pool.163
	ext	pool.163+0x0@m
	ld.w	%r12,pool.163+0x0@l
	ext	pool_alloc@rm	; 	xcall	pool_alloc
	call	pool_alloc@rl
	ld.w	%r1,%r10
	ld.w	[%sp+0x0],%r0	; 	xld.w	[%sp],%r0
	ld.w	%r12,%r1
	ld.w	%r13,%r2
	ld.w	%r14,%r3
	ld.w	%r15,[%sp+0x1]	; 	xld.w	%r15,[%sp+4]
	call	_BulletMLBullet_construct	; 	xcall	_BulletMLBullet_construct
	ld.w	%r10,%r1
	add	%sp,0x2		; 	xadd	%sp,%sp,8
	popn	%r3
	ret
	.align	1
	.global	BulletMLBullet_delete
BulletMLBullet_delete:
;	.frame	%sp,8,$31		# vars= 0, regs= 2/0, args= 0, extra= 0
;	.mask	0x80010000,-4
;	.fmask	0x00000000,0
	pushn	%r0
	ld.w	%r0,%r12
	cmp	%r0,0x0
	jreq	__LX432		; 	xjreq	__L432
	ext	_BulletMLBullet_destruct@rm	; 	xcall	_BulletMLBullet_destruct
	call	_BulletMLBullet_destruct@rl
	ld.w	%r12,%r0
	ext	pool_free@rm	; 	xcall	pool_free
	call	pool_free@rl
__LX432:				; __L432:
	popn	%r0
	ret
	.code
	.align	2
__LC37:
	.ascii	"top\000"
	.code
	.align	1
	.global	_BulletMLBullet_construct
_BulletMLBullet_construct:
;	.frame	%sp,32,$31		# vars= 4, regs= 5/0, args= 8, extra= 0
;	.mask	0x800f0000,-4
;	.fmask	0x00000000,0
	pushn	%r3
	sub	%sp,0x3		; 	xsub	%sp,%sp,12
	ld.w	%r1,%r12
	ld.w	[%sp+0x2],%r13	; 	xld.w	[%sp+8],%r13
	ld.w	%r3,%r14
	ld.w	%r0,%r15
	ld.w	%r2,[%sp+0x8]	; 	xld.w	%r2,[%sp+32]
	ld.w	[%r1],%r13	; 	xld.w	[%r1],%r13
	ext	0x4		; 	xld.w	[%r1+4],%r3
	ld.w	[%r1],%r3
	ld.w	%r12,%r0
	ext	BulletMLNode_getName@rm	; 	xcall	BulletMLNode_getName
	call	BulletMLNode_getName@rl
	cmp	%r10,0x1	; 	xcmp	%r10,1
	jreq	__LX452		; 	xjreq	__L452
	jrgt	__LX471		; 	xjrgt	__L471
	cmp	%r10,0x0
	jreq	__LX435		; 	xjreq	__L435
	ext	__LX469@rm	; 	xjp	__L469
	jp	__LX469@rl
__LX471:				; __L471:
	cmp	%r10,0x10	; 	xcmp	%r10,16
	jreq	__LX452		; 	xjreq	__L452
	ext	__LX469@rm	; 	xjp	__L469
	jp	__LX469@rl
__LX435:				; __L435:
	cmp	%r2,0x0
	jreq	__LX436		; 	xjreq	__L436
	ext	__LC3+0x0@h	; 	xld.w	%r10,__LC3
	ext	__LC3+0x0@m
	ld.w	%r10,__LC3+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	0xf		; 	xld.w	%r10,0x000003d3		; 979
	ld.w	%r10,0x13
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX436:				; __L436:
	ld.w	%r12,%r0
	ext	BulletMLNode_firstChild@rm	; 	xcall	BulletMLNode_firstChild
	call	BulletMLNode_firstChild@rl
	ld.w	%r0,%r10
	cmp	%r0,0x0
	ext	__LX434@rm	; 	xjreq	__L434
	jreq	__LX434@rl
__LX440:				; __L440:
	ld.w	%r12,%r0
	ext	BulletMLNode_getName@rm	; 	xcall	BulletMLNode_getName
	call	BulletMLNode_getName@rl
	cmp	%r10,0x2	; 	xcmp	%r10,2
	jreq	__LX443		; 	xjreq	__L443
	jrgt	__LX449		; 	xjrgt	__L449
	cmp	%r10,0x1	; 	xcmp	%r10,1
	jreq	__LX439		; 	xjreq	__L439
	jp	__LX447		; 	xjp	__L447
__LX449:				; __L449:
	cmp	%r10,0x3	; 	xcmp	%r10,3
	jreq	__LX439		; 	xjreq	__L439
	jp	__LX447		; 	xjp	__L447
__LX443:				; __L443:
	ld.w	%r12,%r0
	ext	BulletMLNode_getLabel@rm	; 	xcall	BulletMLNode_getLabel
	call	BulletMLNode_getLabel@rl
	ld.w	%r12,%r10
	ext	__LC37+0x0@h	; 	xld.w	%r13,__LC37
	ext	__LC37+0x0@m
	ld.w	%r13,__LC37+0x0@l
	ld.w	%r14,0x3	; 	xld.w	%r14,0x00000003		; 3
	ext	strncmp@rm	; 	xcall	strncmp
	call	strncmp@rl
	cmp	%r10,0x0
	jrne	__LX439		; 	xjrne	__L439
	ld.w	%r12,%r1
	ld.w	%r13,%r0
	ext	0x8		; 	xadd	%r14,%r1,8
	add	%r14,%r1
	ext	BulletMLAction_new@rm	; 	xcall	BulletMLAction_new
	call	BulletMLAction_new@rl
	ld.w	%r12,%r1
	ld.w	%r13,%r10
	ext	BulletMLBullet_addAction@rm	; 	xcall	BulletMLBullet_addAction
	call	BulletMLBullet_addAction@rl
	jp	__LX439		; 	xjp	__L439
__LX447:				; __L447:
	ext	__LC3+0x0@h	; 	xld.w	%r10,__LC3
	ext	__LC3+0x0@m
	ld.w	%r10,__LC3+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	0xf		; 	xld.w	%r10,0x000003e7		; 999
	ld.w	%r10,0x27
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX439:				; __L439:
	ld.w	%r12,%r0
	ext	BulletMLNode_nextSibling@rm	; 	xcall	BulletMLNode_nextSibling
	call	BulletMLNode_nextSibling@rl
	ld.w	%r0,%r10
	cmp	%r0,0x0
	jrne	__LX440		; 	xjrne	__L440
	jp	__LX434		; 	xjp	__L434
__LX452:				; __L452:
	cmp	%r2,0x0
	jrne	__LX453		; 	xjrne	__L453
	ext	__LC3+0x0@h	; 	xld.w	%r10,__LC3
	ext	__LC3+0x0@m
	ld.w	%r10,__LC3+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	0xf		; 	xld.w	%r10,0x000003ee		; 1006
	ld.w	%r10,0x2e
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX453:				; __L453:
	ld.w	%r12,%r0
	ext	BulletMLNode_getName@rm	; 	xcall	BulletMLNode_getName
	call	BulletMLNode_getName@rl
	cmp	%r10,0x1	; 	xcmp	%r10,1
	jrne	__LX454		; 	xjrne	__L454
	ext	0x8		; 	xadd	%r12,%r1,8
	add	%r12,%r1
	ld.w	%r13,%r2
	ext	0x0		; 	xld.w	%r14,0x00000024		; 36
	ld.w	%r14,0x24
	ext	memcpy@rm	; 	xcall	memcpy
	call	memcpy@rl
	jp	__LX455		; 	xjp	__L455
__LX454:				; __L454:
	ld.w	[%sp+0x0],%r3	; 	xld.w	[%sp],%r3
	ld.w	%r12,%r0
	ext	0x8		; 	xadd	%r13,%r1,8
	add	%r13,%r1
	ld.w	%r14,%r2
	ld.w	%r15,[%sp+0x2]	; 	xld.w	%r15,[%sp+8]
	ext	BulletMLNode_getParams@rm	; 	xcall	BulletMLNode_getParams
	call	BulletMLNode_getParams@rl
	ld.w	%r12,%r0
	ext	BulletMLNode_getRef@rm	; 	xcall	BulletMLNode_getRef
	call	BulletMLNode_getRef@rl
	ld.w	%r0,%r10
__LX455:				; __L455:
	ld.w	%r12,%r0
	ext	BulletMLNode_firstChild@rm	; 	xcall	BulletMLNode_firstChild
	call	BulletMLNode_firstChild@rl
	ld.w	%r0,%r10
	cmp	%r0,0x0
	jreq	__LX434		; 	xjreq	__L434
__LX459:				; __L459:
	ld.w	%r12,%r0
	ext	BulletMLNode_getName@rm	; 	xcall	BulletMLNode_getName
	call	BulletMLNode_getName@rl
	cmp	%r10,0xa	; 	xcmp	%r10,10
	jreq	__LX461		; 	xjreq	__L461
	jrgt	__LX467		; 	xjrgt	__L467
	cmp	%r10,0x2	; 	xcmp	%r10,2
	jreq	__LX464		; 	xjreq	__L464
	jp	__LX465		; 	xjp	__L465
__LX467:				; __L467:
	cmp	%r10,0xb	; 	xcmp	%r10,11
	jreq	__LX462		; 	xjreq	__L462
	cmp	%r10,0x11	; 	xcmp	%r10,17
	jreq	__LX464		; 	xjreq	__L464
	jp	__LX465		; 	xjp	__L465
__LX461:				; __L461:
	ld.w	%r12,%r1
	ld.w	%r13,%r0
	ext	0x8		; 	xadd	%r14,%r1,8
	add	%r14,%r1
	ext	BulletMLBullet_calcDirection@rm	; 	xcall	BulletMLBullet_calcDirection
	call	BulletMLBullet_calcDirection@rl
	ld.w	%r12,[%sp+0x2]	; 	xld.w	%r12,[%sp+8]
	ld.w	%r13,%r3
	ld.w	%r14,%r10
	ext	BulletMLUserFunc_setDirection@rm	; 	xcall	BulletMLUserFunc_setDirection
	call	BulletMLUserFunc_setDirection@rl
	jp	__LX458		; 	xjp	__L458
__LX462:				; __L462:
	ld.w	%r12,%r1
	ld.w	%r13,%r0
	ext	0x8		; 	xadd	%r14,%r1,8
	add	%r14,%r1
	ext	BulletMLBullet_calcSpeed@rm	; 	xcall	BulletMLBullet_calcSpeed
	call	BulletMLBullet_calcSpeed@rl
	ld.w	%r12,[%sp+0x2]	; 	xld.w	%r12,[%sp+8]
	ld.w	%r13,%r3
	ld.w	%r14,%r10
	ext	BulletMLUserFunc_setSpeed@rm	; 	xcall	BulletMLUserFunc_setSpeed
	call	BulletMLUserFunc_setSpeed@rl
	jp	__LX458		; 	xjp	__L458
__LX464:				; __L464:
	ld.w	%r12,%r1
	ld.w	%r13,%r0
	ext	0x8		; 	xadd	%r14,%r1,8
	add	%r14,%r1
	ext	BulletMLAction_new@rm	; 	xcall	BulletMLAction_new
	call	BulletMLAction_new@rl
	ld.w	%r12,%r1
	ld.w	%r13,%r10
	ext	BulletMLBullet_addAction@rm	; 	xcall	BulletMLBullet_addAction
	call	BulletMLBullet_addAction@rl
	jp	__LX458		; 	xjp	__L458
__LX465:				; __L465:
	ext	__LC3+0x0@h	; 	xld.w	%r10,__LC3
	ext	__LC3+0x0@m
	ld.w	%r10,__LC3+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	0x10		; 	xld.w	%r10,0x00000407		; 1031
	ld.w	%r10,0x7
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX458:				; __L458:
	ld.w	%r12,%r0
	ext	BulletMLNode_nextSibling@rm	; 	xcall	BulletMLNode_nextSibling
	call	BulletMLNode_nextSibling@rl
	ld.w	%r0,%r10
	cmp	%r0,0x0
	jrne	__LX459		; 	xjrne	__L459
	jp	__LX434		; 	xjp	__L434
__LX469:				; __L469:
	ext	__LC3+0x0@h	; 	xld.w	%r10,__LC3
	ext	__LC3+0x0@m
	ld.w	%r10,__LC3+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	0x10		; 	xld.w	%r10,0x0000040c		; 1036
	ld.w	%r10,0xc
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX434:				; __L434:
	add	%sp,0x3		; 	xadd	%sp,%sp,12
	popn	%r3
	ret
	.align	1
	.global	_BulletMLBullet_destruct
_BulletMLBullet_destruct:
;	.frame	%sp,8,$31		# vars= 0, regs= 2/0, args= 0, extra= 0
;	.mask	0x80010000,-4
;	.fmask	0x00000000,0
	pushn	%r0
	ext	0x7c		; 	xld.w	%r12,[%r12+124]
	ld.w	%r12,[%r12]
	cmp	%r12,0x0
	jreq	__LX474		; 	xjreq	__L474
__LX475:				; __L475:
	ext	0x38		; 	xld.w	%r0,[%r12+56]
	ld.w	%r0,[%r12]
	ext	BulletMLAction_delete@rm	; 	xcall	BulletMLAction_delete
	call	BulletMLAction_delete@rl
	ld.w	%r12,%r0
	cmp	%r12,0x0
	jrne	__LX475		; 	xjrne	__L475
__LX474:				; __L474:
	popn	%r0
	ret
	.align	1
	.global	BulletMLBullet_getUserFunc
BulletMLBullet_getUserFunc:
;	.frame	%sp,4,$31		# vars= 0, regs= 1/0, args= 0, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	ld.w	%r10,[%r12]	; 	xld.w	%r10,[%r12]
	ret
	.align	1
	.global	BulletMLBullet_getUserData
BulletMLBullet_getUserData:
;	.frame	%sp,4,$31		# vars= 0, regs= 1/0, args= 0, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	ext	0x4		; 	xld.w	%r10,[%r12+4]
	ld.w	%r10,[%r12]
	ret
	.align	1
	.global	BulletMLBullet_run
BulletMLBullet_run:
;	.frame	%sp,16,$31		# vars= 0, regs= 4/0, args= 0, extra= 0
;	.mask	0x80070000,-4
;	.fmask	0x00000000,0
	pushn	%r2
	ld.w	%r1,%r12
	ld.w	%r2,0x0
	ext	0x7c		; 	xld.w	%r0,[%r1+124]
	ld.w	%r0,[%r1]
	cmp	%r0,0x0
	jreq	__LX481		; 	xjreq	__L481
__LX482:				; __L482:
	ld.w	%r12,%r0
	ext	BulletMLAction_run@rm	; 	xcall	BulletMLAction_run
	call	BulletMLAction_run@rl
	cmp	%r10,0x0
	jreq	__LX483		; 	xjreq	__L483
	ld.w	%r2,0x1		; 	xld.w	%r2,0x00000001		; 1
__LX483:				; __L483:
	ext	0x38		; 	xld.w	%r0,[%r0+56]
	ld.w	%r0,[%r0]
	cmp	%r0,0x0
	jrne	__LX482		; 	xjrne	__L482
__LX481:				; __L481:
	ext	0x38		; 	xld.w	%r11,[%r1+56]
	ld.w	%r11,[%r1]
	ext	0x34		; 	xld.w	%r10,[%r1+52]
	ld.w	%r10,[%r1]
	cmp	%r11,%r10
	jrge	__LX485		; 	xjrge	__L485
	add	%r11,0x1	; 	xadd	%r11,%r11,1
	ext	0x38		; 	xld.w	[%r1+56],%r11
	ld.w	[%r1],%r11
	ext	0x30		; 	xld.w	%r10,[%r1+48]
	ld.w	%r10,[%r1]
	mlt.w	%r10,%r11
	ld.w	%r12,%alr
	ext	0x34		; 	xld.w	%r13,[%r1+52]
	ld.w	%r13,[%r1]
	ext	__divsi3@rm	; 	xcall	__divsi3
	call	__divsi3@rl
	ext	0x2c		; 	xld.w	%r14,[%r1+44]
	ld.w	%r14,[%r1]
	ld.w	%r12,[%r1]	; 	xld.w	%r12,[%r1]
	ext	0x4		; 	xld.w	%r13,[%r1+4]
	ld.w	%r13,[%r1]
	add	%r14,%r10
	ext	BulletMLUserFunc_setDirection@rm	; 	xcall	BulletMLUserFunc_setDirection
	call	BulletMLUserFunc_setDirection@rl
	ld.w	%r2,0x1		; 	xld.w	%r2,0x00000001		; 1
__LX485:				; __L485:
	ext	0x4c		; 	xld.w	%r11,[%r1+76]
	ld.w	%r11,[%r1]
	ext	0x48		; 	xld.w	%r10,[%r1+72]
	ld.w	%r10,[%r1]
	cmp	%r11,%r10
	jrge	__LX489		; 	xjrge	__L489
	add	%r11,0x1	; 	xadd	%r11,%r11,1
	ext	0x4c		; 	xld.w	[%r1+76],%r11
	ld.w	[%r1],%r11
	ext	0x44		; 	xld.w	%r10,[%r1+68]
	ld.w	%r10,[%r1]
	mlt.w	%r10,%r11
	ld.w	%r12,%alr
	ext	0x48		; 	xld.w	%r13,[%r1+72]
	ld.w	%r13,[%r1]
	ext	__divsi3@rm	; 	xcall	__divsi3
	call	__divsi3@rl
	ext	0x40		; 	xld.w	%r14,[%r1+64]
	ld.w	%r14,[%r1]
	ld.w	%r12,[%r1]	; 	xld.w	%r12,[%r1]
	ext	0x4		; 	xld.w	%r13,[%r1+4]
	ld.w	%r13,[%r1]
	add	%r14,%r10
	ext	BulletMLUserFunc_setSpeed@rm	; 	xcall	BulletMLUserFunc_setSpeed
	call	BulletMLUserFunc_setSpeed@rl
	ld.w	%r2,0x1		; 	xld.w	%r2,0x00000001		; 1
__LX489:				; __L489:
	ext	0x60		; 	xld.w	%r11,[%r1+96]
	ld.w	%r11,[%r1]
	ext	0x5c		; 	xld.w	%r10,[%r1+92]
	ld.w	%r10,[%r1]
	cmp	%r11,%r10
	jrge	__LX493		; 	xjrge	__L493
	add	%r11,0x1	; 	xadd	%r11,%r11,1
	ext	0x60		; 	xld.w	[%r1+96],%r11
	ld.w	[%r1],%r11
	ext	0x58		; 	xld.w	%r10,[%r1+88]
	ld.w	%r10,[%r1]
	mlt.w	%r10,%r11
	ld.w	%r12,%alr
	ext	0x5c		; 	xld.w	%r13,[%r1+92]
	ld.w	%r13,[%r1]
	ext	__divsi3@rm	; 	xcall	__divsi3
	call	__divsi3@rl
	ext	0x54		; 	xld.w	%r14,[%r1+84]
	ld.w	%r14,[%r1]
	ld.w	%r12,[%r1]	; 	xld.w	%r12,[%r1]
	ext	0x4		; 	xld.w	%r13,[%r1+4]
	ld.w	%r13,[%r1]
	add	%r14,%r10
	ext	BulletMLUserFunc_setAccelH@rm	; 	xcall	BulletMLUserFunc_setAccelH
	call	BulletMLUserFunc_setAccelH@rl
	ld.w	%r2,0x1		; 	xld.w	%r2,0x00000001		; 1
__LX493:				; __L493:
	ext	0x74		; 	xld.w	%r11,[%r1+116]
	ld.w	%r11,[%r1]
	ext	0x70		; 	xld.w	%r10,[%r1+112]
	ld.w	%r10,[%r1]
	cmp	%r11,%r10
	jrge	__LX497		; 	xjrge	__L497
	add	%r11,0x1	; 	xadd	%r11,%r11,1
	ext	0x74		; 	xld.w	[%r1+116],%r11
	ld.w	[%r1],%r11
	ext	0x6c		; 	xld.w	%r10,[%r1+108]
	ld.w	%r10,[%r1]
	mlt.w	%r10,%r11
	ld.w	%r12,%alr
	ext	0x70		; 	xld.w	%r13,[%r1+112]
	ld.w	%r13,[%r1]
	ext	__divsi3@rm	; 	xcall	__divsi3
	call	__divsi3@rl
	ext	0x68		; 	xld.w	%r14,[%r1+104]
	ld.w	%r14,[%r1]
	ld.w	%r12,[%r1]	; 	xld.w	%r12,[%r1]
	ext	0x4		; 	xld.w	%r13,[%r1+4]
	ld.w	%r13,[%r1]
	add	%r14,%r10
	ext	BulletMLUserFunc_setAccelV@rm	; 	xcall	BulletMLUserFunc_setAccelV
	call	BulletMLUserFunc_setAccelV@rl
	ld.w	%r2,0x1		; 	xld.w	%r2,0x00000001		; 1
__LX497:				; __L497:
	ld.w	%r10,%r2
	popn	%r2
	ret
	.data
	.align	2
pool.178:
	.word	60
	.space	28
	.code
	.align	1
	.global	BulletMLAction_new
BulletMLAction_new:
;	.frame	%sp,20,$31		# vars= 0, regs= 5/0, args= 0, extra= 0
;	.mask	0x800f0000,-4
;	.fmask	0x00000000,0
	pushn	%r3
	ld.w	%r1,%r12
	ld.w	%r2,%r13
	ld.w	%r3,%r14
	ext	pool.178+0x0@h	; 	xld.w	%r12,pool.178
	ext	pool.178+0x0@m
	ld.w	%r12,pool.178+0x0@l
	ext	pool_alloc@rm	; 	xcall	pool_alloc
	call	pool_alloc@rl
	ld.w	%r0,%r10
	ld.w	%r12,%r0
	ld.w	%r13,%r1
	ld.w	%r14,%r2
	ld.w	%r15,%r3
	call	_BulletMLAction_construct	; 	xcall	_BulletMLAction_construct
	ld.w	%r10,%r0
	popn	%r3
	ret
	.align	1
	.global	BulletMLAction_delete
BulletMLAction_delete:
;	.frame	%sp,8,$31		# vars= 0, regs= 2/0, args= 0, extra= 0
;	.mask	0x80010000,-4
;	.fmask	0x00000000,0
	pushn	%r0
	ld.w	%r0,%r12
	cmp	%r0,0x0
	jreq	__LX503		; 	xjreq	__L503
	call	_BulletMLAction_destruct	; 	xcall	_BulletMLAction_destruct
	ld.w	%r12,%r0
	ext	pool_free@rm	; 	xcall	pool_free
	call	pool_free@rl
__LX503:				; __L503:
	popn	%r0
	ret
	.align	1
	.global	_BulletMLAction_construct
_BulletMLAction_construct:
;	.frame	%sp,32,$31		# vars= 4, regs= 5/0, args= 8, extra= 0
;	.mask	0x800f0000,-4
;	.fmask	0x00000000,0
	pushn	%r3
	sub	%sp,0x3		; 	xsub	%sp,%sp,12
	ld.w	%r2,%r12
	ld.w	%r3,%r13
	ld.w	%r1,%r14
	ld.w	[%sp+0x2],%r15	; 	xld.w	[%sp+8],%r15
	ld.w	%r12,%r1
	ext	BulletMLNode_getName@rm	; 	xcall	BulletMLNode_getName
	call	BulletMLNode_getName@rl
	cmp	%r10,0x2	; 	xcmp	%r10,2
	jreq	__LX506		; 	xjreq	__L506
	cmp	%r10,0x11	; 	xcmp	%r10,17
	jreq	__LX507		; 	xjreq	__L507
	jp	__LX508		; 	xjp	__L508
__LX506:				; __L506:
	ld.w	%r12,%r2
	ld.w	%r13,[%sp+0x2]	; 	xld.w	%r13,[%sp+8]
	ext	0x0		; 	xld.w	%r14,0x00000024		; 36
	ld.w	%r14,0x24
	ext	memcpy@rm	; 	xcall	memcpy
	call	memcpy@rl
	jp	__LX505		; 	xjp	__L505
__LX507:				; __L507:
	ld.w	%r12,%r3
	ext	BulletMLBullet_getUserFunc@rm	; 	xcall	BulletMLBullet_getUserFunc
	call	BulletMLBullet_getUserFunc@rl
	ld.w	%r0,%r10
	ld.w	%r12,%r3
	ext	BulletMLBullet_getUserData@rm	; 	xcall	BulletMLBullet_getUserData
	call	BulletMLBullet_getUserData@rl
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ld.w	%r12,%r1
	ld.w	%r13,%r2
	ld.w	%r14,[%sp+0x2]	; 	xld.w	%r14,[%sp+8]
	ld.w	%r15,%r0
	ext	BulletMLNode_getParams@rm	; 	xcall	BulletMLNode_getParams
	call	BulletMLNode_getParams@rl
	ld.w	%r12,%r1
	ext	BulletMLNode_getRef@rm	; 	xcall	BulletMLNode_getRef
	call	BulletMLNode_getRef@rl
	ld.w	%r1,%r10
	jp	__LX505		; 	xjp	__L505
__LX508:				; __L508:
	ext	__LC3+0x0@h	; 	xld.w	%r10,__LC3
	ext	__LC3+0x0@m
	ld.w	%r10,__LC3+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	0x12		; 	xld.w	%r10,0x00000489		; 1161
	ld.w	%r10,0x9
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX505:				; __L505:
	ext	0x24		; 	xld.w	[%r2+36],%r3
	ld.w	[%r2],%r3
	ld.w	%r12,%r1
	ext	BulletMLNode_firstChild@rm	; 	xcall	BulletMLNode_firstChild
	call	BulletMLNode_firstChild@rl
	ext	0x28		; 	xld.w	[%r2+40],%r10
	ld.w	[%r2],%r10
	add	%sp,0x3		; 	xadd	%sp,%sp,12
	popn	%r3
	ret
	.align	1
	.global	_BulletMLAction_destruct
_BulletMLAction_destruct:
;	.frame	%sp,4,$31		# vars= 0, regs= 1/0, args= 0, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	ext	0x34		; 	xld.w	%r12,[%r12+52]
	ld.w	%r12,[%r12]
	call	BulletMLAction_delete	; 	xcall	BulletMLAction_delete
	ret
	.align	1
	.global	BulletMLAction_run
BulletMLAction_run:
;	.frame	%sp,68,$31		# vars= 40, regs= 5/0, args= 8, extra= 0
;	.mask	0x800f0000,-4
;	.fmask	0x00000000,0
	pushn	%r3
	sub	%sp,0xc		; 	xsub	%sp,%sp,48
	ld.w	%r2,%r12
__LX512:				; __L512:
	ext	0x34		; 	xld.w	%r12,[%r2+52]
	ld.w	%r12,[%r2]
	cmp	%r12,0x0
	jreq	__LX515		; 	xjreq	__L515
	call	BulletMLAction_run	; 	xcall	BulletMLAction_run
	ld.w	%r0,%r10
	cmp	%r0,0x0
	jreq	__LX516		; 	xjreq	__L516
	ld.w	%r10,0x1	; 	xld.w	%r10,0x00000001		; 1
	ext	__LX556@rm	; 	xjp	__L556
	jp	__LX556@rl
__LX516:				; __L516:
	ext	0x34		; 	xld.w	%r12,[%r2+52]
	ld.w	%r12,[%r2]
	call	BulletMLAction_delete	; 	xcall	BulletMLAction_delete
	ext	0x34		; 	xld.w	[%r2+52],%r0
	ld.w	[%r2],%r0
__LX515:				; __L515:
	ext	0x2c		; 	xld.w	%r10,[%r2+44]
	ld.w	%r10,[%r2]
	cmp	%r10,0x0
	jrle	__LX518		; 	xjrle	__L518
	sub	%r10,0x1	; 	xsub	%r10,%r10,1
	ext	0x2c		; 	xld.w	[%r2+44],%r10
	ld.w	[%r2],%r10
	ld.w	%r10,0x1	; 	xld.w	%r10,0x00000001		; 1
	ext	__LX556@rm	; 	xjp	__L556
	jp	__LX556@rl
__LX518:				; __L518:
	ext	0x28		; 	xld.w	%r10,[%r2+40]
	ld.w	%r10,[%r2]
	cmp	%r10,0x0
	ext	__LX556@rm	; 	xjreq	__L556
	jreq	__LX556@rl
	ld.w	%r12,%r10
	ext	BulletMLNode_getName@rm	; 	xcall	BulletMLNode_getName
	call	BulletMLNode_getName@rl
	sub	%r10,0x2	; 	xsub	%r10,%r10,2
	cmp	%r10,0x10	; 	xcmp	%r10,16
	ext	__L554@rm	; 	xjrugt	__L554
	jrugt	__L554@rl
	sll	%r10,0x2	; 	xsll	%r10,2
	ext	__L555+0x0@h	; 	xld.w	%r10,[%r10+__L555]
	ext	__L555+0x0@m
	ld.w	%r9,__L555+0x0@l
	add	%r9,%r10
	ld.w	%r10,[%r9]
	jp	%r10
	.code
	.align	2
__L555:
	.word	__L553
	.word	__L531
	.word	__L536
	.word	__L540
	.word	__L544
	.word	__L549
	.word	__L551
	.word	__L521
	.word	__L554
	.word	__L554
	.word	__L554
	.word	__L554
	.word	__L554
	.word	__L554
	.word	__L554
	.word	__L553
	.word	__L531
	.code
__L521:
	ext	0x30		; 	xld.w	%r10,[%r2+48]
	ld.w	%r10,[%r2]
	cmp	%r10,0x0
	jrle	__LX522		; 	xjrle	__L522
	sub	%r10,0x1	; 	xsub	%r10,%r10,1
	jp	__LX557		; 	xjp	__L557
__LX522:				; __L522:
	ext	0x28		; 	xld.w	%r12,[%r2+40]
	ld.w	%r12,[%r2]
	ld.w	%r13,0xf	; 	xld.w	%r13,0x0000000f		; 15
	ext	BulletMLNode_getChild@rm	; 	xcall	BulletMLNode_getChild
	call	BulletMLNode_getChild@rl
	ld.w	%r1,%r10
	cmp	%r1,0x0
	jrne	__LX524		; 	xjrne	__L524
	ext	__LC3+0x0@h	; 	xld.w	%r4,__LC3
	ext	__LC3+0x0@m
	ld.w	%r4,__LC3+0x0@l
	ld.w	[%sp+0x0],%r4	; 	xld.w	[%sp],%r4
	ext	0x12		; 	xld.w	%r10,0x000004bc		; 1212
	ld.w	%r10,0x3c
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX524:				; __L524:
	ld.w	%r12,%r1
	ext	BulletMLNode_getValue@rm	; 	xcall	BulletMLNode_getValue
	call	BulletMLNode_getValue@rl
	ld.w	%r3,%r10
	ld.w	%r0,[%r3]	; 	xld.w	%r0,[%r3]
	ext	0x24		; 	xld.w	%r12,[%r2+36]
	ld.w	%r12,[%r2]
	ext	BulletMLBullet_getUserFunc@rm	; 	xcall	BulletMLBullet_getUserFunc
	call	BulletMLBullet_getUserFunc@rl
	ld.w	%r1,%r10
	ext	0x24		; 	xld.w	%r12,[%r2+36]
	ld.w	%r12,[%r2]
	ext	BulletMLBullet_getUserData@rm	; 	xcall	BulletMLBullet_getUserData
	call	BulletMLBullet_getUserData@rl
	ext	0x4		; 	xld.w	%r11,[%r0+4]
	ld.w	%r11,[%r0]
	ld.w	%r12,%r3
	ld.w	%r13,%r2
	ld.w	%r14,%r1
	ld.w	%r15,%r10
	call	%r11
	sra	%r10,0x8	; 	xsra	%r10,10
	sra	%r10,0x2
__LX557:				; __L557:
	ext	0x30		; 	xld.w	[%r2+48],%r10
	ld.w	[%r2],%r10
	ext	0x30		; 	xld.w	%r10,[%r2+48]
	ld.w	%r10,[%r2]
	cmp	%r10,0x0
	ext	__LX558@rm	; 	xjrle	__L558
	jrle	__LX558@rl
	ext	0x28		; 	xld.w	%r12,[%r2+40]
	ld.w	%r12,[%r2]
	ld.w	%r13,0x2	; 	xld.w	%r13,0x00000002		; 2
	ext	BulletMLNode_getChild@rm	; 	xcall	BulletMLNode_getChild
	call	BulletMLNode_getChild@rl
	ld.w	%r1,%r10
	cmp	%r1,0x0
	jrne	__LX527		; 	xjrne	__L527
	ext	0x28		; 	xld.w	%r12,[%r2+40]
	ld.w	%r12,[%r2]
	ld.w	%r13,0x11	; 	xld.w	%r13,0x00000011		; 17
	ext	BulletMLNode_getChild@rm	; 	xcall	BulletMLNode_getChild
	call	BulletMLNode_getChild@rl
	ld.w	%r1,%r10
	cmp	%r1,0x0
	jrne	__LX527		; 	xjrne	__L527
	ext	__LC3+0x0@h	; 	xld.w	%r4,__LC3
	ext	__LC3+0x0@m
	ld.w	%r4,__LC3+0x0@l
	ld.w	[%sp+0x0],%r4	; 	xld.w	[%sp],%r4
	ext	0x13		; 	xld.w	%r10,0x000004c6		; 1222
	ld.w	%r10,0x6
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX527:				; __L527:
	ext	0x24		; 	xld.w	%r12,[%r2+36]
	ld.w	%r12,[%r2]
	ld.w	%r13,%r1
	ld.w	%r14,%r2
	ext	BulletMLAction_new@rm	; 	xcall	BulletMLAction_new
	call	BulletMLAction_new@rl
	ext	0x34		; 	xld.w	[%r2+52],%r10
	ld.w	[%r2],%r10
	ext	__LX512@rm	; 	xjp	__L512
	jp	__LX512@rl
__L531:
	ext	0x28		; 	xld.w	%r12,[%r2+40]
	ld.w	%r12,[%r2]
	ext	BulletMLNode_getName@rm	; 	xcall	BulletMLNode_getName
	call	BulletMLNode_getName@rl
	cmp	%r10,0x3	; 	xcmp	%r10,3
	jrne	__LX532		; 	xjrne	__L532
	ld.w	%r12,%sp	; 	xadd	%r12,%sp,8
	add	%r12,0x8
	ld.w	%r13,%r2
	ext	0x0		; 	xld.w	%r14,0x00000024		; 36
	ld.w	%r14,0x24
	ext	memcpy@rm	; 	xcall	memcpy
	call	memcpy@rl
	ext	0x28		; 	xld.w	%r0,[%r2+40]
	ld.w	%r0,[%r2]
	jp	__LX533		; 	xjp	__L533
__LX532:				; __L532:
	ext	0x24		; 	xld.w	%r12,[%r2+36]
	ld.w	%r12,[%r2]
	ext	BulletMLBullet_getUserFunc@rm	; 	xcall	BulletMLBullet_getUserFunc
	call	BulletMLBullet_getUserFunc@rl
	ld.w	%r0,%r10
	ext	0x24		; 	xld.w	%r12,[%r2+36]
	ld.w	%r12,[%r2]
	ext	BulletMLBullet_getUserData@rm	; 	xcall	BulletMLBullet_getUserData
	call	BulletMLBullet_getUserData@rl
	ext	0x28		; 	xld.w	%r12,[%r2+40]
	ld.w	%r12,[%r2]
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ld.w	%r13,%sp	; 	xadd	%r13,%sp,8
	add	%r13,0x8
	ld.w	%r14,%r2
	ld.w	%r15,%r0
	ext	BulletMLNode_getParams@rm	; 	xcall	BulletMLNode_getParams
	call	BulletMLNode_getParams@rl
	ext	0x28		; 	xld.w	%r12,[%r2+40]
	ld.w	%r12,[%r2]
	ext	BulletMLNode_getRef@rm	; 	xcall	BulletMLNode_getRef
	call	BulletMLNode_getRef@rl
	ld.w	%r0,%r10
__LX533:				; __L533:
	ld.w	%r12,%r0
	ld.w	%r13,0xa	; 	xld.w	%r13,0x0000000a		; 10
	ext	BulletMLNode_getChild@rm	; 	xcall	BulletMLNode_getChild
	call	BulletMLNode_getChild@rl
	ext	0x24		; 	xld.w	%r12,[%r2+36]
	ld.w	%r12,[%r2]
	ld.w	%r13,%r10
	ld.w	%r14,%sp	; 	xadd	%r14,%sp,8
	add	%r14,0x8
	ext	BulletMLBullet_calcDirection@rm	; 	xcall	BulletMLBullet_calcDirection
	call	BulletMLBullet_calcDirection@rl
	ld.w	[%sp+0xb],%r10	; 	xld.w	[%sp+44],%r10
	ld.w	%r12,%r0
	ld.w	%r13,0xb	; 	xld.w	%r13,0x0000000b		; 11
	ext	BulletMLNode_getChild@rm	; 	xcall	BulletMLNode_getChild
	call	BulletMLNode_getChild@rl
	ext	0x24		; 	xld.w	%r12,[%r2+36]
	ld.w	%r12,[%r2]
	ld.w	%r13,%r10
	ld.w	%r14,%sp	; 	xadd	%r14,%sp,8
	add	%r14,0x8
	ext	BulletMLBullet_calcSpeed@rm	; 	xcall	BulletMLBullet_calcSpeed
	call	BulletMLBullet_calcSpeed@rl
	ld.w	%r3,%r10
	ld.w	%r12,%r0
	ld.w	%r13,0x1	; 	xld.w	%r13,0x00000001		; 1
	ext	BulletMLNode_getChild@rm	; 	xcall	BulletMLNode_getChild
	call	BulletMLNode_getChild@rl
	ld.w	%r1,%r10
	cmp	%r1,0x0
	jrne	__LX534		; 	xjrne	__L534
	ld.w	%r12,%r0
	ld.w	%r13,0x10	; 	xld.w	%r13,0x00000010		; 16
	ext	BulletMLNode_getChild@rm	; 	xcall	BulletMLNode_getChild
	call	BulletMLNode_getChild@rl
	ld.w	%r1,%r10
	cmp	%r1,0x0
	jrne	__LX534		; 	xjrne	__L534
	ext	__LC3+0x0@h	; 	xld.w	%r4,__LC3
	ext	__LC3+0x0@m
	ld.w	%r4,__LC3+0x0@l
	ld.w	[%sp+0x0],%r4	; 	xld.w	[%sp],%r4
	ext	0x13		; 	xld.w	%r10,0x000004e4		; 1252
	ld.w	%r10,0x24
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX534:				; __L534:
	ext	0x24		; 	xld.w	%r12,[%r2+36]
	ld.w	%r12,[%r2]
	ext	BulletMLBullet_getUserFunc@rm	; 	xcall	BulletMLBullet_getUserFunc
	call	BulletMLBullet_getUserFunc@rl
	ld.w	%r0,%r10
	ext	0x24		; 	xld.w	%r12,[%r2+36]
	ld.w	%r12,[%r2]
	ext	BulletMLBullet_getUserData@rm	; 	xcall	BulletMLBullet_getUserData
	call	BulletMLBullet_getUserData@rl
	ld.w	[%sp+0x0],%r1	; 	xld.w	[%sp],%r1
	ld.w	%r11,%sp	; 	xadd	%r11,%sp,8
	add	%r11,0x8
	ld.w	[%sp+0x1],%r11	; 	xld.w	[%sp+4],%r11
	ld.w	%r12,%r0
	ld.w	%r13,%r10
	ld.w	%r14,[%sp+0xb]	; 	xld.w	%r14,[%sp+44]
	ld.w	%r15,%r3
	ext	BulletMLUserFunc_createBullet@rm	; 	xcall	BulletMLUserFunc_createBullet
	call	BulletMLUserFunc_createBullet@rl
	ext	__LX558@rm	; 	xjp	__L558
	jp	__LX558@rl
__L536:
	ext	0x28		; 	xld.w	%r12,[%r2+40]
	ld.w	%r12,[%r2]
	ld.w	%r13,0xe	; 	xld.w	%r13,0x0000000e		; 14
	ext	BulletMLNode_getChild@rm	; 	xcall	BulletMLNode_getChild
	call	BulletMLNode_getChild@rl
	ld.w	%r1,%r10
	cmp	%r1,0x0
	jrne	__LX537		; 	xjrne	__L537
	ext	__LC3+0x0@h	; 	xld.w	%r4,__LC3
	ext	__LC3+0x0@m
	ld.w	%r4,__LC3+0x0@l
	ld.w	[%sp+0x0],%r4	; 	xld.w	[%sp],%r4
	ext	0x13		; 	xld.w	%r10,0x000004ee		; 1262
	ld.w	%r10,0x2e
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX537:				; __L537:
	ld.w	%r12,%r1
	ext	BulletMLNode_getValue@rm	; 	xcall	BulletMLNode_getValue
	call	BulletMLNode_getValue@rl
	ld.w	%r3,%r10
	ld.w	%r0,[%r3]	; 	xld.w	%r0,[%r3]
	ext	0x24		; 	xld.w	%r12,[%r2+36]
	ld.w	%r12,[%r2]
	ext	BulletMLBullet_getUserFunc@rm	; 	xcall	BulletMLBullet_getUserFunc
	call	BulletMLBullet_getUserFunc@rl
	ld.w	%r1,%r10
	ext	0x24		; 	xld.w	%r12,[%r2+36]
	ld.w	%r12,[%r2]
	ext	BulletMLBullet_getUserData@rm	; 	xcall	BulletMLBullet_getUserData
	call	BulletMLBullet_getUserData@rl
	ext	0x4		; 	xld.w	%r11,[%r0+4]
	ld.w	%r11,[%r0]
	ld.w	%r12,%r3
	ld.w	%r13,%r2
	ld.w	%r14,%r1
	ld.w	%r15,%r10
	call	%r11
	ld.w	%r0,%r10
	sra	%r0,0x8		; 	xsra	%r0,10
	sra	%r0,0x2
	ext	0x28		; 	xld.w	%r12,[%r2+40]
	ld.w	%r12,[%r2]
	ld.w	%r13,0xa	; 	xld.w	%r13,0x0000000a		; 10
	ext	BulletMLNode_getChild@rm	; 	xcall	BulletMLNode_getChild
	call	BulletMLNode_getChild@rl
	ld.w	%r1,%r10
	cmp	%r1,0x0
	jrne	__LX539		; 	xjrne	__L539
	ext	__LC3+0x0@h	; 	xld.w	%r4,__LC3
	ext	__LC3+0x0@m
	ld.w	%r4,__LC3+0x0@l
	ld.w	[%sp+0x0],%r4	; 	xld.w	[%sp],%r4
	ext	0x13		; 	xld.w	%r10,0x000004f4		; 1268
	ld.w	%r10,0x34
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX539:				; __L539:
	ext	0x24		; 	xld.w	%r12,[%r2+36]
	ld.w	%r12,[%r2]
	ld.w	%r13,%r1
	ld.w	%r14,%r2
	ext	BulletMLBullet_calcDirection@rm	; 	xcall	BulletMLBullet_calcDirection
	call	BulletMLBullet_calcDirection@rl
	ext	0x24		; 	xld.w	%r12,[%r2+36]
	ld.w	%r12,[%r2]
	ld.w	%r13,%r10
	ld.w	%r14,%r0
	ext	BulletMLBullet_changeDirection@rm	; 	xcall	BulletMLBullet_changeDirection
	call	BulletMLBullet_changeDirection@rl
	ext	__LX558@rm	; 	xjp	__L558
	jp	__LX558@rl
__L540:
	ext	0x28		; 	xld.w	%r12,[%r2+40]
	ld.w	%r12,[%r2]
	ld.w	%r13,0xe	; 	xld.w	%r13,0x0000000e		; 14
	ext	BulletMLNode_getChild@rm	; 	xcall	BulletMLNode_getChild
	call	BulletMLNode_getChild@rl
	ld.w	%r1,%r10
	cmp	%r1,0x0
	jrne	__LX541		; 	xjrne	__L541
	ext	__LC3+0x0@h	; 	xld.w	%r4,__LC3
	ext	__LC3+0x0@m
	ld.w	%r4,__LC3+0x0@l
	ld.w	[%sp+0x0],%r4	; 	xld.w	[%sp],%r4
	ext	0x13		; 	xld.w	%r10,0x000004fd		; 1277
	ld.w	%r10,0x3d
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX541:				; __L541:
	ld.w	%r12,%r1
	ext	BulletMLNode_getValue@rm	; 	xcall	BulletMLNode_getValue
	call	BulletMLNode_getValue@rl
	ld.w	%r3,%r10
	ld.w	%r0,[%r3]	; 	xld.w	%r0,[%r3]
	ext	0x24		; 	xld.w	%r12,[%r2+36]
	ld.w	%r12,[%r2]
	ext	BulletMLBullet_getUserFunc@rm	; 	xcall	BulletMLBullet_getUserFunc
	call	BulletMLBullet_getUserFunc@rl
	ld.w	%r1,%r10
	ext	0x24		; 	xld.w	%r12,[%r2+36]
	ld.w	%r12,[%r2]
	ext	BulletMLBullet_getUserData@rm	; 	xcall	BulletMLBullet_getUserData
	call	BulletMLBullet_getUserData@rl
	ext	0x4		; 	xld.w	%r11,[%r0+4]
	ld.w	%r11,[%r0]
	ld.w	%r12,%r3
	ld.w	%r13,%r2
	ld.w	%r14,%r1
	ld.w	%r15,%r10
	call	%r11
	ld.w	%r0,%r10
	sra	%r0,0x8		; 	xsra	%r0,10
	sra	%r0,0x2
	ext	0x28		; 	xld.w	%r12,[%r2+40]
	ld.w	%r12,[%r2]
	ld.w	%r13,0xb	; 	xld.w	%r13,0x0000000b		; 11
	ext	BulletMLNode_getChild@rm	; 	xcall	BulletMLNode_getChild
	call	BulletMLNode_getChild@rl
	ld.w	%r1,%r10
	cmp	%r1,0x0
	jrne	__LX543		; 	xjrne	__L543
	ext	__LC3+0x0@h	; 	xld.w	%r4,__LC3
	ext	__LC3+0x0@m
	ld.w	%r4,__LC3+0x0@l
	ld.w	[%sp+0x0],%r4	; 	xld.w	[%sp],%r4
	ext	0x14		; 	xld.w	%r10,0x00000503		; 1283
	ld.w	%r10,0x3
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX543:				; __L543:
	ext	0x24		; 	xld.w	%r12,[%r2+36]
	ld.w	%r12,[%r2]
	ld.w	%r13,%r1
	ld.w	%r14,%r2
	ext	BulletMLBullet_calcSpeed@rm	; 	xcall	BulletMLBullet_calcSpeed
	call	BulletMLBullet_calcSpeed@rl
	ext	0x24		; 	xld.w	%r12,[%r2+36]
	ld.w	%r12,[%r2]
	ld.w	%r13,%r10
	ld.w	%r14,%r0
	ext	BulletMLBullet_changeSpeed@rm	; 	xcall	BulletMLBullet_changeSpeed
	call	BulletMLBullet_changeSpeed@rl
	ext	__LX558@rm	; 	xjp	__L558
	jp	__LX558@rl
__L544:
	ext	0x28		; 	xld.w	%r12,[%r2+40]
	ld.w	%r12,[%r2]
	ld.w	%r13,0xe	; 	xld.w	%r13,0x0000000e		; 14
	ext	BulletMLNode_getChild@rm	; 	xcall	BulletMLNode_getChild
	call	BulletMLNode_getChild@rl
	ld.w	%r1,%r10
	cmp	%r1,0x0
	jrne	__LX545		; 	xjrne	__L545
	ext	__LC3+0x0@h	; 	xld.w	%r4,__LC3
	ext	__LC3+0x0@m
	ld.w	%r4,__LC3+0x0@l
	ld.w	[%sp+0x0],%r4	; 	xld.w	[%sp],%r4
	ext	0x14		; 	xld.w	%r10,0x0000050c		; 1292
	ld.w	%r10,0xc
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX545:				; __L545:
	ld.w	%r12,%r1
	ext	BulletMLNode_getValue@rm	; 	xcall	BulletMLNode_getValue
	call	BulletMLNode_getValue@rl
	ld.w	%r3,%r10
	ld.w	%r0,[%r3]	; 	xld.w	%r0,[%r3]
	ext	0x24		; 	xld.w	%r12,[%r2+36]
	ld.w	%r12,[%r2]
	ext	BulletMLBullet_getUserFunc@rm	; 	xcall	BulletMLBullet_getUserFunc
	call	BulletMLBullet_getUserFunc@rl
	ld.w	%r1,%r10
	ext	0x24		; 	xld.w	%r12,[%r2+36]
	ld.w	%r12,[%r2]
	ext	BulletMLBullet_getUserData@rm	; 	xcall	BulletMLBullet_getUserData
	call	BulletMLBullet_getUserData@rl
	ext	0x4		; 	xld.w	%r11,[%r0+4]
	ld.w	%r11,[%r0]
	ld.w	%r12,%r3
	ld.w	%r13,%r2
	ld.w	%r14,%r1
	ld.w	%r15,%r10
	call	%r11
	ld.w	%r0,%r10
	sra	%r0,0x8		; 	xsra	%r0,10
	sra	%r0,0x2
	ext	0x28		; 	xld.w	%r12,[%r2+40]
	ld.w	%r12,[%r2]
	ld.w	%r13,0xc	; 	xld.w	%r13,0x0000000c		; 12
	ext	BulletMLNode_getChild@rm	; 	xcall	BulletMLNode_getChild
	call	BulletMLNode_getChild@rl
	ld.w	%r1,%r10
	cmp	%r1,0x0
	jreq	__LX547		; 	xjreq	__L547
	ext	0x24		; 	xld.w	%r12,[%r2+36]
	ld.w	%r12,[%r2]
	ld.w	%r13,%r1
	ld.w	%r14,%r2
	ext	BulletMLBullet_calcAccelH@rm	; 	xcall	BulletMLBullet_calcAccelH
	call	BulletMLBullet_calcAccelH@rl
	ext	0x24		; 	xld.w	%r12,[%r2+36]
	ld.w	%r12,[%r2]
	ld.w	%r13,%r10
	ld.w	%r14,%r0
	ext	BulletMLBullet_changeAccelH@rm	; 	xcall	BulletMLBullet_changeAccelH
	call	BulletMLBullet_changeAccelH@rl
__LX547:				; __L547:
	ext	0x28		; 	xld.w	%r12,[%r2+40]
	ld.w	%r12,[%r2]
	ld.w	%r13,0xd	; 	xld.w	%r13,0x0000000d		; 13
	ext	BulletMLNode_getChild@rm	; 	xcall	BulletMLNode_getChild
	call	BulletMLNode_getChild@rl
	ld.w	%r1,%r10
	cmp	%r1,0x0
	jreq	__LX558		; 	xjreq	__L558
	ext	0x24		; 	xld.w	%r12,[%r2+36]
	ld.w	%r12,[%r2]
	ld.w	%r13,%r1
	ld.w	%r14,%r2
	ext	BulletMLBullet_calcAccelV@rm	; 	xcall	BulletMLBullet_calcAccelV
	call	BulletMLBullet_calcAccelV@rl
	ext	0x24		; 	xld.w	%r12,[%r2+36]
	ld.w	%r12,[%r2]
	ld.w	%r13,%r10
	ld.w	%r14,%r0
	ext	BulletMLBullet_changeAccelV@rm	; 	xcall	BulletMLBullet_changeAccelV
	call	BulletMLBullet_changeAccelV@rl
	jp	__LX558		; 	xjp	__L558
__L549:
	ext	0x28		; 	xld.w	%r12,[%r2+40]
	ld.w	%r12,[%r2]
	ext	BulletMLNode_getValue@rm	; 	xcall	BulletMLNode_getValue
	call	BulletMLNode_getValue@rl
	ld.w	%r3,%r10
	ld.w	%r0,[%r3]	; 	xld.w	%r0,[%r3]
	ext	0x24		; 	xld.w	%r12,[%r2+36]
	ld.w	%r12,[%r2]
	ext	BulletMLBullet_getUserFunc@rm	; 	xcall	BulletMLBullet_getUserFunc
	call	BulletMLBullet_getUserFunc@rl
	ld.w	%r1,%r10
	ext	0x24		; 	xld.w	%r12,[%r2+36]
	ld.w	%r12,[%r2]
	ext	BulletMLBullet_getUserData@rm	; 	xcall	BulletMLBullet_getUserData
	call	BulletMLBullet_getUserData@rl
	ext	0x4		; 	xld.w	%r11,[%r0+4]
	ld.w	%r11,[%r0]
	ld.w	%r12,%r3
	ld.w	%r13,%r2
	ld.w	%r14,%r1
	ld.w	%r15,%r10
	call	%r11
	sra	%r10,0x8	; 	xsra	%r10,10
	sra	%r10,0x2
	ext	0x2c		; 	xld.w	[%r2+44],%r10
	ld.w	[%r2],%r10
	jp	__LX558		; 	xjp	__L558
__L551:
	ext	0x24		; 	xld.w	%r12,[%r2+36]
	ld.w	%r12,[%r2]
	ext	BulletMLBullet_getUserFunc@rm	; 	xcall	BulletMLBullet_getUserFunc
	call	BulletMLBullet_getUserFunc@rl
	ld.w	%r0,%r10
	ext	0x24		; 	xld.w	%r12,[%r2+36]
	ld.w	%r12,[%r2]
	ext	BulletMLBullet_getUserData@rm	; 	xcall	BulletMLBullet_getUserData
	call	BulletMLBullet_getUserData@rl
	ld.w	%r12,%r0
	ld.w	%r13,%r10
	ext	BulletMLUserFunc_vanish@rm	; 	xcall	BulletMLUserFunc_vanish
	call	BulletMLUserFunc_vanish@rl
	jp	__LX558		; 	xjp	__L558
__L553:
	ext	0x24		; 	xld.w	%r12,[%r2+36]
	ld.w	%r12,[%r2]
	ext	0x28		; 	xld.w	%r13,[%r2+40]
	ld.w	%r13,[%r2]
	ld.w	%r14,%r2
	ext	BulletMLAction_new@rm	; 	xcall	BulletMLAction_new
	call	BulletMLAction_new@rl
	ext	0x34		; 	xld.w	[%r2+52],%r10
	ld.w	[%r2],%r10
__LX558:				; __L558:
	ext	0x28		; 	xld.w	%r12,[%r2+40]
	ld.w	%r12,[%r2]
	ext	BulletMLNode_nextSibling@rm	; 	xcall	BulletMLNode_nextSibling
	call	BulletMLNode_nextSibling@rl
	ext	0x28		; 	xld.w	[%r2+40],%r10
	ld.w	[%r2],%r10
	ext	__LX512@rm	; 	xjp	__L512
	jp	__LX512@rl
__L554:
	ext	__LC3+0x0@h	; 	xld.w	%r4,__LC3
	ext	__LC3+0x0@m
	ld.w	%r4,__LC3+0x0@l
	ld.w	[%sp+0x0],%r4	; 	xld.w	[%sp],%r4
	ext	0x14		; 	xld.w	%r10,0x0000052b		; 1323
	ld.w	%r10,0x2b
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX556:				; __L556:
	add	%sp,0xc		; 	xadd	%sp,%sp,48
	popn	%r3
	ret
	.global	_BulletMLValue_vtbl
	.code
	.align	2
_BulletMLValue_vtbl:
	.word	_BulletMLValue_destruct
	.word	0
	.word	0
	.code
	.align	1
	.global	BulletMLValue_delete
BulletMLValue_delete:
;	.frame	%sp,8,$31		# vars= 0, regs= 2/0, args= 0, extra= 0
;	.mask	0x80010000,-4
;	.fmask	0x00000000,0
	pushn	%r0
	ld.w	%r0,%r12
	cmp	%r0,0x0
	jreq	__LX560		; 	xjreq	__L560
	ld.w	%r10,[%r0]	; 	xld.w	%r10,[%r0]
	ld.w	%r10,[%r10]	; 	xld.w	%r10,[%r10]
	call	%r10
	ld.w	%r12,%r0
	ext	free@rm		; 	xcall	free
	call	free@rl
__LX560:				; __L560:
	popn	%r0
	ret
	.align	1
	.global	_BulletMLValue_construct
_BulletMLValue_construct:
;	.frame	%sp,4,$31		# vars= 0, regs= 1/0, args= 0, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	ext	_BulletMLValue_vtbl+0x0@h	; 	xld.w	%r10,_BulletMLValue_vtbl
	ext	_BulletMLValue_vtbl+0x0@m
	ld.w	%r10,_BulletMLValue_vtbl+0x0@l
	ld.w	[%r12],%r10	; 	xld.w	[%r12],%r10
	ret
	.align	1
	.global	_BulletMLValue_destruct
_BulletMLValue_destruct:
;	.frame	%sp,4,$31		# vars= 0, regs= 1/0, args= 0, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	ret
	.global	_BulletMLNumber_vtbl
	.code
	.align	2
_BulletMLNumber_vtbl:
	.word	_BulletMLNumber_destruct
	.word	_BulletMLNumber_calc
	.word	_BulletMLNumber_dump
	.code
	.align	1
	.global	BulletMLNumber_new
BulletMLNumber_new:
;	.frame	%sp,20,$31		# vars= 0, regs= 3/0, args= 8, extra= 0
;	.mask	0x80030000,-4
;	.fmask	0x00000000,0
	pushn	%r1
	sub	%sp,0x2		; 	xsub	%sp,%sp,8
	ld.w	%r1,%r12
	ld.w	%r12,0x1	; 	xld.w	%r12,0x00000001		; 1
	ld.w	%r13,0x8	; 	xld.w	%r13,0x00000008		; 8
	ext	calloc@rm	; 	xcall	calloc
	call	calloc@rl
	ld.w	%r0,%r10
	cmp	%r0,0x0
	jrne	__LX564		; 	xjrne	__L564
	ext	__LC3+0x0@h	; 	xld.w	%r10,__LC3
	ext	__LC3+0x0@m
	ld.w	%r10,__LC3+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	0x15		; 	xld.w	%r10,0x00000566		; 1382
	ld.w	%r10,0x26
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX564:				; __L564:
	ld.w	%r12,%r0
	ld.w	%r13,%r1
	call	_BulletMLNumber_construct	; 	xcall	_BulletMLNumber_construct
	ld.w	%r10,%r0
	add	%sp,0x2		; 	xadd	%sp,%sp,8
	popn	%r1
	ret
	.align	1
	.global	BulletMLNumber_delete
BulletMLNumber_delete:
;	.frame	%sp,8,$31		# vars= 0, regs= 2/0, args= 0, extra= 0
;	.mask	0x80010000,-4
;	.fmask	0x00000000,0
	pushn	%r0
	ld.w	%r0,%r12
	cmp	%r0,0x0
	jreq	__LX566		; 	xjreq	__L566
	ld.w	%r10,[%r0]	; 	xld.w	%r10,[%r0]
	ld.w	%r10,[%r10]	; 	xld.w	%r10,[%r10]
	call	%r10
	ld.w	%r12,%r0
	ext	free@rm		; 	xcall	free
	call	free@rl
__LX566:				; __L566:
	popn	%r0
	ret
	.align	1
	.global	_BulletMLNumber_construct
_BulletMLNumber_construct:
;	.frame	%sp,12,$31		# vars= 0, regs= 3/0, args= 0, extra= 0
;	.mask	0x80030000,-4
;	.fmask	0x00000000,0
	pushn	%r1
	ld.w	%r1,%r12
	ld.w	%r0,%r13
	call	_BulletMLValue_construct	; 	xcall	_BulletMLValue_construct
	ext	_BulletMLNumber_vtbl+0x0@h	; 	xld.w	%r10,_BulletMLNumber_vtbl
	ext	_BulletMLNumber_vtbl+0x0@m
	ld.w	%r10,_BulletMLNumber_vtbl+0x0@l
	ld.w	[%r1],%r10	; 	xld.w	[%r1],%r10
	ld.w	%r12,[%r0]	; 	xld.w	%r12,[%r0]
	ld.w	%r13,%r0
	ext	strtod@rm	; 	xcall	strtod
	call	strtod@rl
	ld.w	%r12,%r10
	ld.w	%r13,%r11
	ld.w	%r14,0x0	; 	xld.w	%r14,0x00000000		; double 1.02400000000000000000e3
	ext	0x812		; 	xld.w	%r15,0x40900000		;
	ext	0x0
	ld.w	%r15,0x0
	ext	__muldf3@rm	; 	xcall	__muldf3
	call	__muldf3@rl
	ld.w	%r12,%r10
	ld.w	%r13,%r11
	ext	__fixdfsi@rm	; 	xcall	__fixdfsi
	call	__fixdfsi@rl
	ext	0x4		; 	xld.w	[%r1+4],%r10
	ld.w	[%r1],%r10
	popn	%r1
	ret
	.align	1
	.global	_BulletMLNumber_destruct
_BulletMLNumber_destruct:
;	.frame	%sp,4,$31		# vars= 0, regs= 1/0, args= 0, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	call	_BulletMLValue_destruct	; 	xcall	_BulletMLValue_destruct
	ret
	.align	1
	.global	_BulletMLNumber_calc
_BulletMLNumber_calc:
;	.frame	%sp,4,$31		# vars= 0, regs= 1/0, args= 0, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	ext	0x4		; 	xld.w	%r10,[%r12+4]
	ld.w	%r10,[%r12]
	ret
	.code
	.align	2
__LC38:
	.ascii	"%f\000"
	.code
	.align	1
	.global	_BulletMLNumber_dump
_BulletMLNumber_dump:
;	.frame	%sp,16,$31		# vars= 0, regs= 1/0, args= 12, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	sub	%sp,0x3		; 	xsub	%sp,%sp,12
	ext	0x4		; 	xld.w	%r12,[%r12+4]
	ld.w	%r12,[%r12]
	ext	__floatsisf@rm	; 	xcall	__floatsisf
	call	__floatsisf@rl
	ld.w	%r12,%r10
	ext	0x890		; 	xld.w	%r13,0x44800000		; 1.02400000000000000000e3
	ext	0x0
	ld.w	%r13,0x0
	ext	__divsf3@rm	; 	xcall	__divsf3
	call	__divsf3@rl
	ld.w	%r12,%r10
	ext	__extendsfdf2@rm	; 	xcall	__extendsfdf2
	call	__extendsfdf2@rl
	ext	__LC38+0x0@h	; 	xld.w	%r12,__LC38
	ext	__LC38+0x0@m
	ld.w	%r12,__LC38+0x0@l
	ld.w	[%sp+0x0],%r12	; 	xld.w	[%sp],%r12
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ld.w	[%sp+0x2],%r11	; 	xld.w	[%sp+8],%r11
	ext	printf@rm	; 	xcall	printf
	call	printf@rl
	add	%sp,0x3		; 	xadd	%sp,%sp,12
	ret
	.global	_BulletMLVar_vtbl
	.code
	.align	2
_BulletMLVar_vtbl:
	.word	_BulletMLVar_destruct
	.word	_BulletMLVar_calc
	.word	_BulletMLVar_dump
	.code
	.align	1
	.global	BulletMLVar_new
BulletMLVar_new:
;	.frame	%sp,20,$31		# vars= 0, regs= 3/0, args= 8, extra= 0
;	.mask	0x80030000,-4
;	.fmask	0x00000000,0
	pushn	%r1
	sub	%sp,0x2		; 	xsub	%sp,%sp,8
	ld.w	%r1,%r12
	ld.w	%r12,0x1	; 	xld.w	%r12,0x00000001		; 1
	ld.w	%r13,0x8	; 	xld.w	%r13,0x00000008		; 8
	ext	calloc@rm	; 	xcall	calloc
	call	calloc@rl
	ld.w	%r0,%r10
	cmp	%r0,0x0
	jrne	__LX575		; 	xjrne	__L575
	ext	__LC3+0x0@h	; 	xld.w	%r10,__LC3
	ext	__LC3+0x0@m
	ld.w	%r10,__LC3+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	0x16		; 	xld.w	%r10,0x000005a3		; 1443
	ld.w	%r10,0x23
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX575:				; __L575:
	ld.w	%r12,%r0
	ld.w	%r13,%r1
	call	_BulletMLVar_construct	; 	xcall	_BulletMLVar_construct
	ld.w	%r10,%r0
	add	%sp,0x2		; 	xadd	%sp,%sp,8
	popn	%r1
	ret
	.align	1
	.global	BulletMLVar_delete
BulletMLVar_delete:
;	.frame	%sp,8,$31		# vars= 0, regs= 2/0, args= 0, extra= 0
;	.mask	0x80010000,-4
;	.fmask	0x00000000,0
	pushn	%r0
	ld.w	%r0,%r12
	cmp	%r0,0x0
	jreq	__LX577		; 	xjreq	__L577
	ld.w	%r10,[%r0]	; 	xld.w	%r10,[%r0]
	ld.w	%r10,[%r10]	; 	xld.w	%r10,[%r10]
	call	%r10
	ld.w	%r12,%r0
	ext	free@rm		; 	xcall	free
	call	free@rl
__LX577:				; __L577:
	popn	%r0
	ret
	.code
	.align	2
__LC39:
	.ascii	"rand\000"
	.align	2
__LC40:
	.ascii	"rank\000"
	.code
	.align	1
	.global	_BulletMLVar_construct
_BulletMLVar_construct:
;	.frame	%sp,24,$31		# vars= 0, regs= 4/0, args= 8, extra= 0
;	.mask	0x80070000,-4
;	.fmask	0x00000000,0
	pushn	%r2
	sub	%sp,0x2		; 	xsub	%sp,%sp,8
	ld.w	%r1,%r12
	ld.w	%r2,%r13
	ext	_BulletMLValue_construct@rm	; 	xcall	_BulletMLValue_construct
	call	_BulletMLValue_construct@rl
	ext	_BulletMLVar_vtbl+0x0@h	; 	xld.w	%r10,_BulletMLVar_vtbl
	ext	_BulletMLVar_vtbl+0x0@m
	ld.w	%r10,_BulletMLVar_vtbl+0x0@l
	ld.w	[%r1],%r10	; 	xld.w	[%r1],%r10
	ld.w	%r0,[%r2]	; 	xld.w	%r0,[%r2]
	ld.b	%r10,[%r0]	; 	xld.b	%r10,[%r0]
	ext	0x0		; 	xcmp	%r10,36
	cmp	%r10,0x24
	jreq	__LX580		; 	xjreq	__L580
	ext	__LC3+0x0@h	; 	xld.w	%r10,__LC3
	ext	__LC3+0x0@m
	ld.w	%r10,__LC3+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	0x16		; 	xld.w	%r10,0x000005bb		; 1467
	ld.w	%r10,0x3b
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX580:				; __L580:
	add	%r0,0x1		; 	xadd	%r0,%r0,1
	ld.ub	%r11,[%r0]	; 	xld.ub	%r11,[%r0]
	ext	0x31		; 	xsub	%r10,%r11,49
	sub	%r10,%r11
	ld.ub	%r10,%r10
	cmp	%r10,0x8	; 	xcmp	%r10,8
	jrugt	__LX581		; 	xjrugt	__L581
	ld.b	%r10,%r11
	sub	%r10,0x31	; 	xsub	%r10,%r10,49
	ext	0x4		; 	xld.w	[%r1+4],%r10
	ld.w	[%r1],%r10
	add	%r0,0x1		; 	xadd	%r0,%r0,1
	jp	__LX582		; 	xjp	__L582
__LX581:				; __L581:
	ld.w	%r12,%r0
	ext	__LC39+0x0@h	; 	xld.w	%r13,__LC39
	ext	__LC39+0x0@m
	ld.w	%r13,__LC39+0x0@l
	ld.w	%r14,0x4	; 	xld.w	%r14,0x00000004		; 4
	ext	strncmp@rm	; 	xcall	strncmp
	call	strncmp@rl
	cmp	%r10,0x0
	jrne	__LX583		; 	xjrne	__L583
	ld.w	%r10,0x3f	; 	xld.w	%r10,-1			; 0xffffffff
	jp	__LX587		; 	xjp	__L587
__LX583:				; __L583:
	ld.w	%r12,%r0
	ext	__LC40+0x0@h	; 	xld.w	%r13,__LC40
	ext	__LC40+0x0@m
	ld.w	%r13,__LC40+0x0@l
	ld.w	%r14,0x4	; 	xld.w	%r14,0x00000004		; 4
	ext	strncmp@rm	; 	xcall	strncmp
	call	strncmp@rl
	cmp	%r10,0x0
	jrne	__LX585		; 	xjrne	__L585
	ld.w	%r10,0x3e	; 	xld.w	%r10,-2			; 0xfffffffe
__LX587:				; __L587:
	ext	0x4		; 	xld.w	[%r1+4],%r10
	ld.w	[%r1],%r10
	add	%r0,0x4		; 	xadd	%r0,%r0,4
	jp	__LX582		; 	xjp	__L582
__LX585:				; __L585:
	ext	__LC3+0x0@h	; 	xld.w	%r10,__LC3
	ext	__LC3+0x0@m
	ld.w	%r10,__LC3+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	0x17		; 	xld.w	%r10,0x000005c8		; 1480
	ld.w	%r10,0x8
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX582:				; __L582:
	ld.w	[%r2],%r0	; 	xld.w	[%r2],%r0
	add	%sp,0x2		; 	xadd	%sp,%sp,8
	popn	%r2
	ret
	.align	1
	.global	_BulletMLVar_destruct
_BulletMLVar_destruct:
;	.frame	%sp,4,$31		# vars= 0, regs= 1/0, args= 0, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	ext	_BulletMLValue_destruct@rm	; 	xcall	_BulletMLValue_destruct
	call	_BulletMLValue_destruct@rl
	ret
	.align	1
	.global	_BulletMLVar_calc
_BulletMLVar_calc:
;	.frame	%sp,4,$31		# vars= 0, regs= 1/0, args= 0, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	ld.w	%r11,%r13
	ld.w	%r13,%r15
	ext	0x4		; 	xld.w	%r10,[%r12+4]
	ld.w	%r10,[%r12]
	cmp	%r10,0x3e	; 	xcmp	%r10,-2
	jreq	__LX593		; 	xjreq	__L593
	cmp	%r10,0x3f	; 	xcmp	%r10,-1
	jrne	__LX594		; 	xjrne	__L594
	ld.w	%r12,%r14
	ext	BulletMLUserFunc_getRand@rm	; 	xcall	BulletMLUserFunc_getRand
	call	BulletMLUserFunc_getRand@rl
	jp	__LX596		; 	xjp	__L596
__LX593:				; __L593:
	ld.w	%r12,%r14
	ext	BulletMLUserFunc_getRank@rm	; 	xcall	BulletMLUserFunc_getRank
	call	BulletMLUserFunc_getRank@rl
	jp	__LX596		; 	xjp	__L596
__LX594:				; __L594:
	sll	%r10,0x2	; 	xsll	%r10,2
	add	%r10,%r11
	ld.w	%r10,[%r10]	; 	xld.w	%r10,[%r10]
__LX596:				; __L596:
	ret
	.code
	.align	2
__LC41:
	.ascii	"$rand\000"
	.align	2
__LC42:
	.ascii	"$rank\000"
	.align	2
__LC43:
	.ascii	"$%c\000"
	.code
	.align	1
	.global	_BulletMLVar_dump
_BulletMLVar_dump:
;	.frame	%sp,12,$31		# vars= 0, regs= 1/0, args= 8, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	sub	%sp,0x2		; 	xsub	%sp,%sp,8
	ext	0x4		; 	xld.w	%r10,[%r12+4]
	ld.w	%r10,[%r12]
	cmp	%r10,0x3e	; 	xcmp	%r10,-2
	jreq	__LX600		; 	xjreq	__L600
	cmp	%r10,0x3f	; 	xcmp	%r10,-1
	jrne	__LX601		; 	xjrne	__L601
	ext	__LC41+0x0@h	; 	xld.w	%r10,__LC41
	ext	__LC41+0x0@m
	ld.w	%r10,__LC41+0x0@l
	jp	__LX603		; 	xjp	__L603
__LX600:				; __L600:
	ext	__LC42+0x0@h	; 	xld.w	%r10,__LC42
	ext	__LC42+0x0@m
	ld.w	%r10,__LC42+0x0@l
__LX603:				; __L603:
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	printf@rm	; 	xcall	printf
	call	printf@rl
	jp	__LX598		; 	xjp	__L598
__LX601:				; __L601:
	ext	__LC43+0x0@h	; 	xld.w	%r10,__LC43
	ext	__LC43+0x0@m
	ld.w	%r10,__LC43+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	0x4		; 	xld.w	%r10,[%r12+4]
	ld.w	%r10,[%r12]
	add	%r10,0x31	; 	xadd	%r10,%r10,49
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	printf@rm	; 	xcall	printf
	call	printf@rl
__LX598:				; __L598:
	add	%sp,0x2		; 	xadd	%sp,%sp,8
	ret
	.global	_BulletMLUnExpr_vtbl
	.code
	.align	2
_BulletMLUnExpr_vtbl:
	.word	_BulletMLUnExpr_destruct
	.word	_BulletMLUnExpr_calc
	.word	_BulletMLUnExpr_dump
	.code
	.align	1
	.global	BulletMLUnExpr_new
BulletMLUnExpr_new:
;	.frame	%sp,24,$31		# vars= 0, regs= 4/0, args= 8, extra= 0
;	.mask	0x80070000,-4
;	.fmask	0x00000000,0
	pushn	%r2
	sub	%sp,0x2		; 	xsub	%sp,%sp,8
	ld.w	%r1,%r12
	ld.w	%r2,%r13
	ld.w	%r12,0x1	; 	xld.w	%r12,0x00000001		; 1
	ld.w	%r13,0xc	; 	xld.w	%r13,0x0000000c		; 12
	ext	calloc@rm	; 	xcall	calloc
	call	calloc@rl
	ld.w	%r0,%r10
	cmp	%r0,0x0
	jrne	__LX605		; 	xjrne	__L605
	ext	__LC3+0x0@h	; 	xld.w	%r10,__LC3
	ext	__LC3+0x0@m
	ld.w	%r10,__LC3+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	0x18		; 	xld.w	%r10,0x00000604		; 1540
	ld.w	%r10,0x4
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX605:				; __L605:
	ld.w	%r12,%r0
	ld.w	%r13,%r1
	ld.w	%r14,%r2
	call	_BulletMLUnExpr_construct	; 	xcall	_BulletMLUnExpr_construct
	ld.w	%r10,%r0
	add	%sp,0x2		; 	xadd	%sp,%sp,8
	popn	%r2
	ret
	.align	1
	.global	BulletMLUnExpr_delete
BulletMLUnExpr_delete:
;	.frame	%sp,8,$31		# vars= 0, regs= 2/0, args= 0, extra= 0
;	.mask	0x80010000,-4
;	.fmask	0x00000000,0
	pushn	%r0
	ld.w	%r0,%r12
	cmp	%r0,0x0
	jreq	__LX607		; 	xjreq	__L607
	ld.w	%r10,[%r0]	; 	xld.w	%r10,[%r0]
	ld.w	%r10,[%r10]	; 	xld.w	%r10,[%r10]
	call	%r10
	ld.w	%r12,%r0
	ext	free@rm		; 	xcall	free
	call	free@rl
__LX607:				; __L607:
	popn	%r0
	ret
	.align	1
	.global	_BulletMLUnExpr_construct
_BulletMLUnExpr_construct:
;	.frame	%sp,16,$31		# vars= 0, regs= 4/0, args= 0, extra= 0
;	.mask	0x80070000,-4
;	.fmask	0x00000000,0
	pushn	%r2
	ld.w	%r0,%r12
	ld.w	%r1,%r13
	ld.w	%r2,%r14
	ext	_BulletMLValue_construct@rm	; 	xcall	_BulletMLValue_construct
	call	_BulletMLValue_construct@rl
	ext	_BulletMLUnExpr_vtbl+0x0@h	; 	xld.w	%r10,_BulletMLUnExpr_vtbl
	ext	_BulletMLUnExpr_vtbl+0x0@m
	ld.w	%r10,_BulletMLUnExpr_vtbl+0x0@l
	ld.w	[%r0],%r10	; 	xld.w	[%r0],%r10
	ext	0x4		; 	xld.w	[%r0+4],%r1
	ld.w	[%r0],%r1
	ext	0x8		; 	xld.w	[%r0+8],%r2
	ld.w	[%r0],%r2
	popn	%r2
	ret
	.align	1
	.global	_BulletMLUnExpr_destruct
_BulletMLUnExpr_destruct:
;	.frame	%sp,8,$31		# vars= 0, regs= 2/0, args= 0, extra= 0
;	.mask	0x80010000,-4
;	.fmask	0x00000000,0
	pushn	%r0
	ld.w	%r0,%r12
	ext	0x8		; 	xld.w	%r12,[%r0+8]
	ld.w	%r12,[%r0]
	ext	BulletMLValue_delete@rm	; 	xcall	BulletMLValue_delete
	call	BulletMLValue_delete@rl
	ld.w	%r12,%r0
	ext	_BulletMLValue_destruct@rm	; 	xcall	_BulletMLValue_destruct
	call	_BulletMLValue_destruct@rl
	popn	%r0
	ret
	.align	1
	.global	_BulletMLUnExpr_calc
_BulletMLUnExpr_calc:
;	.frame	%sp,16,$31		# vars= 0, regs= 2/0, args= 8, extra= 0
;	.mask	0x80010000,-4
;	.fmask	0x00000000,0
	pushn	%r0
	sub	%sp,0x2		; 	xsub	%sp,%sp,8
	ld.w	%r0,%r12
	ext	0x8		; 	xld.w	%r12,[%r0+8]
	ld.w	%r12,[%r0]
	ld.w	%r10,[%r12]	; 	xld.w	%r10,[%r12]
	ext	0x4		; 	xld.w	%r10,[%r10+4]
	ld.w	%r10,[%r10]
	call	%r10
	ld.w	%r11,%r10
	ext	0x4		; 	xld.w	%r10,[%r0+4]
	ld.w	%r10,[%r0]
	ext	0x0		; 	xcmp	%r10,45
	cmp	%r10,0x2d
	jrne	__LX616		; 	xjrne	__L616
	not	%r10,%r11
	add	%r10,1
	jp	__LX618		; 	xjp	__L618
__LX616:				; __L616:
	ext	__LC3+0x0@h	; 	xld.w	%r10,__LC3
	ext	__LC3+0x0@m
	ld.w	%r10,__LC3+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	0x18		; 	xld.w	%r10,0x0000062e		; 1582
	ld.w	%r10,0x2e
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX618:				; __L618:
	add	%sp,0x2		; 	xadd	%sp,%sp,8
	popn	%r0
	ret
	.code
	.align	2
__LC44:
	.ascii	"%c\000"
	.code
	.align	1
	.global	_BulletMLUnExpr_dump
_BulletMLUnExpr_dump:
;	.frame	%sp,16,$31		# vars= 0, regs= 2/0, args= 8, extra= 0
;	.mask	0x80010000,-4
;	.fmask	0x00000000,0
	pushn	%r0
	sub	%sp,0x2		; 	xsub	%sp,%sp,8
	ld.w	%r0,%r12
	ext	__LC44+0x0@h	; 	xld.w	%r10,__LC44
	ext	__LC44+0x0@m
	ld.w	%r10,__LC44+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	0x4		; 	xld.w	%r10,[%r0+4]
	ld.w	%r10,[%r0]
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	printf@rm	; 	xcall	printf
	call	printf@rl
	ext	0x8		; 	xld.w	%r12,[%r0+8]
	ld.w	%r12,[%r0]
	ld.w	%r10,[%r12]	; 	xld.w	%r10,[%r12]
	ext	0x8		; 	xld.w	%r10,[%r10+8]
	ld.w	%r10,[%r10]
	call	%r10
	add	%sp,0x2		; 	xadd	%sp,%sp,8
	popn	%r0
	ret
	.global	_BulletMLBinExpr_vtbl
	.code
	.align	2
_BulletMLBinExpr_vtbl:
	.word	_BulletMLBinExpr_destruct
	.word	_BulletMLBinExpr_calc
	.word	_BulletMLBinExpr_dump
	.code
	.align	1
	.global	BulletMLBinExpr_new
BulletMLBinExpr_new:
;	.frame	%sp,28,$31		# vars= 0, regs= 5/0, args= 8, extra= 0
;	.mask	0x800f0000,-4
;	.fmask	0x00000000,0
	pushn	%r3
	sub	%sp,0x2		; 	xsub	%sp,%sp,8
	ld.w	%r1,%r12
	ld.w	%r2,%r13
	ld.w	%r3,%r14
	ld.w	%r12,0x1	; 	xld.w	%r12,0x00000001		; 1
	ld.w	%r13,0x10	; 	xld.w	%r13,0x00000010		; 16
	ext	calloc@rm	; 	xcall	calloc
	call	calloc@rl
	ld.w	%r0,%r10
	cmp	%r0,0x0
	jrne	__LX621		; 	xjrne	__L621
	ext	__LC3+0x0@h	; 	xld.w	%r10,__LC3
	ext	__LC3+0x0@m
	ld.w	%r10,__LC3+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	0x19		; 	xld.w	%r10,0x0000064c		; 1612
	ld.w	%r10,0xc
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX621:				; __L621:
	ld.w	%r12,%r0
	ld.w	%r13,%r1
	ld.w	%r14,%r2
	ld.w	%r15,%r3
	call	_BulletMLBinExpr_construct	; 	xcall	_BulletMLBinExpr_construct
	ld.w	%r10,%r0
	add	%sp,0x2		; 	xadd	%sp,%sp,8
	popn	%r3
	ret
	.align	1
	.global	BulletMLBinExpr_delete
BulletMLBinExpr_delete:
;	.frame	%sp,8,$31		# vars= 0, regs= 2/0, args= 0, extra= 0
;	.mask	0x80010000,-4
;	.fmask	0x00000000,0
	pushn	%r0
	ld.w	%r0,%r12
	cmp	%r0,0x0
	jreq	__LX623		; 	xjreq	__L623
	ld.w	%r10,[%r0]	; 	xld.w	%r10,[%r0]
	ld.w	%r10,[%r10]	; 	xld.w	%r10,[%r10]
	call	%r10
	ld.w	%r12,%r0
	ext	free@rm		; 	xcall	free
	call	free@rl
__LX623:				; __L623:
	popn	%r0
	ret
	.align	1
	.global	_BulletMLBinExpr_construct
_BulletMLBinExpr_construct:
;	.frame	%sp,20,$31		# vars= 0, regs= 5/0, args= 0, extra= 0
;	.mask	0x800f0000,-4
;	.fmask	0x00000000,0
	pushn	%r3
	ld.w	%r0,%r12
	ld.w	%r1,%r13
	ld.w	%r2,%r14
	ld.w	%r3,%r15
	ext	_BulletMLValue_construct@rm	; 	xcall	_BulletMLValue_construct
	call	_BulletMLValue_construct@rl
	ext	_BulletMLBinExpr_vtbl+0x0@h	; 	xld.w	%r10,_BulletMLBinExpr_vtbl
	ext	_BulletMLBinExpr_vtbl+0x0@m
	ld.w	%r10,_BulletMLBinExpr_vtbl+0x0@l
	ld.w	[%r0],%r10	; 	xld.w	[%r0],%r10
	ext	0x4		; 	xld.w	[%r0+4],%r1
	ld.w	[%r0],%r1
	ext	0x8		; 	xld.w	[%r0+8],%r2
	ld.w	[%r0],%r2
	ext	0xc		; 	xld.w	[%r0+12],%r3
	ld.w	[%r0],%r3
	popn	%r3
	ret
	.align	1
	.global	_BulletMLBinExpr_destruct
_BulletMLBinExpr_destruct:
;	.frame	%sp,8,$31		# vars= 0, regs= 2/0, args= 0, extra= 0
;	.mask	0x80010000,-4
;	.fmask	0x00000000,0
	pushn	%r0
	ld.w	%r0,%r12
	ext	0x8		; 	xld.w	%r12,[%r0+8]
	ld.w	%r12,[%r0]
	ext	BulletMLValue_delete@rm	; 	xcall	BulletMLValue_delete
	call	BulletMLValue_delete@rl
	ext	0xc		; 	xld.w	%r12,[%r0+12]
	ld.w	%r12,[%r0]
	ext	BulletMLValue_delete@rm	; 	xcall	BulletMLValue_delete
	call	BulletMLValue_delete@rl
	ld.w	%r12,%r0
	ext	_BulletMLValue_destruct@rm	; 	xcall	_BulletMLValue_destruct
	call	_BulletMLValue_destruct@rl
	popn	%r0
	ret
	.align	1
	.global	_BulletMLBinExpr_calc
_BulletMLBinExpr_calc:
;	.frame	%sp,32,$31		# vars= 4, regs= 5/0, args= 8, extra= 0
;	.mask	0x800f0000,-4
;	.fmask	0x00000000,0
	pushn	%r3
	sub	%sp,0x3		; 	xsub	%sp,%sp,12
	ld.w	%r0,%r12
	ld.w	%r1,%r13
	ld.w	%r2,%r14
	ld.w	%r3,%r15
	ext	0x8		; 	xld.w	%r12,[%r0+8]
	ld.w	%r12,[%r0]
	ld.w	%r10,[%r12]	; 	xld.w	%r10,[%r12]
	ext	0x4		; 	xld.w	%r10,[%r10+4]
	ld.w	%r10,[%r10]
	call	%r10
	ld.w	%r11,%r10
	ext	0xc		; 	xld.w	%r12,[%r0+12]
	ld.w	%r12,[%r0]
	ld.w	%r10,[%r12]	; 	xld.w	%r10,[%r12]
	ext	0x4		; 	xld.w	%r10,[%r10+4]
	ld.w	%r10,[%r10]
	ld.w	%r13,%r1
	ld.w	%r14,%r2
	ld.w	%r15,%r3
	ld.w	[%sp+0x2],%r11	; 	xld.w	[%sp+8],%r11
	call	%r10
	ld.w	%r13,%r10
	ext	0x4		; 	xld.w	%r10,[%r0+4]
	ld.w	%r10,[%r0]
	sub	%r10,0x25	; 	xsub	%r10,%r10,37
	ld.w	%r11,[%sp+0x2]	; 	xld.w	%r11,[%sp+8]
	cmp	%r10,0xa	; 	xcmp	%r10,10
	jrugt	__L638		; 	xjrugt	__L638
	sll	%r10,0x2	; 	xsll	%r10,2
	ext	__L639+0x0@h	; 	xld.w	%r10,[%r10+__L639]
	ext	__L639+0x0@m
	ld.w	%r9,__L639+0x0@l
	add	%r9,%r10
	ld.w	%r10,[%r9]
	jp	%r10
	.code
	.align	2
__L639:
	.word	__L636
	.word	__L638
	.word	__L638
	.word	__L638
	.word	__L638
	.word	__L634
	.word	__L630
	.word	__L638
	.word	__L632
	.word	__L638
	.word	__L635
	.code
__L630:
	ld.w	%r10,%r11
	add	%r10,%r13
	jp	__LX640		; 	xjp	__L640
__L632:
	ld.w	%r10,%r11
	sub	%r10,%r13
	jp	__LX640		; 	xjp	__L640
__L634:
	ld.w	%r12,%r11
	ext	fmul@rm		; 	xcall	fmul
	call	fmul@rl
	jp	__LX640		; 	xjp	__L640
__L635:
	ld.w	%r12,%r11
	ext	fdiv@rm		; 	xcall	fdiv
	call	fdiv@rl
	jp	__LX640		; 	xjp	__L640
__L636:
	ld.w	%r12,%r11
	ext	__modsi3@rm	; 	xcall	__modsi3
	call	__modsi3@rl
	jp	__LX640		; 	xjp	__L640
__L638:
	ext	__LC3+0x0@h	; 	xld.w	%r10,__LC3
	ext	__LC3+0x0@m
	ld.w	%r10,__LC3+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	0x1a		; 	xld.w	%r10,0x00000681		; 1665
	ld.w	%r10,0x1
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	die@rm		; 	xcall	die
	call	die@rl
__LX640:				; __L640:
	add	%sp,0x3		; 	xadd	%sp,%sp,12
	popn	%r3
	ret
	.code
	.align	2
__LC45:
	.ascii	"(\000"
	.align	2
__LC46:
	.ascii	")\000"
	.code
	.align	1
	.global	_BulletMLBinExpr_dump
_BulletMLBinExpr_dump:
;	.frame	%sp,16,$31		# vars= 0, regs= 2/0, args= 8, extra= 0
;	.mask	0x80010000,-4
;	.fmask	0x00000000,0
	pushn	%r0
	sub	%sp,0x2		; 	xsub	%sp,%sp,8
	ld.w	%r0,%r12
	ext	__LC45+0x0@h	; 	xld.w	%r10,__LC45
	ext	__LC45+0x0@m
	ld.w	%r10,__LC45+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	printf@rm	; 	xcall	printf
	call	printf@rl
	ext	0x8		; 	xld.w	%r12,[%r0+8]
	ld.w	%r12,[%r0]
	ld.w	%r10,[%r12]	; 	xld.w	%r10,[%r12]
	ext	0x8		; 	xld.w	%r10,[%r10+8]
	ld.w	%r10,[%r10]
	call	%r10
	ext	__LC44+0x0@h	; 	xld.w	%r10,__LC44
	ext	__LC44+0x0@m
	ld.w	%r10,__LC44+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	0x4		; 	xld.w	%r10,[%r0+4]
	ld.w	%r10,[%r0]
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	printf@rm	; 	xcall	printf
	call	printf@rl
	ext	0xc		; 	xld.w	%r12,[%r0+12]
	ld.w	%r12,[%r0]
	ld.w	%r10,[%r12]	; 	xld.w	%r10,[%r12]
	ext	0x8		; 	xld.w	%r10,[%r10+8]
	ld.w	%r10,[%r10]
	call	%r10
	ext	__LC46+0x0@h	; 	xld.w	%r10,__LC46
	ext	__LC46+0x0@m
	ld.w	%r10,__LC46+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	printf@rm	; 	xcall	printf
	call	printf@rl
	add	%sp,0x2		; 	xadd	%sp,%sp,8
	popn	%r0
	ret

	.lcomm	BulletML_refFrom 4

	.lcomm	BulletML_refTo 4
