413bc0:	0f 85 50 7a 01 00    	jne    0x42b616
413bc6:	83 c7 08             	add    $0x8,%edi
413bc9:	80 7f 18 00          	cmpb   $0x0,0x18(%edi)
413bcd:	74 0f                	je     0x413bde
413bcf:	8b cf                	mov    %edi,%ecx
413bd1:	e8 ca 7f ff ff       	call   0x40bba0
413bd6:	84 c0                	test   %al,%al
413bd8:	0f 84 0e 7a 01 00    	je     0x42b5ec
413bde:	83 cb ff             	or     $0xffffffff,%ebx
413be1:	f0 0f c1 5e 04       	lock xadd %ebx,0x4(%esi)
413be6:	4b                   	dec    %ebx
413be7:	74 31                	je     0x413c1a
413be9:	8b 76 14             	mov    0x14(%esi),%esi
413bec:	85 f6                	test   %esi,%esi
413bee:	74 21                	je     0x413c11
413bf0:	8b 06                	mov    (%esi),%eax
413bf2:	8b 78 1c             	mov    0x1c(%eax),%edi
413bf5:	81 ff 90 3c 41 00    	cmp    $0x413c90,%edi
413bfb:	0f 85 35 7a 01 00    	jne    0x42b636
413c01:	83 c6 08             	add    $0x8,%esi
413c04:	80 7e 18 00          	cmpb   $0x0,0x18(%esi)
413c08:	74 07                	je     0x413c11
413c0a:	56                   	push   %esi
413c0b:	ff 15 40 11 45 00    	call   *0x451140
413c11:	5f                   	pop    %edi
413c12:	5e                   	pop    %esi
413c13:	8b c3                	mov    %ebx,%eax
413c15:	5b                   	pop    %ebx
413c16:	5d                   	pop    %ebp
413c17:	c2 04 00             	ret    $0x4
413c1a:	8b 06                	mov    (%esi),%eax
413c1c:	8b 78 10             	mov    0x10(%eax),%edi
413c1f:	8b cf                	mov    %edi,%ecx
413c21:	ff 15 c4 12 45 00    	call   *0x4512c4
413c27:	8b ce                	mov    %esi,%ecx
413c29:	ff d7                	call   *%edi
413c2b:	83 7e 10 00          	cmpl   $0x0,0x10(%esi)
413c2f:	74 04                	je     0x413c35
413c31:	f0 ff 4e 08          	lock decl 0x8(%esi)
413c35:	8b 0e                	mov    (%esi),%ecx
413c37:	56                   	push   %esi
413c38:	8b 79 1c             	mov    0x1c(%ecx),%edi
413c3b:	81 ff b0 3c 41 00    	cmp    $0x413cb0,%edi
413c41:	0f 85 e0 79 01 00    	jne    0x42b627
413c47:	e8 64 00 00 00       	call   0x413cb0
413c4c:	5f                   	pop    %edi
413c4d:	5e                   	pop    %esi
413c4e:	8b c3                	mov    %ebx,%eax
413c50:	5b                   	pop    %ebx
413c51:	5d                   	pop    %ebp
413c52:	c2 04 00             	ret    $0x4
413c55:	cc                   	int3
413c56:	cc                   	int3
413c57:	cc                   	int3
413c58:	cc                   	int3
413c59:	cc                   	int3
413c5a:	cc                   	int3
413c5b:	cc                   	int3
413c5c:	cc                   	int3
413c5d:	cc                   	int3
413c5e:	cc                   	int3
413c5f:	cc                   	int3
413c60:	80 79 20 00          	cmpb   $0x0,0x20(%ecx)
413c64:	56                   	push   %esi
413c65:	8d 71 08             	lea    0x8(%ecx),%esi
413c68:	74 13                	je     0x413c7d
413c6a:	8b ce                	mov    %esi,%ecx
413c6c:	e8 2f 7f ff ff       	call   0x40bba0
413c71:	84 c0                	test   %al,%al
413c73:	0f 84 ce 79 01 00    	je     0x42b647
413c79:	33 c0                	xor    %eax,%eax
413c7b:	5e                   	pop    %esi
413c7c:	c3                   	ret
413c7d:	b8 00 00 00 80       	mov    $0x80000000,%eax
413c82:	5e                   	pop    %esi
413c83:	c3                   	ret
413c84:	cc                   	int3
413c85:	cc                   	int3
413c86:	cc                   	int3
413c87:	cc                   	int3
413c88:	cc                   	int3
413c89:	cc                   	int3
413c8a:	cc                   	int3
413c8b:	cc                   	int3
413c8c:	cc                   	int3
413c8d:	cc                   	int3
413c8e:	cc                   	int3
413c8f:	cc                   	int3
413c90:	80 79 20 00          	cmpb   $0x0,0x20(%ecx)
413c94:	8d 41 08             	lea    0x8(%ecx),%eax
413c97:	74 07                	je     0x413ca0
413c99:	50                   	push   %eax
413c9a:	ff 15 40 11 45 00    	call   *0x451140
413ca0:	33 c0                	xor    %eax,%eax
413ca2:	c3                   	ret
413ca3:	cc                   	int3
413ca4:	cc                   	int3
413ca5:	cc                   	int3
413ca6:	cc                   	int3
413ca7:	cc                   	int3
413ca8:	cc                   	int3
413ca9:	cc                   	int3
413caa:	cc                   	int3
413cab:	cc                   	int3
413cac:	cc                   	int3
413cad:	cc                   	int3
413cae:	cc                   	int3
413caf:	cc                   	int3
413cb0:	8b ff                	mov    %edi,%edi
413cb2:	55                   	push   %ebp
413cb3:	8b ec                	mov    %esp,%ebp
413cb5:	83 ec 18             	sub    $0x18,%esp
413cb8:	53                   	push   %ebx
413cb9:	56                   	push   %esi
413cba:	8b 75 08             	mov    0x8(%ebp),%esi
413cbd:	57                   	push   %edi
413cbe:	83 cf ff             	or     $0xffffffff,%edi
413cc1:	f0 0f c1 7e 08       	lock xadd %edi,0x8(%esi)
413cc6:	4f                   	dec    %edi
413cc7:	8b 5e 14             	mov    0x14(%esi),%ebx
413cca:	89 7d f4             	mov    %edi,-0xc(%ebp)
413ccd:	0f 85 33 7a 01 00    	jne    0x42b706
413cd3:	8b 46 1c             	mov    0x1c(%esi),%eax
413cd6:	89 45 e8             	mov    %eax,-0x18(%ebp)
413cd9:	c7 46 1c ac b1 ba ba 	movl   $0xbabab1ac,0x1c(%esi)
413ce0:	85 db                	test   %ebx,%ebx
413ce2:	0f 84 b6 00 00 00    	je     0x413d9e
413ce8:	8b 03                	mov    (%ebx),%eax
413cea:	8d 4e 18             	lea    0x18(%esi),%ecx
413ced:	8b 78 2c             	mov    0x2c(%eax),%edi
413cf0:	81 ff a0 c2 40 00    	cmp    $0x40c2a0,%edi
413cf6:	0f 85 c3 79 01 00    	jne    0x42b6bf
413cfc:	8b 78 18             	mov    0x18(%eax),%edi
413cff:	81 ff 60 3c 41 00    	cmp    $0x413c60,%edi
413d05:	0f 85 92 79 01 00    	jne    0x42b69d
413d0b:	80 7b 20 00          	cmpb   $0x0,0x20(%ebx)
413d0f:	74 13                	je     0x413d24
413d11:	8d 4b 08             	lea    0x8(%ebx),%ecx
413d14:	e8 87 7e ff ff       	call   0x40bba0
413d19:	84 c0                	test   %al,%al
413d1b:	0f 84 50 79 01 00    	je     0x42b671
413d21:	8d 4e 18             	lea    0x18(%esi),%ecx
413d24:	8b 7b 24             	mov    0x24(%ebx),%edi
413d27:	85 ff                	test   %edi,%edi
413d29:	74 2e                	je     0x413d59
413d2b:	8b 09                	mov    (%ecx),%ecx
413d2d:	8d 49 00             	lea    0x0(%ecx),%ecx
413d30:	3b 0f                	cmp    (%edi),%ecx
413d32:	0f 85 c3 00 00 00    	jne    0x413dfb
413d38:	8b 47 0c             	mov    0xc(%edi),%eax
413d3b:	8d 4b 24             	lea    0x24(%ebx),%ecx
413d3e:	89 45 f0             	mov    %eax,-0x10(%ebp)
413d41:	89 45 f8             	mov    %eax,-0x8(%ebp)
413d44:	85 c0                	test   %eax,%eax
413d46:	0f 85 c1 00 00 00    	jne    0x413e0d
413d4c:	ff 4b 28             	decl   0x28(%ebx)
413d4f:	8d 45 ff             	lea    -0x1(%ebp),%eax
413d52:	50                   	push   %eax
413d53:	57                   	push   %edi
413d54:	e8 67 86 ff ff       	call   0x40c3c0
413d59:	8b 03                	mov    (%ebx),%eax
413d5b:	8b 78 1c             	mov    0x1c(%eax),%edi
413d5e:	81 ff 90 3c 41 00    	cmp    $0x413c90,%edi
413d64:	0f 85 44 79 01 00    	jne    0x42b6ae
413d6a:	83 c3 08             	add    $0x8,%ebx
413d6d:	80 7b 18 00          	cmpb   $0x0,0x18(%ebx)
413d71:	74 07                	je     0x413d7a
413d73:	53                   	push   %ebx
413d74:	ff 15 40 11 45 00    	call   *0x451140
413d7a:	8b 7e 14             	mov    0x14(%esi),%edi
413d7d:	8b 07                	mov    (%edi),%eax
413d7f:	8b 58 1c             	mov    0x1c(%eax),%ebx
413d82:	81 fb 90 3c 41 00    	cmp    $0x413c90,%ebx
413d88:	0f 85 43 79 01 00    	jne    0x42b6d1
413d8e:	80 7f 20 00          	cmpb   $0x0,0x20(%edi)
413d92:	8d 47 08             	lea    0x8(%edi),%eax
413d95:	74 07                	je     0x413d9e
413d97:	50                   	push   %eax
413d98:	ff 15 40 11 45 00    	call   *0x451140
413d9e:	83 7d e8 01          	cmpl   $0x1,-0x18(%ebp)
413da2:	75 18                	jne    0x413dbc
413da4:	8b 06                	mov    (%esi),%eax
413da6:	8b 78 14             	mov    0x14(%eax),%edi
413da9:	81 ff a0 3e 41 00    	cmp    $0x413ea0,%edi
413daf:	0f 85 2d 79 01 00    	jne    0x42b6e2
413db5:	8b ce                	mov    %esi,%ecx
413db7:	e8 e4 00 00 00       	call   0x413ea0
413dbc:	8b 06                	mov    (%esi),%eax
413dbe:	8b 78 28             	mov    0x28(%eax),%edi
413dc1:	81 ff a0 cc 40 00    	cmp    $0x40cca0,%edi
413dc7:	0f 85 26 79 01 00    	jne    0x42b6f3
413dcd:	83 c8 ff             	or     $0xffffffff,%eax
413dd0:	f0 0f c1 46 0c       	lock xadd %eax,0xc(%esi)
413dd5:	48                   	dec    %eax
413dd6:	0f 85 22 79 01 00    	jne    0x42b6fe
413ddc:	8b 16                	mov    (%esi),%edx
413dde:	6a 01                	push   $0x1
413de0:	8b 7a 0c             	mov    0xc(%edx),%edi
413de3:	8b cf                	mov    %edi,%ecx
413de5:	ff 15 c4 12 45 00    	call   *0x4512c4
413deb:	8b ce                	mov    %esi,%ecx
413ded:	ff d7                	call   *%edi
413def:	8b 45 f4             	mov    -0xc(%ebp),%eax
413df2:	5f                   	pop    %edi
413df3:	5e                   	pop    %esi
413df4:	5b                   	pop    %ebx
413df5:	8b e5                	mov    %ebp,%esp
413df7:	5d                   	pop    %ebp
413df8:	c2 04 00             	ret    $0x4
413dfb:	73 7e                	jae    0x413e7b
413dfd:	8b 7f 04             	mov    0x4(%edi),%edi
413e00:	85 ff                	test   %edi,%edi
413e02:	0f 85 28 ff ff ff    	jne    0x413d30
413e08:	e9 4c ff ff ff       	jmp    0x413d59
413e0d:	8b 40 04             	mov    0x4(%eax),%eax
413e10:	89 45 ec             	mov    %eax,-0x14(%ebp)
413e13:	8d 45 ff             	lea    -0x1(%ebp),%eax
413e16:	50                   	push   %eax
413e17:	57                   	push   %edi
413e18:	e8 a3 85 ff ff       	call   0x40c3c0
413e1d:	ff 4b 28             	decl   0x28(%ebx)
413e20:	8d 4b 24             	lea    0x24(%ebx),%ecx
413e23:	80 7d ff 00          	cmpb   $0x0,-0x1(%ebp)
413e27:	0f 84 2c ff ff ff    	je     0x413d59
413e2d:	39 7d ec             	cmp    %edi,-0x14(%ebp)
413e30:	8b 45 f0             	mov    -0x10(%ebp),%eax
413e33:	8b d0                	mov    %eax,%edx
413e35:	0f 94 45 fe          	sete   -0x2(%ebp)
413e39:	8d a4 24 00 00 00 00 	lea    0x0(%esp),%esp
413e40:	85 d2                	test   %edx,%edx
413e42:	0f 84 11 ff ff ff    	je     0x413d59
413e48:	80 7d fe 00          	cmpb   $0x0,-0x2(%ebp)
413e4c:	8d 55 ff             	lea    -0x1(%ebp),%edx
413e4f:	52                   	push   %edx
413e50:	74 2e                	je     0x413e80
413e52:	ff 70 08             	push   0x8(%eax)
413e55:	8d 45 f8             	lea    -0x8(%ebp),%eax
413e58:	50                   	push   %eax
413e59:	e8 e2 23 00 00       	call   0x416240
413e5e:	8b 4d f8             	mov    -0x8(%ebp),%ecx
413e61:	8b 41 0c             	mov    0xc(%ecx),%eax
413e64:	8b d0                	mov    %eax,%edx
413e66:	89 45 f8             	mov    %eax,-0x8(%ebp)
413e69:	85 d2                	test   %edx,%edx
413e6b:	75 21                	jne    0x413e8e
413e6d:	80 7d ff 00          	cmpb   $0x0,-0x1(%ebp)
413e71:	8d 4b 24             	lea    0x24(%ebx),%ecx
413e74:	75 ca                	jne    0x413e40
413e76:	e9 de fe ff ff       	jmp    0x413d59
413e7b:	8b 7f 08             	mov    0x8(%edi),%edi
413e7e:	eb 80                	jmp    0x413e00
413e80:	ff 70 04             	push   0x4(%eax)
413e83:	8d 45 f8             	lea    -0x8(%ebp),%eax
413e86:	50                   	push   %eax
413e87:	e8 64 97 00 00       	call   0x41d5f0
413e8c:	eb d0                	jmp    0x413e5e
413e8e:	39 48 04             	cmp    %ecx,0x4(%eax)
413e91:	0f 94 45 fe          	sete   -0x2(%ebp)
413e95:	eb d6                	jmp    0x413e6d
413e97:	cc                   	int3
413e98:	cc                   	int3
413e99:	cc                   	int3
413e9a:	cc                   	int3
413e9b:	cc                   	int3
413e9c:	cc                   	int3
413e9d:	cc                   	int3
413e9e:	cc                   	int3
413e9f:	cc                   	int3
413ea0:	8b ff                	mov    %edi,%edi
413ea2:	55                   	push   %ebp
413ea3:	8b ec                	mov    %esp,%ebp
413ea5:	51                   	push   %ecx
413ea6:	56                   	push   %esi
413ea7:	8b f1                	mov    %ecx,%esi
413ea9:	33 d2                	xor    %edx,%edx
413eab:	57                   	push   %edi
413eac:	33 c0                	xor    %eax,%eax
413eae:	8d 4e 24             	lea    0x24(%esi),%ecx
413eb1:	f0 0f b1 11          	lock cmpxchg %edx,(%ecx)
413eb5:	85 c0                	test   %eax,%eax
413eb7:	0f 84 65 78 01 00    	je     0x42b722
413ebd:	8b 4e 2c             	mov    0x2c(%esi),%ecx
413ec0:	85 c9                	test   %ecx,%ecx
413ec2:	74 10                	je     0x413ed4
413ec4:	8b 01                	mov    (%ecx),%eax
413ec6:	51                   	push   %ecx
413ec7:	8b 78 08             	mov    0x8(%eax),%edi
413eca:	8b cf                	mov    %edi,%ecx
413ecc:	ff 15 c4 12 45 00    	call   *0x4512c4
413ed2:	ff d7                	call   *%edi
413ed4:	8b 4e 30             	mov    0x30(%esi),%ecx
413ed7:	85 c9                	test   %ecx,%ecx
413ed9:	0f 85 66 78 01 00    	jne    0x42b745
413edf:	8b 4e 4c             	mov    0x4c(%esi),%ecx
413ee2:	85 c9                	test   %ecx,%ecx
413ee4:	74 79                	je     0x413f5f
413ee6:	8b 01                	mov    (%ecx),%eax
413ee8:	8b 70 08             	mov    0x8(%eax),%esi
413eeb:	81 fe 20 41 41 00    	cmp    $0x414120,%esi
413ef1:	0f 85 af 78 01 00    	jne    0x42b7a6
413ef7:	8b 71 6c             	mov    0x6c(%ecx),%esi
413efa:	8d 79 58             	lea    0x58(%ecx),%edi
413efd:	85 f6                	test   %esi,%esi
413eff:	74 2b                	je     0x413f2c
413f01:	8b 06                	mov    (%esi),%eax
413f03:	53                   	push   %ebx
413f04:	8b 58 18             	mov    0x18(%eax),%ebx
413f07:	81 fb e0 41 41 00    	cmp    $0x4141e0,%ebx
413f0d:	0f 85 71 78 01 00    	jne    0x42b784
413f13:	83 c6 08             	add    $0x8,%esi
413f16:	80 7e 18 00          	cmpb   $0x0,0x18(%esi)
413f1a:	74 0f                	je     0x413f2b
413f1c:	8b ce                	mov    %esi,%ecx
413f1e:	e8 7d 7c ff ff       	call   0x40bba0
413f23:	84 c0                	test   %al,%al
413f25:	0f 84 2f 78 01 00    	je     0x42b75a
413f2b:	5b                   	pop    %ebx
413f2c:	83 c8 ff             	or     $0xffffffff,%eax
413f2f:	f0 0f c1 47 04       	lock xadd %eax,0x4(%edi)
413f34:	48                   	dec    %eax
413f35:	74 2e                	je     0x413f65
413f37:	8b 77 14             	mov    0x14(%edi),%esi
413f3a:	85 f6                	test   %esi,%esi
413f3c:	74 21                	je     0x413f5f
413f3e:	8b 06                	mov    (%esi),%eax
413f40:	8b 78 1c             	mov    0x1c(%eax),%edi
413f43:	81 ff 10 42 41 00    	cmp    $0x414210,%edi
413f49:	0f 85 46 78 01 00    	jne    0x42b795
413f4f:	83 c6 08             	add    $0x8,%esi
413f52:	80 7e 18 00          	cmpb   $0x0,0x18(%esi)
413f56:	74 07                	je     0x413f5f
413f58:	56                   	push   %esi
413f59:	ff 15 40 11 45 00    	call   *0x451140
413f5f:	5f                   	pop    %edi
413f60:	5e                   	pop    %esi
413f61:	8b e5                	mov    %ebp,%esp
413f63:	5d                   	pop    %ebp
413f64:	c3                   	ret
413f65:	8b 07                	mov    (%edi),%eax
413f67:	8b 70 10             	mov    0x10(%eax),%esi
413f6a:	8b ce                	mov    %esi,%ecx
413f6c:	ff 15 c4 12 45 00    	call   *0x4512c4
413f72:	8b cf                	mov    %edi,%ecx
413f74:	ff d6                	call   *%esi
413f76:	83 7f 10 00          	cmpl   $0x0,0x10(%edi)
413f7a:	74 04                	je     0x413f80
413f7c:	f0 ff 4f 08          	lock decl 0x8(%edi)
413f80:	8b 07                	mov    (%edi),%eax
413f82:	57                   	push   %edi
413f83:	8b 70 1c             	mov    0x1c(%eax),%esi