	format	ELF
	extrn	__bb_appstub_appstub
	extrn	__bb_basic_basic
	extrn	__bb_blitz_blitz
	extrn	__bb_bmploader_bmploader
	extrn	__bb_d3d7max2d_d3d7max2d
	extrn	__bb_directsoundaudio_directsoundaudio
	extrn	__bb_directx_directx
	extrn	__bb_dxgraphics_dxgraphics
	extrn	__bb_endianstream_endianstream
	extrn	__bb_enet_enet
	extrn	__bb_eventqueue_eventqueue
	extrn	__bb_freeaudio_freeaudio
	extrn	__bb_freeaudioaudio_freeaudioaudio
	extrn	__bb_freejoy_freejoy
	extrn	__bb_freeprocess_freeprocess
	extrn	__bb_freetype_freetype
	extrn	__bb_freetypefont_freetypefont
	extrn	__bb_glew_glew
	extrn	__bb_glgraphics_glgraphics
	extrn	__bb_glmax2d_glmax2d
	extrn	__bb_gnet_gnet
	extrn	__bb_httpstream_httpstream
	extrn	__bb_jpgloader_jpgloader
	extrn	__bb_libjpeg_libjpeg
	extrn	__bb_libpng_libpng
	extrn	__bb_macos_macos
	extrn	__bb_max2d_max2d
	extrn	__bb_maxutil_maxutil
	extrn	__bb_oggloader_oggloader
	extrn	__bb_oggvorbis_oggvorbis
	extrn	__bb_openal_openal
	extrn	__bb_openalaudio_openalaudio
	extrn	__bb_opengl_opengl
	extrn	__bb_pngloader_pngloader
	extrn	__bb_ramstream_ramstream
	extrn	__bb_random_random
	extrn	__bb_reflection_reflection
	extrn	__bb_retro_retro
	extrn	__bb_standardio_standardio
	extrn	__bb_tgaloader_tgaloader
	extrn	__bb_threads_threads
	extrn	__bb_timer_timer
	extrn	__bb_wavloader_wavloader
	extrn	__bb_win32_win32
	extrn	bbAppTitle
	extrn	bbArrayNew
	extrn	bbArrayNew1D
	extrn	bbEmptyArray
	extrn	bbEmptyString
	extrn	bbEnd
	extrn	bbFloatToInt
	extrn	bbGCFree
	extrn	bbIncbinAdd
	extrn	bbMilliSecs
	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	bbSin
	extrn	bbStringClass
	extrn	bbStringCompare
	extrn	bbStringConcat
	extrn	bbStringFromInt
	extrn	brl_audio_LoadSound
	extrn	brl_audio_PlaySound
	extrn	brl_blitz_DebugLog
	extrn	brl_filesystem_ChangeDir
	extrn	brl_filesystem_LoadDir
	extrn	brl_graphics_Flip
	extrn	brl_graphics_Graphics
	extrn	brl_jpgloader_LoadPixmapJPeg
	extrn	brl_jpgloader_SavePixmapJPeg
	extrn	brl_linkedlist_CreateList
	extrn	brl_linkedlist_ListAddLast
	extrn	brl_max2d_Cls
	extrn	brl_max2d_CreateImage
	extrn	brl_max2d_DrawImage
	extrn	brl_max2d_DrawRect
	extrn	brl_max2d_DrawText
	extrn	brl_max2d_GrabImage
	extrn	brl_max2d_ImageHeight
	extrn	brl_max2d_ImageWidth
	extrn	brl_max2d_LoadImage
	extrn	brl_max2d_LoadImageFont
	extrn	brl_max2d_LockImage
	extrn	brl_max2d_SetAlpha
	extrn	brl_max2d_SetBlend
	extrn	brl_max2d_SetClsColor
	extrn	brl_max2d_SetColor
	extrn	brl_max2d_SetImageFont
	extrn	brl_max2d_SetMaskColor
	extrn	brl_max2d_SetScale
	extrn	brl_max2d_TextWidth
	extrn	brl_pixmap_ConvertPixmap
	extrn	brl_pixmap_PixmapHeight
	extrn	brl_pixmap_PixmapWidth
	extrn	brl_pixmap_ReadPixel
	extrn	brl_pixmap_ResizePixmap
	extrn	brl_pixmap_WritePixel
	extrn	brl_pixmap_YFlipPixmap
	extrn	brl_pngloader_LoadPixmapPNG
	extrn	brl_polledinput_AppTerminate
	extrn	brl_polledinput_KeyHit
	extrn	brl_polledinput_MouseDown
	extrn	brl_polledinput_MouseHit
	extrn	brl_polledinput_MouseX
	extrn	brl_polledinput_MouseY
	extrn	brl_polledinput_MouseZ
	extrn	brl_random_Rand
	extrn	brl_random_Rnd
	extrn	brl_random_SeedRnd
	extrn	brl_retro_Left
	extrn	brl_retro_Lower
	extrn	brl_retro_Right
	extrn	brl_system_HideMouse
	extrn	brl_timer_CreateTimer
	extrn	brl_timer_WaitTimer
	public	_bb_TMotives_AddMotiv
	public	_bb_TMotives_Delete
	public	_bb_TMotives_New
	public	_bb_TMotives_getID
	public	_bb_TMotives_getImage
	public	_bb_main
	public	bb_AllTiles
	public	bb_AutoMidX
	public	bb_AutoMidY
	public	bb_BetweenTile
	public	bb_ButtonL
	public	bb_ButtonLMirror
	public	bb_ButtonR
	public	bb_ButtonRMirror
	public	bb_Buttons
	public	bb_ChangeID
	public	bb_ChangeX_old
	public	bb_ChangeY_old
	public	bb_CorrectTiles
	public	bb_CountMotives
	public	bb_DEBUG
	public	bb_DrawPuzzle
	public	bb_Eventsystem
	public	bb_FArial20
	public	bb_FArial30
	public	bb_FPS
	public	bb_FPSCounter
	public	bb_FPSDraw
	public	bb_FPSTime
	public	bb_GameSecs
	public	bb_GameTime
	public	bb_Helpstate
	public	bb_ID
	public	bb_IMGButton
	public	bb_IMGCursor
	public	bb_IMGPuzzle
	public	bb_M
	public	bb_MAP_X
	public	bb_MAP_Y
	public	bb_MOUSE1HIT
	public	bb_MOUSESCROLL
	public	bb_MX
	public	bb_MY
	public	bb_MZSpeedOld
	public	bb_Menu
	public	bb_MixPuzzle
	public	bb_MotivesList
	public	bb_Mouse
	public	bb_MouseZSpeed
	public	bb_MoveReady
	public	bb_MoveReadyTime
	public	bb_MoveSpeedX
	public	bb_MoveSpeedX2
	public	bb_MoveSpeedY
	public	bb_MoveSpeedY2
	public	bb_MoveX
	public	bb_MoveX2
	public	bb_MoveY
	public	bb_MoveY2
	public	bb_NewX
	public	bb_NewY
	public	bb_PXMCursor
	public	bb_PreparePuzzle
	public	bb_Previewheightfaktor
	public	bb_Previewwidthfaktor
	public	bb_Puzzle
	public	bb_PuzzleTileSize
	public	bb_Puzzle_ID_Correct
	public	bb_Puzzle_ID_Now
	public	bb_Puzzle_Original
	public	bb_SFXClick
	public	bb_SFXFanfare
	public	bb_SFXJingle
	public	bb_SFXPaperMove
	public	bb_SFXpaperMix
	public	bb_Selection
	public	bb_TIME
	public	bb_TMotives
	public	bb_TileMoves
	public	bb_Timer
	public	bb_UserInput
	public	bb_WINMODE
	public	bb_mirrorImage
	public	bb_selectPuzzleImg
	section	"code" executable
_bb_main:
	push	ebp
	mov	ebp,esp
	sub	esp,32
	push	ebx
	push	esi
	push	edi
	cmp	dword [_307],0
	je	_308
	mov	eax,0
	pop	edi
	pop	esi
	pop	ebx
	mov	esp,ebp
	pop	ebp
	ret
_308:
	mov	dword [_307],1
	mov	eax,_248
	sub	eax,_247
	push	eax
	push	_247
	push	_246
	call	bbIncbinAdd
	add	esp,12
	mov	eax,_251
	sub	eax,_250
	push	eax
	push	_250
	push	_249
	call	bbIncbinAdd
	add	esp,12
	mov	eax,_254
	sub	eax,_253
	push	eax
	push	_253
	push	_252
	call	bbIncbinAdd
	add	esp,12
	mov	eax,_257
	sub	eax,_256
	push	eax
	push	_256
	push	_255
	call	bbIncbinAdd
	add	esp,12
	mov	eax,_260
	sub	eax,_259
	push	eax
	push	_259
	push	_258
	call	bbIncbinAdd
	add	esp,12
	mov	eax,_263
	sub	eax,_262
	push	eax
	push	_262
	push	_261
	call	bbIncbinAdd
	add	esp,12
	mov	eax,_266
	sub	eax,_265
	push	eax
	push	_265
	push	_264
	call	bbIncbinAdd
	add	esp,12
	mov	eax,_269
	sub	eax,_268
	push	eax
	push	_268
	push	_267
	call	bbIncbinAdd
	add	esp,12
	mov	eax,_272
	sub	eax,_271
	push	eax
	push	_271
	push	_270
	call	bbIncbinAdd
	add	esp,12
	mov	eax,_275
	sub	eax,_274
	push	eax
	push	_274
	push	_273
	call	bbIncbinAdd
	add	esp,12
	call	__bb_blitz_blitz
	call	__bb_threads_threads
	call	__bb_freetype_freetype
	call	__bb_freeprocess_freeprocess
	call	__bb_oggvorbis_oggvorbis
	call	__bb_directx_directx
	call	__bb_libpng_libpng
	call	__bb_openal_openal
	call	__bb_freeaudio_freeaudio
	call	__bb_libjpeg_libjpeg
	call	__bb_opengl_opengl
	call	__bb_glew_glew
	call	__bb_macos_macos
	call	__bb_win32_win32
	call	__bb_freejoy_freejoy
	call	__bb_enet_enet
	call	__bb_httpstream_httpstream
	call	__bb_endianstream_endianstream
	call	__bb_random_random
	call	__bb_standardio_standardio
	call	__bb_maxutil_maxutil
	call	__bb_freetypefont_freetypefont
	call	__bb_glgraphics_glgraphics
	call	__bb_ramstream_ramstream
	call	__bb_freeaudioaudio_freeaudioaudio
	call	__bb_d3d7max2d_d3d7max2d
	call	__bb_openalaudio_openalaudio
	call	__bb_reflection_reflection
	call	__bb_max2d_max2d
	call	__bb_basic_basic
	call	__bb_gnet_gnet
	call	__bb_oggloader_oggloader
	call	__bb_eventqueue_eventqueue
	call	__bb_bmploader_bmploader
	call	__bb_glmax2d_glmax2d
	call	__bb_pngloader_pngloader
	call	__bb_tgaloader_tgaloader
	call	__bb_retro_retro
	call	__bb_directsoundaudio_directsoundaudio
	call	__bb_wavloader_wavloader
	call	__bb_dxgraphics_dxgraphics
	call	__bb_appstub_appstub
	call	__bb_jpgloader_jpgloader
	call	__bb_timer_timer
	push	bb_TMotives
	call	bbObjectRegisterType
	add	esp,4
	mov	ebx,_3
	inc	dword [ebx+4]
	mov	eax,dword [bbAppTitle]
	dec	dword [eax+4]
	jnz	_189
	push	eax
	call	bbGCFree
	add	esp,4
_189:
	mov	dword [bbAppTitle],ebx
	push	0
	push	60
	push	0
	push	320
	push	480
	call	brl_graphics_Graphics
	add	esp,20
	mov	edi,bbNullObject
	push	1
	push	_4
	call	brl_filesystem_LoadDir
	add	esp,8
	mov	ebx,eax
	push	_4
	call	brl_filesystem_ChangeDir
	add	esp,4
	mov	dword [ebp-24],ebx
	mov	eax,dword [ebp-24]
	add	eax,24
	mov	dword [ebp-20],eax
	mov	edx,dword [ebp-20]
	mov	eax,dword [ebp-24]
	add	edx,dword [eax+16]
	mov	dword [ebp-32],edx
	jmp	_5
_7:
	mov	eax,dword [ebp-20]
	mov	ebx,dword [eax]
	add	dword [ebp-20],4
	cmp	ebx,bbNullObject
	je	_5
	push	4
	push	ebx
	call	brl_retro_Right
	add	esp,8
	push	eax
	call	brl_retro_Lower
	add	esp,4
	mov	esi,eax
	push	_8
	push	esi
	call	bbStringCompare
	add	esp,8
	cmp	eax,0
	sete	al
	movzx	eax,al
	cmp	eax,0
	jne	_199
	push	_9
	push	esi
	call	bbStringCompare
	add	esp,8
	cmp	eax,0
	sete	al
	movzx	eax,al
_199:
	cmp	eax,0
	jne	_201
	push	_10
	push	esi
	call	bbStringCompare
	add	esp,8
	cmp	eax,0
	sete	al
	movzx	eax,al
_201:
	cmp	eax,0
	je	_203
	push	_9
	push	esi
	call	bbStringCompare
	add	esp,8
	cmp	eax,0
	sete	al
	movzx	eax,al
	cmp	eax,0
	jne	_204
	push	_10
	push	esi
	call	bbStringCompare
	add	esp,8
	cmp	eax,0
	sete	al
	movzx	eax,al
_204:
	cmp	eax,0
	je	_206
	push	ebx
	call	brl_jpgloader_LoadPixmapJPeg
	add	esp,4
	mov	edi,eax
	jmp	_207
_206:
	push	_8
	push	esi
	call	bbStringCompare
	add	esp,8
	cmp	eax,0
	jne	_208
	push	ebx
	call	brl_pngloader_LoadPixmapPNG
	add	esp,4
	mov	edi,eax
_208:
_207:
	push	edi
	call	brl_pixmap_PixmapWidth
	add	esp,4
	cmp	eax,512
	setg	al
	movzx	eax,al
	cmp	eax,0
	jne	_209
	push	edi
	call	brl_pixmap_PixmapHeight
	add	esp,4
	cmp	eax,512
	setg	al
	movzx	eax,al
_209:
	cmp	eax,0
	jne	_211
	push	_11
	push	6
	push	ebx
	call	brl_retro_Left
	add	esp,8
	push	eax
	call	bbStringCompare
	add	esp,8
	cmp	eax,0
	setne	al
	movzx	eax,al
_211:
	cmp	eax,0
	je	_213
	push	512
	push	512
	push	edi
	call	brl_pixmap_ResizePixmap
	add	esp,12
	mov	edi,eax
	push	75
	push	ebx
	push	edi
	call	brl_jpgloader_SavePixmapJPeg
	add	esp,12
_213:
_203:
_5:
	mov	eax,dword [ebp-32]
	cmp	dword [ebp-20],eax
	jne	_7
_6:
	push	_12
	call	brl_filesystem_ChangeDir
	add	esp,4
	push	_13
	call	brl_blitz_DebugLog
	add	esp,4
	push	0
	push	60
	push	0
	push	600
	push	800
	call	brl_graphics_Graphics
	add	esp,20
	call	brl_system_HideMouse
	mov	word [ebp-4],0
	mov	word [ebp-8],0
	mov	word [ebp-12],0
	push	8
	push	1
	push	20
	push	20
	call	brl_max2d_CreateImage
	add	esp,16
	mov	eax,dword [_218]
	and	eax,1
	cmp	eax,0
	jne	_219
	mov	eax,dword [bb_MAP_X]
	mov	dword [bb_MAP_Y],eax
	or	dword [_218],1
_219:
	mov	eax,dword [_218]
	and	eax,2
	cmp	eax,0
	jne	_220
	mov	eax,512
	cdq
	idiv	dword [bb_MAP_X]
	mov	eax,eax
	and	eax,0xffff
	mov	eax,eax
	mov	word [bb_PuzzleTileSize],ax
	or	dword [_218],2
_220:
	cmp	dword [bb_MAP_X],27
	jle	_221
	mov	byte [bb_BetweenTile],2
_221:
	mov	eax,dword [_218]
	and	eax,4
	cmp	eax,0
	jne	_222
	call	bbMilliSecs
	mov	dword [bb_TIME],eax
	or	dword [_218],4
_222:
	mov	eax,dword [_218]
	and	eax,8
	cmp	eax,0
	jne	_224
	push	bbNullObject
	push	1115815936
	call	brl_timer_CreateTimer
	add	esp,8
	inc	dword [eax+4]
	mov	dword [bb_Timer],eax
	or	dword [_218],8
_224:
	mov	eax,dword [_218]
	and	eax,16
	cmp	eax,0
	jne	_225
	mov	eax,dword [bb_MAP_X]
	imul	eax,dword [bb_MAP_Y]
	mov	eax,eax
	and	eax,0xffff
	mov	eax,eax
	mov	word [bb_AllTiles],ax
	or	dword [_218],16
_225:
	push	255
	push	0
	push	255
	call	brl_max2d_SetMaskColor
	add	esp,12
	mov	eax,dword [_218]
	and	eax,32
	cmp	eax,0
	jne	_227
	call	brl_linkedlist_CreateList
	inc	dword [eax+4]
	mov	dword [bb_MotivesList],eax
	or	dword [_218],32
_227:
	push	1
	push	_4
	call	brl_filesystem_LoadDir
	add	esp,8
	mov	ebx,eax
	push	_4
	call	brl_filesystem_ChangeDir
	add	esp,4
	mov	dword [ebp-16],ebx
	mov	eax,dword [ebp-16]
	add	eax,24
	mov	edi,eax
	mov	edx,edi
	mov	eax,dword [ebp-16]
	add	edx,dword [eax+16]
	mov	dword [ebp-28],edx
	jmp	_14
_16:
	mov	ebx,dword [edi]
	add	edi,4
	cmp	ebx,bbNullObject
	je	_14
	push	4
	push	ebx
	call	brl_retro_Right
	add	esp,8
	push	eax
	call	brl_retro_Lower
	add	esp,4
	mov	esi,eax
	push	_8
	push	esi
	call	bbStringCompare
	add	esp,8
	cmp	eax,0
	sete	al
	movzx	eax,al
	cmp	eax,0
	jne	_236
	push	_9
	push	esi
	call	bbStringCompare
	add	esp,8
	cmp	eax,0
	sete	al
	movzx	eax,al
_236:
	cmp	eax,0
	jne	_238
	push	_10
	push	esi
	call	bbStringCompare
	add	esp,8
	cmp	eax,0
	sete	al
	movzx	eax,al
_238:
	cmp	eax,0
	je	_240
	push	bb_TMotives
	call	bbObjectNew
	add	esp,4
	inc	dword [eax+4]
	mov	esi,eax
	mov	eax,dword [bb_M]
	dec	dword [eax+4]
	jnz	_244
	push	eax
	call	bbGCFree
	add	esp,4
_244:
	mov	dword [bb_M],esi
	push	dword [bb_M]
	push	dword [bb_MotivesList]
	call	brl_linkedlist_ListAddLast
	add	esp,8
	push	ebx
	movzx	eax,word [ebp-12]
	push	eax
	mov	eax,dword [bb_M]
	mov	eax,dword [eax]
	call	dword [eax+48]
	add	esp,8
	movzx	eax,word [ebp-12]
	mov	eax,eax
	add	eax,1
	mov	eax,eax
	and	eax,0xffff
	mov	eax,eax
	mov	word [ebp-12],ax
_240:
_14:
	cmp	edi,dword [ebp-28]
	jne	_16
_15:
	mov	eax,dword [_218]
	and	eax,64
	cmp	eax,0
	jne	_245
	movzx	eax,word [ebp-12]
	mov	eax,eax
	mov	word [bb_CountMotives],ax
	or	dword [_218],64
_245:
	push	_12
	call	brl_filesystem_ChangeDir
	add	esp,4
	mov	eax,dword [_218]
	and	eax,128
	cmp	eax,0
	jne	_277
	push	-1
	push	_17
	call	brl_max2d_LoadImage
	add	esp,8
	inc	dword [eax+4]
	mov	dword [bb_IMGButton],eax
	or	dword [_218],128
_277:
	mov	eax,dword [_218]
	and	eax,256
	cmp	eax,0
	jne	_279
	push	1
	push	_18
	call	brl_max2d_LoadImage
	add	esp,8
	inc	dword [eax+4]
	mov	dword [bb_IMGCursor],eax
	or	dword [_218],256
_279:
	mov	eax,dword [_218]
	and	eax,512
	cmp	eax,0
	jne	_281
	push	-1
	push	_19
	call	brl_max2d_LoadImage
	add	esp,8
	inc	dword [eax+4]
	mov	dword [bb_ButtonL],eax
	or	dword [_218],512
_281:
	mov	eax,dword [_218]
	and	eax,1024
	cmp	eax,0
	jne	_283
	push	-1
	push	_20
	call	brl_max2d_LoadImage
	add	esp,8
	inc	dword [eax+4]
	mov	dword [bb_ButtonR],eax
	or	dword [_218],1024
_283:
	mov	eax,dword [_218]
	and	eax,2048
	cmp	eax,0
	jne	_285
	push	dword [bb_ButtonL]
	call	bb_mirrorImage
	add	esp,4
	inc	dword [eax+4]
	mov	dword [bb_ButtonLMirror],eax
	or	dword [_218],2048
_285:
	mov	eax,dword [_218]
	and	eax,4096
	cmp	eax,0
	jne	_287
	push	dword [bb_ButtonR]
	call	bb_mirrorImage
	add	esp,4
	inc	dword [eax+4]
	mov	dword [bb_ButtonRMirror],eax
	or	dword [_218],4096
_287:
	mov	eax,dword [_218]
	and	eax,8192
	cmp	eax,0
	jne	_289
	push	2
	push	_21
	call	brl_audio_LoadSound
	add	esp,8
	inc	dword [eax+4]
	mov	dword [bb_SFXPaperMove],eax
	or	dword [_218],8192
_289:
	mov	eax,dword [_218]
	and	eax,16384
	cmp	eax,0
	jne	_291
	push	2
	push	_22
	call	brl_audio_LoadSound
	add	esp,8
	inc	dword [eax+4]
	mov	dword [bb_SFXJingle],eax
	or	dword [_218],16384
_291:
	mov	eax,dword [_218]
	and	eax,32768
	cmp	eax,0
	jne	_293
	push	2
	push	_23
	call	brl_audio_LoadSound
	add	esp,8
	inc	dword [eax+4]
	mov	dword [bb_SFXClick],eax
	or	dword [_218],32768
_293:
	mov	eax,dword [_218]
	and	eax,65536
	cmp	eax,0
	jne	_295
	push	2
	push	_24
	call	brl_audio_LoadSound
	add	esp,8
	inc	dword [eax+4]
	mov	dword [bb_SFXpaperMix],eax
	or	dword [_218],65536
_295:
	mov	eax,dword [_218]
	and	eax,131072
	cmp	eax,0
	jne	_297
	push	2
	push	_25
	call	brl_audio_LoadSound
	add	esp,8
	inc	dword [eax+4]
	mov	dword [bb_SFXFanfare],eax
	or	dword [_218],131072
_297:
	mov	eax,dword [_218]
	and	eax,262144
	cmp	eax,0
	jne	_299
	push	4
	push	30
	push	_26
	call	brl_max2d_LoadImageFont
	add	esp,12
	inc	dword [eax+4]
	mov	dword [bb_FArial30],eax
	or	dword [_218],262144
_299:
	mov	eax,dword [_218]
	and	eax,524288
	cmp	eax,0
	jne	_301
	push	4
	push	20
	push	_26
	call	brl_max2d_LoadImageFont
	add	esp,12
	inc	dword [eax+4]
	mov	dword [bb_FArial20],eax
	or	dword [_218],524288
_301:
	push	dword [bb_FArial30]
	call	brl_max2d_SetImageFont
	add	esp,4
	call	bbMilliSecs
	push	eax
	call	brl_random_SeedRnd
	add	esp,4
	push	50
	push	50
	push	50
	call	brl_max2d_SetClsColor
	add	esp,12
	push	3
	call	brl_max2d_SetBlend
	add	esp,4
	call	bb_Menu
	push	_27
	call	brl_blitz_DebugLog
	add	esp,4
	push	1065353216
	push	1065353216
	call	brl_max2d_SetScale
	add	esp,8
_30:
	call	brl_max2d_Cls
	movzx	eax,byte [bb_WINMODE]
	mov	eax,eax
	cmp	eax,0
	jne	_302
	push	9
	call	brl_polledinput_KeyHit
	add	esp,4
	cmp	eax,0
	je	_303
	movzx	eax,byte [bb_Helpstate]
	mov	eax,eax
	add	eax,1
	mov	eax,eax
	and	eax,0xff
	mov	eax,eax
	mov	byte [bb_Helpstate],al
	movzx	eax,byte [bb_Helpstate]
	mov	eax,eax
	cmp	eax,3
	jle	_304
	mov	byte [bb_Helpstate],0
