486394:	89 4c 24 20          	mov    %ecx,0x20(%esp)
486398:	8b 44 24 10          	mov    0x10(%esp),%eax
48639c:	83 64 24 50 00       	andl   $0x0,0x50(%esp)
4863a1:	51                   	push   %ecx
4863a2:	51                   	push   %ecx
4863a3:	6a 00                	push   $0x0
4863a5:	51                   	push   %ecx
4863a6:	ff 74 24 1c          	push   0x1c(%esp)
4863aa:	89 44 24 68          	mov    %eax,0x68(%esp)
4863ae:	ff b3 98 00 00 00    	push   0x98(%ebx)
4863b4:	8b 47 10             	mov    0x10(%edi),%eax
4863b7:	89 44 24 70          	mov    %eax,0x70(%esp)
4863bb:	8b 47 04             	mov    0x4(%edi),%eax
4863be:	51                   	push   %ecx
4863bf:	89 44 24 78          	mov    %eax,0x78(%esp)
4863c3:	8d 44 24 6c          	lea    0x6c(%esp),%eax
4863c7:	6a 00                	push   $0x0
4863c9:	50                   	push   %eax
4863ca:	56                   	push   %esi
4863cb:	e8 fa 30 fb ff       	call   0x4394ca
4863d0:	8b 47 14             	mov    0x14(%edi),%eax
4863d3:	8b 77 10             	mov    0x10(%edi),%esi
4863d6:	51                   	push   %ecx
4863d7:	51                   	push   %ecx
4863d8:	6a 00                	push   $0x0
4863da:	51                   	push   %ecx
4863db:	ff 74 24 1c          	push   0x1c(%esp)
4863df:	89 44 24 6c          	mov    %eax,0x6c(%esp)
4863e3:	8d 44 24 64          	lea    0x64(%esp),%eax
4863e7:	ff b3 9c 00 00 00    	push   0x9c(%ebx)
4863ed:	89 74 24 68          	mov    %esi,0x68(%esp)
4863f1:	51                   	push   %ecx
4863f2:	ff b3 98 00 00 00    	push   0x98(%ebx)
4863f8:	8b 4c 24 40          	mov    0x40(%esp),%ecx
4863fc:	50                   	push   %eax
4863fd:	8d 43 64             	lea    0x64(%ebx),%eax
486400:	50                   	push   %eax
486401:	e8 c4 30 fb ff       	call   0x4394ca
486406:	8b 47 14             	mov    0x14(%edi),%eax
486409:	51                   	push   %ecx
48640a:	51                   	push   %ecx
48640b:	6a 00                	push   $0x0
48640d:	51                   	push   %ecx
48640e:	ff 74 24 1c          	push   0x1c(%esp)
486412:	03 c6                	add    %esi,%eax
486414:	ff b3 a0 00 00 00    	push   0xa0(%ebx)
48641a:	89 44 24 68          	mov    %eax,0x68(%esp)
48641e:	8b 47 18             	mov    0x18(%edi),%eax
486421:	89 44 24 70          	mov    %eax,0x70(%esp)
486425:	8b 83 9c 00 00 00    	mov    0x9c(%ebx),%eax
48642b:	03 83 98 00 00 00    	add    0x98(%ebx),%eax
486431:	51                   	push   %ecx
486432:	50                   	push   %eax
486433:	8d 44 24 70          	lea    0x70(%esp),%eax
486437:	50                   	push   %eax
486438:	8d 43 64             	lea    0x64(%ebx),%eax
48643b:	8b 5c 24 44          	mov    0x44(%esp),%ebx
48643f:	50                   	push   %eax
486440:	8b cb                	mov    %ebx,%ecx
486442:	e8 83 30 fb ff       	call   0x4394ca
486447:	85 db                	test   %ebx,%ebx
486449:	74 0f                	je     0x48645a
48644b:	ff 33                	push   (%ebx)
48644d:	ff 15 2c c0 4a 00    	call   *0x4ac02c
486453:	53                   	push   %ebx
486454:	ff 15 04 c0 4a 00    	call   *0x4ac004
48645a:	8b 4c 24 10          	mov    0x10(%esp),%ecx
48645e:	8d 04 09             	lea    (%ecx,%ecx,1),%eax
486461:	01 47 04             	add    %eax,0x4(%edi)
486464:	a1 f4 65 4a 00       	mov    0x4a65f4,%eax
486469:	89 47 20             	mov    %eax,0x20(%edi)
48646c:	5f                   	pop    %edi
48646d:	5e                   	pop    %esi
48646e:	5b                   	pop    %ebx
48646f:	8b e5                	mov    %ebp,%esp
486471:	5d                   	pop    %ebp
486472:	c2 04 00             	ret    $0x4
486475:	8b ff                	mov    %edi,%edi
486477:	55                   	push   %ebp
486478:	8b ec                	mov    %esp,%ebp
48647a:	83 ec 10             	sub    $0x10,%esp
48647d:	53                   	push   %ebx
48647e:	89 4d f4             	mov    %ecx,-0xc(%ebp)
486481:	33 db                	xor    %ebx,%ebx
486483:	8b 4d 08             	mov    0x8(%ebp),%ecx
486486:	56                   	push   %esi
486487:	89 55 f8             	mov    %edx,-0x8(%ebp)
48648a:	e8 d0 c0 ff ff       	call   0x48255f
48648f:	d9 05 00 41 41 00    	flds   0x414100
486495:	8b f0                	mov    %eax,%esi
486497:	51                   	push   %ecx
486498:	d9 1c 24             	fstps  (%esp)
48649b:	53                   	push   %ebx
48649c:	ff 36                	push   (%esi)
48649e:	ff 15 2c c1 4a 00    	call   *0x4ac12c
4864a4:	85 c0                	test   %eax,%eax
4864a6:	74 05                	je     0x4864ad
4864a8:	89 46 04             	mov    %eax,0x4(%esi)
4864ab:	eb 02                	jmp    0x4864af
4864ad:	8b c3                	mov    %ebx,%eax
4864af:	85 c0                	test   %eax,%eax
4864b1:	0f 85 90 00 00 00    	jne    0x486547
4864b7:	8d 45 fc             	lea    -0x4(%ebp),%eax
4864ba:	89 5d fc             	mov    %ebx,-0x4(%ebp)
4864bd:	50                   	push   %eax
4864be:	ff 36                	push   (%esi)
4864c0:	ff 15 30 c1 4a 00    	call   *0x4ac130
4864c6:	85 c0                	test   %eax,%eax
4864c8:	74 03                	je     0x4864cd
4864ca:	89 46 04             	mov    %eax,0x4(%esi)
4864cd:	8b 45 fc             	mov    -0x4(%ebp),%eax
4864d0:	33 c9                	xor    %ecx,%ecx
4864d2:	57                   	push   %edi
4864d3:	6a 08                	push   $0x8
4864d5:	5a                   	pop    %edx
4864d6:	f7 e2                	mul    %edx
4864d8:	0f 90 c1             	seto   %cl
4864db:	f7 d9                	neg    %ecx
4864dd:	0b c8                	or     %eax,%ecx
4864df:	51                   	push   %ecx
4864e0:	e8 29 75 00 00       	call   0x48da0e
4864e5:	8b f8                	mov    %eax,%edi
4864e7:	89 7d f0             	mov    %edi,-0x10(%ebp)
4864ea:	59                   	pop    %ecx
4864eb:	85 ff                	test   %edi,%edi
4864ed:	74 18                	je     0x486507
4864ef:	8b 45 fc             	mov    -0x4(%ebp),%eax
4864f2:	8b cf                	mov    %edi,%ecx
4864f4:	85 c0                	test   %eax,%eax
4864f6:	74 11                	je     0x486509
4864f8:	89 59 04             	mov    %ebx,0x4(%ecx)
4864fb:	89 19                	mov    %ebx,(%ecx)
4864fd:	8d 49 08             	lea    0x8(%ecx),%ecx
486500:	83 e8 01             	sub    $0x1,%eax
486503:	75 f3                	jne    0x4864f8
486505:	eb 02                	jmp    0x486509
486507:	8b fb                	mov    %ebx,%edi
486509:	ff 75 fc             	push   -0x4(%ebp)
48650c:	57                   	push   %edi
48650d:	ff 36                	push   (%esi)
48650f:	ff 15 34 c1 4a 00    	call   *0x4ac134
486515:	85 c0                	test   %eax,%eax
486517:	74 05                	je     0x48651e
486519:	89 46 04             	mov    %eax,0x4(%esi)
48651c:	eb 02                	jmp    0x486520
48651e:	8b c3                	mov    %ebx,%eax
486520:	85 c0                	test   %eax,%eax
486522:	75 1b                	jne    0x48653f
486524:	ff 75 14             	push   0x14(%ebp)
486527:	8b 55 f8             	mov    -0x8(%ebp),%edx
48652a:	ff 75 10             	push   0x10(%ebp)
48652d:	8b 4d f4             	mov    -0xc(%ebp),%ecx
486530:	ff 75 0c             	push   0xc(%ebp)
486533:	ff 75 fc             	push   -0x4(%ebp)
486536:	53                   	push   %ebx
486537:	57                   	push   %edi
486538:	e8 21 00 00 00       	call   0x48655e
48653d:	8a d8                	mov    %al,%bl
48653f:	57                   	push   %edi
486540:	e8 07 75 00 00       	call   0x48da4c
486545:	59                   	pop    %ecx
486546:	5f                   	pop    %edi
486547:	ff 36                	push   (%esi)
486549:	ff 15 cc c0 4a 00    	call   *0x4ac0cc
48654f:	56                   	push   %esi
486550:	ff 15 04 c0 4a 00    	call   *0x4ac004
486556:	5e                   	pop    %esi
486557:	8a c3                	mov    %bl,%al
486559:	5b                   	pop    %ebx
48655a:	c9                   	leave
48655b:	c2 10 00             	ret    $0x10
48655e:	68 0c 01 00 00       	push   $0x10c
486563:	b8 79 68 49 00       	mov    $0x496879,%eax
486568:	e8 99 9f 00 00       	call   0x490506
48656d:	8b da                	mov    %edx,%ebx
48656f:	89 5d bc             	mov    %ebx,-0x44(%ebp)
486572:	8b f1                	mov    %ecx,%esi
486574:	89 75 94             	mov    %esi,-0x6c(%ebp)
486577:	8b 45 10             	mov    0x10(%ebp),%eax
48657a:	68 44 48 4a 00       	push   $0x4a4844
48657f:	89 45 8c             	mov    %eax,-0x74(%ebp)
486582:	ff 15 38 7f 4a 00    	call   *0x4a7f38
486588:	83 8d 3c ff ff ff ff 	orl    $0xffffffff,-0xc4(%ebp)
48658f:	8d 85 3c ff ff ff    	lea    -0xc4(%ebp),%eax
486595:	50                   	push   %eax
486596:	ff 76 14             	push   0x14(%esi)
486599:	ff 15 d8 c0 4a 00    	call   *0x4ac0d8
48659f:	85 c0                	test   %eax,%eax
4865a1:	74 03                	je     0x4865a6
4865a3:	89 46 18             	mov    %eax,0x18(%esi)
4865a6:	83 bd 3c ff ff ff 03 	cmpl   $0x3,-0xc4(%ebp)
4865ad:	8b 55 8c             	mov    -0x74(%ebp),%edx
4865b0:	0f 95 85 54 ff ff ff 	setne  -0xac(%ebp)
4865b7:	6b f2 03             	imul   $0x3,%edx,%esi
4865ba:	80 7d 18 00          	cmpb   $0x0,0x18(%ebp)
4865be:	74 11                	je     0x4865d1
4865c0:	83 fa 02             	cmp    $0x2,%edx
4865c3:	72 0c                	jb     0x4865d1
4865c5:	83 bb 94 00 00 00 00 	cmpl   $0x0,0x94(%ebx)
4865cc:	74 03                	je     0x4865d1
4865ce:	83 c6 02             	add    $0x2,%esi
4865d1:	8b 0d 98 64 4a 00    	mov    0x4a6498,%ecx
4865d7:	89 4d 9c             	mov    %ecx,-0x64(%ebp)
4865da:	85 c9                	test   %ecx,%ecx
4865dc:	75 04                	jne    0x4865e2
4865de:	33 c0                	xor    %eax,%eax
4865e0:	eb 0a                	jmp    0x4865ec
4865e2:	a1 9c 64 4a 00       	mov    0x4a649c,%eax
4865e7:	2b c1                	sub    %ecx,%eax
4865e9:	c1 f8 03             	sar    $0x3,%eax
4865ec:	3b c6                	cmp    %esi,%eax
4865ee:	73 56                	jae    0x486646
4865f0:	83 c6 64             	add    $0x64,%esi
4865f3:	b9 94 64 4a 00       	mov    $0x4a6494,%ecx
4865f8:	56                   	push   %esi
4865f9:	e8 c0 0b 00 00       	call   0x4871be
4865fe:	56                   	push   %esi
4865ff:	b9 a4 64 4a 00       	mov    $0x4a64a4,%ecx
486604:	e8 b5 0b 00 00       	call   0x4871be
486609:	56                   	push   %esi
48660a:	b9 b4 64 4a 00       	mov    $0x4a64b4,%ecx
48660f:	e8 aa 0b 00 00       	call   0x4871be
486614:	56                   	push   %esi
486615:	b9 c4 64 4a 00       	mov    $0x4a64c4,%ecx
48661a:	e8 2f 0b 00 00       	call   0x48714e
48661f:	56                   	push   %esi
486620:	b9 d4 64 4a 00       	mov    $0x4a64d4,%ecx
486625:	e8 24 0b 00 00       	call   0x48714e
48662a:	56                   	push   %esi
48662b:	b9 e4 64 4a 00       	mov    $0x4a64e4,%ecx
486630:	e8 19 0b 00 00       	call   0x48714e
486635:	56                   	push   %esi
486636:	e8 84 0a 00 00       	call   0x4870bf
48663b:	a1 98 64 4a 00       	mov    0x4a6498,%eax
486640:	8b 55 8c             	mov    -0x74(%ebp),%edx
486643:	89 45 9c             	mov    %eax,-0x64(%ebp)
486646:	83 65 84 00          	andl   $0x0,-0x7c(%ebp)
48664a:	83 a5 58 ff ff ff 00 	andl   $0x0,-0xa8(%ebp)
486651:	8b 4d 0c             	mov    0xc(%ebp),%ecx
486654:	a1 f8 64 4a 00       	mov    0x4a64f8,%eax
486659:	89 85 50 ff ff ff    	mov    %eax,-0xb0(%ebp)
48665f:	85 c9                	test   %ecx,%ecx
486661:	74 0b                	je     0x48666e
486663:	a1 c8 64 4a 00       	mov    0x4a64c8,%eax
486668:	89 85 58 ff ff ff    	mov    %eax,-0xa8(%ebp)
48666e:	8b 7d 08             	mov    0x8(%ebp),%edi
486671:	d9 ee                	fldz
486673:	d9 5d b0             	fstps  -0x50(%ebp)
486676:	8b 07                	mov    (%edi),%eax
486678:	89 45 90             	mov    %eax,-0x70(%ebp)
48667b:	89 85 64 ff ff ff    	mov    %eax,-0x9c(%ebp)
486681:	89 85 6c ff ff ff    	mov    %eax,-0x94(%ebp)
486687:	8b 47 04             	mov    0x4(%edi),%eax
48668a:	89 85 48 ff ff ff    	mov    %eax,-0xb8(%ebp)
486690:	89 85 68 ff ff ff    	mov    %eax,-0x98(%ebp)
486696:	89 85 70 ff ff ff    	mov    %eax,-0x90(%ebp)
48669c:	85 c9                	test   %ecx,%ecx
48669e:	74 05                	je     0x4866a5
4866a0:	d9 01                	flds   (%ecx)
4866a2:	d9 5d b0             	fstps  -0x50(%ebp)
4866a5:	80 7d 14 00          	cmpb   $0x0,0x14(%ebp)
4866a9:	74 68                	je     0x486713
4866ab:	db 44 d7 f8          	fildl  -0x8(%edi,%edx,8)
4866af:	8d 8d fc fe ff ff    	lea    -0x104(%ebp),%ecx
4866b5:	d9 5d 98             	fstps  -0x68(%ebp)
4866b8:	db 44 d7 fc          	fildl  -0x4(%edi,%edx,8)
4866bc:	8d 95 04 ff ff ff    	lea    -0xfc(%ebp),%edx
4866c2:	d9 5d 88             	fstps  -0x78(%ebp)
4866c5:	d9 45 98             	flds   -0x68(%ebp)
4866c8:	d9 9d 04 ff ff ff    	fstps  -0xfc(%ebp)
4866ce:	d9 45 88             	flds   -0x78(%ebp)
4866d1:	d9 9d 08 ff ff ff    	fstps  -0xf8(%ebp)
4866d7:	db 45 90             	fildl  -0x70(%ebp)
4866da:	d9 5d 98             	fstps  -0x68(%ebp)
4866dd:	db 85 48 ff ff ff    	fildl  -0xb8(%ebp)
4866e3:	d9 5d 88             	fstps  -0x78(%ebp)
4866e6:	d9 45 98             	flds   -0x68(%ebp)
4866e9:	d9 9d fc fe ff ff    	fstps  -0x104(%ebp)
4866ef:	d9 45 88             	flds   -0x78(%ebp)
4866f2:	d9 9d 00 ff ff ff    	fstps  -0x100(%ebp)
4866f8:	e8 28 14 00 00       	call   0x487b25
4866fd:	dc 1d 18 41 41 00    	fcompl 0x414118
486703:	df e0                	fnstsw %ax
486705:	f6 c4 05             	test   $0x5,%ah
486708:	7a 09                	jp     0x486713
48670a:	8b 4d 8c             	mov    -0x74(%ebp),%ecx
48670d:	49                   	dec    %ecx
48670e:	89 4d 8c             	mov    %ecx,-0x74(%ebp)
486711:	eb 03                	jmp    0x486716
486713:	8b 4d 8c             	mov    -0x74(%ebp),%ecx
486716:	80 bd 54 ff ff ff 00 	cmpb   $0x0,-0xac(%ebp)
48671d:	8b 43 04             	mov    0x4(%ebx),%eax
486720:	89 45 98             	mov    %eax,-0x68(%ebp)
486723:	db 45 98             	fildl  -0x68(%ebp)
486726:	d9 9d 5c ff ff ff    	fstps  -0xa4(%ebp)
48672c:	74 12                	je     0x486740
48672e:	d9 85 5c ff ff ff    	flds   -0xa4(%ebp)
486734:	dc 05 e8 41 41 00    	faddl  0x4141e8
48673a:	d9 9d 5c ff ff ff    	fstps  -0xa4(%ebp)
486740:	d9 85 5c ff ff ff    	flds   -0xa4(%ebp)
486746:	dd 95 e8 fe ff ff    	fstl   -0x118(%ebp)
48674c:	d9 c0                	fld    %st(0)
48674e:	d8 c9                	fmul   %st(1),%st
486750:	d9 9d 40 ff ff ff    	fstps  -0xc0(%ebp)
486756:	dd 05 00 42 41 00    	fldl   0x414200
48675c:	dc f9                	fdivr  %st,%st(1)
48675e:	d8 d1                	fcom   %st(1)
486760:	df e0                	fnstsw %ax
486762:	f6 c4 05             	test   $0x5,%ah
486765:	7a 04                	jp     0x48676b
486767:	dd d8                	fstp   %st(0)
486769:	eb 02                	jmp    0x48676d
48676b:	dd d9                	fstp   %st(1)
48676d:	8b 45 9c             	mov    -0x64(%ebp),%eax
486770:	33 d2                	xor    %edx,%edx
486772:	d9 5d ac             	fstps  -0x54(%ebp)
486775:	db 45 90             	fildl  -0x70(%ebp)
486778:	42                   	inc    %edx
486779:	8b f2                	mov    %edx,%esi
48677b:	89 95 34 ff ff ff    	mov    %edx,-0xcc(%ebp)
486781:	89 75 a8             	mov    %esi,-0x58(%ebp)
486784:	d9 18                	fstps  (%eax)
486786:	db 47 04             	fildl  0x4(%edi)
486789:	d9 58 04             	fstps  0x4(%eax)
48678c:	d9 45 b0             	flds   -0x50(%ebp)
48678f:	33 c0                	xor    %eax,%eax
486791:	89 45 80             	mov    %eax,-0x80(%ebp)
486794:	d9 55 a0             	fsts   -0x60(%ebp)
486797:	3b ca                	cmp    %edx,%ecx
486799:	0f 86 f8 01 00 00    	jbe    0x486997
48679f:	8b 7d 0c             	mov    0xc(%ebp),%edi
4867a2:	33 c9                	xor    %ecx,%ecx
4867a4:	21 85 38 ff ff ff    	and    %eax,-0xc8(%ebp)
4867aa:	8b 5d 08             	mov    0x8(%ebp),%ebx
4867ad:	d9 5d a0             	fstps  -0x60(%ebp)
4867b0:	8d 47 0c             	lea    0xc(%edi),%eax
4867b3:	c7 85 30 ff ff ff 0c 	movl   $0xc,-0xd0(%ebp)
4867ba:	00 00 00
4867bd:	89 45 a4             	mov    %eax,-0x5c(%ebp)
4867c0:	8b 85 58 ff ff ff    	mov    -0xa8(%ebp),%eax
4867c6:	8d 53 08             	lea    0x8(%ebx),%edx
4867c9:	83 c0 0c             	add    $0xc,%eax
4867cc:	89 95 4c ff ff ff    	mov    %edx,-0xb4(%ebp)
4867d2:	89 85 60 ff ff ff    	mov    %eax,-0xa0(%ebp)
4867d8:	8d 04 19             	lea    (%ecx,%ebx,1),%eax
4867db:	8b c8                	mov    %eax,%ecx
4867dd:	89 45 80             	mov    %eax,-0x80(%ebp)
4867e0:	e8 10 12 00 00       	call   0x4879f5
4867e5:	d9 5d b4             	fstps  -0x4c(%ebp)
4867e8:	d9 45 b4             	flds   -0x4c(%ebp)