50c594:	6a 0b                	push   $0xb
50c596:	e8 45 3a fd ff       	call   0x4dffe0
50c59b:	8b 75 fc             	mov    -0x4(%ebp),%esi
50c59e:	83 c4 14             	add    $0x14,%esp
50c5a1:	8b c6                	mov    %esi,%eax
50c5a3:	5f                   	pop    %edi
50c5a4:	5e                   	pop    %esi
50c5a5:	5b                   	pop    %ebx
50c5a6:	8b e5                	mov    %ebp,%esp
50c5a8:	5d                   	pop    %ebp
50c5a9:	c3                   	ret
50c5aa:	8d 47 01             	lea    0x1(%edi),%eax
50c5ad:	39 45 f8             	cmp    %eax,-0x8(%ebp)
50c5b0:	74 2a                	je     0x50c5dc
50c5b2:	68 fc c4 6b 00       	push   $0x6bc4fc
50c5b7:	68 57 01 01 00       	push   $0x10157
50c5bc:	68 94 c4 6b 00       	push   $0x6bc494
50c5c1:	68 78 c4 6b 00       	push   $0x6bc478
50c5c6:	6a 0b                	push   $0xb
50c5c8:	e8 13 3a fd ff       	call   0x4dffe0
50c5cd:	8b 75 fc             	mov    -0x4(%ebp),%esi
50c5d0:	83 c4 14             	add    $0x14,%esp
50c5d3:	8b c6                	mov    %esi,%eax
50c5d5:	5f                   	pop    %edi
50c5d6:	5e                   	pop    %esi
50c5d7:	5b                   	pop    %ebx
50c5d8:	8b e5                	mov    %ebp,%esp
50c5da:	5d                   	pop    %ebp
50c5db:	c3                   	ret
50c5dc:	8b 4d f0             	mov    -0x10(%ebp),%ecx
50c5df:	8b c3                	mov    %ebx,%eax
50c5e1:	c1 e8 08             	shr    $0x8,%eax
50c5e4:	88 44 37 01          	mov    %al,0x1(%edi,%esi,1)
50c5e8:	8b c1                	mov    %ecx,%eax
50c5ea:	c1 e8 08             	shr    $0x8,%eax
50c5ed:	88 5c 37 02          	mov    %bl,0x2(%edi,%esi,1)
50c5f1:	88 44 37 05          	mov    %al,0x5(%edi,%esi,1)
50c5f5:	88 4c 37 06          	mov    %cl,0x6(%edi,%esi,1)
50c5f9:	eb 0f                	jmp    0x50c60a
50c5fb:	8b 4d f8             	mov    -0x8(%ebp),%ecx
50c5fe:	8b c2                	mov    %edx,%eax
50c600:	c1 e8 08             	shr    $0x8,%eax
50c603:	88 04 31             	mov    %al,(%ecx,%esi,1)
50c606:	88 54 31 01          	mov    %dl,0x1(%ecx,%esi,1)
50c60a:	8b 7d 08             	mov    0x8(%ebp),%edi
50c60d:	8b 47 34             	mov    0x34(%edi),%eax
50c610:	f6 40 16 0c          	testb  $0xc,0x16(%eax)
50c614:	74 1a                	je     0x50c630
50c616:	8b 45 e8             	mov    -0x18(%ebp),%eax
50c619:	0f b7 c0             	movzwl %ax,%eax
50c61c:	50                   	push   %eax
50c61d:	0f b7 c2             	movzwl %dx,%eax
50c620:	03 c6                	add    %esi,%eax
50c622:	6a 00                	push   $0x0
50c624:	50                   	push   %eax
50c625:	e8 d6 73 0d 00       	call   0x5e3a00
50c62a:	8b 55 ec             	mov    -0x14(%ebp),%edx
50c62d:	83 c4 0c             	add    $0xc,%esp
50c630:	0f b7 d2             	movzwl %dx,%edx
50c633:	8b c3                	mov    %ebx,%eax
50c635:	03 d6                	add    %esi,%edx
50c637:	c1 e8 08             	shr    $0x8,%eax
50c63a:	88 02                	mov    %al,(%edx)
50c63c:	8b 45 e8             	mov    -0x18(%ebp),%eax
50c63f:	8b c8                	mov    %eax,%ecx
50c641:	c1 e9 08             	shr    $0x8,%ecx
50c644:	88 42 03             	mov    %al,0x3(%edx)
50c647:	8b 45 dc             	mov    -0x24(%ebp),%eax
50c64a:	88 5a 01             	mov    %bl,0x1(%edx)
50c64d:	88 4a 02             	mov    %cl,0x2(%edx)
50c650:	01 47 14             	add    %eax,0x14(%edi)
50c653:	8b 75 fc             	mov    -0x4(%ebp),%esi
50c656:	5f                   	pop    %edi
50c657:	8b c6                	mov    %esi,%eax
50c659:	5e                   	pop    %esi
50c65a:	5b                   	pop    %ebx
50c65b:	8b e5                	mov    %ebp,%esp
50c65d:	5d                   	pop    %ebp
50c65e:	c3                   	ret
50c65f:	cc                   	int3
50c660:	55                   	push   %ebp
50c661:	8b ec                	mov    %esp,%ebp
50c663:	83 ec 10             	sub    $0x10,%esp
50c666:	8b 45 10             	mov    0x10(%ebp),%eax
50c669:	53                   	push   %ebx
50c66a:	8b 5d 08             	mov    0x8(%ebp),%ebx
50c66d:	56                   	push   %esi
50c66e:	8b 10                	mov    (%eax),%edx
50c670:	8b 75 18             	mov    0x18(%ebp),%esi
50c673:	8b 45 1c             	mov    0x1c(%ebp),%eax
50c676:	8b 5b 38             	mov    0x38(%ebx),%ebx
50c679:	03 c6                	add    %esi,%eax
50c67b:	89 5d fc             	mov    %ebx,-0x4(%ebp)
50c67e:	89 55 18             	mov    %edx,0x18(%ebp)
50c681:	89 45 f4             	mov    %eax,-0xc(%ebp)
50c684:	3b c6                	cmp    %esi,%eax
50c686:	7f 08                	jg     0x50c690
50c688:	5e                   	pop    %esi
50c689:	33 c0                	xor    %eax,%eax
50c68b:	5b                   	pop    %ebx
50c68c:	8b e5                	mov    %ebp,%esp
50c68e:	5d                   	pop    %ebp
50c68f:	c3                   	ret
50c690:	57                   	push   %edi
50c691:	8b 7d 20             	mov    0x20(%ebp),%edi
50c694:	33 c9                	xor    %ecx,%ecx
50c696:	39 77 28             	cmp    %esi,0x28(%edi)
50c699:	8d 47 28             	lea    0x28(%edi),%eax
50c69c:	7f 0f                	jg     0x50c6ad
50c69e:	66 90                	xchg   %ax,%ax
50c6a0:	83 f9 06             	cmp    $0x6,%ecx
50c6a3:	7d 08                	jge    0x50c6ad
50c6a5:	83 c0 04             	add    $0x4,%eax
50c6a8:	41                   	inc    %ecx
50c6a9:	39 30                	cmp    %esi,(%eax)
50c6ab:	7e f3                	jle    0x50c6a0
50c6ad:	8d 47 10             	lea    0x10(%edi),%eax
50c6b0:	8d 04 88             	lea    (%eax,%ecx,4),%eax
50c6b3:	89 45 1c             	mov    %eax,0x1c(%ebp)
50c6b6:	8b 00                	mov    (%eax),%eax
50c6b8:	89 45 f8             	mov    %eax,-0x8(%ebp)
50c6bb:	0f 1f 44 00 00       	nopl   0x0(%eax,%eax,1)
50c6c0:	80 7b 01 00          	cmpb   $0x0,0x1(%ebx)
50c6c4:	8b 47 0c             	mov    0xc(%edi),%eax
50c6c7:	0f b7 3c 70          	movzwl (%eax,%esi,2),%edi
50c6cb:	75 06                	jne    0x50c6d3
50c6cd:	80 7b 02 00          	cmpb   $0x0,0x2(%ebx)
50c6d1:	74 19                	je     0x50c6ec
50c6d3:	8d 45 f0             	lea    -0x10(%ebp),%eax
50c6d6:	50                   	push   %eax
50c6d7:	57                   	push   %edi
50c6d8:	ff 75 08             	push   0x8(%ebp)
50c6db:	e8 30 fa ff ff       	call   0x50c110
50c6e0:	8b d8                	mov    %eax,%ebx
50c6e2:	83 c4 0c             	add    $0xc,%esp
50c6e5:	85 db                	test   %ebx,%ebx
50c6e7:	75 17                	jne    0x50c700
50c6e9:	8b 55 18             	mov    0x18(%ebp),%edx
50c6ec:	8b c2                	mov    %edx,%eax
50c6ee:	2b 45 0c             	sub    0xc(%ebp),%eax
50c6f1:	3b c7                	cmp    %edi,%eax
50c6f3:	0f 8c 8c 00 00 00    	jl     0x50c785
50c6f9:	2b d7                	sub    %edi,%edx
50c6fb:	89 55 18             	mov    %edx,0x18(%ebp)
50c6fe:	8b da                	mov    %edx,%ebx
50c700:	8b 45 20             	mov    0x20(%ebp),%eax
50c703:	8b 55 f8             	mov    -0x8(%ebp),%edx
50c706:	8b 40 08             	mov    0x8(%eax),%eax
50c709:	8b 0c b0             	mov    (%eax,%esi,4),%ecx
50c70c:	8d 04 39             	lea    (%ecx,%edi,1),%eax
50c70f:	3b c2                	cmp    %edx,%eax
50c711:	76 04                	jbe    0x50c717
50c713:	3b ca                	cmp    %edx,%ecx
50c715:	72 50                	jb     0x50c767
50c717:	57                   	push   %edi
50c718:	51                   	push   %ecx
50c719:	53                   	push   %ebx
50c71a:	e8 61 6d 0d 00       	call   0x5e3480
50c71f:	8b 55 14             	mov    0x14(%ebp),%edx
50c722:	8b c3                	mov    %ebx,%eax
50c724:	8b 4d fc             	mov    -0x4(%ebp),%ecx
50c727:	46                   	inc    %esi
50c728:	2b c1                	sub    %ecx,%eax
50c72a:	2a d9                	sub    %cl,%bl
50c72c:	c1 f8 08             	sar    $0x8,%eax
50c72f:	83 c4 0c             	add    $0xc,%esp
50c732:	88 02                	mov    %al,(%edx)
50c734:	88 5a 01             	mov    %bl,0x1(%edx)
50c737:	83 c2 02             	add    $0x2,%edx
50c73a:	89 55 14             	mov    %edx,0x14(%ebp)
50c73d:	3b 75 f4             	cmp    -0xc(%ebp),%esi
50c740:	7d 4f                	jge    0x50c791
50c742:	8b 4d 1c             	mov    0x1c(%ebp),%ecx
50c745:	8b 55 18             	mov    0x18(%ebp),%edx
50c748:	8b 5d fc             	mov    -0x4(%ebp),%ebx
50c74b:	8b 7d 20             	mov    0x20(%ebp),%edi
50c74e:	39 71 18             	cmp    %esi,0x18(%ecx)
50c751:	0f 8f 69 ff ff ff    	jg     0x50c6c0
50c757:	83 c1 04             	add    $0x4,%ecx
50c75a:	89 4d 1c             	mov    %ecx,0x1c(%ebp)
50c75d:	8b 09                	mov    (%ecx),%ecx
50c75f:	89 4d f8             	mov    %ecx,-0x8(%ebp)
50c762:	e9 59 ff ff ff       	jmp    0x50c6c0
50c767:	68 fc c4 6b 00       	push   $0x6bc4fc
50c76c:	68 eb 15 01 00       	push   $0x115eb
50c771:	68 94 c4 6b 00       	push   $0x6bc494
50c776:	68 78 c4 6b 00       	push   $0x6bc478
50c77b:	6a 0b                	push   $0xb
50c77d:	e8 5e 38 fd ff       	call   0x4dffe0
50c782:	83 c4 14             	add    $0x14,%esp
50c785:	5f                   	pop    %edi
50c786:	5e                   	pop    %esi
50c787:	b8 01 00 00 00       	mov    $0x1,%eax
50c78c:	5b                   	pop    %ebx
50c78d:	8b e5                	mov    %ebp,%esp
50c78f:	5d                   	pop    %ebp
50c790:	c3                   	ret
50c791:	8b 4d 10             	mov    0x10(%ebp),%ecx
50c794:	8b 45 18             	mov    0x18(%ebp),%eax
50c797:	5f                   	pop    %edi
50c798:	5e                   	pop    %esi
50c799:	89 01                	mov    %eax,(%ecx)
50c79b:	33 c0                	xor    %eax,%eax
50c79d:	5b                   	pop    %ebx
50c79e:	8b e5                	mov    %ebp,%esp
50c7a0:	5d                   	pop    %ebp
50c7a1:	c3                   	ret
50c7a2:	cc                   	int3
50c7a3:	cc                   	int3
50c7a4:	cc                   	int3
50c7a5:	cc                   	int3
50c7a6:	cc                   	int3
50c7a7:	cc                   	int3
50c7a8:	cc                   	int3
50c7a9:	cc                   	int3
50c7aa:	cc                   	int3
50c7ab:	cc                   	int3
50c7ac:	cc                   	int3
50c7ad:	cc                   	int3
50c7ae:	cc                   	int3
50c7af:	cc                   	int3
50c7b0:	55                   	push   %ebp
50c7b1:	8b ec                	mov    %esp,%ebp
50c7b3:	8b 4d 08             	mov    0x8(%ebp),%ecx
50c7b6:	8b 41 08             	mov    0x8(%ecx),%eax
50c7b9:	80 38 00             	cmpb   $0x0,(%eax)
50c7bc:	74 13                	je     0x50c7d1
50c7be:	c6 00 00             	movb   $0x0,(%eax)
50c7c1:	66 83 79 1e 01       	cmpw   $0x1,0x1e(%ecx)
50c7c6:	7e 09                	jle    0x50c7d1
50c7c8:	89 45 08             	mov    %eax,0x8(%ebp)
50c7cb:	5d                   	pop    %ebp
50c7cc:	e9 3f a6 fe ff       	jmp    0x4f6e10
50c7d1:	5d                   	pop    %ebp
50c7d2:	c3                   	ret
50c7d3:	cc                   	int3
50c7d4:	cc                   	int3
50c7d5:	cc                   	int3
50c7d6:	cc                   	int3
50c7d7:	cc                   	int3
50c7d8:	cc                   	int3
50c7d9:	cc                   	int3
50c7da:	cc                   	int3
50c7db:	cc                   	int3
50c7dc:	cc                   	int3
50c7dd:	cc                   	int3
50c7de:	cc                   	int3
50c7df:	cc                   	int3
50c7e0:	55                   	push   %ebp
50c7e1:	8b ec                	mov    %esp,%ebp
50c7e3:	53                   	push   %ebx
50c7e4:	8b 5d 08             	mov    0x8(%ebp),%ebx
50c7e7:	56                   	push   %esi
50c7e8:	57                   	push   %edi
50c7e9:	8b b3 88 00 00 00    	mov    0x88(%ebx),%esi
50c7ef:	85 f6                	test   %esi,%esi
50c7f1:	74 21                	je     0x50c814
50c7f3:	8b 45 14             	mov    0x14(%ebp),%eax
50c7f6:	0f 57 c0             	xorps  %xmm0,%xmm0
50c7f9:	89 30                	mov    %esi,(%eax)
50c7fb:	8b 46 10             	mov    0x10(%esi),%eax
50c7fe:	89 83 88 00 00 00    	mov    %eax,0x88(%ebx)
50c804:	8b 46 08             	mov    0x8(%esi),%eax
50c807:	c7 46 10 00 00 00 00 	movl   $0x0,0x10(%esi)
50c80e:	66 0f d6 00          	movq   %xmm0,(%eax)
50c812:	eb 77                	jmp    0x50c88b
50c814:	0f b7 83 8c 00 00 00 	movzwl 0x8c(%ebx),%eax
50c81b:	99                   	cltd
50c81c:	8b f8                	mov    %eax,%edi
50c81e:	83 c7 28             	add    $0x28,%edi
50c821:	83 d2 00             	adc    $0x0,%edx
50c824:	52                   	push   %edx
50c825:	57                   	push   %edi
50c826:	e8 35 47 02 00       	call   0x530f60
50c82b:	8b f0                	mov    %eax,%esi
50c82d:	83 c4 08             	add    $0x8,%esp
50c830:	85 f6                	test   %esi,%esi
50c832:	74 0c                	je     0x50c840
50c834:	57                   	push   %edi
50c835:	6a 00                	push   $0x0
50c837:	56                   	push   %esi
50c838:	e8 c3 71 0d 00       	call   0x5e3a00
50c83d:	83 c4 0c             	add    $0xc,%esp
50c840:	8b 4d 14             	mov    0x14(%ebp),%ecx
50c843:	89 31                	mov    %esi,(%ecx)
50c845:	85 f6                	test   %esi,%esi
50c847:	75 32                	jne    0x50c87b
50c849:	ff 75 10             	push   0x10(%ebp)
50c84c:	8b 4d 0c             	mov    0xc(%ebp),%ecx
50c84f:	8b 83 98 00 00 00    	mov    0x98(%ebx),%eax
50c855:	49                   	dec    %ecx
50c856:	8b 73 3c             	mov    0x3c(%ebx),%esi
50c859:	6a 00                	push   $0x0
50c85b:	99                   	cltd
50c85c:	51                   	push   %ecx
50c85d:	8b 3e                	mov    (%esi),%edi
50c85f:	52                   	push   %edx
50c860:	50                   	push   %eax
50c861:	e8 9a 52 0d 00       	call   0x5e1b00
50c866:	52                   	push   %edx
50c867:	50                   	push   %eax
50c868:	8b 47 48             	mov    0x48(%edi),%eax
50c86b:	56                   	push   %esi
50c86c:	ff d0                	call   *%eax
50c86e:	83 c4 10             	add    $0x10,%esp
50c871:	b8 07 00 00 00       	mov    $0x7,%eax
50c876:	5f                   	pop    %edi
50c877:	5e                   	pop    %esi
50c878:	5b                   	pop    %ebx
50c879:	5d                   	pop    %ebp
50c87a:	c3                   	ret
50c87b:	8d 46 28             	lea    0x28(%esi),%eax
50c87e:	c7 46 1c 20 00 01 00 	movl   $0x10020,0x1c(%esi)
50c885:	89 46 08             	mov    %eax,0x8(%esi)
50c888:	89 5e 14             	mov    %ebx,0x14(%esi)
50c88b:	8b 45 0c             	mov    0xc(%ebp),%eax
50c88e:	89 46 18             	mov    %eax,0x18(%esi)
50c891:	8b 45 10             	mov    0x10(%ebp),%eax
50c894:	89 46 04             	mov    %eax,0x4(%esi)
50c897:	ff 43 78             	incl   0x78(%ebx)
50c89a:	33 c0                	xor    %eax,%eax
50c89c:	5f                   	pop    %edi
50c89d:	5e                   	pop    %esi
50c89e:	5b                   	pop    %ebx
50c89f:	5d                   	pop    %ebp
50c8a0:	c3                   	ret
50c8a1:	cc                   	int3
50c8a2:	cc                   	int3
50c8a3:	cc                   	int3
50c8a4:	cc                   	int3
50c8a5:	cc                   	int3
50c8a6:	cc                   	int3
50c8a7:	cc                   	int3
50c8a8:	cc                   	int3
50c8a9:	cc                   	int3
50c8aa:	cc                   	int3
50c8ab:	cc                   	int3
50c8ac:	cc                   	int3
50c8ad:	cc                   	int3
50c8ae:	cc                   	int3
50c8af:	cc                   	int3
50c8b0:	55                   	push   %ebp
50c8b1:	8b ec                	mov    %esp,%ebp
50c8b3:	83 ec 18             	sub    $0x18,%esp
50c8b6:	a1 d4 89 72 00       	mov    0x7289d4,%eax
50c8bb:	33 c5                	xor    %ebp,%eax
50c8bd:	89 45 fc             	mov    %eax,-0x4(%ebp)
50c8c0:	53                   	push   %ebx
50c8c1:	8b 5d 08             	mov    0x8(%ebp),%ebx
50c8c4:	56                   	push   %esi