_304:
_303:
_302:
	push	100
	push	100
	push	100
	call	brl_max2d_SetColor
	add	esp,12
	push	1142292480
	push	1129447424
	push	0
	push	1142128640
	call	brl_max2d_DrawRect
	add	esp,16
	push	255
	push	255
	push	255
	call	brl_max2d_SetColor
	add	esp,12
	push	dword [bb_Previewheightfaktor]
	push	dword [bb_Previewwidthfaktor]
	call	brl_max2d_SetScale
	add	esp,8
	push	0
	push	1084227584
	push	1142210560
	push	dword [bb_IMGPuzzle]
	call	brl_max2d_DrawImage
	add	esp,16
	push	1065353216
	push	1065353216
	call	brl_max2d_SetScale
	add	esp,8
	call	bb_UserInput
	call	bb_DrawPuzzle
	call	bb_FPS
	call	bb_Buttons
	push	0
	call	bb_Mouse
	add	esp,4
	push	0
	call	brl_graphics_Flip
	add	esp,4
	push	dword [bb_Timer]
	call	brl_timer_WaitTimer
	add	esp,4
_28:
	push	27
	call	brl_polledinput_KeyHit
	add	esp,4
	cmp	eax,0
	jne	_305
	call	brl_polledinput_AppTerminate
_305:
	cmp	eax,0
	je	_30
_29:
	call	bbEnd
	mov	eax,0
_140:
	pop	edi
	pop	esi
	pop	ebx
	mov	esp,ebp
	pop	ebp
	ret
_bb_TMotives_New:
	push	ebp
	mov	ebp,esp
	push	ebx
	mov	ebx,dword [ebp+8]
	push	ebx
	call	bbObjectCtor
	add	esp,4
	mov	dword [ebx],bb_TMotives
	mov	eax,bbNullObject
	inc	dword [eax+4]
	mov	dword [ebx+8],eax
	mov	word [ebx+12],0
	mov	eax,bbEmptyString
	inc	dword [eax+4]
	mov	dword [ebx+16],eax
	push	-1
	push	8
	push	500
	push	500
	call	brl_max2d_CreateImage
	add	esp,16
	inc	dword [eax+4]
	mov	dword [ebx+20],eax
	push	-1
	push	8
	push	500
	push	500
	call	brl_max2d_CreateImage
	add	esp,16
	inc	dword [eax+4]
	mov	dword [ebx+24],eax
	fldz
	fstp	dword [ebx+28]
	fldz
	fstp	dword [ebx+32]
	fldz
	fstp	dword [ebx+36]
	fldz
	fstp	dword [ebx+40]
	mov	eax,0
_143:
	pop	ebx
	mov	esp,ebp
	pop	ebp
	ret
_bb_TMotives_Delete:
	push	ebp
	mov	ebp,esp
	push	ebx
	mov	ebx,dword [ebp+8]
_146:
	mov	eax,dword [ebx+24]
	dec	dword [eax+4]
	jnz	_315
	push	eax
	call	bbGCFree
	add	esp,4
_315:
	mov	eax,dword [ebx+20]
	dec	dword [eax+4]
	jnz	_317
	push	eax
	call	bbGCFree
	add	esp,4
_317:
	mov	eax,dword [ebx+16]
	dec	dword [eax+4]
	jnz	_319
	push	eax
	call	bbGCFree
	add	esp,4
_319:
	mov	eax,dword [ebx+8]
	dec	dword [eax+4]
	jnz	_321
	push	eax
	call	bbGCFree
	add	esp,4
_321:
	mov	dword [ebx],bbObjectClass
	push	ebx
	call	bbObjectDtor
	add	esp,4
	mov	eax,0
_313:
	pop	ebx
	mov	esp,ebp
	pop	ebp
	ret
_bb_TMotives_AddMotiv:
	push	ebp
	mov	ebp,esp
	sub	esp,8
	push	ebx
	push	esi
	movzx	eax,word [ebp+8]
	mov	eax,eax
	mov	word [ebp-4],ax
	mov	ebx,dword [ebp+12]
	inc	dword [ebx+4]
	mov	esi,ebx
	mov	eax,dword [bb_M]
	mov	eax,dword [eax+16]
	dec	dword [eax+4]
	jnz	_325
	push	eax
	call	bbGCFree
	add	esp,4
_325:
	mov	eax,dword [bb_M]
	mov	dword [eax+16],esi
	push	1
	push	ebx
	call	brl_max2d_LoadImage
	add	esp,8
	inc	dword [eax+4]
	mov	esi,eax
	mov	eax,dword [bb_M]
	mov	eax,dword [eax+20]
	dec	dword [eax+4]
	jnz	_329
	push	eax
	call	bbGCFree
	add	esp,4
_329:
	mov	eax,dword [bb_M]
	mov	dword [eax+20],esi
	push	1
	push	ebx
	call	brl_max2d_LoadImage
	add	esp,8
	push	eax
	call	bb_mirrorImage
	add	esp,4
	inc	dword [eax+4]
	mov	ebx,eax
	mov	eax,dword [bb_M]
	mov	eax,dword [eax+24]
	dec	dword [eax+4]
	jnz	_333
	push	eax
	call	bbGCFree
	add	esp,4
_333:
	mov	eax,dword [bb_M]
	mov	dword [eax+24],ebx
	mov	ebx,dword [bb_M]
	mov	eax,dword [bb_M]
	push	dword [eax+20]
	call	brl_max2d_ImageWidth
	add	esp,4
	mov	dword [ebp+-8],eax
	fild	dword [ebp+-8]
	fstp	dword [ebx+28]
	mov	ebx,dword [bb_M]
	mov	eax,dword [bb_M]
	push	dword [eax+20]
	call	brl_max2d_ImageHeight
	add	esp,4
	mov	dword [ebp+-8],eax
	fild	dword [ebp+-8]
	fstp	dword [ebx+32]
	mov	edx,dword [bb_M]
	fld	dword [_906]
	mov	eax,dword [bb_M]
	fdiv	dword [eax+28]
	fstp	dword [edx+36]
	mov	edx,dword [bb_M]
	fld	dword [_907]
	mov	eax,dword [bb_M]
	fdiv	dword [eax+32]
	fstp	dword [edx+40]
	mov	edx,dword [bb_M]
	movzx	eax,word [ebp-4]
	mov	eax,eax
	mov	word [edx+12],ax
	mov	eax,bbNullObject
_150:
	pop	esi
	pop	ebx
	mov	esp,ebp
	pop	ebp
	ret
_bb_TMotives_getImage:
	push	ebp
	mov	ebp,esp
	mov	eax,dword [bb_M]
	mov	eax,dword [eax+20]
_153:
	mov	esp,ebp
	pop	ebp
	ret
_bb_TMotives_getID:
	push	ebp
	mov	ebp,esp
	sub	esp,4
	mov	eax,dword [bb_M]
	movzx	eax,word [eax+12]
	mov	eax,eax
	mov	word [ebp-4],ax
_156:
	movzx	eax,word [ebp-4]
	mov	esp,ebp
	pop	ebp
	ret
bb_UserInput:
	push	ebp
	mov	ebp,esp
	push	1
	call	brl_polledinput_MouseHit
	add	esp,4
	mov	eax,eax
	and	eax,0xff
	mov	eax,eax
	mov	byte [bb_MOUSE1HIT],al
	call	brl_polledinput_MouseZ
	push	eax
	call	bb_MouseZSpeed
	add	esp,4
	mov	dword [bb_MOUSESCROLL],eax
	call	brl_polledinput_MouseX
	mov	dword [bb_MX],eax
	call	brl_polledinput_MouseY
	mov	dword [bb_MY],eax
	mov	eax,0
_158:
	mov	esp,ebp
	pop	ebp
	ret
bb_DrawPuzzle:
	push	ebp
	mov	ebp,esp
	sub	esp,28
	push	ebx
	push	esi
	push	edi
	mov	word [ebp-4],0
	mov	word [ebp-8],0
	mov	dword [ebp-24],bbEmptyString
	mov	word [bb_CorrectTiles],0
	mov	word [ebp-4],0
	mov	eax,dword [bb_MAP_X]
	sub	eax,1
	mov	eax,eax
	and	eax,0xffff
	mov	eax,eax
	mov	word [ebp-12],ax
	jmp	_340
_33:
	mov	word [ebp-8],0
	mov	eax,dword [bb_MAP_Y]
	sub	eax,1
	mov	eax,eax
	and	eax,0xffff
	mov	eax,eax
	mov	word [ebp-16],ax
	jmp	_342
_36:
	push	1053609165
	call	brl_max2d_SetAlpha
	add	esp,4
	mov	ebx,dword [bb_Puzzle_ID_Now]
	movzx	eax,word [ebp-4]
	mov	ecx,eax
	mov	eax,dword [bb_Puzzle_ID_Now]
	imul	ecx,dword [eax+24]
	movzx	eax,word [ebp-8]
	mov	eax,eax
	add	ecx,eax
	mov	edx,dword [bb_Puzzle_ID_Correct]
	movzx	eax,word [ebp-4]
	mov	eax,eax
	mov	esi,dword [bb_Puzzle_ID_Correct]
	imul	eax,dword [esi+24]
	movzx	esi,word [ebp-8]
	mov	esi,esi
	add	eax,esi
	mov	eax,dword [edx+eax*4+28]
	cmp	dword [ebx+ecx*4+28],eax
	jne	_344
	movzx	eax,byte [bb_Helpstate]
	mov	eax,eax
	cmp	eax,3
	je	_345
	push	0
	push	255
	push	0
	call	brl_max2d_SetColor
	add	esp,12
	movzx	eax,word [bb_PuzzleTileSize]
	mov	eax,eax
	add	eax,2
	mov	dword [ebp+-28],eax
	fild	dword [ebp+-28]
	sub	esp,4
	fstp	dword [esp]
	movzx	eax,word [bb_PuzzleTileSize]
	mov	eax,eax
	add	eax,2
	mov	dword [ebp+-28],eax
	fild	dword [ebp+-28]
	sub	esp,4
	fstp	dword [esp]
	movzx	eax,word [ebp-8]
	mov	edx,eax
	movzx	eax,word [bb_PuzzleTileSize]
	mov	eax,eax
	movzx	ecx,byte [bb_BetweenTile]
	mov	ecx,ecx
	add	eax,ecx
	imul	edx,eax
	sub	edx,1
	mov	dword [ebp+-28],edx
	fild	dword [ebp+-28]
	fadd	dword [bb_AutoMidY]
	sub	esp,4
	fstp	dword [esp]
	movzx	eax,word [ebp-4]
	mov	edx,eax
	movzx	eax,word [bb_PuzzleTileSize]
	mov	eax,eax
	movzx	ecx,byte [bb_BetweenTile]
	mov	ecx,ecx
	add	eax,ecx
	imul	edx,eax
	sub	edx,1
	mov	dword [ebp+-28],edx
	fild	dword [ebp+-28]
	fadd	dword [bb_AutoMidX]
	sub	esp,4
	fstp	dword [esp]
	call	brl_max2d_DrawRect
	add	esp,16
	push	255
	push	255
	push	255
	call	brl_max2d_SetColor
	add	esp,12
_345:
	movzx	eax,word [bb_CorrectTiles]
	mov	eax,eax
	add	eax,1
	mov	eax,eax
	and	eax,0xffff
	mov	eax,eax
	mov	word [bb_CorrectTiles],ax
_344:
	push	1065353216
	call	brl_max2d_SetAlpha
	add	esp,4
	push	0
	movzx	eax,word [ebp-8]
	mov	edx,eax
	movzx	eax,word [bb_PuzzleTileSize]
	mov	eax,eax
	movzx	ecx,byte [bb_BetweenTile]
	mov	ecx,ecx
	add	eax,ecx
	imul	edx,eax
	mov	dword [ebp+-28],edx
	fild	dword [ebp+-28]
	fadd	dword [bb_AutoMidY]
	sub	esp,4
	fstp	dword [esp]
	movzx	eax,word [ebp-4]
	mov	edx,eax
	movzx	eax,word [bb_PuzzleTileSize]
	mov	eax,eax
	movzx	ecx,byte [bb_BetweenTile]
	mov	ecx,ecx
	add	eax,ecx
	imul	edx,eax
	mov	dword [ebp+-28],edx
	fild	dword [ebp+-28]
	fadd	dword [bb_AutoMidX]
	sub	esp,4
	fstp	dword [esp]
	mov	edx,dword [bb_Puzzle]
	movzx	eax,word [ebp-4]
	mov	eax,eax
	mov	ecx,dword [bb_Puzzle]
	imul	eax,dword [ecx+24]
	movzx	ecx,word [ebp-8]
	mov	ecx,ecx
	add	eax,ecx
	push	dword [edx+eax*4+28]
	call	brl_max2d_DrawImage
	add	esp,16
	mov	eax,dword [bb_MX]
	mov	dword [ebp+-28],eax
	fild	dword [ebp+-28]
	fsub	dword [bb_AutoMidX]
	movzx	eax,word [bb_PuzzleTileSize]
	mov	eax,eax
	movzx	edx,byte [bb_BetweenTile]
	mov	edx,edx
	add	eax,edx
	mov	dword [ebp+-28],eax
	fild	dword [ebp+-28]
	fdivp	st1,st0
	sub	esp,8
	fstp	qword [esp]
	call	bbFloatToInt
	add	esp,8
	movzx	edx,word [ebp-4]
	mov	edx,edx
	cmp	eax,edx
	sete	al
	movzx	eax,al
	cmp	eax,0
	je	_346
	mov	eax,dword [bb_MY]
	mov	dword [ebp+-28],eax
	fild	dword [ebp+-28]
	fsub	dword [bb_AutoMidY]
	movzx	eax,word [bb_PuzzleTileSize]
	mov	eax,eax
	movzx	edx,byte [bb_BetweenTile]
	mov	edx,edx
	add	eax,edx
	mov	dword [ebp+-28],eax
	fild	dword [ebp+-28]
	fdivp	st1,st0
	sub	esp,8
	fstp	qword [esp]
	call	bbFloatToInt
	add	esp,8
	movzx	edx,word [ebp-8]
	mov	edx,edx
	cmp	eax,edx
	sete	al
	movzx	eax,al
_346:
	cmp	eax,0
	je	_348
	push	1045220557
	call	brl_max2d_SetAlpha
	add	esp,4
	push	4
	call	brl_max2d_SetBlend
	add	esp,4
	movzx	eax,word [bb_PuzzleTileSize]
	mov	dword [ebp+-28],eax
	fild	dword [ebp+-28]
	sub	esp,4
	fstp	dword [esp]
	movzx	eax,word [bb_PuzzleTileSize]
	mov	dword [ebp+-28],eax
	fild	dword [ebp+-28]
	sub	esp,4
	fstp	dword [esp]
	movzx	eax,word [ebp-8]
	mov	edx,eax
	movzx	eax,word [bb_PuzzleTileSize]
	mov	eax,eax
	movzx	ecx,byte [bb_BetweenTile]
	mov	ecx,ecx
	add	eax,ecx
	imul	edx,eax
	mov	dword [ebp+-28],edx
	fild	dword [ebp+-28]
	fadd	dword [bb_AutoMidY]
	sub	esp,4
	fstp	dword [esp]
	movzx	eax,word [ebp-4]
	mov	edx,eax
	movzx	eax,word [bb_PuzzleTileSize]
	mov	eax,eax
	movzx	ecx,byte [bb_BetweenTile]
	mov	ecx,ecx
	add	eax,ecx
	imul	edx,eax
	mov	dword [ebp+-28],edx
	fild	dword [ebp+-28]
	fadd	dword [bb_AutoMidX]
	sub	esp,4
	fstp	dword [esp]
	call	brl_max2d_DrawRect
	add	esp,16
	push	3
	call	brl_max2d_SetBlend
	add	esp,4
	push	1065353216
	call	brl_max2d_SetAlpha
	add	esp,4
	mov	ecx,dword [bb_ChangeID]
	mov	edx,dword [bb_Puzzle_ID_Correct]
	movzx	eax,word [ebp-4]
	mov	eax,eax
	mov	ebx,dword [bb_Puzzle_ID_Correct]
	imul	eax,dword [ebx+24]
	movzx	ebx,word [ebp-8]
	mov	ebx,ebx
	add	eax,ebx
	cmp	ecx,dword [edx+eax*4+28]
	sete	al
	movzx	eax,al
	cmp	eax,0
	je	_349
	movzx	eax,byte [bb_Helpstate]
	mov	eax,eax
	cmp	eax,1
	setge	al
	movzx	eax,al
_349:
	cmp	eax,0
	je	_351
	movzx	eax,byte [bb_Helpstate]
	mov	eax,eax
	cmp	eax,3
	setne	al
	movzx	eax,al
_351:
	cmp	eax,0
	je	_353
	push	1053609165
	call	brl_max2d_SetAlpha
	add	esp,4
	push	4
	call	brl_max2d_SetBlend
	add	esp,4
	push	0
	push	125
	push	0
	call	brl_max2d_SetColor
	add	esp,12
	movzx	eax,word [bb_PuzzleTileSize]
	mov	eax,eax
	add	eax,4
	mov	dword [ebp+-28],eax
	fild	dword [ebp+-28]
	sub	esp,4
	fstp	dword [esp]
	movzx	eax,word [bb_PuzzleTileSize]
	mov	eax,eax
	add	eax,4
	mov	dword [ebp+-28],eax
	fild	dword [ebp+-28]
	sub	esp,4
	fstp	dword [esp]
	movzx	eax,word [ebp-8]
	mov	edx,eax
	movzx	eax,word [bb_PuzzleTileSize]
	mov	eax,eax
	movzx	ecx,byte [bb_BetweenTile]
	mov	ecx,ecx
	add	eax,ecx
	imul	edx,eax
	sub	edx,2
	mov	dword [ebp+-28],edx
	fild	dword [ebp+-28]
	fadd	dword [bb_AutoMidY]
	sub	esp,4
	fstp	dword [esp]
	movzx	eax,word [ebp-4]
	mov	edx,eax
	movzx	eax,word [bb_PuzzleTileSize]
	mov	eax,eax
	movzx	ecx,byte [bb_BetweenTile]
	mov	ecx,ecx
	add	eax,ecx
	imul	edx,eax
	sub	edx,2
	mov	dword [ebp+-28],edx
	fild	dword [ebp+-28]
	fadd	dword [bb_AutoMidX]
	sub	esp,4
	fstp	dword [esp]
	call	brl_max2d_DrawRect
	add	esp,16
	push	255
	push	255
	push	255
	call	brl_max2d_SetColor
	add	esp,12
	push	3
	call	brl_max2d_SetBlend
	add	esp,4
	push	1065353216
	call	brl_max2d_SetAlpha
	add	esp,4
_353:
_348:
	movzx	eax,byte [bb_Helpstate]
	mov	eax,eax
	cmp	eax,2
	sete	al
	movzx	eax,al
	cmp	eax,0
	je	_354
	mov	ecx,dword [bb_ChangeID]
	mov	edx,dword [bb_Puzzle_ID_Correct]
	movzx	eax,word [ebp-4]
	mov	eax,eax
	mov	ebx,dword [bb_Puzzle_ID_Correct]
	imul	eax,dword [ebx+24]
	movzx	ebx,word [ebp-8]
	mov	ebx,ebx
	add	eax,ebx
	cmp	ecx,dword [edx+eax*4+28]
	sete	al
	movzx	eax,al
_354:
	cmp	eax,0
	je	_356
	push	1053609165
	call	brl_max2d_SetAlpha
	add	esp,4
	push	4
	call	brl_max2d_SetBlend
	add	esp,4
	push	0
	push	125
	push	0
	call	brl_max2d_SetColor
	add	esp,12
	movzx	eax,word [bb_PuzzleTileSize]
	mov	eax,eax
	add	eax,4
	mov	dword [ebp+-28],eax
	fild	dword [ebp+-28]
	sub	esp,4
	fstp	dword [esp]
	movzx	eax,word [bb_PuzzleTileSize]
	mov	eax,eax
	add	eax,4
	mov	dword [ebp+-28],eax
	fild	dword [ebp+-28]
	sub	esp,4
	fstp	dword [esp]
	movzx	eax,word [ebp-8]
	mov	edx,eax
	movzx	eax,word [bb_PuzzleTileSize]
	mov	eax,eax
	movzx	ecx,byte [bb_BetweenTile]
	mov	ecx,ecx
	add	eax,ecx
	imul	edx,eax
	sub	edx,2
	mov	dword [ebp+-28],edx
	fild	dword [ebp+-28]
	fadd	dword [bb_AutoMidY]
	sub	esp,4
	fstp	dword [esp]
	movzx	eax,word [ebp-4]
	mov	edx,eax
	movzx	eax,word [bb_PuzzleTileSize]
	mov	eax,eax
	movzx	ecx,byte [bb_BetweenTile]
	mov	ecx,ecx
	add	eax,ecx
	imul	edx,eax
	sub	edx,2
	mov	dword [ebp+-28],edx
	fild	dword [ebp+-28]
	fadd	dword [bb_AutoMidX]
	sub	esp,4
	fstp	dword [esp]
	call	brl_max2d_DrawRect
	add	esp,16
	push	255
	push	255
	push	255
	call	brl_max2d_SetColor
	add	esp,12
	push	3
	call	brl_max2d_SetBlend
	add	esp,4
	push	1065353216
	call	brl_max2d_SetAlpha
	add	esp,4
_356:
	movzx	eax,byte [bb_WINMODE]
	mov	eax,eax
	cmp	eax,3
	jne	_357
	mov	ebx,dword [bb_Puzzle_ID_Now]
	movzx	eax,word [ebp-4]
	mov	ecx,eax
	mov	eax,dword [bb_Puzzle_ID_Now]
	imul	ecx,dword [eax+24]
	movzx	eax,word [ebp-8]
	mov	eax,eax
	add	ecx,eax
	mov	edx,dword [bb_Puzzle_ID_Correct]
	movzx	eax,word [ebp-4]
	mov	eax,eax
	mov	esi,dword [bb_Puzzle_ID_Correct]
	imul	eax,dword [esi+24]
	movzx	esi,word [ebp-8]
	mov	esi,esi
	add	eax,esi
	mov	eax,dword [edx+eax*4+28]
	mov	dword [ebx+ecx*4+28],eax
	mov	edx,dword [bb_Puzzle_Original]
	movzx	eax,word [ebp-4]
	mov	eax,eax
	mov	ecx,dword [bb_Puzzle_Original]
	imul	eax,dword [ecx+24]
	movzx	ecx,word [ebp-8]
	mov	ecx,ecx
	add	eax,ecx
	mov	ebx,dword [edx+eax*4+28]
	inc	dword [ebx+4]
	mov	edx,dword [bb_Puzzle]
	movzx	eax,word [ebp-4]
	mov	eax,eax
	mov	ecx,dword [bb_Puzzle]
	imul	eax,dword [ecx+24]
	movzx	ecx,word [ebp-8]
	mov	ecx,ecx
	add	eax,ecx
	mov	eax,dword [edx+eax*4+28]
	dec	dword [eax+4]
	jnz	_361
	push	eax
	call	bbGCFree
	add	esp,4
_361:
	mov	edx,dword [bb_Puzzle]
	movzx	eax,word [ebp-4]
	mov	eax,eax
	mov	ecx,dword [bb_Puzzle]
	imul	eax,dword [ecx+24]
	movzx	ecx,word [ebp-8]
	mov	ecx,ecx
	add	eax,ecx
	mov	dword [edx+eax*4+28],ebx
	mov	word [bb_TileMoves],0
_357:
_34:
	add	word [ebp-8],1
_342:
	movzx	edx,word [ebp-8]
	movzx	eax,word [ebp-16]
	cmp	edx,eax
	jle	_36
_35:
_31:
	add	word [ebp-4],1
_340:
	movzx	edx,word [ebp-4]
	movzx	eax,word [ebp-12]
	cmp	edx,eax
	jle	_33
_32:
	push	1065353216
	call	brl_max2d_SetAlpha
	add	esp,4
	movzx	eax,byte [bb_WINMODE]
	mov	eax,eax
	cmp	eax,4
	jne	_362
	call	bb_MixPuzzle
	mov	byte [bb_WINMODE],0
_362:
	push	dword [bb_FArial20]
	call	brl_max2d_SetImageFont
	add	esp,4
	movzx	eax,byte [bb_WINMODE]
	mov	eax,eax
	cmp	eax,0
	jne	_363
	mov	ecx,3600
	mov	ebx,1000
	mov	eax,dword [bb_TIME]
	sub	eax,dword [bb_GameSecs]
	cdq
	idiv	ebx
	cdq
	idiv	ecx
	cmp	eax,9
	jle	_364
	mov	ecx,3600
	mov	ebx,1000
	mov	eax,dword [bb_TIME]
	sub	eax,dword [bb_GameSecs]
	cdq
	idiv	ebx
	cdq
	idiv	ecx
	push	eax
	call	bbStringFromInt
	add	esp,4
	mov	edi,eax
	jmp	_365
