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
4ae83e:	8b 4d 08             	mov    0x8(%ebp),%ecx
4ae841:	8b 7d 0c             	mov    0xc(%ebp),%edi
4ae844:	8b 55 10             	mov    0x10(%ebp),%edx
4ae847:	2b f9                	sub    %ecx,%edi
4ae849:	c1 ff 02             	sar    $0x2,%edi
4ae84c:	89 4d 88             	mov    %ecx,-0x78(%ebp)
4ae84f:	89 95 7c ff ff ff    	mov    %edx,-0x84(%ebp)
4ae855:	85 ff                	test   %edi,%edi
4ae857:	0f 8e 99 02 00 00    	jle    0x4aeaf6
4ae85d:	8b 45 14             	mov    0x14(%ebp),%eax
4ae860:	89 45 84             	mov    %eax,-0x7c(%ebp)
4ae863:	8b df                	mov    %edi,%ebx
4ae865:	d1 eb                	shr    $1,%ebx
4ae867:	8b 34 99             	mov    (%ecx,%ebx,4),%esi
4ae86a:	8d 04 99             	lea    (%ecx,%ebx,4),%eax
4ae86d:	8b 0a                	mov    (%edx),%ecx
4ae86f:	89 4d 94             	mov    %ecx,-0x6c(%ebp)
4ae872:	8d 8d 74 ff ff ff    	lea    -0x8c(%ebp),%ecx
4ae878:	89 45 80             	mov    %eax,-0x80(%ebp)
4ae87b:	8b 06                	mov    (%esi),%eax
4ae87d:	51                   	push   %ecx
4ae87e:	8b ce                	mov    %esi,%ecx
4ae880:	89 5d 90             	mov    %ebx,-0x70(%ebp)
4ae883:	ff 50 48             	call   *0x48(%eax)
4ae886:	8b 4d 84             	mov    -0x7c(%ebp),%ecx
4ae889:	8b 40 04             	mov    0x4(%eax),%eax
4ae88c:	89 45 98             	mov    %eax,-0x68(%ebp)
4ae88f:	e8 0c a9 fa ff       	call   0x4591a0
4ae894:	8b 04 85 98 7b 60 00 	mov    0x607b98(,%eax,4),%eax
4ae89b:	48                   	dec    %eax
4ae89c:	83 f8 08             	cmp    $0x8,%eax
4ae89f:	0f 87 f3 01 00 00    	ja     0x4aea98
4ae8a5:	ff 24 85 1c eb 4a 00 	jmp    *0x4aeb1c(,%eax,4)
4ae8ac:	ff 75 14             	push   0x14(%ebp)
4ae8af:	8b 4d 98             	mov    -0x68(%ebp),%ecx
4ae8b2:	56                   	push   %esi
4ae8b3:	e8 98 5a fb ff       	call   0x464350
4ae8b8:	ff 75 14             	push   0x14(%ebp)
4ae8bb:	8b 4d 98             	mov    -0x68(%ebp),%ecx
4ae8be:	8a d8                	mov    %al,%bl
4ae8c0:	ff 75 94             	push   -0x6c(%ebp)
4ae8c3:	e8 88 5a fb ff       	call   0x464350
4ae8c8:	3a d8                	cmp    %al,%bl
4ae8ca:	8b 5d 90             	mov    -0x70(%ebp),%ebx
4ae8cd:	0f 92 c0             	setb   %al
4ae8d0:	e9 b8 01 00 00       	jmp    0x4aea8d
4ae8d5:	ff 75 14             	push   0x14(%ebp)
4ae8d8:	8b 4d 98             	mov    -0x68(%ebp),%ecx
4ae8db:	56                   	push   %esi
4ae8dc:	e8 4f 60 fb ff       	call   0x464930
4ae8e1:	ff 75 14             	push   0x14(%ebp)
4ae8e4:	8b 4d 98             	mov    -0x68(%ebp),%ecx
4ae8e7:	8b f0                	mov    %eax,%esi
4ae8e9:	ff 75 94             	push   -0x6c(%ebp)
4ae8ec:	e8 3f 60 fb ff       	call   0x464930
4ae8f1:	3b f0                	cmp    %eax,%esi
4ae8f3:	0f 9c c0             	setl   %al
4ae8f6:	e9 92 01 00 00       	jmp    0x4aea8d
4ae8fb:	ff 75 14             	push   0x14(%ebp)
4ae8fe:	8b 4d 98             	mov    -0x68(%ebp),%ecx
4ae901:	56                   	push   %esi
4ae902:	e8 09 61 fb ff       	call   0x464a10
4ae907:	ff 75 14             	push   0x14(%ebp)
4ae90a:	8b 4d 98             	mov    -0x68(%ebp),%ecx
4ae90d:	8b f2                	mov    %edx,%esi
4ae90f:	ff 75 94             	push   -0x6c(%ebp)
4ae912:	89 45 90             	mov    %eax,-0x70(%ebp)
4ae915:	e8 f6 60 fb ff       	call   0x464a10
4ae91a:	3b f2                	cmp    %edx,%esi
4ae91c:	0f 8f 6f 01 00 00    	jg     0x4aea91
4ae922:	0f 8c af 01 00 00    	jl     0x4aead7
4ae928:	39 45 90             	cmp    %eax,-0x70(%ebp)
4ae92b:	0f 83 60 01 00 00    	jae    0x4aea91
4ae931:	e9 a1 01 00 00       	jmp    0x4aead7
4ae936:	ff 75 14             	push   0x14(%ebp)
4ae939:	8b 4d 98             	mov    -0x68(%ebp),%ecx
4ae93c:	56                   	push   %esi
4ae93d:	e8 4e 70 fb ff       	call   0x465990
4ae942:	ff 75 14             	push   0x14(%ebp)
4ae945:	8b 4d 98             	mov    -0x68(%ebp),%ecx
4ae948:	8b f0                	mov    %eax,%esi
4ae94a:	ff 75 94             	push   -0x6c(%ebp)
4ae94d:	e8 3e 70 fb ff       	call   0x465990
4ae952:	3b f0                	cmp    %eax,%esi
4ae954:	0f 92 c0             	setb   %al
4ae957:	e9 31 01 00 00       	jmp    0x4aea8d
4ae95c:	ff 75 14             	push   0x14(%ebp)
4ae95f:	8b 4d 98             	mov    -0x68(%ebp),%ecx
4ae962:	56                   	push   %esi
4ae963:	e8 08 71 fb ff       	call   0x465a70
4ae968:	ff 75 14             	push   0x14(%ebp)
4ae96b:	8b 4d 98             	mov    -0x68(%ebp),%ecx
4ae96e:	8b f2                	mov    %edx,%esi
4ae970:	ff 75 94             	push   -0x6c(%ebp)
4ae973:	89 45 90             	mov    %eax,-0x70(%ebp)
4ae976:	e8 f5 70 fb ff       	call   0x465a70
4ae97b:	3b f2                	cmp    %edx,%esi
4ae97d:	0f 87 0e 01 00 00    	ja     0x4aea91
4ae983:	0f 82 4e 01 00 00    	jb     0x4aead7
4ae989:	39 45 90             	cmp    %eax,-0x70(%ebp)
4ae98c:	0f 83 ff 00 00 00    	jae    0x4aea91
4ae992:	e9 40 01 00 00       	jmp    0x4aead7
4ae997:	ff 75 14             	push   0x14(%ebp)
4ae99a:	8b 4d 98             	mov    -0x68(%ebp),%ecx
4ae99d:	8d 45 d8             	lea    -0x28(%ebp),%eax
4ae9a0:	56                   	push   %esi
4ae9a1:	50                   	push   %eax
4ae9a2:	e8 e9 6d fb ff       	call   0x465790
4ae9a7:	ff 75 14             	push   0x14(%ebp)
4ae9aa:	8b 4d 98             	mov    -0x68(%ebp),%ecx
4ae9ad:	8d 45 c0             	lea    -0x40(%ebp),%eax
4ae9b0:	ff 75 94             	push   -0x6c(%ebp)
4ae9b3:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
4ae9ba:	50                   	push   %eax
4ae9bb:	e8 d0 6d fb ff       	call   0x465790
4ae9c0:	83 7d d4 10          	cmpl   $0x10,-0x2c(%ebp)
4ae9c4:	8d 4d c0             	lea    -0x40(%ebp),%ecx
4ae9c7:	8b 45 c0             	mov    -0x40(%ebp),%eax
4ae9ca:	ff 75 d0             	push   -0x30(%ebp)
4ae9cd:	8b 75 d8             	mov    -0x28(%ebp),%esi
4ae9d0:	0f 43 c8             	cmovae %eax,%ecx
4ae9d3:	83 7d ec 10          	cmpl   $0x10,-0x14(%ebp)
4ae9d7:	89 45 90             	mov    %eax,-0x70(%ebp)
4ae9da:	8d 45 d8             	lea    -0x28(%ebp),%eax
4ae9dd:	51                   	push   %ecx
4ae9de:	ff 75 e8             	push   -0x18(%ebp)
4ae9e1:	0f 43 c6             	cmovae %esi,%eax
4ae9e4:	50                   	push   %eax
4ae9e5:	e8 26 fb fb ff       	call   0x46e510
4ae9ea:	c1 e8 1f             	shr    $0x1f,%eax
4ae9ed:	83 c4 10             	add    $0x10,%esp
4ae9f0:	89 45 94             	mov    %eax,-0x6c(%ebp)
4ae9f3:	8b 45 d4             	mov    -0x2c(%ebp),%eax
4ae9f6:	83 f8 10             	cmp    $0x10,%eax
4ae9f9:	72 31                	jb     0x4aea2c
4ae9fb:	8b 4d 90             	mov    -0x70(%ebp),%ecx
4ae9fe:	8d 50 01             	lea    0x1(%eax),%edx
4aea01:	8b c1                	mov    %ecx,%eax
4aea03:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
4aea09:	72 14                	jb     0x4aea1f
4aea0b:	8b 49 fc             	mov    -0x4(%ecx),%ecx
4aea0e:	83 c2 23             	add    $0x23,%edx
4aea11:	2b c1                	sub    %ecx,%eax
4aea13:	83 c0 fc             	add    $0xfffffffc,%eax
4aea16:	83 f8 1f             	cmp    $0x1f,%eax
4aea19:	0f 87 f5 00 00 00    	ja     0x4aeb14
4aea1f:	52                   	push   %edx
4aea20:	51                   	push   %ecx
4aea21:	e8 2f 28 12 00       	call   0x5d1255
4aea26:	8b 75 d8             	mov    -0x28(%ebp),%esi
4aea29:	83 c4 08             	add    $0x8,%esp
4aea2c:	8b 45 ec             	mov    -0x14(%ebp),%eax
4aea2f:	c7 45 d0 00 00 00 00 	movl   $0x0,-0x30(%ebp)
4aea36:	c7 45 d4 0f 00 00 00 	movl   $0xf,-0x2c(%ebp)
4aea3d:	c6 45 c0 00          	movb   $0x0,-0x40(%ebp)
4aea41:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
4aea48:	83 f8 10             	cmp    $0x10,%eax
4aea4b:	72 2b                	jb     0x4aea78
4aea4d:	8d 48 01             	lea    0x1(%eax),%ecx
4aea50:	8b c6                	mov    %esi,%eax
4aea52:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
4aea58:	72 14                	jb     0x4aea6e
4aea5a:	8b 76 fc             	mov    -0x4(%esi),%esi
4aea5d:	83 c1 23             	add    $0x23,%ecx
4aea60:	2b c6                	sub    %esi,%eax
4aea62:	83 c0 fc             	add    $0xfffffffc,%eax
4aea65:	83 f8 1f             	cmp    $0x1f,%eax
4aea68:	0f 87 a6 00 00 00    	ja     0x4aeb14
4aea6e:	51                   	push   %ecx
4aea6f:	56                   	push   %esi
4aea70:	e8 e0 27 12 00       	call   0x5d1255
4aea75:	83 c4 08             	add    $0x8,%esp
4aea78:	8b 45 94             	mov    -0x6c(%ebp),%eax
4aea7b:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
4aea82:	c7 45 ec 0f 00 00 00 	movl   $0xf,-0x14(%ebp)