4659ab:	cc                   	int3
4659ac:	cc                   	int3
4659ad:	cc                   	int3
4659ae:	cc                   	int3
4659af:	cc                   	int3
4659b0:	55                   	push   %ebp
4659b1:	8b ec                	mov    %esp,%ebp
4659b3:	6a ff                	push   $0xffffffff
4659b5:	68 5d ce 49 00       	push   $0x49ce5d
4659ba:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
4659c0:	50                   	push   %eax
4659c1:	83 ec 1c             	sub    $0x1c,%esp
4659c4:	53                   	push   %ebx
4659c5:	56                   	push   %esi
4659c6:	57                   	push   %edi
4659c7:	a1 14 40 4c 00       	mov    0x4c4014,%eax
4659cc:	33 c5                	xor    %ebp,%eax
4659ce:	50                   	push   %eax
4659cf:	8d 45 f4             	lea    -0xc(%ebp),%eax
4659d2:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
4659d8:	c7 45 f0 00 00 00 00 	movl   $0x0,-0x10(%ebp)
4659df:	64 a1 2c 00 00 00    	mov    %fs:0x2c,%eax
4659e5:	8b 08                	mov    (%eax),%ecx
4659e7:	a1 1c 9f 4c 00       	mov    0x4c9f1c,%eax
4659ec:	3b 81 04 00 00 00    	cmp    0x4(%ecx),%eax
4659f2:	7e 3a                	jle    0x465a2e
4659f4:	68 1c 9f 4c 00       	push   $0x4c9f1c
4659f9:	e8 ec 43 00 00       	call   0x469dea
4659fe:	83 c4 04             	add    $0x4,%esp
465a01:	83 3d 1c 9f 4c 00 ff 	cmpl   $0xffffffff,0x4c9f1c
465a08:	75 24                	jne    0x465a2e
465a0a:	68 90 d5 49 00       	push   $0x49d590
465a0f:	c7 05 20 9f 4c 00 00 	movl   $0x0,0x4c9f20
465a16:	00 00 00
465a19:	e8 61 42 00 00       	call   0x469c7f
465a1e:	83 c4 04             	add    $0x4,%esp
465a21:	68 1c 9f 4c 00       	push   $0x4c9f1c
465a26:	e8 75 43 00 00       	call   0x469da0
465a2b:	83 c4 04             	add    $0x4,%esp
465a2e:	a1 20 9f 4c 00       	mov    0x4c9f20,%eax
465a33:	85 c0                	test   %eax,%eax
465a35:	0f 85 b7 00 00 00    	jne    0x465af2
465a3b:	6a 14                	push   $0x14
465a3d:	e8 96 3f 00 00       	call   0x4699d8
465a42:	8b d8                	mov    %eax,%ebx
465a44:	83 c4 04             	add    $0x4,%esp
465a47:	89 5d ec             	mov    %ebx,-0x14(%ebp)
465a4a:	8d 4d dc             	lea    -0x24(%ebp),%ecx
465a4d:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
465a54:	e8 37 87 fe ff       	call   0x44e190
465a59:	51                   	push   %ecx
465a5a:	6a 02                	push   $0x2
465a5c:	c7 45 d8 dc 6b 4b 00 	movl   $0x4b6bdc,-0x28(%ebp)
465a63:	c7 45 e0 02 00 00 00 	movl   $0x2,-0x20(%ebp)
465a6a:	e8 11 dd fe ff       	call   0x453780
465a6f:	8b f0                	mov    %eax,%esi
465a71:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
465a78:	89 75 e4             	mov    %esi,-0x1c(%ebp)
465a7b:	c7 06 cf 7f 00 00    	movl   $0x7fcf,(%esi)
465a81:	c7 46 04 00 00 00 00 	movl   $0x0,0x4(%esi)
465a88:	8d 45 d8             	lea    -0x28(%ebp),%eax
465a8b:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
465a8f:	50                   	push   %eax
465a90:	53                   	push   %ebx
465a91:	8b c8                	mov    %eax,%ecx
465a93:	c7 45 f0 01 00 00 00 	movl   $0x1,-0x10(%ebp)
465a9a:	e8 11 b2 fe ff       	call   0x450cb0
465a9f:	33 c0                	xor    %eax,%eax
465aa1:	c7 45 f0 02 00 00 00 	movl   $0x2,-0x10(%ebp)
465aa8:	8b fe                	mov    %esi,%edi
465aaa:	b9 02 00 00 00       	mov    $0x2,%ecx
465aaf:	f3 ab                	rep stos %eax,%es:(%edi)
465ab1:	56                   	push   %esi
465ab2:	e8 cb 3b 01 00       	call   0x479682
465ab7:	8b 3d 20 9f 4c 00    	mov    0x4c9f20,%edi
465abd:	83 c4 04             	add    $0x4,%esp
465ac0:	85 ff                	test   %edi,%edi
465ac2:	74 26                	je     0x465aea
465ac4:	8b 0b                	mov    (%ebx),%ecx
465ac6:	6a 01                	push   $0x1
465ac8:	8b 31                	mov    (%ecx),%esi
465aca:	8b ce                	mov    %esi,%ecx
465acc:	ff 15 d4 e2 49 00    	call   *0x49e2d4
465ad2:	8b cb                	mov    %ebx,%ecx
465ad4:	ff d6                	call   *%esi
465ad6:	8b c7                	mov    %edi,%eax
465ad8:	8b 4d f4             	mov    -0xc(%ebp),%ecx
465adb:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
465ae2:	59                   	pop    %ecx
465ae3:	5f                   	pop    %edi
465ae4:	5e                   	pop    %esi
465ae5:	5b                   	pop    %ebx
465ae6:	8b e5                	mov    %ebp,%esp
465ae8:	5d                   	pop    %ebp
465ae9:	c3                   	ret
465aea:	89 1d 20 9f 4c 00    	mov    %ebx,0x4c9f20
465af0:	8b c3                	mov    %ebx,%eax
465af2:	8b 4d f4             	mov    -0xc(%ebp),%ecx
465af5:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
465afc:	59                   	pop    %ecx
465afd:	5f                   	pop    %edi
465afe:	5e                   	pop    %esi
465aff:	5b                   	pop    %ebx
465b00:	8b e5                	mov    %ebp,%esp
465b02:	5d                   	pop    %ebp
465b03:	c3                   	ret
465b04:	cc                   	int3
465b05:	cc                   	int3
465b06:	cc                   	int3
465b07:	cc                   	int3
465b08:	cc                   	int3
465b09:	cc                   	int3
465b0a:	cc                   	int3
465b0b:	cc                   	int3
465b0c:	cc                   	int3
465b0d:	cc                   	int3
465b0e:	cc                   	int3
465b0f:	cc                   	int3
465b10:	83 ec 0c             	sub    $0xc,%esp
465b13:	53                   	push   %ebx
465b14:	8b 5c 24 14          	mov    0x14(%esp),%ebx
465b18:	55                   	push   %ebp
465b19:	8b 6c 24 20          	mov    0x20(%esp),%ebp
465b1d:	88 54 24 0b          	mov    %dl,0xb(%esp)
465b21:	56                   	push   %esi
465b22:	8b f1                	mov    %ecx,%esi
465b24:	57                   	push   %edi
465b25:	8b 7c 24 24          	mov    0x24(%esp),%edi
465b29:	3b dd                	cmp    %ebp,%ebx
465b2b:	75 15                	jne    0x465b42
465b2d:	3b 7c 24 2c          	cmp    0x2c(%esp),%edi
465b31:	75 0f                	jne    0x465b42
465b33:	89 1e                	mov    %ebx,(%esi)
465b35:	8b c6                	mov    %esi,%eax
465b37:	89 7e 04             	mov    %edi,0x4(%esi)
465b3a:	5f                   	pop    %edi
465b3b:	5e                   	pop    %esi
465b3c:	5d                   	pop    %ebp
465b3d:	5b                   	pop    %ebx
465b3e:	83 c4 0c             	add    $0xc,%esp
465b41:	c3                   	ret
465b42:	83 c8 ff             	or     $0xffffffff,%eax
465b45:	8b cf                	mov    %edi,%ecx
465b47:	8b d0                	mov    %eax,%edx
465b49:	d3 e2                	shl    %cl,%edx
465b4b:	89 54 24 18          	mov    %edx,0x18(%esp)
465b4f:	3b dd                	cmp    %ebp,%ebx
465b51:	0f 85 ad 00 00 00    	jne    0x465c04
465b57:	8b 13                	mov    (%ebx),%edx
465b59:	b9 20 00 00 00       	mov    $0x20,%ecx
465b5e:	2b 4c 24 2c          	sub    0x2c(%esp),%ecx
465b62:	d3 e8                	shr    %cl,%eax
465b64:	80 7c 24 13 00       	cmpb   $0x0,0x13(%esp)
465b69:	89 44 24 14          	mov    %eax,0x14(%esp)
465b6d:	8b c2                	mov    %edx,%eax
465b6f:	f7 d0                	not    %eax
465b71:	0f 44 d0             	cmove  %eax,%edx
465b74:	8b 44 24 14          	mov    0x14(%esp),%eax
465b78:	23 c2                	and    %edx,%eax
465b7a:	23 44 24 18          	and    0x18(%esp),%eax
465b7e:	83 3d fc 82 4c 00 05 	cmpl   $0x5,0x4c82fc
465b85:	7c 06                	jl     0x465b8d
465b87:	f3 0f bc c8          	tzcnt  %eax,%ecx
465b8b:	eb 0b                	jmp    0x465b98
465b8d:	0f bc c8             	bsf    %eax,%ecx
465b90:	b8 20 00 00 00       	mov    $0x20,%eax
465b95:	0f 44 c8             	cmove  %eax,%ecx
465b98:	83 f9 20             	cmp    $0x20,%ecx
465b9b:	75 13                	jne    0x465bb0
465b9d:	8b 44 24 2c          	mov    0x2c(%esp),%eax
465ba1:	89 2e                	mov    %ebp,(%esi)
465ba3:	89 46 04             	mov    %eax,0x4(%esi)
465ba6:	8b c6                	mov    %esi,%eax
465ba8:	5f                   	pop    %edi
465ba9:	5e                   	pop    %esi
465baa:	5d                   	pop    %ebp
465bab:	5b                   	pop    %ebx
465bac:	83 c4 0c             	add    $0xc,%esp
465baf:	c3                   	ret
465bb0:	2b cf                	sub    %edi,%ecx
465bb2:	79 30                	jns    0x465be4
465bb4:	8b c1                	mov    %ecx,%eax
465bb6:	f7 d8                	neg    %eax
465bb8:	3b f8                	cmp    %eax,%edi
465bba:	73 28                	jae    0x465be4
465bbc:	03 cf                	add    %edi,%ecx
465bbe:	8b c1                	mov    %ecx,%eax
465bc0:	f7 d0                	not    %eax
465bc2:	c1 e8 05             	shr    $0x5,%eax
465bc5:	8d 04 85 04 00 00 00 	lea    0x4(,%eax,4),%eax
465bcc:	2b d8                	sub    %eax,%ebx
465bce:	83 e1 1f             	and    $0x1f,%ecx
465bd1:	8b eb                	mov    %ebx,%ebp
465bd3:	8b c1                	mov    %ecx,%eax
465bd5:	89 2e                	mov    %ebp,(%esi)
465bd7:	89 46 04             	mov    %eax,0x4(%esi)
465bda:	8b c6                	mov    %esi,%eax
465bdc:	5f                   	pop    %edi
465bdd:	5e                   	pop    %esi
465bde:	5d                   	pop    %ebp
465bdf:	5b                   	pop    %ebx
465be0:	83 c4 0c             	add    $0xc,%esp
465be3:	c3                   	ret
465be4:	03 cf                	add    %edi,%ecx
465be6:	8b c1                	mov    %ecx,%eax
465be8:	c1 e8 05             	shr    $0x5,%eax
465beb:	83 e1 1f             	and    $0x1f,%ecx
465bee:	8d 1c 83             	lea    (%ebx,%eax,4),%ebx
465bf1:	8b c1                	mov    %ecx,%eax
465bf3:	8b eb                	mov    %ebx,%ebp
465bf5:	89 2e                	mov    %ebp,(%esi)
465bf7:	89 46 04             	mov    %eax,0x4(%esi)
465bfa:	8b c6                	mov    %esi,%eax
465bfc:	5f                   	pop    %edi
465bfd:	5e                   	pop    %esi
465bfe:	5d                   	pop    %ebp
465bff:	5b                   	pop    %ebx
465c00:	83 c4 0c             	add    $0xc,%esp
465c03:	c3                   	ret
465c04:	8b 0b                	mov    (%ebx),%ecx
465c06:	8b c1                	mov    %ecx,%eax
465c08:	80 7c 24 13 00       	cmpb   $0x0,0x13(%esp)
465c0d:	f7 d0                	not    %eax
465c0f:	0f 44 c8             	cmove  %eax,%ecx
465c12:	b8 20 00 00 00       	mov    $0x20,%eax
465c17:	23 ca                	and    %edx,%ecx
465c19:	83 3d fc 82 4c 00 05 	cmpl   $0x5,0x4c82fc
465c20:	7c 06                	jl     0x465c28
465c22:	f3 0f bc c9          	tzcnt  %ecx,%ecx
465c26:	eb 06                	jmp    0x465c2e
465c28:	0f bc c9             	bsf    %ecx,%ecx
465c2b:	0f 44 c8             	cmove  %eax,%ecx
465c2e:	3b c8                	cmp    %eax,%ecx
465c30:	74 62                	je     0x465c94
465c32:	2b cf                	sub    %edi,%ecx
465c34:	89 7e 04             	mov    %edi,0x4(%esi)
465c37:	89 1e                	mov    %ebx,(%esi)
465c39:	79 35                	jns    0x465c70
465c3b:	8b c1                	mov    %ecx,%eax
465c3d:	f7 d8                	neg    %eax
465c3f:	3b f8                	cmp    %eax,%edi
465c41:	73 2d                	jae    0x465c70
465c43:	8d 14 0f             	lea    (%edi,%ecx,1),%edx
465c46:	b8 fc ff ff ff       	mov    $0xfffffffc,%eax
465c4b:	8b ca                	mov    %edx,%ecx
465c4d:	89 56 04             	mov    %edx,0x4(%esi)
465c50:	f7 d1                	not    %ecx
465c52:	c1 e9 05             	shr    $0x5,%ecx
465c55:	c1 e1 02             	shl    $0x2,%ecx
465c58:	2b c1                	sub    %ecx,%eax
465c5a:	01 06                	add    %eax,(%esi)
465c5c:	b8 1f 00 00 00       	mov    $0x1f,%eax
465c61:	23 c2                	and    %edx,%eax
465c63:	89 46 04             	mov    %eax,0x4(%esi)
465c66:	8b c6                	mov    %esi,%eax
465c68:	5f                   	pop    %edi
465c69:	5e                   	pop    %esi
465c6a:	5d                   	pop    %ebp
465c6b:	5b                   	pop    %ebx
465c6c:	83 c4 0c             	add    $0xc,%esp
465c6f:	c3                   	ret
465c70:	8d 14 0f             	lea    (%edi,%ecx,1),%edx
465c73:	8b c2                	mov    %edx,%eax
465c75:	89 56 04             	mov    %edx,0x4(%esi)
465c78:	c1 e8 05             	shr    $0x5,%eax
465c7b:	c1 e0 02             	shl    $0x2,%eax
465c7e:	01 06                	add    %eax,(%esi)
465c80:	b8 1f 00 00 00       	mov    $0x1f,%eax
465c85:	23 c2                	and    %edx,%eax
465c87:	89 46 04             	mov    %eax,0x4(%esi)
465c8a:	8b c6                	mov    %esi,%eax
465c8c:	5f                   	pop    %edi
465c8d:	5e                   	pop    %esi
465c8e:	5d                   	pop    %ebp
465c8f:	5b                   	pop    %ebx
465c90:	83 c4 0c             	add    $0xc,%esp
465c93:	c3                   	ret
465c94:	8b e8                	mov    %eax,%ebp
465c96:	8d 53 04             	lea    0x4(%ebx),%edx
465c99:	2b ef                	sub    %edi,%ebp
465c9b:	3b 54 24 28          	cmp    0x28(%esp),%edx
465c9f:	74 39                	je     0x465cda
465ca1:	8b 0a                	mov    (%edx),%ecx
465ca3:	8b c1                	mov    %ecx,%eax
465ca5:	80 7c 24 13 00       	cmpb   $0x0,0x13(%esp)
465caa:	f7 d0                	not    %eax
465cac:	0f 44 c8             	cmove  %eax,%ecx
465caf:	83 3d fc 82 4c 00 05 	cmpl   $0x5,0x4c82fc
465cb6:	7c 06                	jl     0x465cbe
465cb8:	f3 0f bc c1          	tzcnt  %ecx,%eax
465cbc:	eb 0b                	jmp    0x465cc9
465cbe:	0f bc c1             	bsf    %ecx,%eax
465cc1:	b9 20 00 00 00       	mov    $0x20,%ecx
465cc6:	0f 44 c1             	cmove  %ecx,%eax
465cc9:	83 f8 20             	cmp    $0x20,%eax
465ccc:	75 4b                	jne    0x465d19
465cce:	83 c2 04             	add    $0x4,%edx
465cd1:	83 c5 20             	add    $0x20,%ebp
465cd4:	3b 54 24 28          	cmp    0x28(%esp),%edx
465cd8:	75 c7                	jne    0x465ca1
465cda:	8b 44 24 2c          	mov    0x2c(%esp),%eax
465cde:	85 c0                	test   %eax,%eax
465ce0:	0f 84 aa 00 00 00    	je     0x465d90
465ce6:	8b 12                	mov    (%edx),%edx
465ce8:	b9 20 00 00 00       	mov    $0x20,%ecx
465ced:	2b c8                	sub    %eax,%ecx
465cef:	83 c8 ff             	or     $0xffffffff,%eax
465cf2:	d3 e8                	shr    %cl,%eax
465cf4:	80 7c 24 13 00       	cmpb   $0x0,0x13(%esp)
465cf9:	89 44 24 14          	mov    %eax,0x14(%esp)
465cfd:	8b c2                	mov    %edx,%eax
465cff:	f7 d0                	not    %eax
465d01:	0f 44 d0             	cmove  %eax,%edx
465d04:	8b 44 24 14          	mov    0x14(%esp),%eax
465d08:	23 c2                	and    %edx,%eax
465d0a:	83 3d fc 82 4c 00 05 	cmpl   $0x5,0x4c82fc
465d11:	7c 10                	jl     0x465d23
465d13:	f3 0f bc c0          	tzcnt  %eax,%eax
465d17:	eb 15                	jmp    0x465d2e
465d19:	8d 0c 28             	lea    (%eax,%ebp,1),%ecx
465d1c:	85 c9                	test   %ecx,%ecx
465d1e:	e9 11 ff ff ff       	jmp    0x465c34
465d23:	0f bc c0             	bsf    %eax,%eax
465d26:	b9 20 00 00 00       	mov    $0x20,%ecx
465d2b:	0f 44 c1             	cmove  %ecx,%eax
465d2e:	83 f8 20             	cmp    $0x20,%eax
465d31:	74 5d                	je     0x465d90
465d33:	8d 0c 28             	lea    (%eax,%ebp,1),%ecx
465d36:	89 1e                	mov    %ebx,(%esi)
465d38:	89 7e 04             	mov    %edi,0x4(%esi)
465d3b:	85 c9                	test   %ecx,%ecx
465d3d:	79 31                	jns    0x465d70
465d3f:	8b c1                	mov    %ecx,%eax
465d41:	f7 d8                	neg    %eax
465d43:	3b f8                	cmp    %eax,%edi
465d45:	73 29                	jae    0x465d70
465d47:	8d 14 0f             	lea    (%edi,%ecx,1),%edx
465d4a:	b8 fc ff ff ff       	mov    $0xfffffffc,%eax
465d4f:	8b ca                	mov    %edx,%ecx
465d51:	89 56 04             	mov    %edx,0x4(%esi)
465d54:	f7 d1                	not    %ecx
465d56:	c1 e9 05             	shr    $0x5,%ecx
465d59:	c1 e1 02             	shl    $0x2,%ecx
465d5c:	2b c1                	sub    %ecx,%eax
465d5e:	01 06                	add    %eax,(%esi)
465d60:	83 e2 1f             	and    $0x1f,%edx
465d63:	89 56 04             	mov    %edx,0x4(%esi)
465d66:	8b c6                	mov    %esi,%eax
465d68:	5f                   	pop    %edi
465d69:	5e                   	pop    %esi