4495f5:	56                   	push   %esi
4495f6:	e8 75 ec 01 00       	call   0x468270
4495fb:	8b d0                	mov    %eax,%edx
4495fd:	83 c4 04             	add    $0x4,%esp
449600:	8b ca                	mov    %edx,%ecx
449602:	8d 79 01             	lea    0x1(%ecx),%edi
449605:	8a 01                	mov    (%ecx),%al
449607:	41                   	inc    %ecx
449608:	84 c0                	test   %al,%al
44960a:	75 f9                	jne    0x449605
44960c:	2b cf                	sub    %edi,%ecx
44960e:	8d 41 01             	lea    0x1(%ecx),%eax
449611:	50                   	push   %eax
449612:	52                   	push   %edx
449613:	68 04 01 00 00       	push   $0x104
449618:	56                   	push   %esi
449619:	e8 62 ef 01 00       	call   0x468580
44961e:	83 c4 10             	add    $0x10,%esp
449621:	8b c6                	mov    %esi,%eax
449623:	5f                   	pop    %edi
449624:	5e                   	pop    %esi
449625:	5d                   	pop    %ebp
449626:	c3                   	ret
449627:	33 c0                	xor    %eax,%eax
449629:	5e                   	pop    %esi
44962a:	5d                   	pop    %ebp
44962b:	c3                   	ret
44962c:	cc                   	int3
44962d:	cc                   	int3
44962e:	cc                   	int3
44962f:	cc                   	int3
449630:	55                   	push   %ebp
449631:	8b ec                	mov    %esp,%ebp
449633:	83 ec 38             	sub    $0x38,%esp
449636:	a1 d4 89 72 00       	mov    0x7289d4,%eax
44963b:	33 c5                	xor    %ebp,%eax
44963d:	89 45 fc             	mov    %eax,-0x4(%ebp)
449640:	56                   	push   %esi
449641:	8b 75 08             	mov    0x8(%ebp),%esi
449644:	57                   	push   %edi
449645:	8b 7d 0c             	mov    0xc(%ebp),%edi
449648:	85 f6                	test   %esi,%esi
44964a:	74 66                	je     0x4496b2
44964c:	85 ff                	test   %edi,%edi
44964e:	74 62                	je     0x4496b2
449650:	8b cf                	mov    %edi,%ecx
449652:	8d 51 01             	lea    0x1(%ecx),%edx
449655:	8a 01                	mov    (%ecx),%al
449657:	41                   	inc    %ecx
449658:	84 c0                	test   %al,%al
44965a:	75 f9                	jne    0x449655
44965c:	2b ca                	sub    %edx,%ecx
44965e:	74 52                	je     0x4496b2
449660:	8d 45 cc             	lea    -0x34(%ebp),%eax
449663:	50                   	push   %eax
449664:	57                   	push   %edi
449665:	e8 a6 f4 01 00       	call   0x468b10
44966a:	83 c4 08             	add    $0x8,%esp
44966d:	85 c0                	test   %eax,%eax
44966f:	75 41                	jne    0x4496b2
449671:	8b 45 e0             	mov    -0x20(%ebp),%eax
449674:	33 c9                	xor    %ecx,%ecx
449676:	83 c0 01             	add    $0x1,%eax
449679:	6a 01                	push   $0x1
44967b:	0f 92 c1             	setb   %cl
44967e:	f7 d9                	neg    %ecx
449680:	0b c8                	or     %eax,%ecx
449682:	51                   	push   %ecx
449683:	e8 d6 4f 1a 00       	call   0x5ee65e
449688:	83 c4 08             	add    $0x8,%esp
44968b:	89 06                	mov    %eax,(%esi)
44968d:	85 c0                	test   %eax,%eax
44968f:	74 21                	je     0x4496b2
449691:	68 0c b7 68 00       	push   $0x68b70c
449696:	57                   	push   %edi
449697:	e8 74 f2 01 00       	call   0x468910
44969c:	8b f8                	mov    %eax,%edi
44969e:	83 c4 08             	add    $0x8,%esp
4496a1:	8b 06                	mov    (%esi),%eax
4496a3:	85 ff                	test   %edi,%edi
4496a5:	75 1e                	jne    0x4496c5
4496a7:	50                   	push   %eax
4496a8:	e8 c3 4f 1a 00       	call   0x5ee670
4496ad:	83 c4 04             	add    $0x4,%esp
4496b0:	89 3e                	mov    %edi,(%esi)
4496b2:	5f                   	pop    %edi
4496b3:	83 c8 ff             	or     $0xffffffff,%eax
4496b6:	5e                   	pop    %esi
4496b7:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4496ba:	33 cd                	xor    %ebp,%ecx
4496bc:	e8 19 7e 19 00       	call   0x5e14da
4496c1:	8b e5                	mov    %ebp,%esp
4496c3:	5d                   	pop    %ebp
4496c4:	c3                   	ret
4496c5:	57                   	push   %edi
4496c6:	ff 75 e0             	push   -0x20(%ebp)
4496c9:	6a 01                	push   $0x1
4496cb:	50                   	push   %eax
4496cc:	e8 06 4a 1a 00       	call   0x5ee0d7
4496d1:	57                   	push   %edi
4496d2:	8b f0                	mov    %eax,%esi
4496d4:	e8 94 47 1a 00       	call   0x5ede6d
4496d9:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4496dc:	83 c4 14             	add    $0x14,%esp
4496df:	8b c6                	mov    %esi,%eax
4496e1:	33 cd                	xor    %ebp,%ecx
4496e3:	5f                   	pop    %edi
4496e4:	5e                   	pop    %esi
4496e5:	e8 f0 7d 19 00       	call   0x5e14da
4496ea:	8b e5                	mov    %ebp,%esp
4496ec:	5d                   	pop    %ebp
4496ed:	c3                   	ret
4496ee:	cc                   	int3
4496ef:	cc                   	int3
4496f0:	55                   	push   %ebp
4496f1:	8b ec                	mov    %esp,%ebp
4496f3:	6a ff                	push   $0xffffffff
4496f5:	68 20 d0 64 00       	push   $0x64d020
4496fa:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
449700:	50                   	push   %eax
449701:	83 ec 28             	sub    $0x28,%esp
449704:	53                   	push   %ebx
449705:	56                   	push   %esi
449706:	57                   	push   %edi
449707:	a1 d4 89 72 00       	mov    0x7289d4,%eax
44970c:	33 c5                	xor    %ebp,%eax
44970e:	50                   	push   %eax
44970f:	8d 45 f4             	lea    -0xc(%ebp),%eax
449712:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
449718:	89 65 f0             	mov    %esp,-0x10(%ebp)
44971b:	8b f9                	mov    %ecx,%edi
44971d:	8b 45 08             	mov    0x8(%ebp),%eax
449720:	8b 4d 0c             	mov    0xc(%ebp),%ecx
449723:	8b 37                	mov    (%edi),%esi
449725:	89 45 e4             	mov    %eax,-0x1c(%ebp)
449728:	89 4d dc             	mov    %ecx,-0x24(%ebp)
44972b:	8b c8                	mov    %eax,%ecx
44972d:	2b ce                	sub    %esi,%ecx
44972f:	89 7d cc             	mov    %edi,-0x34(%ebp)
449732:	b8 ab aa aa 2a       	mov    $0x2aaaaaab,%eax
449737:	f7 e9                	imul   %ecx
449739:	8b 4f 04             	mov    0x4(%edi),%ecx
44973c:	c1 fa 02             	sar    $0x2,%edx
44973f:	2b ce                	sub    %esi,%ecx
449741:	8b c2                	mov    %edx,%eax
449743:	c1 e8 1f             	shr    $0x1f,%eax
449746:	03 c2                	add    %edx,%eax
449748:	89 45 ec             	mov    %eax,-0x14(%ebp)
44974b:	b8 ab aa aa 2a       	mov    $0x2aaaaaab,%eax
449750:	f7 e9                	imul   %ecx
449752:	c1 fa 02             	sar    $0x2,%edx
449755:	8b da                	mov    %edx,%ebx
449757:	c1 eb 1f             	shr    $0x1f,%ebx
44975a:	03 da                	add    %edx,%ebx
44975c:	81 fb aa aa aa 0a    	cmp    $0xaaaaaaa,%ebx
449762:	0f 84 6f 01 00 00    	je     0x4498d7
449768:	8b 4f 08             	mov    0x8(%edi),%ecx
44976b:	b8 ab aa aa 2a       	mov    $0x2aaaaaab,%eax
449770:	2b ce                	sub    %esi,%ecx
449772:	43                   	inc    %ebx
449773:	f7 e9                	imul   %ecx
449775:	b8 aa aa aa 0a       	mov    $0xaaaaaaa,%eax
44977a:	89 5d d8             	mov    %ebx,-0x28(%ebp)
44977d:	c1 fa 02             	sar    $0x2,%edx
449780:	8b ca                	mov    %edx,%ecx
449782:	c1 e9 1f             	shr    $0x1f,%ecx
449785:	03 ca                	add    %edx,%ecx
449787:	8b d1                	mov    %ecx,%edx
449789:	d1 ea                	shr    $1,%edx
44978b:	2b c2                	sub    %edx,%eax
44978d:	3b c8                	cmp    %eax,%ecx
44978f:	76 07                	jbe    0x449798
449791:	8b c3                	mov    %ebx,%eax
449793:	89 5d e0             	mov    %ebx,-0x20(%ebp)
449796:	eb 0b                	jmp    0x4497a3
449798:	8d 04 0a             	lea    (%edx,%ecx,1),%eax
44979b:	3b c3                	cmp    %ebx,%eax
44979d:	0f 42 c3             	cmovb  %ebx,%eax
4497a0:	89 45 e0             	mov    %eax,-0x20(%ebp)
4497a3:	3d aa aa aa 0a       	cmp    $0xaaaaaaa,%eax
4497a8:	0f 87 24 01 00 00    	ja     0x4498d2
4497ae:	8d 04 40             	lea    (%eax,%eax,2),%eax
4497b1:	c1 e0 03             	shl    $0x3,%eax
4497b4:	89 45 d4             	mov    %eax,-0x2c(%ebp)
4497b7:	3d 00 10 00 00       	cmp    $0x1000,%eax
4497bc:	72 27                	jb     0x4497e5
4497be:	8d 48 23             	lea    0x23(%eax),%ecx
4497c1:	3b c8                	cmp    %eax,%ecx
4497c3:	0f 86 09 01 00 00    	jbe    0x4498d2
4497c9:	51                   	push   %ecx
4497ca:	e8 73 78 19 00       	call   0x5e1042
4497cf:	83 c4 04             	add    $0x4,%esp
4497d2:	85 c0                	test   %eax,%eax
4497d4:	0f 84 02 01 00 00    	je     0x4498dc
4497da:	8d 70 23             	lea    0x23(%eax),%esi
4497dd:	83 e6 e0             	and    $0xffffffe0,%esi
4497e0:	89 46 fc             	mov    %eax,-0x4(%esi)
4497e3:	eb 16                	jmp    0x4497fb
4497e5:	85 c0                	test   %eax,%eax
4497e7:	74 10                	je     0x4497f9
4497e9:	50                   	push   %eax
4497ea:	e8 53 78 19 00       	call   0x5e1042
4497ef:	83 c4 04             	add    $0x4,%esp
4497f2:	89 45 e8             	mov    %eax,-0x18(%ebp)
4497f5:	8b f0                	mov    %eax,%esi
4497f7:	eb 05                	jmp    0x4497fe
4497f9:	33 f6                	xor    %esi,%esi
4497fb:	89 75 e8             	mov    %esi,-0x18(%ebp)
4497fe:	8b 45 ec             	mov    -0x14(%ebp),%eax
449801:	ff 75 dc             	push   -0x24(%ebp)
449804:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
44980b:	8d 04 40             	lea    (%eax,%eax,2),%eax
44980e:	8d 0c c6             	lea    (%esi,%eax,8),%ecx
449811:	8d 41 18             	lea    0x18(%ecx),%eax
449814:	89 4d d0             	mov    %ecx,-0x30(%ebp)
449817:	89 45 ec             	mov    %eax,-0x14(%ebp)
44981a:	e8 61 ee fe ff       	call   0x438680
44981f:	8b 47 04             	mov    0x4(%edi),%eax
449822:	8b 55 e4             	mov    -0x1c(%ebp),%edx
449825:	8b 0f                	mov    (%edi),%ecx
449827:	3b d0                	cmp    %eax,%edx
449829:	75 04                	jne    0x44982f
44982b:	8b d6                	mov    %esi,%edx
44982d:	eb 15                	jmp    0x449844
44982f:	57                   	push   %edi
449830:	56                   	push   %esi
449831:	52                   	push   %edx
449832:	51                   	push   %ecx
449833:	e8 a8 03 00 00       	call   0x449be0
449838:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
44983b:	83 c4 10             	add    $0x10,%esp
44983e:	8b 47 04             	mov    0x4(%edi),%eax
449841:	8b 55 ec             	mov    -0x14(%ebp),%edx
449844:	57                   	push   %edi
449845:	52                   	push   %edx
449846:	50                   	push   %eax
449847:	51                   	push   %ecx
449848:	e8 93 03 00 00       	call   0x449be0
44984d:	8b 0f                	mov    (%edi),%ecx
44984f:	83 c4 10             	add    $0x10,%esp
449852:	85 c9                	test   %ecx,%ecx
449854:	74 52                	je     0x4498a8
449856:	57                   	push   %edi
449857:	ff 77 04             	push   0x4(%edi)
44985a:	51                   	push   %ecx
44985b:	e8 b0 f2 ff ff       	call   0x448b10
449860:	8b 4f 08             	mov    0x8(%edi),%ecx
449863:	b8 ab aa aa 2a       	mov    $0x2aaaaaab,%eax
449868:	8b 1f                	mov    (%edi),%ebx
44986a:	83 c4 0c             	add    $0xc,%esp
44986d:	2b cb                	sub    %ebx,%ecx
44986f:	f7 e9                	imul   %ecx
449871:	c1 fa 02             	sar    $0x2,%edx
449874:	8b c2                	mov    %edx,%eax
449876:	c1 e8 1f             	shr    $0x1f,%eax
449879:	03 c2                	add    %edx,%eax
44987b:	8d 0c 40             	lea    (%eax,%eax,2),%ecx
44987e:	c1 e1 03             	shl    $0x3,%ecx
449881:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
449887:	72 12                	jb     0x44989b
449889:	8b 53 fc             	mov    -0x4(%ebx),%edx
44988c:	83 c1 23             	add    $0x23,%ecx
44988f:	2b da                	sub    %edx,%ebx
449891:	8d 43 fc             	lea    -0x4(%ebx),%eax
449894:	83 f8 1f             	cmp    $0x1f,%eax
449897:	77 43                	ja     0x4498dc
449899:	8b da                	mov    %edx,%ebx
44989b:	51                   	push   %ecx
44989c:	53                   	push   %ebx
44989d:	e8 d0 77 19 00       	call   0x5e1072
4498a2:	8b 5d d8             	mov    -0x28(%ebp),%ebx
4498a5:	83 c4 08             	add    $0x8,%esp
4498a8:	8b 45 d0             	mov    -0x30(%ebp),%eax
4498ab:	8d 0c 5b             	lea    (%ebx,%ebx,2),%ecx
4498ae:	8d 0c ce             	lea    (%esi,%ecx,8),%ecx
4498b1:	89 37                	mov    %esi,(%edi)
4498b3:	89 4f 04             	mov    %ecx,0x4(%edi)
4498b6:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
4498b9:	03 ce                	add    %esi,%ecx
4498bb:	89 4f 08             	mov    %ecx,0x8(%edi)
4498be:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4498c1:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4498c8:	59                   	pop    %ecx
4498c9:	5f                   	pop    %edi
4498ca:	5e                   	pop    %esi
4498cb:	5b                   	pop    %ebx
4498cc:	8b e5                	mov    %ebp,%esp
4498ce:	5d                   	pop    %ebp
4498cf:	c2 08 00             	ret    $0x8
4498d2:	e8 09 b6 ff ff       	call   0x444ee0
4498d7:	e8 64 b7 ff ff       	call   0x445040
4498dc:	e8 4e 36 1a 00       	call   0x5ecf2f
4498e1:	8b 45 ec             	mov    -0x14(%ebp),%eax
4498e4:	8b 4d cc             	mov    -0x34(%ebp),%ecx
4498e7:	50                   	push   %eax
4498e8:	50                   	push   %eax
4498e9:	e8 62 07 00 00       	call   0x44a050
4498ee:	ff 75 e0             	push   -0x20(%ebp)
4498f1:	8b 4d cc             	mov    -0x34(%ebp),%ecx
4498f4:	ff 75 e8             	push   -0x18(%ebp)
4498f7:	e8 94 0a 00 00       	call   0x44a390
4498fc:	6a 00                	push   $0x0
4498fe:	6a 00                	push   $0x0
449900:	e8 2d 91 19 00       	call   0x5e2a32
449905:	cc                   	int3
449906:	cc                   	int3
449907:	cc                   	int3
449908:	cc                   	int3
449909:	cc                   	int3
44990a:	cc                   	int3
44990b:	cc                   	int3
44990c:	cc                   	int3
44990d:	cc                   	int3
44990e:	cc                   	int3
44990f:	cc                   	int3
449910:	55                   	push   %ebp
449911:	8b ec                	mov    %esp,%ebp
449913:	51                   	push   %ecx
449914:	8b 51 18             	mov    0x18(%ecx),%edx
449917:	23 55 10             	and    0x10(%ebp),%edx
44991a:	8b 41 0c             	mov    0xc(%ecx),%eax
44991d:	8b 49 04             	mov    0x4(%ecx),%ecx
449920:	8d 04 d0             	lea    (%eax,%edx,8),%eax
449923:	57                   	push   %edi
449924:	8b 78 04             	mov    0x4(%eax),%edi
449927:	3b f9                	cmp    %ecx,%edi
449929:	75 13                	jne    0x44993e
44992b:	8b 45 08             	mov    0x8(%ebp),%eax
44992e:	5f                   	pop    %edi
44992f:	89 08                	mov    %ecx,(%eax)
449931:	c7 40 04 00 00 00 00 	movl   $0x0,0x4(%eax)
449938:	8b e5                	mov    %ebp,%esp
44993a:	5d                   	pop    %ebp
44993b:	c2 0c 00             	ret    $0xc
44993e:	8b 55 0c             	mov    0xc(%ebp),%edx
449941:	8b 00                	mov    (%eax),%eax
449943:	53                   	push   %ebx
449944:	89 45 fc             	mov    %eax,-0x4(%ebp)
449947:	8b 5a 10             	mov    0x10(%edx),%ebx
44994a:	56                   	push   %esi
44994b:	0f 1f 44 00 00       	nopl   0x0(%eax,%eax,1)
449950:	83 7f 1c 08          	cmpl   $0x8,0x1c(%edi)
449954:	8d 47 08             	lea    0x8(%edi),%eax
449957:	72 03                	jb     0x44995c
449959:	8b 47 08             	mov    0x8(%edi),%eax
44995c:	83 7a 14 08          	cmpl   $0x8,0x14(%edx)
449960:	8b f2                	mov    %edx,%esi
449962:	72 02                	jb     0x449966
449964:	8b 32                	mov    (%edx),%esi
449966:	3b 5f 18             	cmp    0x18(%edi),%ebx