	format	MS COFF
	extrn	___bb_appstub_appstub
	extrn	___bb_audio_audio
	extrn	___bb_bitmapfont_bitmapfont
	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_wavloader_wavloader
	extrn	_bbGCFree
	extrn	_bbNullObject
	extrn	_bbObjectClass
	extrn	_bbObjectCompare
	extrn	_bbObjectCtor
	extrn	_bbObjectDowncast
	extrn	_bbObjectDtor
	extrn	_bbObjectFree
	extrn	_bbObjectNew
	extrn	_bbObjectRegisterType
	extrn	_bbObjectReserved
	extrn	_bbObjectSendMessage
	extrn	_bbObjectToString
	extrn	_bbStringClass
	extrn	_brl_graphics_GraphicsWidth
	extrn	_brl_linkedlist_TList
	extrn	_brl_max2d_DrawImage
	extrn	_brl_max2d_ImageHeight
	extrn	_brl_max2d_ImageWidth
	extrn	_brl_polledinput_MouseDown
	extrn	_brl_polledinput_MouseX
	extrn	_brl_polledinput_MouseY
	public	___bb_nuttershoot_menu
	public	__bb_TMenu_Add
	public	__bb_TMenu_Create
	public	__bb_TMenu_Delete
	public	__bb_TMenu_New
	public	__bb_TMenu_Render
	public	_bb_TMenu
	section	"code" code
___bb_nuttershoot_menu:
	push	ebp
	mov	ebp,esp
	cmp	dword [_67],0
	je	_68
	mov	eax,0
	mov	esp,ebp
	pop	ebp
	ret
_68:
	mov	dword [_67],1
	call	___bb_blitz_blitz
	call	___bb_bitmapfont_bitmapfont
	call	___bb_appstub_appstub
	call	___bb_audio_audio
	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_TMenu
	call	_bbObjectRegisterType
	add	esp,4
	mov	eax,0
	jmp	_47
_47:
	mov	esp,ebp
	pop	ebp
	ret
__bb_TMenu_New:
	push	ebp
	mov	ebp,esp
	push	ebx
	mov	ebx,dword [ebp+8]
	push	ebx
	call	_bbObjectCtor
	add	esp,4
	mov	dword [ebx],_bb_TMenu
	mov	eax,_bbNullObject
	inc	dword [eax+4]
	mov	dword [ebx+8],eax
	mov	eax,_bbNullObject
	inc	dword [eax+4]
	mov	dword [ebx+12],eax
	mov	eax,_bbNullObject
	inc	dword [eax+4]
	mov	dword [ebx+16],eax
	mov	dword [ebx+20],0
	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	eax,0
	jmp	_50
_50:
	pop	ebx
	mov	esp,ebp
	pop	ebp
	ret
__bb_TMenu_Delete:
	push	ebp
	mov	ebp,esp
	push	ebx
	mov	ebx,dword [ebp+8]
_53:
	mov	eax,dword [ebx+16]
	dec	dword [eax+4]
	jnz	_74
	push	eax
	call	_bbGCFree
	add	esp,4
_74:
	mov	eax,dword [ebx+12]
	dec	dword [eax+4]
	jnz	_76
	push	eax
	call	_bbGCFree
	add	esp,4
_76:
	mov	eax,dword [ebx+8]
	dec	dword [eax+4]
	jnz	_78
	push	eax
	call	_bbGCFree
	add	esp,4
_78:
	mov	dword [ebx],_bbObjectClass
	push	ebx
	call	_bbObjectDtor
	add	esp,4
	mov	eax,0
	jmp	_72
_72:
	pop	ebx
	mov	esp,ebp
	pop	ebp
	ret
__bb_TMenu_Create:
	push	ebp
	mov	ebp,esp
	push	ebx
	push	esi
	push	edi
	mov	edi,dword [ebp+12]
	push	_bb_TMenu
	call	_bbObjectNew
	add	esp,4
	mov	ebx,eax
	push	_brl_linkedlist_TList
	call	_bbObjectNew
	add	esp,4
	inc	dword [eax+4]
	mov	esi,eax
	mov	eax,dword [ebx+8]
	dec	dword [eax+4]
	jnz	_83
	push	eax
	call	_bbGCFree
	add	esp,4
_83:
	mov	dword [ebx+8],esi
	mov	eax,edi
	inc	dword [eax+4]
	mov	esi,eax
	mov	eax,dword [ebx+12]
	dec	dword [eax+4]
	jnz	_87
	push	eax
	call	_bbGCFree
	add	esp,4
_87:
	mov	dword [ebx+12],esi
	mov	eax,dword [ebp+8]
	inc	dword [eax+4]
	mov	esi,eax
	mov	eax,dword [ebx+16]
	dec	dword [eax+4]
	jnz	_91
	push	eax
	call	_bbGCFree
	add	esp,4
