4698d5:	74 1b                	je     0x4698f2
4698d7:	56                   	push   %esi
4698d8:	e8 9c 02 00 00       	call   0x469b79
4698dd:	59                   	pop    %ecx
4698de:	84 c0                	test   %al,%al
4698e0:	74 10                	je     0x4698f2
4698e2:	8b 36                	mov    (%esi),%esi
4698e4:	57                   	push   %edi
4698e5:	6a 02                	push   $0x2
4698e7:	57                   	push   %edi
4698e8:	8b ce                	mov    %esi,%ecx
4698ea:	ff 15 d4 e2 49 00    	call   *0x49e2d4
4698f0:	ff d6                	call   *%esi
4698f2:	e8 09 0c 00 00       	call   0x46a500
4698f7:	8b f0                	mov    %eax,%esi
4698f9:	39 3e                	cmp    %edi,(%esi)
4698fb:	74 13                	je     0x469910
4698fd:	56                   	push   %esi
4698fe:	e8 76 02 00 00       	call   0x469b79
469903:	59                   	pop    %ecx
469904:	84 c0                	test   %al,%al
469906:	74 08                	je     0x469910
469908:	ff 36                	push   (%esi)
46990a:	e8 30 9f 01 00       	call   0x48383f
46990f:	59                   	pop    %ecx
469910:	e8 c2 9b 01 00       	call   0x4834d7
469915:	8b f8                	mov    %eax,%edi
469917:	e8 c3 a0 01 00       	call   0x4839df
46991c:	8b 30                	mov    (%eax),%esi
46991e:	e8 b6 a0 01 00       	call   0x4839d9
469923:	57                   	push   %edi
469924:	56                   	push   %esi
469925:	ff 30                	push   (%eax)
469927:	e8 24 92 f9 ff       	call   0x402b50
46992c:	83 c4 0c             	add    $0xc,%esp
46992f:	8b f0                	mov    %eax,%esi
469931:	e8 f0 0c 00 00       	call   0x46a626
469936:	84 c0                	test   %al,%al
469938:	74 6b                	je     0x4699a5
46993a:	84 db                	test   %bl,%bl
46993c:	75 05                	jne    0x469943
46993e:	e8 d7 9e 01 00       	call   0x48381a
469943:	6a 00                	push   $0x0
469945:	6a 01                	push   $0x1
469947:	e8 de 02 00 00       	call   0x469c2a
46994c:	59                   	pop    %ecx
46994d:	59                   	pop    %ecx
46994e:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
469955:	8b c6                	mov    %esi,%eax
469957:	eb 35                	jmp    0x46998e
469959:	8b 4d ec             	mov    -0x14(%ebp),%ecx
46995c:	8b 01                	mov    (%ecx),%eax
46995e:	8b 00                	mov    (%eax),%eax
469960:	89 45 e0             	mov    %eax,-0x20(%ebp)
469963:	51                   	push   %ecx
469964:	50                   	push   %eax
469965:	e8 61 93 01 00       	call   0x482ccb
46996a:	59                   	pop    %ecx
46996b:	59                   	pop    %ecx
46996c:	c3                   	ret
46996d:	8b 65 e8             	mov    -0x18(%ebp),%esp
469970:	e8 b1 0c 00 00       	call   0x46a626
469975:	84 c0                	test   %al,%al
469977:	74 32                	je     0x4699ab
469979:	80 7d e7 00          	cmpb   $0x0,-0x19(%ebp)
46997d:	75 05                	jne    0x469984
46997f:	e8 87 9e 01 00       	call   0x48380b
469984:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
46998b:	8b 45 e0             	mov    -0x20(%ebp),%eax
46998e:	8b 4d f0             	mov    -0x10(%ebp),%ecx
469991:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
469998:	59                   	pop    %ecx
469999:	5f                   	pop    %edi
46999a:	5e                   	pop    %esi
46999b:	5b                   	pop    %ebx
46999c:	c9                   	leave
46999d:	c3                   	ret
46999e:	6a 07                	push   $0x7
4699a0:	e8 61 0b 00 00       	call   0x46a506
4699a5:	56                   	push   %esi
4699a6:	e8 ba 9e 01 00       	call   0x483865
4699ab:	ff 75 e0             	push   -0x20(%ebp)
4699ae:	e8 76 9e 01 00       	call   0x483829
4699b3:	cc                   	int3
4699b4:	cc                   	int3
4699b5:	cc                   	int3
4699b6:	cc                   	int3
4699b7:	cc                   	int3
4699b8:	cc                   	int3
4699b9:	cc                   	int3
4699ba:	cc                   	int3
4699bb:	cc                   	int3
4699bc:	cc                   	int3
4699bd:	cc                   	int3
4699be:	cc                   	int3
4699bf:	cc                   	int3
4699c0:	e8 84 0a 00 00       	call   0x46a449
4699c5:	e9 68 fe ff ff       	jmp    0x469832
4699ca:	3b 0d 14 40 4c 00    	cmp    0x4c4014,%ecx
4699d0:	75 01                	jne    0x4699d3
4699d2:	c3                   	ret
4699d3:	e9 1c 05 00 00       	jmp    0x469ef4
4699d8:	55                   	push   %ebp
4699d9:	8b ec                	mov    %esp,%ebp
4699db:	eb 0d                	jmp    0x4699ea
4699dd:	ff 75 08             	push   0x8(%ebp)
4699e0:	e8 77 b7 01 00       	call   0x48515c
4699e5:	59                   	pop    %ecx
4699e6:	85 c0                	test   %eax,%eax
4699e8:	74 0f                	je     0x4699f9
4699ea:	ff 75 08             	push   0x8(%ebp)
4699ed:	e8 0f fd 00 00       	call   0x479701
4699f2:	59                   	pop    %ecx
4699f3:	85 c0                	test   %eax,%eax
4699f5:	74 e6                	je     0x4699dd
4699f7:	5d                   	pop    %ebp
4699f8:	c3                   	ret
4699f9:	83 7d 08 ff          	cmpl   $0xffffffff,0x8(%ebp)
4699fd:	0f 84 3d 79 f9 ff    	je     0x401340
469a03:	e9 15 ed ff ff       	jmp    0x46871d
469a08:	55                   	push   %ebp
469a09:	8b ec                	mov    %esp,%ebp
469a0b:	ff 75 08             	push   0x8(%ebp)
469a0e:	e8 7d e3 fb ff       	call   0x427d90
469a13:	59                   	pop    %ecx
469a14:	5d                   	pop    %ebp
469a15:	c3                   	ret
469a16:	cc                   	int3
469a17:	cc                   	int3
469a18:	cc                   	int3
469a19:	cc                   	int3
469a1a:	cc                   	int3
469a1b:	cc                   	int3
469a1c:	cc                   	int3
469a1d:	cc                   	int3
469a1e:	cc                   	int3
469a1f:	cc                   	int3
469a20:	55                   	push   %ebp
469a21:	8b ec                	mov    %esp,%ebp
469a23:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
469a27:	56                   	push   %esi
469a28:	8b f1                	mov    %ecx,%esi
469a2a:	c7 06 0c 07 4a 00    	movl   $0x4a070c,(%esi)
469a30:	74 0a                	je     0x469a3c
469a32:	6a 0c                	push   $0xc
469a34:	56                   	push   %esi
469a35:	e8 ce ff ff ff       	call   0x469a08
469a3a:	59                   	pop    %ecx
469a3b:	59                   	pop    %ecx
469a3c:	8b c6                	mov    %esi,%eax
469a3e:	5e                   	pop    %esi
469a3f:	5d                   	pop    %ebp
469a40:	c2 04 00             	ret    $0x4
469a43:	55                   	push   %ebp
469a44:	8b ec                	mov    %esp,%ebp
469a46:	8b 45 08             	mov    0x8(%ebp),%eax
469a49:	56                   	push   %esi
469a4a:	8b 48 3c             	mov    0x3c(%eax),%ecx
469a4d:	03 c8                	add    %eax,%ecx
469a4f:	0f b7 41 14          	movzwl 0x14(%ecx),%eax
469a53:	8d 51 18             	lea    0x18(%ecx),%edx
469a56:	03 d0                	add    %eax,%edx
469a58:	0f b7 41 06          	movzwl 0x6(%ecx),%eax
469a5c:	6b f0 28             	imul   $0x28,%eax,%esi
469a5f:	03 f2                	add    %edx,%esi
469a61:	3b d6                	cmp    %esi,%edx
469a63:	74 19                	je     0x469a7e
469a65:	8b 4d 0c             	mov    0xc(%ebp),%ecx
469a68:	3b 4a 0c             	cmp    0xc(%edx),%ecx
469a6b:	72 0a                	jb     0x469a77
469a6d:	8b 42 08             	mov    0x8(%edx),%eax
469a70:	03 42 0c             	add    0xc(%edx),%eax
469a73:	3b c8                	cmp    %eax,%ecx
469a75:	72 0c                	jb     0x469a83
469a77:	83 c2 28             	add    $0x28,%edx
469a7a:	3b d6                	cmp    %esi,%edx
469a7c:	75 ea                	jne    0x469a68
469a7e:	33 c0                	xor    %eax,%eax
469a80:	5e                   	pop    %esi
469a81:	5d                   	pop    %ebp
469a82:	c3                   	ret
469a83:	8b c2                	mov    %edx,%eax
469a85:	eb f9                	jmp    0x469a80
469a87:	56                   	push   %esi
469a88:	e8 f8 0c 00 00       	call   0x46a785
469a8d:	85 c0                	test   %eax,%eax
469a8f:	74 20                	je     0x469ab1
469a91:	64 a1 18 00 00 00    	mov    %fs:0x18,%eax
469a97:	be 8c 7f 4c 00       	mov    $0x4c7f8c,%esi
469a9c:	8b 50 04             	mov    0x4(%eax),%edx
469a9f:	eb 04                	jmp    0x469aa5
469aa1:	3b d0                	cmp    %eax,%edx
469aa3:	74 10                	je     0x469ab5
469aa5:	33 c0                	xor    %eax,%eax
469aa7:	8b ca                	mov    %edx,%ecx
469aa9:	f0 0f b1 0e          	lock cmpxchg %ecx,(%esi)
469aad:	85 c0                	test   %eax,%eax
469aaf:	75 f0                	jne    0x469aa1
469ab1:	32 c0                	xor    %al,%al
469ab3:	5e                   	pop    %esi
469ab4:	c3                   	ret
469ab5:	b0 01                	mov    $0x1,%al
469ab7:	5e                   	pop    %esi
469ab8:	c3                   	ret
469ab9:	55                   	push   %ebp
469aba:	8b ec                	mov    %esp,%ebp
469abc:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
469ac0:	75 07                	jne    0x469ac9
469ac2:	c6 05 90 7f 4c 00 01 	movb   $0x1,0x4c7f90
469ac9:	e8 78 06 00 00       	call   0x46a146
469ace:	e8 69 39 00 00       	call   0x46d43c
469ad3:	84 c0                	test   %al,%al
469ad5:	75 04                	jne    0x469adb
469ad7:	32 c0                	xor    %al,%al
469ad9:	5d                   	pop    %ebp
469ada:	c3                   	ret
469adb:	e8 ce bb 01 00       	call   0x4856ae
469ae0:	84 c0                	test   %al,%al
469ae2:	75 0a                	jne    0x469aee
469ae4:	6a 00                	push   $0x0
469ae6:	e8 70 39 00 00       	call   0x46d45b
469aeb:	59                   	pop    %ecx
469aec:	eb e9                	jmp    0x469ad7
469aee:	b0 01                	mov    $0x1,%al
469af0:	5d                   	pop    %ebp
469af1:	c3                   	ret
469af2:	55                   	push   %ebp
469af3:	8b ec                	mov    %esp,%ebp
469af5:	80 3d 91 7f 4c 00 00 	cmpb   $0x0,0x4c7f91
469afc:	74 04                	je     0x469b02
469afe:	b0 01                	mov    $0x1,%al
469b00:	5d                   	pop    %ebp
469b01:	c3                   	ret
469b02:	56                   	push   %esi
469b03:	8b 75 08             	mov    0x8(%ebp),%esi
469b06:	85 f6                	test   %esi,%esi
469b08:	74 05                	je     0x469b0f
469b0a:	83 fe 01             	cmp    $0x1,%esi
469b0d:	75 62                	jne    0x469b71
469b0f:	e8 71 0c 00 00       	call   0x46a785
469b14:	85 c0                	test   %eax,%eax
469b16:	74 26                	je     0x469b3e
469b18:	85 f6                	test   %esi,%esi
469b1a:	75 22                	jne    0x469b3e
469b1c:	68 94 7f 4c 00       	push   $0x4c7f94
469b21:	e8 04 ba 01 00       	call   0x48552a
469b26:	59                   	pop    %ecx
469b27:	85 c0                	test   %eax,%eax
469b29:	75 0f                	jne    0x469b3a
469b2b:	68 a0 7f 4c 00       	push   $0x4c7fa0
469b30:	e8 f5 b9 01 00       	call   0x48552a
469b35:	59                   	pop    %ecx
469b36:	85 c0                	test   %eax,%eax
469b38:	74 2b                	je     0x469b65
469b3a:	32 c0                	xor    %al,%al
469b3c:	eb 30                	jmp    0x469b6e
469b3e:	83 c9 ff             	or     $0xffffffff,%ecx
469b41:	89 0d 94 7f 4c 00    	mov    %ecx,0x4c7f94
469b47:	89 0d 98 7f 4c 00    	mov    %ecx,0x4c7f98
469b4d:	89 0d 9c 7f 4c 00    	mov    %ecx,0x4c7f9c
469b53:	89 0d a0 7f 4c 00    	mov    %ecx,0x4c7fa0
469b59:	89 0d a4 7f 4c 00    	mov    %ecx,0x4c7fa4
469b5f:	89 0d a8 7f 4c 00    	mov    %ecx,0x4c7fa8
469b65:	c6 05 91 7f 4c 00 01 	movb   $0x1,0x4c7f91
469b6c:	b0 01                	mov    $0x1,%al
469b6e:	5e                   	pop    %esi
469b6f:	5d                   	pop    %ebp
469b70:	c3                   	ret
469b71:	6a 05                	push   $0x5
469b73:	e8 8e 09 00 00       	call   0x46a506
469b78:	cc                   	int3
469b79:	6a 08                	push   $0x8
469b7b:	68 b0 14 4c 00       	push   $0x4c14b0
469b80:	e8 bb 0b 00 00       	call   0x46a740
469b85:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
469b89:	b8 4d 5a 00 00       	mov    $0x5a4d,%eax
469b8e:	66 39 05 00 00 40 00 	cmp    %ax,0x400000
469b95:	75 5d                	jne    0x469bf4
469b97:	a1 3c 00 40 00       	mov    0x40003c,%eax
469b9c:	81 b8 00 00 40 00 50 	cmpl   $0x4550,0x400000(%eax)
469ba3:	45 00 00
469ba6:	75 4c                	jne    0x469bf4
469ba8:	b9 0b 01 00 00       	mov    $0x10b,%ecx
469bad:	66 39 88 18 00 40 00 	cmp    %cx,0x400018(%eax)
469bb4:	75 3e                	jne    0x469bf4
469bb6:	8b 45 08             	mov    0x8(%ebp),%eax
469bb9:	b9 00 00 40 00       	mov    $0x400000,%ecx
469bbe:	2b c1                	sub    %ecx,%eax
469bc0:	50                   	push   %eax
469bc1:	51                   	push   %ecx
469bc2:	e8 7c fe ff ff       	call   0x469a43
469bc7:	59                   	pop    %ecx
469bc8:	59                   	pop    %ecx
469bc9:	85 c0                	test   %eax,%eax
469bcb:	74 27                	je     0x469bf4
469bcd:	83 78 24 00          	cmpl   $0x0,0x24(%eax)
469bd1:	7c 21                	jl     0x469bf4
469bd3:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
469bda:	b0 01                	mov    $0x1,%al
469bdc:	eb 1f                	jmp    0x469bfd
469bde:	8b 45 ec             	mov    -0x14(%ebp),%eax
469be1:	8b 00                	mov    (%eax),%eax
469be3:	33 c9                	xor    %ecx,%ecx
469be5:	81 38 05 00 00 c0    	cmpl   $0xc0000005,(%eax)
469beb:	0f 94 c1             	sete   %cl
469bee:	8b c1                	mov    %ecx,%eax
469bf0:	c3                   	ret
469bf1:	8b 65 e8             	mov    -0x18(%ebp),%esp
469bf4:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
469bfb:	32 c0                	xor    %al,%al
469bfd:	8b 4d f0             	mov    -0x10(%ebp),%ecx
469c00:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
469c07:	59                   	pop    %ecx
469c08:	5f                   	pop    %edi
469c09:	5e                   	pop    %esi
469c0a:	5b                   	pop    %ebx
469c0b:	c9                   	leave
469c0c:	c3                   	ret
469c0d:	55                   	push   %ebp
469c0e:	8b ec                	mov    %esp,%ebp
469c10:	e8 70 0b 00 00       	call   0x46a785
469c15:	85 c0                	test   %eax,%eax
469c17:	74 0f                	je     0x469c28
469c19:	80 7d 08 00          	cmpb   $0x0,0x8(%ebp)
469c1d:	75 09                	jne    0x469c28
469c1f:	33 c0                	xor    %eax,%eax
469c21:	b9 8c 7f 4c 00       	mov    $0x4c7f8c,%ecx
469c26:	87 01                	xchg   %eax,(%ecx)
469c28:	5d                   	pop    %ebp
469c29:	c3                   	ret
469c2a:	55                   	push   %ebp
469c2b:	8b ec                	mov    %esp,%ebp
469c2d:	80 3d 90 7f 4c 00 00 	cmpb   $0x0,0x4c7f90
469c34:	74 06                	je     0x469c3c
469c36:	80 7d 0c 00          	cmpb   $0x0,0xc(%ebp)
469c3a:	75 12                	jne    0x469c4e
469c3c:	ff 75 08             	push   0x8(%ebp)
469c3f:	e8 7c ba 01 00       	call   0x4856c0
469c44:	ff 75 08             	push   0x8(%ebp)
469c47:	e8 0f 38 00 00       	call   0x46d45b
469c4c:	59                   	pop    %ecx
469c4d:	59                   	pop    %ecx
469c4e:	b0 01                	mov    $0x1,%al
469c50:	5d                   	pop    %ebp
469c51:	c3                   	ret
469c52:	55                   	push   %ebp
469c53:	8b ec                	mov    %esp,%ebp
469c55:	83 3d 94 7f 4c 00 ff 	cmpl   $0xffffffff,0x4c7f94
469c5c:	ff 75 08             	push   0x8(%ebp)
469c5f:	75 07                	jne    0x469c68