449889:	75 24                	jne    0x4498af
44988b:	8d 45 d0             	lea    -0x30(%ebp),%eax
44988e:	89 45 f8             	mov    %eax,-0x8(%ebp)
449891:	e8 fc fe ff ff       	call   0x449792
449896:	8d 45 f8             	lea    -0x8(%ebp),%eax
449899:	50                   	push   %eax
44989a:	6a 01                	push   $0x1
44989c:	57                   	push   %edi
44989d:	68 57 00 6d c0       	push   $0xc06d0057
4498a2:	ff 15 0c b3 44 00    	call   *0x44b30c
4498a8:	33 c0                	xor    %eax,%eax
4498aa:	e9 d7 01 00 00       	jmp    0x449a86
4498af:	8b 45 0c             	mov    0xc(%ebp),%eax
4498b2:	8b 3b                	mov    (%ebx),%edi
4498b4:	2b c2                	sub    %edx,%eax
4498b6:	c1 f8 02             	sar    $0x2,%eax
4498b9:	89 45 c8             	mov    %eax,-0x38(%ebp)
4498bc:	8b 0c 86             	mov    (%esi,%eax,4),%ecx
4498bf:	8b c1                	mov    %ecx,%eax
4498c1:	c1 e8 1f             	shr    $0x1f,%eax
4498c4:	f7 d0                	not    %eax
4498c6:	83 e0 01             	and    $0x1,%eax
4498c9:	89 45 e0             	mov    %eax,-0x20(%ebp)
4498cc:	8d 81 02 00 40 00    	lea    0x400002(%ecx),%eax
4498d2:	75 03                	jne    0x4498d7
4498d4:	0f b7 c1             	movzwl %cx,%eax
4498d7:	8b 1d 38 6e 46 00    	mov    0x466e38,%ebx
4498dd:	33 f6                	xor    %esi,%esi
4498df:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4498e2:	85 db                	test   %ebx,%ebx
4498e4:	74 1f                	je     0x449905
4498e6:	8d 45 d0             	lea    -0x30(%ebp),%eax
4498e9:	8b cb                	mov    %ebx,%ecx
4498eb:	50                   	push   %eax
4498ec:	56                   	push   %esi
4498ed:	ff 15 d0 b3 44 00    	call   *0x44b3d0
4498f3:	ff d3                	call   *%ebx
4498f5:	8b f0                	mov    %eax,%esi
4498f7:	85 f6                	test   %esi,%esi
4498f9:	0f 85 5c 01 00 00    	jne    0x449a5b
4498ff:	8b 1d 38 6e 46 00    	mov    0x466e38,%ebx
449905:	85 ff                	test   %edi,%edi
449907:	0f 85 93 00 00 00    	jne    0x4499a0
44990d:	85 db                	test   %ebx,%ebx
44990f:	74 16                	je     0x449927
449911:	8d 45 d0             	lea    -0x30(%ebp),%eax
449914:	8b cb                	mov    %ebx,%ecx
449916:	50                   	push   %eax
449917:	6a 01                	push   $0x1
449919:	ff 15 d0 b3 44 00    	call   *0x44b3d0
44991f:	ff d3                	call   *%ebx
449921:	8b f8                	mov    %eax,%edi
449923:	85 ff                	test   %edi,%edi
449925:	75 61                	jne    0x449988
449927:	33 db                	xor    %ebx,%ebx
449929:	53                   	push   %ebx
44992a:	53                   	push   %ebx
44992b:	ff 75 dc             	push   -0x24(%ebp)
44992e:	ff 15 18 b3 44 00    	call   *0x44b318
449934:	8b f8                	mov    %eax,%edi
449936:	85 ff                	test   %edi,%edi
449938:	75 4e                	jne    0x449988
44993a:	ff 15 e8 b0 44 00    	call   *0x44b0e8
449940:	8b 3d 3c 6e 46 00    	mov    0x466e3c,%edi
449946:	89 45 f0             	mov    %eax,-0x10(%ebp)
449949:	85 ff                	test   %edi,%edi
44994b:	74 16                	je     0x449963
44994d:	8d 45 d0             	lea    -0x30(%ebp),%eax
449950:	8b cf                	mov    %edi,%ecx
449952:	50                   	push   %eax
449953:	6a 03                	push   $0x3
449955:	ff 15 d0 b3 44 00    	call   *0x44b3d0
44995b:	ff d7                	call   *%edi
44995d:	8b f8                	mov    %eax,%edi
44995f:	85 ff                	test   %edi,%edi
449961:	75 25                	jne    0x449988
449963:	8d 45 d0             	lea    -0x30(%ebp),%eax
449966:	89 45 f8             	mov    %eax,-0x8(%ebp)
449969:	e8 24 fe ff ff       	call   0x449792
44996e:	8d 45 f8             	lea    -0x8(%ebp),%eax
449971:	50                   	push   %eax
449972:	6a 01                	push   $0x1
449974:	53                   	push   %ebx
449975:	68 7e 00 6d c0       	push   $0xc06d007e
44997a:	ff 15 0c b3 44 00    	call   *0x44b30c
449980:	8b 45 ec             	mov    -0x14(%ebp),%eax
449983:	e9 fe 00 00 00       	jmp    0x449a86
449988:	8b 4d f8             	mov    -0x8(%ebp),%ecx
44998b:	8b c7                	mov    %edi,%eax
44998d:	87 01                	xchg   %eax,(%ecx)
44998f:	3b c7                	cmp    %edi,%eax
449991:	75 07                	jne    0x44999a
449993:	57                   	push   %edi
449994:	ff 15 b0 b1 44 00    	call   *0x44b1b0
44999a:	8b 1d 38 6e 46 00    	mov    0x466e38,%ebx
4499a0:	89 7d e8             	mov    %edi,-0x18(%ebp)
4499a3:	85 db                	test   %ebx,%ebx
4499a5:	74 12                	je     0x4499b9
4499a7:	8d 45 d0             	lea    -0x30(%ebp),%eax
4499aa:	8b cb                	mov    %ebx,%ecx
4499ac:	50                   	push   %eax
4499ad:	6a 02                	push   $0x2
4499af:	ff 15 d0 b3 44 00    	call   *0x44b3d0
4499b5:	ff d3                	call   *%ebx
4499b7:	8b f0                	mov    %eax,%esi
4499b9:	85 f6                	test   %esi,%esi
4499bb:	0f 85 95 00 00 00    	jne    0x449a56
4499c1:	8b 45 08             	mov    0x8(%ebp),%eax
4499c4:	33 db                	xor    %ebx,%ebx
4499c6:	39 58 14             	cmp    %ebx,0x14(%eax)
4499c9:	74 2d                	je     0x4499f8
4499cb:	39 58 1c             	cmp    %ebx,0x1c(%eax)
4499ce:	74 28                	je     0x4499f8
4499d0:	8b 47 3c             	mov    0x3c(%edi),%eax
4499d3:	81 3c 38 50 45 00 00 	cmpl   $0x4550,(%eax,%edi,1)
4499da:	75 1c                	jne    0x4499f8
4499dc:	8b 4d cc             	mov    -0x34(%ebp),%ecx
4499df:	39 4c 38 08          	cmp    %ecx,0x8(%eax,%edi,1)
4499e3:	75 13                	jne    0x4499f8
4499e5:	3b 7c 38 34          	cmp    0x34(%eax,%edi,1),%edi
4499e9:	75 0d                	jne    0x4499f8
4499eb:	8b 75 c8             	mov    -0x38(%ebp),%esi
4499ee:	8b 45 f4             	mov    -0xc(%ebp),%eax
4499f1:	8b 34 b0             	mov    (%eax,%esi,4),%esi
4499f4:	85 f6                	test   %esi,%esi
4499f6:	75 5e                	jne    0x449a56
4499f8:	ff 75 e4             	push   -0x1c(%ebp)
4499fb:	57                   	push   %edi
4499fc:	ff 15 dc b0 44 00    	call   *0x44b0dc
449a02:	8b f0                	mov    %eax,%esi
449a04:	85 f6                	test   %esi,%esi
449a06:	75 4e                	jne    0x449a56
449a08:	ff 15 e8 b0 44 00    	call   *0x44b0e8
449a0e:	8b 35 3c 6e 46 00    	mov    0x466e3c,%esi
449a14:	89 45 f0             	mov    %eax,-0x10(%ebp)
449a17:	85 f6                	test   %esi,%esi
449a19:	74 16                	je     0x449a31
449a1b:	8d 45 d0             	lea    -0x30(%ebp),%eax
449a1e:	8b ce                	mov    %esi,%ecx
449a20:	50                   	push   %eax
449a21:	6a 04                	push   $0x4
449a23:	ff 15 d0 b3 44 00    	call   *0x44b3d0
449a29:	ff d6                	call   *%esi
449a2b:	8b f0                	mov    %eax,%esi
449a2d:	85 f6                	test   %esi,%esi
449a2f:	75 25                	jne    0x449a56
449a31:	8d 45 d0             	lea    -0x30(%ebp),%eax
449a34:	89 45 f4             	mov    %eax,-0xc(%ebp)
449a37:	e8 56 fd ff ff       	call   0x449792
449a3c:	8d 45 f4             	lea    -0xc(%ebp),%eax
449a3f:	50                   	push   %eax
449a40:	6a 01                	push   $0x1
449a42:	53                   	push   %ebx
449a43:	68 7f 00 6d c0       	push   $0xc06d007f
449a48:	ff 15 0c b3 44 00    	call   *0x44b30c
449a4e:	e8 cf fa ff ff       	call   0x449522
449a53:	8b 75 ec             	mov    -0x14(%ebp),%esi
449a56:	8b 45 0c             	mov    0xc(%ebp),%eax
449a59:	89 30                	mov    %esi,(%eax)
449a5b:	8b 1d 38 6e 46 00    	mov    0x466e38,%ebx
449a61:	85 db                	test   %ebx,%ebx
449a63:	74 1a                	je     0x449a7f
449a65:	83 65 f0 00          	andl   $0x0,-0x10(%ebp)
449a69:	8d 45 d0             	lea    -0x30(%ebp),%eax
449a6c:	50                   	push   %eax
449a6d:	6a 05                	push   $0x5
449a6f:	8b cb                	mov    %ebx,%ecx
449a71:	89 7d e8             	mov    %edi,-0x18(%ebp)
449a74:	89 75 ec             	mov    %esi,-0x14(%ebp)
449a77:	ff 15 d0 b3 44 00    	call   *0x44b3d0
449a7d:	ff d3                	call   *%ebx
449a7f:	e8 0e fd ff ff       	call   0x449792
449a84:	8b c6                	mov    %esi,%eax
449a86:	8b 4d fc             	mov    -0x4(%ebp),%ecx
449a89:	5f                   	pop    %edi
449a8a:	5e                   	pop    %esi
449a8b:	33 cd                	xor    %ebp,%ecx
449a8d:	5b                   	pop    %ebx
449a8e:	e8 a3 43 fe ff       	call   0x42de36
449a93:	8b e5                	mov    %ebp,%esp
449a95:	5d                   	pop    %ebp
449a96:	c2 08 00             	ret    $0x8
449a99:	cc                   	int3
449a9a:	cc                   	int3
449a9b:	cc                   	int3
449a9c:	cc                   	int3
449a9d:	cc                   	int3
449a9e:	cc                   	int3
449a9f:	cc                   	int3
449aa0:	55                   	push   %ebp
449aa1:	8b ec                	mov    %esp,%ebp
449aa3:	8b 45 08             	mov    0x8(%ebp),%eax
449aa6:	33 d2                	xor    %edx,%edx
449aa8:	53                   	push   %ebx
449aa9:	56                   	push   %esi
449aaa:	57                   	push   %edi
449aab:	8b 48 3c             	mov    0x3c(%eax),%ecx
449aae:	03 c8                	add    %eax,%ecx
449ab0:	0f b7 41 14          	movzwl 0x14(%ecx),%eax
449ab4:	0f b7 59 06          	movzwl 0x6(%ecx),%ebx
449ab8:	83 c0 18             	add    $0x18,%eax
449abb:	03 c1                	add    %ecx,%eax
449abd:	85 db                	test   %ebx,%ebx
449abf:	74 1b                	je     0x449adc
449ac1:	8b 7d 0c             	mov    0xc(%ebp),%edi
449ac4:	8b 70 0c             	mov    0xc(%eax),%esi
449ac7:	3b fe                	cmp    %esi,%edi
449ac9:	72 09                	jb     0x449ad4
449acb:	8b 48 08             	mov    0x8(%eax),%ecx
449ace:	03 ce                	add    %esi,%ecx
449ad0:	3b f9                	cmp    %ecx,%edi
449ad2:	72 0a                	jb     0x449ade
449ad4:	42                   	inc    %edx
449ad5:	83 c0 28             	add    $0x28,%eax
449ad8:	3b d3                	cmp    %ebx,%edx
449ada:	72 e8                	jb     0x449ac4
449adc:	33 c0                	xor    %eax,%eax
449ade:	5f                   	pop    %edi
449adf:	5e                   	pop    %esi
449ae0:	5b                   	pop    %ebx
449ae1:	5d                   	pop    %ebp
449ae2:	c3                   	ret
449ae3:	cc                   	int3
449ae4:	cc                   	int3
449ae5:	cc                   	int3
449ae6:	cc                   	int3
449ae7:	cc                   	int3
449ae8:	cc                   	int3
449ae9:	cc                   	int3
449aea:	cc                   	int3
449aeb:	cc                   	int3
449aec:	cc                   	int3
449aed:	cc                   	int3
449aee:	cc                   	int3
449aef:	cc                   	int3
449af0:	55                   	push   %ebp
449af1:	8b ec                	mov    %esp,%ebp
449af3:	6a fe                	push   $0xfffffffe
449af5:	68 08 80 46 00       	push   $0x468008
449afa:	68 e0 10 43 00       	push   $0x4310e0
449aff:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
449b05:	50                   	push   %eax
449b06:	83 ec 08             	sub    $0x8,%esp
449b09:	53                   	push   %ebx
449b0a:	56                   	push   %esi
449b0b:	57                   	push   %edi
449b0c:	a1 08 a0 46 00       	mov    0x46a008,%eax
449b11:	31 45 f8             	xor    %eax,-0x8(%ebp)
449b14:	33 c5                	xor    %ebp,%eax
449b16:	50                   	push   %eax
449b17:	8d 45 f0             	lea    -0x10(%ebp),%eax
449b1a:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
449b20:	89 65 e8             	mov    %esp,-0x18(%ebp)
449b23:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
449b2a:	68 00 00 40 00       	push   $0x400000
449b2f:	e8 7c 00 00 00       	call   0x449bb0
449b34:	83 c4 04             	add    $0x4,%esp
449b37:	85 c0                	test   %eax,%eax
449b39:	74 54                	je     0x449b8f
449b3b:	8b 45 08             	mov    0x8(%ebp),%eax
449b3e:	2d 00 00 40 00       	sub    $0x400000,%eax
449b43:	50                   	push   %eax
449b44:	68 00 00 40 00       	push   $0x400000
449b49:	e8 52 ff ff ff       	call   0x449aa0
449b4e:	83 c4 08             	add    $0x8,%esp
449b51:	85 c0                	test   %eax,%eax
449b53:	74 3a                	je     0x449b8f
449b55:	8b 40 24             	mov    0x24(%eax),%eax
449b58:	c1 e8 1f             	shr    $0x1f,%eax
449b5b:	f7 d0                	not    %eax
449b5d:	83 e0 01             	and    $0x1,%eax
449b60:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
449b67:	8b 4d f0             	mov    -0x10(%ebp),%ecx
449b6a:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
449b71:	59                   	pop    %ecx
449b72:	5f                   	pop    %edi
449b73:	5e                   	pop    %esi
449b74:	5b                   	pop    %ebx
449b75:	8b e5                	mov    %ebp,%esp
449b77:	5d                   	pop    %ebp
449b78:	c3                   	ret
449b79:	8b 45 ec             	mov    -0x14(%ebp),%eax
449b7c:	8b 00                	mov    (%eax),%eax
449b7e:	33 c9                	xor    %ecx,%ecx
449b80:	81 38 05 00 00 c0    	cmpl   $0xc0000005,(%eax)
449b86:	0f 94 c1             	sete   %cl
449b89:	8b c1                	mov    %ecx,%eax
449b8b:	c3                   	ret
449b8c:	8b 65 e8             	mov    -0x18(%ebp),%esp
449b8f:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
449b96:	33 c0                	xor    %eax,%eax
449b98:	8b 4d f0             	mov    -0x10(%ebp),%ecx
449b9b:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
449ba2:	59                   	pop    %ecx
449ba3:	5f                   	pop    %edi
449ba4:	5e                   	pop    %esi
449ba5:	5b                   	pop    %ebx
449ba6:	8b e5                	mov    %ebp,%esp
449ba8:	5d                   	pop    %ebp
449ba9:	c3                   	ret
449baa:	cc                   	int3
449bab:	cc                   	int3
449bac:	cc                   	int3
449bad:	cc                   	int3
449bae:	cc                   	int3
449baf:	cc                   	int3
449bb0:	55                   	push   %ebp
449bb1:	8b ec                	mov    %esp,%ebp
449bb3:	8b 45 08             	mov    0x8(%ebp),%eax
449bb6:	b9 4d 5a 00 00       	mov    $0x5a4d,%ecx
449bbb:	66 39 08             	cmp    %cx,(%eax)
449bbe:	74 04                	je     0x449bc4
449bc0:	33 c0                	xor    %eax,%eax
449bc2:	5d                   	pop    %ebp
449bc3:	c3                   	ret
449bc4:	8b 48 3c             	mov    0x3c(%eax),%ecx
449bc7:	03 c8                	add    %eax,%ecx
449bc9:	33 c0                	xor    %eax,%eax
449bcb:	81 39 50 45 00 00    	cmpl   $0x4550,(%ecx)
449bd1:	75 0c                	jne    0x449bdf
449bd3:	ba 0b 01 00 00       	mov    $0x10b,%edx
449bd8:	66 39 51 18          	cmp    %dx,0x18(%ecx)
449bdc:	0f 94 c0             	sete   %al
449bdf:	5d                   	pop    %ebp
449be0:	c3                   	ret
449be1:	cc                   	int3
449be2:	cc                   	int3
449be3:	cc                   	int3
449be4:	cc                   	int3
449be5:	cc                   	int3
449be6:	cc                   	int3
449be7:	cc                   	int3
449be8:	cc                   	int3
449be9:	cc                   	int3
449bea:	cc                   	int3
449beb:	cc                   	int3
449bec:	cc                   	int3
449bed:	cc                   	int3
449bee:	cc                   	int3
449bef:	cc                   	int3
449bf0:	56                   	push   %esi
449bf1:	8b 44 24 14          	mov    0x14(%esp),%eax
449bf5:	0b c0                	or     %eax,%eax
449bf7:	75 28                	jne    0x449c21
449bf9:	8b 4c 24 10          	mov    0x10(%esp),%ecx
449bfd:	8b 44 24 0c          	mov    0xc(%esp),%eax
449c01:	33 d2                	xor    %edx,%edx
449c03:	f7 f1                	div    %ecx
449c05:	8b d8                	mov    %eax,%ebx
449c07:	8b 44 24 08          	mov    0x8(%esp),%eax