	.file	"main.cc"
gcc2_compiled.:
___gnu_compiled_cplusplus:
.text
	.align 4
___gnu_calloc:
	pushl %ebp
	movl %esp,%ebp
	pushl %esi
	pushl %ebx
	movl 8(%ebp),%ebx
	movl 12(%ebp),%esi
	movl %esi,%eax
	testl %esi,%esi
	jne L2
	movl $1,%eax
L2:
	pushl %eax
	movl %ebx,%eax
	testl %ebx,%ebx
	jne L3
	movl $1,%eax
L3:
	pushl %eax
	call _calloc
	addl $8,%esp
	movl %eax,%edx
	movl %edx,%eax
	jmp L1
	.align 4,0x90
	jmp L1
	.align 4,0x90
	jmp L4
	.align 4,0x90
	jmp L1
	.align 4,0x90
L4:
L1:
	leal -8(%ebp),%esp
	popl %ebx
	popl %esi
	movl %ebp,%esp
	popl %ebp
	ret
	.align 4
___gnu_malloc:
	pushl %ebp
	movl %esp,%ebp
	pushl %ebx
	movl 8(%ebp),%ebx
	movl %ebx,%eax
	testl %ebx,%ebx
	jne L6
	movl $1,%eax
L6:
	pushl %eax
	call _malloc
	addl $4,%esp
	movl %eax,%edx
	movl %edx,%eax
	jmp L5
	.align 4,0x90
	jmp L5
	.align 4,0x90
	jmp L7
	.align 4,0x90
	jmp L5
	.align 4,0x90
L7:
L5:
	movl -4(%ebp),%ebx
	movl %ebp,%esp
	popl %ebp
	ret
	.align 4
___3Gif:
	pushl %ebp
	movl %esp,%ebp
	movl 8(%ebp),%edx
	movl $0,4(%edx)
	movl $0,8(%edx)
	movl $0,12(%edx)
	movl $0,16(%edx)
	movl $0,20(%edx)
	movl $0,128(%edx)
L9:
	movl %edx,%eax
	jmp L8
	.align 4,0x90
	jmp L8
	.align 4,0x90
L8:
	movl %ebp,%esp
	popl %ebp
	ret
	.align 4
_GetPtr__3Gif:
	pushl %ebp
	movl %esp,%ebp
	movl 8(%ebp),%edx
	movl 132(%edx),%eax
	jmp L10
	.align 4,0x90
	jmp L10
	.align 4,0x90
L10:
	movl %ebp,%esp
	popl %ebp
	ret
	.align 4
_GetWidth__3Gif:
	pushl %ebp
	movl %esp,%ebp
	movl 8(%ebp),%edx
	movl 32(%edx),%eax
	jmp L11
	.align 4,0x90
	jmp L11
	.align 4,0x90
L11:
	movl %ebp,%esp
	popl %ebp
	ret
	.align 4
_GetHeight__3Gif:
	pushl %ebp
	movl %esp,%ebp
	movl 8(%ebp),%edx
	movl 36(%edx),%eax
	jmp L12
	.align 4,0x90
	jmp L12
	.align 4,0x90
L12:
	movl %ebp,%esp
	popl %ebp
	ret
	.align 4
