592d55:	e8 96 71 00 00       	call   0x599ef0
592d5a:	83 c4 08             	add    $0x8,%esp
592d5d:	c3                   	ret
592d5e:	cc                   	int3
592d5f:	cc                   	int3
592d60:	b8 84 00 00 00       	mov    $0x84,%eax
592d65:	e8 86 e7 04 00       	call   0x5e14f0
592d6a:	a1 d4 89 72 00       	mov    0x7289d4,%eax
592d6f:	33 c4                	xor    %esp,%eax
592d71:	89 84 24 80 00 00 00 	mov    %eax,0x80(%esp)
592d78:	53                   	push   %ebx
592d79:	8b 9c 24 90 00 00 00 	mov    0x90(%esp),%ebx
592d80:	55                   	push   %ebp
592d81:	8b ac 24 98 00 00 00 	mov    0x98(%esp),%ebp
592d88:	56                   	push   %esi
592d89:	33 f6                	xor    %esi,%esi
592d8b:	89 5c 24 1c          	mov    %ebx,0x1c(%esp)
592d8f:	89 74 24 0c          	mov    %esi,0xc(%esp)
592d93:	57                   	push   %edi
592d94:	8b bc 24 98 00 00 00 	mov    0x98(%esp),%edi
592d9b:	89 7c 24 2c          	mov    %edi,0x2c(%esp)
592d9f:	85 db                	test   %ebx,%ebx
592da1:	75 35                	jne    0x592dd8
592da3:	e8 e8 b8 f3 ff       	call   0x4ce690
592da8:	8b f0                	mov    %eax,%esi
592daa:	89 74 24 10          	mov    %esi,0x10(%esp)
592dae:	85 f6                	test   %esi,%esi
592db0:	0f 84 ab 02 00 00    	je     0x593061
592db6:	68 c8 00 00 00       	push   $0xc8
592dbb:	56                   	push   %esi
592dbc:	e8 ef b6 f3 ff       	call   0x4ce4b0
592dc1:	83 c4 08             	add    $0x8,%esp
592dc4:	85 c0                	test   %eax,%eax
592dc6:	0f 84 95 02 00 00    	je     0x593061
592dcc:	8b 46 04             	mov    0x4(%esi),%eax
592dcf:	bd c8 00 00 00       	mov    $0xc8,%ebp
592dd4:	88 18                	mov    %bl,(%eax)
592dd6:	eb 08                	jmp    0x592de0
592dd8:	85 ed                	test   %ebp,%ebp
592dda:	0f 84 bb 02 00 00    	je     0x59309b
592de0:	85 ff                	test   %edi,%edi
592de2:	75 29                	jne    0x592e0d
592de4:	85 f6                	test   %esi,%esi
592de6:	74 0c                	je     0x592df4
592de8:	8b 5e 04             	mov    0x4(%esi),%ebx
592deb:	56                   	push   %esi
592dec:	e8 3f d3 f0 ff       	call   0x4a0130
592df1:	83 c4 04             	add    $0x4,%esp
592df4:	55                   	push   %ebp
592df5:	68 70 80 6c 00       	push   $0x6c8070
592dfa:	53                   	push   %ebx
592dfb:	e8 d0 9c 06 00       	call   0x5fcad0
592e00:	83 c4 0c             	add    $0xc,%esp
592e03:	c6 44 2b ff 00       	movb   $0x0,-0x1(%ebx,%ebp,1)
592e08:	e9 a0 02 00 00       	jmp    0x5930ad
592e0d:	ff 37                	push   (%edi)
592e0f:	4d                   	dec    %ebp
592e10:	c7 44 24 1c 00 00 00 	movl   $0x0,0x1c(%esp)
592e17:	00
592e18:	33 db                	xor    %ebx,%ebx
592e1a:	89 6c 24 28          	mov    %ebp,0x28(%esp)
592e1e:	89 5c 24 18          	mov    %ebx,0x18(%esp)
592e22:	e8 e9 b7 f1 ff       	call   0x4ae610
592e27:	83 c4 04             	add    $0x4,%esp
592e2a:	85 c0                	test   %eax,%eax
592e2c:	0f 8e 19 02 00 00    	jle    0x59304b
592e32:	53                   	push   %ebx
592e33:	ff 37                	push   (%edi)
592e35:	e8 f6 b8 f1 ff       	call   0x4ae730
592e3a:	8b e8                	mov    %eax,%ebp
592e3c:	89 6c 24 30          	mov    %ebp,0x30(%esp)
592e40:	ff 75 00             	push   0x0(%ebp)
592e43:	e8 98 4b f1 ff       	call   0x4a79e0
592e48:	83 c4 0c             	add    $0xc,%esp
592e4b:	85 c0                	test   %eax,%eax
592e4d:	74 11                	je     0x592e60
592e4f:	50                   	push   %eax
592e50:	e8 fb 4a f1 ff       	call   0x4a7950
592e55:	83 c4 04             	add    $0x4,%esp
592e58:	89 44 24 1c          	mov    %eax,0x1c(%esp)
592e5c:	85 c0                	test   %eax,%eax
592e5e:	75 1a                	jne    0x592e7a
592e60:	ff 75 00             	push   0x0(%ebp)
592e63:	8d 44 24 44          	lea    0x44(%esp),%eax
592e67:	6a 50                	push   $0x50
592e69:	50                   	push   %eax
592e6a:	e8 31 47 f1 ff       	call   0x4a75a0
592e6f:	8d 44 24 4c          	lea    0x4c(%esp),%eax
592e73:	83 c4 0c             	add    $0xc,%esp
592e76:	89 44 24 1c          	mov    %eax,0x1c(%esp)
592e7a:	8b d8                	mov    %eax,%ebx
592e7c:	8d 4b 01             	lea    0x1(%ebx),%ecx
592e7f:	90                   	nop
592e80:	8a 03                	mov    (%ebx),%al
592e82:	43                   	inc    %ebx
592e83:	84 c0                	test   %al,%al
592e85:	75 f9                	jne    0x592e80
592e87:	8b 45 04             	mov    0x4(%ebp),%eax
592e8a:	2b d9                	sub    %ecx,%ebx
592e8c:	8b 38                	mov    (%eax),%edi
592e8e:	81 ff 00 00 10 00    	cmp    $0x100000,%edi
592e94:	0f 8f dc 01 00 00    	jg     0x593076
592e9a:	83 78 04 1b          	cmpl   $0x1b,0x4(%eax)
592e9e:	8b 68 08             	mov    0x8(%eax),%ebp
592ea1:	75 78                	jne    0x592f1b
592ea3:	8b c7                	mov    %edi,%eax
592ea5:	25 03 00 00 80       	and    $0x80000003,%eax
592eaa:	79 05                	jns    0x592eb1
592eac:	48                   	dec    %eax
592ead:	83 c8 fc             	or     $0xfffffffc,%eax
592eb0:	40                   	inc    %eax
592eb1:	75 68                	jne    0x592f1b
592eb3:	33 d2                	xor    %edx,%edx
592eb5:	33 f6                	xor    %esi,%esi
592eb7:	33 c0                	xor    %eax,%eax
592eb9:	89 54 24 38          	mov    %edx,0x38(%esp)
592ebd:	33 c9                	xor    %ecx,%ecx
592ebf:	89 74 24 34          	mov    %esi,0x34(%esp)
592ec3:	89 44 24 30          	mov    %eax,0x30(%esp)
592ec7:	85 ff                	test   %edi,%edi
592ec9:	7e 28                	jle    0x592ef3
592ecb:	0f 1f 44 00 00       	nopl   0x0(%eax,%eax,1)
592ed0:	38 14 29             	cmp    %dl,(%ecx,%ebp,1)
592ed3:	74 0d                	je     0x592ee2
592ed5:	8b c1                	mov    %ecx,%eax
592ed7:	83 e0 03             	and    $0x3,%eax
592eda:	c7 44 84 30 01 00 00 	movl   $0x1,0x30(%esp,%eax,4)
592ee1:	00
592ee2:	41                   	inc    %ecx
592ee3:	3b cf                	cmp    %edi,%ecx
592ee5:	7c e9                	jl     0x592ed0
592ee7:	8b 54 24 38          	mov    0x38(%esp),%edx
592eeb:	8b 74 24 34          	mov    0x34(%esp),%esi
592eef:	8b 44 24 30          	mov    0x30(%esp),%eax
592ef3:	0b c6                	or     %esi,%eax
592ef5:	c7 44 24 3c 01 00 00 	movl   $0x1,0x3c(%esp)
592efc:	00
592efd:	0b c2                	or     %edx,%eax
592eff:	75 22                	jne    0x592f23
592f01:	c7 44 24 38 00 00 00 	movl   $0x0,0x38(%esp)
592f08:	00
592f09:	c7 44 24 34 00 00 00 	movl   $0x0,0x34(%esp)
592f10:	00
592f11:	c7 44 24 30 00 00 00 	movl   $0x0,0x30(%esp)
592f18:	00
592f19:	eb 20                	jmp    0x592f3b
592f1b:	c7 44 24 3c 01 00 00 	movl   $0x1,0x3c(%esp)
592f22:	00
592f23:	c7 44 24 30 01 00 00 	movl   $0x1,0x30(%esp)
592f2a:	00
592f2b:	c7 44 24 34 01 00 00 	movl   $0x1,0x34(%esp)
592f32:	00
592f33:	c7 44 24 38 01 00 00 	movl   $0x1,0x38(%esp)
592f3a:	00
592f3b:	33 c9                	xor    %ecx,%ecx
592f3d:	33 d2                	xor    %edx,%edx
592f3f:	85 ff                	test   %edi,%edi
592f41:	7e 20                	jle    0x592f63
592f43:	8b c1                	mov    %ecx,%eax
592f45:	83 e0 03             	and    $0x3,%eax
592f48:	83 7c 84 30 00       	cmpl   $0x0,0x30(%esp,%eax,4)
592f4d:	74 0f                	je     0x592f5e
592f4f:	8a 04 29             	mov    (%ecx,%ebp,1),%al
592f52:	42                   	inc    %edx
592f53:	3c 20                	cmp    $0x20,%al
592f55:	72 04                	jb     0x592f5b
592f57:	3c 7e                	cmp    $0x7e,%al
592f59:	76 03                	jbe    0x592f5e
592f5b:	83 c2 03             	add    $0x3,%edx
592f5e:	41                   	inc    %ecx
592f5f:	3b cf                	cmp    %edi,%ecx
592f61:	7c e0                	jl     0x592f43
592f63:	8b 4c 24 18          	mov    0x18(%esp),%ecx
592f67:	8d 04 1a             	lea    (%edx,%ebx,1),%eax
592f6a:	8b e9                	mov    %ecx,%ebp
592f6c:	83 c1 02             	add    $0x2,%ecx
592f6f:	03 c8                	add    %eax,%ecx
592f71:	89 4c 24 18          	mov    %ecx,0x18(%esp)
592f75:	81 f9 00 00 10 00    	cmp    $0x100000,%ecx
592f7b:	0f 8f ee 00 00 00    	jg     0x59306f
592f81:	8b 74 24 10          	mov    0x10(%esp),%esi
592f85:	85 f6                	test   %esi,%esi
592f87:	74 1a                	je     0x592fa3
592f89:	8d 41 01             	lea    0x1(%ecx),%eax
592f8c:	50                   	push   %eax
592f8d:	56                   	push   %esi
592f8e:	e8 1d b5 f3 ff       	call   0x4ce4b0
592f93:	83 c4 08             	add    $0x8,%esp
592f96:	85 c0                	test   %eax,%eax
592f98:	0f 84 c3 00 00 00    	je     0x593061
592f9e:	8b 76 04             	mov    0x4(%esi),%esi
592fa1:	eb 0e                	jmp    0x592fb1
592fa3:	3b 4c 24 24          	cmp    0x24(%esp),%ecx
592fa7:	0f 8f f2 00 00 00    	jg     0x59309f
592fad:	8b 74 24 20          	mov    0x20(%esp),%esi
592fb1:	03 f5                	add    %ebp,%esi
592fb3:	53                   	push   %ebx
592fb4:	ff 74 24 20          	push   0x20(%esp)
592fb8:	c6 06 2f             	movb   $0x2f,(%esi)
592fbb:	46                   	inc    %esi
592fbc:	56                   	push   %esi
592fbd:	e8 3e ff 04 00       	call   0x5e2f00
592fc2:	8b 44 24 34          	mov    0x34(%esp),%eax
592fc6:	03 f3                	add    %ebx,%esi
592fc8:	83 c4 0c             	add    $0xc,%esp
592fcb:	33 c9                	xor    %ecx,%ecx
592fcd:	c6 06 3d             	movb   $0x3d,(%esi)
592fd0:	46                   	inc    %esi
592fd1:	8b 40 04             	mov    0x4(%eax),%eax
592fd4:	8b 58 08             	mov    0x8(%eax),%ebx
592fd7:	85 ff                	test   %edi,%edi
592fd9:	7e 4e                	jle    0x593029
592fdb:	0f 1f 44 00 00       	nopl   0x0(%eax,%eax,1)
592fe0:	8b c1                	mov    %ecx,%eax
592fe2:	83 e0 03             	and    $0x3,%eax
592fe5:	83 7c 84 30 00       	cmpl   $0x0,0x30(%esp,%eax,4)
592fea:	74 38                	je     0x593024
592fec:	0f b6 14 19          	movzbl (%ecx,%ebx,1),%edx
592ff0:	8d 42 e0             	lea    -0x20(%edx),%eax
592ff3:	83 f8 5e             	cmp    $0x5e,%eax
592ff6:	77 05                	ja     0x592ffd
592ff8:	88 16                	mov    %dl,(%esi)
592ffa:	46                   	inc    %esi
592ffb:	eb 27                	jmp    0x593024
592ffd:	8b c2                	mov    %edx,%eax
592fff:	66 c7 06 5c 78       	movw   $0x785c,(%esi)
593004:	c1 f8 04             	sar    $0x4,%eax
593007:	83 e2 0f             	and    $0xf,%edx
59300a:	83 e0 0f             	and    $0xf,%eax
59300d:	0f b6 80 5c 80 6c 00 	movzbl 0x6c805c(%eax),%eax
593014:	88 46 02             	mov    %al,0x2(%esi)
593017:	0f b6 82 5c 80 6c 00 	movzbl 0x6c805c(%edx),%eax
59301e:	88 46 03             	mov    %al,0x3(%esi)
593021:	83 c6 04             	add    $0x4,%esi
593024:	41                   	inc    %ecx
593025:	3b cf                	cmp    %edi,%ecx
593027:	7c b7                	jl     0x592fe0
593029:	8b 7c 24 2c          	mov    0x2c(%esp),%edi
59302d:	8b 5c 24 14          	mov    0x14(%esp),%ebx
593031:	c6 06 00             	movb   $0x0,(%esi)
593034:	43                   	inc    %ebx
593035:	89 5c 24 14          	mov    %ebx,0x14(%esp)
593039:	ff 37                	push   (%edi)
59303b:	e8 d0 b5 f1 ff       	call   0x4ae610
593040:	83 c4 04             	add    $0x4,%esp
593043:	3b d8                	cmp    %eax,%ebx
593045:	0f 8c e7 fd ff ff    	jl     0x592e32
59304b:	8b 44 24 10          	mov    0x10(%esp),%eax
59304f:	85 c0                	test   %eax,%eax
593051:	74 4c                	je     0x59309f
593053:	8b 58 04             	mov    0x4(%eax),%ebx
593056:	50                   	push   %eax
593057:	e8 d4 d0 f0 ff       	call   0x4a0130
59305c:	83 c4 04             	add    $0x4,%esp
59305f:	eb 42                	jmp    0x5930a3
593061:	68 e2 00 00 00       	push   $0xe2
593066:	68 80 80 6c 00       	push   $0x6c8080
59306b:	6a 41                	push   $0x41
59306d:	eb 13                	jmp    0x593082
59306f:	68 ac 00 00 00       	push   $0xac
593074:	eb 02                	jmp    0x593078
593076:	6a 7b                	push   $0x7b
593078:	68 80 80 6c 00       	push   $0x6c8080
59307d:	68 86 00 00 00       	push   $0x86
593082:	6a 74                	push   $0x74
593084:	6a 0b                	push   $0xb
593086:	e8 15 e4 f0 ff       	call   0x4a14a0
59308b:	83 c4 14             	add    $0x14,%esp
59308e:	8b 44 24 10          	mov    0x10(%esp),%eax
593092:	50                   	push   %eax
593093:	e8 e8 b3 f3 ff       	call   0x4ce480
593098:	83 c4 04             	add    $0x4,%esp
59309b:	33 c0                	xor    %eax,%eax
59309d:	eb 10                	jmp    0x5930af
59309f:	8b 5c 24 20          	mov    0x20(%esp),%ebx
5930a3:	83 7c 24 14 00       	cmpl   $0x0,0x14(%esp)
5930a8:	75 03                	jne    0x5930ad
5930aa:	c6 03 00             	movb   $0x0,(%ebx)
5930ad:	8b c3                	mov    %ebx,%eax
5930af:	8b 8c 24 90 00 00 00 	mov    0x90(%esp),%ecx
5930b6:	5f                   	pop    %edi
5930b7:	5e                   	pop    %esi
5930b8:	5d                   	pop    %ebp
5930b9:	5b                   	pop    %ebx
5930ba:	33 cc                	xor    %esp,%ecx
5930bc:	e8 19 e4 04 00       	call   0x5e14da
5930c1:	81 c4 84 00 00 00    	add    $0x84,%esp
5930c7:	c3                   	ret
5930c8:	cc                   	int3
5930c9:	cc                   	int3
5930ca:	cc                   	int3
5930cb:	cc                   	int3
5930cc:	cc                   	int3
5930cd:	cc                   	int3
5930ce:	cc                   	int3
5930cf:	cc                   	int3
5930d0:	b8 08 00 00 00       	mov    $0x8,%eax
5930d5:	e8 16 e4 04 00       	call   0x5e14f0
5930da:	53                   	push   %ebx
5930db:	57                   	push   %edi
5930dc:	8b 7c 24 14          	mov    0x14(%esp),%edi
5930e0:	57                   	push   %edi
5930e1:	e8 4a 02 00 00       	call   0x593330
5930e6:	8b d8                	mov    %eax,%ebx
5930e8:	83 c4 04             	add    $0x4,%esp
5930eb:	85 db                	test   %ebx,%ebx
5930ed:	75 06                	jne    0x5930f5
5930ef:	5f                   	pop    %edi
5930f0:	5b                   	pop    %ebx
5930f1:	83 c4 08             	add    $0x8,%esp
5930f4:	c3                   	ret
5930f5:	8b 03                	mov    (%ebx),%eax
5930f7:	55                   	push   %ebp
5930f8:	8b 6c 24 1c          	mov    0x1c(%esp),%ebp
5930fc:	85 c0                	test   %eax,%eax
5930fe:	74 75                	je     0x593175
593100:	f6 40 0c 20          	testb  $0x20,0xc(%eax)
593104:	74 6f                	je     0x593175
593106:	68 01 04 00 00       	push   $0x401
59310b:	55                   	push   %ebp
59310c:	e8 3f f4 f1 ff       	call   0x4b2550
593111:	83 c4 08             	add    $0x8,%esp
593114:	89 44 24 0c          	mov    %eax,0xc(%esp)
593118:	85 c0                	test   %eax,%eax
59311a:	75 11                	jne    0x59312d
59311c:	68 a9 00 00 00       	push   $0xa9
593121:	68 b4 80 6c 00       	push   $0x6c80b4
593126:	6a 69                	push   $0x69
593128:	e9 a9 00 00 00       	jmp    0x5931d6
59312d:	56                   	push   %esi
59312e:	8d 4c 24 14          	lea    0x14(%esp),%ecx
593132:	51                   	push   %ecx
593133:	6a 00                	push   $0x0
593135:	6a 03                	push   $0x3
593137:	50                   	push   %eax
593138:	e8 83 f3 f1 ff       	call   0x4b24c0
59313d:	68 00 02 00 00       	push   $0x200
593142:	ff 74 24 24          	push   0x24(%esp)
593146:	8b f0                	mov    %eax,%esi
593148:	e8 e3 f9 f1 ff       	call   0x4b2b30
59314d:	6a 00                	push   $0x0
59314f:	6a 00                	push   $0x0
593151:	68 82 00 00 00       	push   $0x82
593156:	ff 74 24 34          	push   0x34(%esp)
59315a:	e8 61 f3 f1 ff       	call   0x4b24c0
59315f:	56                   	push   %esi
593160:	ff 74 24 40          	push   0x40(%esp)
593164:	ff 33                	push   (%ebx)
593166:	e8 65 e9 f1 ff       	call   0x4b1ad0
59316b:	8b 03                	mov    (%ebx),%eax