_364:
	mov	ecx,3600
	mov	ebx,1000
	mov	eax,dword [bb_TIME]
	sub	eax,dword [bb_GameSecs]
	cdq
	idiv	ebx
	cdq
	idiv	ecx
	push	eax
	call	bbStringFromInt
	add	esp,4
	push	eax
	push	_37
	call	bbStringConcat
	add	esp,8
	mov	edi,eax
_365:
	mov	esi,59
	mov	ebx,60
	mov	ecx,1000
	mov	eax,dword [bb_TIME]
	sub	eax,dword [bb_GameSecs]
	cdq
	idiv	ecx
	cdq
	idiv	ebx
	cdq
	idiv	esi
	mov	eax,edx
	cmp	eax,9
	jle	_366
	mov	esi,59
	mov	ebx,60
	mov	ecx,1000
	mov	eax,dword [bb_TIME]
	sub	eax,dword [bb_GameSecs]
	cdq
	idiv	ecx
	cdq
	idiv	ebx
	cdq
	idiv	esi
	mov	eax,edx
	push	eax
	call	bbStringFromInt
	add	esp,4
	mov	ebx,eax
	jmp	_367
_366:
	mov	esi,59
	mov	ebx,60
	mov	ecx,1000
	mov	eax,dword [bb_TIME]
	sub	eax,dword [bb_GameSecs]
	cdq
	idiv	ecx
	cdq
	idiv	ebx
	cdq
	idiv	esi
	mov	eax,edx
	push	eax
	call	bbStringFromInt
	add	esp,4
	push	eax
	push	_37
	call	bbStringConcat
	add	esp,8
	mov	ebx,eax
_367:
	mov	esi,59
	mov	ecx,1000
	mov	eax,dword [bb_TIME]
	sub	eax,dword [bb_GameSecs]
	cdq
	idiv	ecx
	cdq
	idiv	esi
	mov	eax,edx
	cmp	eax,9
	jle	_368
	mov	esi,59
	mov	ecx,1000
	mov	eax,dword [bb_TIME]
	sub	eax,dword [bb_GameSecs]
	cdq
	idiv	ecx
	cdq
	idiv	esi
	mov	eax,edx
	push	eax
	call	bbStringFromInt
	add	esp,4
	jmp	_369
_368:
	mov	esi,59
	mov	ecx,1000
	mov	eax,dword [bb_TIME]
	sub	eax,dword [bb_GameSecs]
	cdq
	idiv	ecx
	cdq
	idiv	esi
	mov	eax,edx
	push	eax
	call	bbStringFromInt
	add	esp,4
	push	eax
	push	_37
	call	bbStringConcat
	add	esp,8
_369:
	push	eax
	push	_38
	push	ebx
	push	_38
	push	edi
	call	bbStringConcat
	add	esp,8
	push	eax
	call	bbStringConcat
	add	esp,8
	push	eax
	call	bbStringConcat
	add	esp,8
	push	eax
	call	bbStringConcat
	add	esp,8
	mov	ebx,eax
	inc	dword [ebx+4]
	mov	eax,dword [bb_GameTime]
	dec	dword [eax+4]
	jnz	_373
	push	eax
	call	bbGCFree
	add	esp,4
_373:
	mov	dword [bb_GameTime],ebx
_363:
	movzx	eax,byte [bb_Helpstate]
	mov	eax,eax
	mov	byte [ebp-20],al
	movzx	eax,byte [ebp-20]
	cmp	eax,0
	je	_376
	movzx	eax,byte [ebp-20]
	cmp	eax,1
	je	_377
	movzx	eax,byte [ebp-20]
	cmp	eax,2
	je	_378
	movzx	eax,byte [ebp-20]
	cmp	eax,3
	je	_379
	jmp	_375
_376:
	mov	dword [ebp-24],_39
	jmp	_375
_377:
	mov	dword [ebp-24],_40
	jmp	_375
_378:
	mov	dword [ebp-24],_41
	jmp	_375
_379:
	mov	dword [ebp-24],_42
_375:
	push	1141997568
	mov	ebx,400
	push	_44
	push	dword [ebp-24]
	call	bbStringConcat
	add	esp,8
	push	eax
	call	brl_max2d_TextWidth
	add	esp,4
	cdq
	and	edx,1
	add	eax,edx
	sar	eax,1
	sub	ebx,eax
	mov	dword [ebp+-28],ebx
	fild	dword [ebp+-28]
	sub	esp,4
	fstp	dword [esp]
	push	_43
	push	dword [ebp-24]
	call	bbStringConcat
	add	esp,8
	push	eax
	call	brl_max2d_DrawText
	add	esp,12
	push	1141997568
	mov	ebx,590
	push	dword [bb_GameTime]
	call	brl_max2d_TextWidth
	add	esp,4
	sub	ebx,eax
	mov	dword [ebp+-28],ebx
	fild	dword [ebp+-28]
	sub	esp,4
	fstp	dword [esp]
	push	dword [bb_GameTime]
	call	brl_max2d_DrawText
	add	esp,12
	movzx	eax,word [bb_CorrectTiles]
	mov	edx,eax
	movzx	eax,word [bb_AllTiles]
	mov	eax,eax
	cmp	edx,eax
	jne	_380
	movzx	eax,byte [bb_WINMODE]
	mov	eax,eax
	cmp	eax,0
	jne	_381
	push	dword [bb_SFXFanfare]
	call	bb_Eventsystem
	add	esp,4
_381:
	movzx	eax,byte [bb_WINMODE]
	mov	eax,eax
	cmp	eax,2
	jge	_382
	push	1129447424
	push	1143111680
	push	_45
	call	brl_max2d_DrawText
	add	esp,12
	mov	byte [bb_WINMODE],1
_382:
	movzx	eax,byte [bb_WINMODE]
	mov	eax,eax
	cmp	eax,2
	jl	_383
	push	1129447424
	push	1143111680
	push	_46
	call	brl_max2d_DrawText
	add	esp,12
	mov	byte [bb_WINMODE],2
_383:
	jmp	_384
_380:
	push	1129447424
	push	1142210560
	movzx	eax,word [bb_CorrectTiles]
	mov	eax,eax
	push	eax
	call	bbStringFromInt
	add	esp,4
	push	eax
	push	_47
	call	bbStringConcat
	add	esp,8
	push	eax
	call	brl_max2d_DrawText
	add	esp,12
_384:
	push	1130430464
	push	1142210560
	movzx	eax,word [bb_TileMoves]
	mov	eax,eax
	push	eax
	call	bbStringFromInt
	add	esp,4
	push	eax
	push	_48
	call	bbStringConcat
	add	esp,8
	push	eax
	call	brl_max2d_DrawText
	add	esp,12
	push	dword [bb_FArial30]
	call	brl_max2d_SetImageFont
	add	esp,4
	mov	eax,0
_160:
	pop	edi
	pop	esi
	pop	ebx
	mov	esp,ebp
	pop	ebp
	ret
bb_Mouse:
	push	ebp
	mov	ebp,esp
	sub	esp,20
	push	ebx
	push	esi
	movzx	eax,byte [ebp+8]
	mov	eax,eax
	mov	byte [ebp-4],al
	movzx	eax,byte [bb_Selection]
	mov	eax,eax
	cmp	eax,0
	sete	al
	movzx	eax,al
	cmp	eax,0
	jne	_385
	movzx	eax,word [bb_CorrectTiles]
	mov	edx,eax
	movzx	eax,word [bb_AllTiles]
	mov	eax,eax
	cmp	edx,eax
	sete	al
	movzx	eax,al
_385:
	cmp	eax,0
	je	_387
	push	0
	mov	eax,dword [bb_MY]
	mov	dword [ebp+-20],eax
	fild	dword [ebp+-20]
	sub	esp,4
	fstp	dword [esp]
	mov	eax,dword [bb_MX]
	mov	dword [ebp+-20],eax
	fild	dword [ebp+-20]
	sub	esp,4
	fstp	dword [esp]
	push	dword [bb_IMGCursor]
	call	brl_max2d_DrawImage
	add	esp,16
	jmp	_388
_387:
	movzx	eax,byte [bb_Selection]
	mov	eax,eax
	cmp	eax,0
	je	_389
	push	0
	mov	ecx,dword [bb_MY]
	movzx	eax,word [bb_PuzzleTileSize]
	mov	eax,eax
	cdq
	and	edx,1
	add	eax,edx
	sar	eax,1
	sub	ecx,eax
	mov	dword [ebp+-20],ecx
	fild	dword [ebp+-20]
	sub	esp,4
	fstp	dword [esp]
	mov	ecx,dword [bb_MX]
	movzx	eax,word [bb_PuzzleTileSize]
	mov	eax,eax
	cdq
	and	edx,1
	add	eax,edx
	sar	eax,1
	sub	ecx,eax
	mov	dword [ebp+-20],ecx
	fild	dword [ebp+-20]
	sub	esp,4
	fstp	dword [esp]
	push	dword [bb_PXMCursor]
	call	brl_max2d_DrawImage
	add	esp,16
_389:
_388:
	movzx	eax,word [bb_CorrectTiles]
	mov	edx,eax
	movzx	eax,word [bb_AllTiles]
	mov	eax,eax
	cmp	edx,eax
	setne	al
	movzx	eax,al
	cmp	eax,0
	je	_390
	movzx	eax,byte [ebp-4]
	mov	eax,eax
	cmp	eax,0
	sete	al
	movzx	eax,al
_390:
	cmp	eax,0
	je	_392
	movzx	eax,byte [bb_MOUSE1HIT]
	mov	eax,eax
	cmp	eax,1
	sete	al
	movzx	eax,al
	cmp	eax,0
	je	_393
	mov	eax,dword [bb_MX]
	mov	dword [ebp+-20],eax
	fild	dword [ebp+-20]
	fld	dword [bb_AutoMidX]
	fadd	dword [_943]
	movzx	eax,byte [bb_BetweenTile]
	mov	eax,eax
	imul	eax,dword [bb_MAP_X]
	mov	dword [ebp+-20],eax
	fild	dword [ebp+-20]
	faddp	st1,st0
	fxch	st1
	fucompp
	fnstsw	ax
	sahf
	setb	al
	movzx	eax,al
_393:
	cmp	eax,0
	je	_395
	mov	eax,dword [bb_MY]
	mov	dword [ebp+-20],eax
	fild	dword [ebp+-20]
	fld	dword [bb_AutoMidY]
	fadd	dword [_944]
	movzx	eax,byte [bb_BetweenTile]
	mov	eax,eax
	imul	eax,dword [bb_MAP_Y]
	mov	dword [ebp+-20],eax
	fild	dword [ebp+-20]
	faddp	st1,st0
	fxch	st1
	fucompp
	fnstsw	ax
	sahf
	setb	al
	movzx	eax,al
_395:
	cmp	eax,0
	je	_397
	movzx	eax,byte [bb_Selection]
	mov	eax,eax
	cmp	eax,0
	sete	al
	movzx	eax,al
_397:
	cmp	eax,0
	je	_399
	movzx	eax,byte [bb_MoveReady]
	mov	eax,eax
	cmp	eax,0
	sete	al
	movzx	eax,al
_399:
	cmp	eax,0
	je	_401
	mov	eax,dword [bb_MX]
	mov	dword [ebp+-20],eax
	fild	dword [ebp+-20]
	fsub	dword [bb_AutoMidX]
	movzx	eax,word [bb_PuzzleTileSize]
	mov	eax,eax
	movzx	edx,byte [bb_BetweenTile]
	mov	edx,edx
	add	eax,edx
	mov	dword [ebp+-20],eax
	fild	dword [ebp+-20]
	fdivp	st1,st0
	sub	esp,8
	fstp	qword [esp]
	call	bbFloatToInt
	add	esp,8
	mov	dword [bb_ChangeX_old],eax
	mov	eax,dword [bb_MY]
	mov	dword [ebp+-20],eax
	fild	dword [ebp+-20]
	fsub	dword [bb_AutoMidY]
	movzx	eax,word [bb_PuzzleTileSize]
	mov	eax,eax
	movzx	edx,byte [bb_BetweenTile]
	mov	edx,edx
	add	eax,edx
	mov	dword [ebp+-20],eax
	fild	dword [ebp+-20]
	fdivp	st1,st0
	sub	esp,8
	fstp	qword [esp]
	call	bbFloatToInt
	add	esp,8
	mov	dword [bb_ChangeY_old],eax
	movzx	eax,byte [bb_Helpstate]
	mov	eax,eax
	cmp	eax,3
	jne	_402
	mov	ecx,dword [bb_Puzzle]
	mov	eax,dword [bb_ChangeX_old]
	mov	edx,dword [bb_Puzzle]
	imul	eax,dword [edx+24]
	add	eax,dword [bb_ChangeY_old]
	mov	ebx,dword [ecx+eax*4+28]
	inc	dword [ebx+4]
	mov	eax,dword [bb_PXMCursor]
	dec	dword [eax+4]
	jnz	_406
	push	eax
	call	bbGCFree
	add	esp,4
_406:
	mov	dword [bb_PXMCursor],ebx
	mov	ecx,dword [bb_Puzzle_ID_Now]
	mov	eax,dword [bb_ChangeX_old]
	mov	edx,dword [bb_Puzzle_ID_Now]
	imul	eax,dword [edx+24]
	add	eax,dword [bb_ChangeY_old]
	mov	eax,dword [ecx+eax*4+28]
	mov	dword [bb_ChangeID],eax
	mov	byte [bb_Selection],1
	jmp	_407
_402:
	movzx	eax,byte [bb_Helpstate]
	mov	eax,eax
	cmp	eax,3
	setne	al
	movzx	eax,al
	cmp	eax,0
	je	_408
	mov	ecx,dword [bb_Puzzle_ID_Now]
	mov	eax,dword [bb_ChangeX_old]
	mov	edx,dword [bb_Puzzle_ID_Now]
	imul	eax,dword [edx+24]
	add	eax,dword [bb_ChangeY_old]
	mov	ebx,dword [ecx+eax*4+28]
	mov	ecx,dword [bb_Puzzle_ID_Correct]
	mov	eax,dword [bb_ChangeX_old]
	mov	edx,dword [bb_Puzzle_ID_Correct]
	imul	eax,dword [edx+24]
	add	eax,dword [bb_ChangeY_old]
	cmp	ebx,dword [ecx+eax*4+28]
	setne	al
	movzx	eax,al
_408:
	cmp	eax,0
	je	_410
	mov	ecx,dword [bb_Puzzle]
	mov	eax,dword [bb_ChangeX_old]
	mov	edx,dword [bb_Puzzle]
	imul	eax,dword [edx+24]
	add	eax,dword [bb_ChangeY_old]
	mov	ebx,dword [ecx+eax*4+28]
	inc	dword [ebx+4]
	mov	eax,dword [bb_PXMCursor]
	dec	dword [eax+4]
	jnz	_414
	push	eax
	call	bbGCFree
	add	esp,4
_414:
	mov	dword [bb_PXMCursor],ebx
	mov	ecx,dword [bb_Puzzle_ID_Now]
	mov	eax,dword [bb_ChangeX_old]
	mov	edx,dword [bb_Puzzle_ID_Now]
	imul	eax,dword [edx+24]
	add	eax,dword [bb_ChangeY_old]
	mov	eax,dword [ecx+eax*4+28]
	mov	dword [bb_ChangeID],eax
	mov	byte [bb_Selection],1
_410:
_407:
	mov	byte [bb_MOUSE1HIT],0
_401:
	mov	eax,dword [bb_MX]
	mov	dword [ebp+-20],eax
	fild	dword [ebp+-20]
	movzx	eax,byte [bb_BetweenTile]
	mov	eax,eax
	imul	eax,dword [bb_MAP_X]
	add	eax,512
	mov	dword [ebp+-20],eax
	fild	dword [ebp+-20]
	fadd	dword [bb_AutoMidX]
	fxch	st1
	fucompp
	fnstsw	ax
	sahf
	setae	al
	movzx	eax,al
	cmp	eax,0
	jne	_415
	mov	eax,dword [bb_MY]
	mov	dword [ebp+-20],eax
	fild	dword [ebp+-20]
	movzx	eax,byte [bb_BetweenTile]
	mov	eax,eax
	imul	eax,dword [bb_MAP_Y]
	add	eax,512
	mov	dword [ebp+-20],eax
	fild	dword [ebp+-20]
	fadd	dword [bb_AutoMidY]
	fxch	st1
	fucompp
	fnstsw	ax
	sahf
	setae	al
	movzx	eax,al
_415:
	cmp	eax,0
	jne	_417
	mov	eax,dword [bb_MY]
	mov	dword [ebp+-20],eax
	fild	dword [ebp+-20]
	fld	dword [bb_AutoMidY]
	fxch	st1
	fucompp
	fnstsw	ax
	sahf
	setb	al
	movzx	eax,al
_417:
	cmp	eax,0
	jne	_419
	mov	eax,dword [bb_MX]
	mov	dword [ebp+-20],eax
	fild	dword [ebp+-20]
	fld	dword [bb_AutoMidX]
	fxch	st1
	fucompp
	fnstsw	ax
	sahf
	setb	al
	movzx	eax,al
_419:
	cmp	eax,0
	je	_421
	movzx	eax,byte [bb_MOUSE1HIT]
	mov	eax,eax
	cmp	eax,1
	sete	al
	movzx	eax,al
_421:
	cmp	eax,0
	je	_423
	mov	byte [bb_Selection],0
	mov	dword [bb_ChangeID],-1
	mov	dword [bb_ChangeX_old],0
	mov	dword [bb_ChangeY_old],0
	mov	byte [bb_MOUSE1HIT],0
	mov	byte [bb_WINMODE],0
_423:
	movzx	eax,byte [bb_Selection]
	mov	eax,eax
	cmp	eax,1
	sete	al
	movzx	eax,al
	cmp	eax,0
	je	_424
	movzx	eax,byte [bb_MOUSE1HIT]
	mov	eax,eax
	cmp	eax,1
	sete	al
	movzx	eax,al
_424:
	cmp	eax,0
	je	_426
	mov	eax,dword [bb_MX]
	mov	dword [ebp+-20],eax
	fild	dword [ebp+-20]
	movzx	eax,byte [bb_BetweenTile]
	mov	eax,eax
	imul	eax,dword [bb_MAP_X]
	add	eax,512
	mov	dword [ebp+-20],eax
	fild	dword [ebp+-20]
	fadd	dword [bb_AutoMidX]
	fxch	st1
	fucompp
	fnstsw	ax
	sahf
	setb	al
	movzx	eax,al
_426:
	cmp	eax,0
	je	_428
	mov	eax,dword [bb_MY]
	mov	dword [ebp+-20],eax
	fild	dword [ebp+-20]
	movzx	eax,byte [bb_BetweenTile]
	mov	eax,eax
	imul	eax,dword [bb_MAP_Y]
	add	eax,512
	mov	dword [ebp+-20],eax
	fild	dword [ebp+-20]
	fadd	dword [bb_AutoMidY]
	fxch	st1
	fucompp
	fnstsw	ax
	sahf
	setb	al
	movzx	eax,al
_428:
	cmp	eax,0
	je	_430
	mov	eax,dword [bb_MX]
	mov	dword [ebp+-20],eax
	fild	dword [ebp+-20]
	fsub	dword [bb_AutoMidX]
	movzx	eax,word [bb_PuzzleTileSize]
	mov	eax,eax
	movzx	edx,byte [bb_BetweenTile]
	mov	edx,edx
	add	eax,edx
	mov	dword [ebp+-20],eax
	fild	dword [ebp+-20]
	fdivp	st1,st0
	sub	esp,8
	fstp	qword [esp]
	call	bbFloatToInt
	add	esp,8
	mov	eax,eax
	and	eax,0xffff
	mov	eax,eax
	mov	word [bb_NewX],ax
	mov	eax,dword [bb_MY]
	mov	dword [ebp+-20],eax
	fild	dword [ebp+-20]
	fsub	dword [bb_AutoMidY]
	movzx	eax,word [bb_PuzzleTileSize]
	mov	eax,eax
	movzx	edx,byte [bb_BetweenTile]
	mov	edx,edx
	add	eax,edx
	mov	dword [ebp+-20],eax
	fild	dword [ebp+-20]
	fdivp	st1,st0
	sub	esp,8
	fstp	qword [esp]
	call	bbFloatToInt
	add	esp,8
	mov	eax,eax
	and	eax,0xffff
	mov	eax,eax
	mov	word [bb_NewY],ax
	movzx	eax,word [bb_NewX]
	mov	eax,eax
	cmp	eax,-1
	setg	al
	movzx	eax,al
	cmp	eax,0
	je	_431
	movzx	eax,word [bb_NewX]
	mov	eax,eax
	cmp	eax,dword [bb_MAP_X]
	setl	al
	movzx	eax,al
_431:
	cmp	eax,0
	je	_433
	movzx	eax,word [bb_NewY]
	mov	eax,eax
	cmp	eax,-1
	setg	al
	movzx	eax,al
_433:
	cmp	eax,0
	je	_435
	movzx	eax,word [bb_NewY]
	mov	eax,eax
	cmp	eax,dword [bb_MAP_Y]
	setl	al
	movzx	eax,al
_435:
	cmp	eax,0
	je	_437
	movzx	eax,byte [bb_Helpstate]
	mov	eax,eax
	cmp	eax,3
	jne	_438
	movzx	eax,byte [bb_MoveReady]
	mov	eax,eax
	cmp	eax,0
	jne	_439
	push	dword [bb_SFXPaperMove]
	call	bb_Eventsystem
	add	esp,4
	mov	byte [bb_Selection],0
	mov	eax,dword [bb_TIME]
	add	eax,360
	mov	dword [bb_MoveReadyTime],eax
	mov	byte [bb_MoveReady],2
_439:
	jmp	_440
_438:
	movzx	eax,byte [bb_Helpstate]
	mov	eax,eax
	cmp	eax,3
	setne	al
	movzx	eax,al
	cmp	eax,0
	je	_441
	mov	edx,dword [bb_Puzzle_ID_Now]
	movzx	eax,word [bb_NewX]
	mov	eax,eax
	mov	ecx,dword [bb_Puzzle_ID_Now]
	imul	eax,dword [ecx+24]
	movzx	ecx,word [bb_NewY]
	mov	ecx,ecx
	add	eax,ecx
	mov	ecx,dword [edx+eax*4+28]
	mov	edx,dword [bb_Puzzle_ID_Correct]
	movzx	eax,word [bb_NewX]
	mov	eax,eax
	mov	ebx,dword [bb_Puzzle_ID_Correct]
	imul	eax,dword [ebx+24]
	movzx	ebx,word [bb_NewY]
	mov	ebx,ebx
	add	eax,ebx
	cmp	ecx,dword [edx+eax*4+28]
	setne	al
	movzx	eax,al
_441:
	cmp	eax,0
	je	_443
	movzx	eax,byte [bb_MoveReady]
	mov	eax,eax
	cmp	eax,1
	setne	al
	movzx	eax,al
_443:
	cmp	eax,0
	je	_445
	movzx	eax,byte [bb_MoveReady]
	mov	eax,eax
	cmp	eax,0
	jne	_446
	push	dword [bb_SFXPaperMove]
	call	bb_Eventsystem
	add	esp,4
	mov	byte [bb_Selection],0
	mov	eax,dword [bb_TIME]
	add	eax,360
	mov	dword [bb_MoveReadyTime],eax
	mov	byte [bb_MoveReady],2
_446:
_445:
_440:
	mov	byte [bb_MOUSE1HIT],0
_437:
_430:
	mov	eax,dword [bb_MoveReadyTime]
	cmp	eax,dword [bb_TIME]
	setl	al
	movzx	eax,al
	cmp	eax,0
	je	_447
	movzx	eax,byte [bb_MoveReady]
	mov	eax,eax
	cmp	eax,2
	sete	al
	movzx	eax,al
_447:
	cmp	eax,0
	je	_449
	mov	byte [bb_MoveReady],1
