413ca7:	c3                   	ret
413ca8:	50                   	push   %eax
413ca9:	64 ff 35 00 00 00 00 	push   %fs:0x0
413cb0:	8d 44 24 0c          	lea    0xc(%esp),%eax
413cb4:	2b 64 24 0c          	sub    0xc(%esp),%esp
413cb8:	53                   	push   %ebx
413cb9:	56                   	push   %esi
413cba:	57                   	push   %edi
413cbb:	89 28                	mov    %ebp,(%eax)
413cbd:	8b e8                	mov    %eax,%ebp
413cbf:	a1 18 51 41 00       	mov    0x415118,%eax
413cc4:	33 c5                	xor    %ebp,%eax
413cc6:	50                   	push   %eax
413cc7:	89 65 f0             	mov    %esp,-0x10(%ebp)
413cca:	ff 75 fc             	push   -0x4(%ebp)
413ccd:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
413cd4:	8d 45 f4             	lea    -0xc(%ebp),%eax
413cd7:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
413cdd:	c3                   	ret
413cde:	ff 25 48 b3 41 00    	jmp    *0x41b348
413ce4:	ff 25 44 b3 41 00    	jmp    *0x41b344
413cea:	cc                   	int3
413ceb:	cc                   	int3
413cec:	cc                   	int3
413ced:	cc                   	int3
413cee:	cc                   	int3
413cef:	cc                   	int3
413cf0:	8b ff                	mov    %edi,%edi
413cf2:	55                   	push   %ebp
413cf3:	8b ec                	mov    %esp,%ebp
413cf5:	8b 45 08             	mov    0x8(%ebp),%eax
413cf8:	8b 00                	mov    (%eax),%eax
413cfa:	81 38 63 73 6d e0    	cmpl   $0xe06d7363,(%eax)
413d00:	75 2b                	jne    0x413d2d
413d02:	83 78 10 03          	cmpl   $0x3,0x10(%eax)
413d06:	75 25                	jne    0x413d2d
413d08:	8b 40 14             	mov    0x14(%eax),%eax
413d0b:	3d 20 05 93 19       	cmp    $0x19930520,%eax
413d10:	74 15                	je     0x413d27
413d12:	3d 21 05 93 19       	cmp    $0x19930521,%eax
413d17:	74 0e                	je     0x413d27
413d19:	3d 22 05 93 19       	cmp    $0x19930522,%eax
413d1e:	74 07                	je     0x413d27
413d20:	3d 00 40 99 01       	cmp    $0x1994000,%eax
413d25:	75 06                	jne    0x413d2d
413d27:	ff 15 fc b2 41 00    	call   *0x41b2fc
413d2d:	33 c0                	xor    %eax,%eax
413d2f:	5d                   	pop    %ebp
413d30:	c2 04 00             	ret    $0x4
413d33:	cc                   	int3
413d34:	cc                   	int3
413d35:	cc                   	int3
413d36:	cc                   	int3
413d37:	cc                   	int3
413d38:	cc                   	int3
413d39:	cc                   	int3
413d3a:	cc                   	int3
413d3b:	cc                   	int3
413d3c:	cc                   	int3
413d3d:	cc                   	int3
413d3e:	cc                   	int3
413d3f:	cc                   	int3
413d40:	68 f0 3c 41 00       	push   $0x413cf0
413d45:	ff 15 18 b1 41 00    	call   *0x41b118
413d4b:	33 c0                	xor    %eax,%eax
413d4d:	c3                   	ret
413d4e:	ff 25 40 b3 41 00    	jmp    *0x41b340
413d54:	6a 0c                	push   $0xc
413d56:	68 a8 4e 41 00       	push   $0x414ea8
413d5b:	e8 b8 02 00 00       	call   0x414018
413d60:	33 c9                	xor    %ecx,%ecx
413d62:	8b 45 08             	mov    0x8(%ebp),%eax
413d65:	85 c0                	test   %eax,%eax
413d67:	74 4b                	je     0x413db4
413d69:	83 f8 ff             	cmp    $0xffffffff,%eax
413d6c:	74 46                	je     0x413db4
413d6e:	89 4d fc             	mov    %ecx,-0x4(%ebp)
413d71:	ba 4d 5a 00 00       	mov    $0x5a4d,%edx
413d76:	66 39 10             	cmp    %dx,(%eax)
413d79:	75 32                	jne    0x413dad
413d7b:	8b 50 3c             	mov    0x3c(%eax),%edx
413d7e:	85 d2                	test   %edx,%edx
413d80:	78 2b                	js     0x413dad
413d82:	81 fa 00 00 00 10    	cmp    $0x10000000,%edx
413d88:	73 23                	jae    0x413dad
413d8a:	03 c2                	add    %edx,%eax
413d8c:	89 45 e4             	mov    %eax,-0x1c(%ebp)
413d8f:	8b 08                	mov    (%eax),%ecx
413d91:	81 e9 50 45 00 00    	sub    $0x4550,%ecx
413d97:	f7 d9                	neg    %ecx
413d99:	1b c9                	sbb    %ecx,%ecx
413d9b:	f7 d1                	not    %ecx
413d9d:	23 c8                	and    %eax,%ecx
413d9f:	eb 09                	jmp    0x413daa
413da1:	33 c0                	xor    %eax,%eax
413da3:	40                   	inc    %eax
413da4:	c3                   	ret
413da5:	8b 65 e8             	mov    -0x18(%ebp),%esp
413da8:	33 c9                	xor    %ecx,%ecx
413daa:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
413dad:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
413db4:	8b c1                	mov    %ecx,%eax
413db6:	8b 4d f0             	mov    -0x10(%ebp),%ecx
413db9:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
413dc0:	59                   	pop    %ecx
413dc1:	5f                   	pop    %edi
413dc2:	5e                   	pop    %esi
413dc3:	5b                   	pop    %ebx
413dc4:	c9                   	leave
413dc5:	c2 04 00             	ret    $0x4
413dc8:	8b ff                	mov    %edi,%edi
413dca:	55                   	push   %ebp
413dcb:	8b ec                	mov    %esp,%ebp
413dcd:	6a 00                	push   $0x0
413dcf:	ff 15 6c b1 41 00    	call   *0x41b16c
413dd5:	85 c0                	test   %eax,%eax
413dd7:	74 20                	je     0x413df9
413dd9:	50                   	push   %eax
413dda:	e8 75 ff ff ff       	call   0x413d54
413ddf:	85 c0                	test   %eax,%eax
413de1:	74 16                	je     0x413df9
413de3:	0f b7 48 5c          	movzwl 0x5c(%eax),%ecx
413de7:	6a 02                	push   $0x2
413de9:	58                   	pop    %eax
413dea:	66 3b c8             	cmp    %ax,%cx
413ded:	74 0d                	je     0x413dfc
413def:	83 f9 03             	cmp    $0x3,%ecx
413df2:	75 05                	jne    0x413df9
413df4:	33 c0                	xor    %eax,%eax
413df6:	40                   	inc    %eax
413df7:	5d                   	pop    %ebp
413df8:	c3                   	ret
413df9:	8b 45 08             	mov    0x8(%ebp),%eax
413dfc:	5d                   	pop    %ebp
413dfd:	c3                   	ret
413dfe:	ff 25 38 b3 41 00    	jmp    *0x41b338
413e04:	cc                   	int3
413e05:	cc                   	int3
413e06:	cc                   	int3
413e07:	cc                   	int3
413e08:	cc                   	int3
413e09:	cc                   	int3
413e0a:	cc                   	int3
413e0b:	cc                   	int3
413e0c:	cc                   	int3
413e0d:	cc                   	int3
413e0e:	cc                   	int3
413e0f:	cc                   	int3
413e10:	33 c0                	xor    %eax,%eax
413e12:	c3                   	ret
413e13:	cc                   	int3
413e14:	cc                   	int3
413e15:	cc                   	int3
413e16:	cc                   	int3
413e17:	cc                   	int3
413e18:	cc                   	int3
413e19:	cc                   	int3
413e1a:	cc                   	int3
413e1b:	cc                   	int3
413e1c:	cc                   	int3
413e1d:	cc                   	int3
413e1e:	cc                   	int3
413e1f:	cc                   	int3
413e20:	8b ff                	mov    %edi,%edi
413e22:	55                   	push   %ebp
413e23:	8b ec                	mov    %esp,%ebp
413e25:	8b 45 08             	mov    0x8(%ebp),%eax
413e28:	33 d2                	xor    %edx,%edx
413e2a:	53                   	push   %ebx
413e2b:	56                   	push   %esi
413e2c:	57                   	push   %edi
413e2d:	8b 48 3c             	mov    0x3c(%eax),%ecx
413e30:	03 c8                	add    %eax,%ecx
413e32:	0f b7 41 14          	movzwl 0x14(%ecx),%eax
413e36:	0f b7 59 06          	movzwl 0x6(%ecx),%ebx
413e3a:	83 c0 18             	add    $0x18,%eax
413e3d:	03 c1                	add    %ecx,%eax
413e3f:	85 db                	test   %ebx,%ebx
413e41:	74 1b                	je     0x413e5e
413e43:	8b 7d 0c             	mov    0xc(%ebp),%edi
413e46:	8b 70 0c             	mov    0xc(%eax),%esi
413e49:	3b fe                	cmp    %esi,%edi
413e4b:	72 09                	jb     0x413e56
413e4d:	8b 48 08             	mov    0x8(%eax),%ecx
413e50:	03 ce                	add    %esi,%ecx
413e52:	3b f9                	cmp    %ecx,%edi
413e54:	72 0a                	jb     0x413e60
413e56:	42                   	inc    %edx
413e57:	83 c0 28             	add    $0x28,%eax
413e5a:	3b d3                	cmp    %ebx,%edx
413e5c:	72 e8                	jb     0x413e46
413e5e:	33 c0                	xor    %eax,%eax
413e60:	5f                   	pop    %edi
413e61:	5e                   	pop    %esi
413e62:	5b                   	pop    %ebx
413e63:	5d                   	pop    %ebp
413e64:	c3                   	ret
413e65:	cc                   	int3
413e66:	cc                   	int3
413e67:	cc                   	int3
413e68:	cc                   	int3
413e69:	cc                   	int3
413e6a:	cc                   	int3
413e6b:	cc                   	int3
413e6c:	cc                   	int3
413e6d:	cc                   	int3
413e6e:	cc                   	int3
413e6f:	cc                   	int3
413e70:	8b ff                	mov    %edi,%edi
413e72:	55                   	push   %ebp
413e73:	8b ec                	mov    %esp,%ebp
413e75:	6a fe                	push   $0xfffffffe
413e77:	68 c8 4e 41 00       	push   $0x414ec8
413e7c:	68 80 40 41 00       	push   $0x414080
413e81:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
413e87:	50                   	push   %eax
413e88:	83 ec 08             	sub    $0x8,%esp
413e8b:	53                   	push   %ebx
413e8c:	56                   	push   %esi
413e8d:	57                   	push   %edi
413e8e:	a1 18 51 41 00       	mov    0x415118,%eax
413e93:	31 45 f8             	xor    %eax,-0x8(%ebp)
413e96:	33 c5                	xor    %ebp,%eax
413e98:	50                   	push   %eax
413e99:	8d 45 f0             	lea    -0x10(%ebp),%eax
413e9c:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
413ea2:	89 65 e8             	mov    %esp,-0x18(%ebp)
413ea5:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
413eac:	68 00 00 40 00       	push   $0x400000
413eb1:	e8 7a 00 00 00       	call   0x413f30
413eb6:	83 c4 04             	add    $0x4,%esp
413eb9:	85 c0                	test   %eax,%eax
413ebb:	74 54                	je     0x413f11
413ebd:	8b 45 08             	mov    0x8(%ebp),%eax
413ec0:	2d 00 00 40 00       	sub    $0x400000,%eax
413ec5:	50                   	push   %eax
413ec6:	68 00 00 40 00       	push   $0x400000
413ecb:	e8 50 ff ff ff       	call   0x413e20
413ed0:	83 c4 08             	add    $0x8,%esp
413ed3:	85 c0                	test   %eax,%eax
413ed5:	74 3a                	je     0x413f11
413ed7:	8b 40 24             	mov    0x24(%eax),%eax
413eda:	c1 e8 1f             	shr    $0x1f,%eax
413edd:	f7 d0                	not    %eax
413edf:	83 e0 01             	and    $0x1,%eax
413ee2:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
413ee9:	8b 4d f0             	mov    -0x10(%ebp),%ecx
413eec:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
413ef3:	59                   	pop    %ecx
413ef4:	5f                   	pop    %edi
413ef5:	5e                   	pop    %esi
413ef6:	5b                   	pop    %ebx
413ef7:	8b e5                	mov    %ebp,%esp
413ef9:	5d                   	pop    %ebp
413efa:	c3                   	ret
413efb:	8b 45 ec             	mov    -0x14(%ebp),%eax
413efe:	8b 00                	mov    (%eax),%eax
413f00:	33 c9                	xor    %ecx,%ecx
413f02:	81 38 05 00 00 c0    	cmpl   $0xc0000005,(%eax)
413f08:	0f 94 c1             	sete   %cl
413f0b:	8b c1                	mov    %ecx,%eax
413f0d:	c3                   	ret
413f0e:	8b 65 e8             	mov    -0x18(%ebp),%esp
413f11:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
413f18:	33 c0                	xor    %eax,%eax
413f1a:	8b 4d f0             	mov    -0x10(%ebp),%ecx
413f1d:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
413f24:	59                   	pop    %ecx
413f25:	5f                   	pop    %edi
413f26:	5e                   	pop    %esi
413f27:	5b                   	pop    %ebx
413f28:	8b e5                	mov    %ebp,%esp
413f2a:	5d                   	pop    %ebp
413f2b:	c3                   	ret
413f2c:	cc                   	int3
413f2d:	cc                   	int3
413f2e:	cc                   	int3
413f2f:	cc                   	int3
413f30:	8b ff                	mov    %edi,%edi
413f32:	55                   	push   %ebp
413f33:	8b ec                	mov    %esp,%ebp
413f35:	8b 4d 08             	mov    0x8(%ebp),%ecx
413f38:	b8 4d 5a 00 00       	mov    $0x5a4d,%eax
413f3d:	66 39 01             	cmp    %ax,(%ecx)
413f40:	75 1f                	jne    0x413f61
413f42:	8b 41 3c             	mov    0x3c(%ecx),%eax
413f45:	03 c1                	add    %ecx,%eax
413f47:	81 38 50 45 00 00    	cmpl   $0x4550,(%eax)
413f4d:	75 12                	jne    0x413f61
413f4f:	b9 0b 01 00 00       	mov    $0x10b,%ecx
413f54:	66 39 48 18          	cmp    %cx,0x18(%eax)
413f58:	75 07                	jne    0x413f61
413f5a:	b8 01 00 00 00       	mov    $0x1,%eax
413f5f:	5d                   	pop    %ebp
413f60:	c3                   	ret
413f61:	33 c0                	xor    %eax,%eax
413f63:	5d                   	pop    %ebp
413f64:	c3                   	ret
413f65:	8b ff                	mov    %edi,%edi
413f67:	55                   	push   %ebp
413f68:	8b ec                	mov    %esp,%ebp
413f6a:	83 ec 14             	sub    $0x14,%esp
413f6d:	83 65 f4 00          	andl   $0x0,-0xc(%ebp)
413f71:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
413f75:	a1 18 51 41 00       	mov    0x415118,%eax
413f7a:	56                   	push   %esi
413f7b:	57                   	push   %edi
413f7c:	bf 4e e6 40 bb       	mov    $0xbb40e64e,%edi
413f81:	be 00 00 ff ff       	mov    $0xffff0000,%esi
413f86:	3b c7                	cmp    %edi,%eax
413f88:	74 04                	je     0x413f8e
413f8a:	85 c6                	test   %eax,%esi
413f8c:	75 64                	jne    0x413ff2
413f8e:	8d 45 f4             	lea    -0xc(%ebp),%eax
413f91:	50                   	push   %eax
413f92:	ff 15 f8 b0 41 00    	call   *0x41b0f8
413f98:	8b 45 f8             	mov    -0x8(%ebp),%eax
413f9b:	33 45 f4             	xor    -0xc(%ebp),%eax
413f9e:	89 45 fc             	mov    %eax,-0x4(%ebp)
413fa1:	ff 15 64 b1 41 00    	call   *0x41b164
413fa7:	31 45 fc             	xor    %eax,-0x4(%ebp)
413faa:	ff 15 38 b1 41 00    	call   *0x41b138
413fb0:	31 45 fc             	xor    %eax,-0x4(%ebp)
413fb3:	ff 15 f4 b0 41 00    	call   *0x41b0f4
413fb9:	33 45 fc             	xor    -0x4(%ebp),%eax
413fbc:	8d 4d fc             	lea    -0x4(%ebp),%ecx
413fbf:	33 c1                	xor    %ecx,%eax
413fc1:	89 45 fc             	mov    %eax,-0x4(%ebp)
413fc4:	8d 45 ec             	lea    -0x14(%ebp),%eax
413fc7:	50                   	push   %eax
413fc8:	ff 15 fc b0 41 00    	call   *0x41b0fc
413fce:	8b 45 f0             	mov    -0x10(%ebp),%eax
413fd1:	33 45 ec             	xor    -0x14(%ebp),%eax
413fd4:	33 45 fc             	xor    -0x4(%ebp),%eax
413fd7:	8b c8                	mov    %eax,%ecx
413fd9:	3b c7                	cmp    %edi,%eax
413fdb:	74 08                	je     0x413fe5
413fdd:	85 35 18 51 41 00    	test   %esi,0x415118
413fe3:	75 07                	jne    0x413fec
413fe5:	b8 4f e6 40 bb       	mov    $0xbb40e64f,%eax
413fea:	8b c8                	mov    %eax,%ecx
413fec:	89 0d 18 51 41 00    	mov    %ecx,0x415118
413ff2:	f7 d0                	not    %eax
413ff4:	5f                   	pop    %edi
413ff5:	a3 1c 51 41 00       	mov    %eax,0x41511c
413ffa:	5e                   	pop    %esi
413ffb:	c9                   	leave
413ffc:	c3                   	ret
413ffd:	68 00 00 03 00       	push   $0x30000
414002:	68 00 00 01 00       	push   $0x10000