4804c7:	00 cc                	add    %cl,%ah
4804c9:	cc                   	int3
4804ca:	cc                   	int3
4804cb:	cc                   	int3
4804cc:	cc                   	int3
4804cd:	cc                   	int3
4804ce:	cc                   	int3
4804cf:	cc                   	int3
4804d0:	8b ff                	mov    %edi,%edi
4804d2:	55                   	push   %ebp
4804d3:	8b ec                	mov    %esp,%ebp
4804d5:	8b 41 20             	mov    0x20(%ecx),%eax
4804d8:	56                   	push   %esi
4804d9:	57                   	push   %edi
4804da:	ff 75 08             	push   0x8(%ebp)
4804dd:	8b 78 20             	mov    0x20(%eax),%edi
4804e0:	8b 17                	mov    (%edi),%edx
4804e2:	8b 72 70             	mov    0x70(%edx),%esi
4804e5:	8b ce                	mov    %esi,%ecx
4804e7:	ff 15 2c 81 4a 00    	call   *0x4a812c
4804ed:	8b cf                	mov    %edi,%ecx
4804ef:	ff d6                	call   *%esi
4804f1:	8b 45 08             	mov    0x8(%ebp),%eax
4804f4:	5f                   	pop    %edi
4804f5:	5e                   	pop    %esi
4804f6:	5d                   	pop    %ebp
4804f7:	c2 04 00             	ret    $0x4
4804fa:	cc                   	int3
4804fb:	cc                   	int3
4804fc:	cc                   	int3
4804fd:	cc                   	int3
4804fe:	cc                   	int3
4804ff:	cc                   	int3
480500:	6a 14                	push   $0x14
480502:	b8 c0 65 49 00       	mov    $0x4965c0,%eax
480507:	e8 c7 ff 00 00       	call   0x4904d3
48050c:	8b d9                	mov    %ecx,%ebx
48050e:	6a 11                	push   $0x11
480510:	ff 15 8c 7d 4a 00    	call   *0x4a7d8c
480516:	66 85 c0             	test   %ax,%ax
480519:	79 41                	jns    0x48055c
48051b:	83 7d 08 20          	cmpl   $0x20,0x8(%ebp)
48051f:	75 3b                	jne    0x48055c
480521:	8b cb                	mov    %ebx,%ecx
480523:	e8 57 02 00 00       	call   0x48077f
480528:	33 c0                	xor    %eax,%eax
48052a:	c7 45 e0 6c 66 40 00 	movl   $0x40666c,-0x20(%ebp)
480531:	89 45 e4             	mov    %eax,-0x1c(%ebp)
480534:	89 45 e8             	mov    %eax,-0x18(%ebp)
480537:	89 45 fc             	mov    %eax,-0x4(%ebp)
48053a:	8d 4d e0             	lea    -0x20(%ebp),%ecx
48053d:	8b 7b 04             	mov    0x4(%ebx),%edi
480540:	51                   	push   %ecx
480541:	8b 07                	mov    (%edi),%eax
480543:	ff 77 04             	push   0x4(%edi)
480546:	8b 70 74             	mov    0x74(%eax),%esi
480549:	8b ce                	mov    %esi,%ecx
48054b:	ff 15 2c 81 4a 00    	call   *0x4a812c
480551:	8b cf                	mov    %edi,%ecx
480553:	ff d6                	call   *%esi
480555:	b0 01                	mov    $0x1,%al
480557:	e9 9d 00 00 00       	jmp    0x4805f9
48055c:	83 7d 08 09          	cmpl   $0x9,0x8(%ebp)
480560:	0f 85 91 00 00 00    	jne    0x4805f7
480566:	8b 33                	mov    (%ebx),%esi
480568:	68 a0 00 00 00       	push   $0xa0
48056d:	ff 15 1c 7d 4a 00    	call   *0x4a7d1c
480573:	8b 4e 70             	mov    0x70(%esi),%ecx
480576:	66 85 c0             	test   %ax,%ax
480579:	0f 95 c0             	setne  %al
48057c:	0f b6 c0             	movzbl %al,%eax
48057f:	50                   	push   %eax
480580:	8d 45 ec             	lea    -0x14(%ebp),%eax
480583:	50                   	push   %eax
480584:	ff 15 2c 81 4a 00    	call   *0x4a812c
48058a:	8b cb                	mov    %ebx,%ecx
48058c:	ff 56 70             	call   *0x70(%esi)
48058f:	8b 7b 20             	mov    0x20(%ebx),%edi
480592:	8b 07                	mov    (%edi),%eax
480594:	8b 70 38             	mov    0x38(%eax),%esi
480597:	8b ce                	mov    %esi,%ecx
480599:	ff 15 2c 81 4a 00    	call   *0x4a812c
48059f:	8b cf                	mov    %edi,%ecx
4805a1:	ff d6                	call   *%esi
4805a3:	8b f8                	mov    %eax,%edi
4805a5:	8b 0f                	mov    (%edi),%ecx
4805a7:	8b 71 14             	mov    0x14(%ecx),%esi
4805aa:	8b ce                	mov    %esi,%ecx
4805ac:	ff 15 2c 81 4a 00    	call   *0x4a812c
4805b2:	8b cf                	mov    %edi,%ecx
4805b4:	ff d6                	call   *%esi
4805b6:	8b f8                	mov    %eax,%edi
4805b8:	8d 45 ec             	lea    -0x14(%ebp),%eax
4805bb:	50                   	push   %eax
4805bc:	8b 0f                	mov    (%edi),%ecx
4805be:	8b 71 04             	mov    0x4(%ecx),%esi
4805c1:	8b ce                	mov    %esi,%ecx
4805c3:	ff 15 2c 81 4a 00    	call   *0x4a812c
4805c9:	8b cf                	mov    %edi,%ecx
4805cb:	ff d6                	call   *%esi
4805cd:	8b 73 20             	mov    0x20(%ebx),%esi
4805d0:	6a 01                	push   $0x1
4805d2:	ff 73 14             	push   0x14(%ebx)
4805d5:	8b 7e 14             	mov    0x14(%esi),%edi
4805d8:	ff 76 1c             	push   0x1c(%esi)
4805db:	8b 17                	mov    (%edi),%edx
4805dd:	8b 72 24             	mov    0x24(%edx),%esi
4805e0:	8b ce                	mov    %esi,%ecx
4805e2:	ff 15 2c 81 4a 00    	call   *0x4a812c
4805e8:	8b cf                	mov    %edi,%ecx
4805ea:	ff d6                	call   *%esi
4805ec:	8b 4b 20             	mov    0x20(%ebx),%ecx
4805ef:	89 41 18             	mov    %eax,0x18(%ecx)
4805f2:	e9 5e ff ff ff       	jmp    0x480555
4805f7:	32 c0                	xor    %al,%al
4805f9:	e8 a3 fe 00 00       	call   0x4904a1
4805fe:	c2 0c 00             	ret    $0xc
480601:	cc                   	int3
480602:	cc                   	int3
480603:	cc                   	int3
480604:	cc                   	int3
480605:	cc                   	int3
480606:	cc                   	int3
480607:	cc                   	int3
480608:	cc                   	int3
480609:	cc                   	int3
48060a:	cc                   	int3
48060b:	cc                   	int3
48060c:	cc                   	int3
48060d:	cc                   	int3
48060e:	cc                   	int3
48060f:	cc                   	int3
480610:	8b ff                	mov    %edi,%edi
480612:	55                   	push   %ebp
480613:	8b ec                	mov    %esp,%ebp
480615:	83 ec 0c             	sub    $0xc,%esp
480618:	53                   	push   %ebx
480619:	8b d9                	mov    %ecx,%ebx
48061b:	56                   	push   %esi
48061c:	57                   	push   %edi
48061d:	8b 7b 20             	mov    0x20(%ebx),%edi
480620:	8b 07                	mov    (%edi),%eax
480622:	8b 70 38             	mov    0x38(%eax),%esi
480625:	8b ce                	mov    %esi,%ecx
480627:	ff 15 2c 81 4a 00    	call   *0x4a812c
48062d:	8b cf                	mov    %edi,%ecx
48062f:	ff d6                	call   *%esi
480631:	8b f8                	mov    %eax,%edi
480633:	8b 0f                	mov    (%edi),%ecx
480635:	8b 71 14             	mov    0x14(%ecx),%esi
480638:	8b ce                	mov    %esi,%ecx
48063a:	ff 15 2c 81 4a 00    	call   *0x4a812c
480640:	8b cf                	mov    %edi,%ecx
480642:	ff d6                	call   *%esi
480644:	33 ff                	xor    %edi,%edi
480646:	89 45 fc             	mov    %eax,-0x4(%ebp)
480649:	39 7b 1c             	cmp    %edi,0x1c(%ebx)
48064c:	75 0f                	jne    0x48065d
48064e:	ff 75 0c             	push   0xc(%ebp)
480651:	8b cb                	mov    %ebx,%ecx
480653:	ff 75 08             	push   0x8(%ebp)
480656:	e8 7c 00 00 00       	call   0x4806d7
48065b:	eb 71                	jmp    0x4806ce
48065d:	8b 00                	mov    (%eax),%eax
48065f:	8d 4d f4             	lea    -0xc(%ebp),%ecx
480662:	51                   	push   %ecx
480663:	8b 30                	mov    (%eax),%esi
480665:	8b ce                	mov    %esi,%ecx
480667:	ff 15 2c 81 4a 00    	call   *0x4a812c
48066d:	8b 4d fc             	mov    -0x4(%ebp),%ecx
480670:	ff d6                	call   *%esi
480672:	8b 43 14             	mov    0x14(%ebx),%eax
480675:	83 f8 04             	cmp    $0x4,%eax
480678:	74 0a                	je     0x480684
48067a:	83 f8 05             	cmp    $0x5,%eax
48067d:	74 05                	je     0x480684
48067f:	8b 4d 0c             	mov    0xc(%ebp),%ecx
480682:	eb 05                	jmp    0x480689
480684:	8b cf                	mov    %edi,%ecx
480686:	89 4d 0c             	mov    %ecx,0xc(%ebp)
480689:	83 f8 03             	cmp    $0x3,%eax
48068c:	74 0a                	je     0x480698
48068e:	83 f8 06             	cmp    $0x6,%eax
480691:	74 05                	je     0x480698
480693:	8b 7d 08             	mov    0x8(%ebp),%edi
480696:	eb 03                	jmp    0x48069b
480698:	89 7d 08             	mov    %edi,0x8(%ebp)
48069b:	8b 03                	mov    (%ebx),%eax
48069d:	01 4d f8             	add    %ecx,-0x8(%ebp)
4806a0:	8d 4d f4             	lea    -0xc(%ebp),%ecx
4806a3:	01 7d f4             	add    %edi,-0xc(%ebp)
4806a6:	51                   	push   %ecx
4806a7:	8b 70 6c             	mov    0x6c(%eax),%esi
4806aa:	8b ce                	mov    %esi,%ecx
4806ac:	ff 15 2c 81 4a 00    	call   *0x4a812c
4806b2:	8b cb                	mov    %ebx,%ecx
4806b4:	ff d6                	call   *%esi
4806b6:	8b 5d fc             	mov    -0x4(%ebp),%ebx
4806b9:	8d 4d 08             	lea    0x8(%ebp),%ecx
4806bc:	51                   	push   %ecx
4806bd:	8b 03                	mov    (%ebx),%eax
4806bf:	8b 70 08             	mov    0x8(%eax),%esi
4806c2:	8b ce                	mov    %esi,%ecx
4806c4:	ff 15 2c 81 4a 00    	call   *0x4a812c
4806ca:	8b cb                	mov    %ebx,%ecx
4806cc:	ff d6                	call   *%esi
4806ce:	5f                   	pop    %edi
4806cf:	5e                   	pop    %esi
4806d0:	b0 01                	mov    $0x1,%al
4806d2:	5b                   	pop    %ebx
4806d3:	c9                   	leave
4806d4:	c2 08 00             	ret    $0x8
4806d7:	8b ff                	mov    %edi,%edi
4806d9:	55                   	push   %ebp
4806da:	8b ec                	mov    %esp,%ebp
4806dc:	83 ec 2c             	sub    $0x2c,%esp
4806df:	a1 dc 38 4a 00       	mov    0x4a38dc,%eax
4806e4:	33 c5                	xor    %ebp,%eax
4806e6:	89 45 fc             	mov    %eax,-0x4(%ebp)
4806e9:	53                   	push   %ebx
4806ea:	8b d9                	mov    %ecx,%ebx
4806ec:	8d 4d dc             	lea    -0x24(%ebp),%ecx
4806ef:	56                   	push   %esi
4806f0:	57                   	push   %edi
4806f1:	51                   	push   %ecx
4806f2:	8b 43 20             	mov    0x20(%ebx),%eax
4806f5:	c7 43 14 01 00 00 00 	movl   $0x1,0x14(%ebx)
4806fc:	8b 78 20             	mov    0x20(%eax),%edi
4806ff:	8b 07                	mov    (%edi),%eax
480701:	8b 70 70             	mov    0x70(%eax),%esi
480704:	8b ce                	mov    %esi,%ecx
480706:	ff 15 2c 81 4a 00    	call   *0x4a812c
48070c:	8b cf                	mov    %edi,%ecx
48070e:	ff d6                	call   *%esi
480710:	50                   	push   %eax
480711:	8d 45 ec             	lea    -0x14(%ebp),%eax
480714:	50                   	push   %eax
480715:	ff 15 24 7d 4a 00    	call   *0x4a7d24
48071b:	8b 45 f4             	mov    -0xc(%ebp),%eax
48071e:	03 45 ec             	add    -0x14(%ebp),%eax
480721:	8b 4d 08             	mov    0x8(%ebp),%ecx
480724:	99                   	cltd
480725:	2b c2                	sub    %edx,%eax
480727:	8b 55 f8             	mov    -0x8(%ebp),%edx
48072a:	8b f0                	mov    %eax,%esi
48072c:	8b 45 f0             	mov    -0x10(%ebp),%eax
48072f:	d1 fe                	sar    $1,%esi
480731:	03 ce                	add    %esi,%ecx
480733:	89 73 08             	mov    %esi,0x8(%ebx)
480736:	89 4d d4             	mov    %ecx,-0x2c(%ebp)
480739:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
48073c:	8d 04 10             	lea    (%eax,%edx,1),%eax
48073f:	99                   	cltd
480740:	2b c2                	sub    %edx,%eax
480742:	8b d0                	mov    %eax,%edx
480744:	8b 45 0c             	mov    0xc(%ebp),%eax
480747:	d1 fa                	sar    $1,%edx
480749:	03 c2                	add    %edx,%eax
48074b:	89 53 0c             	mov    %edx,0xc(%ebx)
48074e:	89 45 d8             	mov    %eax,-0x28(%ebp)
480751:	8b 03                	mov    (%ebx),%eax
480753:	51                   	push   %ecx
480754:	8b 70 6c             	mov    0x6c(%eax),%esi
480757:	8b ce                	mov    %esi,%ecx
480759:	ff 15 2c 81 4a 00    	call   *0x4a812c
48075f:	8b cb                	mov    %ebx,%ecx
480761:	ff d6                	call   *%esi
480763:	8b 4d fc             	mov    -0x4(%ebp),%ecx
480766:	33 c0                	xor    %eax,%eax
480768:	5f                   	pop    %edi
480769:	5e                   	pop    %esi
48076a:	89 43 14             	mov    %eax,0x14(%ebx)
48076d:	33 cd                	xor    %ebp,%ecx
48076f:	89 43 0c             	mov    %eax,0xc(%ebx)
480772:	89 43 08             	mov    %eax,0x8(%ebx)
480775:	5b                   	pop    %ebx
480776:	e8 85 f7 00 00       	call   0x48ff00
48077b:	c9                   	leave
48077c:	c2 08 00             	ret    $0x8
48077f:	8b ff                	mov    %edi,%edi
480781:	53                   	push   %ebx
480782:	8b d9                	mov    %ecx,%ebx
480784:	56                   	push   %esi
480785:	57                   	push   %edi
480786:	8b 7b 04             	mov    0x4(%ebx),%edi
480789:	8b 07                	mov    (%edi),%eax
48078b:	8b 70 38             	mov    0x38(%eax),%esi
48078e:	8b ce                	mov    %esi,%ecx
480790:	ff 15 2c 81 4a 00    	call   *0x4a812c
480796:	8b cf                	mov    %edi,%ecx
480798:	ff d6                	call   *%esi
48079a:	8b f8                	mov    %eax,%edi
48079c:	68 90 e8 00 00       	push   $0xe890
4807a1:	8b 0f                	mov    (%edi),%ecx
4807a3:	8b 71 18             	mov    0x18(%ecx),%esi
4807a6:	8b ce                	mov    %esi,%ecx
4807a8:	ff 15 2c 81 4a 00    	call   *0x4a812c
4807ae:	8b cf                	mov    %edi,%ecx
4807b0:	ff d6                	call   *%esi
4807b2:	8b 0b                	mov    (%ebx),%ecx
4807b4:	8b 43 20             	mov    0x20(%ebx),%eax
4807b7:	8b 71 64             	mov    0x64(%ecx),%esi
4807ba:	8b ce                	mov    %esi,%ecx
4807bc:	ff 70 20             	push   0x20(%eax)
4807bf:	ff 15 2c 81 4a 00    	call   *0x4a812c
4807c5:	8b cb                	mov    %ebx,%ecx
4807c7:	ff d6                	call   *%esi
4807c9:	8b 53 20             	mov    0x20(%ebx),%edx
4807cc:	8b 7a 14             	mov    0x14(%edx),%edi
4807cf:	ff 72 20             	push   0x20(%edx)
4807d2:	8b 07                	mov    (%edi),%eax
4807d4:	8b 70 04             	mov    0x4(%eax),%esi
4807d7:	8b ce                	mov    %esi,%ecx
4807d9:	ff 15 2c 81 4a 00    	call   *0x4a812c
4807df:	8b cf                	mov    %edi,%ecx
4807e1:	ff d6                	call   *%esi
4807e3:	8b 43 20             	mov    0x20(%ebx),%eax
4807e6:	8b 78 20             	mov    0x20(%eax),%edi
4807e9:	85 ff                	test   %edi,%edi
4807eb:	74 16                	je     0x480803
4807ed:	8b 07                	mov    (%edi),%eax
4807ef:	6a 01                	push   $0x1
4807f1:	8b 70 0c             	mov    0xc(%eax),%esi
4807f4:	8b ce                	mov    %esi,%ecx
4807f6:	ff 15 2c 81 4a 00    	call   *0x4a812c
4807fc:	8b cf                	mov    %edi,%ecx
4807fe:	ff d6                	call   *%esi
480800:	8b 43 20             	mov    0x20(%ebx),%eax
480803:	83 60 20 00          	andl   $0x0,0x20(%eax)
480807:	5f                   	pop    %edi
480808:	5e                   	pop    %esi
480809:	5b                   	pop    %ebx
48080a:	c3                   	ret
48080b:	cc                   	int3
48080c:	cc                   	int3
48080d:	cc                   	int3
48080e:	cc                   	int3
48080f:	cc                   	int3
480810:	8b ff                	mov    %edi,%edi
480812:	55                   	push   %ebp
480813:	8b ec                	mov    %esp,%ebp
480815:	53                   	push   %ebx
480816:	8b d9                	mov    %ecx,%ebx
480818:	57                   	push   %edi
480819:	8b 7b 20             	mov    0x20(%ebx),%edi
48081c:	c6 43 18 01          	movb   $0x1,0x18(%ebx)
480820:	83 7f 24 00          	cmpl   $0x0,0x24(%edi)
480824:	0f 85 ef 00 00 00    	jne    0x480919
48082a:	8b 7f 20             	mov    0x20(%edi),%edi
48082d:	56                   	push   %esi