_449:
	movzx	eax,byte [bb_MoveReady]
	mov	eax,eax
	cmp	eax,2
	jne	_450
	fld1
	fstp	qword [ebp-12]
	mov	eax,dword [bb_MoveReadyTime]
	sub	eax,dword [bb_TIME]
	cdq
	and	edx,1
	add	eax,edx
	sar	eax,1
	mov	dword [ebp+-20],eax
	fild	dword [ebp+-20]
	sub	esp,8
	fstp	qword [esp]
	call	bbSin
	add	esp,8
	fld	qword [ebp-12]
	faddp	st1,st0
	fstp	qword [ebp-12]
	fld	qword [ebp-12]
	fstp	dword [ebp-16]
	mov	edx,dword [bb_ChangeX_old]
	movzx	eax,word [bb_PuzzleTileSize]
	mov	eax,eax
	movzx	ecx,byte [bb_BetweenTile]
	mov	ecx,ecx
	add	eax,ecx
	imul	edx,eax
	mov	dword [ebp+-20],edx
	fild	dword [ebp+-20]
	fadd	dword [bb_AutoMidX]
	mov	edx,dword [bb_ChangeY_old]
	movzx	eax,word [bb_PuzzleTileSize]
	mov	eax,eax
	movzx	ecx,byte [bb_BetweenTile]
	mov	ecx,ecx
	add	eax,ecx
	imul	edx,eax
	mov	dword [ebp+-20],edx
	fild	dword [ebp+-20]
	fadd	dword [bb_AutoMidY]
	movzx	eax,word [bb_NewX]
	mov	edx,eax
	movzx	eax,word [bb_PuzzleTileSize]
	mov	eax,eax
	movzx	ecx,byte [bb_BetweenTile]
	mov	ecx,ecx
	add	eax,ecx
	imul	edx,eax
	mov	dword [ebp+-20],edx
	fild	dword [ebp+-20]
	fadd	dword [bb_AutoMidX]
	movzx	eax,word [bb_NewY]
	mov	edx,eax
	movzx	eax,word [bb_PuzzleTileSize]
	mov	eax,eax
	movzx	ecx,byte [bb_BetweenTile]
	mov	ecx,ecx
	add	eax,ecx
	imul	edx,eax
	mov	dword [ebp+-20],edx
	fild	dword [ebp+-20]
	fadd	dword [bb_AutoMidY]
	fld	st3
	fld	st2
	fsub	st0,st5
	fdiv	dword [_945]
	mov	edx,360
	mov	eax,dword [bb_MoveReadyTime]
	sub	eax,dword [bb_TIME]
	sub	edx,eax
	mov	dword [ebp+-20],edx
	fild	dword [ebp+-20]
	fdiv	dword [_946]
	fmulp	st1,st0
	fmul	dword [_947]
	faddp	st1,st0
	fstp	dword [bb_MoveX]
	fld	st2
	fld	st1
	fsub	st0,st4
	fdiv	dword [_948]
	mov	edx,360
	mov	eax,dword [bb_MoveReadyTime]
	sub	eax,dword [bb_TIME]
	sub	edx,eax
	mov	dword [ebp+-20],edx
	fild	dword [ebp+-20]
	fdiv	dword [_949]
	fmulp	st1,st0
	fmul	dword [_950]
	faddp	st1,st0
	fstp	dword [bb_MoveY]
	fxch	st3
	fsub	st0,st1
	fdiv	dword [_951]
	mov	edx,360
	mov	eax,dword [bb_MoveReadyTime]
	sub	eax,dword [bb_TIME]
	sub	edx,eax
	mov	dword [ebp+-20],edx
	fild	dword [ebp+-20]
	fdiv	dword [_952]
	fmulp	st1,st0
	fmul	dword [_953]
	faddp	st1,st0
	fstp	dword [bb_MoveX2]
	fsub	st0,st1
	fdiv	dword [_954]
	mov	edx,360
	mov	eax,dword [bb_MoveReadyTime]
	sub	eax,dword [bb_TIME]
	sub	edx,eax
	mov	dword [ebp+-20],edx
	fild	dword [ebp+-20]
	fdiv	dword [_955]
	fmulp	st1,st0
	fmul	dword [_956]
	faddp	st1,st0
	fstp	dword [bb_MoveY2]
	push	50
	push	50
	push	50
	call	brl_max2d_SetColor
	add	esp,12
	movzx	eax,word [bb_PuzzleTileSize]
	mov	dword [ebp+-20],eax
	fild	dword [ebp+-20]
	sub	esp,4
	fstp	dword [esp]
	movzx	eax,word [bb_PuzzleTileSize]
	mov	dword [ebp+-20],eax
	fild	dword [ebp+-20]
	sub	esp,4
	fstp	dword [esp]
	mov	edx,dword [bb_ChangeY_old]
	movzx	eax,word [bb_PuzzleTileSize]
	mov	eax,eax
	movzx	ecx,byte [bb_BetweenTile]
	mov	ecx,ecx
	add	eax,ecx
	imul	edx,eax
	mov	dword [ebp+-20],edx
	fild	dword [ebp+-20]
	fadd	dword [bb_AutoMidY]
	sub	esp,4
	fstp	dword [esp]
	mov	edx,dword [bb_ChangeX_old]
	movzx	eax,word [bb_PuzzleTileSize]
	mov	eax,eax
	movzx	ecx,byte [bb_BetweenTile]
	mov	ecx,ecx
	add	eax,ecx
	imul	edx,eax
	mov	dword [ebp+-20],edx
	fild	dword [ebp+-20]
	fadd	dword [bb_AutoMidX]
	sub	esp,4
	fstp	dword [esp]
	call	brl_max2d_DrawRect
	add	esp,16
	movzx	eax,word [bb_PuzzleTileSize]
	mov	dword [ebp+-20],eax
	fild	dword [ebp+-20]
	sub	esp,4
	fstp	dword [esp]
	movzx	eax,word [bb_PuzzleTileSize]
	mov	dword [ebp+-20],eax
	fild	dword [ebp+-20]
	sub	esp,4
	fstp	dword [esp]
	movzx	eax,word [bb_NewY]
	mov	edx,eax
	movzx	eax,word [bb_PuzzleTileSize]
	mov	eax,eax
	movzx	ecx,byte [bb_BetweenTile]
	mov	ecx,ecx
	add	eax,ecx
	imul	edx,eax
	mov	dword [ebp+-20],edx
	fild	dword [ebp+-20]
	fadd	dword [bb_AutoMidY]
	sub	esp,4
	fstp	dword [esp]
	movzx	eax,word [bb_NewX]
	mov	edx,eax
	movzx	eax,word [bb_PuzzleTileSize]
	mov	eax,eax
	movzx	ecx,byte [bb_BetweenTile]
	mov	ecx,ecx
	add	eax,ecx
	imul	edx,eax
	mov	dword [ebp+-20],edx
	fild	dword [ebp+-20]
	fadd	dword [bb_AutoMidX]
	sub	esp,4
	fstp	dword [esp]
	call	brl_max2d_DrawRect
	add	esp,16
	push	255
	push	255
	push	255
	call	brl_max2d_SetColor
	add	esp,12
	push	dword [ebp-16]
	push	dword [ebp-16]
	call	brl_max2d_SetScale
	add	esp,8
	push	0
	push	dword [bb_MoveY]
	push	dword [bb_MoveX]
	mov	ecx,dword [bb_Puzzle]
	mov	eax,dword [bb_ChangeX_old]
	mov	edx,dword [bb_Puzzle]
	imul	eax,dword [edx+24]
	add	eax,dword [bb_ChangeY_old]
	push	dword [ecx+eax*4+28]
	call	brl_max2d_DrawImage
	add	esp,16
	push	0
	push	dword [bb_MoveY2]
	push	dword [bb_MoveX2]
	mov	edx,dword [bb_Puzzle]
	movzx	eax,word [bb_NewX]
	mov	eax,eax
	mov	ecx,dword [bb_Puzzle]
	imul	eax,dword [ecx+24]
	movzx	ecx,word [bb_NewY]
	mov	ecx,ecx
	add	eax,ecx
	push	dword [edx+eax*4+28]
	call	brl_max2d_DrawImage
	add	esp,16
	push	1065353216
	push	1065353216
	call	brl_max2d_SetScale
	add	esp,8
_450:
	movzx	eax,byte [bb_MoveReady]
	mov	eax,eax
	cmp	eax,1
	jne	_456
	mov	ebx,dword [bb_Puzzle_ID_Now]
	mov	ecx,dword [bb_ChangeX_old]
	mov	eax,dword [bb_Puzzle_ID_Now]
	imul	ecx,dword [eax+24]
	add	ecx,dword [bb_ChangeY_old]
	mov	edx,dword [bb_Puzzle_ID_Now]
	movzx	eax,word [bb_NewX]
	mov	eax,eax
	mov	esi,dword [bb_Puzzle_ID_Now]
	imul	eax,dword [esi+24]
	movzx	esi,word [bb_NewY]
	mov	esi,esi
	add	eax,esi
	mov	eax,dword [edx+eax*4+28]
	mov	dword [ebx+ecx*4+28],eax
	mov	edx,dword [bb_Puzzle]
	movzx	eax,word [bb_NewX]
	mov	eax,eax
	mov	ecx,dword [bb_Puzzle]
	imul	eax,dword [ecx+24]
	movzx	ecx,word [bb_NewY]
	mov	ecx,ecx
	add	eax,ecx
	mov	ebx,dword [edx+eax*4+28]
	inc	dword [ebx+4]
	mov	ecx,dword [bb_Puzzle]
	mov	eax,dword [bb_ChangeX_old]
	mov	edx,dword [bb_Puzzle]
	imul	eax,dword [edx+24]
	add	eax,dword [bb_ChangeY_old]
	mov	eax,dword [ecx+eax*4+28]
	dec	dword [eax+4]
	jnz	_460
	push	eax
	call	bbGCFree
	add	esp,4
_460:
	mov	ecx,dword [bb_Puzzle]
	mov	eax,dword [bb_ChangeX_old]
	mov	edx,dword [bb_Puzzle]
	imul	eax,dword [edx+24]
	add	eax,dword [bb_ChangeY_old]
	mov	dword [ecx+eax*4+28],ebx
	mov	edx,dword [bb_Puzzle_ID_Now]
	movzx	eax,word [bb_NewX]
	mov	eax,eax
	mov	ecx,dword [bb_Puzzle_ID_Now]
	imul	eax,dword [ecx+24]
	movzx	ecx,word [bb_NewY]
	mov	ecx,ecx
	add	eax,ecx
	mov	ecx,dword [bb_ChangeID]
	mov	dword [edx+eax*4+28],ecx
	mov	ebx,dword [bb_PXMCursor]
	inc	dword [ebx+4]
	mov	edx,dword [bb_Puzzle]
	movzx	eax,word [bb_NewX]
	mov	eax,eax
	mov	ecx,dword [bb_Puzzle]
	imul	eax,dword [ecx+24]
	movzx	ecx,word [bb_NewY]
	mov	ecx,ecx
	add	eax,ecx
	mov	eax,dword [edx+eax*4+28]
	dec	dword [eax+4]
	jnz	_464
	push	eax
	call	bbGCFree
	add	esp,4
_464:
	mov	edx,dword [bb_Puzzle]
	movzx	eax,word [bb_NewX]
	mov	eax,eax
	mov	ecx,dword [bb_Puzzle]
	imul	eax,dword [ecx+24]
	movzx	ecx,word [bb_NewY]
	mov	ecx,ecx
	add	eax,ecx
	mov	dword [edx+eax*4+28],ebx
	mov	dword [bb_ChangeID],-1
	mov	dword [bb_ChangeX_old],0
	mov	dword [bb_ChangeY_old],0
	movzx	eax,word [bb_TileMoves]
	mov	eax,eax
	add	eax,1
	mov	eax,eax
	and	eax,0xffff
	mov	eax,eax
	mov	word [bb_TileMoves],ax
	mov	byte [bb_MoveReady],0
_456:
_392:
	mov	eax,0
_163:
	pop	esi
	pop	ebx
	mov	esp,ebp
	pop	ebp
	ret
bb_Buttons:
	push	ebp
	mov	ebp,esp
	sub	esp,16
	push	ebx
	mov	byte [ebp-4],0
	mov	word [ebp-8],0
	mov	word [ebp-12],0
	push	1065353216
	call	brl_max2d_SetAlpha
	add	esp,4
	mov	eax,dword [bb_MX]
	cmp	eax,600
	setge	al
	movzx	eax,al
	cmp	eax,0
	je	_468
	mov	eax,dword [bb_MX]
	cmp	eax,800
	setl	al
	movzx	eax,al
_468:
	cmp	eax,0
	je	_470
	mov	eax,dword [bb_MY]
	cmp	eax,250
	setge	al
	movzx	eax,al
_470:
	cmp	eax,0
	je	_472
	mov	eax,dword [bb_MY]
	cmp	eax,350
	setle	al
	movzx	eax,al
_472:
	cmp	eax,0
	je	_474
	push	0
	push	1132068864
	push	1142210560
	push	dword [bb_IMGButton]
	call	brl_max2d_DrawImage
	add	esp,16
	push	1045220557
	call	brl_max2d_SetAlpha
	add	esp,4
	push	4
	call	brl_max2d_SetBlend
	add	esp,4
	push	0
	push	1132068864
	push	1142210560
	push	dword [bb_IMGButton]
	call	brl_max2d_DrawImage
	add	esp,16
	push	3
	call	brl_max2d_SetBlend
	add	esp,4
	push	1065353216
	call	brl_max2d_SetAlpha
	add	esp,4
	jmp	_475
_474:
	push	0
	push	1132068864
	push	1142210560
	push	dword [bb_IMGButton]
	call	brl_max2d_DrawImage
	add	esp,16
_475:
	push	0
	push	0
	push	0
	call	brl_max2d_SetColor
	add	esp,12
	movzx	eax,byte [bb_WINMODE]
	mov	eax,eax
	cmp	eax,0
	jne	_476
	push	1133248512
	mov	ebx,100
	push	_49
	call	brl_max2d_TextWidth
	add	esp,4
	cdq
	and	edx,1
	add	eax,edx
	sar	eax,1
	sub	ebx,eax
	add	ebx,595
	mov	dword [ebp+-16],ebx
	fild	dword [ebp+-16]
	sub	esp,4
	fstp	dword [esp]
	push	_49
	call	brl_max2d_DrawText
	add	esp,12
	jmp	_477
_476:
	movzx	eax,byte [bb_WINMODE]
	mov	eax,eax
	cmp	eax,1
	sete	al
	movzx	eax,al
	cmp	eax,0
	jne	_478
	movzx	eax,byte [bb_WINMODE]
	mov	eax,eax
	cmp	eax,2
	sete	al
	movzx	eax,al
_478:
	cmp	eax,0
	je	_480
	push	1133248512
	mov	ebx,100
	push	_50
	call	brl_max2d_TextWidth
	add	esp,4
	cdq
	and	edx,1
	add	eax,edx
	sar	eax,1
	sub	ebx,eax
	add	ebx,595
	mov	dword [ebp+-16],ebx
	fild	dword [ebp+-16]
	sub	esp,4
	fstp	dword [esp]
	push	_50
	call	brl_max2d_DrawText
	add	esp,12
_480:
_477:
	push	255
	push	255
	push	255
	call	brl_max2d_SetColor
	add	esp,12
	mov	eax,dword [bb_MX]
	cmp	eax,600
	setge	al
	movzx	eax,al
	cmp	eax,0
	je	_481
	mov	eax,dword [bb_MX]
	cmp	eax,800
	setl	al
	movzx	eax,al
_481:
	cmp	eax,0
	je	_483
	mov	eax,dword [bb_MY]
	cmp	eax,500
	setge	al
	movzx	eax,al
_483:
	cmp	eax,0
	je	_485
	mov	eax,dword [bb_MY]
	cmp	eax,600
	setle	al
	movzx	eax,al
_485:
	cmp	eax,0
	je	_487
	push	0
	push	1140457472
	push	1142210560
	push	dword [bb_IMGButton]
	call	brl_max2d_DrawImage
	add	esp,16
	push	1045220557
	call	brl_max2d_SetAlpha
	add	esp,4
	push	4
	call	brl_max2d_SetBlend
	add	esp,4
	push	0
	push	1140457472
	push	1142210560
	push	dword [bb_IMGButton]
	call	brl_max2d_DrawImage
	add	esp,16
	push	3
	call	brl_max2d_SetBlend
	add	esp,4
	push	1065353216
	call	brl_max2d_SetAlpha
	add	esp,4
	jmp	_488
_487:
	push	0
	push	1140457472
	push	1142210560
	push	dword [bb_IMGButton]
	call	brl_max2d_DrawImage
	add	esp,16
_488:
	push	0
	push	0
	push	0
	call	brl_max2d_SetColor
	add	esp,12
	push	1141145600
	mov	ebx,100
	push	_51
	call	brl_max2d_TextWidth
	add	esp,4
	cdq
	and	edx,1
	add	eax,edx
	sar	eax,1
	sub	ebx,eax
	add	ebx,595
	mov	dword [ebp+-16],ebx
	fild	dword [ebp+-16]
	sub	esp,4
	fstp	dword [esp]
	push	_51
	call	brl_max2d_DrawText
	add	esp,12
	push	255
	push	255
	push	255
	call	brl_max2d_SetColor
	add	esp,12
	mov	eax,dword [bb_MX]
	cmp	eax,600
	setge	al
	movzx	eax,al
	cmp	eax,0
	je	_489
	mov	eax,dword [bb_MX]
	cmp	eax,800
	setl	al
	movzx	eax,al
_489:
	cmp	eax,0
	je	_491
	mov	eax,dword [bb_MY]
	cmp	eax,360
	setge	al
	movzx	eax,al
_491:
	cmp	eax,0
	je	_493
	mov	eax,dword [bb_MY]
	cmp	eax,460
	setle	al
	movzx	eax,al
_493:
	cmp	eax,0
	je	_495
	push	0
	push	1135869952
	push	1142210560
	push	dword [bb_IMGButton]
	call	brl_max2d_DrawImage
	add	esp,16
	push	1045220557
	call	brl_max2d_SetAlpha
	add	esp,4
	push	4
	call	brl_max2d_SetBlend
	add	esp,4
	push	0
	push	1135869952
	push	1142210560
	push	dword [bb_IMGButton]
	call	brl_max2d_DrawImage
	add	esp,16
	push	3
	call	brl_max2d_SetBlend
	add	esp,4
	push	1065353216
	call	brl_max2d_SetAlpha
	add	esp,4
	jmp	_496
_495:
	push	0
	push	1135869952
	push	1142210560
	push	dword [bb_IMGButton]
	call	brl_max2d_DrawImage
	add	esp,16
_496:
	push	0
	push	0
	push	0
	call	brl_max2d_SetColor
	add	esp,12
	push	1136852992
	mov	ebx,100
	push	_52
	call	brl_max2d_TextWidth
	add	esp,4
	cdq
	and	edx,1
	add	eax,edx
	sar	eax,1
	sub	ebx,eax
	add	ebx,595
	mov	dword [ebp+-16],ebx
	fild	dword [ebp+-16]
	sub	esp,4
	fstp	dword [esp]
	push	_52
	call	brl_max2d_DrawText
	add	esp,12
	push	255
	push	255
	push	255
	call	brl_max2d_SetColor
	add	esp,12
	mov	eax,dword [bb_MX]
	cmp	eax,600
	setge	al
	movzx	eax,al
	cmp	eax,0
	je	_497
	mov	eax,dword [bb_MX]
	cmp	eax,800
	setl	al
	movzx	eax,al
_497:
	cmp	eax,0
	je	_499
	mov	eax,dword [bb_MY]
	cmp	eax,250
	setge	al
	movzx	eax,al
_499:
	cmp	eax,0
	je	_501
	mov	eax,dword [bb_MY]
	cmp	eax,350
	setle	al
	movzx	eax,al
_501:
	cmp	eax,0
	je	_503
	movzx	eax,byte [bb_MOUSE1HIT]
	mov	eax,eax
	cmp	eax,1
	sete	al
	movzx	eax,al
_503:
	cmp	eax,0
	je	_505
	mov	byte [bb_MOUSE1HIT],0
	push	dword [bb_SFXClick]
	call	bb_Eventsystem
	add	esp,4
	mov	byte [bb_Selection],0
	mov	dword [bb_ChangeID],-1
	mov	dword [bb_ChangeX_old],0
	mov	dword [bb_ChangeY_old],0
	movzx	eax,byte [bb_WINMODE]
	mov	eax,eax
	cmp	eax,1
	sete	al
	movzx	eax,al
	cmp	eax,0
	jne	_506
	movzx	eax,byte [bb_WINMODE]
	mov	eax,eax
	cmp	eax,2
	sete	al
	movzx	eax,al
_506:
	cmp	eax,0
	je	_508
	mov	byte [bb_WINMODE],4
	jmp	_509
_508:
	movzx	eax,byte [bb_WINMODE]
	mov	eax,eax
	cmp	eax,0
	jne	_510
	push	dword [bb_SFXJingle]
	call	bb_Eventsystem
	add	esp,4
	mov	byte [bb_WINMODE],3
_510:
_509:
	jmp	_511
_505:
	mov	eax,dword [bb_MX]
	cmp	eax,600
	setge	al
	movzx	eax,al
	cmp	eax,0
	je	_512
	mov	eax,dword [bb_MX]
	cmp	eax,800
	setl	al
	movzx	eax,al
_512:
	cmp	eax,0
	je	_514
	mov	eax,dword [bb_MY]
	cmp	eax,360
	setge	al
	movzx	eax,al
_514:
	cmp	eax,0
	je	_516
	mov	eax,dword [bb_MY]
	cmp	eax,460
	setle	al
	movzx	eax,al
_516:
	cmp	eax,0
	je	_518
	movzx	eax,byte [bb_MOUSE1HIT]
	mov	eax,eax
	cmp	eax,1
	sete	al
	movzx	eax,al
_518:
	cmp	eax,0
	je	_520
	push	dword [bb_SFXClick]
	call	bb_Eventsystem
	add	esp,4
	mov	byte [bb_MOUSE1HIT],0
	mov	byte [bb_Selection],0
	mov	dword [bb_ChangeID],-1
	mov	dword [bb_ChangeX_old],0
	mov	dword [bb_ChangeY_old],0
	call	bb_selectPuzzleImg
	call	bb_MixPuzzle
	mov	byte [bb_MOUSE1HIT],0
	jmp	_521
_520:
	mov	eax,dword [bb_MX]
	cmp	eax,600
	setge	al
	movzx	eax,al
	cmp	eax,0
	je	_522
	mov	eax,dword [bb_MX]
	cmp	eax,800
	setl	al
	movzx	eax,al
_522:
	cmp	eax,0
	je	_524
	mov	eax,dword [bb_MY]
	cmp	eax,500
	setge	al
	movzx	eax,al
_524:
	cmp	eax,0
	je	_526
	mov	eax,dword [bb_MY]
	cmp	eax,600
	setle	al
	movzx	eax,al
_526:
	cmp	eax,0
	je	_528
	movzx	eax,byte [bb_MOUSE1HIT]
	mov	eax,eax
	cmp	eax,1
	sete	al
	movzx	eax,al
_528:
	cmp	eax,0
	je	_530
	mov	byte [bb_Selection],0
	push	dword [bb_SFXClick]
	call	bb_Eventsystem
	add	esp,4
	mov	byte [bb_MOUSE1HIT],0
_55:
	call	brl_max2d_Cls
	push	0
	push	1133903872
	push	1120403456
	push	dword [bb_IMGButton]
	call	brl_max2d_DrawImage
	add	esp,16
	push	0
	push	1133903872
	push	1134231552
	push	dword [bb_IMGButton]
	call	brl_max2d_DrawImage
	add	esp,16
	push	0
	push	1133903872
	push	1140981760
	push	dword [bb_IMGButton]
	call	brl_max2d_DrawImage
	add	esp,16
	mov	eax,dword [bb_MX]
	cmp	eax,100
	setge	al
	movzx	eax,al
	cmp	eax,0
	je	_531
	mov	eax,dword [bb_MX]
	cmp	eax,300
	setl	al
	movzx	eax,al
_531:
	cmp	eax,0
	je	_533
	mov	eax,dword [bb_MY]
	cmp	eax,300
	setge	al
	movzx	eax,al
_533:
	cmp	eax,0
	je	_535
	mov	eax,dword [bb_MY]
	cmp	eax,400
	setle	al
	movzx	eax,al
_535:
	cmp	eax,0
	je	_537
	movzx	eax,byte [bb_MOUSE1HIT]
	mov	eax,eax
	cmp	eax,1
	jne	_538
	mov	byte [ebp-4],1
	push	dword [bb_SFXClick]
	call	bb_Eventsystem
	add	esp,4
	mov	byte [bb_MOUSE1HIT],0
_538:
	push	1050253722
	call	brl_max2d_SetAlpha
	add	esp,4
	push	4
	call	brl_max2d_SetBlend
	add	esp,4
	push	0
	push	1133903872
	push	1120403456
	push	dword [bb_IMGButton]
	call	brl_max2d_DrawImage
	add	esp,16
	push	3
	call	brl_max2d_SetBlend
	add	esp,4
	push	1065353216
	call	brl_max2d_SetAlpha
	add	esp,4
	jmp	_539
_537:
	mov	eax,dword [bb_MX]
	cmp	eax,310
	setge	al
	movzx	eax,al
	cmp	eax,0
	je	_540
	mov	eax,dword [bb_MX]
	cmp	eax,510
	setl	al
	movzx	eax,al
_540:
	cmp	eax,0
	je	_542
	mov	eax,dword [bb_MY]
	cmp	eax,300
	setge	al
	movzx	eax,al
_542:
	cmp	eax,0
	je	_544
	mov	eax,dword [bb_MY]
	cmp	eax,400
	setle	al
	movzx	eax,al
_544:
	cmp	eax,0
	je	_546
	movzx	eax,byte [bb_MOUSE1HIT]
	mov	eax,eax
	cmp	eax,1
	jne	_547
	mov	byte [ebp-4],2
	mov	byte [bb_MOUSE1HIT],0
	push	dword [bb_SFXClick]
	call	bb_Eventsystem
	add	esp,4
