402b11:	83 f8 1f             	cmp    $0x1f,%eax
402b14:	77 2f                	ja     0x402b45
402b16:	eb 04                	jmp    0x402b1c
402b18:	b3 01                	mov    $0x1,%bl
402b1a:	eb 98                	jmp    0x402ab4
402b1c:	51                   	push   %ecx
402b1d:	52                   	push   %edx
402b1e:	e8 e5 6e 06 00       	call   0x469a08
402b23:	83 c4 08             	add    $0x8,%esp
402b26:	8a c3                	mov    %bl,%al
402b28:	8b 4d f4             	mov    -0xc(%ebp),%ecx
402b2b:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
402b32:	59                   	pop    %ecx
402b33:	5e                   	pop    %esi
402b34:	5b                   	pop    %ebx
402b35:	8b 4d f0             	mov    -0x10(%ebp),%ecx
402b38:	33 cd                	xor    %ebp,%ecx
402b3a:	e8 8b 6e 06 00       	call   0x4699ca
402b3f:	8b e5                	mov    %ebp,%esp
402b41:	5d                   	pop    %ebp
402b42:	c2 04 00             	ret    $0x4
402b45:	e8 e7 6a 07 00       	call   0x479631
402b4a:	cc                   	int3
402b4b:	cc                   	int3
402b4c:	cc                   	int3
402b4d:	cc                   	int3
402b4e:	cc                   	int3
402b4f:	cc                   	int3
402b50:	55                   	push   %ebp
402b51:	8b ec                	mov    %esp,%ebp
402b53:	6a ff                	push   $0xffffffff
402b55:	68 ab 74 49 00       	push   $0x4974ab
402b5a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
402b60:	50                   	push   %eax
402b61:	83 ec 18             	sub    $0x18,%esp
402b64:	a1 14 40 4c 00       	mov    0x4c4014,%eax
402b69:	33 c5                	xor    %ebp,%eax
402b6b:	89 45 f0             	mov    %eax,-0x10(%ebp)
402b6e:	56                   	push   %esi
402b6f:	50                   	push   %eax
402b70:	8d 45 f4             	lea    -0xc(%ebp),%eax
402b73:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
402b79:	a1 88 8c 4c 00       	mov    0x4c8c88,%eax
402b7e:	85 c0                	test   %eax,%eax
402b80:	75 3c                	jne    0x402bbe
402b82:	68 84 00 00 00       	push   $0x84
402b87:	e8 4c 6e 06 00       	call   0x4699d8
402b8c:	8b f0                	mov    %eax,%esi
402b8e:	83 c4 04             	add    $0x4,%esp
402b91:	89 75 dc             	mov    %esi,-0x24(%ebp)
402b94:	68 84 00 00 00       	push   $0x84
402b99:	6a 00                	push   $0x0
402b9b:	56                   	push   %esi
402b9c:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
402ba3:	e8 08 90 06 00       	call   0x46bbb0
402ba8:	83 c4 0c             	add    $0xc,%esp
402bab:	8b ce                	mov    %esi,%ecx
402bad:	e8 ce 30 00 00       	call   0x405c80
402bb2:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
402bb9:	a3 88 8c 4c 00       	mov    %eax,0x4c8c88
402bbe:	c7 05 94 8c 4c 00 00 	movl   $0x0,0x4c8c94
402bc5:	00 00 00
402bc8:	8d 48 04             	lea    0x4(%eax),%ecx
402bcb:	89 0d 98 8c 4c 00    	mov    %ecx,0x4c8c98
402bd1:	85 c0                	test   %eax,%eax
402bd3:	75 3c                	jne    0x402c11
402bd5:	68 84 00 00 00       	push   $0x84
402bda:	e8 f9 6d 06 00       	call   0x4699d8
402bdf:	8b f0                	mov    %eax,%esi
402be1:	83 c4 04             	add    $0x4,%esp
402be4:	89 75 dc             	mov    %esi,-0x24(%ebp)
402be7:	68 84 00 00 00       	push   $0x84
402bec:	6a 00                	push   $0x0
402bee:	56                   	push   %esi
402bef:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
402bf6:	e8 b5 8f 06 00       	call   0x46bbb0
402bfb:	83 c4 0c             	add    $0xc,%esp
402bfe:	8b ce                	mov    %esi,%ecx
402c00:	e8 7b 30 00 00       	call   0x405c80
402c05:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
402c0c:	a3 88 8c 4c 00       	mov    %eax,0x4c8c88
402c11:	8b 48 04             	mov    0x4(%eax),%ecx
402c14:	83 c0 04             	add    $0x4,%eax
402c17:	68 5c f2 4a 00       	push   $0x4af25c
402c1c:	50                   	push   %eax
402c1d:	8b 71 14             	mov    0x14(%ecx),%esi
402c20:	8b ce                	mov    %esi,%ecx
402c22:	ff 15 d4 e2 49 00    	call   *0x49e2d4
402c28:	ff d6                	call   *%esi
402c2a:	83 c4 08             	add    $0x8,%esp
402c2d:	c7 45 e0 fc ec 4a 00 	movl   $0x4aecfc,-0x20(%ebp)
402c34:	8d 45 e0             	lea    -0x20(%ebp),%eax
402c37:	c7 45 e4 b0 18 40 00 	movl   $0x4018b0,-0x1c(%ebp)
402c3e:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
402c45:	c7 45 ec 00 00 00 00 	movl   $0x0,-0x14(%ebp)
402c4c:	50                   	push   %eax
402c4d:	ff 15 2c e0 49 00    	call   *0x49e02c
402c53:	85 c0                	test   %eax,%eax
402c55:	75 08                	jne    0x402c5f
402c57:	ff 15 30 e1 49 00    	call   *0x49e130
402c5d:	eb 66                	jmp    0x402cc5
402c5f:	a1 88 8c 4c 00       	mov    0x4c8c88,%eax
402c64:	85 c0                	test   %eax,%eax
402c66:	75 3c                	jne    0x402ca4
402c68:	68 84 00 00 00       	push   $0x84
402c6d:	e8 66 6d 06 00       	call   0x4699d8
402c72:	8b f0                	mov    %eax,%esi
402c74:	83 c4 04             	add    $0x4,%esp
402c77:	89 75 dc             	mov    %esi,-0x24(%ebp)
402c7a:	68 84 00 00 00       	push   $0x84
402c7f:	6a 00                	push   $0x0
402c81:	56                   	push   %esi
402c82:	c7 45 fc 02 00 00 00 	movl   $0x2,-0x4(%ebp)
402c89:	e8 22 8f 06 00       	call   0x46bbb0
402c8e:	83 c4 0c             	add    $0xc,%esp
402c91:	8b ce                	mov    %esi,%ecx
402c93:	e8 e8 2f 00 00       	call   0x405c80
402c98:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
402c9f:	a3 88 8c 4c 00       	mov    %eax,0x4c8c88
402ca4:	8b 48 04             	mov    0x4(%eax),%ecx
402ca7:	83 c0 04             	add    $0x4,%eax
402caa:	68 78 f2 4a 00       	push   $0x4af278
402caf:	50                   	push   %eax
402cb0:	8b 71 14             	mov    0x14(%ecx),%esi
402cb3:	8b ce                	mov    %esi,%ecx
402cb5:	ff 15 d4 e2 49 00    	call   *0x49e2d4
402cbb:	ff d6                	call   *%esi
402cbd:	83 c4 08             	add    $0x8,%esp
402cc0:	b8 01 00 00 00       	mov    $0x1,%eax
402cc5:	8b 4d f4             	mov    -0xc(%ebp),%ecx
402cc8:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
402ccf:	59                   	pop    %ecx
402cd0:	5e                   	pop    %esi
402cd1:	8b 4d f0             	mov    -0x10(%ebp),%ecx
402cd4:	33 cd                	xor    %ebp,%ecx
402cd6:	e8 ef 6c 06 00       	call   0x4699ca
402cdb:	8b e5                	mov    %ebp,%esp
402cdd:	5d                   	pop    %ebp
402cde:	c3                   	ret
402cdf:	cc                   	int3
402ce0:	e9 9b 00 00 00       	jmp    0x402d80
402ce5:	cc                   	int3
402ce6:	cc                   	int3
402ce7:	cc                   	int3
402ce8:	cc                   	int3
402ce9:	cc                   	int3
402cea:	cc                   	int3
402ceb:	cc                   	int3
402cec:	cc                   	int3
402ced:	cc                   	int3
402cee:	cc                   	int3
402cef:	cc                   	int3
402cf0:	55                   	push   %ebp
402cf1:	8b ec                	mov    %esp,%ebp
402cf3:	56                   	push   %esi
402cf4:	57                   	push   %edi
402cf5:	8b 7d 08             	mov    0x8(%ebp),%edi
402cf8:	8b f1                	mov    %ecx,%esi
402cfa:	3b f7                	cmp    %edi,%esi
402cfc:	74 65                	je     0x402d63
402cfe:	8b 4e 14             	mov    0x14(%esi),%ecx
402d01:	83 f9 08             	cmp    $0x8,%ecx
402d04:	72 2d                	jb     0x402d33
402d06:	8b 06                	mov    (%esi),%eax
402d08:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
402d0f:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
402d15:	72 12                	jb     0x402d29
402d17:	8b 50 fc             	mov    -0x4(%eax),%edx
402d1a:	83 c1 23             	add    $0x23,%ecx
402d1d:	2b c2                	sub    %edx,%eax
402d1f:	83 c0 fc             	add    $0xfffffffc,%eax
402d22:	83 f8 1f             	cmp    $0x1f,%eax
402d25:	77 44                	ja     0x402d6b
402d27:	8b c2                	mov    %edx,%eax
402d29:	51                   	push   %ecx
402d2a:	50                   	push   %eax
402d2b:	e8 d8 6c 06 00       	call   0x469a08
402d30:	83 c4 08             	add    $0x8,%esp
402d33:	c7 46 10 00 00 00 00 	movl   $0x0,0x10(%esi)
402d3a:	33 c0                	xor    %eax,%eax
402d3c:	c7 46 14 07 00 00 00 	movl   $0x7,0x14(%esi)
402d43:	66 89 06             	mov    %ax,(%esi)
402d46:	0f 10 07             	movups (%edi),%xmm0
402d49:	0f 11 06             	movups %xmm0,(%esi)
402d4c:	f3 0f 7e 47 10       	movq   0x10(%edi),%xmm0
402d51:	66 0f d6 46 10       	movq   %xmm0,0x10(%esi)
402d56:	89 47 10             	mov    %eax,0x10(%edi)
402d59:	c7 47 14 07 00 00 00 	movl   $0x7,0x14(%edi)
402d60:	66 89 07             	mov    %ax,(%edi)
402d63:	5f                   	pop    %edi
402d64:	8b c6                	mov    %esi,%eax
402d66:	5e                   	pop    %esi
402d67:	5d                   	pop    %ebp
402d68:	c2 04 00             	ret    $0x4
402d6b:	e8 c1 68 07 00       	call   0x479631
402d70:	cc                   	int3
402d71:	cc                   	int3
402d72:	cc                   	int3
402d73:	cc                   	int3
402d74:	cc                   	int3
402d75:	cc                   	int3
402d76:	cc                   	int3
402d77:	cc                   	int3
402d78:	cc                   	int3
402d79:	cc                   	int3
402d7a:	cc                   	int3
402d7b:	cc                   	int3
402d7c:	cc                   	int3
402d7d:	cc                   	int3
402d7e:	cc                   	int3
402d7f:	cc                   	int3
402d80:	57                   	push   %edi
402d81:	8b f9                	mov    %ecx,%edi
402d83:	8b 0f                	mov    (%edi),%ecx
402d85:	85 c9                	test   %ecx,%ecx
402d87:	74 64                	je     0x402ded
402d89:	8b 57 04             	mov    0x4(%edi),%edx
402d8c:	56                   	push   %esi
402d8d:	51                   	push   %ecx
402d8e:	e8 3d 03 00 00       	call   0x4030d0
402d93:	8b 4f 08             	mov    0x8(%edi),%ecx
402d96:	b8 ab aa aa 2a       	mov    $0x2aaaaaab,%eax
402d9b:	8b 37                	mov    (%edi),%esi
402d9d:	83 c4 04             	add    $0x4,%esp
402da0:	2b ce                	sub    %esi,%ecx
402da2:	f7 e9                	imul   %ecx
402da4:	c1 fa 02             	sar    $0x2,%edx
402da7:	8b c2                	mov    %edx,%eax
402da9:	c1 e8 1f             	shr    $0x1f,%eax
402dac:	03 c2                	add    %edx,%eax
402dae:	8d 0c 40             	lea    (%eax,%eax,2),%ecx
402db1:	c1 e1 03             	shl    $0x3,%ecx
402db4:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
402dba:	72 12                	jb     0x402dce
402dbc:	8b 56 fc             	mov    -0x4(%esi),%edx
402dbf:	83 c1 23             	add    $0x23,%ecx
402dc2:	2b f2                	sub    %edx,%esi
402dc4:	8d 46 fc             	lea    -0x4(%esi),%eax
402dc7:	83 f8 1f             	cmp    $0x1f,%eax
402dca:	77 23                	ja     0x402def
402dcc:	8b f2                	mov    %edx,%esi
402dce:	51                   	push   %ecx
402dcf:	56                   	push   %esi
402dd0:	e8 33 6c 06 00       	call   0x469a08
402dd5:	83 c4 08             	add    $0x8,%esp
402dd8:	c7 07 00 00 00 00    	movl   $0x0,(%edi)
402dde:	c7 47 04 00 00 00 00 	movl   $0x0,0x4(%edi)
402de5:	c7 47 08 00 00 00 00 	movl   $0x0,0x8(%edi)
402dec:	5e                   	pop    %esi
402ded:	5f                   	pop    %edi
402dee:	c3                   	ret
402def:	e8 3d 68 07 00       	call   0x479631
402df4:	cc                   	int3
402df5:	cc                   	int3
402df6:	cc                   	int3
402df7:	cc                   	int3
402df8:	cc                   	int3
402df9:	cc                   	int3
402dfa:	cc                   	int3
402dfb:	cc                   	int3
402dfc:	cc                   	int3
402dfd:	cc                   	int3
402dfe:	cc                   	int3
402dff:	cc                   	int3
402e00:	55                   	push   %ebp
402e01:	8b ec                	mov    %esp,%ebp
402e03:	83 ec 0c             	sub    $0xc,%esp
402e06:	8b 45 0c             	mov    0xc(%ebp),%eax
402e09:	8b 55 08             	mov    0x8(%ebp),%edx
402e0c:	53                   	push   %ebx
402e0d:	56                   	push   %esi
402e0e:	57                   	push   %edi
402e0f:	8b f9                	mov    %ecx,%edi
402e11:	89 55 f4             	mov    %edx,-0xc(%ebp)
402e14:	89 45 f8             	mov    %eax,-0x8(%ebp)
402e17:	8b 5f 14             	mov    0x14(%edi),%ebx
402e1a:	3b c3                	cmp    %ebx,%eax
402e1c:	77 32                	ja     0x402e50
402e1e:	89 7d fc             	mov    %edi,-0x4(%ebp)
402e21:	83 fb 08             	cmp    $0x8,%ebx
402e24:	72 05                	jb     0x402e2b
402e26:	8b 0f                	mov    (%edi),%ecx
402e28:	89 4d fc             	mov    %ecx,-0x4(%ebp)
402e2b:	8d 34 00             	lea    (%eax,%eax,1),%esi
402e2e:	89 47 10             	mov    %eax,0x10(%edi)
402e31:	56                   	push   %esi
402e32:	52                   	push   %edx
402e33:	51                   	push   %ecx
402e34:	e8 e7 87 06 00       	call   0x46b620
402e39:	8b 45 fc             	mov    -0x4(%ebp),%eax
402e3c:	83 c4 0c             	add    $0xc,%esp
402e3f:	33 c9                	xor    %ecx,%ecx
402e41:	66 89 0c 06          	mov    %cx,(%esi,%eax,1)
402e45:	8b c7                	mov    %edi,%eax
402e47:	5f                   	pop    %edi
402e48:	5e                   	pop    %esi
402e49:	5b                   	pop    %ebx
402e4a:	8b e5                	mov    %ebp,%esp
402e4c:	5d                   	pop    %ebp
402e4d:	c2 08 00             	ret    $0x8
402e50:	3d fe ff ff 7f       	cmp    $0x7ffffffe,%eax
402e55:	0f 87 a9 00 00 00    	ja     0x402f04
402e5b:	8b f0                	mov    %eax,%esi
402e5d:	83 ce 07             	or     $0x7,%esi
402e60:	81 fe fe ff ff 7f    	cmp    $0x7ffffffe,%esi
402e66:	76 07                	jbe    0x402e6f
402e68:	be fe ff ff 7f       	mov    $0x7ffffffe,%esi
402e6d:	eb 1e                	jmp    0x402e8d
402e6f:	8b cb                	mov    %ebx,%ecx
402e71:	b8 fe ff ff 7f       	mov    $0x7ffffffe,%eax
402e76:	d1 e9                	shr    $1,%ecx
402e78:	2b c1                	sub    %ecx,%eax
402e7a:	3b d8                	cmp    %eax,%ebx
402e7c:	76 07                	jbe    0x402e85
402e7e:	be fe ff ff 7f       	mov    $0x7ffffffe,%esi
402e83:	eb 08                	jmp    0x402e8d
402e85:	8d 04 19             	lea    (%ecx,%ebx,1),%eax
402e88:	3b f0                	cmp    %eax,%esi
402e8a:	0f 42 f0             	cmovb  %eax,%esi
402e8d:	8d 46 01             	lea    0x1(%esi),%eax
402e90:	8b cf                	mov    %edi,%ecx
402e92:	50                   	push   %eax
402e93:	e8 78 f2 ff ff       	call   0x402110
402e98:	8b 4d f8             	mov    -0x8(%ebp),%ecx
402e9b:	89 77 14             	mov    %esi,0x14(%edi)
402e9e:	89 45 fc             	mov    %eax,-0x4(%ebp)
402ea1:	89 4f 10             	mov    %ecx,0x10(%edi)
402ea4:	8d 34 09             	lea    (%ecx,%ecx,1),%esi
402ea7:	56                   	push   %esi
402ea8:	ff 75 f4             	push   -0xc(%ebp)
402eab:	50                   	push   %eax
402eac:	e8 6f 87 06 00       	call   0x46b620
402eb1:	8b 45 fc             	mov    -0x4(%ebp),%eax
402eb4:	33 c9                	xor    %ecx,%ecx
402eb6:	83 c4 0c             	add    $0xc,%esp
402eb9:	66 89 0c 06          	mov    %cx,(%esi,%eax,1)
402ebd:	83 fb 08             	cmp    $0x8,%ebx
402ec0:	72 30                	jb     0x402ef2
402ec2:	8b 07                	mov    (%edi),%eax
402ec4:	8d 1c 5d 02 00 00 00 	lea    0x2(,%ebx,2),%ebx
402ecb:	81 fb 00 10 00 00    	cmp    $0x1000,%ebx
402ed1:	72 12                	jb     0x402ee5
402ed3:	8b 48 fc             	mov    -0x4(%eax),%ecx
402ed6:	83 c3 23             	add    $0x23,%ebx
402ed9:	2b c1                	sub    %ecx,%eax
402edb:	83 c0 fc             	add    $0xfffffffc,%eax
402ede:	83 f8 1f             	cmp    $0x1f,%eax
402ee1:	77 1c                	ja     0x402eff
402ee3:	8b c1                	mov    %ecx,%eax
402ee5:	53                   	push   %ebx