ae9b28:	85 c0                	test   %eax,%eax
ae9b2a:	75 16                	jne    0xae9b42
ae9b2c:	57                   	push   %edi
ae9b2d:	8b 3e                	mov    (%esi),%edi
ae9b2f:	8b 07                	mov    (%edi),%eax
ae9b31:	8b 70 0c             	mov    0xc(%eax),%esi
ae9b34:	8b ce                	mov    %esi,%ecx
ae9b36:	e8 2a 2b 94 ff       	call   0x42c665
ae9b3b:	8b cf                	mov    %edi,%ecx
ae9b3d:	ff d6                	call   *%esi
ae9b3f:	5f                   	pop    %edi
ae9b40:	eb 07                	jmp    0xae9b49
ae9b42:	8b ce                	mov    %esi,%ecx
ae9b44:	e8 08 22 93 ff       	call   0x41bd51
ae9b49:	ff 75 10             	push   0x10(%ebp)
ae9b4c:	ff 75 08             	push   0x8(%ebp)
ae9b4f:	e8 52 0a 92 ff       	call   0x40a5a6
ae9b54:	59                   	pop    %ecx
ae9b55:	59                   	pop    %ecx
ae9b56:	5e                   	pop    %esi
ae9b57:	5d                   	pop    %ebp
ae9b58:	c2 0c 00             	ret    $0xc
ae9b5b:	cc                   	int3
ae9b5c:	cc                   	int3
ae9b5d:	cc                   	int3
ae9b5e:	cc                   	int3
ae9b5f:	cc                   	int3
ae9b60:	cc                   	int3
ae9b61:	cc                   	int3
ae9b62:	cc                   	int3
ae9b63:	cc                   	int3
ae9b64:	cc                   	int3
ae9b65:	cc                   	int3
ae9b66:	cc                   	int3
ae9b67:	cc                   	int3
ae9b68:	cc                   	int3
ae9b69:	cc                   	int3
ae9b6a:	cc                   	int3
ae9b6b:	cc                   	int3
ae9b6c:	55                   	push   %ebp
ae9b6d:	8b ec                	mov    %esp,%ebp
ae9b6f:	56                   	push   %esi
ae9b70:	8b 75 08             	mov    0x8(%ebp),%esi
ae9b73:	6a 00                	push   $0x0
ae9b75:	ff 76 0c             	push   0xc(%esi)
ae9b78:	e8 97 f0 92 ff       	call   0x418c14
ae9b7d:	50                   	push   %eax
ae9b7e:	e8 74 4c 95 ff       	call   0x43e7f7
ae9b83:	83 c4 0c             	add    $0xc,%esp
ae9b86:	8d 4e 10             	lea    0x10(%esi),%ecx
ae9b89:	33 c0                	xor    %eax,%eax
ae9b8b:	6a 02                	push   $0x2
ae9b8d:	5a                   	pop    %edx
ae9b8e:	f0 0f b1 11          	lock cmpxchg %edx,(%ecx)
ae9b92:	85 c0                	test   %eax,%eax
ae9b94:	75 16                	jne    0xae9bac
ae9b96:	57                   	push   %edi
ae9b97:	8b 3e                	mov    (%esi),%edi
ae9b99:	8b 07                	mov    (%edi),%eax
ae9b9b:	8b 70 0c             	mov    0xc(%eax),%esi
ae9b9e:	8b ce                	mov    %esi,%ecx
ae9ba0:	e8 c0 2a 94 ff       	call   0x42c665
ae9ba5:	8b cf                	mov    %edi,%ecx
ae9ba7:	ff d6                	call   *%esi
ae9ba9:	5f                   	pop    %edi
ae9baa:	eb 07                	jmp    0xae9bb3
ae9bac:	8b ce                	mov    %esi,%ecx
ae9bae:	e8 9e 21 93 ff       	call   0x41bd51
ae9bb3:	5e                   	pop    %esi
ae9bb4:	5d                   	pop    %ebp
ae9bb5:	c2 08 00             	ret    $0x8
ae9bb8:	cc                   	int3
ae9bb9:	cc                   	int3
ae9bba:	cc                   	int3
ae9bbb:	cc                   	int3
ae9bbc:	cc                   	int3
ae9bbd:	cc                   	int3
ae9bbe:	cc                   	int3
ae9bbf:	cc                   	int3
ae9bc0:	cc                   	int3
ae9bc1:	cc                   	int3
ae9bc2:	cc                   	int3
ae9bc3:	cc                   	int3
ae9bc4:	cc                   	int3
ae9bc5:	cc                   	int3
ae9bc6:	cc                   	int3
ae9bc7:	cc                   	int3
ae9bc8:	cc                   	int3
ae9bc9:	cc                   	int3
ae9bca:	cc                   	int3
ae9bcb:	8b 41 08             	mov    0x8(%ecx),%eax
ae9bce:	83 e0 01             	and    $0x1,%eax
ae9bd1:	c3                   	ret
ae9bd2:	f7 05 e8 01 d6 00 00 	testl  $0x80000000,0xd601e8
ae9bd9:	00 00 80
ae9bdc:	0f 95 c0             	setne  %al
ae9bdf:	c3                   	ret
ae9be0:	cc                   	int3
ae9be1:	cc                   	int3
ae9be2:	cc                   	int3
ae9be3:	8b 41 08             	mov    0x8(%ecx),%eax
ae9be6:	c1 e8 02             	shr    $0x2,%eax
ae9be9:	83 e0 01             	and    $0x1,%eax
ae9bec:	c3                   	ret
ae9bed:	cc                   	int3
ae9bee:	cc                   	int3
ae9bef:	8b 41 08             	mov    0x8(%ecx),%eax
ae9bf2:	d1 e8                	shr    $1,%eax
ae9bf4:	83 e0 01             	and    $0x1,%eax
ae9bf7:	c3                   	ret
ae9bf8:	cc                   	int3
ae9bf9:	cc                   	int3
ae9bfa:	56                   	push   %esi
ae9bfb:	8b f1                	mov    %ecx,%esi
ae9bfd:	83 7e 0c 00          	cmpl   $0x0,0xc(%esi)
ae9c01:	74 1a                	je     0xae9c1d
ae9c03:	33 d2                	xor    %edx,%edx
ae9c05:	8d 46 10             	lea    0x10(%esi),%eax
ae9c08:	42                   	inc    %edx
ae9c09:	87 10                	xchg   %edx,(%eax)
ae9c0b:	83 fa 02             	cmp    $0x2,%edx
ae9c0e:	75 0d                	jne    0xae9c1d
ae9c10:	e8 8a 27 94 ff       	call   0x42c39f
ae9c15:	8b ce                	mov    %esi,%ecx
ae9c17:	5e                   	pop    %esi
ae9c18:	e9 34 21 93 ff       	jmp    0x41bd51
ae9c1d:	5e                   	pop    %esi
ae9c1e:	c3                   	ret
ae9c1f:	cc                   	int3
ae9c20:	cc                   	int3
ae9c21:	cc                   	int3
ae9c22:	cc                   	int3
ae9c23:	cc                   	int3
ae9c24:	cc                   	int3
ae9c25:	cc                   	int3
ae9c26:	cc                   	int3
ae9c27:	cc                   	int3
ae9c28:	56                   	push   %esi
ae9c29:	33 f6                	xor    %esi,%esi
ae9c2b:	8d 51 10             	lea    0x10(%ecx),%edx
ae9c2e:	46                   	inc    %esi
ae9c2f:	33 c0                	xor    %eax,%eax
ae9c31:	f0 0f b1 32          	lock cmpxchg %esi,(%edx)
ae9c35:	85 c0                	test   %eax,%eax
ae9c37:	75 1c                	jne    0xae9c55
ae9c39:	83 61 08 fe          	andl   $0xfffffffe,0x8(%ecx)
ae9c3d:	57                   	push   %edi
ae9c3e:	8b 39                	mov    (%ecx),%edi
ae9c40:	8b 17                	mov    (%edi),%edx
ae9c42:	8b 72 0c             	mov    0xc(%edx),%esi
ae9c45:	8b ce                	mov    %esi,%ecx
ae9c47:	e8 19 2a 94 ff       	call   0x42c665
ae9c4c:	8b cf                	mov    %edi,%ecx
ae9c4e:	ff d6                	call   *%esi
ae9c50:	5f                   	pop    %edi
ae9c51:	b0 01                	mov    $0x1,%al
ae9c53:	5e                   	pop    %esi
ae9c54:	c3                   	ret
ae9c55:	32 c0                	xor    %al,%al
ae9c57:	5e                   	pop    %esi
ae9c58:	c3                   	ret
ae9c59:	cc                   	int3
ae9c5a:	cc                   	int3
ae9c5b:	cc                   	int3
ae9c5c:	cc                   	int3
ae9c5d:	cc                   	int3
ae9c5e:	cc                   	int3
ae9c5f:	cc                   	int3
ae9c60:	cc                   	int3
ae9c61:	cc                   	int3
ae9c62:	cc                   	int3
ae9c63:	cc                   	int3
ae9c64:	cc                   	int3
ae9c65:	83 61 08 fe          	andl   $0xfffffffe,0x8(%ecx)
ae9c69:	c3                   	ret
ae9c6a:	55                   	push   %ebp
ae9c6b:	8b ec                	mov    %esp,%ebp
ae9c6d:	53                   	push   %ebx
ae9c6e:	57                   	push   %edi
ae9c6f:	8b 7d 08             	mov    0x8(%ebp),%edi
ae9c72:	8b d9                	mov    %ecx,%ebx
ae9c74:	8b 47 08             	mov    0x8(%edi),%eax
ae9c77:	a8 01                	test   $0x1,%al
ae9c79:	74 26                	je     0xae9ca1
ae9c7b:	8b 47 08             	mov    0x8(%edi),%eax
ae9c7e:	c1 e8 02             	shr    $0x2,%eax
ae9c81:	a8 01                	test   $0x1,%al
ae9c83:	75 18                	jne    0xae9c9d
ae9c85:	8b 3f                	mov    (%edi),%edi
ae9c87:	56                   	push   %esi
ae9c88:	8b 07                	mov    (%edi),%eax
ae9c8a:	8b 70 10             	mov    0x10(%eax),%esi
ae9c8d:	8b ce                	mov    %esi,%ecx
ae9c8f:	e8 d1 29 94 ff       	call   0x42c665
ae9c94:	8b cf                	mov    %edi,%ecx
ae9c96:	ff d6                	call   *%esi
ae9c98:	5e                   	pop    %esi
ae9c99:	84 c0                	test   %al,%al
ae9c9b:	74 04                	je     0xae9ca1
ae9c9d:	83 4b 08 04          	orl    $0x4,0x8(%ebx)
ae9ca1:	5f                   	pop    %edi
ae9ca2:	5b                   	pop    %ebx
ae9ca3:	5d                   	pop    %ebp
ae9ca4:	c2 04 00             	ret    $0x4
ae9ca7:	cc                   	int3
ae9ca8:	cc                   	int3
ae9ca9:	cc                   	int3
ae9caa:	cc                   	int3
ae9cab:	cc                   	int3
ae9cac:	cc                   	int3
ae9cad:	cc                   	int3
ae9cae:	cc                   	int3
ae9caf:	cc                   	int3
ae9cb0:	cc                   	int3
ae9cb1:	cc                   	int3
ae9cb2:	cc                   	int3
ae9cb3:	cc                   	int3
ae9cb4:	cc                   	int3
ae9cb5:	cc                   	int3
ae9cb6:	55                   	push   %ebp
ae9cb7:	8b ec                	mov    %esp,%ebp
ae9cb9:	51                   	push   %ecx
ae9cba:	8b c1                	mov    %ecx,%eax
ae9cbc:	89 45 fc             	mov    %eax,-0x4(%ebp)
ae9cbf:	8b 40 08             	mov    0x8(%eax),%eax
ae9cc2:	d1 e8                	shr    $1,%eax
ae9cc4:	a8 01                	test   $0x1,%al
ae9cc6:	75 51                	jne    0xae9d19
ae9cc8:	57                   	push   %edi
ae9cc9:	8b 7d 08             	mov    0x8(%ebp),%edi
ae9ccc:	8b 47 08             	mov    0x8(%edi),%eax
ae9ccf:	d1 e8                	shr    $1,%eax
ae9cd1:	a8 01                	test   $0x1,%al
ae9cd3:	74 43                	je     0xae9d18
ae9cd5:	53                   	push   %ebx
ae9cd6:	8b 5f 08             	mov    0x8(%edi),%ebx
ae9cd9:	8b 47 08             	mov    0x8(%edi),%eax
ae9cdc:	83 c3 08             	add    $0x8,%ebx
ae9cdf:	83 e3 fa             	and    $0xfffffffa,%ebx
ae9ce2:	a8 01                	test   $0x1,%al
ae9ce4:	74 2b                	je     0xae9d11
ae9ce6:	8b 47 08             	mov    0x8(%edi),%eax
ae9ce9:	c1 e8 02             	shr    $0x2,%eax
ae9cec:	a8 01                	test   $0x1,%al
ae9cee:	75 1e                	jne    0xae9d0e
ae9cf0:	83 7f 0c 00          	cmpl   $0x0,0xc(%edi)
ae9cf4:	75 1b                	jne    0xae9d11
ae9cf6:	8b 3f                	mov    (%edi),%edi
ae9cf8:	56                   	push   %esi
ae9cf9:	8b 07                	mov    (%edi),%eax
ae9cfb:	8b 70 10             	mov    0x10(%eax),%esi
ae9cfe:	8b ce                	mov    %esi,%ecx
ae9d00:	e8 60 29 94 ff       	call   0x42c665
ae9d05:	8b cf                	mov    %edi,%ecx
ae9d07:	ff d6                	call   *%esi
ae9d09:	5e                   	pop    %esi
ae9d0a:	84 c0                	test   %al,%al
ae9d0c:	74 03                	je     0xae9d11
ae9d0e:	83 cb 04             	or     $0x4,%ebx
ae9d11:	8b 45 fc             	mov    -0x4(%ebp),%eax
ae9d14:	09 58 08             	or     %ebx,0x8(%eax)
ae9d17:	5b                   	pop    %ebx
ae9d18:	5f                   	pop    %edi
ae9d19:	8b e5                	mov    %ebp,%esp
ae9d1b:	5d                   	pop    %ebp
ae9d1c:	c2 04 00             	ret    $0x4
ae9d1f:	cc                   	int3
ae9d20:	cc                   	int3
ae9d21:	cc                   	int3
ae9d22:	cc                   	int3
ae9d23:	cc                   	int3
ae9d24:	cc                   	int3
ae9d25:	cc                   	int3
ae9d26:	cc                   	int3
ae9d27:	cc                   	int3
ae9d28:	cc                   	int3
ae9d29:	cc                   	int3
ae9d2a:	cc                   	int3
ae9d2b:	cc                   	int3
ae9d2c:	cc                   	int3
ae9d2d:	cc                   	int3
ae9d2e:	cc                   	int3
ae9d2f:	cc                   	int3
ae9d30:	cc                   	int3
ae9d31:	cc                   	int3
ae9d32:	cc                   	int3
ae9d33:	cc                   	int3
ae9d34:	cc                   	int3
ae9d35:	cc                   	int3
ae9d36:	cc                   	int3
ae9d37:	cc                   	int3
ae9d38:	cc                   	int3
ae9d39:	55                   	push   %ebp
ae9d3a:	8b ec                	mov    %esp,%ebp
ae9d3c:	83 ec 10             	sub    $0x10,%esp
ae9d3f:	56                   	push   %esi
ae9d40:	8b f1                	mov    %ecx,%esi
ae9d42:	8b 46 04             	mov    0x4(%esi),%eax
ae9d45:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
ae9d49:	c7 45 fc ef cc 43 00 	movl   $0x43ccef,-0x4(%ebp)
ae9d50:	eb 0b                	jmp    0xae9d5d
ae9d52:	8d 4d f0             	lea    -0x10(%ebp),%ecx
ae9d55:	e8 01 7a 93 ff       	call   0x42175b
ae9d5a:	8b 46 04             	mov    0x4(%esi),%eax
ae9d5d:	85 c0                	test   %eax,%eax
ae9d5f:	74 f1                	je     0xae9d52
ae9d61:	5e                   	pop    %esi
ae9d62:	8b e5                	mov    %ebp,%esp
ae9d64:	5d                   	pop    %ebp
ae9d65:	c3                   	ret
ae9d66:	cc                   	int3
ae9d67:	cc                   	int3
ae9d68:	cc                   	int3
ae9d69:	cc                   	int3
ae9d6a:	cc                   	int3
ae9d6b:	cc                   	int3
ae9d6c:	cc                   	int3
ae9d6d:	cc                   	int3
ae9d6e:	cc                   	int3
ae9d6f:	cc                   	int3
ae9d70:	cc                   	int3
ae9d71:	51                   	push   %ecx
ae9d72:	ff 15 8c 36 d8 00    	call   *0xd8368c
ae9d78:	c3                   	ret
ae9d79:	cc                   	int3
ae9d7a:	cc                   	int3
ae9d7b:	55                   	push   %ebp
ae9d7c:	8b ec                	mov    %esp,%ebp
ae9d7e:	6a 01                	push   $0x1
ae9d80:	ff 75 08             	push   0x8(%ebp)
ae9d83:	e8 cb a0 92 ff       	call   0x413e53
ae9d88:	5d                   	pop    %ebp
ae9d89:	c2 04 00             	ret    $0x4
ae9d8c:	cc                   	int3
ae9d8d:	cc                   	int3
ae9d8e:	cc                   	int3
ae9d8f:	cc                   	int3
ae9d90:	51                   	push   %ecx
ae9d91:	ff 15 8c 36 d8 00    	call   *0xd8368c
ae9d97:	c3                   	ret
ae9d98:	cc                   	int3
ae9d99:	cc                   	int3
ae9d9a:	55                   	push   %ebp
ae9d9b:	8b ec                	mov    %esp,%ebp
ae9d9d:	83 ec 10             	sub    $0x10,%esp
ae9da0:	53                   	push   %ebx
ae9da1:	56                   	push   %esi
ae9da2:	57                   	push   %edi
ae9da3:	8b f1                	mov    %ecx,%esi
ae9da5:	ff 15 d8 35 d8 00    	call   *0xd835d8