425316:	25 ff ff 0f 00       	and    $0xfffff,%eax
42531b:	0b 44 24 10          	or     0x10(%esp),%eax
42531f:	75 c3                	jne    0x4252e4
425321:	8d 54 24 08          	lea    0x8(%esp),%edx
425325:	e8 bb b0 00 00       	call   0x4303e5
42532a:	8b 44 24 0c          	mov    0xc(%esp),%eax
42532e:	8b d0                	mov    %eax,%edx
425330:	25 00 00 f0 7f       	and    $0x7ff00000,%eax
425335:	81 e2 ff ff 0f 00    	and    $0xfffff,%edx
42533b:	3d 00 00 f0 7f       	cmp    $0x7ff00000,%eax
425340:	75 06                	jne    0x425348
425342:	0b 54 24 08          	or     0x8(%esp),%edx
425346:	75 b8                	jne    0x425300
425348:	85 c9                	test   %ecx,%ecx
42534a:	75 bb                	jne    0x425307
42534c:	83 ec 74             	sub    $0x74,%esp
42534f:	8b cc                	mov    %esp,%ecx
425351:	51                   	push   %ecx
425352:	83 ec 10             	sub    $0x10,%esp
425355:	dd 1c 24             	fstpl  (%esp)
425358:	dd 5c 24 08          	fstpl  0x8(%esp)
42535c:	9b dd 71 08          	fsave  0x8(%ecx)
425360:	e8 2f b2 00 00       	call   0x430594
425365:	83 c4 10             	add    $0x10,%esp
425368:	59                   	pop    %ecx
425369:	dd 61 08             	frstor 0x8(%ecx)
42536c:	dd 01                	fldl   (%ecx)
42536e:	83 c4 74             	add    $0x74,%esp
425371:	85 c0                	test   %eax,%eax
425373:	0f 84 c5 b0 00 00    	je     0x43043e
425379:	b8 01 00 00 00       	mov    $0x1,%eax
42537e:	e9 42 ff ff ff       	jmp    0x4252c5
425383:	8b 44 24 0c          	mov    0xc(%esp),%eax
425387:	25 ff ff 0f 00       	and    $0xfffff,%eax
42538c:	0b 44 24 08          	or     0x8(%esp),%eax
425390:	0f 85 f7 fe ff ff    	jne    0x42528d
425396:	dd d8                	fstp   %st(0)
425398:	8b 44 24 14          	mov    0x14(%esp),%eax
42539c:	25 ff ff ff 7f       	and    $0x7fffffff,%eax
4253a1:	0b 44 24 10          	or     0x10(%esp),%eax
4253a5:	74 3d                	je     0x4253e4
4253a7:	e8 66 00 00 00       	call   0x425412
4253ac:	8a 6c 24 0f          	mov    0xf(%esp),%ch
4253b0:	c0 ed 07             	shr    $0x7,%ch
4253b3:	f7 44 24 17 80 00 00 	testl  $0x80,0x17(%esp)
4253ba:	00
4253bb:	74 16                	je     0x4253d3
4253bd:	db 2d d0 7b 49 00    	fldt   0x497bd0
4253c3:	84 cd                	test   %cl,%ch
4253c5:	74 02                	je     0x4253c9
4253c7:	d9 e0                	fchs
4253c9:	b8 02 00 00 00       	mov    $0x2,%eax
4253ce:	e9 f2 fe ff ff       	jmp    0x4252c5
4253d3:	d9 ee                	fldz
4253d5:	84 cd                	test   %cl,%ch
4253d7:	0f 84 61 b0 00 00    	je     0x43043e
4253dd:	d9 e0                	fchs
4253df:	e9 5a b0 00 00       	jmp    0x43043e
4253e4:	dd d8                	fstp   %st(0)
4253e6:	d9 e8                	fld1
4253e8:	e9 51 b0 00 00       	jmp    0x43043e
4253ed:	d9 c1                	fld    %st(1)
4253ef:	e8 1e 00 00 00       	call   0x425412
4253f4:	d9 e0                	fchs
4253f6:	84 c9                	test   %cl,%cl
4253f8:	0f 85 9c fe ff ff    	jne    0x42529a
4253fe:	dd d8                	fstp   %st(0)
425400:	dd d8                	fstp   %st(0)
425402:	db 2d 30 7c 49 00    	fldt   0x497c30
425408:	b8 01 00 00 00       	mov    $0x1,%eax
42540d:	e9 b3 fe ff ff       	jmp    0x4252c5
425412:	d9 c0                	fld    %st(0)
425414:	d9 fc                	frndint
425416:	d8 d9                	fcomp  %st(1)
425418:	b1 00                	mov    $0x0,%cl
42541a:	9b df e0             	fstsw  %ax
42541d:	9e                   	sahf
42541e:	75 17                	jne    0x425437
425420:	dc 0d 10 f0 4b 00    	fmull  0x4bf010
425426:	fe c1                	inc    %cl
425428:	d9 c0                	fld    %st(0)
42542a:	d9 fc                	frndint
42542c:	de d9                	fcompp
42542e:	9b df e0             	fstsw  %ax
425431:	9e                   	sahf
425432:	75 02                	jne    0x425436
425434:	fe c1                	inc    %cl
425436:	c3                   	ret
425437:	dd d8                	fstp   %st(0)
425439:	c3                   	ret
42543a:	55                   	push   %ebp
42543b:	8b ec                	mov    %esp,%ebp
42543d:	51                   	push   %ecx
42543e:	51                   	push   %ecx
42543f:	8d 45 f8             	lea    -0x8(%ebp),%eax
425442:	50                   	push   %eax
425443:	ff 15 74 f3 48 00    	call   *0x48f374
425449:	8b 4d f8             	mov    -0x8(%ebp),%ecx
42544c:	8b 45 fc             	mov    -0x4(%ebp),%eax
42544f:	81 c1 00 80 c1 2a    	add    $0x2ac18000,%ecx
425455:	6a 00                	push   $0x0
425457:	68 80 96 98 00       	push   $0x989680
42545c:	15 21 4e 62 fe       	adc    $0xfe624e21,%eax
425461:	50                   	push   %eax
425462:	51                   	push   %ecx
425463:	e8 68 b2 00 00       	call   0x4306d0
425468:	83 fa 07             	cmp    $0x7,%edx
42546b:	7c 0e                	jl     0x42547b
42546d:	7f 07                	jg     0x425476
42546f:	3d ff 6f 40 93       	cmp    $0x93406fff,%eax
425474:	76 05                	jbe    0x42547b
425476:	83 c8 ff             	or     $0xffffffff,%eax
425479:	8b d0                	mov    %eax,%edx
42547b:	8b 4d 08             	mov    0x8(%ebp),%ecx
42547e:	85 c9                	test   %ecx,%ecx
425480:	74 05                	je     0x425487
425482:	89 01                	mov    %eax,(%ecx)
425484:	89 51 04             	mov    %edx,0x4(%ecx)
425487:	8b e5                	mov    %ebp,%esp
425489:	5d                   	pop    %ebp
42548a:	c3                   	ret
42548b:	55                   	push   %ebp
42548c:	8b ec                	mov    %esp,%ebp
42548e:	6a 40                	push   $0x40
425490:	ff 75 0c             	push   0xc(%ebp)
425493:	ff 75 08             	push   0x8(%ebp)
425496:	e8 05 00 00 00       	call   0x4254a0
42549b:	83 c4 0c             	add    $0xc,%esp
42549e:	5d                   	pop    %ebp
42549f:	c3                   	ret
4254a0:	6a 0c                	push   $0xc
4254a2:	68 78 bc 4b 00       	push   $0x4bbc78
4254a7:	e8 94 36 00 00       	call   0x428b40
4254ac:	33 c9                	xor    %ecx,%ecx
4254ae:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
4254b1:	33 c0                	xor    %eax,%eax
4254b3:	8b 7d 08             	mov    0x8(%ebp),%edi
4254b6:	85 ff                	test   %edi,%edi
4254b8:	0f 95 c0             	setne  %al
4254bb:	85 c0                	test   %eax,%eax
4254bd:	75 17                	jne    0x4254d6
4254bf:	e8 a4 38 00 00       	call   0x428d68
4254c4:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
4254ca:	e8 27 3b 00 00       	call   0x428ff6
4254cf:	33 c0                	xor    %eax,%eax
4254d1:	e9 80 00 00 00       	jmp    0x425556
4254d6:	33 c0                	xor    %eax,%eax
4254d8:	8b 5d 0c             	mov    0xc(%ebp),%ebx
4254db:	85 db                	test   %ebx,%ebx
4254dd:	0f 95 c0             	setne  %al
4254e0:	85 c0                	test   %eax,%eax
4254e2:	74 db                	je     0x4254bf
4254e4:	33 c0                	xor    %eax,%eax
4254e6:	66 39 0b             	cmp    %cx,(%ebx)
4254e9:	0f 95 c0             	setne  %al
4254ec:	85 c0                	test   %eax,%eax
4254ee:	74 cf                	je     0x4254bf
4254f0:	e8 43 b2 00 00       	call   0x430738
4254f5:	8b f0                	mov    %eax,%esi
4254f7:	89 75 08             	mov    %esi,0x8(%ebp)
4254fa:	85 f6                	test   %esi,%esi
4254fc:	75 0d                	jne    0x42550b
4254fe:	e8 65 38 00 00       	call   0x428d68
425503:	c7 00 18 00 00 00    	movl   $0x18,(%eax)
425509:	eb c4                	jmp    0x4254cf
42550b:	33 c0                	xor    %eax,%eax
42550d:	89 45 fc             	mov    %eax,-0x4(%ebp)
425510:	66 39 07             	cmp    %ax,(%edi)
425513:	75 20                	jne    0x425535
425515:	e8 4e 38 00 00       	call   0x428d68
42551a:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
425520:	6a fe                	push   $0xfffffffe
425522:	8d 45 f0             	lea    -0x10(%ebp),%eax
425525:	50                   	push   %eax
425526:	68 50 fd 4b 00       	push   $0x4bfd50
42552b:	e8 d0 b5 00 00       	call   0x430b00
425530:	83 c4 0c             	add    $0xc,%esp
425533:	eb 9a                	jmp    0x4254cf
425535:	56                   	push   %esi
425536:	ff 75 10             	push   0x10(%ebp)
425539:	53                   	push   %ebx
42553a:	57                   	push   %edi
42553b:	e8 17 b3 00 00       	call   0x430857
425540:	83 c4 10             	add    $0x10,%esp
425543:	8b f8                	mov    %eax,%edi
425545:	89 7d e4             	mov    %edi,-0x1c(%ebp)
425548:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
42554f:	e8 0e 00 00 00       	call   0x425562
425554:	8b c7                	mov    %edi,%eax
425556:	e8 2a 36 00 00       	call   0x428b85
42555b:	c3                   	ret
42555c:	8b 75 08             	mov    0x8(%ebp),%esi
42555f:	8b 7d e4             	mov    -0x1c(%ebp),%edi
425562:	56                   	push   %esi
425563:	e8 55 19 00 00       	call   0x426ebd
425568:	59                   	pop    %ecx
425569:	c3                   	ret
42556a:	55                   	push   %ebp
42556b:	8b ec                	mov    %esp,%ebp
42556d:	56                   	push   %esi
42556e:	8b 75 08             	mov    0x8(%ebp),%esi
425571:	57                   	push   %edi
425572:	83 cf ff             	or     $0xffffffff,%edi
425575:	85 f6                	test   %esi,%esi
425577:	75 14                	jne    0x42558d
425579:	e8 ea 37 00 00       	call   0x428d68
42557e:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
425584:	e8 6d 3a 00 00       	call   0x428ff6
425589:	0b c7                	or     %edi,%eax
42558b:	eb 45                	jmp    0x4255d2
42558d:	f6 46 0c 83          	testb  $0x83,0xc(%esi)
425591:	74 39                	je     0x4255cc
425593:	56                   	push   %esi
425594:	e8 d4 f6 ff ff       	call   0x424c6d
425599:	56                   	push   %esi
42559a:	8b f8                	mov    %eax,%edi
42559c:	e8 26 b8 00 00       	call   0x430dc7
4255a1:	56                   	push   %esi
4255a2:	e8 6f f3 ff ff       	call   0x424916
4255a7:	50                   	push   %eax
4255a8:	e8 a5 b6 00 00       	call   0x430c52
4255ad:	83 c4 10             	add    $0x10,%esp
4255b0:	85 c0                	test   %eax,%eax
4255b2:	79 05                	jns    0x4255b9
4255b4:	83 cf ff             	or     $0xffffffff,%edi
4255b7:	eb 13                	jmp    0x4255cc
4255b9:	83 7e 1c 00          	cmpl   $0x0,0x1c(%esi)
4255bd:	74 0d                	je     0x4255cc
4255bf:	ff 76 1c             	push   0x1c(%esi)
4255c2:	e8 ce d9 ff ff       	call   0x422f95
4255c7:	83 66 1c 00          	andl   $0x0,0x1c(%esi)
4255cb:	59                   	pop    %ecx
4255cc:	83 66 0c 00          	andl   $0x0,0xc(%esi)
4255d0:	8b c7                	mov    %edi,%eax
4255d2:	5f                   	pop    %edi
4255d3:	5e                   	pop    %esi
4255d4:	5d                   	pop    %ebp
4255d5:	c3                   	ret
4255d6:	6a 0c                	push   $0xc
4255d8:	68 98 bc 4b 00       	push   $0x4bbc98
4255dd:	e8 5e 35 00 00       	call   0x428b40
4255e2:	83 cf ff             	or     $0xffffffff,%edi
4255e5:	89 7d e4             	mov    %edi,-0x1c(%ebp)
4255e8:	33 c0                	xor    %eax,%eax
4255ea:	8b 75 08             	mov    0x8(%ebp),%esi
4255ed:	85 f6                	test   %esi,%esi
4255ef:	0f 95 c0             	setne  %al
4255f2:	85 c0                	test   %eax,%eax
4255f4:	75 18                	jne    0x42560e
4255f6:	e8 6d 37 00 00       	call   0x428d68
4255fb:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
425601:	e8 f0 39 00 00       	call   0x428ff6
425606:	8b c7                	mov    %edi,%eax
425608:	e8 78 35 00 00       	call   0x428b85
42560d:	c3                   	ret
42560e:	f6 46 0c 40          	testb  $0x40,0xc(%esi)
425612:	74 06                	je     0x42561a
425614:	83 66 0c 00          	andl   $0x0,0xc(%esi)
425618:	eb ec                	jmp    0x425606
42561a:	56                   	push   %esi
42561b:	e8 2e 18 00 00       	call   0x426e4e
425620:	59                   	pop    %ecx
425621:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
425625:	56                   	push   %esi
425626:	e8 3f ff ff ff       	call   0x42556a
42562b:	59                   	pop    %ecx
42562c:	8b f8                	mov    %eax,%edi
42562e:	89 7d e4             	mov    %edi,-0x1c(%ebp)
425631:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
425638:	e8 08 00 00 00       	call   0x425645
42563d:	eb c7                	jmp    0x425606
42563f:	8b 75 08             	mov    0x8(%ebp),%esi
425642:	8b 7d e4             	mov    -0x1c(%ebp),%edi
425645:	56                   	push   %esi
425646:	e8 72 18 00 00       	call   0x426ebd
42564b:	59                   	pop    %ecx
42564c:	c3                   	ret
42564d:	55                   	push   %ebp
42564e:	8b ec                	mov    %esp,%ebp
425650:	83 ec 10             	sub    $0x10,%esp
425653:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
425657:	8b 4d 08             	mov    0x8(%ebp),%ecx
42565a:	8b 45 0c             	mov    0xc(%ebp),%eax
42565d:	53                   	push   %ebx
42565e:	56                   	push   %esi
42565f:	57                   	push   %edi
425660:	89 4d fc             	mov    %ecx,-0x4(%ebp)
425663:	89 45 f8             	mov    %eax,-0x8(%ebp)
425666:	74 1b                	je     0x425683
425668:	8b 5d 14             	mov    0x14(%ebp),%ebx
42566b:	85 db                	test   %ebx,%ebx
42566d:	74 14                	je     0x425683
42566f:	85 c9                	test   %ecx,%ecx
425671:	75 19                	jne    0x42568c
425673:	e8 f0 36 00 00       	call   0x428d68
425678:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
42567e:	e8 73 39 00 00       	call   0x428ff6
425683:	33 c0                	xor    %eax,%eax
425685:	5f                   	pop    %edi
425686:	5e                   	pop    %esi
425687:	5b                   	pop    %ebx
425688:	8b e5                	mov    %ebp,%esp
42568a:	5d                   	pop    %ebp
42568b:	c3                   	ret
42568c:	8b 75 18             	mov    0x18(%ebp),%esi
42568f:	85 f6                	test   %esi,%esi
425691:	74 0c                	je     0x42569f
425693:	83 c8 ff             	or     $0xffffffff,%eax
425696:	33 d2                	xor    %edx,%edx
425698:	f7 75 10             	divl   0x10(%ebp)
42569b:	3b d8                	cmp    %eax,%ebx
42569d:	76 24                	jbe    0x4256c3
42569f:	83 7d 0c ff          	cmpl   $0xffffffff,0xc(%ebp)
4256a3:	74 0e                	je     0x4256b3
4256a5:	ff 75 0c             	push   0xc(%ebp)
4256a8:	6a 00                	push   $0x0
4256aa:	51                   	push   %ecx
4256ab:	e8 70 d9 ff ff       	call   0x423020
4256b0:	83 c4 0c             	add    $0xc,%esp
4256b3:	85 f6                	test   %esi,%esi
4256b5:	74 bc                	je     0x425673
4256b7:	83 c8 ff             	or     $0xffffffff,%eax
4256ba:	33 d2                	xor    %edx,%edx
4256bc:	f7 75 10             	divl   0x10(%ebp)
4256bf:	3b d8                	cmp    %eax,%ebx
4256c1:	77 b0                	ja     0x425673
4256c3:	8b 7d 10             	mov    0x10(%ebp),%edi
4256c6:	0f af fb             	imul   %ebx,%edi
4256c9:	f7 46 0c 0c 01 00 00 	testl  $0x10c,0xc(%esi)
4256d0:	8b df                	mov    %edi,%ebx
4256d2:	74 05                	je     0x4256d9
4256d4:	8b 4e 18             	mov    0x18(%esi),%ecx
4256d7:	eb 05                	jmp    0x4256de
4256d9:	b9 00 10 00 00       	mov    $0x1000,%ecx
4256de:	89 4d f4             	mov    %ecx,-0xc(%ebp)
4256e1:	85 ff                	test   %edi,%edi
4256e3:	0f 84 e3 00 00 00    	je     0x4257cc
4256e9:	f7 46 0c 0c 01 00 00 	testl  $0x10c,0xc(%esi)
4256f0:	74 3f                	je     0x425731
4256f2:	8b 46 04             	mov    0x4(%esi),%eax
4256f5:	89 45 f0             	mov    %eax,-0x10(%ebp)
4256f8:	85 c0                	test   %eax,%eax
4256fa:	74 35                	je     0x425731
4256fc:	0f 88 f8 00 00 00    	js     0x4257fa
425702:	3b d8                	cmp    %eax,%ebx
425704:	73 05                	jae    0x42570b
425706:	8b c3                	mov    %ebx,%eax
425708:	89 5d f0             	mov    %ebx,-0x10(%ebp)
42570b:	8b 4d f8             	mov    -0x8(%ebp),%ecx
42570e:	3b c1                	cmp    %ecx,%eax