40894f:	e8 a3 07 00 00       	call   0x4090f7
408954:	89 30                	mov    %esi,(%eax)
408956:	8b 77 04             	mov    0x4(%edi),%esi
408959:	e8 a2 07 00 00       	call   0x409100
40895e:	89 30                	mov    %esi,(%eax)
408960:	e8 da 38 00 00       	call   0x40c23f
408965:	cc                   	int3
408966:	83 25 60 69 42 00 00 	andl   $0x0,0x426960
40896d:	c3                   	ret
40896e:	53                   	push   %ebx
40896f:	56                   	push   %esi
408970:	be 90 3c 42 00       	mov    $0x423c90,%esi
408975:	bb 90 3c 42 00       	mov    $0x423c90,%ebx
40897a:	3b f3                	cmp    %ebx,%esi
40897c:	73 19                	jae    0x408997
40897e:	57                   	push   %edi
40897f:	8b 3e                	mov    (%esi),%edi
408981:	85 ff                	test   %edi,%edi
408983:	74 0a                	je     0x40898f
408985:	8b cf                	mov    %edi,%ecx
408987:	ff 15 50 c2 41 00    	call   *0x41c250
40898d:	ff d7                	call   *%edi
40898f:	83 c6 04             	add    $0x4,%esi
408992:	3b f3                	cmp    %ebx,%esi
408994:	72 e9                	jb     0x40897f
408996:	5f                   	pop    %edi
408997:	5e                   	pop    %esi
408998:	5b                   	pop    %ebx
408999:	c3                   	ret
40899a:	cc                   	int3
40899b:	cc                   	int3
40899c:	cc                   	int3
40899d:	cc                   	int3
40899e:	cc                   	int3
40899f:	cc                   	int3
4089a0:	53                   	push   %ebx
4089a1:	56                   	push   %esi
4089a2:	be 98 3c 42 00       	mov    $0x423c98,%esi
4089a7:	bb 98 3c 42 00       	mov    $0x423c98,%ebx
4089ac:	3b f3                	cmp    %ebx,%esi
4089ae:	73 19                	jae    0x4089c9
4089b0:	57                   	push   %edi
4089b1:	8b 3e                	mov    (%esi),%edi
4089b3:	85 ff                	test   %edi,%edi
4089b5:	74 0a                	je     0x4089c1
4089b7:	8b cf                	mov    %edi,%ecx
4089b9:	ff 15 50 c2 41 00    	call   *0x41c250
4089bf:	ff d7                	call   *%edi
4089c1:	83 c6 04             	add    $0x4,%esi
4089c4:	3b f3                	cmp    %ebx,%esi
4089c6:	72 e9                	jb     0x4089b1
4089c8:	5f                   	pop    %edi
4089c9:	5e                   	pop    %esi
4089ca:	5b                   	pop    %ebx
4089cb:	c3                   	ret
4089cc:	cc                   	int3
4089cd:	cc                   	int3
4089ce:	cc                   	int3
4089cf:	cc                   	int3
4089d0:	68 70 8d 40 00       	push   $0x408d70
4089d5:	64 ff 35 00 00 00 00 	push   %fs:0x0
4089dc:	8b 44 24 10          	mov    0x10(%esp),%eax
4089e0:	89 6c 24 10          	mov    %ebp,0x10(%esp)
4089e4:	8d 6c 24 10          	lea    0x10(%esp),%ebp
4089e8:	2b e0                	sub    %eax,%esp
4089ea:	53                   	push   %ebx
4089eb:	56                   	push   %esi
4089ec:	57                   	push   %edi
4089ed:	a1 18 60 42 00       	mov    0x426018,%eax
4089f2:	31 45 fc             	xor    %eax,-0x4(%ebp)
4089f5:	33 c5                	xor    %ebp,%eax
4089f7:	50                   	push   %eax
4089f8:	89 65 e8             	mov    %esp,-0x18(%ebp)
4089fb:	ff 75 f8             	push   -0x8(%ebp)
4089fe:	8b 45 fc             	mov    -0x4(%ebp),%eax
408a01:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
408a08:	89 45 f8             	mov    %eax,-0x8(%ebp)
408a0b:	8d 45 f0             	lea    -0x10(%ebp),%eax
408a0e:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
408a14:	c3                   	ret
408a15:	55                   	push   %ebp
408a16:	8b ec                	mov    %esp,%ebp
408a18:	83 25 64 69 42 00 00 	andl   $0x0,0x426964
408a1f:	83 ec 24             	sub    $0x24,%esp
408a22:	83 0d 10 60 42 00 01 	orl    $0x1,0x426010
408a29:	6a 0a                	push   $0xa
408a2b:	ff 15 5c c1 41 00    	call   *0x41c15c
408a31:	85 c0                	test   %eax,%eax
408a33:	0f 84 ac 01 00 00    	je     0x408be5
408a39:	83 65 f0 00          	andl   $0x0,-0x10(%ebp)
408a3d:	33 c0                	xor    %eax,%eax
408a3f:	53                   	push   %ebx
408a40:	56                   	push   %esi
408a41:	57                   	push   %edi
408a42:	33 c9                	xor    %ecx,%ecx
408a44:	8d 7d dc             	lea    -0x24(%ebp),%edi
408a47:	53                   	push   %ebx
408a48:	0f a2                	cpuid
408a4a:	8b f3                	mov    %ebx,%esi
408a4c:	5b                   	pop    %ebx
408a4d:	90                   	nop
408a4e:	89 07                	mov    %eax,(%edi)
408a50:	89 77 04             	mov    %esi,0x4(%edi)
408a53:	89 4f 08             	mov    %ecx,0x8(%edi)
408a56:	33 c9                	xor    %ecx,%ecx
408a58:	89 57 0c             	mov    %edx,0xc(%edi)
408a5b:	8b 45 dc             	mov    -0x24(%ebp),%eax
408a5e:	8b 7d e0             	mov    -0x20(%ebp),%edi
408a61:	89 45 f4             	mov    %eax,-0xc(%ebp)
408a64:	81 f7 47 65 6e 75    	xor    $0x756e6547,%edi
408a6a:	8b 45 e8             	mov    -0x18(%ebp),%eax
408a6d:	35 69 6e 65 49       	xor    $0x49656e69,%eax
408a72:	89 45 fc             	mov    %eax,-0x4(%ebp)
408a75:	8b 45 e4             	mov    -0x1c(%ebp),%eax
408a78:	35 6e 74 65 6c       	xor    $0x6c65746e,%eax
408a7d:	89 45 f8             	mov    %eax,-0x8(%ebp)
408a80:	33 c0                	xor    %eax,%eax
408a82:	40                   	inc    %eax
408a83:	53                   	push   %ebx
408a84:	0f a2                	cpuid
408a86:	8b f3                	mov    %ebx,%esi
408a88:	5b                   	pop    %ebx
408a89:	90                   	nop
408a8a:	8d 5d dc             	lea    -0x24(%ebp),%ebx
408a8d:	89 03                	mov    %eax,(%ebx)
408a8f:	8b 45 fc             	mov    -0x4(%ebp),%eax
408a92:	0b 45 f8             	or     -0x8(%ebp),%eax
408a95:	0b c7                	or     %edi,%eax
408a97:	89 73 04             	mov    %esi,0x4(%ebx)
408a9a:	89 4b 08             	mov    %ecx,0x8(%ebx)
408a9d:	89 53 0c             	mov    %edx,0xc(%ebx)
408aa0:	75 43                	jne    0x408ae5
408aa2:	8b 45 dc             	mov    -0x24(%ebp),%eax
408aa5:	25 f0 3f ff 0f       	and    $0xfff3ff0,%eax
408aaa:	3d c0 06 01 00       	cmp    $0x106c0,%eax
408aaf:	74 23                	je     0x408ad4
408ab1:	3d 60 06 02 00       	cmp    $0x20660,%eax
408ab6:	74 1c                	je     0x408ad4
408ab8:	3d 70 06 02 00       	cmp    $0x20670,%eax
408abd:	74 15                	je     0x408ad4
408abf:	3d 50 06 03 00       	cmp    $0x30650,%eax
408ac4:	74 0e                	je     0x408ad4
408ac6:	3d 60 06 03 00       	cmp    $0x30660,%eax
408acb:	74 07                	je     0x408ad4
408acd:	3d 70 06 03 00       	cmp    $0x30670,%eax
408ad2:	75 11                	jne    0x408ae5
408ad4:	8b 3d 68 69 42 00    	mov    0x426968,%edi
408ada:	83 cf 01             	or     $0x1,%edi
408add:	89 3d 68 69 42 00    	mov    %edi,0x426968
408ae3:	eb 06                	jmp    0x408aeb
408ae5:	8b 3d 68 69 42 00    	mov    0x426968,%edi
408aeb:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
408aee:	6a 07                	push   $0x7
408af0:	58                   	pop    %eax
408af1:	89 4d fc             	mov    %ecx,-0x4(%ebp)
408af4:	39 45 f4             	cmp    %eax,-0xc(%ebp)
408af7:	7c 30                	jl     0x408b29
408af9:	33 c9                	xor    %ecx,%ecx
408afb:	53                   	push   %ebx
408afc:	0f a2                	cpuid
408afe:	8b f3                	mov    %ebx,%esi
408b00:	5b                   	pop    %ebx
408b01:	90                   	nop
408b02:	8d 5d dc             	lea    -0x24(%ebp),%ebx
408b05:	89 03                	mov    %eax,(%ebx)
408b07:	89 73 04             	mov    %esi,0x4(%ebx)
408b0a:	89 4b 08             	mov    %ecx,0x8(%ebx)
408b0d:	8b 4d fc             	mov    -0x4(%ebp),%ecx
408b10:	89 53 0c             	mov    %edx,0xc(%ebx)
408b13:	8b 5d e0             	mov    -0x20(%ebp),%ebx
408b16:	f7 c3 00 02 00 00    	test   $0x200,%ebx
408b1c:	74 0e                	je     0x408b2c
408b1e:	83 cf 02             	or     $0x2,%edi
408b21:	89 3d 68 69 42 00    	mov    %edi,0x426968
408b27:	eb 03                	jmp    0x408b2c
408b29:	8b 5d f0             	mov    -0x10(%ebp),%ebx
408b2c:	a1 10 60 42 00       	mov    0x426010,%eax
408b31:	83 c8 02             	or     $0x2,%eax
408b34:	c7 05 64 69 42 00 01 	movl   $0x1,0x426964
408b3b:	00 00 00
408b3e:	a3 10 60 42 00       	mov    %eax,0x426010
408b43:	f7 c1 00 00 10 00    	test   $0x100000,%ecx
408b49:	0f 84 93 00 00 00    	je     0x408be2
408b4f:	83 c8 04             	or     $0x4,%eax
408b52:	c7 05 64 69 42 00 02 	movl   $0x2,0x426964
408b59:	00 00 00
408b5c:	a3 10 60 42 00       	mov    %eax,0x426010
408b61:	f7 c1 00 00 00 08    	test   $0x8000000,%ecx
408b67:	74 79                	je     0x408be2
408b69:	f7 c1 00 00 00 10    	test   $0x10000000,%ecx
408b6f:	74 71                	je     0x408be2
408b71:	33 c9                	xor    %ecx,%ecx
408b73:	0f 01 d0             	xgetbv
408b76:	89 45 ec             	mov    %eax,-0x14(%ebp)
408b79:	89 55 f0             	mov    %edx,-0x10(%ebp)
408b7c:	8b 45 ec             	mov    -0x14(%ebp),%eax
408b7f:	8b 4d f0             	mov    -0x10(%ebp),%ecx
408b82:	6a 06                	push   $0x6
408b84:	5e                   	pop    %esi
408b85:	23 c6                	and    %esi,%eax
408b87:	3b c6                	cmp    %esi,%eax
408b89:	75 57                	jne    0x408be2
408b8b:	a1 10 60 42 00       	mov    0x426010,%eax
408b90:	83 c8 08             	or     $0x8,%eax
408b93:	c7 05 64 69 42 00 03 	movl   $0x3,0x426964
408b9a:	00 00 00
408b9d:	a3 10 60 42 00       	mov    %eax,0x426010
408ba2:	f6 c3 20             	test   $0x20,%bl
408ba5:	74 3b                	je     0x408be2
408ba7:	83 c8 20             	or     $0x20,%eax
408baa:	c7 05 64 69 42 00 05 	movl   $0x5,0x426964
408bb1:	00 00 00
408bb4:	a3 10 60 42 00       	mov    %eax,0x426010
408bb9:	b8 00 00 03 d0       	mov    $0xd0030000,%eax
408bbe:	23 d8                	and    %eax,%ebx
408bc0:	3b d8                	cmp    %eax,%ebx
408bc2:	75 1e                	jne    0x408be2
408bc4:	8b 45 ec             	mov    -0x14(%ebp),%eax
408bc7:	ba e0 00 00 00       	mov    $0xe0,%edx
408bcc:	8b 4d f0             	mov    -0x10(%ebp),%ecx
408bcf:	23 c2                	and    %edx,%eax
408bd1:	3b c2                	cmp    %edx,%eax
408bd3:	75 0d                	jne    0x408be2
408bd5:	83 0d 10 60 42 00 40 	orl    $0x40,0x426010
408bdc:	89 35 64 69 42 00    	mov    %esi,0x426964
408be2:	5f                   	pop    %edi
408be3:	5e                   	pop    %esi
408be4:	5b                   	pop    %ebx
408be5:	33 c0                	xor    %eax,%eax
408be7:	c9                   	leave
408be8:	c3                   	ret
408be9:	33 c0                	xor    %eax,%eax
408beb:	39 05 18 74 42 00    	cmp    %eax,0x427418
408bf1:	0f 95 c0             	setne  %al
408bf4:	c3                   	ret
408bf5:	3b 0d 18 60 42 00    	cmp    0x426018,%ecx
408bfb:	75 01                	jne    0x408bfe
408bfd:	c3                   	ret
408bfe:	e9 28 00 00 00       	jmp    0x408c2b
408c03:	55                   	push   %ebp
408c04:	8b ec                	mov    %esp,%ebp
408c06:	6a 00                	push   $0x0
408c08:	ff 15 64 c1 41 00    	call   *0x41c164
408c0e:	ff 75 08             	push   0x8(%ebp)
408c11:	ff 15 68 c1 41 00    	call   *0x41c168
408c17:	68 09 04 00 c0       	push   $0xc0000409
408c1c:	ff 15 54 c1 41 00    	call   *0x41c154
408c22:	50                   	push   %eax
408c23:	ff 15 50 c1 41 00    	call   *0x41c150
408c29:	5d                   	pop    %ebp
408c2a:	c3                   	ret
408c2b:	55                   	push   %ebp
408c2c:	8b ec                	mov    %esp,%ebp
408c2e:	81 ec 24 03 00 00    	sub    $0x324,%esp
408c34:	6a 17                	push   $0x17
408c36:	ff 15 5c c1 41 00    	call   *0x41c15c
408c3c:	85 c0                	test   %eax,%eax
408c3e:	74 05                	je     0x408c45
408c40:	6a 02                	push   $0x2
408c42:	59                   	pop    %ecx
408c43:	cd 29                	int    $0x29
408c45:	a3 70 6a 42 00       	mov    %eax,0x426a70
408c4a:	89 0d 6c 6a 42 00    	mov    %ecx,0x426a6c
408c50:	89 15 68 6a 42 00    	mov    %edx,0x426a68
408c56:	89 1d 64 6a 42 00    	mov    %ebx,0x426a64
408c5c:	89 35 60 6a 42 00    	mov    %esi,0x426a60
408c62:	89 3d 5c 6a 42 00    	mov    %edi,0x426a5c
408c68:	66 8c 15 88 6a 42 00 	data16 mov %ss,0x426a88
408c6f:	66 8c 0d 7c 6a 42 00 	data16 mov %cs,0x426a7c
408c76:	66 8c 1d 58 6a 42 00 	data16 mov %ds,0x426a58
408c7d:	66 8c 05 54 6a 42 00 	data16 mov %es,0x426a54
408c84:	66 8c 25 50 6a 42 00 	data16 mov %fs,0x426a50
408c8b:	66 8c 2d 4c 6a 42 00 	data16 mov %gs,0x426a4c
408c92:	9c                   	pushf
408c93:	8f 05 80 6a 42 00    	pop    0x426a80
408c99:	8b 45 00             	mov    0x0(%ebp),%eax
408c9c:	a3 74 6a 42 00       	mov    %eax,0x426a74
408ca1:	8b 45 04             	mov    0x4(%ebp),%eax
408ca4:	a3 78 6a 42 00       	mov    %eax,0x426a78
408ca9:	8d 45 08             	lea    0x8(%ebp),%eax
408cac:	a3 84 6a 42 00       	mov    %eax,0x426a84
408cb1:	8b 85 dc fc ff ff    	mov    -0x324(%ebp),%eax
408cb7:	c7 05 c0 69 42 00 01 	movl   $0x10001,0x4269c0
408cbe:	00 01 00
408cc1:	a1 78 6a 42 00       	mov    0x426a78,%eax
408cc6:	a3 7c 69 42 00       	mov    %eax,0x42697c
408ccb:	c7 05 70 69 42 00 09 	movl   $0xc0000409,0x426970
408cd2:	04 00 c0
408cd5:	c7 05 74 69 42 00 01 	movl   $0x1,0x426974
408cdc:	00 00 00
408cdf:	c7 05 80 69 42 00 01 	movl   $0x1,0x426980
408ce6:	00 00 00
408ce9:	6a 04                	push   $0x4
408ceb:	58                   	pop    %eax
408cec:	6b c0 00             	imul   $0x0,%eax,%eax
408cef:	c7 80 84 69 42 00 02 	movl   $0x2,0x426984(%eax)
408cf6:	00 00 00
408cf9:	6a 04                	push   $0x4
408cfb:	58                   	pop    %eax
408cfc:	6b c0 00             	imul   $0x0,%eax,%eax
408cff:	8b 0d 18 60 42 00    	mov    0x426018,%ecx
408d05:	89 4c 05 f8          	mov    %ecx,-0x8(%ebp,%eax,1)
408d09:	6a 04                	push   $0x4
408d0b:	58                   	pop    %eax
408d0c:	c1 e0 00             	shl    $0x0,%eax
408d0f:	8b 0d 14 60 42 00    	mov    0x426014,%ecx
408d15:	89 4c 05 f8          	mov    %ecx,-0x8(%ebp,%eax,1)
408d19:	68 d0 c4 41 00       	push   $0x41c4d0
408d1e:	e8 e0 fe ff ff       	call   0x408c03
408d23:	c9                   	leave
408d24:	c3                   	ret
408d25:	cc                   	int3
408d26:	cc                   	int3
408d27:	cc                   	int3
408d28:	cc                   	int3
408d29:	cc                   	int3
408d2a:	cc                   	int3
408d2b:	cc                   	int3
408d2c:	cc                   	int3
408d2d:	cc                   	int3
408d2e:	cc                   	int3
408d2f:	cc                   	int3
408d30:	55                   	push   %ebp
408d31:	8b ec                	mov    %esp,%ebp
408d33:	56                   	push   %esi
408d34:	8b 75 08             	mov    0x8(%ebp),%esi
408d37:	57                   	push   %edi
408d38:	8b 7d 0c             	mov    0xc(%ebp),%edi
408d3b:	8b 06                	mov    (%esi),%eax
408d3d:	83 f8 fe             	cmp    $0xfffffffe,%eax
408d40:	74 0d                	je     0x408d4f
408d42:	8b 4e 04             	mov    0x4(%esi),%ecx
408d45:	03 cf                	add    %edi,%ecx
408d47:	33 0c 38             	xor    (%eax,%edi,1),%ecx
408d4a:	e8 a6 fe ff ff       	call   0x408bf5
408d4f:	8b 46 08             	mov    0x8(%esi),%eax
408d52:	8b 4e 0c             	mov    0xc(%esi),%ecx
408d55:	03 cf                	add    %edi,%ecx
408d57:	33 0c 38             	xor    (%eax,%edi,1),%ecx
408d5a:	5f                   	pop    %edi
408d5b:	5e                   	pop    %esi
408d5c:	5d                   	pop    %ebp
408d5d:	e9 93 fe ff ff       	jmp    0x408bf5
408d62:	cc                   	int3
408d63:	cc                   	int3
408d64:	cc                   	int3
408d65:	cc                   	int3
408d66:	cc                   	int3
408d67:	cc                   	int3
408d68:	cc                   	int3