4ee1cf:	8b 5d ec             	mov    -0x14(%ebp),%ebx
4ee1d2:	0f b6 33             	movzbl (%ebx),%esi
4ee1d5:	8b 5d e8             	mov    -0x18(%ebp),%ebx
4ee1d8:	0f b6 1b             	movzbl (%ebx),%ebx
4ee1db:	03 f3                	add    %ebx,%esi
4ee1dd:	33 db                	xor    %ebx,%ebx
4ee1df:	8a 19                	mov    (%ecx),%bl
4ee1e1:	03 f3                	add    %ebx,%esi
4ee1e3:	8b da                	mov    %edx,%ebx
4ee1e5:	2b d8                	sub    %eax,%ebx
4ee1e7:	03 5d d4             	add    -0x2c(%ebp),%ebx
4ee1ea:	03 de                	add    %esi,%ebx
4ee1ec:	89 5d e0             	mov    %ebx,-0x20(%ebp)
4ee1ef:	0f af 45 dc          	imul   -0x24(%ebp),%eax
4ee1f3:	8b 5d e0             	mov    -0x20(%ebp),%ebx
4ee1f6:	0f af 5d d8          	imul   -0x28(%ebp),%ebx
4ee1fa:	03 c3                	add    %ebx,%eax
4ee1fc:	8b 5d e4             	mov    -0x1c(%ebp),%ebx
4ee1ff:	05 00 80 00 00       	add    $0x8000,%eax
4ee204:	c1 f8 10             	sar    $0x10,%eax
4ee207:	88 03                	mov    %al,(%ebx)
4ee209:	ff 45 e4             	incl   -0x1c(%ebp)
4ee20c:	89 55 d4             	mov    %edx,-0x2c(%ebp)
4ee20f:	ff 4d f4             	decl   -0xc(%ebp)
4ee212:	8b d6                	mov    %esi,%edx
4ee214:	8b 45 f4             	mov    -0xc(%ebp),%eax
4ee217:	85 c0                	test   %eax,%eax
4ee219:	77 a9                	ja     0x4ee1c4
4ee21b:	33 c0                	xor    %eax,%eax
4ee21d:	8b 5d d4             	mov    -0x2c(%ebp),%ebx
4ee220:	8a 01                	mov    (%ecx),%al
4ee222:	8b ca                	mov    %edx,%ecx
4ee224:	2b c8                	sub    %eax,%ecx
4ee226:	03 cb                	add    %ebx,%ecx
4ee228:	03 d1                	add    %ecx,%edx
4ee22a:	89 55 e0             	mov    %edx,-0x20(%ebp)
4ee22d:	f7 6d dc             	imull  -0x24(%ebp)
4ee230:	8b 55 e0             	mov    -0x20(%ebp),%edx
4ee233:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
4ee236:	0f af 55 d8          	imul   -0x28(%ebp),%edx
4ee23a:	03 c2                	add    %edx,%eax
4ee23c:	05 00 80 00 00       	add    $0x8000,%eax
4ee241:	c1 f8 10             	sar    $0x10,%eax
4ee244:	88 01                	mov    %al,(%ecx)
4ee246:	ff 45 f8             	incl   -0x8(%ebp)
4ee249:	83 45 cc 04          	addl   $0x4,-0x34(%ebp)
4ee24d:	83 45 d0 04          	addl   $0x4,-0x30(%ebp)
4ee251:	8b 45 fc             	mov    -0x4(%ebp),%eax
4ee254:	8b 50 0c             	mov    0xc(%eax),%edx
4ee257:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4ee25a:	3b d1                	cmp    %ecx,%edx
4ee25c:	0f 8f d7 fe ff ff    	jg     0x4ee139
4ee262:	5e                   	pop    %esi
4ee263:	5b                   	pop    %ebx
4ee264:	8b e5                	mov    %ebp,%esp
4ee266:	5d                   	pop    %ebp
4ee267:	c2 04 00             	ret    $0x4
4ee26a:	90                   	nop
4ee26b:	90                   	nop
4ee26c:	53                   	push   %ebx
4ee26d:	56                   	push   %esi
4ee26e:	57                   	push   %edi
4ee26f:	55                   	push   %ebp
4ee270:	83 c4 f8             	add    $0xfffffff8,%esp
4ee273:	8b d8                	mov    %eax,%ebx
4ee275:	8b c3                	mov    %ebx,%eax
4ee277:	b9 34 00 00 00       	mov    $0x34,%ecx
4ee27c:	c7 44 24 04 01 00 00 	movl   $0x1,0x4(%esp)
4ee283:	00
4ee284:	8b 70 04             	mov    0x4(%eax),%esi
4ee287:	ba 01 00 00 00       	mov    $0x1,%edx
4ee28c:	ff 16                	call   *(%esi)
4ee28e:	89 04 24             	mov    %eax,(%esp)
4ee291:	8b 04 24             	mov    (%esp),%eax
4ee294:	89 83 64 01 00 00    	mov    %eax,0x164(%ebx)
4ee29a:	8b 14 24             	mov    (%esp),%edx
4ee29d:	c7 02 94 da 4e 00    	movl   $0x4eda94,(%edx)
4ee2a3:	8b 0c 24             	mov    (%esp),%ecx
4ee2a6:	c7 41 04 f0 da 4e 00 	movl   $0x4edaf0,0x4(%ecx)
4ee2ad:	8b 04 24             	mov    (%esp),%eax
4ee2b0:	33 d2                	xor    %edx,%edx
4ee2b2:	89 50 08             	mov    %edx,0x8(%eax)
4ee2b5:	8b 8b bc 00 00 00    	mov    0xbc(%ebx),%ecx
4ee2bb:	85 c9                	test   %ecx,%ecx
4ee2bd:	74 0f                	je     0x4ee2ce
4ee2bf:	8b 03                	mov    (%ebx),%eax
4ee2c1:	c7 40 14 19 00 00 00 	movl   $0x19,0x14(%eax)
4ee2c8:	8b c3                	mov    %ebx,%eax
4ee2ca:	8b 10                	mov    (%eax),%edx
4ee2cc:	ff 12                	call   *(%edx)
4ee2ce:	33 ed                	xor    %ebp,%ebp
4ee2d0:	8b 73 44             	mov    0x44(%ebx),%esi
4ee2d3:	8b 04 24             	mov    (%esp),%eax
4ee2d6:	8d 78 0c             	lea    0xc(%eax),%edi
4ee2d9:	e9 f0 00 00 00       	jmp    0x4ee3ce
4ee2de:	8b 46 08             	mov    0x8(%esi),%eax
4ee2e1:	8b 93 e8 00 00 00    	mov    0xe8(%ebx),%edx
4ee2e7:	3b c2                	cmp    %edx,%eax
4ee2e9:	75 37                	jne    0x4ee322
4ee2eb:	8b 4e 0c             	mov    0xc(%esi),%ecx
4ee2ee:	8b 83 ec 00 00 00    	mov    0xec(%ebx),%eax
4ee2f4:	3b c8                	cmp    %eax,%ecx
4ee2f6:	75 2a                	jne    0x4ee322
4ee2f8:	8b 93 c0 00 00 00    	mov    0xc0(%ebx),%edx
4ee2fe:	85 d2                	test   %edx,%edx
4ee300:	74 15                	je     0x4ee317
4ee302:	c7 07 d4 e0 4e 00    	movl   $0x4ee0d4,(%edi)
4ee308:	8b 0c 24             	mov    (%esp),%ecx
4ee30b:	c7 41 08 01 00 00 00 	movl   $0x1,0x8(%ecx)
4ee312:	e9 b0 00 00 00       	jmp    0x4ee3c7
4ee317:	c7 07 9c dc 4e 00    	movl   $0x4edc9c,(%edi)
4ee31d:	e9 a5 00 00 00       	jmp    0x4ee3c7
4ee322:	8b 46 08             	mov    0x8(%esi),%eax
4ee325:	03 c0                	add    %eax,%eax
4ee327:	8b 93 e8 00 00 00    	mov    0xe8(%ebx),%edx
4ee32d:	3b c2                	cmp    %edx,%eax
4ee32f:	75 1b                	jne    0x4ee34c
4ee331:	8b 4e 0c             	mov    0xc(%esi),%ecx
4ee334:	8b 83 ec 00 00 00    	mov    0xec(%ebx),%eax
4ee33a:	3b c8                	cmp    %eax,%ecx
4ee33c:	75 0e                	jne    0x4ee34c
4ee33e:	33 d2                	xor    %edx,%edx
4ee340:	89 54 24 04          	mov    %edx,0x4(%esp)
4ee344:	c7 07 e8 dc 4e 00    	movl   $0x4edce8,(%edi)
4ee34a:	eb 7b                	jmp    0x4ee3c7
4ee34c:	8b 4e 08             	mov    0x8(%esi),%ecx
4ee34f:	03 c9                	add    %ecx,%ecx
4ee351:	8b 83 e8 00 00 00    	mov    0xe8(%ebx),%eax
4ee357:	3b c8                	cmp    %eax,%ecx
4ee359:	75 33                	jne    0x4ee38e
4ee35b:	8b 56 0c             	mov    0xc(%esi),%edx
4ee35e:	03 d2                	add    %edx,%edx
4ee360:	8b 8b ec 00 00 00    	mov    0xec(%ebx),%ecx
4ee366:	3b d1                	cmp    %ecx,%edx
4ee368:	75 24                	jne    0x4ee38e
4ee36a:	8b 83 c0 00 00 00    	mov    0xc0(%ebx),%eax
4ee370:	85 c0                	test   %eax,%eax
4ee372:	74 12                	je     0x4ee386
4ee374:	c7 07 40 de 4e 00    	movl   $0x4ede40,(%edi)
4ee37a:	8b 14 24             	mov    (%esp),%edx
4ee37d:	c7 42 08 01 00 00 00 	movl   $0x1,0x8(%edx)
4ee384:	eb 41                	jmp    0x4ee3c7
4ee386:	c7 07 84 dd 4e 00    	movl   $0x4edd84,(%edi)
4ee38c:	eb 39                	jmp    0x4ee3c7
4ee38e:	8b 83 e8 00 00 00    	mov    0xe8(%ebx),%eax
4ee394:	99                   	cltd
4ee395:	f7 7e 08             	idivl  0x8(%esi)
4ee398:	85 d2                	test   %edx,%edx
4ee39a:	75 1c                	jne    0x4ee3b8
4ee39c:	8b 83 ec 00 00 00    	mov    0xec(%ebx),%eax
4ee3a2:	99                   	cltd
4ee3a3:	f7 7e 0c             	idivl  0xc(%esi)
4ee3a6:	85 d2                	test   %edx,%edx
4ee3a8:	75 0e                	jne    0x4ee3b8
4ee3aa:	33 c9                	xor    %ecx,%ecx
4ee3ac:	89 4c 24 04          	mov    %ecx,0x4(%esp)
4ee3b0:	c7 07 78 db 4e 00    	movl   $0x4edb78,(%edi)
4ee3b6:	eb 0f                	jmp    0x4ee3c7
4ee3b8:	8b 03                	mov    (%ebx),%eax
4ee3ba:	c7 40 14 26 00 00 00 	movl   $0x26,0x14(%eax)
4ee3c1:	8b c3                	mov    %ebx,%eax
4ee3c3:	8b 10                	mov    (%eax),%edx
4ee3c5:	ff 12                	call   *(%edx)
4ee3c7:	83 c7 04             	add    $0x4,%edi
4ee3ca:	45                   	inc    %ebp
4ee3cb:	83 c6 54             	add    $0x54,%esi
4ee3ce:	8b 4b 3c             	mov    0x3c(%ebx),%ecx
4ee3d1:	3b e9                	cmp    %ecx,%ebp
4ee3d3:	0f 8c 05 ff ff ff    	jl     0x4ee2de
4ee3d9:	8b 83 c0 00 00 00    	mov    0xc0(%ebx),%eax
4ee3df:	85 c0                	test   %eax,%eax
4ee3e1:	74 1a                	je     0x4ee3fd
4ee3e3:	8b 54 24 04          	mov    0x4(%esp),%edx
4ee3e7:	85 d2                	test   %edx,%edx
4ee3e9:	75 12                	jne    0x4ee3fd
4ee3eb:	8b 0b                	mov    (%ebx),%ecx
4ee3ed:	8b c3                	mov    %ebx,%eax
4ee3ef:	33 d2                	xor    %edx,%edx
4ee3f1:	c7 41 14 63 00 00 00 	movl   $0x63,0x14(%ecx)
4ee3f8:	8b 08                	mov    (%eax),%ecx
4ee3fa:	ff 51 04             	call   *0x4(%ecx)
4ee3fd:	59                   	pop    %ecx
4ee3fe:	5a                   	pop    %edx
4ee3ff:	5d                   	pop    %ebp
4ee400:	5f                   	pop    %edi
4ee401:	5e                   	pop    %esi
4ee402:	5b                   	pop    %ebx
4ee403:	c3                   	ret
4ee404:	53                   	push   %ebx
4ee405:	56                   	push   %esi
4ee406:	57                   	push   %edi
4ee407:	55                   	push   %ebp
4ee408:	83 c4 dc             	add    $0xffffffdc,%esp
4ee40b:	33 c9                	xor    %ecx,%ecx
4ee40d:	89 04 24             	mov    %eax,(%esp)
4ee410:	8b 04 24             	mov    (%esp),%eax
4ee413:	8b 90 68 01 00 00    	mov    0x168(%eax),%edx
4ee419:	89 54 24 04          	mov    %edx,0x4(%esp)
4ee41d:	89 4c 24 08          	mov    %ecx,0x8(%esp)
4ee421:	8b 04 24             	mov    (%esp),%eax
4ee424:	8b 50 44             	mov    0x44(%eax),%edx
4ee427:	89 54 24 0c          	mov    %edx,0xc(%esp)
4ee42b:	e9 c4 01 00 00       	jmp    0x4ee5f4
4ee430:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
4ee434:	8b 59 10             	mov    0x10(%ecx),%ebx
4ee437:	85 db                	test   %ebx,%ebx
4ee439:	7c 10                	jl     0x4ee44b
4ee43b:	83 fb 04             	cmp    $0x4,%ebx
4ee43e:	7d 0b                	jge    0x4ee44b
4ee440:	8b 04 24             	mov    (%esp),%eax
4ee443:	8b 54 98 48          	mov    0x48(%eax,%ebx,4),%edx
4ee447:	85 d2                	test   %edx,%edx
4ee449:	75 16                	jne    0x4ee461
4ee44b:	8b 0c 24             	mov    (%esp),%ecx
4ee44e:	8b 01                	mov    (%ecx),%eax
4ee450:	c7 40 14 34 00 00 00 	movl   $0x34,0x14(%eax)
4ee457:	89 58 18             	mov    %ebx,0x18(%eax)
4ee45a:	8b 04 24             	mov    (%esp),%eax
4ee45d:	8b 10                	mov    (%eax),%edx
4ee45f:	ff 12                	call   *(%edx)
4ee461:	8b 0c 24             	mov    (%esp),%ecx
4ee464:	8b 44 99 48          	mov    0x48(%ecx,%ebx,4),%eax
4ee468:	89 44 24 10          	mov    %eax,0x10(%esp)
4ee46c:	8b 14 24             	mov    (%esp),%edx
4ee46f:	8b 8a c4 00 00 00    	mov    0xc4(%edx),%ecx
4ee475:	83 e9 01             	sub    $0x1,%ecx
4ee478:	72 0e                	jb     0x4ee488
4ee47a:	74 5b                	je     0x4ee4d7
4ee47c:	49                   	dec    %ecx
4ee47d:	0f 84 b7 00 00 00    	je     0x4ee53a
4ee483:	e9 50 01 00 00       	jmp    0x4ee5d8
4ee488:	8b 44 24 04          	mov    0x4(%esp),%eax
4ee48c:	8b 54 98 0c          	mov    0xc(%eax,%ebx,4),%edx
4ee490:	85 d2                	test   %edx,%edx
4ee492:	75 1a                	jne    0x4ee4ae
4ee494:	8b 04 24             	mov    (%esp),%eax
4ee497:	b9 00 01 00 00       	mov    $0x100,%ecx
4ee49c:	ba 01 00 00 00       	mov    $0x1,%edx
4ee4a1:	8b 70 04             	mov    0x4(%eax),%esi
4ee4a4:	ff 16                	call   *(%esi)
4ee4a6:	8b 54 24 04          	mov    0x4(%esp),%edx
4ee4aa:	89 44 9a 0c          	mov    %eax,0xc(%edx,%ebx,4)
4ee4ae:	8b 44 24 04          	mov    0x4(%esp),%eax
4ee4b2:	8b 54 98 0c          	mov    0xc(%eax,%ebx,4),%edx
4ee4b6:	33 c0                	xor    %eax,%eax
4ee4b8:	8b ca                	mov    %edx,%ecx
4ee4ba:	8b 54 24 10          	mov    0x10(%esp),%edx
4ee4be:	0f b7 1a             	movzwl (%edx),%ebx
4ee4c1:	c1 e3 03             	shl    $0x3,%ebx
4ee4c4:	89 19                	mov    %ebx,(%ecx)
4ee4c6:	40                   	inc    %eax
4ee4c7:	83 c1 04             	add    $0x4,%ecx
4ee4ca:	83 c2 02             	add    $0x2,%edx
4ee4cd:	83 f8 40             	cmp    $0x40,%eax
4ee4d0:	7c ec                	jl     0x4ee4be
4ee4d2:	e9 14 01 00 00       	jmp    0x4ee5eb
4ee4d7:	8b 44 24 04          	mov    0x4(%esp),%eax
4ee4db:	8b 54 98 0c          	mov    0xc(%eax,%ebx,4),%edx
4ee4df:	85 d2                	test   %edx,%edx
4ee4e1:	75 1a                	jne    0x4ee4fd
4ee4e3:	8b 04 24             	mov    (%esp),%eax
4ee4e6:	b9 00 01 00 00       	mov    $0x100,%ecx
4ee4eb:	ba 01 00 00 00       	mov    $0x1,%edx
4ee4f0:	8b 70 04             	mov    0x4(%eax),%esi
4ee4f3:	ff 16                	call   *(%esi)
4ee4f5:	8b 54 24 04          	mov    0x4(%esp),%edx
4ee4f9:	89 44 9a 0c          	mov    %eax,0xc(%edx,%ebx,4)
4ee4fd:	8b 44 24 04          	mov    0x4(%esp),%eax
4ee501:	b9 10 d4 68 00       	mov    $0x68d410,%ecx
4ee506:	8b 54 98 0c          	mov    0xc(%eax,%ebx,4),%edx
4ee50a:	33 c0                	xor    %eax,%eax
4ee50c:	8b da                	mov    %edx,%ebx
4ee50e:	8b 54 24 10          	mov    0x10(%esp),%edx
4ee512:	0f bf 39             	movswl (%ecx),%edi
4ee515:	0f b7 32             	movzwl (%edx),%esi
4ee518:	0f af f7             	imul   %edi,%esi
4ee51b:	81 c6 00 04 00 00    	add    $0x400,%esi
4ee521:	83 c2 02             	add    $0x2,%edx
4ee524:	c1 fe 0b             	sar    $0xb,%esi
4ee527:	83 c1 02             	add    $0x2,%ecx
4ee52a:	89 33                	mov    %esi,(%ebx)
4ee52c:	83 c3 04             	add    $0x4,%ebx
4ee52f:	40                   	inc    %eax
4ee530:	83 f8 40             	cmp    $0x40,%eax
4ee533:	7c dd                	jl     0x4ee512
4ee535:	e9 b1 00 00 00       	jmp    0x4ee5eb
4ee53a:	8b 44 24 04          	mov    0x4(%esp),%eax
4ee53e:	8b 54 98 20          	mov    0x20(%eax,%ebx,4),%edx
4ee542:	85 d2                	test   %edx,%edx
4ee544:	75 1a                	jne    0x4ee560
4ee546:	8b 04 24             	mov    (%esp),%eax
4ee549:	b9 00 01 00 00       	mov    $0x100,%ecx
4ee54e:	ba 01 00 00 00       	mov    $0x1,%edx
4ee553:	8b 70 04             	mov    0x4(%eax),%esi
4ee556:	ff 16                	call   *(%esi)
4ee558:	8b 54 24 04          	mov    0x4(%esp),%edx
4ee55c:	89 44 9a 20          	mov    %eax,0x20(%edx,%ebx,4)
4ee560:	8b 44 24 04          	mov    0x4(%esp),%eax
4ee564:	8b 4c 98 20          	mov    0x20(%eax,%ebx,4),%ecx
4ee568:	33 c0                	xor    %eax,%eax
4ee56a:	33 d2                	xor    %edx,%edx
4ee56c:	89 4c 24 14          	mov    %ecx,0x14(%esp)
4ee570:	89 54 24 18          	mov    %edx,0x18(%esp)
4ee574:	c7 44 24 1c 90 d4 68 	movl   $0x68d490,0x1c(%esp)
4ee57b:	00
4ee57c:	33 f6                	xor    %esi,%esi
4ee57e:	8b 54 24 14          	mov    0x14(%esp),%edx
4ee582:	8d 1c 82             	lea    (%edx,%eax,4),%ebx
4ee585:	b9 90 d4 68 00       	mov    $0x68d490,%ecx
4ee58a:	8b 54 24 1c          	mov    0x1c(%esp),%edx
4ee58e:	8b fa                	mov    %edx,%edi
4ee590:	8b 54 24 10          	mov    0x10(%esp),%edx
4ee594:	8d 14 42             	lea    (%edx,%eax,2),%edx
4ee597:	0f b7 2a             	movzwl (%edx),%ebp
4ee59a:	89 6c 24 20          	mov    %ebp,0x20(%esp)
4ee59e:	db 44 24 20          	fildl  0x20(%esp)
4ee5a2:	dc 0f                	fmull  (%edi)
4ee5a4:	dc 09                	fmull  (%ecx)
4ee5a6:	d8 0d 10 e6 4e 00    	fmuls  0x4ee610
4ee5ac:	d8 3d 14 e6 4e 00    	fdivrs 0x4ee614
4ee5b2:	d9 1b                	fstps  (%ebx)
4ee5b4:	40                   	inc    %eax
4ee5b5:	83 c3 04             	add    $0x4,%ebx
4ee5b8:	83 c2 02             	add    $0x2,%edx
4ee5bb:	46                   	inc    %esi
4ee5bc:	83 c1 08             	add    $0x8,%ecx
4ee5bf:	83 fe 08             	cmp    $0x8,%esi
4ee5c2:	7c d3                	jl     0x4ee597
4ee5c4:	ff 44 24 18          	incl   0x18(%esp)
4ee5c8:	83 44 24 1c 08       	addl   $0x8,0x1c(%esp)
4ee5cd:	8b 54 24 18          	mov    0x18(%esp),%edx
4ee5d1:	83 fa 08             	cmp    $0x8,%edx
4ee5d4:	7c a6                	jl     0x4ee57c
4ee5d6:	eb 13                	jmp    0x4ee5eb
4ee5d8:	8b 04 24             	mov    (%esp),%eax
4ee5db:	8b 08                	mov    (%eax),%ecx
4ee5dd:	c7 41 14 30 00 00 00 	movl   $0x30,0x14(%ecx)
4ee5e4:	8b 04 24             	mov    (%esp),%eax
4ee5e7:	8b 10                	mov    (%eax),%edx
4ee5e9:	ff 12                	call   *(%edx)
4ee5eb:	ff 44 24 08          	incl   0x8(%esp)
4ee5ef:	83 44 24 0c 54       	addl   $0x54,0xc(%esp)
4ee5f4:	8b 0c 24             	mov    (%esp),%ecx
4ee5f7:	8b 41 3c             	mov    0x3c(%ecx),%eax
4ee5fa:	8b 54 24 08          	mov    0x8(%esp),%edx
4ee5fe:	3b c2                	cmp    %edx,%eax
4ee600:	0f 8f 2a fe ff ff    	jg     0x4ee430
4ee606:	83 c4 24             	add    $0x24,%esp
4ee609:	5d                   	pop    %ebp
4ee60a:	5f                   	pop    %edi