479478:	c3                   	ret
479479:	cc                   	int3
47947a:	cc                   	int3
47947b:	cc                   	int3
47947c:	cc                   	int3
47947d:	cc                   	int3
47947e:	cc                   	int3
47947f:	cc                   	int3
479480:	8b ff                	mov    %edi,%edi
479482:	55                   	push   %ebp
479483:	8b ec                	mov    %esp,%ebp
479485:	83 e4 f8             	and    $0xfffffff8,%esp
479488:	83 ec 2c             	sub    $0x2c,%esp
47948b:	53                   	push   %ebx
47948c:	8b 5d 08             	mov    0x8(%ebp),%ebx
47948f:	56                   	push   %esi
479490:	57                   	push   %edi
479491:	83 7b 30 00          	cmpl   $0x0,0x30(%ebx)
479495:	0f 84 cc 00 00 00    	je     0x479567
47949b:	8b 45 18             	mov    0x18(%ebp),%eax
47949e:	33 d2                	xor    %edx,%edx
4794a0:	f7 75 14             	divl   0x14(%ebp)
4794a3:	33 d2                	xor    %edx,%edx
4794a5:	8b f2                	mov    %edx,%esi
4794a7:	89 44 24 18          	mov    %eax,0x18(%esp)
4794ab:	89 74 24 14          	mov    %esi,0x14(%esp)
4794af:	39 55 14             	cmp    %edx,0x14(%ebp)
4794b2:	0f 86 af 00 00 00    	jbe    0x479567
4794b8:	d9 ee                	fldz
4794ba:	8b 4d 1c             	mov    0x1c(%ebp),%ecx
4794bd:	8b 7d 10             	mov    0x10(%ebp),%edi
4794c0:	89 54 24 1c          	mov    %edx,0x1c(%esp)
4794c4:	89 54 24 20          	mov    %edx,0x20(%esp)
4794c8:	89 54 24 10          	mov    %edx,0x10(%esp)
4794cc:	89 54 24 24          	mov    %edx,0x24(%esp)
4794d0:	89 54 24 28          	mov    %edx,0x28(%esp)
4794d4:	89 54 24 2c          	mov    %edx,0x2c(%esp)
4794d8:	89 54 24 30          	mov    %edx,0x30(%esp)
4794dc:	8d 54 24 10          	lea    0x10(%esp),%edx
4794e0:	52                   	push   %edx
4794e1:	8d 54 24 28          	lea    0x28(%esp),%edx
4794e5:	52                   	push   %edx
4794e6:	8d 54 24 24          	lea    0x24(%esp),%edx
4794ea:	52                   	push   %edx
4794eb:	51                   	push   %ecx
4794ec:	50                   	push   %eax
4794ed:	57                   	push   %edi
4794ee:	ff 75 0c             	push   0xc(%ebp)
4794f1:	8b cb                	mov    %ebx,%ecx
4794f3:	d9 5c 24 50          	fstps  0x50(%esp)
4794f7:	e8 dc 01 00 00       	call   0x4796d8
4794fc:	84 c0                	test   %al,%al
4794fe:	74 40                	je     0x479540
479500:	ff 74 24 2c          	push   0x2c(%esp)
479504:	8d 44 24 20          	lea    0x20(%esp),%eax
479508:	ff 74 24 14          	push   0x14(%esp)
47950c:	8d 4b 34             	lea    0x34(%ebx),%ecx
47950f:	50                   	push   %eax
479510:	ff 77 04             	push   0x4(%edi)
479513:	e8 8e 09 00 00       	call   0x479ea6
479518:	84 c0                	test   %al,%al
47951a:	74 24                	je     0x479540
47951c:	8b 7b 30             	mov    0x30(%ebx),%edi
47951f:	8d 4c 24 24          	lea    0x24(%esp),%ecx
479523:	51                   	push   %ecx
479524:	8d 4c 24 20          	lea    0x20(%esp),%ecx
479528:	51                   	push   %ecx
479529:	8b 07                	mov    (%edi),%eax
47952b:	8b 30                	mov    (%eax),%esi
47952d:	8b ce                	mov    %esi,%ecx
47952f:	ff 15 2c 81 4a 00    	call   *0x4a812c
479535:	8b cf                	mov    %edi,%ecx
479537:	ff d6                	call   *%esi
479539:	8b 74 24 14          	mov    0x14(%esp),%esi
47953d:	8b 7d 10             	mov    0x10(%ebp),%edi
479540:	8b 44 24 18          	mov    0x18(%esp),%eax
479544:	03 f0                	add    %eax,%esi
479546:	8b 4d 1c             	mov    0x1c(%ebp),%ecx
479549:	8b d0                	mov    %eax,%edx
47954b:	d9 ee                	fldz
47954d:	c1 e2 02             	shl    $0x2,%edx
479550:	03 ca                	add    %edx,%ecx
479552:	89 74 24 14          	mov    %esi,0x14(%esp)
479556:	6a 00                	push   $0x0
479558:	89 4d 1c             	mov    %ecx,0x1c(%ebp)
47955b:	5a                   	pop    %edx
47955c:	3b 75 14             	cmp    0x14(%ebp),%esi
47955f:	0f 82 5b ff ff ff    	jb     0x4794c0
479565:	dd d8                	fstp   %st(0)
479567:	5f                   	pop    %edi
479568:	5e                   	pop    %esi
479569:	33 c0                	xor    %eax,%eax
47956b:	5b                   	pop    %ebx
47956c:	8b e5                	mov    %ebp,%esp
47956e:	5d                   	pop    %ebp
47956f:	c2 20 00             	ret    $0x20
479572:	cc                   	int3
479573:	cc                   	int3
479574:	cc                   	int3
479575:	cc                   	int3
479576:	cc                   	int3
479577:	cc                   	int3
479578:	cc                   	int3
479579:	cc                   	int3
47957a:	cc                   	int3
47957b:	cc                   	int3
47957c:	cc                   	int3
47957d:	cc                   	int3
47957e:	cc                   	int3
47957f:	cc                   	int3
479580:	8b ff                	mov    %edi,%edi
479582:	55                   	push   %ebp
479583:	8b ec                	mov    %esp,%ebp
479585:	83 ec 20             	sub    $0x20,%esp
479588:	a1 dc 38 4a 00       	mov    0x4a38dc,%eax
47958d:	33 c5                	xor    %ebp,%eax
47958f:	89 45 fc             	mov    %eax,-0x4(%ebp)
479592:	f6 05 c0 46 4a 00 02 	testb  $0x2,0x4a46c0
479599:	8b 45 18             	mov    0x18(%ebp),%eax
47959c:	53                   	push   %ebx
47959d:	8b 5d 10             	mov    0x10(%ebp),%ebx
4795a0:	56                   	push   %esi
4795a1:	8b 75 0c             	mov    0xc(%ebp),%esi
4795a4:	57                   	push   %edi
4795a5:	8b 7d 08             	mov    0x8(%ebp),%edi
4795a8:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4795ab:	74 14                	je     0x4795c1
4795ad:	8d 45 ec             	lea    -0x14(%ebp),%eax
4795b0:	ba 18 f5 40 00       	mov    $0x40f518,%edx
4795b5:	50                   	push   %eax
4795b6:	6a 01                	push   $0x1
4795b8:	51                   	push   %ecx
4795b9:	e8 e5 be fa ff       	call   0x4254a3
4795be:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4795c1:	33 c9                	xor    %ecx,%ecx
4795c3:	39 4f 30             	cmp    %ecx,0x30(%edi)
4795c6:	74 4d                	je     0x479615
4795c8:	d9 ee                	fldz
4795ca:	51                   	push   %ecx
4795cb:	89 4d e0             	mov    %ecx,-0x20(%ebp)
4795ce:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
4795d1:	89 4d e8             	mov    %ecx,-0x18(%ebp)
4795d4:	89 4d ec             	mov    %ecx,-0x14(%ebp)
4795d7:	89 4d f0             	mov    %ecx,-0x10(%ebp)
4795da:	89 4d f4             	mov    %ecx,-0xc(%ebp)
4795dd:	8d 4d e8             	lea    -0x18(%ebp),%ecx
4795e0:	51                   	push   %ecx
4795e1:	8d 4d e0             	lea    -0x20(%ebp),%ecx
4795e4:	51                   	push   %ecx
4795e5:	50                   	push   %eax
4795e6:	ff 75 14             	push   0x14(%ebp)
4795e9:	8b cf                	mov    %edi,%ecx
4795eb:	53                   	push   %ebx
4795ec:	56                   	push   %esi
4795ed:	d9 5d f8             	fstps  -0x8(%ebp)
4795f0:	e8 e3 00 00 00       	call   0x4796d8
4795f5:	84 c0                	test   %al,%al
4795f7:	74 1c                	je     0x479615
4795f9:	8b 7f 30             	mov    0x30(%edi),%edi
4795fc:	8d 4d e8             	lea    -0x18(%ebp),%ecx
4795ff:	51                   	push   %ecx
479600:	8d 4d e0             	lea    -0x20(%ebp),%ecx
479603:	51                   	push   %ecx
479604:	8b 07                	mov    (%edi),%eax
479606:	8b 70 08             	mov    0x8(%eax),%esi
479609:	8b ce                	mov    %esi,%ecx
47960b:	ff 15 2c 81 4a 00    	call   *0x4a812c
479611:	8b cf                	mov    %edi,%ecx
479613:	ff d6                	call   *%esi
479615:	8b 4d fc             	mov    -0x4(%ebp),%ecx
479618:	33 c0                	xor    %eax,%eax
47961a:	5f                   	pop    %edi
47961b:	5e                   	pop    %esi
47961c:	33 cd                	xor    %ebp,%ecx
47961e:	5b                   	pop    %ebx
47961f:	e8 dc 68 01 00       	call   0x48ff00
479624:	c9                   	leave
479625:	c2 18 00             	ret    $0x18
479628:	cc                   	int3
479629:	cc                   	int3
47962a:	cc                   	int3
47962b:	cc                   	int3
47962c:	cc                   	int3
47962d:	cc                   	int3
47962e:	cc                   	int3
47962f:	cc                   	int3
479630:	8b ff                	mov    %edi,%edi
479632:	55                   	push   %ebp
479633:	8b ec                	mov    %esp,%ebp
479635:	83 ec 20             	sub    $0x20,%esp
479638:	a1 dc 38 4a 00       	mov    0x4a38dc,%eax
47963d:	33 c5                	xor    %ebp,%eax
47963f:	89 45 fc             	mov    %eax,-0x4(%ebp)
479642:	f6 05 c0 46 4a 00 02 	testb  $0x2,0x4a46c0
479649:	8b 45 18             	mov    0x18(%ebp),%eax
47964c:	53                   	push   %ebx
47964d:	8b 5d 10             	mov    0x10(%ebp),%ebx
479650:	56                   	push   %esi
479651:	8b 75 0c             	mov    0xc(%ebp),%esi
479654:	57                   	push   %edi
479655:	8b 7d 08             	mov    0x8(%ebp),%edi
479658:	89 45 e4             	mov    %eax,-0x1c(%ebp)
47965b:	74 14                	je     0x479671
47965d:	8d 45 ec             	lea    -0x14(%ebp),%eax
479660:	ba 18 f5 40 00       	mov    $0x40f518,%edx
479665:	50                   	push   %eax
479666:	6a 01                	push   $0x1
479668:	51                   	push   %ecx
479669:	e8 35 be fa ff       	call   0x4254a3
47966e:	8b 45 e4             	mov    -0x1c(%ebp),%eax
479671:	33 c9                	xor    %ecx,%ecx
479673:	39 4f 30             	cmp    %ecx,0x30(%edi)
479676:	74 4d                	je     0x4796c5
479678:	d9 ee                	fldz
47967a:	51                   	push   %ecx
47967b:	89 4d e0             	mov    %ecx,-0x20(%ebp)
47967e:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
479681:	89 4d e8             	mov    %ecx,-0x18(%ebp)
479684:	89 4d ec             	mov    %ecx,-0x14(%ebp)
479687:	89 4d f0             	mov    %ecx,-0x10(%ebp)
47968a:	89 4d f4             	mov    %ecx,-0xc(%ebp)
47968d:	8d 4d e8             	lea    -0x18(%ebp),%ecx
479690:	51                   	push   %ecx
479691:	8d 4d e0             	lea    -0x20(%ebp),%ecx
479694:	51                   	push   %ecx
479695:	50                   	push   %eax
479696:	ff 75 14             	push   0x14(%ebp)
479699:	8b cf                	mov    %edi,%ecx
47969b:	53                   	push   %ebx
47969c:	56                   	push   %esi
47969d:	d9 5d f8             	fstps  -0x8(%ebp)
4796a0:	e8 33 00 00 00       	call   0x4796d8
4796a5:	84 c0                	test   %al,%al
4796a7:	74 1c                	je     0x4796c5
4796a9:	8b 7f 30             	mov    0x30(%edi),%edi
4796ac:	8d 4d e8             	lea    -0x18(%ebp),%ecx
4796af:	51                   	push   %ecx
4796b0:	8d 4d e0             	lea    -0x20(%ebp),%ecx
4796b3:	51                   	push   %ecx
4796b4:	8b 07                	mov    (%edi),%eax
4796b6:	8b 70 04             	mov    0x4(%eax),%esi
4796b9:	8b ce                	mov    %esi,%ecx
4796bb:	ff 15 2c 81 4a 00    	call   *0x4a812c
4796c1:	8b cf                	mov    %edi,%ecx
4796c3:	ff d6                	call   *%esi
4796c5:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4796c8:	33 c0                	xor    %eax,%eax
4796ca:	5f                   	pop    %edi
4796cb:	5e                   	pop    %esi
4796cc:	33 cd                	xor    %ebp,%ecx
4796ce:	5b                   	pop    %ebx
4796cf:	e8 2c 68 01 00       	call   0x48ff00
4796d4:	c9                   	leave
4796d5:	c2 18 00             	ret    $0x18
4796d8:	8b ff                	mov    %edi,%edi
4796da:	55                   	push   %ebp
4796db:	8b ec                	mov    %esp,%ebp
4796dd:	83 ec 18             	sub    $0x18,%esp
4796e0:	53                   	push   %ebx
4796e1:	56                   	push   %esi
4796e2:	57                   	push   %edi
4796e3:	8b 7d 08             	mov    0x8(%ebp),%edi
4796e6:	8d 45 fc             	lea    -0x4(%ebp),%eax
4796e9:	50                   	push   %eax
4796ea:	8d 45 f0             	lea    -0x10(%ebp),%eax
4796ed:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4796f0:	50                   	push   %eax
4796f1:	8b 37                	mov    (%edi),%esi
4796f3:	8d 45 ec             	lea    -0x14(%ebp),%eax
4796f6:	50                   	push   %eax
4796f7:	8d 45 e8             	lea    -0x18(%ebp),%eax
4796fa:	33 db                	xor    %ebx,%ebx
4796fc:	50                   	push   %eax
4796fd:	8b 45 0c             	mov    0xc(%ebp),%eax
479700:	8b b6 84 00 00 00    	mov    0x84(%esi),%esi
479706:	8b ce                	mov    %esi,%ecx
479708:	89 5d fc             	mov    %ebx,-0x4(%ebp)
47970b:	ff 30                	push   (%eax)
47970d:	57                   	push   %edi
47970e:	ff 15 2c 81 4a 00    	call   *0x4a812c
479714:	ff d6                	call   *%esi
479716:	8b 45 10             	mov    0x10(%ebp),%eax
479719:	83 f8 02             	cmp    $0x2,%eax
47971c:	0f 82 24 01 00 00    	jb     0x479846
479722:	3b 45 f0             	cmp    -0x10(%ebp),%eax
479725:	0f 85 1b 01 00 00    	jne    0x479846
47972b:	8b 5d 1c             	mov    0x1c(%ebp),%ebx
47972e:	85 db                	test   %ebx,%ebx
479730:	74 08                	je     0x47973a
479732:	8b 45 0c             	mov    0xc(%ebp),%eax
479735:	89 3b                	mov    %edi,(%ebx)
479737:	89 43 04             	mov    %eax,0x4(%ebx)
47973a:	8b 45 14             	mov    0x14(%ebp),%eax
47973d:	8b 7d 18             	mov    0x18(%ebp),%edi
479740:	c7 45 f4 ec 09 00 00 	movl   $0x9ec,-0xc(%ebp)
479747:	6a 02                	push   $0x2
479749:	8b 08                	mov    (%eax),%ecx
47974b:	89 0f                	mov    %ecx,(%edi)
47974d:	8b 70 04             	mov    0x4(%eax),%esi
479750:	8b 45 f8             	mov    -0x8(%ebp),%eax
479753:	89 77 04             	mov    %esi,0x4(%edi)
479756:	8b 40 44             	mov    0x44(%eax),%eax
479759:	0f af c1             	imul   %ecx,%eax
47975c:	b9 f6 04 00 00       	mov    $0x4f6,%ecx
479761:	03 c1                	add    %ecx,%eax
479763:	99                   	cltd
479764:	f7 7d f4             	idivl  -0xc(%ebp)
479767:	89 07                	mov    %eax,(%edi)
479769:	8b 45 f8             	mov    -0x8(%ebp),%eax
47976c:	8b 40 48             	mov    0x48(%eax),%eax
47976f:	0f af c6             	imul   %esi,%eax
479772:	03 c1                	add    %ecx,%eax
479774:	99                   	cltd
479775:	f7 7d f4             	idivl  -0xc(%ebp)
479778:	59                   	pop    %ecx
479779:	89 47 04             	mov    %eax,0x4(%edi)
47977c:	39 4d 10             	cmp    %ecx,0x10(%ebp)
47977f:	0f 86 bf 00 00 00    	jbe    0x479844
479785:	8b 55 fc             	mov    -0x4(%ebp),%edx
479788:	83 c2 40             	add    $0x40,%edx
47978b:	33 f6                	xor    %esi,%esi
47978d:	8b fe                	mov    %esi,%edi
47978f:	8b 04 ba             	mov    (%edx,%edi,4),%eax
479792:	bb ec 37 41 00       	mov    $0x4137ec,%ebx
479797:	3b 04 bb             	cmp    (%ebx,%edi,4),%eax
47979a:	8b 5d 1c             	mov    0x1c(%ebp),%ebx
47979d:	75 4d                	jne    0x4797ec
47979f:	47                   	inc    %edi
4797a0:	83 ff 04             	cmp    $0x4,%edi
4797a3:	75 ea                	jne    0x47978f
4797a5:	85 db                	test   %ebx,%ebx
4797a7:	0f 84 8a 00 00 00    	je     0x479837
4797ad:	8b 7a 14             	mov    0x14(%edx),%edi
4797b0:	8b 42 10             	mov    0x10(%edx),%eax
4797b3:	89 45 f4             	mov    %eax,-0xc(%ebp)
4797b6:	85 ff                	test   %edi,%edi
4797b8:	75 05                	jne    0x4797bf
4797ba:	bf ff 00 00 00       	mov    $0xff,%edi
4797bf:	8b 45 14             	mov    0x14(%ebp),%eax
4797c2:	2b 7d f4             	sub    -0xc(%ebp),%edi
4797c5:	8b 04 88             	mov    (%eax,%ecx,4),%eax
4797c8:	2b 45 f4             	sub    -0xc(%ebp),%eax
4797cb:	89 45 f8             	mov    %eax,-0x8(%ebp)
4797ce:	db 45 f8             	fildl  -0x8(%ebp)
4797d1:	89 7d f4             	mov    %edi,-0xc(%ebp)
4797d4:	d9 5d f8             	fstps  -0x8(%ebp)
4797d7:	d9 45 f8             	flds   -0x8(%ebp)
4797da:	db 45 f4             	fildl  -0xc(%ebp)
4797dd:	d9 5d f4             	fstps  -0xc(%ebp)
4797e0:	d8 75 f4             	fdivs  -0xc(%ebp)