ae4805:	8b 4d 08             	mov    0x8(%ebp),%ecx
ae4808:	33 c0                	xor    %eax,%eax
ae480a:	39 01                	cmp    %eax,(%ecx)
ae480c:	0f 94 c0             	sete   %al
ae480f:	5d                   	pop    %ebp
ae4810:	c3                   	ret
ae4811:	cc                   	int3
ae4812:	cc                   	int3
ae4813:	cc                   	int3
ae4814:	cc                   	int3
ae4815:	cc                   	int3
ae4816:	cc                   	int3
ae4817:	cc                   	int3
ae4818:	cc                   	int3
ae4819:	cc                   	int3
ae481a:	cc                   	int3
ae481b:	cc                   	int3
ae481c:	cc                   	int3
ae481d:	cc                   	int3
ae481e:	cc                   	int3
ae481f:	cc                   	int3
ae4820:	8b ff                	mov    %edi,%edi
ae4822:	55                   	push   %ebp
ae4823:	8b ec                	mov    %esp,%ebp
ae4825:	51                   	push   %ecx
ae4826:	53                   	push   %ebx
ae4827:	8b 5d 0c             	mov    0xc(%ebp),%ebx
ae482a:	8b c3                	mov    %ebx,%eax
ae482c:	c1 e8 05             	shr    $0x5,%eax
ae482f:	56                   	push   %esi
ae4830:	8b 75 08             	mov    0x8(%ebp),%esi
ae4833:	57                   	push   %edi
ae4834:	8d 3c 85 00 00 00 00 	lea    0x0(,%eax,4),%edi
ae483b:	89 45 fc             	mov    %eax,-0x4(%ebp)
ae483e:	57                   	push   %edi
ae483f:	8d 46 04             	lea    0x4(%esi),%eax
ae4842:	6a 00                	push   $0x0
ae4844:	50                   	push   %eax
ae4845:	e8 6e ff 92 ff       	call   0x4147b8
ae484a:	83 e3 1f             	and    $0x1f,%ebx
ae484d:	83 c4 0c             	add    $0xc,%esp
ae4850:	8b cb                	mov    %ebx,%ecx
ae4852:	ba 01 00 00 00       	mov    $0x1,%edx
ae4857:	d3 e2                	shl    %cl,%edx
ae4859:	8b c6                	mov    %esi,%eax
ae485b:	8b 4d fc             	mov    -0x4(%ebp),%ecx
ae485e:	89 54 37 04          	mov    %edx,0x4(%edi,%esi,1)
ae4862:	41                   	inc    %ecx
ae4863:	5f                   	pop    %edi
ae4864:	89 0e                	mov    %ecx,(%esi)
ae4866:	5e                   	pop    %esi
ae4867:	5b                   	pop    %ebx
ae4868:	8b e5                	mov    %ebp,%esp
ae486a:	5d                   	pop    %ebp
ae486b:	c3                   	ret
ae486c:	cc                   	int3
ae486d:	cc                   	int3
ae486e:	cc                   	int3
ae486f:	cc                   	int3
ae4870:	cc                   	int3
ae4871:	cc                   	int3
ae4872:	cc                   	int3
ae4873:	cc                   	int3
ae4874:	cc                   	int3
ae4875:	cc                   	int3
ae4876:	cc                   	int3
ae4877:	cc                   	int3
ae4878:	cc                   	int3
ae4879:	cc                   	int3
ae487a:	cc                   	int3
ae487b:	cc                   	int3
ae487c:	cc                   	int3
ae487d:	cc                   	int3
ae487e:	cc                   	int3
ae487f:	8b ff                	mov    %edi,%edi
ae4881:	55                   	push   %ebp
ae4882:	8b ec                	mov    %esp,%ebp
ae4884:	81 ec 64 09 00 00    	sub    $0x964,%esp
ae488a:	a1 24 f6 d5 00       	mov    0xd5f624,%eax
ae488f:	33 c5                	xor    %ebp,%eax
ae4891:	89 45 fc             	mov    %eax,-0x4(%ebp)
ae4894:	53                   	push   %ebx
ae4895:	8b 5d 18             	mov    0x18(%ebp),%ebx
ae4898:	8d 8d 6c f8 ff ff    	lea    -0x794(%ebp),%ecx
ae489e:	56                   	push   %esi
ae489f:	57                   	push   %edi
ae48a0:	8b 7d 14             	mov    0x14(%ebp),%edi
ae48a3:	89 bd 80 f8 ff ff    	mov    %edi,-0x780(%ebp)
ae48a9:	89 9d 84 f8 ff ff    	mov    %ebx,-0x77c(%ebp)
ae48af:	e8 0b c6 92 ff       	call   0x410ebf
ae48b4:	8b 75 0c             	mov    0xc(%ebp),%esi
ae48b7:	33 c0                	xor    %eax,%eax
ae48b9:	8b ce                	mov    %esi,%ecx
ae48bb:	81 e1 00 00 00 80    	and    $0x80000000,%ecx
ae48c1:	0b c1                	or     %ecx,%eax
ae48c3:	b0 2d                	mov    $0x2d,%al
ae48c5:	75 02                	jne    0xae48c9
ae48c7:	04 f3                	add    $0xf3,%al
ae48c9:	0f be c0             	movsbl %al,%eax
ae48cc:	8b ce                	mov    %esi,%ecx
ae48ce:	89 07                	mov    %eax,(%edi)
ae48d0:	81 e1 00 00 f0 7f    	and    $0x7ff00000,%ecx
ae48d6:	33 c0                	xor    %eax,%eax
ae48d8:	89 5f 08             	mov    %ebx,0x8(%edi)
ae48db:	0b c1                	or     %ecx,%eax
ae48dd:	8b 7d 08             	mov    0x8(%ebp),%edi
ae48e0:	75 22                	jne    0xae4904
ae48e2:	8b ce                	mov    %esi,%ecx
ae48e4:	8b c7                	mov    %edi,%eax
ae48e6:	81 e1 ff ff 0f 00    	and    $0xfffff,%ecx
ae48ec:	0b c1                	or     %ecx,%eax
ae48ee:	75 14                	jne    0xae4904
ae48f0:	8b 85 80 f8 ff ff    	mov    -0x780(%ebp),%eax
ae48f6:	68 c4 a0 bd 00       	push   $0xbda0c4
ae48fb:	83 60 04 00          	andl   $0x0,0x4(%eax)
ae48ff:	e9 d3 12 00 00       	jmp    0xae5bd7
ae4904:	8d 45 08             	lea    0x8(%ebp),%eax
ae4907:	50                   	push   %eax
ae4908:	e8 cb 19 94 ff       	call   0x4262d8
ae490d:	59                   	pop    %ecx
ae490e:	85 c0                	test   %eax,%eax
ae4910:	74 0d                	je     0xae491f
ae4912:	8b 8d 80 f8 ff ff    	mov    -0x780(%ebp),%ecx
ae4918:	c7 41 04 01 00 00 00 	movl   $0x1,0x4(%ecx)
ae491f:	83 e8 01             	sub    $0x1,%eax
ae4922:	0f 84 aa 12 00 00    	je     0xae5bd2
ae4928:	83 e8 01             	sub    $0x1,%eax
ae492b:	0f 84 9a 12 00 00    	je     0xae5bcb
ae4931:	83 e8 01             	sub    $0x1,%eax
ae4934:	0f 84 8a 12 00 00    	je     0xae5bc4
ae493a:	83 e8 01             	sub    $0x1,%eax
ae493d:	0f 84 7a 12 00 00    	je     0xae5bbd
ae4943:	8b 45 10             	mov    0x10(%ebp),%eax
ae4946:	81 e6 ff ff ff 7f    	and    $0x7fffffff,%esi
ae494c:	83 a5 7c f8 ff ff 00 	andl   $0x0,-0x784(%ebp)
ae4953:	40                   	inc    %eax
ae4954:	89 7d 08             	mov    %edi,0x8(%ebp)
ae4957:	89 75 0c             	mov    %esi,0xc(%ebp)
ae495a:	dd 45 08             	fldl   0x8(%ebp)
ae495d:	dd 95 98 f8 ff ff    	fstl   -0x768(%ebp)
ae4963:	8b bd 9c f8 ff ff    	mov    -0x764(%ebp),%edi
ae4969:	8b cf                	mov    %edi,%ecx
ae496b:	89 85 88 f8 ff ff    	mov    %eax,-0x778(%ebp)
ae4971:	c1 e9 14             	shr    $0x14,%ecx
ae4974:	8b c1                	mov    %ecx,%eax
ae4976:	25 ff 07 00 00       	and    $0x7ff,%eax
ae497b:	83 c8 00             	or     $0x0,%eax
ae497e:	75 06                	jne    0xae4986
ae4980:	b2 01                	mov    $0x1,%dl
ae4982:	33 f6                	xor    %esi,%esi
ae4984:	eb 09                	jmp    0xae498f
ae4986:	32 d2                	xor    %dl,%dl
ae4988:	be 00 00 10 00       	mov    $0x100000,%esi
ae498d:	33 c0                	xor    %eax,%eax
ae498f:	8b 9d 98 f8 ff ff    	mov    -0x768(%ebp),%ebx
ae4995:	81 e7 ff ff 0f 00    	and    $0xfffff,%edi
ae499b:	03 d8                	add    %eax,%ebx
ae499d:	13 fe                	adc    %esi,%edi
ae499f:	33 c0                	xor    %eax,%eax
ae49a1:	84 d2                	test   %dl,%dl
ae49a3:	0f 95 c0             	setne  %al
ae49a6:	81 e1 ff 07 00 00    	and    $0x7ff,%ecx
ae49ac:	40                   	inc    %eax
ae49ad:	8d b1 cc fb ff ff    	lea    -0x434(%ecx),%esi
ae49b3:	03 f0                	add    %eax,%esi
ae49b5:	89 b5 b4 f8 ff ff    	mov    %esi,-0x74c(%ebp)
ae49bb:	e8 28 05 93 ff       	call   0x414ee8
ae49c0:	51                   	push   %ecx
ae49c1:	51                   	push   %ecx
ae49c2:	dd 1c 24             	fstpl  (%esp)
ae49c5:	e8 2d 0d 95 ff       	call   0x4356f7
ae49ca:	59                   	pop    %ecx
ae49cb:	59                   	pop    %ecx
ae49cc:	e8 4b f0 91 ff       	call   0x403a1c
ae49d1:	89 85 94 f8 ff ff    	mov    %eax,-0x76c(%ebp)
ae49d7:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
ae49dc:	74 07                	je     0xae49e5
ae49de:	3d 00 00 00 80       	cmp    $0x80000000,%eax
ae49e3:	75 08                	jne    0xae49ed
ae49e5:	33 c0                	xor    %eax,%eax
ae49e7:	89 85 94 f8 ff ff    	mov    %eax,-0x76c(%ebp)
ae49ed:	89 9d 30 fe ff ff    	mov    %ebx,-0x1d0(%ebp)
ae49f3:	33 db                	xor    %ebx,%ebx
ae49f5:	85 ff                	test   %edi,%edi
ae49f7:	89 bd 34 fe ff ff    	mov    %edi,-0x1cc(%ebp)
ae49fd:	0f 95 c3             	setne  %bl
ae4a00:	43                   	inc    %ebx
ae4a01:	89 9d 2c fe ff ff    	mov    %ebx,-0x1d4(%ebp)
ae4a07:	85 f6                	test   %esi,%esi
ae4a09:	0f 88 ed 03 00 00    	js     0xae4dfc
ae4a0f:	83 a5 90 fa ff ff 00 	andl   $0x0,-0x570(%ebp)
ae4a16:	6a 02                	push   $0x2
ae4a18:	5e                   	pop    %esi
ae4a19:	c7 85 94 fa ff ff 00 	movl   $0x100000,-0x56c(%ebp)
ae4a20:	00 10 00
ae4a23:	89 b5 8c fa ff ff    	mov    %esi,-0x574(%ebp)
ae4a29:	3b de                	cmp    %esi,%ebx
ae4a2b:	0f 85 00 02 00 00    	jne    0xae4c31
ae4a31:	33 c9                	xor    %ecx,%ecx
ae4a33:	8b 84 0d 90 fa ff ff 	mov    -0x570(%ebp,%ecx,1),%eax
ae4a3a:	3b 84 0d 30 fe ff ff 	cmp    -0x1d0(%ebp,%ecx,1),%eax
ae4a41:	0f 85 ea 01 00 00    	jne    0xae4c31
ae4a47:	83 c1 04             	add    $0x4,%ecx
ae4a4a:	83 f9 08             	cmp    $0x8,%ecx
ae4a4d:	75 e4                	jne    0xae4a33
ae4a4f:	8b 85 b4 f8 ff ff    	mov    -0x74c(%ebp),%eax
ae4a55:	33 d2                	xor    %edx,%edx
ae4a57:	83 c0 02             	add    $0x2,%eax
ae4a5a:	8b f0                	mov    %eax,%esi
ae4a5c:	83 e0 1f             	and    $0x1f,%eax
ae4a5f:	6a 20                	push   $0x20
ae4a61:	59                   	pop    %ecx
ae4a62:	2b c8                	sub    %eax,%ecx
ae4a64:	89 85 a4 f8 ff ff    	mov    %eax,-0x75c(%ebp)
ae4a6a:	33 c0                	xor    %eax,%eax
ae4a6c:	c1 ee 05             	shr    $0x5,%esi
ae4a6f:	40                   	inc    %eax
ae4a70:	89 b5 b0 f8 ff ff    	mov    %esi,-0x750(%ebp)
ae4a76:	89 8d 90 f8 ff ff    	mov    %ecx,-0x770(%ebp)
ae4a7c:	e8 de 5e 94 ff       	call   0x42a95f
ae4a81:	83 a5 9c f8 ff ff 00 	andl   $0x0,-0x764(%ebp)
ae4a88:	48                   	dec    %eax
ae4a89:	0f bd cf             	bsr    %edi,%ecx
ae4a8c:	89 85 a8 f8 ff ff    	mov    %eax,-0x758(%ebp)
ae4a92:	f7 d0                	not    %eax
ae4a94:	89 85 8c f8 ff ff    	mov    %eax,-0x774(%ebp)
ae4a9a:	74 03                	je     0xae4a9f
ae4a9c:	41                   	inc    %ecx
ae4a9d:	eb 02                	jmp    0xae4aa1
ae4a9f:	33 c9                	xor    %ecx,%ecx
ae4aa1:	6a 20                	push   $0x20
ae4aa3:	58                   	pop    %eax
ae4aa4:	2b c1                	sub    %ecx,%eax
ae4aa6:	8d 56 02             	lea    0x2(%esi),%edx
ae4aa9:	39 85 a4 f8 ff ff    	cmp    %eax,-0x75c(%ebp)
ae4aaf:	89 95 ac f8 ff ff    	mov    %edx,-0x754(%ebp)
ae4ab5:	0f 97 c0             	seta   %al
ae4ab8:	83 fa 73             	cmp    $0x73,%edx
ae4abb:	88 85 bb f8 ff ff    	mov    %al,-0x745(%ebp)
ae4ac1:	0f 97 c1             	seta   %cl
ae4ac4:	83 fa 73             	cmp    $0x73,%edx
ae4ac7:	75 08                	jne    0xae4ad1
ae4ac9:	84 c0                	test   %al,%al
ae4acb:	74 04                	je     0xae4ad1
ae4acd:	b0 01                	mov    $0x1,%al
ae4acf:	eb 02                	jmp    0xae4ad3
ae4ad1:	32 c0                	xor    %al,%al
ae4ad3:	84 c9                	test   %cl,%cl
ae4ad5:	0f 85 ef 00 00 00    	jne    0xae4bca
ae4adb:	84 c0                	test   %al,%al
ae4add:	0f 85 e7 00 00 00    	jne    0xae4bca
ae4ae3:	6a 72                	push   $0x72
ae4ae5:	59                   	pop    %ecx
ae4ae6:	3b d1                	cmp    %ecx,%edx
ae4ae8:	72 08                	jb     0xae4af2
ae4aea:	8b d1                	mov    %ecx,%edx
ae4aec:	89 8d ac f8 ff ff    	mov    %ecx,-0x754(%ebp)
ae4af2:	8b ca                	mov    %edx,%ecx
ae4af4:	89 8d a0 f8 ff ff    	mov    %ecx,-0x760(%ebp)
ae4afa:	83 fa ff             	cmp    $0xffffffff,%edx
ae4afd:	0f 84 96 00 00 00    	je     0xae4b99
ae4b03:	8b f2                	mov    %edx,%esi
ae4b05:	8d 85 30 fe ff ff    	lea    -0x1d0(%ebp),%eax
ae4b0b:	8b 95 b0 f8 ff ff    	mov    -0x750(%ebp),%edx
ae4b11:	2b f2                	sub    %edx,%esi
ae4b13:	8d 04 b0             	lea    (%eax,%esi,4),%eax
ae4b16:	89 85 b4 f8 ff ff    	mov    %eax,-0x74c(%ebp)
ae4b1c:	3b ca                	cmp    %edx,%ecx
ae4b1e:	72 6d                	jb     0xae4b8d
ae4b20:	3b f3                	cmp    %ebx,%esi
ae4b22:	73 04                	jae    0xae4b28
ae4b24:	8b 38                	mov    (%eax),%edi
ae4b26:	eb 02                	jmp    0xae4b2a
ae4b28:	33 ff                	xor    %edi,%edi
ae4b2a:	8d 46 ff             	lea    -0x1(%esi),%eax
ae4b2d:	3b c3                	cmp    %ebx,%eax
ae4b2f:	73 0b                	jae    0xae4b3c
ae4b31:	8b 85 b4 f8 ff ff    	mov    -0x74c(%ebp),%eax
ae4b37:	8b 40 fc             	mov    -0x4(%eax),%eax
ae4b3a:	eb 02                	jmp    0xae4b3e
ae4b3c:	33 c0                	xor    %eax,%eax
ae4b3e:	23 85 8c f8 ff ff    	and    -0x774(%ebp),%eax
ae4b44:	23 bd a8 f8 ff ff    	and    -0x758(%ebp),%edi
ae4b4a:	8b 8d 90 f8 ff ff    	mov    -0x770(%ebp),%ecx
ae4b50:	d3 e8                	shr    %cl,%eax
ae4b52:	8b 8d a4 f8 ff ff    	mov    -0x75c(%ebp),%ecx
ae4b58:	d3 e7                	shl    %cl,%edi
ae4b5a:	8b 8d a0 f8 ff ff    	mov    -0x760(%ebp),%ecx
ae4b60:	0b c7                	or     %edi,%eax
ae4b62:	89 84 8d 30 fe ff ff 	mov    %eax,-0x1d0(%ebp,%ecx,4)
ae4b69:	49                   	dec    %ecx
ae4b6a:	8b 85 b4 f8 ff ff    	mov    -0x74c(%ebp),%eax
ae4b70:	4e                   	dec    %esi
ae4b71:	83 e8 04             	sub    $0x4,%eax
ae4b74:	89 8d a0 f8 ff ff    	mov    %ecx,-0x760(%ebp)
ae4b7a:	89 85 b4 f8 ff ff    	mov    %eax,-0x74c(%ebp)
ae4b80:	83 f9 ff             	cmp    $0xffffffff,%ecx
ae4b83:	74 08                	je     0xae4b8d
ae4b85:	8b 9d 2c fe ff ff    	mov    -0x1d4(%ebp),%ebx
ae4b8b:	eb 8f                	jmp    0xae4b1c
ae4b8d:	8b 95 ac f8 ff ff    	mov    -0x754(%ebp),%edx
ae4b93:	8b b5 b0 f8 ff ff    	mov    -0x750(%ebp),%esi
ae4b99:	85 f6                	test   %esi,%esi
ae4b9b:	74 0c                	je     0xae4ba9
ae4b9d:	8b ce                	mov    %esi,%ecx
ae4b9f:	8d bd 30 fe ff ff    	lea    -0x1d0(%ebp),%edi
ae4ba5:	33 c0                	xor    %eax,%eax
ae4ba7:	f3 ab                	rep stos %eax,%es:(%edi)
ae4ba9:	80 bd bb f8 ff ff 00 	cmpb   $0x0,-0x745(%ebp)
ae4bb0:	bb cc 01 00 00       	mov    $0x1cc,%ebx
ae4bb5:	74 0b                	je     0xae4bc2
ae4bb7:	8d 42 01             	lea    0x1(%edx),%eax
ae4bba:	89 85 2c fe ff ff    	mov    %eax,-0x1d4(%ebp)
ae4bc0:	eb 33                	jmp    0xae4bf5
ae4bc2:	89 95 2c fe ff ff    	mov    %edx,-0x1d4(%ebp)
ae4bc8:	eb 2b                	jmp    0xae4bf5
ae4bca:	33 c0                	xor    %eax,%eax
ae4bcc:	bb cc 01 00 00       	mov    $0x1cc,%ebx
ae4bd1:	50                   	push   %eax
ae4bd2:	89 85 8c fa ff ff    	mov    %eax,-0x574(%ebp)
ae4bd8:	89 85 2c fe ff ff    	mov    %eax,-0x1d4(%ebp)
ae4bde:	8d 85 90 fa ff ff    	lea    -0x570(%ebp),%eax
ae4be4:	50                   	push   %eax
ae4be5:	8d 85 30 fe ff ff    	lea    -0x1d0(%ebp),%eax
ae4beb:	53                   	push   %ebx
ae4bec:	50                   	push   %eax
ae4bed:	e8 10 15 00 00       	call   0xae6102
ae4bf2:	83 c4 10             	add    $0x10,%esp
ae4bf5:	83 a5 94 fa ff ff 00 	andl   $0x0,-0x56c(%ebp)
ae4bfc:	33 c9                	xor    %ecx,%ecx
ae4bfe:	6a 04                	push   $0x4
ae4c00:	58                   	pop    %eax
ae4c01:	41                   	inc    %ecx
ae4c02:	89 85 90 fa ff ff    	mov    %eax,-0x570(%ebp)
ae4c08:	89 8d 8c fa ff ff    	mov    %ecx,-0x574(%ebp)
ae4c0e:	89 8d 5c fc ff ff    	mov    %ecx,-0x3a4(%ebp)
ae4c14:	50                   	push   %eax
ae4c15:	8d 85 90 fa ff ff    	lea    -0x570(%ebp),%eax
ae4c1b:	50                   	push   %eax
ae4c1c:	8d 85 60 fc ff ff    	lea    -0x3a0(%ebp),%eax
ae4c22:	53                   	push   %ebx
ae4c23:	50                   	push   %eax
ae4c24:	e8 d9 14 00 00       	call   0xae6102
ae4c29:	83 c4 10             	add    $0x10,%esp
ae4c2c:	e9 5c 04 00 00       	jmp    0xae508d
ae4c31:	8b 85 b4 f8 ff ff    	mov    -0x74c(%ebp),%eax
ae4c37:	33 d2                	xor    %edx,%edx
ae4c39:	40                   	inc    %eax
ae4c3a:	8b f8                	mov    %eax,%edi
ae4c3c:	83 e0 1f             	and    $0x1f,%eax