576bbd:	cc                   	int3
576bbe:	cc                   	int3
576bbf:	cc                   	int3
576bc0:	51                   	push   %ecx
576bc1:	8b 01                	mov    (%ecx),%eax
576bc3:	50                   	push   %eax
576bc4:	ff 30                	push   (%eax)
576bc6:	8d 44 24 08          	lea    0x8(%esp),%eax
576bca:	50                   	push   %eax
576bcb:	e8 bb d6 e9 ff       	call   0x41428b
576bd0:	59                   	pop    %ecx
576bd1:	c3                   	ret
576bd2:	cc                   	int3
576bd3:	cc                   	int3
576bd4:	cc                   	int3
576bd5:	cc                   	int3
576bd6:	cc                   	int3
576bd7:	cc                   	int3
576bd8:	cc                   	int3
576bd9:	cc                   	int3
576bda:	cc                   	int3
576bdb:	cc                   	int3
576bdc:	cc                   	int3
576bdd:	cc                   	int3
576bde:	cc                   	int3
576bdf:	cc                   	int3
576be0:	8b 51 08             	mov    0x8(%ecx),%edx
576be3:	b8 ab aa aa 2a       	mov    $0x2aaaaaab,%eax
576be8:	2b 51 04             	sub    0x4(%ecx),%edx
576beb:	f7 ea                	imul   %edx
576bed:	c1 fa 02             	sar    $0x2,%edx
576bf0:	8b c2                	mov    %edx,%eax
576bf2:	c1 e8 1f             	shr    $0x1f,%eax
576bf5:	03 c2                	add    %edx,%eax
576bf7:	c3                   	ret
576bf8:	cc                   	int3
576bf9:	cc                   	int3
576bfa:	cc                   	int3
576bfb:	cc                   	int3
576bfc:	cc                   	int3
576bfd:	cc                   	int3
576bfe:	2b 49 fc             	sub    -0x4(%ecx),%ecx
576c01:	8b 81 7c ff ff ff    	mov    -0x84(%ecx),%eax
576c07:	03 48 08             	add    0x8(%eax),%ecx
576c0a:	83 c1 88             	add    $0xffffff88,%ecx
576c0d:	e9 2f 60 eb ff       	jmp    0x42cc41
576c12:	cc                   	int3
576c13:	cc                   	int3
576c14:	cc                   	int3
576c15:	cc                   	int3
576c16:	cc                   	int3
576c17:	cc                   	int3
576c18:	cc                   	int3
576c19:	cc                   	int3
576c1a:	cc                   	int3
576c1b:	cc                   	int3
576c1c:	cc                   	int3
576c1d:	cc                   	int3
576c1e:	cc                   	int3
576c1f:	cc                   	int3
576c20:	e9 80 ad e9 ff       	jmp    0x4119a5
576c25:	cc                   	int3
576c26:	cc                   	int3
576c27:	cc                   	int3
576c28:	cc                   	int3
576c29:	cc                   	int3
576c2a:	cc                   	int3
576c2b:	cc                   	int3
576c2c:	cc                   	int3
576c2d:	cc                   	int3
576c2e:	cc                   	int3
576c2f:	cc                   	int3
576c30:	8b 44 24 04          	mov    0x4(%esp),%eax
576c34:	85 c0                	test   %eax,%eax
576c36:	75 03                	jne    0x576c3b
576c38:	c2 04 00             	ret    $0x4
576c3b:	3d ff ff ff 03       	cmp    $0x3ffffff,%eax
576c40:	77 3b                	ja     0x576c7d
576c42:	c1 e0 06             	shl    $0x6,%eax
576c45:	3d 00 10 00 00       	cmp    $0x1000,%eax
576c4a:	72 22                	jb     0x576c6e
576c4c:	8d 48 23             	lea    0x23(%eax),%ecx
576c4f:	3b c8                	cmp    %eax,%ecx
576c51:	76 2f                	jbe    0x576c82
576c53:	51                   	push   %ecx
576c54:	e8 24 3d eb ff       	call   0x42a97d
576c59:	8b c8                	mov    %eax,%ecx
576c5b:	83 c4 04             	add    $0x4,%esp
576c5e:	85 c9                	test   %ecx,%ecx
576c60:	74 25                	je     0x576c87
576c62:	8d 41 23             	lea    0x23(%ecx),%eax
576c65:	83 e0 e0             	and    $0xffffffe0,%eax
576c68:	89 48 fc             	mov    %ecx,-0x4(%eax)
576c6b:	c2 04 00             	ret    $0x4
576c6e:	50                   	push   %eax
576c6f:	e8 09 3d eb ff       	call   0x42a97d
576c74:	83 c4 04             	add    $0x4,%esp
576c77:	85 c0                	test   %eax,%eax
576c79:	75 bd                	jne    0x576c38
576c7b:	eb 0f                	jmp    0x576c8c
576c7d:	e8 9c b2 e8 ff       	call   0x401f1e
576c82:	e8 97 b2 e8 ff       	call   0x401f1e
576c87:	e8 01 6d ec ff       	call   0x43d98d
576c8c:	e8 fc 6c ec ff       	call   0x43d98d
576c91:	cc                   	int3
576c92:	cc                   	int3
576c93:	cc                   	int3
576c94:	cc                   	int3
576c95:	cc                   	int3
576c96:	cc                   	int3
576c97:	cc                   	int3
576c98:	cc                   	int3
576c99:	cc                   	int3
576c9a:	cc                   	int3
576c9b:	cc                   	int3
576c9c:	cc                   	int3
576c9d:	cc                   	int3
576c9e:	cc                   	int3
576c9f:	cc                   	int3
576ca0:	cc                   	int3
576ca1:	cc                   	int3
576ca2:	cc                   	int3
576ca3:	cc                   	int3
576ca4:	cc                   	int3
576ca5:	cc                   	int3
576ca6:	cc                   	int3
576ca7:	cc                   	int3
576ca8:	cc                   	int3
576ca9:	cc                   	int3
576caa:	cc                   	int3
576cab:	cc                   	int3
576cac:	cc                   	int3
576cad:	cc                   	int3
576cae:	cc                   	int3
576caf:	cc                   	int3
576cb0:	8b 01                	mov    (%ecx),%eax
576cb2:	8b 08                	mov    (%eax),%ecx
576cb4:	8b 44 24 04          	mov    0x4(%esp),%eax
576cb8:	89 08                	mov    %ecx,(%eax)
576cba:	c2 04 00             	ret    $0x4
576cbd:	cc                   	int3
576cbe:	cc                   	int3
576cbf:	cc                   	int3
576cc0:	8b 51 08             	mov    0x8(%ecx),%edx
576cc3:	b8 ab aa aa 2a       	mov    $0x2aaaaaab,%eax
576cc8:	2b 11                	sub    (%ecx),%edx
576cca:	f7 ea                	imul   %edx
576ccc:	c1 fa 02             	sar    $0x2,%edx
576ccf:	8b c2                	mov    %edx,%eax
576cd1:	c1 e8 1f             	shr    $0x1f,%eax
576cd4:	03 c2                	add    %edx,%eax
576cd6:	c3                   	ret
576cd7:	cc                   	int3
576cd8:	cc                   	int3
576cd9:	cc                   	int3
576cda:	cc                   	int3
576cdb:	cc                   	int3
576cdc:	2b 49 fc             	sub    -0x4(%ecx),%ecx
576cdf:	e9 4f 50 ea ff       	jmp    0x41bd33
576ce4:	cc                   	int3
576ce5:	cc                   	int3
576ce6:	cc                   	int3
576ce7:	cc                   	int3
576ce8:	cc                   	int3
576ce9:	cc                   	int3
576cea:	cc                   	int3
576ceb:	cc                   	int3
576cec:	cc                   	int3
576ced:	cc                   	int3
576cee:	cc                   	int3
576cef:	cc                   	int3
576cf0:	56                   	push   %esi
576cf1:	8b f1                	mov    %ecx,%esi
576cf3:	e8 ca e7 eb ff       	call   0x4354c2
576cf8:	39 44 24 08          	cmp    %eax,0x8(%esp)
576cfc:	75 1e                	jne    0x576d1c
576cfe:	8d 86 7c ff ff ff    	lea    -0x84(%esi),%eax
576d04:	85 c0                	test   %eax,%eax
576d06:	74 29                	je     0x576d31
576d08:	8b 86 7c ff ff ff    	mov    -0x84(%esi),%eax
576d0e:	8b 40 04             	mov    0x4(%eax),%eax
576d11:	05 7c ff ff ff       	add    $0xffffff7c,%eax
576d16:	03 c6                	add    %esi,%eax
576d18:	5e                   	pop    %esi
576d19:	c2 04 00             	ret    $0x4
576d1c:	e8 9d 59 ec ff       	call   0x43c6be
576d21:	39 44 24 08          	cmp    %eax,0x8(%esp)
576d25:	75 0a                	jne    0x576d31
576d27:	8d 86 7c ff ff ff    	lea    -0x84(%esi),%eax
576d2d:	5e                   	pop    %esi
576d2e:	c2 04 00             	ret    $0x4
576d31:	33 c0                	xor    %eax,%eax
576d33:	5e                   	pop    %esi
576d34:	c2 04 00             	ret    $0x4
576d37:	cc                   	int3
576d38:	cc                   	int3
576d39:	cc                   	int3
576d3a:	cc                   	int3
576d3b:	cc                   	int3
576d3c:	cc                   	int3
576d3d:	cc                   	int3
576d3e:	cc                   	int3
576d3f:	cc                   	int3
576d40:	cc                   	int3
576d41:	cc                   	int3
576d42:	cc                   	int3
576d43:	cc                   	int3
576d44:	cc                   	int3
576d45:	cc                   	int3
576d46:	cc                   	int3
576d47:	cc                   	int3
576d48:	cc                   	int3
576d49:	cc                   	int3
576d4a:	cc                   	int3
576d4b:	cc                   	int3
576d4c:	cc                   	int3
576d4d:	cc                   	int3
576d4e:	cc                   	int3
576d4f:	cc                   	int3
576d50:	55                   	push   %ebp
576d51:	8b ec                	mov    %esp,%ebp
576d53:	6a ff                	push   $0xffffffff
576d55:	68 d0 87 b5 00       	push   $0xb587d0
576d5a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
576d60:	50                   	push   %eax
576d61:	56                   	push   %esi
576d62:	a1 24 f6 d5 00       	mov    0xd5f624,%eax
576d67:	33 c5                	xor    %ebp,%eax
576d69:	50                   	push   %eax
576d6a:	8d 45 f4             	lea    -0xc(%ebp),%eax
576d6d:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
576d73:	8b f1                	mov    %ecx,%esi
576d75:	8b 06                	mov    (%esi),%eax
576d77:	ff 70 04             	push   0x4(%eax)
576d7a:	e8 fe 22 eb ff       	call   0x42907d
576d7f:	8b 06                	mov    (%esi),%eax
576d81:	89 40 04             	mov    %eax,0x4(%eax)
576d84:	8b 06                	mov    (%esi),%eax
576d86:	89 00                	mov    %eax,(%eax)
576d88:	8b 06                	mov    (%esi),%eax
576d8a:	89 40 08             	mov    %eax,0x8(%eax)
576d8d:	c7 46 04 00 00 00 00 	movl   $0x0,0x4(%esi)
576d94:	8b 4d f4             	mov    -0xc(%ebp),%ecx
576d97:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
576d9e:	59                   	pop    %ecx
576d9f:	5e                   	pop    %esi
576da0:	8b e5                	mov    %ebp,%esp
576da2:	5d                   	pop    %ebp
576da3:	c3                   	ret
576da4:	cc                   	int3
576da5:	cc                   	int3
576da6:	cc                   	int3
576da7:	cc                   	int3
576da8:	cc                   	int3
576da9:	cc                   	int3
576daa:	cc                   	int3
576dab:	cc                   	int3
576dac:	cc                   	int3
576dad:	cc                   	int3
576dae:	cc                   	int3
576daf:	cc                   	int3
576db0:	cc                   	int3
576db1:	cc                   	int3
576db2:	cc                   	int3
576db3:	cc                   	int3
576db4:	cc                   	int3
576db5:	cc                   	int3
576db6:	cc                   	int3
576db7:	cc                   	int3
576db8:	cc                   	int3
576db9:	cc                   	int3
576dba:	cc                   	int3
576dbb:	cc                   	int3
576dbc:	cc                   	int3
576dbd:	cc                   	int3
576dbe:	cc                   	int3
576dbf:	cc                   	int3
576dc0:	8b 4c 24 08          	mov    0x8(%esp),%ecx
576dc4:	8b 44 24 04          	mov    0x4(%esp),%eax
576dc8:	81 f9 ff ff ff 03    	cmp    $0x3ffffff,%ecx
576dce:	77 2e                	ja     0x576dfe
576dd0:	c1 e1 06             	shl    $0x6,%ecx
576dd3:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
576dd9:	72 19                	jb     0x576df4
576ddb:	a8 1f                	test   $0x1f,%al
576ddd:	75 24                	jne    0x576e03
576ddf:	8b 48 fc             	mov    -0x4(%eax),%ecx
576de2:	3b c8                	cmp    %eax,%ecx
576de4:	73 22                	jae    0x576e08
576de6:	2b c1                	sub    %ecx,%eax
576de8:	83 f8 04             	cmp    $0x4,%eax
576deb:	72 20                	jb     0x576e0d
576ded:	83 f8 23             	cmp    $0x23,%eax
576df0:	77 20                	ja     0x576e12
576df2:	8b c1                	mov    %ecx,%eax
576df4:	50                   	push   %eax
576df5:	e8 95 a9 e8 ff       	call   0x40178f
576dfa:	59                   	pop    %ecx
576dfb:	c2 08 00             	ret    $0x8
576dfe:	e8 8a 6b ec ff       	call   0x43d98d
576e03:	e8 85 6b ec ff       	call   0x43d98d
576e08:	e8 80 6b ec ff       	call   0x43d98d
576e0d:	e8 7b 6b ec ff       	call   0x43d98d
576e12:	e8 76 6b ec ff       	call   0x43d98d
576e17:	cc                   	int3
576e18:	cc                   	int3
576e19:	cc                   	int3
576e1a:	cc                   	int3
576e1b:	cc                   	int3
576e1c:	cc                   	int3
576e1d:	cc                   	int3
576e1e:	cc                   	int3
576e1f:	cc                   	int3
576e20:	cc                   	int3
576e21:	cc                   	int3
576e22:	cc                   	int3
576e23:	cc                   	int3
576e24:	cc                   	int3
576e25:	cc                   	int3
576e26:	cc                   	int3
576e27:	cc                   	int3
576e28:	cc                   	int3
576e29:	cc                   	int3
576e2a:	cc                   	int3
576e2b:	cc                   	int3
576e2c:	cc                   	int3
576e2d:	cc                   	int3
576e2e:	cc                   	int3
576e2f:	cc                   	int3
576e30:	8b 4c 24 08          	mov    0x8(%esp),%ecx
576e34:	8b 44 24 04          	mov    0x4(%esp),%eax
576e38:	81 f9 ff ff ff 03    	cmp    $0x3ffffff,%ecx
576e3e:	77 2e                	ja     0x576e6e
576e40:	c1 e1 06             	shl    $0x6,%ecx
576e43:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
576e49:	72 19                	jb     0x576e64
576e4b:	a8 1f                	test   $0x1f,%al
576e4d:	75 24                	jne    0x576e73
576e4f:	8b 48 fc             	mov    -0x4(%eax),%ecx
576e52:	3b c8                	cmp    %eax,%ecx
576e54:	73 22                	jae    0x576e78
576e56:	2b c1                	sub    %ecx,%eax
576e58:	83 f8 04             	cmp    $0x4,%eax
576e5b:	72 20                	jb     0x576e7d
576e5d:	83 f8 23             	cmp    $0x23,%eax
576e60:	77 20                	ja     0x576e82
576e62:	8b c1                	mov    %ecx,%eax
576e64:	50                   	push   %eax
576e65:	e8 25 a9 e8 ff       	call   0x40178f
576e6a:	59                   	pop    %ecx