466cb9:	cc                   	int3
466cba:	cc                   	int3
466cbb:	cc                   	int3
466cbc:	cc                   	int3
466cbd:	cc                   	int3
466cbe:	cc                   	int3
466cbf:	cc                   	int3
466cc0:	8b c1                	mov    %ecx,%eax
466cc2:	c3                   	ret
466cc3:	cc                   	int3
466cc4:	cc                   	int3
466cc5:	cc                   	int3
466cc6:	cc                   	int3
466cc7:	cc                   	int3
466cc8:	cc                   	int3
466cc9:	cc                   	int3
466cca:	cc                   	int3
466ccb:	cc                   	int3
466ccc:	cc                   	int3
466ccd:	cc                   	int3
466cce:	cc                   	int3
466ccf:	cc                   	int3
466cd0:	8b c1                	mov    %ecx,%eax
466cd2:	c3                   	ret
466cd3:	cc                   	int3
466cd4:	cc                   	int3
466cd5:	cc                   	int3
466cd6:	cc                   	int3
466cd7:	cc                   	int3
466cd8:	cc                   	int3
466cd9:	cc                   	int3
466cda:	cc                   	int3
466cdb:	cc                   	int3
466cdc:	cc                   	int3
466cdd:	cc                   	int3
466cde:	cc                   	int3
466cdf:	cc                   	int3
466ce0:	8b c1                	mov    %ecx,%eax
466ce2:	c3                   	ret
466ce3:	cc                   	int3
466ce4:	cc                   	int3
466ce5:	cc                   	int3
466ce6:	cc                   	int3
466ce7:	cc                   	int3
466ce8:	cc                   	int3
466ce9:	cc                   	int3
466cea:	cc                   	int3
466ceb:	cc                   	int3
466cec:	cc                   	int3
466ced:	cc                   	int3
466cee:	cc                   	int3
466cef:	cc                   	int3
466cf0:	8b 44 24 04          	mov    0x4(%esp),%eax
466cf4:	8b 4c 24 08          	mov    0x8(%esp),%ecx
466cf8:	89 08                	mov    %ecx,(%eax)
466cfa:	c3                   	ret
466cfb:	cc                   	int3
466cfc:	cc                   	int3
466cfd:	cc                   	int3
466cfe:	cc                   	int3
466cff:	cc                   	int3
466d00:	83 79 14 08          	cmpl   $0x8,0x14(%ecx)
466d04:	72 03                	jb     0x466d09
466d06:	8b 01                	mov    (%ecx),%eax
466d08:	c3                   	ret
466d09:	8b c1                	mov    %ecx,%eax
466d0b:	c3                   	ret
466d0c:	cc                   	int3
466d0d:	cc                   	int3
466d0e:	cc                   	int3
466d0f:	cc                   	int3
466d10:	8b c1                	mov    %ecx,%eax
466d12:	c3                   	ret
466d13:	cc                   	int3
466d14:	cc                   	int3
466d15:	cc                   	int3
466d16:	cc                   	int3
466d17:	cc                   	int3
466d18:	cc                   	int3
466d19:	cc                   	int3
466d1a:	cc                   	int3
466d1b:	cc                   	int3
466d1c:	cc                   	int3
466d1d:	cc                   	int3
466d1e:	cc                   	int3
466d1f:	cc                   	int3
466d20:	8b c1                	mov    %ecx,%eax
466d22:	c3                   	ret
466d23:	cc                   	int3
466d24:	cc                   	int3
466d25:	cc                   	int3
466d26:	cc                   	int3
466d27:	cc                   	int3
466d28:	cc                   	int3
466d29:	cc                   	int3
466d2a:	cc                   	int3
466d2b:	cc                   	int3
466d2c:	cc                   	int3
466d2d:	cc                   	int3
466d2e:	cc                   	int3
466d2f:	cc                   	int3
466d30:	8b c1                	mov    %ecx,%eax
466d32:	c3                   	ret
466d33:	cc                   	int3
466d34:	cc                   	int3
466d35:	cc                   	int3
466d36:	cc                   	int3
466d37:	cc                   	int3
466d38:	cc                   	int3
466d39:	cc                   	int3
466d3a:	cc                   	int3
466d3b:	cc                   	int3
466d3c:	cc                   	int3
466d3d:	cc                   	int3
466d3e:	cc                   	int3
466d3f:	cc                   	int3
466d40:	8d 41 14             	lea    0x14(%ecx),%eax
466d43:	c3                   	ret
466d44:	cc                   	int3
466d45:	cc                   	int3
466d46:	cc                   	int3
466d47:	cc                   	int3
466d48:	cc                   	int3
466d49:	cc                   	int3
466d4a:	cc                   	int3
466d4b:	cc                   	int3
466d4c:	cc                   	int3
466d4d:	cc                   	int3
466d4e:	cc                   	int3
466d4f:	cc                   	int3
466d50:	56                   	push   %esi
466d51:	8b f1                	mov    %ecx,%esi
466d53:	57                   	push   %edi
466d54:	8b 7e 04             	mov    0x4(%esi),%edi
466d57:	85 ff                	test   %edi,%edi
466d59:	74 35                	je     0x466d90
466d5b:	53                   	push   %ebx
466d5c:	83 cb ff             	or     $0xffffffff,%ebx
466d5f:	8b c3                	mov    %ebx,%eax
466d61:	f0 0f c1 47 04       	lock xadd %eax,0x4(%edi)
466d66:	75 15                	jne    0x466d7d
466d68:	8b 07                	mov    (%edi),%eax
466d6a:	8b cf                	mov    %edi,%ecx
466d6c:	ff 10                	call   *(%eax)
466d6e:	f0 0f c1 5f 08       	lock xadd %ebx,0x8(%edi)
466d73:	4b                   	dec    %ebx
466d74:	75 07                	jne    0x466d7d
466d76:	8b 07                	mov    (%edi),%eax
466d78:	8b cf                	mov    %edi,%ecx
466d7a:	ff 50 04             	call   *0x4(%eax)
466d7d:	8b 44 24 14          	mov    0x14(%esp),%eax
466d81:	5b                   	pop    %ebx
466d82:	89 46 04             	mov    %eax,0x4(%esi)
466d85:	8b 44 24 0c          	mov    0xc(%esp),%eax
466d89:	5f                   	pop    %edi
466d8a:	89 06                	mov    %eax,(%esi)
466d8c:	5e                   	pop    %esi
466d8d:	c2 08 00             	ret    $0x8
466d90:	8b 44 24 10          	mov    0x10(%esp),%eax
466d94:	89 46 04             	mov    %eax,0x4(%esi)
466d97:	8b 44 24 0c          	mov    0xc(%esp),%eax
466d9b:	5f                   	pop    %edi
466d9c:	89 06                	mov    %eax,(%esi)
466d9e:	5e                   	pop    %esi
466d9f:	c2 08 00             	ret    $0x8
466da2:	cc                   	int3
466da3:	cc                   	int3
466da4:	cc                   	int3
466da5:	cc                   	int3
466da6:	cc                   	int3
466da7:	cc                   	int3
466da8:	cc                   	int3
466da9:	cc                   	int3
466daa:	cc                   	int3
466dab:	cc                   	int3
466dac:	cc                   	int3
466dad:	cc                   	int3
466dae:	cc                   	int3
466daf:	cc                   	int3
466db0:	cc                   	int3
466db1:	cc                   	int3
466db2:	cc                   	int3
466db3:	cc                   	int3
466db4:	cc                   	int3
466db5:	cc                   	int3
466db6:	cc                   	int3
466db7:	cc                   	int3
466db8:	cc                   	int3
466db9:	cc                   	int3
466dba:	cc                   	int3
466dbb:	cc                   	int3
466dbc:	cc                   	int3
466dbd:	cc                   	int3
466dbe:	cc                   	int3
466dbf:	cc                   	int3
466dc0:	56                   	push   %esi
466dc1:	8b 74 24 08          	mov    0x8(%esp),%esi
466dc5:	57                   	push   %edi
466dc6:	8b f9                	mov    %ecx,%edi
466dc8:	8b 46 04             	mov    0x4(%esi),%eax
466dcb:	8b 57 04             	mov    0x4(%edi),%edx
466dce:	89 47 04             	mov    %eax,0x4(%edi)
466dd1:	89 56 04             	mov    %edx,0x4(%esi)
466dd4:	8b 0f                	mov    (%edi),%ecx
466dd6:	8b 06                	mov    (%esi),%eax
466dd8:	89 07                	mov    %eax,(%edi)
466dda:	5f                   	pop    %edi
466ddb:	89 0e                	mov    %ecx,(%esi)
466ddd:	5e                   	pop    %esi
466dde:	c2 04 00             	ret    $0x4
466de1:	cc                   	int3
466de2:	cc                   	int3
466de3:	cc                   	int3
466de4:	cc                   	int3
466de5:	cc                   	int3
466de6:	cc                   	int3
466de7:	cc                   	int3
466de8:	cc                   	int3
466de9:	cc                   	int3
466dea:	cc                   	int3
466deb:	cc                   	int3
466dec:	cc                   	int3
466ded:	cc                   	int3
466dee:	cc                   	int3
466def:	cc                   	int3
466df0:	80 7c 24 04 00       	cmpb   $0x0,0x4(%esp)
466df5:	56                   	push   %esi
466df6:	57                   	push   %edi
466df7:	8b 7c 24 10          	mov    0x10(%esp),%edi
466dfb:	8b f1                	mov    %ecx,%esi
466dfd:	74 29                	je     0x466e28
466dff:	83 7e 14 08          	cmpl   $0x8,0x14(%esi)
466e03:	72 23                	jb     0x466e28
466e05:	53                   	push   %ebx
466e06:	8b 1e                	mov    (%esi),%ebx
466e08:	85 ff                	test   %edi,%edi
466e0a:	74 0e                	je     0x466e1a
466e0c:	8d 04 3f             	lea    (%edi,%edi,1),%eax
466e0f:	50                   	push   %eax
466e10:	53                   	push   %ebx
466e11:	56                   	push   %esi
466e12:	e8 6b d8 fa ff       	call   0x414682
466e17:	83 c4 0c             	add    $0xc,%esp
466e1a:	8b 46 14             	mov    0x14(%esi),%eax
466e1d:	8b ce                	mov    %esi,%ecx
466e1f:	40                   	inc    %eax
466e20:	50                   	push   %eax
466e21:	53                   	push   %ebx
466e22:	e8 20 ae fb ff       	call   0x421c47
466e27:	5b                   	pop    %ebx
466e28:	c7 46 14 07 00 00 00 	movl   $0x7,0x14(%esi)
466e2f:	83 7e 14 08          	cmpl   $0x8,0x14(%esi)
466e33:	89 7e 10             	mov    %edi,0x10(%esi)
466e36:	72 0d                	jb     0x466e45
466e38:	8b 06                	mov    (%esi),%eax
466e3a:	33 c9                	xor    %ecx,%ecx
466e3c:	66 89 0c 78          	mov    %cx,(%eax,%edi,2)
466e40:	5f                   	pop    %edi
466e41:	5e                   	pop    %esi
466e42:	c2 08 00             	ret    $0x8
466e45:	33 c0                	xor    %eax,%eax
466e47:	66 89 04 7e          	mov    %ax,(%esi,%edi,2)
466e4b:	5f                   	pop    %edi
466e4c:	5e                   	pop    %esi
466e4d:	c2 08 00             	ret    $0x8
466e50:	cc                   	int3
466e51:	cc                   	int3
466e52:	cc                   	int3
466e53:	cc                   	int3
466e54:	cc                   	int3
466e55:	cc                   	int3
466e56:	cc                   	int3
466e57:	cc                   	int3
466e58:	cc                   	int3
466e59:	cc                   	int3
466e5a:	cc                   	int3
466e5b:	cc                   	int3
466e5c:	cc                   	int3
466e5d:	cc                   	int3
466e5e:	cc                   	int3
466e5f:	cc                   	int3
466e60:	cc                   	int3
466e61:	cc                   	int3
466e62:	cc                   	int3
466e63:	cc                   	int3
466e64:	cc                   	int3
466e65:	cc                   	int3
466e66:	cc                   	int3
466e67:	cc                   	int3
466e68:	cc                   	int3
466e69:	cc                   	int3
466e6a:	cc                   	int3
466e6b:	cc                   	int3
466e6c:	cc                   	int3
466e6d:	cc                   	int3
466e6e:	cc                   	int3
466e6f:	cc                   	int3
466e70:	6a ff                	push   $0xffffffff
466e72:	6a 00                	push   $0x0
466e74:	ff 74 24 0c          	push   0xc(%esp)
466e78:	e8 e5 31 fd ff       	call   0x43a062
466e7d:	c2 04 00             	ret    $0x4
466e80:	cc                   	int3
466e81:	cc                   	int3
466e82:	cc                   	int3
466e83:	cc                   	int3
466e84:	cc                   	int3
466e85:	cc                   	int3
466e86:	cc                   	int3
466e87:	cc                   	int3
466e88:	cc                   	int3
466e89:	cc                   	int3
466e8a:	cc                   	int3
466e8b:	cc                   	int3
466e8c:	cc                   	int3
466e8d:	cc                   	int3
466e8e:	cc                   	int3
466e8f:	cc                   	int3
466e90:	8b 54 24 08          	mov    0x8(%esp),%edx
466e94:	53                   	push   %ebx
466e95:	8b 5c 24 08          	mov    0x8(%esp),%ebx
466e99:	56                   	push   %esi
466e9a:	8b f1                	mov    %ecx,%esi
466e9c:	8b 43 10             	mov    0x10(%ebx),%eax
466e9f:	3b c2                	cmp    %edx,%eax
466ea1:	0f 82 bf 00 00 00    	jb     0x466f66
466ea7:	8b 4e 10             	mov    0x10(%esi),%ecx
466eaa:	2b c2                	sub    %edx,%eax
466eac:	55                   	push   %ebp
466ead:	8b 6c 24 18          	mov    0x18(%esp),%ebp
466eb1:	3b e8                	cmp    %eax,%ebp
466eb3:	0f 47 e8             	cmova  %eax,%ebp
466eb6:	8b c1                	mov    %ecx,%eax
466eb8:	f7 d0                	not    %eax
466eba:	3b c5                	cmp    %ebp,%eax
466ebc:	0f 86 ae 00 00 00    	jbe    0x466f70
466ec2:	57                   	push   %edi
466ec3:	8d 3c 29             	lea    (%ecx,%ebp,1),%edi
466ec6:	85 ed                	test   %ebp,%ebp
466ec8:	0f 84 8f 00 00 00    	je     0x466f5d
466ece:	83 ff fe             	cmp    $0xfffffffe,%edi
466ed1:	0f 87 a3 00 00 00    	ja     0x466f7a
466ed7:	39 7e 14             	cmp    %edi,0x14(%esi)
466eda:	73 23                	jae    0x466eff
466edc:	51                   	push   %ecx
466edd:	57                   	push   %edi
466ede:	8b ce                	mov    %esi,%ecx
466ee0:	e8 15 21 fd ff       	call   0x438ffa
466ee5:	8b 54 24 18          	mov    0x18(%esp),%edx
466ee9:	85 ff                	test   %edi,%edi