455589:	8b 85 40 f5 ff ff    	mov    -0xac0(%ebp),%eax
45558f:	3b c3                	cmp    %ebx,%eax
455591:	75 b3                	jne    0x455546
455593:	6a fe                	push   $0xfffffffe
455595:	5e                   	pop    %esi
455596:	33 c0                	xor    %eax,%eax
455598:	66 89 44 5f fe       	mov    %ax,-0x2(%edi,%ebx,2)
45559d:	eb ad                	jmp    0x45554c
45559f:	8b ff                	mov    %edi,%edi
4555a1:	55                   	push   %ebp
4555a2:	8b ec                	mov    %esp,%ebp
4555a4:	81 ec 84 04 00 00    	sub    $0x484,%esp
4555aa:	a1 94 80 4b 00       	mov    0x4b8094,%eax
4555af:	33 c5                	xor    %ebp,%eax
4555b1:	89 45 fc             	mov    %eax,-0x4(%ebp)
4555b4:	83 7d 18 00          	cmpl   $0x0,0x18(%ebp)
4555b8:	8b 45 10             	mov    0x10(%ebp),%eax
4555bb:	53                   	push   %ebx
4555bc:	8b 5d 14             	mov    0x14(%ebp),%ebx
4555bf:	89 85 a0 fb ff ff    	mov    %eax,-0x460(%ebp)
4555c5:	75 18                	jne    0x4555df
4555c7:	e8 63 78 ff ff       	call   0x44ce2f
4555cc:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
4555d2:	e8 ff 76 ff ff       	call   0x44ccd6
4555d7:	83 c8 ff             	or     $0xffffffff,%eax
4555da:	e9 15 01 00 00       	jmp    0x4556f4
4555df:	85 db                	test   %ebx,%ebx
4555e1:	74 04                	je     0x4555e7
4555e3:	85 c0                	test   %eax,%eax
4555e5:	74 e0                	je     0x4555c7
4555e7:	56                   	push   %esi
4555e8:	57                   	push   %edi
4555e9:	ff 75 1c             	push   0x1c(%ebp)
4555ec:	8d 8d 7c fb ff ff    	lea    -0x484(%ebp),%ecx
4555f2:	e8 11 9a ff ff       	call   0x44f008
4555f7:	8b 4d 08             	mov    0x8(%ebp),%ecx
4555fa:	8d bd 90 fb ff ff    	lea    -0x470(%ebp),%edi
455600:	33 c0                	xor    %eax,%eax
455602:	33 d2                	xor    %edx,%edx
455604:	ab                   	stos   %eax,%es:(%edi)
455605:	ab                   	stos   %eax,%es:(%edi)
455606:	ab                   	stos   %eax,%es:(%edi)
455607:	ab                   	stos   %eax,%es:(%edi)
455608:	8b c1                	mov    %ecx,%eax
45560a:	8b bd a0 fb ff ff    	mov    -0x460(%ebp),%edi
455610:	83 e0 02             	and    $0x2,%eax
455613:	89 85 8c fb ff ff    	mov    %eax,-0x474(%ebp)
455619:	0b c2                	or     %edx,%eax
45561b:	89 bd 90 fb ff ff    	mov    %edi,-0x470(%ebp)
455621:	89 9d 94 fb ff ff    	mov    %ebx,-0x46c(%ebp)
455627:	89 95 98 fb ff ff    	mov    %edx,-0x468(%ebp)
45562d:	75 0a                	jne    0x455639
45562f:	88 95 9c fb ff ff    	mov    %dl,-0x464(%ebp)
455635:	85 ff                	test   %edi,%edi
455637:	75 07                	jne    0x455640
455639:	c6 85 9c fb ff ff 01 	movb   $0x1,-0x464(%ebp)
455640:	ff 75 20             	push   0x20(%ebp)
455643:	8d 85 90 fb ff ff    	lea    -0x470(%ebp),%eax
455649:	89 85 a0 fb ff ff    	mov    %eax,-0x460(%ebp)
45564f:	8d 85 80 fb ff ff    	lea    -0x480(%ebp),%eax
455655:	50                   	push   %eax
455656:	ff 75 18             	push   0x18(%ebp)
455659:	8d 85 a0 fb ff ff    	lea    -0x460(%ebp),%eax
45565f:	ff 75 0c             	push   0xc(%ebp)
455662:	51                   	push   %ecx
455663:	50                   	push   %eax
455664:	8d 8d a4 fb ff ff    	lea    -0x45c(%ebp),%ecx
45566a:	e8 83 3c 00 00       	call   0x4592f2
45566f:	83 65 f4 00          	andl   $0x0,-0xc(%ebp)
455673:	8d 8d a4 fb ff ff    	lea    -0x45c(%ebp),%ecx
455679:	e8 d3 5e 00 00       	call   0x45b551
45567e:	8b f0                	mov    %eax,%esi
455680:	85 ff                	test   %edi,%edi
455682:	74 4b                	je     0x4556cf
455684:	8b 45 08             	mov    0x8(%ebp),%eax
455687:	33 c9                	xor    %ecx,%ecx
455689:	83 e0 01             	and    $0x1,%eax
45568c:	0b c1                	or     %ecx,%eax
45568e:	74 1c                	je     0x4556ac
455690:	85 db                	test   %ebx,%ebx
455692:	75 04                	jne    0x455698
455694:	85 f6                	test   %esi,%esi
455696:	75 6f                	jne    0x455707
455698:	8b 85 98 fb ff ff    	mov    -0x468(%ebp),%eax
45569e:	3b c3                	cmp    %ebx,%eax
4556a0:	75 2a                	jne    0x4556cc
4556a2:	85 f6                	test   %esi,%esi
4556a4:	78 29                	js     0x4556cf
4556a6:	3b f3                	cmp    %ebx,%esi
4556a8:	76 25                	jbe    0x4556cf
4556aa:	eb 5b                	jmp    0x455707
4556ac:	8b 85 8c fb ff ff    	mov    -0x474(%ebp),%eax
4556b2:	0b c1                	or     %ecx,%eax
4556b4:	74 4d                	je     0x455703
4556b6:	85 db                	test   %ebx,%ebx
4556b8:	74 15                	je     0x4556cf
4556ba:	85 f6                	test   %esi,%esi
4556bc:	79 04                	jns    0x4556c2
4556be:	88 0f                	mov    %cl,(%edi)
4556c0:	eb 0d                	jmp    0x4556cf
4556c2:	8b 85 98 fb ff ff    	mov    -0x468(%ebp),%eax
4556c8:	3b c3                	cmp    %ebx,%eax
4556ca:	74 4d                	je     0x455719
4556cc:	88 0c 07             	mov    %cl,(%edi,%eax,1)
4556cf:	8d 8d e4 fb ff ff    	lea    -0x41c(%ebp),%ecx
4556d5:	e8 6d 40 00 00       	call   0x459747
4556da:	80 bd 88 fb ff ff 00 	cmpb   $0x0,-0x478(%ebp)
4556e1:	74 0d                	je     0x4556f0
4556e3:	8b 8d 7c fb ff ff    	mov    -0x484(%ebp),%ecx
4556e9:	83 a1 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%ecx)
4556f0:	5f                   	pop    %edi
4556f1:	8b c6                	mov    %esi,%eax
4556f3:	5e                   	pop    %esi
4556f4:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4556f7:	33 cd                	xor    %ebp,%ecx
4556f9:	5b                   	pop    %ebx
4556fa:	e8 03 a3 fe ff       	call   0x43fa02
4556ff:	8b e5                	mov    %ebp,%esp
455701:	5d                   	pop    %ebp
455702:	c3                   	ret
455703:	85 db                	test   %ebx,%ebx
455705:	75 05                	jne    0x45570c
455707:	83 ce ff             	or     $0xffffffff,%esi
45570a:	eb c3                	jmp    0x4556cf
45570c:	8b 85 98 fb ff ff    	mov    -0x468(%ebp),%eax
455712:	3b c3                	cmp    %ebx,%eax
455714:	75 b6                	jne    0x4556cc
455716:	6a fe                	push   $0xfffffffe
455718:	5e                   	pop    %esi
455719:	88 4c 1f ff          	mov    %cl,-0x1(%edi,%ebx,1)
45571d:	eb b0                	jmp    0x4556cf
45571f:	8b ff                	mov    %edi,%edi
455721:	55                   	push   %ebp
455722:	8b ec                	mov    %esp,%ebp
455724:	81 ec 84 04 00 00    	sub    $0x484,%esp
45572a:	a1 94 80 4b 00       	mov    0x4b8094,%eax
45572f:	33 c5                	xor    %ebp,%eax
455731:	89 45 fc             	mov    %eax,-0x4(%ebp)
455734:	83 7d 18 00          	cmpl   $0x0,0x18(%ebp)
455738:	8b 45 10             	mov    0x10(%ebp),%eax
45573b:	53                   	push   %ebx
45573c:	8b 5d 14             	mov    0x14(%ebp),%ebx
45573f:	89 85 a0 fb ff ff    	mov    %eax,-0x460(%ebp)
455745:	75 18                	jne    0x45575f
455747:	e8 e3 76 ff ff       	call   0x44ce2f
45574c:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
455752:	e8 7f 75 ff ff       	call   0x44ccd6
455757:	83 c8 ff             	or     $0xffffffff,%eax
45575a:	e9 1b 01 00 00       	jmp    0x45587a
45575f:	85 db                	test   %ebx,%ebx
455761:	74 04                	je     0x455767
455763:	85 c0                	test   %eax,%eax
455765:	74 e0                	je     0x455747
455767:	56                   	push   %esi
455768:	57                   	push   %edi
455769:	ff 75 1c             	push   0x1c(%ebp)
45576c:	8d 8d 7c fb ff ff    	lea    -0x484(%ebp),%ecx
455772:	e8 91 98 ff ff       	call   0x44f008
455777:	8b 4d 08             	mov    0x8(%ebp),%ecx
45577a:	8d bd 90 fb ff ff    	lea    -0x470(%ebp),%edi
455780:	33 c0                	xor    %eax,%eax
455782:	33 d2                	xor    %edx,%edx
455784:	ab                   	stos   %eax,%es:(%edi)
455785:	ab                   	stos   %eax,%es:(%edi)
455786:	ab                   	stos   %eax,%es:(%edi)
455787:	ab                   	stos   %eax,%es:(%edi)
455788:	8b c1                	mov    %ecx,%eax
45578a:	8b bd a0 fb ff ff    	mov    -0x460(%ebp),%edi
455790:	83 e0 02             	and    $0x2,%eax
455793:	89 85 8c fb ff ff    	mov    %eax,-0x474(%ebp)
455799:	0b c2                	or     %edx,%eax
45579b:	89 bd 90 fb ff ff    	mov    %edi,-0x470(%ebp)
4557a1:	89 9d 94 fb ff ff    	mov    %ebx,-0x46c(%ebp)
4557a7:	89 95 98 fb ff ff    	mov    %edx,-0x468(%ebp)
4557ad:	75 0a                	jne    0x4557b9
4557af:	88 95 9c fb ff ff    	mov    %dl,-0x464(%ebp)
4557b5:	85 ff                	test   %edi,%edi
4557b7:	75 07                	jne    0x4557c0
4557b9:	c6 85 9c fb ff ff 01 	movb   $0x1,-0x464(%ebp)
4557c0:	ff 75 20             	push   0x20(%ebp)
4557c3:	8d 85 90 fb ff ff    	lea    -0x470(%ebp),%eax
4557c9:	89 85 a0 fb ff ff    	mov    %eax,-0x460(%ebp)
4557cf:	8d 85 80 fb ff ff    	lea    -0x480(%ebp),%eax
4557d5:	50                   	push   %eax
4557d6:	ff 75 18             	push   0x18(%ebp)
4557d9:	8d 85 a0 fb ff ff    	lea    -0x460(%ebp),%eax
4557df:	ff 75 0c             	push   0xc(%ebp)
4557e2:	51                   	push   %ecx
4557e3:	50                   	push   %eax
4557e4:	8d 8d a4 fb ff ff    	lea    -0x45c(%ebp),%ecx
4557ea:	e8 7b 3b 00 00       	call   0x45936a
4557ef:	83 65 f4 00          	andl   $0x0,-0xc(%ebp)
4557f3:	8d 8d a4 fb ff ff    	lea    -0x45c(%ebp),%ecx
4557f9:	e8 af 64 00 00       	call   0x45bcad
4557fe:	8b f0                	mov    %eax,%esi
455800:	85 ff                	test   %edi,%edi
455802:	74 51                	je     0x455855
455804:	8b 45 08             	mov    0x8(%ebp),%eax
455807:	83 e0 01             	and    $0x1,%eax
45580a:	83 c8 00             	or     $0x0,%eax
45580d:	74 1c                	je     0x45582b
45580f:	85 db                	test   %ebx,%ebx
455811:	75 04                	jne    0x455817
455813:	85 f6                	test   %esi,%esi
455815:	75 76                	jne    0x45588d
455817:	8b 85 98 fb ff ff    	mov    -0x468(%ebp),%eax
45581d:	3b c3                	cmp    %ebx,%eax
45581f:	75 2e                	jne    0x45584f
455821:	85 f6                	test   %esi,%esi
455823:	78 30                	js     0x455855
455825:	3b f3                	cmp    %ebx,%esi
455827:	76 2c                	jbe    0x455855
455829:	eb 62                	jmp    0x45588d
45582b:	8b 85 8c fb ff ff    	mov    -0x474(%ebp),%eax
455831:	83 c8 00             	or     $0x0,%eax
455834:	74 53                	je     0x455889
455836:	85 db                	test   %ebx,%ebx
455838:	74 1b                	je     0x455855
45583a:	85 f6                	test   %esi,%esi
45583c:	79 07                	jns    0x455845
45583e:	33 c0                	xor    %eax,%eax
455840:	66 89 07             	mov    %ax,(%edi)
455843:	eb 10                	jmp    0x455855
455845:	8b 85 98 fb ff ff    	mov    -0x468(%ebp),%eax
45584b:	3b c3                	cmp    %ebx,%eax
45584d:	74 50                	je     0x45589f
45584f:	33 c9                	xor    %ecx,%ecx
455851:	66 89 0c 47          	mov    %cx,(%edi,%eax,2)
455855:	8d 8d e4 fb ff ff    	lea    -0x41c(%ebp),%ecx
45585b:	e8 e7 3e 00 00       	call   0x459747
455860:	80 bd 88 fb ff ff 00 	cmpb   $0x0,-0x478(%ebp)
455867:	74 0d                	je     0x455876
455869:	8b 8d 7c fb ff ff    	mov    -0x484(%ebp),%ecx
45586f:	83 a1 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%ecx)
455876:	5f                   	pop    %edi
455877:	8b c6                	mov    %esi,%eax
455879:	5e                   	pop    %esi
45587a:	8b 4d fc             	mov    -0x4(%ebp),%ecx
45587d:	33 cd                	xor    %ebp,%ecx
45587f:	5b                   	pop    %ebx
455880:	e8 7d a1 fe ff       	call   0x43fa02
455885:	8b e5                	mov    %ebp,%esp
455887:	5d                   	pop    %ebp
455888:	c3                   	ret
455889:	85 db                	test   %ebx,%ebx
45588b:	75 05                	jne    0x455892
45588d:	83 ce ff             	or     $0xffffffff,%esi
455890:	eb c3                	jmp    0x455855
455892:	8b 85 98 fb ff ff    	mov    -0x468(%ebp),%eax
455898:	3b c3                	cmp    %ebx,%eax
45589a:	75 b3                	jne    0x45584f
45589c:	6a fe                	push   $0xfffffffe
45589e:	5e                   	pop    %esi
45589f:	33 c0                	xor    %eax,%eax
4558a1:	66 89 44 5f fe       	mov    %ax,-0x2(%edi,%ebx,2)
4558a6:	eb ad                	jmp    0x455855
4558a8:	8b ff                	mov    %edi,%edi
4558aa:	55                   	push   %ebp
4558ab:	8b ec                	mov    %esp,%ebp
4558ad:	83 7d 18 00          	cmpl   $0x0,0x18(%ebp)
4558b1:	75 15                	jne    0x4558c8
4558b3:	e8 77 75 ff ff       	call   0x44ce2f
4558b8:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
4558be:	e8 13 74 ff ff       	call   0x44ccd6
4558c3:	83 c8 ff             	or     $0xffffffff,%eax
4558c6:	5d                   	pop    %ebp
4558c7:	c3                   	ret
4558c8:	56                   	push   %esi
4558c9:	8b 75 10             	mov    0x10(%ebp),%esi
4558cc:	85 f6                	test   %esi,%esi
4558ce:	74 3a                	je     0x45590a
4558d0:	83 7d 14 00          	cmpl   $0x0,0x14(%ebp)
4558d4:	76 34                	jbe    0x45590a
4558d6:	ff 75 20             	push   0x20(%ebp)
4558d9:	ff 75 1c             	push   0x1c(%ebp)
4558dc:	ff 75 18             	push   0x18(%ebp)
4558df:	ff 75 14             	push   0x14(%ebp)
4558e2:	56                   	push   %esi
4558e3:	ff 75 0c             	push   0xc(%ebp)
4558e6:	ff 75 08             	push   0x8(%ebp)
4558e9:	e8 3b f6 ff ff       	call   0x454f29
4558ee:	83 c4 1c             	add    $0x1c,%esp
4558f1:	85 c0                	test   %eax,%eax
4558f3:	79 03                	jns    0x4558f8
4558f5:	c6 06 00             	movb   $0x0,(%esi)
4558f8:	83 f8 fe             	cmp    $0xfffffffe,%eax
4558fb:	75 20                	jne    0x45591d
4558fd:	e8 2d 75 ff ff       	call   0x44ce2f
455902:	c7 00 22 00 00 00    	movl   $0x22,(%eax)
455908:	eb 0b                	jmp    0x455915
45590a:	e8 20 75 ff ff       	call   0x44ce2f
45590f:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
455915:	e8 bc 73 ff ff       	call   0x44ccd6
45591a:	83 c8 ff             	or     $0xffffffff,%eax
45591d:	5e                   	pop    %esi
45591e:	5d                   	pop    %ebp
45591f:	c3                   	ret
455920:	8b ff                	mov    %edi,%edi
455922:	55                   	push   %ebp
455923:	8b ec                	mov    %esp,%ebp
455925:	83 7d 18 00          	cmpl   $0x0,0x18(%ebp)
455929:	75 15                	jne    0x455940
45592b:	e8 ff 74 ff ff       	call   0x44ce2f
455930:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
455936:	e8 9b 73 ff ff       	call   0x44ccd6
45593b:	83 c8 ff             	or     $0xffffffff,%eax
45593e:	5d                   	pop    %ebp
45593f:	c3                   	ret
455940:	56                   	push   %esi
455941:	8b 75 10             	mov    0x10(%ebp),%esi
455944:	85 f6                	test   %esi,%esi
455946:	74 3c                	je     0x455984
455948:	83 7d 14 00          	cmpl   $0x0,0x14(%ebp)
45594c:	76 36                	jbe    0x455984
45594e:	ff 75 20             	push   0x20(%ebp)
455951:	ff 75 1c             	push   0x1c(%ebp)
455954:	ff 75 18             	push   0x18(%ebp)
455957:	ff 75 14             	push   0x14(%ebp)
45595a:	56                   	push   %esi
45595b:	ff 75 0c             	push   0xc(%ebp)
45595e:	ff 75 08             	push   0x8(%ebp)
455961:	e8 43 f7 ff ff       	call   0x4550a9
455966:	83 c4 1c             	add    $0x1c,%esp
455969:	85 c0                	test   %eax,%eax
45596b:	79 05                	jns    0x455972
45596d:	33 c9                	xor    %ecx,%ecx
45596f:	66 89 0e             	mov    %cx,(%esi)
455972:	83 f8 fe             	cmp    $0xfffffffe,%eax
455975:	75 20                	jne    0x455997
455977:	e8 b3 74 ff ff       	call   0x44ce2f
45597c:	c7 00 22 00 00 00    	movl   $0x22,(%eax)
455982:	eb 0b                	jmp    0x45598f
455984:	e8 a6 74 ff ff       	call   0x44ce2f
455989:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
45598f:	e8 42 73 ff ff       	call   0x44ccd6
455994:	83 c8 ff             	or     $0xffffffff,%eax
455997:	5e                   	pop    %esi
455998:	5d                   	pop    %ebp
455999:	c3                   	ret
45599a:	83 b9 04 04 00 00 00 	cmpl   $0x0,0x404(%ecx)
4559a1:	75 06                	jne    0x4559a9
4559a3:	b8 00 02 00 00       	mov    $0x200,%eax
4559a8:	c3                   	ret
4559a9:	8b 81 00 04 00 00    	mov    0x400(%ecx),%eax
4559af:	d1 e8                	shr    $1,%eax
4559b1:	c3                   	ret
4559b2:	83 b9 04 04 00 00 00 	cmpl   $0x0,0x404(%ecx)
4559b9:	75 06                	jne    0x4559c1
4559bb:	b8 00 01 00 00       	mov    $0x100,%eax
4559c0:	c3                   	ret