54c3bc:	88 5c 88 01          	mov    %bl,0x1(%eax,%ecx,4)
54c3c0:	8b 5d f4             	mov    -0xc(%ebp),%ebx
54c3c3:	89 7c 88 08          	mov    %edi,0x8(%eax,%ecx,4)
54c3c7:	8b 06                	mov    (%esi),%eax
54c3c9:	80 78 51 00          	cmpb   $0x0,0x51(%eax)
54c3cd:	74 10                	je     0x54c3df
54c3cf:	8b 0b                	mov    (%ebx),%ecx
54c3d1:	51                   	push   %ecx
54c3d2:	6a 00                	push   $0x0
54c3d4:	50                   	push   %eax
54c3d5:	e8 d6 78 fb ff       	call   0x503cb0
54c3da:	83 c4 0c             	add    $0xc,%esp
54c3dd:	eb 75                	jmp    0x54c454
54c3df:	85 d2                	test   %edx,%edx
54c3e1:	79 04                	jns    0x54c3e7
54c3e3:	8b 56 6c             	mov    0x6c(%esi),%edx
54c3e6:	4a                   	dec    %edx
54c3e7:	8b 46 68             	mov    0x68(%esi),%eax
54c3ea:	8b 0b                	mov    (%ebx),%ecx
54c3ec:	6a 00                	push   $0x0
54c3ee:	51                   	push   %ecx
54c3ef:	8d 0c 92             	lea    (%edx,%edx,4),%ecx
54c3f2:	8d 04 88             	lea    (%eax,%ecx,4),%eax
54c3f5:	50                   	push   %eax
54c3f6:	56                   	push   %esi
54c3f7:	e8 44 d8 00 00       	call   0x559c40
54c3fc:	83 c4 10             	add    $0x10,%esp
54c3ff:	eb 53                	jmp    0x54c454
54c401:	3c 69                	cmp    $0x69,%al
54c403:	0f 85 b2 00 00 00    	jne    0x54c4bb
54c409:	8b 4e 6c             	mov    0x6c(%esi),%ecx
54c40c:	83 c3 04             	add    $0x4,%ebx
54c40f:	8b 13                	mov    (%ebx),%edx
54c411:	39 4e 70             	cmp    %ecx,0x70(%esi)
54c414:	7f 11                	jg     0x54c427
54c416:	6a 00                	push   $0x0
54c418:	57                   	push   %edi
54c419:	52                   	push   %edx
54c41a:	6a 45                	push   $0x45
54c41c:	56                   	push   %esi
54c41d:	e8 de a0 fb ff       	call   0x506500
54c422:	83 c4 14             	add    $0x14,%esp
54c425:	eb 2d                	jmp    0x54c454
54c427:	8b 13                	mov    (%ebx),%edx
54c429:	8d 41 01             	lea    0x1(%ecx),%eax
54c42c:	89 46 6c             	mov    %eax,0x6c(%esi)
54c42f:	8d 0c 89             	lea    (%ecx,%ecx,4),%ecx
54c432:	8b 46 68             	mov    0x68(%esi),%eax
54c435:	c7 04 88 45 00 00 00 	movl   $0x45,(%eax,%ecx,4)
54c43c:	89 54 88 04          	mov    %edx,0x4(%eax,%ecx,4)
54c440:	89 7c 88 08          	mov    %edi,0x8(%eax,%ecx,4)
54c444:	c7 44 88 0c 00 00 00 	movl   $0x0,0xc(%eax,%ecx,4)
54c44b:	00
54c44c:	c7 44 88 10 00 00 00 	movl   $0x0,0x10(%eax,%ecx,4)
54c453:	00
54c454:	8b 45 f0             	mov    -0x10(%ebp),%eax
54c457:	47                   	inc    %edi
54c458:	8b 55 fc             	mov    -0x4(%ebp),%edx
54c45b:	b9 48 00 00 00       	mov    $0x48,%ecx
54c460:	42                   	inc    %edx
54c461:	89 55 fc             	mov    %edx,-0x4(%ebp)
54c464:	8a 04 38             	mov    (%eax,%edi,1),%al
54c467:	84 c0                	test   %al,%al
54c469:	0f 85 f1 fe ff ff    	jne    0x54c360
54c46f:	8b 4e 6c             	mov    0x6c(%esi),%ecx
54c472:	8b 7d 0c             	mov    0xc(%ebp),%edi
54c475:	39 4e 70             	cmp    %ecx,0x70(%esi)
54c478:	7f 16                	jg     0x54c490
54c47a:	6a 00                	push   $0x0
54c47c:	52                   	push   %edx
54c47d:	57                   	push   %edi
54c47e:	6a 50                	push   $0x50
54c480:	56                   	push   %esi
54c481:	e8 7a a0 fb ff       	call   0x506500
54c486:	83 c4 14             	add    $0x14,%esp
54c489:	5f                   	pop    %edi
54c48a:	5e                   	pop    %esi
54c48b:	5b                   	pop    %ebx
54c48c:	8b e5                	mov    %ebp,%esp
54c48e:	5d                   	pop    %ebp
54c48f:	c3                   	ret
54c490:	8d 41 01             	lea    0x1(%ecx),%eax
54c493:	89 46 6c             	mov    %eax,0x6c(%esi)
54c496:	8d 0c 89             	lea    (%ecx,%ecx,4),%ecx
54c499:	8b 46 68             	mov    0x68(%esi),%eax
54c49c:	c7 04 88 50 00 00 00 	movl   $0x50,(%eax,%ecx,4)
54c4a3:	89 7c 88 04          	mov    %edi,0x4(%eax,%ecx,4)
54c4a7:	89 54 88 08          	mov    %edx,0x8(%eax,%ecx,4)
54c4ab:	c7 44 88 0c 00 00 00 	movl   $0x0,0xc(%eax,%ecx,4)
54c4b2:	00
54c4b3:	c7 44 88 10 00 00 00 	movl   $0x0,0x10(%eax,%ecx,4)
54c4ba:	00
54c4bb:	5f                   	pop    %edi
54c4bc:	5e                   	pop    %esi
54c4bd:	5b                   	pop    %ebx
54c4be:	8b e5                	mov    %ebp,%esp
54c4c0:	5d                   	pop    %ebp
54c4c1:	c3                   	ret
54c4c2:	cc                   	int3
54c4c3:	cc                   	int3
54c4c4:	cc                   	int3
54c4c5:	cc                   	int3
54c4c6:	cc                   	int3
54c4c7:	cc                   	int3
54c4c8:	cc                   	int3
54c4c9:	cc                   	int3
54c4ca:	cc                   	int3
54c4cb:	cc                   	int3
54c4cc:	cc                   	int3
54c4cd:	cc                   	int3
54c4ce:	cc                   	int3
54c4cf:	cc                   	int3
54c4d0:	55                   	push   %ebp
54c4d1:	8b ec                	mov    %esp,%ebp
54c4d3:	8b 45 08             	mov    0x8(%ebp),%eax
54c4d6:	83 ec 08             	sub    $0x8,%esp
54c4d9:	0f b7 48 08          	movzwl 0x8(%eax),%ecx
54c4dd:	f6 c1 08             	test   $0x8,%cl
54c4e0:	74 06                	je     0x54c4e8
54c4e2:	dd 00                	fldl   (%eax)
54c4e4:	8b e5                	mov    %ebp,%esp
54c4e6:	5d                   	pop    %ebp
54c4e7:	c3                   	ret
54c4e8:	f6 c1 24             	test   $0x24,%cl
54c4eb:	74 16                	je     0x54c503
54c4ed:	8b 50 04             	mov    0x4(%eax),%edx
54c4f0:	8b 08                	mov    (%eax),%ecx
54c4f2:	e8 a9 53 09 00       	call   0x5e18a0
54c4f7:	f2 0f 11 45 f8       	movsd  %xmm0,-0x8(%ebp)
54c4fc:	dd 45 f8             	fldl   -0x8(%ebp)
54c4ff:	8b e5                	mov    %ebp,%esp
54c501:	5d                   	pop    %ebp
54c502:	c3                   	ret
54c503:	f6 c1 12             	test   $0x12,%cl
54c506:	74 0d                	je     0x54c515
54c508:	50                   	push   %eax
54c509:	e8 02 d0 fb ff       	call   0x509510
54c50e:	83 c4 04             	add    $0x4,%esp
54c511:	8b e5                	mov    %ebp,%esp
54c513:	5d                   	pop    %ebp
54c514:	c3                   	ret
54c515:	d9 ee                	fldz
54c517:	8b e5                	mov    %ebp,%esp
54c519:	5d                   	pop    %ebp
54c51a:	c3                   	ret
54c51b:	cc                   	int3
54c51c:	cc                   	int3
54c51d:	cc                   	int3
54c51e:	cc                   	int3
54c51f:	cc                   	int3
54c520:	55                   	push   %ebp
54c521:	8b ec                	mov    %esp,%ebp
54c523:	6a 00                	push   $0x0
54c525:	ff 75 10             	push   0x10(%ebp)
54c528:	ff 75 0c             	push   0xc(%ebp)
54c52b:	ff 75 08             	push   0x8(%ebp)
54c52e:	e8 0d 00 00 00       	call   0x54c540
54c533:	83 c4 10             	add    $0x10,%esp
54c536:	5d                   	pop    %ebp
54c537:	c3                   	ret
54c538:	cc                   	int3
54c539:	cc                   	int3
54c53a:	cc                   	int3
54c53b:	cc                   	int3
54c53c:	cc                   	int3
54c53d:	cc                   	int3
54c53e:	cc                   	int3
54c53f:	cc                   	int3
54c540:	55                   	push   %ebp
54c541:	8b ec                	mov    %esp,%ebp
54c543:	83 ec 54             	sub    $0x54,%esp
54c546:	a1 d4 89 72 00       	mov    0x7289d4,%eax
54c54b:	33 c5                	xor    %ebp,%eax
54c54d:	89 45 fc             	mov    %eax,-0x4(%ebp)
54c550:	83 7d 14 00          	cmpl   $0x0,0x14(%ebp)
54c554:	8b 45 10             	mov    0x10(%ebp),%eax
54c557:	53                   	push   %ebx
54c558:	56                   	push   %esi
54c559:	8b 75 0c             	mov    0xc(%ebp),%esi
54c55c:	57                   	push   %edi
54c55d:	8b 78 04             	mov    0x4(%eax),%edi
54c560:	89 75 b0             	mov    %esi,-0x50(%ebp)
54c563:	89 45 c4             	mov    %eax,-0x3c(%ebp)
54c566:	89 7d d0             	mov    %edi,-0x30(%ebp)
54c569:	74 67                	je     0x54c5d2
54c56b:	8a 46 01             	mov    0x1(%esi),%al
54c56e:	8d 4e 01             	lea    0x1(%esi),%ecx
54c571:	3c 80                	cmp    $0x80,%al
54c573:	73 0a                	jae    0x54c57f
54c575:	0f b6 c0             	movzbl %al,%eax
54c578:	b9 01 00 00 00       	mov    $0x1,%ecx
54c57d:	eb 13                	jmp    0x54c592
54c57f:	8d 45 c0             	lea    -0x40(%ebp),%eax
54c582:	50                   	push   %eax
54c583:	51                   	push   %ecx
54c584:	e8 b7 12 fe ff       	call   0x52d840
54c589:	0f b6 c8             	movzbl %al,%ecx
54c58c:	83 c4 08             	add    $0x8,%esp
54c58f:	8b 45 c0             	mov    -0x40(%ebp),%eax
54c592:	0f b6 d9             	movzbl %cl,%ebx
54c595:	0f b6 0e             	movzbl (%esi),%ecx
54c598:	43                   	inc    %ebx
54c599:	89 5d b4             	mov    %ebx,-0x4c(%ebp)
54c59c:	89 4d c0             	mov    %ecx,-0x40(%ebp)
54c59f:	3d 80 00 00 00       	cmp    $0x80,%eax
54c5a4:	72 15                	jb     0x54c5bb
54c5a6:	83 c0 f4             	add    $0xfffffff4,%eax
54c5a9:	d1 e8                	shr    $1,%eax
54c5ab:	83 c7 28             	add    $0x28,%edi
54c5ae:	89 7d d0             	mov    %edi,-0x30(%ebp)
54c5b1:	8d 14 08             	lea    (%eax,%ecx,1),%edx
54c5b4:	b8 01 00 00 00       	mov    $0x1,%eax
54c5b9:	eb 47                	jmp    0x54c602
54c5bb:	0f b6 80 d8 2f 6b 00 	movzbl 0x6b2fd8(%eax),%eax
54c5c2:	83 c7 28             	add    $0x28,%edi
54c5c5:	89 7d d0             	mov    %edi,-0x30(%ebp)
54c5c8:	8d 14 08             	lea    (%eax,%ecx,1),%edx
54c5cb:	b8 01 00 00 00       	mov    $0x1,%eax
54c5d0:	eb 30                	jmp    0x54c602
54c5d2:	8a 06                	mov    (%esi),%al
54c5d4:	3c 80                	cmp    $0x80,%al
54c5d6:	73 0a                	jae    0x54c5e2
54c5d8:	0f b6 c8             	movzbl %al,%ecx
54c5db:	b8 01 00 00 00       	mov    $0x1,%eax
54c5e0:	eb 13                	jmp    0x54c5f5
54c5e2:	8d 45 c0             	lea    -0x40(%ebp),%eax
54c5e5:	50                   	push   %eax
54c5e6:	56                   	push   %esi
54c5e7:	e8 54 12 fe ff       	call   0x52d840
54c5ec:	8b 4d c0             	mov    -0x40(%ebp),%ecx
54c5ef:	83 c4 08             	add    $0x8,%esp
54c5f2:	0f b6 c0             	movzbl %al,%eax
54c5f5:	0f b6 d8             	movzbl %al,%ebx
54c5f8:	8b d1                	mov    %ecx,%edx
54c5fa:	89 4d c0             	mov    %ecx,-0x40(%ebp)
54c5fd:	33 c0                	xor    %eax,%eax
54c5ff:	89 5d b4             	mov    %ebx,-0x4c(%ebp)
54c602:	89 45 bc             	mov    %eax,-0x44(%ebp)
54c605:	89 55 c8             	mov    %edx,-0x38(%ebp)
54c608:	3b 55 08             	cmp    0x8(%ebp),%edx
54c60b:	76 38                	jbe    0x54c645
54c60d:	68 fc c4 6b 00       	push   $0x6bc4fc
54c612:	68 70 3f 01 00       	push   $0x13f70
54c617:	68 94 c4 6b 00       	push   $0x6bc494
54c61c:	68 78 c4 6b 00       	push   $0x6bc478
54c621:	6a 0b                	push   $0xb
54c623:	e8 b8 39 f9 ff       	call   0x4dffe0
54c628:	8b 4d c4             	mov    -0x3c(%ebp),%ecx
54c62b:	83 c4 14             	add    $0x14,%esp
54c62e:	33 c0                	xor    %eax,%eax
54c630:	5f                   	pop    %edi
54c631:	5e                   	pop    %esi
54c632:	c6 41 0b 0b          	movb   $0xb,0xb(%ecx)
54c636:	5b                   	pop    %ebx
54c637:	8b 4d fc             	mov    -0x4(%ebp),%ecx
54c63a:	33 cd                	xor    %ebp,%ecx
54c63c:	e8 99 4e 09 00       	call   0x5e14da
54c641:	8b e5                	mov    %ebp,%esp
54c643:	5d                   	pop    %ebp
54c644:	c3                   	ret
54c645:	8d 04 85 14 00 00 00 	lea    0x14(,%eax,4),%eax
54c64c:	89 45 b8             	mov    %eax,-0x48(%ebp)
54c64f:	90                   	nop
54c650:	0f b7 4f 08          	movzwl 0x8(%edi),%ecx
54c654:	89 4d ac             	mov    %ecx,-0x54(%ebp)
54c657:	f6 c1 24             	test   $0x24,%cl
54c65a:	0f 84 c0 00 00 00    	je     0x54c720
54c660:	0f b6 1c 1e          	movzbl (%esi,%ebx,1),%ebx
54c664:	89 5d cc             	mov    %ebx,-0x34(%ebp)
54c667:	83 fb 0a             	cmp    $0xa,%ebx
54c66a:	73 74                	jae    0x54c6e0
54c66c:	85 db                	test   %ebx,%ebx
54c66e:	0f 84 8f 03 00 00    	je     0x54ca03
54c674:	83 fb 07             	cmp    $0x7,%ebx
54c677:	75 31                	jne    0x54c6aa
54c679:	8d 45 d4             	lea    -0x2c(%ebp),%eax
54c67c:	50                   	push   %eax
54c67d:	8d 04 16             	lea    (%esi,%edx,1),%eax
54c680:	53                   	push   %ebx
54c681:	50                   	push   %eax
54c682:	e8 89 06 00 00       	call   0x54cd10
54c687:	f2 0f 10 45 d4       	movsd  -0x2c(%ebp),%xmm0
54c68c:	83 c4 04             	add    $0x4,%esp
54c68f:	f2 0f 11 04 24       	movsd  %xmm0,(%esp)
54c694:	ff 77 04             	push   0x4(%edi)
54c697:	ff 37                	push   (%edi)
54c699:	e8 32 31 fe ff       	call   0x52f7d0
54c69e:	8b c8                	mov    %eax,%ecx
54c6a0:	83 c4 10             	add    $0x10,%esp
54c6a3:	f7 d9                	neg    %ecx
54c6a5:	e9 d3 02 00 00       	jmp    0x54c97d
54c6aa:	8d 04 16             	lea    (%esi,%edx,1),%eax
54c6ad:	50                   	push   %eax
54c6ae:	53                   	push   %ebx
54c6af:	e8 bc fb 00 00       	call   0x55c270
54c6b4:	8b 77 04             	mov    0x4(%edi),%esi
54c6b7:	83 c4 08             	add    $0x8,%esp
54c6ba:	8b 0f                	mov    (%edi),%ecx
54c6bc:	3b d6                	cmp    %esi,%edx
54c6be:	0f 8c 3f 03 00 00    	jl     0x54ca03
54c6c4:	7f 1a                	jg     0x54c6e0
54c6c6:	3b c1                	cmp    %ecx,%eax
54c6c8:	0f 82 35 03 00 00    	jb     0x54ca03
54c6ce:	3b d6                	cmp    %esi,%edx
54c6d0:	7f 0e                	jg     0x54c6e0
54c6d2:	0f 8c ad 02 00 00    	jl     0x54c985
54c6d8:	3b c1                	cmp    %ecx,%eax
54c6da:	0f 86 a5 02 00 00    	jbe    0x54c985
54c6e0:	b9 01 00 00 00       	mov    $0x1,%ecx
54c6e5:	8b 45 c4             	mov    -0x3c(%ebp),%eax
54c6e8:	8b 55 bc             	mov    -0x44(%ebp),%edx
54c6eb:	8b 00                	mov    (%eax),%eax
54c6ed:	8b 40 10             	mov    0x10(%eax),%eax
54c6f0:	0f b6 04 10          	movzbl (%eax,%edx,1),%eax
54c6f4:	85 c0                	test   %eax,%eax
54c6f6:	0f 84 a6 03 00 00    	je     0x54caa2
54c6fc:	a8 02                	test   $0x2,%al
54c6fe:	0f 84 9c 03 00 00    	je     0x54caa0
54c704:	85 db                	test   %ebx,%ebx
54c706:	0f 84 88 03 00 00    	je     0x54ca94
54c70c:	8b 55 d0             	mov    -0x30(%ebp),%edx
54c70f:	f6 42 08 01          	testb  $0x1,0x8(%edx)
54c713:	0f 85 7b 03 00 00    	jne    0x54ca94
54c719:	33 d2                	xor    %edx,%edx
54c71b:	e9 79 03 00 00       	jmp    0x54ca99
54c720:	f6 c1 08             	test   $0x8,%cl
54c723:	74 69                	je     0x54c78e
54c725:	0f b6 1c 1e          	movzbl (%esi,%ebx,1),%ebx
54c729:	89 5d cc             	mov    %ebx,-0x34(%ebp)
54c72c:	83 fb 0a             	cmp    $0xa,%ebx
54c72f:	73 af                	jae    0x54c6e0
54c731:	85 db                	test   %ebx,%ebx
54c733:	0f 84 ca 02 00 00    	je     0x54ca03
54c739:	8d 45 d4             	lea    -0x2c(%ebp),%eax
54c73c:	50                   	push   %eax
54c73d:	8d 04 16             	lea    (%esi,%edx,1),%eax
54c740:	53                   	push   %ebx
54c741:	50                   	push   %eax
54c742:	e8 c9 05 00 00       	call   0x54cd10
54c747:	f2 0f 10 07          	movsd  (%edi),%xmm0
54c74b:	83 c4 0c             	add    $0xc,%esp
54c74e:	83 fb 07             	cmp    $0x7,%ebx
54c751:	75 1e                	jne    0x54c771
54c753:	f2 0f 10 4d d4       	movsd  -0x2c(%ebp),%xmm1
54c758:	66 0f 2f c1          	comisd %xmm1,%xmm0
54c75c:	0f 87 a1 02 00 00    	ja     0x54ca03
54c762:	66 0f 2f c8          	comisd %xmm0,%xmm1
54c766:	0f 87 74 ff ff ff    	ja     0x54c6e0
54c76c:	e9 14 02 00 00       	jmp    0x54c985
54c771:	83 ec 08             	sub    $0x8,%esp