699be5:	50                   	push   %eax
699be6:	89 4c 24 50          	mov    %ecx,0x50(%esp)
699bea:	e8 d8 2b da ff       	call   0x43c7c7
699bef:	83 c4 04             	add    $0x4,%esp
699bf2:	85 c0                	test   %eax,%eax
699bf4:	8b 44 24 4c          	mov    0x4c(%esp),%eax
699bf8:	74 65                	je     0x699c5f
699bfa:	0f be 10             	movsbl (%eax),%edx
699bfd:	40                   	inc    %eax
699bfe:	89 44 24 4c          	mov    %eax,0x4c(%esp)
699c02:	83 ea 30             	sub    $0x30,%edx
699c05:	89 54 24 64          	mov    %edx,0x64(%esp)
699c09:	0f b6 00             	movzbl (%eax),%eax
699c0c:	50                   	push   %eax
699c0d:	e8 b5 2b da ff       	call   0x43c7c7
699c12:	83 c4 04             	add    $0x4,%esp
699c15:	85 c0                	test   %eax,%eax
699c17:	74 35                	je     0x699c4e
699c19:	8b 7c 24 4c          	mov    0x4c(%esp),%edi
699c1d:	8b 5c 24 64          	mov    0x64(%esp),%ebx
699c21:	0f be 07             	movsbl (%edi),%eax
699c24:	8d 4b fa             	lea    -0x6(%ebx),%ecx
699c27:	47                   	inc    %edi
699c28:	8d 0c 8b             	lea    (%ebx,%ecx,4),%ecx
699c2b:	8d 1c 48             	lea    (%eax,%ecx,2),%ebx
699c2e:	0f b6 07             	movzbl (%edi),%eax
699c31:	50                   	push   %eax
699c32:	e8 90 2b da ff       	call   0x43c7c7
699c37:	83 c4 04             	add    $0x4,%esp
699c3a:	85 c0                	test   %eax,%eax
699c3c:	75 e3                	jne    0x699c21
699c3e:	89 5c 24 64          	mov    %ebx,0x64(%esp)
699c42:	8b 5c 24 48          	mov    0x48(%esp),%ebx
699c46:	89 7c 24 4c          	mov    %edi,0x4c(%esp)
699c4a:	8b 7c 24 74          	mov    0x74(%esp),%edi
699c4e:	8b 44 24 4c          	mov    0x4c(%esp),%eax
699c52:	c7 84 24 88 00 00 00 	movl   $0x1,0x88(%esp)
699c59:	01 00 00 00
699c5d:	eb 45                	jmp    0x699ca4
699c5f:	80 38 2a             	cmpb   $0x2a,(%eax)
699c62:	75 35                	jne    0x699c99
699c64:	8b 4c 24 40          	mov    0x40(%esp),%ecx
699c68:	40                   	inc    %eax
699c69:	83 c1 04             	add    $0x4,%ecx
699c6c:	89 44 24 4c          	mov    %eax,0x4c(%esp)
699c70:	89 4c 24 40          	mov    %ecx,0x40(%esp)
699c74:	c7 84 24 88 00 00 00 	movl   $0x1,0x88(%esp)
699c7b:	01 00 00 00
699c7f:	8b 49 fc             	mov    -0x4(%ecx),%ecx
699c82:	85 c9                	test   %ecx,%ecx
699c84:	79 0d                	jns    0x699c93
699c86:	c7 84 24 94 00 00 00 	movl   $0x0,0x94(%esp)
699c8d:	00 00 00 00
699c91:	f7 d9                	neg    %ecx
699c93:	89 4c 24 64          	mov    %ecx,0x64(%esp)
699c97:	eb 0b                	jmp    0x699ca4
699c99:	c7 84 24 88 00 00 00 	movl   $0x0,0x88(%esp)
699ca0:	00 00 00 00
699ca4:	80 38 2e             	cmpb   $0x2e,(%eax)
699ca7:	0f 85 b1 00 00 00    	jne    0x699d5e
699cad:	40                   	inc    %eax
699cae:	c7 44 24 54 01 00 00 	movl   $0x1,0x54(%esp)
699cb5:	00
699cb6:	89 44 24 4c          	mov    %eax,0x4c(%esp)
699cba:	0f b6 00             	movzbl (%eax),%eax
699cbd:	50                   	push   %eax
699cbe:	e8 04 2b da ff       	call   0x43c7c7
699cc3:	83 c4 04             	add    $0x4,%esp
699cc6:	85 c0                	test   %eax,%eax
699cc8:	8b 44 24 4c          	mov    0x4c(%esp),%eax
699ccc:	74 61                	je     0x699d2f
699cce:	0f be 08             	movsbl (%eax),%ecx
699cd1:	40                   	inc    %eax
699cd2:	89 44 24 4c          	mov    %eax,0x4c(%esp)
699cd6:	83 e9 30             	sub    $0x30,%ecx
699cd9:	89 4c 24 5c          	mov    %ecx,0x5c(%esp)
699cdd:	0f b6 00             	movzbl (%eax),%eax
699ce0:	50                   	push   %eax
699ce1:	e8 e1 2a da ff       	call   0x43c7c7
699ce6:	83 c4 04             	add    $0x4,%esp
699ce9:	85 c0                	test   %eax,%eax
699ceb:	0f 84 8a 00 00 00    	je     0x699d7b
699cf1:	8b 7c 24 4c          	mov    0x4c(%esp),%edi
699cf5:	8b 5c 24 5c          	mov    0x5c(%esp),%ebx
699cf9:	0f 1f 80 00 00 00 00 	nopl   0x0(%eax)
699d00:	0f be 07             	movsbl (%edi),%eax
699d03:	8d 4b fa             	lea    -0x6(%ebx),%ecx
699d06:	47                   	inc    %edi
699d07:	8d 0c 8b             	lea    (%ebx,%ecx,4),%ecx
699d0a:	8d 1c 48             	lea    (%eax,%ecx,2),%ebx
699d0d:	0f b6 07             	movzbl (%edi),%eax
699d10:	50                   	push   %eax
699d11:	e8 b1 2a da ff       	call   0x43c7c7
699d16:	83 c4 04             	add    $0x4,%esp
699d19:	85 c0                	test   %eax,%eax
699d1b:	75 e3                	jne    0x699d00
699d1d:	89 5c 24 5c          	mov    %ebx,0x5c(%esp)
699d21:	8b 5c 24 48          	mov    0x48(%esp),%ebx
699d25:	89 7c 24 4c          	mov    %edi,0x4c(%esp)
699d29:	8b 7c 24 74          	mov    0x74(%esp),%edi
699d2d:	eb 4c                	jmp    0x699d7b
699d2f:	80 38 2a             	cmpb   $0x2a,(%eax)
699d32:	75 20                	jne    0x699d54
699d34:	8b 4c 24 40          	mov    0x40(%esp),%ecx
699d38:	40                   	inc    %eax
699d39:	83 c1 04             	add    $0x4,%ecx
699d3c:	89 44 24 4c          	mov    %eax,0x4c(%esp)
699d40:	89 4c 24 40          	mov    %ecx,0x40(%esp)
699d44:	33 d2                	xor    %edx,%edx
699d46:	8b 49 fc             	mov    -0x4(%ecx),%ecx
699d49:	85 c9                	test   %ecx,%ecx
699d4b:	0f 48 ca             	cmovs  %edx,%ecx
699d4e:	89 4c 24 5c          	mov    %ecx,0x5c(%esp)
699d52:	eb 2b                	jmp    0x699d7f
699d54:	c7 44 24 5c 00 00 00 	movl   $0x0,0x5c(%esp)
699d5b:	00
699d5c:	eb 21                	jmp    0x699d7f
699d5e:	c7 44 24 54 00 00 00 	movl   $0x0,0x54(%esp)
699d65:	00
699d66:	eb 17                	jmp    0x699d7f
699d68:	c7 84 24 88 00 00 00 	movl   $0x0,0x88(%esp)
699d6f:	00 00 00 00
699d73:	c7 44 24 54 00 00 00 	movl   $0x0,0x54(%esp)
699d7a:	00
699d7b:	8b 44 24 4c          	mov    0x4c(%esp),%eax
699d7f:	6a 03                	push   $0x3
699d81:	68 6c 46 bf 00       	push   $0xbf466c
699d86:	50                   	push   %eax
699d87:	e8 8d 4e d7 ff       	call   0x40ec19
699d8c:	8b 4c 24 58          	mov    0x58(%esp),%ecx
699d90:	83 c4 0c             	add    $0xc,%esp
699d93:	85 c0                	test   %eax,%eax
699d95:	75 0b                	jne    0x699da2
699d97:	33 d2                	xor    %edx,%edx
699d99:	83 c1 03             	add    $0x3,%ecx
699d9c:	89 4c 24 4c          	mov    %ecx,0x4c(%esp)
699da0:	eb 34                	jmp    0x699dd6
699da2:	8a 01                	mov    (%ecx),%al
699da4:	3c 71                	cmp    $0x71,%al
699da6:	75 09                	jne    0x699db1
699da8:	33 d2                	xor    %edx,%edx
699daa:	41                   	inc    %ecx
699dab:	89 4c 24 4c          	mov    %ecx,0x4c(%esp)
699daf:	eb 25                	jmp    0x699dd6
699db1:	3c 6c                	cmp    $0x6c,%al
699db3:	75 0c                	jne    0x699dc1
699db5:	41                   	inc    %ecx
699db6:	ba 01 00 00 00       	mov    $0x1,%edx
699dbb:	89 4c 24 4c          	mov    %ecx,0x4c(%esp)
699dbf:	eb 15                	jmp    0x699dd6
699dc1:	3c 68                	cmp    $0x68,%al
699dc3:	75 0c                	jne    0x699dd1
699dc5:	41                   	inc    %ecx
699dc6:	ba 02 00 00 00       	mov    $0x2,%edx
699dcb:	89 4c 24 4c          	mov    %ecx,0x4c(%esp)
699dcf:	eb 05                	jmp    0x699dd6
699dd1:	ba 03 00 00 00       	mov    $0x3,%edx
699dd6:	8a 01                	mov    (%ecx),%al
699dd8:	0f be c8             	movsbl %al,%ecx
699ddb:	89 8c 24 98 00 00 00 	mov    %ecx,0x98(%esp)
699de2:	83 f9 78             	cmp    $0x78,%ecx
699de5:	8b 4c 24 4c          	mov    0x4c(%esp),%ecx
699de9:	89 84 24 84 00 00 00 	mov    %eax,0x84(%esp)
699df0:	0f 87 4f 0a 00 00    	ja     0x69a845
699df6:	8b 84 24 98 00 00 00 	mov    0x98(%esp),%eax
699dfd:	0f b6 80 64 aa 69 00 	movzbl 0x69aa64(%eax),%eax
699e04:	ff 24 85 30 aa 69 00 	jmp    *0x69aa30(,%eax,4)
699e0b:	85 d2                	test   %edx,%edx
699e0d:	75 38                	jne    0x699e47
699e0f:	8b 74 24 40          	mov    0x40(%esp),%esi
699e13:	8d 44 24 44          	lea    0x44(%esp),%eax
699e17:	50                   	push   %eax
699e18:	8d 84 24 bc 02 00 00 	lea    0x2bc(%esp),%eax
699e1f:	83 c6 08             	add    $0x8,%esi
699e22:	50                   	push   %eax
699e23:	8d 84 24 84 00 00 00 	lea    0x84(%esp),%eax
699e2a:	89 74 24 48          	mov    %esi,0x48(%esp)
699e2e:	50                   	push   %eax
699e2f:	6a 01                	push   $0x1
699e31:	ff 76 fc             	push   -0x4(%esi)
699e34:	ff 76 f8             	push   -0x8(%esi)
699e37:	e8 74 12 00 00       	call   0x69b0b0
699e3c:	8b d8                	mov    %eax,%ebx
699e3e:	83 c4 18             	add    $0x18,%esp
699e41:	89 5c 24 48          	mov    %ebx,0x48(%esp)
699e45:	eb 5f                	jmp    0x699ea6
699e47:	83 fa 01             	cmp    $0x1,%edx
699e4a:	75 10                	jne    0x699e5c
699e4c:	8b 74 24 40          	mov    0x40(%esp),%esi
699e50:	83 c6 04             	add    $0x4,%esi
699e53:	89 74 24 40          	mov    %esi,0x40(%esp)
699e57:	8b 46 fc             	mov    -0x4(%esi),%eax
699e5a:	eb 24                	jmp    0x699e80
699e5c:	83 fa 02             	cmp    $0x2,%edx
699e5f:	75 11                	jne    0x699e72
699e61:	8b 74 24 40          	mov    0x40(%esp),%esi
699e65:	83 c6 04             	add    $0x4,%esi
699e68:	89 74 24 40          	mov    %esi,0x40(%esp)
699e6c:	0f b7 46 fc          	movzwl -0x4(%esi),%eax
699e70:	eb 0e                	jmp    0x699e80
699e72:	8b 44 24 40          	mov    0x40(%esp),%eax
699e76:	83 c0 04             	add    $0x4,%eax
699e79:	89 44 24 40          	mov    %eax,0x40(%esp)
699e7d:	8b 40 fc             	mov    -0x4(%eax),%eax
699e80:	8d 4c 24 44          	lea    0x44(%esp),%ecx
699e84:	51                   	push   %ecx
699e85:	8d 8c 24 bc 02 00 00 	lea    0x2bc(%esp),%ecx
699e8c:	51                   	push   %ecx
699e8d:	8d 8c 24 84 00 00 00 	lea    0x84(%esp),%ecx
699e94:	51                   	push   %ecx
699e95:	6a 01                	push   $0x1
699e97:	50                   	push   %eax
699e98:	e8 93 11 00 00       	call   0x69b030
699e9d:	83 c4 14             	add    $0x14,%esp
699ea0:	89 44 24 48          	mov    %eax,0x48(%esp)
699ea4:	8b d8                	mov    %eax,%ebx
699ea6:	83 7c 24 54 00       	cmpl   $0x0,0x54(%esp)
699eab:	8b 74 24 44          	mov    0x44(%esp),%esi
699eaf:	0f 84 54 02 00 00    	je     0x69a109
699eb5:	8b 54 24 5c          	mov    0x5c(%esp),%edx
699eb9:	b9 ff 01 00 00       	mov    $0x1ff,%ecx
699ebe:	8d 42 01             	lea    0x1(%edx),%eax
699ec1:	3d 00 02 00 00       	cmp    $0x200,%eax
699ec6:	0f 42 ca             	cmovb  %edx,%ecx
699ec9:	3b f1                	cmp    %ecx,%esi
699ecb:	0f 83 38 02 00 00    	jae    0x69a109
699ed1:	2b ce                	sub    %esi,%ecx
699ed3:	03 f1                	add    %ecx,%esi
699ed5:	89 74 24 44          	mov    %esi,0x44(%esp)
699ed9:	0f 1f 80 00 00 00 00 	nopl   0x0(%eax)
699ee0:	4b                   	dec    %ebx
699ee1:	c6 03 30             	movb   $0x30,(%ebx)
699ee4:	83 e9 01             	sub    $0x1,%ecx
699ee7:	75 f7                	jne    0x699ee0
699ee9:	89 5c 24 48          	mov    %ebx,0x48(%esp)
699eed:	e9 17 02 00 00       	jmp    0x69a109
699ef2:	85 d2                	test   %edx,%edx
699ef4:	75 37                	jne    0x699f2d
699ef6:	8b 74 24 40          	mov    0x40(%esp),%esi
699efa:	8d 44 24 44          	lea    0x44(%esp),%eax
699efe:	50                   	push   %eax
699eff:	8d 84 24 bc 02 00 00 	lea    0x2bc(%esp),%eax
699f06:	83 c6 08             	add    $0x8,%esi
699f09:	50                   	push   %eax
699f0a:	8d 84 24 84 00 00 00 	lea    0x84(%esp),%eax
699f11:	89 74 24 48          	mov    %esi,0x48(%esp)
699f15:	50                   	push   %eax
699f16:	52                   	push   %edx
699f17:	ff 76 fc             	push   -0x4(%esi)
699f1a:	ff 76 f8             	push   -0x8(%esi)
699f1d:	e8 8e 11 00 00       	call   0x69b0b0
699f22:	8b d8                	mov    %eax,%ebx
699f24:	83 c4 18             	add    $0x18,%esp
699f27:	89 5c 24 48          	mov    %ebx,0x48(%esp)
699f2b:	eb 5f                	jmp    0x699f8c
699f2d:	83 fa 01             	cmp    $0x1,%edx
699f30:	75 10                	jne    0x699f42
699f32:	8b 74 24 40          	mov    0x40(%esp),%esi
699f36:	83 c6 04             	add    $0x4,%esi
699f39:	89 74 24 40          	mov    %esi,0x40(%esp)
699f3d:	8b 46 fc             	mov    -0x4(%esi),%eax
699f40:	eb 24                	jmp    0x699f66
699f42:	83 fa 02             	cmp    $0x2,%edx
699f45:	75 11                	jne    0x699f58
699f47:	8b 74 24 40          	mov    0x40(%esp),%esi
699f4b:	83 c6 04             	add    $0x4,%esi
699f4e:	89 74 24 40          	mov    %esi,0x40(%esp)
699f52:	0f bf 46 fc          	movswl -0x4(%esi),%eax
699f56:	eb 0e                	jmp    0x699f66
699f58:	8b 44 24 40          	mov    0x40(%esp),%eax
699f5c:	83 c0 04             	add    $0x4,%eax
699f5f:	89 44 24 40          	mov    %eax,0x40(%esp)
699f63:	8b 40 fc             	mov    -0x4(%eax),%eax
699f66:	8d 4c 24 44          	lea    0x44(%esp),%ecx
699f6a:	51                   	push   %ecx
699f6b:	8d 8c 24 bc 02 00 00 	lea    0x2bc(%esp),%ecx
699f72:	51                   	push   %ecx
699f73:	8d 8c 24 84 00 00 00 	lea    0x84(%esp),%ecx
699f7a:	51                   	push   %ecx
699f7b:	6a 00                	push   $0x0
699f7d:	50                   	push   %eax
699f7e:	e8 ad 10 00 00       	call   0x69b030
699f83:	83 c4 14             	add    $0x14,%esp
699f86:	89 44 24 48          	mov    %eax,0x48(%esp)
699f8a:	8b d8                	mov    %eax,%ebx
699f8c:	83 7c 24 54 00       	cmpl   $0x0,0x54(%esp)
699f91:	8b 74 24 44          	mov    0x44(%esp),%esi
699f95:	74 2d                	je     0x699fc4
699f97:	8b 54 24 5c          	mov    0x5c(%esp),%edx
699f9b:	b9 ff 01 00 00       	mov    $0x1ff,%ecx
699fa0:	8d 42 01             	lea    0x1(%edx),%eax
699fa3:	3d 00 02 00 00       	cmp    $0x200,%eax
699fa8:	0f 42 ca             	cmovb  %edx,%ecx
699fab:	3b f1                	cmp    %ecx,%esi
699fad:	73 15                	jae    0x699fc4
699faf:	2b ce                	sub    %esi,%ecx
699fb1:	03 f1                	add    %ecx,%esi
699fb3:	89 74 24 44          	mov    %esi,0x44(%esp)
699fb7:	4b                   	dec    %ebx
699fb8:	c6 03 30             	movb   $0x30,(%ebx)
699fbb:	83 e9 01             	sub    $0x1,%ecx
699fbe:	75 f7                	jne    0x699fb7
699fc0:	89 5c 24 48          	mov    %ebx,0x48(%esp)
699fc4:	83 7c 24 7c 00       	cmpl   $0x0,0x7c(%esp)
699fc9:	74 13                	je     0x699fde
699fcb:	b0 2d                	mov    $0x2d,%al
699fcd:	c7 44 24 54 01 00 00 	movl   $0x1,0x54(%esp)
699fd4:	00
699fd5:	89 44 24 50          	mov    %eax,0x50(%esp)
699fd9:	e9 a5 08 00 00       	jmp    0x69a883
699fde:	83 bc 24 90 00 00 00 	cmpl   $0x0,0x90(%esp)
699fe5:	00
699fe6:	74 13                	je     0x699ffb
699fe8:	b0 2b                	mov    $0x2b,%al
699fea:	c7 44 24 54 01 00 00 	movl   $0x1,0x54(%esp)
699ff1:	00
699ff2:	89 44 24 50          	mov    %eax,0x50(%esp)
699ff6:	e9 88 08 00 00       	jmp    0x69a883
699ffb:	83 7c 24 78 00       	cmpl   $0x0,0x78(%esp)
69a000:	8a 44 24 3f          	mov    0x3f(%esp),%al
69a004:	0f 84 61 08 00 00    	je     0x69a86b
69a00a:	b2 20                	mov    $0x20,%dl
69a00c:	89 54 24 50          	mov    %edx,0x50(%esp)
69a010:	e9 5a 08 00 00       	jmp    0x69a86f
69a015:	85 d2                	test   %edx,%edx
69a017:	75 37                	jne    0x69a050
69a019:	8b 74 24 40          	mov    0x40(%esp),%esi
69a01d:	8d 44 24 44          	lea    0x44(%esp),%eax
69a021:	50                   	push   %eax
69a022:	8d 84 24 bc 02 00 00 	lea    0x2bc(%esp),%eax
69a029:	83 c6 08             	add    $0x8,%esi
69a02c:	50                   	push   %eax
69a02d:	ff b4 24 8c 00 00 00 	push   0x8c(%esp)
69a034:	89 74 24 4c          	mov    %esi,0x4c(%esp)
69a038:	6a 03                	push   $0x3
69a03a:	ff 76 fc             	push   -0x4(%esi)
69a03d:	ff 76 f8             	push   -0x8(%esi)
69a040:	e8 cb 16 00 00       	call   0x69b710
69a045:	8b d8                	mov    %eax,%ebx
69a047:	83 c4 18             	add    $0x18,%esp
69a04a:	89 5c 24 48          	mov    %ebx,0x48(%esp)
69a04e:	eb 62                	jmp    0x69a0b2
69a050:	83 fa 01             	cmp    $0x1,%edx
69a053:	75 10                	jne    0x69a065
69a055:	8b 74 24 40          	mov    0x40(%esp),%esi
69a059:	83 c6 04             	add    $0x4,%esi
69a05c:	89 74 24 40          	mov    %esi,0x40(%esp)
69a060:	8b 46 fc             	mov    -0x4(%esi),%eax
69a063:	eb 24                	jmp    0x69a089
69a065:	83 fa 02             	cmp    $0x2,%edx