4ae4eb:	89 5d f4             	mov    %ebx,-0xc(%ebp)
4ae4ee:	66 90                	xchg   %ax,%ax
4ae4f0:	8b 44 be fc          	mov    -0x4(%esi,%edi,4),%eax
4ae4f4:	4f                   	dec    %edi
4ae4f5:	89 7d f8             	mov    %edi,-0x8(%ebp)
4ae4f8:	8b d7                	mov    %edi,%edx
4ae4fa:	89 45 fc             	mov    %eax,-0x4(%ebp)
4ae4fd:	8b cf                	mov    %edi,%ecx
4ae4ff:	89 55 08             	mov    %edx,0x8(%ebp)
4ae502:	3b fb                	cmp    %ebx,%edi
4ae504:	7d 71                	jge    0x4ae577
4ae506:	66 66 0f 1f 84 00 00 	data16 nopw 0x0(%eax,%eax,1)
4ae50d:	00 00 00
4ae510:	8d 04 09             	lea    (%ecx,%ecx,1),%eax
4ae513:	8b 4c 86 08          	mov    0x8(%esi,%eax,4),%ecx
4ae517:	8b 5c 86 04          	mov    0x4(%esi,%eax,4),%ebx
4ae51b:	89 45 ec             	mov    %eax,-0x14(%ebp)
4ae51e:	80 79 27 00          	cmpb   $0x0,0x27(%ecx)
4ae522:	8a 43 27             	mov    0x27(%ebx),%al
4ae525:	74 15                	je     0x4ae53c
4ae527:	84 c0                	test   %al,%al
4ae529:	74 0a                	je     0x4ae535
4ae52b:	8b 41 28             	mov    0x28(%ecx),%eax
4ae52e:	33 c9                	xor    %ecx,%ecx
4ae530:	3b 43 28             	cmp    0x28(%ebx),%eax
4ae533:	eb 24                	jmp    0x4ae559
4ae535:	b9 01 00 00 00       	mov    $0x1,%ecx
4ae53a:	eb 20                	jmp    0x4ae55c
4ae53c:	84 c0                	test   %al,%al
4ae53e:	74 04                	je     0x4ae544
4ae540:	33 c9                	xor    %ecx,%ecx
4ae542:	eb 18                	jmp    0x4ae55c
4ae544:	e8 e7 ad fb ff       	call   0x469330
4ae549:	8b cb                	mov    %ebx,%ecx
4ae54b:	8b f8                	mov    %eax,%edi
4ae54d:	e8 de ad fb ff       	call   0x469330
4ae552:	8b 55 08             	mov    0x8(%ebp),%edx
4ae555:	33 c9                	xor    %ecx,%ecx
4ae557:	3b f8                	cmp    %eax,%edi
4ae559:	0f 9d c1             	setge  %cl
4ae55c:	8b 45 ec             	mov    -0x14(%ebp),%eax
4ae55f:	8b 5d f4             	mov    -0xc(%ebp),%ebx
4ae562:	40                   	inc    %eax
4ae563:	03 c8                	add    %eax,%ecx
4ae565:	8b 04 8e             	mov    (%esi,%ecx,4),%eax
4ae568:	89 04 96             	mov    %eax,(%esi,%edx,4)
4ae56b:	8b d1                	mov    %ecx,%edx
4ae56d:	89 55 08             	mov    %edx,0x8(%ebp)
4ae570:	3b cb                	cmp    %ebx,%ecx
4ae572:	7c 9c                	jl     0x4ae510
4ae574:	8b 7d f8             	mov    -0x8(%ebp),%edi
4ae577:	3b d3                	cmp    %ebx,%edx
4ae579:	75 14                	jne    0x4ae58f
4ae57b:	8b 45 f0             	mov    -0x10(%ebp),%eax
4ae57e:	a8 01                	test   $0x1,%al
4ae580:	75 0d                	jne    0x4ae58f
4ae582:	8b 44 86 fc          	mov    -0x4(%esi,%eax,4),%eax
4ae586:	89 04 96             	mov    %eax,(%esi,%edx,4)
4ae589:	8b 55 e8             	mov    -0x18(%ebp),%edx
4ae58c:	89 55 08             	mov    %edx,0x8(%ebp)
4ae58f:	3b fa                	cmp    %edx,%edi
4ae591:	7d 5a                	jge    0x4ae5ed
4ae593:	8b 45 fc             	mov    -0x4(%ebp),%eax
4ae596:	8d 5a ff             	lea    -0x1(%edx),%ebx
4ae599:	d1 fb                	sar    $1,%ebx
4ae59b:	8a 40 27             	mov    0x27(%eax),%al
4ae59e:	8b 0c 9e             	mov    (%esi,%ebx,4),%ecx
4ae5a1:	89 4d ec             	mov    %ecx,-0x14(%ebp)
4ae5a4:	80 79 27 00          	cmpb   $0x0,0x27(%ecx)
4ae5a8:	74 0f                	je     0x4ae5b9
4ae5aa:	84 c0                	test   %al,%al
4ae5ac:	74 3c                	je     0x4ae5ea
4ae5ae:	8b 55 fc             	mov    -0x4(%ebp),%edx
4ae5b1:	8b 41 28             	mov    0x28(%ecx),%eax
4ae5b4:	3b 42 28             	cmp    0x28(%edx),%eax
4ae5b7:	eb 1b                	jmp    0x4ae5d4
4ae5b9:	84 c0                	test   %al,%al
4ae5bb:	75 21                	jne    0x4ae5de
4ae5bd:	e8 6e ad fb ff       	call   0x469330
4ae5c2:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4ae5c5:	8b f8                	mov    %eax,%edi
4ae5c7:	e8 64 ad fb ff       	call   0x469330
4ae5cc:	8b 4d ec             	mov    -0x14(%ebp),%ecx
4ae5cf:	3b f8                	cmp    %eax,%edi
4ae5d1:	8b 7d f8             	mov    -0x8(%ebp),%edi
4ae5d4:	8b 55 08             	mov    0x8(%ebp),%edx
4ae5d7:	0f 9c c0             	setl   %al
4ae5da:	84 c0                	test   %al,%al
4ae5dc:	74 0c                	je     0x4ae5ea
4ae5de:	89 0c 96             	mov    %ecx,(%esi,%edx,4)
4ae5e1:	8b d3                	mov    %ebx,%edx
4ae5e3:	89 55 08             	mov    %edx,0x8(%ebp)
4ae5e6:	3b fb                	cmp    %ebx,%edi
4ae5e8:	7c a9                	jl     0x4ae593
4ae5ea:	8b 5d f4             	mov    -0xc(%ebp),%ebx
4ae5ed:	8b 45 fc             	mov    -0x4(%ebp),%eax
4ae5f0:	89 04 96             	mov    %eax,(%esi,%edx,4)
4ae5f3:	85 ff                	test   %edi,%edi
4ae5f5:	0f 8f f5 fe ff ff    	jg     0x4ae4f0
4ae5fb:	8b 5d 0c             	mov    0xc(%ebp),%ebx
4ae5fe:	8b 4d 14             	mov    0x14(%ebp),%ecx
4ae601:	8b 45 f0             	mov    -0x10(%ebp),%eax
4ae604:	83 f8 02             	cmp    $0x2,%eax
4ae607:	0f 8c e3 00 00 00    	jl     0x4ae6f0
4ae60d:	0f 1f 00             	nopl   (%eax)
4ae610:	8b 44 33 fc          	mov    -0x4(%ebx,%esi,1),%eax
4ae614:	89 45 0c             	mov    %eax,0xc(%ebp)
4ae617:	8b 06                	mov    (%esi),%eax
4ae619:	89 44 33 fc          	mov    %eax,-0x4(%ebx,%esi,1)
4ae61d:	8d 45 0c             	lea    0xc(%ebp),%eax
4ae620:	51                   	push   %ecx
4ae621:	50                   	push   %eax
4ae622:	8d 43 fc             	lea    -0x4(%ebx),%eax
4ae625:	c1 f8 02             	sar    $0x2,%eax
4ae628:	50                   	push   %eax
4ae629:	6a 00                	push   $0x0
4ae62b:	56                   	push   %esi
4ae62c:	e8 9f fc ff ff       	call   0x4ae2d0
4ae631:	8b 4d 14             	mov    0x14(%ebp),%ecx
4ae634:	83 eb 04             	sub    $0x4,%ebx
4ae637:	8b c3                	mov    %ebx,%eax
4ae639:	83 c4 14             	add    $0x14,%esp
4ae63c:	83 e0 fc             	and    $0xfffffffc,%eax
4ae63f:	83 f8 08             	cmp    $0x8,%eax
4ae642:	7d cc                	jge    0x4ae610
4ae644:	5f                   	pop    %edi
4ae645:	5e                   	pop    %esi
4ae646:	5b                   	pop    %ebx
4ae647:	8b e5                	mov    %ebp,%esp
4ae649:	5d                   	pop    %ebp
4ae64a:	c3                   	ret
4ae64b:	84 c0                	test   %al,%al
4ae64d:	75 77                	jne    0x4ae6c6
4ae64f:	8b ca                	mov    %edx,%ecx
4ae651:	e8 da ac fb ff       	call   0x469330
4ae656:	8b 4d 08             	mov    0x8(%ebp),%ecx
4ae659:	8b f8                	mov    %eax,%edi
4ae65b:	e8 d0 ac fb ff       	call   0x469330
4ae660:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4ae663:	3b c7                	cmp    %edi,%eax
4ae665:	8b 7d 08             	mov    0x8(%ebp),%edi
4ae668:	0f 9c c0             	setl   %al
4ae66b:	84 c0                	test   %al,%al
4ae66d:	75 57                	jne    0x4ae6c6
4ae66f:	90                   	nop
4ae670:	8b 59 fc             	mov    -0x4(%ecx),%ebx
4ae673:	83 e9 04             	sub    $0x4,%ecx
4ae676:	80 7f 27 00          	cmpb   $0x0,0x27(%edi)
4ae67a:	89 4d e8             	mov    %ecx,-0x18(%ebp)
4ae67d:	8a 43 27             	mov    0x27(%ebx),%al
4ae680:	74 0c                	je     0x4ae68e
4ae682:	84 c0                	test   %al,%al
4ae684:	74 36                	je     0x4ae6bc
4ae686:	8b 47 28             	mov    0x28(%edi),%eax
4ae689:	3b 43 28             	cmp    0x28(%ebx),%eax
4ae68c:	eb 1d                	jmp    0x4ae6ab
4ae68e:	84 c0                	test   %al,%al
4ae690:	75 20                	jne    0x4ae6b2
4ae692:	8b cb                	mov    %ebx,%ecx
4ae694:	e8 97 ac fb ff       	call   0x469330
4ae699:	8b 4d 08             	mov    0x8(%ebp),%ecx
4ae69c:	8b f8                	mov    %eax,%edi
4ae69e:	e8 8d ac fb ff       	call   0x469330
4ae6a3:	8b 4d e8             	mov    -0x18(%ebp),%ecx
4ae6a6:	3b c7                	cmp    %edi,%eax
4ae6a8:	8b 7d 08             	mov    0x8(%ebp),%edi
4ae6ab:	0f 9c c0             	setl   %al
4ae6ae:	84 c0                	test   %al,%al
4ae6b0:	74 0a                	je     0x4ae6bc
4ae6b2:	8b 45 fc             	mov    -0x4(%ebp),%eax
4ae6b5:	89 4d fc             	mov    %ecx,-0x4(%ebp)
4ae6b8:	89 18                	mov    %ebx,(%eax)
4ae6ba:	eb b4                	jmp    0x4ae670
4ae6bc:	8b 45 fc             	mov    -0x4(%ebp),%eax
4ae6bf:	8b 5d f0             	mov    -0x10(%ebp),%ebx
4ae6c2:	89 38                	mov    %edi,(%eax)
4ae6c4:	eb 12                	jmp    0x4ae6d8
4ae6c6:	53                   	push   %ebx
4ae6c7:	2b cb                	sub    %ebx,%ecx
4ae6c9:	83 c1 04             	add    $0x4,%ecx
4ae6cc:	56                   	push   %esi
4ae6cd:	51                   	push   %ecx
4ae6ce:	e8 fd 46 12 00       	call   0x5d2dd0
4ae6d3:	83 c4 0c             	add    $0xc,%esp
4ae6d6:	89 3e                	mov    %edi,(%esi)
4ae6d8:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4ae6db:	83 c3 04             	add    $0x4,%ebx
4ae6de:	83 c1 04             	add    $0x4,%ecx
4ae6e1:	89 5d f0             	mov    %ebx,-0x10(%ebp)
4ae6e4:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4ae6e7:	3b 4d 0c             	cmp    0xc(%ebp),%ecx
4ae6ea:	0f 85 b0 fd ff ff    	jne    0x4ae4a0
4ae6f0:	5f                   	pop    %edi
4ae6f1:	5e                   	pop    %esi
4ae6f2:	5b                   	pop    %ebx
4ae6f3:	8b e5                	mov    %ebp,%esp
4ae6f5:	5d                   	pop    %ebp
4ae6f6:	c3                   	ret
4ae6f7:	cc                   	int3
4ae6f8:	cc                   	int3
4ae6f9:	cc                   	int3
4ae6fa:	cc                   	int3
4ae6fb:	cc                   	int3
4ae6fc:	cc                   	int3
4ae6fd:	cc                   	int3
4ae6fe:	cc                   	int3
4ae6ff:	cc                   	int3
4ae700:	55                   	push   %ebp
4ae701:	8b ec                	mov    %esp,%ebp
4ae703:	56                   	push   %esi
4ae704:	8b 75 10             	mov    0x10(%ebp),%esi
4ae707:	83 fe 20             	cmp    $0x20,%esi
4ae70a:	7f 14                	jg     0x4ae720
4ae70c:	ff 75 1c             	push   0x1c(%ebp)
4ae70f:	ff 75 0c             	push   0xc(%ebp)
4ae712:	ff 75 08             	push   0x8(%ebp)
4ae715:	e8 76 f3 ff ff       	call   0x4ada90
4ae71a:	83 c4 0c             	add    $0xc,%esp
4ae71d:	5e                   	pop    %esi
4ae71e:	5d                   	pop    %ebp
4ae71f:	c3                   	ret
4ae720:	8b 4d 08             	mov    0x8(%ebp),%ecx
4ae723:	8b 55 18             	mov    0x18(%ebp),%edx
4ae726:	53                   	push   %ebx
4ae727:	8b de                	mov    %esi,%ebx
4ae729:	d1 eb                	shr    $1,%ebx
4ae72b:	2b f3                	sub    %ebx,%esi
4ae72d:	57                   	push   %edi
4ae72e:	8b 7d 14             	mov    0x14(%ebp),%edi
4ae731:	ff 75 1c             	push   0x1c(%ebp)
4ae734:	8d 04 b1             	lea    (%ecx,%esi,4),%eax
4ae737:	3b f2                	cmp    %edx,%esi
4ae739:	7f 22                	jg     0x4ae75d
4ae73b:	57                   	push   %edi
4ae73c:	56                   	push   %esi
4ae73d:	50                   	push   %eax
4ae73e:	51                   	push   %ecx
4ae73f:	e8 bc ea ff ff       	call   0x4ad200
4ae744:	ff 75 1c             	push   0x1c(%ebp)
4ae747:	8b 4d 08             	mov    0x8(%ebp),%ecx
4ae74a:	57                   	push   %edi
4ae74b:	53                   	push   %ebx
4ae74c:	ff 75 0c             	push   0xc(%ebp)
4ae74f:	8d 04 b1             	lea    (%ecx,%esi,4),%eax
4ae752:	50                   	push   %eax
4ae753:	e8 a8 ea ff ff       	call   0x4ad200
4ae758:	83 c4 28             	add    $0x28,%esp
4ae75b:	eb 24                	jmp    0x4ae781
4ae75d:	52                   	push   %edx
4ae75e:	57                   	push   %edi
4ae75f:	56                   	push   %esi
4ae760:	50                   	push   %eax
4ae761:	51                   	push   %ecx
4ae762:	e8 99 ff ff ff       	call   0x4ae700
4ae767:	ff 75 1c             	push   0x1c(%ebp)
4ae76a:	8b 4d 08             	mov    0x8(%ebp),%ecx
4ae76d:	ff 75 18             	push   0x18(%ebp)
4ae770:	57                   	push   %edi
4ae771:	53                   	push   %ebx
4ae772:	ff 75 0c             	push   0xc(%ebp)
4ae775:	8d 04 b1             	lea    (%ecx,%esi,4),%eax
4ae778:	50                   	push   %eax
4ae779:	e8 82 ff ff ff       	call   0x4ae700
4ae77e:	83 c4 30             	add    $0x30,%esp
4ae781:	ff 75 1c             	push   0x1c(%ebp)
4ae784:	8b 4d 08             	mov    0x8(%ebp),%ecx
4ae787:	ff 75 18             	push   0x18(%ebp)
4ae78a:	57                   	push   %edi
4ae78b:	53                   	push   %ebx
4ae78c:	56                   	push   %esi
4ae78d:	ff 75 0c             	push   0xc(%ebp)
4ae790:	8d 04 b1             	lea    (%ecx,%esi,4),%eax
4ae793:	50                   	push   %eax
4ae794:	51                   	push   %ecx
4ae795:	e8 f6 e6 ff ff       	call   0x4ace90
4ae79a:	83 c4 20             	add    $0x20,%esp
4ae79d:	5f                   	pop    %edi
4ae79e:	5b                   	pop    %ebx
4ae79f:	5e                   	pop    %esi
4ae7a0:	5d                   	pop    %ebp
4ae7a1:	c3                   	ret
4ae7a2:	cc                   	int3
4ae7a3:	cc                   	int3
4ae7a4:	cc                   	int3
4ae7a5:	cc                   	int3
4ae7a6:	cc                   	int3
4ae7a7:	cc                   	int3
4ae7a8:	cc                   	int3
4ae7a9:	cc                   	int3
4ae7aa:	cc                   	int3
4ae7ab:	cc                   	int3
4ae7ac:	cc                   	int3
4ae7ad:	cc                   	int3
4ae7ae:	cc                   	int3
4ae7af:	cc                   	int3
4ae7b0:	55                   	push   %ebp
4ae7b1:	8b ec                	mov    %esp,%ebp
4ae7b3:	56                   	push   %esi
4ae7b4:	8b 75 0c             	mov    0xc(%ebp),%esi
4ae7b7:	8b 46 04             	mov    0x4(%esi),%eax
4ae7ba:	85 c0                	test   %eax,%eax
4ae7bc:	74 41                	je     0x4ae7ff
4ae7be:	8b 4e 0c             	mov    0xc(%esi),%ecx
4ae7c1:	2b c8                	sub    %eax,%ecx
4ae7c3:	83 e1 f8             	and    $0xfffffff8,%ecx
4ae7c6:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
4ae7cc:	72 12                	jb     0x4ae7e0
4ae7ce:	8b 50 fc             	mov    -0x4(%eax),%edx
4ae7d1:	83 c1 23             	add    $0x23,%ecx
4ae7d4:	2b c2                	sub    %edx,%eax
4ae7d6:	83 c0 fc             	add    $0xfffffffc,%eax
4ae7d9:	83 f8 1f             	cmp    $0x1f,%eax
4ae7dc:	77 24                	ja     0x4ae802
4ae7de:	8b c2                	mov    %edx,%eax
4ae7e0:	51                   	push   %ecx
4ae7e1:	50                   	push   %eax
4ae7e2:	e8 6e 2a 12 00       	call   0x5d1255
4ae7e7:	c7 46 04 00 00 00 00 	movl   $0x0,0x4(%esi)
4ae7ee:	83 c4 08             	add    $0x8,%esp
4ae7f1:	c7 46 08 00 00 00 00 	movl   $0x0,0x8(%esi)
4ae7f8:	c7 46 0c 00 00 00 00 	movl   $0x0,0xc(%esi)
4ae7ff:	5e                   	pop    %esi
4ae800:	5d                   	pop    %ebp
4ae801:	c3                   	ret
4ae802:	e8 e9 79 12 00       	call   0x5d61f0
4ae807:	cc                   	int3
4ae808:	cc                   	int3
4ae809:	cc                   	int3
4ae80a:	cc                   	int3
4ae80b:	cc                   	int3
4ae80c:	cc                   	int3
4ae80d:	cc                   	int3
4ae80e:	cc                   	int3
4ae80f:	cc                   	int3
4ae810:	55                   	push   %ebp
4ae811:	8b ec                	mov    %esp,%ebp
4ae813:	6a ff                	push   $0xffffffff
4ae815:	68 25 98 5f 00       	push   $0x5f9825
4ae81a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
4ae820:	50                   	push   %eax
4ae821:	81 ec 80 00 00 00    	sub    $0x80,%esp
4ae827:	a1 c0 14 69 00       	mov    0x6914c0,%eax
4ae82c:	33 c5                	xor    %ebp,%eax
4ae82e:	89 45 f0             	mov    %eax,-0x10(%ebp)
4ae831:	53                   	push   %ebx
4ae832:	56                   	push   %esi
4ae833:	57                   	push   %edi
4ae834:	50                   	push   %eax
4ae835:	8d 45 f4             	lea    -0xc(%ebp),%eax
4ae838:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0