4ed661:	51                   	push   %ecx
4ed662:	e8 29 c5 06 00       	call   0x559b90
4ed667:	83 c4 08             	add    $0x8,%esp
4ed66a:	89 85 8c fe ff ff    	mov    %eax,-0x174(%ebp)
4ed670:	8b 8d 80 fe ff ff    	mov    -0x180(%ebp),%ecx
4ed676:	8b 49 18             	mov    0x18(%ecx),%ecx
4ed679:	0f b7 51 08          	movzwl 0x8(%ecx),%edx
4ed67d:	f6 c2 24             	test   $0x24,%dl
4ed680:	74 13                	je     0x4ed695
4ed682:	8b 11                	mov    (%ecx),%edx
4ed684:	8b 41 04             	mov    0x4(%ecx),%eax
4ed687:	89 95 90 fe ff ff    	mov    %edx,-0x170(%ebp)
4ed68d:	89 85 7c fe ff ff    	mov    %eax,-0x184(%ebp)
4ed693:	eb 54                	jmp    0x4ed6e9
4ed695:	f6 c2 08             	test   $0x8,%dl
4ed698:	74 1c                	je     0x4ed6b6
4ed69a:	f2 0f 10 01          	movsd  (%ecx),%xmm0
4ed69e:	83 ec 08             	sub    $0x8,%esp
4ed6a1:	f2 0f 11 04 24       	movsd  %xmm0,(%esp)
4ed6a6:	e8 d5 0d 01 00       	call   0x4fe480
4ed6ab:	83 c4 08             	add    $0x8,%esp
4ed6ae:	89 95 7c fe ff ff    	mov    %edx,-0x184(%ebp)
4ed6b4:	eb 2d                	jmp    0x4ed6e3
4ed6b6:	f6 c2 12             	test   $0x12,%dl
4ed6b9:	74 17                	je     0x4ed6d2
4ed6bb:	83 79 10 00          	cmpl   $0x0,0x10(%ecx)
4ed6bf:	74 11                	je     0x4ed6d2
4ed6c1:	51                   	push   %ecx
4ed6c2:	e8 09 be 01 00       	call   0x5094d0
4ed6c7:	83 c4 04             	add    $0x4,%esp
4ed6ca:	89 95 7c fe ff ff    	mov    %edx,-0x184(%ebp)
4ed6d0:	eb 11                	jmp    0x4ed6e3
4ed6d2:	0f 57 c0             	xorps  %xmm0,%xmm0
4ed6d5:	66 0f 13 85 78 fe ff 	movlpd %xmm0,-0x188(%ebp)
4ed6dc:	ff
4ed6dd:	8b 85 78 fe ff ff    	mov    -0x188(%ebp),%eax
4ed6e3:	89 85 90 fe ff ff    	mov    %eax,-0x170(%ebp)
4ed6e9:	83 bd 94 fe ff ff 00 	cmpl   $0x0,-0x16c(%ebp)
4ed6f0:	0f 84 67 03 00 00    	je     0x4eda5d
4ed6f6:	85 db                	test   %ebx,%ebx
4ed6f8:	0f 84 5f 03 00 00    	je     0x4eda5d
4ed6fe:	83 bd 8c fe ff ff 00 	cmpl   $0x0,-0x174(%ebp)
4ed705:	0f 84 52 03 00 00    	je     0x4eda5d
4ed70b:	80 7f 59 00          	cmpb   $0x0,0x59(%edi)
4ed70f:	8b 87 50 01 00 00    	mov    0x150(%edi),%eax
4ed715:	89 85 7c fe ff ff    	mov    %eax,-0x184(%ebp)
4ed71b:	c7 87 50 01 00 00 00 	movl   $0x0,0x150(%edi)
4ed722:	00 00 00
4ed725:	75 09                	jne    0x4ed730
4ed727:	57                   	push   %edi
4ed728:	e8 83 94 00 00       	call   0x4f6bb0
4ed72d:	83 c4 04             	add    $0x4,%esp
4ed730:	56                   	push   %esi
4ed731:	53                   	push   %ebx
4ed732:	0f 57 c0             	xorps  %xmm0,%xmm0
4ed735:	c7 45 f8 00 00 00 00 	movl   $0x0,-0x8(%ebp)
4ed73c:	57                   	push   %edi
4ed73d:	0f 11 45 e8          	movups %xmm0,-0x18(%ebp)
4ed741:	e8 7a b2 03 00       	call   0x5289c0
4ed746:	ff b5 90 fe ff ff    	push   -0x170(%ebp)
4ed74c:	89 45 f4             	mov    %eax,-0xc(%ebp)
4ed74f:	8d 85 98 fe ff ff    	lea    -0x168(%ebp),%eax
4ed755:	ff b5 94 fe ff ff    	push   -0x16c(%ebp)
4ed75b:	0f 11 45 cc          	movups %xmm0,-0x34(%ebp)
4ed75f:	89 45 cc             	mov    %eax,-0x34(%ebp)
4ed762:	8d 45 e8             	lea    -0x18(%ebp),%eax
4ed765:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
4ed76c:	57                   	push   %edi
4ed76d:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4ed770:	8d 85 98 fe ff ff    	lea    -0x168(%ebp),%eax
4ed776:	56                   	push   %esi
4ed777:	50                   	push   %eax
4ed778:	66 0f d6 45 dc       	movq   %xmm0,-0x24(%ebp)
4ed77d:	c7 45 d0 60 2f 51 00 	movl   $0x512f60,-0x30(%ebp)
4ed784:	c7 45 d4 a0 2f 51 00 	movl   $0x512fa0,-0x2c(%ebp)
4ed78b:	e8 c0 54 02 00       	call   0x512c50
4ed790:	83 c4 20             	add    $0x20,%esp
4ed793:	85 c0                	test   %eax,%eax
4ed795:	75 7d                	jne    0x4ed814
4ed797:	8b 47 20             	mov    0x20(%edi),%eax
4ed79a:	8b bd 7c ff ff ff    	mov    -0x84(%ebp),%edi
4ed7a0:	25 00 00 00 04       	and    $0x4000000,%eax
4ed7a5:	89 85 84 fe ff ff    	mov    %eax,-0x17c(%ebp)
4ed7ab:	89 bd 70 fe ff ff    	mov    %edi,-0x190(%ebp)
4ed7b1:	85 ff                	test   %edi,%edi
4ed7b3:	0f 84 49 01 00 00    	je     0x4ed902
4ed7b9:	8b 4f 0c             	mov    0xc(%edi),%ecx
4ed7bc:	85 c9                	test   %ecx,%ecx
4ed7be:	0f 84 9a 00 00 00    	je     0x4ed85e
4ed7c4:	85 c0                	test   %eax,%eax
4ed7c6:	0f 85 24 02 00 00    	jne    0x4ed9f0
4ed7cc:	0f 57 c0             	xorps  %xmm0,%xmm0
4ed7cf:	8d 85 98 fe ff ff    	lea    -0x168(%ebp),%eax
4ed7d5:	0f 11 45 ac          	movups %xmm0,-0x54(%ebp)
4ed7d9:	89 45 ac             	mov    %eax,-0x54(%ebp)
4ed7dc:	8d 45 ac             	lea    -0x54(%ebp),%eax
4ed7df:	50                   	push   %eax
4ed7e0:	0f 11 45 bc          	movups %xmm0,-0x44(%ebp)
4ed7e4:	81 61 04 ff ff df ff 	andl   $0xffdfffff,0x4(%ecx)
4ed7eb:	8d 85 98 fe ff ff    	lea    -0x168(%ebp),%eax
4ed7f1:	ff 77 0c             	push   0xc(%edi)
4ed7f4:	50                   	push   %eax
4ed7f5:	e8 36 ee 04 00       	call   0x53c630
4ed7fa:	83 c4 0c             	add    $0xc,%esp
4ed7fd:	83 bd bc fe ff ff 00 	cmpl   $0x0,-0x144(%ebp)
4ed804:	74 44                	je     0x4ed84a
4ed806:	8b 85 a4 fe ff ff    	mov    -0x15c(%ebp),%eax
4ed80c:	85 c0                	test   %eax,%eax
4ed80e:	0f 84 dc 01 00 00    	je     0x4ed9f0
4ed814:	8b b5 88 fe ff ff    	mov    -0x178(%ebp),%esi
4ed81a:	83 bd 9c fe ff ff 00 	cmpl   $0x0,-0x164(%ebp)
4ed821:	0f 84 f3 01 00 00    	je     0x4eda1a
4ed827:	8d 85 98 fe ff ff    	lea    -0x168(%ebp),%eax
4ed82d:	50                   	push   %eax
4ed82e:	8b 85 80 fe ff ff    	mov    -0x180(%ebp),%eax
4ed834:	ff 70 08             	push   0x8(%eax)
4ed837:	ff 70 04             	push   0x4(%eax)
4ed83a:	6a 00                	push   $0x0
4ed83c:	56                   	push   %esi
4ed83d:	e8 1e 4e 02 00       	call   0x512660
4ed842:	83 c4 14             	add    $0x14,%esp
4ed845:	e9 da 01 00 00       	jmp    0x4eda24
4ed84a:	ff 77 0c             	push   0xc(%edi)
4ed84d:	8d 45 cc             	lea    -0x34(%ebp),%eax
4ed850:	50                   	push   %eax
4ed851:	e8 9a 25 06 00       	call   0x54fdf0
4ed856:	83 c4 08             	add    $0x8,%esp
4ed859:	e9 92 01 00 00       	jmp    0x4ed9f0
4ed85e:	85 c0                	test   %eax,%eax
4ed860:	74 13                	je     0x4ed875
4ed862:	8b 85 74 fe ff ff    	mov    -0x18c(%ebp),%eax
4ed868:	8b 40 20             	mov    0x20(%eax),%eax
4ed86b:	25 00 40 00 00       	and    $0x4000,%eax
4ed870:	83 c8 00             	or     $0x0,%eax
4ed873:	74 3d                	je     0x4ed8b2
4ed875:	8b 77 10             	mov    0x10(%edi),%esi
4ed878:	85 f6                	test   %esi,%esi
4ed87a:	74 36                	je     0x4ed8b2
4ed87c:	0f 1f 40 00          	nopl   0x0(%eax)
4ed880:	8b 7e 08             	mov    0x8(%esi),%edi
4ed883:	53                   	push   %ebx
4ed884:	57                   	push   %edi
4ed885:	e8 f6 20 ff ff       	call   0x4df980
4ed88a:	83 c4 08             	add    $0x8,%esp
4ed88d:	85 c0                	test   %eax,%eax
4ed88f:	75 14                	jne    0x4ed8a5
4ed891:	57                   	push   %edi
4ed892:	8d 45 e8             	lea    -0x18(%ebp),%eax
4ed895:	50                   	push   %eax
4ed896:	8d 85 98 fe ff ff    	lea    -0x168(%ebp),%eax
4ed89c:	50                   	push   %eax
4ed89d:	e8 de 57 02 00       	call   0x513080
4ed8a2:	83 c4 0c             	add    $0xc,%esp
4ed8a5:	8b 76 04             	mov    0x4(%esi),%esi
4ed8a8:	85 f6                	test   %esi,%esi
4ed8aa:	75 d4                	jne    0x4ed880
4ed8ac:	8b bd 70 fe ff ff    	mov    -0x190(%ebp),%edi
4ed8b2:	8b 07                	mov    (%edi),%eax
4ed8b4:	85 c0                	test   %eax,%eax
4ed8b6:	0f 84 34 01 00 00    	je     0x4ed9f0
4ed8bc:	50                   	push   %eax
4ed8bd:	53                   	push   %ebx
4ed8be:	e8 6d 03 05 00       	call   0x53dc30
4ed8c3:	83 c4 08             	add    $0x8,%esp
4ed8c6:	85 c0                	test   %eax,%eax
4ed8c8:	0f 85 22 01 00 00    	jne    0x4ed9f0
4ed8ce:	89 7d f4             	mov    %edi,-0xc(%ebp)
4ed8d1:	39 85 84 fe ff ff    	cmp    %eax,-0x17c(%ebp)
4ed8d7:	75 0f                	jne    0x4ed8e8
4ed8d9:	ff 77 18             	push   0x18(%edi)
4ed8dc:	8d 45 cc             	lea    -0x34(%ebp),%eax
4ed8df:	50                   	push   %eax
4ed8e0:	e8 bb 24 06 00       	call   0x54fda0
4ed8e5:	83 c4 08             	add    $0x8,%esp
4ed8e8:	ff 37                	push   (%edi)
4ed8ea:	8d 45 e8             	lea    -0x18(%ebp),%eax
4ed8ed:	50                   	push   %eax
4ed8ee:	8d 85 98 fe ff ff    	lea    -0x168(%ebp),%eax
4ed8f4:	50                   	push   %eax
4ed8f5:	e8 86 57 02 00       	call   0x513080
4ed8fa:	83 c4 0c             	add    $0xc,%esp
4ed8fd:	e9 ee 00 00 00       	jmp    0x4ed9f0
4ed902:	8b 45 80             	mov    -0x80(%ebp),%eax
4ed905:	85 c0                	test   %eax,%eax
4ed907:	74 42                	je     0x4ed94b
4ed909:	ff 30                	push   (%eax)
4ed90b:	8d 45 e8             	lea    -0x18(%ebp),%eax
4ed90e:	50                   	push   %eax
4ed90f:	8d 85 98 fe ff ff    	lea    -0x168(%ebp),%eax
4ed915:	50                   	push   %eax
4ed916:	e8 65 57 02 00       	call   0x513080
4ed91b:	83 c4 0c             	add    $0xc,%esp
4ed91e:	83 bd 84 fe ff ff 00 	cmpl   $0x0,-0x17c(%ebp)
4ed925:	0f 85 c5 00 00 00    	jne    0x4ed9f0
4ed92b:	8b 45 80             	mov    -0x80(%ebp),%eax
4ed92e:	8b 40 24             	mov    0x24(%eax),%eax
4ed931:	85 c0                	test   %eax,%eax
4ed933:	0f 84 b7 00 00 00    	je     0x4ed9f0
4ed939:	50                   	push   %eax
4ed93a:	8d 45 cc             	lea    -0x34(%ebp),%eax
4ed93d:	50                   	push   %eax
4ed93e:	e8 6d 26 07 00       	call   0x55ffb0
4ed943:	83 c4 08             	add    $0x8,%esp
4ed946:	e9 a5 00 00 00       	jmp    0x4ed9f0
4ed94b:	8b 7d 84             	mov    -0x7c(%ebp),%edi
4ed94e:	53                   	push   %ebx
4ed94f:	ff 77 04             	push   0x4(%edi)
4ed952:	e8 29 20 ff ff       	call   0x4df980
4ed957:	83 c4 08             	add    $0x8,%esp
4ed95a:	85 c0                	test   %eax,%eax
4ed95c:	75 21                	jne    0x4ed97f
4ed95e:	8b 45 f4             	mov    -0xc(%ebp),%eax
4ed961:	8b 40 48             	mov    0x48(%eax),%eax
4ed964:	3b 47 18             	cmp    0x18(%edi),%eax
4ed967:	75 16                	jne    0x4ed97f
4ed969:	ff 77 04             	push   0x4(%edi)
4ed96c:	8d 45 e8             	lea    -0x18(%ebp),%eax
4ed96f:	50                   	push   %eax
4ed970:	8d 85 98 fe ff ff    	lea    -0x168(%ebp),%eax
4ed976:	50                   	push   %eax
4ed977:	e8 04 57 02 00       	call   0x513080
4ed97c:	83 c4 0c             	add    $0xc,%esp
4ed97f:	83 bd 84 fe ff ff 00 	cmpl   $0x0,-0x17c(%ebp)
4ed986:	75 68                	jne    0x4ed9f0
4ed988:	33 c0                	xor    %eax,%eax
4ed98a:	39 85 90 fe ff ff    	cmp    %eax,-0x170(%ebp)
4ed990:	0f 45 f0             	cmovne %eax,%esi
4ed993:	8d 85 98 fe ff ff    	lea    -0x168(%ebp),%eax
4ed999:	56                   	push   %esi
4ed99a:	50                   	push   %eax
4ed99b:	e8 b0 53 02 00       	call   0x512d50
4ed9a0:	83 c4 08             	add    $0x8,%esp
4ed9a3:	85 c0                	test   %eax,%eax
4ed9a5:	0f 85 69 fe ff ff    	jne    0x4ed814
4ed9ab:	8d 45 cc             	lea    -0x34(%ebp),%eax
4ed9ae:	57                   	push   %edi
4ed9af:	50                   	push   %eax
4ed9b0:	e8 0b 59 02 00       	call   0x5132c0
4ed9b5:	8b 77 1c             	mov    0x1c(%edi),%esi
4ed9b8:	83 c4 08             	add    $0x8,%esp
4ed9bb:	85 f6                	test   %esi,%esi
4ed9bd:	74 31                	je     0x4ed9f0
4ed9bf:	90                   	nop
4ed9c0:	8b 7e 0c             	mov    0xc(%esi),%edi
4ed9c3:	85 ff                	test   %edi,%edi
4ed9c5:	74 22                	je     0x4ed9e9
4ed9c7:	53                   	push   %ebx
4ed9c8:	57                   	push   %edi
4ed9c9:	e8 b2 1f ff ff       	call   0x4df980
4ed9ce:	83 c4 08             	add    $0x8,%esp
4ed9d1:	85 c0                	test   %eax,%eax
4ed9d3:	75 14                	jne    0x4ed9e9
4ed9d5:	57                   	push   %edi
4ed9d6:	8d 45 e8             	lea    -0x18(%ebp),%eax
4ed9d9:	50                   	push   %eax
4ed9da:	8d 85 98 fe ff ff    	lea    -0x168(%ebp),%eax
4ed9e0:	50                   	push   %eax
4ed9e1:	e8 9a 56 02 00       	call   0x513080
4ed9e6:	83 c4 0c             	add    $0xc,%esp
4ed9e9:	8b 76 24             	mov    0x24(%esi),%esi
4ed9ec:	85 f6                	test   %esi,%esi
4ed9ee:	75 d0                	jne    0x4ed9c0
4ed9f0:	8b b5 88 fe ff ff    	mov    -0x178(%ebp),%esi
4ed9f6:	8d 45 e8             	lea    -0x18(%ebp),%eax
4ed9f9:	6a 01                	push   $0x1
4ed9fb:	ff b5 8c fe ff ff    	push   -0x174(%ebp)
4eda01:	ff b5 94 fe ff ff    	push   -0x16c(%ebp)
4eda07:	50                   	push   %eax
4eda08:	56                   	push   %esi
4eda09:	e8 52 4d 02 00       	call   0x512760
4eda0e:	83 c4 14             	add    $0x14,%esp
4eda11:	85 c0                	test   %eax,%eax
4eda13:	74 0f                	je     0x4eda24
4eda15:	e9 00 fe ff ff       	jmp    0x4ed81a
4eda1a:	50                   	push   %eax
4eda1b:	56                   	push   %esi
4eda1c:	e8 1f 5a ff ff       	call   0x4e3440
4eda21:	83 c4 08             	add    $0x8,%esp
4eda24:	8d 85 98 fe ff ff    	lea    -0x168(%ebp),%eax
4eda2a:	50                   	push   %eax
4eda2b:	e8 90 4f 02 00       	call   0x5129c0
4eda30:	ff 75 e8             	push   -0x18(%ebp)
4eda33:	8b 9d 74 fe ff ff    	mov    -0x18c(%ebp),%ebx
4eda39:	53                   	push   %ebx
4eda3a:	e8 81 56 02 00       	call   0x5130c0
4eda3f:	83 c4 0c             	add    $0xc,%esp
4eda42:	80 7b 59 00          	cmpb   $0x0,0x59(%ebx)
4eda46:	75 09                	jne    0x4eda51
4eda48:	53                   	push   %ebx
4eda49:	e8 42 95 00 00       	call   0x4f6f90
4eda4e:	83 c4 04             	add    $0x4,%esp
4eda51:	8b 85 7c fe ff ff    	mov    -0x184(%ebp),%eax
4eda57:	89 83 50 01 00 00    	mov    %eax,0x150(%ebx)
4eda5d:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4eda60:	5f                   	pop    %edi
4eda61:	5e                   	pop    %esi
4eda62:	33 cd                	xor    %ebp,%ecx
4eda64:	5b                   	pop    %ebx
4eda65:	e8 70 3a 0f 00       	call   0x5e14da
4eda6a:	8b e5                	mov    %ebp,%esp
4eda6c:	5d                   	pop    %ebp
4eda6d:	c3                   	ret
4eda6e:	cc                   	int3
4eda6f:	cc                   	int3
4eda70:	55                   	push   %ebp
4eda71:	8b ec                	mov    %esp,%ebp
4eda73:	83 ec 08             	sub    $0x8,%esp
4eda76:	ff 75 0c             	push   0xc(%ebp)
4eda79:	ff 75 08             	push   0x8(%ebp)
4eda7c:	e8 bf f2 ff ff       	call   0x4ecd40
4eda81:	83 c4 08             	add    $0x8,%esp
4eda84:	85 c0                	test   %eax,%eax
4eda86:	74 1b                	je     0x4edaa3
4eda88:	8d 4d f8             	lea    -0x8(%ebp),%ecx
4eda8b:	51                   	push   %ecx
4eda8c:	50                   	push   %eax
4eda8d:	e8 ce 3c 03 00       	call   0x521760
4eda92:	83 c4 08             	add    $0x8,%esp
4eda95:	85 c0                	test   %eax,%eax
4eda97:	75 0a                	jne    0x4edaa3
4eda99:	8b 45 f8             	mov    -0x8(%ebp),%eax
4eda9c:	8b 55 fc             	mov    -0x4(%ebp),%edx
4eda9f:	8b e5                	mov    %ebp,%esp
4edaa1:	5d                   	pop    %ebp
4edaa2:	c3                   	ret
4edaa3:	8b 55 14             	mov    0x14(%ebp),%edx
4edaa6:	8b 45 10             	mov    0x10(%ebp),%eax
4edaa9:	8b e5                	mov    %ebp,%esp
4edaab:	5d                   	pop    %ebp
4edaac:	c3                   	ret
4edaad:	cc                   	int3
4edaae:	cc                   	int3
4edaaf:	cc                   	int3
4edab0:	55                   	push   %ebp
4edab1:	8b ec                	mov    %esp,%ebp
4edab3:	8b 55 08             	mov    0x8(%ebp),%edx
4edab6:	81 fa 90 00 00 00    	cmp    $0x90,%edx
4edabc:	77 23                	ja     0x4edae1
4edabe:	8b 45 0c             	mov    0xc(%ebp),%eax
4edac1:	0f b7 0c 55 f8 65 6b 	movzwl 0x6b65f8(,%edx,2),%ecx
4edac8:	00
4edac9:	81 c1 68 23 6b 00    	add    $0x6b2368,%ecx
4edacf:	89 08                	mov    %ecx,(%eax)
4edad1:	8b 45 10             	mov    0x10(%ebp),%eax
4edad4:	0f b6 8a 60 65 6b 00 	movzbl 0x6b6560(%edx),%ecx
4edadb:	89 08                	mov    %ecx,(%eax)
4edadd:	33 c0                	xor    %eax,%eax
4edadf:	5d                   	pop    %ebp
4edae0:	c3                   	ret
4edae1:	b8 01 00 00 00       	mov    $0x1,%eax