_91:
	mov	dword [ebx+16],esi
	mov	eax,dword [ebp+16]
	mov	dword [ebx+20],eax
	push	edi
	call	_brl_max2d_ImageWidth
	add	esp,4
	mov	dword [ebx+32],eax
	push	edi
	call	_brl_max2d_ImageHeight
	add	esp,4
	mov	dword [ebx+36],eax
	call	_brl_graphics_GraphicsWidth
	cdq
	mov	ecx,eax
	mov	eax,edx
	and	eax,1
	add	ecx,eax
	sar	ecx,1
	mov	eax,dword [ebx+32]
	cdq
	and	edx,1
	add	eax,edx
	sar	eax,1
	sub	ecx,eax
	mov	dword [ebx+24],ecx
	mov	ecx,dword [ebp+8]
	mov	eax,dword [ebx+36]
	cdq
	and	edx,1
	add	eax,edx
	sar	eax,1
	mov	esi,eax
	push	_18
	push	ecx
	mov	eax,dword [ecx]
	call	dword [eax+72]
	add	esp,8
	cdq
	and	edx,1
	add	eax,edx
	sar	eax,1
	sub	esi,eax
	mov	dword [ebx+28],esi
	mov	dword [ebx+44],0
	mov	eax,ebx
	jmp	_58
_58:
	pop	edi
	pop	esi
	pop	ebx
	mov	esp,ebp
	pop	ebp
	ret
__bb_TMenu_Add:
	push	ebp
	mov	ebp,esp
	mov	eax,dword [ebp+8]
	mov	edx,dword [ebp+12]
	mov	eax,dword [eax+8]
	push	edx
	push	eax
	mov	eax,dword [eax]
	call	dword [eax+68]
	add	esp,8
	mov	eax,0
	jmp	_62
_62:
	mov	esp,ebp
	pop	ebp
	ret
__bb_TMenu_Render:
	push	ebp
	mov	ebp,esp
	sub	esp,28
	push	ebx
	push	esi
	push	edi
	mov	esi,dword [ebp+8]
	mov	edi,dword [esi+20]
	mov	dword [ebp-24],_1
	call	_brl_polledinput_MouseX
	mov	dword [ebp-8],eax
	call	_brl_polledinput_MouseY
	mov	dword [ebp-16],eax
	mov	dword [ebp-20],0
	mov	eax,dword [esi+8]
	mov	dword [ebp-4],eax
	mov	eax,dword [ebp-4]
	push	eax
	mov	eax,dword [eax]
	call	dword [eax+140]
	add	esp,4
	mov	dword [ebp-12],eax
	jmp	_19
_21:
	mov	eax,dword [ebp-12]
	push	_bbStringClass
	push	eax
	mov	eax,dword [eax]
	call	dword [eax+52]
	add	esp,4
	push	eax
	call	_bbObjectDowncast
	add	esp,8
	mov	ebx,eax
	cmp	ebx,_bbNullObject
	je	_19
	mov	eax,dword [ebp-8]
	cmp	eax,dword [esi+24]
	setg	al
	movzx	eax,al
	cmp	eax,0
	je	_105
	mov	edx,dword [esi+24]
	add	edx,dword [esi+32]
	mov	eax,dword [ebp-8]
	cmp	eax,edx
	setl	al
	movzx	eax,al
_105:
	cmp	eax,0
	je	_107
	mov	eax,dword [ebp-16]
	cmp	eax,edi
	setg	al
	movzx	eax,al
_107:
	cmp	eax,0
	je	_109
	mov	edx,edi
	add	edx,dword [esi+36]
	mov	eax,dword [ebp-16]
	cmp	eax,edx
	setl	al
	movzx	eax,al
_109:
	cmp	eax,0
	je	_111
	push	1
	call	_brl_polledinput_MouseDown
	add	esp,4
	cmp	eax,0
	je	_112
	mov	dword [esi+44],1
	push	0
	mov	eax,edi
	add	eax,2
	mov	dword [ebp+-28],eax
	fild	dword [ebp+-28]
	sub	esp,4
	fstp	dword [esp]
	mov	eax,dword [esi+24]
	mov	dword [ebp+-28],eax
	fild	dword [ebp+-28]
	sub	esp,4
	fstp	dword [esp]
	push	dword [esi+12]
	call	_brl_max2d_DrawImage
	add	esp,16
	mov	edx,dword [esi+16]
	push	0
	push	255
	push	255
	mov	eax,edi
	add	eax,dword [esi+28]
	add	eax,2
	push	eax
	push	ebx
	push	edx
	mov	eax,dword [edx]
	call	dword [eax+56]
	add	esp,24
	mov	dword [ebp-20],1
	jmp	_114
