505204:	8b 68 04             	mov    0x4(%eax),%ebp
505207:	ff 55 08             	call   *0x8(%ebp)
50520a:	89 46 a8             	mov    %eax,-0x58(%esi)
50520d:	83 c6 04             	add    $0x4,%esi
505210:	ff 44 24 18          	incl   0x18(%esp)
505214:	ff 44 24 04          	incl   0x4(%esp)
505218:	83 c7 54             	add    $0x54,%edi
50521b:	8b 44 24 04          	mov    0x4(%esp),%eax
50521f:	3b 43 20             	cmp    0x20(%ebx),%eax
505222:	0f 8c 89 fe ff ff    	jl     0x5050b1
505228:	83 c4 1c             	add    $0x1c,%esp
50522b:	5d                   	pop    %ebp
50522c:	5f                   	pop    %edi
50522d:	5e                   	pop    %esi
50522e:	5b                   	pop    %ebx
50522f:	c3                   	ret
505230:	55                   	push   %ebp
505231:	8b ec                	mov    %esp,%ebp
505233:	81 c4 b0 fe ff ff    	add    $0xfffffeb0,%esp
505239:	53                   	push   %ebx
50523a:	56                   	push   %esi
50523b:	57                   	push   %edi
50523c:	bf 08 00 00 00       	mov    $0x8,%edi
505241:	8b 80 3c 01 00 00    	mov    0x13c(%eax),%eax
505247:	8d 9d b0 fe ff ff    	lea    -0x150(%ebp),%ebx
50524d:	05 80 00 00 00       	add    $0x80,%eax
505252:	89 45 b8             	mov    %eax,-0x48(%ebp)
505255:	8b c1                	mov    %ecx,%eax
505257:	8b 52 50             	mov    0x50(%edx),%edx
50525a:	66 8b 48 10          	mov    0x10(%eax),%cx
50525e:	66 0b 48 20          	or     0x20(%eax),%cx
505262:	66 0b 48 30          	or     0x30(%eax),%cx
505266:	66 0b 48 40          	or     0x40(%eax),%cx
50526a:	66 0b 48 50          	or     0x50(%eax),%cx
50526e:	66 0b 48 60          	or     0x60(%eax),%cx
505272:	66 0b 48 70          	or     0x70(%eax),%cx
505276:	75 50                	jne    0x5052c8
505278:	df 00                	filds  (%eax)
50527a:	83 c0 02             	add    $0x2,%eax
50527d:	d8 0a                	fmuls  (%edx)
50527f:	83 c2 04             	add    $0x4,%edx
505282:	d9 5d b4             	fstps  -0x4c(%ebp)
505285:	8b 4d b4             	mov    -0x4c(%ebp),%ecx
505288:	89 0b                	mov    %ecx,(%ebx)
50528a:	8b 4d b4             	mov    -0x4c(%ebp),%ecx
50528d:	89 4b 20             	mov    %ecx,0x20(%ebx)
505290:	8b 4d b4             	mov    -0x4c(%ebp),%ecx
505293:	89 4b 40             	mov    %ecx,0x40(%ebx)
505296:	8b 4d b4             	mov    -0x4c(%ebp),%ecx
505299:	89 4b 60             	mov    %ecx,0x60(%ebx)
50529c:	8b 4d b4             	mov    -0x4c(%ebp),%ecx
50529f:	89 8b 80 00 00 00    	mov    %ecx,0x80(%ebx)
5052a5:	8b 4d b4             	mov    -0x4c(%ebp),%ecx
5052a8:	89 8b a0 00 00 00    	mov    %ecx,0xa0(%ebx)
5052ae:	8b 4d b4             	mov    -0x4c(%ebp),%ecx
5052b1:	89 8b c0 00 00 00    	mov    %ecx,0xc0(%ebx)
5052b7:	8b 4d b4             	mov    -0x4c(%ebp),%ecx
5052ba:	89 8b e0 00 00 00    	mov    %ecx,0xe0(%ebx)
5052c0:	83 c3 04             	add    $0x4,%ebx
5052c3:	e9 83 01 00 00       	jmp    0x50544b
5052c8:	df 00                	filds  (%eax)
5052ca:	d8 0a                	fmuls  (%edx)
5052cc:	d9 5d fc             	fstps  -0x4(%ebp)
5052cf:	df 40 20             	filds  0x20(%eax)
5052d2:	d8 4a 40             	fmuls  0x40(%edx)
5052d5:	d9 5d f8             	fstps  -0x8(%ebp)
5052d8:	df 40 40             	filds  0x40(%eax)
5052db:	d8 8a 80 00 00 00    	fmuls  0x80(%edx)
5052e1:	d9 5d f4             	fstps  -0xc(%ebp)
5052e4:	df 40 60             	filds  0x60(%eax)
5052e7:	d8 8a c0 00 00 00    	fmuls  0xc0(%edx)
5052ed:	d9 5d f0             	fstps  -0x10(%ebp)
5052f0:	d9 45 fc             	flds   -0x4(%ebp)
5052f3:	d8 45 f4             	fadds  -0xc(%ebp)
5052f6:	d9 5d dc             	fstps  -0x24(%ebp)
5052f9:	d9 45 fc             	flds   -0x4(%ebp)
5052fc:	d8 65 f4             	fsubs  -0xc(%ebp)
5052ff:	d9 5d d8             	fstps  -0x28(%ebp)
505302:	d9 45 f8             	flds   -0x8(%ebp)
505305:	d8 45 f0             	fadds  -0x10(%ebp)
505308:	d9 5d d0             	fstps  -0x30(%ebp)
50530b:	d9 45 f8             	flds   -0x8(%ebp)
50530e:	d8 65 f0             	fsubs  -0x10(%ebp)
505311:	d8 0d 50 56 50 00    	fmuls  0x505650
505317:	d8 65 d0             	fsubs  -0x30(%ebp)
50531a:	d9 5d d4             	fstps  -0x2c(%ebp)
50531d:	d9 45 dc             	flds   -0x24(%ebp)
505320:	d8 45 d0             	fadds  -0x30(%ebp)
505323:	d9 5d fc             	fstps  -0x4(%ebp)
505326:	d9 45 dc             	flds   -0x24(%ebp)
505329:	d8 65 d0             	fsubs  -0x30(%ebp)
50532c:	d9 5d f0             	fstps  -0x10(%ebp)
50532f:	d9 45 d8             	flds   -0x28(%ebp)
505332:	d8 45 d4             	fadds  -0x2c(%ebp)
505335:	d9 5d f8             	fstps  -0x8(%ebp)
505338:	d9 45 d8             	flds   -0x28(%ebp)
50533b:	d8 65 d4             	fsubs  -0x2c(%ebp)
50533e:	d9 5d f4             	fstps  -0xc(%ebp)
505341:	df 40 10             	filds  0x10(%eax)
505344:	d8 4a 20             	fmuls  0x20(%edx)
505347:	d9 5d ec             	fstps  -0x14(%ebp)
50534a:	df 40 30             	filds  0x30(%eax)
50534d:	d8 4a 60             	fmuls  0x60(%edx)
505350:	d9 5d e8             	fstps  -0x18(%ebp)
505353:	df 40 50             	filds  0x50(%eax)
505356:	d8 8a a0 00 00 00    	fmuls  0xa0(%edx)
50535c:	d9 5d e4             	fstps  -0x1c(%ebp)
50535f:	df 40 70             	filds  0x70(%eax)
505362:	d8 8a e0 00 00 00    	fmuls  0xe0(%edx)
505368:	d9 5d e0             	fstps  -0x20(%ebp)
50536b:	d9 45 e4             	flds   -0x1c(%ebp)
50536e:	d8 45 e8             	fadds  -0x18(%ebp)
505371:	d9 5d bc             	fstps  -0x44(%ebp)
505374:	d9 45 e4             	flds   -0x1c(%ebp)
505377:	d8 65 e8             	fsubs  -0x18(%ebp)
50537a:	d9 5d c8             	fstps  -0x38(%ebp)
50537d:	d9 45 ec             	flds   -0x14(%ebp)
505380:	d8 45 e0             	fadds  -0x20(%ebp)
505383:	d9 5d c4             	fstps  -0x3c(%ebp)
505386:	d9 45 ec             	flds   -0x14(%ebp)
505389:	d8 65 e0             	fsubs  -0x20(%ebp)
50538c:	d9 5d c0             	fstps  -0x40(%ebp)
50538f:	d9 45 c4             	flds   -0x3c(%ebp)
505392:	d8 45 bc             	fadds  -0x44(%ebp)
505395:	d9 5d e0             	fstps  -0x20(%ebp)
505398:	d9 45 c4             	flds   -0x3c(%ebp)
50539b:	d8 65 bc             	fsubs  -0x44(%ebp)
50539e:	d8 0d 50 56 50 00    	fmuls  0x505650
5053a4:	d9 5d d8             	fstps  -0x28(%ebp)
5053a7:	d9 45 c8             	flds   -0x38(%ebp)
5053aa:	d8 45 c0             	fadds  -0x40(%ebp)
5053ad:	d8 0d 54 56 50 00    	fmuls  0x505654
5053b3:	d9 5d cc             	fstps  -0x34(%ebp)
5053b6:	d9 05 58 56 50 00    	flds   0x505658
5053bc:	d8 4d c0             	fmuls  -0x40(%ebp)
5053bf:	d8 65 cc             	fsubs  -0x34(%ebp)
5053c2:	d9 5d dc             	fstps  -0x24(%ebp)
5053c5:	d9 05 5c 56 50 00    	flds   0x50565c
5053cb:	d8 4d c8             	fmuls  -0x38(%ebp)
5053ce:	83 c0 02             	add    $0x2,%eax
5053d1:	83 c2 04             	add    $0x4,%edx
5053d4:	d8 45 cc             	fadds  -0x34(%ebp)
5053d7:	d9 5d d4             	fstps  -0x2c(%ebp)
5053da:	d9 45 d4             	flds   -0x2c(%ebp)
5053dd:	d8 65 e0             	fsubs  -0x20(%ebp)
5053e0:	d9 5d e4             	fstps  -0x1c(%ebp)
5053e3:	d9 45 d8             	flds   -0x28(%ebp)
5053e6:	d8 65 e4             	fsubs  -0x1c(%ebp)
5053e9:	d9 5d e8             	fstps  -0x18(%ebp)
5053ec:	d9 45 dc             	flds   -0x24(%ebp)
5053ef:	d8 45 e8             	fadds  -0x18(%ebp)
5053f2:	d9 5d ec             	fstps  -0x14(%ebp)
5053f5:	d9 45 fc             	flds   -0x4(%ebp)
5053f8:	d8 45 e0             	fadds  -0x20(%ebp)
5053fb:	d9 1b                	fstps  (%ebx)
5053fd:	d9 45 fc             	flds   -0x4(%ebp)
505400:	d8 65 e0             	fsubs  -0x20(%ebp)
505403:	d9 9b e0 00 00 00    	fstps  0xe0(%ebx)
505409:	d9 45 f8             	flds   -0x8(%ebp)
50540c:	d8 45 e4             	fadds  -0x1c(%ebp)
50540f:	d9 5b 20             	fstps  0x20(%ebx)
505412:	d9 45 f8             	flds   -0x8(%ebp)
505415:	d8 65 e4             	fsubs  -0x1c(%ebp)
505418:	d9 9b c0 00 00 00    	fstps  0xc0(%ebx)
50541e:	d9 45 f4             	flds   -0xc(%ebp)
505421:	d8 45 e8             	fadds  -0x18(%ebp)
505424:	d9 5b 40             	fstps  0x40(%ebx)
505427:	d9 45 f4             	flds   -0xc(%ebp)
50542a:	d8 65 e8             	fsubs  -0x18(%ebp)
50542d:	d9 9b a0 00 00 00    	fstps  0xa0(%ebx)
505433:	d9 45 f0             	flds   -0x10(%ebp)
505436:	d8 45 ec             	fadds  -0x14(%ebp)
505439:	d9 9b 80 00 00 00    	fstps  0x80(%ebx)
50543f:	d9 45 f0             	flds   -0x10(%ebp)
505442:	d8 65 ec             	fsubs  -0x14(%ebp)
505445:	d9 5b 60             	fstps  0x60(%ebx)
505448:	83 c3 04             	add    $0x4,%ebx
50544b:	4f                   	dec    %edi
50544c:	85 ff                	test   %edi,%edi
50544e:	0f 8f 06 fe ff ff    	jg     0x50525a
505454:	8b 45 0c             	mov    0xc(%ebp),%eax
505457:	8d 9d b0 fe ff ff    	lea    -0x150(%ebp),%ebx
50545d:	8b d0                	mov    %eax,%edx
50545f:	33 ff                	xor    %edi,%edi
505461:	89 55 b0             	mov    %edx,-0x50(%ebp)
505464:	8b 4d b0             	mov    -0x50(%ebp),%ecx
505467:	d9 03                	flds   (%ebx)
505469:	d8 43 10             	fadds  0x10(%ebx)
50546c:	8b 31                	mov    (%ecx),%esi
50546e:	03 75 08             	add    0x8(%ebp),%esi
505471:	d9 5d dc             	fstps  -0x24(%ebp)
505474:	d9 03                	flds   (%ebx)
505476:	d8 63 10             	fsubs  0x10(%ebx)
505479:	d9 5d d8             	fstps  -0x28(%ebp)
50547c:	d9 43 08             	flds   0x8(%ebx)
50547f:	d8 43 18             	fadds  0x18(%ebx)
505482:	d9 5d d0             	fstps  -0x30(%ebp)
505485:	d9 43 08             	flds   0x8(%ebx)
505488:	d8 63 18             	fsubs  0x18(%ebx)
50548b:	d8 0d 50 56 50 00    	fmuls  0x505650
505491:	d8 65 d0             	fsubs  -0x30(%ebp)
505494:	d9 5d d4             	fstps  -0x2c(%ebp)
505497:	d9 45 dc             	flds   -0x24(%ebp)
50549a:	d8 45 d0             	fadds  -0x30(%ebp)
50549d:	d9 5d fc             	fstps  -0x4(%ebp)
5054a0:	d9 45 dc             	flds   -0x24(%ebp)
5054a3:	d8 65 d0             	fsubs  -0x30(%ebp)
5054a6:	d9 5d f0             	fstps  -0x10(%ebp)
5054a9:	d9 45 d8             	flds   -0x28(%ebp)
5054ac:	d8 45 d4             	fadds  -0x2c(%ebp)
5054af:	d9 5d f8             	fstps  -0x8(%ebp)
5054b2:	d9 45 d8             	flds   -0x28(%ebp)
5054b5:	d8 65 d4             	fsubs  -0x2c(%ebp)
5054b8:	d9 5d f4             	fstps  -0xc(%ebp)
5054bb:	d9 43 14             	flds   0x14(%ebx)
5054be:	d8 43 0c             	fadds  0xc(%ebx)
5054c1:	d9 5d bc             	fstps  -0x44(%ebp)
5054c4:	d9 43 14             	flds   0x14(%ebx)
5054c7:	d8 63 0c             	fsubs  0xc(%ebx)
5054ca:	d9 5d c8             	fstps  -0x38(%ebp)
5054cd:	d9 43 04             	flds   0x4(%ebx)
5054d0:	d8 43 1c             	fadds  0x1c(%ebx)
5054d3:	d9 5d c4             	fstps  -0x3c(%ebp)
5054d6:	d9 43 04             	flds   0x4(%ebx)
5054d9:	d8 63 1c             	fsubs  0x1c(%ebx)
5054dc:	d9 5d c0             	fstps  -0x40(%ebp)
5054df:	d9 45 c4             	flds   -0x3c(%ebp)
5054e2:	d8 45 bc             	fadds  -0x44(%ebp)
5054e5:	d9 5d e0             	fstps  -0x20(%ebp)
5054e8:	d9 45 c4             	flds   -0x3c(%ebp)
5054eb:	d8 65 bc             	fsubs  -0x44(%ebp)
5054ee:	d8 0d 50 56 50 00    	fmuls  0x505650
5054f4:	d9 5d d8             	fstps  -0x28(%ebp)
5054f7:	d9 45 c8             	flds   -0x38(%ebp)
5054fa:	d8 45 c0             	fadds  -0x40(%ebp)
5054fd:	d8 0d 54 56 50 00    	fmuls  0x505654
505503:	d9 5d cc             	fstps  -0x34(%ebp)
505506:	d9 05 58 56 50 00    	flds   0x505658
50550c:	d8 4d c0             	fmuls  -0x40(%ebp)
50550f:	d8 65 cc             	fsubs  -0x34(%ebp)
505512:	d9 5d dc             	fstps  -0x24(%ebp)
505515:	d9 05 5c 56 50 00    	flds   0x50565c
50551b:	d8 4d c8             	fmuls  -0x38(%ebp)
50551e:	d8 45 cc             	fadds  -0x34(%ebp)
505521:	d9 5d d4             	fstps  -0x2c(%ebp)
505524:	d9 45 d4             	flds   -0x2c(%ebp)
505527:	d8 65 e0             	fsubs  -0x20(%ebp)
50552a:	d9 5d e4             	fstps  -0x1c(%ebp)
50552d:	d9 45 d8             	flds   -0x28(%ebp)
505530:	d8 65 e4             	fsubs  -0x1c(%ebp)
505533:	d9 5d e8             	fstps  -0x18(%ebp)
505536:	d9 45 dc             	flds   -0x24(%ebp)
505539:	d8 45 e8             	fadds  -0x18(%ebp)
50553c:	d9 5d ec             	fstps  -0x14(%ebp)
50553f:	d9 45 fc             	flds   -0x4(%ebp)
505542:	d8 45 e0             	fadds  -0x20(%ebp)
505545:	e8 d6 5d ff ff       	call   0x4fb320
50554a:	83 c0 04             	add    $0x4,%eax
50554d:	c1 f8 03             	sar    $0x3,%eax
505550:	25 ff 03 00 00       	and    $0x3ff,%eax
505555:	8b 55 b8             	mov    -0x48(%ebp),%edx
505558:	8a 0c 02             	mov    (%edx,%eax,1),%cl
50555b:	88 0e                	mov    %cl,(%esi)
50555d:	d9 45 fc             	flds   -0x4(%ebp)
505560:	d8 65 e0             	fsubs  -0x20(%ebp)
505563:	e8 b8 5d ff ff       	call   0x4fb320
505568:	83 c0 04             	add    $0x4,%eax
50556b:	c1 f8 03             	sar    $0x3,%eax
50556e:	25 ff 03 00 00       	and    $0x3ff,%eax
505573:	8b 55 b8             	mov    -0x48(%ebp),%edx
505576:	8a 0c 02             	mov    (%edx,%eax,1),%cl
505579:	88 4e 07             	mov    %cl,0x7(%esi)
50557c:	d9 45 f8             	flds   -0x8(%ebp)
50557f:	d8 45 e4             	fadds  -0x1c(%ebp)
505582:	e8 99 5d ff ff       	call   0x4fb320
505587:	83 c0 04             	add    $0x4,%eax
50558a:	c1 f8 03             	sar    $0x3,%eax
50558d:	25 ff 03 00 00       	and    $0x3ff,%eax
505592:	8b 55 b8             	mov    -0x48(%ebp),%edx
505595:	8a 0c 02             	mov    (%edx,%eax,1),%cl
505598:	88 4e 01             	mov    %cl,0x1(%esi)
50559b:	d9 45 f8             	flds   -0x8(%ebp)
50559e:	d8 65 e4             	fsubs  -0x1c(%ebp)
5055a1:	e8 7a 5d ff ff       	call   0x4fb320
5055a6:	83 c0 04             	add    $0x4,%eax
5055a9:	c1 f8 03             	sar    $0x3,%eax
5055ac:	25 ff 03 00 00       	and    $0x3ff,%eax
5055b1:	8b 55 b8             	mov    -0x48(%ebp),%edx
5055b4:	8a 0c 02             	mov    (%edx,%eax,1),%cl
5055b7:	88 4e 06             	mov    %cl,0x6(%esi)
5055ba:	d9 45 f4             	flds   -0xc(%ebp)
5055bd:	d8 45 e8             	fadds  -0x18(%ebp)
5055c0:	e8 5b 5d ff ff       	call   0x4fb320
5055c5:	83 c0 04             	add    $0x4,%eax
5055c8:	c1 f8 03             	sar    $0x3,%eax
5055cb:	25 ff 03 00 00       	and    $0x3ff,%eax
5055d0:	8b 55 b8             	mov    -0x48(%ebp),%edx
5055d3:	8a 0c 02             	mov    (%edx,%eax,1),%cl
5055d6:	88 4e 02             	mov    %cl,0x2(%esi)
5055d9:	d9 45 f4             	flds   -0xc(%ebp)
5055dc:	d8 65 e8             	fsubs  -0x18(%ebp)
5055df:	e8 3c 5d ff ff       	call   0x4fb320
5055e4:	83 c0 04             	add    $0x4,%eax
5055e7:	c1 f8 03             	sar    $0x3,%eax
5055ea:	25 ff 03 00 00       	and    $0x3ff,%eax
5055ef:	8b 55 b8             	mov    -0x48(%ebp),%edx
5055f2:	8a 0c 02             	mov    (%edx,%eax,1),%cl
5055f5:	88 4e 05             	mov    %cl,0x5(%esi)
5055f8:	d9 45 f0             	flds   -0x10(%ebp)
5055fb:	d8 45 ec             	fadds  -0x14(%ebp)
5055fe:	e8 1d 5d ff ff       	call   0x4fb320
505603:	83 c0 04             	add    $0x4,%eax
505606:	c1 f8 03             	sar    $0x3,%eax
505609:	25 ff 03 00 00       	and    $0x3ff,%eax
50560e:	8b 55 b8             	mov    -0x48(%ebp),%edx
505611:	8a 0c 02             	mov    (%edx,%eax,1),%cl
505614:	88 4e 04             	mov    %cl,0x4(%esi)
505617:	d9 45 f0             	flds   -0x10(%ebp)
50561a:	d8 65 ec             	fsubs  -0x14(%ebp)
50561d:	e8 fe 5c ff ff       	call   0x4fb320
505622:	83 c0 04             	add    $0x4,%eax
505625:	8b 55 b8             	mov    -0x48(%ebp),%edx
505628:	c1 f8 03             	sar    $0x3,%eax
50562b:	83 c3 20             	add    $0x20,%ebx
50562e:	25 ff 03 00 00       	and    $0x3ff,%eax
505633:	47                   	inc    %edi
505634:	8a 0c 02             	mov    (%edx,%eax,1),%cl
505637:	88 4e 03             	mov    %cl,0x3(%esi)
50563a:	83 45 b0 04          	addl   $0x4,-0x50(%ebp)
50563e:	83 ff 08             	cmp    $0x8,%edi
505641:	0f 8c 1d fe ff ff    	jl     0x505464
505647:	5f                   	pop    %edi
505648:	5e                   	pop    %esi
505649:	5b                   	pop    %ebx
50564a:	8b e5                	mov    %ebp,%esp
50564c:	5d                   	pop    %ebp
50564d:	c2 08 00             	ret    $0x8
505650:	f3 04 b5             	repz add $0xb5,%al
505653:	3f                   	aas
505654:	5e                   	pop    %esi
505655:	83 ec 3f             	sub    $0x3f,%esp
505658:	d4 8b                	aam    $0x8b
50565a:	8a 3f                	mov    (%edi),%bh
50565c:	75 3d                	jne    0x50569b
50565e:	27                   	daa
50565f:	c0 55 8b ec          	rclb   $0xec,-0x75(%ebp)
505663:	81 c4 c0 fe ff ff    	add    $0xfffffec0,%esp
505669:	53                   	push   %ebx
50566a:	56                   	push   %esi
50566b:	57                   	push   %edi