	format	MS COFF
	extrn	___bb_appstub_appstub
	extrn	___bb_audio_audio
	extrn	___bb_bank_bank
	extrn	___bb_bankstream_bankstream
	extrn	___bb_basic_basic
	extrn	___bb_blitz_blitz
	extrn	___bb_bmploader_bmploader
	extrn	___bb_d3d7max2d_d3d7max2d
	extrn	___bb_directsoundaudio_directsoundaudio
	extrn	___bb_eventqueue_eventqueue
	extrn	___bb_freeaudioaudio_freeaudioaudio
	extrn	___bb_freejoy_freejoy
	extrn	___bb_freeprocess_freeprocess
	extrn	___bb_freetypefont_freetypefont
	extrn	___bb_glew_glew
	extrn	___bb_gnet_gnet
	extrn	___bb_jpgloader_jpgloader
	extrn	___bb_macos_macos
	extrn	___bb_maxutil_maxutil
	extrn	___bb_oggloader_oggloader
	extrn	___bb_openalaudio_openalaudio
	extrn	___bb_pngloader_pngloader
	extrn	___bb_reflection_reflection
	extrn	___bb_retro_retro
	extrn	___bb_tgaloader_tgaloader
	extrn	___bb_timer_timer
	extrn	___bb_vector_vector
	extrn	___bb_wavloader_wavloader
	extrn	_bbFloatToInt
	extrn	_bbGCFree
	extrn	_bbNullObject
	extrn	_bbObjectClass
	extrn	_bbObjectCompare
	extrn	_bbObjectCtor
	extrn	_bbObjectDtor
	extrn	_bbObjectFree
	extrn	_bbObjectNew
	extrn	_bbObjectRegisterType
	extrn	_bbObjectReserved
	extrn	_bbObjectSendMessage
	extrn	_bbObjectToString
	extrn	_brl_max2d_CollideImage
	extrn	_brl_max2d_DrawImage
	extrn	_noddybox_vector_TVector
	public	___bb_nuttershoot_sprite
	public	__bb_TSprite_ChangeAnim
	public	__bb_TSprite_ChangeImage
	public	__bb_TSprite_Create
	public	__bb_TSprite_Delete
	public	__bb_TSprite_New
	public	__bb_TSprite_Update
	public	_bb_TSprite
	section	"code" code
___bb_nuttershoot_sprite:
	push	ebp
	mov	ebp,esp
	cmp	dword [_75],0
	je	_76
	mov	eax,0
	mov	esp,ebp
	pop	ebp
	ret
_76:
	mov	dword [_75],1
	call	___bb_blitz_blitz
	call	___bb_vector_vector
	call	___bb_appstub_appstub
	call	___bb_audio_audio
	call	___bb_bank_bank
	call	___bb_bankstream_bankstream
	call	___bb_basic_basic
	call	___bb_bmploader_bmploader
	call	___bb_d3d7max2d_d3d7max2d
	call	___bb_directsoundaudio_directsoundaudio
	call	___bb_eventqueue_eventqueue
	call	___bb_freeaudioaudio_freeaudioaudio
	call	___bb_freetypefont_freetypefont
	call	___bb_gnet_gnet
	call	___bb_jpgloader_jpgloader
	call	___bb_maxutil_maxutil
	call	___bb_oggloader_oggloader
	call	___bb_openalaudio_openalaudio
	call	___bb_pngloader_pngloader
	call	___bb_reflection_reflection
	call	___bb_retro_retro
	call	___bb_tgaloader_tgaloader
	call	___bb_timer_timer
	call	___bb_wavloader_wavloader
	call	___bb_freejoy_freejoy
	call	___bb_freeprocess_freeprocess
	call	___bb_glew_glew
	call	___bb_macos_macos
	push	_bb_TSprite
	call	_bbObjectRegisterType
	add	esp,4
	mov	eax,0
	jmp	_46
_46:
	mov	esp,ebp
	pop	ebp
	ret
