443566:	85 f6                	test   %esi,%esi
443568:	78 07                	js     0x443571
44356a:	8b 45 d4             	mov    -0x2c(%ebp),%eax
44356d:	89 18                	mov    %ebx,(%eax)
44356f:	33 db                	xor    %ebx,%ebx
443571:	85 db                	test   %ebx,%ebx
443573:	74 06                	je     0x44357b
443575:	8b 03                	mov    (%ebx),%eax
443577:	53                   	push   %ebx
443578:	ff 50 08             	call   *0x8(%eax)
44357b:	8b 4d fc             	mov    -0x4(%ebp),%ecx
44357e:	8b c6                	mov    %esi,%eax
443580:	5f                   	pop    %edi
443581:	5e                   	pop    %esi
443582:	33 cd                	xor    %ebp,%ecx
443584:	5b                   	pop    %ebx
443585:	e8 ac a8 fe ff       	call   0x42de36
44358a:	8b e5                	mov    %ebp,%esp
44358c:	5d                   	pop    %ebp
44358d:	c2 0c 00             	ret    $0xc
443590:	55                   	push   %ebp
443591:	8b ec                	mov    %esp,%ebp
443593:	ff 75 0c             	push   0xc(%ebp)
443596:	6a 00                	push   $0x0
443598:	ff 75 08             	push   0x8(%ebp)
44359b:	e8 04 00 00 00       	call   0x4435a4
4435a0:	5d                   	pop    %ebp
4435a1:	c2 08 00             	ret    $0x8
4435a4:	55                   	push   %ebp
4435a5:	8b ec                	mov    %esp,%ebp
4435a7:	83 ec 1c             	sub    $0x1c,%esp
4435aa:	53                   	push   %ebx
4435ab:	56                   	push   %esi
4435ac:	57                   	push   %edi
4435ad:	33 ff                	xor    %edi,%edi
4435af:	8d 45 e4             	lea    -0x1c(%ebp),%eax
4435b2:	8b df                	mov    %edi,%ebx
4435b4:	89 7d f4             	mov    %edi,-0xc(%ebp)
4435b7:	50                   	push   %eax
4435b8:	89 5d fc             	mov    %ebx,-0x4(%ebp)
4435bb:	89 7d f8             	mov    %edi,-0x8(%ebp)
4435be:	ff 15 28 b3 44 00    	call   *0x44b328
4435c4:	6a 08                	push   $0x8
4435c6:	58                   	pop    %eax
4435c7:	ff 75 08             	push   0x8(%ebp)
4435ca:	66 89 45 e4          	mov    %ax,-0x1c(%ebp)
4435ce:	ff 15 24 b3 44 00    	call   *0x44b324
4435d4:	89 45 ec             	mov    %eax,-0x14(%ebp)
4435d7:	85 c0                	test   %eax,%eax
4435d9:	75 1a                	jne    0x4435f5
4435db:	be 0e 00 07 80       	mov    $0x8007000e,%esi
4435e0:	56                   	push   %esi
4435e1:	68 6a 01 00 00       	push   $0x16a
4435e6:	68 a8 65 46 00       	push   $0x4665a8
4435eb:	e8 e3 01 fc ff       	call   0x4037d3
4435f0:	e9 b6 00 00 00       	jmp    0x4436ab
4435f5:	57                   	push   %edi
4435f6:	8d 45 fc             	lea    -0x4(%ebp),%eax
4435f9:	50                   	push   %eax
4435fa:	57                   	push   %edi
4435fb:	e8 23 f9 ff ff       	call   0x442f23
443600:	8b 5d fc             	mov    -0x4(%ebp),%ebx
443603:	8b f0                	mov    %eax,%esi
443605:	83 fe 01             	cmp    $0x1,%esi
443608:	b8 05 40 00 80       	mov    $0x80004005,%eax
44360d:	0f 44 f0             	cmove  %eax,%esi
443610:	85 f6                	test   %esi,%esi
443612:	0f 88 93 00 00 00    	js     0x4436ab
443618:	f6 45 0c 01          	testb  $0x1,0xc(%ebp)
44361c:	74 11                	je     0x44362f
44361e:	8b 03                	mov    (%ebx),%eax
443620:	6a ff                	push   $0xffffffff
443622:	53                   	push   %ebx
443623:	ff 90 20 01 00 00    	call   *0x120(%eax)
443629:	8b f0                	mov    %eax,%esi
44362b:	85 f6                	test   %esi,%esi
44362d:	78 7c                	js     0x4436ab
44362f:	8b 03                	mov    (%ebx),%eax
443631:	57                   	push   %edi
443632:	53                   	push   %ebx
443633:	ff 90 10 01 00 00    	call   *0x110(%eax)
443639:	8b f0                	mov    %eax,%esi
44363b:	85 f6                	test   %esi,%esi
44363d:	78 6c                	js     0x4436ab
44363f:	8b 03                	mov    (%ebx),%eax
443641:	57                   	push   %edi
443642:	53                   	push   %ebx
443643:	ff 90 18 01 00 00    	call   *0x118(%eax)
443649:	8b f0                	mov    %eax,%esi
44364b:	85 f6                	test   %esi,%esi
44364d:	78 5c                	js     0x4436ab
44364f:	8b 03                	mov    (%ebx),%eax
443651:	57                   	push   %edi
443652:	53                   	push   %ebx
443653:	ff 90 fc 00 00 00    	call   *0xfc(%eax)
443659:	8b 03                	mov    (%ebx),%eax
44365b:	8d 4d f4             	lea    -0xc(%ebp),%ecx
44365e:	51                   	push   %ecx
44365f:	83 ec 10             	sub    $0x10,%esp
443662:	8d 75 e4             	lea    -0x1c(%ebp),%esi
443665:	8b fc                	mov    %esp,%edi
443667:	53                   	push   %ebx
443668:	a5                   	movsl  %ds:(%esi),%es:(%edi)
443669:	a5                   	movsl  %ds:(%esi),%es:(%edi)
44366a:	a5                   	movsl  %ds:(%esi),%es:(%edi)
44366b:	a5                   	movsl  %ds:(%esi),%es:(%edi)
44366c:	ff 90 e8 00 00 00    	call   *0xe8(%eax)
443672:	8b f0                	mov    %eax,%esi
443674:	b8 6e 00 07 80       	mov    $0x8007006e,%eax
443679:	83 fe 01             	cmp    $0x1,%esi
44367c:	0f 44 f0             	cmove  %eax,%esi
44367f:	85 f6                	test   %esi,%esi
443681:	79 1b                	jns    0x44369e
443683:	8b 03                	mov    (%ebx),%eax
443685:	8d 4d f8             	lea    -0x8(%ebp),%ecx
443688:	51                   	push   %ecx
443689:	53                   	push   %ebx
44368a:	ff 90 f0 00 00 00    	call   *0xf0(%eax)
443690:	85 c0                	test   %eax,%eax
443692:	75 17                	jne    0x4436ab
443694:	ff 75 f8             	push   -0x8(%ebp)
443697:	e8 e9 f7 ff ff       	call   0x442e85
44369c:	eb 0d                	jmp    0x4436ab
44369e:	8b 45 10             	mov    0x10(%ebp),%eax
4436a1:	85 c0                	test   %eax,%eax
4436a3:	74 04                	je     0x4436a9
4436a5:	89 18                	mov    %ebx,(%eax)
4436a7:	33 db                	xor    %ebx,%ebx
4436a9:	33 f6                	xor    %esi,%esi
4436ab:	8d 45 e4             	lea    -0x1c(%ebp),%eax
4436ae:	50                   	push   %eax
4436af:	ff 15 2c b3 44 00    	call   *0x44b32c
4436b5:	85 db                	test   %ebx,%ebx
4436b7:	74 06                	je     0x4436bf
4436b9:	8b 03                	mov    (%ebx),%eax
4436bb:	53                   	push   %ebx
4436bc:	ff 50 08             	call   *0x8(%eax)
4436bf:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4436c2:	85 c9                	test   %ecx,%ecx
4436c4:	74 06                	je     0x4436cc
4436c6:	8b 01                	mov    (%ecx),%eax
4436c8:	51                   	push   %ecx
4436c9:	ff 50 08             	call   *0x8(%eax)
4436cc:	5f                   	pop    %edi
4436cd:	8b c6                	mov    %esi,%eax
4436cf:	5e                   	pop    %esi
4436d0:	5b                   	pop    %ebx
4436d1:	8b e5                	mov    %ebp,%esp
4436d3:	5d                   	pop    %ebp
4436d4:	c2 0c 00             	ret    $0xc
4436d7:	55                   	push   %ebp
4436d8:	8b ec                	mov    %esp,%ebp
4436da:	51                   	push   %ecx
4436db:	8b 45 0c             	mov    0xc(%ebp),%eax
4436de:	53                   	push   %ebx
4436df:	8b 5d 10             	mov    0x10(%ebp),%ebx
4436e2:	56                   	push   %esi
4436e3:	33 f6                	xor    %esi,%esi
4436e5:	89 75 fc             	mov    %esi,-0x4(%ebp)
4436e8:	89 30                	mov    %esi,(%eax)
4436ea:	57                   	push   %edi
4436eb:	85 db                	test   %ebx,%ebx
4436ed:	74 02                	je     0x4436f1
4436ef:	89 33                	mov    %esi,(%ebx)
4436f1:	8b 45 08             	mov    0x8(%ebp),%eax
4436f4:	8d 55 fc             	lea    -0x4(%ebp),%edx
4436f7:	52                   	push   %edx
4436f8:	50                   	push   %eax
4436f9:	8b 08                	mov    (%eax),%ecx
4436fb:	ff 51 38             	call   *0x38(%ecx)
4436fe:	8b f8                	mov    %eax,%edi
443700:	85 ff                	test   %edi,%edi
443702:	78 20                	js     0x443724
443704:	75 1e                	jne    0x443724
443706:	8b 45 fc             	mov    -0x4(%ebp),%eax
443709:	8d 55 10             	lea    0x10(%ebp),%edx
44370c:	52                   	push   %edx
44370d:	50                   	push   %eax
44370e:	8b 08                	mov    (%eax),%ecx
443710:	ff 51 28             	call   *0x28(%ecx)
443713:	8b f8                	mov    %eax,%edi
443715:	85 ff                	test   %edi,%edi
443717:	78 0b                	js     0x443724
443719:	83 7d 10 02          	cmpl   $0x2,0x10(%ebp)
44371d:	74 1d                	je     0x44373c
44371f:	bf ff ff 00 80       	mov    $0x8000ffff,%edi
443724:	8b 75 fc             	mov    -0x4(%ebp),%esi
443727:	85 f6                	test   %esi,%esi
443729:	74 06                	je     0x443731
44372b:	8b 06                	mov    (%esi),%eax
44372d:	56                   	push   %esi
44372e:	ff 50 08             	call   *0x8(%eax)
443731:	8b c7                	mov    %edi,%eax
443733:	5f                   	pop    %edi
443734:	5e                   	pop    %esi
443735:	5b                   	pop    %ebx
443736:	8b e5                	mov    %ebp,%esp
443738:	5d                   	pop    %ebp
443739:	c2 0c 00             	ret    $0xc
44373c:	85 db                	test   %ebx,%ebx
44373e:	74 13                	je     0x443753
443740:	8b 45 fc             	mov    -0x4(%ebp),%eax
443743:	53                   	push   %ebx
443744:	50                   	push   %eax
443745:	8b 08                	mov    (%eax),%ecx
443747:	ff 91 a4 00 00 00    	call   *0xa4(%ecx)
44374d:	8b f8                	mov    %eax,%edi
44374f:	85 ff                	test   %edi,%edi
443751:	78 d1                	js     0x443724
443753:	8b 4d 0c             	mov    0xc(%ebp),%ecx
443756:	8b 45 fc             	mov    -0x4(%ebp),%eax
443759:	89 75 fc             	mov    %esi,-0x4(%ebp)
44375c:	89 01                	mov    %eax,(%ecx)
44375e:	eb c7                	jmp    0x443727
443760:	55                   	push   %ebp
443761:	8b ec                	mov    %esp,%ebp
443763:	51                   	push   %ecx
443764:	8b 45 0c             	mov    0xc(%ebp),%eax
443767:	53                   	push   %ebx
443768:	56                   	push   %esi
443769:	33 f6                	xor    %esi,%esi
44376b:	57                   	push   %edi
44376c:	8b 7d 10             	mov    0x10(%ebp),%edi
44376f:	89 75 fc             	mov    %esi,-0x4(%ebp)
443772:	89 30                	mov    %esi,(%eax)
443774:	85 ff                	test   %edi,%edi
443776:	74 2d                	je     0x4437a5
443778:	89 37                	mov    %esi,(%edi)
44377a:	eb 29                	jmp    0x4437a5
44377c:	8b 45 fc             	mov    -0x4(%ebp),%eax
44377f:	8d 55 10             	lea    0x10(%ebp),%edx
443782:	52                   	push   %edx
443783:	50                   	push   %eax
443784:	8b 08                	mov    (%eax),%ecx
443786:	ff 51 28             	call   *0x28(%ecx)
443789:	8b d8                	mov    %eax,%ebx
44378b:	85 db                	test   %ebx,%ebx
44378d:	78 5c                	js     0x4437eb
44378f:	83 7d 10 01          	cmpl   $0x1,0x10(%ebp)
443793:	74 23                	je     0x4437b8
443795:	8b 4d fc             	mov    -0x4(%ebp),%ecx
443798:	85 c9                	test   %ecx,%ecx
44379a:	74 09                	je     0x4437a5
44379c:	8b 01                	mov    (%ecx),%eax
44379e:	51                   	push   %ecx
44379f:	ff 50 08             	call   *0x8(%eax)
4437a2:	89 75 fc             	mov    %esi,-0x4(%ebp)
4437a5:	8b 4d 08             	mov    0x8(%ebp),%ecx
4437a8:	8d 55 fc             	lea    -0x4(%ebp),%edx
4437ab:	52                   	push   %edx
4437ac:	51                   	push   %ecx
4437ad:	8b 01                	mov    (%ecx),%eax
4437af:	ff 50 24             	call   *0x24(%eax)
4437b2:	8b d8                	mov    %eax,%ebx
4437b4:	85 db                	test   %ebx,%ebx
4437b6:	74 c4                	je     0x44377c
4437b8:	85 db                	test   %ebx,%ebx
4437ba:	78 2f                	js     0x4437eb
4437bc:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4437bf:	85 c9                	test   %ecx,%ecx
4437c1:	74 17                	je     0x4437da
4437c3:	85 ff                	test   %edi,%edi
4437c5:	74 13                	je     0x4437da
4437c7:	8b 01                	mov    (%ecx),%eax
4437c9:	57                   	push   %edi
4437ca:	51                   	push   %ecx
4437cb:	ff 90 a4 00 00 00    	call   *0xa4(%eax)
4437d1:	8b d8                	mov    %eax,%ebx
4437d3:	85 db                	test   %ebx,%ebx
4437d5:	78 14                	js     0x4437eb
4437d7:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4437da:	8b 45 0c             	mov    0xc(%ebp),%eax
4437dd:	33 db                	xor    %ebx,%ebx
4437df:	3b ce                	cmp    %esi,%ecx
4437e1:	89 75 fc             	mov    %esi,-0x4(%ebp)
4437e4:	0f 94 c3             	sete   %bl
4437e7:	89 08                	mov    %ecx,(%eax)
4437e9:	eb 03                	jmp    0x4437ee
4437eb:	8b 75 fc             	mov    -0x4(%ebp),%esi
4437ee:	85 f6                	test   %esi,%esi
4437f0:	74 06                	je     0x4437f8
4437f2:	8b 06                	mov    (%esi),%eax
4437f4:	56                   	push   %esi
4437f5:	ff 50 08             	call   *0x8(%eax)
4437f8:	5f                   	pop    %edi
4437f9:	5e                   	pop    %esi
4437fa:	8b c3                	mov    %ebx,%eax
4437fc:	5b                   	pop    %ebx
4437fd:	8b e5                	mov    %ebp,%esp
4437ff:	5d                   	pop    %ebp
443800:	c2 0c 00             	ret    $0xc
443803:	55                   	push   %ebp
443804:	8b ec                	mov    %esp,%ebp
443806:	56                   	push   %esi
443807:	8b 75 08             	mov    0x8(%ebp),%esi
44380a:	85 f6                	test   %esi,%esi
44380c:	75 19                	jne    0x443827
44380e:	b8 ff ff 00 80       	mov    $0x8000ffff,%eax
443813:	50                   	push   %eax
443814:	68 0e 04 00 00       	push   $0x40e
443819:	68 a8 65 46 00       	push   $0x4665a8
44381e:	8b f0                	mov    %eax,%esi
443820:	e8 ae ff fb ff       	call   0x4037d3
443825:	eb 5c                	jmp    0x443883
443827:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
44382b:	75 0d                	jne    0x44383a
44382d:	b8 ff ff 00 80       	mov    $0x8000ffff,%eax
443832:	50                   	push   %eax
443833:	68 0f 04 00 00       	push   $0x40f
443838:	eb df                	jmp    0x443819
44383a:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
44383e:	b8 24 b5 44 00       	mov    $0x44b524,%eax
443843:	57                   	push   %edi
443844:	0f 45 45 0c          	cmovne 0xc(%ebp),%eax
443848:	50                   	push   %eax
443849:	ff 15 24 b3 44 00    	call   *0x44b324
44384f:	8b f8                	mov    %eax,%edi
443851:	85 ff                	test   %edi,%edi
443853:	75 17                	jne    0x44386c
443855:	be 0e 00 07 80       	mov    $0x8007000e,%esi
44385a:	56                   	push   %esi
44385b:	68 12 04 00 00       	push   $0x412
443860:	68 a8 65 46 00       	push   $0x4665a8
443865:	e8 69 ff fb ff       	call   0x4037d3
44386a:	eb 16                	jmp    0x443882
44386c:	ff 75 10             	push   0x10(%ebp)
44386f:	8b 06                	mov    (%esi),%eax
443871:	57                   	push   %edi
443872:	56                   	push   %esi
443873:	ff 90 90 00 00 00    	call   *0x90(%eax)
443879:	8b f0                	mov    %eax,%esi
44387b:	57                   	push   %edi
44387c:	ff 15 20 b3 44 00    	call   *0x44b320
443882:	5f                   	pop    %edi
443883:	8b c6                	mov    %esi,%eax
443885:	5e                   	pop    %esi
443886:	5d                   	pop    %ebp
443887:	c2 0c 00             	ret    $0xc
44388a:	55                   	push   %ebp
44388b:	8b ec                	mov    %esp,%ebp
44388d:	56                   	push   %esi
44388e:	8b 75 08             	mov    0x8(%ebp),%esi
443891:	85 f6                	test   %esi,%esi
443893:	75 19                	jne    0x4438ae
443895:	b8 ff ff 00 80       	mov    $0x8000ffff,%eax
44389a:	50                   	push   %eax
44389b:	68 22 02 00 00       	push   $0x222
4438a0:	68 a8 65 46 00       	push   $0x4665a8
4438a5:	8b f0                	mov    %eax,%esi
4438a7:	e8 27 ff fb ff       	call   0x4037d3