47747a:	83 c3 20             	add    $0x20,%ebx
47747d:	89 5d d8             	mov    %ebx,-0x28(%ebp)
477480:	8b 5d d8             	mov    -0x28(%ebp),%ebx
477483:	83 3b 00             	cmpl   $0x0,(%ebx)
477486:	0f 85 11 00 00 00    	jne    0x47749d
47748c:	8b 45 f8             	mov    -0x8(%ebp),%eax
47748f:	89 45 e8             	mov    %eax,-0x18(%ebp)
477492:	8b 45 f4             	mov    -0xc(%ebp),%eax
477495:	89 45 e4             	mov    %eax,-0x1c(%ebp)
477498:	e9 1b 02 00 00       	jmp    0x4776b8
47749d:	8b 5d 08             	mov    0x8(%ebp),%ebx
4774a0:	8b 1b                	mov    (%ebx),%ebx
4774a2:	81 c3 e0 00 00 00    	add    $0xe0,%ebx
4774a8:	89 5d d8             	mov    %ebx,-0x28(%ebp)
4774ab:	8b 5d d8             	mov    -0x28(%ebp),%ebx
4774ae:	8b 1b                	mov    (%ebx),%ebx
4774b0:	e8 95 6f f9 ff       	call   0x40e44a
4774b5:	33 c9                	xor    %ecx,%ecx
4774b7:	50                   	push   %eax
4774b8:	8d 45 e0             	lea    -0x20(%ebp),%eax
4774bb:	8b d8                	mov    %eax,%ebx
4774bd:	58                   	pop    %eax
4774be:	41                   	inc    %ecx
4774bf:	51                   	push   %ecx
4774c0:	53                   	push   %ebx
4774c1:	89 0b                	mov    %ecx,(%ebx)
4774c3:	50                   	push   %eax
4774c4:	3b c8                	cmp    %eax,%ecx
4774c6:	0f 8f 9b 00 00 00    	jg     0x477567
4774cc:	8b 5d 08             	mov    0x8(%ebp),%ebx
4774cf:	8b 1b                	mov    (%ebx),%ebx
4774d1:	8b 9b e0 00 00 00    	mov    0xe0(%ebx),%ebx
4774d7:	e8 17 c2 f8 ff       	call   0x4036f3
4774dc:	53                   	push   %ebx
4774dd:	51                   	push   %ecx
4774de:	8b 45 e0             	mov    -0x20(%ebp),%eax
4774e1:	48                   	dec    %eax
4774e2:	79 17                	jns    0x4774fb
4774e4:	68 56 04 00 00       	push   $0x456
4774e9:	68 8a cf 03 04       	push   $0x403cf8a
4774ee:	68 04 00 00 00       	push   $0x4
4774f3:	e8 b2 90 02 00       	call   0x4a05aa
4774f8:	83 c4 0c             	add    $0xc,%esp
4774fb:	59                   	pop    %ecx
4774fc:	5b                   	pop    %ebx
4774fd:	3b c1                	cmp    %ecx,%eax
4774ff:	7c 17                	jl     0x477518
477501:	68 56 04 00 00       	push   $0x456
477506:	68 8a cf 03 04       	push   $0x403cf8a
47750b:	68 01 00 00 00       	push   $0x1
477510:	e8 95 90 02 00       	call   0x4a05aa
477515:	83 c4 0c             	add    $0xc,%esp
477518:	c1 e0 02             	shl    $0x2,%eax
47751b:	03 d8                	add    %eax,%ebx
47751d:	89 5d d8             	mov    %ebx,-0x28(%ebp)
477520:	c7 45 d4 00 00 00 00 	movl   $0x0,-0x2c(%ebp)
477527:	6a 00                	push   $0x0
477529:	ff 75 d4             	push   -0x2c(%ebp)
47752c:	ff 75 d8             	push   -0x28(%ebp)
47752f:	8b 04 24             	mov    (%esp),%eax
477532:	8b 00                	mov    (%eax),%eax
477534:	8b 00                	mov    (%eax),%eax
477536:	ff 90 bc 00 00 00    	call   *0xbc(%eax)
47753c:	89 45 c8             	mov    %eax,-0x38(%ebp)
47753f:	db 45 c8             	fildl  -0x38(%ebp)
477542:	dd 5d c8             	fstpl  -0x38(%ebp)
477545:	dd 45 c8             	fldl   -0x38(%ebp)
477548:	db 45 dc             	fildl  -0x24(%ebp)
47754b:	dd 5d c0             	fstpl  -0x40(%ebp)
47754e:	dc 45 c0             	faddl  -0x40(%ebp)
477551:	dd 5d b8             	fstpl  -0x48(%ebp)
477554:	dd 45 b8             	fldl   -0x48(%ebp)
477557:	e8 93 9c f8 ff       	call   0x4011ef
47755c:	89 45 dc             	mov    %eax,-0x24(%ebp)
47755f:	58                   	pop    %eax
477560:	5b                   	pop    %ebx
477561:	59                   	pop    %ecx
477562:	e9 57 ff ff ff       	jmp    0x4774be
477567:	83 c4 0c             	add    $0xc,%esp
47756a:	8b 5d 08             	mov    0x8(%ebp),%ebx
47756d:	8b 1b                	mov    (%ebx),%ebx
47756f:	83 c3 20             	add    $0x20,%ebx
477572:	89 5d d8             	mov    %ebx,-0x28(%ebp)
477575:	68 01 03 00 80       	push   $0x80000301
47757a:	6a 00                	push   $0x0
47757c:	68 01 00 00 00       	push   $0x1
477581:	68 01 03 00 80       	push   $0x80000301
477586:	6a 00                	push   $0x0
477588:	8b 5d d8             	mov    -0x28(%ebp),%ebx
47758b:	ff 33                	push   (%ebx)
47758d:	68 02 00 00 00       	push   $0x2
477592:	bb c4 00 00 00       	mov    $0xc4,%ebx
477597:	e8 14 9a 02 00       	call   0x4a0fb0
47759c:	83 c4 1c             	add    $0x1c,%esp
47759f:	89 45 d0             	mov    %eax,-0x30(%ebp)
4775a2:	83 7d d0 00          	cmpl   $0x0,-0x30(%ebp)
4775a6:	0f 84 8f 00 00 00    	je     0x47763b
4775ac:	8b 5d 08             	mov    0x8(%ebp),%ebx
4775af:	8b 1b                	mov    (%ebx),%ebx
4775b1:	81 c3 e8 00 00 00    	add    $0xe8,%ebx
4775b7:	89 5d d8             	mov    %ebx,-0x28(%ebp)
4775ba:	c7 45 d4 00 00 00 00 	movl   $0x0,-0x2c(%ebp)
4775c1:	6a 00                	push   $0x0
4775c3:	ff 75 d4             	push   -0x2c(%ebp)
4775c6:	ff 75 d8             	push   -0x28(%ebp)
4775c9:	8b 04 24             	mov    (%esp),%eax
4775cc:	8b 00                	mov    (%eax),%eax
4775ce:	8b 00                	mov    (%eax),%eax
4775d0:	ff 90 bc 00 00 00    	call   *0xbc(%eax)
4775d6:	89 45 d0             	mov    %eax,-0x30(%ebp)
4775d9:	8b 5d 08             	mov    0x8(%ebp),%ebx
4775dc:	8b 1b                	mov    (%ebx),%ebx
4775de:	81 c3 e8 00 00 00    	add    $0xe8,%ebx
4775e4:	89 5d cc             	mov    %ebx,-0x34(%ebp)
4775e7:	c7 45 c8 00 00 00 00 	movl   $0x0,-0x38(%ebp)
4775ee:	6a 00                	push   $0x0
4775f0:	ff 75 c8             	push   -0x38(%ebp)
4775f3:	ff 75 cc             	push   -0x34(%ebp)
4775f6:	8b 04 24             	mov    (%esp),%eax
4775f9:	8b 00                	mov    (%eax),%eax
4775fb:	8b 00                	mov    (%eax),%eax
4775fd:	ff 90 b4 00 00 00    	call   *0xb4(%eax)
477603:	89 45 bc             	mov    %eax,-0x44(%ebp)
477606:	db 45 bc             	fildl  -0x44(%ebp)
477609:	dd 5d bc             	fstpl  -0x44(%ebp)
47760c:	dd 45 bc             	fldl   -0x44(%ebp)
47760f:	dc 0d fa bb 4c 00    	fmull  0x4cbbfa
477615:	dd 5d b4             	fstpl  -0x4c(%ebp)
477618:	db 45 dc             	fildl  -0x24(%ebp)
47761b:	dd 5d ac             	fstpl  -0x54(%ebp)
47761e:	dd 45 ac             	fldl   -0x54(%ebp)
477621:	db 45 d0             	fildl  -0x30(%ebp)
477624:	dd 5d a4             	fstpl  -0x5c(%ebp)
477627:	dc 45 a4             	faddl  -0x5c(%ebp)
47762a:	dc 45 b4             	faddl  -0x4c(%ebp)
47762d:	dd 5d 9c             	fstpl  -0x64(%ebp)
477630:	dd 45 9c             	fldl   -0x64(%ebp)
477633:	e8 b7 9b f8 ff       	call   0x4011ef
477638:	89 45 dc             	mov    %eax,-0x24(%ebp)
47763b:	8b 5d 08             	mov    0x8(%ebp),%ebx
47763e:	8b 1b                	mov    (%ebx),%ebx
477640:	8b 9b c4 00 00 00    	mov    0xc4(%ebx),%ebx
477646:	89 5d d8             	mov    %ebx,-0x28(%ebp)
477649:	db 45 dc             	fildl  -0x24(%ebp)
47764c:	dd 5d d0             	fstpl  -0x30(%ebp)
47764f:	dd 45 d0             	fldl   -0x30(%ebp)
477652:	8b 5d d8             	mov    -0x28(%ebp),%ebx
477655:	db 03                	fildl  (%ebx)
477657:	dd 5d c8             	fstpl  -0x38(%ebp)
47765a:	dc 65 c8             	fsubl  -0x38(%ebp)
47765d:	dd 5d c0             	fstpl  -0x40(%ebp)
477660:	dd 45 c0             	fldl   -0x40(%ebp)
477663:	e8 87 9b f8 ff       	call   0x4011ef
477668:	89 45 dc             	mov    %eax,-0x24(%ebp)
47766b:	db 45 f8             	fildl  -0x8(%ebp)
47766e:	dd 5d d4             	fstpl  -0x2c(%ebp)
477671:	dd 45 d4             	fldl   -0x2c(%ebp)
477674:	db 45 dc             	fildl  -0x24(%ebp)
477677:	dd 5d cc             	fstpl  -0x34(%ebp)
47767a:	dc 45 cc             	faddl  -0x34(%ebp)
47767d:	dd 5d c4             	fstpl  -0x3c(%ebp)
477680:	dd 45 c4             	fldl   -0x3c(%ebp)
477683:	e8 67 9b f8 ff       	call   0x4011ef
477688:	89 45 e8             	mov    %eax,-0x18(%ebp)
47768b:	8b 5d 08             	mov    0x8(%ebp),%ebx
47768e:	8b 1b                	mov    (%ebx),%ebx
477690:	83 c3 24             	add    $0x24,%ebx
477693:	89 5d d8             	mov    %ebx,-0x28(%ebp)
477696:	db 45 f4             	fildl  -0xc(%ebp)
477699:	dd 5d d0             	fstpl  -0x30(%ebp)
47769c:	dd 45 d0             	fldl   -0x30(%ebp)
47769f:	8b 5d d8             	mov    -0x28(%ebp),%ebx
4776a2:	db 03                	fildl  (%ebx)
4776a4:	dd 5d c8             	fstpl  -0x38(%ebp)
4776a7:	dc 45 c8             	faddl  -0x38(%ebp)
4776aa:	dd 5d c0             	fstpl  -0x40(%ebp)
4776ad:	dd 45 c0             	fldl   -0x40(%ebp)
4776b0:	e8 3a 9b f8 ff       	call   0x4011ef
4776b5:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4776b8:	8b 5d 08             	mov    0x8(%ebp),%ebx
4776bb:	8b 1b                	mov    (%ebx),%ebx
4776bd:	8b 9b a8 00 00 00    	mov    0xa8(%ebx),%ebx
4776c3:	89 5d d8             	mov    %ebx,-0x28(%ebp)
4776c6:	8b 5d d8             	mov    -0x28(%ebp),%ebx
4776c9:	83 3b 00             	cmpl   $0x0,(%ebx)
4776cc:	0f 85 21 00 00 00    	jne    0x4776f3
4776d2:	8b 5d 08             	mov    0x8(%ebp),%ebx
4776d5:	8b 1b                	mov    (%ebx),%ebx
4776d7:	8b 9b a8 00 00 00    	mov    0xa8(%ebx),%ebx
4776dd:	83 c3 04             	add    $0x4,%ebx
4776e0:	89 5d d0             	mov    %ebx,-0x30(%ebp)
4776e3:	8b 5d d0             	mov    -0x30(%ebp),%ebx
4776e6:	83 3b 00             	cmpl   $0x0,(%ebx)
4776e9:	0f 85 04 00 00 00    	jne    0x4776f3
4776ef:	33 c0                	xor    %eax,%eax
4776f1:	eb 05                	jmp    0x4776f8
4776f3:	b8 01 00 00 00       	mov    $0x1,%eax
4776f8:	85 c0                	test   %eax,%eax
4776fa:	0f 84 98 00 00 00    	je     0x477798
477700:	8b 5d 08             	mov    0x8(%ebp),%ebx
477703:	8b 1b                	mov    (%ebx),%ebx
477705:	8b 9b a8 00 00 00    	mov    0xa8(%ebx),%ebx
47770b:	89 5d d8             	mov    %ebx,-0x28(%ebp)
47770e:	8b 45 e8             	mov    -0x18(%ebp),%eax
477711:	8b 5d d8             	mov    -0x28(%ebp),%ebx
477714:	39 03                	cmp    %eax,(%ebx)
477716:	b8 00 00 00 00       	mov    $0x0,%eax
47771b:	0f 9c c0             	setl   %al
47771e:	89 45 d4             	mov    %eax,-0x2c(%ebp)
477721:	8b 5d 08             	mov    0x8(%ebp),%ebx
477724:	8b 1b                	mov    (%ebx),%ebx
477726:	8b 9b a8 00 00 00    	mov    0xa8(%ebx),%ebx
47772c:	89 5d d0             	mov    %ebx,-0x30(%ebp)
47772f:	83 7d d4 00          	cmpl   $0x0,-0x2c(%ebp)
477733:	0f 84 08 00 00 00    	je     0x477741
477739:	8b 45 e8             	mov    -0x18(%ebp),%eax
47773c:	e9 05 00 00 00       	jmp    0x477746
477741:	8b 5d d0             	mov    -0x30(%ebp),%ebx
477744:	8b 03                	mov    (%ebx),%eax
477746:	89 45 e8             	mov    %eax,-0x18(%ebp)
477749:	8b 5d 08             	mov    0x8(%ebp),%ebx
47774c:	8b 1b                	mov    (%ebx),%ebx
47774e:	8b 9b a8 00 00 00    	mov    0xa8(%ebx),%ebx
477754:	83 c3 04             	add    $0x4,%ebx
477757:	89 5d d8             	mov    %ebx,-0x28(%ebp)
47775a:	8b 45 e4             	mov    -0x1c(%ebp),%eax
47775d:	8b 5d d8             	mov    -0x28(%ebp),%ebx
477760:	39 03                	cmp    %eax,(%ebx)
477762:	b8 00 00 00 00       	mov    $0x0,%eax
477767:	0f 9c c0             	setl   %al
47776a:	89 45 d4             	mov    %eax,-0x2c(%ebp)
47776d:	8b 5d 08             	mov    0x8(%ebp),%ebx
477770:	8b 1b                	mov    (%ebx),%ebx
477772:	8b 9b a8 00 00 00    	mov    0xa8(%ebx),%ebx
477778:	83 c3 04             	add    $0x4,%ebx
47777b:	89 5d d0             	mov    %ebx,-0x30(%ebp)
47777e:	83 7d d4 00          	cmpl   $0x0,-0x2c(%ebp)
477782:	0f 84 08 00 00 00    	je     0x477790
477788:	8b 45 e4             	mov    -0x1c(%ebp),%eax
47778b:	e9 05 00 00 00       	jmp    0x477795
477790:	8b 5d d0             	mov    -0x30(%ebp),%ebx
477793:	8b 03                	mov    (%ebx),%eax
477795:	89 45 e4             	mov    %eax,-0x1c(%ebp)
477798:	db 45 0c             	fildl  0xc(%ebp)
47779b:	dd 5d d4             	fstpl  -0x2c(%ebp)
47779e:	dd 45 d4             	fldl   -0x2c(%ebp)
4777a1:	dc 05 6a ea 4d 00    	faddl  0x4dea6a
4777a7:	dd 5d cc             	fstpl  -0x34(%ebp)
4777aa:	ff 75 e8             	push   -0x18(%ebp)
4777ad:	dd 45 cc             	fldl   -0x34(%ebp)
4777b0:	e8 3a 9a f8 ff       	call   0x4011ef
4777b5:	50                   	push   %eax
4777b6:	e8 fc a6 f8 ff       	call   0x401eb7
4777bb:	db 45 0c             	fildl  0xc(%ebp)
4777be:	dd 5d d4             	fstpl  -0x2c(%ebp)
4777c1:	dd 45 d4             	fldl   -0x2c(%ebp)
4777c4:	dc 05 62 ea 4d 00    	faddl  0x4dea62
4777ca:	dd 5d cc             	fstpl  -0x34(%ebp)
4777cd:	ff 75 e4             	push   -0x1c(%ebp)
4777d0:	dd 45 cc             	fldl   -0x34(%ebp)
4777d3:	e8 17 9a f8 ff       	call   0x4011ef
4777d8:	50                   	push   %eax
4777d9:	e8 d9 a6 f8 ff       	call   0x401eb7
4777de:	ff 75 0c             	push   0xc(%ebp)
4777e1:	e8 b5 a4 f8 ff       	call   0x401c9b
4777e6:	89 45 d4             	mov    %eax,-0x2c(%ebp)
4777e9:	8b 45 e8             	mov    -0x18(%ebp),%eax
4777ec:	39 45 d4             	cmp    %eax,-0x2c(%ebp)
4777ef:	0f 8d 0b 00 00 00    	jge    0x477800
4777f5:	ff 75 e8             	push   -0x18(%ebp)
4777f8:	ff 75 0c             	push   0xc(%ebp)
4777fb:	e8 b7 a6 f8 ff       	call   0x401eb7
477800:	db 45 0c             	fildl  0xc(%ebp)
477803:	dd 5d d4             	fstpl  -0x2c(%ebp)
477806:	dd 45 d4             	fldl   -0x2c(%ebp)
477809:	dc 05 f2 bb 4c 00    	faddl  0x4cbbf2
47780f:	dd 5d cc             	fstpl  -0x34(%ebp)
477812:	dd 45 cc             	fldl   -0x34(%ebp)
477815:	e8 d5 99 f8 ff       	call   0x4011ef
47781a:	50                   	push   %eax
47781b:	e8 7b a4 f8 ff       	call   0x401c9b
477820:	89 45 c4             	mov    %eax,-0x3c(%ebp)
477823:	8b 45 e4             	mov    -0x1c(%ebp),%eax
477826:	39 45 c4             	cmp    %eax,-0x3c(%ebp)
477829:	0f 8d 23 00 00 00    	jge    0x477852
47782f:	db 45 0c             	fildl  0xc(%ebp)
477832:	dd 5d d4             	fstpl  -0x2c(%ebp)
477835:	dd 45 d4             	fldl   -0x2c(%ebp)
477838:	dc 05 f2 bb 4c 00    	faddl  0x4cbbf2
47783e:	dd 5d cc             	fstpl  -0x34(%ebp)
477841:	ff 75 e4             	push   -0x1c(%ebp)
477844:	dd 45 cc             	fldl   -0x34(%ebp)
477847:	e8 a3 99 f8 ff       	call   0x4011ef
47784c:	50                   	push   %eax
47784d:	e8 65 a6 f8 ff       	call   0x401eb7
477852:	8b 5d 08             	mov    0x8(%ebp),%ebx
477855:	8b 1b                	mov    (%ebx),%ebx
477857:	8b 9b a4 00 00 00    	mov    0xa4(%ebx),%ebx
47785d:	89 5d d8             	mov    %ebx,-0x28(%ebp)
477860:	8b 5d d8             	mov    -0x28(%ebp),%ebx
477863:	83 3b 00             	cmpl   $0x0,(%ebx)
477866:	0f 84 24 00 00 00    	je     0x477890
47786c:	8b 5d 08             	mov    0x8(%ebp),%ebx
47786f:	8b 1b                	mov    (%ebx),%ebx
477871:	8b 9b a4 00 00 00    	mov    0xa4(%ebx),%ebx
477877:	83 c3 04             	add    $0x4,%ebx
47787a:	89 5d d0             	mov    %ebx,-0x30(%ebp)
47787d:	8b 5d d0             	mov    -0x30(%ebp),%ebx
477880:	83 3b 00             	cmpl   $0x0,(%ebx)
477883:	0f 84 07 00 00 00    	je     0x477890
477889:	b8 01 00 00 00       	mov    $0x1,%eax
47788e:	eb 05                	jmp    0x477895
477890:	b8 00 00 00 00       	mov    $0x0,%eax
477895:	85 c0                	test   %eax,%eax
477897:	0f 84 6e 00 00 00    	je     0x47790b
47789d:	db 45 0c             	fildl  0xc(%ebp)
4778a0:	dd 5d d4             	fstpl  -0x2c(%ebp)
4778a3:	dd 45 d4             	fldl   -0x2c(%ebp)
4778a6:	dc 05 52 ea 4d 00    	faddl  0x4dea52
4778ac:	dd 5d cc             	fstpl  -0x34(%ebp)
4778af:	8b 5d 08             	mov    0x8(%ebp),%ebx
4778b2:	8b 1b                	mov    (%ebx),%ebx
4778b4:	8b 9b a4 00 00 00    	mov    0xa4(%ebx),%ebx
4778ba:	89 5d c8             	mov    %ebx,-0x38(%ebp)
4778bd:	8b 5d c8             	mov    -0x38(%ebp),%ebx
4778c0:	ff 33                	push   (%ebx)
4778c2:	dd 45 cc             	fldl   -0x34(%ebp)
4778c5:	e8 25 99 f8 ff       	call   0x4011ef
4778ca:	50                   	push   %eax
4778cb:	e8 e7 a5 f8 ff       	call   0x401eb7
4778d0:	db 45 0c             	fildl  0xc(%ebp)
4778d3:	dd 5d d4             	fstpl  -0x2c(%ebp)
4778d6:	dd 45 d4             	fldl   -0x2c(%ebp)
4778d9:	dc 05 5a ea 4d 00    	faddl  0x4dea5a
4778df:	dd 5d cc             	fstpl  -0x34(%ebp)
4778e2:	8b 5d 08             	mov    0x8(%ebp),%ebx
4778e5:	8b 1b                	mov    (%ebx),%ebx
4778e7:	8b 9b a4 00 00 00    	mov    0xa4(%ebx),%ebx
4778ed:	83 c3 04             	add    $0x4,%ebx
4778f0:	89 5d c8             	mov    %ebx,-0x38(%ebp)
4778f3:	8b 5d c8             	mov    -0x38(%ebp),%ebx
4778f6:	ff 33                	push   (%ebx)
4778f8:	dd 45 cc             	fldl   -0x34(%ebp)
4778fb:	e8 ef 98 f8 ff       	call   0x4011ef
477900:	50                   	push   %eax
477901:	e8 b1 a5 f8 ff       	call   0x401eb7
477906:	e9 46 00 00 00       	jmp    0x477951
47790b:	db 45 0c             	fildl  0xc(%ebp)
47790e:	dd 5d d4             	fstpl  -0x2c(%ebp)
477911:	dd 45 d4             	fldl   -0x2c(%ebp)