4456b8:	83 7d fc ff          	cmpl   $0xffffffff,-0x4(%ebp)
4456bc:	75 aa                	jne    0x445668
4456be:	33 c0                	xor    %eax,%eax
4456c0:	5a                   	pop    %edx
4456c1:	59                   	pop    %ecx
4456c2:	59                   	pop    %ecx
4456c3:	64 89 10             	mov    %edx,%fs:(%eax)
4456c6:	68 dd 56 44 00       	push   $0x4456dd
4456cb:	a1 68 5b 47 00       	mov    0x475b68,%eax
4456d0:	e8 d7 34 fd ff       	call   0x418bac
4456d5:	c3                   	ret
4456d6:	e9 79 e3 fb ff       	jmp    0x403a54
4456db:	eb ee                	jmp    0x4456cb
4456dd:	8b e5                	mov    %ebp,%esp
4456df:	5d                   	pop    %ebp
4456e0:	c3                   	ret
4456e1:	8d 40 00             	lea    0x0(%eax),%eax
4456e4:	53                   	push   %ebx
4456e5:	56                   	push   %esi
4456e6:	e8 a1 df fb ff       	call   0x40368c
4456eb:	8b da                	mov    %edx,%ebx
4456ed:	8b f0                	mov    %eax,%esi
4456ef:	8b c6                	mov    %esi,%eax
4456f1:	e8 c2 00 00 00       	call   0x4457b8
4456f6:	8b d3                	mov    %ebx,%edx
4456f8:	80 e2 fc             	and    $0xfc,%dl
4456fb:	8b c6                	mov    %esi,%eax
4456fd:	e8 22 f1 fd ff       	call   0x424824
445702:	84 db                	test   %bl,%bl
445704:	7e 07                	jle    0x44570d
445706:	8b c6                	mov    %esi,%eax
445708:	e8 67 df fb ff       	call   0x403674
44570d:	5e                   	pop    %esi
44570e:	5b                   	pop    %ebx
44570f:	c3                   	ret
445710:	55                   	push   %ebp
445711:	8b ec                	mov    %esp,%ebp
445713:	51                   	push   %ecx
445714:	53                   	push   %ebx
445715:	89 45 fc             	mov    %eax,-0x4(%ebp)
445718:	8b 45 fc             	mov    -0x4(%ebp),%eax
44571b:	83 78 58 00          	cmpl   $0x0,0x58(%eax)
44571f:	75 0d                	jne    0x44572e
445721:	8b 45 fc             	mov    -0x4(%ebp),%eax
445724:	e8 6f f6 fd ff       	call   0x424d98
445729:	e9 84 00 00 00       	jmp    0x4457b2
44572e:	8b 45 fc             	mov    -0x4(%ebp),%eax
445731:	83 78 5c 00          	cmpl   $0x0,0x5c(%eax)
445735:	75 65                	jne    0x44579c
445737:	a1 68 5b 47 00       	mov    0x475b68,%eax
44573c:	e8 07 34 fd ff       	call   0x418b48
445741:	8b d8                	mov    %eax,%ebx
445743:	33 c0                	xor    %eax,%eax
445745:	55                   	push   %ebp
445746:	68 95 57 44 00       	push   $0x445795
44574b:	64 ff 30             	push   %fs:(%eax)
44574e:	64 89 20             	mov    %esp,%fs:(%eax)
445751:	83 7b 08 04          	cmpl   $0x4,0x8(%ebx)
445755:	7c 05                	jl     0x44575c
445757:	e8 20 fe ff ff       	call   0x44557c
44575c:	8b 45 fc             	mov    -0x4(%ebp),%eax
44575f:	8d 50 60             	lea    0x60(%eax),%edx
445762:	8b 45 fc             	mov    -0x4(%ebp),%eax
445765:	8b 40 58             	mov    0x58(%eax),%eax
445768:	8b 08                	mov    (%eax),%ecx
44576a:	ff 51 48             	call   *0x48(%ecx)
44576d:	8b 55 fc             	mov    -0x4(%ebp),%edx
445770:	89 42 5c             	mov    %eax,0x5c(%edx)
445773:	8b 55 fc             	mov    -0x4(%ebp),%edx
445776:	8b c3                	mov    %ebx,%eax
445778:	e8 ab 2e fd ff       	call   0x418628
44577d:	33 c0                	xor    %eax,%eax
44577f:	5a                   	pop    %edx
445780:	59                   	pop    %ecx
445781:	59                   	pop    %ecx
445782:	64 89 10             	mov    %edx,%fs:(%eax)
445785:	68 9c 57 44 00       	push   $0x44579c
44578a:	a1 68 5b 47 00       	mov    0x475b68,%eax
44578f:	e8 18 34 fd ff       	call   0x418bac
445794:	c3                   	ret
445795:	e9 ba e2 fb ff       	jmp    0x403a54
44579a:	eb ee                	jmp    0x44578a
44579c:	8b 45 fc             	mov    -0x4(%ebp),%eax
44579f:	8b 50 5c             	mov    0x5c(%eax),%edx
4457a2:	8b 45 fc             	mov    -0x4(%ebp),%eax
4457a5:	e8 f2 f5 fd ff       	call   0x424d9c
4457aa:	8b 45 fc             	mov    -0x4(%ebp),%eax
4457ad:	e8 52 00 00 00       	call   0x445804
4457b2:	5b                   	pop    %ebx
4457b3:	59                   	pop    %ecx
4457b4:	5d                   	pop    %ebp
4457b5:	c3                   	ret
4457b6:	8b c0                	mov    %eax,%eax
4457b8:	53                   	push   %ebx
4457b9:	8b d8                	mov    %eax,%ebx
4457bb:	83 7b 5c 00          	cmpl   $0x0,0x5c(%ebx)
4457bf:	74 27                	je     0x4457e8
4457c1:	33 d2                	xor    %edx,%edx
4457c3:	8b c3                	mov    %ebx,%eax
4457c5:	e8 d2 f5 fd ff       	call   0x424d9c
4457ca:	8b d3                	mov    %ebx,%edx
4457cc:	a1 68 5b 47 00       	mov    0x475b68,%eax
4457d1:	e8 86 33 fd ff       	call   0x418b5c
4457d6:	8b 43 5c             	mov    0x5c(%ebx),%eax
4457d9:	50                   	push   %eax
4457da:	8b 43 60             	mov    0x60(%ebx),%eax
4457dd:	50                   	push   %eax
4457de:	e8 b1 12 fc ff       	call   0x406a94
4457e3:	33 c0                	xor    %eax,%eax
4457e5:	89 43 5c             	mov    %eax,0x5c(%ebx)
4457e8:	5b                   	pop    %ebx
4457e9:	c3                   	ret
4457ea:	8b c0                	mov    %eax,%eax
4457ec:	53                   	push   %ebx
4457ed:	56                   	push   %esi
4457ee:	8b f2                	mov    %edx,%esi
4457f0:	8b d8                	mov    %eax,%ebx
4457f2:	3b 73 58             	cmp    0x58(%ebx),%esi
4457f5:	74 0a                	je     0x445801
4457f7:	8b c3                	mov    %ebx,%eax
4457f9:	e8 ba ff ff ff       	call   0x4457b8
4457fe:	89 73 58             	mov    %esi,0x58(%ebx)
445801:	5e                   	pop    %esi
445802:	5b                   	pop    %ebx
445803:	c3                   	ret
445804:	53                   	push   %ebx
445805:	56                   	push   %esi
445806:	8b d8                	mov    %eax,%ebx
445808:	8b 73 58             	mov    0x58(%ebx),%esi
44580b:	85 f6                	test   %esi,%esi
44580d:	74 1b                	je     0x44582a
44580f:	8b c6                	mov    %esi,%eax
445811:	e8 22 1a 00 00       	call   0x447238
445816:	84 c0                	test   %al,%al
445818:	74 09                	je     0x445823
44581a:	81 4b 54 80 00 00 00 	orl    $0x80,0x54(%ebx)
445821:	eb 07                	jmp    0x44582a
445823:	81 63 54 7f ff ff ff 	andl   $0xffffff7f,0x54(%ebx)
44582a:	5e                   	pop    %esi
44582b:	5b                   	pop    %ebx
44582c:	c3                   	ret
44582d:	8d 40 00             	lea    0x0(%eax),%eax
445830:	53                   	push   %ebx
445831:	56                   	push   %esi
445832:	57                   	push   %edi
445833:	84 d2                	test   %dl,%dl
445835:	74 08                	je     0x44583f
445837:	83 c4 f0             	add    $0xfffffff0,%esp
44583a:	e8 e5 dd fb ff       	call   0x403624
44583f:	8b f1                	mov    %ecx,%esi
445841:	8b da                	mov    %edx,%ebx
445843:	8b f8                	mov    %eax,%edi
445845:	33 d2                	xor    %edx,%edx
445847:	8b c7                	mov    %edi,%eax
445849:	e8 42 da fb ff       	call   0x403290
44584e:	89 77 04             	mov    %esi,0x4(%edi)
445851:	8b c7                	mov    %edi,%eax
445853:	84 db                	test   %bl,%bl
445855:	74 0f                	je     0x445866
445857:	e8 20 de fb ff       	call   0x40367c
44585c:	64 8f 05 00 00 00 00 	pop    %fs:0x0
445863:	83 c4 0c             	add    $0xc,%esp
445866:	8b c7                	mov    %edi,%eax
445868:	5f                   	pop    %edi
445869:	5e                   	pop    %esi
44586a:	5b                   	pop    %ebx
44586b:	c3                   	ret
44586c:	53                   	push   %ebx
44586d:	56                   	push   %esi
44586e:	8b da                	mov    %edx,%ebx
445870:	8b f0                	mov    %eax,%esi
445872:	8b c3                	mov    %ebx,%eax
445874:	8b 15 20 1d 44 00    	mov    0x441d20,%edx
44587a:	e8 cd db fb ff       	call   0x40344c
44587f:	84 c0                	test   %al,%al
445881:	74 22                	je     0x4458a5
445883:	8b c3                	mov    %ebx,%eax
445885:	8b 56 10             	mov    0x10(%esi),%edx
445888:	89 50 10             	mov    %edx,0x10(%eax)
44588b:	8b 56 08             	mov    0x8(%esi),%edx
44588e:	89 50 08             	mov    %edx,0x8(%eax)
445891:	8b 56 14             	mov    0x14(%esi),%edx
445894:	89 50 14             	mov    %edx,0x14(%eax)
445897:	8b 56 0c             	mov    0xc(%esi),%edx
44589a:	89 50 0c             	mov    %edx,0xc(%eax)
44589d:	8b 10                	mov    (%eax),%edx
44589f:	ff 52 0c             	call   *0xc(%edx)
4458a2:	5e                   	pop    %esi
4458a3:	5b                   	pop    %ebx
4458a4:	c3                   	ret
4458a5:	8b d3                	mov    %ebx,%edx
4458a7:	8b c6                	mov    %esi,%eax
4458a9:	e8 ce 35 fd ff       	call   0x418e7c
4458ae:	5e                   	pop    %esi
4458af:	5b                   	pop    %ebx
4458b0:	c3                   	ret
4458b1:	8d 40 00             	lea    0x0(%eax),%eax
4458b4:	56                   	push   %esi
4458b5:	8b f0                	mov    %eax,%esi
4458b7:	83 ea 01             	sub    $0x1,%edx
4458ba:	72 0a                	jb     0x4458c6
4458bc:	74 25                	je     0x4458e3
4458be:	4a                   	dec    %edx
4458bf:	74 3f                	je     0x445900
4458c1:	4a                   	dec    %edx
4458c2:	74 5b                	je     0x44591f
4458c4:	eb 76                	jmp    0x44593c
4458c6:	3b 4e 08             	cmp    0x8(%esi),%ecx
4458c9:	74 71                	je     0x44593c
4458cb:	89 4e 08             	mov    %ecx,0x8(%esi)
4458ce:	85 c9                	test   %ecx,%ecx
4458d0:	76 08                	jbe    0x4458da
4458d2:	3b 4e 10             	cmp    0x10(%esi),%ecx
4458d5:	73 03                	jae    0x4458da
4458d7:	89 4e 10             	mov    %ecx,0x10(%esi)
4458da:	8b c6                	mov    %esi,%eax
4458dc:	8b 10                	mov    (%eax),%edx
4458de:	ff 52 0c             	call   *0xc(%edx)
4458e1:	5e                   	pop    %esi
4458e2:	c3                   	ret
4458e3:	3b 4e 0c             	cmp    0xc(%esi),%ecx
4458e6:	74 54                	je     0x44593c
4458e8:	89 4e 0c             	mov    %ecx,0xc(%esi)
4458eb:	85 c9                	test   %ecx,%ecx
4458ed:	76 08                	jbe    0x4458f7
4458ef:	3b 4e 14             	cmp    0x14(%esi),%ecx
4458f2:	73 03                	jae    0x4458f7
4458f4:	89 4e 14             	mov    %ecx,0x14(%esi)
4458f7:	8b c6                	mov    %esi,%eax
4458f9:	8b 10                	mov    (%eax),%edx
4458fb:	ff 52 0c             	call   *0xc(%edx)
4458fe:	5e                   	pop    %esi
4458ff:	c3                   	ret
445900:	3b 4e 10             	cmp    0x10(%esi),%ecx
445903:	74 37                	je     0x44593c
445905:	89 4e 10             	mov    %ecx,0x10(%esi)
445908:	8b 46 08             	mov    0x8(%esi),%eax
44590b:	85 c0                	test   %eax,%eax
44590d:	76 07                	jbe    0x445916
44590f:	3b c1                	cmp    %ecx,%eax
445911:	73 03                	jae    0x445916
445913:	89 4e 08             	mov    %ecx,0x8(%esi)
445916:	8b c6                	mov    %esi,%eax
445918:	8b 10                	mov    (%eax),%edx
44591a:	ff 52 0c             	call   *0xc(%edx)
44591d:	5e                   	pop    %esi
44591e:	c3                   	ret
44591f:	3b 4e 14             	cmp    0x14(%esi),%ecx
445922:	74 18                	je     0x44593c
445924:	89 4e 14             	mov    %ecx,0x14(%esi)
445927:	8b 46 0c             	mov    0xc(%esi),%eax
44592a:	85 c0                	test   %eax,%eax
44592c:	76 07                	jbe    0x445935
44592e:	3b c1                	cmp    %ecx,%eax
445930:	73 03                	jae    0x445935
445932:	89 4e 0c             	mov    %ecx,0xc(%esi)
445935:	8b c6                	mov    %esi,%eax
445937:	8b 10                	mov    (%eax),%edx
445939:	ff 52 0c             	call   *0xc(%edx)
44593c:	5e                   	pop    %esi
44593d:	c3                   	ret
44593e:	8b c0                	mov    %eax,%eax
445940:	53                   	push   %ebx
445941:	66 83 78 1a 00       	cmpw   $0x0,0x1a(%eax)
445946:	74 0a                	je     0x445952
445948:	8b d8                	mov    %eax,%ebx
44594a:	8b d0                	mov    %eax,%edx
44594c:	8b 43 1c             	mov    0x1c(%ebx),%eax
44594f:	ff 53 18             	call   *0x18(%ebx)
445952:	5b                   	pop    %ebx
445953:	c3                   	ret
445954:	53                   	push   %ebx
445955:	56                   	push   %esi
445956:	8b f2                	mov    %edx,%esi
445958:	8b d8                	mov    %eax,%ebx
44595a:	8b c6                	mov    %esi,%eax
44595c:	8b 15 d4 25 44 00    	mov    0x4425d4,%edx
445962:	e8 09 db fb ff       	call   0x403470
445967:	89 43 18             	mov    %eax,0x18(%ebx)
44596a:	5e                   	pop    %esi
44596b:	5b                   	pop    %ebx
44596c:	c3                   	ret
44596d:	8d 40 00             	lea    0x0(%eax),%eax
445970:	55                   	push   %ebp
445971:	8b ec                	mov    %esp,%ebp
445973:	83 c4 e4             	add    $0xffffffe4,%esp
445976:	53                   	push   %ebx
445977:	56                   	push   %esi
445978:	57                   	push   %edi
445979:	33 c9                	xor    %ecx,%ecx
44597b:	89 4d f8             	mov    %ecx,-0x8(%ebp)
44597e:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
445981:	8b fa                	mov    %edx,%edi
445983:	8b d8                	mov    %eax,%ebx
445985:	33 c0                	xor    %eax,%eax
445987:	55                   	push   %ebp
445988:	68 3d 5a 44 00       	push   $0x445a3d
44598d:	64 ff 30             	push   %fs:(%eax)
445990:	64 89 20             	mov    %esp,%fs:(%eax)
445993:	c6 45 ff 01          	movb   $0x1,-0x1(%ebp)
445997:	8b 43 10             	mov    0x10(%ebx),%eax
44599a:	8b 15 d8 27 45 00    	mov    0x4527d8,%edx
4459a0:	e8 a7 da fb ff       	call   0x40344c
4459a5:	84 c0                	test   %al,%al
4459a7:	74 76                	je     0x445a1f
4459a9:	8b d7                	mov    %edi,%edx
4459ab:	8b 43 10             	mov    0x10(%ebx),%eax
4459ae:	66 be ee ff          	mov    $0xffee,%si
4459b2:	e8 05 db fb ff       	call   0x4034bc
4459b7:	84 c0                	test   %al,%al
4459b9:	74 64                	je     0x445a1f
4459bb:	a1 74 47 47 00       	mov    0x474774,%eax
4459c0:	8b 00                	mov    (%eax),%eax
4459c2:	80 78 7c 00          	cmpb   $0x0,0x7c(%eax)
4459c6:	74 57                	je     0x445a1f
4459c8:	8b 43 10             	mov    0x10(%ebx),%eax
4459cb:	66 83 b8 84 00 00 00 	cmpw   $0x0,0x84(%eax)
4459d2:	00
4459d3:	74 4a                	je     0x445a1f
4459d5:	83 3f 00             	cmpl   $0x0,(%edi)
4459d8:	74 45                	je     0x445a1f
4459da:	8d 45 f8             	lea    -0x8(%ebp),%eax
4459dd:	50                   	push   %eax
4459de:	8b 07                	mov    (%edi),%eax
4459e0:	89 45 e8             	mov    %eax,-0x18(%ebp)
4459e3:	c6 45 ec 0b          	movb   $0xb,-0x14(%ebp)
4459e7:	8d 55 e4             	lea    -0x1c(%ebp),%edx
4459ea:	8b 43 10             	mov    0x10(%ebx),%eax
4459ed:	66 8b 80 84 00 00 00 	mov    0x84(%eax),%ax
4459f4:	e8 07 09 01 00       	call   0x456300
4459f9:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4459fc:	89 45 f0             	mov    %eax,-0x10(%ebp)
4459ff:	c6 45 f4 0b          	movb   $0xb,-0xc(%ebp)
445a03:	8d 55 e8             	lea    -0x18(%ebp),%edx
445a06:	b9 01 00 00 00       	mov    $0x1,%ecx
445a0b:	b8 58 5a 44 00       	mov    $0x445a58,%eax
445a10:	e8 e7 35 fc ff       	call   0x408ffc
445a15:	8b 55 f8             	mov    -0x8(%ebp),%edx
445a18:	8b c7                	mov    %edi,%eax
445a1a:	e8 85 e6 fb ff       	call   0x4040a4
445a1f:	33 c0                	xor    %eax,%eax
445a21:	5a                   	pop    %edx
445a22:	59                   	pop    %ecx
445a23:	59                   	pop    %ecx
445a24:	64 89 10             	mov    %edx,%fs:(%eax)
445a27:	68 44 5a 44 00       	push   $0x445a44
445a2c:	8d 45 e4             	lea    -0x1c(%ebp),%eax
445a2f:	e8 1c e6 fb ff       	call   0x404050
445a34:	8d 45 f8             	lea    -0x8(%ebp),%eax
445a37:	e8 14 e6 fb ff       	call   0x404050