4ec58f:	00 ed                	add    %ch,%ch
4ec591:	c4 4e 00             	les    0x0(%esi),%ecx
4ec594:	00 04 04             	add    %al,(%esp,%eax,1)
4ec597:	04 04                	add    $0x4,%al
4ec599:	01 04 04             	add    %eax,(%esp,%eax,1)
4ec59c:	04 02                	add    $0x2,%al
4ec59e:	03 cc                	add    %esp,%ecx
4ec5a0:	b8 08 00 00 00       	mov    $0x8,%eax
4ec5a5:	e8 06 52 0e 00       	call   0x5d17b0
4ec5aa:	53                   	push   %ebx
4ec5ab:	55                   	push   %ebp
4ec5ac:	8b 6c 24 18          	mov    0x18(%esp),%ebp
4ec5b0:	56                   	push   %esi
4ec5b1:	8b 4d 00             	mov    0x0(%ebp),%ecx
4ec5b4:	8b d9                	mov    %ecx,%ebx
4ec5b6:	81 e3 00 10 00 00    	and    $0x1000,%ebx
4ec5bc:	74 0e                	je     0x4ec5cc
4ec5be:	8b 44 24 18          	mov    0x18(%esp),%eax
4ec5c2:	8d 74 24 0c          	lea    0xc(%esp),%esi
4ec5c6:	89 44 24 0c          	mov    %eax,0xc(%esp)
4ec5ca:	eb 04                	jmp    0x4ec5d0
4ec5cc:	8b 74 24 18          	mov    0x18(%esp),%esi
4ec5d0:	89 74 24 1c          	mov    %esi,0x1c(%esp)
4ec5d4:	f6 c1 06             	test   $0x6,%cl
4ec5d7:	74 5f                	je     0x4ec638
4ec5d9:	57                   	push   %edi
4ec5da:	8b 3e                	mov    (%esi),%edi
4ec5dc:	33 f6                	xor    %esi,%esi
4ec5de:	57                   	push   %edi
4ec5df:	e8 dc 8a ff ff       	call   0x4e50c0
4ec5e4:	83 c4 04             	add    $0x4,%esp
4ec5e7:	85 c0                	test   %eax,%eax
4ec5e9:	7e 32                	jle    0x4ec61d
4ec5eb:	0f 1f 44 00 00       	nopl   0x0(%eax,%eax,1)
4ec5f0:	56                   	push   %esi
4ec5f1:	57                   	push   %edi
4ec5f2:	e8 89 8c ff ff       	call   0x4e5280
4ec5f7:	83 c4 08             	add    $0x8,%esp
4ec5fa:	89 44 24 14          	mov    %eax,0x14(%esp)
4ec5fe:	8b 45 10             	mov    0x10(%ebp),%eax
4ec601:	53                   	push   %ebx
4ec602:	ff d0                	call   *%eax
4ec604:	50                   	push   %eax
4ec605:	8d 44 24 1c          	lea    0x1c(%esp),%eax
4ec609:	50                   	push   %eax
4ec60a:	e8 d1 fc ff ff       	call   0x4ec2e0
4ec60f:	57                   	push   %edi
4ec610:	46                   	inc    %esi
4ec611:	e8 aa 8a ff ff       	call   0x4e50c0
4ec616:	83 c4 10             	add    $0x10,%esp
4ec619:	3b f0                	cmp    %eax,%esi
4ec61b:	7c d3                	jl     0x4ec5f0
4ec61d:	57                   	push   %edi
4ec61e:	e8 fd 88 ff ff       	call   0x4e4f20
4ec623:	8b 44 24 24          	mov    0x24(%esp),%eax
4ec627:	83 c4 04             	add    $0x4,%esp
4ec62a:	5f                   	pop    %edi
4ec62b:	5e                   	pop    %esi
4ec62c:	5d                   	pop    %ebp
4ec62d:	c7 00 00 00 00 00    	movl   $0x0,(%eax)
4ec633:	5b                   	pop    %ebx
4ec634:	83 c4 08             	add    $0x8,%esp
4ec637:	c3                   	ret
4ec638:	8b 45 10             	mov    0x10(%ebp),%eax
4ec63b:	53                   	push   %ebx
4ec63c:	ff d0                	call   *%eax
4ec63e:	50                   	push   %eax
4ec63f:	56                   	push   %esi
4ec640:	e8 9b fc ff ff       	call   0x4ec2e0
4ec645:	83 c4 0c             	add    $0xc,%esp
4ec648:	5e                   	pop    %esi
4ec649:	5d                   	pop    %ebp
4ec64a:	5b                   	pop    %ebx
4ec64b:	83 c4 08             	add    $0x8,%esp
4ec64e:	c3                   	ret
4ec64f:	cc                   	int3
4ec650:	b8 20 00 00 00       	mov    $0x20,%eax
4ec655:	e8 56 51 0e 00       	call   0x5d17b0
4ec65a:	a1 c0 14 69 00       	mov    0x6914c0,%eax
4ec65f:	33 c4                	xor    %esp,%eax
4ec661:	89 44 24 1c          	mov    %eax,0x1c(%esp)
4ec665:	8b 44 24 24          	mov    0x24(%esp),%eax
4ec669:	85 c0                	test   %eax,%eax
4ec66b:	8b 4c 24 28          	mov    0x28(%esp),%ecx
4ec66f:	56                   	push   %esi
4ec670:	57                   	push   %edi
4ec671:	8b 7c 24 38          	mov    0x38(%esp),%edi
4ec675:	8d 74 24 08          	lea    0x8(%esp),%esi
4ec679:	6a 00                	push   $0x0
4ec67b:	0f 45 f0             	cmovne %eax,%esi
4ec67e:	c7 44 24 0c 00 00 00 	movl   $0x0,0xc(%esp)
4ec685:	00
4ec686:	8d 44 24 10          	lea    0x10(%esp),%eax
4ec68a:	c6 44 24 10 00       	movb   $0x0,0x10(%esp)
4ec68f:	50                   	push   %eax
4ec690:	6a 00                	push   $0x0
4ec692:	6a 00                	push   $0x0
4ec694:	6a ff                	push   $0xffffffff
4ec696:	57                   	push   %edi
4ec697:	ff 74 24 4c          	push   0x4c(%esp)
4ec69b:	51                   	push   %ecx
4ec69c:	56                   	push   %esi
4ec69d:	e8 8e 0c 00 00       	call   0x4ed330
4ec6a2:	83 c4 24             	add    $0x24,%esp
4ec6a5:	85 c0                	test   %eax,%eax
4ec6a7:	7f 1d                	jg     0x4ec6c6
4ec6a9:	57                   	push   %edi
4ec6aa:	56                   	push   %esi
4ec6ab:	e8 f0 fb ff ff       	call   0x4ec2a0
4ec6b0:	83 c4 08             	add    $0x8,%esp
4ec6b3:	33 c0                	xor    %eax,%eax
4ec6b5:	5f                   	pop    %edi
4ec6b6:	5e                   	pop    %esi
4ec6b7:	8b 4c 24 1c          	mov    0x1c(%esp),%ecx
4ec6bb:	33 cc                	xor    %esp,%ecx
4ec6bd:	e8 64 53 0e 00       	call   0x5d1a26
4ec6c2:	83 c4 20             	add    $0x20,%esp
4ec6c5:	c3                   	ret
4ec6c6:	8b 06                	mov    (%esi),%eax
4ec6c8:	8b 4c 24 24          	mov    0x24(%esp),%ecx
4ec6cc:	5f                   	pop    %edi
4ec6cd:	5e                   	pop    %esi
4ec6ce:	33 cc                	xor    %esp,%ecx
4ec6d0:	e8 51 53 0e 00       	call   0x5d1a26
4ec6d5:	83 c4 20             	add    $0x20,%esp
4ec6d8:	c3                   	ret
4ec6d9:	cc                   	int3
4ec6da:	cc                   	int3
4ec6db:	cc                   	int3
4ec6dc:	cc                   	int3
4ec6dd:	cc                   	int3
4ec6de:	cc                   	int3
4ec6df:	cc                   	int3
4ec6e0:	56                   	push   %esi
4ec6e1:	6a 00                	push   $0x0
4ec6e3:	ff 74 24 28          	push   0x28(%esp)
4ec6e7:	ff 74 24 28          	push   0x28(%esp)
4ec6eb:	ff 74 24 28          	push   0x28(%esp)
4ec6ef:	ff 74 24 28          	push   0x28(%esp)
4ec6f3:	ff 74 24 28          	push   0x28(%esp)
4ec6f7:	ff 74 24 28          	push   0x28(%esp)
4ec6fb:	ff 74 24 28          	push   0x28(%esp)
4ec6ff:	ff 74 24 28          	push   0x28(%esp)
4ec703:	e8 28 0c 00 00       	call   0x4ed330
4ec708:	8b f0                	mov    %eax,%esi
4ec70a:	83 c4 24             	add    $0x24,%esp
4ec70d:	85 f6                	test   %esi,%esi
4ec70f:	7f 12                	jg     0x4ec723
4ec711:	ff 74 24 14          	push   0x14(%esp)
4ec715:	ff 74 24 0c          	push   0xc(%esp)
4ec719:	e8 82 fb ff ff       	call   0x4ec2a0
4ec71e:	83 c4 08             	add    $0x8,%esp
4ec721:	8b c6                	mov    %esi,%eax
4ec723:	5e                   	pop    %esi
4ec724:	c3                   	ret
4ec725:	cc                   	int3
4ec726:	cc                   	int3
4ec727:	cc                   	int3
4ec728:	cc                   	int3
4ec729:	cc                   	int3
4ec72a:	cc                   	int3
4ec72b:	cc                   	int3
4ec72c:	cc                   	int3
4ec72d:	cc                   	int3
4ec72e:	cc                   	int3
4ec72f:	cc                   	int3
4ec730:	8b 44 24 04          	mov    0x4(%esp),%eax
4ec734:	83 f8 1e             	cmp    $0x1e,%eax
4ec737:	77 08                	ja     0x4ec741
4ec739:	8b 04 85 88 58 61 00 	mov    0x615888(,%eax,4),%eax
4ec740:	c3                   	ret
4ec741:	33 c0                	xor    %eax,%eax
4ec743:	c3                   	ret
4ec744:	cc                   	int3
4ec745:	cc                   	int3
4ec746:	cc                   	int3
4ec747:	cc                   	int3
4ec748:	cc                   	int3
4ec749:	cc                   	int3
4ec74a:	cc                   	int3
4ec74b:	cc                   	int3
4ec74c:	cc                   	int3
4ec74d:	cc                   	int3
4ec74e:	cc                   	int3
4ec74f:	cc                   	int3
4ec750:	83 7c 24 08 02       	cmpl   $0x2,0x8(%esp)
4ec755:	7c 1c                	jl     0x4ec773
4ec757:	8b 4c 24 04          	mov    0x4(%esp),%ecx
4ec75b:	8b 01                	mov    (%ecx),%eax
4ec75d:	80 38 00             	cmpb   $0x0,(%eax)
4ec760:	75 11                	jne    0x4ec773
4ec762:	80 78 01 00          	cmpb   $0x0,0x1(%eax)
4ec766:	75 0b                	jne    0x4ec773
4ec768:	83 c0 02             	add    $0x2,%eax
4ec76b:	89 01                	mov    %eax,(%ecx)
4ec76d:	b8 01 00 00 00       	mov    $0x1,%eax
4ec772:	c3                   	ret
4ec773:	33 c0                	xor    %eax,%eax
4ec775:	c3                   	ret
4ec776:	cc                   	int3
4ec777:	cc                   	int3
4ec778:	cc                   	int3
4ec779:	cc                   	int3
4ec77a:	cc                   	int3
4ec77b:	cc                   	int3
4ec77c:	cc                   	int3
4ec77d:	cc                   	int3
4ec77e:	cc                   	int3
4ec77f:	cc                   	int3
4ec780:	b8 14 00 00 00       	mov    $0x14,%eax
4ec785:	e8 26 50 0e 00       	call   0x5d17b0
4ec78a:	8a 54 24 24          	mov    0x24(%esp),%dl
4ec78e:	55                   	push   %ebp
4ec78f:	8b 6c 24 1c          	mov    0x1c(%esp),%ebp
4ec793:	80 e2 01             	and    $0x1,%dl
4ec796:	88 54 24 28          	mov    %dl,0x28(%esp)
4ec79a:	8a c2                	mov    %dl,%al
4ec79c:	56                   	push   %esi
4ec79d:	8b 74 24 24          	mov    0x24(%esp),%esi
4ec7a1:	8b 0e                	mov    (%esi),%ecx
4ec7a3:	89 4c 24 08          	mov    %ecx,0x8(%esp)
4ec7a7:	85 ed                	test   %ebp,%ebp
4ec7a9:	75 15                	jne    0x4ec7c0
4ec7ab:	84 c0                	test   %al,%al
4ec7ad:	75 11                	jne    0x4ec7c0
4ec7af:	8b 44 24 28          	mov    0x28(%esp),%eax
4ec7b3:	03 c1                	add    %ecx,%eax
4ec7b5:	89 06                	mov    %eax,(%esi)
4ec7b7:	8d 45 01             	lea    0x1(%ebp),%eax
4ec7ba:	5e                   	pop    %esi
4ec7bb:	5d                   	pop    %ebp
4ec7bc:	83 c4 14             	add    $0x14,%esp
4ec7bf:	c3                   	ret
4ec7c0:	53                   	push   %ebx
4ec7c1:	57                   	push   %edi
4ec7c2:	8b 7c 24 30          	mov    0x30(%esp),%edi
4ec7c6:	85 ff                	test   %edi,%edi
4ec7c8:	0f 8e 1b 01 00 00    	jle    0x4ec8e9
4ec7ce:	66 90                	xchg   %ax,%ax
4ec7d0:	8b d9                	mov    %ecx,%ebx
4ec7d2:	83 ff 02             	cmp    $0x2,%edi
4ec7d5:	72 0f                	jb     0x4ec7e6
4ec7d7:	80 39 00             	cmpb   $0x0,(%ecx)
4ec7da:	75 0a                	jne    0x4ec7e6
4ec7dc:	80 79 01 00          	cmpb   $0x0,0x1(%ecx)
4ec7e0:	0f 84 30 01 00 00    	je     0x4ec916
4ec7e6:	57                   	push   %edi
4ec7e7:	8d 44 24 20          	lea    0x20(%esp),%eax
4ec7eb:	89 4c 24 2c          	mov    %ecx,0x2c(%esp)
4ec7ef:	50                   	push   %eax
4ec7f0:	8d 44 24 20          	lea    0x20(%esp),%eax
4ec7f4:	50                   	push   %eax
4ec7f5:	8d 44 24 20          	lea    0x20(%esp),%eax
4ec7f9:	50                   	push   %eax
4ec7fa:	8d 44 24 38          	lea    0x38(%esp),%eax
4ec7fe:	50                   	push   %eax
4ec7ff:	e8 8c db 01 00       	call   0x50a390
4ec804:	8b d0                	mov    %eax,%edx
4ec806:	83 c4 14             	add    $0x14,%esp
4ec809:	84 d2                	test   %dl,%dl
4ec80b:	0f 88 92 01 00 00    	js     0x4ec9a3
4ec811:	8b 44 24 38          	mov    0x38(%esp),%eax
4ec815:	85 c0                	test   %eax,%eax
4ec817:	78 18                	js     0x4ec831
4ec819:	3b 44 24 18          	cmp    0x18(%esp),%eax
4ec81d:	0f 85 2a 01 00 00    	jne    0x4ec94d
4ec823:	8b 44 24 3c          	mov    0x3c(%esp),%eax
4ec827:	3b 44 24 1c          	cmp    0x1c(%esp),%eax
4ec82b:	0f 85 1c 01 00 00    	jne    0x4ec94d
4ec831:	8b 4c 24 28          	mov    0x28(%esp),%ecx
4ec835:	f6 c2 01             	test   $0x1,%dl
4ec838:	74 0c                	je     0x4ec846
4ec83a:	8b f3                	mov    %ebx,%esi
4ec83c:	2b f1                	sub    %ecx,%esi
4ec83e:	03 f7                	add    %edi,%esi
4ec840:	89 74 24 14          	mov    %esi,0x14(%esp)
4ec844:	eb 04                	jmp    0x4ec84a
4ec846:	8b 74 24 14          	mov    0x14(%esp),%esi
4ec84a:	8a c2                	mov    %dl,%al
4ec84c:	89 4c 24 10          	mov    %ecx,0x10(%esp)
4ec850:	24 01                	and    $0x1,%al
4ec852:	88 44 24 20          	mov    %al,0x20(%esp)
4ec856:	f6 c2 20             	test   $0x20,%dl
4ec859:	74 38                	je     0x4ec893
4ec85b:	8b 44 24 40          	mov    0x40(%esp),%eax
4ec85f:	83 f8 05             	cmp    $0x5,%eax
4ec862:	0f 8d f1 00 00 00    	jge    0x4ec959
4ec868:	40                   	inc    %eax
4ec869:	50                   	push   %eax
4ec86a:	ff 74 24 40          	push   0x40(%esp)
4ec86e:	8d 44 24 18          	lea    0x18(%esp),%eax
4ec872:	ff 74 24 40          	push   0x40(%esp)
4ec876:	ff 74 24 2c          	push   0x2c(%esp)
4ec87a:	56                   	push   %esi
4ec87b:	50                   	push   %eax
4ec87c:	55                   	push   %ebp
4ec87d:	e8 fe fe ff ff       	call   0x4ec780
4ec882:	83 c4 1c             	add    $0x1c,%esp
4ec885:	85 c0                	test   %eax,%eax
4ec887:	0f 84 0c 01 00 00    	je     0x4ec999
4ec88d:	8b 4c 24 10          	mov    0x10(%esp),%ecx
4ec891:	eb 42                	jmp    0x4ec8d5
4ec893:	85 f6                	test   %esi,%esi
4ec895:	74 3e                	je     0x4ec8d5
4ec897:	85 ed                	test   %ebp,%ebp
4ec899:	74 34                	je     0x4ec8cf
4ec89b:	8b 45 00             	mov    0x0(%ebp),%eax
4ec89e:	89 44 24 28          	mov    %eax,0x28(%esp)
4ec8a2:	03 c6                	add    %esi,%eax
4ec8a4:	50                   	push   %eax
4ec8a5:	55                   	push   %ebp
4ec8a6:	e8 15 ee 01 00       	call   0x50b6c0
4ec8ab:	83 c4 08             	add    $0x8,%esp
4ec8ae:	85 c0                	test   %eax,%eax
4ec8b0:	0f 84 c8 00 00 00    	je     0x4ec97e
4ec8b6:	8b 45 04             	mov    0x4(%ebp),%eax
4ec8b9:	03 44 24 28          	add    0x28(%esp),%eax
4ec8bd:	56                   	push   %esi
4ec8be:	ff 74 24 14          	push   0x14(%esp)
4ec8c2:	50                   	push   %eax
4ec8c3:	e8 08 65 0e 00       	call   0x5d2dd0
4ec8c8:	8b 4c 24 1c          	mov    0x1c(%esp),%ecx
4ec8cc:	83 c4 0c             	add    $0xc,%esp
4ec8cf:	03 ce                	add    %esi,%ecx
4ec8d1:	89 4c 24 10          	mov    %ecx,0x10(%esp)
4ec8d5:	2b d9                	sub    %ecx,%ebx
4ec8d7:	03 fb                	add    %ebx,%edi
4ec8d9:	85 ff                	test   %edi,%edi
4ec8db:	0f 8f ef fe ff ff    	jg     0x4ec7d0
4ec8e1:	8a 54 24 34          	mov    0x34(%esp),%dl
4ec8e5:	8b 74 24 2c          	mov    0x2c(%esp),%esi
4ec8e9:	84 d2                	test   %dl,%dl
4ec8eb:	0f 84 f2 00 00 00    	je     0x4ec9e3
4ec8f1:	68 1d 04 00 00       	push   $0x41d
4ec8f6:	68 08 59 61 00       	push   $0x615908
4ec8fb:	68 89 00 00 00       	push   $0x89
4ec900:	6a 6a                	push   $0x6a
4ec902:	6a 0d                	push   $0xd
4ec904:	e8 77 c6 fe ff       	call   0x4d8f80
4ec909:	83 c4 14             	add    $0x14,%esp
4ec90c:	33 c0                	xor    %eax,%eax
4ec90e:	5f                   	pop    %edi
4ec90f:	5b                   	pop    %ebx
4ec910:	5e                   	pop    %esi
4ec911:	5d                   	pop    %ebp
4ec912:	83 c4 14             	add    $0x14,%esp
4ec915:	c3                   	ret
4ec916:	80 7c 24 34 00       	cmpb   $0x0,0x34(%esp)
4ec91b:	8d 4b 02             	lea    0x2(%ebx),%ecx
4ec91e:	89 4c 24 10          	mov    %ecx,0x10(%esp)