476a68:	8b 45 14             	mov    0x14(%ebp),%eax
476a6b:	ff 05 08 b4 4b 00    	incl   0x4bb408
476a71:	83 c0 0c             	add    $0xc,%eax
476a74:	8b 4d f4             	mov    -0xc(%ebp),%ecx
476a77:	f0 09 08             	lock or %ecx,(%eax)
476a7a:	8b 45 14             	mov    0x14(%ebp),%eax
476a7d:	33 c9                	xor    %ecx,%ecx
476a7f:	89 48 08             	mov    %ecx,0x8(%eax)
476a82:	8b 45 14             	mov    0x14(%ebp),%eax
476a85:	89 48 1c             	mov    %ecx,0x1c(%eax)
476a88:	8b 45 14             	mov    0x14(%ebp),%eax
476a8b:	89 48 04             	mov    %ecx,0x4(%eax)
476a8e:	8b 45 14             	mov    0x14(%ebp),%eax
476a91:	89 08                	mov    %ecx,(%eax)
476a93:	8b 4d 14             	mov    0x14(%ebp),%ecx
476a96:	8b 45 fc             	mov    -0x4(%ebp),%eax
476a99:	89 41 10             	mov    %eax,0x10(%ecx)
476a9c:	8b 45 14             	mov    0x14(%ebp),%eax
476a9f:	8b e5                	mov    %ebp,%esp
476aa1:	5d                   	pop    %ebp
476aa2:	c3                   	ret
476aa3:	8b ff                	mov    %edi,%edi
476aa5:	55                   	push   %ebp
476aa6:	8b ec                	mov    %esp,%ebp
476aa8:	8b 45 10             	mov    0x10(%ebp),%eax
476aab:	ff 30                	push   (%eax)
476aad:	8b 45 08             	mov    0x8(%ebp),%eax
476ab0:	ff 75 0c             	push   0xc(%ebp)
476ab3:	ff 30                	push   (%eax)
476ab5:	e8 e6 ad ff ff       	call   0x4718a0
476aba:	83 c4 0c             	add    $0xc,%esp
476abd:	5d                   	pop    %ebp
476abe:	c3                   	ret
476abf:	8b ff                	mov    %edi,%edi
476ac1:	55                   	push   %ebp
476ac2:	8b ec                	mov    %esp,%ebp
476ac4:	8b 45 10             	mov    0x10(%ebp),%eax
476ac7:	ff 30                	push   (%eax)
476ac9:	8b 45 08             	mov    0x8(%ebp),%eax
476acc:	ff 75 0c             	push   0xc(%ebp)
476acf:	ff 30                	push   (%eax)
476ad1:	e8 ba 97 ff ff       	call   0x470290
476ad6:	83 c4 0c             	add    $0xc,%esp
476ad9:	5d                   	pop    %ebp
476ada:	c3                   	ret
476adb:	8b ff                	mov    %edi,%edi
476add:	55                   	push   %ebp
476ade:	8b ec                	mov    %esp,%ebp
476ae0:	8b 45 10             	mov    0x10(%ebp),%eax
476ae3:	ff 30                	push   (%eax)
476ae5:	8b 45 08             	mov    0x8(%ebp),%eax
476ae8:	ff 75 0c             	push   0xc(%ebp)
476aeb:	ff 30                	push   (%eax)
476aed:	e8 15 c8 00 00       	call   0x483307
476af2:	83 c4 0c             	add    $0xc,%esp
476af5:	5d                   	pop    %ebp
476af6:	c3                   	ret
476af7:	8b ff                	mov    %edi,%edi
476af9:	55                   	push   %ebp
476afa:	8b ec                	mov    %esp,%ebp
476afc:	8b 45 10             	mov    0x10(%ebp),%eax
476aff:	ff 30                	push   (%eax)
476b01:	8b 45 08             	mov    0x8(%ebp),%eax
476b04:	ff 75 0c             	push   0xc(%ebp)
476b07:	ff 30                	push   (%eax)
476b09:	e8 f9 c7 00 00       	call   0x483307
476b0e:	83 c4 0c             	add    $0xc,%esp
476b11:	5d                   	pop    %ebp
476b12:	c3                   	ret
476b13:	8b ff                	mov    %edi,%edi
476b15:	55                   	push   %ebp
476b16:	8b ec                	mov    %esp,%ebp
476b18:	8b 45 10             	mov    0x10(%ebp),%eax
476b1b:	ff 30                	push   (%eax)
476b1d:	8b 45 08             	mov    0x8(%ebp),%eax
476b20:	ff 75 0c             	push   0xc(%ebp)
476b23:	ff 30                	push   (%eax)
476b25:	e8 dd c7 00 00       	call   0x483307
476b2a:	83 c4 0c             	add    $0xc,%esp
476b2d:	5d                   	pop    %ebp
476b2e:	c3                   	ret
476b2f:	8b ff                	mov    %edi,%edi
476b31:	55                   	push   %ebp
476b32:	8b ec                	mov    %esp,%ebp
476b34:	8b 45 10             	mov    0x10(%ebp),%eax
476b37:	ff 30                	push   (%eax)
476b39:	8b 45 08             	mov    0x8(%ebp),%eax
476b3c:	ff 75 0c             	push   0xc(%ebp)
476b3f:	ff 30                	push   (%eax)
476b41:	e8 06 c6 00 00       	call   0x48314c
476b46:	83 c4 0c             	add    $0xc,%esp
476b49:	5d                   	pop    %ebp
476b4a:	c3                   	ret
476b4b:	8b ff                	mov    %edi,%edi
476b4d:	55                   	push   %ebp
476b4e:	8b ec                	mov    %esp,%ebp
476b50:	8b 45 10             	mov    0x10(%ebp),%eax
476b53:	ff 30                	push   (%eax)
476b55:	8b 45 08             	mov    0x8(%ebp),%eax
476b58:	ff 75 0c             	push   0xc(%ebp)
476b5b:	ff 30                	push   (%eax)
476b5d:	e8 ea c5 00 00       	call   0x48314c
476b62:	83 c4 0c             	add    $0xc,%esp
476b65:	5d                   	pop    %ebp
476b66:	c3                   	ret
476b67:	8b ff                	mov    %edi,%edi
476b69:	55                   	push   %ebp
476b6a:	8b ec                	mov    %esp,%ebp
476b6c:	8b 45 10             	mov    0x10(%ebp),%eax
476b6f:	ff 30                	push   (%eax)
476b71:	8b 45 08             	mov    0x8(%ebp),%eax
476b74:	ff 75 0c             	push   0xc(%ebp)
476b77:	ff 30                	push   (%eax)
476b79:	e8 ce c5 00 00       	call   0x48314c
476b7e:	83 c4 0c             	add    $0xc,%esp
476b81:	5d                   	pop    %ebp
476b82:	c3                   	ret
476b83:	8b ff                	mov    %edi,%edi
476b85:	55                   	push   %ebp
476b86:	8b ec                	mov    %esp,%ebp
476b88:	8b 45 18             	mov    0x18(%ebp),%eax
476b8b:	ff 30                	push   (%eax)
476b8d:	8b 45 14             	mov    0x14(%ebp),%eax
476b90:	ff 30                	push   (%eax)
476b92:	8b 45 10             	mov    0x10(%ebp),%eax
476b95:	ff 30                	push   (%eax)
476b97:	8b 45 0c             	mov    0xc(%ebp),%eax
476b9a:	ff 30                	push   (%eax)
476b9c:	8b 45 08             	mov    0x8(%ebp),%eax
476b9f:	ff 30                	push   (%eax)
476ba1:	e8 fa d2 00 00       	call   0x483ea0
476ba6:	83 c4 14             	add    $0x14,%esp
476ba9:	5d                   	pop    %ebp
476baa:	c3                   	ret
476bab:	8b ff                	mov    %edi,%edi
476bad:	55                   	push   %ebp
476bae:	8b ec                	mov    %esp,%ebp
476bb0:	8b 45 18             	mov    0x18(%ebp),%eax
476bb3:	ff 30                	push   (%eax)
476bb5:	8b 45 14             	mov    0x14(%ebp),%eax
476bb8:	ff 30                	push   (%eax)
476bba:	8b 45 10             	mov    0x10(%ebp),%eax
476bbd:	ff 30                	push   (%eax)
476bbf:	8b 45 0c             	mov    0xc(%ebp),%eax
476bc2:	ff 30                	push   (%eax)
476bc4:	8b 45 08             	mov    0x8(%ebp),%eax
476bc7:	ff 30                	push   (%eax)
476bc9:	e8 73 d6 00 00       	call   0x484241
476bce:	83 c4 14             	add    $0x14,%esp
476bd1:	5d                   	pop    %ebp
476bd2:	c3                   	ret
476bd3:	8b ff                	mov    %edi,%edi
476bd5:	55                   	push   %ebp
476bd6:	8b ec                	mov    %esp,%ebp
476bd8:	8b 4d 08             	mov    0x8(%ebp),%ecx
476bdb:	8b 01                	mov    (%ecx),%eax
476bdd:	a8 40                	test   $0x40,%al
476bdf:	74 04                	je     0x476be5
476be1:	32 c0                	xor    %al,%al
476be3:	5d                   	pop    %ebp
476be4:	c3                   	ret
476be5:	83 c8 40             	or     $0x40,%eax
476be8:	89 01                	mov    %eax,(%ecx)
476bea:	b0 01                	mov    $0x1,%al
476bec:	5d                   	pop    %ebp
476bed:	c3                   	ret
476bee:	8b ff                	mov    %edi,%edi
476bf0:	55                   	push   %ebp
476bf1:	8b ec                	mov    %esp,%ebp
476bf3:	8b 45 08             	mov    0x8(%ebp),%eax
476bf6:	81 08 80 00 00 00    	orl    $0x80,(%eax)
476bfc:	b0 01                	mov    $0x1,%al
476bfe:	5d                   	pop    %ebp
476bff:	c3                   	ret
476c00:	8b ff                	mov    %edi,%edi
476c02:	55                   	push   %ebp
476c03:	8b ec                	mov    %esp,%ebp
476c05:	8b 45 0c             	mov    0xc(%ebp),%eax
476c08:	80 38 00             	cmpb   $0x0,(%eax)
476c0b:	74 04                	je     0x476c11
476c0d:	32 c0                	xor    %al,%al
476c0f:	5d                   	pop    %ebp
476c10:	c3                   	ret
476c11:	8b 4d 08             	mov    0x8(%ebp),%ecx
476c14:	c6 00 01             	movb   $0x1,(%eax)
476c17:	b0 01                	mov    $0x1,%al
476c19:	83 09 10             	orl    $0x10,(%ecx)
476c1c:	5d                   	pop    %ebp
476c1d:	c3                   	ret
476c1e:	8b ff                	mov    %edi,%edi
476c20:	55                   	push   %ebp
476c21:	8b ec                	mov    %esp,%ebp
476c23:	8b 45 0c             	mov    0xc(%ebp),%eax
476c26:	80 38 00             	cmpb   $0x0,(%eax)
476c29:	74 04                	je     0x476c2f
476c2b:	32 c0                	xor    %al,%al
476c2d:	5d                   	pop    %ebp
476c2e:	c3                   	ret
476c2f:	8b 4d 08             	mov    0x8(%ebp),%ecx
476c32:	c6 00 01             	movb   $0x1,(%eax)
476c35:	b0 01                	mov    $0x1,%al
476c37:	83 09 20             	orl    $0x20,(%ecx)
476c3a:	5d                   	pop    %ebp
476c3b:	c3                   	ret
476c3c:	8b ff                	mov    %edi,%edi
476c3e:	55                   	push   %ebp
476c3f:	8b ec                	mov    %esp,%ebp
476c41:	8b 4d 08             	mov    0x8(%ebp),%ecx
476c44:	ba 00 10 00 00       	mov    $0x1000,%edx
476c49:	8b 01                	mov    (%ecx),%eax
476c4b:	85 c2                	test   %eax,%edx
476c4d:	74 04                	je     0x476c53
476c4f:	32 c0                	xor    %al,%al
476c51:	5d                   	pop    %ebp
476c52:	c3                   	ret
476c53:	0b c2                	or     %edx,%eax
476c55:	89 01                	mov    %eax,(%ecx)
476c57:	b0 01                	mov    $0x1,%al
476c59:	5d                   	pop    %ebp
476c5a:	c3                   	ret
476c5b:	8b ff                	mov    %edi,%edi
476c5d:	55                   	push   %ebp
476c5e:	8b ec                	mov    %esp,%ebp
476c60:	8b 4d 08             	mov    0x8(%ebp),%ecx
476c63:	8b 01                	mov    (%ecx),%eax
476c65:	a9 00 c0 00 00       	test   $0xc000,%eax
476c6a:	74 04                	je     0x476c70
476c6c:	32 c0                	xor    %al,%al
476c6e:	5d                   	pop    %ebp
476c6f:	c3                   	ret
476c70:	0d 00 80 00 00       	or     $0x8000,%eax
476c75:	89 01                	mov    %eax,(%ecx)
476c77:	b0 01                	mov    $0x1,%al
476c79:	5d                   	pop    %ebp
476c7a:	c3                   	ret
476c7b:	8b ff                	mov    %edi,%edi
476c7d:	55                   	push   %ebp
476c7e:	8b ec                	mov    %esp,%ebp
476c80:	8b 45 0c             	mov    0xc(%ebp),%eax
476c83:	80 38 00             	cmpb   $0x0,(%eax)
476c86:	74 04                	je     0x476c8c
476c88:	32 c0                	xor    %al,%al
476c8a:	5d                   	pop    %ebp
476c8b:	c3                   	ret
476c8c:	8b 4d 08             	mov    0x8(%ebp),%ecx
476c8f:	c6 00 01             	movb   $0x1,(%eax)
476c92:	b0 01                	mov    $0x1,%al
476c94:	81 49 04 00 08 00 00 	orl    $0x800,0x4(%ecx)
476c9b:	5d                   	pop    %ebp
476c9c:	c3                   	ret
476c9d:	8b ff                	mov    %edi,%edi
476c9f:	55                   	push   %ebp
476ca0:	8b ec                	mov    %esp,%ebp
476ca2:	8b 45 0c             	mov    0xc(%ebp),%eax
476ca5:	80 38 00             	cmpb   $0x0,(%eax)
476ca8:	74 04                	je     0x476cae
476caa:	32 c0                	xor    %al,%al
476cac:	5d                   	pop    %ebp
476cad:	c3                   	ret
476cae:	8b 4d 08             	mov    0x8(%ebp),%ecx
476cb1:	c6 00 01             	movb   $0x1,(%eax)
476cb4:	b0 01                	mov    $0x1,%al
476cb6:	81 61 04 ff f7 ff ff 	andl   $0xfffff7ff,0x4(%ecx)
476cbd:	5d                   	pop    %ebp
476cbe:	c3                   	ret
476cbf:	8b ff                	mov    %edi,%edi
476cc1:	55                   	push   %ebp
476cc2:	8b ec                	mov    %esp,%ebp
476cc4:	8b 45 0c             	mov    0xc(%ebp),%eax
476cc7:	80 38 00             	cmpb   $0x0,(%eax)
476cca:	74 04                	je     0x476cd0
476ccc:	32 c0                	xor    %al,%al
476cce:	5d                   	pop    %ebp
476ccf:	c3                   	ret
476cd0:	8b 55 08             	mov    0x8(%ebp),%edx
476cd3:	c6 00 01             	movb   $0x1,(%eax)
476cd6:	8b 02                	mov    (%edx),%eax
476cd8:	a8 02                	test   $0x2,%al
476cda:	75 f0                	jne    0x476ccc
476cdc:	8b 4a 04             	mov    0x4(%edx),%ecx
476cdf:	83 e0 fe             	and    $0xfffffffe,%eax
476ce2:	83 c8 02             	or     $0x2,%eax
476ce5:	83 e1 fc             	and    $0xfffffffc,%ecx
476ce8:	83 c9 04             	or     $0x4,%ecx
476ceb:	89 02                	mov    %eax,(%edx)
476ced:	89 4a 04             	mov    %ecx,0x4(%edx)
476cf0:	b0 01                	mov    $0x1,%al
476cf2:	5d                   	pop    %ebp
476cf3:	c3                   	ret
476cf4:	8b ff                	mov    %edi,%edi
476cf6:	55                   	push   %ebp
476cf7:	8b ec                	mov    %esp,%ebp
476cf9:	8b 4d 08             	mov    0x8(%ebp),%ecx
476cfc:	8b 01                	mov    (%ecx),%eax
476cfe:	a9 00 c0 00 00       	test   $0xc000,%eax
476d03:	74 04                	je     0x476d09
476d05:	32 c0                	xor    %al,%al
476d07:	5d                   	pop    %ebp
476d08:	c3                   	ret
476d09:	0d 00 40 00 00       	or     $0x4000,%eax
476d0e:	89 01                	mov    %eax,(%ecx)
476d10:	b0 01                	mov    $0x1,%al
476d12:	5d                   	pop    %ebp
476d13:	c3                   	ret
476d14:	8b ff                	mov    %edi,%edi
476d16:	55                   	push   %ebp
476d17:	8b ec                	mov    %esp,%ebp
476d19:	5d                   	pop    %ebp
476d1a:	e9 7a fc ff ff       	jmp    0x476999
476d1f:	8b ff                	mov    %edi,%edi
476d21:	55                   	push   %ebp
476d22:	8b ec                	mov    %esp,%ebp
476d24:	5d                   	pop    %ebp
476d25:	e9 f4 fc ff ff       	jmp    0x476a1e
476d2a:	8b ff                	mov    %edi,%edi
476d2c:	55                   	push   %ebp
476d2d:	8b ec                	mov    %esp,%ebp
476d2f:	56                   	push   %esi
476d30:	8b 75 08             	mov    0x8(%ebp),%esi
476d33:	83 fe e0             	cmp    $0xffffffe0,%esi
476d36:	77 30                	ja     0x476d68
476d38:	85 f6                	test   %esi,%esi
476d3a:	75 17                	jne    0x476d53
476d3c:	46                   	inc    %esi
476d3d:	eb 14                	jmp    0x476d53
476d3f:	e8 86 93 ff ff       	call   0x4700ca
476d44:	85 c0                	test   %eax,%eax
476d46:	74 20                	je     0x476d68
476d48:	56                   	push   %esi
476d49:	e8 1b 4f ff ff       	call   0x46bc69
476d4e:	59                   	pop    %ecx
476d4f:	85 c0                	test   %eax,%eax
476d51:	74 15                	je     0x476d68
476d53:	56                   	push   %esi
476d54:	6a 00                	push   $0x0
476d56:	ff 35 10 c3 4b 00    	push   0x4bc310
476d5c:	ff 15 80 40 49 00    	call   *0x494080
476d62:	85 c0                	test   %eax,%eax
476d64:	74 d9                	je     0x476d3f
476d66:	eb 0d                	jmp    0x476d75
476d68:	e8 c2 60 fd ff       	call   0x44ce2f
476d6d:	c7 00 0c 00 00 00    	movl   $0xc,(%eax)
476d73:	33 c0                	xor    %eax,%eax
476d75:	5e                   	pop    %esi
476d76:	5d                   	pop    %ebp
476d77:	c3                   	ret
476d78:	8b ff                	mov    %edi,%edi
476d7a:	55                   	push   %ebp
476d7b:	8b ec                	mov    %esp,%ebp
476d7d:	51                   	push   %ecx