433631:	df e0                	fnstsw %ax
433633:	f6 c4 44             	test   $0x44,%ah
433636:	0f 8b b8 00 00 00    	jnp    0x4336f4
43363c:	33 c9                	xor    %ecx,%ecx
43363e:	dd d8                	fstp   %st(0)
433640:	41                   	inc    %ecx
433641:	e8 c2 b1 ff ff       	call   0x42e808
433646:	e8 60 9c ff ff       	call   0x42d2ab
43364b:	8b 4e 48             	mov    0x48(%esi),%ecx
43364e:	e8 27 9d ff ff       	call   0x42d37a
433653:	8b ce                	mov    %esi,%ecx
433655:	e8 86 47 00 00       	call   0x437de0
43365a:	83 25 30 49 4a 00 00 	andl   $0x0,0x4a4930
433661:	51                   	push   %ecx
433662:	6a 00                	push   $0x0
433664:	8b ce                	mov    %esi,%ecx
433666:	e8 f6 44 00 00       	call   0x437b61
43366b:	ff 76 20             	push   0x20(%esi)
43366e:	ff 15 2c 7d 4a 00    	call   *0x4a7d2c
433674:	50                   	push   %eax
433675:	ff 15 ec 76 4a 00    	call   *0x4a76ec
43367b:	8b f8                	mov    %eax,%edi
43367d:	85 ff                	test   %edi,%edi
43367f:	74 2b                	je     0x4336ac
433681:	68 08 39 40 00       	push   $0x403908
433686:	8b cf                	mov    %edi,%ecx
433688:	ff 15 d4 76 4a 00    	call   *0x4a76d4
43368e:	85 c0                	test   %eax,%eax
433690:	74 1a                	je     0x4336ac
433692:	d9 e8                	fld1
433694:	8b cf                	mov    %edi,%ecx
433696:	dc 5d 08             	fcompl 0x8(%ebp)
433699:	df e0                	fnstsw %ax
43369b:	f6 c4 01             	test   $0x1,%ah
43369e:	75 07                	jne    0x4336a7
4336a0:	e8 9a 36 02 00       	call   0x456d3f
4336a5:	eb 05                	jmp    0x4336ac
4336a7:	e8 b9 36 02 00       	call   0x456d65
4336ac:	6a 01                	push   $0x1
4336ae:	6a 00                	push   $0x0
4336b0:	ff 76 20             	push   0x20(%esi)
4336b3:	ff 15 d8 7d 4a 00    	call   *0x4a7dd8
4336b9:	e8 78 e3 ff ff       	call   0x431a36
4336be:	dd 45 08             	fldl   0x8(%ebp)
4336c1:	8b f8                	mov    %eax,%edi
4336c3:	d9 c0                	fld    %st(0)
4336c5:	dc 76 58             	fdivl  0x58(%esi)
4336c8:	d9 c9                	fxch   %st(1)
4336ca:	dd 56 58             	fstl   0x58(%esi)
4336cd:	85 ff                	test   %edi,%edi
4336cf:	74 21                	je     0x4336f2
4336d1:	83 ec 0c             	sub    $0xc,%esp
4336d4:	d9 c9                	fxch   %st(1)
4336d6:	dd 5c 24 04          	fstpl  0x4(%esp)
4336da:	dc 0d 80 42 41 00    	fmull  0x414280
4336e0:	e8 3c d9 05 00       	call   0x491021
4336e5:	50                   	push   %eax
4336e6:	8b cf                	mov    %edi,%ecx
4336e8:	e8 4e 30 03 00       	call   0x46673b
4336ed:	dd 45 08             	fldl   0x8(%ebp)
4336f0:	eb 02                	jmp    0x4336f4
4336f2:	dd d9                	fstp   %st(1)
4336f4:	8b 4e 7c             	mov    0x7c(%esi),%ecx
4336f7:	85 c9                	test   %ecx,%ecx
4336f9:	74 0c                	je     0x433707
4336fb:	51                   	push   %ecx
4336fc:	51                   	push   %ecx
4336fd:	dd 1c 24             	fstpl  (%esp)
433700:	e8 6d 81 02 00       	call   0x45b872
433705:	eb 02                	jmp    0x433709
433707:	dd d8                	fstp   %st(0)
433709:	8b 8e 80 00 00 00    	mov    0x80(%esi),%ecx
43370f:	85 c9                	test   %ecx,%ecx
433711:	74 0d                	je     0x433720
433713:	dd 45 08             	fldl   0x8(%ebp)
433716:	51                   	push   %ecx
433717:	51                   	push   %ecx
433718:	dd 1c 24             	fstpl  (%esp)
43371b:	e8 52 81 02 00       	call   0x45b872
433720:	80 7d 10 00          	cmpb   $0x0,0x10(%ebp)
433724:	74 0d                	je     0x433733
433726:	dd 45 08             	fldl   0x8(%ebp)
433729:	51                   	push   %ecx
43372a:	51                   	push   %ecx
43372b:	dd 1c 24             	fstpl  (%esp)
43372e:	e8 fd 9b fe ff       	call   0x41d330
433733:	5f                   	pop    %edi
433734:	5e                   	pop    %esi
433735:	8b e5                	mov    %ebp,%esp
433737:	5d                   	pop    %ebp
433738:	c2 0c 00             	ret    $0xc
43373b:	8b ff                	mov    %edi,%edi
43373d:	55                   	push   %ebp
43373e:	8b ec                	mov    %esp,%ebp
433740:	8b 55 08             	mov    0x8(%ebp),%edx
433743:	56                   	push   %esi
433744:	8b f1                	mov    %ecx,%esi
433746:	85 d2                	test   %edx,%edx
433748:	7e 04                	jle    0x43374e
43374a:	33 d2                	xor    %edx,%edx
43374c:	eb 0e                	jmp    0x43375c
43374e:	8b 46 48             	mov    0x48(%esi),%eax
433751:	8b 40 2c             	mov    0x2c(%eax),%eax
433754:	f7 d8                	neg    %eax
433756:	3b d0                	cmp    %eax,%edx
433758:	7d 02                	jge    0x43375c
43375a:	8b d0                	mov    %eax,%edx
43375c:	8b 4d 0c             	mov    0xc(%ebp),%ecx
43375f:	85 c9                	test   %ecx,%ecx
433761:	7e 04                	jle    0x433767
433763:	33 c9                	xor    %ecx,%ecx
433765:	eb 0e                	jmp    0x433775
433767:	8b 46 48             	mov    0x48(%esi),%eax
43376a:	8b 40 30             	mov    0x30(%eax),%eax
43376d:	f7 d8                	neg    %eax
43376f:	3b c8                	cmp    %eax,%ecx
433771:	7d 02                	jge    0x433775
433773:	8b c8                	mov    %eax,%ecx
433775:	6a 01                	push   $0x1
433777:	6a 00                	push   $0x0
433779:	ff 76 20             	push   0x20(%esi)
43377c:	89 56 60             	mov    %edx,0x60(%esi)
43377f:	89 4e 64             	mov    %ecx,0x64(%esi)
433782:	ff 15 d8 7d 4a 00    	call   *0x4a7dd8
433788:	8b ce                	mov    %esi,%ecx
43378a:	e8 05 00 00 00       	call   0x433794
43378f:	5e                   	pop    %esi
433790:	5d                   	pop    %ebp
433791:	c2 08 00             	ret    $0x8
433794:	8b ff                	mov    %edi,%edi
433796:	55                   	push   %ebp
433797:	8b ec                	mov    %esp,%ebp
433799:	83 e4 f8             	and    $0xfffffff8,%esp
43379c:	83 ec 5c             	sub    $0x5c,%esp
43379f:	a1 dc 38 4a 00       	mov    0x4a38dc,%eax
4337a4:	33 c4                	xor    %esp,%eax
4337a6:	89 44 24 58          	mov    %eax,0x58(%esp)
4337aa:	83 3d 88 65 4a 00 00 	cmpl   $0x0,0x4a6588
4337b1:	53                   	push   %ebx
4337b2:	56                   	push   %esi
4337b3:	57                   	push   %edi
4337b4:	8b f9                	mov    %ecx,%edi
4337b6:	89 7c 24 20          	mov    %edi,0x20(%esp)
4337ba:	0f 85 92 02 00 00    	jne    0x433a52
4337c0:	6a 02                	push   $0x2
4337c2:	c7 05 88 65 4a 00 01 	movl   $0x1,0x4a6588
4337c9:	00 00 00
4337cc:	ff 15 dc 7d 4a 00    	call   *0x4a7ddc
4337d2:	6a 03                	push   $0x3
4337d4:	89 44 24 2c          	mov    %eax,0x2c(%esp)
4337d8:	ff 15 dc 7d 4a 00    	call   *0x4a7ddc
4337de:	89 44 24 2c          	mov    %eax,0x2c(%esp)
4337e2:	8d 44 24 54          	lea    0x54(%esp),%eax
4337e6:	50                   	push   %eax
4337e7:	ff 77 20             	push   0x20(%edi)
4337ea:	ff 15 ec 7d 4a 00    	call   *0x4a7dec
4337f0:	8b 5c 24 5c          	mov    0x5c(%esp),%ebx
4337f4:	8b cf                	mov    %edi,%ecx
4337f6:	8b 44 24 60          	mov    0x60(%esp),%eax
4337fa:	2b 44 24 58          	sub    0x58(%esp),%eax
4337fe:	2b 5c 24 54          	sub    0x54(%esp),%ebx
433802:	89 5c 24 18          	mov    %ebx,0x18(%esp)
433806:	89 44 24 10          	mov    %eax,0x10(%esp)
43380a:	89 44 24 1c          	mov    %eax,0x1c(%esp)
43380e:	ff 15 28 77 4a 00    	call   *0x4a7728
433814:	8b f0                	mov    %eax,%esi
433816:	8b cf                	mov    %edi,%ecx
433818:	c1 ee 14             	shr    $0x14,%esi
43381b:	ff 15 28 77 4a 00    	call   *0x4a7728
433821:	c1 e8 15             	shr    $0x15,%eax
433824:	83 e0 01             	and    $0x1,%eax
433827:	83 e6 01             	and    $0x1,%esi
43382a:	74 10                	je     0x43383c
43382c:	8b 4c 24 10          	mov    0x10(%esp),%ecx
433830:	03 4c 24 2c          	add    0x2c(%esp),%ecx
433834:	89 4c 24 10          	mov    %ecx,0x10(%esp)
433838:	89 4c 24 1c          	mov    %ecx,0x1c(%esp)
43383c:	85 c0                	test   %eax,%eax
43383e:	74 08                	je     0x433848
433840:	03 5c 24 28          	add    0x28(%esp),%ebx
433844:	89 5c 24 18          	mov    %ebx,0x18(%esp)
433848:	dd 47 58             	fldl   0x58(%edi)
43384b:	dd 05 30 42 41 00    	fldl   0x414230
433851:	d8 c1                	fadd   %st(1),%st
433853:	8b 77 48             	mov    0x48(%edi),%esi
433856:	d8 f1                	fdiv   %st(1),%st
433858:	e8 c4 d7 05 00       	call   0x491021
43385d:	8b 4e 2c             	mov    0x2c(%esi),%ecx
433860:	33 d2                	xor    %edx,%edx
433862:	8b 7c 24 10          	mov    0x10(%esp),%edi
433866:	03 c8                	add    %eax,%ecx
433868:	89 4c 24 30          	mov    %ecx,0x30(%esp)
43386c:	8b 4e 30             	mov    0x30(%esi),%ecx
43386f:	03 c8                	add    %eax,%ecx
433871:	33 f6                	xor    %esi,%esi
433873:	89 4c 24 34          	mov    %ecx,0x34(%esp)
433877:	33 c9                	xor    %ecx,%ecx
433879:	85 f6                	test   %esi,%esi
43387b:	75 2b                	jne    0x4338a8
43387d:	db 44 24 34          	fildl  0x34(%esp)
433881:	dd 5c 24 10          	fstpl  0x10(%esp)
433885:	dd 44 24 10          	fldl   0x10(%esp)
433889:	d8 c9                	fmul   %st(1),%st
43388b:	db 44 24 1c          	fildl  0x1c(%esp)
43388f:	dd 5c 24 10          	fstpl  0x10(%esp)
433893:	dc 5c 24 10          	fcompl 0x10(%esp)
433897:	df e0                	fnstsw %ax
433899:	f6 c4 41             	test   $0x41,%ah
43389c:	75 0a                	jne    0x4338a8
43389e:	41                   	inc    %ecx
43389f:	46                   	inc    %esi
4338a0:	2b 5c 24 28          	sub    0x28(%esp),%ebx
4338a4:	89 5c 24 18          	mov    %ebx,0x18(%esp)
4338a8:	85 d2                	test   %edx,%edx
4338aa:	75 2d                	jne    0x4338d9
4338ac:	db 44 24 30          	fildl  0x30(%esp)
4338b0:	dd 5c 24 10          	fstpl  0x10(%esp)
4338b4:	dd 44 24 10          	fldl   0x10(%esp)
4338b8:	d8 c9                	fmul   %st(1),%st
4338ba:	db 44 24 18          	fildl  0x18(%esp)
4338be:	dd 5c 24 10          	fstpl  0x10(%esp)
4338c2:	dc 5c 24 10          	fcompl 0x10(%esp)
4338c6:	df e0                	fnstsw %ax
4338c8:	f6 c4 41             	test   $0x41,%ah
4338cb:	75 0c                	jne    0x4338d9
4338cd:	33 c9                	xor    %ecx,%ecx
4338cf:	42                   	inc    %edx
4338d0:	41                   	inc    %ecx
4338d1:	2b 7c 24 2c          	sub    0x2c(%esp),%edi
4338d5:	89 7c 24 1c          	mov    %edi,0x1c(%esp)
4338d9:	85 c9                	test   %ecx,%ecx
4338db:	75 9a                	jne    0x433877
4338dd:	8b 7c 24 20          	mov    0x20(%esp),%edi
4338e1:	33 db                	xor    %ebx,%ebx
4338e3:	53                   	push   %ebx
4338e4:	53                   	push   %ebx
4338e5:	6a 0b                	push   $0xb
4338e7:	ff 77 20             	push   0x20(%edi)
4338ea:	dd d8                	fstp   %st(0)
4338ec:	ff 15 f8 7d 4a 00    	call   *0x4a7df8
4338f2:	dd 47 58             	fldl   0x58(%edi)
4338f5:	db 44 24 18          	fildl  0x18(%esp)
4338f9:	c7 44 24 38 1c 00 00 	movl   $0x1c,0x38(%esp)
433900:	00
433901:	c7 44 24 3c 07 00 00 	movl   $0x7,0x3c(%esp)
433908:	00
433909:	89 5c 24 40          	mov    %ebx,0x40(%esp)
43390d:	dd 5c 24 20          	fstpl  0x20(%esp)
433911:	dd 44 24 20          	fldl   0x20(%esp)
433915:	d8 f1                	fdiv   %st(1),%st
433917:	db 44 24 1c          	fildl  0x1c(%esp)
43391b:	dd 5c 24 20          	fstpl  0x20(%esp)
43391f:	dd 44 24 20          	fldl   0x20(%esp)
433923:	d8 f2                	fdiv   %st(2),%st
433925:	d9 e8                	fld1
433927:	d8 d3                	fcom   %st(3)
433929:	df e0                	fnstsw %ax
43392b:	dd db                	fstp   %st(3)
43392d:	f6 c4 41             	test   $0x41,%ah
433930:	75 0a                	jne    0x43393c
433932:	d9 c9                	fxch   %st(1)
433934:	d8 c2                	fadd   %st(2),%st
433936:	d9 c9                	fxch   %st(1)
433938:	de c2                	faddp  %st,%st(2)
43393a:	eb 02                	jmp    0x43393e
43393c:	dd da                	fstp   %st(2)
43393e:	8b 44 24 30          	mov    0x30(%esp),%eax
433942:	d9 c9                	fxch   %st(1)
433944:	48                   	dec    %eax
433945:	dd 5c 24 20          	fstpl  0x20(%esp)
433949:	89 44 24 44          	mov    %eax,0x44(%esp)
43394d:	e8 cf d6 05 00       	call   0x491021
433952:	89 44 24 48          	mov    %eax,0x48(%esp)
433956:	8b cf                	mov    %edi,%ecx
433958:	8b 47 60             	mov    0x60(%edi),%eax
43395b:	f7 d8                	neg    %eax
43395d:	89 44 24 4c          	mov    %eax,0x4c(%esp)
433961:	8d 44 24 38          	lea    0x38(%esp),%eax
433965:	53                   	push   %ebx
433966:	50                   	push   %eax
433967:	53                   	push   %ebx
433968:	ff 15 2c 77 4a 00    	call   *0x4a772c
43396e:	8b 44 24 34          	mov    0x34(%esp),%eax
433972:	dd 44 24 20          	fldl   0x20(%esp)
433976:	48                   	dec    %eax
433977:	89 44 24 44          	mov    %eax,0x44(%esp)
43397b:	e8 a1 d6 05 00       	call   0x491021
433980:	89 44 24 48          	mov    %eax,0x48(%esp)
433984:	8b cf                	mov    %edi,%ecx
433986:	8b 47 64             	mov    0x64(%edi),%eax
433989:	f7 d8                	neg    %eax
43398b:	89 44 24 4c          	mov    %eax,0x4c(%esp)
43398f:	8d 44 24 38          	lea    0x38(%esp),%eax
433993:	53                   	push   %ebx
433994:	50                   	push   %eax
433995:	6a 01                	push   $0x1
433997:	ff 15 2c 77 4a 00    	call   *0x4a772c
43399d:	6a 17                	push   $0x17
43399f:	8d 44 24 3c          	lea    0x3c(%esp),%eax
4339a3:	c7 44 24 40 04 00 00 	movl   $0x4,0x40(%esp)
4339aa:	00
4339ab:	50                   	push   %eax
4339ac:	53                   	push   %ebx
4339ad:	8b cf                	mov    %edi,%ecx
4339af:	ff 15 30 77 4a 00    	call   *0x4a7730
4339b5:	8b 47 60             	mov    0x60(%edi),%eax
4339b8:	8b 4c 24 4c          	mov    0x4c(%esp),%ecx
4339bc:	f7 d8                	neg    %eax
4339be:	3b c1                	cmp    %ecx,%eax
4339c0:	74 07                	je     0x4339c9
4339c2:	f7 d9                	neg    %ecx
4339c4:	b3 01                	mov    $0x1,%bl
4339c6:	89 4f 60             	mov    %ecx,0x60(%edi)
4339c9:	6a 17                	push   $0x17
4339cb:	8d 44 24 3c          	lea    0x3c(%esp),%eax
4339cf:	8b cf                	mov    %edi,%ecx
4339d1:	50                   	push   %eax
4339d2:	6a 01                	push   $0x1
4339d4:	ff 15 30 77 4a 00    	call   *0x4a7730
4339da:	8b 47 64             	mov    0x64(%edi),%eax
4339dd:	8b 4c 24 4c          	mov    0x4c(%esp),%ecx
4339e1:	f7 d8                	neg    %eax
4339e3:	3b c1                	cmp    %ecx,%eax
4339e5:	74 07                	je     0x4339ee
4339e7:	f7 d9                	neg    %ecx
4339e9:	b3 01                	mov    $0x1,%bl
4339eb:	89 4f 64             	mov    %ecx,0x64(%edi)
4339ee:	84 db                	test   %bl,%bl
4339f0:	74 10                	je     0x433a02
4339f2:	e8 3f e0 ff ff       	call   0x431a36
4339f7:	85 c0                	test   %eax,%eax
4339f9:	74 07                	je     0x433a02
4339fb:	8b c8                	mov    %eax,%ecx
4339fd:	e8 9f 2d 03 00       	call   0x4667a1
433a02:	33 f6                	xor    %esi,%esi
433a04:	56                   	push   %esi
433a05:	6a 01                	push   $0x1
433a07:	6a 0b                	push   $0xb
433a09:	ff 77 20             	push   0x20(%edi)
433a0c:	ff 15 f8 7d 4a 00    	call   *0x4a7df8
433a12:	6a 01                	push   $0x1
433a14:	56                   	push   %esi
433a15:	ff 77 20             	push   0x20(%edi)
433a18:	ff 15 d8 7d 4a 00    	call   *0x4a7dd8
433a1e:	8b cf                	mov    %edi,%ecx
433a20:	e8 37 4d 00 00       	call   0x43875c
433a25:	8b 4f 7c             	mov    0x7c(%edi),%ecx
433a28:	85 c9                	test   %ecx,%ecx
433a2a:	74 0b                	je     0x433a37
433a2c:	ff 77 64             	push   0x64(%edi)