403c22:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
403c26:	a1 0c 30 42 00       	mov    0x42300c,%eax
403c2b:	56                   	push   %esi
403c2c:	57                   	push   %edi
403c2d:	bf 4e e6 40 bb       	mov    $0xbb40e64e,%edi
403c32:	be 00 00 ff ff       	mov    $0xffff0000,%esi
403c37:	3b c7                	cmp    %edi,%eax
403c39:	74 0d                	je     0x403c48
403c3b:	85 c6                	test   %eax,%esi
403c3d:	74 09                	je     0x403c48
403c3f:	f7 d0                	not    %eax
403c41:	a3 08 30 42 00       	mov    %eax,0x423008
403c46:	eb 66                	jmp    0x403cae
403c48:	8d 45 f4             	lea    -0xc(%ebp),%eax
403c4b:	50                   	push   %eax
403c4c:	ff 15 d4 b0 41 00    	call   *0x41b0d4
403c52:	8b 45 f8             	mov    -0x8(%ebp),%eax
403c55:	33 45 f4             	xor    -0xc(%ebp),%eax
403c58:	89 45 fc             	mov    %eax,-0x4(%ebp)
403c5b:	ff 15 d0 b0 41 00    	call   *0x41b0d0
403c61:	31 45 fc             	xor    %eax,-0x4(%ebp)
403c64:	ff 15 cc b0 41 00    	call   *0x41b0cc
403c6a:	31 45 fc             	xor    %eax,-0x4(%ebp)
403c6d:	8d 45 ec             	lea    -0x14(%ebp),%eax
403c70:	50                   	push   %eax
403c71:	ff 15 c8 b0 41 00    	call   *0x41b0c8
403c77:	8b 4d f0             	mov    -0x10(%ebp),%ecx
403c7a:	8d 45 fc             	lea    -0x4(%ebp),%eax
403c7d:	33 4d ec             	xor    -0x14(%ebp),%ecx
403c80:	33 4d fc             	xor    -0x4(%ebp),%ecx
403c83:	33 c8                	xor    %eax,%ecx
403c85:	3b cf                	cmp    %edi,%ecx
403c87:	75 07                	jne    0x403c90
403c89:	b9 4f e6 40 bb       	mov    $0xbb40e64f,%ecx
403c8e:	eb 10                	jmp    0x403ca0
403c90:	85 ce                	test   %ecx,%esi
403c92:	75 0c                	jne    0x403ca0
403c94:	8b c1                	mov    %ecx,%eax
403c96:	0d 11 47 00 00       	or     $0x4711,%eax
403c9b:	c1 e0 10             	shl    $0x10,%eax
403c9e:	0b c8                	or     %eax,%ecx
403ca0:	89 0d 0c 30 42 00    	mov    %ecx,0x42300c
403ca6:	f7 d1                	not    %ecx
403ca8:	89 0d 08 30 42 00    	mov    %ecx,0x423008
403cae:	5f                   	pop    %edi
403caf:	5e                   	pop    %esi
403cb0:	8b e5                	mov    %ebp,%esp
403cb2:	5d                   	pop    %ebp
403cb3:	c3                   	ret
403cb4:	33 c0                	xor    %eax,%eax
403cb6:	c3                   	ret
403cb7:	b8 00 40 00 00       	mov    $0x4000,%eax
403cbc:	c3                   	ret
403cbd:	68 28 3e 42 00       	push   $0x423e28
403cc2:	ff 15 d8 b0 41 00    	call   *0x41b0d8
403cc8:	c3                   	ret
403cc9:	68 00 00 03 00       	push   $0x30000
403cce:	68 00 00 01 00       	push   $0x10000
403cd3:	6a 00                	push   $0x0
403cd5:	e8 d6 59 00 00       	call   0x4096b0
403cda:	83 c4 0c             	add    $0xc,%esp
403cdd:	85 c0                	test   %eax,%eax
403cdf:	75 01                	jne    0x403ce2
403ce1:	c3                   	ret
403ce2:	6a 07                	push   $0x7
403ce4:	e8 a8 fc ff ff       	call   0x403991
403ce9:	cc                   	int3
403cea:	c3                   	ret
403ceb:	b8 30 3e 42 00       	mov    $0x423e30,%eax
403cf0:	c3                   	ret
403cf1:	e8 da d3 ff ff       	call   0x4010d0
403cf6:	8b 48 04             	mov    0x4(%eax),%ecx
403cf9:	83 08 04             	orl    $0x4,(%eax)
403cfc:	89 48 04             	mov    %ecx,0x4(%eax)
403cff:	e8 e7 ff ff ff       	call   0x403ceb
403d04:	8b 48 04             	mov    0x4(%eax),%ecx
403d07:	83 08 02             	orl    $0x2,(%eax)
403d0a:	89 48 04             	mov    %ecx,0x4(%eax)
403d0d:	c3                   	ret
403d0e:	33 c0                	xor    %eax,%eax
403d10:	39 05 20 30 42 00    	cmp    %eax,0x423020
403d16:	0f 94 c0             	sete   %al
403d19:	c3                   	ret
403d1a:	b8 7c 47 42 00       	mov    $0x42477c,%eax
403d1f:	c3                   	ret
403d20:	b8 78 47 42 00       	mov    $0x424778,%eax
403d25:	c3                   	ret
403d26:	53                   	push   %ebx
403d27:	56                   	push   %esi
403d28:	be ec 16 42 00       	mov    $0x4216ec,%esi
403d2d:	bb ec 16 42 00       	mov    $0x4216ec,%ebx
403d32:	3b f3                	cmp    %ebx,%esi
403d34:	73 18                	jae    0x403d4e
403d36:	57                   	push   %edi
403d37:	8b 3e                	mov    (%esi),%edi
403d39:	85 ff                	test   %edi,%edi
403d3b:	74 09                	je     0x403d46
403d3d:	8b cf                	mov    %edi,%ecx
403d3f:	e8 01 fe ff ff       	call   0x403b45
403d44:	ff d7                	call   *%edi
403d46:	83 c6 04             	add    $0x4,%esi
403d49:	3b f3                	cmp    %ebx,%esi
403d4b:	72 ea                	jb     0x403d37
403d4d:	5f                   	pop    %edi
403d4e:	5e                   	pop    %esi
403d4f:	5b                   	pop    %ebx
403d50:	c3                   	ret
403d51:	53                   	push   %ebx
403d52:	56                   	push   %esi
403d53:	be f4 16 42 00       	mov    $0x4216f4,%esi
403d58:	bb f4 16 42 00       	mov    $0x4216f4,%ebx
403d5d:	3b f3                	cmp    %ebx,%esi
403d5f:	73 18                	jae    0x403d79
403d61:	57                   	push   %edi
403d62:	8b 3e                	mov    (%esi),%edi
403d64:	85 ff                	test   %edi,%edi
403d66:	74 09                	je     0x403d71
403d68:	8b cf                	mov    %edi,%ecx
403d6a:	e8 d6 fd ff ff       	call   0x403b45
403d6f:	ff d7                	call   *%edi
403d71:	83 c6 04             	add    $0x4,%esi
403d74:	3b f3                	cmp    %ebx,%esi
403d76:	72 ea                	jb     0x403d62
403d78:	5f                   	pop    %edi
403d79:	5e                   	pop    %esi
403d7a:	5b                   	pop    %ebx
403d7b:	c3                   	ret
403d7c:	56                   	push   %esi
403d7d:	8b f1                	mov    %ecx,%esi
403d7f:	e8 4b 00 00 00       	call   0x403dcf
403d84:	b8 00 00 40 00       	mov    $0x400000,%eax
403d89:	c7 06 38 00 00 00    	movl   $0x38,(%esi)
403d8f:	8d 4e 14             	lea    0x14(%esi),%ecx
403d92:	89 46 08             	mov    %eax,0x8(%esi)
403d95:	89 46 04             	mov    %eax,0x4(%esi)
403d98:	c7 46 0c 00 0e 00 00 	movl   $0xe00,0xc(%esi)
403d9f:	c7 46 10 ec b2 41 00 	movl   $0x41b2ec,0x10(%esi)
403da6:	e8 d5 d6 ff ff       	call   0x401480
403dab:	85 c0                	test   %eax,%eax
403dad:	79 1c                	jns    0x403dcb
403daf:	ff 15 c0 b0 41 00    	call   *0x41b0c0
403db5:	85 c0                	test   %eax,%eax
403db7:	74 0b                	je     0x403dc4
403db9:	68 00 b3 41 00       	push   $0x41b300
403dbe:	ff 15 3c b0 41 00    	call   *0x41b03c
403dc4:	c6 05 28 47 42 00 01 	movb   $0x1,0x424728
403dcb:	8b c6                	mov    %esi,%eax
403dcd:	5e                   	pop    %esi
403dce:	c3                   	ret
403dcf:	56                   	push   %esi
403dd0:	57                   	push   %edi
403dd1:	8b f1                	mov    %ecx,%esi
403dd3:	33 ff                	xor    %edi,%edi
403dd5:	6a 18                	push   $0x18
403dd7:	57                   	push   %edi
403dd8:	8d 46 14             	lea    0x14(%esi),%eax
403ddb:	50                   	push   %eax
403ddc:	e8 7f 0c 00 00       	call   0x404a60
403de1:	83 c4 0c             	add    $0xc,%esp
403de4:	89 7e 2c             	mov    %edi,0x2c(%esi)
403de7:	89 7e 30             	mov    %edi,0x30(%esi)
403dea:	8b c6                	mov    %esi,%eax
403dec:	89 7e 34             	mov    %edi,0x34(%esi)
403def:	5f                   	pop    %edi
403df0:	5e                   	pop    %esi
403df1:	c3                   	ret
403df2:	56                   	push   %esi
403df3:	8b f1                	mov    %ecx,%esi
403df5:	8d 46 14             	lea    0x14(%esi),%eax
403df8:	50                   	push   %eax
403df9:	ff 15 40 b0 41 00    	call   *0x41b040
403dff:	8d 4e 2c             	lea    0x2c(%esi),%ecx
403e02:	5e                   	pop    %esi
403e03:	e9 6f 00 00 00       	jmp    0x403e77
403e08:	55                   	push   %ebp
403e09:	8b ec                	mov    %esp,%ebp
403e0b:	8b 55 08             	mov    0x8(%ebp),%edx
403e0e:	85 d2                	test   %edx,%edx
403e10:	78 0e                	js     0x403e20
403e12:	3b 51 04             	cmp    0x4(%ecx),%edx
403e15:	7d 09                	jge    0x403e20
403e17:	8b 01                	mov    (%ecx),%eax
403e19:	8d 04 90             	lea    (%eax,%edx,4),%eax
403e1c:	5d                   	pop    %ebp
403e1d:	c2 04 00             	ret    $0x4
403e20:	6a 00                	push   $0x0
403e22:	6a 00                	push   $0x0
403e24:	6a 01                	push   $0x1
403e26:	68 8c 00 00 c0       	push   $0xc000008c
403e2b:	ff 15 44 b0 41 00    	call   *0x41b044
403e31:	cc                   	int3
403e32:	55                   	push   %ebp
403e33:	8b ec                	mov    %esp,%ebp
403e35:	56                   	push   %esi
403e36:	8b f1                	mov    %ecx,%esi
403e38:	57                   	push   %edi
403e39:	8d 7e 14             	lea    0x14(%esi),%edi
403e3c:	57                   	push   %edi
403e3d:	ff 15 2c b0 41 00    	call   *0x41b02c
403e43:	8b 45 08             	mov    0x8(%ebp),%eax
403e46:	3b 46 30             	cmp    0x30(%esi),%eax
403e49:	7f 1b                	jg     0x403e66
403e4b:	85 c0                	test   %eax,%eax
403e4d:	78 17                	js     0x403e66
403e4f:	3b 46 30             	cmp    0x30(%esi),%eax
403e52:	75 05                	jne    0x403e59
403e54:	8b 76 08             	mov    0x8(%esi),%esi
403e57:	eb 0f                	jmp    0x403e68
403e59:	50                   	push   %eax
403e5a:	8d 4e 2c             	lea    0x2c(%esi),%ecx
403e5d:	e8 a6 ff ff ff       	call   0x403e08
403e62:	8b 30                	mov    (%eax),%esi
403e64:	eb 02                	jmp    0x403e68
403e66:	33 f6                	xor    %esi,%esi
403e68:	57                   	push   %edi
403e69:	ff 15 34 b0 41 00    	call   *0x41b034
403e6f:	5f                   	pop    %edi
403e70:	8b c6                	mov    %esi,%eax
403e72:	5e                   	pop    %esi
403e73:	5d                   	pop    %ebp
403e74:	c2 04 00             	ret    $0x4
403e77:	56                   	push   %esi
403e78:	8b f1                	mov    %ecx,%esi
403e7a:	83 3e 00             	cmpl   $0x0,(%esi)
403e7d:	74 0b                	je     0x403e8a
403e7f:	ff 36                	push   (%esi)
403e81:	e8 d9 3b 00 00       	call   0x407a5f
403e86:	83 26 00             	andl   $0x0,(%esi)
403e89:	59                   	pop    %ecx
403e8a:	83 66 04 00          	andl   $0x0,0x4(%esi)
403e8e:	83 66 08 00          	andl   $0x0,0x8(%esi)
403e92:	5e                   	pop    %esi
403e93:	c3                   	ret
403e94:	ff 25 bc b0 41 00    	jmp    *0x41b0bc
403e9a:	cc                   	int3
403e9b:	cc                   	int3
403e9c:	cc                   	int3
403e9d:	cc                   	int3
403e9e:	cc                   	int3
403e9f:	cc                   	int3
403ea0:	57                   	push   %edi
403ea1:	56                   	push   %esi
403ea2:	8b 74 24 10          	mov    0x10(%esp),%esi
403ea6:	8b 4c 24 14          	mov    0x14(%esp),%ecx
403eaa:	8b 7c 24 0c          	mov    0xc(%esp),%edi
403eae:	8b c1                	mov    %ecx,%eax
403eb0:	8b d1                	mov    %ecx,%edx
403eb2:	03 c6                	add    %esi,%eax
403eb4:	3b fe                	cmp    %esi,%edi
403eb6:	76 08                	jbe    0x403ec0
403eb8:	3b f8                	cmp    %eax,%edi
403eba:	0f 82 94 02 00 00    	jb     0x404154
403ec0:	83 f9 20             	cmp    $0x20,%ecx
403ec3:	0f 82 d2 04 00 00    	jb     0x40439b
403ec9:	81 f9 80 00 00 00    	cmp    $0x80,%ecx
403ecf:	73 13                	jae    0x403ee4
403ed1:	0f ba 25 10 30 42 00 	btl    $0x1,0x423010
403ed8:	01
403ed9:	0f 82 8e 04 00 00    	jb     0x40436d
403edf:	e9 e3 01 00 00       	jmp    0x4040c7
403ee4:	0f ba 25 18 3e 42 00 	btl    $0x1,0x423e18
403eeb:	01
403eec:	73 09                	jae    0x403ef7
403eee:	f3 a4                	rep movsb %ds:(%esi),%es:(%edi)
403ef0:	8b 44 24 0c          	mov    0xc(%esp),%eax
403ef4:	5e                   	pop    %esi
403ef5:	5f                   	pop    %edi
403ef6:	c3                   	ret
403ef7:	8b c7                	mov    %edi,%eax
403ef9:	33 c6                	xor    %esi,%eax
403efb:	a9 0f 00 00 00       	test   $0xf,%eax
403f00:	75 0e                	jne    0x403f10
403f02:	0f ba 25 10 30 42 00 	btl    $0x1,0x423010
403f09:	01
403f0a:	0f 82 e0 03 00 00    	jb     0x4042f0
403f10:	0f ba 25 18 3e 42 00 	btl    $0x0,0x423e18
403f17:	00
403f18:	0f 83 a9 01 00 00    	jae    0x4040c7
403f1e:	f7 c7 03 00 00 00    	test   $0x3,%edi
403f24:	0f 85 9d 01 00 00    	jne    0x4040c7
403f2a:	f7 c6 03 00 00 00    	test   $0x3,%esi
403f30:	0f 85 ac 01 00 00    	jne    0x4040e2
403f36:	0f ba e7 02          	bt     $0x2,%edi
403f3a:	73 0d                	jae    0x403f49
403f3c:	8b 06                	mov    (%esi),%eax
403f3e:	83 e9 04             	sub    $0x4,%ecx
403f41:	8d 76 04             	lea    0x4(%esi),%esi
403f44:	89 07                	mov    %eax,(%edi)
403f46:	8d 7f 04             	lea    0x4(%edi),%edi
403f49:	0f ba e7 03          	bt     $0x3,%edi
403f4d:	73 11                	jae    0x403f60
403f4f:	f3 0f 7e 0e          	movq   (%esi),%xmm1
403f53:	83 e9 08             	sub    $0x8,%ecx
403f56:	8d 76 08             	lea    0x8(%esi),%esi
403f59:	66 0f d6 0f          	movq   %xmm1,(%edi)
403f5d:	8d 7f 08             	lea    0x8(%edi),%edi
403f60:	f7 c6 07 00 00 00    	test   $0x7,%esi
403f66:	74 65                	je     0x403fcd
403f68:	0f ba e6 03          	bt     $0x3,%esi
403f6c:	0f 83 b4 00 00 00    	jae    0x404026
403f72:	66 0f 6f 4e f4       	movdqa -0xc(%esi),%xmm1
403f77:	8d 76 f4             	lea    -0xc(%esi),%esi
403f7a:	8b ff                	mov    %edi,%edi
403f7c:	66 0f 6f 5e 10       	movdqa 0x10(%esi),%xmm3
403f81:	83 e9 30             	sub    $0x30,%ecx
403f84:	66 0f 6f 46 20       	movdqa 0x20(%esi),%xmm0
403f89:	66 0f 6f 6e 30       	movdqa 0x30(%esi),%xmm5
403f8e:	8d 76 30             	lea    0x30(%esi),%esi
403f91:	83 f9 30             	cmp    $0x30,%ecx
403f94:	66 0f 6f d3          	movdqa %xmm3,%xmm2
403f98:	66 0f 3a 0f d9 0c    	palignr $0xc,%xmm1,%xmm3
403f9e:	66 0f 7f 1f          	movdqa %xmm3,(%edi)
403fa2:	66 0f 6f e0          	movdqa %xmm0,%xmm4
403fa6:	66 0f 3a 0f c2 0c    	palignr $0xc,%xmm2,%xmm0
403fac:	66 0f 7f 47 10       	movdqa %xmm0,0x10(%edi)
403fb1:	66 0f 6f cd          	movdqa %xmm5,%xmm1
403fb5:	66 0f 3a 0f ec 0c    	palignr $0xc,%xmm4,%xmm5
403fbb:	66 0f 7f 6f 20       	movdqa %xmm5,0x20(%edi)
403fc0:	8d 7f 30             	lea    0x30(%edi),%edi
403fc3:	7d b7                	jge    0x403f7c
403fc5:	8d 76 0c             	lea    0xc(%esi),%esi
403fc8:	e9 af 00 00 00       	jmp    0x40407c
403fcd:	66 0f 6f 4e f8       	movdqa -0x8(%esi),%xmm1
403fd2:	8d 76 f8             	lea    -0x8(%esi),%esi
403fd5:	8d 49 00             	lea    0x0(%ecx),%ecx
403fd8:	66 0f 6f 5e 10       	movdqa 0x10(%esi),%xmm3
403fdd:	83 e9 30             	sub    $0x30,%ecx
403fe0:	66 0f 6f 46 20       	movdqa 0x20(%esi),%xmm0
403fe5:	66 0f 6f 6e 30       	movdqa 0x30(%esi),%xmm5
403fea:	8d 76 30             	lea    0x30(%esi),%esi
403fed:	83 f9 30             	cmp    $0x30,%ecx
403ff0:	66 0f 6f d3          	movdqa %xmm3,%xmm2
403ff4:	66 0f 3a 0f d9 08    	palignr $0x8,%xmm1,%xmm3
403ffa:	66 0f 7f 1f          	movdqa %xmm3,(%edi)
403ffe:	66 0f 6f e0          	movdqa %xmm0,%xmm4
404002:	66 0f 3a 0f c2 08    	palignr $0x8,%xmm2,%xmm0
404008:	66 0f 7f 47 10       	movdqa %xmm0,0x10(%edi)
40400d:	66 0f 6f cd          	movdqa %xmm5,%xmm1
404011:	66 0f 3a 0f ec 08    	palignr $0x8,%xmm4,%xmm5
404017:	66 0f 7f 6f 20       	movdqa %xmm5,0x20(%edi)
40401c:	8d 7f 30             	lea    0x30(%edi),%edi
40401f:	7d b7                	jge    0x403fd8
404021:	8d 76 08             	lea    0x8(%esi),%esi
404024:	eb 56                	jmp    0x40407c
404026:	66 0f 6f 4e fc       	movdqa -0x4(%esi),%xmm1
40402b:	8d 76 fc             	lea    -0x4(%esi),%esi
40402e:	8b ff                	mov    %edi,%edi
404030:	66 0f 6f 5e 10       	movdqa 0x10(%esi),%xmm3
404035:	83 e9 30             	sub    $0x30,%ecx
404038:	66 0f 6f 46 20       	movdqa 0x20(%esi),%xmm0