44554b:	85 d2                	test   %edx,%edx
44554d:	74 03                	je     0x445552
44554f:	89 42 18             	mov    %eax,0x18(%edx)
445552:	8b c3                	mov    %ebx,%eax
445554:	e8 0b e8 ff ff       	call   0x443d64
445559:	8b d0                	mov    %eax,%edx
44555b:	8b 43 18             	mov    0x18(%ebx),%eax
44555e:	e8 3d e8 ff ff       	call   0x443da0
445563:	8b 43 18             	mov    0x18(%ebx),%eax
445566:	e8 7d e6 ff ff       	call   0x443be8
44556b:	56                   	push   %esi
44556c:	68 1c 5c 44 00       	push   $0x445c1c
445571:	8b 53 14             	mov    0x14(%ebx),%edx
445574:	8b c6                	mov    %esi,%eax
445576:	e8 a5 eb ff ff       	call   0x444120
44557b:	8b c3                	mov    %ebx,%eax
44557d:	e8 72 e3 fb ff       	call   0x4038f4
445582:	33 c0                	xor    %eax,%eax
445584:	5a                   	pop    %edx
445585:	59                   	pop    %ecx
445586:	59                   	pop    %ecx
445587:	64 89 10             	mov    %edx,%fs:(%eax)
44558a:	68 a4 55 44 00       	push   $0x4455a4
44558f:	8d 45 f0             	lea    -0x10(%ebp),%eax
445592:	ba 04 00 00 00       	mov    $0x4,%edx
445597:	e8 a8 f1 fb ff       	call   0x404744
44559c:	c3                   	ret
44559d:	e9 e6 ea fb ff       	jmp    0x404088
4455a2:	eb eb                	jmp    0x44558f
4455a4:	5f                   	pop    %edi
4455a5:	5e                   	pop    %esi
4455a6:	5b                   	pop    %ebx
4455a7:	8b e5                	mov    %ebp,%esp
4455a9:	5d                   	pop    %ebp
4455aa:	c3                   	ret
4455ab:	90                   	nop
4455ac:	53                   	push   %ebx
4455ad:	56                   	push   %esi
4455ae:	57                   	push   %edi
4455af:	83 c4 f0             	add    $0xfffffff0,%esp
4455b2:	8b da                	mov    %edx,%ebx
4455b4:	8b f8                	mov    %eax,%edi
4455b6:	8b 77 14             	mov    0x14(%edi),%esi
4455b9:	f6 46 1c 01          	testb  $0x1,0x1c(%esi)
4455bd:	0f 85 c9 00 00 00    	jne    0x44568c
4455c3:	83 7f 64 00          	cmpl   $0x0,0x64(%edi)
4455c7:	0f 84 bf 00 00 00    	je     0x44568c
4455cd:	8b c6                	mov    %esi,%eax
4455cf:	e8 ec ac ff ff       	call   0x4402c0
4455d4:	85 c0                	test   %eax,%eax
4455d6:	0f 8e b0 00 00 00    	jle    0x44568c
4455dc:	83 7f 38 00          	cmpl   $0x0,0x38(%edi)
4455e0:	0f 85 a6 00 00 00    	jne    0x44568c
4455e6:	8b d4                	mov    %esp,%edx
4455e8:	8b 47 14             	mov    0x14(%edi),%eax
4455eb:	8b 08                	mov    (%eax),%ecx
4455ed:	ff 51 44             	call   *0x44(%ecx)
4455f0:	8b d4                	mov    %esp,%edx
4455f2:	8b 47 14             	mov    0x14(%edi),%eax
4455f5:	8b 08                	mov    (%eax),%ecx
4455f7:	ff 91 90 00 00 00    	call   *0x90(%ecx)
4455fd:	84 db                	test   %bl,%bl
4455ff:	75 13                	jne    0x445614
445601:	8d 57 1d             	lea    0x1d(%edi),%edx
445604:	8b c4                	mov    %esp,%eax
445606:	b9 10 00 00 00       	mov    $0x10,%ecx
44560b:	e8 d8 31 fc ff       	call   0x4087e8
445610:	84 c0                	test   %al,%al
445612:	75 78                	jne    0x44568c
445614:	57                   	push   %edi
445615:	8d 74 24 04          	lea    0x4(%esp),%esi
445619:	83 c7 1d             	add    $0x1d,%edi
44561c:	a5                   	movsl  %ds:(%esi),%es:(%edi)
44561d:	a5                   	movsl  %ds:(%esi),%es:(%edi)
44561e:	a5                   	movsl  %ds:(%esi),%es:(%edi)
44561f:	a5                   	movsl  %ds:(%esi),%es:(%edi)
445620:	5f                   	pop    %edi
445621:	8b 47 64             	mov    0x64(%edi),%eax
445624:	0f b6 50 10          	movzbl 0x10(%eax),%edx
445628:	fe ca                	dec    %dl
44562a:	74 06                	je     0x445632
44562c:	fe ca                	dec    %dl
44562e:	74 1b                	je     0x44564b
445630:	eb 30                	jmp    0x445662
445632:	8b 54 24 08          	mov    0x8(%esp),%edx
445636:	2b 14 24             	sub    (%esp),%edx
445639:	e8 4e e7 ff ff       	call   0x443d8c
44563e:	8b 44 24 0c          	mov    0xc(%esp),%eax
445642:	2b 44 24 04          	sub    0x4(%esp),%eax
445646:	89 47 68             	mov    %eax,0x68(%edi)
445649:	eb 17                	jmp    0x445662
44564b:	8b 54 24 0c          	mov    0xc(%esp),%edx
44564f:	2b 54 24 04          	sub    0x4(%esp),%edx
445653:	e8 34 e7 ff ff       	call   0x443d8c
445658:	8b 44 24 08          	mov    0x8(%esp),%eax
44565c:	2b 04 24             	sub    (%esp),%eax
44565f:	89 47 68             	mov    %eax,0x68(%edi)
445662:	8b 47 14             	mov    0x14(%edi),%eax
445665:	e8 c2 ab ff ff       	call   0x44022c
44566a:	85 c0                	test   %eax,%eax
44566c:	7e 1e                	jle    0x44568c
44566e:	33 d2                	xor    %edx,%edx
445670:	8b c7                	mov    %edi,%eax
445672:	e8 25 04 00 00       	call   0x445a9c
445677:	83 7f 6c 00          	cmpl   $0x0,0x6c(%edi)
44567b:	75 0f                	jne    0x44568c
44567d:	57                   	push   %edi
44567e:	68 1c 5c 44 00       	push   $0x445c1c
445683:	33 d2                	xor    %edx,%edx
445685:	8b c7                	mov    %edi,%eax
445687:	e8 94 ea ff ff       	call   0x444120
44568c:	83 c4 10             	add    $0x10,%esp
44568f:	5f                   	pop    %edi
445690:	5e                   	pop    %esi
445691:	5b                   	pop    %ebx
445692:	c3                   	ret
445693:	90                   	nop
445694:	53                   	push   %ebx
445695:	56                   	push   %esi
445696:	51                   	push   %ecx
445697:	8b da                	mov    %edx,%ebx
445699:	8b f0                	mov    %eax,%esi
44569b:	85 db                	test   %ebx,%ebx
44569d:	74 2e                	je     0x4456cd
44569f:	85 db                	test   %ebx,%ebx
4456a1:	74 2a                	je     0x4456cd
4456a3:	8b 43 14             	mov    0x14(%ebx),%eax
4456a6:	0f b6 40 10          	movzbl 0x10(%eax),%eax
4456aa:	3a 46 48             	cmp    0x48(%esi),%al
4456ad:	75 1e                	jne    0x4456cd
4456af:	8b c3                	mov    %ebx,%eax
4456b1:	e8 ae e6 ff ff       	call   0x443d64
4456b6:	89 04 24             	mov    %eax,(%esp)
4456b9:	db 04 24             	fildl  (%esp)
4456bc:	dc 4e 40             	fmull  0x40(%esi)
4456bf:	e8 64 d9 fb ff       	call   0x403028
4456c4:	8b d0                	mov    %eax,%edx
4456c6:	8b c3                	mov    %ebx,%eax
4456c8:	e8 bf e6 ff ff       	call   0x443d8c
4456cd:	5a                   	pop    %edx
4456ce:	5e                   	pop    %esi
4456cf:	5b                   	pop    %ebx
4456d0:	c3                   	ret
4456d1:	8d 40 00             	lea    0x0(%eax),%eax
4456d4:	55                   	push   %ebp
4456d5:	8b ec                	mov    %esp,%ebp
4456d7:	83 c4 f8             	add    $0xfffffff8,%esp
4456da:	53                   	push   %ebx
4456db:	89 45 fc             	mov    %eax,-0x4(%ebp)
4456de:	8b 45 fc             	mov    -0x4(%ebp),%eax
4456e1:	e8 ee f4 fb ff       	call   0x404bd4
4456e6:	33 c0                	xor    %eax,%eax
4456e8:	55                   	push   %ebp
4456e9:	68 43 57 44 00       	push   $0x445743
4456ee:	64 ff 30             	push   %fs:(%eax)
4456f1:	64 89 20             	mov    %esp,%fs:(%eax)
4456f4:	8b 45 fc             	mov    -0x4(%ebp),%eax
4456f7:	85 c0                	test   %eax,%eax
4456f9:	74 05                	je     0x445700
4456fb:	83 e8 04             	sub    $0x4,%eax
4456fe:	8b 00                	mov    (%eax),%eax
445700:	89 45 f8             	mov    %eax,-0x8(%ebp)
445703:	8d 55 f8             	lea    -0x8(%ebp),%edx
445706:	8b 45 08             	mov    0x8(%ebp),%eax
445709:	8b 40 fc             	mov    -0x4(%eax),%eax
44570c:	b9 04 00 00 00       	mov    $0x4,%ecx
445711:	8b 18                	mov    (%eax),%ebx
445713:	ff 53 10             	call   *0x10(%ebx)
445716:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
44571a:	7e 11                	jle    0x44572d
44571c:	8b 55 fc             	mov    -0x4(%ebp),%edx
44571f:	8b 45 08             	mov    0x8(%ebp),%eax
445722:	8b 40 fc             	mov    -0x4(%eax),%eax
445725:	8b 4d f8             	mov    -0x8(%ebp),%ecx
445728:	8b 18                	mov    (%eax),%ebx
44572a:	ff 53 10             	call   *0x10(%ebx)
44572d:	33 c0                	xor    %eax,%eax
44572f:	5a                   	pop    %edx
445730:	59                   	pop    %ecx
445731:	59                   	pop    %ecx
445732:	64 89 10             	mov    %edx,%fs:(%eax)
445735:	68 4a 57 44 00       	push   $0x44574a
44573a:	8d 45 fc             	lea    -0x4(%ebp),%eax
44573d:	e8 de ef fb ff       	call   0x404720
445742:	c3                   	ret
445743:	e9 40 e9 fb ff       	jmp    0x404088
445748:	eb f0                	jmp    0x44573a
44574a:	5b                   	pop    %ebx
44574b:	59                   	pop    %ecx
44574c:	59                   	pop    %ecx
44574d:	5d                   	pop    %ebp
44574e:	c3                   	ret
44574f:	90                   	nop
445750:	55                   	push   %ebp
445751:	8b ec                	mov    %esp,%ebp
445753:	83 c4 f4             	add    $0xfffffff4,%esp
445756:	53                   	push   %ebx
445757:	56                   	push   %esi
445758:	33 c9                	xor    %ecx,%ecx
44575a:	89 4d f4             	mov    %ecx,-0xc(%ebp)
44575d:	89 55 fc             	mov    %edx,-0x4(%ebp)
445760:	8b d8                	mov    %eax,%ebx
445762:	33 c0                	xor    %eax,%eax
445764:	55                   	push   %ebp
445765:	68 50 58 44 00       	push   $0x445850
44576a:	64 ff 30             	push   %fs:(%eax)
44576d:	64 89 20             	mov    %esp,%fs:(%eax)
445770:	8b 45 08             	mov    0x8(%ebp),%eax
445773:	8b 40 f8             	mov    -0x8(%eax),%eax
445776:	3b 58 64             	cmp    0x64(%eax),%ebx
445779:	74 10                	je     0x44578b
44577b:	83 7b 08 00          	cmpl   $0x0,0x8(%ebx)
44577f:	75 0a                	jne    0x44578b
445781:	83 7b 04 00          	cmpl   $0x0,0x4(%ebx)
445785:	0f 84 86 00 00 00    	je     0x445811
44578b:	8d 55 fc             	lea    -0x4(%ebp),%edx
44578e:	8b 45 08             	mov    0x8(%ebp),%eax
445791:	8b 40 fc             	mov    -0x4(%eax),%eax
445794:	b9 04 00 00 00       	mov    $0x4,%ecx
445799:	8b 30                	mov    (%eax),%esi
44579b:	ff 56 10             	call   *0x10(%esi)
44579e:	8d 53 10             	lea    0x10(%ebx),%edx
4457a1:	8b 45 08             	mov    0x8(%ebp),%eax
4457a4:	8b 40 fc             	mov    -0x4(%eax),%eax
4457a7:	b9 01 00 00 00       	mov    $0x1,%ecx
4457ac:	8b 30                	mov    (%eax),%esi
4457ae:	ff 56 10             	call   *0x10(%esi)
4457b1:	8b 45 08             	mov    0x8(%ebp),%eax
4457b4:	8b 40 f8             	mov    -0x8(%eax),%eax
4457b7:	80 78 74 00          	cmpb   $0x0,0x74(%eax)
4457bb:	74 24                	je     0x4457e1
4457bd:	8b 45 08             	mov    0x8(%ebp),%eax
4457c0:	8b 40 f8             	mov    -0x8(%eax),%eax
4457c3:	0f b6 53 10          	movzbl 0x10(%ebx),%edx
4457c7:	8b 08                	mov    (%eax),%ecx
4457c9:	ff 51 28             	call   *0x28(%ecx)
4457cc:	8b c8                	mov    %eax,%ecx
4457ce:	8b 45 08             	mov    0x8(%ebp),%eax
4457d1:	8b 40 f8             	mov    -0x8(%eax),%eax
4457d4:	8b 53 20             	mov    0x20(%ebx),%edx
4457d7:	e8 b4 0b 00 00       	call   0x446390
4457dc:	89 45 f8             	mov    %eax,-0x8(%ebp)
4457df:	eb 06                	jmp    0x4457e7
4457e1:	8b 43 20             	mov    0x20(%ebx),%eax
4457e4:	89 45 f8             	mov    %eax,-0x8(%ebp)
4457e7:	8d 55 f8             	lea    -0x8(%ebp),%edx
4457ea:	8b 45 08             	mov    0x8(%ebp),%eax
4457ed:	8b 40 fc             	mov    -0x4(%eax),%eax
4457f0:	b9 04 00 00 00       	mov    $0x4,%ecx
4457f5:	8b 30                	mov    (%eax),%esi
4457f7:	ff 56 10             	call   *0x10(%esi)
4457fa:	8b 45 08             	mov    0x8(%ebp),%eax
4457fd:	50                   	push   %eax
4457fe:	8d 55 f4             	lea    -0xc(%ebp),%edx
445801:	8b c3                	mov    %ebx,%eax
445803:	e8 e8 e2 ff ff       	call   0x443af0
445808:	8b 45 f4             	mov    -0xc(%ebp),%eax
44580b:	e8 c4 fe ff ff       	call   0x4456d4
445810:	59                   	pop    %ecx
445811:	8b 43 08             	mov    0x8(%ebx),%eax
445814:	85 c0                	test   %eax,%eax
445816:	74 0e                	je     0x445826
445818:	8b 55 08             	mov    0x8(%ebp),%edx
44581b:	52                   	push   %edx
44581c:	8b 55 fc             	mov    -0x4(%ebp),%edx
44581f:	42                   	inc    %edx
445820:	e8 2b ff ff ff       	call   0x445750
445825:	59                   	pop    %ecx
445826:	8b 43 0c             	mov    0xc(%ebx),%eax
445829:	85 c0                	test   %eax,%eax
44582b:	74 0d                	je     0x44583a
44582d:	8b 55 08             	mov    0x8(%ebp),%edx
445830:	52                   	push   %edx
445831:	8b 55 fc             	mov    -0x4(%ebp),%edx
445834:	e8 17 ff ff ff       	call   0x445750
445839:	59                   	pop    %ecx
44583a:	33 c0                	xor    %eax,%eax
44583c:	5a                   	pop    %edx
44583d:	59                   	pop    %ecx
44583e:	59                   	pop    %ecx
44583f:	64 89 10             	mov    %edx,%fs:(%eax)
445842:	68 57 58 44 00       	push   $0x445857
445847:	8d 45 f4             	lea    -0xc(%ebp),%eax
44584a:	e8 d1 ee fb ff       	call   0x404720
44584f:	c3                   	ret
445850:	e9 33 e8 fb ff       	jmp    0x404088
445855:	eb f0                	jmp    0x445847
445857:	5e                   	pop    %esi
445858:	5b                   	pop    %ebx
445859:	8b e5                	mov    %ebp,%esp
44585b:	5d                   	pop    %ebp
44585c:	c3                   	ret
44585d:	8d 40 00             	lea    0x0(%eax),%eax
445860:	55                   	push   %ebp
445861:	8b ec                	mov    %esp,%ebp
445863:	83 c4 e8             	add    $0xffffffe8,%esp
445866:	53                   	push   %ebx
445867:	56                   	push   %esi
445868:	33 c9                	xor    %ecx,%ecx
44586a:	89 4d e8             	mov    %ecx,-0x18(%ebp)
44586d:	89 55 fc             	mov    %edx,-0x4(%ebp)
445870:	89 45 f8             	mov    %eax,-0x8(%ebp)
445873:	33 c0                	xor    %eax,%eax
445875:	55                   	push   %ebp
445876:	68 07 5a 44 00       	push   $0x445a07
44587b:	64 ff 30             	push   %fs:(%eax)
44587e:	64 89 20             	mov    %esp,%fs:(%eax)
445881:	8b 45 f8             	mov    -0x8(%ebp),%eax
445884:	8d 50 70             	lea    0x70(%eax),%edx
445887:	b9 04 00 00 00       	mov    $0x4,%ecx
44588c:	8b 45 fc             	mov    -0x4(%ebp),%eax
44588f:	8b 18                	mov    (%eax),%ebx
445891:	ff 53 10             	call   *0x10(%ebx)
445894:	8b 45 f8             	mov    -0x8(%ebp),%eax
445897:	8d 50 74             	lea    0x74(%eax),%edx
44589a:	b9 01 00 00 00       	mov    $0x1,%ecx
44589f:	8b 45 fc             	mov    -0x4(%ebp),%eax
4458a2:	8b 18                	mov    (%eax),%ebx
4458a4:	ff 53 10             	call   *0x10(%ebx)
4458a7:	8b 45 f8             	mov    -0x8(%ebp),%eax
4458aa:	8b 40 64             	mov    0x64(%eax),%eax
4458ad:	8d 50 10             	lea    0x10(%eax),%edx
4458b0:	b9 01 00 00 00       	mov    $0x1,%ecx
4458b5:	8b 45 fc             	mov    -0x4(%ebp),%eax
4458b8:	8b 18                	mov    (%eax),%ebx
4458ba:	ff 53 10             	call   *0x10(%ebx)
4458bd:	b2 01                	mov    $0x1,%dl
4458bf:	a1 e8 5b 41 00       	mov    0x415be8,%eax
4458c4:	e8 fb df fb ff       	call   0x4038c4
4458c9:	89 45 ec             	mov    %eax,-0x14(%ebp)
4458cc:	33 c0                	xor    %eax,%eax
4458ce:	55                   	push   %ebp
4458cf:	68 80 59 44 00       	push   $0x445980
4458d4:	64 ff 30             	push   %fs:(%eax)
4458d7:	64 89 20             	mov    %esp,%fs:(%eax)
4458da:	8b 45 f8             	mov    -0x8(%ebp),%eax
4458dd:	8b 40 14             	mov    0x14(%eax),%eax
4458e0:	e8 47 a9 ff ff       	call   0x44022c
4458e5:	8b d8                	mov    %eax,%ebx
4458e7:	4b                   	dec    %ebx
4458e8:	85 db                	test   %ebx,%ebx
4458ea:	7c 35                	jl     0x445921
4458ec:	43                   	inc    %ebx
4458ed:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
4458f4:	8b 45 f8             	mov    -0x8(%ebp),%eax
4458f7:	8b 40 14             	mov    0x14(%eax),%eax
4458fa:	8b 55 f4             	mov    -0xc(%ebp),%edx
4458fd:	e8 3e a9 ff ff       	call   0x440240
445902:	8b f0                	mov    %eax,%esi
445904:	80 7e 57 00          	cmpb   $0x0,0x57(%esi)