ace7e4:	e8 4a fc ff ff       	call   0xace433
ace7e9:	83 c4 10             	add    $0x10,%esp
ace7ec:	5d                   	pop    %ebp
ace7ed:	c3                   	ret
ace7ee:	cc                   	int3
ace7ef:	cc                   	int3
ace7f0:	cc                   	int3
ace7f1:	cc                   	int3
ace7f2:	cc                   	int3
ace7f3:	cc                   	int3
ace7f4:	8b ff                	mov    %edi,%edi
ace7f6:	55                   	push   %ebp
ace7f7:	8b ec                	mov    %esp,%ebp
ace7f9:	8b 45 0c             	mov    0xc(%ebp),%eax
ace7fc:	8b 4d 08             	mov    0x8(%ebp),%ecx
ace7ff:	87 01                	xchg   %eax,(%ecx)
ace801:	5d                   	pop    %ebp
ace802:	c3                   	ret
ace803:	cc                   	int3
ace804:	cc                   	int3
ace805:	cc                   	int3
ace806:	a1 b8 2a d8 00       	mov    0xd82ab8,%eax
ace80b:	c3                   	ret
ace80c:	8b ff                	mov    %edi,%edi
ace80e:	55                   	push   %ebp
ace80f:	8b ec                	mov    %esp,%ebp
ace811:	51                   	push   %ecx
ace812:	a1 24 f6 d5 00       	mov    0xd5f624,%eax
ace817:	33 c5                	xor    %ebp,%eax
ace819:	89 45 fc             	mov    %eax,-0x4(%ebp)
ace81c:	a1 7c f9 d5 00       	mov    0xd5f97c,%eax
ace821:	83 f8 01             	cmp    $0x1,%eax
ace824:	75 4c                	jne    0xace872
ace826:	68 3c 11 c8 00       	push   $0xc8113c
ace82b:	ff 15 14 36 d8 00    	call   *0xd83614
ace831:	85 c0                	test   %eax,%eax
ace833:	75 0b                	jne    0xace840
ace835:	b9 7c f9 d5 00       	mov    $0xd5f97c,%ecx
ace83a:	87 01                	xchg   %eax,(%ecx)
ace83c:	33 c0                	xor    %eax,%eax
ace83e:	eb 32                	jmp    0xace872
ace840:	56                   	push   %esi
ace841:	68 bf 01 00 00       	push   $0x1bf
ace846:	50                   	push   %eax
ace847:	ff 15 20 36 d8 00    	call   *0xd83620
ace84d:	8b f0                	mov    %eax,%esi
ace84f:	85 f6                	test   %esi,%esi
ace851:	75 0b                	jne    0xace85e
ace853:	b9 7c f9 d5 00       	mov    $0xd5f97c,%ecx
ace858:	87 01                	xchg   %eax,(%ecx)
ace85a:	33 c0                	xor    %eax,%eax
ace85c:	eb 13                	jmp    0xace871
ace85e:	8b ce                	mov    %esi,%ecx
ace860:	ff 15 00 80 db 00    	call   *0xdb8000
ace866:	ff d6                	call   *%esi
ace868:	8b c8                	mov    %eax,%ecx
ace86a:	ba 7c f9 d5 00       	mov    $0xd5f97c,%edx
ace86f:	87 0a                	xchg   %ecx,(%edx)
ace871:	5e                   	pop    %esi
ace872:	8b 4d fc             	mov    -0x4(%ebp),%ecx
ace875:	33 cd                	xor    %ebp,%ecx
ace877:	e8 3a cf 94 ff       	call   0x41b7b6
ace87c:	8b e5                	mov    %ebp,%esp
ace87e:	5d                   	pop    %ebp
ace87f:	c3                   	ret
ace880:	cc                   	int3
ace881:	cc                   	int3
ace882:	cc                   	int3
ace883:	cc                   	int3
ace884:	cc                   	int3
ace885:	cc                   	int3
ace886:	cc                   	int3
ace887:	cc                   	int3
ace888:	cc                   	int3
ace889:	cc                   	int3
ace88a:	cc                   	int3
ace88b:	cc                   	int3
ace88c:	cc                   	int3
ace88d:	cc                   	int3
ace88e:	cc                   	int3
ace88f:	cc                   	int3
ace890:	cc                   	int3
ace891:	cc                   	int3
ace892:	cc                   	int3
ace893:	cc                   	int3
ace894:	cc                   	int3
ace895:	cc                   	int3
ace896:	cc                   	int3
ace897:	cc                   	int3
ace898:	cc                   	int3
ace899:	cc                   	int3
ace89a:	cc                   	int3
ace89b:	cc                   	int3
ace89c:	cc                   	int3
ace89d:	8b ff                	mov    %edi,%edi
ace89f:	55                   	push   %ebp
ace8a0:	8b ec                	mov    %esp,%ebp
ace8a2:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
ace8a6:	74 2d                	je     0xace8d5
ace8a8:	ff 75 08             	push   0x8(%ebp)
ace8ab:	6a 00                	push   $0x0
ace8ad:	ff 35 b8 2a d8 00    	push   0xd82ab8
ace8b3:	ff 15 e4 36 d8 00    	call   *0xd836e4
ace8b9:	85 c0                	test   %eax,%eax
ace8bb:	75 18                	jne    0xace8d5
ace8bd:	56                   	push   %esi
ace8be:	e8 ac ff 96 ff       	call   0x43e86f
ace8c3:	8b f0                	mov    %eax,%esi
ace8c5:	ff 15 d4 36 d8 00    	call   *0xd836d4
ace8cb:	50                   	push   %eax
ace8cc:	e8 5e b3 96 ff       	call   0x439c2f
ace8d1:	59                   	pop    %ecx
ace8d2:	89 06                	mov    %eax,(%esi)
ace8d4:	5e                   	pop    %esi
ace8d5:	5d                   	pop    %ebp
ace8d6:	c3                   	ret
ace8d7:	cc                   	int3
ace8d8:	cc                   	int3
ace8d9:	cc                   	int3
ace8da:	cc                   	int3
ace8db:	cc                   	int3
ace8dc:	cc                   	int3
ace8dd:	cc                   	int3
ace8de:	cc                   	int3
ace8df:	cc                   	int3
ace8e0:	cc                   	int3
ace8e1:	cc                   	int3
ace8e2:	cc                   	int3
ace8e3:	cc                   	int3
ace8e4:	cc                   	int3
ace8e5:	8b ff                	mov    %edi,%edi
ace8e7:	55                   	push   %ebp
ace8e8:	8b ec                	mov    %esp,%ebp
ace8ea:	56                   	push   %esi
ace8eb:	8b 75 08             	mov    0x8(%ebp),%esi
ace8ee:	83 fe e0             	cmp    $0xffffffe0,%esi
ace8f1:	77 30                	ja     0xace923
ace8f3:	85 f6                	test   %esi,%esi
ace8f5:	75 17                	jne    0xace90e
ace8f7:	46                   	inc    %esi
ace8f8:	eb 14                	jmp    0xace90e
ace8fa:	e8 a3 31 96 ff       	call   0x431aa2
ace8ff:	85 c0                	test   %eax,%eax
ace901:	74 20                	je     0xace923
ace903:	56                   	push   %esi
ace904:	e8 77 b7 96 ff       	call   0x43a080
ace909:	59                   	pop    %ecx
ace90a:	85 c0                	test   %eax,%eax
ace90c:	74 15                	je     0xace923
ace90e:	56                   	push   %esi
ace90f:	6a 00                	push   $0x0
ace911:	ff 35 b8 2a d8 00    	push   0xd82ab8
ace917:	ff 15 ec 36 d8 00    	call   *0xd836ec
ace91d:	85 c0                	test   %eax,%eax
ace91f:	74 d9                	je     0xace8fa
ace921:	eb 0d                	jmp    0xace930
ace923:	e8 47 ff 96 ff       	call   0x43e86f
ace928:	c7 00 0c 00 00 00    	movl   $0xc,(%eax)
ace92e:	33 c0                	xor    %eax,%eax
ace930:	5e                   	pop    %esi
ace931:	5d                   	pop    %ebp
ace932:	c3                   	ret
ace933:	cc                   	int3
ace934:	cc                   	int3
ace935:	cc                   	int3
ace936:	cc                   	int3
ace937:	cc                   	int3
ace938:	cc                   	int3
ace939:	cc                   	int3
ace93a:	cc                   	int3
ace93b:	cc                   	int3
ace93c:	cc                   	int3
ace93d:	cc                   	int3
ace93e:	cc                   	int3
ace93f:	cc                   	int3
ace940:	cc                   	int3
ace941:	cc                   	int3
ace942:	cc                   	int3
ace943:	cc                   	int3
ace944:	cc                   	int3
ace945:	cc                   	int3
ace946:	8b ff                	mov    %edi,%edi
ace948:	55                   	push   %ebp
ace949:	8b ec                	mov    %esp,%ebp
ace94b:	57                   	push   %edi
ace94c:	8b 7d 08             	mov    0x8(%ebp),%edi
ace94f:	85 ff                	test   %edi,%edi
ace951:	75 0b                	jne    0xace95e
ace953:	ff 75 0c             	push   0xc(%ebp)
ace956:	e8 74 d2 95 ff       	call   0x42bbcf
ace95b:	59                   	pop    %ecx
ace95c:	eb 24                	jmp    0xace982
ace95e:	56                   	push   %esi
ace95f:	8b 75 0c             	mov    0xc(%ebp),%esi
ace962:	85 f6                	test   %esi,%esi
ace964:	75 09                	jne    0xace96f
ace966:	57                   	push   %edi
ace967:	e8 7a 38 96 ff       	call   0x4321e6
ace96c:	59                   	pop    %ecx
ace96d:	eb 10                	jmp    0xace97f
ace96f:	83 fe e0             	cmp    $0xffffffe0,%esi
ace972:	76 25                	jbe    0xace999
ace974:	e8 f6 fe 96 ff       	call   0x43e86f
ace979:	c7 00 0c 00 00 00    	movl   $0xc,(%eax)
ace97f:	33 c0                	xor    %eax,%eax
ace981:	5e                   	pop    %esi
ace982:	5f                   	pop    %edi
ace983:	5d                   	pop    %ebp
ace984:	c3                   	ret
ace985:	e8 18 31 96 ff       	call   0x431aa2
ace98a:	85 c0                	test   %eax,%eax
ace98c:	74 e6                	je     0xace974
ace98e:	56                   	push   %esi
ace98f:	e8 ec b6 96 ff       	call   0x43a080
ace994:	59                   	pop    %ecx
ace995:	85 c0                	test   %eax,%eax
ace997:	74 db                	je     0xace974
ace999:	56                   	push   %esi
ace99a:	57                   	push   %edi
ace99b:	6a 00                	push   $0x0
ace99d:	ff 35 b8 2a d8 00    	push   0xd82ab8
ace9a3:	ff 15 e8 36 d8 00    	call   *0xd836e8
ace9a9:	85 c0                	test   %eax,%eax
ace9ab:	74 d8                	je     0xace985
ace9ad:	eb d2                	jmp    0xace981
ace9af:	cc                   	int3
ace9b0:	cc                   	int3
ace9b1:	cc                   	int3
ace9b2:	cc                   	int3
ace9b3:	cc                   	int3
ace9b4:	cc                   	int3
ace9b5:	cc                   	int3
ace9b6:	cc                   	int3
ace9b7:	cc                   	int3
ace9b8:	cc                   	int3
ace9b9:	cc                   	int3
ace9ba:	cc                   	int3
ace9bb:	cc                   	int3
ace9bc:	cc                   	int3
ace9bd:	cc                   	int3
ace9be:	cc                   	int3
ace9bf:	cc                   	int3
ace9c0:	cc                   	int3
ace9c1:	cc                   	int3
ace9c2:	cc                   	int3
ace9c3:	cc                   	int3
ace9c4:	cc                   	int3
ace9c5:	cc                   	int3
ace9c6:	cc                   	int3
ace9c7:	cc                   	int3
ace9c8:	cc                   	int3
ace9c9:	8b ff                	mov    %edi,%edi
ace9cb:	55                   	push   %ebp
ace9cc:	8b ec                	mov    %esp,%ebp
ace9ce:	83 ec 0c             	sub    $0xc,%esp
ace9d1:	56                   	push   %esi
ace9d2:	57                   	push   %edi
ace9d3:	bf ff ff 00 00       	mov    $0xffff,%edi
ace9d8:	57                   	push   %edi
ace9d9:	68 3f 13 00 00       	push   $0x133f
ace9de:	e8 84 a5 93 ff       	call   0x408f67
ace9e3:	dd 45 08             	fldl   0x8(%ebp)
ace9e6:	8b f0                	mov    %eax,%esi
ace9e8:	59                   	pop    %ecx
ace9e9:	59                   	pop    %ecx
ace9ea:	0f b7 4d 0e          	movzwl 0xe(%ebp),%ecx
ace9ee:	b8 f0 7f 00 00       	mov    $0x7ff0,%eax
ace9f3:	23 c8                	and    %eax,%ecx
ace9f5:	66 3b c8             	cmp    %ax,%cx
ace9f8:	75 69                	jne    0xacea63
ace9fa:	51                   	push   %ecx
ace9fb:	51                   	push   %ecx
ace9fc:	dd 1c 24             	fstpl  (%esp)
ace9ff:	e8 d5 a1 93 ff       	call   0x408bd9
acea04:	59                   	pop    %ecx
acea05:	59                   	pop    %ecx
acea06:	85 c0                	test   %eax,%eax
acea08:	7e 2d                	jle    0xacea37
acea0a:	83 f8 02             	cmp    $0x2,%eax
acea0d:	7e 61                	jle    0xacea70
acea0f:	83 f8 03             	cmp    $0x3,%eax
acea12:	75 23                	jne    0xacea37
acea14:	db 45 10             	fildl  0x10(%ebp)
acea17:	83 ec 10             	sub    $0x10,%esp
acea1a:	dd 5d f4             	fstpl  -0xc(%ebp)
acea1d:	dd 45 f4             	fldl   -0xc(%ebp)
acea20:	dd 5c 24 08          	fstpl  0x8(%esp)
acea24:	dd 45 08             	fldl   0x8(%ebp)
acea27:	dd 1c 24             	fstpl  (%esp)
acea2a:	e8 5a 1e 94 ff       	call   0x410889
acea2f:	83 c4 10             	add    $0x10,%esp
acea32:	e9 73 01 00 00       	jmp    0xacebaa
acea37:	dd 45 08             	fldl   0x8(%ebp)
acea3a:	dd 05 00 b8 bd 00    	fldl   0xbdb800
acea40:	d8 c1                	fadd   %st(1),%st
acea42:	56                   	push   %esi
acea43:	83 ec 18             	sub    $0x18,%esp
acea46:	dd 5c 24 10          	fstpl  0x10(%esp)
acea4a:	db 45 10             	fildl  0x10(%ebp)
acea4d:	dd 5d f4             	fstpl  -0xc(%ebp)
acea50:	dd 45 f4             	fldl   -0xc(%ebp)
acea53:	dd 5c 24 08          	fstpl  0x8(%esp)
acea57:	dd 1c 24             	fstpl  (%esp)
acea5a:	6a 19                	push   $0x19
acea5c:	6a 08                	push   $0x8
acea5e:	e9 3f 01 00 00       	jmp    0xaceba2
acea63:	d9 ee                	fldz
acea65:	dd e9                	fucomp %st(1)
acea67:	df e0                	fnstsw %ax
acea69:	f6 c4 44             	test   $0x44,%ah
acea6c:	7a 13                	jp     0xacea81
acea6e:	dd d8                	fstp   %st(0)
acea70:	57                   	push   %edi
acea71:	56                   	push   %esi
acea72:	e8 f0 a4 93 ff       	call   0x408f67
acea77:	dd 45 08             	fldl   0x8(%ebp)
acea7a:	59                   	pop    %ecx
acea7b:	59                   	pop    %ecx
acea7c:	e9 29 01 00 00       	jmp    0xacebaa
acea81:	8d 45 fc             	lea    -0x4(%ebp),%eax
acea84:	50                   	push   %eax
acea85:	51                   	push   %ecx
acea86:	51                   	push   %ecx
acea87:	dd 1c 24             	fstpl  (%esp)
acea8a:	e8 4a fb 93 ff       	call   0x40e5d9
acea8f:	8b 4d 10             	mov    0x10(%ebp),%ecx
acea92:	83 c4 0c             	add    $0xc,%esp
acea95:	8b 55 fc             	mov    -0x4(%ebp),%edx
acea98:	85 c9                	test   %ecx,%ecx
acea9a:	79 0d                	jns    0xaceaa9
acea9c:	b8 00 00 00 80       	mov    $0x80000000,%eax
aceaa1:	2b c1                	sub    %ecx,%eax
aceaa3:	3b d0                	cmp    %eax,%edx
aceaa5:	7c 5a                	jl     0xaceb01
aceaa7:	eb 0f                	jmp    0xaceab8
aceaa9:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
aceaae:	2b c1                	sub    %ecx,%eax
aceab0:	3b d0                	cmp    %eax,%edx
aceab2:	0f 8f b8 00 00 00    	jg     0xaceb70
aceab8:	8d 04 0a             	lea    (%edx,%ecx,1),%eax
aceabb:	3d 00 0a 00 00       	cmp    $0xa00,%eax
aceac0:	0f 8f aa 00 00 00    	jg     0xaceb70
aceac6:	3d 00 04 00 00       	cmp    $0x400,%eax
aceacb:	7e 2d                	jle    0xaceafa
aceacd:	05 00 fa ff ff       	add    $0xfffffa00,%eax
acead2:	50                   	push   %eax
acead3:	51                   	push   %ecx
acead4:	51                   	push   %ecx
acead5:	dd 1c 24             	fstpl  (%esp)
acead8:	e8 41 6b 93 ff       	call   0x40561e