_547:
	push	1050253722
	call	brl_max2d_SetAlpha
	add	esp,4
	push	4
	call	brl_max2d_SetBlend
	add	esp,4
	push	0
	push	1133903872
	push	1134231552
	push	dword [bb_IMGButton]
	call	brl_max2d_DrawImage
	add	esp,16
	push	3
	call	brl_max2d_SetBlend
	add	esp,4
	push	1065353216
	call	brl_max2d_SetAlpha
	add	esp,4
	jmp	_548
_546:
	mov	eax,dword [bb_MX]
	cmp	eax,520
	setge	al
	movzx	eax,al
	cmp	eax,0
	je	_549
	mov	eax,dword [bb_MX]
	cmp	eax,720
	setl	al
	movzx	eax,al
_549:
	cmp	eax,0
	je	_551
	mov	eax,dword [bb_MY]
	cmp	eax,300
	setge	al
	movzx	eax,al
_551:
	cmp	eax,0
	je	_553
	mov	eax,dword [bb_MY]
	cmp	eax,400
	setle	al
	movzx	eax,al
_553:
	cmp	eax,0
	je	_555
	movzx	eax,byte [bb_MOUSE1HIT]
	mov	eax,eax
	cmp	eax,1
	jne	_556
	push	dword [bb_SFXClick]
	call	bb_Eventsystem
	add	esp,4
	mov	byte [ebp-4],2
	mov	byte [bb_MOUSE1HIT],0
	call	bb_Menu
_556:
	push	1050253722
	call	brl_max2d_SetAlpha
	add	esp,4
	push	4
	call	brl_max2d_SetBlend
	add	esp,4
	push	0
	push	1133903872
	push	1140981760
	push	dword [bb_IMGButton]
	call	brl_max2d_DrawImage
	add	esp,16
	push	3
	call	brl_max2d_SetBlend
	add	esp,4
	push	1065353216
	call	brl_max2d_SetAlpha
	add	esp,4
_555:
_548:
_539:
	push	0
	push	0
	push	0
	call	brl_max2d_SetColor
	add	esp,12
	push	1134886912
	mov	ebx,100
	push	_56
	call	brl_max2d_TextWidth
	add	esp,4
	cdq
	and	edx,1
	add	eax,edx
	sar	eax,1
	sub	ebx,eax
	add	ebx,100
	mov	dword [ebp+-16],ebx
	fild	dword [ebp+-16]
	sub	esp,4
	fstp	dword [esp]
	push	_56
	call	brl_max2d_DrawText
	add	esp,12
	push	1134886912
	mov	ebx,100
	push	_57
	call	brl_max2d_TextWidth
	add	esp,4
	cdq
	and	edx,1
	add	eax,edx
	sar	eax,1
	sub	ebx,eax
	add	ebx,310
	mov	dword [ebp+-16],ebx
	fild	dword [ebp+-16]
	sub	esp,4
	fstp	dword [esp]
	push	_57
	call	brl_max2d_DrawText
	add	esp,12
	push	1134886912
	mov	ebx,100
	push	_58
	call	brl_max2d_TextWidth
	add	esp,4
	cdq
	and	edx,1
	add	eax,edx
	sar	eax,1
	sub	ebx,eax
	add	ebx,520
	mov	dword [ebp+-16],ebx
	fild	dword [ebp+-16]
	sub	esp,4
	fstp	dword [esp]
	push	_58
	call	brl_max2d_DrawText
	add	esp,12
	push	255
	push	255
	push	255
	call	brl_max2d_SetColor
	add	esp,12
	call	bb_UserInput
	call	bb_FPS
	push	1
	call	bb_Mouse
	add	esp,4
	push	0
	call	brl_graphics_Flip
	add	esp,4
_53:
	movzx	eax,byte [ebp-4]
	mov	eax,eax
	cmp	eax,0
	setg	al
	movzx	eax,al
	cmp	eax,0
	jne	_557
	push	27
	call	brl_polledinput_KeyHit
	add	esp,4
_557:
	cmp	eax,0
	jne	_559
	call	brl_polledinput_AppTerminate
_559:
	cmp	eax,0
	je	_55
_54:
	movzx	eax,byte [ebp-4]
	mov	eax,eax
	cmp	eax,1
	jne	_561
	call	bbEnd
	jmp	_562
_561:
	movzx	eax,byte [ebp-4]
	mov	eax,eax
	cmp	eax,2
	jne	_563
	mov	byte [ebp-4],0
_563:
_562:
_530:
_521:
_511:
	mov	eax,0
_165:
	pop	ebx
	mov	esp,ebp
	pop	ebp
	ret
bb_PreparePuzzle:
	push	ebp
	mov	ebp,esp
	sub	esp,20
	push	ebx
	mov	word [ebp-4],0
	mov	word [ebp-8],0
	mov	word [bb_TileMoves],0
	mov	byte [bb_Selection],0
	mov	edx,83
	movzx	eax,byte [bb_BetweenTile]
	mov	eax,eax
	imul	eax,dword [bb_MAP_X]
	sub	edx,eax
	mov	dword [ebp+-20],edx
	fild	dword [ebp+-20]
	fdiv	dword [_1049]
	fstp	dword [bb_AutoMidX]
	mov	edx,78
	movzx	eax,byte [bb_BetweenTile]
	mov	eax,eax
	imul	eax,dword [bb_MAP_Y]
	sub	edx,eax
	mov	dword [ebp+-20],edx
	fild	dword [ebp+-20]
	fdiv	dword [_1050]
	fstp	dword [bb_AutoMidY]
	call	brl_max2d_Cls
	push	0
	push	0
	push	0
	push	dword [bb_IMGPuzzle]
	call	brl_max2d_DrawImage
	add	esp,16
	push	255
	push	0
	push	255
	call	brl_max2d_SetMaskColor
	add	esp,12
	mov	word [ebp-4],0
	mov	eax,dword [bb_MAP_X]
	sub	eax,1
	mov	eax,eax
	and	eax,0xffff
	mov	eax,eax
	mov	word [ebp-12],ax
	jmp	_566
_61:
	mov	word [ebp-8],0
	mov	eax,dword [bb_MAP_Y]
	sub	eax,1
	mov	eax,eax
	and	eax,0xffff
	mov	eax,eax
	mov	word [ebp-16],ax
	jmp	_568
_64:
	push	9
	push	1
	movzx	eax,word [bb_PuzzleTileSize]
	mov	eax,eax
	push	eax
	movzx	eax,word [bb_PuzzleTileSize]
	mov	eax,eax
	push	eax
	call	brl_max2d_CreateImage
	add	esp,16
	inc	dword [eax+4]
	mov	ebx,eax
	mov	edx,dword [bb_Puzzle]
	movzx	eax,word [ebp-4]
	mov	eax,eax
	mov	ecx,dword [bb_Puzzle]
	imul	eax,dword [ecx+24]
	movzx	ecx,word [ebp-8]
	mov	ecx,ecx
	add	eax,ecx
	mov	eax,dword [edx+eax*4+28]
	dec	dword [eax+4]
	jnz	_573
	push	eax
	call	bbGCFree
	add	esp,4
_573:
	mov	edx,dword [bb_Puzzle]
	movzx	eax,word [ebp-4]
	mov	eax,eax
	mov	ecx,dword [bb_Puzzle]
	imul	eax,dword [ecx+24]
	movzx	ecx,word [ebp-8]
	mov	ecx,ecx
	add	eax,ecx
	mov	dword [edx+eax*4+28],ebx
	push	9
	push	1
	movzx	eax,word [bb_PuzzleTileSize]
	mov	eax,eax
	push	eax
	movzx	eax,word [bb_PuzzleTileSize]
	mov	eax,eax
	push	eax
	call	brl_max2d_CreateImage
	add	esp,16
	inc	dword [eax+4]
	mov	ebx,eax
	mov	edx,dword [bb_Puzzle_Original]
	movzx	eax,word [ebp-4]
	mov	eax,eax
	mov	ecx,dword [bb_Puzzle_Original]
	imul	eax,dword [ecx+24]
	movzx	ecx,word [ebp-8]
	mov	ecx,ecx
	add	eax,ecx
	mov	eax,dword [edx+eax*4+28]
	dec	dword [eax+4]
	jnz	_577
	push	eax
	call	bbGCFree
	add	esp,4
_577:
	mov	edx,dword [bb_Puzzle_Original]
	movzx	eax,word [ebp-4]
	mov	eax,eax
	mov	ecx,dword [bb_Puzzle_Original]
	imul	eax,dword [ecx+24]
	movzx	ecx,word [ebp-8]
	mov	ecx,ecx
	add	eax,ecx
	mov	dword [edx+eax*4+28],ebx
	mov	edx,dword [bb_Puzzle_ID_Correct]
	movzx	eax,word [ebp-4]
	mov	eax,eax
	mov	ecx,dword [bb_Puzzle_ID_Correct]
	imul	eax,dword [ecx+24]
	movzx	ecx,word [ebp-8]
	mov	ecx,ecx
	add	eax,ecx
	mov	ecx,dword [bb_ID]
	mov	dword [edx+eax*4+28],ecx
	mov	edx,dword [bb_Puzzle_ID_Now]
	movzx	eax,word [ebp-4]
	mov	eax,eax
	mov	ecx,dword [bb_Puzzle_ID_Now]
	imul	eax,dword [ecx+24]
	movzx	ecx,word [ebp-8]
	mov	ecx,ecx
	add	eax,ecx
	mov	ecx,dword [bb_ID]
	mov	dword [edx+eax*4+28],ecx
	push	0
	movzx	eax,word [ebp-8]
	mov	eax,eax
	movzx	edx,word [bb_PuzzleTileSize]
	mov	edx,edx
	imul	eax,edx
	push	eax
	movzx	eax,word [ebp-4]
	mov	eax,eax
	movzx	edx,word [bb_PuzzleTileSize]
	mov	edx,edx
	imul	eax,edx
	push	eax
	mov	edx,dword [bb_Puzzle]
	movzx	eax,word [ebp-4]
	mov	eax,eax
	mov	ecx,dword [bb_Puzzle]
	imul	eax,dword [ecx+24]
	movzx	ecx,word [ebp-8]
	mov	ecx,ecx
	add	eax,ecx
	push	dword [edx+eax*4+28]
	call	brl_max2d_GrabImage
	add	esp,16
	push	0
	movzx	eax,word [ebp-8]
	mov	eax,eax
	movzx	edx,word [bb_PuzzleTileSize]
	mov	edx,edx
	imul	eax,edx
	push	eax
	movzx	eax,word [ebp-4]
	mov	eax,eax
	movzx	edx,word [bb_PuzzleTileSize]
	mov	edx,edx
	imul	eax,edx
	push	eax
	mov	edx,dword [bb_Puzzle_Original]
	movzx	eax,word [ebp-4]
	mov	eax,eax
	mov	ecx,dword [bb_Puzzle_Original]
	imul	eax,dword [ecx+24]
	movzx	ecx,word [ebp-8]
	mov	ecx,ecx
	add	eax,ecx
	push	dword [edx+eax*4+28]
	call	brl_max2d_GrabImage
	add	esp,16
	add	dword [bb_ID],1
_62:
	add	word [ebp-8],1
_568:
	movzx	edx,word [ebp-8]
	movzx	eax,word [ebp-16]
	cmp	edx,eax
	jle	_64
_63:
_59:
	add	word [ebp-4],1
_566:
	movzx	edx,word [ebp-4]
	movzx	eax,word [ebp-12]
	cmp	edx,eax
	jle	_61
_60:
	call	brl_max2d_Cls
	mov	eax,0
_167:
	pop	ebx
	mov	esp,ebp
	pop	ebp
	ret
bb_MixPuzzle:
	push	ebp
	mov	ebp,esp
	sub	esp,40
	push	ebx
	push	esi
	push	edi
	mov	eax,dword [bb_MAP_X]
	imul	eax,dword [bb_MAP_Y]
	mov	eax,eax
	and	eax,0xffff
	mov	eax,eax
	mov	word [ebp-4],ax
	push	15
	push	5
	call	brl_random_Rand
	add	esp,8
	mov	eax,eax
	and	eax,0xffff
	mov	eax,eax
	mov	word [ebp-8],ax
	push	15
	push	5
	call	brl_random_Rand
	add	esp,8
	mov	eax,eax
	and	eax,0xffff
	mov	eax,eax
	mov	word [ebp-12],ax
	mov	word [ebp-16],0
	mov	word [ebp-20],0
	mov	word [ebp-24],0
	mov	word [ebp-28],0
	mov	word [ebp-32],0
	mov	eax,dword [bb_TIME]
	mov	dword [bb_GameSecs],eax
	mov	word [bb_TileMoves],0
	mov	byte [bb_Selection],0
	mov	word [bb_CorrectTiles],0
	mov	byte [bb_WINMODE],0
	push	dword [bb_SFXpaperMix]
	call	bb_Eventsystem
	add	esp,4
	mov	word [ebp-24],0
	push	9999
	push	2000
	call	brl_random_Rand
	add	esp,8
	mov	eax,eax
	and	eax,0xffff
	mov	eax,eax
	mov	word [ebp-36],ax
	jmp	_587
_67:
	mov	eax,dword [bb_MAP_X]
	mov	dword [ebp+-40],eax
	fild	dword [ebp+-40]
	sub	esp,8
	fstp	qword [esp]
	fldz
	sub	esp,8
	fstp	qword [esp]
	call	brl_random_Rnd
	add	esp,16
	sub	esp,8
	fstp	qword [esp]
	call	bbFloatToInt
	add	esp,8
	mov	eax,eax
	and	eax,0xffff
	mov	eax,eax
	mov	word [ebp-16],ax
	mov	eax,dword [bb_MAP_Y]
	mov	dword [ebp+-40],eax
	fild	dword [ebp+-40]
	sub	esp,8
	fstp	qword [esp]
	fldz
	sub	esp,8
	fstp	qword [esp]
	call	brl_random_Rnd
	add	esp,16
	sub	esp,8
	fstp	qword [esp]
	call	bbFloatToInt
	add	esp,8
	mov	eax,eax
	and	eax,0xffff
	mov	eax,eax
	mov	word [ebp-20],ax
	mov	eax,dword [bb_MAP_X]
	mov	dword [ebp+-40],eax
	fild	dword [ebp+-40]
	sub	esp,8
	fstp	qword [esp]
	fldz
	sub	esp,8
	fstp	qword [esp]
	call	brl_random_Rnd
	add	esp,16
	sub	esp,8
	fstp	qword [esp]
	call	bbFloatToInt
	add	esp,8
	mov	eax,eax
	and	eax,0xffff
	mov	eax,eax
	mov	word [ebp-28],ax
	mov	eax,dword [bb_MAP_Y]
	mov	dword [ebp+-40],eax
	fild	dword [ebp+-40]
	sub	esp,8
	fstp	qword [esp]
	fldz
	sub	esp,8
	fstp	qword [esp]
	call	brl_random_Rnd
	add	esp,16
	sub	esp,8
	fstp	qword [esp]
	call	bbFloatToInt
	add	esp,8
	mov	eax,eax
	and	eax,0xffff
	mov	eax,eax
	mov	word [ebp-32],ax
	mov	edx,dword [bb_Puzzle_ID_Now]
	movzx	eax,word [ebp-28]
	mov	eax,eax
	mov	ecx,dword [bb_Puzzle_ID_Now]
	imul	eax,dword [ecx+24]
	movzx	ecx,word [ebp-32]
	mov	ecx,ecx
	add	eax,ecx
	mov	eax,dword [edx+eax*4+28]
	mov	dword [bb_ID],eax
	mov	edx,dword [bb_Puzzle]
	movzx	eax,word [ebp-28]
	mov	eax,eax
	mov	ecx,dword [bb_Puzzle]
	imul	eax,dword [ecx+24]
	movzx	ecx,word [ebp-32]
	mov	ecx,ecx
	add	eax,ecx
	mov	edi,dword [edx+eax*4+28]
	mov	edx,dword [bb_Puzzle]
	movzx	eax,word [ebp-16]
	mov	eax,eax
	mov	ecx,dword [bb_Puzzle]
	imul	eax,dword [ecx+24]
	movzx	ecx,word [ebp-20]
	mov	ecx,ecx
	add	eax,ecx
	mov	ebx,dword [edx+eax*4+28]
	inc	dword [ebx+4]
	mov	edx,dword [bb_Puzzle]
	movzx	eax,word [ebp-28]
	mov	eax,eax
	mov	ecx,dword [bb_Puzzle]
	imul	eax,dword [ecx+24]
	movzx	ecx,word [ebp-32]
	mov	ecx,ecx
	add	eax,ecx
	mov	eax,dword [edx+eax*4+28]
	dec	dword [eax+4]
	jnz	_592
	push	eax
	call	bbGCFree
	add	esp,4
_592:
	mov	edx,dword [bb_Puzzle]
	movzx	eax,word [ebp-28]
	mov	eax,eax
	mov	ecx,dword [bb_Puzzle]
	imul	eax,dword [ecx+24]
	movzx	ecx,word [ebp-32]
	mov	ecx,ecx
	add	eax,ecx
	mov	dword [edx+eax*4+28],ebx
	mov	ebx,dword [bb_Puzzle_ID_Now]
	movzx	eax,word [ebp-28]
	mov	eax,eax
	mov	edx,dword [bb_Puzzle_ID_Now]
	imul	eax,dword [edx+24]
	mov	ecx,eax
	movzx	eax,word [ebp-32]
	mov	eax,eax
	add	ecx,eax
	mov	edx,dword [bb_Puzzle_ID_Now]
	movzx	eax,word [ebp-16]
	mov	eax,eax
	mov	esi,eax
	mov	eax,dword [bb_Puzzle_ID_Now]
	imul	esi,dword [eax+24]
	mov	eax,esi
	movzx	esi,word [ebp-20]
	mov	esi,esi
	add	eax,esi
	mov	eax,dword [edx+eax*4+28]
	mov	dword [ebx+ecx*4+28],eax
	mov	ebx,edi
	inc	dword [ebx+4]
	mov	edx,dword [bb_Puzzle]
	movzx	eax,word [ebp-16]
	mov	eax,eax
	mov	ecx,dword [bb_Puzzle]
	imul	eax,dword [ecx+24]
	movzx	ecx,word [ebp-20]
	mov	ecx,ecx
	add	eax,ecx
	mov	eax,dword [edx+eax*4+28]
	dec	dword [eax+4]
	jnz	_596
	push	eax
	call	bbGCFree
	add	esp,4
_596:
	mov	edx,dword [bb_Puzzle]
	movzx	eax,word [ebp-16]
	mov	eax,eax
	mov	ecx,dword [bb_Puzzle]
	imul	eax,dword [ecx+24]
	movzx	ecx,word [ebp-20]
	mov	ecx,ecx
	add	eax,ecx
	mov	dword [edx+eax*4+28],ebx
	mov	edx,dword [bb_Puzzle_ID_Now]
	movzx	eax,word [ebp-16]
	mov	eax,eax
	mov	ecx,dword [bb_Puzzle_ID_Now]
	imul	eax,dword [ecx+24]
	movzx	ecx,word [ebp-20]
	mov	ecx,ecx
	add	eax,ecx
	mov	ecx,dword [bb_ID]
	mov	dword [edx+eax*4+28],ecx
_65:
	add	word [ebp-24],1
_587:
	movzx	edx,word [ebp-24]
	movzx	eax,word [ebp-36]
	cmp	edx,eax
	jle	_67
_66:
	mov	eax,0
_169:
	pop	edi
	pop	esi
	pop	ebx
	mov	esp,ebp
	pop	ebp
	ret
bb_FPS:
	push	ebp
	mov	ebp,esp
	call	bbMilliSecs
	mov	dword [bb_TIME],eax
	push	70
	call	brl_polledinput_KeyHit
	add	esp,4
	cmp	eax,0
	je	_597
	movzx	eax,byte [bb_DEBUG]
	mov	eax,eax
	imul	eax,-1
	add	eax,1
	mov	eax,eax
	and	eax,0xff
	mov	eax,eax
	mov	byte [bb_DEBUG],al
_597:
	mov	eax,dword [bb_TIME]
	cmp	dword [bb_FPSTime],eax
	jge	_598
	mov	eax,dword [bb_TIME]
	add	eax,250
	mov	dword [bb_FPSTime],eax
	movzx	eax,word [bb_FPSCounter]
	mov	eax,eax
	shl	eax,2
	mov	eax,eax
	and	eax,0xffff
	mov	eax,eax
	mov	word [bb_FPSDraw],ax
	mov	word [bb_FPSCounter],0
_598:
	movzx	eax,word [bb_FPSCounter]
	mov	eax,eax
	add	eax,1
	mov	eax,eax
	and	eax,0xffff
	mov	eax,eax
	mov	word [bb_FPSCounter],ax
	movzx	eax,byte [bb_DEBUG]
	mov	eax,eax
	cmp	eax,1
	jne	_599
	push	dword [bb_FArial20]
	call	brl_max2d_SetImageFont
	add	esp,4
	push	1141997568
	push	1084227584
	movzx	eax,word [bb_FPSDraw]
	mov	eax,eax
	push	eax
	call	bbStringFromInt
	add	esp,4
	push	eax
	call	brl_max2d_DrawText
	add	esp,12
	push	dword [bb_FArial30]
	call	brl_max2d_SetImageFont
	add	esp,4
_599:
	mov	eax,0
_171:
	mov	esp,ebp
	pop	ebp
	ret
bb_selectPuzzleImg:
	push	ebp
	mov	ebp,esp
	sub	esp,36
	push	ebx
	push	esi
	push	edi
	mov	word [ebp-4],0
	push	-1
	push	8
	push	512
	push	512
	call	brl_max2d_CreateImage
	add	esp,16
	mov	esi,eax
	mov	byte [ebp-8],0
	mov	edi,0
	mov	byte [ebp-12],0
	mov	byte [ebp-16],0
	mov	dword [ebp-32],0
_70:
	call	bb_UserInput
	mov	eax,dword [bb_MX]
	cmp	eax,10
	setg	al
	movzx	eax,al
	cmp	eax,0
	je	_609
	mov	eax,dword [bb_MX]
	cmp	eax,130
	setl	al
	movzx	eax,al
_609:
	cmp	eax,0
	je	_611
	mov	eax,dword [bb_MY]
	cmp	eax,450
	setg	al
	movzx	eax,al
_611:
	cmp	eax,0
	je	_613
	mov	eax,dword [bb_MY]
	cmp	eax,497
	setl	al
	movzx	eax,al
_613:
	cmp	eax,0
	je	_615
	mov	byte [ebp-12],2
	movzx	eax,byte [ebp-12]
	mov	eax,eax
	cmp	eax,2
	sete	al
	movzx	eax,al
	cmp	eax,0
	je	_616
	movzx	eax,byte [bb_MOUSE1HIT]
	mov	eax,eax
	cmp	eax,1
	sete	al
	movzx	eax,al
_616:
	cmp	eax,0
	je	_618
	mov	byte [ebp-12],1
	mov	byte [bb_MOUSE1HIT],0
_618:
	jmp	_619
_615:
	mov	byte [ebp-12],0
_619:
	mov	eax,dword [bb_MX]
	cmp	eax,670
	setg	al
	movzx	eax,al
	cmp	eax,0
	je	_620
	mov	eax,dword [bb_MX]
	cmp	eax,790
	setl	al
	movzx	eax,al
_620:
	cmp	eax,0
	je	_622
	mov	eax,dword [bb_MY]
	cmp	eax,450
	setg	al
	movzx	eax,al
_622:
	cmp	eax,0
	je	_624
	mov	eax,dword [bb_MY]
	cmp	eax,497
	setl	al
	movzx	eax,al
_624:
	cmp	eax,0
	je	_626
	mov	byte [ebp-16],2
	jmp	_627
_626:
	mov	byte [ebp-16],0
_627:
	movzx	eax,byte [ebp-16]
	mov	eax,eax
	cmp	eax,2
	sete	al
	movzx	eax,al
	cmp	eax,0
	je	_628
	movzx	eax,byte [bb_MOUSE1HIT]
	mov	eax,eax
	cmp	eax,1
	sete	al
	movzx	eax,al
_628:
	cmp	eax,0
	je	_630
	mov	byte [ebp-16],1
	mov	byte [bb_MOUSE1HIT],0
_630:
	push	13
	call	brl_polledinput_KeyHit
	add	esp,4
	cmp	eax,0
	je	_631
	push	dword [bb_SFXClick]
	call	bb_Eventsystem
	add	esp,4
	mov	byte [ebp-8],1
_631:
	push	37
	call	brl_polledinput_KeyHit
	add	esp,4
	cmp	eax,0
	je	_632
	mov	byte [ebp-12],1
_632:
	push	39
	call	brl_polledinput_KeyHit
	add	esp,4
	cmp	eax,0
	je	_633
	mov	byte [ebp-16],1
_633:
	cmp	dword [bb_MOUSESCROLL],0
	jle	_634
	mov	byte [ebp-12],1
_634:
	cmp	dword [bb_MOUSESCROLL],0
	jge	_635
	mov	byte [ebp-16],1