___3GifRC3Gif:
	pushl %ebp
	movl %esp,%ebp
	subl $4,%esp
	pushl %edi
	pushl %esi
	pushl %ebx
	movl 8(%ebp),%ecx
	movl 12(%ebp),%esi
	movl (%esi),%esi
	movl %esi,(%ecx)
	movl 12(%ebp),%edx
	movl 4(%edx),%edx
	movl %edx,4(%ecx)
	movl 12(%ebp),%esi
	movl 8(%esi),%esi
	movl %esi,8(%ecx)
	movl 12(%ebp),%edx
	movl 12(%edx),%edx
	movl %edx,12(%ecx)
	movl 12(%ebp),%esi
	movl 16(%esi),%esi
	movl %esi,16(%ecx)
	movl 12(%ebp),%edx
	movl 20(%edx),%edx
	movl %edx,20(%ecx)
	movl 12(%ebp),%esi
	movl 24(%esi),%esi
	movl %esi,24(%ecx)
	movl 12(%ebp),%edx
	movl 28(%edx),%edx
	movl %edx,28(%ecx)
	movl 12(%ebp),%esi
	movl 32(%esi),%esi
	movl %esi,32(%ecx)
	movl 12(%ebp),%edx
	movl 36(%edx),%edx
	movl %edx,36(%ecx)
	movl 12(%ebp),%esi
	movl 40(%esi),%esi
	movl %esi,40(%ecx)
	movl 12(%ebp),%edx
	movl 44(%edx),%edx
	movl %edx,44(%ecx)
	movl 12(%ebp),%esi
	movl 48(%esi),%esi
	movl %esi,48(%ecx)
	movl 12(%ebp),%edx
	movl 52(%edx),%edx
	movl %edx,52(%ecx)
	movl 12(%ebp),%esi
	movl 56(%esi),%esi
	movl %esi,56(%ecx)
	movl 12(%ebp),%edx
	movl 60(%edx),%edx
	movl %edx,60(%ecx)
	movl 12(%ebp),%esi
	movl 64(%esi),%esi
	movl %esi,64(%ecx)
	movl 12(%ebp),%edx
	movl 68(%edx),%edx
	movl %edx,68(%ecx)
	movl 12(%ebp),%esi
	movl 72(%esi),%esi
	movl %esi,72(%ecx)
	movl 12(%ebp),%edx
	movl 76(%edx),%edx
	movl %edx,76(%ecx)
	movl 12(%ebp),%esi
	movl 80(%esi),%esi
	movl %esi,80(%ecx)
	movl 12(%ebp),%edx
	movl 84(%edx),%edx
	movl %edx,84(%ecx)
	movl 12(%ebp),%esi
	movl 88(%esi),%esi
	movl %esi,88(%ecx)
	movl 12(%ebp),%edx
	movl 92(%edx),%edx
	movl %edx,92(%ecx)
	movl 12(%ebp),%esi
	movl 96(%esi),%esi
	movl %esi,96(%ecx)
	movl 12(%ebp),%edx
	movl 100(%edx),%edx
	movl %edx,100(%ecx)
	movl 12(%ebp),%esi
	movl 104(%esi),%esi
	movl %esi,104(%ecx)
	movl 12(%ebp),%edx
	movl 108(%edx),%edx
	movl %edx,108(%ecx)
	movl 12(%ebp),%esi
	movl 112(%esi),%esi
	movl %esi,112(%ecx)
	movl 12(%ebp),%edx
	movl 116(%edx),%edx
	movl %edx,116(%ecx)
	movl 12(%ebp),%esi
	movl 120(%esi),%esi
	movl %esi,120(%ecx)
	movl 12(%ebp),%edx
	movl 124(%edx),%edx
	movl %edx,124(%ecx)
	movl 12(%ebp),%esi
	movl 128(%esi),%esi
	movl %esi,128(%ecx)
	movl 12(%ebp),%edx
	movl 132(%edx),%edx
	movl %edx,132(%ecx)
	movl 12(%ebp),%esi
	movl 136(%esi),%esi
	movl %esi,136(%ecx)
	movl 12(%ebp),%edx
	movl 140(%edx),%edx
	movl %edx,140(%ecx)
	xorl %eax,%eax
	leal 144(%ecx),%eax
	leal 144(%ecx),%esi
	movl %esi,-4(%ebp)
	movl $4095,%ebx
	movl 12(%ebp),%edi
	addl $144,%edi
	testl %ebx,%ebx
	jl L14
L15:
	movl (%edi),%esi
	movl -4(%ebp),%edx
	movl %esi,(%edx)
	addl $4,-4(%ebp)
	addl $4,%edi
L17:
	decl %ebx
	cmpl $-1,%ebx
	je L16
	jmp L15
	.align 4,0x90
L16:
L14:
	xorl %eax,%eax
	leal 16528(%ecx),%eax
	leal 16528(%ecx),%edx
	movl %edx,-4(%ebp)
	movl $4095,%ebx
	movl 12(%ebp),%edi
	addl $16528,%edi
	testl %ebx,%ebx
	jl L18
L19:
	movl (%edi),%edx
	movl -4(%ebp),%esi
	movl %edx,(%esi)
	addl $4,-4(%ebp)
	addl $4,%edi
L21:
	decl %ebx
	cmpl $-1,%ebx
	je L20
	jmp L19
	.align 4,0x90
L20:
L18:
	xorl %eax,%eax
	leal 32912(%ecx),%eax
	leal 32912(%ecx),%esi
	movl %esi,-4(%ebp)
	movl $1024,%ebx
	movl 12(%ebp),%edi
	addl $32912,%edi
	testl %ebx,%ebx
	jl L22
L23:
	movl (%edi),%esi
	movl -4(%ebp),%edx
	movl %esi,(%edx)
	addl $4,-4(%ebp)
	addl $4,%edi
