589a33:	83 7c 24 14 00       	cmpl   $0x0,0x14(%esp)
589a38:	8b f0                	mov    %eax,%esi
589a3a:	89 74 24 10          	mov    %esi,0x10(%esp)
589a3e:	74 04                	je     0x589a44
589a40:	85 f6                	test   %esi,%esi
589a42:	75 3c                	jne    0x589a80
589a44:	83 7c 24 30 00       	cmpl   $0x0,0x30(%esp)
589a49:	0f 84 85 01 00 00    	je     0x589bd4
589a4f:	68 1f 15 00 00       	push   $0x151f
589a54:	68 3c 48 66 00       	push   $0x66483c
589a59:	6a 41                	push   $0x41
589a5b:	68 07 02 00 00       	push   $0x207
589a60:	6a 50                	push   $0x50
589a62:	ff 74 24 30          	push   0x30(%esp)
589a66:	e8 a5 56 00 00       	call   0x58f110
589a6b:	83 c4 18             	add    $0x18,%esp
589a6e:	e9 7c 01 00 00       	jmp    0x589bef
589a73:	8b 74 24 10          	mov    0x10(%esp),%esi
589a77:	66 0f 1f 84 00 00 00 	nopw   0x0(%eax,%eax,1)
589a7e:	00 00
589a80:	8b 7d 04             	mov    0x4(%ebp),%edi
589a83:	3b fb                	cmp    %ebx,%edi
589a85:	0f 82 c0 00 00 00    	jb     0x589b4b
589a8b:	8b 75 00             	mov    0x0(%ebp),%esi
589a8e:	8d 44 24 20          	lea    0x20(%esp),%eax
589a92:	53                   	push   %ebx
589a93:	56                   	push   %esi
589a94:	50                   	push   %eax
589a95:	e8 36 93 04 00       	call   0x5d2dd0
589a9a:	8b 4c 24 38          	mov    0x38(%esp),%ecx
589a9e:	8d 04 1e             	lea    (%esi,%ebx,1),%eax
589aa1:	2b fb                	sub    %ebx,%edi
589aa3:	89 45 00             	mov    %eax,0x0(%ebp)
589aa6:	83 c4 0c             	add    $0xc,%esp
589aa9:	89 7d 04             	mov    %edi,0x4(%ebp)
589aac:	85 c9                	test   %ecx,%ecx
589aae:	74 0b                	je     0x589abb
589ab0:	80 7c 24 20 00       	cmpb   $0x0,0x20(%esp)
589ab5:	8b 74 24 10          	mov    0x10(%esp),%esi
589ab9:	75 c5                	jne    0x589a80
589abb:	8b 7c 24 1c          	mov    0x1c(%esp),%edi
589abf:	8d 54 24 21          	lea    0x21(%esp),%edx
589ac3:	85 c9                	test   %ecx,%ecx
589ac5:	8d 44 24 20          	lea    0x20(%esp),%eax
589ac9:	6a 01                	push   $0x1
589acb:	0f 45 c2             	cmovne %edx,%eax
589ace:	50                   	push   %eax
589acf:	57                   	push   %edi
589ad0:	e8 fb e7 ff ff       	call   0x5882d0
589ad5:	8b f0                	mov    %eax,%esi
589ad7:	83 c4 0c             	add    $0xc,%esp
589ada:	85 f6                	test   %esi,%esi
589adc:	74 95                	je     0x589a73
589ade:	83 3e 00             	cmpl   $0x0,(%esi)
589ae1:	74 1a                	je     0x589afd
589ae3:	56                   	push   %esi
589ae4:	ff 74 24 18          	push   0x18(%esp)
589ae8:	e8 63 b6 f5 ff       	call   0x4e5150
589aed:	83 c4 08             	add    $0x8,%esp
589af0:	85 c0                	test   %eax,%eax
589af2:	74 21                	je     0x589b15
589af4:	83 3e 00             	cmpl   $0x0,(%esi)
589af7:	0f 85 76 ff ff ff    	jne    0x589a73
589afd:	56                   	push   %esi
589afe:	8b 74 24 14          	mov    0x14(%esp),%esi
589b02:	56                   	push   %esi
589b03:	e8 48 b6 f5 ff       	call   0x4e5150
589b08:	83 c4 08             	add    $0x8,%esp
589b0b:	85 c0                	test   %eax,%eax
589b0d:	0f 85 6d ff ff ff    	jne    0x589a80
589b13:	eb 04                	jmp    0x589b19
589b15:	8b 74 24 10          	mov    0x10(%esp),%esi
589b19:	83 7c 24 30 00       	cmpl   $0x0,0x30(%esp)
589b1e:	74 21                	je     0x589b41
589b20:	68 35 15 00 00       	push   $0x1535
589b25:	68 3c 48 66 00       	push   $0x66483c
589b2a:	6a 41                	push   $0x41
589b2c:	68 07 02 00 00       	push   $0x207
589b31:	6a 50                	push   $0x50
589b33:	57                   	push   %edi
589b34:	e8 d7 55 00 00       	call   0x58f110
589b39:	83 c4 18             	add    $0x18,%esp
589b3c:	e9 ae 00 00 00       	jmp    0x589bef
589b41:	68 37 15 00 00       	push   $0x1537
589b46:	e9 8e 00 00 00       	jmp    0x589bd9
589b4b:	85 ff                	test   %edi,%edi
589b4d:	74 3c                	je     0x589b8b
589b4f:	83 7c 24 30 00       	cmpl   $0x0,0x30(%esp)
589b54:	74 24                	je     0x589b7a
589b56:	68 3f 15 00 00       	push   $0x153f
589b5b:	68 3c 48 66 00       	push   $0x66483c
589b60:	68 0f 01 00 00       	push   $0x10f
589b65:	68 07 02 00 00       	push   $0x207
589b6a:	6a 32                	push   $0x32
589b6c:	ff 74 24 30          	push   0x30(%esp)
589b70:	e8 9b 55 00 00       	call   0x58f110
589b75:	83 c4 18             	add    $0x18,%esp
589b78:	eb 75                	jmp    0x589bef
589b7a:	68 41 15 00 00       	push   $0x1541
589b7f:	68 3c 48 66 00       	push   $0x66483c
589b84:	68 0f 01 00 00       	push   $0x10f
589b89:	eb 55                	jmp    0x589be0
589b8b:	8b 4c 24 24          	mov    0x24(%esp),%ecx
589b8f:	85 c9                	test   %ecx,%ecx
589b91:	74 08                	je     0x589b9b
589b93:	8b 44 24 14          	mov    0x14(%esp),%eax
589b97:	89 01                	mov    %eax,(%ecx)
589b99:	eb 0c                	jmp    0x589ba7
589b9b:	ff 74 24 14          	push   0x14(%esp)
589b9f:	e8 7c b3 f5 ff       	call   0x4e4f20
589ba4:	83 c4 04             	add    $0x4,%esp
589ba7:	8b 44 24 28          	mov    0x28(%esp),%eax
589bab:	85 c0                	test   %eax,%eax
589bad:	74 0f                	je     0x589bbe
589baf:	5f                   	pop    %edi
589bb0:	89 30                	mov    %esi,(%eax)
589bb2:	b8 01 00 00 00       	mov    $0x1,%eax
589bb7:	5e                   	pop    %esi
589bb8:	5d                   	pop    %ebp
589bb9:	5b                   	pop    %ebx
589bba:	83 c4 08             	add    $0x8,%esp
589bbd:	c3                   	ret
589bbe:	56                   	push   %esi
589bbf:	e8 5c b3 f5 ff       	call   0x4e4f20
589bc4:	83 c4 04             	add    $0x4,%esp
589bc7:	b8 01 00 00 00       	mov    $0x1,%eax
589bcc:	5f                   	pop    %edi
589bcd:	5e                   	pop    %esi
589bce:	5d                   	pop    %ebp
589bcf:	5b                   	pop    %ebx
589bd0:	83 c4 08             	add    $0x8,%esp
589bd3:	c3                   	ret
589bd4:	68 21 15 00 00       	push   $0x1521
589bd9:	68 3c 48 66 00       	push   $0x66483c
589bde:	6a 41                	push   $0x41
589be0:	68 07 02 00 00       	push   $0x207
589be5:	6a 14                	push   $0x14
589be7:	e8 94 f3 f4 ff       	call   0x4d8f80
589bec:	83 c4 14             	add    $0x14,%esp
589bef:	ff 74 24 14          	push   0x14(%esp)
589bf3:	e8 28 b3 f5 ff       	call   0x4e4f20
589bf8:	56                   	push   %esi
589bf9:	e8 22 b3 f5 ff       	call   0x4e4f20
589bfe:	83 c4 08             	add    $0x8,%esp
589c01:	33 c0                	xor    %eax,%eax
589c03:	5f                   	pop    %edi
589c04:	5e                   	pop    %esi
589c05:	5d                   	pop    %ebp
589c06:	5b                   	pop    %ebx
589c07:	83 c4 08             	add    $0x8,%esp
589c0a:	c3                   	ret
589c0b:	cc                   	int3
589c0c:	cc                   	int3
589c0d:	cc                   	int3
589c0e:	cc                   	int3
589c0f:	cc                   	int3
589c10:	56                   	push   %esi
589c11:	8b 74 24 08          	mov    0x8(%esp),%esi
589c15:	8b 86 cc 03 00 00    	mov    0x3cc(%esi),%eax
589c1b:	85 c0                	test   %eax,%eax
589c1d:	74 13                	je     0x589c32
589c1f:	50                   	push   %eax
589c20:	e8 cb 27 f5 ff       	call   0x4dc3f0
589c25:	83 c4 04             	add    $0x4,%esp
589c28:	c7 86 cc 03 00 00 00 	movl   $0x0,0x3cc(%esi)
589c2f:	00 00 00
589c32:	8b 86 ec 03 00 00    	mov    0x3ec(%esi),%eax
589c38:	85 c0                	test   %eax,%eax
589c3a:	74 13                	je     0x589c4f
589c3c:	50                   	push   %eax
589c3d:	e8 ae 27 f5 ff       	call   0x4dc3f0
589c42:	83 c4 04             	add    $0x4,%esp
589c45:	c7 86 ec 03 00 00 00 	movl   $0x0,0x3ec(%esi)
589c4c:	00 00 00
589c4f:	ff b6 e0 03 00 00    	push   0x3e0(%esi)
589c55:	e8 96 14 f9 ff       	call   0x51b0f0
589c5a:	c7 86 e0 03 00 00 00 	movl   $0x0,0x3e0(%esi)
589c61:	00 00 00
589c64:	ff b6 00 04 00 00    	push   0x400(%esi)
589c6a:	e8 81 14 f9 ff       	call   0x51b0f0
589c6f:	83 c4 08             	add    $0x8,%esp
589c72:	c7 86 00 04 00 00 00 	movl   $0x0,0x400(%esi)
589c79:	00 00 00
589c7c:	5e                   	pop    %esi
589c7d:	c3                   	ret
589c7e:	cc                   	int3
589c7f:	cc                   	int3
589c80:	53                   	push   %ebx
589c81:	8b 5c 24 08          	mov    0x8(%esp),%ebx
589c85:	55                   	push   %ebp
589c86:	56                   	push   %esi
589c87:	57                   	push   %edi
589c88:	33 ff                	xor    %edi,%edi
589c8a:	39 3b                	cmp    %edi,(%ebx)
589c8c:	75 2e                	jne    0x589cbc
589c8e:	e8 8d b3 f5 ff       	call   0x4e5020
589c93:	89 03                	mov    %eax,(%ebx)
589c95:	85 c0                	test   %eax,%eax
589c97:	75 23                	jne    0x589cbc
589c99:	68 4c 12 00 00       	push   $0x124c
589c9e:	68 3c 48 66 00       	push   $0x66483c
589ca3:	6a 41                	push   $0x41
589ca5:	68 59 01 00 00       	push   $0x159
589caa:	6a 14                	push   $0x14
589cac:	e8 cf f2 f4 ff       	call   0x4d8f80
589cb1:	83 c4 14             	add    $0x14,%esp
589cb4:	83 c8 ff             	or     $0xffffffff,%eax
589cb7:	5f                   	pop    %edi
589cb8:	5e                   	pop    %esi
589cb9:	5d                   	pop    %ebp
589cba:	5b                   	pop    %ebx
589cbb:	c3                   	ret
589cbc:	8b 6c 24 18          	mov    0x18(%esp),%ebp
589cc0:	55                   	push   %ebp
589cc1:	e8 0a b4 f5 ff       	call   0x4e50d0
589cc6:	8b f0                	mov    %eax,%esi
589cc8:	83 c4 04             	add    $0x4,%esp
589ccb:	85 f6                	test   %esi,%esi
589ccd:	74 32                	je     0x589d01
589ccf:	90                   	nop
589cd0:	ff 74 24 1c          	push   0x1c(%esp)
589cd4:	56                   	push   %esi
589cd5:	e8 36 b1 ff ff       	call   0x584e10
589cda:	83 c4 08             	add    $0x8,%esp
589cdd:	83 f8 01             	cmp    $0x1,%eax
589ce0:	75 2a                	jne    0x589d0c
589ce2:	56                   	push   %esi
589ce3:	ff 33                	push   (%ebx)
589ce5:	e8 66 b4 f5 ff       	call   0x4e5150
589cea:	83 c4 08             	add    $0x8,%esp
589ced:	85 c0                	test   %eax,%eax
589cef:	7e 17                	jle    0x589d08
589cf1:	55                   	push   %ebp
589cf2:	47                   	inc    %edi
589cf3:	e8 d8 b3 f5 ff       	call   0x4e50d0
589cf8:	8b f0                	mov    %eax,%esi
589cfa:	83 c4 04             	add    $0x4,%esp
589cfd:	85 f6                	test   %esi,%esi
589cff:	75 cf                	jne    0x589cd0
589d01:	8b c7                	mov    %edi,%eax
589d03:	5f                   	pop    %edi
589d04:	5e                   	pop    %esi
589d05:	5d                   	pop    %ebp
589d06:	5b                   	pop    %ebx
589d07:	c3                   	ret
589d08:	85 f6                	test   %esi,%esi
589d0a:	74 0a                	je     0x589d16
589d0c:	56                   	push   %esi
589d0d:	55                   	push   %ebp
589d0e:	e8 3d b4 f5 ff       	call   0x4e5150
589d13:	83 c4 08             	add    $0x8,%esp
589d16:	5f                   	pop    %edi
589d17:	5e                   	pop    %esi
589d18:	5d                   	pop    %ebp
589d19:	83 c8 ff             	or     $0xffffffff,%eax
589d1c:	5b                   	pop    %ebx
589d1d:	c3                   	ret
589d1e:	cc                   	int3
589d1f:	cc                   	int3
589d20:	b8 08 00 00 00       	mov    $0x8,%eax
589d25:	e8 86 7a 04 00       	call   0x5d17b0
589d2a:	8b 44 24 10          	mov    0x10(%esp),%eax
589d2e:	8b 80 d0 04 00 00    	mov    0x4d0(%eax),%eax
589d34:	83 b8 1c 02 00 00 00 	cmpl   $0x0,0x21c(%eax)
589d3b:	75 09                	jne    0x589d46
589d3d:	b8 01 00 00 00       	mov    $0x1,%eax
589d42:	83 c4 08             	add    $0x8,%esp
589d45:	c3                   	ret
589d46:	53                   	push   %ebx
589d47:	8b 5c 24 10          	mov    0x10(%esp),%ebx
589d4b:	57                   	push   %edi
589d4c:	8b fb                	mov    %ebx,%edi
589d4e:	8d 4f 01             	lea    0x1(%edi),%ecx
589d51:	8a 07                	mov    (%edi),%al
589d53:	47                   	inc    %edi
589d54:	84 c0                	test   %al,%al
589d56:	75 f9                	jne    0x589d51
589d58:	8b 44 24 28          	mov    0x28(%esp),%eax
589d5c:	2b f9                	sub    %ecx,%edi
589d5e:	55                   	push   %ebp
589d5f:	8b 6c 24 24          	mov    0x24(%esp),%ebp
589d63:	03 c5                	add    %ebp,%eax
589d65:	56                   	push   %esi
589d66:	68 68 14 00 00       	push   $0x1468
589d6b:	68 3c 48 66 00       	push   $0x66483c
589d70:	8d 04 45 03 00 00 00 	lea    0x3(,%eax,2),%eax
589d77:	03 c7                	add    %edi,%eax
589d79:	50                   	push   %eax
589d7a:	89 44 24 20          	mov    %eax,0x20(%esp)
589d7e:	e8 cd 69 f5 ff       	call   0x4e0750
589d83:	8b f0                	mov    %eax,%esi
589d85:	83 c4 0c             	add    $0xc,%esp
589d88:	89 74 24 10          	mov    %esi,0x10(%esp)
589d8c:	85 f6                	test   %esi,%esi
589d8e:	75 29                	jne    0x589db9
589d90:	68 6a 14 00 00       	push   $0x146a
589d95:	68 3c 48 66 00       	push   $0x66483c
589d9a:	6a 41                	push   $0x41
589d9c:	68 f4 01 00 00       	push   $0x1f4
589da1:	6a 50                	push   $0x50
589da3:	ff 74 24 34          	push   0x34(%esp)
589da7:	e8 64 53 00 00       	call   0x58f110
589dac:	83 c4 18             	add    $0x18,%esp
589daf:	33 c0                	xor    %eax,%eax
589db1:	5e                   	pop    %esi
589db2:	5d                   	pop    %ebp
589db3:	5f                   	pop    %edi
589db4:	5b                   	pop    %ebx
589db5:	83 c4 08             	add    $0x8,%esp
589db8:	c3                   	ret
589db9:	8b ce                	mov    %esi,%ecx
589dbb:	2b cb                	sub    %ebx,%ecx
589dbd:	0f 1f 00             	nopl   (%eax)
589dc0:	8a 03                	mov    (%ebx),%al
589dc2:	8d 5b 01             	lea    0x1(%ebx),%ebx
589dc5:	88 44 19 ff          	mov    %al,-0x1(%ecx,%ebx,1)
589dc9:	84 c0                	test   %al,%al
589dcb:	75 f3                	jne    0x589dc0
589dcd:	03 f7                	add    %edi,%esi
589dcf:	33 ff                	xor    %edi,%edi
589dd1:	c6 06 20             	movb   $0x20,(%esi)
589dd4:	46                   	inc    %esi
589dd5:	85 ed                	test   %ebp,%ebp
589dd7:	74 22                	je     0x589dfb
589dd9:	8b 5c 24 24          	mov    0x24(%esp),%ebx
589ddd:	0f 1f 00             	nopl   (%eax)
589de0:	0f b6 04 1f          	movzbl (%edi,%ebx,1),%eax
589de4:	50                   	push   %eax
589de5:	68 70 48 66 00       	push   $0x664870
589dea:	56                   	push   %esi
589deb:	e8 80 6d f1 ff       	call   0x4a0b70
589df0:	47                   	inc    %edi
589df1:	83 c4 0c             	add    $0xc,%esp
589df4:	83 c6 02             	add    $0x2,%esi
589df7:	3b fd                	cmp    %ebp,%edi
589df9:	72 e5                	jb     0x589de0
589dfb:	8b 6c 24 30          	mov    0x30(%esp),%ebp
589dff:	33 ff                	xor    %edi,%edi
589e01:	c6 06 20             	movb   $0x20,(%esi)
589e04:	46                   	inc    %esi
589e05:	85 ed                	test   %ebp,%ebp
589e07:	74 22                	je     0x589e2b
589e09:	8b 5c 24 2c          	mov    0x2c(%esp),%ebx
589e0d:	0f 1f 00             	nopl   (%eax)
589e10:	0f b6 04 1f          	movzbl (%edi,%ebx,1),%eax
589e14:	50                   	push   %eax
589e15:	68 70 48 66 00       	push   $0x664870
589e1a:	56                   	push   %esi
589e1b:	e8 50 6d f1 ff       	call   0x4a0b70
589e20:	47                   	inc    %edi