_635:
	movzx	eax,word [bb_CountMotives]
	mov	eax,eax
	sub	eax,1
	cmp	edi,eax
	jle	_636
	mov	edi,0
_636:
	cmp	edi,0
	jge	_637
	movzx	eax,word [bb_CountMotives]
	mov	eax,eax
	sub	eax,1
	mov	edi,eax
_637:
	mov	eax,dword [bb_MotivesList]
	mov	dword [ebp-24],eax
	mov	eax,dword [ebp-24]
	push	eax
	mov	eax,dword [eax]
	call	dword [eax+140]
	add	esp,4
	mov	dword [ebp-28],eax
	jmp	_71
_73:
	mov	eax,dword [ebp-28]
	push	bb_TMotives
	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	_71
	cmp	edi,0
	setg	al
	movzx	eax,al
	cmp	eax,0
	je	_643
	movzx	eax,word [ebx+12]
	mov	edx,eax
	mov	eax,edi
	sub	eax,1
	cmp	edx,eax
	sete	al
	movzx	eax,al
_643:
	cmp	eax,0
	je	_645
	push	1053609165
	call	brl_max2d_SetAlpha
	add	esp,4
	push	1061997773
	push	1061997773
	call	brl_max2d_SetScale
	add	esp,8
	push	0
	push	-1052770304
	push	1139159859
	push	dword [ebx+20]
	call	brl_max2d_DrawImage
	add	esp,16
	push	1065353216
	push	1065353216
	call	brl_max2d_SetScale
	add	esp,8
	push	1065353216
	call	brl_max2d_SetAlpha
	add	esp,4
_645:
	movzx	eax,word [bb_CountMotives]
	mov	eax,eax
	sub	eax,1
	cmp	edi,eax
	setl	al
	movzx	eax,al
	cmp	eax,0
	je	_646
	movzx	eax,word [ebx+12]
	mov	edx,eax
	mov	eax,edi
	add	eax,1
	cmp	edx,eax
	sete	al
	movzx	eax,al
_646:
	cmp	eax,0
	je	_648
	push	1053609165
	call	brl_max2d_SetAlpha
	add	esp,4
	push	1061997773
	push	1061997773
	call	brl_max2d_SetScale
	add	esp,8
	push	0
	push	-1052770304
	push	-1031012352
	push	dword [ebx+20]
	call	brl_max2d_DrawImage
	add	esp,16
	push	1065353216
	push	1065353216
	call	brl_max2d_SetScale
	add	esp,8
	push	1065353216
	call	brl_max2d_SetAlpha
	add	esp,4
_648:
	cmp	edi,0
	jne	_649
	movzx	eax,word [ebx+12]
	mov	eax,eax
	cmp	eax,0
	jne	_650
	mov	eax,dword [ebx+20]
	inc	dword [eax+4]
	mov	esi,eax
	mov	eax,dword [bb_IMGPuzzle]
	dec	dword [eax+4]
	jnz	_654
	push	eax
	call	bbGCFree
	add	esp,4
_654:
	mov	dword [bb_IMGPuzzle],esi
	mov	esi,dword [ebx+24]
	jmp	_655
_650:
	movzx	eax,word [ebx+12]
	mov	edx,eax
	movzx	eax,word [bb_CountMotives]
	mov	eax,eax
	sub	eax,1
	cmp	edx,eax
	jne	_656
	push	1053609165
	call	brl_max2d_SetAlpha
	add	esp,4
	push	1061997773
	push	1061997773
	call	brl_max2d_SetScale
	add	esp,8
	push	0
	push	-1052770304
	push	1139159859
	push	dword [ebx+20]
	call	brl_max2d_DrawImage
	add	esp,16
	push	1065353216
	push	1065353216
	call	brl_max2d_SetScale
	add	esp,8
	push	1065353216
	call	brl_max2d_SetAlpha
	add	esp,4
_656:
_655:
_649:
	movzx	eax,word [bb_CountMotives]
	mov	eax,eax
	sub	eax,1
	cmp	edi,eax
	sete	al
	movzx	eax,al
	cmp	eax,0
	je	_657
	movzx	eax,word [ebx+12]
	mov	eax,eax
	cmp	eax,0
	sete	al
	movzx	eax,al
_657:
	cmp	eax,0
	je	_659
	push	1053609165
	call	brl_max2d_SetAlpha
	add	esp,4
	push	1061997773
	push	1061997773
	call	brl_max2d_SetScale
	add	esp,8
	push	0
	push	-1052770304
	push	-1031012352
	push	dword [ebx+20]
	call	brl_max2d_DrawImage
	add	esp,16
	push	1065353216
	push	1065353216
	call	brl_max2d_SetScale
	add	esp,8
	push	1065353216
	call	brl_max2d_SetAlpha
	add	esp,4
_659:
	movzx	eax,word [ebx+12]
	mov	eax,eax
	cmp	edi,eax
	sete	al
	movzx	eax,al
	cmp	eax,0
	je	_660
	cmp	edi,0
	setg	al
	movzx	eax,al
_660:
	cmp	eax,0
	je	_662
	mov	eax,dword [ebx+20]
	inc	dword [eax+4]
	mov	esi,eax
	mov	eax,dword [bb_IMGPuzzle]
	dec	dword [eax+4]
	jnz	_666
	push	eax
	call	bbGCFree
	add	esp,4
_666:
	mov	dword [bb_IMGPuzzle],esi
	mov	esi,dword [ebx+24]
	movzx	eax,word [ebx+12]
	mov	eax,eax
	mov	word [ebp-4],ax
_662:
_71:
	mov	eax,dword [ebp-28]
	push	eax
	mov	eax,dword [eax]
	call	dword [eax+48]
	add	esp,4
	cmp	eax,0
	jne	_73
_72:
	movzx	eax,byte [ebp-12]
	mov	eax,eax
	cmp	eax,1
	sete	al
	movzx	eax,al
	cmp	eax,0
	je	_667
	mov	eax,dword [ebp-32]
	cmp	eax,dword [bb_TIME]
	setl	al
	movzx	eax,al
_667:
	cmp	eax,0
	je	_669
	push	dword [bb_SFXClick]
	call	bb_Eventsystem
	add	esp,4
	add	edi,1
	mov	byte [ebp-12],0
	mov	dword [bb_MOUSESCROLL],0
	mov	eax,dword [bb_TIME]
	add	eax,400
	mov	dword [ebp-32],eax
_669:
	movzx	eax,byte [ebp-16]
	mov	eax,eax
	cmp	eax,1
	sete	al
	movzx	eax,al
	cmp	eax,0
	je	_670
	mov	eax,dword [ebp-32]
	cmp	eax,dword [bb_TIME]
	setl	al
	movzx	eax,al
_670:
	cmp	eax,0
	je	_672
	push	dword [bb_SFXClick]
	call	bb_Eventsystem
	add	esp,4
	sub	edi,1
	mov	byte [ebp-16],0
	mov	dword [bb_MOUSESCROLL],0
	mov	eax,dword [bb_TIME]
	add	eax,400
	mov	dword [ebp-32],eax
_672:
	push	0
	push	1141063680
	push	1125122048
	push	esi
	call	brl_max2d_DrawImage
	add	esp,16
	push	0
	push	1095761920
	push	1125122048
	push	dword [bb_IMGPuzzle]
	call	brl_max2d_DrawImage
	add	esp,16
	push	0
	push	1141473280
	push	1143439360
	push	dword [bb_ButtonRMirror]
	call	brl_max2d_DrawImage
	add	esp,16
	push	0
	push	1141473280
	push	1092616192
	push	dword [bb_ButtonLMirror]
	call	brl_max2d_DrawImage
	add	esp,16
	push	-1085485875
	push	1065353216
	call	brl_max2d_SetScale
	add	esp,8
	push	1045220557
	call	brl_max2d_SetAlpha
	add	esp,4
	push	dword [bb_FArial30]
	call	brl_max2d_SetImageFont
	add	esp,4
	push	1141964800
	mov	ebx,400
	push	_1
	movzx	eax,word [bb_CountMotives]
	mov	eax,eax
	push	eax
	call	bbStringFromInt
	add	esp,4
	push	eax
	push	_75
	mov	eax,edi
	add	eax,1
	push	eax
	call	bbStringFromInt
	add	esp,4
	push	eax
	push	_76
	call	bbStringConcat
	add	esp,8
	push	eax
	call	bbStringConcat
	add	esp,8
	push	eax
	call	bbStringConcat
	add	esp,8
	push	eax
	call	bbStringConcat
	add	esp,8
	push	eax
	call	brl_max2d_TextWidth
	add	esp,4
	cdq
	and	edx,1
	add	eax,edx
	sar	eax,1
	sub	ebx,eax
	mov	dword [ebp+-36],ebx
	fild	dword [ebp+-36]
	sub	esp,4
	fstp	dword [esp]
	movzx	eax,word [bb_CountMotives]
	mov	eax,eax
	push	eax
	call	bbStringFromInt
	add	esp,4
	push	eax
	push	_75
	mov	eax,edi
	add	eax,1
	push	eax
	call	bbStringFromInt
	add	esp,4
	push	eax
	push	_74
	call	bbStringConcat
	add	esp,8
	push	eax
	call	bbStringConcat
	add	esp,8
	push	eax
	call	bbStringConcat
	add	esp,8
	push	eax
	call	brl_max2d_DrawText
	add	esp,12
	push	1065353216
	push	1065353216
	call	brl_max2d_SetScale
	add	esp,8
	push	1065353216
	call	brl_max2d_SetAlpha
	add	esp,4
	push	1141227520
	mov	ebx,400
	push	_1
	movzx	eax,word [bb_CountMotives]
	mov	eax,eax
	push	eax
	call	bbStringFromInt
	add	esp,4
	push	eax
	push	_75
	mov	eax,edi
	add	eax,1
	push	eax
	call	bbStringFromInt
	add	esp,4
	push	eax
	push	_76
	call	bbStringConcat
	add	esp,8
	push	eax
	call	bbStringConcat
	add	esp,8
	push	eax
	call	bbStringConcat
	add	esp,8
	push	eax
	call	bbStringConcat
	add	esp,8
	push	eax
	call	brl_max2d_TextWidth
	add	esp,4
	cdq
	and	edx,1
	add	eax,edx
	sar	eax,1
	sub	ebx,eax
	mov	dword [ebp+-36],ebx
	fild	dword [ebp+-36]
	sub	esp,4
	fstp	dword [esp]
	movzx	eax,word [bb_CountMotives]
	mov	eax,eax
	push	eax
	call	bbStringFromInt
	add	esp,4
	push	eax
	push	_75
	mov	eax,edi
	add	eax,1
	push	eax
	call	bbStringFromInt
	add	esp,4
	push	eax
	push	_74
	call	bbStringConcat
	add	esp,8
	push	eax
	call	bbStringConcat
	add	esp,8
	push	eax
	call	bbStringConcat
	add	esp,8
	push	eax
	call	brl_max2d_DrawText
	add	esp,12
	push	dword [bb_FArial20]
	call	brl_max2d_SetImageFont
	add	esp,4
	push	0
	push	1138819072
	push	1143439360
	push	dword [bb_ButtonR]
	call	brl_max2d_DrawImage
	add	esp,16
	push	0
	push	1138819072
	push	1092616192
	push	dword [bb_ButtonL]
	call	brl_max2d_DrawImage
	add	esp,16
	push	25
	push	25
	push	25
	call	brl_max2d_SetColor
	add	esp,12
	push	1056964608
	call	brl_max2d_SetAlpha
	add	esp,4
	push	1100480512
	push	1140523008
	push	1140031488
	push	1125449728
	call	brl_max2d_DrawRect
	add	esp,16
	push	1065353216
	call	brl_max2d_SetAlpha
	add	esp,4
	push	125
	push	125
	push	125
	call	brl_max2d_SetColor
	add	esp,12
	push	1100480512
	push	1114636288
	push	1140031488
	mov	ecx,20
	mov	eax,dword [bb_MAP_X]
	cdq
	and	edx,1
	add	eax,edx
	sar	eax,1
	shl	eax,9
	cdq
	idiv	ecx
	add	eax,144
	sub	eax,5
	mov	dword [ebp+-36],eax
	fild	dword [ebp+-36]
	sub	esp,4
	fstp	dword [esp]
	call	brl_max2d_DrawRect
	add	esp,16
	push	255
	push	255
	push	255
	call	brl_max2d_SetColor
	add	esp,12
	push	1056964608
	push	1056964608
	call	brl_max2d_SetScale
	add	esp,8
	push	0
	push	1139965952
	mov	ecx,20
	mov	eax,dword [bb_MAP_X]
	cdq
	and	edx,1
	add	eax,edx
	sar	eax,1
	shl	eax,9
	cdq
	idiv	ecx
	add	eax,144
	add	eax,45
	mov	dword [ebp+-36],eax
	fild	dword [ebp+-36]
	sub	esp,4
	fstp	dword [esp]
	push	dword [bb_ButtonR]
	call	brl_max2d_DrawImage
	add	esp,16
	push	0
	push	1139965952
	mov	ecx,20
	mov	eax,dword [bb_MAP_X]
	cdq
	and	edx,1
	add	eax,edx
	sar	eax,1
	shl	eax,9
	cdq
	idiv	ecx
	add	eax,144
	sub	eax,55
	mov	dword [ebp+-36],eax
	fild	dword [ebp+-36]
	sub	esp,4
	fstp	dword [esp]
	push	dword [bb_ButtonL]
	call	brl_max2d_DrawImage
	add	esp,16
	push	1065353216
	push	1065353216
	call	brl_max2d_SetScale
	add	esp,8
	push	dword [bb_FArial20]
	call	brl_max2d_SetImageFont
	add	esp,4
	push	1139965952
	mov	ecx,20
	mov	eax,dword [bb_MAP_X]
	cdq
	and	edx,1
	add	eax,edx
	sar	eax,1
	shl	eax,9
	cdq
	idiv	ecx
	add	eax,144
	add	eax,25
	mov	dword [ebp+-36],eax
	fild	dword [ebp+-36]
	fstp	dword [ebp-20]
	push	_1
	mov	eax,dword [bb_MAP_X]
	imul	eax,dword [bb_MAP_Y]
	push	eax
	call	bbStringFromInt
	add	esp,4
	push	eax
	push	_1
	call	bbStringConcat
	add	esp,8
	push	eax
	call	bbStringConcat
	add	esp,8
	push	eax
	call	brl_max2d_TextWidth
	add	esp,4
	mov	dword [ebp+-36],eax
	fild	dword [ebp+-36]
	fdiv	dword [_1060]
	fld	dword [ebp-20]
	fsubrp	st1,st0
	fstp	dword [ebp-20]
	push	dword [ebp-20]
	mov	eax,dword [bb_MAP_X]
	imul	eax,dword [bb_MAP_Y]
	push	eax
	call	bbStringFromInt
	add	esp,4
	push	eax
	call	brl_max2d_DrawText
	add	esp,12
	push	dword [bb_FArial30]
	call	brl_max2d_SetImageFont
	add	esp,4
	movzx	eax,byte [ebp-16]
	mov	eax,eax
	cmp	eax,2
	jne	_673
	push	1050253722
	call	brl_max2d_SetAlpha
	add	esp,4
	push	4
	call	brl_max2d_SetBlend
	add	esp,4
	push	0
	push	1138819072
	push	1143439360
	push	dword [bb_ButtonR]
	call	brl_max2d_DrawImage
	add	esp,16
	push	3
	call	brl_max2d_SetBlend
	add	esp,4
	push	1065353216
	call	brl_max2d_SetAlpha
	add	esp,4
_673:
	movzx	eax,byte [ebp-12]
	mov	eax,eax
	cmp	eax,2
	jne	_674
	push	1050253722
	call	brl_max2d_SetAlpha
	add	esp,4
	push	4
	call	brl_max2d_SetBlend
	add	esp,4
	push	0
	push	1138819072
	push	1092616192
	push	dword [bb_ButtonL]
	call	brl_max2d_DrawImage
	add	esp,16
	push	3
	call	brl_max2d_SetBlend
	add	esp,4
	push	1065353216
	call	brl_max2d_SetAlpha
	add	esp,4
_674:
	mov	eax,dword [bb_MX]
	cmp	eax,144
	setg	al
	movzx	eax,al
	cmp	eax,0
	je	_675
	mov	eax,dword [bb_MX]
	cmp	eax,656
	setl	al
	movzx	eax,al
_675:
	cmp	eax,0
	je	_677
	mov	eax,dword [bb_MY]
	cmp	eax,13
	setg	al
	movzx	eax,al
_677:
	cmp	eax,0
	je	_679
	mov	eax,dword [bb_MY]
	cmp	eax,475
	setl	al
	movzx	eax,al
_679:
	cmp	eax,0
	je	_681
	push	1050253722
	call	brl_max2d_SetAlpha
	add	esp,4
	push	4
	call	brl_max2d_SetBlend
	add	esp,4
	push	0
	push	1095761920
	push	1125122048
	push	dword [bb_IMGPuzzle]
	call	brl_max2d_DrawImage
	add	esp,16
	push	3
	call	brl_max2d_SetBlend
	add	esp,4
	push	1065353216
	call	brl_max2d_SetAlpha
	add	esp,4
	movzx	eax,byte [bb_MOUSE1HIT]
	mov	eax,eax
	cmp	eax,1
	jne	_682
	mov	byte [ebp-8],1
	push	dword [bb_SFXClick]
	call	bb_Eventsystem
	add	esp,4
	mov	byte [bb_MOUSE1HIT],0
_682:
_681:
	push	1
	call	brl_polledinput_MouseDown
	add	esp,4
	cmp	eax,0
	je	_683
	mov	eax,dword [bb_MX]
	cmp	eax,144
	setg	al
	movzx	eax,al
_683:
	cmp	eax,0
	je	_685
	mov	eax,dword [bb_MX]
	cmp	eax,656
	setl	al
	movzx	eax,al
_685:
	cmp	eax,0
	je	_687
	mov	eax,dword [bb_MY]
	cmp	eax,475
	setg	al
	movzx	eax,al
_687:
	cmp	eax,0
	je	_689
	mov	eax,dword [bb_MY]
	cmp	eax,525
	setl	al
	movzx	eax,al
_689:
	cmp	eax,0
	je	_691
	mov	ecx,15
	mov	eax,dword [bb_MX]
	sub	eax,144
	cdq
	idiv	ecx
	mov	dword [bb_MAP_X],eax
	cmp	dword [bb_MAP_X],4
	jge	_692
	mov	dword [bb_MAP_X],4
_692:
	cmp	dword [bb_MAP_X],32
	jle	_693
	mov	dword [bb_MAP_X],32
_693:
	mov	eax,dword [bb_MAP_X]
	mov	dword [bb_MAP_Y],eax
_691:
	push	32
	call	brl_polledinput_KeyHit
	add	esp,4
	cmp	eax,0
	je	_694
	jmp	_69
_694:
	push	1
	call	bb_Mouse
	add	esp,4
	call	bb_FPS
	push	0
	call	brl_graphics_Flip
	add	esp,4
	push	dword [bb_Timer]
	call	brl_timer_WaitTimer
	add	esp,4
	call	brl_max2d_Cls
_68:
	push	27
	call	brl_polledinput_KeyHit
	add	esp,4
	cmp	eax,0
	jne	_695
	call	brl_polledinput_AppTerminate
_695:
	cmp	eax,0
	jne	_697
	movzx	eax,byte [ebp-8]
	mov	eax,eax
	cmp	eax,1
	sete	al
	movzx	eax,al
_697:
	cmp	eax,0
	je	_70
_69:
	push	1065353216
	push	1065353216
	call	brl_max2d_SetScale
	add	esp,8
	movzx	eax,byte [ebp-8]
	mov	eax,eax
	cmp	eax,0
	jne	_699
	call	bb_Menu
	jmp	_700
_699:
	movzx	eax,byte [ebp-8]
	mov	eax,eax
	cmp	eax,0
	jle	_701
	call	brl_max2d_Cls
	mov	eax,512
	cdq
	idiv	dword [bb_MAP_X]
	mov	eax,eax
	and	eax,0xffff
	mov	eax,eax
	mov	word [bb_PuzzleTileSize],ax
	cmp	dword [bb_MAP_X],27
	jle	_702
	mov	byte [bb_BetweenTile],2
_702:
	cmp	dword [bb_MAP_Y],27
	jg	_703
	mov	byte [bb_BetweenTile],3
_703:
	push	dword [bb_MAP_Y]
	push	dword [bb_MAP_X]
	push	2
	push	_704
	call	bbArrayNew
	add	esp,16
	mov	ebx,eax
	inc	dword [ebx+4]
	mov	eax,dword [bb_Puzzle]
	dec	dword [eax+4]
	jnz	_708
	push	eax
	call	bbGCFree
	add	esp,4
_708:
	mov	dword [bb_Puzzle],ebx
	push	dword [bb_MAP_Y]
	push	dword [bb_MAP_X]
	push	2
	push	_709
	call	bbArrayNew
	add	esp,16
	mov	ebx,eax
	inc	dword [ebx+4]
	mov	eax,dword [bb_Puzzle_ID_Correct]
	dec	dword [eax+4]
	jnz	_713
	push	eax
	call	bbGCFree
	add	esp,4
_713:
	mov	dword [bb_Puzzle_ID_Correct],ebx
	push	dword [bb_MAP_Y]
	push	dword [bb_MAP_X]
	push	2
	push	_714
	call	bbArrayNew
	add	esp,16
	mov	ebx,eax
	inc	dword [ebx+4]
	mov	eax,dword [bb_Puzzle_ID_Now]
	dec	dword [eax+4]
	jnz	_718
	push	eax
	call	bbGCFree
	add	esp,4
_718:
	mov	dword [bb_Puzzle_ID_Now],ebx
	push	dword [bb_MAP_Y]
	push	dword [bb_MAP_X]
	push	2
	push	_719
	call	bbArrayNew
	add	esp,16
	mov	ebx,eax
	inc	dword [ebx+4]
	mov	eax,dword [bb_Puzzle_Original]
	dec	dword [eax+4]
	jnz	_723
	push	eax
	call	bbGCFree
	add	esp,4
_723:
	mov	dword [bb_Puzzle_Original],ebx
	call	bb_PreparePuzzle
	mov	eax,dword [bb_MAP_X]
	imul	eax,dword [bb_MAP_Y]
	mov	eax,eax
	and	eax,0xffff
	mov	eax,eax
	mov	word [bb_AllTiles],ax
_701:
_700:
	mov	eax,0
_173:
	pop	edi
	pop	esi
	pop	ebx
	mov	esp,ebp
	pop	ebp
	ret
bb_mirrorImage:
	push	ebp
	mov	ebp,esp
	sub	esp,44
	push	ebx
	push	esi
	push	edi
	mov	dword [ebp-36],bbNullObject
	push	dword [ebp+8]
	call	brl_max2d_ImageHeight
	add	esp,4
	cmp	eax,100
	jle	_733
	push	-1
	push	8
	mov	ebx,7
	push	dword [ebp+8]
	call	brl_max2d_ImageHeight
	add	esp,4
	cdq
	idiv	ebx
	push	eax
	push	dword [ebp+8]
	call	brl_max2d_ImageWidth
	add	esp,4
	push	eax
	call	brl_max2d_CreateImage
	add	esp,16
	mov	dword [ebp-36],eax
	call	brl_max2d_Cls
	push	0
	push	0
	push	0
	push	dword [ebp+8]
	call	brl_max2d_DrawImage
	add	esp,16
	push	0
	push	dword [ebp+8]
	call	brl_max2d_ImageHeight
	add	esp,4
	mov	esi,eax
	mov	ebx,7
	push	dword [ebp+8]
	call	brl_max2d_ImageHeight
	add	esp,4
	cdq
	idiv	ebx
	sub	esi,eax
	push	esi
	push	0
	push	dword [ebp-36]
	call	brl_max2d_GrabImage
	add	esp,16
	call	brl_max2d_Cls
	push	1
	push	1
	push	0
	push	dword [ebp-36]
	call	brl_max2d_LockImage
	add	esp,16
	mov	dword [ebp-28],eax
	jmp	_734
_733:
	push	1
	push	1
	push	0
	push	dword [ebp+8]
	call	brl_max2d_LockImage
	add	esp,16
	mov	dword [ebp-28],eax
_734:
	push	6
	push	dword [ebp-28]
	call	brl_pixmap_ConvertPixmap
	add	esp,8
	mov	dword [ebp-28],eax
	push	dword [ebp-28]
	call	brl_pixmap_YFlipPixmap
	add	esp,4
	mov	dword [ebp-28],eax
	mov	edi,0
	push	dword [ebp-28]
	call	brl_pixmap_PixmapWidth
	add	esp,4
	sub	eax,1
	mov	dword [ebp-40],eax
	jmp	_735
_79:
	mov	esi,0
	push	dword [ebp-28]
	call	brl_pixmap_PixmapHeight
	add	esp,4
	sub	eax,1
	mov	dword [ebp-32],eax
	jmp	_737
