4a14a2:	85 f6                	test   %esi,%esi
4a14a4:	75 03                	jne    0x4a14a9
4a14a6:	5f                   	pop    %edi
4a14a7:	5e                   	pop    %esi
4a14a8:	c3                   	ret
4a14a9:	8d 46 01             	lea    0x1(%esi),%eax
4a14ac:	50                   	push   %eax
4a14ad:	e8 8e f8 ff ff       	call   0x4a0d40
4a14b2:	83 c4 04             	add    $0x4,%esp
4a14b5:	33 c9                	xor    %ecx,%ecx
4a14b7:	85 f6                	test   %esi,%esi
4a14b9:	76 26                	jbe    0x4a14e1
4a14bb:	8a 14 39             	mov    (%ecx,%edi,1),%dl
4a14be:	84 d2                	test   %dl,%dl
4a14c0:	7d 0b                	jge    0x4a14cd
4a14c2:	66 8b 14 39          	mov    (%ecx,%edi,1),%dx
4a14c6:	66 89 14 01          	mov    %dx,(%ecx,%eax,1)
4a14ca:	41                   	inc    %ecx
4a14cb:	eb 0f                	jmp    0x4a14dc
4a14cd:	81 e2 ff 00 00 00    	and    $0xff,%edx
4a14d3:	8a 92 40 a0 50 00    	mov    0x50a040(%edx),%dl
4a14d9:	88 14 01             	mov    %dl,(%ecx,%eax,1)
4a14dc:	41                   	inc    %ecx
4a14dd:	3b ce                	cmp    %esi,%ecx
4a14df:	72 da                	jb     0x4a14bb
4a14e1:	c6 04 30 00          	movb   $0x0,(%eax,%esi,1)
4a14e5:	5f                   	pop    %edi
4a14e6:	5e                   	pop    %esi
4a14e7:	c3                   	ret
4a14e8:	90                   	nop
4a14e9:	90                   	nop
4a14ea:	90                   	nop
4a14eb:	90                   	nop
4a14ec:	90                   	nop
4a14ed:	90                   	nop
4a14ee:	90                   	nop
4a14ef:	90                   	nop
4a14f0:	56                   	push   %esi
4a14f1:	8b 74 24 0c          	mov    0xc(%esp),%esi
4a14f5:	85 f6                	test   %esi,%esi
4a14f7:	7f 04                	jg     0x4a14fd
4a14f9:	33 c0                	xor    %eax,%eax
4a14fb:	5e                   	pop    %esi
4a14fc:	c3                   	ret
4a14fd:	8d 46 08             	lea    0x8(%esi),%eax
4a1500:	50                   	push   %eax
4a1501:	e8 ea f7 ff ff       	call   0x4a0cf0
4a1506:	83 c4 04             	add    $0x4,%esp
4a1509:	89 70 04             	mov    %esi,0x4(%eax)
4a150c:	c7 00 01 00 00 00    	movl   $0x1,(%eax)
4a1512:	5e                   	pop    %esi
4a1513:	c3                   	ret
4a1514:	90                   	nop
4a1515:	90                   	nop
4a1516:	90                   	nop
4a1517:	90                   	nop
4a1518:	90                   	nop
4a1519:	90                   	nop
4a151a:	90                   	nop
4a151b:	90                   	nop
4a151c:	90                   	nop
4a151d:	90                   	nop
4a151e:	90                   	nop
4a151f:	90                   	nop
4a1520:	56                   	push   %esi
4a1521:	8b 74 24 0c          	mov    0xc(%esp),%esi
4a1525:	85 f6                	test   %esi,%esi
4a1527:	7f 04                	jg     0x4a152d
4a1529:	33 c0                	xor    %eax,%eax
4a152b:	5e                   	pop    %esi
4a152c:	c3                   	ret
4a152d:	53                   	push   %ebx
4a152e:	8d 46 01             	lea    0x1(%esi),%eax
4a1531:	57                   	push   %edi
4a1532:	50                   	push   %eax
4a1533:	e8 08 f8 ff ff       	call   0x4a0d40
4a1538:	8b ce                	mov    %esi,%ecx
4a153a:	8b d0                	mov    %eax,%edx
4a153c:	8b d9                	mov    %ecx,%ebx
4a153e:	b8 20 20 20 20       	mov    $0x20202020,%eax
4a1543:	8b fa                	mov    %edx,%edi
4a1545:	83 c4 04             	add    $0x4,%esp
4a1548:	c1 e9 02             	shr    $0x2,%ecx
4a154b:	f3 ab                	rep stos %eax,%es:(%edi)
4a154d:	8b cb                	mov    %ebx,%ecx
4a154f:	83 e1 03             	and    $0x3,%ecx
4a1552:	f3 aa                	rep stos %al,%es:(%edi)
4a1554:	5f                   	pop    %edi
4a1555:	c6 04 32 00          	movb   $0x0,(%edx,%esi,1)
4a1559:	5b                   	pop    %ebx
4a155a:	8b c2                	mov    %edx,%eax
4a155c:	5e                   	pop    %esi
4a155d:	c3                   	ret
4a155e:	90                   	nop
4a155f:	90                   	nop
4a1560:	8b 44 24 08          	mov    0x8(%esp),%eax
4a1564:	50                   	push   %eax
4a1565:	ff 15 40 a1 50 00    	call   *0x50a140
4a156b:	83 c4 04             	add    $0x4,%esp
4a156e:	c3                   	ret
4a156f:	90                   	nop
4a1570:	83 ec 1c             	sub    $0x1c,%esp
4a1573:	8d 44 24 00          	lea    0x0(%esp),%eax
4a1577:	53                   	push   %ebx
4a1578:	55                   	push   %ebp
4a1579:	8b 2d 18 33 4b 00    	mov    0x4b3318,%ebp
4a157f:	56                   	push   %esi
4a1580:	57                   	push   %edi
4a1581:	6a 00                	push   $0x0
4a1583:	6a 00                	push   $0x0
4a1585:	6a 00                	push   $0x0
4a1587:	6a 00                	push   $0x0
4a1589:	50                   	push   %eax
4a158a:	ff d5                	call   *%ebp
4a158c:	85 c0                	test   %eax,%eax
4a158e:	74 47                	je     0x4a15d7
4a1590:	8b 35 1c 33 4b 00    	mov    0x4b331c,%esi
4a1596:	8b 3d c4 32 4b 00    	mov    0x4b32c4,%edi
4a159c:	8b 1d 10 33 4b 00    	mov    0x4b3310,%ebx
4a15a2:	83 7c 24 14 12       	cmpl   $0x12,0x14(%esp)
4a15a7:	74 2e                	je     0x4a15d7
4a15a9:	6a 00                	push   $0x0
4a15ab:	6a 00                	push   $0x0
4a15ad:	8d 4c 24 18          	lea    0x18(%esp),%ecx
4a15b1:	6a 00                	push   $0x0
4a15b3:	51                   	push   %ecx
4a15b4:	ff d6                	call   *%esi
4a15b6:	8d 54 24 10          	lea    0x10(%esp),%edx
4a15ba:	52                   	push   %edx
4a15bb:	ff d7                	call   *%edi
4a15bd:	8d 44 24 10          	lea    0x10(%esp),%eax
4a15c1:	50                   	push   %eax
4a15c2:	ff d3                	call   *%ebx
4a15c4:	6a 00                	push   $0x0
4a15c6:	6a 00                	push   $0x0
4a15c8:	6a 00                	push   $0x0
4a15ca:	8d 4c 24 1c          	lea    0x1c(%esp),%ecx
4a15ce:	6a 00                	push   $0x0
4a15d0:	51                   	push   %ecx
4a15d1:	ff d5                	call   *%ebp
4a15d3:	85 c0                	test   %eax,%eax
4a15d5:	75 cb                	jne    0x4a15a2
4a15d7:	5f                   	pop    %edi
4a15d8:	5e                   	pop    %esi
4a15d9:	5d                   	pop    %ebp
4a15da:	5b                   	pop    %ebx
4a15db:	83 c4 1c             	add    $0x1c,%esp
4a15de:	c3                   	ret
4a15df:	90                   	nop
4a15e0:	55                   	push   %ebp
4a15e1:	8b ec                	mov    %esp,%ebp
4a15e3:	dd 45 0c             	fldl   0xc(%ebp)
4a15e6:	d9 fe                	fsin
4a15e8:	dd 5d 0c             	fstpl  0xc(%ebp)
4a15eb:	8b 45 0c             	mov    0xc(%ebp),%eax
4a15ee:	8b 55 10             	mov    0x10(%ebp),%edx
4a15f1:	5d                   	pop    %ebp
4a15f2:	c3                   	ret
4a15f3:	90                   	nop
4a15f4:	90                   	nop
4a15f5:	90                   	nop
4a15f6:	90                   	nop
4a15f7:	90                   	nop
4a15f8:	90                   	nop
4a15f9:	90                   	nop
4a15fa:	90                   	nop
4a15fb:	90                   	nop
4a15fc:	90                   	nop
4a15fd:	90                   	nop
4a15fe:	90                   	nop
4a15ff:	90                   	nop
4a1600:	55                   	push   %ebp
4a1601:	8b ec                	mov    %esp,%ebp
4a1603:	dd 45 0c             	fldl   0xc(%ebp)
4a1606:	dd 45 18             	fldl   0x18(%ebp)
4a1609:	e8 a2 6c 00 00       	call   0x4a82b0
4a160e:	dd 5d 0c             	fstpl  0xc(%ebp)
4a1611:	8b 45 0c             	mov    0xc(%ebp),%eax
4a1614:	8b 55 10             	mov    0x10(%ebp),%edx
4a1617:	5d                   	pop    %ebp
4a1618:	c3                   	ret
4a1619:	90                   	nop
4a161a:	90                   	nop
4a161b:	90                   	nop
4a161c:	90                   	nop
4a161d:	90                   	nop
4a161e:	90                   	nop
4a161f:	90                   	nop
4a1620:	55                   	push   %ebp
4a1621:	8b ec                	mov    %esp,%ebp
4a1623:	dd 45 0c             	fldl   0xc(%ebp)
4a1626:	d9 fa                	fsqrt
4a1628:	dd 5d 0c             	fstpl  0xc(%ebp)
4a162b:	8b 45 0c             	mov    0xc(%ebp),%eax
4a162e:	8b 55 10             	mov    0x10(%ebp),%edx
4a1631:	5d                   	pop    %ebp
4a1632:	c3                   	ret
4a1633:	90                   	nop
4a1634:	90                   	nop
4a1635:	90                   	nop
4a1636:	90                   	nop
4a1637:	90                   	nop
4a1638:	90                   	nop
4a1639:	90                   	nop
4a163a:	90                   	nop
4a163b:	90                   	nop
4a163c:	90                   	nop
4a163d:	90                   	nop
4a163e:	90                   	nop
4a163f:	90                   	nop
4a1640:	55                   	push   %ebp
4a1641:	8b ec                	mov    %esp,%ebp
4a1643:	dd 45 0c             	fldl   0xc(%ebp)
4a1646:	d9 e8                	fld1
4a1648:	d9 f3                	fpatan
4a164a:	dd 5d 0c             	fstpl  0xc(%ebp)
4a164d:	8b 45 0c             	mov    0xc(%ebp),%eax
4a1650:	8b 55 10             	mov    0x10(%ebp),%edx
4a1653:	5d                   	pop    %ebp
4a1654:	c3                   	ret
4a1655:	90                   	nop
4a1656:	90                   	nop
4a1657:	90                   	nop
4a1658:	90                   	nop
4a1659:	90                   	nop
4a165a:	90                   	nop
4a165b:	90                   	nop
4a165c:	90                   	nop
4a165d:	90                   	nop
4a165e:	90                   	nop
4a165f:	90                   	nop
4a1660:	55                   	push   %ebp
4a1661:	8b ec                	mov    %esp,%ebp
4a1663:	dd 45 0c             	fldl   0xc(%ebp)
4a1666:	d9 ff                	fcos
4a1668:	dd 5d 0c             	fstpl  0xc(%ebp)
4a166b:	8b 45 0c             	mov    0xc(%ebp),%eax
4a166e:	8b 55 10             	mov    0x10(%ebp),%edx
4a1671:	5d                   	pop    %ebp
4a1672:	c3                   	ret
4a1673:	90                   	nop
4a1674:	90                   	nop
4a1675:	90                   	nop
4a1676:	90                   	nop
4a1677:	90                   	nop
4a1678:	90                   	nop
4a1679:	90                   	nop
4a167a:	90                   	nop
4a167b:	90                   	nop
4a167c:	90                   	nop
4a167d:	90                   	nop
4a167e:	90                   	nop
4a167f:	90                   	nop
4a1680:	55                   	push   %ebp
4a1681:	8b ec                	mov    %esp,%ebp
4a1683:	dd 45 0c             	fldl   0xc(%ebp)
4a1686:	d9 e1                	fabs
4a1688:	dd 5d 0c             	fstpl  0xc(%ebp)
4a168b:	8b 45 0c             	mov    0xc(%ebp),%eax
4a168e:	8b 55 10             	mov    0x10(%ebp),%edx
4a1691:	5d                   	pop    %ebp
4a1692:	c3                   	ret
4a1693:	90                   	nop
4a1694:	90                   	nop
4a1695:	90                   	nop
4a1696:	90                   	nop
4a1697:	90                   	nop
4a1698:	90                   	nop
4a1699:	90                   	nop
4a169a:	90                   	nop
4a169b:	90                   	nop
4a169c:	90                   	nop
4a169d:	90                   	nop
4a169e:	90                   	nop
4a169f:	90                   	nop
4a16a0:	53                   	push   %ebx
4a16a1:	8a 5c 24 0c          	mov    0xc(%esp),%bl
4a16a5:	84 db                	test   %bl,%bl
4a16a7:	75 04                	jne    0x4a16ad
4a16a9:	33 c0                	xor    %eax,%eax
4a16ab:	5b                   	pop    %ebx
4a16ac:	c3                   	ret
4a16ad:	6a 02                	push   $0x2
4a16af:	e8 8c f6 ff ff       	call   0x4a0d40
4a16b4:	83 c4 04             	add    $0x4,%esp
4a16b7:	88 18                	mov    %bl,(%eax)
4a16b9:	c6 40 01 00          	movb   $0x0,0x1(%eax)
4a16bd:	5b                   	pop    %ebx
4a16be:	c3                   	ret
4a16bf:	90                   	nop
4a16c0:	56                   	push   %esi
4a16c1:	8b 74 24 0c          	mov    0xc(%esp),%esi
4a16c5:	85 f6                	test   %esi,%esi
4a16c7:	57                   	push   %edi
4a16c8:	75 05                	jne    0x4a16cf
4a16ca:	5f                   	pop    %edi
4a16cb:	33 c0                	xor    %eax,%eax
4a16cd:	5e                   	pop    %esi
4a16ce:	c3                   	ret
4a16cf:	8b 7c 24 1c          	mov    0x1c(%esp),%edi
4a16d3:	85 ff                	test   %edi,%edi
4a16d5:	7f 05                	jg     0x4a16dc
4a16d7:	5f                   	pop    %edi
4a16d8:	33 c0                	xor    %eax,%eax
4a16da:	5e                   	pop    %esi
4a16db:	c3                   	ret
4a16dc:	8d 47 08             	lea    0x8(%edi),%eax
4a16df:	50                   	push   %eax
4a16e0:	e8 5b f6 ff ff       	call   0x4a0d40
4a16e5:	8b cf                	mov    %edi,%ecx
4a16e7:	89 78 04             	mov    %edi,0x4(%eax)
4a16ea:	8b d1                	mov    %ecx,%edx
4a16ec:	8d 78 08             	lea    0x8(%eax),%edi
4a16ef:	c1 e9 02             	shr    $0x2,%ecx
4a16f2:	c7 00 01 00 00 00    	movl   $0x1,(%eax)
4a16f8:	83 c4 04             	add    $0x4,%esp
4a16fb:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
4a16fd:	8b ca                	mov    %edx,%ecx
4a16ff:	83 e1 03             	and    $0x3,%ecx
4a1702:	f3 a4                	rep movsb %ds:(%esi),%es:(%edi)
4a1704:	5f                   	pop    %edi
4a1705:	5e                   	pop    %esi
4a1706:	c3                   	ret
4a1707:	90                   	nop
4a1708:	90                   	nop
4a1709:	90                   	nop
4a170a:	90                   	nop
4a170b:	90                   	nop
4a170c:	90                   	nop
4a170d:	90                   	nop
4a170e:	90                   	nop
4a170f:	90                   	nop
4a1710:	56                   	push   %esi
4a1711:	8b 74 24 08          	mov    0x8(%esp),%esi
4a1715:	8b 46 08             	mov    0x8(%esi),%eax
4a1718:	3d 01 01 00 80       	cmp    $0x80000101,%eax
4a171d:	77 68                	ja     0x4a1787
4a171f:	74 58                	je     0x4a1779
4a1721:	05 fe ff ff 7f       	add    $0x7ffffffe,%eax
4a1726:	83 f8 04             	cmp    $0x4,%eax
4a1729:	0f 87 a7 00 00 00    	ja     0x4a17d6
4a172f:	ff 24 85 f8 17 4a 00 	jmp    *0x4a17f8(,%eax,4)
4a1736:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
4a173a:	8b c6                	mov    %esi,%eax
4a173c:	5e                   	pop    %esi
4a173d:	c7 01 08 00 00 00    	movl   $0x8,(%ecx)
4a1743:	c3                   	ret
4a1744:	8b 54 24 0c          	mov    0xc(%esp),%edx
4a1748:	8b c6                	mov    %esi,%eax
4a174a:	5e                   	pop    %esi