__bb_TSprite_New:
	push	ebp
	mov	ebp,esp
	push	ebx
	mov	ebx,dword [ebp+8]
	push	ebx
	call	_bbObjectCtor
	add	esp,4
	mov	dword [ebx],_bb_TSprite
	fldz
	fstp	dword [ebx+8]
	fldz
	fstp	dword [ebx+12]
	mov	eax,_bbNullObject
	inc	dword [eax+4]
	mov	dword [ebx+16],eax
	mov	eax,_bbNullObject
	inc	dword [eax+4]
	mov	dword [ebx+20],eax
	mov	dword [ebx+24],0
	mov	dword [ebx+28],0
	mov	dword [ebx+32],0
	mov	dword [ebx+36],0
	mov	dword [ebx+40],0
	mov	dword [ebx+44],0
	mov	dword [ebx+48],0
	mov	dword [ebx+52],0
	mov	eax,0
	jmp	_49
_49:
	pop	ebx
	mov	esp,ebp
	pop	ebp
	ret
__bb_TSprite_Delete:
	push	ebp
	mov	ebp,esp
	push	ebx
	mov	ebx,dword [ebp+8]
_52:
	mov	eax,dword [ebx+20]
	dec	dword [eax+4]
	jnz	_81
	push	eax
	call	_bbGCFree
	add	esp,4
_81:
	mov	eax,dword [ebx+16]
	dec	dword [eax+4]
	jnz	_83
	push	eax
	call	_bbGCFree
	add	esp,4
_83:
	mov	dword [ebx],_bbObjectClass
	push	ebx
	call	_bbObjectDtor
	add	esp,4
	mov	eax,0
	jmp	_79
_79:
	pop	ebx
	mov	esp,ebp
	pop	ebp
	ret
__bb_TSprite_Create:
	push	ebp
	mov	ebp,esp
	sub	esp,4
	push	ebx
	push	esi
	push	edi
	mov	esi,dword [ebp+8]
	mov	edi,dword [ebp+12]
	push	_bb_TSprite
	call	_bbObjectNew
	add	esp,4
	mov	ebx,eax
	mov	eax,esi
	inc	dword [eax+4]
	mov	dword [ebp-4],eax
	mov	eax,dword [ebx+20]
	dec	dword [eax+4]
	jnz	_88
	push	eax
	call	_bbGCFree
	add	esp,4
_88:
	mov	eax,dword [ebp-4]
	mov	dword [ebx+20],eax
	mov	eax,dword [esi+44]
	mov	eax,dword [eax+20]
	sub	eax,1
	mov	dword [ebx+24],eax
	mov	dword [ebx+32],0
	mov	eax,dword [ebp+24]
	mov	dword [ebx+36],eax
	mov	dword [ebx+48],0
	mov	dword [ebx+52],1
	mov	eax,dword [ebp+16]
	mov	dword [ebx+28],eax
	mov	eax,dword [ebp+20]
	mov	dword [ebx+40],eax
	mov	dword [ebx+44],edi
	fldz
	sub	esp,8
	fstp	qword [esp]
	fldz
	sub	esp,8
	fstp	qword [esp]
	fldz
	sub	esp,8
	fstp	qword [esp]
	call	dword [_noddybox_vector_TVector+48]
	add	esp,24
	mov	esi,eax
	inc	dword [esi+4]
	mov	eax,dword [ebx+16]
	dec	dword [eax+4]
	jnz	_92
	push	eax
	call	_bbGCFree
	add	esp,4
_92:
	mov	dword [ebx+16],esi
	fldz
	fstp	dword [ebx+8]
	fldz
	fstp	dword [ebx+12]
	mov	eax,dword [ebx+16]
	fldz
	fstp	qword [eax+8]
	mov	eax,dword [ebx+16]
	fldz
	fstp	qword [eax+16]
	mov	eax,ebx
	jmp	_59
