ad3860:	58                   	pop    %eax
ad3861:	5d                   	pop    %ebp
ad3862:	c3                   	ret
ad3863:	66 8b 4d 0e          	mov    0xe(%ebp),%cx
ad3867:	ba f8 7f 00 00       	mov    $0x7ff8,%edx
ad386c:	66 23 ca             	and    %dx,%cx
ad386f:	66 3b ca             	cmp    %dx,%cx
ad3872:	75 04                	jne    0xad3878
ad3874:	6a 03                	push   $0x3
ad3876:	eb e8                	jmp    0xad3860
ad3878:	ba f0 7f 00 00       	mov    $0x7ff0,%edx
ad387d:	66 3b ca             	cmp    %dx,%cx
ad3880:	75 11                	jne    0xad3893
ad3882:	f7 45 0c ff ff 07 00 	testl  $0x7ffff,0xc(%ebp)
ad3889:	75 04                	jne    0xad388f
ad388b:	85 c0                	test   %eax,%eax
ad388d:	74 04                	je     0xad3893
ad388f:	6a 04                	push   $0x4
ad3891:	eb cd                	jmp    0xad3860
ad3893:	33 c0                	xor    %eax,%eax
ad3895:	5d                   	pop    %ebp
ad3896:	c3                   	ret
ad3897:	cc                   	int3
ad3898:	cc                   	int3
ad3899:	cc                   	int3
ad389a:	cc                   	int3
ad389b:	cc                   	int3
ad389c:	cc                   	int3
ad389d:	cc                   	int3
ad389e:	cc                   	int3
ad389f:	cc                   	int3
ad38a0:	cc                   	int3
ad38a1:	cc                   	int3
ad38a2:	cc                   	int3
ad38a3:	cc                   	int3
ad38a4:	cc                   	int3
ad38a5:	cc                   	int3
ad38a6:	cc                   	int3
ad38a7:	cc                   	int3
ad38a8:	cc                   	int3
ad38a9:	cc                   	int3
ad38aa:	cc                   	int3
ad38ab:	cc                   	int3
ad38ac:	cc                   	int3
ad38ad:	cc                   	int3
ad38ae:	83 3d a8 10 d8 00 01 	cmpl   $0x1,0xd810a8
ad38b5:	56                   	push   %esi
ad38b6:	7c 11                	jl     0xad38c9
ad38b8:	e8 81 8e 93 ff       	call   0x40c73e
ad38bd:	8b f0                	mov    %eax,%esi
ad38bf:	83 e6 3f             	and    $0x3f,%esi
ad38c2:	e8 be 85 96 ff       	call   0x43be85
ad38c7:	eb 02                	jmp    0xad38cb
ad38c9:	33 f6                	xor    %esi,%esi
ad38cb:	8b c6                	mov    %esi,%eax
ad38cd:	5e                   	pop    %esi
ad38ce:	c3                   	ret
ad38cf:	cc                   	int3
ad38d0:	cc                   	int3
ad38d1:	cc                   	int3
ad38d2:	cc                   	int3
ad38d3:	cc                   	int3
ad38d4:	cc                   	int3
ad38d5:	cc                   	int3
ad38d6:	cc                   	int3
ad38d7:	8b ff                	mov    %edi,%edi
ad38d9:	55                   	push   %ebp
ad38da:	8b ec                	mov    %esp,%ebp
ad38dc:	83 3d a8 10 d8 00 01 	cmpl   $0x1,0xd810a8
ad38e3:	56                   	push   %esi
ad38e4:	7c 25                	jl     0xad390b
ad38e6:	e8 53 8e 93 ff       	call   0x40c73e
ad38eb:	8b 55 0c             	mov    0xc(%ebp),%edx
ad38ee:	8b f0                	mov    %eax,%esi
ad38f0:	8b 4d 08             	mov    0x8(%ebp),%ecx
ad38f3:	f7 d2                	not    %edx
ad38f5:	23 4d 0c             	and    0xc(%ebp),%ecx
ad38f8:	81 ca 7f 80 ff ff    	or     $0xffff807f,%edx
ad38fe:	23 d6                	and    %esi,%edx
ad3900:	0b d1                	or     %ecx,%edx
ad3902:	52                   	push   %edx
ad3903:	e8 e0 c4 94 ff       	call   0x41fde8
ad3908:	59                   	pop    %ecx
ad3909:	eb 02                	jmp    0xad390d
ad390b:	33 f6                	xor    %esi,%esi
ad390d:	8b c6                	mov    %esi,%eax
ad390f:	5e                   	pop    %esi
ad3910:	5d                   	pop    %ebp
ad3911:	c3                   	ret
ad3912:	cc                   	int3
ad3913:	cc                   	int3
ad3914:	cc                   	int3
ad3915:	cc                   	int3
ad3916:	cc                   	int3
ad3917:	cc                   	int3
ad3918:	cc                   	int3
ad3919:	cc                   	int3
ad391a:	cc                   	int3
ad391b:	cc                   	int3
ad391c:	cc                   	int3
ad391d:	cc                   	int3
ad391e:	cc                   	int3
ad391f:	cc                   	int3
ad3920:	8b ff                	mov    %edi,%edi
ad3922:	55                   	push   %ebp
ad3923:	8b ec                	mov    %esp,%ebp
ad3925:	51                   	push   %ecx
ad3926:	83 3d a8 10 d8 00 01 	cmpl   $0x1,0xd810a8
ad392d:	7c 0c                	jl     0xad393b
ad392f:	0f ae 5d fc          	stmxcsr -0x4(%ebp)
ad3933:	83 65 fc c0          	andl   $0xffffffc0,-0x4(%ebp)
ad3937:	0f ae 55 fc          	ldmxcsr -0x4(%ebp)
ad393b:	8b e5                	mov    %ebp,%esp
ad393d:	5d                   	pop    %ebp
ad393e:	c3                   	ret
ad393f:	cc                   	int3
ad3940:	cc                   	int3
ad3941:	cc                   	int3
ad3942:	cc                   	int3
ad3943:	cc                   	int3
ad3944:	cc                   	int3
ad3945:	cc                   	int3
ad3946:	8b ff                	mov    %edi,%edi
ad3948:	55                   	push   %ebp
ad3949:	8b ec                	mov    %esp,%ebp
ad394b:	51                   	push   %ecx
ad394c:	83 3d a8 10 d8 00 01 	cmpl   $0x1,0xd810a8
ad3953:	7c 09                	jl     0xad395e
ad3955:	0f ae 5d fc          	stmxcsr -0x4(%ebp)
ad3959:	8b 45 fc             	mov    -0x4(%ebp),%eax
ad395c:	eb 02                	jmp    0xad3960
ad395e:	33 c0                	xor    %eax,%eax
ad3960:	8b e5                	mov    %ebp,%esp
ad3962:	5d                   	pop    %ebp
ad3963:	c3                   	ret
ad3964:	cc                   	int3
ad3965:	cc                   	int3
ad3966:	cc                   	int3
ad3967:	cc                   	int3
ad3968:	cc                   	int3
ad3969:	cc                   	int3
ad396a:	cc                   	int3
ad396b:	6a 08                	push   $0x8
ad396d:	68 80 c4 d4 00       	push   $0xd4c480
ad3972:	e8 fd 09 96 ff       	call   0x434374
ad3977:	83 3d a8 10 d8 00 01 	cmpl   $0x1,0xd810a8
ad397e:	7c 5b                	jl     0xad39db
ad3980:	8b 45 08             	mov    0x8(%ebp),%eax
ad3983:	a8 40                	test   $0x40,%al
ad3985:	74 4a                	je     0xad39d1
ad3987:	83 3d 88 fb d5 00 00 	cmpl   $0x0,0xd5fb88
ad398e:	74 41                	je     0xad39d1
ad3990:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
ad3994:	0f ae 55 08          	ldmxcsr 0x8(%ebp)
ad3998:	eb 2e                	jmp    0xad39c8
ad399a:	8b 45 ec             	mov    -0x14(%ebp),%eax
ad399d:	8b 00                	mov    (%eax),%eax
ad399f:	81 38 05 00 00 c0    	cmpl   $0xc0000005,(%eax)
ad39a5:	74 0b                	je     0xad39b2
ad39a7:	81 38 1d 00 00 c0    	cmpl   $0xc000001d,(%eax)
ad39ad:	74 03                	je     0xad39b2
ad39af:	33 c0                	xor    %eax,%eax
ad39b1:	c3                   	ret
ad39b2:	33 c0                	xor    %eax,%eax
ad39b4:	40                   	inc    %eax
ad39b5:	c3                   	ret
ad39b6:	8b 65 e8             	mov    -0x18(%ebp),%esp
ad39b9:	83 25 88 fb d5 00 00 	andl   $0x0,0xd5fb88
ad39c0:	83 65 08 bf          	andl   $0xffffffbf,0x8(%ebp)
ad39c4:	0f ae 55 08          	ldmxcsr 0x8(%ebp)
ad39c8:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
ad39cf:	eb 0a                	jmp    0xad39db
ad39d1:	83 e0 bf             	and    $0xffffffbf,%eax
ad39d4:	89 45 08             	mov    %eax,0x8(%ebp)
ad39d7:	0f ae 55 08          	ldmxcsr 0x8(%ebp)
ad39db:	e8 d5 5f 95 ff       	call   0x4299b5
ad39e0:	c3                   	ret
ad39e1:	cc                   	int3
ad39e2:	cc                   	int3
ad39e3:	cc                   	int3
ad39e4:	cc                   	int3
ad39e5:	cc                   	int3
ad39e6:	cc                   	int3
ad39e7:	cc                   	int3
ad39e8:	cc                   	int3
ad39e9:	cc                   	int3
ad39ea:	cc                   	int3
ad39eb:	cc                   	int3
ad39ec:	cc                   	int3
ad39ed:	cc                   	int3
ad39ee:	cc                   	int3
ad39ef:	cc                   	int3
ad39f0:	cc                   	int3
ad39f1:	cc                   	int3
ad39f2:	cc                   	int3
ad39f3:	cc                   	int3
ad39f4:	cc                   	int3
ad39f5:	cc                   	int3
ad39f6:	cc                   	int3
ad39f7:	cc                   	int3
ad39f8:	cc                   	int3
ad39f9:	cc                   	int3
ad39fa:	cc                   	int3
ad39fb:	cc                   	int3
ad39fc:	cc                   	int3
ad39fd:	cc                   	int3
ad39fe:	8b ff                	mov    %edi,%edi
ad3a00:	55                   	push   %ebp
ad3a01:	8b ec                	mov    %esp,%ebp
ad3a03:	e8 36 8d 93 ff       	call   0x40c73e
ad3a08:	8b 4d 08             	mov    0x8(%ebp),%ecx
ad3a0b:	83 e1 3f             	and    $0x3f,%ecx
ad3a0e:	0b c1                	or     %ecx,%eax
ad3a10:	50                   	push   %eax
ad3a11:	e8 d2 c3 94 ff       	call   0x41fde8
ad3a16:	59                   	pop    %ecx
ad3a17:	5d                   	pop    %ebp
ad3a18:	c3                   	ret
ad3a19:	cc                   	int3
ad3a1a:	cc                   	int3
ad3a1b:	cc                   	int3
ad3a1c:	cc                   	int3
ad3a1d:	cc                   	int3
ad3a1e:	cc                   	int3
ad3a1f:	83 3d a8 10 d8 00 01 	cmpl   $0x1,0xd810a8
ad3a26:	7c 09                	jl     0xad3a31
ad3a28:	e8 11 8d 93 ff       	call   0x40c73e
ad3a2d:	83 e0 3f             	and    $0x3f,%eax
ad3a30:	c3                   	ret
ad3a31:	33 c0                	xor    %eax,%eax
ad3a33:	c3                   	ret
ad3a34:	cc                   	int3
ad3a35:	cc                   	int3
ad3a36:	cc                   	int3
ad3a37:	cc                   	int3
ad3a38:	cc                   	int3
ad3a39:	8b ff                	mov    %edi,%edi
ad3a3b:	55                   	push   %ebp
ad3a3c:	8b ec                	mov    %esp,%ebp
ad3a3e:	51                   	push   %ecx
ad3a3f:	dd 7d fc             	fnstsw -0x4(%ebp)
ad3a42:	db e2                	fnclex
ad3a44:	0f bf 45 fc          	movswl -0x4(%ebp),%eax
ad3a48:	8b e5                	mov    %ebp,%esp
ad3a4a:	5d                   	pop    %ebp
ad3a4b:	c3                   	ret
ad3a4c:	cc                   	int3
ad3a4d:	cc                   	int3
ad3a4e:	cc                   	int3
ad3a4f:	cc                   	int3
ad3a50:	8b ff                	mov    %edi,%edi
ad3a52:	55                   	push   %ebp
ad3a53:	8b ec                	mov    %esp,%ebp
ad3a55:	51                   	push   %ecx
ad3a56:	51                   	push   %ecx
ad3a57:	9b d9 7d fc          	fstcw  -0x4(%ebp)
ad3a5b:	8b 4d 0c             	mov    0xc(%ebp),%ecx
ad3a5e:	8b 45 08             	mov    0x8(%ebp),%eax
ad3a61:	f7 d1                	not    %ecx
ad3a63:	66 23 4d fc          	and    -0x4(%ebp),%cx
ad3a67:	23 45 0c             	and    0xc(%ebp),%eax
ad3a6a:	66 0b c8             	or     %ax,%cx
ad3a6d:	66 89 4d f8          	mov    %cx,-0x8(%ebp)
ad3a71:	d9 6d f8             	fldcw  -0x8(%ebp)
ad3a74:	0f bf 45 fc          	movswl -0x4(%ebp),%eax
ad3a78:	8b e5                	mov    %ebp,%esp
ad3a7a:	5d                   	pop    %ebp
ad3a7b:	c3                   	ret
ad3a7c:	cc                   	int3
ad3a7d:	cc                   	int3
ad3a7e:	cc                   	int3
ad3a7f:	cc                   	int3
ad3a80:	cc                   	int3
ad3a81:	cc                   	int3
ad3a82:	cc                   	int3
ad3a83:	cc                   	int3
ad3a84:	cc                   	int3
ad3a85:	cc                   	int3
ad3a86:	cc                   	int3
ad3a87:	8b ff                	mov    %edi,%edi
ad3a89:	55                   	push   %ebp
ad3a8a:	8b ec                	mov    %esp,%ebp
ad3a8c:	8b 4d 08             	mov    0x8(%ebp),%ecx
ad3a8f:	83 ec 0c             	sub    $0xc,%esp
ad3a92:	f6 c1 01             	test   $0x1,%cl
ad3a95:	74 0a                	je     0xad3aa1
ad3a97:	db 2d dc 1f c8 00    	fldt   0xc81fdc
ad3a9d:	db 5d fc             	fistpl -0x4(%ebp)
ad3aa0:	9b                   	fwait
ad3aa1:	f6 c1 08             	test   $0x8,%cl
ad3aa4:	74 10                	je     0xad3ab6
ad3aa6:	9b df e0             	fstsw  %ax
ad3aa9:	db 2d dc 1f c8 00    	fldt   0xc81fdc
ad3aaf:	dd 5d f4             	fstpl  -0xc(%ebp)
ad3ab2:	9b 9b df e0          	fstsw  %ax
ad3ab6:	f6 c1 10             	test   $0x10,%cl
ad3ab9:	74 0a                	je     0xad3ac5
ad3abb:	db 2d ec 1f c8 00    	fldt   0xc81fec
ad3ac1:	dd 5d f4             	fstpl  -0xc(%ebp)
ad3ac4:	9b                   	fwait
ad3ac5:	f6 c1 04             	test   $0x4,%cl
ad3ac8:	74 09                	je     0xad3ad3
ad3aca:	d9 ee                	fldz
ad3acc:	d9 e8                	fld1
ad3ace:	de f1                	fdivp  %st,%st(1)
ad3ad0:	dd d8                	fstp   %st(0)
ad3ad2:	9b                   	fwait
ad3ad3:	f6 c1 20             	test   $0x20,%cl
ad3ad6:	74 06                	je     0xad3ade
ad3ad8:	d9 eb                	fldpi
ad3ada:	dd 5d f4             	fstpl  -0xc(%ebp)
ad3add:	9b                   	fwait
ad3ade:	8b e5                	mov    %ebp,%esp
ad3ae0:	5d                   	pop    %ebp
ad3ae1:	c3                   	ret
ad3ae2:	cc                   	int3
ad3ae3:	cc                   	int3
ad3ae4:	cc                   	int3
ad3ae5:	cc                   	int3
ad3ae6:	cc                   	int3
ad3ae7:	cc                   	int3
ad3ae8:	cc                   	int3
ad3ae9:	cc                   	int3
ad3aea:	cc                   	int3
ad3aeb:	cc                   	int3
ad3aec:	cc                   	int3
ad3aed:	cc                   	int3
ad3aee:	cc                   	int3
ad3aef:	cc                   	int3
ad3af0:	cc                   	int3
ad3af1:	cc                   	int3
ad3af2:	cc                   	int3
ad3af3:	cc                   	int3
ad3af4:	cc                   	int3
ad3af5:	cc                   	int3
ad3af6:	cc                   	int3
ad3af7:	cc                   	int3
ad3af8:	8b ff                	mov    %edi,%edi
ad3afa:	55                   	push   %ebp
ad3afb:	8b ec                	mov    %esp,%ebp
ad3afd:	51                   	push   %ecx
ad3afe:	9b dd 7d fc          	fstsw  -0x4(%ebp)
ad3b02:	0f bf 45 fc          	movswl -0x4(%ebp),%eax
ad3b06:	8b e5                	mov    %ebp,%esp
ad3b08:	5d                   	pop    %ebp
ad3b09:	c3                   	ret
ad3b0a:	cc                   	int3
ad3b0b:	cc                   	int3
ad3b0c:	cc                   	int3
ad3b0d:	cc                   	int3