433471:	8d 41 08             	lea    0x8(%ecx),%eax
433474:	89 4d f0             	mov    %ecx,-0x10(%ebp)
433477:	8b 4f 04             	mov    0x4(%edi),%ecx
43347a:	89 45 f8             	mov    %eax,-0x8(%ebp)
43347d:	8d 45 cc             	lea    -0x34(%ebp),%eax
433480:	6a 01                	push   $0x1
433482:	50                   	push   %eax
433483:	e8 ee 6b 03 00       	call   0x46a076
433488:	84 db                	test   %bl,%bl
43348a:	74 3f                	je     0x4334cb
43348c:	8b 4d e8             	mov    -0x18(%ebp),%ecx
43348f:	8d 55 ec             	lea    -0x14(%ebp),%edx
433492:	8b 45 e4             	mov    -0x1c(%ebp),%eax
433495:	89 45 ec             	mov    %eax,-0x14(%ebp)
433498:	83 c0 08             	add    $0x8,%eax
43349b:	89 45 f4             	mov    %eax,-0xc(%ebp)
43349e:	8d 41 08             	lea    0x8(%ecx),%eax
4334a1:	89 4d f0             	mov    %ecx,-0x10(%ebp)
4334a4:	8b 4f 04             	mov    0x4(%edi),%ecx
4334a7:	89 45 f8             	mov    %eax,-0x8(%ebp)
4334aa:	8d 45 cc             	lea    -0x34(%ebp),%eax
4334ad:	6a 02                	push   $0x2
4334af:	50                   	push   %eax
4334b0:	e8 c1 6b 03 00       	call   0x46a076
4334b5:	eb 14                	jmp    0x4334cb
4334b7:	8d 55 cc             	lea    -0x34(%ebp),%edx
4334ba:	8b cf                	mov    %edi,%ecx
4334bc:	e8 fe 6a 03 00       	call   0x469fbf
4334c1:	53                   	push   %ebx
4334c2:	ff 77 04             	push   0x4(%edi)
4334c5:	ff 15 fc 70 4a 00    	call   *0x4a70fc
4334cb:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4334ce:	5f                   	pop    %edi
4334cf:	5e                   	pop    %esi
4334d0:	33 cd                	xor    %ebp,%ecx
4334d2:	5b                   	pop    %ebx
4334d3:	e8 28 ca 05 00       	call   0x48ff00
4334d8:	c9                   	leave
4334d9:	c2 08 00             	ret    $0x8
4334dc:	a1 60 58 4a 00       	mov    0x4a5860,%eax
4334e1:	56                   	push   %esi
4334e2:	33 f6                	xor    %esi,%esi
4334e4:	57                   	push   %edi
4334e5:	8b f9                	mov    %ecx,%edi
4334e7:	39 70 04             	cmp    %esi,0x4(%eax)
4334ea:	74 13                	je     0x4334ff
4334ec:	56                   	push   %esi
4334ed:	50                   	push   %eax
4334ee:	ff 15 98 75 4a 00    	call   *0x4a7598
4334f4:	ff 77 04             	push   0x4(%edi)
4334f7:	8b f0                	mov    %eax,%esi
4334f9:	ff 15 70 71 4a 00    	call   *0x4a7170
4334ff:	5f                   	pop    %edi
433500:	8b c6                	mov    %esi,%eax
433502:	5e                   	pop    %esi
433503:	c3                   	ret
433504:	a1 60 58 4a 00       	mov    0x4a5860,%eax
433509:	56                   	push   %esi
43350a:	33 f6                	xor    %esi,%esi
43350c:	57                   	push   %edi
43350d:	8b f9                	mov    %ecx,%edi
43350f:	39 70 04             	cmp    %esi,0x4(%eax)
433512:	74 14                	je     0x433528
433514:	56                   	push   %esi
433515:	ff 70 04             	push   0x4(%eax)
433518:	57                   	push   %edi
433519:	ff 15 6c 71 4a 00    	call   *0x4a716c
43351f:	57                   	push   %edi
433520:	8b f0                	mov    %eax,%esi
433522:	ff 15 70 71 4a 00    	call   *0x4a7170
433528:	5f                   	pop    %edi
433529:	8b c6                	mov    %esi,%eax
43352b:	5e                   	pop    %esi
43352c:	c3                   	ret
43352d:	8b ff                	mov    %edi,%edi
43352f:	55                   	push   %ebp
433530:	8b ec                	mov    %esp,%ebp
433532:	83 e4 f8             	and    $0xfffffff8,%esp
433535:	83 ec 0c             	sub    $0xc,%esp
433538:	56                   	push   %esi
433539:	8b f1                	mov    %ecx,%esi
43353b:	6a 0a                	push   $0xa
43353d:	5a                   	pop    %edx
43353e:	dd 46 58             	fldl   0x58(%esi)
433541:	dd 05 28 42 41 00    	fldl   0x414228
433547:	d8 d9                	fcomp  %st(1)
433549:	df e0                	fnstsw %ax
43354b:	f6 c4 01             	test   $0x1,%ah
43354e:	75 13                	jne    0x433563
433550:	85 d2                	test   %edx,%edx
433552:	7e 0f                	jle    0x433563
433554:	dc 14 d5 f8 ff 40 00 	fcoml  0x40fff8(,%edx,8)
43355b:	4a                   	dec    %edx
43355c:	df e0                	fnstsw %ax
43355e:	f6 c4 41             	test   $0x41,%ah
433561:	7b ed                	jnp    0x433550
433563:	dd 04 d5 00 00 41 00 	fldl   0x410000(,%edx,8)
43356a:	dd 54 24 08          	fstl   0x8(%esp)
43356e:	da e9                	fucompp
433570:	df e0                	fnstsw %ax
433572:	f6 c4 44             	test   $0x44,%ah
433575:	7b 27                	jnp    0x43359e
433577:	b9 ee c4 00 00       	mov    $0xc4ee,%ecx
43357c:	e8 fd 7a 00 00       	call   0x43b07e
433581:	dd 44 24 08          	fldl   0x8(%esp)
433585:	6a 01                	push   $0x1
433587:	51                   	push   %ecx
433588:	51                   	push   %ecx
433589:	8b ce                	mov    %esi,%ecx
43358b:	dd 1c 24             	fstpl  (%esp)
43358e:	e8 8a 00 00 00       	call   0x43361d
433593:	8b ce                	mov    %esi,%ecx
433595:	e8 fa 01 00 00       	call   0x433794
43359a:	b0 01                	mov    $0x1,%al
43359c:	eb 02                	jmp    0x4335a0
43359e:	32 c0                	xor    %al,%al
4335a0:	5e                   	pop    %esi
4335a1:	8b e5                	mov    %ebp,%esp
4335a3:	5d                   	pop    %ebp
4335a4:	c3                   	ret
4335a5:	8b ff                	mov    %edi,%edi
4335a7:	55                   	push   %ebp
4335a8:	8b ec                	mov    %esp,%ebp
4335aa:	83 e4 f8             	and    $0xfffffff8,%esp
4335ad:	83 ec 0c             	sub    $0xc,%esp
4335b0:	33 d2                	xor    %edx,%edx
4335b2:	56                   	push   %esi
4335b3:	8b f1                	mov    %ecx,%esi
4335b5:	dd 46 58             	fldl   0x58(%esi)
4335b8:	dd 05 60 41 41 00    	fldl   0x414160
4335be:	d8 d9                	fcomp  %st(1)
4335c0:	df e0                	fnstsw %ax
4335c2:	f6 c4 41             	test   $0x41,%ah
4335c5:	7a 14                	jp     0x4335db
4335c7:	83 fa 0a             	cmp    $0xa,%edx
4335ca:	7d 0f                	jge    0x4335db
4335cc:	dc 14 d5 08 00 41 00 	fcoml  0x410008(,%edx,8)
4335d3:	42                   	inc    %edx
4335d4:	df e0                	fnstsw %ax
4335d6:	f6 c4 01             	test   $0x1,%ah
4335d9:	74 ec                	je     0x4335c7
4335db:	dd 04 d5 00 00 41 00 	fldl   0x410000(,%edx,8)
4335e2:	dd 54 24 08          	fstl   0x8(%esp)
4335e6:	da e9                	fucompp
4335e8:	df e0                	fnstsw %ax
4335ea:	f6 c4 44             	test   $0x44,%ah
4335ed:	7b 27                	jnp    0x433616
4335ef:	b9 ed c4 00 00       	mov    $0xc4ed,%ecx
4335f4:	e8 85 7a 00 00       	call   0x43b07e
4335f9:	dd 44 24 08          	fldl   0x8(%esp)
4335fd:	6a 01                	push   $0x1
4335ff:	51                   	push   %ecx
433600:	51                   	push   %ecx
433601:	8b ce                	mov    %esi,%ecx
433603:	dd 1c 24             	fstpl  (%esp)
433606:	e8 12 00 00 00       	call   0x43361d
43360b:	8b ce                	mov    %esi,%ecx
43360d:	e8 82 01 00 00       	call   0x433794
433612:	b0 01                	mov    $0x1,%al
433614:	eb 02                	jmp    0x433618
433616:	32 c0                	xor    %al,%al
433618:	5e                   	pop    %esi
433619:	8b e5                	mov    %ebp,%esp
43361b:	5d                   	pop    %ebp
43361c:	c3                   	ret
43361d:	8b ff                	mov    %edi,%edi
43361f:	55                   	push   %ebp
433620:	8b ec                	mov    %esp,%ebp
433622:	83 e4 f8             	and    $0xfffffff8,%esp
433625:	dd 45 08             	fldl   0x8(%ebp)
433628:	56                   	push   %esi
433629:	8b f1                	mov    %ecx,%esi
43362b:	57                   	push   %edi
43362c:	dd 46 58             	fldl   0x58(%esi)
43362f:	dd e9                	fucomp %st(1)
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