54d42a:	ff 74 24 18          	push   0x18(%esp)
54d42e:	ff 74 24 18          	push   0x18(%esp)
54d432:	ff 74 24 18          	push   0x18(%esp)
54d436:	ff 74 24 18          	push   0x18(%esp)
54d43a:	ff 50 20             	call   *0x20(%eax)
54d43d:	8b 44 24 04          	mov    0x4(%esp),%eax
54d441:	c2 18 00             	ret    $0x18
54d444:	cc                   	int3
54d445:	cc                   	int3
54d446:	cc                   	int3
54d447:	cc                   	int3
54d448:	cc                   	int3
54d449:	cc                   	int3
54d44a:	cc                   	int3
54d44b:	cc                   	int3
54d44c:	cc                   	int3
54d44d:	cc                   	int3
54d44e:	cc                   	int3
54d44f:	cc                   	int3
54d450:	f2 0f 10 44 24 18    	movsd  0x18(%esp),%xmm0
54d456:	83 ec 08             	sub    $0x8,%esp
54d459:	8b 01                	mov    (%ecx),%eax
54d45b:	f2 0f 11 04 24       	movsd  %xmm0,(%esp)
54d460:	ff 74 24 1c          	push   0x1c(%esp)
54d464:	ff 74 24 1c          	push   0x1c(%esp)
54d468:	ff 74 24 1c          	push   0x1c(%esp)
54d46c:	ff 74 24 1c          	push   0x1c(%esp)
54d470:	ff 74 24 1c          	push   0x1c(%esp)
54d474:	ff 50 14             	call   *0x14(%eax)
54d477:	8b 44 24 04          	mov    0x4(%esp),%eax
54d47b:	c2 1c 00             	ret    $0x1c
54d47e:	cc                   	int3
54d47f:	cc                   	int3
54d480:	cc                   	int3
54d481:	cc                   	int3
54d482:	cc                   	int3
54d483:	cc                   	int3
54d484:	cc                   	int3
54d485:	cc                   	int3
54d486:	cc                   	int3
54d487:	cc                   	int3
54d488:	cc                   	int3
54d489:	cc                   	int3
54d48a:	cc                   	int3
54d48b:	cc                   	int3
54d48c:	cc                   	int3
54d48d:	cc                   	int3
54d48e:	cc                   	int3
54d48f:	cc                   	int3
54d490:	f2 0f 10 44 24 18    	movsd  0x18(%esp),%xmm0
54d496:	83 ec 08             	sub    $0x8,%esp
54d499:	8b 01                	mov    (%ecx),%eax
54d49b:	f2 0f 11 04 24       	movsd  %xmm0,(%esp)
54d4a0:	ff 74 24 1c          	push   0x1c(%esp)
54d4a4:	ff 74 24 1c          	push   0x1c(%esp)
54d4a8:	ff 74 24 1c          	push   0x1c(%esp)
54d4ac:	ff 74 24 1c          	push   0x1c(%esp)
54d4b0:	ff 74 24 1c          	push   0x1c(%esp)
54d4b4:	ff 50 10             	call   *0x10(%eax)
54d4b7:	8b 44 24 04          	mov    0x4(%esp),%eax
54d4bb:	c2 1c 00             	ret    $0x1c
54d4be:	cc                   	int3
54d4bf:	cc                   	int3
54d4c0:	cc                   	int3
54d4c1:	cc                   	int3
54d4c2:	cc                   	int3
54d4c3:	cc                   	int3
54d4c4:	cc                   	int3
54d4c5:	cc                   	int3
54d4c6:	cc                   	int3
54d4c7:	cc                   	int3
54d4c8:	cc                   	int3
54d4c9:	cc                   	int3
54d4ca:	cc                   	int3
54d4cb:	cc                   	int3
54d4cc:	cc                   	int3
54d4cd:	cc                   	int3
54d4ce:	cc                   	int3
54d4cf:	cc                   	int3
54d4d0:	ff 74 24 18          	push   0x18(%esp)
54d4d4:	8b 01                	mov    (%ecx),%eax
54d4d6:	ff 74 24 18          	push   0x18(%esp)
54d4da:	ff 74 24 18          	push   0x18(%esp)
54d4de:	ff 74 24 18          	push   0x18(%esp)
54d4e2:	ff 74 24 18          	push   0x18(%esp)
54d4e6:	ff 74 24 18          	push   0x18(%esp)
54d4ea:	ff 50 0c             	call   *0xc(%eax)
54d4ed:	8b 44 24 04          	mov    0x4(%esp),%eax
54d4f1:	c2 18 00             	ret    $0x18
54d4f4:	cc                   	int3
54d4f5:	cc                   	int3
54d4f6:	cc                   	int3
54d4f7:	cc                   	int3
54d4f8:	cc                   	int3
54d4f9:	cc                   	int3
54d4fa:	cc                   	int3
54d4fb:	cc                   	int3
54d4fc:	cc                   	int3
54d4fd:	cc                   	int3
54d4fe:	cc                   	int3
54d4ff:	cc                   	int3
54d500:	ff 74 24 18          	push   0x18(%esp)
54d504:	8b 01                	mov    (%ecx),%eax
54d506:	ff 74 24 18          	push   0x18(%esp)
54d50a:	ff 74 24 18          	push   0x18(%esp)
54d50e:	ff 74 24 18          	push   0x18(%esp)
54d512:	ff 74 24 18          	push   0x18(%esp)
54d516:	ff 74 24 18          	push   0x18(%esp)
54d51a:	ff 50 28             	call   *0x28(%eax)
54d51d:	8b 44 24 04          	mov    0x4(%esp),%eax
54d521:	c2 18 00             	ret    $0x18
54d524:	cc                   	int3
54d525:	cc                   	int3
54d526:	cc                   	int3
54d527:	cc                   	int3
54d528:	cc                   	int3
54d529:	cc                   	int3
54d52a:	cc                   	int3
54d52b:	cc                   	int3
54d52c:	cc                   	int3
54d52d:	cc                   	int3
54d52e:	cc                   	int3
54d52f:	cc                   	int3
54d530:	ff 74 24 18          	push   0x18(%esp)
54d534:	8b 01                	mov    (%ecx),%eax
54d536:	ff 74 24 18          	push   0x18(%esp)
54d53a:	ff 74 24 18          	push   0x18(%esp)
54d53e:	ff 74 24 18          	push   0x18(%esp)
54d542:	ff 74 24 18          	push   0x18(%esp)
54d546:	ff 74 24 18          	push   0x18(%esp)
54d54a:	ff 50 24             	call   *0x24(%eax)
54d54d:	8b 44 24 04          	mov    0x4(%esp),%eax
54d551:	c2 18 00             	ret    $0x18
54d554:	cc                   	int3
54d555:	cc                   	int3
54d556:	cc                   	int3
54d557:	cc                   	int3
54d558:	cc                   	int3
54d559:	cc                   	int3
54d55a:	cc                   	int3
54d55b:	cc                   	int3
54d55c:	cc                   	int3
54d55d:	cc                   	int3
54d55e:	cc                   	int3
54d55f:	cc                   	int3
54d560:	ff 74 24 18          	push   0x18(%esp)
54d564:	8b 01                	mov    (%ecx),%eax
54d566:	ff 74 24 18          	push   0x18(%esp)
54d56a:	ff 74 24 18          	push   0x18(%esp)
54d56e:	ff 74 24 18          	push   0x18(%esp)
54d572:	ff 74 24 18          	push   0x18(%esp)
54d576:	ff 74 24 18          	push   0x18(%esp)
54d57a:	ff 50 20             	call   *0x20(%eax)
54d57d:	8b 44 24 04          	mov    0x4(%esp),%eax
54d581:	c2 18 00             	ret    $0x18
54d584:	cc                   	int3
54d585:	cc                   	int3
54d586:	cc                   	int3
54d587:	cc                   	int3
54d588:	cc                   	int3
54d589:	cc                   	int3
54d58a:	cc                   	int3
54d58b:	cc                   	int3
54d58c:	cc                   	int3
54d58d:	cc                   	int3
54d58e:	cc                   	int3
54d58f:	cc                   	int3
54d590:	f2 0f 10 44 24 18    	movsd  0x18(%esp),%xmm0
54d596:	83 ec 08             	sub    $0x8,%esp
54d599:	8b 01                	mov    (%ecx),%eax
54d59b:	f2 0f 11 04 24       	movsd  %xmm0,(%esp)
54d5a0:	ff 74 24 1c          	push   0x1c(%esp)
54d5a4:	ff 74 24 1c          	push   0x1c(%esp)
54d5a8:	ff 74 24 1c          	push   0x1c(%esp)
54d5ac:	ff 74 24 1c          	push   0x1c(%esp)
54d5b0:	ff 74 24 1c          	push   0x1c(%esp)
54d5b4:	ff 50 14             	call   *0x14(%eax)
54d5b7:	8b 44 24 04          	mov    0x4(%esp),%eax
54d5bb:	c2 1c 00             	ret    $0x1c
54d5be:	cc                   	int3
54d5bf:	cc                   	int3
54d5c0:	cc                   	int3
54d5c1:	cc                   	int3
54d5c2:	cc                   	int3
54d5c3:	cc                   	int3
54d5c4:	cc                   	int3
54d5c5:	cc                   	int3
54d5c6:	cc                   	int3
54d5c7:	cc                   	int3
54d5c8:	cc                   	int3
54d5c9:	cc                   	int3
54d5ca:	cc                   	int3
54d5cb:	cc                   	int3
54d5cc:	cc                   	int3
54d5cd:	cc                   	int3
54d5ce:	cc                   	int3
54d5cf:	cc                   	int3
54d5d0:	f2 0f 10 44 24 18    	movsd  0x18(%esp),%xmm0
54d5d6:	83 ec 08             	sub    $0x8,%esp
54d5d9:	8b 01                	mov    (%ecx),%eax
54d5db:	f2 0f 11 04 24       	movsd  %xmm0,(%esp)
54d5e0:	ff 74 24 1c          	push   0x1c(%esp)
54d5e4:	ff 74 24 1c          	push   0x1c(%esp)
54d5e8:	ff 74 24 1c          	push   0x1c(%esp)
54d5ec:	ff 74 24 1c          	push   0x1c(%esp)
54d5f0:	ff 74 24 1c          	push   0x1c(%esp)
54d5f4:	ff 50 10             	call   *0x10(%eax)
54d5f7:	8b 44 24 04          	mov    0x4(%esp),%eax
54d5fb:	c2 1c 00             	ret    $0x1c
54d5fe:	cc                   	int3
54d5ff:	cc                   	int3
54d600:	cc                   	int3
54d601:	cc                   	int3
54d602:	cc                   	int3
54d603:	cc                   	int3
54d604:	cc                   	int3
54d605:	cc                   	int3
54d606:	cc                   	int3
54d607:	cc                   	int3
54d608:	cc                   	int3
54d609:	cc                   	int3
54d60a:	cc                   	int3
54d60b:	cc                   	int3
54d60c:	cc                   	int3
54d60d:	cc                   	int3
54d60e:	cc                   	int3
54d60f:	cc                   	int3
54d610:	ff 74 24 18          	push   0x18(%esp)
54d614:	8b 01                	mov    (%ecx),%eax
54d616:	ff 74 24 18          	push   0x18(%esp)
54d61a:	ff 74 24 18          	push   0x18(%esp)
54d61e:	ff 74 24 18          	push   0x18(%esp)
54d622:	ff 74 24 18          	push   0x18(%esp)
54d626:	ff 74 24 18          	push   0x18(%esp)
54d62a:	ff 50 0c             	call   *0xc(%eax)
54d62d:	8b 44 24 04          	mov    0x4(%esp),%eax
54d631:	c2 18 00             	ret    $0x18
54d634:	cc                   	int3
54d635:	cc                   	int3
54d636:	cc                   	int3
54d637:	cc                   	int3
54d638:	cc                   	int3
54d639:	cc                   	int3
54d63a:	cc                   	int3
54d63b:	cc                   	int3
54d63c:	cc                   	int3
54d63d:	cc                   	int3
54d63e:	cc                   	int3
54d63f:	cc                   	int3
54d640:	ff 74 24 18          	push   0x18(%esp)
54d644:	8b 01                	mov    (%ecx),%eax
54d646:	ff 74 24 18          	push   0x18(%esp)
54d64a:	ff 74 24 18          	push   0x18(%esp)
54d64e:	ff 74 24 18          	push   0x18(%esp)
54d652:	ff 74 24 18          	push   0x18(%esp)
54d656:	ff 74 24 18          	push   0x18(%esp)
54d65a:	ff 50 28             	call   *0x28(%eax)
54d65d:	8b 44 24 04          	mov    0x4(%esp),%eax
54d661:	c2 18 00             	ret    $0x18
54d664:	cc                   	int3
54d665:	cc                   	int3
54d666:	cc                   	int3
54d667:	cc                   	int3
54d668:	cc                   	int3
54d669:	cc                   	int3
54d66a:	cc                   	int3
54d66b:	cc                   	int3
54d66c:	cc                   	int3
54d66d:	cc                   	int3
54d66e:	cc                   	int3
54d66f:	cc                   	int3
54d670:	8b 41 38             	mov    0x38(%ecx),%eax
54d673:	c3                   	ret
54d674:	cc                   	int3
54d675:	cc                   	int3
54d676:	cc                   	int3
54d677:	cc                   	int3
54d678:	cc                   	int3
54d679:	cc                   	int3
54d67a:	cc                   	int3
54d67b:	cc                   	int3
54d67c:	cc                   	int3
54d67d:	cc                   	int3
54d67e:	cc                   	int3
54d67f:	cc                   	int3
54d680:	55                   	push   %ebp
54d681:	8b 6c 24 08          	mov    0x8(%esp),%ebp
54d685:	56                   	push   %esi
54d686:	8b f1                	mov    %ecx,%esi
54d688:	8b 4e 10             	mov    0x10(%esi),%ecx
54d68b:	3b cd                	cmp    %ebp,%ecx
54d68d:	0f 82 bb 03 00 00    	jb     0x54da4e
54d693:	53                   	push   %ebx
54d694:	8b 5c 24 18          	mov    0x18(%esp),%ebx
54d698:	57                   	push   %edi
54d699:	8b 7c 24 20          	mov    0x20(%esp),%edi
54d69d:	8b 43 10             	mov    0x10(%ebx),%eax
54d6a0:	3b c7                	cmp    %edi,%eax
54d6a2:	0f 82 b0 03 00 00    	jb     0x54da58
54d6a8:	8b 5c 24 18          	mov    0x18(%esp),%ebx
54d6ac:	8b d1                	mov    %ecx,%edx
54d6ae:	2b d5                	sub    %ebp,%edx
54d6b0:	3b da                	cmp    %edx,%ebx
54d6b2:	0f 47 da             	cmova  %edx,%ebx
54d6b5:	2b c7                	sub    %edi,%eax
54d6b7:	8b 7c 24 24          	mov    0x24(%esp),%edi
54d6bb:	3b f8                	cmp    %eax,%edi
54d6bd:	89 5c 24 18          	mov    %ebx,0x18(%esp)
54d6c1:	8b d9                	mov    %ecx,%ebx
54d6c3:	0f 47 f8             	cmova  %eax,%edi
54d6c6:	2b 5c 24 18          	sub    0x18(%esp),%ebx
54d6ca:	8b c7                	mov    %edi,%eax
54d6cc:	89 5c 24 24          	mov    %ebx,0x24(%esp)
54d6d0:	f7 d0                	not    %eax
54d6d2:	3b c3                	cmp    %ebx,%eax
54d6d4:	8b 5c 24 1c          	mov    0x1c(%esp),%ebx
54d6d8:	0f 86 84 03 00 00    	jbe    0x54da62
54d6de:	8b 44 24 24          	mov    0x24(%esp),%eax
54d6e2:	2b 54 24 18          	sub    0x18(%esp),%edx
54d6e6:	03 c7                	add    %edi,%eax
54d6e8:	89 54 24 14          	mov    %edx,0x14(%esp)
54d6ec:	89 44 24 24          	mov    %eax,0x24(%esp)
54d6f0:	3b c8                	cmp    %eax,%ecx
54d6f2:	73 37                	jae    0x54d72b
54d6f4:	3d fe ff ff 7f       	cmp    $0x7ffffffe,%eax
54d6f9:	0f 87 6d 03 00 00    	ja     0x54da6c
54d6ff:	39 46 14             	cmp    %eax,0x14(%esi)
54d702:	73 0f                	jae    0x54d713
54d704:	51                   	push   %ecx
54d705:	50                   	push   %eax
54d706:	8b ce                	mov    %esi,%ecx
54d708:	e8 4b ba ee ff       	call   0x439158
54d70d:	8b 54 24 14          	mov    0x14(%esp),%edx
54d711:	eb 18                	jmp    0x54d72b
54d713:	85 c0                	test   %eax,%eax
54d715:	75 14                	jne    0x54d72b
54d717:	89 46 10             	mov    %eax,0x10(%esi)
54d71a:	83 7e 14 08          	cmpl   $0x8,0x14(%esi)
54d71e:	72 04                	jb     0x54d724
54d720:	8b 06                	mov    (%esi),%eax
54d722:	eb 02                	jmp    0x54d726
54d724:	8b c6                	mov    %esi,%eax
54d726:	33 c9                	xor    %ecx,%ecx
54d728:	66 89 08             	mov    %cx,(%eax)
54d72b:	8b 4c 24 18          	mov    0x18(%esp),%ecx
54d72f:	3b f9                	cmp    %ecx,%edi
54d731:	75 30                	jne    0x54d763
54d733:	83 7b 14 08          	cmpl   $0x8,0x14(%ebx)
54d737:	72 02                	jb     0x54d73b
54d739:	8b 1b                	mov    (%ebx),%ebx