42364d:	85 f6                	test   %esi,%esi
42364f:	7c 16                	jl     0x423667
423651:	8b d4                	mov    %esp,%edx
423653:	8b c3                	mov    %ebx,%eax
423655:	e8 6e fe ff ff       	call   0x4234c8
42365a:	89 74 24 08          	mov    %esi,0x8(%esp)
42365e:	8b d4                	mov    %esp,%edx
423660:	8b c3                	mov    %ebx,%eax
423662:	e8 79 fe ff ff       	call   0x4234e0
423667:	83 c4 10             	add    $0x10,%esp
42366a:	5e                   	pop    %esi
42366b:	5b                   	pop    %ebx
42366c:	c3                   	ret
42366d:	8d 40 00             	lea    0x0(%eax),%eax
423670:	53                   	push   %ebx
423671:	56                   	push   %esi
423672:	84 d2                	test   %dl,%dl
423674:	74 08                	je     0x42367e
423676:	83 c4 f0             	add    $0xfffffff0,%esp
423679:	e8 9a 05 fe ff       	call   0x403c18
42367e:	8b da                	mov    %edx,%ebx
423680:	8b f0                	mov    %eax,%esi
423682:	ba b0 0d 46 00       	mov    $0x460db0,%edx
423687:	a1 a0 13 47 00       	mov    0x4713a0,%eax
42368c:	e8 03 ec ff ff       	call   0x422294
423691:	89 46 10             	mov    %eax,0x10(%esi)
423694:	8b c6                	mov    %esi,%eax
423696:	84 db                	test   %bl,%bl
423698:	74 0f                	je     0x4236a9
42369a:	e8 d1 05 fe ff       	call   0x403c70
42369f:	64 8f 05 00 00 00 00 	pop    %fs:0x0
4236a6:	83 c4 0c             	add    $0xc,%esp
4236a9:	8b c6                	mov    %esi,%eax
4236ab:	5e                   	pop    %esi
4236ac:	5b                   	pop    %ebx
4236ad:	c3                   	ret
4236ae:	8b c0                	mov    %eax,%eax
4236b0:	53                   	push   %ebx
4236b1:	56                   	push   %esi
4236b2:	e8 09 06 fe ff       	call   0x403cc0
4236b7:	8b da                	mov    %edx,%ebx
4236b9:	8b f0                	mov    %eax,%esi
4236bb:	8b 56 10             	mov    0x10(%esi),%edx
4236be:	a1 a0 13 47 00       	mov    0x4713a0,%eax
4236c3:	e8 b0 ec ff ff       	call   0x422378
4236c8:	84 db                	test   %bl,%bl
4236ca:	7e 07                	jle    0x4236d3
4236cc:	8b c6                	mov    %esi,%eax
4236ce:	e8 95 05 fe ff       	call   0x403c68
4236d3:	5e                   	pop    %esi
4236d4:	5b                   	pop    %ebx
4236d5:	c3                   	ret
4236d6:	8b c0                	mov    %eax,%eax
4236d8:	55                   	push   %ebp
4236d9:	8b ec                	mov    %esp,%ebp
4236db:	83 c4 f8             	add    $0xfffffff8,%esp
4236de:	53                   	push   %ebx
4236df:	89 55 f8             	mov    %edx,-0x8(%ebp)
4236e2:	89 45 fc             	mov    %eax,-0x4(%ebp)
4236e5:	8b 45 f8             	mov    -0x8(%ebp),%eax
4236e8:	8b 15 0c 18 42 00    	mov    0x42180c,%edx
4236ee:	e8 8d 03 fe ff       	call   0x403a80
4236f3:	84 c0                	test   %al,%al
4236f5:	74 78                	je     0x42376f
4236f7:	8b 45 fc             	mov    -0x4(%ebp),%eax
4236fa:	e8 d5 f3 ff ff       	call   0x422ad4
4236ff:	33 c0                	xor    %eax,%eax
423701:	55                   	push   %ebp
423702:	68 68 37 42 00       	push   $0x423768
423707:	64 ff 30             	push   %fs:(%eax)
42370a:	64 89 20             	mov    %esp,%fs:(%eax)
42370d:	8b 5d f8             	mov    -0x8(%ebp),%ebx
423710:	8b c3                	mov    %ebx,%eax
423712:	e8 bd f3 ff ff       	call   0x422ad4
423717:	33 c0                	xor    %eax,%eax
423719:	55                   	push   %ebp
42371a:	68 4b 37 42 00       	push   $0x42374b
42371f:	64 ff 30             	push   %fs:(%eax)
423722:	64 89 20             	mov    %esp,%fs:(%eax)
423725:	8b 4b 10             	mov    0x10(%ebx),%ecx
423728:	8b 55 fc             	mov    -0x4(%ebp),%edx
42372b:	a1 a0 13 47 00       	mov    0x4713a0,%eax
423730:	e8 83 ed ff ff       	call   0x4224b8
423735:	33 c0                	xor    %eax,%eax
423737:	5a                   	pop    %edx
423738:	59                   	pop    %ecx
423739:	59                   	pop    %ecx
42373a:	64 89 10             	mov    %edx,%fs:(%eax)
42373d:	68 52 37 42 00       	push   $0x423752
423742:	8b 45 f8             	mov    -0x8(%ebp),%eax
423745:	e8 9a f3 ff ff       	call   0x422ae4
42374a:	c3                   	ret
42374b:	e9 38 09 fe ff       	jmp    0x404088
423750:	eb f0                	jmp    0x423742
423752:	33 c0                	xor    %eax,%eax
423754:	5a                   	pop    %edx
423755:	59                   	pop    %ecx
423756:	59                   	pop    %ecx
423757:	64 89 10             	mov    %edx,%fs:(%eax)
42375a:	68 7a 37 42 00       	push   $0x42377a
42375f:	8b 45 fc             	mov    -0x4(%ebp),%eax
423762:	e8 7d f3 ff ff       	call   0x422ae4
423767:	c3                   	ret
423768:	e9 1b 09 fe ff       	jmp    0x404088
42376d:	eb f0                	jmp    0x42375f
42376f:	8b 55 f8             	mov    -0x8(%ebp),%edx
423772:	8b 45 fc             	mov    -0x4(%ebp),%eax
423775:	e8 9e 49 ff ff       	call   0x418118
42377a:	5b                   	pop    %ebx
42377b:	59                   	pop    %ecx
42377c:	59                   	pop    %ecx
42377d:	5d                   	pop    %ebp
42377e:	c3                   	ret
42377f:	90                   	nop
423780:	56                   	push   %esi
423781:	57                   	push   %edi
423782:	8b 40 10             	mov    0x10(%eax),%eax
423785:	8d 70 10             	lea    0x10(%eax),%esi
423788:	8b fa                	mov    %edx,%edi
42378a:	a5                   	movsl  %ds:(%esi),%es:(%edi)
42378b:	a5                   	movsl  %ds:(%esi),%es:(%edi)
42378c:	a5                   	movsl  %ds:(%esi),%es:(%edi)
42378d:	a5                   	movsl  %ds:(%esi),%es:(%edi)
42378e:	33 c0                	xor    %eax,%eax
423790:	89 02                	mov    %eax,(%edx)
423792:	33 c0                	xor    %eax,%eax
423794:	89 42 08             	mov    %eax,0x8(%edx)
423797:	5f                   	pop    %edi
423798:	5e                   	pop    %esi
423799:	c3                   	ret
42379a:	8b c0                	mov    %eax,%eax
42379c:	55                   	push   %ebp
42379d:	8b ec                	mov    %esp,%ebp
42379f:	51                   	push   %ecx
4237a0:	53                   	push   %ebx
4237a1:	8b da                	mov    %edx,%ebx
4237a3:	89 45 fc             	mov    %eax,-0x4(%ebp)
4237a6:	8b 45 fc             	mov    -0x4(%ebp),%eax
4237a9:	e8 26 f3 ff ff       	call   0x422ad4
4237ae:	33 c0                	xor    %eax,%eax
4237b0:	55                   	push   %ebp
4237b1:	68 e1 37 42 00       	push   $0x4237e1
4237b6:	64 ff 30             	push   %fs:(%eax)
4237b9:	64 89 20             	mov    %esp,%fs:(%eax)
4237bc:	8b cb                	mov    %ebx,%ecx
4237be:	8b 55 fc             	mov    -0x4(%ebp),%edx
4237c1:	a1 a0 13 47 00       	mov    0x4713a0,%eax
4237c6:	e8 71 ec ff ff       	call   0x42243c
4237cb:	33 c0                	xor    %eax,%eax
4237cd:	5a                   	pop    %edx
4237ce:	59                   	pop    %ecx
4237cf:	59                   	pop    %ecx
4237d0:	64 89 10             	mov    %edx,%fs:(%eax)
4237d3:	68 e8 37 42 00       	push   $0x4237e8
4237d8:	8b 45 fc             	mov    -0x4(%ebp),%eax
4237db:	e8 04 f3 ff ff       	call   0x422ae4
4237e0:	c3                   	ret
4237e1:	e9 a2 08 fe ff       	jmp    0x404088
4237e6:	eb f0                	jmp    0x4237d8
4237e8:	5b                   	pop    %ebx
4237e9:	59                   	pop    %ecx
4237ea:	5d                   	pop    %ebp
4237eb:	c3                   	ret
4237ec:	56                   	push   %esi
4237ed:	57                   	push   %edi
4237ee:	83 c4 f0             	add    $0xfffffff0,%esp
4237f1:	be b0 0d 46 00       	mov    $0x460db0,%esi
4237f6:	8b fc                	mov    %esp,%edi
4237f8:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4237f9:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4237fa:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4237fb:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4237fc:	89 54 24 08          	mov    %edx,0x8(%esp)
423800:	8b d4                	mov    %esp,%edx
423802:	e8 95 ff ff ff       	call   0x42379c
423807:	83 c4 10             	add    $0x10,%esp
42380a:	5f                   	pop    %edi
42380b:	5e                   	pop    %esi
42380c:	c3                   	ret
42380d:	8d 40 00             	lea    0x0(%eax),%eax
423810:	8b 40 10             	mov    0x10(%eax),%eax
423813:	8b 40 14             	mov    0x14(%eax),%eax
423816:	c3                   	ret
423817:	90                   	nop
423818:	53                   	push   %ebx
423819:	56                   	push   %esi
42381a:	83 c4 f0             	add    $0xfffffff0,%esp
42381d:	8b f2                	mov    %edx,%esi
42381f:	8b d8                	mov    %eax,%ebx
423821:	8b d4                	mov    %esp,%edx
423823:	8b c3                	mov    %ebx,%eax
423825:	e8 56 ff ff ff       	call   0x423780
42382a:	89 74 24 04          	mov    %esi,0x4(%esp)
42382e:	80 7c 24 0c 01       	cmpb   $0x1,0xc(%esp)
423833:	75 05                	jne    0x42383a
423835:	c6 44 24 0c 00       	movb   $0x0,0xc(%esp)
42383a:	8b d4                	mov    %esp,%edx
42383c:	8b c3                	mov    %ebx,%eax
42383e:	e8 59 ff ff ff       	call   0x42379c
423843:	83 c4 10             	add    $0x10,%esp
423846:	5e                   	pop    %esi
423847:	5b                   	pop    %ebx
423848:	c3                   	ret
423849:	8d 40 00             	lea    0x0(%eax),%eax
42384c:	55                   	push   %ebp
42384d:	8b ec                	mov    %esp,%ebp
42384f:	83 c4 f0             	add    $0xfffffff0,%esp
423852:	8b 40 10             	mov    0x10(%eax),%eax
423855:	89 45 fc             	mov    %eax,-0x4(%ebp)
423858:	8b 45 fc             	mov    -0x4(%ebp),%eax
42385b:	83 78 08 00          	cmpl   $0x0,0x8(%eax)
42385f:	0f 85 bc 00 00 00    	jne    0x423921
423865:	a1 a0 13 47 00       	mov    0x4713a0,%eax
42386a:	e8 0d ea ff ff       	call   0x42227c
42386f:	33 d2                	xor    %edx,%edx
423871:	55                   	push   %ebp
423872:	68 1a 39 42 00       	push   $0x42391a
423877:	64 ff 32             	push   %fs:(%edx)
42387a:	64 89 22             	mov    %esp,%fs:(%edx)
42387d:	8b 45 fc             	mov    -0x4(%ebp),%eax
423880:	83 78 08 00          	cmpl   $0x0,0x8(%eax)
423884:	75 7c                	jne    0x423902
423886:	8b 45 fc             	mov    -0x4(%ebp),%eax
423889:	8b 40 18             	mov    0x18(%eax),%eax
42388c:	85 c0                	test   %eax,%eax
42388e:	74 1e                	je     0x4238ae
423890:	c7 45 f0 03 00 00 00 	movl   $0x3,-0x10(%ebp)
423897:	b2 01                	mov    $0x1,%dl
423899:	8b 08                	mov    (%eax),%ecx
42389b:	ff 51 70             	call   *0x70(%ecx)
42389e:	8b 45 fc             	mov    -0x4(%ebp),%eax
4238a1:	8b 40 18             	mov    0x18(%eax),%eax
4238a4:	8b 10                	mov    (%eax),%edx
4238a6:	ff 52 68             	call   *0x68(%edx)
4238a9:	89 45 f8             	mov    %eax,-0x8(%ebp)
4238ac:	eb 37                	jmp    0x4238e5
4238ae:	33 c0                	xor    %eax,%eax
4238b0:	89 45 f8             	mov    %eax,-0x8(%ebp)
4238b3:	8b 45 fc             	mov    -0x4(%ebp),%eax
4238b6:	0f b6 40 1c          	movzbl 0x1c(%eax),%eax
4238ba:	8b d0                	mov    %eax,%edx
4238bc:	80 ea 01             	sub    $0x1,%dl
4238bf:	72 04                	jb     0x4238c5
4238c1:	74 09                	je     0x4238cc
4238c3:	eb 10                	jmp    0x4238d5
4238c5:	33 c0                	xor    %eax,%eax
4238c7:	89 45 f0             	mov    %eax,-0x10(%ebp)
4238ca:	eb 19                	jmp    0x4238e5
4238cc:	c7 45 f0 01 00 00 00 	movl   $0x1,-0x10(%ebp)
4238d3:	eb 10                	jmp    0x4238e5
4238d5:	c7 45 f0 02 00 00 00 	movl   $0x2,-0x10(%ebp)
4238dc:	83 e0 7f             	and    $0x7f,%eax
4238df:	83 e8 02             	sub    $0x2,%eax
4238e2:	89 45 f8             	mov    %eax,-0x8(%ebp)
4238e5:	8b 45 fc             	mov    -0x4(%ebp),%eax
4238e8:	8b 40 14             	mov    0x14(%eax),%eax
4238eb:	e8 a0 f1 ff ff       	call   0x422a90
4238f0:	89 45 f4             	mov    %eax,-0xc(%ebp)
4238f3:	8d 45 f0             	lea    -0x10(%ebp),%eax
4238f6:	50                   	push   %eax
4238f7:	e8 2c 32 fe ff       	call   0x406b28
4238fc:	8b 55 fc             	mov    -0x4(%ebp),%edx
4238ff:	89 42 08             	mov    %eax,0x8(%edx)
423902:	33 c0                	xor    %eax,%eax
423904:	5a                   	pop    %edx
423905:	59                   	pop    %ecx
423906:	59                   	pop    %ecx
423907:	64 89 10             	mov    %edx,%fs:(%eax)
42390a:	68 21 39 42 00       	push   $0x423921
42390f:	a1 a0 13 47 00       	mov    0x4713a0,%eax
423914:	e8 6f e9 ff ff       	call   0x422288
423919:	c3                   	ret
42391a:	e9 69 07 fe ff       	jmp    0x404088
42391f:	eb ee                	jmp    0x42390f
423921:	8b 45 fc             	mov    -0x4(%ebp),%eax
423924:	8b 40 08             	mov    0x8(%eax),%eax
423927:	8b e5                	mov    %ebp,%esp
423929:	5d                   	pop    %ebp
42392a:	c3                   	ret
42392b:	90                   	nop
42392c:	8b 40 10             	mov    0x10(%eax),%eax
42392f:	0f b6 40 1c          	movzbl 0x1c(%eax),%eax
423933:	c3                   	ret
423934:	53                   	push   %ebx
423935:	56                   	push   %esi
423936:	83 c4 f0             	add    $0xfffffff0,%esp
423939:	8b da                	mov    %edx,%ebx
42393b:	8b f0                	mov    %eax,%esi
42393d:	8b d4                	mov    %esp,%edx
42393f:	8b c6                	mov    %esi,%eax
423941:	e8 3a fe ff ff       	call   0x423780
423946:	8b c3                	mov    %ebx,%eax
423948:	88 44 24 0c          	mov    %al,0xc(%esp)
42394c:	3c 01                	cmp    $0x1,%al
42394e:	75 08                	jne    0x423958
423950:	c7 44 24 04 ff ff ff 	movl   $0xffffff,0x4(%esp)
423957:	00
423958:	8b d4                	mov    %esp,%edx
42395a:	8b c6                	mov    %esi,%eax
42395c:	e8 3b fe ff ff       	call   0x42379c
423961:	83 c4 10             	add    $0x10,%esp
423964:	5e                   	pop    %esi
423965:	5b                   	pop    %ebx
423966:	c3                   	ret
423967:	90                   	nop
423968:	53                   	push   %ebx
423969:	56                   	push   %esi
42396a:	57                   	push   %edi
42396b:	84 d2                	test   %dl,%dl
42396d:	74 08                	je     0x423977
42396f:	83 c4 f0             	add    $0xfffffff0,%esp
423972:	e8 a1 02 fe ff       	call   0x403c18
423977:	8b da                	mov    %edx,%ebx
423979:	8b f8                	mov    %eax,%edi
42397b:	33 d2                	xor    %edx,%edx
42397d:	8b c7                	mov    %edi,%eax
42397f:	e8 40 ff fd ff       	call   0x4038c4
423984:	8d 47 38             	lea    0x38(%edi),%eax
423987:	50                   	push   %eax
423988:	e8 bb 30 fe ff       	call   0x406a48
42398d:	b2 01                	mov    $0x1,%dl
42398f:	a1 6c 15 42 00       	mov    0x42156c,%eax
423994:	e8 ef f3 ff ff       	call   0x422d88
423999:	8b f0                	mov    %eax,%esi
42399b:	89 77 0c             	mov    %esi,0xc(%edi)
42399e:	89 7e 0c             	mov    %edi,0xc(%esi)
4239a1:	c7 46 08 00 41 42 00 	movl   $0x424100,0x8(%esi)
4239a8:	8d 47 38             	lea    0x38(%edi),%eax
4239ab:	89 46 14             	mov    %eax,0x14(%esi)
4239ae:	b2 01                	mov    $0x1,%dl
4239b0:	a1 0c 17 42 00       	mov    0x42170c,%eax
4239b5:	e8 ea f9 ff ff       	call   0x4233a4
4239ba:	8b f0                	mov    %eax,%esi
4239bc:	89 77 10             	mov    %esi,0x10(%edi)
4239bf:	89 7e 0c             	mov    %edi,0xc(%esi)
4239c2:	c7 46 08 20 41 42 00 	movl   $0x424120,0x8(%esi)
4239c9:	8d 47 38             	lea    0x38(%edi),%eax
4239cc:	89 46 14             	mov    %eax,0x14(%esi)
4239cf:	b2 01                	mov    $0x1,%dl
4239d1:	a1 0c 18 42 00       	mov    0x42180c,%eax
4239d6:	e8 95 fc ff ff       	call   0x423670
4239db:	8b f0                	mov    %eax,%esi
4239dd:	89 77 14             	mov    %esi,0x14(%edi)
4239e0:	89 7e 0c             	mov    %edi,0xc(%esi)
4239e3:	c7 46 08 40 41 42 00 	movl   $0x424140,0x8(%esi)
4239ea:	8d 47 38             	lea    0x38(%edi),%eax
4239ed:	89 46 14             	mov    %eax,0x14(%esi)
4239f0:	c7 47 20 20 00 cc 00 	movl   $0xcc0020,0x20(%edi)
4239f7:	0f b6 05 28 3a 42 00 	movzbl 0x423a28,%eax
4239fe:	88 47 08             	mov    %al,0x8(%edi)