443b49:	8d 4d f8             	lea    -0x8(%ebp),%ecx
443b4c:	8b 45 f4             	mov    -0xc(%ebp),%eax
443b4f:	8b 40 14             	mov    0x14(%eax),%eax
443b52:	66 be b7 ff          	mov    $0xffb7,%si
443b56:	e8 95 ff fb ff       	call   0x403af0
443b5b:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
443b5f:	0f 95 45 ff          	setne  -0x1(%ebp)
443b63:	80 7d ff 00          	cmpb   $0x0,-0x1(%ebp)
443b67:	74 43                	je     0x443bac
443b69:	8b 45 f4             	mov    -0xc(%ebp),%eax
443b6c:	89 58 38             	mov    %ebx,0x38(%eax)
443b6f:	33 c0                	xor    %eax,%eax
443b71:	55                   	push   %ebp
443b72:	68 a5 3b 44 00       	push   $0x443ba5
443b77:	64 ff 30             	push   %fs:(%eax)
443b7a:	64 89 20             	mov    %esp,%fs:(%eax)
443b7d:	6a 00                	push   $0x0
443b7f:	8b 45 f4             	mov    -0xc(%ebp),%eax
443b82:	8b 50 14             	mov    0x14(%eax),%edx
443b85:	33 c9                	xor    %ecx,%ecx
443b87:	8b 45 f8             	mov    -0x8(%ebp),%eax
443b8a:	e8 d5 70 ff ff       	call   0x43ac64
443b8f:	33 c0                	xor    %eax,%eax
443b91:	5a                   	pop    %edx
443b92:	59                   	pop    %ecx
443b93:	59                   	pop    %ecx
443b94:	64 89 10             	mov    %edx,%fs:(%eax)
443b97:	68 ac 3b 44 00       	push   $0x443bac
443b9c:	8b 45 f4             	mov    -0xc(%ebp),%eax
443b9f:	33 d2                	xor    %edx,%edx
443ba1:	89 50 38             	mov    %edx,0x38(%eax)
443ba4:	c3                   	ret
443ba5:	e9 de 04 fc ff       	jmp    0x404088
443baa:	eb f0                	jmp    0x443b9c
443bac:	0f b6 45 ff          	movzbl -0x1(%ebp),%eax
443bb0:	5e                   	pop    %esi
443bb1:	5b                   	pop    %ebx
443bb2:	8b e5                	mov    %ebp,%esp
443bb4:	5d                   	pop    %ebp
443bb5:	c3                   	ret
443bb6:	8b c0                	mov    %eax,%eax
443bb8:	55                   	push   %ebp
443bb9:	8b ec                	mov    %esp,%ebp
443bbb:	53                   	push   %ebx
443bbc:	56                   	push   %esi
443bbd:	33 db                	xor    %ebx,%ebx
443bbf:	8b 45 08             	mov    0x8(%ebp),%eax
443bc2:	8b 40 fc             	mov    -0x4(%eax),%eax
443bc5:	8b 70 14             	mov    0x14(%eax),%esi
443bc8:	85 f6                	test   %esi,%esi
443bca:	74 16                	je     0x443be2
443bcc:	8b c6                	mov    %esi,%eax
443bce:	e8 6d 02 00 00       	call   0x443e40
443bd3:	85 c0                	test   %eax,%eax
443bd5:	74 04                	je     0x443bdb
443bd7:	b3 01                	mov    $0x1,%bl
443bd9:	eb 07                	jmp    0x443be2
443bdb:	8b 76 14             	mov    0x14(%esi),%esi
443bde:	85 f6                	test   %esi,%esi
443be0:	75 ea                	jne    0x443bcc
443be2:	8b c3                	mov    %ebx,%eax
443be4:	5e                   	pop    %esi
443be5:	5b                   	pop    %ebx
443be6:	5d                   	pop    %ebp
443be7:	c3                   	ret
443be8:	55                   	push   %ebp
443be9:	8b ec                	mov    %esp,%ebp
443beb:	83 c4 ec             	add    $0xffffffec,%esp
443bee:	53                   	push   %ebx
443bef:	56                   	push   %esi
443bf0:	57                   	push   %edi
443bf1:	89 45 fc             	mov    %eax,-0x4(%ebp)
443bf4:	8b 45 fc             	mov    -0x4(%ebp),%eax
443bf7:	8b 40 04             	mov    0x4(%eax),%eax
443bfa:	85 c0                	test   %eax,%eax
443bfc:	0f 84 58 01 00 00    	je     0x443d5a
443c02:	80 78 57 00          	cmpb   $0x0,0x57(%eax)
443c06:	0f 84 4e 01 00 00    	je     0x443d5a
443c0c:	8b 55 fc             	mov    -0x4(%ebp),%edx
443c0f:	8b 52 1c             	mov    0x1c(%edx),%edx
443c12:	83 7a 6c 00          	cmpl   $0x0,0x6c(%edx)
443c16:	0f 85 3e 01 00 00    	jne    0x443d5a
443c1c:	8b 55 fc             	mov    -0x4(%ebp),%edx
443c1f:	8b 52 14             	mov    0x14(%edx),%edx
443c22:	0f b6 52 10          	movzbl 0x10(%edx),%edx
443c26:	88 90 90 00 00 00    	mov    %dl,0x90(%eax)
443c2c:	ba 02 00 00 00       	mov    $0x2,%edx
443c31:	8b 45 fc             	mov    -0x4(%ebp),%eax
443c34:	e8 57 fd ff ff       	call   0x443990
443c39:	8b d8                	mov    %eax,%ebx
443c3b:	ba 01 00 00 00       	mov    $0x1,%edx
443c40:	8b 45 fc             	mov    -0x4(%ebp),%eax
443c43:	e8 48 fd ff ff       	call   0x443990
443c48:	8b f0                	mov    %eax,%esi
443c4a:	55                   	push   %ebp
443c4b:	e8 68 ff ff ff       	call   0x443bb8
443c50:	59                   	pop    %ecx
443c51:	84 c0                	test   %al,%al
443c53:	74 20                	je     0x443c75
443c55:	8b 45 fc             	mov    -0x4(%ebp),%eax
443c58:	8b 40 14             	mov    0x14(%eax),%eax
443c5b:	80 78 10 01          	cmpb   $0x1,0x10(%eax)
443c5f:	75 0b                	jne    0x443c6c
443c61:	8b 45 fc             	mov    -0x4(%ebp),%eax
443c64:	8b 40 1c             	mov    0x1c(%eax),%eax
443c67:	2b 58 0c             	sub    0xc(%eax),%ebx
443c6a:	eb 09                	jmp    0x443c75
443c6c:	8b 45 fc             	mov    -0x4(%ebp),%eax
443c6f:	8b 40 1c             	mov    0x1c(%eax),%eax
443c72:	2b 70 0c             	sub    0xc(%eax),%esi
443c75:	8b 45 fc             	mov    -0x4(%ebp),%eax
443c78:	e8 c3 01 00 00       	call   0x443e40
443c7d:	85 c0                	test   %eax,%eax
443c7f:	75 70                	jne    0x443cf1
443c81:	8b 45 fc             	mov    -0x4(%ebp),%eax
443c84:	8b 40 14             	mov    0x14(%eax),%eax
443c87:	8b 55 fc             	mov    -0x4(%ebp),%edx
443c8a:	8b 52 1c             	mov    0x1c(%edx),%edx
443c8d:	3b 42 64             	cmp    0x64(%edx),%eax
443c90:	74 2b                	je     0x443cbd
443c92:	8b 45 fc             	mov    -0x4(%ebp),%eax
443c95:	8b 40 14             	mov    0x14(%eax),%eax
443c98:	0f b6 40 10          	movzbl 0x10(%eax),%eax
443c9c:	8b 55 fc             	mov    -0x4(%ebp),%edx
443c9f:	8b 52 1c             	mov    0x1c(%edx),%edx
443ca2:	8b 52 64             	mov    0x64(%edx),%edx
443ca5:	3a 42 10             	cmp    0x10(%edx),%al
443ca8:	75 13                	jne    0x443cbd
443caa:	8b 45 fc             	mov    -0x4(%ebp),%eax
443cad:	e8 b2 00 00 00       	call   0x443d64
443cb2:	8b 55 fc             	mov    -0x4(%ebp),%edx
443cb5:	8b 52 1c             	mov    0x1c(%edx),%edx
443cb8:	3b 42 68             	cmp    0x68(%edx),%eax
443cbb:	7c 34                	jl     0x443cf1
443cbd:	8b 45 fc             	mov    -0x4(%ebp),%eax
443cc0:	8b 40 14             	mov    0x14(%eax),%eax
443cc3:	0f b6 40 10          	movzbl 0x10(%eax),%eax
443cc7:	8b 55 fc             	mov    -0x4(%ebp),%edx
443cca:	8b 52 1c             	mov    0x1c(%edx),%edx
443ccd:	8b 52 64             	mov    0x64(%edx),%edx
443cd0:	3a 42 10             	cmp    0x10(%edx),%al
443cd3:	74 3c                	je     0x443d11
443cd5:	8b 45 fc             	mov    -0x4(%ebp),%eax
443cd8:	e8 87 00 00 00       	call   0x443d64
443cdd:	8b f8                	mov    %eax,%edi
443cdf:	8b 45 fc             	mov    -0x4(%ebp),%eax
443ce2:	8b 40 1c             	mov    0x1c(%eax),%eax
443ce5:	8b 40 64             	mov    0x64(%eax),%eax
443ce8:	e8 77 00 00 00       	call   0x443d64
443ced:	3b f8                	cmp    %eax,%edi
443cef:	7d 20                	jge    0x443d11
443cf1:	8b 45 fc             	mov    -0x4(%ebp),%eax
443cf4:	8b 40 14             	mov    0x14(%eax),%eax
443cf7:	80 78 10 01          	cmpb   $0x1,0x10(%eax)
443cfb:	75 0b                	jne    0x443d08
443cfd:	8b 45 fc             	mov    -0x4(%ebp),%eax
443d00:	8b 40 1c             	mov    0x1c(%eax),%eax
443d03:	2b 70 0c             	sub    0xc(%eax),%esi
443d06:	eb 09                	jmp    0x443d11
443d08:	8b 45 fc             	mov    -0x4(%ebp),%eax
443d0b:	8b 40 1c             	mov    0x1c(%eax),%eax
443d0e:	2b 58 0c             	sub    0xc(%eax),%ebx
443d11:	56                   	push   %esi
443d12:	8d 45 ec             	lea    -0x14(%ebp),%eax
443d15:	50                   	push   %eax
443d16:	ba 01 00 00 00       	mov    $0x1,%edx
443d1b:	8b 45 fc             	mov    -0x4(%ebp),%eax
443d1e:	e8 e9 fb ff ff       	call   0x44390c
443d23:	50                   	push   %eax
443d24:	ba 02 00 00 00       	mov    $0x2,%edx
443d29:	8b 45 fc             	mov    -0x4(%ebp),%eax
443d2c:	e8 db fb ff ff       	call   0x44390c
443d31:	8b cb                	mov    %ebx,%ecx
443d33:	5a                   	pop    %edx
443d34:	e8 07 2a fd ff       	call   0x416740
443d39:	8d 4d ec             	lea    -0x14(%ebp),%ecx
443d3c:	8b 45 fc             	mov    -0x4(%ebp),%eax
443d3f:	8b 50 04             	mov    0x4(%eax),%edx
443d42:	8b 45 fc             	mov    -0x4(%ebp),%eax
443d45:	8b 40 1c             	mov    0x1c(%eax),%eax
443d48:	8b 18                	mov    (%eax),%ebx
443d4a:	ff 13                	call   *(%ebx)
443d4c:	8d 55 ec             	lea    -0x14(%ebp),%edx
443d4f:	8b 45 fc             	mov    -0x4(%ebp),%eax
443d52:	8b 40 04             	mov    0x4(%eax),%eax
443d55:	e8 82 5a ff ff       	call   0x4397dc
443d5a:	5f                   	pop    %edi
443d5b:	5e                   	pop    %esi
443d5c:	5b                   	pop    %ebx
443d5d:	8b e5                	mov    %ebp,%esp
443d5f:	5d                   	pop    %ebp
443d60:	c3                   	ret
443d61:	8d 40 00             	lea    0x0(%eax),%eax
443d64:	53                   	push   %ebx
443d65:	8b d8                	mov    %eax,%ebx
443d67:	8b c3                	mov    %ebx,%eax
443d69:	e8 d6 fa ff ff       	call   0x443844
443d6e:	84 c0                	test   %al,%al
443d70:	75 14                	jne    0x443d86
443d72:	8b c3                	mov    %ebx,%eax
443d74:	e8 4b fa ff ff       	call   0x4437c4
443d79:	84 c0                	test   %al,%al
443d7b:	74 09                	je     0x443d86
443d7d:	8b c3                	mov    %ebx,%eax
443d7f:	e8 f8 fa ff ff       	call   0x44387c
443d84:	5b                   	pop    %ebx
443d85:	c3                   	ret
443d86:	8b 43 20             	mov    0x20(%ebx),%eax
443d89:	5b                   	pop    %ebx
443d8a:	c3                   	ret
443d8b:	90                   	nop
443d8c:	89 50 20             	mov    %edx,0x20(%eax)
443d8f:	c3                   	ret
443d90:	8b 40 08             	mov    0x8(%eax),%eax
443d93:	eb 02                	jmp    0x443d97
443d95:	8b c2                	mov    %edx,%eax
443d97:	8b 50 0c             	mov    0xc(%eax),%edx
443d9a:	85 d2                	test   %edx,%edx
443d9c:	75 f7                	jne    0x443d95
443d9e:	c3                   	ret
443d9f:	90                   	nop
443da0:	53                   	push   %ebx
443da1:	56                   	push   %esi
443da2:	57                   	push   %edi
443da3:	8b fa                	mov    %edx,%edi
443da5:	8b d8                	mov    %eax,%ebx
443da7:	8b d7                	mov    %edi,%edx
443da9:	8b c3                	mov    %ebx,%eax
443dab:	e8 dc ff ff ff       	call   0x443d8c
443db0:	8b 5b 08             	mov    0x8(%ebx),%ebx
443db3:	85 db                	test   %ebx,%ebx
443db5:	74 24                	je     0x443ddb
443db7:	8b c3                	mov    %ebx,%eax
443db9:	e8 4e fa ff ff       	call   0x44380c
443dbe:	85 c0                	test   %eax,%eax
443dc0:	7e 12                	jle    0x443dd4
443dc2:	8b c3                	mov    %ebx,%eax
443dc4:	e8 c7 ff ff ff       	call   0x443d90
443dc9:	8b f0                	mov    %eax,%esi
443dcb:	8b d7                	mov    %edi,%edx
443dcd:	8b c6                	mov    %esi,%eax
443dcf:	e8 cc ff ff ff       	call   0x443da0
443dd4:	8b 5b 0c             	mov    0xc(%ebx),%ebx
443dd7:	85 db                	test   %ebx,%ebx
443dd9:	75 dc                	jne    0x443db7
443ddb:	5f                   	pop    %edi
443ddc:	5e                   	pop    %esi
443ddd:	5b                   	pop    %ebx
443dde:	c3                   	ret
443ddf:	90                   	nop
443de0:	53                   	push   %ebx
443de1:	56                   	push   %esi
443de2:	57                   	push   %edi
443de3:	8b f0                	mov    %eax,%esi
443de5:	8b 5e 08             	mov    0x8(%esi),%ebx
443de8:	85 db                	test   %ebx,%ebx
443dea:	74 4f                	je     0x443e3b
443dec:	8b c3                	mov    %ebx,%eax
443dee:	e8 71 ff ff ff       	call   0x443d64
443df3:	8b f8                	mov    %eax,%edi
443df5:	8b c3                	mov    %ebx,%eax
443df7:	e8 80 fa ff ff       	call   0x44387c
443dfc:	3b f8                	cmp    %eax,%edi
443dfe:	7c 14                	jl     0x443e14
443e00:	8b c3                	mov    %ebx,%eax
443e02:	e8 5d ff ff ff       	call   0x443d64
443e07:	8b f8                	mov    %eax,%edi
443e09:	8b c6                	mov    %esi,%eax
443e0b:	e8 b4 fa ff ff       	call   0x4438c4
443e10:	3b f8                	cmp    %eax,%edi
443e12:	7e 19                	jle    0x443e2d
443e14:	8b c6                	mov    %esi,%eax
443e16:	e8 2d fc ff ff       	call   0x443a48
443e1b:	8b 7e 1c             	mov    0x1c(%esi),%edi
443e1e:	57                   	push   %edi
443e1f:	68 1c 5c 44 00       	push   $0x445c1c
443e24:	8b d6                	mov    %esi,%edx
443e26:	8b c7                	mov    %edi,%eax
443e28:	e8 f3 02 00 00       	call   0x444120
443e2d:	8b c3                	mov    %ebx,%eax
443e2f:	e8 ac ff ff ff       	call   0x443de0
443e34:	8b 5b 0c             	mov    0xc(%ebx),%ebx
443e37:	85 db                	test   %ebx,%ebx
443e39:	75 b1                	jne    0x443dec
443e3b:	5f                   	pop    %edi
443e3c:	5e                   	pop    %esi
443e3d:	5b                   	pop    %ebx
443e3e:	c3                   	ret
443e3f:	90                   	nop
443e40:	8b 40 0c             	mov    0xc(%eax),%eax
443e43:	e8 60 f9 ff ff       	call   0x4437a8
443e48:	c3                   	ret
443e49:	8d 40 00             	lea    0x0(%eax),%eax
443e4c:	53                   	push   %ebx
443e4d:	8b 58 18             	mov    0x18(%eax),%ebx
443e50:	eb 03                	jmp    0x443e55
443e52:	8b 5b 18             	mov    0x18(%ebx),%ebx
443e55:	85 db                	test   %ebx,%ebx
443e57:	74 0b                	je     0x443e64
443e59:	8b c3                	mov    %ebx,%eax
443e5b:	e8 e4 f9 ff ff       	call   0x443844
443e60:	84 c0                	test   %al,%al
443e62:	74 ee                	je     0x443e52
443e64:	8b c3                	mov    %ebx,%eax
443e66:	5b                   	pop    %ebx
443e67:	c3                   	ret
443e68:	8b 40 08             	mov    0x8(%eax),%eax
443e6b:	e8 38 f9 ff ff       	call   0x4437a8
443e70:	c3                   	ret
443e71:	8d 40 00             	lea    0x0(%eax),%eax
443e74:	55                   	push   %ebp
443e75:	8b ec                	mov    %esp,%ebp
443e77:	83 c4 f4             	add    $0xfffffff4,%esp
443e7a:	53                   	push   %ebx
443e7b:	56                   	push   %esi
443e7c:	57                   	push   %edi
443e7d:	84 d2                	test   %dl,%dl
443e7f:	74 08                	je     0x443e89
443e81:	83 c4 f0             	add    $0xfffffff0,%esp
443e84:	e8 8f fd fb ff       	call   0x403c18
443e89:	89 4d f4             	mov    %ecx,-0xc(%ebp)
443e8c:	88 55 fb             	mov    %dl,-0x5(%ebp)
443e8f:	89 45 fc             	mov    %eax,-0x4(%ebp)
443e92:	33 d2                	xor    %edx,%edx
443e94:	8b 45 fc             	mov    -0x4(%ebp),%eax
443e97:	e8 28 fa fb ff       	call   0x4038c4
443e9c:	8b 45 fc             	mov    -0x4(%ebp),%eax
443e9f:	c7 40 0c 04 00 00 00 	movl   $0x4,0xc(%eax)
443ea6:	8b 45 fc             	mov    -0x4(%ebp),%eax
443ea9:	8b 55 f4             	mov    -0xc(%ebp),%edx
443eac:	89 50 14             	mov    %edx,0x14(%eax)
443eaf:	8b 45 fc             	mov    -0x4(%ebp),%eax
443eb2:	c7 40 70 00 00 08 00 	movl   $0x80000,0x70(%eax)
443eb9:	8b 45 fc             	mov    -0x4(%ebp),%eax
443ebc:	c7 40 18 0c 00 00 00 	movl   $0xc,0x18(%eax)
443ec3:	8b 45 f4             	mov    -0xc(%ebp),%eax
443ec6:	0f b6 40 5b          	movzbl 0x5b(%eax),%eax
443eca:	3c 01                	cmp    $0x1,%al
443ecc:	74 04                	je     0x443ed2
443ece:	3c 02                	cmp    $0x2,%al
443ed0:	75 04                	jne    0x443ed6
443ed2:	33 c0                	xor    %eax,%eax
443ed4:	eb 02                	jmp    0x443ed8
443ed6:	b0 01                	mov    $0x1,%al
443ed8:	8b 55 fc             	mov    -0x4(%ebp),%edx
443edb:	88 42 1c             	mov    %al,0x1c(%edx)
443ede:	8b 4d fc             	mov    -0x4(%ebp),%ecx
443ee1:	b2 01                	mov    $0x1,%dl
443ee3:	a1 74 65 43 00       	mov    0x436574,%eax
443ee8:	e8 fb f8 ff ff       	call   0x4437e8