583c30:	e8 3d d4 05 00       	call   0x5e1072
583c35:	83 c4 08             	add    $0x8,%esp
583c38:	8a c3                	mov    %bl,%al
583c3a:	e9 be 00 00 00       	jmp    0x583cfd
583c3f:	8a 01                	mov    (%ecx),%al
583c41:	8d 51 01             	lea    0x1(%ecx),%edx
583c44:	89 16                	mov    %edx,(%esi)
583c46:	3c 5c                	cmp    $0x5c,%al
583c48:	75 44                	jne    0x583c8e
583c4a:	8a 0a                	mov    (%edx),%cl
583c4c:	8d 42 01             	lea    0x1(%edx),%eax
583c4f:	89 06                	mov    %eax,(%esi)
583c51:	80 f9 75             	cmp    $0x75,%cl
583c54:	75 38                	jne    0x583c8e
583c56:	8d 45 d0             	lea    -0x30(%ebp),%eax
583c59:	8b cb                	mov    %ebx,%ecx
583c5b:	50                   	push   %eax
583c5c:	ff 75 10             	push   0x10(%ebp)
583c5f:	56                   	push   %esi
583c60:	ff 75 d4             	push   -0x2c(%ebp)
583c63:	e8 c8 00 00 00       	call   0x583d30
583c68:	84 c0                	test   %al,%al
583c6a:	0f 84 8b 00 00 00    	je     0x583cfb
583c70:	8b 0f                	mov    (%edi),%ecx
583c72:	8b 45 d0             	mov    -0x30(%ebp),%eax
583c75:	81 e1 ff 03 00 00    	and    $0x3ff,%ecx
583c7b:	83 c1 40             	add    $0x40,%ecx
583c7e:	25 ff 03 00 00       	and    $0x3ff,%eax
583c83:	c1 e1 0a             	shl    $0xa,%ecx
583c86:	03 c8                	add    %eax,%ecx
583c88:	89 0f                	mov    %ecx,(%edi)
583c8a:	b0 01                	mov    $0x1,%al
583c8c:	eb 6f                	jmp    0x583cfd
583c8e:	6a 4f                	push   $0x4f
583c90:	68 68 36 6c 00       	push   $0x6c3668
583c95:	8d 4d d8             	lea    -0x28(%ebp),%ecx
583c98:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
583c9f:	c7 45 ec 0f 00 00 00 	movl   $0xf,-0x14(%ebp)
583ca6:	c6 45 d8 00          	movb   $0x0,-0x28(%ebp)
583caa:	e8 91 15 ec ff       	call   0x445240
583caf:	ff 36                	push   (%esi)
583cb1:	8d 45 d8             	lea    -0x28(%ebp),%eax
583cb4:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
583cbb:	ff 75 d4             	push   -0x2c(%ebp)
583cbe:	8b cb                	mov    %ebx,%ecx
583cc0:	50                   	push   %eax
583cc1:	e8 ca f2 ff ff       	call   0x582f90
583cc6:	8b 55 ec             	mov    -0x14(%ebp),%edx
583cc9:	8a d8                	mov    %al,%bl
583ccb:	83 fa 10             	cmp    $0x10,%edx
583cce:	0f 82 64 ff ff ff    	jb     0x583c38
583cd4:	8b 4d d8             	mov    -0x28(%ebp),%ecx
583cd7:	42                   	inc    %edx
583cd8:	8b c1                	mov    %ecx,%eax
583cda:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
583ce0:	0f 82 48 ff ff ff    	jb     0x583c2e
583ce6:	8b 49 fc             	mov    -0x4(%ecx),%ecx
583ce9:	83 c2 23             	add    $0x23,%edx
583cec:	2b c1                	sub    %ecx,%eax
583cee:	83 c0 fc             	add    $0xfffffffc,%eax
583cf1:	83 f8 1f             	cmp    $0x1f,%eax
583cf4:	77 25                	ja     0x583d1b
583cf6:	e9 33 ff ff ff       	jmp    0x583c2e
583cfb:	32 c0                	xor    %al,%al
583cfd:	8b 4d f4             	mov    -0xc(%ebp),%ecx
583d00:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
583d07:	59                   	pop    %ecx
583d08:	5f                   	pop    %edi
583d09:	5e                   	pop    %esi
583d0a:	5b                   	pop    %ebx
583d0b:	8b 4d f0             	mov    -0x10(%ebp),%ecx
583d0e:	33 cd                	xor    %ebp,%ecx
583d10:	e8 c5 d7 05 00       	call   0x5e14da
583d15:	8b e5                	mov    %ebp,%esp
583d17:	5d                   	pop    %ebp
583d18:	c2 10 00             	ret    $0x10
583d1b:	e8 0f 92 06 00       	call   0x5ecf2f
583d20:	cc                   	int3
583d21:	cc                   	int3
583d22:	cc                   	int3
583d23:	cc                   	int3
583d24:	cc                   	int3
583d25:	cc                   	int3
583d26:	cc                   	int3
583d27:	cc                   	int3
583d28:	cc                   	int3
583d29:	cc                   	int3
583d2a:	cc                   	int3
583d2b:	cc                   	int3
583d2c:	cc                   	int3
583d2d:	cc                   	int3
583d2e:	cc                   	int3
583d2f:	cc                   	int3
583d30:	55                   	push   %ebp
583d31:	8b ec                	mov    %esp,%ebp
583d33:	6a ff                	push   $0xffffffff
583d35:	68 90 d1 65 00       	push   $0x65d190
583d3a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
583d40:	50                   	push   %eax
583d41:	83 ec 24             	sub    $0x24,%esp
583d44:	a1 d4 89 72 00       	mov    0x7289d4,%eax
583d49:	33 c5                	xor    %ebp,%eax
583d4b:	89 45 f0             	mov    %eax,-0x10(%ebp)
583d4e:	53                   	push   %ebx
583d4f:	56                   	push   %esi
583d50:	57                   	push   %edi
583d51:	50                   	push   %eax
583d52:	8d 45 f4             	lea    -0xc(%ebp),%eax
583d55:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
583d5b:	8b f1                	mov    %ecx,%esi
583d5d:	89 75 d0             	mov    %esi,-0x30(%ebp)
583d60:	8b 45 08             	mov    0x8(%ebp),%eax
583d63:	8b 7d 0c             	mov    0xc(%ebp),%edi
583d66:	8b 5d 14             	mov    0x14(%ebp),%ebx
583d69:	89 45 d4             	mov    %eax,-0x2c(%ebp)
583d6c:	8b 45 10             	mov    0x10(%ebp),%eax
583d6f:	2b 07                	sub    (%edi),%eax
583d71:	83 f8 04             	cmp    $0x4,%eax
583d74:	0f 8d 8e 00 00 00    	jge    0x583e08
583d7a:	6a 3c                	push   $0x3c
583d7c:	68 b8 36 6c 00       	push   $0x6c36b8
583d81:	8d 4d d8             	lea    -0x28(%ebp),%ecx
583d84:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
583d8b:	c7 45 ec 0f 00 00 00 	movl   $0xf,-0x14(%ebp)
583d92:	c6 45 d8 00          	movb   $0x0,-0x28(%ebp)
583d96:	e8 a5 14 ec ff       	call   0x445240
583d9b:	ff 37                	push   (%edi)
583d9d:	8d 45 d8             	lea    -0x28(%ebp),%eax
583da0:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
583da7:	ff 75 d4             	push   -0x2c(%ebp)
583daa:	8b ce                	mov    %esi,%ecx
583dac:	50                   	push   %eax
583dad:	e8 de f1 ff ff       	call   0x582f90
583db2:	8b 55 ec             	mov    -0x14(%ebp),%edx
583db5:	8a d8                	mov    %al,%bl
583db7:	83 fa 10             	cmp    $0x10,%edx
583dba:	72 2c                	jb     0x583de8
583dbc:	8b 4d d8             	mov    -0x28(%ebp),%ecx
583dbf:	42                   	inc    %edx
583dc0:	8b c1                	mov    %ecx,%eax
583dc2:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
583dc8:	72 14                	jb     0x583dde
583dca:	8b 49 fc             	mov    -0x4(%ecx),%ecx
583dcd:	83 c2 23             	add    $0x23,%edx
583dd0:	2b c1                	sub    %ecx,%eax
583dd2:	83 c0 fc             	add    $0xfffffffc,%eax
583dd5:	83 f8 1f             	cmp    $0x1f,%eax
583dd8:	0f 87 e5 00 00 00    	ja     0x583ec3
583dde:	52                   	push   %edx
583ddf:	51                   	push   %ecx
583de0:	e8 8d d2 05 00       	call   0x5e1072
583de5:	83 c4 08             	add    $0x8,%esp
583de8:	8a c3                	mov    %bl,%al
583dea:	8b 4d f4             	mov    -0xc(%ebp),%ecx
583ded:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
583df4:	59                   	pop    %ecx
583df5:	5f                   	pop    %edi
583df6:	5e                   	pop    %esi
583df7:	5b                   	pop    %ebx
583df8:	8b 4d f0             	mov    -0x10(%ebp),%ecx
583dfb:	33 cd                	xor    %ebp,%ecx
583dfd:	e8 d8 d6 05 00       	call   0x5e14da
583e02:	8b e5                	mov    %ebp,%esp
583e04:	5d                   	pop    %ebp
583e05:	c2 10 00             	ret    $0x10
583e08:	33 c9                	xor    %ecx,%ecx
583e0a:	33 f6                	xor    %esi,%esi
583e0c:	0f 1f 40 00          	nopl   0x0(%eax)
583e10:	8b 07                	mov    (%edi),%eax
583e12:	c1 e1 04             	shl    $0x4,%ecx
583e15:	8a 10                	mov    (%eax),%dl
583e17:	40                   	inc    %eax
583e18:	89 07                	mov    %eax,(%edi)
583e1a:	8a c2                	mov    %dl,%al
583e1c:	2c 30                	sub    $0x30,%al
583e1e:	3c 09                	cmp    $0x9,%al
583e20:	77 08                	ja     0x583e2a
583e22:	0f be c2             	movsbl %dl,%eax
583e25:	83 c0 d0             	add    $0xffffffd0,%eax
583e28:	eb 1e                	jmp    0x583e48
583e2a:	8a c2                	mov    %dl,%al
583e2c:	2c 61                	sub    $0x61,%al
583e2e:	3c 05                	cmp    $0x5,%al
583e30:	77 08                	ja     0x583e3a
583e32:	0f be c2             	movsbl %dl,%eax
583e35:	83 c0 a9             	add    $0xffffffa9,%eax
583e38:	eb 0e                	jmp    0x583e48
583e3a:	8a c2                	mov    %dl,%al
583e3c:	2c 41                	sub    $0x41,%al
583e3e:	3c 05                	cmp    $0x5,%al
583e40:	77 14                	ja     0x583e56
583e42:	0f be c2             	movsbl %dl,%eax
583e45:	83 c0 c9             	add    $0xffffffc9,%eax
583e48:	46                   	inc    %esi
583e49:	03 c8                	add    %eax,%ecx
583e4b:	83 fe 04             	cmp    $0x4,%esi
583e4e:	7c c0                	jl     0x583e10
583e50:	89 0b                	mov    %ecx,(%ebx)
583e52:	b0 01                	mov    $0x1,%al
583e54:	eb 94                	jmp    0x583dea
583e56:	6a 42                	push   $0x42
583e58:	68 f8 36 6c 00       	push   $0x6c36f8
583e5d:	8d 4d d8             	lea    -0x28(%ebp),%ecx
583e60:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
583e67:	c7 45 ec 0f 00 00 00 	movl   $0xf,-0x14(%ebp)
583e6e:	c6 45 d8 00          	movb   $0x0,-0x28(%ebp)
583e72:	e8 c9 13 ec ff       	call   0x445240
583e77:	ff 37                	push   (%edi)
583e79:	8b 4d d0             	mov    -0x30(%ebp),%ecx
583e7c:	8d 45 d8             	lea    -0x28(%ebp),%eax
583e7f:	ff 75 d4             	push   -0x2c(%ebp)
583e82:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
583e89:	50                   	push   %eax
583e8a:	e8 01 f1 ff ff       	call   0x582f90
583e8f:	8b 55 ec             	mov    -0x14(%ebp),%edx
583e92:	8a d8                	mov    %al,%bl
583e94:	83 fa 10             	cmp    $0x10,%edx
583e97:	0f 82 4b ff ff ff    	jb     0x583de8
583e9d:	8b 4d d8             	mov    -0x28(%ebp),%ecx
583ea0:	42                   	inc    %edx
583ea1:	8b c1                	mov    %ecx,%eax
583ea3:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
583ea9:	0f 82 2f ff ff ff    	jb     0x583dde
583eaf:	8b 49 fc             	mov    -0x4(%ecx),%ecx
583eb2:	83 c2 23             	add    $0x23,%edx
583eb5:	2b c1                	sub    %ecx,%eax
583eb7:	83 c0 fc             	add    $0xfffffffc,%eax
583eba:	83 f8 1f             	cmp    $0x1f,%eax
583ebd:	0f 86 1b ff ff ff    	jbe    0x583dde
583ec3:	e8 67 90 06 00       	call   0x5ecf2f
583ec8:	cc                   	int3
583ec9:	cc                   	int3
583eca:	cc                   	int3
583ecb:	cc                   	int3
583ecc:	cc                   	int3
583ecd:	cc                   	int3
583ece:	cc                   	int3
583ecf:	cc                   	int3
583ed0:	55                   	push   %ebp
583ed1:	8b ec                	mov    %esp,%ebp
583ed3:	53                   	push   %ebx
583ed4:	8b d9                	mov    %ecx,%ebx
583ed6:	56                   	push   %esi
583ed7:	8b 75 0c             	mov    0xc(%ebp),%esi
583eda:	57                   	push   %edi
583edb:	8b 43 44             	mov    0x44(%ebx),%eax
583ede:	8b 7b 48             	mov    0x48(%ebx),%edi
583ee1:	2b c7                	sub    %edi,%eax
583ee3:	3b c6                	cmp    %esi,%eax
583ee5:	7c 30                	jl     0x583f17
583ee7:	8b d6                	mov    %esi,%edx
583ee9:	85 f6                	test   %esi,%esi
583eeb:	74 1b                	je     0x583f08
583eed:	8b 45 08             	mov    0x8(%ebp),%eax
583ef0:	2b f8                	sub    %eax,%edi
583ef2:	8d 0c 30             	lea    (%eax,%esi,1),%ecx
583ef5:	8a 44 0f ff          	mov    -0x1(%edi,%ecx,1),%al
583ef9:	8d 49 ff             	lea    -0x1(%ecx),%ecx
583efc:	4a                   	dec    %edx
583efd:	3a 01                	cmp    (%ecx),%al
583eff:	75 16                	jne    0x583f17
583f01:	85 d2                	test   %edx,%edx
583f03:	75 f0                	jne    0x583ef5
583f05:	8b 7b 48             	mov    0x48(%ebx),%edi
583f08:	8d 04 37             	lea    (%edi,%esi,1),%eax
583f0b:	5f                   	pop    %edi
583f0c:	89 43 48             	mov    %eax,0x48(%ebx)
583f0f:	b0 01                	mov    $0x1,%al
583f11:	5e                   	pop    %esi
583f12:	5b                   	pop    %ebx
583f13:	5d                   	pop    %ebp
583f14:	c2 08 00             	ret    $0x8
583f17:	5f                   	pop    %edi
583f18:	5e                   	pop    %esi
583f19:	32 c0                	xor    %al,%al
583f1b:	5b                   	pop    %ebx
583f1c:	5d                   	pop    %ebp
583f1d:	c2 08 00             	ret    $0x8
583f20:	55                   	push   %ebp
583f21:	8b ec                	mov    %esp,%ebp
583f23:	6a ff                	push   $0xffffffff
583f25:	68 d9 d1 65 00       	push   $0x65d1d9
583f2a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
583f30:	50                   	push   %eax
583f31:	83 ec 10             	sub    $0x10,%esp
583f34:	53                   	push   %ebx
583f35:	56                   	push   %esi
583f36:	57                   	push   %edi
583f37:	a1 d4 89 72 00       	mov    0x7289d4,%eax
583f3c:	33 c5                	xor    %ebp,%eax
583f3e:	50                   	push   %eax
583f3f:	8d 45 f4             	lea    -0xc(%ebp),%eax
583f42:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
583f48:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
583f4f:	8b 75 08             	mov    0x8(%ebp),%esi
583f52:	c7 46 10 00 00 00 00 	movl   $0x0,0x10(%esi)
583f59:	c7 46 14 0f 00 00 00 	movl   $0xf,0x14(%esi)
583f60:	c6 06 00             	movb   $0x0,(%esi)
583f63:	8b 7d 10             	mov    0x10(%ebp),%edi
583f66:	8b ce                	mov    %esi,%ecx
583f68:	8b c7                	mov    %edi,%eax
583f6a:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
583f71:	2b 45 0c             	sub    0xc(%ebp),%eax
583f74:	50                   	push   %eax
583f75:	c7 45 e4 01 00 00 00 	movl   $0x1,-0x1c(%ebp)
583f7c:	e8 ef f9 ec ff       	call   0x453970
583f81:	8b 45 0c             	mov    0xc(%ebp),%eax
583f84:	3b c7                	cmp    %edi,%eax
583f86:	0f 84 7a 02 00 00    	je     0x584206
583f8c:	0f 1f 40 00          	nopl   0x0(%eax)
583f90:	8a 10                	mov    (%eax),%dl
583f92:	40                   	inc    %eax
583f93:	88 55 f3             	mov    %dl,-0xd(%ebp)
583f96:	89 45 0c             	mov    %eax,0xc(%ebp)
583f99:	80 fa 0d             	cmp    $0xd,%dl
583f9c:	0f 85 30 01 00 00    	jne    0x5840d2
583fa2:	3b c7                	cmp    %edi,%eax
583fa4:	74 09                	je     0x583faf
583fa6:	80 38 0a             	cmpb   $0xa,(%eax)
583fa9:	75 04                	jne    0x583faf
583fab:	40                   	inc    %eax
583fac:	89 45 0c             	mov    %eax,0xc(%ebp)
583faf:	8b 4e 10             	mov    0x10(%esi),%ecx
583fb2:	8b 7e 14             	mov    0x14(%esi),%edi
583fb5:	89 4d ec             	mov    %ecx,-0x14(%ebp)
583fb8:	89 7d e8             	mov    %edi,-0x18(%ebp)
583fbb:	3b cf                	cmp    %edi,%ecx
583fbd:	73 1a                	jae    0x583fd9
583fbf:	8d 41 01             	lea    0x1(%ecx),%eax
583fc2:	89 46 10             	mov    %eax,0x10(%esi)
583fc5:	8b c6                	mov    %esi,%eax
583fc7:	83 ff 10             	cmp    $0x10,%edi
583fca:	72 02                	jb     0x583fce
583fcc:	8b 06                	mov    (%esi),%eax
583fce:	66 c7 04 08 0a 00    	movw   $0xa,(%eax,%ecx,1)
583fd4:	e9 1f 02 00 00       	jmp    0x5841f8
583fd9:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
583fde:	2b c1                	sub    %ecx,%eax
583fe0:	83 f8 01             	cmp    $0x1,%eax
583fe3:	0f 82 31 02 00 00    	jb     0x58421a
583fe9:	8d 59 01             	lea    0x1(%ecx),%ebx
583fec:	83 cb 0f             	or     $0xf,%ebx
583fef:	81 fb ff ff ff 7f    	cmp    $0x7fffffff,%ebx
583ff5:	76 07                	jbe    0x583ffe
583ff7:	bb ff ff ff 7f       	mov    $0x7fffffff,%ebx
583ffc:	eb 1e                	jmp    0x58401c
583ffe:	8b d7                	mov    %edi,%edx
584000:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
584005:	d1 ea                	shr    $1,%edx
584007:	2b c2                	sub    %edx,%eax