47a70e:	e8 1c 27 fd ff       	call   0x44ce2f
47a713:	6a 16                	push   $0x16
47a715:	eb 43                	jmp    0x47a75a
47a717:	8d 4d f4             	lea    -0xc(%ebp),%ecx
47a71a:	51                   	push   %ecx
47a71b:	50                   	push   %eax
47a71c:	ff 75 14             	push   0x14(%ebp)
47a71f:	57                   	push   %edi
47a720:	e8 06 fe ff ff       	call   0x47a52b
47a725:	83 c4 10             	add    $0x10,%esp
47a728:	83 f8 ff             	cmp    $0xffffffff,%eax
47a72b:	75 12                	jne    0x47a73f
47a72d:	85 ff                	test   %edi,%edi
47a72f:	74 05                	je     0x47a736
47a731:	33 c0                	xor    %eax,%eax
47a733:	66 89 07             	mov    %ax,(%edi)
47a736:	e8 f4 26 fd ff       	call   0x44ce2f
47a73b:	8b 30                	mov    (%eax),%esi
47a73d:	eb 3a                	jmp    0x47a779
47a73f:	40                   	inc    %eax
47a740:	85 ff                	test   %edi,%edi
47a742:	74 2c                	je     0x47a770
47a744:	3b c3                	cmp    %ebx,%eax
47a746:	76 21                	jbe    0x47a769
47a748:	83 7d 18 ff          	cmpl   $0xffffffff,0x18(%ebp)
47a74c:	74 16                	je     0x47a764
47a74e:	33 c0                	xor    %eax,%eax
47a750:	66 89 07             	mov    %ax,(%edi)
47a753:	e8 d7 26 fd ff       	call   0x44ce2f
47a758:	6a 22                	push   $0x22
47a75a:	5e                   	pop    %esi
47a75b:	89 30                	mov    %esi,(%eax)
47a75d:	e8 74 25 fd ff       	call   0x44ccd6
47a762:	eb 15                	jmp    0x47a779
47a764:	6a 50                	push   $0x50
47a766:	8b c3                	mov    %ebx,%eax
47a768:	5e                   	pop    %esi
47a769:	33 c9                	xor    %ecx,%ecx
47a76b:	66 89 4c 47 fe       	mov    %cx,-0x2(%edi,%eax,2)
47a770:	8b 4d 08             	mov    0x8(%ebp),%ecx
47a773:	85 c9                	test   %ecx,%ecx
47a775:	74 02                	je     0x47a779
47a777:	89 01                	mov    %eax,(%ecx)
47a779:	80 7d fc 00          	cmpb   $0x0,-0x4(%ebp)
47a77d:	74 0a                	je     0x47a789
47a77f:	8b 4d f0             	mov    -0x10(%ebp),%ecx
47a782:	83 a1 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%ecx)
47a789:	5f                   	pop    %edi
47a78a:	8b c6                	mov    %esi,%eax
47a78c:	5e                   	pop    %esi
47a78d:	5b                   	pop    %ebx
47a78e:	8b e5                	mov    %ebp,%esp
47a790:	5d                   	pop    %ebp
47a791:	c3                   	ret
47a792:	8b ff                	mov    %edi,%edi
47a794:	55                   	push   %ebp
47a795:	8b ec                	mov    %esp,%ebp
47a797:	83 3d 08 bf 4b 00 00 	cmpl   $0x0,0x4bbf08
47a79e:	75 07                	jne    0x47a7a7
47a7a0:	68 e8 82 4b 00       	push   $0x4b82e8
47a7a5:	eb 02                	jmp    0x47a7a9
47a7a7:	6a 00                	push   $0x0
47a7a9:	ff 75 10             	push   0x10(%ebp)
47a7ac:	ff 75 0c             	push   0xc(%ebp)
47a7af:	ff 75 08             	push   0x8(%ebp)
47a7b2:	e8 74 fd ff ff       	call   0x47a52b
47a7b7:	83 c4 10             	add    $0x10,%esp
47a7ba:	5d                   	pop    %ebp
47a7bb:	c3                   	ret
47a7bc:	8b ff                	mov    %edi,%edi
47a7be:	55                   	push   %ebp
47a7bf:	8b ec                	mov    %esp,%ebp
47a7c1:	6a 00                	push   $0x0
47a7c3:	ff 75 18             	push   0x18(%ebp)
47a7c6:	ff 75 14             	push   0x14(%ebp)
47a7c9:	ff 75 10             	push   0x10(%ebp)
47a7cc:	ff 75 0c             	push   0xc(%ebp)
47a7cf:	ff 75 08             	push   0x8(%ebp)
47a7d2:	e8 d8 fe ff ff       	call   0x47a6af
47a7d7:	83 c4 18             	add    $0x18,%esp
47a7da:	5d                   	pop    %ebp
47a7db:	c3                   	ret
47a7dc:	8b ff                	mov    %edi,%edi
47a7de:	55                   	push   %ebp
47a7df:	8b ec                	mov    %esp,%ebp
47a7e1:	51                   	push   %ecx
47a7e2:	8b 55 14             	mov    0x14(%ebp),%edx
47a7e5:	8b 4d 08             	mov    0x8(%ebp),%ecx
47a7e8:	56                   	push   %esi
47a7e9:	85 d2                	test   %edx,%edx
47a7eb:	75 0d                	jne    0x47a7fa
47a7ed:	85 c9                	test   %ecx,%ecx
47a7ef:	75 0d                	jne    0x47a7fe
47a7f1:	39 4d 0c             	cmp    %ecx,0xc(%ebp)
47a7f4:	75 21                	jne    0x47a817
47a7f6:	33 c0                	xor    %eax,%eax
47a7f8:	eb 2e                	jmp    0x47a828
47a7fa:	85 c9                	test   %ecx,%ecx
47a7fc:	74 19                	je     0x47a817
47a7fe:	8b 45 0c             	mov    0xc(%ebp),%eax
47a801:	85 c0                	test   %eax,%eax
47a803:	74 12                	je     0x47a817
47a805:	85 d2                	test   %edx,%edx
47a807:	75 04                	jne    0x47a80d
47a809:	88 11                	mov    %dl,(%ecx)
47a80b:	eb e9                	jmp    0x47a7f6
47a80d:	8b 75 10             	mov    0x10(%ebp),%esi
47a810:	85 f6                	test   %esi,%esi
47a812:	75 19                	jne    0x47a82d
47a814:	c6 01 00             	movb   $0x0,(%ecx)
47a817:	e8 13 26 fd ff       	call   0x44ce2f
47a81c:	6a 16                	push   $0x16
47a81e:	5e                   	pop    %esi
47a81f:	89 30                	mov    %esi,(%eax)
47a821:	e8 b0 24 fd ff       	call   0x44ccd6
47a826:	8b c6                	mov    %esi,%eax
47a828:	5e                   	pop    %esi
47a829:	8b e5                	mov    %ebp,%esp
47a82b:	5d                   	pop    %ebp
47a82c:	c3                   	ret
47a82d:	53                   	push   %ebx
47a82e:	2b f1                	sub    %ecx,%esi
47a830:	8b d8                	mov    %eax,%ebx
47a832:	57                   	push   %edi
47a833:	8b f9                	mov    %ecx,%edi
47a835:	83 fa ff             	cmp    $0xffffffff,%edx
47a838:	75 11                	jne    0x47a84b
47a83a:	8a 04 3e             	mov    (%esi,%edi,1),%al
47a83d:	88 07                	mov    %al,(%edi)
47a83f:	47                   	inc    %edi
47a840:	84 c0                	test   %al,%al
47a842:	74 25                	je     0x47a869
47a844:	83 eb 01             	sub    $0x1,%ebx
47a847:	75 f1                	jne    0x47a83a
47a849:	eb 1e                	jmp    0x47a869
47a84b:	8a 04 3e             	mov    (%esi,%edi,1),%al
47a84e:	88 07                	mov    %al,(%edi)
47a850:	47                   	inc    %edi
47a851:	84 c0                	test   %al,%al
47a853:	74 0a                	je     0x47a85f
47a855:	83 eb 01             	sub    $0x1,%ebx
47a858:	74 05                	je     0x47a85f
47a85a:	83 ea 01             	sub    $0x1,%edx
47a85d:	75 ec                	jne    0x47a84b
47a85f:	85 d2                	test   %edx,%edx
47a861:	8b 55 14             	mov    0x14(%ebp),%edx
47a864:	75 03                	jne    0x47a869
47a866:	c6 07 00             	movb   $0x0,(%edi)
47a869:	5f                   	pop    %edi
47a86a:	85 db                	test   %ebx,%ebx
47a86c:	5b                   	pop    %ebx
47a86d:	75 87                	jne    0x47a7f6
47a86f:	83 fa ff             	cmp    $0xffffffff,%edx
47a872:	75 0d                	jne    0x47a881
47a874:	8b 45 0c             	mov    0xc(%ebp),%eax
47a877:	6a 50                	push   $0x50
47a879:	c6 44 01 ff 00       	movb   $0x0,-0x1(%ecx,%eax,1)
47a87e:	58                   	pop    %eax
47a87f:	eb a7                	jmp    0x47a828
47a881:	c6 01 00             	movb   $0x0,(%ecx)
47a884:	e8 a6 25 fd ff       	call   0x44ce2f
47a889:	6a 22                	push   $0x22
47a88b:	eb 91                	jmp    0x47a81e
47a88d:	8b ff                	mov    %edi,%edi
47a88f:	55                   	push   %ebp
47a890:	8b ec                	mov    %esp,%ebp
47a892:	5d                   	pop    %ebp
47a893:	e9 44 ff ff ff       	jmp    0x47a7dc
47a898:	8b ff                	mov    %edi,%edi
47a89a:	55                   	push   %ebp
47a89b:	8b ec                	mov    %esp,%ebp
47a89d:	83 ec 18             	sub    $0x18,%esp
47a8a0:	a1 94 80 4b 00       	mov    0x4b8094,%eax
47a8a5:	33 c5                	xor    %ebp,%eax
47a8a7:	89 45 fc             	mov    %eax,-0x4(%ebp)
47a8aa:	53                   	push   %ebx
47a8ab:	56                   	push   %esi
47a8ac:	57                   	push   %edi
47a8ad:	ff 75 08             	push   0x8(%ebp)
47a8b0:	8d 4d e8             	lea    -0x18(%ebp),%ecx
47a8b3:	e8 50 47 fd ff       	call   0x44f008
47a8b8:	8b 45 ec             	mov    -0x14(%ebp),%eax
47a8bb:	33 ff                	xor    %edi,%edi
47a8bd:	57                   	push   %edi
47a8be:	57                   	push   %edi
47a8bf:	ff 75 10             	push   0x10(%ebp)
47a8c2:	8b 40 08             	mov    0x8(%eax),%eax
47a8c5:	ff 75 0c             	push   0xc(%ebp)
47a8c8:	89 45 f8             	mov    %eax,-0x8(%ebp)
47a8cb:	e8 82 a8 ff ff       	call   0x475152
47a8d0:	8b d8                	mov    %eax,%ebx
47a8d2:	85 db                	test   %ebx,%ebx
47a8d4:	0f 84 93 00 00 00    	je     0x47a96d
47a8da:	8d 14 1b             	lea    (%ebx,%ebx,1),%edx
47a8dd:	8d 4a 08             	lea    0x8(%edx),%ecx
47a8e0:	3b d1                	cmp    %ecx,%edx
47a8e2:	1b c0                	sbb    %eax,%eax
47a8e4:	85 c1                	test   %eax,%ecx
47a8e6:	74 4a                	je     0x47a932
47a8e8:	8d 4a 08             	lea    0x8(%edx),%ecx
47a8eb:	3b d1                	cmp    %ecx,%edx
47a8ed:	1b c0                	sbb    %eax,%eax
47a8ef:	23 c1                	and    %ecx,%eax
47a8f1:	8d 4a 08             	lea    0x8(%edx),%ecx
47a8f4:	3d 00 04 00 00       	cmp    $0x400,%eax
47a8f9:	77 19                	ja     0x47a914
47a8fb:	3b d1                	cmp    %ecx,%edx
47a8fd:	1b c0                	sbb    %eax,%eax
47a8ff:	23 c1                	and    %ecx,%eax
47a901:	e8 ca 5b fc ff       	call   0x4404d0
47a906:	8b f4                	mov    %esp,%esi
47a908:	85 f6                	test   %esi,%esi
47a90a:	74 5a                	je     0x47a966
47a90c:	c7 06 cc cc 00 00    	movl   $0xcccc,(%esi)
47a912:	eb 19                	jmp    0x47a92d
47a914:	3b d1                	cmp    %ecx,%edx
47a916:	1b c0                	sbb    %eax,%eax
47a918:	23 c1                	and    %ecx,%eax
47a91a:	50                   	push   %eax
47a91b:	e8 0a c4 ff ff       	call   0x476d2a
47a920:	8b f0                	mov    %eax,%esi
47a922:	59                   	pop    %ecx
47a923:	85 f6                	test   %esi,%esi
47a925:	74 3f                	je     0x47a966
47a927:	c7 06 dd dd 00 00    	movl   $0xdddd,(%esi)
47a92d:	83 c6 08             	add    $0x8,%esi
47a930:	eb 02                	jmp    0x47a934
47a932:	8b f7                	mov    %edi,%esi
47a934:	85 f6                	test   %esi,%esi
47a936:	74 2e                	je     0x47a966
47a938:	53                   	push   %ebx
47a939:	56                   	push   %esi
47a93a:	ff 75 10             	push   0x10(%ebp)
47a93d:	ff 75 0c             	push   0xc(%ebp)
47a940:	e8 0d a8 ff ff       	call   0x475152
47a945:	85 c0                	test   %eax,%eax
47a947:	74 1d                	je     0x47a966
47a949:	8b 45 18             	mov    0x18(%ebp),%eax
47a94c:	57                   	push   %edi
47a94d:	57                   	push   %edi
47a94e:	50                   	push   %eax
47a94f:	f7 d8                	neg    %eax
47a951:	1b c0                	sbb    %eax,%eax
47a953:	23 45 14             	and    0x14(%ebp),%eax
47a956:	50                   	push   %eax
47a957:	6a ff                	push   $0xffffffff
47a959:	56                   	push   %esi
47a95a:	57                   	push   %edi
47a95b:	ff 75 f8             	push   -0x8(%ebp)
47a95e:	ff 15 78 41 49 00    	call   *0x494178
47a964:	8b f8                	mov    %eax,%edi
47a966:	56                   	push   %esi
47a967:	e8 b7 d8 fa ff       	call   0x428223
47a96c:	59                   	pop    %ecx
47a96d:	80 7d f4 00          	cmpb   $0x0,-0xc(%ebp)
47a971:	74 0a                	je     0x47a97d
47a973:	8b 45 e8             	mov    -0x18(%ebp),%eax
47a976:	83 a0 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%eax)
47a97d:	8b c7                	mov    %edi,%eax
47a97f:	8d 65 dc             	lea    -0x24(%ebp),%esp
47a982:	5f                   	pop    %edi
47a983:	5e                   	pop    %esi
47a984:	5b                   	pop    %ebx
47a985:	8b 4d fc             	mov    -0x4(%ebp),%ecx
47a988:	33 cd                	xor    %ebp,%ecx
47a98a:	e8 73 50 fc ff       	call   0x43fa02
47a98f:	8b e5                	mov    %ebp,%esp
47a991:	5d                   	pop    %ebp
47a992:	c3                   	ret
47a993:	8b ff                	mov    %edi,%edi
47a995:	55                   	push   %ebp
47a996:	8b ec                	mov    %esp,%ebp
47a998:	81 ec 90 00 00 00    	sub    $0x90,%esp
47a99e:	a1 94 80 4b 00       	mov    0x4b8094,%eax
47a9a3:	33 c5                	xor    %ebp,%eax
47a9a5:	89 45 fc             	mov    %eax,-0x4(%ebp)
47a9a8:	8b 45 0c             	mov    0xc(%ebp),%eax
47a9ab:	8b 4d 08             	mov    0x8(%ebp),%ecx
47a9ae:	53                   	push   %ebx
47a9af:	8b 5d 18             	mov    0x18(%ebp),%ebx
47a9b2:	56                   	push   %esi
47a9b3:	8b 75 10             	mov    0x10(%ebp),%esi
47a9b6:	57                   	push   %edi
47a9b7:	33 ff                	xor    %edi,%edi
47a9b9:	89 8d 70 ff ff ff    	mov    %ecx,-0x90(%ebp)
47a9bf:	89 b5 78 ff ff ff    	mov    %esi,-0x88(%ebp)
47a9c5:	89 3b                	mov    %edi,(%ebx)
47a9c7:	83 f8 01             	cmp    $0x1,%eax
47a9ca:	0f 85 e2 00 00 00    	jne    0x47aab2
47a9d0:	68 80 00 00 00       	push   $0x80
47a9d5:	8d 85 7c ff ff ff    	lea    -0x84(%ebp),%eax
47a9db:	50                   	push   %eax
47a9dc:	ff 75 14             	push   0x14(%ebp)
47a9df:	56                   	push   %esi
47a9e0:	51                   	push   %ecx
47a9e1:	e8 b2 fe ff ff       	call   0x47a898
47a9e6:	83 c4 14             	add    $0x14,%esp
47a9e9:	89 85 74 ff ff ff    	mov    %eax,-0x8c(%ebp)
47a9ef:	85 c0                	test   %eax,%eax
47a9f1:	74 46                	je     0x47aa39
47a9f3:	6a 01                	push   $0x1
47a9f5:	50                   	push   %eax
47a9f6:	e8 58 78 ff ff       	call   0x472253
47a9fb:	57                   	push   %edi
47a9fc:	89 03                	mov    %eax,(%ebx)
47a9fe:	e8 36 79 ff ff       	call   0x472339
47aa03:	83 c4 0c             	add    $0xc,%esp
47aa06:	39 3b                	cmp    %edi,(%ebx)
47aa08:	0f 84 18 01 00 00    	je     0x47ab26
47aa0e:	8b 8d 74 ff ff ff    	mov    -0x8c(%ebp),%ecx
47aa14:	8d 41 ff             	lea    -0x1(%ecx),%eax
47aa17:	50                   	push   %eax
47aa18:	8d 85 7c ff ff ff    	lea    -0x84(%ebp),%eax
47aa1e:	50                   	push   %eax
47aa1f:	51                   	push   %ecx
47aa20:	ff 33                	push   (%ebx)
47aa22:	e8 66 fe ff ff       	call   0x47a88d
47aa27:	83 c4 10             	add    $0x10,%esp
47aa2a:	85 c0                	test   %eax,%eax
47aa2c:	0f 85 08 01 00 00    	jne    0x47ab3a
47aa32:	33 c0                	xor    %eax,%eax
47aa34:	e9 f0 00 00 00       	jmp    0x47ab29
47aa39:	ff 15 24 41 49 00    	call   *0x494124
47aa3f:	83 f8 7a             	cmp    $0x7a,%eax
47aa42:	0f 85 de 00 00 00    	jne    0x47ab26
47aa48:	57                   	push   %edi
47aa49:	57                   	push   %edi
47aa4a:	ff 75 14             	push   0x14(%ebp)
47aa4d:	56                   	push   %esi
47aa4e:	ff b5 70 ff ff ff    	push   -0x90(%ebp)
47aa54:	e8 3f fe ff ff       	call   0x47a898
47aa59:	83 c4 14             	add    $0x14,%esp
47aa5c:	89 85 74 ff ff ff    	mov    %eax,-0x8c(%ebp)
47aa62:	85 c0                	test   %eax,%eax
47aa64:	0f 84 bc 00 00 00    	je     0x47ab26
47aa6a:	6a 01                	push   $0x1
47aa6c:	50                   	push   %eax
47aa6d:	e8 e1 77 ff ff       	call   0x472253
47aa72:	8b f0                	mov    %eax,%esi
47aa74:	59                   	pop    %ecx
47aa75:	59                   	pop    %ecx
47aa76:	85 f6                	test   %esi,%esi
47aa78:	74 2a                	je     0x47aaa4
47aa7a:	ff b5 74 ff ff ff    	push   -0x8c(%ebp)
47aa80:	56                   	push   %esi
47aa81:	ff 75 14             	push   0x14(%ebp)
47aa84:	ff b5 78 ff ff ff    	push   -0x88(%ebp)
47aa8a:	ff b5 70 ff ff ff    	push   -0x90(%ebp)
47aa90:	e8 03 fe ff ff       	call   0x47a898
47aa95:	83 c4 14             	add    $0x14,%esp