4f8872:	8b f9                	mov    %ecx,%edi
4f8874:	eb ae                	jmp    0x4f8824
4f8876:	8b 40 0c             	mov    0xc(%eax),%eax
4f8879:	56                   	push   %esi
4f887a:	ff d0                	call   *%eax
4f887c:	0f b7 46 14          	movzwl 0x14(%esi),%eax
4f8880:	50                   	push   %eax
4f8881:	ff 76 0c             	push   0xc(%esi)
4f8884:	56                   	push   %esi
4f8885:	e8 e6 f9 ff ff       	call   0x4f8270
4f888a:	83 c4 10             	add    $0x10,%esp
4f888d:	8b 46 64             	mov    0x64(%esi),%eax
4f8890:	85 c0                	test   %eax,%eax
4f8892:	75 1b                	jne    0x4f88af
4f8894:	6a 1c                	push   $0x1c
4f8896:	68 94 95 62 00       	push   $0x629594
4f889b:	56                   	push   %esi
4f889c:	e8 4f f6 ff ff       	call   0x4f7ef0
4f88a1:	8b 46 64             	mov    0x64(%esi),%eax
4f88a4:	33 db                	xor    %ebx,%ebx
4f88a6:	83 c4 0c             	add    $0xc,%esp
4f88a9:	83 f8 01             	cmp    $0x1,%eax
4f88ac:	0f 94 c3             	sete   %bl
4f88af:	83 f8 01             	cmp    $0x1,%eax
4f88b2:	0f 85 0b 01 00 00    	jne    0x4f89c3
4f88b8:	85 ff                	test   %edi,%edi
4f88ba:	74 17                	je     0x4f88d3
4f88bc:	8b 86 f8 00 00 00    	mov    0xf8(%esi),%eax
4f88c2:	6a 00                	push   $0x0
4f88c4:	6a 00                	push   $0x0
4f88c6:	55                   	push   %ebp
4f88c7:	8b 40 04             	mov    0x4(%eax),%eax
4f88ca:	57                   	push   %edi
4f88cb:	56                   	push   %esi
4f88cc:	ff d0                	call   *%eax
4f88ce:	e9 ed 00 00 00       	jmp    0x4f89c0
4f88d3:	85 db                	test   %ebx,%ebx
4f88d5:	0f 85 e8 00 00 00    	jne    0x4f89c3
4f88db:	8b 86 fc 00 00 00    	mov    0xfc(%esi),%eax
4f88e1:	33 c9                	xor    %ecx,%ecx
4f88e3:	33 ff                	xor    %edi,%edi
4f88e5:	89 4c 24 14          	mov    %ecx,0x14(%esp)
4f88e9:	c7 46 64 02 00 00 00 	movl   $0x2,0x64(%esi)
4f88f0:	85 c0                	test   %eax,%eax
4f88f2:	74 1b                	je     0x4f890f
4f88f4:	57                   	push   %edi
4f88f5:	ff 76 2c             	push   0x2c(%esi)
4f88f8:	8d 4c 24 1c          	lea    0x1c(%esp),%ecx
4f88fc:	ff 76 28             	push   0x28(%esi)
4f88ff:	ff 76 20             	push   0x20(%esi)
4f8902:	51                   	push   %ecx
4f8903:	56                   	push   %esi
4f8904:	ff d0                	call   *%eax
4f8906:	8b 4c 24 2c          	mov    0x2c(%esp),%ecx
4f890a:	83 c4 18             	add    $0x18,%esp
4f890d:	8b f8                	mov    %eax,%edi
4f890f:	3b 7e 28             	cmp    0x28(%esi),%edi
4f8912:	72 5f                	jb     0x4f8973
4f8914:	3b 7e 2c             	cmp    0x2c(%esi),%edi
4f8917:	77 5a                	ja     0x4f8973
4f8919:	8b 86 f8 00 00 00    	mov    0xf8(%esi),%eax
4f891f:	6a 00                	push   $0x0
4f8921:	6a 00                	push   $0x0
4f8923:	57                   	push   %edi
4f8924:	8b 40 04             	mov    0x4(%eax),%eax
4f8927:	51                   	push   %ecx
4f8928:	56                   	push   %esi
4f8929:	ff d0                	call   *%eax
4f892b:	83 c4 14             	add    $0x14,%esp
4f892e:	85 c0                	test   %eax,%eax
4f8930:	74 59                	je     0x4f898b
4f8932:	6a 00                	push   $0x0
4f8934:	c7 46 64 01 00 00 00 	movl   $0x1,0x64(%esi)
4f893b:	c7 46 40 01 00 00 00 	movl   $0x1,0x40(%esi)
4f8942:	e8 2a dd 0d 00       	call   0x5d6671
4f8947:	83 c4 04             	add    $0x4,%esp
4f894a:	89 46 48             	mov    %eax,0x48(%esi)
4f894d:	83 7e 58 00          	cmpl   $0x0,0x58(%esi)
4f8951:	89 56 4c             	mov    %edx,0x4c(%esi)
4f8954:	74 35                	je     0x4f898b
4f8956:	8b 46 04             	mov    0x4(%esi),%eax
4f8959:	85 c0                	test   %eax,%eax
4f895b:	75 0e                	jne    0x4f896b
4f895d:	b9 01 00 00 00       	mov    $0x1,%ecx
4f8962:	8d 46 5c             	lea    0x5c(%esi),%eax
4f8965:	f0 0f c1 08          	lock xadd %ecx,(%eax)
4f8969:	eb 20                	jmp    0x4f898b
4f896b:	8b 40 5c             	mov    0x5c(%eax),%eax
4f896e:	89 46 5c             	mov    %eax,0x5c(%esi)
4f8971:	eb 18                	jmp    0x4f898b
4f8973:	68 b5 01 00 00       	push   $0x1b5
4f8978:	68 b8 95 62 00       	push   $0x6295b8
4f897d:	6a 6e                	push   $0x6e
4f897f:	6a 6e                	push   $0x6e
4f8981:	6a 24                	push   $0x24
4f8983:	e8 f8 05 fe ff       	call   0x4d8f80
4f8988:	83 c4 14             	add    $0x14,%esp
4f898b:	8b 44 24 14          	mov    0x14(%esp),%eax
4f898f:	85 c0                	test   %eax,%eax
4f8991:	74 12                	je     0x4f89a5
4f8993:	8b 8e 00 01 00 00    	mov    0x100(%esi),%ecx
4f8999:	85 c9                	test   %ecx,%ecx
4f899b:	74 08                	je     0x4f89a5
4f899d:	57                   	push   %edi
4f899e:	50                   	push   %eax
4f899f:	56                   	push   %esi
4f89a0:	ff d1                	call   *%ecx
4f89a2:	83 c4 0c             	add    $0xc,%esp
4f89a5:	83 7e 64 01          	cmpl   $0x1,0x64(%esi)
4f89a9:	74 18                	je     0x4f89c3
4f89ab:	68 2b 02 00 00       	push   $0x22b
4f89b0:	68 b8 95 62 00       	push   $0x6295b8
4f89b5:	6a 76                	push   $0x76
4f89b7:	6a 66                	push   $0x66
4f89b9:	6a 24                	push   $0x24
4f89bb:	e8 c0 05 fe ff       	call   0x4d8f80
4f89c0:	83 c4 14             	add    $0x14,%esp
4f89c3:	ff 76 18             	push   0x18(%esi)
4f89c6:	e8 85 92 fe ff       	call   0x4e1c50
4f89cb:	83 c4 04             	add    $0x4,%esp
4f89ce:	c7 46 18 00 00 00 00 	movl   $0x0,0x18(%esi)
4f89d5:	33 c0                	xor    %eax,%eax
4f89d7:	83 7e 64 01          	cmpl   $0x1,0x64(%esi)
4f89db:	0f 94 c0             	sete   %al
4f89de:	5f                   	pop    %edi
4f89df:	5e                   	pop    %esi
4f89e0:	5d                   	pop    %ebp
4f89e1:	5b                   	pop    %ebx
4f89e2:	c3                   	ret
4f89e3:	cc                   	int3
4f89e4:	cc                   	int3
4f89e5:	cc                   	int3
4f89e6:	cc                   	int3
4f89e7:	cc                   	int3
4f89e8:	cc                   	int3
4f89e9:	cc                   	int3
4f89ea:	cc                   	int3
4f89eb:	cc                   	int3
4f89ec:	cc                   	int3
4f89ed:	cc                   	int3
4f89ee:	cc                   	int3
4f89ef:	cc                   	int3
4f89f0:	8b 44 24 04          	mov    0x4(%esp),%eax
4f89f4:	8b 00                	mov    (%eax),%eax
4f89f6:	85 c0                	test   %eax,%eax
4f89f8:	74 09                	je     0x4f8a03
4f89fa:	89 44 24 04          	mov    %eax,0x4(%esp)
4f89fe:	e9 3d 96 fe ff       	jmp    0x4e2040
4f8a03:	b8 01 00 00 00       	mov    $0x1,%eax
4f8a08:	c3                   	ret
4f8a09:	cc                   	int3
4f8a0a:	cc                   	int3
4f8a0b:	cc                   	int3
4f8a0c:	cc                   	int3
4f8a0d:	cc                   	int3
4f8a0e:	cc                   	int3
4f8a0f:	cc                   	int3
4f8a10:	56                   	push   %esi
4f8a11:	8b 74 24 08          	mov    0x8(%esp),%esi
4f8a15:	85 f6                	test   %esi,%esi
4f8a17:	75 04                	jne    0x4f8a1d
4f8a19:	33 c0                	xor    %eax,%eax
4f8a1b:	5e                   	pop    %esi
4f8a1c:	c3                   	ret
4f8a1d:	8b 06                	mov    (%esi),%eax
4f8a1f:	85 c0                	test   %eax,%eax
4f8a21:	0f 84 b0 00 00 00    	je     0x4f8ad7
4f8a27:	83 78 2c 00          	cmpl   $0x0,0x2c(%eax)
4f8a2b:	0f 84 a6 00 00 00    	je     0x4f8ad7
4f8a31:	83 7c 24 0c 0e       	cmpl   $0xe,0xc(%esp)
4f8a36:	0f 85 9b 00 00 00    	jne    0x4f8ad7
4f8a3c:	8b 46 04             	mov    0x4(%esi),%eax
4f8a3f:	57                   	push   %edi
4f8a40:	8d 7e 08             	lea    0x8(%esi),%edi
4f8a43:	85 c0                	test   %eax,%eax
4f8a45:	75 04                	jne    0x4f8a4b
4f8a47:	39 07                	cmp    %eax,(%edi)
4f8a49:	74 36                	je     0x4f8a81
4f8a4b:	8b 0f                	mov    (%edi),%ecx
4f8a4d:	85 c9                	test   %ecx,%ecx
4f8a4f:	74 19                	je     0x4f8a6a
4f8a51:	6a 00                	push   $0x0
4f8a53:	6a 01                	push   $0x1
4f8a55:	6a 00                	push   $0x0
4f8a57:	6a 0e                	push   $0xe
4f8a59:	6a 00                	push   $0x0
4f8a5b:	8d 44 24 28          	lea    0x28(%esp),%eax
4f8a5f:	50                   	push   %eax
4f8a60:	6a 06                	push   $0x6
4f8a62:	56                   	push   %esi
4f8a63:	ff d1                	call   *%ecx
4f8a65:	83 c4 20             	add    $0x20,%esp
4f8a68:	eb 13                	jmp    0x4f8a7d
4f8a6a:	6a 01                	push   $0x1
4f8a6c:	6a 00                	push   $0x0
4f8a6e:	6a 0e                	push   $0xe
4f8a70:	8d 4c 24 20          	lea    0x20(%esp),%ecx
4f8a74:	51                   	push   %ecx
4f8a75:	6a 06                	push   $0x6
4f8a77:	56                   	push   %esi
4f8a78:	ff d0                	call   *%eax
4f8a7a:	83 c4 18             	add    $0x18,%esp
4f8a7d:	85 c0                	test   %eax,%eax
4f8a7f:	7e 3b                	jle    0x4f8abc
4f8a81:	ff 74 24 14          	push   0x14(%esp)
4f8a85:	8b 06                	mov    (%esi),%eax
4f8a87:	6a 0e                	push   $0xe
4f8a89:	56                   	push   %esi
4f8a8a:	8b 40 2c             	mov    0x2c(%eax),%eax
4f8a8d:	ff d0                	call   *%eax
4f8a8f:	8b 56 04             	mov    0x4(%esi),%edx
4f8a92:	83 c4 0c             	add    $0xc,%esp
4f8a95:	85 d2                	test   %edx,%edx
4f8a97:	75 04                	jne    0x4f8a9d
4f8a99:	39 17                	cmp    %edx,(%edi)
4f8a9b:	74 1f                	je     0x4f8abc
4f8a9d:	8b 0f                	mov    (%edi),%ecx
4f8a9f:	85 c9                	test   %ecx,%ecx
4f8aa1:	74 1c                	je     0x4f8abf
4f8aa3:	6a 00                	push   $0x0
4f8aa5:	50                   	push   %eax
4f8aa6:	6a 00                	push   $0x0
4f8aa8:	6a 0e                	push   $0xe
4f8aaa:	6a 00                	push   $0x0
4f8aac:	8d 44 24 28          	lea    0x28(%esp),%eax
4f8ab0:	50                   	push   %eax
4f8ab1:	68 86 00 00 00       	push   $0x86
4f8ab6:	56                   	push   %esi
4f8ab7:	ff d1                	call   *%ecx
4f8ab9:	83 c4 20             	add    $0x20,%esp
4f8abc:	5f                   	pop    %edi
4f8abd:	5e                   	pop    %esi
4f8abe:	c3                   	ret
4f8abf:	50                   	push   %eax
4f8ac0:	6a 00                	push   $0x0
4f8ac2:	6a 0e                	push   $0xe
4f8ac4:	8d 44 24 20          	lea    0x20(%esp),%eax
4f8ac8:	50                   	push   %eax
4f8ac9:	68 86 00 00 00       	push   $0x86
4f8ace:	56                   	push   %esi
4f8acf:	ff d2                	call   *%edx
4f8ad1:	83 c4 18             	add    $0x18,%esp
4f8ad4:	5f                   	pop    %edi
4f8ad5:	5e                   	pop    %esi
4f8ad6:	c3                   	ret
4f8ad7:	68 22 02 00 00       	push   $0x222
4f8adc:	68 d8 95 62 00       	push   $0x6295d8
4f8ae1:	6a 79                	push   $0x79
4f8ae3:	68 83 00 00 00       	push   $0x83
4f8ae8:	6a 20                	push   $0x20
4f8aea:	e8 91 04 fe ff       	call   0x4d8f80
4f8aef:	83 c4 14             	add    $0x14,%esp
4f8af2:	b8 fe ff ff ff       	mov    $0xfffffffe,%eax
4f8af7:	5e                   	pop    %esi
4f8af8:	c3                   	ret
4f8af9:	cc                   	int3
4f8afa:	cc                   	int3
4f8afb:	cc                   	int3
4f8afc:	cc                   	int3
4f8afd:	cc                   	int3
4f8afe:	cc                   	int3
4f8aff:	cc                   	int3
4f8b00:	8b 4c 24 04          	mov    0x4(%esp),%ecx
4f8b04:	8b 44 24 08          	mov    0x8(%esp),%eax
4f8b08:	f7 d0                	not    %eax
4f8b0a:	21 41 18             	and    %eax,0x18(%ecx)
4f8b0d:	c3                   	ret
4f8b0e:	cc                   	int3
4f8b0f:	cc                   	int3
4f8b10:	8b 54 24 04          	mov    0x4(%esp),%edx
4f8b14:	8b 4a 28             	mov    0x28(%edx),%ecx
4f8b17:	8b 41 18             	mov    0x18(%ecx),%eax
4f8b1a:	83 e0 0f             	and    $0xf,%eax
4f8b1d:	09 42 18             	or     %eax,0x18(%edx)
4f8b20:	8b 41 1c             	mov    0x1c(%ecx),%eax
4f8b23:	89 42 1c             	mov    %eax,0x1c(%edx)
4f8b26:	c3                   	ret
4f8b27:	cc                   	int3
4f8b28:	cc                   	int3
4f8b29:	cc                   	int3
4f8b2a:	cc                   	int3
4f8b2b:	cc                   	int3
4f8b2c:	cc                   	int3
4f8b2d:	cc                   	int3
4f8b2e:	cc                   	int3
4f8b2f:	cc                   	int3
4f8b30:	56                   	push   %esi
4f8b31:	8b 74 24 08          	mov    0x8(%esp),%esi
4f8b35:	85 f6                	test   %esi,%esi
4f8b37:	75 04                	jne    0x4f8b3d
4f8b39:	33 c0                	xor    %eax,%eax
4f8b3b:	5e                   	pop    %esi
4f8b3c:	c3                   	ret
4f8b3d:	8b 06                	mov    (%esi),%eax
4f8b3f:	85 c0                	test   %eax,%eax
4f8b41:	0f 84 a6 00 00 00    	je     0x4f8bed
4f8b47:	83 78 20 00          	cmpl   $0x0,0x20(%eax)
4f8b4b:	0f 84 9c 00 00 00    	je     0x4f8bed
4f8b51:	8b 56 04             	mov    0x4(%esi),%edx
4f8b54:	8b 44 24 0c          	mov    0xc(%esp),%eax
4f8b58:	53                   	push   %ebx
4f8b59:	8b 5c 24 18          	mov    0x18(%esp),%ebx
4f8b5d:	55                   	push   %ebp
4f8b5e:	8b 6c 24 18          	mov    0x18(%esp),%ebp
4f8b62:	57                   	push   %edi
4f8b63:	8d 7e 08             	lea    0x8(%esi),%edi
4f8b66:	85 d2                	test   %edx,%edx
4f8b68:	75 05                	jne    0x4f8b6f
4f8b6a:	83 3f 00             	cmpl   $0x0,(%edi)
4f8b6d:	74 2a                	je     0x4f8b99
4f8b6f:	8b 0f                	mov    (%edi),%ecx
4f8b71:	85 c9                	test   %ecx,%ecx
4f8b73:	74 13                	je     0x4f8b88
4f8b75:	6a 00                	push   $0x0
4f8b77:	6a 01                	push   $0x1
4f8b79:	55                   	push   %ebp
4f8b7a:	50                   	push   %eax
4f8b7b:	6a 00                	push   $0x0
4f8b7d:	53                   	push   %ebx
4f8b7e:	6a 06                	push   $0x6
4f8b80:	56                   	push   %esi
4f8b81:	ff d1                	call   *%ecx
4f8b83:	83 c4 20             	add    $0x20,%esp
4f8b86:	eb 0d                	jmp    0x4f8b95
4f8b88:	6a 01                	push   $0x1
4f8b8a:	55                   	push   %ebp
4f8b8b:	50                   	push   %eax
4f8b8c:	53                   	push   %ebx
4f8b8d:	6a 06                	push   $0x6
4f8b8f:	56                   	push   %esi
4f8b90:	ff d2                	call   *%edx
4f8b92:	83 c4 18             	add    $0x18,%esp
4f8b95:	85 c0                	test   %eax,%eax
4f8b97:	7e 38                	jle    0x4f8bd1
4f8b99:	8b 06                	mov    (%esi),%eax
4f8b9b:	53                   	push   %ebx
4f8b9c:	55                   	push   %ebp
4f8b9d:	ff 74 24 20          	push   0x20(%esp)
4f8ba1:	8b 40 20             	mov    0x20(%eax),%eax
4f8ba4:	56                   	push   %esi
4f8ba5:	ff d0                	call   *%eax
4f8ba7:	8b 56 04             	mov    0x4(%esi),%edx
4f8baa:	83 c4 10             	add    $0x10,%esp
4f8bad:	85 d2                	test   %edx,%edx
4f8baf:	75 04                	jne    0x4f8bb5
4f8bb1:	39 17                	cmp    %edx,(%edi)
4f8bb3:	74 1c                	je     0x4f8bd1
4f8bb5:	8b 0f                	mov    (%edi),%ecx
4f8bb7:	85 c9                	test   %ecx,%ecx
4f8bb9:	74 1b                	je     0x4f8bd6