539d7b:	85 c0                	test   %eax,%eax
539d7d:	0f 84 95 00 00 00    	je     0x539e18
539d83:	85 ff                	test   %edi,%edi
539d85:	74 56                	je     0x539ddd
539d87:	8d 44 24 2c          	lea    0x2c(%esp),%eax
539d8b:	50                   	push   %eax
539d8c:	8d 44 24 10          	lea    0x10(%esp),%eax
539d90:	50                   	push   %eax
539d91:	50                   	push   %eax
539d92:	e8 b9 86 f0 ff       	call   0x442450
539d97:	8d 84 24 d8 00 00 00 	lea    0xd8(%esp),%eax
539d9e:	50                   	push   %eax
539d9f:	8d 44 24 1c          	lea    0x1c(%esp),%eax
539da3:	50                   	push   %eax
539da4:	8d 84 24 00 01 00 00 	lea    0x100(%esp),%eax
539dab:	50                   	push   %eax
539dac:	e8 9f 86 f0 ff       	call   0x442450
539db1:	8d 84 24 04 01 00 00 	lea    0x104(%esp),%eax
539db8:	50                   	push   %eax
539db9:	8d 84 24 28 01 00 00 	lea    0x128(%esp),%eax
539dc0:	50                   	push   %eax
539dc1:	e8 5a 86 f0 ff       	call   0x442420
539dc6:	6a 08                	push   $0x8
539dc8:	8d 84 24 30 01 00 00 	lea    0x130(%esp),%eax
539dcf:	50                   	push   %eax
539dd0:	57                   	push   %edi
539dd1:	e8 0a 57 fc ff       	call   0x4ff4e0
539dd6:	83 c4 2c             	add    $0x2c,%esp
539dd9:	85 c0                	test   %eax,%eax
539ddb:	74 3b                	je     0x539e18
539ddd:	5f                   	pop    %edi
539dde:	5e                   	pop    %esi
539ddf:	b8 01 00 00 00       	mov    $0x1,%eax
539de4:	5b                   	pop    %ebx
539de5:	8b 8c 24 20 01 00 00 	mov    0x120(%esp),%ecx
539dec:	33 cc                	xor    %esp,%ecx
539dee:	e8 33 7c 09 00       	call   0x5d1a26
539df3:	81 c4 24 01 00 00    	add    $0x124,%esp
539df9:	c3                   	ret
539dfa:	68 a5 04 00 00       	push   $0x4a5
539dff:	68 34 a2 64 00       	push   $0x64a234
539e04:	68 92 00 00 00       	push   $0x92
539e09:	68 f0 00 00 00       	push   $0xf0
539e0e:	6a 10                	push   $0x10
539e10:	e8 6b f1 f9 ff       	call   0x4d8f80
539e15:	83 c4 14             	add    $0x14,%esp
539e18:	8b 8c 24 2c 01 00 00 	mov    0x12c(%esp),%ecx
539e1f:	33 c0                	xor    %eax,%eax
539e21:	5f                   	pop    %edi
539e22:	5e                   	pop    %esi
539e23:	5b                   	pop    %ebx
539e24:	33 cc                	xor    %esp,%ecx
539e26:	e8 fb 7b 09 00       	call   0x5d1a26
539e2b:	81 c4 24 01 00 00    	add    $0x124,%esp
539e31:	c3                   	ret
539e32:	cc                   	int3
539e33:	cc                   	int3
539e34:	cc                   	int3
539e35:	cc                   	int3
539e36:	cc                   	int3
539e37:	cc                   	int3
539e38:	cc                   	int3
539e39:	cc                   	int3
539e3a:	cc                   	int3
539e3b:	cc                   	int3
539e3c:	cc                   	int3
539e3d:	cc                   	int3
539e3e:	cc                   	int3
539e3f:	cc                   	int3
539e40:	56                   	push   %esi
539e41:	8b 74 24 08          	mov    0x8(%esp),%esi
539e45:	56                   	push   %esi
539e46:	e8 85 f7 f9 ff       	call   0x4d95d0
539e4b:	83 c4 04             	add    $0x4,%esp
539e4e:	85 c0                	test   %eax,%eax
539e50:	74 14                	je     0x539e66
539e52:	50                   	push   %eax
539e53:	e8 38 01 00 00       	call   0x539f90
539e58:	83 c4 04             	add    $0x4,%esp
539e5b:	85 c0                	test   %eax,%eax
539e5d:	74 07                	je     0x539e66
539e5f:	b8 01 00 00 00       	mov    $0x1,%eax
539e64:	5e                   	pop    %esi
539e65:	c3                   	ret
539e66:	83 7e 60 04          	cmpl   $0x4,0x60(%esi)
539e6a:	75 06                	jne    0x539e72
539e6c:	83 7e 64 00          	cmpl   $0x0,0x64(%esi)
539e70:	75 ed                	jne    0x539e5f
539e72:	33 c0                	xor    %eax,%eax
539e74:	5e                   	pop    %esi
539e75:	c3                   	ret
539e76:	cc                   	int3
539e77:	cc                   	int3
539e78:	cc                   	int3
539e79:	cc                   	int3
539e7a:	cc                   	int3
539e7b:	cc                   	int3
539e7c:	cc                   	int3
539e7d:	cc                   	int3
539e7e:	cc                   	int3
539e7f:	cc                   	int3
539e80:	b8 58 a1 64 00       	mov    $0x64a158,%eax
539e85:	c3                   	ret
539e86:	cc                   	int3
539e87:	cc                   	int3
539e88:	cc                   	int3
539e89:	cc                   	int3
539e8a:	cc                   	int3
539e8b:	cc                   	int3
539e8c:	cc                   	int3
539e8d:	cc                   	int3
539e8e:	cc                   	int3
539e8f:	cc                   	int3
539e90:	8b 44 24 04          	mov    0x4(%esp),%eax
539e94:	85 c0                	test   %eax,%eax
539e96:	74 0c                	je     0x539ea4
539e98:	ba 01 00 00 00       	mov    $0x1,%edx
539e9d:	8d 48 10             	lea    0x10(%eax),%ecx
539ea0:	f0 0f c1 11          	lock xadd %edx,(%ecx)
539ea4:	c3                   	ret
539ea5:	cc                   	int3
539ea6:	cc                   	int3
539ea7:	cc                   	int3
539ea8:	cc                   	int3
539ea9:	cc                   	int3
539eaa:	cc                   	int3
539eab:	cc                   	int3
539eac:	cc                   	int3
539ead:	cc                   	int3
539eae:	cc                   	int3
539eaf:	cc                   	int3
539eb0:	56                   	push   %esi
539eb1:	8b 74 24 08          	mov    0x8(%esp),%esi
539eb5:	85 f6                	test   %esi,%esi
539eb7:	74 3c                	je     0x539ef5
539eb9:	83 c9 ff             	or     $0xffffffff,%ecx
539ebc:	8d 46 10             	lea    0x10(%esi),%eax
539ebf:	f0 0f c1 08          	lock xadd %ecx,(%eax)
539ec3:	49                   	dec    %ecx
539ec4:	85 c9                	test   %ecx,%ecx
539ec6:	7f 2d                	jg     0x539ef5
539ec8:	68 ee 04 00 00       	push   $0x4ee
539ecd:	68 34 a2 64 00       	push   $0x64a234
539ed2:	ff 76 0c             	push   0xc(%esi)
539ed5:	e8 a6 68 fa ff       	call   0x4e0780
539eda:	ff 76 14             	push   0x14(%esi)
539edd:	e8 6e 80 fa ff       	call   0x4e1f50
539ee2:	68 f0 04 00 00       	push   $0x4f0
539ee7:	68 34 a2 64 00       	push   $0x64a234
539eec:	56                   	push   %esi
539eed:	e8 8e 68 fa ff       	call   0x4e0780
539ef2:	83 c4 1c             	add    $0x1c,%esp
539ef5:	5e                   	pop    %esi
539ef6:	c3                   	ret
539ef7:	cc                   	int3
539ef8:	cc                   	int3
539ef9:	cc                   	int3
539efa:	cc                   	int3
539efb:	cc                   	int3
539efc:	cc                   	int3
539efd:	cc                   	int3
539efe:	cc                   	int3
539eff:	cc                   	int3
539f00:	8b 54 24 08          	mov    0x8(%esp),%edx
539f04:	53                   	push   %ebx
539f05:	56                   	push   %esi
539f06:	8b 74 24 0c          	mov    0xc(%esp),%esi
539f0a:	8b 02                	mov    (%edx),%eax
539f0c:	57                   	push   %edi
539f0d:	8b 7c 24 18          	mov    0x18(%esp),%edi
539f11:	8b 0e                	mov    (%esi),%ecx
539f13:	f7 df                	neg    %edi
539f15:	23 c7                	and    %edi,%eax
539f17:	8b df                	mov    %edi,%ebx
539f19:	f7 d3                	not    %ebx
539f1b:	23 cb                	and    %ebx,%ecx
539f1d:	33 c8                	xor    %eax,%ecx
539f1f:	89 0e                	mov    %ecx,(%esi)
539f21:	8b 46 04             	mov    0x4(%esi),%eax
539f24:	8b 4a 04             	mov    0x4(%edx),%ecx
539f27:	23 c3                	and    %ebx,%eax
539f29:	23 cf                	and    %edi,%ecx
539f2b:	33 c8                	xor    %eax,%ecx
539f2d:	89 4e 04             	mov    %ecx,0x4(%esi)
539f30:	8b 46 08             	mov    0x8(%esi),%eax
539f33:	8b 4a 08             	mov    0x8(%edx),%ecx
539f36:	23 c3                	and    %ebx,%eax
539f38:	23 cf                	and    %edi,%ecx
539f3a:	33 c8                	xor    %eax,%ecx
539f3c:	8b c3                	mov    %ebx,%eax
539f3e:	89 4e 08             	mov    %ecx,0x8(%esi)
539f41:	23 46 0c             	and    0xc(%esi),%eax
539f44:	8b 4a 0c             	mov    0xc(%edx),%ecx
539f47:	23 cf                	and    %edi,%ecx
539f49:	33 c8                	xor    %eax,%ecx
539f4b:	89 4e 0c             	mov    %ecx,0xc(%esi)
539f4e:	8b 46 10             	mov    0x10(%esi),%eax
539f51:	8b 4a 10             	mov    0x10(%edx),%ecx
539f54:	23 c3                	and    %ebx,%eax
539f56:	23 cf                	and    %edi,%ecx
539f58:	33 c8                	xor    %eax,%ecx
539f5a:	89 4e 10             	mov    %ecx,0x10(%esi)
539f5d:	8b 46 14             	mov    0x14(%esi),%eax
539f60:	8b 4a 14             	mov    0x14(%edx),%ecx
539f63:	23 c3                	and    %ebx,%eax
539f65:	23 cf                	and    %edi,%ecx
539f67:	33 c8                	xor    %eax,%ecx
539f69:	89 4e 14             	mov    %ecx,0x14(%esi)
539f6c:	8b 46 18             	mov    0x18(%esi),%eax
539f6f:	8b 4a 18             	mov    0x18(%edx),%ecx
539f72:	23 c3                	and    %ebx,%eax
539f74:	23 cf                	and    %edi,%ecx
539f76:	33 c8                	xor    %eax,%ecx
539f78:	89 4e 18             	mov    %ecx,0x18(%esi)
539f7b:	8b 42 1c             	mov    0x1c(%edx),%eax
539f7e:	23 5e 1c             	and    0x1c(%esi),%ebx
539f81:	23 c7                	and    %edi,%eax
539f83:	33 c3                	xor    %ebx,%eax
539f85:	5f                   	pop    %edi
539f86:	89 46 1c             	mov    %eax,0x1c(%esi)
539f89:	5e                   	pop    %esi
539f8a:	5b                   	pop    %ebx
539f8b:	c3                   	ret
539f8c:	cc                   	int3
539f8d:	cc                   	int3
539f8e:	cc                   	int3
539f8f:	cc                   	int3
539f90:	57                   	push   %edi
539f91:	8b 7c 24 08          	mov    0x8(%esp),%edi
539f95:	ff 77 08             	push   0x8(%edi)
539f98:	e8 33 f6 f9 ff       	call   0x4d95d0
539f9d:	83 c4 04             	add    $0x4,%esp
539fa0:	83 f8 08             	cmp    $0x8,%eax
539fa3:	0f 85 b3 00 00 00    	jne    0x53a05c
539fa9:	ff 77 0c             	push   0xc(%edi)
539fac:	e8 1f f6 f9 ff       	call   0x4d95d0
539fb1:	83 c4 04             	add    $0x4,%esp
539fb4:	83 f8 08             	cmp    $0x8,%eax
539fb7:	0f 85 9f 00 00 00    	jne    0x53a05c
539fbd:	56                   	push   %esi
539fbe:	ff 77 08             	push   0x8(%edi)
539fc1:	e8 fa 60 fb ff       	call   0x4f00c0
539fc6:	8b d0                	mov    %eax,%edx
539fc8:	83 c4 04             	add    $0x4,%esp
539fcb:	8b 72 18             	mov    0x18(%edx),%esi
539fce:	8b 4a 08             	mov    0x8(%edx),%ecx
539fd1:	81 f6 c6 55 37 a5    	xor    $0xa53755c6,%esi
539fd7:	8b 42 04             	mov    0x4(%edx),%eax
539fda:	81 f1 01 b6 ed 5f    	xor    $0x5fedb601,%ecx
539fe0:	0b f1                	or     %ecx,%esi
539fe2:	35 d4 30 e7 79       	xor    $0x79e730d4,%eax
539fe7:	8b 4a 0c             	mov    0xc(%edx),%ecx
539fea:	81 f1 fc 95 ba 75    	xor    $0x75ba95fc,%ecx
539ff0:	0b f1                	or     %ecx,%esi
539ff2:	8b 4a 10             	mov    0x10(%edx),%ecx
539ff5:	81 f1 10 25 62 77    	xor    $0x77622510,%ecx
539ffb:	0b f1                	or     %ecx,%esi
539ffd:	0b f0                	or     %eax,%esi
539fff:	8b 42 1c             	mov    0x1c(%edx),%eax
53a002:	35 76 5f 90 18       	xor    $0x18905f76,%eax
53a007:	0b f0                	or     %eax,%esi
53a009:	8b 42 14             	mov    0x14(%edx),%eax
53a00c:	35 2b 73 fb 79       	xor    $0x79fb732b,%eax
53a011:	0b f0                	or     %eax,%esi
53a013:	8b 02                	mov    (%edx),%eax
53a015:	35 3c 14 a9 18       	xor    $0x18a9143c,%eax
53a01a:	0b f0                	or     %eax,%esi
53a01c:	8b c6                	mov    %esi,%eax
53a01e:	f7 d8                	neg    %eax
53a020:	0b c6                	or     %esi,%eax
53a022:	f7 d0                	not    %eax
53a024:	5e                   	pop    %esi
53a025:	85 c0                	test   %eax,%eax
53a027:	79 33                	jns    0x53a05c
53a029:	68 38 a1 64 00       	push   $0x64a138
53a02e:	ff 77 0c             	push   0xc(%edi)
53a031:	e8 8a 60 fb ff       	call   0x4f00c0
53a036:	83 c4 04             	add    $0x4,%esp
53a039:	50                   	push   %eax
53a03a:	e8 f1 0a 00 00       	call   0x53ab30
53a03f:	83 c4 08             	add    $0x8,%esp
53a042:	85 c0                	test   %eax,%eax
53a044:	74 16                	je     0x53a05c
53a046:	ff 77 10             	push   0x10(%edi)
53a049:	e8 42 0b 00 00       	call   0x53ab90
53a04e:	83 c4 04             	add    $0x4,%esp
53a051:	85 c0                	test   %eax,%eax
53a053:	74 07                	je     0x53a05c
53a055:	b8 01 00 00 00       	mov    $0x1,%eax
53a05a:	5f                   	pop    %edi
53a05b:	c3                   	ret
53a05c:	33 c0                	xor    %eax,%eax
53a05e:	5f                   	pop    %edi
53a05f:	c3                   	ret
53a060:	b8 c4 00 00 00       	mov    $0xc4,%eax
53a065:	e8 46 77 09 00       	call   0x5d17b0
53a06a:	a1 c0 14 69 00       	mov    0x6914c0,%eax
53a06f:	33 c4                	xor    %esp,%eax
53a071:	89 84 24 c0 00 00 00 	mov    %eax,0xc0(%esp)
53a078:	53                   	push   %ebx
53a079:	8b 9c 24 cc 00 00 00 	mov    0xcc(%esp),%ebx
53a080:	8d 44 24 04          	lea    0x4(%esp),%eax
53a084:	56                   	push   %esi
53a085:	57                   	push   %edi
53a086:	8b bc 24 d8 00 00 00 	mov    0xd8(%esp),%edi
53a08d:	57                   	push   %edi
53a08e:	50                   	push   %eax
53a08f:	e8 ec 83 f0 ff       	call   0x442480
53a094:	57                   	push   %edi
53a095:	8d 44 24 18          	lea    0x18(%esp),%eax
53a099:	50                   	push   %eax
53a09a:	8d 84 24 bc 00 00 00 	lea    0xbc(%esp),%eax
53a0a1:	50                   	push   %eax
53a0a2:	e8 a9 83 f0 ff       	call   0x442450
53a0a7:	8d 84 24 c0 00 00 00 	lea    0xc0(%esp),%eax
53a0ae:	50                   	push   %eax
53a0af:	8d 44 24 24          	lea    0x24(%esp),%eax
53a0b3:	50                   	push   %eax
53a0b4:	e8 c7 83 f0 ff       	call   0x442480
53a0b9:	8d 44 24 28          	lea    0x28(%esp),%eax
53a0bd:	50                   	push   %eax
53a0be:	50                   	push   %eax
53a0bf:	e8 bc 83 f0 ff       	call   0x442480
53a0c4:	8d 84 24 d0 00 00 00 	lea    0xd0(%esp),%eax
53a0cb:	50                   	push   %eax
53a0cc:	8d 44 24 34          	lea    0x34(%esp),%eax
53a0d0:	50                   	push   %eax
53a0d1:	8d 84 24 b8 00 00 00 	lea    0xb8(%esp),%eax
53a0d8:	50                   	push   %eax
53a0d9:	e8 72 83 f0 ff       	call   0x442450
53a0de:	8d 84 24 bc 00 00 00 	lea    0xbc(%esp),%eax
53a0e5:	50                   	push   %eax
53a0e6:	8d 44 24 40          	lea    0x40(%esp),%eax
53a0ea:	50                   	push   %eax
53a0eb:	e8 90 83 f0 ff       	call   0x442480
53a0f0:	8d 44 24 44          	lea    0x44(%esp),%eax
53a0f4:	50                   	push   %eax
53a0f5:	50                   	push   %eax
53a0f6:	e8 85 83 f0 ff       	call   0x442480
53a0fb:	83 c4 40             	add    $0x40,%esp
53a0fe:	8d 44 24 0c          	lea    0xc(%esp),%eax
53a102:	50                   	push   %eax
53a103:	50                   	push   %eax
53a104:	e8 77 83 f0 ff       	call   0x442480
53a109:	8d 44 24 14          	lea    0x14(%esp),%eax
53a10d:	50                   	push   %eax
53a10e:	50                   	push   %eax
53a10f:	e8 6c 83 f0 ff       	call   0x442480
53a114:	8d 84 24 9c 00 00 00 	lea    0x9c(%esp),%eax
53a11b:	50                   	push   %eax