48364a:	80 64 08 28 fe       	andb   $0xfe,0x28(%eax,%ecx,1)
48364f:	ff 36                	push   (%esi)
483651:	e8 a6 bd ff ff       	call   0x47f3fc
483656:	59                   	pop    %ecx
483657:	c3                   	ret
483658:	6a 10                	push   $0x10
48365a:	68 60 51 4b 00       	push   $0x4b5160
48365f:	e8 fc d2 fb ff       	call   0x440960
483664:	33 c0                	xor    %eax,%eax
483666:	8b 75 18             	mov    0x18(%ebp),%esi
483669:	85 f6                	test   %esi,%esi
48366b:	0f 95 c0             	setne  %al
48366e:	85 c0                	test   %eax,%eax
483670:	75 13                	jne    0x483685
483672:	e8 b8 97 fc ff       	call   0x44ce2f
483677:	6a 16                	push   $0x16
483679:	5e                   	pop    %esi
48367a:	89 30                	mov    %esi,(%eax)
48367c:	e8 55 96 fc ff       	call   0x44ccd6
483681:	8b c6                	mov    %esi,%eax
483683:	eb 67                	jmp    0x4836ec
483685:	83 0e ff             	orl    $0xffffffff,(%esi)
483688:	33 c0                	xor    %eax,%eax
48368a:	39 45 08             	cmp    %eax,0x8(%ebp)
48368d:	0f 95 c0             	setne  %al
483690:	85 c0                	test   %eax,%eax
483692:	74 de                	je     0x483672
483694:	83 7d 1c 00          	cmpl   $0x0,0x1c(%ebp)
483698:	74 11                	je     0x4836ab
48369a:	8b 45 14             	mov    0x14(%ebp),%eax
48369d:	25 7f fe ff ff       	and    $0xfffffe7f,%eax
4836a2:	f7 d8                	neg    %eax
4836a4:	1b c0                	sbb    %eax,%eax
4836a6:	83 c0 01             	add    $0x1,%eax
4836a9:	74 c7                	je     0x483672
4836ab:	33 c0                	xor    %eax,%eax
4836ad:	89 45 e0             	mov    %eax,-0x20(%ebp)
4836b0:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4836b3:	89 45 fc             	mov    %eax,-0x4(%ebp)
4836b6:	ff 75 1c             	push   0x1c(%ebp)
4836b9:	ff 75 14             	push   0x14(%ebp)
4836bc:	ff 75 10             	push   0x10(%ebp)
4836bf:	ff 75 0c             	push   0xc(%ebp)
4836c2:	ff 75 08             	push   0x8(%ebp)
4836c5:	56                   	push   %esi
4836c6:	8d 45 e0             	lea    -0x20(%ebp),%eax
4836c9:	50                   	push   %eax
4836ca:	e8 49 08 00 00       	call   0x483f18
4836cf:	83 c4 1c             	add    $0x1c,%esp
4836d2:	8b f8                	mov    %eax,%edi
4836d4:	89 7d e4             	mov    %edi,-0x1c(%ebp)
4836d7:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
4836de:	e8 15 00 00 00       	call   0x4836f8
4836e3:	85 ff                	test   %edi,%edi
4836e5:	74 03                	je     0x4836ea
4836e7:	83 0e ff             	orl    $0xffffffff,(%esi)
4836ea:	8b c7                	mov    %edi,%eax
4836ec:	e8 b5 d2 fb ff       	call   0x4409a6
4836f1:	c3                   	ret
4836f2:	8b 75 18             	mov    0x18(%ebp),%esi
4836f5:	8b 7d e4             	mov    -0x1c(%ebp),%edi
4836f8:	83 7d e0 00          	cmpl   $0x0,-0x20(%ebp)
4836fc:	74 25                	je     0x483723
4836fe:	85 ff                	test   %edi,%edi
483700:	74 19                	je     0x48371b
483702:	8b 0e                	mov    (%esi),%ecx
483704:	8b c1                	mov    %ecx,%eax
483706:	c1 f8 06             	sar    $0x6,%eax
483709:	83 e1 3f             	and    $0x3f,%ecx
48370c:	6b c9 30             	imul   $0x30,%ecx,%ecx
48370f:	8b 04 85 00 c0 4b 00 	mov    0x4bc000(,%eax,4),%eax
483716:	80 64 08 28 fe       	andb   $0xfe,0x28(%eax,%ecx,1)
48371b:	ff 36                	push   (%esi)
48371d:	e8 da bc ff ff       	call   0x47f3fc
483722:	59                   	pop    %ecx
483723:	c3                   	ret
483724:	8b ff                	mov    %edi,%edi
483726:	55                   	push   %ebp
483727:	8b ec                	mov    %esp,%ebp
483729:	8b 45 20             	mov    0x20(%ebp),%eax
48372c:	ff 30                	push   (%eax)
48372e:	8b 45 1c             	mov    0x1c(%ebp),%eax
483731:	ff 30                	push   (%eax)
483733:	8b 45 18             	mov    0x18(%ebp),%eax
483736:	ff 30                	push   (%eax)
483738:	8b 45 14             	mov    0x14(%ebp),%eax
48373b:	ff 30                	push   (%eax)
48373d:	8b 45 10             	mov    0x10(%ebp),%eax
483740:	ff 30                	push   (%eax)
483742:	8b 45 0c             	mov    0xc(%ebp),%eax
483745:	ff 30                	push   (%eax)
483747:	8b 45 08             	mov    0x8(%ebp),%eax
48374a:	ff 30                	push   (%eax)
48374c:	e8 fe 06 00 00       	call   0x483e4f
483751:	83 c4 1c             	add    $0x1c,%esp
483754:	5d                   	pop    %ebp
483755:	c3                   	ret
483756:	8b ff                	mov    %edi,%edi
483758:	55                   	push   %ebp
483759:	8b ec                	mov    %esp,%ebp
48375b:	8b 45 20             	mov    0x20(%ebp),%eax
48375e:	ff 30                	push   (%eax)
483760:	8b 45 1c             	mov    0x1c(%ebp),%eax
483763:	ff 30                	push   (%eax)
483765:	8b 45 18             	mov    0x18(%ebp),%eax
483768:	ff 30                	push   (%eax)
48376a:	8b 45 14             	mov    0x14(%ebp),%eax
48376d:	ff 30                	push   (%eax)
48376f:	8b 45 10             	mov    0x10(%ebp),%eax
483772:	ff 30                	push   (%eax)
483774:	8b 45 0c             	mov    0xc(%ebp),%eax
483777:	ff 30                	push   (%eax)
483779:	8b 45 08             	mov    0x8(%ebp),%eax
48377c:	ff 30                	push   (%eax)
48377e:	e8 95 07 00 00       	call   0x483f18
483783:	83 c4 1c             	add    $0x1c,%esp
483786:	5d                   	pop    %ebp
483787:	c3                   	ret
483788:	8b ff                	mov    %edi,%edi
48378a:	55                   	push   %ebp
48378b:	8b ec                	mov    %esp,%ebp
48378d:	8b 45 20             	mov    0x20(%ebp),%eax
483790:	ff 30                	push   (%eax)
483792:	8b 45 1c             	mov    0x1c(%ebp),%eax
483795:	ff 30                	push   (%eax)
483797:	8b 45 18             	mov    0x18(%ebp),%eax
48379a:	ff 30                	push   (%eax)
48379c:	8b 45 14             	mov    0x14(%ebp),%eax
48379f:	ff 30                	push   (%eax)
4837a1:	8b 45 10             	mov    0x10(%ebp),%eax
4837a4:	ff 30                	push   (%eax)
4837a6:	8b 45 0c             	mov    0xc(%ebp),%eax
4837a9:	ff 30                	push   (%eax)
4837ab:	8b 45 08             	mov    0x8(%ebp),%eax
4837ae:	ff 30                	push   (%eax)
4837b0:	e8 9a 06 00 00       	call   0x483e4f
4837b5:	83 c4 1c             	add    $0x1c,%esp
4837b8:	5d                   	pop    %ebp
4837b9:	c3                   	ret
4837ba:	8b ff                	mov    %edi,%edi
4837bc:	55                   	push   %ebp
4837bd:	8b ec                	mov    %esp,%ebp
4837bf:	8b 45 20             	mov    0x20(%ebp),%eax
4837c2:	ff 30                	push   (%eax)
4837c4:	8b 45 1c             	mov    0x1c(%ebp),%eax
4837c7:	ff 30                	push   (%eax)
4837c9:	8b 45 18             	mov    0x18(%ebp),%eax
4837cc:	ff 30                	push   (%eax)
4837ce:	8b 45 14             	mov    0x14(%ebp),%eax
4837d1:	ff 30                	push   (%eax)
4837d3:	8b 45 10             	mov    0x10(%ebp),%eax
4837d6:	ff 30                	push   (%eax)
4837d8:	8b 45 0c             	mov    0xc(%ebp),%eax
4837db:	ff 30                	push   (%eax)
4837dd:	8b 45 08             	mov    0x8(%ebp),%eax
4837e0:	ff 30                	push   (%eax)
4837e2:	e8 31 07 00 00       	call   0x483f18
4837e7:	83 c4 1c             	add    $0x1c,%esp
4837ea:	5d                   	pop    %ebp
4837eb:	c3                   	ret
4837ec:	8b ff                	mov    %edi,%edi
4837ee:	55                   	push   %ebp
4837ef:	8b ec                	mov    %esp,%ebp
4837f1:	51                   	push   %ecx
4837f2:	8b 45 08             	mov    0x8(%ebp),%eax
4837f5:	8b 55 08             	mov    0x8(%ebp),%edx
4837f8:	83 e0 3f             	and    $0x3f,%eax
4837fb:	53                   	push   %ebx
4837fc:	57                   	push   %edi
4837fd:	8b 7d 28             	mov    0x28(%ebp),%edi
483800:	33 db                	xor    %ebx,%ebx
483802:	c1 fa 06             	sar    $0x6,%edx
483805:	6b c8 30             	imul   $0x30,%eax,%ecx
483808:	88 1f                	mov    %bl,(%edi)
48380a:	8b 04 95 00 c0 4b 00 	mov    0x4bc000(,%edx,4),%eax
483811:	f6 44 08 28 80       	testb  $0x80,0x28(%eax,%ecx,1)
483816:	75 07                	jne    0x48381f
483818:	33 c0                	xor    %eax,%eax
48381a:	e9 cd 00 00 00       	jmp    0x4838ec
48381f:	56                   	push   %esi
483820:	8b 75 24             	mov    0x24(%ebp),%esi
483823:	f7 c6 00 40 07 00    	test   $0x74000,%esi
483829:	75 25                	jne    0x483850
48382b:	8d 45 fc             	lea    -0x4(%ebp),%eax
48382e:	89 5d fc             	mov    %ebx,-0x4(%ebp)
483831:	50                   	push   %eax
483832:	e8 26 ad fe ff       	call   0x46e55d
483837:	59                   	pop    %ecx
483838:	85 c0                	test   %eax,%eax
48383a:	0f 85 eb 01 00 00    	jne    0x483a2b
483840:	8b 45 fc             	mov    -0x4(%ebp),%eax
483843:	25 00 40 07 00       	and    $0x74000,%eax
483848:	75 43                	jne    0x48388d
48384a:	81 ce 00 40 00 00    	or     $0x4000,%esi
483850:	8b c6                	mov    %esi,%eax
483852:	25 00 40 07 00       	and    $0x74000,%eax
483857:	3d 00 40 00 00       	cmp    $0x4000,%eax
48385c:	74 45                	je     0x4838a3
48385e:	3d 00 00 01 00       	cmp    $0x10000,%eax
483863:	74 2c                	je     0x483891
483865:	3d 00 40 01 00       	cmp    $0x14000,%eax
48386a:	74 25                	je     0x483891
48386c:	3d 00 00 02 00       	cmp    $0x20000,%eax
483871:	74 2b                	je     0x48389e
483873:	3d 00 40 02 00       	cmp    $0x24000,%eax
483878:	74 24                	je     0x48389e
48387a:	3d 00 00 04 00       	cmp    $0x40000,%eax
48387f:	74 07                	je     0x483888
483881:	3d 00 40 04 00       	cmp    $0x44000,%eax
483886:	75 1d                	jne    0x4838a5
483888:	c6 07 01             	movb   $0x1,(%edi)
48388b:	eb 18                	jmp    0x4838a5
48388d:	0b f0                	or     %eax,%esi
48388f:	eb bf                	jmp    0x483850
483891:	b9 01 03 00 00       	mov    $0x301,%ecx
483896:	8b c6                	mov    %esi,%eax
483898:	23 c1                	and    %ecx,%eax
48389a:	3b c1                	cmp    %ecx,%eax
48389c:	75 07                	jne    0x4838a5
48389e:	c6 07 02             	movb   $0x2,(%edi)
4838a1:	eb 02                	jmp    0x4838a5
4838a3:	88 1f                	mov    %bl,(%edi)
4838a5:	f7 c6 00 00 07 00    	test   $0x70000,%esi
4838ab:	74 3c                	je     0x4838e9
4838ad:	f6 45 0c 40          	testb  $0x40,0xc(%ebp)
4838b1:	75 36                	jne    0x4838e9
4838b3:	8b 45 10             	mov    0x10(%ebp),%eax
4838b6:	ba 00 00 00 c0       	mov    $0xc0000000,%edx
4838bb:	23 c2                	and    %edx,%eax
4838bd:	8b cb                	mov    %ebx,%ecx
4838bf:	8b f3                	mov    %ebx,%esi
4838c1:	3d 00 00 00 40       	cmp    $0x40000000,%eax
4838c6:	74 0b                	je     0x4838d3
4838c8:	3d 00 00 00 80       	cmp    $0x80000000,%eax
4838cd:	74 62                	je     0x483931
4838cf:	3b c2                	cmp    %edx,%eax
4838d1:	75 16                	jne    0x4838e9
4838d3:	8b 45 14             	mov    0x14(%ebp),%eax
4838d6:	85 c0                	test   %eax,%eax
4838d8:	74 0f                	je     0x4838e9
4838da:	83 f8 02             	cmp    $0x2,%eax
4838dd:	76 47                	jbe    0x483926
4838df:	83 f8 04             	cmp    $0x4,%eax
4838e2:	76 0e                	jbe    0x4838f2
4838e4:	83 f8 05             	cmp    $0x5,%eax
4838e7:	74 3d                	je     0x483926
4838e9:	33 c0                	xor    %eax,%eax
4838eb:	5e                   	pop    %esi
4838ec:	5f                   	pop    %edi
4838ed:	5b                   	pop    %ebx
4838ee:	8b e5                	mov    %ebp,%esp
4838f0:	5d                   	pop    %ebp
4838f1:	c3                   	ret
4838f2:	6a 02                	push   $0x2
4838f4:	53                   	push   %ebx
4838f5:	53                   	push   %ebx
4838f6:	ff 75 08             	push   0x8(%ebp)
4838f9:	e8 36 62 ff ff       	call   0x479b34
4838fe:	83 c4 10             	add    $0x10,%esp
483901:	0b c2                	or     %edx,%eax
483903:	0f 84 c8 00 00 00    	je     0x4839d1
483909:	53                   	push   %ebx
48390a:	53                   	push   %ebx
48390b:	53                   	push   %ebx
48390c:	ff 75 08             	push   0x8(%ebp)
48390f:	e8 20 62 ff ff       	call   0x479b34
483914:	23 c2                	and    %edx,%eax
483916:	83 c4 10             	add    $0x10,%esp
483919:	83 f8 ff             	cmp    $0xffffffff,%eax
48391c:	74 68                	je     0x483986
48391e:	8b 4d 10             	mov    0x10(%ebp),%ecx
483921:	c1 e9 1f             	shr    $0x1f,%ecx
483924:	eb 03                	jmp    0x483929
483926:	33 f6                	xor    %esi,%esi
483928:	46                   	inc    %esi
483929:	85 c9                	test   %ecx,%ecx
48392b:	0f 84 98 00 00 00    	je     0x4839c9
483931:	6a 03                	push   $0x3
483933:	8d 45 fc             	lea    -0x4(%ebp),%eax
483936:	89 5d fc             	mov    %ebx,-0x4(%ebp)
483939:	50                   	push   %eax
48393a:	ff 75 08             	push   0x8(%ebp)
48393d:	e8 6f 56 ff ff       	call   0x478fb1
483942:	83 c4 0c             	add    $0xc,%esp
483945:	85 c0                	test   %eax,%eax
483947:	7e 09                	jle    0x483952
483949:	8d 4e ff             	lea    -0x1(%esi),%ecx
48394c:	f7 d9                	neg    %ecx
48394e:	1b c9                	sbb    %ecx,%ecx
483950:	23 f1                	and    %ecx,%esi
483952:	83 f8 ff             	cmp    $0xffffffff,%eax
483955:	74 2f                	je     0x483986
483957:	8b 4d fc             	mov    -0x4(%ebp),%ecx
48395a:	83 f8 02             	cmp    $0x2,%eax
48395d:	74 12                	je     0x483971
48395f:	83 f8 03             	cmp    $0x3,%eax
483962:	75 50                	jne    0x4839b4
483964:	81 f9 ef bb bf 00    	cmp    $0xbfbbef,%ecx
48396a:	75 05                	jne    0x483971
48396c:	c6 07 01             	movb   $0x1,(%edi)
48396f:	eb 58                	jmp    0x4839c9
483971:	0f b7 c1             	movzwl %cx,%eax
483974:	3d fe ff 00 00       	cmp    $0xfffe,%eax
483979:	75 17                	jne    0x483992
48397b:	e8 af 94 fc ff       	call   0x44ce2f
483980:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
483986:	e8 a4 94 fc ff       	call   0x44ce2f
48398b:	8b 00                	mov    (%eax),%eax
48398d:	e9 59 ff ff ff       	jmp    0x4838eb
483992:	3d ff fe 00 00       	cmp    $0xfeff,%eax
483997:	75 1b                	jne    0x4839b4
483999:	53                   	push   %ebx
48399a:	53                   	push   %ebx
48399b:	6a 02                	push   $0x2
48399d:	ff 75 08             	push   0x8(%ebp)
4839a0:	e8 8f 61 ff ff       	call   0x479b34
4839a5:	23 c2                	and    %edx,%eax
4839a7:	83 c4 10             	add    $0x10,%esp
4839aa:	83 f8 ff             	cmp    $0xffffffff,%eax
4839ad:	74 d7                	je     0x483986
4839af:	c6 07 02             	movb   $0x2,(%edi)
4839b2:	eb 15                	jmp    0x4839c9
4839b4:	53                   	push   %ebx
4839b5:	53                   	push   %ebx
4839b6:	53                   	push   %ebx
4839b7:	ff 75 08             	push   0x8(%ebp)
4839ba:	e8 75 61 ff ff       	call   0x479b34
4839bf:	23 c2                	and    %edx,%eax
4839c1:	83 c4 10             	add    $0x10,%esp
4839c4:	83 f8 ff             	cmp    $0xffffffff,%eax
4839c7:	74 bd                	je     0x483986
4839c9:	85 f6                	test   %esi,%esi
4839cb:	0f 84 18 ff ff ff    	je     0x4838e9
4839d1:	0f be 07             	movsbl (%edi),%eax
4839d4:	8b f3                	mov    %ebx,%esi
4839d6:	89 5d fc             	mov    %ebx,-0x4(%ebp)
4839d9:	83 e8 01             	sub    $0x1,%eax
4839dc:	74 11                	je     0x4839ef
4839de:	83 e8 01             	sub    $0x1,%eax
4839e1:	75 16                	jne    0x4839f9
4839e3:	6a 02                	push   $0x2
4839e5:	c7 45 fc ff fe 00 00 	movl   $0xfeff,-0x4(%ebp)
4839ec:	5e                   	pop    %esi
4839ed:	eb 12                	jmp    0x483a01
4839ef:	6a 03                	push   $0x3
4839f1:	c7 45 fc ef bb bf 00 	movl   $0xbfbbef,-0x4(%ebp)
4839f8:	5e                   	pop    %esi
4839f9:	85 f6                	test   %esi,%esi
4839fb:	0f 8e e8 fe ff ff    	jle    0x4838e9
483a01:	8b c6                	mov    %esi,%eax