4a53d2:	eb 1a                	jmp    0x4a53ee
4a53d4:	6a 02                	push   $0x2
4a53d6:	57                   	push   %edi
4a53d7:	56                   	push   %esi
4a53d8:	e8 03 34 00 00       	call   0x4a87e0
4a53dd:	89 74 9c 38          	mov    %esi,0x38(%esp,%ebx,4)
4a53e1:	83 c4 0c             	add    $0xc,%esp
4a53e4:	83 c6 03             	add    $0x3,%esi
4a53e7:	43                   	inc    %ebx
4a53e8:	83 c5 02             	add    $0x2,%ebp
4a53eb:	83 c7 02             	add    $0x2,%edi
4a53ee:	3b 6c 24 24          	cmp    0x24(%esp),%ebp
4a53f2:	7c b8                	jl     0x4a53ac
4a53f4:	33 ff                	xor    %edi,%edi
4a53f6:	33 ed                	xor    %ebp,%ebp
4a53f8:	3b df                	cmp    %edi,%ebx
4a53fa:	89 7c 24 24          	mov    %edi,0x24(%esp)
4a53fe:	89 7c 24 20          	mov    %edi,0x20(%esp)
4a5402:	89 7c 24 1c          	mov    %edi,0x1c(%esp)
4a5406:	89 6c 24 18          	mov    %ebp,0x18(%esp)
4a540a:	0f 8e 4b 01 00 00    	jle    0x4a555b
4a5410:	be 1f 00 00 00       	mov    $0x1f,%esi
4a5415:	8b 44 ac 2c          	mov    0x2c(%esp,%ebp,4),%eax
4a5419:	50                   	push   %eax
4a541a:	e8 79 2e 00 00       	call   0x4a8298
4a541f:	83 c4 04             	add    $0x4,%esp
4a5422:	83 fd 05             	cmp    $0x5,%ebp
4a5425:	8b c8                	mov    %eax,%ecx
4a5427:	0f 87 21 01 00 00    	ja     0x4a554e
4a542d:	ff 24 ad b0 55 4a 00 	jmp    *0x4a55b0(,%ebp,4)
4a5434:	85 c9                	test   %ecx,%ecx
4a5436:	75 26                	jne    0x4a545e
4a5438:	bf 01 00 00 00       	mov    $0x1,%edi
4a543d:	e9 0c 01 00 00       	jmp    0x4a554e
4a5442:	83 fb 02             	cmp    $0x2,%ebx
4a5445:	7d ad                	jge    0x4a53f4
4a5447:	8b 6c 24 14          	mov    0x14(%esp),%ebp
4a544b:	55                   	push   %ebp
4a544c:	e8 ad 32 00 00       	call   0x4a86fe
4a5451:	83 c4 04             	add    $0x4,%esp
4a5454:	5f                   	pop    %edi
4a5455:	5e                   	pop    %esi
4a5456:	5d                   	pop    %ebp
4a5457:	33 c0                	xor    %eax,%eax
4a5459:	5b                   	pop    %ebx
4a545a:	83 c4 64             	add    $0x64,%esp
4a545d:	c3                   	ret
4a545e:	89 4c 24 7c          	mov    %ecx,0x7c(%esp)
4a5462:	e9 e7 00 00 00       	jmp    0x4a554e
4a5467:	83 f9 01             	cmp    $0x1,%ecx
4a546a:	0f 8c d3 00 00 00    	jl     0x4a5543
4a5470:	83 f9 0c             	cmp    $0xc,%ecx
4a5473:	0f 8f ca 00 00 00    	jg     0x4a5543
4a5479:	89 4c 24 10          	mov    %ecx,0x10(%esp)
4a547d:	e9 cc 00 00 00       	jmp    0x4a554e
4a5482:	b8 1e 00 00 00       	mov    $0x1e,%eax
4a5487:	bd 90 01 00 00       	mov    $0x190,%ebp
4a548c:	89 44 24 50          	mov    %eax,0x50(%esp)
4a5490:	89 44 24 58          	mov    %eax,0x58(%esp)
4a5494:	89 44 24 64          	mov    %eax,0x64(%esp)
4a5498:	89 44 24 6c          	mov    %eax,0x6c(%esp)
4a549c:	8b 44 24 7c          	mov    0x7c(%esp),%eax
4a54a0:	89 74 24 44          	mov    %esi,0x44(%esp)
4a54a4:	99                   	cltd
4a54a5:	f7 fd                	idiv   %ebp
4a54a7:	c7 44 24 48 1c 00 00 	movl   $0x1c,0x48(%esp)
4a54ae:	00
4a54af:	89 74 24 4c          	mov    %esi,0x4c(%esp)
4a54b3:	89 74 24 54          	mov    %esi,0x54(%esp)
4a54b7:	89 74 24 5c          	mov    %esi,0x5c(%esp)
4a54bb:	89 74 24 60          	mov    %esi,0x60(%esp)
4a54bf:	89 74 24 68          	mov    %esi,0x68(%esp)
4a54c3:	89 74 24 70          	mov    %esi,0x70(%esp)
4a54c7:	85 d2                	test   %edx,%edx
4a54c9:	74 23                	je     0x4a54ee
4a54cb:	8b 44 24 7c          	mov    0x7c(%esp),%eax
4a54cf:	bd 64 00 00 00       	mov    $0x64,%ebp
4a54d4:	99                   	cltd
4a54d5:	f7 fd                	idiv   %ebp
4a54d7:	85 d2                	test   %edx,%edx
4a54d9:	74 1b                	je     0x4a54f6
4a54db:	8b 54 24 7c          	mov    0x7c(%esp),%edx
4a54df:	81 e2 03 00 00 80    	and    $0x80000003,%edx
4a54e5:	79 05                	jns    0x4a54ec
4a54e7:	4a                   	dec    %edx
4a54e8:	83 ca fc             	or     $0xfffffffc,%edx
4a54eb:	42                   	inc    %edx
4a54ec:	75 08                	jne    0x4a54f6
4a54ee:	c7 44 24 48 1d 00 00 	movl   $0x1d,0x48(%esp)
4a54f5:	00
4a54f6:	83 f9 01             	cmp    $0x1,%ecx
4a54f9:	7c 14                	jl     0x4a550f
4a54fb:	8b 44 24 10          	mov    0x10(%esp),%eax
4a54ff:	3b 4c 84 40          	cmp    0x40(%esp,%eax,4),%ecx
4a5503:	7f 0a                	jg     0x4a550f
4a5505:	8b 6c 24 18          	mov    0x18(%esp),%ebp
4a5509:	89 4c 24 28          	mov    %ecx,0x28(%esp)
4a550d:	eb 3f                	jmp    0x4a554e
4a550f:	8b 6c 24 18          	mov    0x18(%esp),%ebp
4a5513:	bf 01 00 00 00       	mov    $0x1,%edi
4a5518:	eb 34                	jmp    0x4a554e
4a551a:	83 f9 17             	cmp    $0x17,%ecx
4a551d:	7e 07                	jle    0x4a5526
4a551f:	bf 01 00 00 00       	mov    $0x1,%edi
4a5524:	eb 28                	jmp    0x4a554e
4a5526:	89 4c 24 1c          	mov    %ecx,0x1c(%esp)
4a552a:	eb 22                	jmp    0x4a554e
4a552c:	83 f9 3b             	cmp    $0x3b,%ecx
4a552f:	7e 07                	jle    0x4a5538
4a5531:	bf 01 00 00 00       	mov    $0x1,%edi
4a5536:	eb 16                	jmp    0x4a554e
4a5538:	89 4c 24 20          	mov    %ecx,0x20(%esp)
4a553c:	eb 10                	jmp    0x4a554e
4a553e:	83 f9 3b             	cmp    $0x3b,%ecx
4a5541:	7e 07                	jle    0x4a554a
4a5543:	bf 01 00 00 00       	mov    $0x1,%edi
4a5548:	eb 04                	jmp    0x4a554e
4a554a:	89 4c 24 24          	mov    %ecx,0x24(%esp)
4a554e:	45                   	inc    %ebp
4a554f:	3b eb                	cmp    %ebx,%ebp
4a5551:	89 6c 24 18          	mov    %ebp,0x18(%esp)
4a5555:	0f 8c ba fe ff ff    	jl     0x4a5415
4a555b:	8b 4c 24 14          	mov    0x14(%esp),%ecx
4a555f:	51                   	push   %ecx
4a5560:	e8 99 31 00 00       	call   0x4a86fe
4a5565:	83 c4 04             	add    $0x4,%esp
4a5568:	85 ff                	test   %edi,%edi
4a556a:	0f 85 e4 fe ff ff    	jne    0x4a5454
4a5570:	8b 54 24 24          	mov    0x24(%esp),%edx
4a5574:	8b 44 24 20          	mov    0x20(%esp),%eax
4a5578:	8b 4c 24 1c          	mov    0x1c(%esp),%ecx
4a557c:	52                   	push   %edx
4a557d:	8b 54 24 2c          	mov    0x2c(%esp),%edx
4a5581:	50                   	push   %eax
4a5582:	8b 44 24 18          	mov    0x18(%esp),%eax
4a5586:	51                   	push   %ecx
4a5587:	8b 8c 24 88 00 00 00 	mov    0x88(%esp),%ecx
4a558e:	52                   	push   %edx
4a558f:	50                   	push   %eax
4a5590:	51                   	push   %ecx
4a5591:	e8 6a 20 00 00       	call   0x4a7600
4a5596:	8b 94 24 90 00 00 00 	mov    0x90(%esp),%edx
4a559d:	83 c4 18             	add    $0x18,%esp
4a55a0:	b8 01 00 00 00       	mov    $0x1,%eax
4a55a5:	dd 1a                	fstpl  (%edx)
4a55a7:	5f                   	pop    %edi
4a55a8:	5e                   	pop    %esi
4a55a9:	5d                   	pop    %ebp
4a55aa:	5b                   	pop    %ebx
4a55ab:	83 c4 64             	add    $0x64,%esp
4a55ae:	c3                   	ret
4a55af:	90                   	nop
4a55b0:	34 54                	xor    $0x54,%al
4a55b2:	4a                   	dec    %edx
4a55b3:	00 67 54             	add    %ah,0x54(%edi)
4a55b6:	4a                   	dec    %edx
4a55b7:	00 82 54 4a 00 1a    	add    %al,0x1a004a54(%edx)
4a55bd:	55                   	push   %ebp
4a55be:	4a                   	dec    %edx
4a55bf:	00 2c 55 4a 00 3e 55 	add    %ch,0x553e004a(,%edx,2)
4a55c6:	4a                   	dec    %edx
4a55c7:	00 90 90 90 90 90    	add    %dl,-0x6f6f6f70(%eax)
4a55cd:	90                   	nop
4a55ce:	90                   	nop
4a55cf:	90                   	nop
4a55d0:	55                   	push   %ebp
4a55d1:	8b ec                	mov    %esp,%ebp
4a55d3:	83 ec 08             	sub    $0x8,%esp
4a55d6:	8b 45 14             	mov    0x14(%ebp),%eax
4a55d9:	3d 01 04 00 80       	cmp    $0x80000401,%eax
4a55de:	77 37                	ja     0x4a5617
4a55e0:	74 4a                	je     0x4a562c
4a55e2:	3d 03 00 00 80       	cmp    $0x80000003,%eax
4a55e7:	74 43                	je     0x4a562c
4a55e9:	3d 04 00 00 80       	cmp    $0x80000004,%eax
4a55ee:	75 2e                	jne    0x4a561e
4a55f0:	8b 45 0c             	mov    0xc(%ebp),%eax
4a55f3:	8d 4d f8             	lea    -0x8(%ebp),%ecx
4a55f6:	50                   	push   %eax
4a55f7:	51                   	push   %ecx
4a55f8:	e8 93 fa ff ff       	call   0x4a5090
4a55fd:	83 c4 08             	add    $0x8,%esp
4a5600:	85 c0                	test   %eax,%eax
4a5602:	75 0b                	jne    0x4a560f
4a5604:	dd 05 48 35 4b 00    	fldl   0x4b3548
4a560a:	dd 5d 0c             	fstpl  0xc(%ebp)
4a560d:	eb 1d                	jmp    0x4a562c
4a560f:	dd 45 f8             	fldl   -0x8(%ebp)
4a5612:	dd 5d 0c             	fstpl  0xc(%ebp)
4a5615:	eb 15                	jmp    0x4a562c
4a5617:	3d 01 06 00 80       	cmp    $0x80000601,%eax
4a561c:	74 0e                	je     0x4a562c
4a561e:	c7 45 0c 00 00 00 00 	movl   $0x0,0xc(%ebp)
4a5625:	c7 45 10 34 10 24 c1 	movl   $0xc1241034,0x10(%ebp)
4a562c:	8b 45 0c             	mov    0xc(%ebp),%eax
4a562f:	8b 55 10             	mov    0x10(%ebp),%edx
4a5632:	8b e5                	mov    %ebp,%esp
4a5634:	5d                   	pop    %ebp
4a5635:	c3                   	ret
4a5636:	90                   	nop
4a5637:	90                   	nop
4a5638:	90                   	nop
4a5639:	90                   	nop
4a563a:	90                   	nop
4a563b:	90                   	nop
4a563c:	90                   	nop
4a563d:	90                   	nop
4a563e:	90                   	nop
4a563f:	90                   	nop
4a5640:	51                   	push   %ecx
4a5641:	dd 44 24 08          	fldl   0x8(%esp)
4a5645:	dc 1d 28 35 4b 00    	fcompl 0x4b3528
4a564b:	c7 44 24 00 01 00 00 	movl   $0x1,0x0(%esp)
4a5652:	00
4a5653:	df e0                	fnstsw %ax
4a5655:	f6 c4 41             	test   $0x41,%ah
4a5658:	74 08                	je     0x4a5662
4a565a:	c7 44 24 00 ff ff ff 	movl   $0xffffffff,0x0(%esp)
4a5661:	ff
4a5662:	dd 44 24 08          	fldl   0x8(%esp)
4a5666:	dc 0d 50 35 4b 00    	fmull  0x4b3550
4a566c:	dc 15 28 35 4b 00    	fcoml  0x4b3528
4a5672:	dd 54 24 08          	fstl   0x8(%esp)
4a5676:	df e0                	fnstsw %ax
4a5678:	f6 c4 40             	test   $0x40,%ah
4a567b:	75 34                	jne    0x4a56b1
4a567d:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
4a5681:	8b 54 24 08          	mov    0x8(%esp),%edx
4a5685:	8d 44 24 08          	lea    0x8(%esp),%eax
4a5689:	50                   	push   %eax
4a568a:	51                   	push   %ecx
4a568b:	dd d8                	fstp   %st(0)
4a568d:	52                   	push   %edx
4a568e:	e8 be 28 00 00       	call   0x4a7f51
4a5693:	dc 1d 28 35 4b 00    	fcompl 0x4b3528
4a5699:	83 c4 0c             	add    $0xc,%esp
4a569c:	df e0                	fnstsw %ax
4a569e:	f6 c4 40             	test   $0x40,%ah
4a56a1:	75 0a                	jne    0x4a56ad
4a56a3:	db 44 24 00          	fildl  0x0(%esp)
4a56a7:	dc 44 24 08          	faddl  0x8(%esp)
4a56ab:	59                   	pop    %ecx
4a56ac:	c3                   	ret
4a56ad:	dd 44 24 08          	fldl   0x8(%esp)
4a56b1:	59                   	pop    %ecx
4a56b2:	c3                   	ret
4a56b3:	90                   	nop
4a56b4:	90                   	nop
4a56b5:	90                   	nop
4a56b6:	90                   	nop
4a56b7:	90                   	nop
4a56b8:	90                   	nop
4a56b9:	90                   	nop
4a56ba:	90                   	nop
4a56bb:	90                   	nop
4a56bc:	90                   	nop
4a56bd:	90                   	nop
4a56be:	90                   	nop
4a56bf:	90                   	nop
4a56c0:	55                   	push   %ebp
4a56c1:	8b ec                	mov    %esp,%ebp
4a56c3:	83 ec 2c             	sub    $0x2c,%esp
4a56c6:	8b 45 24             	mov    0x24(%ebp),%eax
4a56c9:	48                   	dec    %eax
4a56ca:	83 f8 07             	cmp    $0x7,%eax
4a56cd:	0f 87 49 02 00 00    	ja     0x4a591c
4a56d3:	ff 24 85 34 59 4a 00 	jmp    *0x4a5934(,%eax,4)
4a56da:	8b 55 10             	mov    0x10(%ebp),%edx
4a56dd:	8b 45 0c             	mov    0xc(%ebp),%eax
4a56e0:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
4a56e3:	51                   	push   %ecx
4a56e4:	52                   	push   %edx
4a56e5:	50                   	push   %eax
4a56e6:	e8 66 28 00 00       	call   0x4a7f51
4a56eb:	8d 4d e8             	lea    -0x18(%ebp),%ecx
4a56ee:	8d 55 ec             	lea    -0x14(%ebp),%edx
4a56f1:	51                   	push   %ecx
4a56f2:	8b 4d d8             	mov    -0x28(%ebp),%ecx
4a56f5:	8d 45 fc             	lea    -0x4(%ebp),%eax
4a56f8:	52                   	push   %edx
4a56f9:	8b 55 d4             	mov    -0x2c(%ebp),%edx
4a56fc:	50                   	push   %eax
4a56fd:	51                   	push   %ecx
4a56fe:	52                   	push   %edx
4a56ff:	dd d8                	fstp   %st(0)
4a5701:	e8 fa 20 00 00       	call   0x4a7800
4a5706:	8b 4d 1c             	mov    0x1c(%ebp),%ecx
4a5709:	8b 55 18             	mov    0x18(%ebp),%edx
4a570c:	8d 45 d4             	lea    -0x2c(%ebp),%eax
4a570f:	50                   	push   %eax
4a5710:	51                   	push   %ecx
4a5711:	52                   	push   %edx
4a5712:	e8 3a 28 00 00       	call   0x4a7f51
4a5717:	8d 45 f0             	lea    -0x10(%ebp),%eax
4a571a:	8d 4d e0             	lea    -0x20(%ebp),%ecx
4a571d:	50                   	push   %eax
4a571e:	8b 45 d8             	mov    -0x28(%ebp),%eax
4a5721:	8d 55 f4             	lea    -0xc(%ebp),%edx
4a5724:	51                   	push   %ecx
4a5725:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
4a5728:	52                   	push   %edx
4a5729:	50                   	push   %eax
4a572a:	51                   	push   %ecx
4a572b:	dd d8                	fstp   %st(0)
4a572d:	e8 ce 20 00 00       	call   0x4a7800
4a5732:	8b 55 fc             	mov    -0x4(%ebp),%edx
4a5735:	8b 45 f4             	mov    -0xc(%ebp),%eax
4a5738:	83 c4 40             	add    $0x40,%esp
4a573b:	2b d0                	sub    %eax,%edx
4a573d:	89 55 f4             	mov    %edx,-0xc(%ebp)
4a5740:	db 45 f4             	fildl  -0xc(%ebp)
4a5743:	dd 5d 0c             	fstpl  0xc(%ebp)
4a5746:	e9 df 01 00 00       	jmp    0x4a592a
4a574b:	8b 4d 10             	mov    0x10(%ebp),%ecx
4a574e:	8b 55 0c             	mov    0xc(%ebp),%edx
4a5751:	8d 45 e4             	lea    -0x1c(%ebp),%eax
4a5754:	50                   	push   %eax
4a5755:	51                   	push   %ecx
4a5756:	52                   	push   %edx
4a5757:	e8 f5 27 00 00       	call   0x4a7f51
4a575c:	8d 45 e0             	lea    -0x20(%ebp),%eax
4a575f:	8d 4d ec             	lea    -0x14(%ebp),%ecx
4a5762:	50                   	push   %eax
4a5763:	8b 45 e8             	mov    -0x18(%ebp),%eax
4a5766:	8d 55 f4             	lea    -0xc(%ebp),%edx
4a5769:	51                   	push   %ecx
4a576a:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
4a576d:	52                   	push   %edx
4a576e:	50                   	push   %eax
4a576f:	51                   	push   %ecx
4a5770:	dd d8                	fstp   %st(0)
4a5772:	e8 89 20 00 00       	call   0x4a7800
4a5777:	8b 45 1c             	mov    0x1c(%ebp),%eax
4a577a:	8b 4d 18             	mov    0x18(%ebp),%ecx
4a577d:	8d 55 e4             	lea    -0x1c(%ebp),%edx
4a5780:	52                   	push   %edx
4a5781:	50                   	push   %eax
4a5782:	51                   	push   %ecx
4a5783:	e8 c9 27 00 00       	call   0x4a7f51
4a5788:	8d 55 d8             	lea    -0x28(%ebp),%edx
4a578b:	8d 45 f0             	lea    -0x10(%ebp),%eax
4a578e:	52                   	push   %edx
4a578f:	8b 55 e8             	mov    -0x18(%ebp),%edx
4a5792:	8d 4d fc             	lea    -0x4(%ebp),%ecx
4a5795:	50                   	push   %eax
4a5796:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4a5799:	51                   	push   %ecx
4a579a:	52                   	push   %edx
4a579b:	50                   	push   %eax
4a579c:	dd d8                	fstp   %st(0)