576cba:	68 98 01 00 00       	push   $0x198
576cbf:	56                   	push   %esi
576cc0:	e8 6b 07 f5 ff       	call   0x4c7430
576cc5:	83 c4 18             	add    $0x18,%esp
576cc8:	85 c0                	test   %eax,%eax
576cca:	7e 16                	jle    0x576ce2
576ccc:	ff 74 24 04          	push   0x4(%esp)
576cd0:	e8 7b 0c f3 ff       	call   0x4a7950
576cd5:	50                   	push   %eax
576cd6:	e8 f5 61 f6 ff       	call   0x4dced0
576cdb:	83 c4 08             	add    $0x8,%esp
576cde:	85 c0                	test   %eax,%eax
576ce0:	75 05                	jne    0x576ce7
576ce2:	33 c0                	xor    %eax,%eax
576ce4:	5e                   	pop    %esi
576ce5:	59                   	pop    %ecx
576ce6:	c3                   	ret
576ce7:	50                   	push   %eax
576ce8:	6a 00                	push   $0x0
576cea:	68 05 10 00 00       	push   $0x1005
576cef:	68 00 04 00 00       	push   $0x400
576cf4:	68 98 01 00 00       	push   $0x198
576cf9:	56                   	push   %esi
576cfa:	e8 31 07 f5 ff       	call   0x4c7430
576cff:	33 c9                	xor    %ecx,%ecx
576d01:	83 c4 18             	add    $0x18,%esp
576d04:	85 c0                	test   %eax,%eax
576d06:	0f 9f c1             	setg   %cl
576d09:	8b c1                	mov    %ecx,%eax
576d0b:	5e                   	pop    %esi
576d0c:	59                   	pop    %ecx
576d0d:	c3                   	ret
576d0e:	cc                   	int3
576d0f:	cc                   	int3
576d10:	b8 14 00 00 00       	mov    $0x14,%eax
576d15:	e8 d6 a7 06 00       	call   0x5e14f0
576d1a:	53                   	push   %ebx
576d1b:	56                   	push   %esi
576d1c:	57                   	push   %edi
576d1d:	ff 74 24 28          	push   0x28(%esp)
576d21:	8d 44 24 1c          	lea    0x1c(%esp),%eax
576d25:	33 db                	xor    %ebx,%ebx
576d27:	50                   	push   %eax
576d28:	8d 44 24 1c          	lea    0x1c(%esp),%eax
576d2c:	89 5c 24 14          	mov    %ebx,0x14(%esp)
576d30:	50                   	push   %eax
576d31:	8d 44 24 1c          	lea    0x1c(%esp),%eax
576d35:	33 ff                	xor    %edi,%edi
576d37:	50                   	push   %eax
576d38:	e8 23 73 00 00       	call   0x57e060
576d3d:	ff 74 24 20          	push   0x20(%esp)
576d41:	e8 9a 0c f3 ff       	call   0x4a79e0
576d46:	83 c4 14             	add    $0x14,%esp
576d49:	3d 98 01 00 00       	cmp    $0x198,%eax
576d4e:	0f 85 d2 00 00 00    	jne    0x576e26
576d54:	8b 44 24 14          	mov    0x14(%esp),%eax
576d58:	83 f8 ff             	cmp    $0xffffffff,%eax
576d5b:	74 23                	je     0x576d80
576d5d:	83 f8 05             	cmp    $0x5,%eax
576d60:	74 1e                	je     0x576d80
576d62:	ff 74 24 18          	push   0x18(%esp)
576d66:	50                   	push   %eax
576d67:	e8 84 03 00 00       	call   0x5770f0
576d6c:	83 c4 08             	add    $0x8,%esp
576d6f:	89 44 24 0c          	mov    %eax,0xc(%esp)
576d73:	85 c0                	test   %eax,%eax
576d75:	75 49                	jne    0x576dc0
576d77:	8b c7                	mov    %edi,%eax
576d79:	5f                   	pop    %edi
576d7a:	5e                   	pop    %esi
576d7b:	5b                   	pop    %ebx
576d7c:	83 c4 14             	add    $0x14,%esp
576d7f:	c3                   	ret
576d80:	ff 74 24 24          	push   0x24(%esp)
576d84:	e8 d7 a3 f1 ff       	call   0x491160
576d89:	83 c4 04             	add    $0x4,%esp
576d8c:	85 c0                	test   %eax,%eax
576d8e:	0f 84 92 00 00 00    	je     0x576e26
576d94:	ff 70 14             	push   0x14(%eax)
576d97:	e8 44 a7 f1 ff       	call   0x4914e0
576d9c:	83 c4 04             	add    $0x4,%esp
576d9f:	8b f0                	mov    %eax,%esi
576da1:	e8 da 58 ff ff       	call   0x56c680
576da6:	89 44 24 0c          	mov    %eax,0xc(%esp)
576daa:	85 c0                	test   %eax,%eax
576dac:	0f 84 92 00 00 00    	je     0x576e44
576db2:	56                   	push   %esi
576db3:	50                   	push   %eax
576db4:	e8 57 59 ff ff       	call   0x56c710
576db9:	83 c4 08             	add    $0x8,%esp
576dbc:	85 c0                	test   %eax,%eax
576dbe:	74 66                	je     0x576e26
576dc0:	8b 74 24 2c          	mov    0x2c(%esp),%esi
576dc4:	55                   	push   %ebp
576dc5:	56                   	push   %esi
576dc6:	e8 55 a2 f1 ff       	call   0x491020
576dcb:	56                   	push   %esi
576dcc:	8b e8                	mov    %eax,%ebp
576dce:	e8 8d a3 f1 ff       	call   0x491160
576dd3:	83 c4 08             	add    $0x8,%esp
576dd6:	89 44 24 20          	mov    %eax,0x20(%esp)
576dda:	85 c0                	test   %eax,%eax
576ddc:	74 47                	je     0x576e25
576dde:	85 ed                	test   %ebp,%ebp
576de0:	74 43                	je     0x576e25
576de2:	55                   	push   %ebp
576de3:	8d 44 24 24          	lea    0x24(%esp),%eax
576de7:	50                   	push   %eax
576de8:	8d 44 24 18          	lea    0x18(%esp),%eax
576dec:	50                   	push   %eax
576ded:	e8 ee 4b 01 00       	call   0x58b9e0
576df2:	83 c4 0c             	add    $0xc,%esp
576df5:	85 c0                	test   %eax,%eax
576df7:	74 2c                	je     0x576e25
576df9:	e8 c2 e9 f5 ff       	call   0x4d57c0
576dfe:	8b d8                	mov    %eax,%ebx
576e00:	85 db                	test   %ebx,%ebx
576e02:	74 21                	je     0x576e25
576e04:	ff 74 24 10          	push   0x10(%esp)
576e08:	53                   	push   %ebx
576e09:	e8 22 ea f5 ff       	call   0x4d5830
576e0e:	53                   	push   %ebx
576e0f:	ff 74 24 34          	push   0x34(%esp)
576e13:	e8 28 70 ff ff       	call   0x56de40
576e18:	83 c4 10             	add    $0x10,%esp
576e1b:	b9 01 00 00 00       	mov    $0x1,%ecx
576e20:	85 c0                	test   %eax,%eax
576e22:	0f 4f f9             	cmovg  %ecx,%edi
576e25:	5d                   	pop    %ebp
576e26:	8b 44 24 0c          	mov    0xc(%esp),%eax
576e2a:	85 c0                	test   %eax,%eax
576e2c:	74 09                	je     0x576e37
576e2e:	50                   	push   %eax
576e2f:	e8 dc 55 ff ff       	call   0x56c410
576e34:	83 c4 04             	add    $0x4,%esp
576e37:	85 db                	test   %ebx,%ebx
576e39:	74 09                	je     0x576e44
576e3b:	53                   	push   %ebx
576e3c:	e8 6f e8 f5 ff       	call   0x4d56b0
576e41:	83 c4 04             	add    $0x4,%esp
576e44:	8b c7                	mov    %edi,%eax
576e46:	5f                   	pop    %edi
576e47:	5e                   	pop    %esi
576e48:	5b                   	pop    %ebx
576e49:	83 c4 14             	add    $0x14,%esp
576e4c:	c3                   	ret
576e4d:	cc                   	int3
576e4e:	cc                   	int3
576e4f:	cc                   	int3
576e50:	b8 10 00 00 00       	mov    $0x10,%eax
576e55:	e8 96 a6 06 00       	call   0x5e14f0
576e5a:	53                   	push   %ebx
576e5b:	56                   	push   %esi
576e5c:	8b 74 24 20          	mov    0x20(%esp),%esi
576e60:	8d 44 24 14          	lea    0x14(%esp),%eax
576e64:	50                   	push   %eax
576e65:	8d 44 24 10          	lea    0x10(%esp),%eax
576e69:	33 db                	xor    %ebx,%ebx
576e6b:	50                   	push   %eax
576e6c:	56                   	push   %esi
576e6d:	89 5c 24 14          	mov    %ebx,0x14(%esp)
576e71:	e8 3a 25 01 00       	call   0x5893b0
576e76:	83 c4 0c             	add    $0xc,%esp
576e79:	85 c0                	test   %eax,%eax
576e7b:	75 06                	jne    0x576e83
576e7d:	5e                   	pop    %esi
576e7e:	5b                   	pop    %ebx
576e7f:	83 c4 10             	add    $0x10,%esp
576e82:	c3                   	ret
576e83:	8b 44 24 0c          	mov    0xc(%esp),%eax
576e87:	55                   	push   %ebp
576e88:	ff 30                	push   (%eax)
576e8a:	e8 51 0b f3 ff       	call   0x4a79e0
576e8f:	8b 6c 24 24          	mov    0x24(%esp),%ebp
576e93:	50                   	push   %eax
576e94:	55                   	push   %ebp
576e95:	e8 a6 fd ff ff       	call   0x576c40
576e9a:	83 c4 0c             	add    $0xc,%esp
576e9d:	85 c0                	test   %eax,%eax
576e9f:	75 27                	jne    0x576ec8
576ea1:	68 ef 02 00 00       	push   $0x2ef
576ea6:	68 08 d2 6b 00       	push   $0x6bd208
576eab:	68 94 00 00 00       	push   $0x94
576eb0:	68 ef 00 00 00       	push   $0xef
576eb5:	6a 10                	push   $0x10
576eb7:	e8 e4 a5 f2 ff       	call   0x4a14a0
576ebc:	83 c4 14             	add    $0x14,%esp
576ebf:	5d                   	pop    %ebp
576ec0:	5e                   	pop    %esi
576ec1:	33 c0                	xor    %eax,%eax
576ec3:	5b                   	pop    %ebx
576ec4:	83 c4 10             	add    $0x10,%esp
576ec7:	c3                   	ret
576ec8:	8b 4c 24 10          	mov    0x10(%esp),%ecx
576ecc:	8b 41 04             	mov    0x4(%ecx),%eax
576ecf:	83 38 10             	cmpl   $0x10,(%eax)
576ed2:	75 eb                	jne    0x576ebf
576ed4:	8b 40 04             	mov    0x4(%eax),%eax
576ed7:	57                   	push   %edi
576ed8:	8b 40 08             	mov    0x8(%eax),%eax
576edb:	89 44 24 18          	mov    %eax,0x18(%esp)
576edf:	8b 41 04             	mov    0x4(%ecx),%eax
576ee2:	8b 40 04             	mov    0x4(%eax),%eax
576ee5:	ff 30                	push   (%eax)
576ee7:	8d 44 24 1c          	lea    0x1c(%esp),%eax
576eeb:	50                   	push   %eax
576eec:	6a 00                	push   $0x0
576eee:	e8 7d 72 00 00       	call   0x57e170
576ef3:	8b f8                	mov    %eax,%edi
576ef5:	83 c4 0c             	add    $0xc,%esp
576ef8:	85 ff                	test   %edi,%edi
576efa:	0f 84 e9 00 00 00    	je     0x576fe9
576f00:	56                   	push   %esi
576f01:	e8 fa 24 01 00       	call   0x589400
576f06:	8b f0                	mov    %eax,%esi
576f08:	83 c4 04             	add    $0x4,%esp
576f0b:	85 f6                	test   %esi,%esi
576f0d:	0f 84 cd 00 00 00    	je     0x576fe0
576f13:	ff 37                	push   (%edi)
576f15:	e8 c6 0a f3 ff       	call   0x4a79e0
576f1a:	50                   	push   %eax
576f1b:	e8 30 0a f3 ff       	call   0x4a7950
576f20:	50                   	push   %eax
576f21:	e8 9a 5f f6 ff       	call   0x4dcec0
576f26:	8b d8                	mov    %eax,%ebx
576f28:	83 c4 0c             	add    $0xc,%esp
576f2b:	85 db                	test   %ebx,%ebx
576f2d:	0f 84 ab 00 00 00    	je     0x576fde
576f33:	53                   	push   %ebx
576f34:	e8 97 a1 f1 ff       	call   0x4910d0
576f39:	25 07 00 0f 00       	and    $0xf0007,%eax
576f3e:	83 c4 04             	add    $0x4,%esp
576f41:	3d 02 00 01 00       	cmp    $0x10002,%eax
576f46:	0f 85 92 00 00 00    	jne    0x576fde
576f4c:	6a 00                	push   $0x0
576f4e:	6a 00                	push   $0x0
576f50:	6a 00                	push   $0x0
576f52:	53                   	push   %ebx
576f53:	56                   	push   %esi
576f54:	e8 c7 89 f1 ff       	call   0x48f920
576f59:	83 c4 14             	add    $0x14,%esp
576f5c:	85 c0                	test   %eax,%eax
576f5e:	74 7e                	je     0x576fde
576f60:	ff 77 04             	push   0x4(%edi)
576f63:	56                   	push   %esi
576f64:	e8 17 a1 f1 ff       	call   0x491080
576f69:	83 c4 08             	add    $0x8,%esp
576f6c:	85 c0                	test   %eax,%eax
576f6e:	7e 6e                	jle    0x576fde
576f70:	56                   	push   %esi
576f71:	e8 da a0 f1 ff       	call   0x491050
576f76:	6a 00                	push   $0x0
576f78:	8b f0                	mov    %eax,%esi
576f7a:	56                   	push   %esi
576f7b:	68 07 10 00 00       	push   $0x1007
576f80:	68 00 04 00 00       	push   $0x400
576f85:	68 98 01 00 00       	push   $0x198
576f8a:	55                   	push   %ebp
576f8b:	e8 a0 04 f5 ff       	call   0x4c7430
576f90:	83 c4 1c             	add    $0x1c,%esp
576f93:	85 c0                	test   %eax,%eax
576f95:	7e 47                	jle    0x576fde
576f97:	56                   	push   %esi
576f98:	ff 74 24 20          	push   0x20(%esp)
576f9c:	8d 44 24 18          	lea    0x18(%esp),%eax
576fa0:	57                   	push   %edi
576fa1:	50                   	push   %eax
576fa2:	e8 e9 4e 01 00       	call   0x58be90
576fa7:	83 c4 10             	add    $0x10,%esp
576faa:	85 c0                	test   %eax,%eax
576fac:	74 30                	je     0x576fde
576fae:	ff 74 24 10          	push   0x10(%esp)
576fb2:	50                   	push   %eax
576fb3:	68 09 10 00 00       	push   $0x1009
576fb8:	68 00 04 00 00       	push   $0x400
576fbd:	68 98 01 00 00       	push   $0x198
576fc2:	55                   	push   %ebp
576fc3:	e8 68 04 f5 ff       	call   0x4c7430
576fc8:	83 c4 18             	add    $0x18,%esp
576fcb:	85 c0                	test   %eax,%eax
576fcd:	7e 0f                	jle    0x576fde
576fcf:	c7 44 24 10 00 00 00 	movl   $0x0,0x10(%esp)
576fd6:	00
576fd7:	bb 01 00 00 00       	mov    $0x1,%ebx
576fdc:	eb 02                	jmp    0x576fe0
576fde:	33 db                	xor    %ebx,%ebx
576fe0:	57                   	push   %edi
576fe1:	e8 5a 70 00 00       	call   0x57e040
576fe6:	83 c4 04             	add    $0x4,%esp
576fe9:	8b 4c 24 10          	mov    0x10(%esp),%ecx
576fed:	5f                   	pop    %edi
576fee:	85 c9                	test   %ecx,%ecx
576ff0:	74 09                	je     0x576ffb
576ff2:	51                   	push   %ecx
576ff3:	e8 38 91 f2 ff       	call   0x4a0130
576ff8:	83 c4 04             	add    $0x4,%esp
576ffb:	5d                   	pop    %ebp
576ffc:	5e                   	pop    %esi
576ffd:	8b c3                	mov    %ebx,%eax
576fff:	5b                   	pop    %ebx
577000:	83 c4 10             	add    $0x10,%esp
577003:	c3                   	ret
577004:	cc                   	int3
577005:	cc                   	int3
577006:	cc                   	int3
577007:	cc                   	int3
577008:	cc                   	int3
577009:	cc                   	int3
57700a:	cc                   	int3
57700b:	cc                   	int3
57700c:	cc                   	int3
57700d:	cc                   	int3
57700e:	cc                   	int3
57700f:	cc                   	int3
577010:	56                   	push   %esi
577011:	57                   	push   %edi
577012:	8b 7c 24 14          	mov    0x14(%esp),%edi
577016:	85 ff                	test   %edi,%edi
577018:	0f 84 a7 00 00 00    	je     0x5770c5
57701e:	57                   	push   %edi
57701f:	e8 bc a4 f1 ff       	call   0x4914e0
577024:	8b f0                	mov    %eax,%esi
577026:	83 c4 04             	add    $0x4,%esp
577029:	85 f6                	test   %esi,%esi
57702b:	0f 84 94 00 00 00    	je     0x5770c5
577031:	56                   	push   %esi
577032:	e8 d9 48 00 00       	call   0x57b910
577037:	83 c4 04             	add    $0x4,%esp
57703a:	85 c0                	test   %eax,%eax
57703c:	74 2e                	je     0x57706c
57703e:	56                   	push   %esi
57703f:	e8 8c 49 00 00       	call   0x57b9d0
577044:	83 c4 04             	add    $0x4,%esp
577047:	85 c0                	test   %eax,%eax
577049:	74 21                	je     0x57706c
57704b:	50                   	push   %eax
57704c:	e8 6f 08 f3 ff       	call   0x4a78c0
577051:	8b 4c 24 14          	mov    0x14(%esp),%ecx
577055:	83 c4 04             	add    $0x4,%esp
577058:	89 01                	mov    %eax,(%ecx)
57705a:	8b 44 24 0c          	mov    0xc(%esp),%eax
57705e:	5f                   	pop    %edi
57705f:	5e                   	pop    %esi
577060:	c7 00 06 00 00 00    	movl   $0x6,(%eax)
577066:	b8 01 00 00 00       	mov    $0x1,%eax
57706b:	c3                   	ret
57706c:	e8 3f a9 f3 ff       	call   0x4b19b0
577071:	8b f0                	mov    %eax,%esi
577073:	85 f6                	test   %esi,%esi
577075:	74 66                	je     0x5770dd