55c312:	42                   	inc    %edx
55c313:	0f b7 c2             	movzwl %dx,%eax
55c316:	8b c8                	mov    %eax,%ecx
55c318:	83 c1 02             	add    $0x2,%ecx
55c31b:	0f b7 75 08          	movzwl 0x8(%ebp),%esi
55c31f:	3b ce                	cmp    %esi,%ecx
55c321:	7c c7                	jl     0x55c2ea
55c323:	8b 83 d8 00 00 00    	mov    0xd8(%ebx),%eax
55c329:	83 f8 ff             	cmp    $0xffffffff,%eax
55c32c:	74 65                	je     0x55c393
55c32e:	33 d2                	xor    %edx,%edx
55c330:	eb 55                	jmp    0x55c387
55c332:	8b 8b d8 00 00 00    	mov    0xd8(%ebx),%ecx
55c338:	33 c0                	xor    %eax,%eax
55c33a:	89 4c 24 30          	mov    %ecx,0x30(%esp)
55c33e:	89 44 24 34          	mov    %eax,0x34(%esp)
55c342:	df 6c 24 30          	fildll 0x30(%esp)
55c346:	8b 8b dc 00 00 00    	mov    0xdc(%ebx),%ecx
55c34c:	33 c0                	xor    %eax,%eax
55c34e:	89 4c 24 38          	mov    %ecx,0x38(%esp)
55c352:	89 44 24 3c          	mov    %eax,0x3c(%esp)
55c356:	df 6c 24 38          	fildll 0x38(%esp)
55c35a:	0f b7 ca             	movzwl %dx,%ecx
55c35d:	de f9                	fdivrp %st,%st(1)
55c35f:	8b 45 0c             	mov    0xc(%ebp),%eax
55c362:	db 04 88             	fildl  (%eax,%ecx,4)
55c365:	d8 0d e4 c3 55 00    	fmuls  0x55c3e4
55c36b:	de d9                	fcompp
55c36d:	df e0                	fnstsw %ax
55c36f:	9e                   	sahf
55c370:	76 14                	jbe    0x55c386
55c372:	68 d6 dc 69 00       	push   $0x69dcd6
55c377:	68 80 2e 6a 00       	push   $0x6a2e80
55c37c:	e8 4b dd 01 00       	call   0x57a0cc
55c381:	83 c4 08             	add    $0x8,%esp
55c384:	eb 22                	jmp    0x55c3a8
55c386:	42                   	inc    %edx
55c387:	0f b7 ca             	movzwl %dx,%ecx
55c38a:	0f b7 45 08          	movzwl 0x8(%ebp),%eax
55c38e:	48                   	dec    %eax
55c38f:	3b c8                	cmp    %eax,%ecx
55c391:	7c 9f                	jl     0x55c332
55c393:	8b 54 24 0c          	mov    0xc(%esp),%edx
55c397:	85 d2                	test   %edx,%edx
55c399:	74 09                	je     0x55c3a4
55c39b:	8b 44 24 0c          	mov    0xc(%esp),%eax
55c39f:	e8 e0 bf 01 00       	call   0x578384
55c3a4:	8b c3                	mov    %ebx,%eax
55c3a6:	eb 2f                	jmp    0x55c3d7
55c3a8:	8b 54 24 0c          	mov    0xc(%esp),%edx
55c3ac:	85 d2                	test   %edx,%edx
55c3ae:	74 09                	je     0x55c3b9
55c3b0:	8b 44 24 0c          	mov    0xc(%esp),%eax
55c3b4:	e8 cb bf 01 00       	call   0x578384
55c3b9:	8b 54 24 04          	mov    0x4(%esp),%edx
55c3bd:	85 d2                	test   %edx,%edx
55c3bf:	74 09                	je     0x55c3ca
55c3c1:	8b 44 24 04          	mov    0x4(%esp),%eax
55c3c5:	e8 7e 74 01 00       	call   0x573848
55c3ca:	85 db                	test   %ebx,%ebx
55c3cc:	74 07                	je     0x55c3d5
55c3ce:	8b c3                	mov    %ebx,%eax
55c3d0:	e8 13 00 00 00       	call   0x55c3e8
55c3d5:	33 c0                	xor    %eax,%eax
55c3d7:	83 c4 40             	add    $0x40,%esp
55c3da:	5d                   	pop    %ebp
55c3db:	5f                   	pop    %edi
55c3dc:	5e                   	pop    %esi
55c3dd:	5b                   	pop    %ebx
55c3de:	c3                   	ret
55c3df:	00 00                	add    %al,(%eax)
55c3e1:	00 00                	add    %al,(%eax)
55c3e3:	46                   	inc    %esi
55c3e4:	00 00                	add    %al,(%eax)
55c3e6:	00 39                	add    %bh,(%ecx)
55c3e8:	53                   	push   %ebx
55c3e9:	8b d8                	mov    %eax,%ebx
55c3eb:	8b 43 34             	mov    0x34(%ebx),%eax
55c3ee:	85 c0                	test   %eax,%eax
55c3f0:	74 14                	je     0x55c406
55c3f2:	8b 43 44             	mov    0x44(%ebx),%eax
55c3f5:	85 c0                	test   %eax,%eax
55c3f7:	74 05                	je     0x55c3fe
55c3f9:	e8 86 bf 01 00       	call   0x578384
55c3fe:	8b 43 34             	mov    0x34(%ebx),%eax
55c401:	e8 7e bf 01 00       	call   0x578384
55c406:	8b c3                	mov    %ebx,%eax
55c408:	e8 77 bf 01 00       	call   0x578384
55c40d:	5b                   	pop    %ebx
55c40e:	c3                   	ret
55c40f:	90                   	nop
55c410:	53                   	push   %ebx
55c411:	56                   	push   %esi
55c412:	57                   	push   %edi
55c413:	55                   	push   %ebp
55c414:	83 c4 f0             	add    $0xfffffff0,%esp
55c417:	8b d9                	mov    %ecx,%ebx
55c419:	8b fa                	mov    %edx,%edi
55c41b:	8b f0                	mov    %eax,%esi
55c41d:	6a 42                	push   $0x42
55c41f:	56                   	push   %esi
55c420:	e8 77 eb ff ff       	call   0x55af9c
55c425:	83 c4 08             	add    $0x8,%esp
55c428:	8b e8                	mov    %eax,%ebp
55c42a:	85 c0                	test   %eax,%eax
55c42c:	74 0b                	je     0x55c439
55c42e:	56                   	push   %esi
55c42f:	e8 18 eb ff ff       	call   0x55af4c
55c434:	59                   	pop    %ecx
55c435:	89 03                	mov    %eax,(%ebx)
55c437:	eb 49                	jmp    0x55c482
55c439:	56                   	push   %esi
55c43a:	e8 6d eb ff ff       	call   0x55afac
55c43f:	59                   	pop    %ecx
55c440:	dd 1c 24             	fstpl  (%esp)
55c443:	dd 04 24             	fldl   (%esp)
55c446:	d8 1d 8c c4 55 00    	fcomps 0x55c48c
55c44c:	df e0                	fnstsw %ax
55c44e:	9e                   	sahf
55c44f:	73 06                	jae    0x55c457
55c451:	33 d2                	xor    %edx,%edx
55c453:	89 13                	mov    %edx,(%ebx)
55c455:	eb 2b                	jmp    0x55c482
55c457:	dd 04 24             	fldl   (%esp)
55c45a:	d8 1d 90 c4 55 00    	fcomps 0x55c490
55c460:	df e0                	fnstsw %ax
55c462:	9e                   	sahf
55c463:	76 05                	jbe    0x55c46a
55c465:	47                   	inc    %edi
55c466:	89 3b                	mov    %edi,(%ebx)
55c468:	eb 18                	jmp    0x55c482
55c46a:	89 7c 24 08          	mov    %edi,0x8(%esp)
55c46e:	33 c0                	xor    %eax,%eax
55c470:	89 44 24 0c          	mov    %eax,0xc(%esp)
55c474:	df 6c 24 08          	fildll 0x8(%esp)
55c478:	dc 0c 24             	fmull  (%esp)
55c47b:	e8 60 e6 ff ff       	call   0x55aae0
55c480:	89 03                	mov    %eax,(%ebx)
55c482:	33 c0                	xor    %eax,%eax
55c484:	83 c4 10             	add    $0x10,%esp
55c487:	5d                   	pop    %ebp
55c488:	5f                   	pop    %edi
55c489:	5e                   	pop    %esi
55c48a:	5b                   	pop    %ebx
55c48b:	c3                   	ret
55c48c:	00 00                	add    %al,(%eax)
55c48e:	00 00                	add    %al,(%eax)
55c490:	00 00                	add    %al,(%eax)
55c492:	80 3f 53             	cmpb   $0x53,(%edi)
55c495:	56                   	push   %esi
55c496:	57                   	push   %edi
55c497:	55                   	push   %ebp
55c498:	8b e9                	mov    %ecx,%ebp
55c49a:	8b fa                	mov    %edx,%edi
55c49c:	8b f0                	mov    %eax,%esi
55c49e:	b8 24 00 00 00       	mov    $0x24,%eax
55c4a3:	e8 d4 be 01 00       	call   0x57837c
55c4a8:	8b d8                	mov    %eax,%ebx
55c4aa:	85 c0                	test   %eax,%eax
55c4ac:	74 36                	je     0x55c4e4
55c4ae:	89 2b                	mov    %ebp,(%ebx)
55c4b0:	89 7b 04             	mov    %edi,0x4(%ebx)
55c4b3:	89 73 08             	mov    %esi,0x8(%ebx)
55c4b6:	33 d2                	xor    %edx,%edx
55c4b8:	89 53 10             	mov    %edx,0x10(%ebx)
55c4bb:	33 c9                	xor    %ecx,%ecx
55c4bd:	89 4b 20             	mov    %ecx,0x20(%ebx)
55c4c0:	33 c0                	xor    %eax,%eax
55c4c2:	89 43 1c             	mov    %eax,0x1c(%ebx)
55c4c5:	33 d2                	xor    %edx,%edx
55c4c7:	89 53 0c             	mov    %edx,0xc(%ebx)
55c4ca:	e8 41 98 01 00       	call   0x575d10
55c4cf:	89 43 10             	mov    %eax,0x10(%ebx)
55c4d2:	85 c0                	test   %eax,%eax
55c4d4:	74 0e                	je     0x55c4e4
55c4d6:	33 d2                	xor    %edx,%edx
55c4d8:	33 c9                	xor    %ecx,%ecx
55c4da:	89 53 14             	mov    %edx,0x14(%ebx)
55c4dd:	89 4b 18             	mov    %ecx,0x18(%ebx)
55c4e0:	8b c3                	mov    %ebx,%eax
55c4e2:	eb 0d                	jmp    0x55c4f1
55c4e4:	85 db                	test   %ebx,%ebx
55c4e6:	74 07                	je     0x55c4ef
55c4e8:	8b c3                	mov    %ebx,%eax
55c4ea:	e8 09 00 00 00       	call   0x55c4f8
55c4ef:	33 c0                	xor    %eax,%eax
55c4f1:	5d                   	pop    %ebp
55c4f2:	5f                   	pop    %edi
55c4f3:	5e                   	pop    %esi
55c4f4:	5b                   	pop    %ebx
55c4f5:	c3                   	ret
55c4f6:	90                   	nop
55c4f7:	90                   	nop
55c4f8:	53                   	push   %ebx
55c4f9:	8b d8                	mov    %eax,%ebx
55c4fb:	8b 43 0c             	mov    0xc(%ebx),%eax
55c4fe:	85 c0                	test   %eax,%eax
55c500:	74 05                	je     0x55c507
55c502:	e8 71 24 00 00       	call   0x55e978
55c507:	8b 43 08             	mov    0x8(%ebx),%eax
55c50a:	85 c0                	test   %eax,%eax
55c50c:	74 05                	je     0x55c513
55c50e:	e8 d5 fe ff ff       	call   0x55c3e8
55c513:	8b 43 10             	mov    0x10(%ebx),%eax
55c516:	85 c0                	test   %eax,%eax
55c518:	74 05                	je     0x55c51f
55c51a:	e8 11 98 01 00       	call   0x575d30
55c51f:	8b 43 20             	mov    0x20(%ebx),%eax
55c522:	85 c0                	test   %eax,%eax
55c524:	74 05                	je     0x55c52b
55c526:	e8 11 c2 01 00       	call   0x57873c
55c52b:	8b c3                	mov    %ebx,%eax
55c52d:	e8 52 be 01 00       	call   0x578384
55c532:	5b                   	pop    %ebx
55c533:	c3                   	ret
55c534:	53                   	push   %ebx
55c535:	8b d8                	mov    %eax,%ebx
55c537:	8b c3                	mov    %ebx,%eax
55c539:	e8 26 d0 01 00       	call   0x579564
55c53e:	83 f8 0b             	cmp    $0xb,%eax
55c541:	7c 0f                	jl     0x55c552
55c543:	8d 48 f5             	lea    -0xb(%eax),%ecx
55c546:	d3 fb                	sar    %cl,%ebx
55c548:	81 e3 ff 07 00 00    	and    $0x7ff,%ebx
55c54e:	8b c3                	mov    %ebx,%eax
55c550:	eb 17                	jmp    0x55c569
55c552:	8b c8                	mov    %eax,%ecx
55c554:	ba 01 00 00 00       	mov    $0x1,%edx
55c559:	d3 e2                	shl    %cl,%edx
55c55b:	4a                   	dec    %edx
55c55c:	b9 0b 00 00 00       	mov    $0xb,%ecx
55c561:	2b c8                	sub    %eax,%ecx
55c563:	23 da                	and    %edx,%ebx
55c565:	d3 e3                	shl    %cl,%ebx
55c567:	8b c3                	mov    %ebx,%eax
55c569:	5b                   	pop    %ebx
55c56a:	c3                   	ret
55c56b:	90                   	nop
55c56c:	53                   	push   %ebx
55c56d:	8b d8                	mov    %eax,%ebx
55c56f:	8b c3                	mov    %ebx,%eax
55c571:	e8 ee cf 01 00       	call   0x579564
55c576:	83 c0 f3             	add    $0xfffffff3,%eax
55c579:	5b                   	pop    %ebx
55c57a:	c3                   	ret
55c57b:	90                   	nop
55c57c:	53                   	push   %ebx
55c57d:	56                   	push   %esi
55c57e:	57                   	push   %edi
55c57f:	55                   	push   %ebp
55c580:	81 c4 04 f0 ff ff    	add    $0xfffff004,%esp
55c586:	8b e8                	mov    %eax,%ebp
55c588:	50                   	push   %eax
55c589:	81 c4 40 fc ff ff    	add    $0xfffffc40,%esp
55c58f:	8b 45 04             	mov    0x4(%ebp),%eax
55c592:	8b 5d 08             	mov    0x8(%ebp),%ebx
55c595:	8b 50 3c             	mov    0x3c(%eax),%edx
55c598:	b8 4f ff 00 00       	mov    $0xff4f,%eax
55c59d:	89 14 24             	mov    %edx,(%esp)
55c5a0:	e8 3b 9a 01 00       	call   0x575fe0
55c5a5:	8b f0                	mov    %eax,%esi
55c5a7:	89 75 1c             	mov    %esi,0x1c(%ebp)
55c5aa:	85 f6                	test   %esi,%esi
55c5ac:	75 08                	jne    0x55c5b6
55c5ae:	83 c8 ff             	or     $0xffffffff,%eax
55c5b1:	e9 e5 05 00 00       	jmp    0x55cb9b
55c5b6:	8b ce                	mov    %esi,%ecx
55c5b8:	8b 55 10             	mov    0x10(%ebp),%edx
55c5bb:	8b 45 04             	mov    0x4(%ebp),%eax
55c5be:	e8 25 99 01 00       	call   0x575ee8
55c5c3:	85 c0                	test   %eax,%eax
55c5c5:	74 1a                	je     0x55c5e1
55c5c7:	68 18 dd 69 00       	push   $0x69dd18
55c5cc:	68 80 2e 6a 00       	push   $0x6a2e80
55c5d1:	e8 f6 da 01 00       	call   0x57a0cc
55c5d6:	83 c4 08             	add    $0x8,%esp
55c5d9:	83 c8 ff             	or     $0xffffffff,%eax
55c5dc:	e9 ba 05 00 00       	jmp    0x55cb9b
55c5e1:	8b 45 1c             	mov    0x1c(%ebp),%eax
55c5e4:	e8 3f 9a 01 00       	call   0x576028
55c5e9:	33 d2                	xor    %edx,%edx
55c5eb:	b8 51 ff 00 00       	mov    $0xff51,%eax
55c5f0:	89 55 1c             	mov    %edx,0x1c(%ebp)
55c5f3:	e8 e8 99 01 00       	call   0x575fe0
55c5f8:	8b f0                	mov    %eax,%esi
55c5fa:	89 75 1c             	mov    %esi,0x1c(%ebp)
55c5fd:	85 f6                	test   %esi,%esi
55c5ff:	75 08                	jne    0x55c609
55c601:	83 c8 ff             	or     $0xffffffff,%eax
55c604:	e9 92 05 00 00       	jmp    0x55cb9b
55c609:	83 c6 08             	add    $0x8,%esi
55c60c:	66 c7 06 00 00       	movw   $0x0,(%esi)
55c611:	8b 53 04             	mov    0x4(%ebx),%edx
55c614:	89 56 0c             	mov    %edx,0xc(%esi)
55c617:	8b 4b 08             	mov    0x8(%ebx),%ecx
55c61a:	89 4e 10             	mov    %ecx,0x10(%esi)
55c61d:	8b 43 0c             	mov    0xc(%ebx),%eax
55c620:	89 46 04             	mov    %eax,0x4(%esi)
55c623:	8b 53 10             	mov    0x10(%ebx),%edx
55c626:	89 56 08             	mov    %edx,0x8(%esi)
55c629:	8b 4b 14             	mov    0x14(%ebx),%ecx
55c62c:	89 4e 1c             	mov    %ecx,0x1c(%esi)
55c62f:	8b 43 18             	mov    0x18(%ebx),%eax
55c632:	89 46 20             	mov    %eax,0x20(%esi)
55c635:	8b 53 1c             	mov    0x1c(%ebx),%edx
55c638:	89 56 14             	mov    %edx,0x14(%esi)
55c63b:	8b 4b 20             	mov    0x20(%ebx),%ecx
55c63e:	89 4e 18             	mov    %ecx,0x18(%esi)
55c641:	66 8b 43 30          	mov    0x30(%ebx),%ax
55c645:	66 89 46 24          	mov    %ax,0x24(%esi)
55c649:	0f b7 46 24          	movzwl 0x24(%esi),%eax
55c64d:	c1 e0 02             	shl    $0x2,%eax
55c650:	e8 27 bd 01 00       	call   0x57837c
55c655:	89 46 28             	mov    %eax,0x28(%esi)
55c658:	8b 56 28             	mov    0x28(%esi),%edx
55c65b:	85 d2                	test   %edx,%edx
55c65d:	75 17                	jne    0x55c676
55c65f:	68 de 03 00 00       	push   $0x3de
55c664:	68 3c dd 69 00       	push   $0x69dd3c
55c669:	68 31 dd 69 00       	push   $0x69dd31
55c66e:	e8 cd e4 ff ff       	call   0x55ab40
55c673:	83 c4 0c             	add    $0xc,%esp
55c676:	33 c0                	xor    %eax,%eax
55c678:	eb 4b                	jmp    0x55c6c5
55c67a:	8d 14 40             	lea    (%eax,%eax,2),%edx
55c67d:	8d 14 d2             	lea    (%edx,%edx,8),%edx
55c680:	8b 4b 34             	mov    0x34(%ebx),%ecx
55c683:	8a 4c d1 04          	mov    0x4(%ecx,%edx,8),%cl
55c687:	51                   	push   %ecx
55c688:	8b 4e 28             	mov    0x28(%esi),%ecx
55c68b:	8d 3c 81             	lea    (%ecx,%eax,4),%edi
55c68e:	59                   	pop    %ecx
55c68f:	88 0f                	mov    %cl,(%edi)
55c691:	8b 4b 34             	mov    0x34(%ebx),%ecx
55c694:	8a 4c d1 08          	mov    0x8(%ecx,%edx,8),%cl
55c698:	51                   	push   %ecx
55c699:	8b 4e 28             	mov    0x28(%esi),%ecx
55c69c:	8d 7c 81 01          	lea    0x1(%ecx,%eax,4),%edi
55c6a0:	59                   	pop    %ecx
55c6a1:	88 0f                	mov    %cl,(%edi)
55c6a3:	8b 4b 34             	mov    0x34(%ebx),%ecx
55c6a6:	8a 0c d1             	mov    (%ecx,%edx,8),%cl
55c6a9:	51                   	push   %ecx
55c6aa:	8b 4e 28             	mov    0x28(%esi),%ecx
55c6ad:	8d 7c 81 02          	lea    0x2(%ecx,%eax,4),%edi
55c6b1:	59                   	pop    %ecx
55c6b2:	88 0f                	mov    %cl,(%edi)
55c6b4:	8b 4b 34             	mov    0x34(%ebx),%ecx
55c6b7:	8a 54 d1 01          	mov    0x1(%ecx,%edx,8),%dl
55c6bb:	52                   	push   %edx