L25:
	decl %ebx
	cmpl $-1,%ebx
	je L24
	jmp L23
	.align 4,0x90
L24:
L22:
	xorl %eax,%eax
	leal 37012(%ecx),%eax
	leal 37012(%ecx),%edx
	movl %edx,-4(%ebp)
	movl $255,%ebx
	movl 12(%ebp),%edi
	addl $37012,%edi
	testl %ebx,%ebx
	jl L26
L27:
	movb (%edi),%dl
	movl -4(%ebp),%esi
	movb %dl,(%esi)
	incl -4(%ebp)
	incl %edi
L29:
	decl %ebx
	cmpl $-1,%ebx
	je L28
	jmp L27
	.align 4,0x90
L28:
L26:
	xorl %eax,%eax
	leal 37268(%ecx),%eax
	leal 37268(%ecx),%edx
	movl %edx,-4(%ebp)
	movl $255,%ebx
	movl 12(%ebp),%edi
	addl $37268,%edi
	testl %ebx,%ebx
	jl L30
L31:
	movb (%edi),%dl
	movl -4(%ebp),%esi
	movb %dl,(%esi)
	incl -4(%ebp)
	incl %edi
L33:
	decl %ebx
	cmpl $-1,%ebx
	je L32
	jmp L31
	.align 4,0x90
L32:
L30:
	xorl %eax,%eax
	leal 37524(%ecx),%eax
	leal 37524(%ecx),%edx
	movl %edx,-4(%ebp)
	movl $255,%ebx
	movl 12(%ebp),%edi
	addl $37524,%edi
	testl %ebx,%ebx
	jl L34
L35:
	movb (%edi),%dl
	movl -4(%ebp),%esi
	movb %dl,(%esi)
	incl -4(%ebp)
	incl %edi
L37:
	decl %ebx
	cmpl $-1,%ebx
	je L36
	jmp L35
	.align 4,0x90
L36:
L34:
	xorl %eax,%eax
	leal 37780(%ecx),%eax
	leal 37780(%ecx),%edx
	movl %edx,-4(%ebp)
	movl $255,%ebx
	movl 12(%ebp),%edi
	addl $37780,%edi
	testl %ebx,%ebx
	jl L38
L39:
	movb (%edi),%dl
	movl -4(%ebp),%esi
	movb %dl,(%esi)
	incl -4(%ebp)
	incl %edi
L41:
	decl %ebx
	cmpl $-1,%ebx
	je L40
	jmp L39
	.align 4,0x90
L40:
L38:
	movl 12(%ebp),%edx
	movl 38036(%edx),%edx
	movl %edx,38036(%ecx)
	movl 12(%ebp),%esi
	movl 38040(%esi),%esi
	movl %esi,38040(%ecx)
L42:
	movl %ecx,%eax
	jmp L13
	.align 4,0x90
	jmp L13
	.align 4,0x90
L13:
	leal -16(%ebp),%esp
	popl %ebx
	popl %esi
	popl %edi
	movl %ebp,%esp
	popl %ebp
	ret
	.align 4
___5Block:
	pushl %ebp
	movl %esp,%ebp
	pushl %ebx
	movl 8(%ebp),%ebx
	call _vga_getgraphmem
	movl %eax,%eax
	movl %eax,4(%ebx)
L44:
	movl %ebx,%eax
	jmp L43
	.align 4,0x90
	jmp L43
	.align 4,0x90
L43:
	movl -4(%ebp),%ebx
	movl %ebp,%esp
	popl %ebp
	ret
	.align 4
__$_5Block:
	pushl %ebp
	movl %esp,%ebp
	pushl %ebx
	movl 8(%ebp),%ebx
	cmpl $0,(%ebx)
	je L46
	movl (%ebx),%edx
	pushl %edx
	call ___builtin_delete
	addl $4,%esp
L46:
L47:
	movb 12(%ebp),%al
	andb $1,%al
	testb %al,%al
	je L48
	pushl %ebx
	call ___builtin_delete
	addl $4,%esp
	jmp L49
	.align 4,0x90
L48:
L49:
L45:
	movl -4(%ebp),%ebx
	movl %ebp,%esp
	popl %ebp
	ret
	.align 4
___5BlockRC5Block:
	pushl %ebp
	movl %esp,%ebp
	pushl %ebx
	movl 8(%ebp),%ecx
	movl 12(%ebp),%edx
	movl (%edx),%ebx
	movl %ebx,(%ecx)
	movl 4(%edx),%ebx
	movl %ebx,4(%ecx)
	movl 8(%edx),%ebx
	movl %ebx,8(%ecx)
	movl 12(%edx),%ebx
	movl %ebx,12(%ecx)
