432a4c:	ff 15 84 12 45 00    	call   *0x451284
432a52:	57                   	push   %edi
432a53:	53                   	push   %ebx
432a54:	88 45 ff             	mov    %al,-0x1(%ebp)
432a57:	ff 15 88 12 45 00    	call   *0x451288
432a5d:	8a 55 ff             	mov    -0x1(%ebp),%dl
432a60:	f6 46 1a 02          	testb  $0x2,0x1a(%esi)
432a64:	74 09                	je     0x432a6f
432a66:	8b 4e 10             	mov    0x10(%esi),%ecx
432a69:	85 c9                	test   %ecx,%ecx
432a6b:	74 02                	je     0x432a6f
432a6d:	8b f1                	mov    %ecx,%esi
432a6f:	89 46 1c             	mov    %eax,0x1c(%esi)
432a72:	33 c0                	xor    %eax,%eax
432a74:	89 5e 10             	mov    %ebx,0x10(%esi)
432a77:	89 7e 14             	mov    %edi,0x14(%esi)
432a7a:	88 56 19             	mov    %dl,0x19(%esi)
432a7d:	5f                   	pop    %edi
432a7e:	5e                   	pop    %esi
432a7f:	5b                   	pop    %ebx
432a80:	c9                   	leave
432a81:	c2 10 00             	ret    $0x10
432a84:	8b ff                	mov    %edi,%edi
432a86:	55                   	push   %ebp
432a87:	8b ec                	mov    %esp,%ebp
432a89:	51                   	push   %ecx
432a8a:	8b 45 08             	mov    0x8(%ebp),%eax
432a8d:	56                   	push   %esi
432a8e:	8b f1                	mov    %ecx,%esi
432a90:	51                   	push   %ecx
432a91:	51                   	push   %ecx
432a92:	89 75 fc             	mov    %esi,-0x4(%ebp)
432a95:	83 66 04 00          	andl   $0x0,0x4(%esi)
432a99:	8d 4e 08             	lea    0x8(%esi),%ecx
432a9c:	89 06                	mov    %eax,(%esi)
432a9e:	e8 9a ad fe ff       	call   0x41d83d
432aa3:	8b 45 0c             	mov    0xc(%ebp),%eax
432aa6:	83 66 28 00          	andl   $0x0,0x28(%esi)
432aaa:	83 66 30 00          	andl   $0x0,0x30(%esi)
432aae:	89 46 2c             	mov    %eax,0x2c(%esi)
432ab1:	8b c6                	mov    %esi,%eax
432ab3:	c7 46 24 00 02 00 00 	movl   $0x200,0x24(%esi)
432aba:	5e                   	pop    %esi
432abb:	c9                   	leave
432abc:	c2 0c 00             	ret    $0xc
432abf:	8b ff                	mov    %edi,%edi
432ac1:	55                   	push   %ebp
432ac2:	8b ec                	mov    %esp,%ebp
432ac4:	6a ff                	push   $0xffffffff
432ac6:	68 31 3a 42 00       	push   $0x423a31
432acb:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
432ad1:	50                   	push   %eax
432ad2:	56                   	push   %esi
432ad3:	a1 54 02 45 00       	mov    0x450254,%eax
432ad8:	33 c5                	xor    %ebp,%eax
432ada:	50                   	push   %eax
432adb:	8d 45 f4             	lea    -0xc(%ebp),%eax
432ade:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
432ae4:	8b f1                	mov    %ecx,%esi
432ae6:	83 7e 04 00          	cmpl   $0x0,0x4(%esi)
432aea:	74 09                	je     0x432af5
432aec:	ff 76 04             	push   0x4(%esi)
432aef:	ff 15 0c 30 45 00    	call   *0x45300c
432af5:	83 7e 0c 00          	cmpl   $0x0,0xc(%esi)
432af9:	74 09                	je     0x432b04
432afb:	ff 76 0c             	push   0xc(%esi)
432afe:	ff 15 0c 30 45 00    	call   *0x45300c
432b04:	8b 4d f4             	mov    -0xc(%ebp),%ecx
432b07:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
432b0e:	59                   	pop    %ecx
432b0f:	5e                   	pop    %esi
432b10:	c9                   	leave
432b11:	c3                   	ret
432b12:	8b ff                	mov    %edi,%edi
432b14:	55                   	push   %ebp
432b15:	8b ec                	mov    %esp,%ebp
432b17:	6a ff                	push   $0xffffffff
432b19:	68 47 30 42 00       	push   $0x423047
432b1e:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
432b24:	50                   	push   %eax
432b25:	56                   	push   %esi
432b26:	a1 54 02 45 00       	mov    0x450254,%eax
432b2b:	33 c5                	xor    %ebp,%eax
432b2d:	50                   	push   %eax
432b2e:	8d 45 f4             	lea    -0xc(%ebp),%eax
432b31:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
432b37:	8b f1                	mov    %ecx,%esi
432b39:	e8 31 97 fd ff       	call   0x40c26f
432b3e:	83 c6 08             	add    $0x8,%esi
432b41:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
432b45:	80 7e 18 00          	cmpb   $0x0,0x18(%esi)
432b49:	74 07                	je     0x432b52
432b4b:	56                   	push   %esi
432b4c:	ff 15 48 11 45 00    	call   *0x451148
432b52:	8b 4d f4             	mov    -0xc(%ebp),%ecx
432b55:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
432b5c:	59                   	pop    %ecx
432b5d:	5e                   	pop    %esi
432b5e:	c9                   	leave
432b5f:	c3                   	ret
432b60:	8b ff                	mov    %edi,%edi
432b62:	55                   	push   %ebp
432b63:	8b ec                	mov    %esp,%ebp
432b65:	51                   	push   %ecx
432b66:	56                   	push   %esi
432b67:	8b f1                	mov    %ecx,%esi
432b69:	57                   	push   %edi
432b6a:	8b 7d 08             	mov    0x8(%ebp),%edi
432b6d:	83 7e 04 00          	cmpl   $0x0,0x4(%esi)
432b71:	8b 07                	mov    (%edi),%eax
432b73:	89 06                	mov    %eax,(%esi)
432b75:	8b 47 08             	mov    0x8(%edi),%eax
432b78:	89 46 08             	mov    %eax,0x8(%esi)
432b7b:	8b 47 10             	mov    0x10(%edi),%eax
432b7e:	89 46 10             	mov    %eax,0x10(%esi)
432b81:	74 09                	je     0x432b8c
432b83:	ff 76 04             	push   0x4(%esi)
432b86:	ff 15 0c 30 45 00    	call   *0x45300c
432b8c:	83 7f 04 00          	cmpl   $0x0,0x4(%edi)
432b90:	74 22                	je     0x432bb4
432b92:	ff 77 04             	push   0x4(%edi)
432b95:	ff 15 10 30 45 00    	call   *0x453010
432b9b:	89 46 04             	mov    %eax,0x4(%esi)
432b9e:	85 c0                	test   %eax,%eax
432ba0:	75 16                	jne    0x432bb8
432ba2:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
432ba6:	8d 45 fc             	lea    -0x4(%ebp),%eax
432ba9:	68 44 d1 44 00       	push   $0x44d144
432bae:	50                   	push   %eax
432baf:	e8 81 ca fe ff       	call   0x41f635
432bb4:	83 66 04 00          	andl   $0x0,0x4(%esi)
432bb8:	83 7e 0c 00          	cmpl   $0x0,0xc(%esi)
432bbc:	74 09                	je     0x432bc7
432bbe:	ff 76 0c             	push   0xc(%esi)
432bc1:	ff 15 0c 30 45 00    	call   *0x45300c
432bc7:	83 7f 0c 00          	cmpl   $0x0,0xc(%edi)
432bcb:	74 12                	je     0x432bdf
432bcd:	ff 77 0c             	push   0xc(%edi)
432bd0:	ff 15 10 30 45 00    	call   *0x453010
432bd6:	89 46 0c             	mov    %eax,0xc(%esi)
432bd9:	85 c0                	test   %eax,%eax
432bdb:	75 06                	jne    0x432be3
432bdd:	eb c3                	jmp    0x432ba2
432bdf:	83 66 0c 00          	andl   $0x0,0xc(%esi)
432be3:	5f                   	pop    %edi
432be4:	8b c6                	mov    %esi,%eax
432be6:	5e                   	pop    %esi
432be7:	c9                   	leave
432be8:	c2 04 00             	ret    $0x4
432beb:	8b ff                	mov    %edi,%edi
432bed:	55                   	push   %ebp
432bee:	8b ec                	mov    %esp,%ebp
432bf0:	6a ff                	push   $0xffffffff
432bf2:	68 a9 3b 42 00       	push   $0x423ba9
432bf7:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
432bfd:	50                   	push   %eax
432bfe:	56                   	push   %esi
432bff:	a1 54 02 45 00       	mov    0x450254,%eax
432c04:	33 c5                	xor    %ebp,%eax
432c06:	50                   	push   %eax
432c07:	8d 45 f4             	lea    -0xc(%ebp),%eax
432c0a:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
432c10:	8b f1                	mov    %ecx,%esi
432c12:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
432c16:	e8 c6 01 00 00       	call   0x432de1
432c1b:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
432c22:	85 f6                	test   %esi,%esi
432c24:	74 0c                	je     0x432c32
432c26:	8b 0d 80 0b 45 00    	mov    0x450b80,%ecx
432c2c:	56                   	push   %esi
432c2d:	e8 f8 6b fe ff       	call   0x41982a
432c32:	8b c6                	mov    %esi,%eax
432c34:	8b 4d f4             	mov    -0xc(%ebp),%ecx
432c37:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
432c3e:	59                   	pop    %ecx
432c3f:	5e                   	pop    %esi
432c40:	c9                   	leave
432c41:	c2 04 00             	ret    $0x4
432c44:	8b ff                	mov    %edi,%edi
432c46:	56                   	push   %esi
432c47:	57                   	push   %edi
432c48:	8b f9                	mov    %ecx,%edi
432c4a:	33 f6                	xor    %esi,%esi
432c4c:	8b 47 0c             	mov    0xc(%edi),%eax
432c4f:	8b 48 08             	mov    0x8(%eax),%ecx
432c52:	83 e1 05             	and    $0x5,%ecx
432c55:	83 c9 08             	or     $0x8,%ecx
432c58:	39 70 04             	cmp    %esi,0x4(%eax)
432c5b:	74 40                	je     0x432c9d
432c5d:	68 84 00 00 00       	push   $0x84
432c62:	51                   	push   %ecx
432c63:	ff 70 04             	push   0x4(%eax)
432c66:	ff 15 78 10 45 00    	call   *0x451078
432c6c:	8b c8                	mov    %eax,%ecx
432c6e:	85 c9                	test   %ecx,%ecx
432c70:	75 1d                	jne    0x432c8f
432c72:	ff 15 54 10 45 00    	call   *0x451054
432c78:	8b f0                	mov    %eax,%esi
432c7a:	81 ee 17 00 00 c0    	sub    $0xc0000017,%esi
432c80:	f7 de                	neg    %esi
432c82:	1b f6                	sbb    %esi,%esi
432c84:	83 e6 07             	and    $0x7,%esi
432c87:	81 c6 00 00 00 80    	add    $0x80000000,%esi
432c8d:	eb 13                	jmp    0x432ca2
432c8f:	89 31                	mov    %esi,(%ecx)
432c91:	8b 07                	mov    (%edi),%eax
432c93:	89 01                	mov    %eax,(%ecx)
432c95:	83 47 08 20          	addl   $0x20,0x8(%edi)
432c99:	89 0f                	mov    %ecx,(%edi)
432c9b:	eb 05                	jmp    0x432ca2
432c9d:	be 02 00 00 80       	mov    $0x80000002,%esi
432ca2:	5f                   	pop    %edi
432ca3:	8b c6                	mov    %esi,%eax
432ca5:	5e                   	pop    %esi
432ca6:	c3                   	ret
432ca7:	6a 04                	push   $0x4
432ca9:	b8 ce 3b 42 00       	mov    $0x423bce,%eax
432cae:	e8 ba c9 fe ff       	call   0x41f66d
432cb3:	8b f1                	mov    %ecx,%esi
432cb5:	8b 46 2c             	mov    0x2c(%esi),%eax
432cb8:	33 c9                	xor    %ecx,%ecx
432cba:	6a 04                	push   $0x4
432cbc:	5a                   	pop    %edx
432cbd:	f7 e2                	mul    %edx
432cbf:	0f 90 c1             	seto   %cl
432cc2:	f7 d9                	neg    %ecx
432cc4:	0b c8                	or     %eax,%ecx
432cc6:	51                   	push   %ecx
432cc7:	e8 0f b5 fe ff       	call   0x41e1db
432ccc:	89 46 04             	mov    %eax,0x4(%esi)
432ccf:	59                   	pop    %ecx
432cd0:	85 c0                	test   %eax,%eax
432cd2:	74 75                	je     0x432d49
432cd4:	80 7e 20 00          	cmpb   $0x0,0x20(%esi)
432cd8:	74 6f                	je     0x432d49
432cda:	8b 46 2c             	mov    0x2c(%esi),%eax
432cdd:	33 db                	xor    %ebx,%ebx
432cdf:	c7 46 30 01 00 00 00 	movl   $0x1,0x30(%esi)
432ce6:	8b cb                	mov    %ebx,%ecx
432ce8:	8b d3                	mov    %ebx,%edx
432cea:	85 c0                	test   %eax,%eax
432cec:	74 0e                	je     0x432cfc
432cee:	8b 46 04             	mov    0x4(%esi),%eax
432cf1:	89 1c 90             	mov    %ebx,(%eax,%edx,4)
432cf4:	42                   	inc    %edx
432cf5:	8b 46 2c             	mov    0x2c(%esi),%eax
432cf8:	3b d0                	cmp    %eax,%edx
432cfa:	72 f2                	jb     0x432cee
432cfc:	8b fb                	mov    %ebx,%edi
432cfe:	85 c0                	test   %eax,%eax
432d00:	74 4c                	je     0x432d4e
432d02:	6a 10                	push   $0x10
432d04:	e8 d2 b4 fe ff       	call   0x41e1db
432d09:	59                   	pop    %ecx
432d0a:	8b c8                	mov    %eax,%ecx
432d0c:	89 4d f0             	mov    %ecx,-0x10(%ebp)
432d0f:	89 5d fc             	mov    %ebx,-0x4(%ebp)
432d12:	85 c9                	test   %ecx,%ecx
432d14:	74 10                	je     0x432d26
432d16:	8b 06                	mov    (%esi),%eax
432d18:	83 49 04 ff          	orl    $0xffffffff,0x4(%ecx)
432d1c:	89 19                	mov    %ebx,(%ecx)
432d1e:	89 59 08             	mov    %ebx,0x8(%ecx)
432d21:	89 41 0c             	mov    %eax,0xc(%ecx)
432d24:	eb 02                	jmp    0x432d28
432d26:	8b cb                	mov    %ebx,%ecx
432d28:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
432d2c:	8b 46 04             	mov    0x4(%esi),%eax
432d2f:	89 0c b8             	mov    %ecx,(%eax,%edi,4)
432d32:	85 c9                	test   %ecx,%ecx
432d34:	74 13                	je     0x432d49
432d36:	e8 09 ff ff ff       	call   0x432c44
432d3b:	8b c8                	mov    %eax,%ecx
432d3d:	85 c9                	test   %ecx,%ecx
432d3f:	75 0d                	jne    0x432d4e
432d41:	47                   	inc    %edi
432d42:	3b 7e 2c             	cmp    0x2c(%esi),%edi
432d45:	72 bb                	jb     0x432d02
432d47:	eb 05                	jmp    0x432d4e
432d49:	b9 00 00 00 80       	mov    $0x80000000,%ecx
432d4e:	8b c1                	mov    %ecx,%eax
432d50:	e8 e6 c8 fe ff       	call   0x41f63b
432d55:	c3                   	ret
432d56:	8b ff                	mov    %edi,%edi
432d58:	53                   	push   %ebx
432d59:	57                   	push   %edi
432d5a:	8b f9                	mov    %ecx,%edi
432d5c:	83 cb ff             	or     $0xffffffff,%ebx
432d5f:	f0 0f c1 5f 0c       	lock xadd %ebx,0xc(%edi)
432d64:	4b                   	dec    %ebx
432d65:	75 19                	jne    0x432d80
432d67:	85 ff                	test   %edi,%edi
432d69:	74 15                	je     0x432d80
432d6b:	8b 0f                	mov    (%edi),%ecx
432d6d:	56                   	push   %esi
432d6e:	6a 01                	push   $0x1
432d70:	8b 71 0c             	mov    0xc(%ecx),%esi
432d73:	8b ce                	mov    %esi,%ecx
432d75:	ff 15 c4 12 45 00    	call   *0x4512c4
432d7b:	8b cf                	mov    %edi,%ecx
432d7d:	ff d6                	call   *%esi
432d7f:	5e                   	pop    %esi
432d80:	5f                   	pop    %edi
432d81:	8b c3                	mov    %ebx,%eax
432d83:	5b                   	pop    %ebx
432d84:	c3                   	ret
432d85:	8b ff                	mov    %edi,%edi
432d87:	56                   	push   %esi
432d88:	8b f1                	mov    %ecx,%esi
432d8a:	33 c0                	xor    %eax,%eax
432d8c:	8b 4e 04             	mov    0x4(%esi),%ecx
432d8f:	83 f9 ff             	cmp    $0xffffffff,%ecx
432d92:	74 15                	je     0x432da9
432d94:	f6 c1 1f             	test   $0x1f,%cl
432d97:	75 0a                	jne    0x432da3
432d99:	8b ce                	mov    %esi,%ecx
432d9b:	e8 10 00 00 00       	call   0x432db0
432da0:	8b 4e 04             	mov    0x4(%esi),%ecx
432da3:	49                   	dec    %ecx
432da4:	89 4e 04             	mov    %ecx,0x4(%esi)
432da7:	5e                   	pop    %esi
432da8:	c3                   	ret
432da9:	b8 02 00 00 80       	mov    $0x80000002,%eax
432dae:	5e                   	pop    %esi
432daf:	c3                   	ret
432db0:	6a 00                	push   $0x0
432db2:	b8 fd 2c 42 00       	mov    $0x422cfd,%eax
432db7:	e8 b1 c8 fe ff       	call   0x41f66d
432dbc:	8b f9                	mov    %ecx,%edi
432dbe:	8b 07                	mov    (%edi),%eax
432dc0:	33 c9                	xor    %ecx,%ecx
432dc2:	85 c0                	test   %eax,%eax
432dc4:	74 13                	je     0x432dd9
432dc6:	8b 4f 0c             	mov    0xc(%edi),%ecx
432dc9:	8b 30                	mov    (%eax),%esi
432dcb:	50                   	push   %eax
432dcc:	e8 59 6a fe ff       	call   0x41982a
432dd1:	83 47 08 e0          	addl   $0xffffffe0,0x8(%edi)
432dd5:	8b c8                	mov    %eax,%ecx
432dd7:	89 37                	mov    %esi,(%edi)
432dd9:	8b c1                	mov    %ecx,%eax
432ddb:	e8 5b c8 fe ff       	call   0x41f63b
432de0:	c3                   	ret
432de1:	8b ff                	mov    %edi,%edi
432de3:	56                   	push   %esi
432de4:	8b f1                	mov    %ecx,%esi
432de6:	33 c0                	xor    %eax,%eax
432de8:	39 46 08             	cmp    %eax,0x8(%esi)
432deb:	74 10                	je     0x432dfd
432ded:	ff 76 08             	push   0x8(%esi)