_59:
	pop	edi
	pop	esi
	pop	ebx
	mov	esp,ebp
	pop	ebp
	ret
__bb_TSprite_ChangeAnim:
	push	ebp
	mov	ebp,esp
	push	ebx
	mov	ebx,dword [ebp+8]
	mov	ecx,dword [ebp+12]
	mov	edx,dword [ebp+16]
	mov	eax,dword [ebp+20]
	mov	dword [ebx+28],edx
	mov	dword [ebx+40],eax
	mov	dword [ebx+44],ecx
	mov	eax,0
	jmp	_65
_65:
	pop	ebx
	mov	esp,ebp
	pop	ebp
	ret
__bb_TSprite_ChangeImage:
	push	ebp
	mov	ebp,esp
	sub	esp,4
	push	ebx
	push	esi
	push	edi
	mov	esi,dword [ebp+8]
	mov	ebx,dword [ebp+12]
	mov	edi,dword [ebp+16]
	mov	eax,ebx
	inc	dword [eax+4]
	mov	dword [ebp-4],eax
	mov	eax,dword [esi+20]
	dec	dword [eax+4]
	jnz	_96
	push	eax
	call	_bbGCFree
	add	esp,4
_96:
	mov	eax,dword [ebp-4]
	mov	dword [esi+20],eax
	mov	eax,dword [ebx+44]
	mov	eax,dword [eax+20]
	sub	eax,1
	mov	dword [esi+24],eax
	mov	dword [esi+36],edi
	mov	dword [esi+48],0
	mov	dword [esi+52],1
	mov	eax,0
	jmp	_70
_70:
	pop	edi
	pop	esi
	pop	ebx
	mov	esp,ebp
	pop	ebp
	ret
__bb_TSprite_Update:
	push	ebp
	mov	ebp,esp
	push	ebx
	mov	ebx,dword [ebp+8]
	fld	dword [ebx+8]
	mov	eax,dword [ebx+16]
	fadd	qword [eax+8]
	fstp	dword [ebx+8]
	fld	dword [ebx+12]
	mov	eax,dword [ebx+16]
	fadd	qword [eax+16]
	fstp	dword [ebx+12]
	push	dword [ebx+48]
	push	dword [ebx+12]
	push	dword [ebx+8]
	push	dword [ebx+20]
	call	_brl_max2d_DrawImage
	add	esp,16
	cmp	dword [ebx+36],0
	je	_97
	push	ebx
	push	dword [ebx+36]
	push	0
	push	dword [ebx+48]
	fld	dword [ebx+12]
	sub	esp,8
	fstp	qword [esp]
	call	_bbFloatToInt
	add	esp,8
	push	eax
	fld	dword [ebx+8]
	sub	esp,8
	fstp	qword [esp]
	call	_bbFloatToInt
	add	esp,8
	push	eax
	push	dword [ebx+20]
	call	_brl_max2d_CollideImage
	add	esp,28
_97:
	add	dword [ebx+32],1
	mov	eax,dword [ebx+24]
	cmp	eax,0
	setg	al
	movzx	eax,al
	cmp	eax,0
	je	_102
	mov	eax,dword [ebx+40]
	cmp	eax,0
	sete	al
	movzx	eax,al
	cmp	eax,0
	jne	_98
	mov	eax,dword [ebx+16]
	fld	qword [eax+8]
	fldz
	fxch	st1
	fucompp
	fnstsw	ax
	sahf
	setnz	al
	movzx	eax,al
_98:
	cmp	eax,0
	jne	_100
	mov	eax,dword [ebx+16]
	fld	qword [eax+16]
	fldz
	fxch	st1
	fucompp
	fnstsw	ax
	sahf
	setnz	al
	movzx	eax,al