L51:
	movl %ecx,%eax
	jmp L50
	.align 4,0x90
	jmp L50
	.align 4,0x90
L50:
	movl -4(%ebp),%ebx
	movl %ebp,%esp
	popl %ebp
	ret
	.align 4
.globl _main
_main:
	pushl %ebp
	movl %esp,%ebp
	subl $24,%esp
	call ___main
	call _initialise__Fv
	leal -24(%ebp),%eax
	pushl %eax
	call ___5Block
	addl $4,%esp
	call _titlescreen__Fv
	pushl $16
	pushl $16
	pushl $0
	pushl $0
	leal -24(%ebp),%eax
	pushl %eax
	call _Cut__5BlockUiUiUiUi
	addl $20,%esp
	movl $0,-8(%ebp)
L53:
	cmpl $113,-4(%ebp)
	je L54
	call _vga_getkey
	movl %eax,%eax
	movl %eax,-4(%ebp)
	call _waitvbl
	pushl $50
	movl -8(%ebp),%edx
	pushl %edx
	leal -24(%ebp),%eax
	pushl %eax
	call _Paste__5BlockUiUi
	addl $12,%esp
	incl -8(%ebp)
	cmpl $319,-8(%ebp)
	jle L55
	movl $0,-8(%ebp)
L55:
	jmp L53
	.align 4,0x90
L54:
	pushl $0
	call _vga_setmode
	addl $4,%esp
	pushl $2
	leal -24(%ebp),%eax
	pushl %eax
	call __$_5Block
	addl $8,%esp
	xorl %eax,%eax
	jmp L52
	.align 4,0x90
	jmp L52
	.align 4,0x90
L52:
	movl %ebp,%esp
	popl %ebp
	ret
	.align 4
.globl _initialise__Fv
_initialise__Fv:
	pushl %ebp
	movl %esp,%ebp
	call _vga_init
	pushl $5
	call _vga_setmode
	addl $4,%esp
	pushl $5
	call _gl_setcontextvga
	addl $4,%esp
L56:
	movl %ebp,%esp
	popl %ebp
	ret
LC0:
	.ascii "/dosc/pics/invsprit.gif\0"
	.align 4
.globl _titlescreen__Fv
_titlescreen__Fv:
	pushl %ebp
	movl %esp,%ebp
	subl $38044,%esp
	leal -38044(%ebp),%eax
	pushl %eax
	call ___3Gif
	addl $4,%esp
	pushl $LC0
	leal -38044(%ebp),%eax
	pushl %eax
	call _Load__3GifPc
	addl $8,%esp
	leal -38044(%ebp),%eax
	pushl %eax
	call _SetPalette__3Gif
	addl $4,%esp
	leal -38044(%ebp),%eax
	pushl %eax
	call _GetWidth__3Gif
	addl $4,%esp
	movl %eax,%eax
	pushl %eax
	movl _graph_mem,%edx
	pushl %edx
	leal -38044(%ebp),%eax
	pushl %eax
	call _GetPtr__3Gif
	addl $4,%esp
	movl %eax,%eax
	pushl %eax
	call _showwindow
	addl $12,%esp
L57:
	movl %ebp,%esp
	popl %ebp
	ret
	.align 4
.globl _cshowwindow__FPUciii
_cshowwindow__FPUciii:
	pushl %ebp
	movl %esp,%ebp
	subl $16,%esp
	movl _graph_mem,%ecx
	movl %ecx,-12(%ebp)
	movl 8(%ebp),%eax
	addl 12(%ebp),%eax
	movl 16(%ebp),%edx
	imull 20(%ebp),%edx
	movl %eax,%ecx
	addl %edx,%ecx
	movl %ecx,-16(%ebp)
	movl $0,-4(%ebp)
L59:
	cmpl $199,-4(%ebp)
	jg L60
	movl $0,-8(%ebp)
L62:
	cmpl $319,-8(%ebp)
	jg L63
	movl -12(%ebp),%eax
	movl -16(%ebp),%edx
	movb (%edx),%cl
	movb %cl,(%eax)
	incl -12(%ebp)
	incl -16(%ebp)
L64:
	incl -8(%ebp)
	jmp L62
	.align 4,0x90
L63:
	movl 20(%ebp),%eax
	addl $-320,%eax
	addl %eax,-16(%ebp)
L61:
	incl -4(%ebp)
	jmp L59
	.align 4,0x90
L60:
L58:
	movl %ebp,%esp
	popl %ebp
	ret
