454683:	74 04                	je     0x454689
454685:	3b df                	cmp    %edi,%ebx
454687:	75 6c                	jne    0x4546f5
454689:	8b 45 f4             	mov    -0xc(%ebp),%eax
45468c:	e8 d3 4d fd ff       	call   0x429464
454691:	89 45 ec             	mov    %eax,-0x14(%ebp)
454694:	8d 55 d8             	lea    -0x28(%ebp),%edx
454697:	8b 45 ec             	mov    -0x14(%ebp),%eax
45469a:	e8 15 03 fd ff       	call   0x4249b4
45469f:	6a 00                	push   $0x0
4546a1:	6a 00                	push   $0x0
4546a3:	6a 00                	push   $0x0
4546a5:	8b 45 ec             	mov    -0x14(%ebp),%eax
4546a8:	e8 6f 06 fd ff       	call   0x424d1c
4546ad:	50                   	push   %eax
4546ae:	53                   	push   %ebx
4546af:	8b 45 f8             	mov    -0x8(%ebp),%eax
4546b2:	50                   	push   %eax
4546b3:	e8 b8 6f fd ff       	call   0x42b670
4546b8:	8b 45 f0             	mov    -0x10(%ebp),%eax
4546bb:	e8 a4 4d fd ff       	call   0x429464
4546c0:	89 45 e8             	mov    %eax,-0x18(%ebp)
4546c3:	8d 55 d8             	lea    -0x28(%ebp),%edx
4546c6:	8b 45 e8             	mov    -0x18(%ebp),%eax
4546c9:	e8 e6 02 fd ff       	call   0x4249b4
4546ce:	6a 10                	push   $0x10
4546d0:	6a 00                	push   $0x0
4546d2:	6a 00                	push   $0x0
4546d4:	8b 45 e8             	mov    -0x18(%ebp),%eax
4546d7:	e8 40 06 fd ff       	call   0x424d1c
4546dc:	50                   	push   %eax
4546dd:	53                   	push   %ebx
4546de:	8b 45 f8             	mov    -0x8(%ebp),%eax
4546e1:	50                   	push   %eax
4546e2:	e8 89 6f fd ff       	call   0x42b670
4546e7:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4546ea:	8b 55 f4             	mov    -0xc(%ebp),%edx
4546ed:	8b 45 fc             	mov    -0x4(%ebp),%eax
4546f0:	e8 4b f7 ff ff       	call   0x453e40
4546f5:	43                   	inc    %ebx
4546f6:	4e                   	dec    %esi
4546f7:	75 87                	jne    0x454680
4546f9:	33 c0                	xor    %eax,%eax
4546fb:	5a                   	pop    %edx
4546fc:	59                   	pop    %ecx
4546fd:	59                   	pop    %ecx
4546fe:	64 89 10             	mov    %edx,%fs:(%eax)
454701:	68 16 47 45 00       	push   $0x454716
454706:	8b 45 f0             	mov    -0x10(%ebp),%eax
454709:	e8 b2 eb fa ff       	call   0x4032c0
45470e:	c3                   	ret
45470f:	e9 40 f3 fa ff       	jmp    0x403a54
454714:	eb f0                	jmp    0x454706
454716:	33 c0                	xor    %eax,%eax
454718:	5a                   	pop    %edx
454719:	59                   	pop    %ecx
45471a:	59                   	pop    %ecx
45471b:	64 89 10             	mov    %edx,%fs:(%eax)
45471e:	68 33 47 45 00       	push   $0x454733
454723:	8b 45 f4             	mov    -0xc(%ebp),%eax
454726:	e8 95 eb fa ff       	call   0x4032c0
45472b:	c3                   	ret
45472c:	e9 23 f3 fa ff       	jmp    0x403a54
454731:	eb f0                	jmp    0x454723
454733:	33 c0                	xor    %eax,%eax
454735:	5a                   	pop    %edx
454736:	59                   	pop    %ecx
454737:	59                   	pop    %ecx
454738:	64 89 10             	mov    %edx,%fs:(%eax)
45473b:	68 50 47 45 00       	push   $0x454750
454740:	8b 45 fc             	mov    -0x4(%ebp),%eax
454743:	e8 00 0b 00 00       	call   0x455248
454748:	c3                   	ret
454749:	e9 06 f3 fa ff       	jmp    0x403a54
45474e:	eb f0                	jmp    0x454740
454750:	5f                   	pop    %edi
454751:	5e                   	pop    %esi
454752:	5b                   	pop    %ebx
454753:	8b e5                	mov    %ebp,%esp
454755:	5d                   	pop    %ebp
454756:	c3                   	ret
454757:	90                   	nop
454758:	53                   	push   %ebx
454759:	56                   	push   %esi
45475a:	8b f2                	mov    %edx,%esi
45475c:	8b d8                	mov    %eax,%ebx
45475e:	85 f6                	test   %esi,%esi
454760:	74 13                	je     0x454775
454762:	8b c6                	mov    %esi,%eax
454764:	e8 9b f5 ff ff       	call   0x453d04
454769:	8b d0                	mov    %eax,%edx
45476b:	83 c9 ff             	or     $0xffffffff,%ecx
45476e:	8b c3                	mov    %ebx,%eax
454770:	e8 3b fe ff ff       	call   0x4545b0
454775:	5e                   	pop    %esi
454776:	5b                   	pop    %ebx
454777:	c3                   	ret
454778:	53                   	push   %ebx
454779:	56                   	push   %esi
45477a:	8b f2                	mov    %edx,%esi
45477c:	8b d8                	mov    %eax,%ebx
45477e:	85 f6                	test   %esi,%esi
454780:	75 0a                	jne    0x45478c
454782:	8b c3                	mov    %ebx,%eax
454784:	e8 df f5 ff ff       	call   0x453d68
454789:	5e                   	pop    %esi
45478a:	5b                   	pop    %ebx
45478b:	c3                   	ret
45478c:	8b c6                	mov    %esi,%eax
45478e:	8b 15 54 38 45 00    	mov    0x453854,%edx
454794:	e8 b3 ec fa ff       	call   0x40344c
454799:	84 c0                	test   %al,%al
45479b:	0f 84 88 00 00 00    	je     0x454829
4547a1:	8b c3                	mov    %ebx,%eax
4547a3:	e8 58 fb ff ff       	call   0x454300
4547a8:	8a 46 41             	mov    0x41(%esi),%al
4547ab:	88 43 41             	mov    %al,0x41(%ebx)
4547ae:	8a 46 43             	mov    0x43(%esi),%al
4547b1:	88 43 43             	mov    %al,0x43(%ebx)
4547b4:	8a 56 40             	mov    0x40(%esi),%dl
4547b7:	8b c3                	mov    %ebx,%eax
4547b9:	e8 a2 01 00 00       	call   0x454960
4547be:	8a 46 42             	mov    0x42(%esi),%al
4547c1:	88 43 42             	mov    %al,0x42(%ebx)
4547c4:	8b c6                	mov    %esi,%eax
4547c6:	e8 39 f5 ff ff       	call   0x453d04
4547cb:	8b d0                	mov    %eax,%edx
4547cd:	8b c3                	mov    %ebx,%eax
4547cf:	e8 34 f4 ff ff       	call   0x453c08
4547d4:	8b c3                	mov    %ebx,%eax
4547d6:	e8 55 f3 ff ff       	call   0x453b30
4547db:	84 c0                	test   %al,%al
4547dd:	75 09                	jne    0x4547e8
4547df:	8b c3                	mov    %ebx,%eax
4547e1:	e8 52 f3 ff ff       	call   0x453b38
4547e6:	eb 15                	jmp    0x4547fd
4547e8:	8b 43 30             	mov    0x30(%ebx),%eax
4547eb:	50                   	push   %eax
4547ec:	8b 43 34             	mov    0x34(%ebx),%eax
4547ef:	50                   	push   %eax
4547f0:	8b c3                	mov    %ebx,%eax
4547f2:	e8 0d f5 ff ff       	call   0x453d04
4547f7:	50                   	push   %eax
4547f8:	e8 eb 6e fd ff       	call   0x42b6e8
4547fd:	8b c6                	mov    %esi,%eax
4547ff:	e8 00 f5 ff ff       	call   0x453d04
454804:	50                   	push   %eax
454805:	e8 52 6e fd ff       	call   0x42b65c
45480a:	e8 3d f1 ff ff       	call   0x45394c
45480f:	8b d0                	mov    %eax,%edx
454811:	8b c3                	mov    %ebx,%eax
454813:	e8 f4 fa ff ff       	call   0x45430c
454818:	8b 46 48             	mov    0x48(%esi),%eax
45481b:	89 43 48             	mov    %eax,0x48(%ebx)
45481e:	8b d6                	mov    %esi,%edx
454820:	8b c3                	mov    %ebx,%eax
454822:	e8 31 ff ff ff       	call   0x454758
454827:	eb 09                	jmp    0x454832
454829:	8b d6                	mov    %esi,%edx
45482b:	8b c3                	mov    %ebx,%eax
45482d:	e8 66 45 fc ff       	call   0x418d98
454832:	5e                   	pop    %esi
454833:	5b                   	pop    %ebx
454834:	c3                   	ret
454835:	8d 40 00             	lea    0x0(%eax),%eax
454838:	53                   	push   %ebx
454839:	56                   	push   %esi
45483a:	8b da                	mov    %edx,%ebx
45483c:	8b f0                	mov    %eax,%esi
45483e:	8b c3                	mov    %ebx,%eax
454840:	8b 15 54 38 45 00    	mov    0x453854,%edx
454846:	e8 01 ec fa ff       	call   0x40344c
45484b:	84 c0                	test   %al,%al
45484d:	0f 84 89 00 00 00    	je     0x4548dc
454853:	8a 46 41             	mov    0x41(%esi),%al
454856:	88 43 41             	mov    %al,0x41(%ebx)
454859:	8a 46 43             	mov    0x43(%esi),%al
45485c:	88 43 43             	mov    %al,0x43(%ebx)
45485f:	8a 56 40             	mov    0x40(%esi),%dl
454862:	8b c3                	mov    %ebx,%eax
454864:	e8 f7 00 00 00       	call   0x454960
454869:	8a 46 42             	mov    0x42(%esi),%al
45486c:	88 43 42             	mov    %al,0x42(%ebx)
45486f:	8b 46 48             	mov    0x48(%esi),%eax
454872:	89 43 48             	mov    %eax,0x48(%ebx)
454875:	8b c3                	mov    %ebx,%eax
454877:	e8 84 fa ff ff       	call   0x454300
45487c:	8b c6                	mov    %esi,%eax
45487e:	e8 81 f4 ff ff       	call   0x453d04
454883:	8b d0                	mov    %eax,%edx
454885:	8b c3                	mov    %ebx,%eax
454887:	e8 7c f3 ff ff       	call   0x453c08
45488c:	8b c3                	mov    %ebx,%eax
45488e:	e8 9d f2 ff ff       	call   0x453b30
454893:	84 c0                	test   %al,%al
454895:	75 09                	jne    0x4548a0
454897:	8b c3                	mov    %ebx,%eax
454899:	e8 9a f2 ff ff       	call   0x453b38
45489e:	eb 15                	jmp    0x4548b5
4548a0:	8b 43 30             	mov    0x30(%ebx),%eax
4548a3:	50                   	push   %eax
4548a4:	8b 43 34             	mov    0x34(%ebx),%eax
4548a7:	50                   	push   %eax
4548a8:	8b c3                	mov    %ebx,%eax
4548aa:	e8 55 f4 ff ff       	call   0x453d04
4548af:	50                   	push   %eax
4548b0:	e8 33 6e fd ff       	call   0x42b6e8
4548b5:	8b c6                	mov    %esi,%eax
4548b7:	e8 48 f4 ff ff       	call   0x453d04
4548bc:	50                   	push   %eax
4548bd:	e8 9a 6d fd ff       	call   0x42b65c
4548c2:	e8 85 f0 ff ff       	call   0x45394c
4548c7:	8b d0                	mov    %eax,%edx
4548c9:	8b c3                	mov    %ebx,%eax
4548cb:	e8 3c fa ff ff       	call   0x45430c
4548d0:	8b d6                	mov    %esi,%edx
4548d2:	8b c3                	mov    %ebx,%eax
4548d4:	e8 7f fe ff ff       	call   0x454758
4548d9:	5e                   	pop    %esi
4548da:	5b                   	pop    %ebx
4548db:	c3                   	ret
4548dc:	8b d3                	mov    %ebx,%edx
4548de:	8b c6                	mov    %esi,%eax
4548e0:	e8 97 45 fc ff       	call   0x418e7c
4548e5:	5e                   	pop    %esi
4548e6:	5b                   	pop    %ebx
4548e7:	c3                   	ret
4548e8:	55                   	push   %ebp
4548e9:	8b ec                	mov    %esp,%ebp
4548eb:	6a 00                	push   $0x0
4548ed:	53                   	push   %ebx
4548ee:	56                   	push   %esi
4548ef:	8b f2                	mov    %edx,%esi
4548f1:	8b d8                	mov    %eax,%ebx
4548f3:	33 c0                	xor    %eax,%eax
4548f5:	55                   	push   %ebp
4548f6:	68 54 49 45 00       	push   $0x454954
4548fb:	64 ff 30             	push   %fs:(%eax)
4548fe:	64 89 20             	mov    %esp,%fs:(%eax)
454901:	85 f6                	test   %esi,%esi
454903:	74 39                	je     0x45493e
454905:	8b c6                	mov    %esi,%eax
454907:	8b 10                	mov    (%eax),%edx
454909:	ff 52 20             	call   *0x20(%edx)
45490c:	3b 43 30             	cmp    0x30(%ebx),%eax
45490f:	7c 0c                	jl     0x45491d
454911:	8b c6                	mov    %esi,%eax
454913:	8b 10                	mov    (%eax),%edx
454915:	ff 52 2c             	call   *0x2c(%edx)
454918:	3b 43 34             	cmp    0x34(%ebx),%eax
45491b:	7d 21                	jge    0x45493e
45491d:	8d 55 fc             	lea    -0x4(%ebp),%edx
454920:	a1 c0 45 47 00       	mov    0x4745c0,%eax
454925:	e8 ba 14 fb ff       	call   0x405de4
45492a:	8b 4d fc             	mov    -0x4(%ebp),%ecx
45492d:	b2 01                	mov    $0x1,%dl
45492f:	a1 78 5f 41 00       	mov    0x415f78,%eax
454934:	e8 bb 71 fb ff       	call   0x40baf4
454939:	e8 4e f1 fa ff       	call   0x403a8c
45493e:	33 c0                	xor    %eax,%eax
454940:	5a                   	pop    %edx
454941:	59                   	pop    %ecx
454942:	59                   	pop    %ecx
454943:	64 89 10             	mov    %edx,%fs:(%eax)
454946:	68 5b 49 45 00       	push   $0x45495b
45494b:	8d 45 fc             	lea    -0x4(%ebp),%eax
45494e:	e8 fd f6 fa ff       	call   0x404050
454953:	c3                   	ret
454954:	e9 fb f0 fa ff       	jmp    0x403a54
454959:	eb f0                	jmp    0x45494b
45495b:	5e                   	pop    %esi
45495c:	5b                   	pop    %ebx
45495d:	59                   	pop    %ecx
45495e:	5d                   	pop    %ebp
45495f:	c3                   	ret
454960:	56                   	push   %esi
454961:	8b f0                	mov    %eax,%esi
454963:	3a 56 40             	cmp    0x40(%esi),%dl
454966:	74 0e                	je     0x454976
454968:	88 56 40             	mov    %dl,0x40(%esi)
45496b:	8b c6                	mov    %esi,%eax
45496d:	66 be ef ff          	mov    $0xffef,%si
454971:	e8 46 eb fa ff       	call   0x4034bc
454976:	5e                   	pop    %esi
454977:	c3                   	ret
454978:	53                   	push   %ebx
454979:	8b da                	mov    %edx,%ebx
45497b:	8b cb                	mov    %ebx,%ecx
45497d:	33 d2                	xor    %edx,%edx
45497f:	33 c0                	xor    %eax,%eax
454981:	e8 66 27 fc ff       	call   0x4170ec
454986:	5b                   	pop    %ebx
454987:	c3                   	ret
454988:	53                   	push   %ebx
454989:	56                   	push   %esi
45498a:	57                   	push   %edi
45498b:	55                   	push   %ebp
45498c:	8b d8                	mov    %eax,%ebx
45498e:	c6 43 58 01          	movb   $0x1,0x58(%ebx)
454992:	83 7b 5c 00          	cmpl   $0x0,0x5c(%ebx)
454996:	7f 38                	jg     0x4549d0
454998:	8b 43 4c             	mov    0x4c(%ebx),%eax
45499b:	85 c0                	test   %eax,%eax
45499d:	74 22                	je     0x4549c1
45499f:	8b 78 08             	mov    0x8(%eax),%edi
4549a2:	4f                   	dec    %edi
4549a3:	85 ff                	test   %edi,%edi
4549a5:	7c 1a                	jl     0x4549c1
4549a7:	47                   	inc    %edi
4549a8:	33 ed                	xor    %ebp,%ebp
4549aa:	8b d5                	mov    %ebp,%edx
4549ac:	8b 43 4c             	mov    0x4c(%ebx),%eax
4549af:	e8 d0 3d fc ff       	call   0x418784
4549b4:	66 be ff ff          	mov    $0xffff,%si
4549b8:	e8 ff ea fa ff       	call   0x4034bc
4549bd:	45                   	inc    %ebp
4549be:	4f                   	dec    %edi
4549bf:	75 e9                	jne    0x4549aa
4549c1:	66 83 7b 62 00       	cmpw   $0x0,0x62(%ebx)
4549c6:	74 08                	je     0x4549d0
4549c8:	8b d3                	mov    %ebx,%edx
4549ca:	8b 43 64             	mov    0x64(%ebx),%eax
4549cd:	ff 53 60             	call   *0x60(%ebx)
4549d0:	5d                   	pop    %ebp
4549d1:	5f                   	pop    %edi
4549d2:	5e                   	pop    %esi
4549d3:	5b                   	pop    %ebx
4549d4:	c3                   	ret
4549d5:	8d 40 00             	lea    0x0(%eax),%eax
4549d8:	53                   	push   %ebx
4549d9:	56                   	push   %esi
4549da:	57                   	push   %edi
4549db:	55                   	push   %ebp
4549dc:	8b ea                	mov    %edx,%ebp
4549de:	8b d8                	mov    %eax,%ebx
4549e0:	8b 43 4c             	mov    0x4c(%ebx),%eax
4549e3:	85 c0                	test   %eax,%eax
4549e5:	74 2e                	je     0x454a15
4549e7:	8b 78 08             	mov    0x8(%eax),%edi
4549ea:	4f                   	dec    %edi
4549eb:	85 ff                	test   %edi,%edi
4549ed:	7c 26                	jl     0x454a15
4549ef:	47                   	inc    %edi
4549f0:	33 f6                	xor    %esi,%esi
4549f2:	8b d6                	mov    %esi,%edx
4549f4:	8b 43 4c             	mov    0x4c(%ebx),%eax
4549f7:	e8 88 3d fc ff       	call   0x418784
4549fc:	3b e8                	cmp    %eax,%ebp
4549fe:	75 11                	jne    0x454a11
454a00:	33 c0                	xor    %eax,%eax