_82:
	push	esi
	push	edi
	push	dword [ebp-28]
	call	brl_pixmap_ReadPixel
	add	esp,12
	mov	ebx,eax
	push	dword [ebp+8]
	call	brl_max2d_ImageHeight
	add	esp,4
	cmp	eax,100
	jle	_739
	fld	dword [_1119]
	fstp	dword [ebp-24]
	fld	dword [_1120]
	fstp	dword [ebp-16]
	mov	dword [ebp+-44],esi
	fild	dword [ebp+-44]
	fstp	dword [ebp-8]
	push	dword [ebp-36]
	call	brl_max2d_ImageHeight
	add	esp,4
	mov	dword [ebp+-44],eax
	fild	dword [ebp+-44]
	fld	dword [ebp-8]
	fdivrp	st1,st0
	fstp	dword [ebp-8]
	fld	dword [ebp-16]
	fsub	dword [ebp-8]
	fstp	dword [ebp-16]
	fld	dword [ebp-24]
	fmul	dword [ebp-16]
	fstp	dword [ebp-24]
	fld	dword [ebp-24]
	sub	esp,8
	fstp	qword [esp]
	call	bbFloatToInt
	add	esp,8
	mov	ecx,eax
	jmp	_740
_739:
	fld	dword [_1121]
	fstp	dword [ebp-20]
	fld	dword [_1122]
	fstp	dword [ebp-12]
	mov	dword [ebp+-44],esi
	fild	dword [ebp+-44]
	fstp	dword [ebp-4]
	push	dword [ebp+8]
	call	brl_max2d_ImageHeight
	add	esp,4
	mov	dword [ebp+-44],eax
	fild	dword [ebp+-44]
	fld	dword [ebp-4]
	fdivrp	st1,st0
	fstp	dword [ebp-4]
	fld	dword [ebp-12]
	fsub	dword [ebp-4]
	fstp	dword [ebp-12]
	fld	dword [ebp-20]
	fmul	dword [ebp-12]
	fstp	dword [ebp-20]
	fld	dword [ebp-20]
	sub	esp,8
	fstp	qword [esp]
	call	bbFloatToInt
	add	esp,8
	mov	ecx,eax
_740:
	mov	eax,ebx
	shr	eax,24
	cmp	eax,0
	jne	_741
	mov	ecx,0
_741:
	mov	eax,ebx
	shr	eax,16
	and	eax,255
	mov	edx,eax
	mov	eax,ebx
	shr	eax,8
	and	eax,255
	and	ebx,255
	shl	ecx,24
	shl	edx,16
	add	ecx,edx
	mov	edx,ecx
	shl	eax,8
	add	edx,eax
	add	edx,ebx
	mov	ebx,edx
	push	ebx
	push	esi
	push	edi
	push	dword [ebp-28]
	call	brl_pixmap_WritePixel
	add	esp,16
_80:
	add	esi,1
_737:
	cmp	esi,dword [ebp-32]
	jle	_82
_81:
_77:
	add	edi,1
_735:
	cmp	edi,dword [ebp-40]
	jle	_79
_78:
	push	-1
	push	dword [ebp-28]
	call	brl_max2d_LoadImage
	add	esp,8
_176:
	pop	edi
	pop	esi
	pop	ebx
	mov	esp,ebp
	pop	ebp
	ret
bb_MouseZSpeed:
	push	ebp
	mov	ebp,esp
	mov	edx,dword [ebp+8]
	mov	eax,edx
	sub	eax,dword [bb_MZSpeedOld]
	mov	dword [bb_MZSpeedOld],edx
_179:
	mov	esp,ebp
	pop	ebp
	ret
bb_Menu:
	push	ebp
	mov	ebp,esp
	sub	esp,8
	push	ebx
	push	esi
	push	edi
	mov	word [ebp-4],0
	push	3
	push	8
	push	2
	push	_746
	call	bbArrayNew
	add	esp,16
	mov	ebx,eax
	push	8
	push	_748
	call	bbArrayNew1D
	add	esp,8
	mov	edi,eax
	mov	word [ebp-4],0
	jmp	_750
_85:
	movzx	eax,word [ebp-4]
	mov	edx,eax
	movzx	eax,word [ebp-4]
	mov	eax,eax
	imul	eax,50
	neg	eax
	mov	dword [ebp+-8],eax
	fild	dword [ebp+-8]
	fstp	dword [edi+edx*4+24]
_83:
	add	word [ebp-4],1
_750:
	movzx	eax,word [ebp-4]
	cmp	eax,7
	jle	_85
_84:
	mov	eax,_86
	inc	dword [eax+4]
	mov	esi,eax
	mov	eax,dword [ebx+24]
	mov	eax,dword [ebx+eax*4+28]
	dec	dword [eax+4]
	jnz	_754
	push	eax
	call	bbGCFree
	add	esp,4
_754:
	mov	eax,dword [ebx+24]
	mov	dword [ebx+eax*4+28],esi
	mov	eax,_87
	inc	dword [eax+4]
	mov	esi,eax
	mov	eax,dword [ebx+24]
	add	eax,1
	mov	eax,dword [ebx+eax*4+28]
	dec	dword [eax+4]
	jnz	_758
	push	eax
	call	bbGCFree
	add	esp,4
_758:
	mov	eax,dword [ebx+24]
	add	eax,1
	mov	dword [ebx+eax*4+28],esi
	mov	eax,_88
	inc	dword [eax+4]
	mov	esi,eax
	mov	eax,dword [ebx+24]
	add	eax,2
	mov	eax,dword [ebx+eax*4+28]
	dec	dword [eax+4]
	jnz	_762
	push	eax
	call	bbGCFree
	add	esp,4
_762:
	mov	eax,dword [ebx+24]
	add	eax,2
	mov	dword [ebx+eax*4+28],esi
	mov	eax,_89
	inc	dword [eax+4]
	mov	esi,eax
	mov	eax,dword [ebx+24]
	shl	eax,1
	mov	eax,dword [ebx+eax*4+28]
	dec	dword [eax+4]
	jnz	_766
	push	eax
	call	bbGCFree
	add	esp,4
_766:
	mov	eax,dword [ebx+24]
	shl	eax,1
	mov	dword [ebx+eax*4+28],esi
	mov	eax,_90
	inc	dword [eax+4]
	mov	esi,eax
	mov	eax,dword [ebx+24]
	shl	eax,1
	add	eax,1
	mov	eax,dword [ebx+eax*4+28]
	dec	dword [eax+4]
	jnz	_770
	push	eax
	call	bbGCFree
	add	esp,4
_770:
	mov	eax,dword [ebx+24]
	shl	eax,1
	add	eax,1
	mov	dword [ebx+eax*4+28],esi
	mov	eax,_91
	inc	dword [eax+4]
	mov	esi,eax
	mov	eax,dword [ebx+24]
	shl	eax,1
	add	eax,2
	mov	eax,dword [ebx+eax*4+28]
	dec	dword [eax+4]
	jnz	_774
	push	eax
	call	bbGCFree
	add	esp,4
_774:
	mov	eax,dword [ebx+24]
	shl	eax,1
	add	eax,2
	mov	dword [ebx+eax*4+28],esi
	mov	eax,_92
	inc	dword [eax+4]
	mov	esi,eax
	mov	eax,dword [ebx+24]
	imul	eax,3
	mov	eax,dword [ebx+eax*4+28]
	dec	dword [eax+4]
	jnz	_778
	push	eax
	call	bbGCFree
	add	esp,4
_778:
	mov	eax,dword [ebx+24]
	imul	eax,3
	mov	dword [ebx+eax*4+28],esi
	mov	eax,_93
	inc	dword [eax+4]
	mov	esi,eax
	mov	eax,dword [ebx+24]
	imul	eax,3
	add	eax,1
	mov	eax,dword [ebx+eax*4+28]
	dec	dword [eax+4]
	jnz	_782
	push	eax
	call	bbGCFree
	add	esp,4
_782:
	mov	eax,dword [ebx+24]
	imul	eax,3
	add	eax,1
	mov	dword [ebx+eax*4+28],esi
	mov	eax,_94
	inc	dword [eax+4]
	mov	esi,eax
	mov	eax,dword [ebx+24]
	imul	eax,3
	add	eax,2
	mov	eax,dword [ebx+eax*4+28]
	dec	dword [eax+4]
	jnz	_786
	push	eax
	call	bbGCFree
	add	esp,4
_786:
	mov	eax,dword [ebx+24]
	imul	eax,3
	add	eax,2
	mov	dword [ebx+eax*4+28],esi
	mov	eax,_95
	inc	dword [eax+4]
	mov	esi,eax
	mov	eax,dword [ebx+24]
	shl	eax,2
	mov	eax,dword [ebx+eax*4+28]
	dec	dword [eax+4]
	jnz	_790
	push	eax
	call	bbGCFree
	add	esp,4
_790:
	mov	eax,dword [ebx+24]
	shl	eax,2
	mov	dword [ebx+eax*4+28],esi
	mov	eax,_96
	inc	dword [eax+4]
	mov	esi,eax
	mov	eax,dword [ebx+24]
	shl	eax,2
	add	eax,1
	mov	eax,dword [ebx+eax*4+28]
	dec	dword [eax+4]
	jnz	_794
	push	eax
	call	bbGCFree
	add	esp,4
_794:
	mov	eax,dword [ebx+24]
	shl	eax,2
	add	eax,1
	mov	dword [ebx+eax*4+28],esi
	mov	eax,_97
	inc	dword [eax+4]
	mov	esi,eax
	mov	eax,dword [ebx+24]
	shl	eax,2
	add	eax,2
	mov	eax,dword [ebx+eax*4+28]
	dec	dword [eax+4]
	jnz	_798
	push	eax
	call	bbGCFree
	add	esp,4
_798:
	mov	eax,dword [ebx+24]
	shl	eax,2
	add	eax,2
	mov	dword [ebx+eax*4+28],esi
	mov	eax,_98
	inc	dword [eax+4]
	mov	esi,eax
	mov	eax,dword [ebx+24]
	imul	eax,5
	mov	eax,dword [ebx+eax*4+28]
	dec	dword [eax+4]
	jnz	_802
	push	eax
	call	bbGCFree
	add	esp,4
_802:
	mov	eax,dword [ebx+24]
	imul	eax,5
	mov	dword [ebx+eax*4+28],esi
	mov	eax,_99
	inc	dword [eax+4]
	mov	esi,eax
	mov	eax,dword [ebx+24]
	imul	eax,5
	add	eax,1
	mov	eax,dword [ebx+eax*4+28]
	dec	dword [eax+4]
	jnz	_806
	push	eax
	call	bbGCFree
	add	esp,4
_806:
	mov	eax,dword [ebx+24]
	imul	eax,5
	add	eax,1
	mov	dword [ebx+eax*4+28],esi
	mov	eax,_100
	inc	dword [eax+4]
	mov	esi,eax
	mov	eax,dword [ebx+24]
	imul	eax,5
	add	eax,2
	mov	eax,dword [ebx+eax*4+28]
	dec	dword [eax+4]
	jnz	_810
	push	eax
	call	bbGCFree
	add	esp,4
_810:
	mov	eax,dword [ebx+24]
	imul	eax,5
	add	eax,2
	mov	dword [ebx+eax*4+28],esi
	mov	eax,_101
	inc	dword [eax+4]
	mov	esi,eax
	mov	eax,dword [ebx+24]
	imul	eax,6
	mov	eax,dword [ebx+eax*4+28]
	dec	dword [eax+4]
	jnz	_814
	push	eax
	call	bbGCFree
	add	esp,4
_814:
	mov	eax,dword [ebx+24]
	imul	eax,6
	mov	dword [ebx+eax*4+28],esi
	mov	eax,_102
	inc	dword [eax+4]
	mov	esi,eax
	mov	eax,dword [ebx+24]
	imul	eax,6
	add	eax,1
	mov	eax,dword [ebx+eax*4+28]
	dec	dword [eax+4]
	jnz	_818
	push	eax
	call	bbGCFree
	add	esp,4
_818:
	mov	eax,dword [ebx+24]
	imul	eax,6
	add	eax,1
	mov	dword [ebx+eax*4+28],esi
	mov	eax,_103
	inc	dword [eax+4]
	mov	esi,eax
	mov	eax,dword [ebx+24]
	imul	eax,6
	add	eax,2
	mov	eax,dword [ebx+eax*4+28]
	dec	dword [eax+4]
	jnz	_822
	push	eax
	call	bbGCFree
	add	esp,4
_822:
	mov	eax,dword [ebx+24]
	imul	eax,6
	add	eax,2
	mov	dword [ebx+eax*4+28],esi
	mov	eax,_104
	inc	dword [eax+4]
	mov	esi,eax
	mov	eax,dword [ebx+24]
	imul	eax,7
	mov	eax,dword [ebx+eax*4+28]
	dec	dword [eax+4]
	jnz	_826
	push	eax
	call	bbGCFree
	add	esp,4
_826:
	mov	eax,dword [ebx+24]
	imul	eax,7
	mov	dword [ebx+eax*4+28],esi
	mov	eax,_105
	inc	dword [eax+4]
	mov	esi,eax
	mov	eax,dword [ebx+24]
	imul	eax,7
	add	eax,1
	mov	eax,dword [ebx+eax*4+28]
	dec	dword [eax+4]
	jnz	_830
	push	eax
	call	bbGCFree
	add	esp,4
_830:
	mov	eax,dword [ebx+24]
	imul	eax,7
	add	eax,1
	mov	dword [ebx+eax*4+28],esi
	mov	eax,_106
	inc	dword [eax+4]
	mov	esi,eax
	mov	eax,dword [ebx+24]
	imul	eax,7
	add	eax,2
	mov	eax,dword [ebx+eax*4+28]
	dec	dword [eax+4]
	jnz	_834
	push	eax
	call	bbGCFree
	add	esp,4
_834:
	mov	eax,dword [ebx+24]
	imul	eax,7
	add	eax,2
	mov	dword [ebx+eax*4+28],esi
	mov	byte [bb_MOUSE1HIT],0
	mov	byte [bb_Selection],0
	mov	dword [bb_ChangeID],-1
	mov	dword [bb_ChangeX_old],0
	mov	dword [bb_ChangeY_old],0
_109:
	call	brl_max2d_Cls
	push	dword [bb_FArial20]
	call	brl_max2d_SetImageFont
	add	esp,4
	mov	word [ebp-4],0
	jmp	_835
_112:
	movzx	eax,word [ebp-4]
	mov	eax,eax
	fld	dword [edi+eax*4+24]
	fdiv	dword [_1133]
	fmul	dword [_1134]
	sub	esp,4
	fstp	dword [esp]
	call	brl_max2d_SetAlpha
	add	esp,4
	movzx	eax,word [ebp-4]
	mov	eax,eax
	push	dword [edi+eax*4+24]
	fld	dword [_1135]
	movzx	eax,word [ebp-4]
	mov	eax,eax
	fld	dword [edi+eax*4+24]
	fdiv	dword [_1136]
	fsubp	st1,st0
	sub	esp,4
	fstp	dword [esp]
	movzx	eax,word [ebp-4]
	mov	eax,eax
	imul	eax,dword [ebx+24]
	push	dword [ebx+eax*4+28]
	call	brl_max2d_DrawText
	add	esp,12
	movzx	eax,word [ebp-4]
	mov	eax,eax
	push	dword [edi+eax*4+24]
	mov	esi,800
	movzx	eax,word [ebp-4]
	mov	eax,eax
	imul	eax,dword [ebx+24]
	add	eax,1
	push	dword [ebx+eax*4+28]
	call	brl_max2d_TextWidth
	add	esp,4
	sub	esi,eax
	movzx	eax,word [ebp-4]
	mov	eax,eax
	imul	eax,dword [ebx+24]
	add	eax,2
	push	dword [ebx+eax*4+28]
	call	brl_max2d_TextWidth
	add	esp,4
	sub	esi,eax
	mov	eax,esi
	sub	eax,150
	mov	dword [ebp+-8],eax
	fild	dword [ebp+-8]
	movzx	eax,word [ebp-4]
	mov	eax,eax
	fld	dword [edi+eax*4+24]
	fdiv	dword [_1137]
	faddp	st1,st0
	sub	esp,4
	fstp	dword [esp]
	movzx	eax,word [ebp-4]
	mov	eax,eax
	imul	eax,dword [ebx+24]
	add	eax,1
	push	dword [ebx+eax*4+28]
	call	brl_max2d_DrawText
	add	esp,12
	movzx	eax,word [ebp-4]
	mov	eax,eax
	push	dword [edi+eax*4+24]
	mov	esi,800
	movzx	eax,word [ebp-4]
	mov	eax,eax
	imul	eax,dword [ebx+24]
	add	eax,2
	push	dword [ebx+eax*4+28]
	call	brl_max2d_TextWidth
	add	esp,4
	sub	esi,eax
	mov	eax,esi
	sub	eax,120
	mov	dword [ebp+-8],eax
	fild	dword [ebp+-8]
	movzx	eax,word [ebp-4]
	mov	eax,eax
	fld	dword [edi+eax*4+24]
	fdiv	dword [_1138]
	faddp	st1,st0
	sub	esp,4
	fstp	dword [esp]
	movzx	eax,word [ebp-4]
	mov	eax,eax
	imul	eax,dword [ebx+24]
	add	eax,2
	push	dword [ebx+eax*4+28]
	call	brl_max2d_DrawText
	add	esp,12
	movzx	eax,word [ebp-4]
	mov	eax,eax
	fld	dword [edi+eax*4+24]
	fdiv	dword [_1139]
	sub	esp,4
	fstp	dword [esp]
	call	brl_max2d_SetAlpha
	add	esp,4
	push	-1082130432
	push	1065353216
	call	brl_max2d_SetScale
	add	esp,8
	fld	dword [_1140]
	movzx	eax,word [ebp-4]
	mov	eax,eax
	fsub	dword [edi+eax*4+24]
	sub	esp,4
	fstp	dword [esp]
	fld	dword [_1141]
	movzx	eax,word [ebp-4]
	mov	eax,eax
	fld	dword [edi+eax*4+24]
	fdiv	dword [_1142]
	fsubp	st1,st0
	sub	esp,4
	fstp	dword [esp]
	movzx	eax,word [ebp-4]
	mov	eax,eax
	imul	eax,dword [ebx+24]
	push	dword [ebx+eax*4+28]
	call	brl_max2d_DrawText
	add	esp,12
	fld	dword [_1143]
	movzx	eax,word [ebp-4]
	mov	eax,eax
	fsub	dword [edi+eax*4+24]
	sub	esp,4
	fstp	dword [esp]
	mov	esi,800
	movzx	eax,word [ebp-4]
	mov	eax,eax
	imul	eax,dword [ebx+24]
	add	eax,1
	push	dword [ebx+eax*4+28]
	call	brl_max2d_TextWidth
	add	esp,4
	sub	esi,eax
	movzx	eax,word [ebp-4]
	mov	eax,eax
	imul	eax,dword [ebx+24]
	add	eax,2
	push	dword [ebx+eax*4+28]
	call	brl_max2d_TextWidth
	add	esp,4
	sub	esi,eax
	mov	eax,esi
	sub	eax,150
	mov	dword [ebp+-8],eax
	fild	dword [ebp+-8]
	movzx	eax,word [ebp-4]
	mov	eax,eax
	fld	dword [edi+eax*4+24]
	fdiv	dword [_1144]
	faddp	st1,st0
	sub	esp,4
	fstp	dword [esp]
	movzx	eax,word [ebp-4]
	mov	eax,eax
	imul	eax,dword [ebx+24]
	add	eax,1
	push	dword [ebx+eax*4+28]
	call	brl_max2d_DrawText
	add	esp,12
	fld	dword [_1145]
	movzx	eax,word [ebp-4]
	mov	eax,eax
	fsub	dword [edi+eax*4+24]
	sub	esp,4
	fstp	dword [esp]
	mov	esi,800
	movzx	eax,word [ebp-4]
	mov	eax,eax
	imul	eax,dword [ebx+24]
	add	eax,2
	push	dword [ebx+eax*4+28]
	call	brl_max2d_TextWidth
	add	esp,4
	sub	esi,eax
	mov	eax,esi
	sub	eax,120
	mov	dword [ebp+-8],eax
	fild	dword [ebp+-8]
	movzx	eax,word [ebp-4]
	mov	eax,eax
	fld	dword [edi+eax*4+24]
	fdiv	dword [_1146]
	faddp	st1,st0
	sub	esp,4
	fstp	dword [esp]
	movzx	eax,word [ebp-4]
	mov	eax,eax
	imul	eax,dword [ebx+24]
	add	eax,2
	push	dword [ebx+eax*4+28]
	call	brl_max2d_DrawText
	add	esp,12
	push	1065353216
	push	1065353216
	call	brl_max2d_SetScale
	add	esp,8
	movzx	eax,word [ebp-4]
	mov	edx,eax
	movzx	eax,word [ebp-4]
	mov	eax,eax
	fld	dword [edi+eax*4+24]
	fadd	dword [_1147]
	fstp	dword [edi+edx*4+24]
	movzx	eax,word [ebp-4]
	mov	eax,eax
	fld	dword [edi+eax*4+24]
	fld	dword [_1148]
	fxch	st1
	fucompp
	fnstsw	ax
	sahf
	setbe	al
	movzx	eax,al
	cmp	eax,0
	jne	_836
	movzx	eax,word [ebp-4]
	mov	eax,eax
	fld	dword [_1149]
	fstp	dword [edi+eax*4+24]
_836:
_110:
	add	word [ebp-4],1
_835:
	movzx	eax,word [ebp-4]
	cmp	eax,7
	jle	_112
_111:
	push	dword [bb_FArial30]
	call	brl_max2d_SetImageFont
	add	esp,4
	push	1065353216
	call	brl_max2d_SetAlpha
	add	esp,4
	call	bb_UserInput
	push	0
	push	1120403456
	push	1133903872
	push	dword [bb_IMGButton]
	call	brl_max2d_DrawImage
	add	esp,16
	push	0
	push	1137180672
	push	1133903872
	push	dword [bb_IMGButton]
	call	brl_max2d_DrawImage
	add	esp,16
	mov	edx,300
	mov	eax,dword [bb_MX]
	cmp	eax,edx
	setge	al
	movzx	eax,al
	cmp	eax,0
	je	_837
	mov	ecx,dword [bb_MX]
	mov	eax,edx
	add	eax,200
	cmp	ecx,eax
	setl	al
	movzx	eax,al
_837:
	cmp	eax,0
	je	_839
	mov	eax,dword [bb_MY]
	cmp	eax,100
	setge	al
	movzx	eax,al
_839:
	cmp	eax,0
	je	_841
	mov	eax,dword [bb_MY]
	cmp	eax,200
	setle	al
	movzx	eax,al
_841:
	cmp	eax,0
	je	_843
	movzx	eax,byte [bb_MOUSE1HIT]
	mov	eax,eax
	cmp	eax,1
	jne	_844
	push	dword [bb_SFXClick]
	call	bb_Eventsystem
	add	esp,4
	call	bb_selectPuzzleImg
	call	bb_MixPuzzle
	jmp	_108
_844:
	push	1050253722
	call	brl_max2d_SetAlpha
	add	esp,4
	push	4
	call	brl_max2d_SetBlend
	add	esp,4
	push	0
	push	1120403456
	push	1133903872
	push	dword [bb_IMGButton]
	call	brl_max2d_DrawImage
	add	esp,16
	push	3
	call	brl_max2d_SetBlend
	add	esp,4
	push	1065353216
	call	brl_max2d_SetAlpha
	add	esp,4
	jmp	_845
_843:
	mov	eax,dword [bb_MX]
	cmp	eax,edx
	setge	al
	movzx	eax,al
	cmp	eax,0
	je	_846
	mov	eax,dword [bb_MX]
	add	edx,200
	cmp	eax,edx
	setl	al
	movzx	eax,al
_846:
	cmp	eax,0
	je	_848
	mov	eax,dword [bb_MY]
	cmp	eax,400
	setge	al
	movzx	eax,al
_848:
	cmp	eax,0
	je	_850
	mov	eax,dword [bb_MY]
	cmp	eax,500
	setle	al
	movzx	eax,al
_850:
	cmp	eax,0
	je	_852
	movzx	eax,byte [bb_MOUSE1HIT]
	mov	eax,eax
	cmp	eax,1
	jne	_853
	push	dword [bb_SFXClick]
	call	bb_Eventsystem
	add	esp,4
	call	bbEnd
_853:
	push	1050253722
	call	brl_max2d_SetAlpha
	add	esp,4
	push	4
	call	brl_max2d_SetBlend
	add	esp,4
	push	0
	push	1137180672
	push	1133903872
	push	dword [bb_IMGButton]
	call	brl_max2d_DrawImage
	add	esp,16
	push	3
	call	brl_max2d_SetBlend
	add	esp,4
	push	1065353216
	call	brl_max2d_SetAlpha
	add	esp,4