_100:
_102:
	cmp	eax,0
	je	_104
	mov	eax,dword [ebx+44]
	cmp	dword [ebx+32],eax
	jle	_105
	mov	dword [ebx+32],0
	mov	eax,dword [ebx+52]
	add	dword [ebx+48],eax
	cmp	dword [ebx+28],0
	je	_106
	mov	eax,dword [ebx+48]
	cmp	eax,0
	sete	al
	movzx	eax,al
	cmp	eax,0
	jne	_107
	mov	eax,dword [ebx+48]
	cmp	eax,dword [ebx+24]
	sete	al
	movzx	eax,al
_107:
	cmp	eax,0
	je	_109
	mov	eax,dword [ebx+52]
	neg	eax
	mov	dword [ebx+52],eax
_109:
	jmp	_110
_106:
	mov	eax,dword [ebx+24]
	cmp	dword [ebx+48],eax
	jle	_111
	mov	dword [ebx+48],0
_111:
_110:
_105:
_104:
	mov	eax,0
	jmp	_73
_73:
	pop	ebx
	mov	esp,ebp
	pop	ebp
	ret
	section	"data" data writeable align 8
	align	4
_75:
	dd	0
_19:
	db	"TSprite",0
_20:
	db	"x",0
_21:
	db	"f",0
_22:
	db	"y",0
_23:
	db	"v",0
_24:
	db	":noddybox.vector.TVector",0
_25:
	db	"img",0
_26:
	db	":brl.max2d.TImage",0
_27:
	db	"frames",0
_28:
	db	"i",0
_29:
	db	"pong",0
_30:
	db	"fr",0
_31:
	db	"colmask",0
_32:
	db	"aninmove",0
_33:
	db	"animspeed",0
_34:
	db	"animframe",0
_35:
	db	"animframeinc",0
_36:
	db	"New",0
_37:
	db	"()i",0
_38:
	db	"Delete",0
_39:
	db	"Create",0
_40:
	db	"(:brl.max2d.TImage,i,i,i,i):TSprite",0
_41:
	db	"ChangeAnim",0
_42:
	db	"(i,i,i)i",0
_43:
	db	"ChangeImage",0
_44:
	db	"(:brl.max2d.TImage,i)i",0
_45:
	db	"Update",0
	align	4
_18:
	dd	2
	dd	_19
	dd	3
	dd	_20
	dd	_21
	dd	8
	dd	3
	dd	_22
	dd	_21
	dd	12
	dd	3
	dd	_23
	dd	_24
	dd	16
	dd	3
	dd	_25
	dd	_26
	dd	20
	dd	3
	dd	_27
	dd	_28
	dd	24
	dd	3
	dd	_29
	dd	_28
	dd	28
	dd	3
	dd	_30
	dd	_28
	dd	32
	dd	3
	dd	_31
	dd	_28
	dd	36
	dd	3
	dd	_32
	dd	_28
	dd	40
	dd	3
	dd	_33
	dd	_28
	dd	44
	dd	3
	dd	_34
	dd	_28
	dd	48
	dd	3
	dd	_35
	dd	_28
	dd	52
	dd	6
	dd	_36
	dd	_37
	dd	16
	dd	6
	dd	_38
	dd	_37
	dd	20
	dd	7
	dd	_39
	dd	_40
	dd	48
	dd	6
	dd	_41
	dd	_42
	dd	52
	dd	6
	dd	_43
	dd	_44
	dd	56
	dd	6
	dd	_45
	dd	_37
	dd	60
	dd	0
	align	4
_bb_TSprite:
	dd	_bbObjectClass
	dd	_bbObjectFree
	dd	_18
	dd	56
	dd	__bb_TSprite_New
	dd	__bb_TSprite_Delete
	dd	_bbObjectToString
	dd	_bbObjectCompare
	dd	_bbObjectSendMessage
	dd	_bbObjectReserved
	dd	_bbObjectReserved
	dd	_bbObjectReserved
	dd	__bb_TSprite_Create
	dd	__bb_TSprite_ChangeAnim
	dd	__bb_TSprite_ChangeImage
	dd	__bb_TSprite_Update
