4686d3:	6a 03                	push   $0x3
4686d5:	5f                   	pop    %edi
4686d6:	89 7b 0c             	mov    %edi,0xc(%ebx)
4686d9:	dd 1b                	fstpl  (%ebx)
4686db:	a8 20                	test   $0x20,%al
4686dd:	0f 84 ef 01 00 00    	je     0x4688d2
4686e3:	8b cb                	mov    %ebx,%ecx
4686e5:	e8 36 13 fa ff       	call   0x409a20
4686ea:	89 7b 0c             	mov    %edi,0xc(%ebx)
4686ed:	dd 05 b0 4b 4a 00    	fldl   0x4a4bb0
4686f3:	eb 69                	jmp    0x46875e
4686f5:	f7 c6 38 00 01 00    	test   $0x10038,%esi
4686fb:	75 49                	jne    0x468746
4686fd:	e8 1e 13 fa ff       	call   0x409a20
468702:	d9 ee                	fldz
468704:	c7 43 0c 03 00 00 00 	movl   $0x3,0xc(%ebx)
46870b:	eb 51                	jmp    0x46875e
46870d:	ba 04 02 00 00       	mov    $0x204,%edx
468712:	85 f2                	test   %esi,%edx
468714:	74 6e                	je     0x468784
468716:	85 c1                	test   %eax,%ecx
468718:	74 6a                	je     0x468784
46871a:	8b cf                	mov    %edi,%ecx
46871c:	e8 d7 15 fa ff       	call   0x409cf8
468721:	51                   	push   %ecx
468722:	51                   	push   %ecx
468723:	dd 1c 24             	fstpl  (%esp)
468726:	e8 c5 c9 fb ff       	call   0x4250f0
46872b:	d9 e8                	fld1
46872d:	d8 d1                	fcom   %st(1)
46872f:	df e0                	fnstsw %ax
468731:	59                   	pop    %ecx
468732:	59                   	pop    %ecx
468733:	8b cb                	mov    %ebx,%ecx
468735:	f6 c4 41             	test   $0x41,%ah
468738:	75 2b                	jne    0x468765
46873a:	dd d9                	fstp   %st(1)
46873c:	f7 c6 00 02 00 00    	test   $0x200,%esi
468742:	dd d8                	fstp   %st(0)
468744:	75 b7                	jne    0x4686fd
468746:	dd 05 00 f0 4b 00    	fldl   0x4bf000
46874c:	dd 5d f8             	fstpl  -0x8(%ebp)
46874f:	e8 cc 12 fa ff       	call   0x409a20
468754:	c7 43 0c 03 00 00 00 	movl   $0x3,0xc(%ebx)
46875b:	dd 45 f8             	fldl   -0x8(%ebp)
46875e:	dd 1b                	fstpl  (%ebx)
468760:	e9 6d 01 00 00       	jmp    0x4688d2
468765:	de d9                	fcompp
468767:	df e0                	fnstsw %ax
468769:	f6 c4 05             	test   $0x5,%ah
46876c:	7a 08                	jp     0x468776
46876e:	f7 c6 00 02 00 00    	test   $0x200,%esi
468774:	eb 85                	jmp    0x4686fb
468776:	dd 05 00 f0 4b 00    	fldl   0x4bf000
46877c:	dc 0d a0 4b 4a 00    	fmull  0x4a4ba0
468782:	eb c8                	jmp    0x46874c
468784:	85 c2                	test   %eax,%edx
468786:	74 43                	je     0x4687cb
468788:	85 f1                	test   %esi,%ecx
46878a:	74 3f                	je     0x4687cb
46878c:	8b cb                	mov    %ebx,%ecx
46878e:	a9 00 02 00 00       	test   $0x200,%eax
468793:	75 2b                	jne    0x4687c0
468795:	f7 c6 00 00 10 00    	test   $0x100000,%esi
46879b:	74 23                	je     0x4687c0
46879d:	f7 c6 00 00 01 00    	test   $0x10000,%esi
4687a3:	74 11                	je     0x4687b6
4687a5:	e8 76 12 fa ff       	call   0x409a20
4687aa:	c7 43 0c 03 00 00 00 	movl   $0x3,0xc(%ebx)
4687b1:	e9 37 ff ff ff       	jmp    0x4686ed
4687b6:	dd 05 00 f0 4b 00    	fldl   0x4bf000
4687bc:	d9 e0                	fchs
4687be:	eb 8c                	jmp    0x46874c
4687c0:	f7 c6 38 00 01 00    	test   $0x10038,%esi
4687c6:	e9 79 ff ff ff       	jmp    0x468744
4687cb:	a9 38 00 01 00       	test   $0x10038,%eax
4687d0:	74 66                	je     0x468838
4687d2:	f7 c6 00 00 ff ff    	test   $0xffff0000,%esi
4687d8:	74 5e                	je     0x468838
4687da:	8d 4d 0c             	lea    0xc(%ebp),%ecx
4687dd:	e8 16 15 fa ff       	call   0x409cf8
4687e2:	51                   	push   %ecx
4687e3:	51                   	push   %ecx
4687e4:	dd 1c 24             	fstpl  (%esp)
4687e7:	8b cf                	mov    %edi,%ecx
4687e9:	e8 0a 15 fa ff       	call   0x409cf8
4687ee:	51                   	push   %ecx
4687ef:	51                   	push   %ecx
4687f0:	dd 1c 24             	fstpl  (%esp)
4687f3:	e8 f8 c8 fb ff       	call   0x4250f0
4687f8:	dd 1c 24             	fstpl  (%esp)
4687fb:	e8 b0 c9 fb ff       	call   0x4251b0
468800:	83 c4 10             	add    $0x10,%esp
468803:	8b cb                	mov    %ebx,%ecx
468805:	dd 5d f8             	fstpl  -0x8(%ebp)
468808:	e8 13 12 fa ff       	call   0x409a20
46880d:	dd 45 f8             	fldl   -0x8(%ebp)
468810:	6a 03                	push   $0x3
468812:	5f                   	pop    %edi
468813:	89 7b 0c             	mov    %edi,0xc(%ebx)
468816:	dd 1b                	fstpl  (%ebx)
468818:	f7 c6 00 00 10 00    	test   $0x100000,%esi
46881e:	74 4f                	je     0x46886f
468820:	8b cb                	mov    %ebx,%ecx
468822:	e8 d1 14 fa ff       	call   0x409cf8
468827:	d9 e0                	fchs
468829:	8b cb                	mov    %ebx,%ecx
46882b:	dd 5d f8             	fstpl  -0x8(%ebp)
46882e:	e8 ed 11 fa ff       	call   0x409a20
468833:	89 7b 0c             	mov    %edi,0xc(%ebx)
468836:	eb 32                	jmp    0x46886a
468838:	8d 4d 0c             	lea    0xc(%ebp),%ecx
46883b:	e8 b8 14 fa ff       	call   0x409cf8
468840:	51                   	push   %ecx
468841:	51                   	push   %ecx
468842:	dd 1c 24             	fstpl  (%esp)
468845:	8b cf                	mov    %edi,%ecx
468847:	e8 ac 14 fa ff       	call   0x409cf8
46884c:	51                   	push   %ecx
46884d:	51                   	push   %ecx
46884e:	dd 1c 24             	fstpl  (%esp)
468851:	e8 5a c9 fb ff       	call   0x4251b0
468856:	83 c4 10             	add    $0x10,%esp
468859:	8b cb                	mov    %ebx,%ecx
46885b:	dd 5d f8             	fstpl  -0x8(%ebp)
46885e:	e8 bd 11 fa ff       	call   0x409a20
468863:	c7 43 0c 03 00 00 00 	movl   $0x3,0xc(%ebx)
46886a:	dd 45 f8             	fldl   -0x8(%ebp)
46886d:	dd 1b                	fstpl  (%ebx)
46886f:	8b cb                	mov    %ebx,%ecx
468871:	e8 6f 00 00 00       	call   0x4688e5
468876:	a9 00 00 ff ff       	test   $0xffff0000,%eax
46887b:	74 55                	je     0x4688d2
46887d:	8b 45 08             	mov    0x8(%ebp),%eax
468880:	0f b7 c0             	movzwl %ax,%eax
468883:	85 c0                	test   %eax,%eax
468885:	75 4b                	jne    0x4688d2
468887:	66 85 f6             	test   %si,%si
46888a:	75 46                	jne    0x4688d2
46888c:	8b cb                	mov    %ebx,%ecx
46888e:	e8 65 14 fa ff       	call   0x409cf8
468893:	dc 1d d0 ba 4b 00    	fcompl 0x4bbad0
468899:	df e0                	fnstsw %ax
46889b:	f6 c4 05             	test   $0x5,%ah
46889e:	7a 32                	jp     0x4688d2
4688a0:	8b cb                	mov    %ebx,%ecx
4688a2:	e8 51 14 fa ff       	call   0x409cf8
4688a7:	dc 1d e0 ba 4b 00    	fcompl 0x4bbae0
4688ad:	df e0                	fnstsw %ax
4688af:	f6 c4 41             	test   $0x41,%ah
4688b2:	75 1e                	jne    0x4688d2
4688b4:	8b cb                	mov    %ebx,%ecx
4688b6:	e8 8b 14 fa ff       	call   0x409d46
4688bb:	8b cb                	mov    %ebx,%ecx
4688bd:	8b f0                	mov    %eax,%esi
4688bf:	8b fa                	mov    %edx,%edi
4688c1:	e8 5a 11 fa ff       	call   0x409a20
4688c6:	c7 43 0c 02 00 00 00 	movl   $0x2,0xc(%ebx)
4688cd:	89 33                	mov    %esi,(%ebx)
4688cf:	89 7b 04             	mov    %edi,0x4(%ebx)
4688d2:	8d 4d 0c             	lea    0xc(%ebp),%ecx
4688d5:	e8 46 11 fa ff       	call   0x409a20
4688da:	5f                   	pop    %edi
4688db:	5e                   	pop    %esi
4688dc:	8b c3                	mov    %ebx,%eax
4688de:	5b                   	pop    %ebx
4688df:	8b e5                	mov    %ebp,%esp
4688e1:	5d                   	pop    %ebp
4688e2:	c2 14 00             	ret    $0x14
4688e5:	55                   	push   %ebp
4688e6:	8b ec                	mov    %esp,%ebp
4688e8:	51                   	push   %ecx
4688e9:	51                   	push   %ecx
4688ea:	56                   	push   %esi
4688eb:	57                   	push   %edi
4688ec:	8b f9                	mov    %ecx,%edi
4688ee:	33 f6                	xor    %esi,%esi
4688f0:	83 7f 0c 03          	cmpl   $0x3,0xc(%edi)
4688f4:	75 3d                	jne    0x468933
4688f6:	dd 07                	fldl   (%edi)
4688f8:	51                   	push   %ecx
4688f9:	51                   	push   %ecx
4688fa:	dd 1c 24             	fstpl  (%esp)
4688fd:	e8 46 c7 fb ff       	call   0x425048
468902:	8b f0                	mov    %eax,%esi
468904:	59                   	pop    %ecx
468905:	59                   	pop    %ecx
468906:	f7 c6 f8 01 00 00    	test   $0x1f8,%esi
46890c:	74 7b                	je     0x468989
46890e:	dd 07                	fldl   (%edi)
468910:	e8 f1 2c fd ff       	call   0x43b606
468915:	8b c8                	mov    %eax,%ecx
468917:	89 55 fc             	mov    %edx,-0x4(%ebp)
46891a:	89 4d f8             	mov    %ecx,-0x8(%ebp)
46891d:	df 6d f8             	fildll -0x8(%ebp)
468920:	dd 5d f8             	fstpl  -0x8(%ebp)
468923:	dd 45 f8             	fldl   -0x8(%ebp)
468926:	dd 07                	fldl   (%edi)
468928:	da e9                	fucompp
46892a:	df e0                	fnstsw %ax
46892c:	f6 c4 44             	test   $0x44,%ah
46892f:	7a 58                	jp     0x468989
468931:	eb 18                	jmp    0x46894b
468933:	83 7f 0c 01          	cmpl   $0x1,0xc(%edi)
468937:	75 07                	jne    0x468940
468939:	8b 07                	mov    (%edi),%eax
46893b:	99                   	cltd
46893c:	8b c8                	mov    %eax,%ecx
46893e:	eb 0b                	jmp    0x46894b
468940:	83 7f 0c 02          	cmpl   $0x2,0xc(%edi)
468944:	75 43                	jne    0x468989
468946:	8b 0f                	mov    (%edi),%ecx
468948:	8b 57 04             	mov    0x4(%edi),%edx
46894b:	8b c1                	mov    %ecx,%eax
46894d:	0b c2                	or     %edx,%eax
46894f:	74 32                	je     0x468983
468951:	8b c1                	mov    %ecx,%eax
468953:	83 e0 01             	and    $0x1,%eax
468956:	83 c8 00             	or     $0x0,%eax
468959:	74 08                	je     0x468963
46895b:	81 ce 00 00 10 00    	or     $0x100000,%esi
468961:	eb 06                	jmp    0x468969
468963:	81 ce 00 00 20 00    	or     $0x200000,%esi
468969:	85 d2                	test   %edx,%edx
46896b:	7f 0e                	jg     0x46897b
46896d:	7c 04                	jl     0x468973
46896f:	85 c9                	test   %ecx,%ecx
468971:	73 08                	jae    0x46897b
468973:	81 ce 00 00 01 00    	or     $0x10000,%esi
468979:	eb 0e                	jmp    0x468989
46897b:	81 ce 00 00 02 00    	or     $0x20000,%esi
468981:	eb 06                	jmp    0x468989
468983:	81 ce 00 00 04 00    	or     $0x40000,%esi
468989:	5f                   	pop    %edi
46898a:	8b c6                	mov    %esi,%eax
46898c:	5e                   	pop    %esi
46898d:	8b e5                	mov    %ebp,%esp
46898f:	5d                   	pop    %ebp
468990:	c3                   	ret
468991:	83 79 0c 0a          	cmpl   $0xa,0xc(%ecx)
468995:	75 05                	jne    0x46899c
468997:	8b 01                	mov    (%ecx),%eax
468999:	8b 00                	mov    (%eax),%eax
46899b:	c3                   	ret
46899c:	33 c0                	xor    %eax,%eax
46899e:	c3                   	ret
46899f:	56                   	push   %esi
4689a0:	8b f1                	mov    %ecx,%esi
4689a2:	83 7e 0c 0b          	cmpl   $0xb,0xc(%esi)
4689a6:	74 05                	je     0x4689ad
4689a8:	e8 90 f0 ff ff       	call   0x467a3d
4689ad:	8b ce                	mov    %esi,%ecx
4689af:	e8 cb 0f fa ff       	call   0x40997f
4689b4:	8b 06                	mov    (%esi),%eax
4689b6:	5e                   	pop    %esi
4689b7:	8b 40 04             	mov    0x4(%eax),%eax
4689ba:	c3                   	ret
4689bb:	8b 41 0c             	mov    0xc(%ecx),%eax
4689be:	85 c0                	test   %eax,%eax
4689c0:	7e 1d                	jle    0x4689df
4689c2:	83 f8 04             	cmp    $0x4,%eax
4689c5:	7e 13                	jle    0x4689da
4689c7:	83 f8 07             	cmp    $0x7,%eax
4689ca:	74 0b                	je     0x4689d7
4689cc:	83 f8 08             	cmp    $0x8,%eax
4689cf:	75 0e                	jne    0x4689df
4689d1:	8b 01                	mov    (%ecx),%eax
4689d3:	8b 40 08             	mov    0x8(%eax),%eax
4689d6:	c3                   	ret
4689d7:	8b 01                	mov    (%ecx),%eax
4689d9:	c3                   	ret
4689da:	e9 67 13 fa ff       	jmp    0x409d46
4689df:	33 c0                	xor    %eax,%eax
4689e1:	c3                   	ret
4689e2:	8b 41 0c             	mov    0xc(%ecx),%eax
4689e5:	83 f8 07             	cmp    $0x7,%eax
4689e8:	7f 24                	jg     0x468a0e
4689ea:	74 1e                	je     0x468a0a
4689ec:	48                   	dec    %eax
4689ed:	74 1b                	je     0x468a0a
4689ef:	48                   	dec    %eax
4689f0:	74 14                	je     0x468a06
4689f2:	48                   	dec    %eax
4689f3:	74 11                	je     0x468a06
4689f5:	48                   	dec    %eax
4689f6:	75 22                	jne    0x468a1a
4689f8:	8b 41 08             	mov    0x8(%ecx),%eax
4689fb:	8b 40 04             	mov    0x4(%eax),%eax
4689fe:	8d 04 45 02 00 00 00 	lea    0x2(,%eax,2),%eax
468a05:	c3                   	ret
468a06:	6a 08                	push   $0x8
468a08:	eb 02                	jmp    0x468a0c
468a0a:	6a 04                	push   $0x4
468a0c:	58                   	pop    %eax
468a0d:	c3                   	ret
468a0e:	83 e8 09             	sub    $0x9,%eax
468a11:	74 15                	je     0x468a28
468a13:	48                   	dec    %eax
468a14:	48                   	dec    %eax
468a15:	74 0c                	je     0x468a23
468a17:	48                   	dec    %eax
468a18:	74 03                	je     0x468a1d
468a1a:	33 c0                	xor    %eax,%eax
468a1c:	c3                   	ret
468a1d:	8b 01                	mov    (%ecx),%eax
468a1f:	8b 40 0c             	mov    0xc(%eax),%eax
468a22:	c3                   	ret
468a23:	8b 01                	mov    (%ecx),%eax
468a25:	8b 00                	mov    (%eax),%eax
468a27:	c3                   	ret
468a28:	33 c0                	xor    %eax,%eax
468a2a:	40                   	inc    %eax
468a2b:	c3                   	ret
468a2c:	ff 0d 90 41 4c 00    	decl   0x4c4190
468a32:	75 05                	jne    0x468a39
468a34:	e8 da 00 00 00       	call   0x468b13
468a39:	a1 f0 7e 4c 00       	mov    0x4c7ef0,%eax
468a3e:	8b 08                	mov    (%eax),%ecx
468a40:	83 c0 04             	add    $0x4,%eax
468a43:	a3 f0 7e 4c 00       	mov    %eax,0x4c7ef0
468a48:	8b c1                	mov    %ecx,%eax
468a4a:	c1 e8 0b             	shr    $0xb,%eax
468a4d:	33 c8                	xor    %eax,%ecx
468a4f:	8b c1                	mov    %ecx,%eax
468a51:	25 ad 58 3a ff       	and    $0xff3a58ad,%eax
468a56:	c1 e0 07             	shl    $0x7,%eax
468a59:	33 c8                	xor    %eax,%ecx
468a5b:	8b c1                	mov    %ecx,%eax
468a5d:	25 8c df ff ff       	and    $0xffffdf8c,%eax
468a62:	c1 e0 0f             	shl    $0xf,%eax
468a65:	33 c8                	xor    %eax,%ecx
468a67:	8b c1                	mov    %ecx,%eax
468a69:	c1 e8 12             	shr    $0x12,%eax
468a6c:	33 c1                	xor    %ecx,%eax
468a6e:	d1 e8                	shr    $1,%eax
468a70:	c3                   	ret
468a71:	55                   	push   %ebp
468a72:	8b ec                	mov    %esp,%ebp
468a74:	51                   	push   %ecx
468a75:	51                   	push   %ecx
468a76:	ff 0d 90 41 4c 00    	decl   0x4c4190
468a7c:	75 05                	jne    0x468a83
468a7e:	e8 90 00 00 00       	call   0x468b13
468a83:	a1 f0 7e 4c 00       	mov    0x4c7ef0,%eax
468a88:	8b 08                	mov    (%eax),%ecx
468a8a:	83 c0 04             	add    $0x4,%eax
468a8d:	a3 f0 7e 4c 00       	mov    %eax,0x4c7ef0
468a92:	8b c1                	mov    %ecx,%eax
468a94:	c1 e8 0b             	shr    $0xb,%eax
468a97:	33 c8                	xor    %eax,%ecx