5bdf19:	ff 04 82             	incl   (%edx,%eax,4)
5bdf1c:	83 c7 03             	add    $0x3,%edi
5bdf1f:	4b                   	dec    %ebx
5bdf20:	75 f0                	jne    0x5bdf12
5bdf22:	46                   	inc    %esi
5bdf23:	ff 4d d0             	decl   -0x30(%ebp)
5bdf26:	75 cc                	jne    0x5bdef4
5bdf28:	eb 52                	jmp    0x5bdf7c
5bdf2a:	8b 45 fc             	mov    -0x4(%ebp),%eax
5bdf2d:	8b 10                	mov    (%eax),%edx
5bdf2f:	ff 52 08             	call   *0x8(%edx)
5bdf32:	48                   	dec    %eax
5bdf33:	85 c0                	test   %eax,%eax
5bdf35:	7c 45                	jl     0x5bdf7c
5bdf37:	40                   	inc    %eax
5bdf38:	89 45 d0             	mov    %eax,-0x30(%ebp)
5bdf3b:	33 f6                	xor    %esi,%esi
5bdf3d:	8b d6                	mov    %esi,%edx
5bdf3f:	8b 45 fc             	mov    -0x4(%ebp),%eax
5bdf42:	8b 08                	mov    (%eax),%ecx
5bdf44:	ff 11                	call   *(%ecx)
5bdf46:	8b f8                	mov    %eax,%edi
5bdf48:	b8 02 00 00 00       	mov    $0x2,%eax
5bdf4d:	2b 45 f8             	sub    -0x8(%ebp),%eax
5bdf50:	03 c0                	add    %eax,%eax
5bdf52:	03 f8                	add    %eax,%edi
5bdf54:	8b 45 fc             	mov    -0x4(%ebp),%eax
5bdf57:	8b 10                	mov    (%eax),%edx
5bdf59:	ff 52 0c             	call   *0xc(%edx)
5bdf5c:	8b d8                	mov    %eax,%ebx
5bdf5e:	4b                   	dec    %ebx
5bdf5f:	85 db                	test   %ebx,%ebx
5bdf61:	7c 13                	jl     0x5bdf76
5bdf63:	43                   	inc    %ebx
5bdf64:	0f b7 07             	movzwl (%edi),%eax
5bdf67:	c1 e8 08             	shr    $0x8,%eax
5bdf6a:	8b 55 f0             	mov    -0x10(%ebp),%edx
5bdf6d:	ff 04 82             	incl   (%edx,%eax,4)
5bdf70:	83 c7 06             	add    $0x6,%edi
5bdf73:	4b                   	dec    %ebx
5bdf74:	75 ee                	jne    0x5bdf64
5bdf76:	46                   	inc    %esi
5bdf77:	ff 4d d0             	decl   -0x30(%ebp)
5bdf7a:	75 c1                	jne    0x5bdf3d
5bdf7c:	33 db                	xor    %ebx,%ebx
5bdf7e:	8b 45 fc             	mov    -0x4(%ebp),%eax
5bdf81:	8b 10                	mov    (%eax),%edx
5bdf83:	ff 52 0c             	call   *0xc(%edx)
5bdf86:	8b f0                	mov    %eax,%esi
5bdf88:	8b 45 fc             	mov    -0x4(%ebp),%eax
5bdf8b:	8b 10                	mov    (%eax),%edx
5bdf8d:	ff 52 08             	call   *0x8(%edx)
5bdf90:	0f af f0             	imul   %eax,%esi
5bdf93:	89 75 cc             	mov    %esi,-0x34(%ebp)
5bdf96:	db 45 cc             	fildl  -0x34(%ebp)
5bdf99:	d8 3d fc e1 5b 00    	fdivrs 0x5be1fc
5bdf9f:	dd 5d e0             	fstpl  -0x20(%ebp)
5bdfa2:	9b                   	fwait
5bdfa3:	33 f6                	xor    %esi,%esi
5bdfa5:	8b 45 f0             	mov    -0x10(%ebp),%eax
5bdfa8:	03 1c b0             	add    (%eax,%esi,4),%ebx
5bdfab:	89 5d cc             	mov    %ebx,-0x34(%ebp)
5bdfae:	db 45 cc             	fildl  -0x34(%ebp)
5bdfb1:	dc 4d e0             	fmull  -0x20(%ebp)
5bdfb4:	8b 45 ec             	mov    -0x14(%ebp),%eax
5bdfb7:	dd 1c f0             	fstpl  (%eax,%esi,8)
5bdfba:	9b                   	fwait
5bdfbb:	46                   	inc    %esi
5bdfbc:	81 fe 00 01 00 00    	cmp    $0x100,%esi
5bdfc2:	75 e1                	jne    0x5bdfa5
5bdfc4:	8b 45 fc             	mov    -0x4(%ebp),%eax
5bdfc7:	8b 10                	mov    (%eax),%edx
5bdfc9:	ff 52 10             	call   *0x10(%edx)
5bdfcc:	2c 05                	sub    $0x5,%al
5bdfce:	74 09                	je     0x5bdfd9
5bdfd0:	2c 03                	sub    $0x3,%al
5bdfd2:	74 59                	je     0x5be02d
5bdfd4:	e9 b5 00 00 00       	jmp    0x5be08e
5bdfd9:	8b 45 fc             	mov    -0x4(%ebp),%eax
5bdfdc:	8b 10                	mov    (%eax),%edx
5bdfde:	ff 52 08             	call   *0x8(%edx)
5bdfe1:	48                   	dec    %eax
5bdfe2:	85 c0                	test   %eax,%eax
5bdfe4:	0f 8c a4 00 00 00    	jl     0x5be08e
5bdfea:	40                   	inc    %eax
5bdfeb:	89 45 d0             	mov    %eax,-0x30(%ebp)
5bdfee:	33 f6                	xor    %esi,%esi
5bdff0:	8b d6                	mov    %esi,%edx
5bdff2:	8b 45 fc             	mov    -0x4(%ebp),%eax
5bdff5:	8b 08                	mov    (%eax),%ecx
5bdff7:	ff 11                	call   *(%ecx)
5bdff9:	8b f8                	mov    %eax,%edi
5bdffb:	03 7d f8             	add    -0x8(%ebp),%edi
5bdffe:	8b 45 fc             	mov    -0x4(%ebp),%eax
5be001:	8b 10                	mov    (%eax),%edx
5be003:	ff 52 0c             	call   *0xc(%edx)
5be006:	8b d8                	mov    %eax,%ebx
5be008:	4b                   	dec    %ebx
5be009:	85 db                	test   %ebx,%ebx
5be00b:	7c 18                	jl     0x5be025
5be00d:	43                   	inc    %ebx
5be00e:	33 c0                	xor    %eax,%eax
5be010:	8a 07                	mov    (%edi),%al
5be012:	8b 55 ec             	mov    -0x14(%ebp),%edx
5be015:	dd 04 c2             	fldl   (%edx,%eax,8)
5be018:	e8 af 4c e4 ff       	call   0x402ccc
5be01d:	88 07                	mov    %al,(%edi)
5be01f:	83 c7 03             	add    $0x3,%edi
5be022:	4b                   	dec    %ebx
5be023:	75 e9                	jne    0x5be00e
5be025:	46                   	inc    %esi
5be026:	ff 4d d0             	decl   -0x30(%ebp)
5be029:	75 c5                	jne    0x5bdff0
5be02b:	eb 61                	jmp    0x5be08e
5be02d:	8b 45 fc             	mov    -0x4(%ebp),%eax
5be030:	8b 10                	mov    (%eax),%edx
5be032:	ff 52 08             	call   *0x8(%edx)
5be035:	48                   	dec    %eax
5be036:	85 c0                	test   %eax,%eax
5be038:	7c 54                	jl     0x5be08e
5be03a:	40                   	inc    %eax
5be03b:	89 45 d0             	mov    %eax,-0x30(%ebp)
5be03e:	33 f6                	xor    %esi,%esi
5be040:	8b d6                	mov    %esi,%edx
5be042:	8b 45 fc             	mov    -0x4(%ebp),%eax
5be045:	8b 08                	mov    (%eax),%ecx
5be047:	ff 11                	call   *(%ecx)
5be049:	8b f8                	mov    %eax,%edi
5be04b:	b8 02 00 00 00       	mov    $0x2,%eax
5be050:	2b 45 f8             	sub    -0x8(%ebp),%eax
5be053:	03 c0                	add    %eax,%eax
5be055:	03 f8                	add    %eax,%edi
5be057:	8b 45 fc             	mov    -0x4(%ebp),%eax
5be05a:	8b 10                	mov    (%eax),%edx
5be05c:	ff 52 0c             	call   *0xc(%edx)
5be05f:	8b d8                	mov    %eax,%ebx
5be061:	4b                   	dec    %ebx
5be062:	85 db                	test   %ebx,%ebx
5be064:	7c 22                	jl     0x5be088
5be066:	43                   	inc    %ebx
5be067:	0f b7 07             	movzwl (%edi),%eax
5be06a:	c1 e8 08             	shr    $0x8,%eax
5be06d:	8b 55 ec             	mov    -0x14(%ebp),%edx
5be070:	dd 04 c2             	fldl   (%edx,%eax,8)
5be073:	e8 54 4c e4 ff       	call   0x402ccc
5be078:	8b d0                	mov    %eax,%edx
5be07a:	c1 e0 08             	shl    $0x8,%eax
5be07d:	03 c2                	add    %edx,%eax
5be07f:	66 89 07             	mov    %ax,(%edi)
5be082:	83 c7 06             	add    $0x6,%edi
5be085:	4b                   	dec    %ebx
5be086:	75 df                	jne    0x5be067
5be088:	46                   	inc    %esi
5be089:	ff 4d d0             	decl   -0x30(%ebp)
5be08c:	75 b2                	jne    0x5be040
5be08e:	33 db                	xor    %ebx,%ebx
5be090:	db 45 08             	fildl  0x8(%ebp)
5be093:	d8 3d fc e1 5b 00    	fdivrs 0x5be1fc
5be099:	dd 5d e0             	fstpl  -0x20(%ebp)
5be09c:	9b                   	fwait
5be09d:	33 f6                	xor    %esi,%esi
5be09f:	8b 45 f4             	mov    -0xc(%ebp),%eax
5be0a2:	03 18                	add    (%eax),%ebx
5be0a4:	89 5d cc             	mov    %ebx,-0x34(%ebp)
5be0a7:	db 45 cc             	fildl  -0x34(%ebp)
5be0aa:	dc 4d e0             	fmull  -0x20(%ebp)
5be0ad:	8b 55 ec             	mov    -0x14(%ebp),%edx
5be0b0:	dd 1c f2             	fstpl  (%edx,%esi,8)
5be0b3:	9b                   	fwait
5be0b4:	46                   	inc    %esi
5be0b5:	83 c0 04             	add    $0x4,%eax
5be0b8:	81 fe 00 01 00 00    	cmp    $0x100,%esi
5be0be:	75 e2                	jne    0x5be0a2
5be0c0:	33 f6                	xor    %esi,%esi
5be0c2:	89 75 cc             	mov    %esi,-0x34(%ebp)
5be0c5:	db 45 cc             	fildl  -0x34(%ebp)
5be0c8:	8b 45 ec             	mov    -0x14(%ebp),%eax
5be0cb:	dc 20                	fsubl  (%eax)
5be0cd:	d9 e1                	fabs
5be0cf:	dd 5d d8             	fstpl  -0x28(%ebp)
5be0d2:	9b                   	fwait
5be0d3:	33 ff                	xor    %edi,%edi
5be0d5:	33 db                	xor    %ebx,%ebx
5be0d7:	89 75 cc             	mov    %esi,-0x34(%ebp)
5be0da:	db 45 cc             	fildl  -0x34(%ebp)
5be0dd:	8b 45 ec             	mov    -0x14(%ebp),%eax
5be0e0:	dc 24 d8             	fsubl  (%eax,%ebx,8)
5be0e3:	d9 e1                	fabs
5be0e5:	dc 5d d8             	fcompl -0x28(%ebp)
5be0e8:	df e0                	fnstsw %ax
5be0ea:	9e                   	sahf
5be0eb:	73 14                	jae    0x5be101
5be0ed:	89 75 cc             	mov    %esi,-0x34(%ebp)
5be0f0:	db 45 cc             	fildl  -0x34(%ebp)
5be0f3:	8b 45 ec             	mov    -0x14(%ebp),%eax
5be0f6:	dc 24 d8             	fsubl  (%eax,%ebx,8)
5be0f9:	d9 e1                	fabs
5be0fb:	dd 5d d8             	fstpl  -0x28(%ebp)
5be0fe:	9b                   	fwait
5be0ff:	8b fb                	mov    %ebx,%edi
5be101:	43                   	inc    %ebx
5be102:	81 fb 00 01 00 00    	cmp    $0x100,%ebx
5be108:	75 cd                	jne    0x5be0d7
5be10a:	8b 45 d4             	mov    -0x2c(%ebp),%eax
5be10d:	89 3c b0             	mov    %edi,(%eax,%esi,4)
5be110:	46                   	inc    %esi
5be111:	81 fe 00 01 00 00    	cmp    $0x100,%esi
5be117:	75 a9                	jne    0x5be0c2
5be119:	8b 45 fc             	mov    -0x4(%ebp),%eax
5be11c:	8b 10                	mov    (%eax),%edx
5be11e:	ff 52 10             	call   *0x10(%edx)
5be121:	2c 05                	sub    $0x5,%al
5be123:	74 09                	je     0x5be12e
5be125:	2c 03                	sub    $0x3,%al
5be127:	74 54                	je     0x5be17d
5be129:	e9 ac 00 00 00       	jmp    0x5be1da
5be12e:	8b 45 fc             	mov    -0x4(%ebp),%eax
5be131:	8b 10                	mov    (%eax),%edx
5be133:	ff 52 08             	call   *0x8(%edx)
5be136:	48                   	dec    %eax
5be137:	85 c0                	test   %eax,%eax
5be139:	0f 8c 9b 00 00 00    	jl     0x5be1da
5be13f:	40                   	inc    %eax
5be140:	89 45 d0             	mov    %eax,-0x30(%ebp)
5be143:	33 f6                	xor    %esi,%esi
5be145:	8b d6                	mov    %esi,%edx
5be147:	8b 45 fc             	mov    -0x4(%ebp),%eax
5be14a:	8b 08                	mov    (%eax),%ecx
5be14c:	ff 11                	call   *(%ecx)
5be14e:	8b f8                	mov    %eax,%edi
5be150:	03 7d f8             	add    -0x8(%ebp),%edi
5be153:	8b 45 fc             	mov    -0x4(%ebp),%eax
5be156:	8b 10                	mov    (%eax),%edx
5be158:	ff 52 0c             	call   *0xc(%edx)
5be15b:	8b d8                	mov    %eax,%ebx
5be15d:	4b                   	dec    %ebx
5be15e:	85 db                	test   %ebx,%ebx
5be160:	7c 13                	jl     0x5be175
5be162:	43                   	inc    %ebx
5be163:	33 c0                	xor    %eax,%eax
5be165:	8a 07                	mov    (%edi),%al
5be167:	8b 55 d4             	mov    -0x2c(%ebp),%edx
5be16a:	8a 04 82             	mov    (%edx,%eax,4),%al
5be16d:	88 07                	mov    %al,(%edi)
5be16f:	83 c7 03             	add    $0x3,%edi
5be172:	4b                   	dec    %ebx
5be173:	75 ee                	jne    0x5be163
5be175:	46                   	inc    %esi
5be176:	ff 4d d0             	decl   -0x30(%ebp)
5be179:	75 ca                	jne    0x5be145
5be17b:	eb 5d                	jmp    0x5be1da
5be17d:	8b 45 fc             	mov    -0x4(%ebp),%eax
5be180:	8b 10                	mov    (%eax),%edx
5be182:	ff 52 08             	call   *0x8(%edx)
5be185:	48                   	dec    %eax
5be186:	85 c0                	test   %eax,%eax
5be188:	7c 50                	jl     0x5be1da
5be18a:	40                   	inc    %eax
5be18b:	89 45 d0             	mov    %eax,-0x30(%ebp)
5be18e:	33 f6                	xor    %esi,%esi
5be190:	8b d6                	mov    %esi,%edx
5be192:	8b 45 fc             	mov    -0x4(%ebp),%eax
5be195:	8b 08                	mov    (%eax),%ecx
5be197:	ff 11                	call   *(%ecx)
5be199:	8b f8                	mov    %eax,%edi
5be19b:	b8 02 00 00 00       	mov    $0x2,%eax
5be1a0:	2b 45 f8             	sub    -0x8(%ebp),%eax
5be1a3:	03 c0                	add    %eax,%eax
5be1a5:	03 f8                	add    %eax,%edi
5be1a7:	8b 45 fc             	mov    -0x4(%ebp),%eax
5be1aa:	8b 10                	mov    (%eax),%edx
5be1ac:	ff 52 0c             	call   *0xc(%edx)
5be1af:	8b d8                	mov    %eax,%ebx
5be1b1:	4b                   	dec    %ebx
5be1b2:	85 db                	test   %ebx,%ebx
5be1b4:	7c 1e                	jl     0x5be1d4
5be1b6:	43                   	inc    %ebx
5be1b7:	0f b7 07             	movzwl (%edi),%eax
5be1ba:	c1 e8 08             	shr    $0x8,%eax
5be1bd:	8b 55 d4             	mov    -0x2c(%ebp),%edx
5be1c0:	66 8b 04 82          	mov    (%edx,%eax,4),%ax
5be1c4:	8b d0                	mov    %eax,%edx
5be1c6:	c1 e0 08             	shl    $0x8,%eax
5be1c9:	03 c2                	add    %edx,%eax
5be1cb:	66 89 07             	mov    %ax,(%edi)
5be1ce:	83 c7 06             	add    $0x6,%edi
5be1d1:	4b                   	dec    %ebx
5be1d2:	75 e3                	jne    0x5be1b7
5be1d4:	46                   	inc    %esi
5be1d5:	ff 4d d0             	decl   -0x30(%ebp)
5be1d8:	75 b6                	jne    0x5be190
5be1da:	8b 45 f0             	mov    -0x10(%ebp),%eax
5be1dd:	e8 ea 45 e4 ff       	call   0x4027cc
5be1e2:	8b 45 ec             	mov    -0x14(%ebp),%eax
5be1e5:	e8 e2 45 e4 ff       	call   0x4027cc
5be1ea:	8b 45 d4             	mov    -0x2c(%ebp),%eax
5be1ed:	e8 da 45 e4 ff       	call   0x4027cc
5be1f2:	5f                   	pop    %edi
5be1f3:	5e                   	pop    %esi
5be1f4:	5b                   	pop    %ebx
5be1f5:	8b e5                	mov    %ebp,%esp
5be1f7:	5d                   	pop    %ebp
5be1f8:	c2 08 00             	ret    $0x8
5be1fb:	00 00                	add    %al,(%eax)
5be1fd:	00 7f 43             	add    %bh,0x43(%edi)
5be200:	53                   	push   %ebx
5be201:	56                   	push   %esi
5be202:	81 c4 f0 f3 ff ff    	add    $0xfffff3f0,%esp
5be208:	89 54 24 04          	mov    %edx,0x4(%esp)
5be20c:	89 04 24             	mov    %eax,(%esp)
5be20f:	8b 04 24             	mov    (%esp),%eax
5be212:	8b 10                	mov    (%eax),%edx
5be214:	ff 52 10             	call   *0x10(%edx)
5be217:	3c 05                	cmp    $0x5,%al
5be219:	0f 85 2d 01 00 00    	jne    0x5be34c
5be21f:	8b 04 24             	mov    (%esp),%eax
5be222:	8b 10                	mov    (%eax),%edx
5be224:	ff 52 0c             	call   *0xc(%edx)
5be227:	85 c0                	test   %eax,%eax
5be229:	0f 84 1d 01 00 00    	je     0x5be34c
5be22f:	8b 04 24             	mov    (%esp),%eax
5be232:	8b 10                	mov    (%eax),%edx
5be234:	ff 52 08             	call   *0x8(%edx)
5be237:	85 c0                	test   %eax,%eax
5be239:	0f 84 0d 01 00 00    	je     0x5be34c
5be23f:	8b 44 24 04          	mov    0x4(%esp),%eax
5be243:	8b 10                	mov    (%eax),%edx
5be245:	ff 52 0c             	call   *0xc(%edx)
5be248:	85 c0                	test   %eax,%eax
5be24a:	0f 84 fc 00 00 00    	je     0x5be34c
5be250:	8b 44 24 04          	mov    0x4(%esp),%eax
5be254:	8b 10                	mov    (%eax),%edx
5be256:	ff 52 08             	call   *0x8(%edx)
5be259:	85 c0                	test   %eax,%eax
5be25b:	0f 84 eb 00 00 00    	je     0x5be34c
5be261:	c7 44 24 08 00 01 00 	movl   $0x100,0x8(%esp)
5be268:	00
5be269:	8d 44 24 10          	lea    0x10(%esp),%eax
5be26d:	8d 94 24 10 04 00 00 	lea    0x410(%esp),%edx
5be274:	8d 8c 24 10 08 00 00 	lea    0x810(%esp),%ecx
5be27b:	33 db                	xor    %ebx,%ebx
5be27d:	89 18                	mov    %ebx,(%eax)
5be27f:	33 db                	xor    %ebx,%ebx
5be281:	89 1a                	mov    %ebx,(%edx)
5be283:	33 db                	xor    %ebx,%ebx
5be285:	89 19                	mov    %ebx,(%ecx)
5be287:	83 c1 04             	add    $0x4,%ecx
5be28a:	83 c2 04             	add    $0x4,%edx
5be28d:	83 c0 04             	add    $0x4,%eax
5be290:	ff 4c 24 08          	decl   0x8(%esp)