4fe5a2:	2b d1                	sub    %ecx,%edx
4fe5a4:	2b d0                	sub    %eax,%edx
4fe5a6:	83 ea 08             	sub    $0x8,%edx
4fe5a9:	89 56 14             	mov    %edx,0x14(%esi)
4fe5ac:	5e                   	pop    %esi
4fe5ad:	5b                   	pop    %ebx
4fe5ae:	5f                   	pop    %edi
4fe5af:	8b e5                	mov    %ebp,%esp
4fe5b1:	5d                   	pop    %ebp
4fe5b2:	c3                   	ret
4fe5b3:	0f b7 c0             	movzwl %ax,%eax
4fe5b6:	2b 45 0c             	sub    0xc(%ebp),%eax
4fe5b9:	03 c0                	add    %eax,%eax
4fe5bb:	50                   	push   %eax
4fe5bc:	8d 43 02             	lea    0x2(%ebx),%eax
4fe5bf:	50                   	push   %eax
4fe5c0:	53                   	push   %ebx
4fe5c1:	e8 ba 4e 0e 00       	call   0x5e3480
4fe5c6:	8b 4d 14             	mov    0x14(%ebp),%ecx
4fe5c9:	83 c4 0c             	add    $0xc,%esp
4fe5cc:	8b 55 fc             	mov    -0x4(%ebp),%edx
4fe5cf:	0f b6 46 19          	movzbl 0x19(%esi),%eax
4fe5d3:	88 44 0a 03          	mov    %al,0x3(%edx,%ecx,1)
4fe5d7:	0f b6 46 18          	movzbl 0x18(%esi),%eax
4fe5db:	88 44 0a 04          	mov    %al,0x4(%edx,%ecx,1)
4fe5df:	83 46 14 02          	addl   $0x2,0x14(%esi)
4fe5e3:	5e                   	pop    %esi
4fe5e4:	5b                   	pop    %ebx
4fe5e5:	5f                   	pop    %edi
4fe5e6:	8b e5                	mov    %ebp,%esp
4fe5e8:	5d                   	pop    %ebp
4fe5e9:	c3                   	ret
4fe5ea:	cc                   	int3
4fe5eb:	cc                   	int3
4fe5ec:	cc                   	int3
4fe5ed:	cc                   	int3
4fe5ee:	cc                   	int3
4fe5ef:	cc                   	int3
4fe5f0:	55                   	push   %ebp
4fe5f1:	8b ec                	mov    %esp,%ebp
4fe5f3:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
4fe5f7:	8b 4d 08             	mov    0x8(%ebp),%ecx
4fe5fa:	74 28                	je     0x4fe624
4fe5fc:	80 39 af             	cmpb   $0xaf,(%ecx)
4fe5ff:	74 23                	je     0x4fe624
4fe601:	f7 41 04 00 00 00 01 	testl  $0x1000000,0x4(%ecx)
4fe608:	75 1a                	jne    0x4fe624
4fe60a:	83 79 0c 00          	cmpl   $0x0,0xc(%ecx)
4fe60e:	75 0d                	jne    0x4fe61d
4fe610:	83 79 14 00          	cmpl   $0x0,0x14(%ecx)
4fe614:	75 07                	jne    0x4fe61d
4fe616:	ba 0c 40 00 00       	mov    $0x400c,%edx
4fe61b:	eb 0c                	jmp    0x4fe629
4fe61d:	ba 1c 20 00 00       	mov    $0x201c,%edx
4fe622:	eb 05                	jmp    0x4fe629
4fe624:	ba 34 00 00 00       	mov    $0x34,%edx
4fe629:	81 e2 ff 0f 00 00    	and    $0xfff,%edx
4fe62f:	f7 41 04 00 04 00 00 	testl  $0x400,0x4(%ecx)
4fe636:	75 1e                	jne    0x4fe656
4fe638:	8b 49 08             	mov    0x8(%ecx),%ecx
4fe63b:	85 c9                	test   %ecx,%ecx
4fe63d:	74 17                	je     0x4fe656
4fe63f:	56                   	push   %esi
4fe640:	8d 71 01             	lea    0x1(%ecx),%esi
4fe643:	8a 01                	mov    (%ecx),%al
4fe645:	41                   	inc    %ecx
4fe646:	84 c0                	test   %al,%al
4fe648:	75 f9                	jne    0x4fe643
4fe64a:	2b ce                	sub    %esi,%ecx
4fe64c:	42                   	inc    %edx
4fe64d:	81 e1 ff ff ff 3f    	and    $0x3fffffff,%ecx
4fe653:	03 d1                	add    %ecx,%edx
4fe655:	5e                   	pop    %esi
4fe656:	8d 42 07             	lea    0x7(%edx),%eax
4fe659:	83 e0 f8             	and    $0xfffffff8,%eax
4fe65c:	5d                   	pop    %ebp
4fe65d:	c3                   	ret
4fe65e:	cc                   	int3
4fe65f:	cc                   	int3
4fe660:	55                   	push   %ebp
4fe661:	8b ec                	mov    %esp,%ebp
4fe663:	57                   	push   %edi
4fe664:	8b 7d 08             	mov    0x8(%ebp),%edi
4fe667:	85 ff                	test   %edi,%edi
4fe669:	74 38                	je     0x4fe6a3
4fe66b:	53                   	push   %ebx
4fe66c:	8b 5d 0c             	mov    0xc(%ebp),%ebx
4fe66f:	53                   	push   %ebx
4fe670:	57                   	push   %edi
4fe671:	e8 7a ff ff ff       	call   0x4fe5f0
4fe676:	83 c4 08             	add    $0x8,%esp
4fe679:	89 45 08             	mov    %eax,0x8(%ebp)
4fe67c:	f6 c3 01             	test   $0x1,%bl
4fe67f:	74 1e                	je     0x4fe69f
4fe681:	56                   	push   %esi
4fe682:	53                   	push   %ebx
4fe683:	ff 77 10             	push   0x10(%edi)
4fe686:	e8 d5 ff ff ff       	call   0x4fe660
4fe68b:	53                   	push   %ebx
4fe68c:	ff 77 0c             	push   0xc(%edi)
4fe68f:	8b f0                	mov    %eax,%esi
4fe691:	e8 ca ff ff ff       	call   0x4fe660
4fe696:	03 45 08             	add    0x8(%ebp),%eax
4fe699:	83 c4 10             	add    $0x10,%esp
4fe69c:	03 c6                	add    %esi,%eax
4fe69e:	5e                   	pop    %esi
4fe69f:	5b                   	pop    %ebx
4fe6a0:	5f                   	pop    %edi
4fe6a1:	5d                   	pop    %ebp
4fe6a2:	c3                   	ret
4fe6a3:	33 c0                	xor    %eax,%eax
4fe6a5:	5f                   	pop    %edi
4fe6a6:	5d                   	pop    %ebp
4fe6a7:	c3                   	ret
4fe6a8:	cc                   	int3
4fe6a9:	cc                   	int3
4fe6aa:	cc                   	int3
4fe6ab:	cc                   	int3
4fe6ac:	cc                   	int3
4fe6ad:	cc                   	int3
4fe6ae:	cc                   	int3
4fe6af:	cc                   	int3
4fe6b0:	55                   	push   %ebp
4fe6b1:	8b ec                	mov    %esp,%ebp
4fe6b3:	83 ec 18             	sub    $0x18,%esp
4fe6b6:	8b 4d 14             	mov    0x14(%ebp),%ecx
4fe6b9:	53                   	push   %ebx
4fe6ba:	56                   	push   %esi
4fe6bb:	8b 75 18             	mov    0x18(%ebp),%esi
4fe6be:	57                   	push   %edi
4fe6bf:	8b 7d 08             	mov    0x8(%ebp),%edi
4fe6c2:	8b 47 38             	mov    0x38(%edi),%eax
4fe6c5:	0f b7 5f 18          	movzwl 0x18(%edi),%ebx
4fe6c9:	0f b6 57 0c          	movzbl 0xc(%edi),%edx
4fe6cd:	89 45 f0             	mov    %eax,-0x10(%ebp)
4fe6d0:	03 d3                	add    %ebx,%edx
4fe6d2:	0f b6 47 09          	movzbl 0x9(%edi),%eax
4fe6d6:	03 55 0c             	add    0xc(%ebp),%edx
4fe6d9:	89 45 ec             	mov    %eax,-0x14(%ebp)
4fe6dc:	8b 47 40             	mov    0x40(%edi),%eax
4fe6df:	89 55 f8             	mov    %edx,-0x8(%ebp)
4fe6e2:	8d 04 48             	lea    (%eax,%ecx,2),%eax
4fe6e5:	89 45 08             	mov    %eax,0x8(%ebp)
4fe6e8:	8b 45 10             	mov    0x10(%ebp),%eax
4fe6eb:	03 c8                	add    %eax,%ecx
4fe6ed:	89 4d fc             	mov    %ecx,-0x4(%ebp)
4fe6f0:	39 45 0c             	cmp    %eax,0xc(%ebp)
4fe6f3:	7d 61                	jge    0x4fe756
4fe6f5:	8b 4d 0c             	mov    0xc(%ebp),%ecx
4fe6f8:	2b c1                	sub    %ecx,%eax
4fe6fa:	56                   	push   %esi
4fe6fb:	50                   	push   %eax
4fe6fc:	51                   	push   %ecx
4fe6fd:	57                   	push   %edi
4fe6fe:	e8 2d db 00 00       	call   0x50c230
4fe703:	8b d0                	mov    %eax,%edx
4fe705:	83 c4 10             	add    $0x10,%esp
4fe708:	89 55 f4             	mov    %edx,-0xc(%ebp)
4fe70b:	3b d3                	cmp    %ebx,%edx
4fe70d:	7e 2a                	jle    0x4fe739
4fe70f:	68 fc c4 6b 00       	push   $0x6bc4fc
4fe714:	68 58 16 01 00       	push   $0x11658
4fe719:	68 94 c4 6b 00       	push   $0x6bc494
4fe71e:	68 78 c4 6b 00       	push   $0x6bc478
4fe723:	6a 0b                	push   $0xb
4fe725:	e8 b6 18 fe ff       	call   0x4dffe0
4fe72a:	83 c4 14             	add    $0x14,%esp
4fe72d:	b8 0b 00 00 00       	mov    $0xb,%eax
4fe732:	5f                   	pop    %edi
4fe733:	5e                   	pop    %esi
4fe734:	5b                   	pop    %ebx
4fe735:	8b e5                	mov    %ebp,%esp
4fe737:	5d                   	pop    %ebp
4fe738:	c3                   	ret
4fe739:	8b 4f 40             	mov    0x40(%edi),%ecx
4fe73c:	8d 04 1b             	lea    (%ebx,%ebx,1),%eax
4fe73f:	50                   	push   %eax
4fe740:	8d 04 51             	lea    (%ecx,%edx,2),%eax
4fe743:	50                   	push   %eax
4fe744:	51                   	push   %ecx
4fe745:	e8 36 4d 0e 00       	call   0x5e3480
4fe74a:	8b 55 f8             	mov    -0x8(%ebp),%edx
4fe74d:	83 c4 0c             	add    $0xc,%esp
4fe750:	2b 5d f4             	sub    -0xc(%ebp),%ebx
4fe753:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4fe756:	3b ca                	cmp    %edx,%ecx
4fe758:	7d 10                	jge    0x4fe76a
4fe75a:	56                   	push   %esi
4fe75b:	2b d1                	sub    %ecx,%edx
4fe75d:	52                   	push   %edx
4fe75e:	51                   	push   %ecx
4fe75f:	57                   	push   %edi
4fe760:	e8 cb da 00 00       	call   0x50c230
4fe765:	83 c4 10             	add    $0x10,%esp
4fe768:	2b d8                	sub    %eax,%ebx
4fe76a:	8b 45 ec             	mov    -0x14(%ebp),%eax
4fe76d:	03 45 f0             	add    -0x10(%ebp),%eax
4fe770:	89 45 e8             	mov    %eax,-0x18(%ebp)
4fe773:	0f b6 48 05          	movzbl 0x5(%eax),%ecx
4fe777:	0f b6 40 06          	movzbl 0x6(%eax),%eax
4fe77b:	c1 e1 08             	shl    $0x8,%ecx
4fe77e:	0b c8                	or     %eax,%ecx
4fe780:	49                   	dec    %ecx
4fe781:	0f b7 c1             	movzwl %cx,%eax
4fe784:	40                   	inc    %eax
4fe785:	03 45 f0             	add    -0x10(%ebp),%eax
4fe788:	89 45 fc             	mov    %eax,-0x4(%ebp)
4fe78b:	3b 45 08             	cmp    0x8(%ebp),%eax
4fe78e:	0f 82 5d 01 00 00    	jb     0x4fe8f1
4fe794:	8b 55 10             	mov    0x10(%ebp),%edx
4fe797:	8b 45 0c             	mov    0xc(%ebp),%eax
4fe79a:	3b d0                	cmp    %eax,%edx
4fe79c:	7d 47                	jge    0x4fe7e5
4fe79e:	8b 77 40             	mov    0x40(%edi),%esi
4fe7a1:	8b c8                	mov    %eax,%ecx
4fe7a3:	2b ca                	sub    %edx,%ecx
4fe7a5:	8d 04 1b             	lea    (%ebx,%ebx,1),%eax
4fe7a8:	39 4d 14             	cmp    %ecx,0x14(%ebp)
4fe7ab:	50                   	push   %eax
4fe7ac:	0f 4c 4d 14          	cmovl  0x14(%ebp),%ecx
4fe7b0:	56                   	push   %esi
4fe7b1:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4fe7b4:	8d 04 4e             	lea    (%esi,%ecx,2),%eax
4fe7b7:	50                   	push   %eax
4fe7b8:	e8 c3 4c 0e 00       	call   0x5e3480
4fe7bd:	ff 75 18             	push   0x18(%ebp)
4fe7c0:	8d 45 fc             	lea    -0x4(%ebp),%eax
4fe7c3:	ff 75 f8             	push   -0x8(%ebp)
4fe7c6:	ff 75 10             	push   0x10(%ebp)
4fe7c9:	56                   	push   %esi
4fe7ca:	50                   	push   %eax
4fe7cb:	ff 75 08             	push   0x8(%ebp)
4fe7ce:	57                   	push   %edi
4fe7cf:	e8 8c de 00 00       	call   0x50c660
4fe7d4:	83 c4 28             	add    $0x28,%esp
4fe7d7:	85 c0                	test   %eax,%eax
4fe7d9:	0f 85 12 01 00 00    	jne    0x4fe8f1
4fe7df:	03 5d f8             	add    -0x8(%ebp),%ebx
4fe7e2:	8b 55 10             	mov    0x10(%ebp),%edx
4fe7e5:	33 c9                	xor    %ecx,%ecx
4fe7e7:	89 4d f4             	mov    %ecx,-0xc(%ebp)
4fe7ea:	38 4f 0c             	cmp    %cl,0xc(%edi)
4fe7ed:	0f 86 9e 00 00 00    	jbe    0x4fe891
4fe7f3:	8d 47 1c             	lea    0x1c(%edi),%eax
4fe7f6:	89 45 f8             	mov    %eax,-0x8(%ebp)
4fe7f9:	0f 1f 80 00 00 00 00 	nopl   0x0(%eax)
4fe800:	0f b7 30             	movzwl (%eax),%esi
4fe803:	2b f2                	sub    %edx,%esi
4fe805:	03 75 0c             	add    0xc(%ebp),%esi
4fe808:	78 6e                	js     0x4fe878
4fe80a:	3b 75 14             	cmp    0x14(%ebp),%esi
4fe80d:	7d 69                	jge    0x4fe878
4fe80f:	8b 47 40             	mov    0x40(%edi),%eax
4fe812:	8d 0c 70             	lea    (%eax,%esi,2),%ecx
4fe815:	89 4d ec             	mov    %ecx,-0x14(%ebp)
4fe818:	3b de                	cmp    %esi,%ebx
4fe81a:	7e 17                	jle    0x4fe833
4fe81c:	8b c3                	mov    %ebx,%eax
4fe81e:	2b c6                	sub    %esi,%eax
4fe820:	03 c0                	add    %eax,%eax
4fe822:	50                   	push   %eax
4fe823:	51                   	push   %ecx
4fe824:	8d 41 02             	lea    0x2(%ecx),%eax
4fe827:	50                   	push   %eax
4fe828:	e8 53 4c 0e 00       	call   0x5e3480
4fe82d:	8b 55 10             	mov    0x10(%ebp),%edx
4fe830:	83 c4 0c             	add    $0xc,%esp
4fe833:	8b 4d 18             	mov    0x18(%ebp),%ecx
4fe836:	03 f2                	add    %edx,%esi
4fe838:	43                   	inc    %ebx
4fe839:	8b 41 0c             	mov    0xc(%ecx),%eax
4fe83c:	66 83 3c 70 00       	cmpw   $0x0,(%eax,%esi,2)
4fe841:	75 0d                	jne    0x4fe850
4fe843:	56                   	push   %esi
4fe844:	51                   	push   %ecx
4fe845:	e8 46 c8 ff ff       	call   0x4fb090
4fe84a:	8b 4d 18             	mov    0x18(%ebp),%ecx
4fe84d:	83 c4 08             	add    $0x8,%esp
4fe850:	51                   	push   %ecx
4fe851:	6a 01                	push   $0x1
4fe853:	56                   	push   %esi
4fe854:	ff 75 ec             	push   -0x14(%ebp)
4fe857:	8d 45 fc             	lea    -0x4(%ebp),%eax
4fe85a:	50                   	push   %eax
4fe85b:	ff 75 08             	push   0x8(%ebp)
4fe85e:	57                   	push   %edi
4fe85f:	e8 fc dd 00 00       	call   0x50c660
4fe864:	83 c4 1c             	add    $0x1c,%esp
4fe867:	85 c0                	test   %eax,%eax
4fe869:	0f 85 82 00 00 00    	jne    0x4fe8f1
4fe86f:	8b 55 10             	mov    0x10(%ebp),%edx
4fe872:	8b 45 f8             	mov    -0x8(%ebp),%eax
4fe875:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4fe878:	83 c0 02             	add    $0x2,%eax
4fe87b:	41                   	inc    %ecx
4fe87c:	89 45 f8             	mov    %eax,-0x8(%ebp)
4fe87f:	0f b6 47 0c          	movzbl 0xc(%edi),%eax
4fe883:	3b c8                	cmp    %eax,%ecx
4fe885:	89 4d f4             	mov    %ecx,-0xc(%ebp)
4fe888:	8b 45 f8             	mov    -0x8(%ebp),%eax
4fe88b:	0f 8c 6f ff ff ff    	jl     0x4fe800
4fe891:	8b 47 40             	mov    0x40(%edi),%eax
4fe894:	ff 75 18             	push   0x18(%ebp)
4fe897:	8d 0c 58             	lea    (%eax,%ebx,2),%ecx
4fe89a:	8b 45 14             	mov    0x14(%ebp),%eax
4fe89d:	2b c3                	sub    %ebx,%eax
4fe89f:	50                   	push   %eax
4fe8a0:	8d 04 13             	lea    (%ebx,%edx,1),%eax
4fe8a3:	50                   	push   %eax
4fe8a4:	51                   	push   %ecx
4fe8a5:	8d 45 fc             	lea    -0x4(%ebp),%eax
4fe8a8:	50                   	push   %eax
4fe8a9:	ff 75 08             	push   0x8(%ebp)
4fe8ac:	57                   	push   %edi
4fe8ad:	e8 ae dd 00 00       	call   0x50c660
4fe8b2:	83 c4 1c             	add    $0x1c,%esp
4fe8b5:	85 c0                	test   %eax,%eax
4fe8b7:	75 38                	jne    0x4fe8f1
4fe8b9:	8b 55 e8             	mov    -0x18(%ebp),%edx
4fe8bc:	8b 45 14             	mov    0x14(%ebp),%eax
4fe8bf:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4fe8c2:	8b 5d f0             	mov    -0x10(%ebp),%ebx
4fe8c5:	66 89 47 18          	mov    %ax,0x18(%edi)
4fe8c9:	c1 e8 08             	shr    $0x8,%eax
4fe8cc:	c6 47 0c 00          	movb   $0x0,0xc(%edi)
4fe8d0:	88 42 03             	mov    %al,0x3(%edx)
4fe8d3:	8a 47 18             	mov    0x18(%edi),%al
4fe8d6:	88 42 04             	mov    %al,0x4(%edx)
4fe8d9:	8b c1                	mov    %ecx,%eax
4fe8db:	2b c3                	sub    %ebx,%eax
4fe8dd:	2a cb                	sub    %bl,%cl
4fe8df:	5f                   	pop    %edi
4fe8e0:	c1 f8 08             	sar    $0x8,%eax
4fe8e3:	5e                   	pop    %esi
4fe8e4:	88 42 05             	mov    %al,0x5(%edx)
4fe8e7:	33 c0                	xor    %eax,%eax
4fe8e9:	88 4a 06             	mov    %cl,0x6(%edx)
4fe8ec:	5b                   	pop    %ebx
4fe8ed:	8b e5                	mov    %ebp,%esp
4fe8ef:	5d                   	pop    %ebp
4fe8f0:	c3                   	ret
4fe8f1:	ff 75 14             	push   0x14(%ebp)
4fe8f4:	8b 75 10             	mov    0x10(%ebp),%esi
4fe8f7:	8b 5d 18             	mov    0x18(%ebp),%ebx
4fe8fa:	56                   	push   %esi
4fe8fb:	53                   	push   %ebx
4fe8fc:	e8 2f 1a 01 00       	call   0x510330
4fe901:	57                   	push   %edi
4fe902:	ff 75 14             	push   0x14(%ebp)
4fe905:	56                   	push   %esi