593b1b:	00 48 32             	add    %cl,0x32(%eax)
593b1e:	30 00                	xor    %al,(%eax)
593b20:	48                   	dec    %eax
593b21:	32 35 00 49 78 70    	xor    0x70784900,%dh
593b27:	72 65                	jb     0x593b8e
593b29:	73 73                	jae    0x593b9e
593b2b:	00 53 69             	add    %dl,0x69(%ebx)
593b2e:	6e                   	outsb  %ds:(%esi),(%dx)
593b2f:	61                   	popa
593b30:	72 00                	jb     0x593b32
593b32:	00 00                	add    %al,(%eax)
593b34:	38 42 50             	cmp    %al,0x50(%edx)
593b37:	53                   	push   %ebx
593b38:	00 00                	add    %al,(%eax)
593b3a:	00 00                	add    %al,(%eax)
593b3c:	4c                   	dec    %esp
593b3d:	65 61                	gs popa
593b3f:	66 00 00             	data16 add %al,(%eax)
593b42:	00 00                	add    %al,(%eax)
593b44:	44                   	inc    %esp
593b45:	49                   	dec    %ecx
593b46:	47                   	inc    %edi
593b47:	49                   	dec    %ecx
593b48:	4c                   	dec    %esp
593b49:	55                   	push   %ebp
593b4a:	58                   	pop    %eax
593b4b:	20 32                	and    %dh,(%edx)
593b4d:	00 00                	add    %al,(%eax)
593b4f:	00 44 4d 43          	add    %al,0x43(%ebp,%ecx,2)
593b53:	2d 4c 43 31 00       	sub    $0x31434c,%eax
593b58:	45                   	inc    %ebp
593b59:	2d 31 00 45 2d       	sub    $0x2d450031,%eax
593b5e:	31 30                	xor    %esi,(%eax)
593b60:	00 00                	add    %al,(%eax)
593b62:	00 00                	add    %al,(%eax)
593b64:	45                   	inc    %ebp
593b65:	2d 32 30 00 00       	sub    $0x3032,%eax
593b6a:	00 00                	add    %al,(%eax)
593b6c:	43                   	inc    %ebx
593b6d:	35 30 35 30 5a       	xor    $0x5a303530,%eax
593b72:	00 00                	add    %al,(%eax)
593b74:	43                   	inc    %ebx
593b75:	35 30 36 30 57       	xor    $0x57303630,%eax
593b7a:	5a                   	pop    %edx
593b7b:	00 43 38             	add    %al,0x38(%ebx)
593b7e:	30 38                	xor    %bh,(%eax)
593b80:	30 57 5a             	xor    %dl,0x5a(%edi)
593b83:	00 44 53 43          	add    %al,0x43(%ebx,%edx,2)
593b87:	2d 46 38 32 38       	sub    $0x38323846,%eax
593b8c:	00 00                	add    %al,(%eax)
593b8e:	00 00                	add    %al,(%eax)
593b90:	4e                   	dec    %esi
593b91:	43                   	inc    %ebx
593b92:	32 30                	xor    (%eax),%dh
593b94:	30 30                	xor    %dh,(%eax)
593b96:	46                   	inc    %esi
593b97:	00 45 4f             	add    %al,0x4f(%ebp)
593b9a:	53                   	push   %ebx
593b9b:	44                   	inc    %esp
593b9c:	43                   	inc    %ebx
593b9d:	53                   	push   %ebx
593b9e:	33 42 00             	xor    0x0(%edx),%eax
593ba1:	00 00                	add    %al,(%eax)
593ba3:	00 45 4f             	add    %al,0x4f(%ebp)
593ba6:	53                   	push   %ebx
593ba7:	44                   	inc    %esp
593ba8:	43                   	inc    %ebx
593ba9:	53                   	push   %ebx
593baa:	31 00                	xor    %eax,(%eax)
593bac:	44                   	inc    %esp
593bad:	43                   	inc    %ebx
593bae:	53                   	push   %ebx
593baf:	33 31                	xor    (%ecx),%esi
593bb1:	35 43 00 44 43       	xor    $0x43440043,%eax
593bb6:	53                   	push   %ebx
593bb7:	33 33                	xor    (%ebx),%esi
593bb9:	30 43 00             	xor    %al,0x0(%ebx)
593bbc:	44                   	inc    %esp
593bbd:	43                   	inc    %ebx
593bbe:	53                   	push   %ebx
593bbf:	34 32                	xor    $0x32,%al
593bc1:	30 00                	xor    %al,(%eax)
593bc3:	00 44 43 53          	add    %al,0x53(%ebx,%eax,2)
593bc7:	34 36                	xor    $0x36,%al
593bc9:	30 00                	xor    %al,(%eax)
593bcb:	00 44 43 53          	add    %al,0x53(%ebx,%eax,2)
593bcf:	34 36                	xor    $0x36,%al
593bd1:	30 41 00             	xor    %al,0x0(%ecx)
593bd4:	44                   	inc    %esp
593bd5:	43                   	inc    %ebx
593bd6:	53                   	push   %ebx
593bd7:	35 32 30 43 00       	xor    $0x433032,%eax
593bdc:	44                   	inc    %esp
593bdd:	43                   	inc    %ebx
593bde:	53                   	push   %ebx
593bdf:	35 36 30 43 00       	xor    $0x433036,%eax
593be4:	44                   	inc    %esp
593be5:	43                   	inc    %ebx
593be6:	53                   	push   %ebx
593be7:	36 32 30             	xor    %ss:(%eax),%dh
593bea:	43                   	inc    %ebx
593beb:	00 44 43 53          	add    %al,0x53(%ebx,%eax,2)
593bef:	36 32 24 00          	xor    %ss:(%eax,%eax,1),%ah
593bf3:	00 44 43 53          	add    %al,0x53(%ebx,%eax,2)
593bf7:	36 36 30 43 00       	ss xor %al,%ss:0x0(%ebx)
593bfc:	44                   	inc    %esp
593bfd:	43                   	inc    %ebx
593bfe:	53                   	push   %ebx
593bff:	36 36 30 4d 00       	ss xor %cl,%ss:0x0(%ebp)
593c04:	44                   	inc    %esp
593c05:	43                   	inc    %ebx
593c06:	53                   	push   %ebx
593c07:	37                   	aaa
593c08:	32 24 00             	xor    (%eax,%eax,1),%ah
593c0b:	00 44 43 53          	add    %al,0x53(%ebx,%eax,2)
593c0f:	37                   	aaa
593c10:	36 30 43 00          	xor    %al,%ss:0x0(%ebx)
593c14:	44                   	inc    %esp
593c15:	43                   	inc    %ebx
593c16:	53                   	push   %ebx
593c17:	37                   	aaa
593c18:	36 30 4d 00          	xor    %cl,%ss:0x0(%ebp)
593c1c:	50                   	push   %eax
593c1d:	72 6f                	jb     0x593c8e
593c1f:	42                   	inc    %edx
593c20:	61                   	popa
593c21:	63 6b 00             	arpl   %ebp,0x0(%ebx)
593c24:	50                   	push   %eax
593c25:	42                   	inc    %edx
593c26:	36 34 35             	ss xor $0x35,%al
593c29:	43                   	inc    %ebx
593c2a:	00 00                	add    %al,(%eax)
593c2c:	50                   	push   %eax
593c2d:	42                   	inc    %edx
593c2e:	36 34 35             	ss xor $0x35,%al
593c31:	48                   	dec    %eax
593c32:	00 00                	add    %al,(%eax)
593c34:	50                   	push   %eax
593c35:	42                   	inc    %edx
593c36:	36 34 35             	ss xor $0x35,%al
593c39:	4d                   	dec    %ebp
593c3a:	00 00                	add    %al,(%eax)
593c3c:	44                   	inc    %esp
593c3d:	43                   	inc    %ebx
593c3e:	53                   	push   %ebx
593c3f:	20 50 72             	and    %dl,0x72(%eax)
593c42:	6f                   	outsl  %ds:(%esi),(%dx)
593c43:	20 31                	and    %dh,(%ecx)
593c45:	34 6e                	xor    $0x6e,%al
593c47:	00 44 43 53          	add    %al,0x53(%ebx,%eax,2)
593c4b:	20 50 72             	and    %dl,0x72(%eax)
593c4e:	6f                   	outsl  %ds:(%esi),(%dx)
593c4f:	20 31                	and    %dh,(%ecx)
593c51:	34 6e                	xor    $0x6e,%al
593c53:	78 00                	js     0x593c55
593c55:	00 00                	add    %al,(%eax)
593c57:	00 44 43 53          	add    %al,0x53(%ebx,%eax,2)
593c5b:	20 50 72             	and    %dl,0x72(%eax)
593c5e:	6f                   	outsl  %ds:(%esi),(%dx)
593c5f:	20 53 4c             	and    %dl,0x4c(%ebx)
593c62:	52                   	push   %edx
593c63:	2f                   	das
593c64:	63 00                	arpl   %eax,(%eax)
593c66:	00 00                	add    %al,(%eax)
593c68:	44                   	inc    %esp
593c69:	43                   	inc    %ebx
593c6a:	53                   	push   %ebx
593c6b:	20 50 72             	and    %dl,0x72(%eax)
593c6e:	6f                   	outsl  %ds:(%esi),(%dx)
593c6f:	20 53 4c             	and    %dl,0x4c(%ebx)
593c72:	52                   	push   %edx
593c73:	2f                   	das
593c74:	6e                   	outsb  %ds:(%esi),(%dx)
593c75:	00 00                	add    %al,(%eax)
593c77:	00 44 43 32          	add    %al,0x32(%ebx,%eax,2)
593c7b:	30 00                	xor    %al,(%eax)
593c7d:	00 00                	add    %al,(%eax)
593c7f:	00 44 43 32          	add    %al,0x32(%ebx,%eax,2)
593c83:	35 00 00 00 00       	xor    $0x0,%eax
593c88:	44                   	inc    %esp
593c89:	69 67 69 74 61 6c 20 	imul   $0x206c6174,0x69(%edi),%esp
593c90:	43                   	inc    %ebx
593c91:	61                   	popa
593c92:	6d                   	insl   (%dx),%es:(%edi)
593c93:	65 72 61             	gs jb  0x593cf7
593c96:	20 34 30             	and    %dh,(%eax,%esi,1)
593c99:	00 00                	add    %al,(%eax)
593c9b:	00 44 43 34          	add    %al,0x34(%ebx,%eax,2)
593c9f:	30 00                	xor    %al,(%eax)
593ca1:	00 00                	add    %al,(%eax)
593ca3:	00 44 43 35          	add    %al,0x35(%ebx,%eax,2)
593ca7:	30 00                	xor    %al,(%eax)
593ca9:	00 00                	add    %al,(%eax)
593cab:	00 44 43 31          	add    %al,0x31(%ebx,%eax,2)
593caf:	32 30                	xor    (%eax),%dh
593cb1:	00 00                	add    %al,(%eax)
593cb3:	00 52 6f             	add    %dl,0x6f(%edx)
593cb6:	6c                   	insb   (%dx),%es:(%edi)
593cb7:	6c                   	insb   (%dx),%es:(%edi)
593cb8:	65 69 00 00 53 49 47 	imul   $0x47495300,%gs:(%eax),%eax
593cbf:	4d                   	dec    %ebp
593cc0:	41                   	inc    %ecx
593cc1:	00 00                	add    %al,(%eax)
593cc3:	00 53 44             	add    %dl,0x44(%ebx)
593cc6:	31 30                	xor    %esi,(%eax)
593cc8:	00 00                	add    %al,(%eax)
593cca:	00 00                	add    %al,(%eax)
593ccc:	e1 7a                	loope  0x593d48
593cce:	14 ae                	adc    $0xae,%al
593cd0:	47                   	inc    %edi
593cd1:	e1 7a                	loope  0x593d4d
593cd3:	84 00                	test   %al,(%eax)
593cd5:	40                   	inc    %eax
593cd6:	00 00                	add    %al,(%eax)
593cd8:	33 33                	xor    (%ebx),%esi
593cda:	33 33                	xor    (%ebx),%esi
593cdc:	33 33                	xor    (%ebx),%esi
593cde:	33 93 00 40 00 00    	xor    0x4000(%ebx),%edx
593ce4:	50                   	push   %eax
593ce5:	43                   	inc    %ebx
593ce6:	2d 43 41 4d 20       	sub    $0x204d4143,%eax
593ceb:	36 30 30             	xor    %dh,%ss:(%eax)
593cee:	00 00                	add    %al,(%eax)
593cf0:	51                   	push   %ecx
593cf1:	56                   	push   %esi
593cf2:	2d 32 30 30 30       	sub    $0x30303032,%eax
593cf7:	55                   	push   %ebp
593cf8:	58                   	pop    %eax
593cf9:	00 00                	add    %al,(%eax)
593cfb:	00 51 56             	add    %dl,0x56(%ecx)
593cfe:	2d 33 2a 30 30       	sub    $0x30302a33,%eax
593d03:	45                   	inc    %ebp
593d04:	58                   	pop    %eax
593d05:	00 00                	add    %al,(%eax)
593d07:	00 51 56             	add    %dl,0x56(%ecx)
593d0a:	2d 34 30 30 30       	sub    $0x30303034,%eax
593d0f:	00 51 56             	add    %dl,0x56(%ecx)
593d12:	2d 35 37 30 30       	sub    $0x30303735,%eax
593d17:	00 45 58             	add    %al,0x58(%ebp)
593d1a:	2d 50 36 30 30       	sub    $0x30303650,%eax
593d1f:	00 00                	add    %al,(%eax)
593d21:	00 00                	add    %al,(%eax)
593d23:	40                   	inc    %eax
593d24:	53                   	push   %ebx
593d25:	56                   	push   %esi
593d26:	57                   	push   %edi
593d27:	83 c4 ac             	add    $0xffffffac,%esp
593d2a:	89 04 24             	mov    %eax,(%esp)
593d2d:	33 c0                	xor    %eax,%eax
593d2f:	89 44 24 10          	mov    %eax,0x10(%esp)
593d33:	8b 04 24             	mov    (%esp),%eax
593d36:	83 b8 d8 01 00 00 00 	cmpl   $0x0,0x1d8(%eax)
593d3d:	74 0d                	je     0x593d4c
593d3f:	8b 04 24             	mov    (%esp),%eax
593d42:	c7 80 00 01 00 00 01 	movl   $0x1,0x100(%eax)
593d49:	00 00 00
593d4c:	8b 04 24             	mov    (%esp),%eax
593d4f:	05 34 02 00 00       	add    $0x234,%eax
593d54:	b9 00 80 00 00       	mov    $0x8000,%ecx
593d59:	33 d2                	xor    %edx,%edx
593d5b:	e8 54 54 ff ff       	call   0x5891b4
593d60:	8b 04 24             	mov    (%esp),%eax
593d63:	8b 80 28 01 00 00    	mov    0x128(%eax),%eax
593d69:	8b 14 24             	mov    (%esp),%edx
593d6c:	8b 92 f8 00 00 00    	mov    0xf8(%edx),%edx
593d72:	8b 0c 24             	mov    (%esp),%ecx
593d75:	2b d0                	sub    %eax,%edx
593d77:	4a                   	dec    %edx
593d78:	2b d0                	sub    %eax,%edx
593d7a:	0f 8c 97 02 00 00    	jl     0x594017
593d80:	42                   	inc    %edx
593d81:	89 54 24 28          	mov    %edx,0x28(%esp)
593d85:	89 44 24 04          	mov    %eax,0x4(%esp)
593d89:	8b 04 24             	mov    (%esp),%eax
593d8c:	8b 80 28 01 00 00    	mov    0x128(%eax),%eax
593d92:	8b 14 24             	mov    (%esp),%edx
593d95:	8b 92 fc 00 00 00    	mov    0xfc(%edx),%edx
593d9b:	8b 0c 24             	mov    (%esp),%ecx
593d9e:	2b d0                	sub    %eax,%edx
593da0:	4a                   	dec    %edx
593da1:	2b d0                	sub    %eax,%edx
593da3:	0f 8c 60 02 00 00    	jl     0x594009
593da9:	42                   	inc    %edx
593daa:	89 54 24 2c          	mov    %edx,0x2c(%esp)
593dae:	89 44 24 08          	mov    %eax,0x8(%esp)
593db2:	8b 04 24             	mov    (%esp),%eax
593db5:	8b 80 fc 00 00 00    	mov    0xfc(%eax),%eax
593dbb:	f7 6c 24 04          	imull  0x4(%esp)
593dbf:	03 44 24 08          	add    0x8(%esp),%eax
593dc3:	8b 14 24             	mov    (%esp),%edx
593dc6:	8b 12                	mov    (%edx),%edx
593dc8:	8d 3c c2             	lea    (%edx,%eax,8),%edi
593dcb:	8b 04 24             	mov    (%esp),%eax
593dce:	83 b8 d8 01 00 00 00 	cmpl   $0x0,0x1d8(%eax)
593dd5:	74 26                	je     0x593dfd
593dd7:	8b 4c 24 04          	mov    0x4(%esp),%ecx
593ddb:	03 c9                	add    %ecx,%ecx
593ddd:	83 e1 0e             	and    $0xe,%ecx
593de0:	8b 44 24 08          	mov    0x8(%esp),%eax
593de4:	83 e0 01             	and    $0x1,%eax
593de7:	03 c8                	add    %eax,%ecx
593de9:	03 c9                	add    %ecx,%ecx
593deb:	8b 04 24             	mov    (%esp),%eax
593dee:	8b 80 3c 01 00 00    	mov    0x13c(%eax),%eax
593df4:	d3 e8                	shr    %cl,%eax
593df6:	83 e0 03             	and    $0x3,%eax
593df9:	89 44 24 10          	mov    %eax,0x10(%esp)
593dfd:	8b 04 24             	mov    (%esp),%eax
593e00:	83 b8 00 01 00 00 04 	cmpl   $0x4,0x100(%eax)
593e07:	75 1c                	jne    0x593e25
593e09:	8b 04 24             	mov    (%esp),%eax
593e0c:	83 b8 24 01 00 00 00 	cmpl   $0x0,0x124(%eax)
593e13:	75 10                	jne    0x593e25
593e15:	0f b7 47 02          	movzwl 0x2(%edi),%eax
593e19:	0f b7 57 06          	movzwl 0x6(%edi),%edx
593e1d:	03 c2                	add    %edx,%eax
593e1f:	d1 e8                	shr    $1,%eax
593e21:	66 89 47 02          	mov    %ax,0x2(%edi)
593e25:	8b 04 24             	mov    (%esp),%eax
593e28:	83 b8 00 01 00 00 01 	cmpl   $0x1,0x100(%eax)
593e2f:	75 27                	jne    0x593e58
593e31:	33 f6                	xor    %esi,%esi
593e33:	8d 44 24 38          	lea    0x38(%esp),%eax
593e37:	8b 54 24 10          	mov    0x10(%esp),%edx
593e3b:	0f b7 14 57          	movzwl (%edi,%edx,2),%edx
593e3f:	89 54 24 50          	mov    %edx,0x50(%esp)
593e43:	db 44 24 50          	fildl  0x50(%esp)
593e47:	dd 18                	fstpl  (%eax)
593e49:	9b                   	fwait
593e4a:	46                   	inc    %esi
593e4b:	83 c0 08             	add    $0x8,%eax
593e4e:	83 fe 03             	cmp    $0x3,%esi
593e51:	75 e4                	jne    0x593e37
593e53:	e9 d3 00 00 00       	jmp    0x593f2b
593e58:	8b 04 24             	mov    (%esp),%eax
593e5b:	83 b8 24 01 00 00 00 	cmpl   $0x0,0x124(%eax)
593e62:	74 66                	je     0x593eca
593e64:	33 f6                	xor    %esi,%esi
593e66:	8d 44 24 38          	lea    0x38(%esp),%eax
593e6a:	8b 14 24             	mov    (%esp),%edx
593e6d:	81 c2 04 02 00 00    	add    $0x204,%edx
593e73:	89 54 24 30          	mov    %edx,0x30(%esp)
593e77:	33 d2                	xor    %edx,%edx
593e79:	89 10                	mov    %edx,(%eax)
593e7b:	89 50 04             	mov    %edx,0x4(%eax)
593e7e:	8b 0c 24             	mov    (%esp),%ecx
593e81:	8b 89 00 01 00 00    	mov    0x100(%ecx),%ecx
593e87:	49                   	dec    %ecx
593e88:	85 c9                	test   %ecx,%ecx
593e8a:	7c 2e                	jl     0x593eba