440550:	8b 01                	mov    (%ecx),%eax
440552:	8b 50 f4             	mov    -0xc(%eax),%edx
440555:	83 e8 10             	sub    $0x10,%eax
440558:	56                   	push   %esi
440559:	8b 74 24 08          	mov    0x8(%esp),%esi
44055d:	3b d6                	cmp    %esi,%edx
44055f:	7e 02                	jle    0x440563
440561:	8b f2                	mov    %edx,%esi
440563:	83 78 0c 01          	cmpl   $0x1,0xc(%eax)
440567:	7e 08                	jle    0x440571
440569:	56                   	push   %esi
44056a:	e8 20 ff ff ff       	call   0x44048f
44056f:	eb 22                	jmp    0x440593
440571:	8b 40 08             	mov    0x8(%eax),%eax
440574:	3b c6                	cmp    %esi,%eax
440576:	7d 1b                	jge    0x440593
440578:	ba 00 04 00 00       	mov    $0x400,%edx
44057d:	3b c2                	cmp    %edx,%eax
44057f:	7e 04                	jle    0x440585
440581:	03 c2                	add    %edx,%eax
440583:	eb 02                	jmp    0x440587
440585:	03 c0                	add    %eax,%eax
440587:	3b c6                	cmp    %esi,%eax
440589:	7d 02                	jge    0x44058d
44058b:	8b c6                	mov    %esi,%eax
44058d:	50                   	push   %eax
44058e:	e8 63 ff ff ff       	call   0x4404f6
440593:	5e                   	pop    %esi
440594:	c2 04 00             	ret    $0x4
440597:	56                   	push   %esi
440598:	8b f1                	mov    %ecx,%esi
44059a:	8b 06                	mov    (%esi),%eax
44059c:	33 c9                	xor    %ecx,%ecx
44059e:	83 e8 10             	sub    $0x10,%eax
4405a1:	41                   	inc    %ecx
4405a2:	2b 48 0c             	sub    0xc(%eax),%ecx
4405a5:	8b 40 08             	mov    0x8(%eax),%eax
4405a8:	2b 44 24 08          	sub    0x8(%esp),%eax
4405ac:	0b c8                	or     %eax,%ecx
4405ae:	7d 0b                	jge    0x4405bb
4405b0:	ff 74 24 08          	push   0x8(%esp)
4405b4:	8b ce                	mov    %esi,%ecx
4405b6:	e8 95 ff ff ff       	call   0x440550
4405bb:	8b 06                	mov    (%esi),%eax
4405bd:	5e                   	pop    %esi
4405be:	c2 04 00             	ret    $0x4
4405c1:	e9 d1 ff ff ff       	jmp    0x440597
4405c6:	55                   	push   %ebp
4405c7:	8b ec                	mov    %esp,%ebp
4405c9:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
4405cd:	53                   	push   %ebx
4405ce:	8b d9                	mov    %ecx,%ebx
4405d0:	75 07                	jne    0x4405d9
4405d2:	e8 6f fe ff ff       	call   0x440446
4405d7:	eb 51                	jmp    0x44062a
4405d9:	56                   	push   %esi
4405da:	8b 75 08             	mov    0x8(%ebp),%esi
4405dd:	85 f6                	test   %esi,%esi
4405df:	75 0a                	jne    0x4405eb
4405e1:	68 57 00 07 80       	push   $0x80070057
4405e6:	e8 ff 0b fc ff       	call   0x4011ea
4405eb:	8b 03                	mov    (%ebx),%eax
4405ed:	57                   	push   %edi
4405ee:	ff 75 0c             	push   0xc(%ebp)
4405f1:	8b 78 f4             	mov    -0xc(%eax),%edi
4405f4:	2b f0                	sub    %eax,%esi
4405f6:	8b cb                	mov    %ebx,%ecx
4405f8:	d1 fe                	sar    $1,%esi
4405fa:	e8 98 ff ff ff       	call   0x440597
4405ff:	3b f7                	cmp    %edi,%esi
440601:	5f                   	pop    %edi
440602:	ff 75 0c             	push   0xc(%ebp)
440605:	77 0c                	ja     0x440613
440607:	8d 0c 70             	lea    (%eax,%esi,2),%ecx
44060a:	51                   	push   %ecx
44060b:	50                   	push   %eax
44060c:	e8 98 fc ff ff       	call   0x4402a9
440611:	eb 09                	jmp    0x44061c
440613:	ff 75 08             	push   0x8(%ebp)
440616:	50                   	push   %eax
440617:	e8 75 fc ff ff       	call   0x440291
44061c:	83 c4 0c             	add    $0xc,%esp
44061f:	ff 75 0c             	push   0xc(%ebp)
440622:	8b cb                	mov    %ebx,%ecx
440624:	e8 42 fd ff ff       	call   0x44036b
440629:	5e                   	pop    %esi
44062a:	5b                   	pop    %ebx
44062b:	5d                   	pop    %ebp
44062c:	c2 08 00             	ret    $0x8
44062f:	53                   	push   %ebx
440630:	8b 5c 24 08          	mov    0x8(%esp),%ebx
440634:	85 db                	test   %ebx,%ebx
440636:	56                   	push   %esi
440637:	57                   	push   %edi
440638:	8b f9                	mov    %ecx,%edi
44063a:	74 0b                	je     0x440647
44063c:	53                   	push   %ebx
44063d:	e8 c2 64 fc ff       	call   0x406b04
440642:	59                   	pop    %ecx
440643:	8b f0                	mov    %eax,%esi
440645:	eb 02                	jmp    0x440649
440647:	33 f6                	xor    %esi,%esi
440649:	85 f6                	test   %esi,%esi
44064b:	8b cf                	mov    %edi,%ecx
44064d:	7e 1d                	jle    0x44066c
44064f:	56                   	push   %esi
440650:	e8 42 ff ff ff       	call   0x440597
440655:	6a ff                	push   $0xffffffff
440657:	53                   	push   %ebx
440658:	56                   	push   %esi
440659:	50                   	push   %eax
44065a:	e8 bf 64 fc ff       	call   0x406b1e
44065f:	83 c4 10             	add    $0x10,%esp
440662:	56                   	push   %esi
440663:	8b cf                	mov    %edi,%ecx
440665:	e8 01 fd ff ff       	call   0x44036b
44066a:	eb 05                	jmp    0x440671
44066c:	e8 d5 fd ff ff       	call   0x440446
440671:	8b c7                	mov    %edi,%eax
440673:	5f                   	pop    %edi
440674:	5e                   	pop    %esi
440675:	5b                   	pop    %ebx
440676:	c2 04 00             	ret    $0x4
440679:	56                   	push   %esi
44067a:	8b 74 24 08          	mov    0x8(%esp),%esi
44067e:	85 f6                	test   %esi,%esi
440680:	57                   	push   %edi
440681:	8b f9                	mov    %ecx,%edi
440683:	75 04                	jne    0x440689
440685:	33 c0                	xor    %eax,%eax
440687:	eb 07                	jmp    0x440690
440689:	56                   	push   %esi
44068a:	e8 39 7e fd ff       	call   0x4184c8
44068f:	59                   	pop    %ecx
440690:	50                   	push   %eax
440691:	56                   	push   %esi
440692:	8b cf                	mov    %edi,%ecx
440694:	e8 2d ff ff ff       	call   0x4405c6
440699:	5f                   	pop    %edi
44069a:	5e                   	pop    %esi
44069b:	c2 04 00             	ret    $0x4
44069e:	b8 f7 28 48 00       	mov    $0x4828f7,%eax
4406a3:	e8 d4 75 fd ff       	call   0x417c7c
4406a8:	81 ec 10 01 00 00    	sub    $0x110,%esp
4406ae:	a1 40 8b 4a 00       	mov    0x4a8b40,%eax
4406b3:	89 45 f0             	mov    %eax,-0x10(%ebp)
4406b6:	56                   	push   %esi
4406b7:	8d 85 e4 fe ff ff    	lea    -0x11c(%ebp),%eax
4406bd:	50                   	push   %eax
4406be:	ff 75 08             	push   0x8(%ebp)
4406c1:	e8 f2 02 01 00       	call   0x4509b8
4406c6:	83 bd e4 fe ff ff 01 	cmpl   $0x1,-0x11c(%ebp)
4406cd:	8b f0                	mov    %eax,%esi
4406cf:	8d 46 01             	lea    0x1(%esi),%eax
4406d2:	50                   	push   %eax
4406d3:	75 5c                	jne    0x440731
4406d5:	83 a5 6c ff ff ff 00 	andl   $0x0,-0x94(%ebp)
4406dc:	8d 8d 6c ff ff ff    	lea    -0x94(%ebp),%ecx
4406e2:	e8 c5 0c fc ff       	call   0x4013ac
4406e7:	8b 85 6c ff ff ff    	mov    -0x94(%ebp),%eax
4406ed:	8b 4d 08             	mov    0x8(%ebp),%ecx
4406f0:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4406f4:	56                   	push   %esi
4406f5:	c6 04 30 00          	movb   $0x0,(%eax,%esi,1)
4406f9:	ff b5 6c ff ff ff    	push   -0x94(%ebp)
4406ff:	e8 25 00 01 00       	call   0x450729
440704:	3b c6                	cmp    %esi,%eax
440706:	75 5b                	jne    0x440763
440708:	ff b5 6c ff ff ff    	push   -0x94(%ebp)
44070e:	8b 4d 0c             	mov    0xc(%ebp),%ecx
440711:	e8 6b 0a fc ff       	call   0x401181
440716:	8d 85 70 ff ff ff    	lea    -0x90(%ebp),%eax
44071c:	39 85 6c ff ff ff    	cmp    %eax,-0x94(%ebp)
440722:	74 6f                	je     0x440793
440724:	8d 8d 6c ff ff ff    	lea    -0x94(%ebp),%ecx
44072a:	e8 9b 0c fc ff       	call   0x4013ca
44072f:	eb 62                	jmp    0x440793
440731:	8d 8d e8 fe ff ff    	lea    -0x118(%ebp),%ecx
440737:	e8 fc fd ff ff       	call   0x440538
44073c:	8b 85 e8 fe ff ff    	mov    -0x118(%ebp),%eax
440742:	8b 4d 08             	mov    0x8(%ebp),%ecx
440745:	03 f6                	add    %esi,%esi
440747:	66 83 24 06 00       	andw   $0x0,(%esi,%eax,1)
44074c:	56                   	push   %esi
44074d:	ff b5 e8 fe ff ff    	push   -0x118(%ebp)
440753:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
44075a:	e8 ca ff 00 00       	call   0x450729
44075f:	3b c6                	cmp    %esi,%eax
440761:	74 09                	je     0x44076c
440763:	6a 00                	push   $0x0
440765:	6a 03                	push   $0x3
440767:	e8 ef 09 01 00       	call   0x45115b
44076c:	ff b5 e8 fe ff ff    	push   -0x118(%ebp)
440772:	8b 4d 0c             	mov    0xc(%ebp),%ecx
440775:	e8 bd 64 fc ff       	call   0x406c37
44077a:	8d 85 ec fe ff ff    	lea    -0x114(%ebp),%eax
440780:	39 85 e8 fe ff ff    	cmp    %eax,-0x118(%ebp)
440786:	74 0b                	je     0x440793
440788:	8d 8d e8 fe ff ff    	lea    -0x118(%ebp),%ecx
44078e:	e8 10 64 fc ff       	call   0x406ba3
440793:	8b 4d f4             	mov    -0xc(%ebp),%ecx
440796:	8b 45 08             	mov    0x8(%ebp),%eax
440799:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4407a0:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4407a3:	5e                   	pop    %esi
4407a4:	e8 35 74 fd ff       	call   0x417bde
4407a9:	c9                   	leave
4407aa:	c2 08 00             	ret    $0x8
4407ad:	56                   	push   %esi
4407ae:	ff 74 24 08          	push   0x8(%esp)
4407b2:	8b f1                	mov    %ecx,%esi
4407b4:	e8 c0 fe ff ff       	call   0x440679
4407b9:	8b c6                	mov    %esi,%eax
4407bb:	5e                   	pop    %esi
4407bc:	c2 04 00             	ret    $0x4
4407bf:	57                   	push   %edi
4407c0:	8b 7c 24 10          	mov    0x10(%esp),%edi
4407c4:	85 ff                	test   %edi,%edi
4407c6:	74 35                	je     0x4407fd
4407c8:	56                   	push   %esi
4407c9:	8b 74 24 10          	mov    0x10(%esp),%esi
4407cd:	85 f6                	test   %esi,%esi
4407cf:	74 2b                	je     0x4407fc
4407d1:	53                   	push   %ebx
4407d2:	8b 5c 24 10          	mov    0x10(%esp),%ebx
4407d6:	8b 43 18             	mov    0x18(%ebx),%eax
4407d9:	f7 d0                	not    %eax
4407db:	a8 01                	test   $0x1,%al
4407dd:	74 0f                	je     0x4407ee
4407df:	56                   	push   %esi
4407e0:	53                   	push   %ebx
4407e1:	e8 05 fc ff ff       	call   0x4403eb
4407e6:	83 c6 04             	add    $0x4,%esi
4407e9:	4f                   	dec    %edi
4407ea:	75 f3                	jne    0x4407df
4407ec:	eb 0d                	jmp    0x4407fb
4407ee:	56                   	push   %esi
4407ef:	53                   	push   %ebx
4407f0:	e8 a9 fe ff ff       	call   0x44069e
4407f5:	83 c6 04             	add    $0x4,%esi
4407f8:	4f                   	dec    %edi
4407f9:	75 f3                	jne    0x4407ee
4407fb:	5b                   	pop    %ebx
4407fc:	5e                   	pop    %esi
4407fd:	5f                   	pop    %edi
4407fe:	c2 0c 00             	ret    $0xc
440801:	56                   	push   %esi
440802:	ff 74 24 08          	push   0x8(%esp)
440806:	8b f1                	mov    %ecx,%esi
440808:	e8 6c fe ff ff       	call   0x440679
44080d:	8b c6                	mov    %esi,%eax
44080f:	5e                   	pop    %esi
440810:	c2 04 00             	ret    $0x4
440813:	e9 a7 ff ff ff       	jmp    0x4407bf
440818:	b8 17 29 48 00       	mov    $0x482917,%eax
44081d:	e8 5a 74 fd ff       	call   0x417c7c
440822:	81 ec 10 01 00 00    	sub    $0x110,%esp
440828:	a1 40 8b 4a 00       	mov    0x4a8b40,%eax
44082d:	89 45 f0             	mov    %eax,-0x10(%ebp)
440830:	56                   	push   %esi
440831:	8d 85 e4 fe ff ff    	lea    -0x11c(%ebp),%eax
440837:	50                   	push   %eax
440838:	ff 75 08             	push   0x8(%ebp)
44083b:	e8 78 01 01 00       	call   0x4509b8
440840:	83 bd e4 fe ff ff 01 	cmpl   $0x1,-0x11c(%ebp)
440847:	8b f0                	mov    %eax,%esi
440849:	8d 46 01             	lea    0x1(%esi),%eax
44084c:	50                   	push   %eax
44084d:	75 5c                	jne    0x4408ab
44084f:	83 a5 6c ff ff ff 00 	andl   $0x0,-0x94(%ebp)
440856:	8d 8d 6c ff ff ff    	lea    -0x94(%ebp),%ecx
44085c:	e8 4b 0b fc ff       	call   0x4013ac
440861:	8b 85 6c ff ff ff    	mov    -0x94(%ebp),%eax
440867:	8b 4d 08             	mov    0x8(%ebp),%ecx
44086a:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
44086e:	56                   	push   %esi
44086f:	c6 04 30 00          	movb   $0x0,(%eax,%esi,1)
440873:	ff b5 6c ff ff ff    	push   -0x94(%ebp)
440879:	e8 ab fe 00 00       	call   0x450729
44087e:	3b c6                	cmp    %esi,%eax
440880:	75 5b                	jne    0x4408dd
440882:	ff b5 6c ff ff ff    	push   -0x94(%ebp)
440888:	8b 4d 0c             	mov    0xc(%ebp),%ecx
44088b:	e8 9f fd ff ff       	call   0x44062f
440890:	8d 85 70 ff ff ff    	lea    -0x90(%ebp),%eax
440896:	39 85 6c ff ff ff    	cmp    %eax,-0x94(%ebp)
44089c:	74 6f                	je     0x44090d
44089e:	8d 8d 6c ff ff ff    	lea    -0x94(%ebp),%ecx
4408a4:	e8 21 0b fc ff       	call   0x4013ca
4408a9:	eb 62                	jmp    0x44090d
4408ab:	8d 8d e8 fe ff ff    	lea    -0x118(%ebp),%ecx
4408b1:	e8 82 fc ff ff       	call   0x440538
4408b6:	8b 85 e8 fe ff ff    	mov    -0x118(%ebp),%eax
4408bc:	8b 4d 08             	mov    0x8(%ebp),%ecx
4408bf:	03 f6                	add    %esi,%esi
4408c1:	66 83 24 06 00       	andw   $0x0,(%esi,%eax,1)
4408c6:	56                   	push   %esi
4408c7:	ff b5 e8 fe ff ff    	push   -0x118(%ebp)
4408cd:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
4408d4:	e8 50 fe 00 00       	call   0x450729
4408d9:	3b c6                	cmp    %esi,%eax
4408db:	74 09                	je     0x4408e6
4408dd:	6a 00                	push   $0x0
4408df:	6a 03                	push   $0x3
4408e1:	e8 75 08 01 00       	call   0x45115b
4408e6:	ff b5 e8 fe ff ff    	push   -0x118(%ebp)
4408ec:	8b 4d 0c             	mov    0xc(%ebp),%ecx
4408ef:	e8 85 fd ff ff       	call   0x440679
4408f4:	8d 85 ec fe ff ff    	lea    -0x114(%ebp),%eax
4408fa:	39 85 e8 fe ff ff    	cmp    %eax,-0x118(%ebp)
440900:	74 0b                	je     0x44090d
440902:	8d 8d e8 fe ff ff    	lea    -0x118(%ebp),%ecx
440908:	e8 96 62 fc ff       	call   0x406ba3
44090d:	8b 4d f4             	mov    -0xc(%ebp),%ecx
440910:	8b 45 08             	mov    0x8(%ebp),%eax
440913:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
44091a:	8b 4d f0             	mov    -0x10(%ebp),%ecx
44091d:	5e                   	pop    %esi
44091e:	e8 bb 72 fd ff       	call   0x417bde
440923:	c9                   	leave
440924:	c2 08 00             	ret    $0x8
440927:	57                   	push   %edi
440928:	8b 7c 24 10          	mov    0x10(%esp),%edi
44092c:	85 ff                	test   %edi,%edi
44092e:	74 35                	je     0x440965
440930:	56                   	push   %esi
440931:	8b 74 24 10          	mov    0x10(%esp),%esi
440935:	85 f6                	test   %esi,%esi
440937:	74 2b                	je     0x440964
440939:	53                   	push   %ebx
44093a:	8b 5c 24 10          	mov    0x10(%esp),%ebx
44093e:	8b 43 18             	mov    0x18(%ebx),%eax
440941:	f7 d0                	not    %eax
440943:	a8 01                	test   $0x1,%al
440945:	74 0f                	je     0x440956
440947:	56                   	push   %esi
440948:	53                   	push   %ebx
440949:	e8 c9 fa ff ff       	call   0x440417
44094e:	83 c6 04             	add    $0x4,%esi
440951:	4f                   	dec    %edi
440952:	75 f3                	jne    0x440947
440954:	eb 0d                	jmp    0x440963
440956:	56                   	push   %esi
440957:	53                   	push   %ebx
440958:	e8 bb fe ff ff       	call   0x440818
44095d:	83 c6 04             	add    $0x4,%esi
440960:	4f                   	dec    %edi
440961:	75 f3                	jne    0x440956
440963:	5b                   	pop    %ebx
440964:	5e                   	pop    %esi