_112:
	push	0
	mov	dword [ebp+-28],edi
	fild	dword [ebp+-28]
	sub	esp,4
	fstp	dword [esp]
	mov	eax,dword [esi+24]
	mov	dword [ebp+-28],eax
	fild	dword [ebp+-28]
	sub	esp,4
	fstp	dword [esp]
	push	dword [esi+12]
	call	_brl_max2d_DrawImage
	add	esp,16
	mov	edx,dword [esi+16]
	push	0
	push	255
	push	255
	mov	eax,edi
	add	eax,dword [esi+28]
	push	eax
	push	ebx
	push	edx
	mov	eax,dword [edx]
	call	dword [eax+56]
	add	esp,24
	cmp	dword [esi+44],0
	je	_116
	mov	dword [ebp-24],ebx
_116:
	mov	dword [esi+44],0
_114:
	jmp	_117
_111:
	push	0
	mov	dword [ebp+-28],edi
	fild	dword [ebp+-28]
	sub	esp,4
	fstp	dword [esp]
	mov	eax,dword [esi+24]
	mov	dword [ebp+-28],eax
	fild	dword [ebp+-28]
	sub	esp,4
	fstp	dword [esp]
	push	dword [esi+12]
	call	_brl_max2d_DrawImage
	add	esp,16
	mov	edx,dword [esi+16]
	push	0
	push	128
	push	128
	mov	eax,edi
	add	eax,dword [esi+28]
	push	eax
	push	ebx
	push	edx
	mov	eax,dword [edx]
	call	dword [eax+56]
	add	esp,24
_117:
	mov	eax,dword [esi+36]
	add	eax,20
	add	edi,eax
_19:
	mov	eax,dword [ebp-12]
	push	eax
	mov	eax,dword [eax]
	call	dword [eax+48]
	add	esp,4
	cmp	eax,0
	jne	_21
_20:
	cmp	dword [ebp-20],0
	jne	_119
	mov	dword [esi+44],0
_119:
	mov	eax,dword [ebp-24]
	jmp	_65
_65:
	pop	edi
	pop	esi
	pop	ebx
	mov	esp,ebp
	pop	ebp
	ret
	section	"data" data writeable align 8
	align	4
_67:
	dd	0
_23:
	db	"TMenu",0
_24:
	db	"list",0
_25:
	db	":brl.linkedlist.TList",0
_26:
	db	"img",0
_27:
	db	":brl.max2d.TImage",0
_28:
	db	"font",0
_29:
	db	":noddybox.bitmapfont.TBitmapFont",0
_30:
	db	"ypos",0
_31:
	db	"i",0
_32:
	db	"xpos",0
_33:
	db	"yoff",0
_34:
	db	"w",0
_35:
	db	"h",0
_36:
	db	"count",0
_37:
	db	"mbdown",0
_38:
	db	"New",0
_39:
	db	"()i",0
_40:
	db	"Delete",0
_41:
	db	"Create",0
_42:
	db	"(:noddybox.bitmapfont.TBitmapFont,:brl.max2d.TImage,i):TMenu",0
_43:
	db	"Add",0
_44:
	db	"($)i",0
_45:
	db	"Render",0
_46:
	db	"()$",0
	align	4
_22:
	dd	2
	dd	_23
	dd	3
	dd	_24
	dd	_25
	dd	8
	dd	3
	dd	_26
	dd	_27
	dd	12
	dd	3
	dd	_28
	dd	_29
	dd	16
	dd	3
	dd	_30
	dd	_31
	dd	20
	dd	3
	dd	_32
	dd	_31
	dd	24
	dd	3
	dd	_33
	dd	_31
	dd	28
	dd	3
	dd	_34
	dd	_31
	dd	32
	dd	3
	dd	_35
	dd	_31
	dd	36
	dd	3
	dd	_36
	dd	_31
	dd	40
	dd	3
	dd	_37
	dd	_31
	dd	44
	dd	6
	dd	_38
	dd	_39
	dd	16
	dd	6
	dd	_40
	dd	_39
	dd	20
	dd	7
	dd	_41
	dd	_42
	dd	48
	dd	6
	dd	_43
	dd	_44
	dd	52
	dd	6
	dd	_45
	dd	_46
	dd	56
	dd	0
	align	4
_bb_TMenu:
	dd	_bbObjectClass
	dd	_bbObjectFree
	dd	_22
	dd	48
	dd	__bb_TMenu_New
	dd	__bb_TMenu_Delete
	dd	_bbObjectToString
	dd	_bbObjectCompare
	dd	_bbObjectSendMessage
	dd	_bbObjectReserved
	dd	_bbObjectReserved
	dd	_bbObjectReserved
	dd	__bb_TMenu_Create
	dd	__bb_TMenu_Add
	dd	__bb_TMenu_Render
	align	4
_18:
	dd	_bbStringClass
	dd	2147483647
	dd	1
	dw	88
	align	4
_1:
	dd	_bbStringClass
	dd	2147483647
	dd	0
