4302dd:	db ad 62 ff ff ff    	fldt   -0x9e(%ebp)
4302e3:	f6 85 69 ff ff ff 40 	testb  $0x40,-0x97(%ebp)
4302ea:	74 20                	je     0x43030c
4302ec:	d9 c9                	fxch   %st(1)
4302ee:	db bd 62 ff ff ff    	fstpt  -0x9e(%ebp)
4302f4:	db ad 62 ff ff ff    	fldt   -0x9e(%ebp)
4302fa:	f6 85 69 ff ff ff 40 	testb  $0x40,-0x97(%ebp)
430301:	74 09                	je     0x43030c
430303:	c6 85 70 ff ff ff 07 	movb   $0x7,-0x90(%ebp)
43030a:	eb 07                	jmp    0x430313
43030c:	c6 85 70 ff ff ff 01 	movb   $0x1,-0x90(%ebp)
430313:	de c1                	faddp  %st,%st(1)
430315:	c3                   	ret
430316:	dd d8                	fstp   %st(0)
430318:	dd d8                	fstp   %st(0)
43031a:	db 2d 30 7c 49 00    	fldt   0x497c30
430320:	80 bd 70 ff ff ff 00 	cmpb   $0x0,-0x90(%ebp)
430327:	7f 07                	jg     0x430330
430329:	c6 85 70 ff ff ff 01 	movb   $0x1,-0x90(%ebp)
430330:	0a c9                	or     %cl,%cl
430332:	c3                   	ret
430333:	0a c9                	or     %cl,%cl
430335:	74 02                	je     0x430339
430337:	d9 e0                	fchs
430339:	c3                   	ret
43033a:	cc                   	int3
43033b:	cc                   	int3
43033c:	cc                   	int3
43033d:	cc                   	int3
43033e:	cc                   	int3
43033f:	cc                   	int3
430340:	55                   	push   %ebp
430341:	8b ec                	mov    %esp,%ebp
430343:	83 c4 e0             	add    $0xffffffe0,%esp
430346:	89 45 e0             	mov    %eax,-0x20(%ebp)
430349:	8b 45 18             	mov    0x18(%ebp),%eax
43034c:	89 45 f0             	mov    %eax,-0x10(%ebp)
43034f:	8b 45 1c             	mov    0x1c(%ebp),%eax
430352:	89 45 f4             	mov    %eax,-0xc(%ebp)
430355:	eb 09                	jmp    0x430360
430357:	55                   	push   %ebp
430358:	8b ec                	mov    %esp,%ebp
43035a:	83 c4 e0             	add    $0xffffffe0,%esp
43035d:	89 45 e0             	mov    %eax,-0x20(%ebp)
430360:	dd 5d f8             	fstpl  -0x8(%ebp)
430363:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
430366:	8b 45 10             	mov    0x10(%ebp),%eax
430369:	8b 4d 14             	mov    0x14(%ebp),%ecx
43036c:	89 45 e8             	mov    %eax,-0x18(%ebp)
43036f:	89 4d ec             	mov    %ecx,-0x14(%ebp)
430372:	8d 45 08             	lea    0x8(%ebp),%eax
430375:	8d 4d e0             	lea    -0x20(%ebp),%ecx
430378:	50                   	push   %eax
430379:	51                   	push   %ecx
43037a:	52                   	push   %edx
43037b:	e8 b0 7a 00 00       	call   0x437e30
430380:	83 c4 0c             	add    $0xc,%esp
430383:	dd 45 f8             	fldl   -0x8(%ebp)
430386:	66 81 7d 08 7f 02    	cmpw   $0x27f,0x8(%ebp)
43038c:	74 03                	je     0x430391
43038e:	d9 6d 08             	fldcw  0x8(%ebp)
430391:	c9                   	leave
430392:	c3                   	ret
430393:	cc                   	int3
430394:	cc                   	int3
430395:	cc                   	int3
430396:	cc                   	int3
430397:	cc                   	int3
430398:	cc                   	int3
430399:	cc                   	int3
43039a:	cc                   	int3
43039b:	cc                   	int3
43039c:	cc                   	int3
43039d:	cc                   	int3
43039e:	cc                   	int3
43039f:	cc                   	int3
4303a0:	d9 c0                	fld    %st(0)
4303a2:	d9 fc                	frndint
4303a4:	dc e1                	fsub   %st,%st(1)
4303a6:	d9 c9                	fxch   %st(1)
4303a8:	d9 e0                	fchs
4303aa:	d9 f0                	f2xm1
4303ac:	d9 e8                	fld1
4303ae:	de c1                	faddp  %st,%st(1)
4303b0:	d9 fd                	fscale
4303b2:	dd d9                	fstp   %st(1)
4303b4:	c3                   	ret
4303b5:	8b 54 24 04          	mov    0x4(%esp),%edx
4303b9:	81 e2 00 03 00 00    	and    $0x300,%edx
4303bf:	83 ca 7f             	or     $0x7f,%edx
4303c2:	66 89 54 24 06       	mov    %dx,0x6(%esp)
4303c7:	d9 6c 24 06          	fldcw  0x6(%esp)
4303cb:	c3                   	ret
4303cc:	a9 00 00 08 00       	test   $0x80000,%eax
4303d1:	74 06                	je     0x4303d9
4303d3:	b8 07 00 00 00       	mov    $0x7,%eax
4303d8:	c3                   	ret
4303d9:	dc 05 60 7c 49 00    	faddl  0x497c60
4303df:	b8 01 00 00 00       	mov    $0x1,%eax
4303e4:	c3                   	ret
4303e5:	8b 42 04             	mov    0x4(%edx),%eax
4303e8:	25 00 00 f0 7f       	and    $0x7ff00000,%eax
4303ed:	3d 00 00 f0 7f       	cmp    $0x7ff00000,%eax
4303f2:	74 03                	je     0x4303f7
4303f4:	dd 02                	fldl   (%edx)
4303f6:	c3                   	ret
4303f7:	8b 42 04             	mov    0x4(%edx),%eax
4303fa:	83 ec 0a             	sub    $0xa,%esp
4303fd:	0d 00 00 ff 7f       	or     $0x7fff0000,%eax
430402:	89 44 24 06          	mov    %eax,0x6(%esp)
430406:	8b 42 04             	mov    0x4(%edx),%eax
430409:	8b 0a                	mov    (%edx),%ecx
43040b:	0f a4 c8 0b          	shld   $0xb,%ecx,%eax
43040f:	c1 e1 0b             	shl    $0xb,%ecx
430412:	89 44 24 04          	mov    %eax,0x4(%esp)
430416:	89 0c 24             	mov    %ecx,(%esp)
430419:	db 2c 24             	fldt   (%esp)
43041c:	83 c4 0a             	add    $0xa,%esp
43041f:	a9 00 00 00 00       	test   $0x0,%eax
430424:	8b 42 04             	mov    0x4(%edx),%eax
430427:	c3                   	ret
430428:	8b 44 24 08          	mov    0x8(%esp),%eax
43042c:	25 00 00 f0 7f       	and    $0x7ff00000,%eax
430431:	3d 00 00 f0 7f       	cmp    $0x7ff00000,%eax
430436:	74 01                	je     0x430439
430438:	c3                   	ret
430439:	8b 44 24 08          	mov    0x8(%esp),%eax
43043d:	c3                   	ret
43043e:	66 81 3c 24 7f 02    	cmpw   $0x27f,(%esp)
430444:	74 03                	je     0x430449
430446:	d9 2c 24             	fldcw  (%esp)
430449:	5a                   	pop    %edx
43044a:	c3                   	ret
43044b:	66 8b 04 24          	mov    (%esp),%ax
43044f:	66 3d 7f 02          	cmp    $0x27f,%ax
430453:	74 1e                	je     0x430473
430455:	66 83 e0 20          	and    $0x20,%ax
430459:	74 15                	je     0x430470
43045b:	9b df e0             	fstsw  %ax
43045e:	66 83 e0 20          	and    $0x20,%ax
430462:	74 0c                	je     0x430470
430464:	b8 08 00 00 00       	mov    $0x8,%eax
430469:	e8 e9 fe ff ff       	call   0x430357
43046e:	5a                   	pop    %edx
43046f:	c3                   	ret
430470:	d9 2c 24             	fldcw  (%esp)
430473:	5a                   	pop    %edx
430474:	c3                   	ret
430475:	83 ec 08             	sub    $0x8,%esp
430478:	dd 14 24             	fstl   (%esp)
43047b:	8b 44 24 04          	mov    0x4(%esp),%eax
43047f:	83 c4 08             	add    $0x8,%esp
430482:	25 00 00 f0 7f       	and    $0x7ff00000,%eax
430487:	eb 14                	jmp    0x43049d
430489:	83 ec 08             	sub    $0x8,%esp
43048c:	dd 14 24             	fstl   (%esp)
43048f:	8b 44 24 04          	mov    0x4(%esp),%eax
430493:	83 c4 08             	add    $0x8,%esp
430496:	25 00 00 f0 7f       	and    $0x7ff00000,%eax
43049b:	74 3d                	je     0x4304da
43049d:	3d 00 00 f0 7f       	cmp    $0x7ff00000,%eax
4304a2:	74 5f                	je     0x430503
4304a4:	66 8b 04 24          	mov    (%esp),%ax
4304a8:	66 3d 7f 02          	cmp    $0x27f,%ax
4304ac:	74 2a                	je     0x4304d8
4304ae:	66 83 e0 20          	and    $0x20,%ax
4304b2:	75 21                	jne    0x4304d5
4304b4:	9b df e0             	fstsw  %ax
4304b7:	66 83 e0 20          	and    $0x20,%ax
4304bb:	74 18                	je     0x4304d5
4304bd:	b8 08 00 00 00       	mov    $0x8,%eax
4304c2:	83 fa 1d             	cmp    $0x1d,%edx
4304c5:	74 07                	je     0x4304ce
4304c7:	e8 8b fe ff ff       	call   0x430357
4304cc:	5a                   	pop    %edx
4304cd:	c3                   	ret
4304ce:	e8 6d fe ff ff       	call   0x430340
4304d3:	5a                   	pop    %edx
4304d4:	c3                   	ret
4304d5:	d9 2c 24             	fldcw  (%esp)
4304d8:	5a                   	pop    %edx
4304d9:	c3                   	ret
4304da:	dd 05 8c 7c 49 00    	fldl   0x497c8c
4304e0:	d9 c9                	fxch   %st(1)
4304e2:	d9 fd                	fscale
4304e4:	dd d9                	fstp   %st(1)
4304e6:	d9 c0                	fld    %st(0)
4304e8:	d9 e1                	fabs
4304ea:	dc 1d 7c 7c 49 00    	fcompl 0x497c7c
4304f0:	9b df e0             	fstsw  %ax
4304f3:	9e                   	sahf
4304f4:	b8 04 00 00 00       	mov    $0x4,%eax
4304f9:	73 c7                	jae    0x4304c2
4304fb:	dc 0d 9c 7c 49 00    	fmull  0x497c9c
430501:	eb bf                	jmp    0x4304c2
430503:	dd 05 84 7c 49 00    	fldl   0x497c84
430509:	d9 c9                	fxch   %st(1)
43050b:	d9 fd                	fscale
43050d:	dd d9                	fstp   %st(1)
43050f:	d9 c0                	fld    %st(0)
430511:	d9 e1                	fabs
430513:	dc 1d 74 7c 49 00    	fcompl 0x497c74
430519:	9b df e0             	fstsw  %ax
43051c:	9e                   	sahf
43051d:	b8 03 00 00 00       	mov    $0x3,%eax
430522:	76 9e                	jbe    0x4304c2
430524:	dc 0d 94 7c 49 00    	fmull  0x497c94
43052a:	eb 96                	jmp    0x4304c2
43052c:	55                   	push   %ebp
43052d:	8b ec                	mov    %esp,%ebp
43052f:	51                   	push   %ecx
430530:	51                   	push   %ecx
430531:	dd 45 08             	fldl   0x8(%ebp)
430534:	51                   	push   %ecx
430535:	51                   	push   %ecx
430536:	dd 1c 24             	fstpl  (%esp)
430539:	e8 0a 4b ff ff       	call   0x425048
43053e:	59                   	pop    %ecx
43053f:	59                   	pop    %ecx
430540:	a8 90                	test   $0x90,%al
430542:	75 4a                	jne    0x43058e
430544:	dd 45 08             	fldl   0x8(%ebp)
430547:	51                   	push   %ecx
430548:	51                   	push   %ecx
430549:	dd 1c 24             	fstpl  (%esp)
43054c:	e8 e8 79 00 00       	call   0x437f39
430551:	dd 45 08             	fldl   0x8(%ebp)
430554:	dd e1                	fucom  %st(1)
430556:	df e0                	fnstsw %ax
430558:	59                   	pop    %ecx
430559:	59                   	pop    %ecx
43055a:	dd d9                	fstp   %st(1)
43055c:	f6 c4 44             	test   $0x44,%ah
43055f:	7a 2b                	jp     0x43058c
430561:	dc 0d f0 4b 4a 00    	fmull  0x4a4bf0
430567:	51                   	push   %ecx
430568:	51                   	push   %ecx
430569:	dd 55 f8             	fstl   -0x8(%ebp)
43056c:	dd 1c 24             	fstpl  (%esp)
43056f:	e8 c5 79 00 00       	call   0x437f39
430574:	dd 45 f8             	fldl   -0x8(%ebp)
430577:	da e9                	fucompp
430579:	df e0                	fnstsw %ax
43057b:	59                   	pop    %ecx
43057c:	59                   	pop    %ecx
43057d:	f6 c4 44             	test   $0x44,%ah
430580:	7a 05                	jp     0x430587
430582:	6a 02                	push   $0x2
430584:	58                   	pop    %eax
430585:	eb 09                	jmp    0x430590
430587:	33 c0                	xor    %eax,%eax
430589:	40                   	inc    %eax
43058a:	eb 04                	jmp    0x430590
43058c:	dd d8                	fstp   %st(0)
43058e:	33 c0                	xor    %eax,%eax
430590:	8b e5                	mov    %ebp,%esp
430592:	5d                   	pop    %ebp
430593:	c3                   	ret
430594:	55                   	push   %ebp
430595:	8b ec                	mov    %esp,%ebp
430597:	dd 45 08             	fldl   0x8(%ebp)
43059a:	b9 00 00 f0 7f       	mov    $0x7ff00000,%ecx
43059f:	56                   	push   %esi
4305a0:	33 f6                	xor    %esi,%esi
4305a2:	d9 e1                	fabs
4305a4:	b8 00 00 f0 ff       	mov    $0xfff00000,%eax
4305a9:	39 4d 14             	cmp    %ecx,0x14(%ebp)
4305ac:	75 3a                	jne    0x4305e8
4305ae:	39 75 10             	cmp    %esi,0x10(%ebp)
4305b1:	75 7c                	jne    0x43062f
4305b3:	d9 e8                	fld1
4305b5:	d8 d1                	fcom   %st(1)
4305b7:	df e0                	fnstsw %ax
4305b9:	f6 c4 05             	test   $0x5,%ah
4305bc:	7a 0f                	jp     0x4305cd
4305be:	dd d9                	fstp   %st(1)
4305c0:	dd d8                	fstp   %st(0)
4305c2:	dd 05 60 fd 4b 00    	fldl   0x4bfd60
4305c8:	e9 e8 00 00 00       	jmp    0x4306b5
4305cd:	d8 d1                	fcom   %st(1)
4305cf:	df e0                	fnstsw %ax
4305d1:	dd d9                	fstp   %st(1)
4305d3:	f6 c4 41             	test   $0x41,%ah
4305d6:	8b 45 18             	mov    0x18(%ebp),%eax
4305d9:	0f 85 d9 00 00 00    	jne    0x4306b8
4305df:	dd d8                	fstp   %st(0)
4305e1:	d9 ee                	fldz
4305e3:	e9 d0 00 00 00       	jmp    0x4306b8
4305e8:	39 45 14             	cmp    %eax,0x14(%ebp)
4305eb:	75 42                	jne    0x43062f
4305ed:	39 75 10             	cmp    %esi,0x10(%ebp)
4305f0:	75 3d                	jne    0x43062f
4305f2:	d9 e8                	fld1
4305f4:	d8 d1                	fcom   %st(1)
4305f6:	df e0                	fnstsw %ax
4305f8:	f6 c4 05             	test   $0x5,%ah
4305fb:	7a 0b                	jp     0x430608
4305fd:	dd d9                	fstp   %st(1)
4305ff:	dd d8                	fstp   %st(0)
430601:	d9 ee                	fldz
430603:	e9 ad 00 00 00       	jmp    0x4306b5
430608:	de d9                	fcompp
43060a:	df e0                	fnstsw %ax
43060c:	f6 c4 41             	test   $0x41,%ah
43060f:	8b 45 18             	mov    0x18(%ebp),%eax
430612:	75 0b                	jne    0x43061f
430614:	dd 05 60 fd 4b 00    	fldl   0x4bfd60
43061a:	e9 99 00 00 00       	jmp    0x4306b8
43061f:	dd 05 68 fd 4b 00    	fldl   0x4bfd68
430625:	33 f6                	xor    %esi,%esi
430627:	dd 18                	fstpl  (%eax)
430629:	46                   	inc    %esi
43062a:	e9 96 00 00 00       	jmp    0x4306c5
43062f:	dd d8                	fstp   %st(0)
430631:	39 4d 0c             	cmp    %ecx,0xc(%ebp)
430634:	75 2d                	jne    0x430663
430636:	39 75 08             	cmp    %esi,0x8(%ebp)
430639:	0f 85 86 00 00 00    	jne    0x4306c5
43063f:	d9 ee                	fldz
430641:	dd 45 10             	fldl   0x10(%ebp)
430644:	d8 d1                	fcom   %st(1)
430646:	df e0                	fnstsw %ax
430648:	f6 c4 41             	test   $0x41,%ah
43064b:	0f 84 6d ff ff ff    	je     0x4305be
430651:	d8 d9                	fcomp  %st(1)
430653:	df e0                	fnstsw %ax
430655:	f6 c4 05             	test   $0x5,%ah
430658:	8b 45 18             	mov    0x18(%ebp),%eax
43065b:	7b 5b                	jnp    0x4306b8
43065d:	dd d8                	fstp   %st(0)
43065f:	d9 e8                	fld1
430661:	eb 55                	jmp    0x4306b8
430663:	39 45 0c             	cmp    %eax,0xc(%ebp)
430666:	75 5d                	jne    0x4306c5
430668:	39 75 08             	cmp    %esi,0x8(%ebp)
43066b:	75 58                	jne    0x4306c5
43066d:	dd 45 10             	fldl   0x10(%ebp)
430670:	51                   	push   %ecx
430671:	51                   	push   %ecx
430672:	dd 1c 24             	fstpl  (%esp)
430675:	e8 b2 fe ff ff       	call   0x43052c
43067a:	d9 ee                	fldz
43067c:	dd 45 10             	fldl   0x10(%ebp)
43067f:	59                   	pop    %ecx
430680:	59                   	pop    %ecx
430681:	d8 d1                	fcom   %st(1)
430683:	8b c8                	mov    %eax,%ecx
430685:	df e0                	fnstsw %ax
430687:	f6 c4 41             	test   $0x41,%ah
43068a:	75 13                	jne    0x43069f