406ab9:	0f 94 c1             	sete   %cl
406abc:	8b c1                	mov    %ecx,%eax
406abe:	c3                   	ret
406abf:	8b 65 e8             	mov    -0x18(%ebp),%esp
406ac2:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
406ac9:	32 c0                	xor    %al,%al
406acb:	e8 96 0b 00 00       	call   0x407666
406ad0:	c3                   	ret
406ad1:	55                   	push   %ebp
406ad2:	8b ec                	mov    %esp,%ebp
406ad4:	e8 48 09 00 00       	call   0x407421
406ad9:	85 c0                	test   %eax,%eax
406adb:	74 0f                	je     0x406aec
406add:	80 7d 08 00          	cmpb   $0x0,0x8(%ebp)
406ae1:	75 09                	jne    0x406aec
406ae3:	33 c0                	xor    %eax,%eax
406ae5:	b9 fc 95 83 02       	mov    $0x28395fc,%ecx
406aea:	87 01                	xchg   %eax,(%ecx)
406aec:	5d                   	pop    %ebp
406aed:	c3                   	ret
406aee:	55                   	push   %ebp
406aef:	8b ec                	mov    %esp,%ebp
406af1:	80 3d 18 96 83 02 00 	cmpb   $0x0,0x2839618
406af8:	74 06                	je     0x406b00
406afa:	80 7d 0c 00          	cmpb   $0x0,0xc(%ebp)
406afe:	75 12                	jne    0x406b12
406b00:	ff 75 08             	push   0x8(%ebp)
406b03:	e8 dc fb 00 00       	call   0x4166e4
406b08:	ff 75 08             	push   0x8(%ebp)
406b0b:	e8 46 46 00 00       	call   0x40b156
406b10:	59                   	pop    %ecx
406b11:	59                   	pop    %ecx
406b12:	b0 01                	mov    $0x1,%al
406b14:	5d                   	pop    %ebp
406b15:	c3                   	ret
406b16:	55                   	push   %ebp
406b17:	8b ec                	mov    %esp,%ebp
406b19:	a1 28 ba 43 00       	mov    0x43ba28,%eax
406b1e:	8b c8                	mov    %eax,%ecx
406b20:	33 05 00 96 83 02    	xor    0x2839600,%eax
406b26:	83 e1 1f             	and    $0x1f,%ecx
406b29:	ff 75 08             	push   0x8(%ebp)
406b2c:	d3 c8                	ror    %cl,%eax
406b2e:	83 f8 ff             	cmp    $0xffffffff,%eax
406b31:	75 07                	jne    0x406b3a
406b33:	e8 d5 f9 00 00       	call   0x41650d
406b38:	eb 0b                	jmp    0x406b45
406b3a:	68 00 96 83 02       	push   $0x2839600
406b3f:	e8 39 fa 00 00       	call   0x41657d
406b44:	59                   	pop    %ecx
406b45:	f7 d8                	neg    %eax
406b47:	59                   	pop    %ecx
406b48:	1b c0                	sbb    %eax,%eax
406b4a:	f7 d0                	not    %eax
406b4c:	23 45 08             	and    0x8(%ebp),%eax
406b4f:	5d                   	pop    %ebp
406b50:	c3                   	ret
406b51:	55                   	push   %ebp
406b52:	8b ec                	mov    %esp,%ebp
406b54:	ff 75 08             	push   0x8(%ebp)
406b57:	e8 ba ff ff ff       	call   0x406b16
406b5c:	f7 d8                	neg    %eax
406b5e:	59                   	pop    %ecx
406b5f:	1b c0                	sbb    %eax,%eax
406b61:	f7 d8                	neg    %eax
406b63:	48                   	dec    %eax
406b64:	5d                   	pop    %ebp
406b65:	c3                   	ret
406b66:	53                   	push   %ebx
406b67:	56                   	push   %esi
406b68:	57                   	push   %edi
406b69:	6a 00                	push   $0x0
406b6b:	68 a0 0f 00 00       	push   $0xfa0
406b70:	68 1c 96 83 02       	push   $0x283961c
406b75:	e8 d5 49 00 00       	call   0x40b54f
406b7a:	83 c4 0c             	add    $0xc,%esp
406b7d:	68 a4 74 42 00       	push   $0x4274a4
406b82:	ff 15 6c 71 42 00    	call   *0x42716c
406b88:	8b f0                	mov    %eax,%esi
406b8a:	85 f6                	test   %esi,%esi
406b8c:	0f 84 8c 00 00 00    	je     0x406c1e
406b92:	68 5c 83 42 00       	push   $0x42835c
406b97:	56                   	push   %esi
406b98:	ff 15 70 71 42 00    	call   *0x427170
406b9e:	68 ac 83 42 00       	push   $0x4283ac
406ba3:	56                   	push   %esi
406ba4:	8b d8                	mov    %eax,%ebx
406ba6:	ff 15 70 71 42 00    	call   *0x427170
406bac:	68 90 83 42 00       	push   $0x428390
406bb1:	56                   	push   %esi
406bb2:	8b f8                	mov    %eax,%edi
406bb4:	ff 15 70 71 42 00    	call   *0x427170
406bba:	8b f0                	mov    %eax,%esi
406bbc:	85 db                	test   %ebx,%ebx
406bbe:	74 37                	je     0x406bf7
406bc0:	85 ff                	test   %edi,%edi
406bc2:	74 33                	je     0x406bf7
406bc4:	85 f6                	test   %esi,%esi
406bc6:	74 2f                	je     0x406bf7
406bc8:	83 25 38 96 83 02 00 	andl   $0x0,0x2839638
406bcf:	8b cb                	mov    %ebx,%ecx
406bd1:	68 34 96 83 02       	push   $0x2839634
406bd6:	e8 96 04 00 00       	call   0x407071
406bdb:	ff d3                	call   *%ebx
406bdd:	57                   	push   %edi
406bde:	e8 43 00 00 00       	call   0x406c26
406be3:	56                   	push   %esi
406be4:	a3 3c 96 83 02       	mov    %eax,0x283963c
406be9:	e8 55 00 00 00       	call   0x406c43
406bee:	59                   	pop    %ecx
406bef:	59                   	pop    %ecx
406bf0:	a3 40 96 83 02       	mov    %eax,0x2839640
406bf5:	eb 16                	jmp    0x406c0d
406bf7:	33 c0                	xor    %eax,%eax
406bf9:	50                   	push   %eax
406bfa:	50                   	push   %eax
406bfb:	6a 01                	push   $0x1
406bfd:	50                   	push   %eax
406bfe:	ff 15 54 71 42 00    	call   *0x427154
406c04:	a3 38 96 83 02       	mov    %eax,0x2839638
406c09:	85 c0                	test   %eax,%eax
406c0b:	74 11                	je     0x406c1e
406c0d:	68 60 6c 40 00       	push   $0x406c60
406c12:	e8 3a ff ff ff       	call   0x406b51
406c17:	59                   	pop    %ecx
406c18:	5f                   	pop    %edi
406c19:	5e                   	pop    %esi
406c1a:	33 c0                	xor    %eax,%eax
406c1c:	5b                   	pop    %ebx
406c1d:	c3                   	ret
406c1e:	6a 07                	push   $0x7
406c20:	e8 08 08 00 00       	call   0x40742d
406c25:	cc                   	int3
406c26:	55                   	push   %ebp
406c27:	8b ec                	mov    %esp,%ebp
406c29:	a1 28 ba 43 00       	mov    0x43ba28,%eax
406c2e:	83 e0 1f             	and    $0x1f,%eax
406c31:	6a 20                	push   $0x20
406c33:	59                   	pop    %ecx
406c34:	2b c8                	sub    %eax,%ecx
406c36:	8b 45 08             	mov    0x8(%ebp),%eax
406c39:	d3 c8                	ror    %cl,%eax
406c3b:	33 05 28 ba 43 00    	xor    0x43ba28,%eax
406c41:	5d                   	pop    %ebp
406c42:	c3                   	ret
406c43:	55                   	push   %ebp
406c44:	8b ec                	mov    %esp,%ebp
406c46:	a1 28 ba 43 00       	mov    0x43ba28,%eax
406c4b:	83 e0 1f             	and    $0x1f,%eax
406c4e:	6a 20                	push   $0x20
406c50:	59                   	pop    %ecx
406c51:	2b c8                	sub    %eax,%ecx
406c53:	8b 45 08             	mov    0x8(%ebp),%eax
406c56:	d3 c8                	ror    %cl,%eax
406c58:	33 05 28 ba 43 00    	xor    0x43ba28,%eax
406c5e:	5d                   	pop    %ebp
406c5f:	c3                   	ret
406c60:	68 1c 96 83 02       	push   $0x283961c
406c65:	ff 15 40 71 42 00    	call   *0x427140
406c6b:	a1 38 96 83 02       	mov    0x2839638,%eax
406c70:	85 c0                	test   %eax,%eax
406c72:	74 07                	je     0x406c7b
406c74:	50                   	push   %eax
406c75:	ff 15 80 71 42 00    	call   *0x427180
406c7b:	c3                   	ret
406c7c:	55                   	push   %ebp
406c7d:	8b ec                	mov    %esp,%ebp
406c7f:	e8 7d 00 00 00       	call   0x406d01
406c84:	8b 0d 10 ba 43 00    	mov    0x43ba10,%ecx
406c8a:	8b 45 08             	mov    0x8(%ebp),%eax
406c8d:	41                   	inc    %ecx
406c8e:	89 0d 10 ba 43 00    	mov    %ecx,0x43ba10
406c94:	89 08                	mov    %ecx,(%eax)
406c96:	64 a1 2c 00 00 00    	mov    %fs:0x2c,%eax
406c9c:	8b 0d 44 96 83 02    	mov    0x2839644,%ecx
406ca2:	8b 0c 88             	mov    (%eax,%ecx,4),%ecx
406ca5:	a1 10 ba 43 00       	mov    0x43ba10,%eax
406caa:	89 81 08 00 00 00    	mov    %eax,0x8(%ecx)
406cb0:	e8 99 00 00 00       	call   0x406d4e
406cb5:	5d                   	pop    %ebp
406cb6:	e9 52 00 00 00       	jmp    0x406d0d
406cbb:	55                   	push   %ebp
406cbc:	8b ec                	mov    %esp,%ebp
406cbe:	56                   	push   %esi
406cbf:	e8 3d 00 00 00       	call   0x406d01
406cc4:	8b 75 08             	mov    0x8(%ebp),%esi
406cc7:	eb 08                	jmp    0x406cd1
406cc9:	6a 64                	push   $0x64
406ccb:	e8 8a 00 00 00       	call   0x406d5a
406cd0:	59                   	pop    %ecx
406cd1:	83 3e 00             	cmpl   $0x0,(%esi)
406cd4:	74 21                	je     0x406cf7
406cd6:	83 3e ff             	cmpl   $0xffffffff,(%esi)
406cd9:	74 ee                	je     0x406cc9
406cdb:	64 a1 2c 00 00 00    	mov    %fs:0x2c,%eax
406ce1:	8b 0d 44 96 83 02    	mov    0x2839644,%ecx
406ce7:	8b 0c 88             	mov    (%eax,%ecx,4),%ecx
406cea:	a1 10 ba 43 00       	mov    0x43ba10,%eax
406cef:	89 81 08 00 00 00    	mov    %eax,0x8(%ecx)
406cf5:	eb 03                	jmp    0x406cfa
406cf7:	83 0e ff             	orl    $0xffffffff,(%esi)
406cfa:	5e                   	pop    %esi
406cfb:	5d                   	pop    %ebp
406cfc:	e9 4d 00 00 00       	jmp    0x406d4e
406d01:	68 1c 96 83 02       	push   $0x283961c
406d06:	ff 15 38 71 42 00    	call   *0x427138
406d0c:	c3                   	ret
406d0d:	a1 38 96 83 02       	mov    0x2839638,%eax
406d12:	85 c0                	test   %eax,%eax
406d14:	75 24                	jne    0x406d3a
406d16:	56                   	push   %esi
406d17:	8b 35 28 ba 43 00    	mov    0x43ba28,%esi
406d1d:	8b ce                	mov    %esi,%ecx
406d1f:	33 35 40 96 83 02    	xor    0x2839640,%esi
406d25:	83 e1 1f             	and    $0x1f,%ecx
406d28:	d3 ce                	ror    %cl,%esi
406d2a:	68 34 96 83 02       	push   $0x2839634
406d2f:	8b ce                	mov    %esi,%ecx
406d31:	e8 3b 03 00 00       	call   0x407071
406d36:	ff d6                	call   *%esi
406d38:	5e                   	pop    %esi
406d39:	c3                   	ret
406d3a:	50                   	push   %eax
406d3b:	ff 15 84 71 42 00    	call   *0x427184
406d41:	ff 35 38 96 83 02    	push   0x2839638
406d47:	ff 15 88 71 42 00    	call   *0x427188
406d4d:	c3                   	ret
406d4e:	68 1c 96 83 02       	push   $0x283961c
406d53:	ff 15 3c 71 42 00    	call   *0x42713c
406d59:	c3                   	ret
406d5a:	55                   	push   %ebp
406d5b:	8b ec                	mov    %esp,%ebp
406d5d:	83 3d 38 96 83 02 00 	cmpl   $0x0,0x2839638
406d64:	56                   	push   %esi
406d65:	75 31                	jne    0x406d98
406d67:	8b 35 28 ba 43 00    	mov    0x43ba28,%esi
406d6d:	8b ce                	mov    %esi,%ecx
406d6f:	ff 75 08             	push   0x8(%ebp)
406d72:	33 35 3c 96 83 02    	xor    0x283963c,%esi
406d78:	83 e1 1f             	and    $0x1f,%ecx
406d7b:	d3 ce                	ror    %cl,%esi
406d7d:	68 1c 96 83 02       	push   $0x283961c
406d82:	68 34 96 83 02       	push   $0x2839634
406d87:	8b ce                	mov    %esi,%ecx
406d89:	e8 e3 02 00 00       	call   0x407071
406d8e:	ff d6                	call   *%esi
406d90:	f7 d8                	neg    %eax
406d92:	1b c0                	sbb    %eax,%eax
406d94:	f7 d8                	neg    %eax
406d96:	eb 24                	jmp    0x406dbc
406d98:	e8 b1 ff ff ff       	call   0x406d4e
406d9d:	6a 00                	push   $0x0
406d9f:	ff 75 08             	push   0x8(%ebp)
406da2:	ff 35 38 96 83 02    	push   0x2839638
406da8:	ff 15 8c 71 42 00    	call   *0x42718c
406dae:	8b f0                	mov    %eax,%esi
406db0:	e8 4c ff ff ff       	call   0x406d01
406db5:	33 c0                	xor    %eax,%eax
406db7:	85 f6                	test   %esi,%esi
406db9:	0f 94 c0             	sete   %al
406dbc:	5e                   	pop    %esi
406dbd:	5d                   	pop    %ebp
406dbe:	c3                   	ret
406dbf:	cc                   	int3
406dc0:	6a ff                	push   $0xffffffff
406dc2:	50                   	push   %eax
406dc3:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
406dc9:	50                   	push   %eax
406dca:	8b 44 24 0c          	mov    0xc(%esp),%eax
406dce:	64 89 25 00 00 00 00 	mov    %esp,%fs:0x0
406dd5:	89 6c 24 0c          	mov    %ebp,0xc(%esp)
406dd9:	8d 6c 24 0c          	lea    0xc(%esp),%ebp
406ddd:	50                   	push   %eax
406dde:	f2 c3                	bnd ret
406de0:	51                   	push   %ecx
406de1:	8d 4c 24 04          	lea    0x4(%esp),%ecx
406de5:	2b c8                	sub    %eax,%ecx
406de7:	1b c0                	sbb    %eax,%eax
406de9:	f7 d0                	not    %eax
406deb:	23 c8                	and    %eax,%ecx
406ded:	8b c4                	mov    %esp,%eax
406def:	25 00 f0 ff ff       	and    $0xfffff000,%eax
406df4:	3b c8                	cmp    %eax,%ecx
406df6:	f2 72 0b             	bnd jb 0x406e04
406df9:	8b c1                	mov    %ecx,%eax
406dfb:	59                   	pop    %ecx
406dfc:	94                   	xchg   %eax,%esp
406dfd:	8b 00                	mov    (%eax),%eax
406dff:	89 04 24             	mov    %eax,(%esp)
406e02:	f2 c3                	bnd ret
406e04:	2d 00 10 00 00       	sub    $0x1000,%eax
406e09:	85 00                	test   %eax,(%eax)
406e0b:	eb e7                	jmp    0x406df4
406e0d:	55                   	push   %ebp
406e0e:	8b ec                	mov    %esp,%ebp
406e10:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
406e14:	56                   	push   %esi
406e15:	8b f1                	mov    %ecx,%esi
406e17:	c7 06 14 a6 42 00    	movl   $0x42a614,(%esi)
406e1d:	74 0a                	je     0x406e29
406e1f:	6a 0c                	push   $0xc
406e21:	56                   	push   %esi
406e22:	e8 ac fa ff ff       	call   0x4068d3
406e27:	59                   	pop    %ecx
406e28:	59                   	pop    %ecx
406e29:	8b c6                	mov    %esi,%eax
406e2b:	5e                   	pop    %esi
406e2c:	5d                   	pop    %ebp
406e2d:	c2 04 00             	ret    $0x4
406e30:	56                   	push   %esi
406e31:	6a 02                	push   $0x2
406e33:	e8 c4 f8 00 00       	call   0x4166fc
406e38:	e8 e0 08 00 00       	call   0x40771d
406e3d:	50                   	push   %eax
406e3e:	e8 97 fa 00 00       	call   0x4168da
406e43:	e8 7c 0c 01 00       	call   0x417ac4
406e48:	8b f0                	mov    %eax,%esi
406e4a:	e8 cb 08 00 00       	call   0x40771a
406e4f:	6a 01                	push   $0x1
406e51:	89 06                	mov    %eax,(%esi)
406e53:	e8 58 fb ff ff       	call   0x4069b0
406e58:	83 c4 0c             	add    $0xc,%esp
406e5b:	5e                   	pop    %esi
406e5c:	84 c0                	test   %al,%al
406e5e:	74 6c                	je     0x406ecc
406e60:	db e2                	fnclex
406e62:	e8 29 09 00 00       	call   0x407790
406e67:	68 bb 77 40 00       	push   $0x4077bb
406e6c:	e8 e0 fc ff ff       	call   0x406b51
406e71:	e8 a7 05 00 00       	call   0x40741d
406e76:	50                   	push   %eax
406e77:	e8 69 f0 00 00       	call   0x415ee5
406e7c:	59                   	pop    %ecx
406e7d:	59                   	pop    %ecx
406e7e:	85 c0                	test   %eax,%eax
406e80:	75 4a                	jne    0x406ecc
406e82:	e8 a2 08 00 00       	call   0x407729
406e87:	e8 ec 08 00 00       	call   0x407778
406e8c:	85 c0                	test   %eax,%eax
406e8e:	74 0b                	je     0x406e9b
406e90:	68 17 77 40 00       	push   $0x407717
406e95:	e8 37 f9 00 00       	call   0x4167d1
406e9a:	59                   	pop    %ecx
406e9b:	e8 b9 08 00 00       	call   0x407759
406ea0:	e8 b5 08 00 00       	call   0x40775a
406ea5:	e8 8e 08 00 00       	call   0x407738
406eaa:	e8 77 08 00 00       	call   0x407726
406eaf:	50                   	push   %eax
406eb0:	e8 c7 fe 00 00       	call   0x416d7c
406eb5:	59                   	pop    %ecx