4943b1:	50                   	push   %eax
4943b2:	56                   	push   %esi
4943b3:	e8 68 72 fd ff       	call   0x46b620
4943b8:	83 c4 0c             	add    $0xc,%esp
4943bb:	85 db                	test   %ebx,%ebx
4943bd:	74 1d                	je     0x4943dc
4943bf:	8d 04 33             	lea    (%ebx,%esi,1),%eax
4943c2:	8d 48 ff             	lea    -0x1(%eax),%ecx
4943c5:	8b f0                	mov    %eax,%esi
4943c7:	80 39 00             	cmpb   $0x0,(%ecx)
4943ca:	75 12                	jne    0x4943de
4943cc:	33 c0                	xor    %eax,%eax
4943ce:	8b f1                	mov    %ecx,%esi
4943d0:	8b 55 e8             	mov    -0x18(%ebp),%edx
4943d3:	2b 75 dc             	sub    -0x24(%ebp),%esi
4943d6:	89 02                	mov    %eax,(%edx)
4943d8:	8b c6                	mov    %esi,%eax
4943da:	eb 61                	jmp    0x49443d
4943dc:	03 f3                	add    %ebx,%esi
4943de:	83 c7 02             	add    $0x2,%edi
4943e1:	85 db                	test   %ebx,%ebx
4943e3:	74 03                	je     0x4943e8
4943e5:	89 7d f0             	mov    %edi,-0x10(%ebp)
4943e8:	8b 45 10             	mov    0x10(%ebp),%eax
4943eb:	8b 55 e4             	mov    -0x1c(%ebp),%edx
4943ee:	2b c3                	sub    %ebx,%eax
4943f0:	8b 5d e0             	mov    -0x20(%ebp),%ebx
4943f3:	89 45 10             	mov    %eax,0x10(%ebp)
4943f6:	eb 84                	jmp    0x49437c
4943f8:	8b 45 f0             	mov    -0x10(%ebp),%eax
4943fb:	eb d3                	jmp    0x4943d0
4943fd:	8b 55 e8             	mov    -0x18(%ebp),%edx
494400:	83 c8 ff             	or     $0xffffffff,%eax
494403:	8b 4d f0             	mov    -0x10(%ebp),%ecx
494406:	89 0a                	mov    %ecx,(%edx)
494408:	eb 33                	jmp    0x49443d
49440a:	33 f6                	xor    %esi,%esi
49440c:	52                   	push   %edx
49440d:	eb 13                	jmp    0x494422
49440f:	85 c0                	test   %eax,%eax
494411:	74 07                	je     0x49441a
494413:	80 7c 05 f3 00       	cmpb   $0x0,-0xd(%ebp,%eax,1)
494418:	74 20                	je     0x49443a
49441a:	ff 75 e4             	push   -0x1c(%ebp)
49441d:	03 f0                	add    %eax,%esi
49441f:	83 c7 02             	add    $0x2,%edi
494422:	0f b7 07             	movzwl (%edi),%eax
494425:	53                   	push   %ebx
494426:	50                   	push   %eax
494427:	8d 45 f4             	lea    -0xc(%ebp),%eax
49442a:	50                   	push   %eax
49442b:	e8 de 12 00 00       	call   0x49570e
494430:	83 c4 10             	add    $0x10,%esp
494433:	83 f8 ff             	cmp    $0xffffffff,%eax
494436:	75 d7                	jne    0x49440f
494438:	eb 03                	jmp    0x49443d
49443a:	48                   	dec    %eax
49443b:	03 c6                	add    %esi,%eax
49443d:	8b 4d fc             	mov    -0x4(%ebp),%ecx
494440:	5f                   	pop    %edi
494441:	5e                   	pop    %esi
494442:	33 cd                	xor    %ebp,%ecx
494444:	5b                   	pop    %ebx
494445:	e8 80 55 fd ff       	call   0x4699ca
49444a:	c9                   	leave
49444b:	c3                   	ret
49444c:	8b ff                	mov    %edi,%edi
49444e:	55                   	push   %ebp
49444f:	8b ec                	mov    %esp,%ebp
494451:	51                   	push   %ecx
494452:	8b 4d 08             	mov    0x8(%ebp),%ecx
494455:	53                   	push   %ebx
494456:	8b 5d 10             	mov    0x10(%ebp),%ebx
494459:	56                   	push   %esi
49445a:	8b 75 14             	mov    0x14(%ebp),%esi
49445d:	57                   	push   %edi
49445e:	85 f6                	test   %esi,%esi
494460:	75 1f                	jne    0x494481
494462:	85 c9                	test   %ecx,%ecx
494464:	75 1f                	jne    0x494485
494466:	39 75 0c             	cmp    %esi,0xc(%ebp)
494469:	74 28                	je     0x494493
49446b:	e8 c5 5a fe ff       	call   0x479f35
494470:	6a 16                	push   $0x16
494472:	5e                   	pop    %esi
494473:	89 30                	mov    %esi,(%eax)
494475:	e8 a7 51 fe ff       	call   0x479621
49447a:	8b c6                	mov    %esi,%eax
49447c:	5f                   	pop    %edi
49447d:	5e                   	pop    %esi
49447e:	5b                   	pop    %ebx
49447f:	c9                   	leave
494480:	c3                   	ret
494481:	85 c9                	test   %ecx,%ecx
494483:	74 e6                	je     0x49446b
494485:	8b 45 0c             	mov    0xc(%ebp),%eax
494488:	85 c0                	test   %eax,%eax
49448a:	74 df                	je     0x49446b
49448c:	85 f6                	test   %esi,%esi
49448e:	75 07                	jne    0x494497
494490:	c6 01 00             	movb   $0x0,(%ecx)
494493:	33 c0                	xor    %eax,%eax
494495:	eb e5                	jmp    0x49447c
494497:	85 db                	test   %ebx,%ebx
494499:	75 04                	jne    0x49449f
49449b:	88 19                	mov    %bl,(%ecx)
49449d:	eb cc                	jmp    0x49446b
49449f:	2b d9                	sub    %ecx,%ebx
4944a1:	89 75 fc             	mov    %esi,-0x4(%ebp)
4944a4:	8b d1                	mov    %ecx,%edx
4944a6:	8b f8                	mov    %eax,%edi
4944a8:	83 fe ff             	cmp    $0xffffffff,%esi
4944ab:	75 11                	jne    0x4944be
4944ad:	8a 04 13             	mov    (%ebx,%edx,1),%al
4944b0:	88 02                	mov    %al,(%edx)
4944b2:	42                   	inc    %edx
4944b3:	84 c0                	test   %al,%al
4944b5:	74 dc                	je     0x494493
4944b7:	83 ef 01             	sub    $0x1,%edi
4944ba:	75 f1                	jne    0x4944ad
4944bc:	eb 20                	jmp    0x4944de
4944be:	8a 04 13             	mov    (%ebx,%edx,1),%al
4944c1:	88 02                	mov    %al,(%edx)
4944c3:	42                   	inc    %edx
4944c4:	84 c0                	test   %al,%al
4944c6:	74 cb                	je     0x494493
4944c8:	8b 45 fc             	mov    -0x4(%ebp),%eax
4944cb:	83 ef 01             	sub    $0x1,%edi
4944ce:	74 08                	je     0x4944d8
4944d0:	83 e8 01             	sub    $0x1,%eax
4944d3:	89 45 fc             	mov    %eax,-0x4(%ebp)
4944d6:	75 e6                	jne    0x4944be
4944d8:	85 c0                	test   %eax,%eax
4944da:	75 02                	jne    0x4944de
4944dc:	88 02                	mov    %al,(%edx)
4944de:	85 ff                	test   %edi,%edi
4944e0:	75 b1                	jne    0x494493
4944e2:	83 fe ff             	cmp    $0xffffffff,%esi
4944e5:	75 0d                	jne    0x4944f4
4944e7:	8b 45 0c             	mov    0xc(%ebp),%eax
4944ea:	6a 50                	push   $0x50
4944ec:	c6 44 01 ff 00       	movb   $0x0,-0x1(%ecx,%eax,1)
4944f1:	58                   	pop    %eax
4944f2:	eb 88                	jmp    0x49447c
4944f4:	c6 01 00             	movb   $0x0,(%ecx)
4944f7:	e8 39 5a fe ff       	call   0x479f35
4944fc:	6a 22                	push   $0x22
4944fe:	e9 6f ff ff ff       	jmp    0x494472
494503:	8b ff                	mov    %edi,%edi
494505:	55                   	push   %ebp
494506:	8b ec                	mov    %esp,%ebp
494508:	5d                   	pop    %ebp
494509:	e9 3e ff ff ff       	jmp    0x49444c
49450e:	8b ff                	mov    %edi,%edi
494510:	55                   	push   %ebp
494511:	8b ec                	mov    %esp,%ebp
494513:	83 ec 20             	sub    $0x20,%esp
494516:	83 3d ec 8b 4c 00 00 	cmpl   $0x0,0x4c8bec
49451d:	56                   	push   %esi
49451e:	57                   	push   %edi
49451f:	74 10                	je     0x494531
494521:	ff 35 30 9f 4c 00    	push   0x4c9f30
494527:	ff 15 98 e0 49 00    	call   *0x49e098
49452d:	8b f8                	mov    %eax,%edi
49452f:	eb 05                	jmp    0x494536
494531:	bf 80 2e 48 00       	mov    $0x482e80,%edi
494536:	8b 45 14             	mov    0x14(%ebp),%eax
494539:	83 f8 1a             	cmp    $0x1a,%eax
49453c:	0f 8f de 00 00 00    	jg     0x494620
494542:	0f 84 cc 00 00 00    	je     0x494614
494548:	83 f8 0e             	cmp    $0xe,%eax
49454b:	7f 65                	jg     0x4945b2
49454d:	74 50                	je     0x49459f
49454f:	6a 02                	push   $0x2
494551:	59                   	pop    %ecx
494552:	2b c1                	sub    %ecx,%eax
494554:	74 3a                	je     0x494590
494556:	83 e8 01             	sub    $0x1,%eax
494559:	74 29                	je     0x494584
49455b:	83 e8 05             	sub    $0x5,%eax
49455e:	74 15                	je     0x494575
494560:	83 e8 01             	sub    $0x1,%eax
494563:	0f 85 95 01 00 00    	jne    0x4946fe
494569:	c7 45 e4 1c 40 4a 00 	movl   $0x4a401c,-0x1c(%ebp)
494570:	e9 01 01 00 00       	jmp    0x494676
494575:	89 4d e0             	mov    %ecx,-0x20(%ebp)
494578:	c7 45 e4 1c 40 4a 00 	movl   $0x4a401c,-0x1c(%ebp)
49457f:	e9 3f 01 00 00       	jmp    0x4946c3
494584:	c7 45 e4 18 40 4a 00 	movl   $0x4a4018,-0x1c(%ebp)
49458b:	e9 e6 00 00 00       	jmp    0x494676
494590:	89 4d e0             	mov    %ecx,-0x20(%ebp)
494593:	c7 45 e4 18 40 4a 00 	movl   $0x4a4018,-0x1c(%ebp)
49459a:	e9 24 01 00 00       	jmp    0x4946c3
49459f:	c7 45 e0 03 00 00 00 	movl   $0x3,-0x20(%ebp)
4945a6:	c7 45 e4 10 40 4a 00 	movl   $0x4a4010,-0x1c(%ebp)
4945ad:	e9 11 01 00 00       	jmp    0x4946c3
4945b2:	83 e8 0f             	sub    $0xf,%eax
4945b5:	74 54                	je     0x49460b
4945b7:	83 e8 09             	sub    $0x9,%eax
4945ba:	74 43                	je     0x4945ff
4945bc:	83 e8 01             	sub    $0x1,%eax
4945bf:	0f 85 39 01 00 00    	jne    0x4946fe
4945c5:	c7 45 e4 14 40 4a 00 	movl   $0x4a4014,-0x1c(%ebp)
4945cc:	8b 45 08             	mov    0x8(%ebp),%eax
4945cf:	8b cf                	mov    %edi,%ecx
4945d1:	8b 75 10             	mov    0x10(%ebp),%esi
4945d4:	c7 45 e0 04 00 00 00 	movl   $0x4,-0x20(%ebp)
4945db:	dd 00                	fldl   (%eax)
4945dd:	8b 45 0c             	mov    0xc(%ebp),%eax
4945e0:	dd 5d e8             	fstpl  -0x18(%ebp)
4945e3:	dd 00                	fldl   (%eax)
4945e5:	8d 45 e0             	lea    -0x20(%ebp),%eax
4945e8:	dd 5d f0             	fstpl  -0x10(%ebp)
4945eb:	dd 06                	fldl   (%esi)
4945ed:	50                   	push   %eax
4945ee:	dd 5d f8             	fstpl  -0x8(%ebp)
4945f1:	ff 15 d4 e2 49 00    	call   *0x49e2d4
4945f7:	ff d7                	call   *%edi
4945f9:	59                   	pop    %ecx
4945fa:	e9 fa 00 00 00       	jmp    0x4946f9
4945ff:	c7 45 e0 03 00 00 00 	movl   $0x3,-0x20(%ebp)
494606:	e9 b1 00 00 00       	jmp    0x4946bc
49460b:	c7 45 e4 10 40 4a 00 	movl   $0x4a4010,-0x1c(%ebp)
494612:	eb b8                	jmp    0x4945cc
494614:	d9 e8                	fld1
494616:	8b 45 10             	mov    0x10(%ebp),%eax
494619:	dd 18                	fstpl  (%eax)
49461b:	e9 de 00 00 00       	jmp    0x4946fe
494620:	83 e8 1b             	sub    $0x1b,%eax
494623:	0f 84 8c 00 00 00    	je     0x4946b5
494629:	83 e8 01             	sub    $0x1,%eax
49462c:	74 41                	je     0x49466f
49462e:	83 e8 15             	sub    $0x15,%eax
494631:	74 33                	je     0x494666
494633:	83 e8 09             	sub    $0x9,%eax
494636:	74 25                	je     0x49465d
494638:	83 e8 03             	sub    $0x3,%eax
49463b:	74 17                	je     0x494654
49463d:	2d ab 03 00 00       	sub    $0x3ab,%eax
494642:	74 09                	je     0x49464d
494644:	83 e8 01             	sub    $0x1,%eax
494647:	0f 85 b1 00 00 00    	jne    0x4946fe
49464d:	8b 45 08             	mov    0x8(%ebp),%eax
494650:	dd 00                	fldl   (%eax)
494652:	eb c2                	jmp    0x494616
494654:	c7 45 e4 3c 40 4a 00 	movl   $0x4a403c,-0x1c(%ebp)
49465b:	eb 19                	jmp    0x494676
49465d:	c7 45 e4 44 40 4a 00 	movl   $0x4a4044,-0x1c(%ebp)
494664:	eb 10                	jmp    0x494676
494666:	c7 45 e4 5c 40 4a 00 	movl   $0x4a405c,-0x1c(%ebp)
49466d:	eb 07                	jmp    0x494676
49466f:	c7 45 e4 14 40 4a 00 	movl   $0x4a4014,-0x1c(%ebp)
494676:	8b 45 08             	mov    0x8(%ebp),%eax
494679:	8b cf                	mov    %edi,%ecx
49467b:	8b 75 10             	mov    0x10(%ebp),%esi
49467e:	c7 45 e0 01 00 00 00 	movl   $0x1,-0x20(%ebp)
494685:	dd 00                	fldl   (%eax)
494687:	8b 45 0c             	mov    0xc(%ebp),%eax
49468a:	dd 5d e8             	fstpl  -0x18(%ebp)
49468d:	dd 00                	fldl   (%eax)
49468f:	8d 45 e0             	lea    -0x20(%ebp),%eax
494692:	dd 5d f0             	fstpl  -0x10(%ebp)
494695:	dd 06                	fldl   (%esi)
494697:	50                   	push   %eax
494698:	dd 5d f8             	fstpl  -0x8(%ebp)
49469b:	ff 15 d4 e2 49 00    	call   *0x49e2d4
4946a1:	ff d7                	call   *%edi
4946a3:	59                   	pop    %ecx
4946a4:	85 c0                	test   %eax,%eax
4946a6:	75 51                	jne    0x4946f9
4946a8:	e8 88 58 fe ff       	call   0x479f35
4946ad:	c7 00 21 00 00 00    	movl   $0x21,(%eax)
4946b3:	eb 44                	jmp    0x4946f9
4946b5:	c7 45 e0 02 00 00 00 	movl   $0x2,-0x20(%ebp)
4946bc:	c7 45 e4 14 40 4a 00 	movl   $0x4a4014,-0x1c(%ebp)
4946c3:	8b 45 08             	mov    0x8(%ebp),%eax
4946c6:	8b cf                	mov    %edi,%ecx
4946c8:	8b 75 10             	mov    0x10(%ebp),%esi
4946cb:	dd 00                	fldl   (%eax)
4946cd:	8b 45 0c             	mov    0xc(%ebp),%eax
4946d0:	dd 5d e8             	fstpl  -0x18(%ebp)
4946d3:	dd 00                	fldl   (%eax)
4946d5:	8d 45 e0             	lea    -0x20(%ebp),%eax
4946d8:	dd 5d f0             	fstpl  -0x10(%ebp)
4946db:	dd 06                	fldl   (%esi)
4946dd:	50                   	push   %eax
4946de:	dd 5d f8             	fstpl  -0x8(%ebp)
4946e1:	ff 15 d4 e2 49 00    	call   *0x49e2d4
4946e7:	ff d7                	call   *%edi
4946e9:	59                   	pop    %ecx
4946ea:	85 c0                	test   %eax,%eax
4946ec:	75 0b                	jne    0x4946f9
4946ee:	e8 42 58 fe ff       	call   0x479f35
4946f3:	c7 00 22 00 00 00    	movl   $0x22,(%eax)
4946f9:	dd 45 f8             	fldl   -0x8(%ebp)
4946fc:	dd 1e                	fstpl  (%esi)
4946fe:	5f                   	pop    %edi
4946ff:	5e                   	pop    %esi
494700:	c9                   	leave
494701:	c3                   	ret
494702:	8b ff                	mov    %edi,%edi
494704:	53                   	push   %ebx
494705:	8b dc                	mov    %esp,%ebx
494707:	51                   	push   %ecx
494708:	51                   	push   %ecx
494709:	83 e4 f0             	and    $0xfffffff0,%esp
49470c:	83 c4 04             	add    $0x4,%esp
49470f:	55                   	push   %ebp
494710:	8b 6b 04             	mov    0x4(%ebx),%ebp
494713:	89 6c 24 04          	mov    %ebp,0x4(%esp)
494717:	8b ec                	mov    %esp,%ebp
494719:	81 ec 88 00 00 00    	sub    $0x88,%esp
49471f:	a1 14 40 4c 00       	mov    0x4c4014,%eax
494724:	33 c5                	xor    %ebp,%eax
494726:	89 45 fc             	mov    %eax,-0x4(%ebp)
494729:	8b 43 10             	mov    0x10(%ebx),%eax
49472c:	56                   	push   %esi
49472d:	8b 73 0c             	mov    0xc(%ebx),%esi
494730:	57                   	push   %edi
494731:	0f b7 08             	movzwl (%eax),%ecx
494734:	89 8d 7c ff ff ff    	mov    %ecx,-0x84(%ebp)
49473a:	8b 06                	mov    (%esi),%eax
49473c:	83 e8 01             	sub    $0x1,%eax
49473f:	74 2f                	je     0x494770
494741:	83 e8 01             	sub    $0x1,%eax
494744:	74 26                	je     0x49476c
494746:	83 e8 01             	sub    $0x1,%eax
494749:	74 1d                	je     0x494768
49474b:	83 e8 01             	sub    $0x1,%eax
49474e:	74 14                	je     0x494764
494750:	83 e8 01             	sub    $0x1,%eax
494753:	74 1b                	je     0x494770
494755:	48                   	dec    %eax
494756:	83 e8 01             	sub    $0x1,%eax
494759:	74 71                	je     0x4947cc
49475b:	83 e8 01             	sub    $0x1,%eax
49475e:	75 6c                	jne    0x4947cc
494760:	6a 10                	push   $0x10
494762:	eb 0e                	jmp    0x494772
494764:	6a 12                	push   $0x12
494766:	eb 0a                	jmp    0x494772
494768:	6a 11                	push   $0x11
49476a:	eb 06                	jmp    0x494772
49476c:	6a 04                	push   $0x4
49476e:	eb 02                	jmp    0x494772
494770:	6a 08                	push   $0x8
494772:	5f                   	pop    %edi
494773:	51                   	push   %ecx
494774:	8d 46 18             	lea    0x18(%esi),%eax
494777:	50                   	push   %eax