5ae591:	c3                   	ret
5ae592:	8d 47 01             	lea    0x1(%edi),%eax
5ae595:	3b d8                	cmp    %eax,%ebx
5ae597:	75 2a                	jne    0x5ae5c3
5ae599:	8b 82 d8 08 00 00    	mov    0x8d8(%edx),%eax
5ae59f:	89 41 34             	mov    %eax,0x34(%ecx)
5ae5a2:	8b 82 dc 08 00 00    	mov    0x8dc(%edx),%eax
5ae5a8:	89 41 38             	mov    %eax,0x38(%ecx)
5ae5ab:	8b 8a e8 08 00 00    	mov    0x8e8(%edx),%ecx
5ae5b1:	8b 41 3c             	mov    0x3c(%ecx),%eax
5ae5b4:	89 82 d8 08 00 00    	mov    %eax,0x8d8(%edx)
5ae5ba:	8b 41 40             	mov    0x40(%ecx),%eax
5ae5bd:	89 82 dc 08 00 00    	mov    %eax,0x8dc(%edx)
5ae5c3:	5f                   	pop    %edi
5ae5c4:	66 89 71 02          	mov    %si,0x2(%ecx)
5ae5c8:	5e                   	pop    %esi
5ae5c9:	5b                   	pop    %ebx
5ae5ca:	c3                   	ret
5ae5cb:	cc                   	int3
5ae5cc:	cc                   	int3
5ae5cd:	cc                   	int3
5ae5ce:	cc                   	int3
5ae5cf:	cc                   	int3
5ae5d0:	b8 48 00 00 00       	mov    $0x48,%eax
5ae5d5:	e8 d6 31 02 00       	call   0x5d17b0
5ae5da:	a1 c0 14 69 00       	mov    0x6914c0,%eax
5ae5df:	33 c4                	xor    %esp,%eax
5ae5e1:	89 44 24 44          	mov    %eax,0x44(%esp)
5ae5e5:	8b 44 24 54          	mov    0x54(%esp),%eax
5ae5e9:	56                   	push   %esi
5ae5ea:	8b 74 24 50          	mov    0x50(%esp),%esi
5ae5ee:	89 44 24 0c          	mov    %eax,0xc(%esp)
5ae5f2:	8b 44 24 64          	mov    0x64(%esp),%eax
5ae5f6:	89 44 24 10          	mov    %eax,0x10(%esp)
5ae5fa:	83 be 88 06 00 00 00 	cmpl   $0x0,0x688(%esi)
5ae601:	74 2e                	je     0x5ae631
5ae603:	68 30 03 00 00       	push   $0x330
5ae608:	68 b8 84 66 00       	push   $0x6684b8
5ae60d:	6a 44                	push   $0x44
5ae60f:	68 f5 00 00 00       	push   $0xf5
5ae614:	6a 50                	push   $0x50
5ae616:	56                   	push   %esi
5ae617:	e8 f4 0a fe ff       	call   0x58f110
5ae61c:	83 c4 18             	add    $0x18,%esp
5ae61f:	33 c0                	xor    %eax,%eax
5ae621:	5e                   	pop    %esi
5ae622:	8b 4c 24 44          	mov    0x44(%esp),%ecx
5ae626:	33 cc                	xor    %esp,%ecx
5ae628:	e8 f9 33 02 00       	call   0x5d1a26
5ae62d:	83 c4 48             	add    $0x48,%esp
5ae630:	c3                   	ret
5ae631:	8b 46 7c             	mov    0x7c(%esi),%eax
5ae634:	83 b8 e8 00 00 00 00 	cmpl   $0x0,0xe8(%eax)
5ae63b:	74 14                	je     0x5ae651
5ae63d:	8b 46 04             	mov    0x4(%esi),%eax
5ae640:	56                   	push   %esi
5ae641:	8b 40 40             	mov    0x40(%eax),%eax
5ae644:	ff d0                	call   *%eax
5ae646:	83 c4 04             	add    $0x4,%esp
5ae649:	85 c0                	test   %eax,%eax
5ae64b:	0f 8e fd 03 00 00    	jle    0x5aea4e
5ae651:	8b 44 24 60          	mov    0x60(%esp),%eax
5ae655:	53                   	push   %ebx
5ae656:	8b 5c 24 60          	mov    0x60(%esp),%ebx
5ae65a:	85 db                	test   %ebx,%ebx
5ae65c:	75 04                	jne    0x5ae662
5ae65e:	85 c0                	test   %eax,%eax
5ae660:	74 2c                	je     0x5ae68e
5ae662:	56                   	push   %esi
5ae663:	e8 c8 bb fd ff       	call   0x58a230
5ae668:	83 c4 04             	add    $0x4,%esp
5ae66b:	3b d8                	cmp    %eax,%ebx
5ae66d:	76 32                	jbe    0x5ae6a1
5ae66f:	68 41 03 00 00       	push   $0x341
5ae674:	68 b8 84 66 00       	push   $0x6684b8
5ae679:	68 c2 00 00 00       	push   $0xc2
5ae67e:	68 f5 00 00 00       	push   $0xf5
5ae683:	6a 50                	push   $0x50
5ae685:	56                   	push   %esi
5ae686:	e8 85 0a fe ff       	call   0x58f110
5ae68b:	83 c4 18             	add    $0x18,%esp
5ae68e:	5b                   	pop    %ebx
5ae68f:	33 c0                	xor    %eax,%eax
5ae691:	5e                   	pop    %esi
5ae692:	8b 4c 24 44          	mov    0x44(%esp),%ecx
5ae696:	33 cc                	xor    %esp,%ecx
5ae698:	e8 89 33 02 00       	call   0x5d1a26
5ae69d:	83 c4 48             	add    $0x48,%esp
5ae6a0:	c3                   	ret
5ae6a1:	83 be 74 04 00 00 00 	cmpl   $0x0,0x474(%esi)
5ae6a8:	55                   	push   %ebp
5ae6a9:	74 69                	je     0x5ae714
5ae6ab:	83 be ec 03 00 00 00 	cmpl   $0x0,0x3ec(%esi)
5ae6b2:	74 60                	je     0x5ae714
5ae6b4:	ff b6 00 04 00 00    	push   0x400(%esi)
5ae6ba:	e8 b1 20 f4 ff       	call   0x4f0770
5ae6bf:	83 c4 04             	add    $0x4,%esp
5ae6c2:	85 c0                	test   %eax,%eax
5ae6c4:	74 4e                	je     0x5ae714
5ae6c6:	ff b6 00 04 00 00    	push   0x400(%esi)
5ae6cc:	e8 9f 20 f4 ff       	call   0x4f0770
5ae6d1:	50                   	push   %eax
5ae6d2:	e8 e9 21 f4 ff       	call   0x4f08c0
5ae6d7:	8b e8                	mov    %eax,%ebp
5ae6d9:	83 c4 08             	add    $0x8,%esp
5ae6dc:	85 ed                	test   %ebp,%ebp
5ae6de:	79 36                	jns    0x5ae716
5ae6e0:	68 51 03 00 00       	push   $0x351
5ae6e5:	68 b8 84 66 00       	push   $0x6684b8
5ae6ea:	68 c2 00 00 00       	push   $0xc2
5ae6ef:	68 f5 00 00 00       	push   $0xf5
5ae6f4:	6a 50                	push   $0x50
5ae6f6:	56                   	push   %esi
5ae6f7:	e8 14 0a fe ff       	call   0x58f110
5ae6fc:	83 c4 18             	add    $0x18,%esp
5ae6ff:	83 c8 ff             	or     $0xffffffff,%eax
5ae702:	5d                   	pop    %ebp
5ae703:	5b                   	pop    %ebx
5ae704:	5e                   	pop    %esi
5ae705:	8b 4c 24 44          	mov    0x44(%esp),%ecx
5ae709:	33 cc                	xor    %esp,%ecx
5ae70b:	e8 16 33 02 00       	call   0x5d1a26
5ae710:	83 c4 48             	add    $0x48,%esp
5ae713:	c3                   	ret
5ae714:	33 ed                	xor    %ebp,%ebp
5ae716:	8b 8e 78 06 00 00    	mov    0x678(%esi),%ecx
5ae71c:	8b 44 24 5c          	mov    0x5c(%esp),%eax
5ae720:	89 44 24 1c          	mov    %eax,0x1c(%esp)
5ae724:	57                   	push   %edi
5ae725:	88 01                	mov    %al,(%ecx)
5ae727:	8b f9                	mov    %ecx,%edi
5ae729:	89 44 24 28          	mov    %eax,0x28(%esp)
5ae72d:	8b 46 04             	mov    0x4(%esi),%eax
5ae730:	81 38 ff ff 01 00    	cmpl   $0x1ffff,(%eax)
5ae736:	75 18                	jne    0x5ae750
5ae738:	81 be f8 04 00 00 00 	cmpl   $0x100,0x4f8(%esi)
5ae73f:	01 00 00
5ae742:	74 0c                	je     0x5ae750
5ae744:	c6 41 01 fe          	movb   $0xfe,0x1(%ecx)
5ae748:	8d 41 02             	lea    0x2(%ecx),%eax
5ae74b:	80 ca ff             	or     $0xff,%dl
5ae74e:	eb 0d                	jmp    0x5ae75d
5ae750:	8b 06                	mov    (%esi),%eax
5ae752:	c1 f8 08             	sar    $0x8,%eax
5ae755:	88 41 01             	mov    %al,0x1(%ecx)
5ae758:	8d 47 02             	lea    0x2(%edi),%eax
5ae75b:	8a 16                	mov    (%esi),%dl
5ae75d:	89 44 24 14          	mov    %eax,0x14(%esp)
5ae761:	88 10                	mov    %dl,(%eax)
5ae763:	83 c0 0b             	add    $0xb,%eax
5ae766:	89 44 24 10          	mov    %eax,0x10(%esp)
5ae76a:	8b 86 ec 03 00 00    	mov    0x3ec(%esi),%eax
5ae770:	85 c0                	test   %eax,%eax
5ae772:	74 2e                	je     0x5ae7a2
5ae774:	50                   	push   %eax
5ae775:	e8 46 19 f4 ff       	call   0x4f00c0
5ae77a:	50                   	push   %eax
5ae77b:	e8 30 1b f4 ff       	call   0x4f02b0
5ae780:	25 07 00 0f 00       	and    $0xf0007,%eax
5ae785:	83 c4 08             	add    $0x8,%esp
5ae788:	83 f8 02             	cmp    $0x2,%eax
5ae78b:	75 5c                	jne    0x5ae7e9
5ae78d:	ff b6 ec 03 00 00    	push   0x3ec(%esi)
5ae793:	e8 48 19 f4 ff       	call   0x4f00e0
5ae798:	8b f8                	mov    %eax,%edi
5ae79a:	83 c4 04             	add    $0x4,%esp
5ae79d:	83 ff 01             	cmp    $0x1,%edi
5ae7a0:	7f 02                	jg     0x5ae7a4
5ae7a2:	33 ff                	xor    %edi,%edi
5ae7a4:	8b 44 24 10          	mov    0x10(%esp),%eax
5ae7a8:	8b 4c 24 18          	mov    0x18(%esp),%ecx
5ae7ac:	03 c7                	add    %edi,%eax
5ae7ae:	83 be e4 03 00 00 00 	cmpl   $0x0,0x3e4(%esi)
5ae7b5:	89 44 24 38          	mov    %eax,0x38(%esp)
5ae7b9:	89 5c 24 2c          	mov    %ebx,0x2c(%esp)
5ae7bd:	89 4c 24 3c          	mov    %ecx,0x3c(%esp)
5ae7c1:	74 3f                	je     0x5ae802
5ae7c3:	8d 44 24 24          	lea    0x24(%esp),%eax
5ae7c7:	50                   	push   %eax
5ae7c8:	56                   	push   %esi
5ae7c9:	e8 22 53 ea ff       	call   0x453af0
5ae7ce:	83 c4 08             	add    $0x8,%esp
5ae7d1:	85 c0                	test   %eax,%eax
5ae7d3:	75 40                	jne    0x5ae815
5ae7d5:	68 8d 03 00 00       	push   $0x38d
5ae7da:	68 b8 84 66 00       	push   $0x6684b8
5ae7df:	68 8d 00 00 00       	push   $0x8d
5ae7e4:	e9 51 01 00 00       	jmp    0x5ae93a
5ae7e9:	83 f8 06             	cmp    $0x6,%eax
5ae7ec:	75 05                	jne    0x5ae7f3
5ae7ee:	8d 78 02             	lea    0x2(%eax),%edi
5ae7f1:	eb b1                	jmp    0x5ae7a4
5ae7f3:	33 ff                	xor    %edi,%edi
5ae7f5:	b9 08 00 00 00       	mov    $0x8,%ecx
5ae7fa:	83 f8 07             	cmp    $0x7,%eax
5ae7fd:	0f 44 f9             	cmove  %ecx,%edi
5ae800:	eb a2                	jmp    0x5ae7a4
5ae802:	53                   	push   %ebx
5ae803:	51                   	push   %ecx
5ae804:	50                   	push   %eax
5ae805:	e8 c6 45 02 00       	call   0x5d2dd0
5ae80a:	8b 44 24 44          	mov    0x44(%esp),%eax
5ae80e:	83 c4 0c             	add    $0xc,%esp
5ae811:	89 44 24 3c          	mov    %eax,0x3c(%esp)
5ae815:	8b 46 7c             	mov    0x7c(%esi),%eax
5ae818:	f7 00 00 04 00 00    	testl  $0x400,(%eax)
5ae81e:	75 67                	jne    0x5ae887
5ae820:	85 ed                	test   %ebp,%ebp
5ae822:	74 63                	je     0x5ae887
5ae824:	8b 46 04             	mov    0x4(%esi),%eax
5ae827:	6a 01                	push   $0x1
5ae829:	8b 48 64             	mov    0x64(%eax),%ecx
5ae82c:	8b 44 24 30          	mov    0x30(%esp),%eax
5ae830:	03 c7                	add    %edi,%eax
5ae832:	03 44 24 14          	add    0x14(%esp),%eax
5ae836:	50                   	push   %eax
5ae837:	8d 44 24 2c          	lea    0x2c(%esp),%eax
5ae83b:	50                   	push   %eax
5ae83c:	8b 41 04             	mov    0x4(%ecx),%eax
5ae83f:	56                   	push   %esi
5ae840:	ff d0                	call   *%eax
5ae842:	83 c4 10             	add    $0x10,%esp
5ae845:	85 c0                	test   %eax,%eax
5ae847:	75 32                	jne    0x5ae87b
5ae849:	68 a1 03 00 00       	push   $0x3a1
5ae84e:	68 b8 84 66 00       	push   $0x6684b8
5ae853:	6a 44                	push   $0x44
5ae855:	68 f5 00 00 00       	push   $0xf5
5ae85a:	6a 50                	push   $0x50
5ae85c:	56                   	push   %esi
5ae85d:	e8 ae 08 fe ff       	call   0x58f110
5ae862:	83 c4 18             	add    $0x18,%esp
5ae865:	83 c8 ff             	or     $0xffffffff,%eax
5ae868:	5f                   	pop    %edi
5ae869:	5d                   	pop    %ebp
5ae86a:	5b                   	pop    %ebx
5ae86b:	5e                   	pop    %esi
5ae86c:	8b 4c 24 44          	mov    0x44(%esp),%ecx
5ae870:	33 cc                	xor    %esp,%ecx
5ae872:	e8 af 31 02 00       	call   0x5d1a26
5ae877:	83 c4 48             	add    $0x48,%esp
5ae87a:	c3                   	ret
5ae87b:	8b 44 24 2c          	mov    0x2c(%esp),%eax
5ae87f:	03 c5                	add    %ebp,%eax
5ae881:	89 44 24 2c          	mov    %eax,0x2c(%esp)
5ae885:	eb 04                	jmp    0x5ae88b
5ae887:	8b 44 24 2c          	mov    0x2c(%esp),%eax
5ae88b:	8b 4c 24 10          	mov    0x10(%esp),%ecx
5ae88f:	89 4c 24 38          	mov    %ecx,0x38(%esp)
5ae893:	89 4c 24 3c          	mov    %ecx,0x3c(%esp)
5ae897:	85 ff                	test   %edi,%edi
5ae899:	74 06                	je     0x5ae8a1
5ae89b:	03 c7                	add    %edi,%eax
5ae89d:	89 44 24 2c          	mov    %eax,0x2c(%esp)
5ae8a1:	8b 46 04             	mov    0x4(%esi),%eax
5ae8a4:	8d 4c 24 24          	lea    0x24(%esp),%ecx
5ae8a8:	6a 01                	push   $0x1
5ae8aa:	6a 01                	push   $0x1
5ae8ac:	51                   	push   %ecx
5ae8ad:	8b 40 64             	mov    0x64(%eax),%eax
5ae8b0:	56                   	push   %esi
5ae8b1:	8b 00                	mov    (%eax),%eax
5ae8b3:	ff d0                	call   *%eax
5ae8b5:	83 c4 10             	add    $0x10,%esp
5ae8b8:	83 f8 01             	cmp    $0x1,%eax
5ae8bb:	7d 3f                	jge    0x5ae8fc
5ae8bd:	56                   	push   %esi
5ae8be:	e8 ad 08 fe ff       	call   0x58f170
5ae8c3:	83 c4 04             	add    $0x4,%esp
5ae8c6:	85 c0                	test   %eax,%eax
5ae8c8:	75 1c                	jne    0x5ae8e6
5ae8ca:	68 b1 03 00 00       	push   $0x3b1
5ae8cf:	68 b8 84 66 00       	push   $0x6684b8
5ae8d4:	6a 44                	push   $0x44
5ae8d6:	68 f5 00 00 00       	push   $0xf5
5ae8db:	6a 50                	push   $0x50
5ae8dd:	56                   	push   %esi
5ae8de:	e8 2d 08 fe ff       	call   0x58f110
5ae8e3:	83 c4 18             	add    $0x18,%esp
5ae8e6:	5f                   	pop    %edi
5ae8e7:	5d                   	pop    %ebp
5ae8e8:	5b                   	pop    %ebx
5ae8e9:	83 c8 ff             	or     $0xffffffff,%eax
5ae8ec:	5e                   	pop    %esi
5ae8ed:	8b 4c 24 44          	mov    0x44(%esp),%ecx
5ae8f1:	33 cc                	xor    %esp,%ecx
5ae8f3:	e8 2e 31 02 00       	call   0x5d1a26
5ae8f8:	83 c4 48             	add    $0x48,%esp
5ae8fb:	c3                   	ret
5ae8fc:	8b 46 7c             	mov    0x7c(%esi),%eax
5ae8ff:	f7 00 00 04 00 00    	testl  $0x400,(%eax)
5ae905:	74 5d                	je     0x5ae964
5ae907:	85 ed                	test   %ebp,%ebp
5ae909:	74 59                	je     0x5ae964
5ae90b:	8b 46 04             	mov    0x4(%esi),%eax
5ae90e:	6a 01                	push   $0x1
5ae910:	8b 48 64             	mov    0x64(%eax),%ecx
5ae913:	8b 44 24 30          	mov    0x30(%esp),%eax
5ae917:	03 44 24 14          	add    0x14(%esp),%eax
5ae91b:	50                   	push   %eax
5ae91c:	8d 44 24 2c          	lea    0x2c(%esp),%eax
5ae920:	50                   	push   %eax
5ae921:	8b 41 04             	mov    0x4(%ecx),%eax
5ae924:	56                   	push   %esi
5ae925:	ff d0                	call   *%eax
5ae927:	83 c4 10             	add    $0x10,%esp
5ae92a:	85 c0                	test   %eax,%eax
5ae92c:	75 32                	jne    0x5ae960
5ae92e:	68 ba 03 00 00       	push   $0x3ba
5ae933:	68 b8 84 66 00       	push   $0x6684b8
5ae938:	6a 44                	push   $0x44
5ae93a:	68 f5 00 00 00       	push   $0xf5
5ae93f:	6a 50                	push   $0x50
5ae941:	56                   	push   %esi
5ae942:	e8 c9 07 fe ff       	call   0x58f110
5ae947:	83 c4 18             	add    $0x18,%esp
5ae94a:	83 c8 ff             	or     $0xffffffff,%eax
5ae94d:	5f                   	pop    %edi
5ae94e:	5d                   	pop    %ebp
5ae94f:	5b                   	pop    %ebx
5ae950:	5e                   	pop    %esi
5ae951:	8b 4c 24 44          	mov    0x44(%esp),%ecx
5ae955:	33 cc                	xor    %esp,%ecx
5ae957:	e8 ca 30 02 00       	call   0x5d1a26
5ae95c:	83 c4 48             	add    $0x48,%esp
5ae95f:	c3                   	ret
5ae960:	01 6c 24 2c          	add    %ebp,0x2c(%esp)
5ae964:	8b 86 38 0f 00 00    	mov    0xf38(%esi),%eax
5ae96a:	8b 4c 24 14          	mov    0x14(%esp),%ecx
5ae96e:	0f b6 40 03          	movzbl 0x3(%eax),%eax
5ae972:	88 41 01             	mov    %al,0x1(%ecx)
5ae975:	8b 86 38 0f 00 00    	mov    0xf38(%esi),%eax
5ae97b:	0f b6 40 02          	movzbl 0x2(%eax),%eax
5ae97f:	88 41 02             	mov    %al,0x2(%ecx)
5ae982:	8b 86 2a 0f 00 00    	mov    0xf2a(%esi),%eax
5ae988:	89 41 03             	mov    %eax,0x3(%ecx)
5ae98b:	66 8b 86 2e 0f 00 00 	mov    0xf2e(%esi),%ax
5ae992:	66 89 41 07          	mov    %ax,0x7(%ecx)
5ae996:	8b 44 24 2c          	mov    0x2c(%esp),%eax
5ae99a:	c1 e8 08             	shr    $0x8,%eax
5ae99d:	88 41 09             	mov    %al,0x9(%ecx)
5ae9a0:	0f b6 44 24 2c       	movzbl 0x2c(%esp),%eax
5ae9a5:	88 41 0a             	mov    %al,0xa(%ecx)
5ae9a8:	8b 96 84 00 00 00    	mov    0x84(%esi),%edx
5ae9ae:	85 d2                	test   %edx,%edx
5ae9b0:	74 1b                	je     0x5ae9cd
5ae9b2:	ff b6 88 00 00 00    	push   0x88(%esi)
5ae9b8:	8d 41 fe             	lea    -0x2(%ecx),%eax
5ae9bb:	56                   	push   %esi
5ae9bc:	6a 0d                	push   $0xd