ae99cc:	c7 06 e8 4c bd 00    	movl   $0xbd4ce8,(%esi)
ae99d2:	50                   	push   %eax
ae99d3:	e8 60 b3 94 ff       	call   0x434d38
ae99d8:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
ae99dc:	59                   	pop    %ecx
ae99dd:	74 0a                	je     0xae99e9
ae99df:	6a 0c                	push   $0xc
ae99e1:	56                   	push   %esi
ae99e2:	e8 b5 84 91 ff       	call   0x401e9c
ae99e7:	59                   	pop    %ecx
ae99e8:	59                   	pop    %ecx
ae99e9:	8b c6                	mov    %esi,%eax
ae99eb:	5e                   	pop    %esi
ae99ec:	5d                   	pop    %ebp
ae99ed:	c2 04 00             	ret    $0x4
ae99f0:	cc                   	int3
ae99f1:	cc                   	int3
ae99f2:	cc                   	int3
ae99f3:	cc                   	int3
ae99f4:	cc                   	int3
ae99f5:	cc                   	int3
ae99f6:	cc                   	int3
ae99f7:	cc                   	int3
ae99f8:	cc                   	int3
ae99f9:	cc                   	int3
ae99fa:	cc                   	int3
ae99fb:	55                   	push   %ebp
ae99fc:	8b ec                	mov    %esp,%ebp
ae99fe:	83 ec 10             	sub    $0x10,%esp
ae9a01:	56                   	push   %esi
ae9a02:	57                   	push   %edi
ae9a03:	8b f1                	mov    %ecx,%esi
ae9a05:	e8 90 7b 92 ff       	call   0x41159a
ae9a0a:	8b 56 08             	mov    0x8(%esi),%edx
ae9a0d:	8b f8                	mov    %eax,%edi
ae9a0f:	c1 ea 02             	shr    $0x2,%edx
ae9a12:	f6 c2 01             	test   $0x1,%dl
ae9a15:	75 5f                	jne    0xae9a76
ae9a17:	8b 4e 08             	mov    0x8(%esi),%ecx
ae9a1a:	d1 e9                	shr    $1,%ecx
ae9a1c:	f6 c1 01             	test   $0x1,%cl
ae9a1f:	74 10                	je     0xae9a31
ae9a21:	8b 56 08             	mov    0x8(%esi),%edx
ae9a24:	8b 45 08             	mov    0x8(%ebp),%eax
ae9a27:	c1 ea 03             	shr    $0x3,%edx
ae9a2a:	c1 e8 03             	shr    $0x3,%eax
ae9a2d:	2b d0                	sub    %eax,%edx
ae9a2f:	eb 03                	jmp    0xae9a34
ae9a31:	33 d2                	xor    %edx,%edx
ae9a33:	42                   	inc    %edx
ae9a34:	83 c7 02             	add    $0x2,%edi
ae9a37:	3b d7                	cmp    %edi,%edx
ae9a39:	77 3b                	ja     0xae9a76
ae9a3b:	8d 42 ff             	lea    -0x1(%edx),%eax
ae9a3e:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
ae9a42:	0f af 05 d0 01 d6 00 	imul   0xd601d0,%eax
ae9a49:	8d 4d f0             	lea    -0x10(%ebp),%ecx
ae9a4c:	33 d2                	xor    %edx,%edx
ae9a4e:	c7 45 fc ef cc 43 00 	movl   $0x43ccef,-0x4(%ebp)
ae9a55:	f7 f7                	div    %edi
ae9a57:	03 05 d0 01 d6 00    	add    0xd601d0,%eax
ae9a5d:	50                   	push   %eax
ae9a5e:	e8 30 d8 91 ff       	call   0x407293
ae9a63:	8b 46 08             	mov    0x8(%esi),%eax
ae9a66:	a8 01                	test   $0x1,%al
ae9a68:	74 0c                	je     0xae9a76
ae9a6a:	8d 4d f0             	lea    -0x10(%ebp),%ecx
ae9a6d:	e8 06 0b 93 ff       	call   0x41a578
ae9a72:	84 c0                	test   %al,%al
ae9a74:	75 ed                	jne    0xae9a63
ae9a76:	e8 24 29 94 ff       	call   0x42c39f
ae9a7b:	5f                   	pop    %edi
ae9a7c:	5e                   	pop    %esi
ae9a7d:	8b e5                	mov    %ebp,%esp
ae9a7f:	5d                   	pop    %ebp
ae9a80:	c2 04 00             	ret    $0x4
ae9a83:	cc                   	int3
ae9a84:	cc                   	int3
ae9a85:	cc                   	int3
ae9a86:	cc                   	int3
ae9a87:	cc                   	int3
ae9a88:	cc                   	int3
ae9a89:	cc                   	int3
ae9a8a:	cc                   	int3
ae9a8b:	cc                   	int3
ae9a8c:	cc                   	int3
ae9a8d:	cc                   	int3
ae9a8e:	cc                   	int3
ae9a8f:	cc                   	int3
ae9a90:	cc                   	int3
ae9a91:	cc                   	int3
ae9a92:	cc                   	int3
ae9a93:	cc                   	int3
ae9a94:	cc                   	int3
ae9a95:	cc                   	int3
ae9a96:	cc                   	int3
ae9a97:	cc                   	int3
ae9a98:	cc                   	int3
ae9a99:	cc                   	int3
ae9a9a:	cc                   	int3
ae9a9b:	cc                   	int3
ae9a9c:	cc                   	int3
ae9a9d:	cc                   	int3
ae9a9e:	cc                   	int3
ae9a9f:	cc                   	int3
ae9aa0:	cc                   	int3
ae9aa1:	cc                   	int3
ae9aa2:	cc                   	int3
ae9aa3:	cc                   	int3
ae9aa4:	cc                   	int3
ae9aa5:	55                   	push   %ebp
ae9aa6:	8b ec                	mov    %esp,%ebp
ae9aa8:	8b 55 08             	mov    0x8(%ebp),%edx
ae9aab:	8b 42 08             	mov    0x8(%edx),%eax
ae9aae:	89 41 08             	mov    %eax,0x8(%ecx)
ae9ab1:	8b 42 04             	mov    0x4(%edx),%eax
ae9ab4:	89 41 04             	mov    %eax,0x4(%ecx)
ae9ab7:	8b 02                	mov    (%edx),%eax
ae9ab9:	89 01                	mov    %eax,(%ecx)
ae9abb:	5d                   	pop    %ebp
ae9abc:	c2 04 00             	ret    $0x4
ae9abf:	cc                   	int3
ae9ac0:	cc                   	int3
ae9ac1:	cc                   	int3
ae9ac2:	cc                   	int3
ae9ac3:	cc                   	int3
ae9ac4:	cc                   	int3
ae9ac5:	f7 05 e8 01 d6 00 00 	testl  $0x80000000,0xd601e8
ae9acc:	00 00 80
ae9acf:	75 05                	jne    0xae9ad6
ae9ad1:	e9 95 02 94 ff       	jmp    0x429d6b
ae9ad6:	ff 35 88 2b d8 00    	push   0xd82b88
ae9adc:	e8 f6 08 95 ff       	call   0x43a3d7
ae9ae1:	59                   	pop    %ecx
ae9ae2:	85 c0                	test   %eax,%eax
ae9ae4:	74 eb                	je     0xae9ad1
ae9ae6:	c3                   	ret
ae9ae7:	cc                   	int3
ae9ae8:	cc                   	int3
ae9ae9:	cc                   	int3
ae9aea:	cc                   	int3
ae9aeb:	cc                   	int3
ae9aec:	cc                   	int3
ae9aed:	cc                   	int3
ae9aee:	cc                   	int3
ae9aef:	83 79 0c 00          	cmpl   $0x0,0xc(%ecx)
ae9af3:	74 18                	je     0xae9b0d
ae9af5:	33 c0                	xor    %eax,%eax
ae9af7:	40                   	inc    %eax
ae9af8:	f0 0f c1 41 14       	lock xadd %eax,0x14(%ecx)
ae9afd:	40                   	inc    %eax
ae9afe:	83 f8 02             	cmp    $0x2,%eax
ae9b01:	75 0a                	jne    0xae9b0d
ae9b03:	6a 18                	push   $0x18
ae9b05:	51                   	push   %ecx
ae9b06:	e8 91 83 91 ff       	call   0x401e9c
ae9b0b:	59                   	pop    %ecx
ae9b0c:	59                   	pop    %ecx
ae9b0d:	c3                   	ret
ae9b0e:	cc                   	int3
ae9b0f:	cc                   	int3
ae9b10:	cc                   	int3
ae9b11:	cc                   	int3
ae9b12:	cc                   	int3
ae9b13:	cc                   	int3
ae9b14:	cc                   	int3
ae9b15:	55                   	push   %ebp
ae9b16:	8b ec                	mov    %esp,%ebp
ae9b18:	56                   	push   %esi
ae9b19:	8b 75 0c             	mov    0xc(%ebp),%esi
ae9b1c:	33 c0                	xor    %eax,%eax
ae9b1e:	6a 02                	push   $0x2
ae9b20:	5a                   	pop    %edx
ae9b21:	8d 4e 10             	lea    0x10(%esi),%ecx
ae9b24:	f0 0f b1 11          	lock cmpxchg %edx,(%ecx)
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