4055ac:	8b ec                	mov    %esp,%ebp
4055ae:	83 ec 0c             	sub    $0xc,%esp
4055b1:	8d 4d f4             	lea    -0xc(%ebp),%ecx
4055b4:	e8 ff fe ff ff       	call   0x4054b8
4055b9:	68 dc 10 43 00       	push   $0x4310dc
4055be:	8d 45 f4             	lea    -0xc(%ebp),%eax
4055c1:	50                   	push   %eax
4055c2:	e8 33 33 00 00       	call   0x4088fa
4055c7:	cc                   	int3
4055c8:	55                   	push   %ebp
4055c9:	8b ec                	mov    %esp,%ebp
4055cb:	83 ec 0c             	sub    $0xc,%esp
4055ce:	8d 4d f4             	lea    -0xc(%ebp),%ecx
4055d1:	ff 75 08             	push   0x8(%ebp)
4055d4:	e8 12 ff ff ff       	call   0x4054eb
4055d9:	68 14 11 43 00       	push   $0x431114
4055de:	8d 45 f4             	lea    -0xc(%ebp),%eax
4055e1:	50                   	push   %eax
4055e2:	e8 13 33 00 00       	call   0x4088fa
4055e7:	cc                   	int3
4055e8:	55                   	push   %ebp
4055e9:	8b ec                	mov    %esp,%ebp
4055eb:	83 ec 0c             	sub    $0xc,%esp
4055ee:	8d 4d f4             	lea    -0xc(%ebp),%ecx
4055f1:	ff 75 08             	push   0x8(%ebp)
4055f4:	e8 47 ff ff ff       	call   0x405540
4055f9:	68 50 11 43 00       	push   $0x431150
4055fe:	8d 45 f4             	lea    -0xc(%ebp),%eax
405601:	50                   	push   %eax
405602:	e8 f3 32 00 00       	call   0x4088fa
405607:	cc                   	int3
405608:	55                   	push   %ebp
405609:	8b ec                	mov    %esp,%ebp
40560b:	83 ec 0c             	sub    $0xc,%esp
40560e:	8d 4d f4             	lea    -0xc(%ebp),%ecx
405611:	ff 75 08             	push   0x8(%ebp)
405614:	e8 46 ff ff ff       	call   0x40555f
405619:	68 8c 11 43 00       	push   $0x43118c
40561e:	8d 45 f4             	lea    -0xc(%ebp),%eax
405621:	50                   	push   %eax
405622:	e8 d3 32 00 00       	call   0x4088fa
405627:	cc                   	int3
405628:	55                   	push   %ebp
405629:	8b ec                	mov    %esp,%ebp
40562b:	ff 75 0c             	push   0xc(%ebp)
40562e:	e8 e5 7f 00 00       	call   0x40d618
405633:	59                   	pop    %ecx
405634:	8b c8                	mov    %eax,%ecx
405636:	83 f9 ff             	cmp    $0xffffffff,%ecx
405639:	75 04                	jne    0x40563f
40563b:	32 c0                	xor    %al,%al
40563d:	5d                   	pop    %ebp
40563e:	c3                   	ret
40563f:	8b 45 08             	mov    0x8(%ebp),%eax
405642:	88 08                	mov    %cl,(%eax)
405644:	b0 01                	mov    $0x1,%al
405646:	5d                   	pop    %ebp
405647:	c3                   	ret
405648:	55                   	push   %ebp
405649:	8b ec                	mov    %esp,%ebp
40564b:	ff 75 0c             	push   0xc(%ebp)
40564e:	0f be 45 08          	movsbl 0x8(%ebp),%eax
405652:	50                   	push   %eax
405653:	e8 4c 81 00 00       	call   0x40d7a4
405658:	83 f8 ff             	cmp    $0xffffffff,%eax
40565b:	59                   	pop    %ecx
40565c:	59                   	pop    %ecx
40565d:	0f 95 c0             	setne  %al
405660:	5d                   	pop    %ebp
405661:	c3                   	ret
405662:	55                   	push   %ebp
405663:	8b ec                	mov    %esp,%ebp
405665:	83 ec 0c             	sub    $0xc,%esp
405668:	8b 55 08             	mov    0x8(%ebp),%edx
40566b:	53                   	push   %ebx
40566c:	8b 59 10             	mov    0x10(%ecx),%ebx
40566f:	56                   	push   %esi
405670:	be ff ff ff 7f       	mov    $0x7fffffff,%esi
405675:	89 4d f4             	mov    %ecx,-0xc(%ebp)
405678:	8b c6                	mov    %esi,%eax
40567a:	2b c3                	sub    %ebx,%eax
40567c:	57                   	push   %edi
40567d:	3b c2                	cmp    %edx,%eax
40567f:	72 7c                	jb     0x4056fd
405681:	8b 41 14             	mov    0x14(%ecx),%eax
405684:	8d 3c 13             	lea    (%ebx,%edx,1),%edi
405687:	56                   	push   %esi
405688:	50                   	push   %eax
405689:	57                   	push   %edi
40568a:	89 45 fc             	mov    %eax,-0x4(%ebp)
40568d:	e8 1e fd ff ff       	call   0x4053b0
405692:	8b f0                	mov    %eax,%esi
405694:	8d 4e 01             	lea    0x1(%esi),%ecx
405697:	51                   	push   %ecx
405698:	e8 d3 f9 ff ff       	call   0x405070
40569d:	89 45 f8             	mov    %eax,-0x8(%ebp)
4056a0:	83 c4 10             	add    $0x10,%esp
4056a3:	83 7d fc 10          	cmpl   $0x10,-0x4(%ebp)
4056a7:	8b 45 f4             	mov    -0xc(%ebp),%eax
4056aa:	53                   	push   %ebx
4056ab:	89 78 10             	mov    %edi,0x10(%eax)
4056ae:	8b 7d f8             	mov    -0x8(%ebp),%edi
4056b1:	89 70 14             	mov    %esi,0x14(%eax)
4056b4:	72 24                	jb     0x4056da
4056b6:	8b 30                	mov    (%eax),%esi
4056b8:	56                   	push   %esi
4056b9:	57                   	push   %edi
4056ba:	e8 b1 32 00 00       	call   0x408970
4056bf:	8a 45 10             	mov    0x10(%ebp),%al
4056c2:	88 04 3b             	mov    %al,(%ebx,%edi,1)
4056c5:	8b 45 fc             	mov    -0x4(%ebp),%eax
4056c8:	40                   	inc    %eax
4056c9:	c6 44 3b 01 00       	movb   $0x0,0x1(%ebx,%edi,1)
4056ce:	50                   	push   %eax
4056cf:	56                   	push   %esi
4056d0:	e8 5b f9 ff ff       	call   0x405030
4056d5:	83 c4 14             	add    $0x14,%esp
4056d8:	eb 15                	jmp    0x4056ef
4056da:	50                   	push   %eax
4056db:	57                   	push   %edi
4056dc:	e8 8f 32 00 00       	call   0x408970
4056e1:	8a 45 10             	mov    0x10(%ebp),%al
4056e4:	83 c4 0c             	add    $0xc,%esp
4056e7:	88 04 3b             	mov    %al,(%ebx,%edi,1)
4056ea:	c6 44 3b 01 00       	movb   $0x0,0x1(%ebx,%edi,1)
4056ef:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4056f2:	8b c1                	mov    %ecx,%eax
4056f4:	89 39                	mov    %edi,(%ecx)
4056f6:	5f                   	pop    %edi
4056f7:	5e                   	pop    %esi
4056f8:	5b                   	pop    %ebx
4056f9:	c9                   	leave
4056fa:	c2 0c 00             	ret    $0xc
4056fd:	e8 ae bc ff ff       	call   0x4013b0
405702:	cc                   	int3
405703:	6a 08                	push   $0x8
405705:	b8 12 2e 42 00       	mov    $0x422e12,%eax
40570a:	e8 2d 24 00 00       	call   0x407b3c
40570f:	6a 00                	push   $0x0
405711:	8d 4d ec             	lea    -0x14(%ebp),%ecx
405714:	e8 28 fd ff ff       	call   0x405441
405719:	8b 35 cc 40 43 00    	mov    0x4340cc,%esi
40571f:	b9 c0 40 43 00       	mov    $0x4340c0,%ecx
405724:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
405728:	89 75 f0             	mov    %esi,-0x10(%ebp)
40572b:	e8 00 c4 ff ff       	call   0x401b30
405730:	8b 4d 08             	mov    0x8(%ebp),%ecx
405733:	50                   	push   %eax
405734:	e8 d7 c4 ff ff       	call   0x401c10
405739:	8b f8                	mov    %eax,%edi
40573b:	85 ff                	test   %edi,%edi
40573d:	75 43                	jne    0x405782
40573f:	85 f6                	test   %esi,%esi
405741:	74 04                	je     0x405747
405743:	8b fe                	mov    %esi,%edi
405745:	eb 3b                	jmp    0x405782
405747:	ff 75 08             	push   0x8(%ebp)
40574a:	8d 45 f0             	lea    -0x10(%ebp),%eax
40574d:	50                   	push   %eax
40574e:	e8 bf 04 00 00       	call   0x405c12
405753:	59                   	pop    %ecx
405754:	59                   	pop    %ecx
405755:	83 f8 ff             	cmp    $0xffffffff,%eax
405758:	74 38                	je     0x405792
40575a:	8b 7d f0             	mov    -0x10(%ebp),%edi
40575d:	89 7d f0             	mov    %edi,-0x10(%ebp)
405760:	57                   	push   %edi
405761:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
405765:	e8 3e 13 00 00       	call   0x406aa8
40576a:	8b 07                	mov    (%edi),%eax
40576c:	59                   	pop    %ecx
40576d:	8b 70 04             	mov    0x4(%eax),%esi
405770:	8b ce                	mov    %esi,%ecx
405772:	ff 15 54 41 42 00    	call   *0x424154
405778:	8b cf                	mov    %edi,%ecx
40577a:	ff d6                	call   *%esi
40577c:	89 3d cc 40 43 00    	mov    %edi,0x4340cc
405782:	8d 4d ec             	lea    -0x14(%ebp),%ecx
405785:	e8 0f fd ff ff       	call   0x405499
40578a:	8b c7                	mov    %edi,%eax
40578c:	e8 88 23 00 00       	call   0x407b19
405791:	c3                   	ret
405792:	e8 79 c1 ff ff       	call   0x401910
405797:	cc                   	int3
405798:	6a 08                	push   $0x8
40579a:	b8 50 2e 42 00       	mov    $0x422e50,%eax
40579f:	e8 98 23 00 00       	call   0x407b3c
4057a4:	8b f1                	mov    %ecx,%esi
4057a6:	89 75 ec             	mov    %esi,-0x14(%ebp)
4057a9:	33 c0                	xor    %eax,%eax
4057ab:	89 45 f0             	mov    %eax,-0x10(%ebp)
4057ae:	39 45 10             	cmp    %eax,0x10(%ebp)
4057b1:	74 23                	je     0x4057d6
4057b3:	c7 06 58 44 42 00    	movl   $0x424458,(%esi)
4057b9:	89 46 10             	mov    %eax,0x10(%esi)
4057bc:	89 46 30             	mov    %eax,0x30(%esi)
4057bf:	89 46 34             	mov    %eax,0x34(%esi)
4057c2:	89 46 38             	mov    %eax,0x38(%esi)
4057c5:	c7 46 08 4c 44 42 00 	movl   $0x42444c,0x8(%esi)
4057cc:	89 45 fc             	mov    %eax,-0x4(%ebp)
4057cf:	c7 45 f0 01 00 00 00 	movl   $0x1,-0x10(%ebp)
4057d6:	8b 06                	mov    (%esi),%eax
4057d8:	ff 75 0c             	push   0xc(%ebp)
4057db:	ff 75 08             	push   0x8(%ebp)
4057de:	8b 40 04             	mov    0x4(%eax),%eax
4057e1:	c7 04 06 54 44 42 00 	movl   $0x424454,(%esi,%eax,1)
4057e8:	8b 06                	mov    (%esi),%eax
4057ea:	8b 48 04             	mov    0x4(%eax),%ecx
4057ed:	8d 41 f8             	lea    -0x8(%ecx),%eax
4057f0:	89 44 31 fc          	mov    %eax,-0x4(%ecx,%esi,1)
4057f4:	8b 06                	mov    (%esi),%eax
4057f6:	8b 48 04             	mov    0x4(%eax),%ecx
4057f9:	03 ce                	add    %esi,%ecx
4057fb:	e8 16 07 00 00       	call   0x405f16
405800:	8b c6                	mov    %esi,%eax
405802:	e8 12 23 00 00       	call   0x407b19
405807:	c2 0c 00             	ret    $0xc
40580a:	6a 00                	push   $0x0
40580c:	b8 6d 2e 42 00       	mov    $0x422e6d,%eax
405811:	e8 26 23 00 00       	call   0x407b3c
405816:	8b f9                	mov    %ecx,%edi
405818:	6a 08                	push   $0x8
40581a:	c7 07 cc 43 42 00    	movl   $0x4243cc,(%edi)
405820:	e8 f7 1d 00 00       	call   0x40761c
405825:	8b f0                	mov    %eax,%esi
405827:	59                   	pop    %ecx
405828:	85 f6                	test   %esi,%esi
40582a:	74 11                	je     0x40583d
40582c:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
405830:	6a 01                	push   $0x1
405832:	e8 a3 12 00 00       	call   0x406ada
405837:	59                   	pop    %ecx
405838:	89 46 04             	mov    %eax,0x4(%esi)
40583b:	eb 02                	jmp    0x40583f
40583d:	33 f6                	xor    %esi,%esi
40583f:	8b cf                	mov    %edi,%ecx
405841:	89 77 34             	mov    %esi,0x34(%edi)
405844:	e8 ae 04 00 00       	call   0x405cf7
405849:	8b c7                	mov    %edi,%eax
40584b:	e8 c9 22 00 00       	call   0x407b19
405850:	c3                   	ret
405851:	cc                   	int3
405852:	cc                   	int3
405853:	cc                   	int3
405854:	cc                   	int3
405855:	cc                   	int3
405856:	56                   	push   %esi
405857:	8b 35 3c 41 43 00    	mov    0x43413c,%esi
40585d:	ba 18 40 43 00       	mov    $0x434018,%edx
405862:	89 15 40 41 43 00    	mov    %edx,0x434140
405868:	57                   	push   %edi
405869:	8b f9                	mov    %ecx,%edi
40586b:	85 f6                	test   %esi,%esi
40586d:	74 0f                	je     0x40587e
40586f:	8b 06                	mov    (%esi),%eax
405871:	8b 40 04             	mov    0x4(%eax),%eax
405874:	89 54 30 3c          	mov    %edx,0x3c(%eax,%esi,1)
405878:	8b 15 40 41 43 00    	mov    0x434140,%edx
40587e:	8b 0d 44 41 43 00    	mov    0x434144,%ecx
405884:	85 c9                	test   %ecx,%ecx
405886:	74 0f                	je     0x405897
405888:	8b 01                	mov    (%ecx),%eax
40588a:	8b 40 04             	mov    0x4(%eax),%eax
40588d:	89 54 08 3c          	mov    %edx,0x3c(%eax,%ecx,1)
405891:	8b 15 40 41 43 00    	mov    0x434140,%edx
405897:	8b 0d 48 41 43 00    	mov    0x434148,%ecx
40589d:	85 c9                	test   %ecx,%ecx
40589f:	74 09                	je     0x4058aa
4058a1:	8b 01                	mov    (%ecx),%eax
4058a3:	8b 40 04             	mov    0x4(%eax),%eax
4058a6:	89 54 08 3c          	mov    %edx,0x3c(%eax,%ecx,1)
4058aa:	8b c7                	mov    %edi,%eax
4058ac:	5f                   	pop    %edi
4058ad:	5e                   	pop    %esi
4058ae:	c3                   	ret
4058af:	55                   	push   %ebp
4058b0:	8b ec                	mov    %esp,%ebp
4058b2:	6a ff                	push   $0xffffffff
4058b4:	68 60 2a 42 00       	push   $0x422a60
4058b9:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
4058bf:	50                   	push   %eax
4058c0:	56                   	push   %esi
4058c1:	a1 14 30 43 00       	mov    0x433014,%eax
4058c6:	33 c5                	xor    %ebp,%eax
4058c8:	50                   	push   %eax
4058c9:	8d 45 f4             	lea    -0xc(%ebp),%eax
4058cc:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
4058d2:	8b f1                	mov    %ecx,%esi
4058d4:	83 7e 4c 00          	cmpl   $0x0,0x4c(%esi)
4058d8:	c7 06 0c 44 42 00    	movl   $0x42440c,(%esi)
4058de:	74 05                	je     0x4058e5
4058e0:	e8 f8 04 00 00       	call   0x405ddd
4058e5:	80 7e 48 00          	cmpb   $0x0,0x48(%esi)
4058e9:	74 07                	je     0x4058f2
4058eb:	8b ce                	mov    %esi,%ecx
4058ed:	e8 69 05 00 00       	call   0x405e5b
4058f2:	8b ce                	mov    %esi,%ecx
4058f4:	e8 58 00 00 00       	call   0x405951
4058f9:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4058fc:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
405903:	59                   	pop    %ecx
405904:	5e                   	pop    %esi
405905:	c9                   	leave
405906:	c3                   	ret
405907:	cc                   	int3
405908:	cc                   	int3
405909:	cc                   	int3
40590a:	cc                   	int3
40590b:	cc                   	int3
40590c:	55                   	push   %ebp
40590d:	8b ec                	mov    %esp,%ebp
40590f:	6a ff                	push   $0xffffffff
405911:	68 8a 2e 42 00       	push   $0x422e8a
405916:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
40591c:	50                   	push   %eax
40591d:	a1 14 30 43 00       	mov    0x433014,%eax
405922:	33 c5                	xor    %ebp,%eax
405924:	50                   	push   %eax
405925:	8d 45 f4             	lea    -0xc(%ebp),%eax
405928:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
40592e:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
405932:	51                   	push   %ecx
405933:	c7 01 c4 43 42 00    	movl   $0x4243c4,(%ecx)
405939:	e8 79 17 00 00       	call   0x4070b7
40593e:	59                   	pop    %ecx
40593f:	8b 4d f4             	mov    -0xc(%ebp),%ecx
405942:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
405949:	59                   	pop    %ecx
40594a:	c9                   	leave
40594b:	c3                   	ret
40594c:	cc                   	int3
40594d:	cc                   	int3
40594e:	cc                   	int3
40594f:	cc                   	int3
405950:	cc                   	int3
405951:	56                   	push   %esi
405952:	8b 71 34             	mov    0x34(%ecx),%esi
405955:	c7 01 cc 43 42 00    	movl   $0x4243cc,(%ecx)
40595b:	85 f6                	test   %esi,%esi
40595d:	74 11                	je     0x405970
40595f:	8b ce                	mov    %esi,%ecx
405961:	e8 6a c2 ff ff       	call   0x401bd0
405966:	6a 08                	push   $0x8
405968:	56                   	push   %esi
405969:	e8 de 1c 00 00       	call   0x40764c
40596e:	59                   	pop    %ecx
40596f:	59                   	pop    %ecx
405970:	5e                   	pop    %esi
405971:	c3                   	ret
405972:	55                   	push   %ebp