_852:
_845:
	push	0
	push	0
	push	0
	call	brl_max2d_SetColor
	add	esp,12
	push	1124204544
	mov	esi,400
	push	_113
	call	brl_max2d_TextWidth
	add	esp,4
	cdq
	and	edx,1
	add	eax,edx
	sar	eax,1
	sub	esi,eax
	mov	dword [ebp+-8],esi
	fild	dword [ebp+-8]
	sub	esp,4
	fstp	dword [esp]
	push	_113
	call	brl_max2d_DrawText
	add	esp,12
	push	1138163712
	mov	esi,400
	push	_114
	call	brl_max2d_TextWidth
	add	esp,4
	cdq
	and	edx,1
	add	eax,edx
	sar	eax,1
	sub	esi,eax
	mov	dword [ebp+-8],esi
	fild	dword [ebp+-8]
	sub	esp,4
	fstp	dword [esp]
	push	_114
	call	brl_max2d_DrawText
	add	esp,12
	push	255
	push	255
	push	255
	call	brl_max2d_SetColor
	add	esp,12
	push	1
	call	bb_Mouse
	add	esp,4
	call	bb_FPS
	push	0
	call	brl_graphics_Flip
	add	esp,4
	push	dword [bb_Timer]
	call	brl_timer_WaitTimer
	add	esp,4
	push	27
	call	brl_polledinput_KeyHit
	add	esp,4
	cmp	eax,0
	je	_854
	call	bbEnd
_854:
_107:
	call	brl_polledinput_AppTerminate
	cmp	eax,0
	je	_109
_108:
	mov	eax,0
_181:
	pop	edi
	pop	esi
	pop	ebx
	mov	esp,ebp
	pop	ebp
	ret
bb_Eventsystem:
	push	ebp
	mov	ebp,esp
	mov	edx,dword [ebp+8]
	cmp	edx,bbNullObject
	setne	al
	movzx	eax,al
	cmp	eax,0
	sete	al
	movzx	eax,al
	cmp	eax,0
	jne	_855
	push	bbNullObject
	push	edx
	call	brl_audio_PlaySound
	add	esp,8
_855:
	mov	eax,0
_184:
	mov	esp,ebp
	pop	ebp
	ret
	section	"data" writeable align 8
	align	4
_307:
	dd	0
	align	4
_247:
	file	"/home/blitzcoder/Desktop/PuzzleMasters/Cursor.bmp"
_248:
	align	4
_246:
	dd	bbStringClass
	dd	2147483647
	dd	10
	dw	67,117,114,115,111,114,46,98,109,112
	align	4
_250:
	file	"/home/blitzcoder/Desktop/PuzzleMasters/Fonts/CONTF___.ttf"
_251:
	align	4
_249:
	dd	bbStringClass
	dd	2147483647
	dd	18
	dw	70,111,110,116,115,92,67,79,78,84,70,95,95,95,46,116
	dw	116,102
	align	4
_253:
	file	"/home/blitzcoder/Desktop/PuzzleMasters/Archive/Buttonunbeschriftet.png"
_254:
	align	4
_252:
	dd	bbStringClass
	dd	2147483647
	dd	31
	dw	65,114,99,104,105,118,101,92,66,117,116,116,111,110,117,110
	dw	98,101,115,99,104,114,105,102,116,101,116,46,112,110,103
	align	4
_256:
	file	"/home/blitzcoder/Desktop/PuzzleMasters/Archive/ButtonL.png"
_257:
	align	4
_255:
	dd	bbStringClass
	dd	2147483647
	dd	19
	dw	65,114,99,104,105,118,101,92,66,117,116,116,111,110,76,46
	dw	112,110,103
	align	4
_259:
	file	"/home/blitzcoder/Desktop/PuzzleMasters/Archive/ButtonR.png"
_260:
	align	4
_258:
	dd	bbStringClass
	dd	2147483647
	dd	19
	dw	65,114,99,104,105,118,101,92,66,117,116,116,111,110,82,46
	dw	112,110,103
	align	4
_262:
	file	"/home/blitzcoder/Desktop/PuzzleMasters/Sounds/paper small movement.ogg"
_263:
	align	4
_261:
	dd	bbStringClass
	dd	2147483647
	dd	31
	dw	83,111,117,110,100,115,92,112,97,112,101,114,32,115,109,97
	dw	108,108,32,109,111,118,101,109,101,110,116,46,111,103,103
	align	4
_265:
	file	"/home/blitzcoder/Desktop/PuzzleMasters/Sounds/Bell small jingle.ogg"
_266:
	align	4
_264:
	dd	bbStringClass
	dd	2147483647
	dd	28
	dw	83,111,117,110,100,115,92,66,101,108,108,32,115,109,97,108
	dw	108,32,106,105,110,103,108,101,46,111,103,103
	align	4
_268:
	file	"/home/blitzcoder/Desktop/PuzzleMasters/Sounds/Mouse_click.ogg"
_269:
	align	4
_267:
	dd	bbStringClass
	dd	2147483647
	dd	22
	dw	83,111,117,110,100,115,92,77,111,117,115,101,95,99,108,105
	dw	99,107,46,111,103,103
	align	4
_271:
	file	"/home/blitzcoder/Desktop/PuzzleMasters/Sounds/papper taidying.ogg"
_272:
	align	4
_270:
	dd	bbStringClass
	dd	2147483647
	dd	26
	dw	83,111,117,110,100,115,92,112,97,112,112,101,114,32,116,97
	dw	105,100,121,105,110,103,46,111,103,103
	align	4
_274:
	file	"/home/blitzcoder/Desktop/PuzzleMasters/Sounds/trumpets fanfar.ogg"
_275:
	align	4
_273:
	dd	bbStringClass
	dd	2147483647
	dd	26
	dw	83,111,117,110,100,115,92,116,114,117,109,112,101,116,115,32
	dw	102,97,110,102,97,114,46,111,103,103
_116:
	db	"TMotives",0
_117:
	db	"link",0
_118:
	db	":brl.linkedlist.TLink",0
_119:
	db	"ID",0
_120:
	db	"s",0
_121:
	db	"Filename",0
_122:
	db	"$",0
_123:
	db	"Motiv",0
_124:
	db	":brl.max2d.TImage",0
_125:
	db	"Mirror",0
_126:
	db	"Motivwidth",0
_127:
	db	"f",0
_128:
	db	"Motivheight",0
_129:
	db	"widthfaktor",0
_130:
	db	"heightfaktor",0
_131:
	db	"New",0
_132:
	db	"()i",0
_133:
	db	"Delete",0
_134:
	db	"AddMotiv",0
_135:
	db	"(s,$):TMotives",0
_136:
	db	"getImage",0
_137:
	db	"():brl.max2d.TImage",0
_138:
	db	"getID",0
_139:
	db	"()s",0
	align	4
_115:
	dd	2
	dd	_116
	dd	3
	dd	_117
	dd	_118
	dd	8
	dd	3
	dd	_119
	dd	_120
	dd	12
	dd	3
	dd	_121
	dd	_122
	dd	16
	dd	3
	dd	_123
	dd	_124
	dd	20
	dd	3
	dd	_125
	dd	_124
	dd	24
	dd	3
	dd	_126
	dd	_127
	dd	28
	dd	3
	dd	_128
	dd	_127
	dd	32
	dd	3
	dd	_129
	dd	_127
	dd	36
	dd	3
	dd	_130
	dd	_127
	dd	40
	dd	6
	dd	_131
	dd	_132
	dd	16
	dd	6
	dd	_133
	dd	_132
	dd	20
	dd	7
	dd	_134
	dd	_135
	dd	48
	dd	6
	dd	_136
	dd	_137
	dd	52
	dd	6
	dd	_138
	dd	_139
	dd	56
	dd	0
	align	4
bb_TMotives:
	dd	bbObjectClass
	dd	bbObjectFree
	dd	_115
	dd	44
	dd	_bb_TMotives_New
	dd	_bb_TMotives_Delete
	dd	bbObjectToString
	dd	bbObjectCompare
	dd	bbObjectSendMessage
	dd	bbObjectReserved
	dd	bbObjectReserved
	dd	bbObjectReserved
	dd	_bb_TMotives_AddMotiv
	dd	_bb_TMotives_getImage
	dd	_bb_TMotives_getID
	align	4
_3:
	dd	bbStringClass
	dd	2147483647
	dd	12
	dw	76,105,116,116,108,101,80,117,122,122,108,101
	align	4
_4:
	dd	bbStringClass
	dd	2147483647
	dd	8
	dw	77,111,116,105,118,101,115,47
	align	4
_8:
	dd	bbStringClass
	dd	2147483647
	dd	4
	dw	46,112,110,103
	align	4
_9:
	dd	bbStringClass
	dd	2147483647
	dd	4
	dw	46,106,112,103
	align	4
_10:
	dd	bbStringClass
	dd	2147483647
	dd	4
	dw	106,112,101,103
	align	4
_11:
	dd	bbStringClass
	dd	2147483647
	dd	6
	dw	80,117,122,122,108,101
	align	4
_12:
	dd	bbStringClass
	dd	2147483647
	dd	2
	dw	46,46
	align	4
_13:
	dd	bbStringClass
	dd	2147483647
	dd	4
	dw	68,111,110,101
bb_DEBUG:
	db	0
bb_Helpstate:
	db	0
	align	4
bb_MAP_X:
	dd	12
	align	4
_218:
	dd	0
	align	4
bb_MAP_Y:
	dd	0
	align	4
bb_PuzzleTileSize:
	dd	0
bb_BetweenTile:
	db	3
	align	4
bb_AutoMidX:
	dd	0x0
	align	4
bb_AutoMidY:
	dd	0x0
	align	4
bb_MX:
	dd	0
	align	4
bb_MY:
	dd	0
	align	4
bb_MOUSESCROLL:
	dd	0
	align	4
bb_MZSpeedOld:
	dd	0
bb_MOUSE1HIT:
	db	0
	align	4
bb_FPSTime:
	dd	0
	align	4
bb_TIME:
	dd	0
	align	2
bb_FPSCounter:
	dw	0
	align	2
bb_FPSDraw:
	dw	0
	align	4
bb_GameTime:
	dd	bbEmptyString
	align	4
bb_GameSecs:
	dd	0
	align	4
bb_Timer:
	dd	bbNullObject
	align	4
bb_ChangeX_old:
	dd	0
	align	4
bb_ChangeY_old:
	dd	0
	align	4
bb_ChangeID:
	dd	-1
	align	2
bb_CorrectTiles:
	dw	0
	align	4
bb_AllTiles:
	dd	0
bb_WINMODE:
	db	0
	align	2
bb_TileMoves:
	dw	0
bb_MoveReady:
	db	0
	align	4
bb_MoveReadyTime:
	dd	0
	align	4
bb_MoveX:
	dd	0x0
	align	4
bb_MoveY:
	dd	0x0
	align	4
bb_MoveSpeedX:
	dd	0x0
	align	4
bb_MoveSpeedY:
	dd	0x0
	align	4
bb_MoveX2:
	dd	0x0
	align	4
bb_MoveY2:
	dd	0x0
	align	4
bb_MoveSpeedX2:
	dd	0x0
	align	4
bb_MoveSpeedY2:
	dd	0x0
	align	2
bb_NewX:
	dw	0
	align	2
bb_NewY:
	dw	0
bb_Selection:
	db	0
	align	4
bb_Puzzle:
	dd	bbEmptyArray
	align	4
bb_Puzzle_ID_Correct:
	dd	bbEmptyArray
	align	4
bb_Puzzle_ID_Now:
	dd	bbEmptyArray
	align	4
bb_Puzzle_Original:
	dd	bbEmptyArray
	align	4
bb_M:
	dd	bbNullObject
	align	4
bb_MotivesList:
	dd	bbNullObject
	align	4
bb_CountMotives:
	dd	0
	align	4
_17:
	dd	bbStringClass
	dd	2147483647
	dd	39
	dw	105,110,99,98,105,110,58,58,65,114,99,104,105,118,101,92
	dw	66,117,116,116,111,110,117,110,98,101,115,99,104,114,105,102
	dw	116,101,116,46,112,110,103
	align	4
bb_IMGButton:
	dd	bbNullObject
	align	4
_18:
	dd	bbStringClass
	dd	2147483647
	dd	18
	dw	105,110,99,98,105,110,58,58,67,117,114,115,111,114,46,98
	dw	109,112
	align	4
bb_IMGCursor:
	dd	bbNullObject
	align	4
_19:
	dd	bbStringClass
	dd	2147483647
	dd	27
	dw	105,110,99,98,105,110,58,58,65,114,99,104,105,118,101,92
	dw	66,117,116,116,111,110,76,46,112,110,103
	align	4
bb_ButtonL:
	dd	bbNullObject
	align	4
_20:
	dd	bbStringClass
	dd	2147483647
	dd	27
	dw	105,110,99,98,105,110,58,58,65,114,99,104,105,118,101,92
	dw	66,117,116,116,111,110,82,46,112,110,103
	align	4
bb_ButtonR:
	dd	bbNullObject
	align	4
bb_ButtonLMirror:
	dd	bbNullObject
	align	4
bb_ButtonRMirror:
	dd	bbNullObject
	align	4
_21:
	dd	bbStringClass
	dd	2147483647
	dd	39
	dw	105,110,99,98,105,110,58,58,83,111,117,110,100,115,92,112
	dw	97,112,101,114,32,115,109,97,108,108,32,109,111,118,101,109
	dw	101,110,116,46,111,103,103
	align	4
bb_SFXPaperMove:
	dd	bbNullObject
	align	4
_22:
	dd	bbStringClass
	dd	2147483647
	dd	36
	dw	105,110,99,98,105,110,58,58,83,111,117,110,100,115,92,66
	dw	101,108,108,32,115,109,97,108,108,32,106,105,110,103,108,101
	dw	46,111,103,103
	align	4
bb_SFXJingle:
	dd	bbNullObject
	align	4
_23:
	dd	bbStringClass
	dd	2147483647
	dd	30
	dw	105,110,99,98,105,110,58,58,83,111,117,110,100,115,92,77
	dw	111,117,115,101,95,99,108,105,99,107,46,111,103,103
	align	4
bb_SFXClick:
	dd	bbNullObject
	align	4
_24:
	dd	bbStringClass
	dd	2147483647
	dd	34
	dw	105,110,99,98,105,110,58,58,83,111,117,110,100,115,92,112
	dw	97,112,112,101,114,32,116,97,105,100,121,105,110,103,46,111
	dw	103,103
	align	4
bb_SFXpaperMix:
	dd	bbNullObject
	align	4
_25:
	dd	bbStringClass
	dd	2147483647
	dd	34
	dw	105,110,99,98,105,110,58,58,83,111,117,110,100,115,92,116
	dw	114,117,109,112,101,116,115,32,102,97,110,102,97,114,46,111
	dw	103,103
	align	4
bb_SFXFanfare:
	dd	bbNullObject
	align	4
_26:
	dd	bbStringClass
	dd	2147483647
	dd	26
	dw	105,110,99,98,105,110,58,58,70,111,110,116,115,92,67,79
	dw	78,84,70,95,95,95,46,116,116,102
	align	4
bb_FArial30:
	dd	bbNullObject
	align	4
bb_FArial20:
	dd	bbNullObject
	align	4
bb_PXMCursor:
	dd	bbNullObject
	align	4
bb_IMGPuzzle:
	dd	bbNullObject
	align	4
bb_ID:
	dd	0
	align	4
bb_Previewwidthfaktor:
	dd	0x3ec7ae14
	align	4
bb_Previewheightfaktor:
	dd	0x3ec7ae14
	align	4
_27:
	dd	bbStringClass
	dd	2147483647
	dd	12
	dw	71,97,109,101,32,115,116,97,114,116,101,100
	align	4
_906:
	dd	0x44000000
	align	4
_907:
	dd	0x44000000
	align	4
_37:
	dd	bbStringClass
	dd	2147483647
	dd	1
	dw	48
	align	4
_38:
	dd	bbStringClass
	dd	2147483647
	dd	1
	dw	58
	align	4
_39:
	dd	bbStringClass
	dd	2147483647
	dd	6
	dw	78,111,114,109,97,108
	align	4
_40:
	dd	bbStringClass
	dd	2147483647
	dd	6
	dw	76,101,105,99,104,116
	align	4
_41:
	dd	bbStringClass
	dd	2147483647
	dd	11
	dw	83,101,104,114,32,76,101,105,99,104,116
	align	4
_42:
	dd	bbStringClass
	dd	2147483647
	dd	6
	dw	83,99,104,119,101,114
	align	4
_44:
	dd	bbStringClass
	dd	2147483647
	dd	17
	dw	40,87,101,99,104,115,101,108,32,109,105,116,32,84,65,66
	dw	41
	align	4
_43:
	dd	bbStringClass
	dd	2147483647
	dd	18
	dw	32,40,87,101,99,104,115,101,108,32,109,105,116,32,84,65
	dw	66,41
	align	4
_45:
	dd	bbStringClass
	dd	2147483647
	dd	8
	dw	71,69,87,79,78,78,69,78
	align	4
_46:
	dd	bbStringClass
	dd	2147483647
	dd	10
	dw	65,85,70,71,69,76,195,150,83,84
	align	4
_47:
	dd	bbStringClass
	dd	2147483647
	dd	20
	dw	75,111,114,114,101,107,116,32,112,108,97,116,122,105,101,114
	dw	116,101,58,32
	align	4
_48:
	dd	bbStringClass
	dd	2147483647
	dd	18
	dw	71,101,116,97,117,115,99,104,116,101,32,84,101,105,108,101
	dw	58,32
	align	4
_943:
	dd	0x44000000
	align	4
_944:
	dd	0x44000000
	align	4
_945:
	dd	0x43b40000
	align	4
_946:
	dd	0x43b40000
	align	4
_947:
	dd	0x43b40000
	align	4
_948:
	dd	0x43b40000
	align	4
_949:
	dd	0x43b40000
	align	4
_950:
	dd	0x43b40000
	align	4
_951:
	dd	0x43b40000
	align	4
_952:
	dd	0x43b40000
	align	4
_953:
	dd	0x43b40000
	align	4
_954:
	dd	0x43b40000
	align	4
_955:
	dd	0x43b40000
	align	4
_956:
	dd	0x43b40000
	align	4
_49:
	dd	bbStringClass
	dd	2147483647
	dd	9
	dw	65,117,102,108,195,182,115,101,110
	align	4
_50:
	dd	bbStringClass
	dd	2147483647
	dd	11
	dw	78,101,117,32,109,105,115,99,104,101,110
	align	4
_51:
	dd	bbStringClass
	dd	2147483647
	dd	7
	dw	66,101,101,110,100,101,110
	align	4
_52:
	dd	bbStringClass
	dd	2147483647
	dd	11
	dw	78,101,117,101,115,32,77,111,116,105,118
	align	4
_56:
	dd	bbStringClass
	dd	2147483647
	dd	14
	dw	74,97,44,32,97,117,102,104,195,182,114,101,110,33
	align	4
_57:
	dd	bbStringClass
	dd	2147483647
	dd	12
	dw	78,101,101,44,32,119,101,105,116,101,114,33
	align	4
_58:
	dd	bbStringClass
	dd	2147483647
	dd	15
	dw	65,98,32,105,110,115,32,77,101,110,117,101,46,46,46
	align	4
_1049:
	dd	0x40000000
	align	4
_1050:
	dd	0x40000000
	align	4
_1:
	dd	bbStringClass
	dd	2147483647
	dd	0
	align	4
_75:
	dd	bbStringClass
	dd	2147483647
	dd	1
	dw	47
	align	4
_76:
	dd	bbStringClass
	dd	2147483647
	dd	7
	dw	65,117,115,119,97,104,108
	align	4
_74:
	dd	bbStringClass
	dd	2147483647
	dd	9
	dw	65,117,115,119,97,104,108,58,32
	align	4
_1060:
	dd	0x40000000
_704:
	db	":brl.max2d.TImage",0
_709:
	db	"i",0
_714:
	db	"i",0
_719:
	db	":brl.max2d.TImage",0
	align	4
_1119:
	dd	0x42a00000
	align	4
_1120:
	dd	0x3f800000
	align	4
_1121:
	dd	0x42a00000
	align	4
_1122:
	dd	0x3f800000
_746:
	db	"$",0
_748:
	db	"f",0
	align	4
_86:
	dd	bbStringClass
	dd	2147483647
	dd	26
	dw	80,114,111,103,114,97,109,109,105,101,114,117,110,103,32,117
	dw	110,100,32,77,111,116,105,118,101,58
	align	4
_87:
	dd	bbStringClass
	dd	2147483647
	dd	7
	dw	77,114,46,72,121,100,101
	align	4
_88:
	dd	bbStringClass
	dd	2147483647
	dd	12
	dw	82,111,109,97,110,32,69,98,101,110,101,114
	align	4
_89:
	dd	bbStringClass
	dd	2147483647
	dd	36
	dw	71,114,97,102,105,107,44,32,68,101,115,105,103,110,98,101
	dw	114,97,116,117,110,103,32,117,110,100,32,66,101,116,97,116
	dw	101,115,116,58
	align	4
_90:
	dd	bbStringClass
	dd	2147483647
	dd	5
	dw	100,45,98,117,103
	align	4
_91:
	dd	bbStringClass
	dd	2147483647
	dd	19
	dw	84,104,111,114,115,116,101,110,32,68,105,101,116,101,114,109
	dw	97,110,110
	align	4
_92:
	dd	bbStringClass
	dd	2147483647
	dd	30
	dw	84,101,115,116,32,117,110,100,32,86,101,114,115,99,104,195
	dw	182,110,101,114,117,110,103,115,116,105,112,112,115,58
	align	4
_93:
	dd	bbStringClass
	dd	2147483647
	dd	15
	dw	70,105,114,115,116,100,101,97,116,104,109,97,107,101,114
	align	4
_94:
	dd	bbStringClass
	dd	2147483647
	dd	18
	dw	67,104,114,105,115,116,105,97,110,32,71,101,105,195,159,108
	dw	101,114
	align	4
_95:
	dd	bbStringClass
	dd	2147483647
	dd	25
	dw	68,105,101,32,73,109,97,103,101,45,83,112,105,101,103,101
	dw	108,102,117,110,107,116,105,111,110
	align	4
_96:
	dd	bbStringClass
	dd	2147483647
	dd	6
	dw	74,117,115,116,117,115
	align	4
_97:
	dd	bbStringClass
	dd	2147483647
	dd	14
	dw	74,117,115,116,117,115,32,66,108,195,188,109,101,114
	align	4
_98:
	dd	bbStringClass
	dd	2147483647
	dd	19
	dw	84,105,112,112,115,32,117,110,100,32,72,105,110,119,101,105
	dw	115,101,58
	align	4
_99:
	dd	bbStringClass
	dd	2147483647
	dd	21
	dw	66,66,80,32,119,119,119,46,98,108,105,116,122,102,111,114
	dw	117,109,46,100,101
	align	4
_100:
	dd	bbStringClass
	dd	2147483647
	dd	18
	dw	117,110,100,32,35,98,108,105,116,122,98,97,115,105,99,46
	dw	100,101
	align	4
_101:
	dd	bbStringClass
	dd	2147483647
	dd	5
	dw	70,111,110,116,58
	align	4
_102:
	dd	bbStringClass
	dd	2147483647
	dd	12
	dw	71,114,97,104,97,109,32,77,101,97,100,101
	align	4
_103:
	dd	bbStringClass
	dd	2147483647
	dd	21
	dw	119,119,119,46,49,48,48,49,102,114,101,101,102,111,110,116
	dw	115,46,99,111,109
	align	4
_104:
	dd	bbStringClass
	dd	2147483647
	dd	7
	dw	83,111,117,110,100,115,58
	align	4
_105:
	dd	bbStringClass
	dd	2147483647
	dd	9
	dw	83,111,117,110,100,115,110,97,112
	align	4
_106:
	dd	bbStringClass
	dd	2147483647
	dd	17
	dw	119,119,119,46,115,111,117,110,100,115,110,97,112,46,99,111
	dw	109
	align	4
_1133:
	dd	0x447a0000
	align	4
_1134:
	dd	0x40000000
	align	4
_1135:
	dd	0x43020000
	align	4
_1136:
	dd	0x40800000
	align	4
_1137:
	dd	0x41000000
	align	4
_1138:
	dd	0x40800000
	align	4
_1139:
	dd	0x447a0000
	align	4
_1140:
	dd	0x44368000
	align	4
_1141:
	dd	0x43020000
	align	4
_1142:
	dd	0x40800000
	align	4
_1143:
	dd	0x44368000
	align	4
_1144:
	dd	0x41000000
	align	4
_1145:
	dd	0x44368000
	align	4
_1146:
	dd	0x40800000
	align	4
_1147:
	dd	0x3f333333
	align	4
_1148:
	dd	0x43af0000
	align	4
_1149:
	dd	0xc1a00000
	align	4
_113:
	dd	bbStringClass
	dd	2147483647
	dd	13
	dw	83,112,105,101,108,32,115,116,97,114,116,101,110
	align	4
_114:
	dd	bbStringClass
	dd	2147483647
	dd	9
	dw	82,97,117,115,32,104,105,101,114
