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
576e6b:	c2 08 00             	ret    $0x8
576e6e:	e8 1a 6b ec ff       	call   0x43d98d
576e73:	e8 15 6b ec ff       	call   0x43d98d
576e78:	e8 10 6b ec ff       	call   0x43d98d
576e7d:	e8 0b 6b ec ff       	call   0x43d98d
576e82:	e8 06 6b ec ff       	call   0x43d98d
576e87:	cc                   	int3
576e88:	cc                   	int3
576e89:	cc                   	int3
576e8a:	cc                   	int3
576e8b:	cc                   	int3
576e8c:	cc                   	int3
576e8d:	cc                   	int3
576e8e:	cc                   	int3
576e8f:	cc                   	int3
576e90:	cc                   	int3
576e91:	cc                   	int3
576e92:	cc                   	int3
576e93:	cc                   	int3
576e94:	cc                   	int3
576e95:	cc                   	int3
576e96:	cc                   	int3
576e97:	cc                   	int3
576e98:	cc                   	int3
576e99:	cc                   	int3
576e9a:	cc                   	int3
576e9b:	cc                   	int3
576e9c:	cc                   	int3
576e9d:	cc                   	int3
576e9e:	cc                   	int3
576e9f:	cc                   	int3
576ea0:	83 79 04 00          	cmpl   $0x0,0x4(%ecx)
576ea4:	0f 94 c0             	sete   %al
576ea7:	c3                   	ret
576ea8:	cc                   	int3
576ea9:	cc                   	int3
576eaa:	cc                   	int3
576eab:	cc                   	int3
576eac:	cc                   	int3
576ead:	cc                   	int3
576eae:	cc                   	int3
576eaf:	cc                   	int3
576eb0:	8b 44 24 04          	mov    0x4(%esp),%eax
576eb4:	8b 09                	mov    (%ecx),%ecx
576eb6:	89 08                	mov    %ecx,(%eax)
576eb8:	c2 04 00             	ret    $0x4
576ebb:	cc                   	int3
576ebc:	cc                   	int3
576ebd:	cc                   	int3
576ebe:	cc                   	int3
576ebf:	cc                   	int3
576ec0:	55                   	push   %ebp
576ec1:	8b ec                	mov    %esp,%ebp
576ec3:	6a ff                	push   $0xffffffff
576ec5:	68 06 88 b5 00       	push   $0xb58806
576eca:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
576ed0:	50                   	push   %eax
576ed1:	51                   	push   %ecx
576ed2:	57                   	push   %edi
576ed3:	a1 24 f6 d5 00       	mov    0xd5f624,%eax
576ed8:	33 c5                	xor    %ebp,%eax
576eda:	50                   	push   %eax
576edb:	8d 45 f4             	lea    -0xc(%ebp),%eax
576ede:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
576ee4:	8b f9                	mov    %ecx,%edi
576ee6:	8b 17                	mov    (%edi),%edx
576ee8:	8b 45 0c             	mov    0xc(%ebp),%eax
576eeb:	3b 02                	cmp    (%edx),%eax
576eed:	75 44                	jne    0x576f33
576eef:	39 55 10             	cmp    %edx,0x10(%ebp)
576ef2:	75 3f                	jne    0x576f33
576ef4:	ff 72 04             	push   0x4(%edx)
576ef7:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
576efe:	e8 7a 21 eb ff       	call   0x42907d
576f03:	8b 07                	mov    (%edi),%eax
576f05:	89 40 04             	mov    %eax,0x4(%eax)
576f08:	8b 07                	mov    (%edi),%eax
576f0a:	89 00                	mov    %eax,(%eax)
576f0c:	8b 07                	mov    (%edi),%eax
576f0e:	89 40 08             	mov    %eax,0x8(%eax)
576f11:	c7 47 04 00 00 00 00 	movl   $0x0,0x4(%edi)
576f18:	8b 07                	mov    (%edi),%eax
576f1a:	8b 08                	mov    (%eax),%ecx
576f1c:	8b 45 08             	mov    0x8(%ebp),%eax
576f1f:	89 08                	mov    %ecx,(%eax)
576f21:	8b 4d f4             	mov    -0xc(%ebp),%ecx
576f24:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
576f2b:	59                   	pop    %ecx
576f2c:	5f                   	pop    %edi
576f2d:	8b e5                	mov    %ebp,%esp
576f2f:	5d                   	pop    %ebp
576f30:	c2 0c 00             	ret    $0xc
576f33:	3b 45 10             	cmp    0x10(%ebp),%eax
576f36:	74 58                	je     0x576f90
576f38:	80 78 0d 00          	cmpb   $0x0,0xd(%eax)
576f3c:	8b c8                	mov    %eax,%ecx
576f3e:	75 3c                	jne    0x576f7c
576f40:	8b 50 08             	mov    0x8(%eax),%edx
576f43:	80 7a 0d 00          	cmpb   $0x0,0xd(%edx)
576f47:	75 14                	jne    0x576f5d
576f49:	8b 02                	mov    (%edx),%eax
576f4b:	80 78 0d 00          	cmpb   $0x0,0xd(%eax)
576f4f:	75 28                	jne    0x576f79
576f51:	8b d0                	mov    %eax,%edx
576f53:	8b 02                	mov    (%edx),%eax
576f55:	80 78 0d 00          	cmpb   $0x0,0xd(%eax)
576f59:	74 f6                	je     0x576f51
576f5b:	eb 1c                	jmp    0x576f79
576f5d:	8b 50 04             	mov    0x4(%eax),%edx
576f60:	80 7a 0d 00          	cmpb   $0x0,0xd(%edx)
576f64:	75 13                	jne    0x576f79
576f66:	3b 42 08             	cmp    0x8(%edx),%eax
576f69:	75 0e                	jne    0x576f79
576f6b:	8b c2                	mov    %edx,%eax
576f6d:	89 45 0c             	mov    %eax,0xc(%ebp)
576f70:	8b 52 04             	mov    0x4(%edx),%edx
576f73:	80 7a 0d 00          	cmpb   $0x0,0xd(%edx)
576f77:	74 ed                	je     0x576f66
576f79:	89 55 0c             	mov    %edx,0xc(%ebp)
576f7c:	51                   	push   %ecx
576f7d:	8d 45 f0             	lea    -0x10(%ebp),%eax
576f80:	8b cf                	mov    %edi,%ecx
576f82:	50                   	push   %eax
576f83:	e8 1e 20 eb ff       	call   0x428fa6
576f88:	8b 45 0c             	mov    0xc(%ebp),%eax
576f8b:	3b 45 10             	cmp    0x10(%ebp),%eax
576f8e:	75 a8                	jne    0x576f38
576f90:	8b 4d 08             	mov    0x8(%ebp),%ecx
576f93:	89 01                	mov    %eax,(%ecx)
576f95:	8b c1                	mov    %ecx,%eax
576f97:	8b 4d f4             	mov    -0xc(%ebp),%ecx
576f9a:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
576fa1:	59                   	pop    %ecx
576fa2:	5f                   	pop    %edi
576fa3:	8b e5                	mov    %ebp,%esp
576fa5:	5d                   	pop    %ebp
576fa6:	c2 0c 00             	ret    $0xc
576fa9:	cc                   	int3
576faa:	cc                   	int3
576fab:	cc                   	int3
576fac:	cc                   	int3
576fad:	cc                   	int3
576fae:	cc                   	int3
576faf:	cc                   	int3
576fb0:	cc                   	int3
576fb1:	cc                   	int3
576fb2:	cc                   	int3
576fb3:	cc                   	int3
576fb4:	cc                   	int3
576fb5:	cc                   	int3
576fb6:	cc                   	int3
576fb7:	cc                   	int3
576fb8:	cc                   	int3
576fb9:	cc                   	int3
576fba:	cc                   	int3
576fbb:	cc                   	int3
576fbc:	cc                   	int3
576fbd:	cc                   	int3
576fbe:	cc                   	int3
576fbf:	cc                   	int3
576fc0:	cc                   	int3
576fc1:	cc                   	int3
576fc2:	cc                   	int3
576fc3:	cc                   	int3
576fc4:	cc                   	int3
576fc5:	cc                   	int3
576fc6:	cc                   	int3
576fc7:	cc                   	int3
576fc8:	cc                   	int3
576fc9:	cc                   	int3
576fca:	cc                   	int3
576fcb:	cc                   	int3
576fcc:	cc                   	int3
576fcd:	cc                   	int3
576fce:	cc                   	int3