409aa8:	42                   	inc    %edx
409aa9:	e8 18 f3 ff ff       	call   0x408dc6
409aae:	8b f0                	mov    %eax,%esi
409ab0:	3b 75 08             	cmp    0x8(%ebp),%esi
409ab3:	77 2c                	ja     0x409ae1
409ab5:	8b 0d b0 14 41 00    	mov    0x4114b0,%ecx
409abb:	33 d2                	xor    %edx,%edx
409abd:	42                   	inc    %edx
409abe:	e8 28 f3 ff ff       	call   0x408deb
409ac3:	85 c0                	test   %eax,%eax
409ac5:	0f 84 b5 00 00 00    	je     0x409b80
409acb:	8b 55 08             	mov    0x8(%ebp),%edx
409ace:	8b c8                	mov    %eax,%ecx
409ad0:	2b d6                	sub    %esi,%edx
409ad2:	42                   	inc    %edx
409ad3:	e8 28 f2 ff ff       	call   0x408d00
409ad8:	83 f8 ff             	cmp    $0xffffffff,%eax
409adb:	0f 84 9f 00 00 00    	je     0x409b80
409ae1:	be 80 00 00 00       	mov    $0x80,%esi
409ae6:	6a 01                	push   $0x1
409ae8:	03 f6                	add    %esi,%esi
409aea:	33 d2                	xor    %edx,%edx
409aec:	56                   	push   %esi
409aed:	6a 04                	push   $0x4
409aef:	59                   	pop    %ecx
409af0:	e8 ae fa ff ff       	call   0x4095a3
409af5:	8b f8                	mov    %eax,%edi
409af7:	85 ff                	test   %edi,%edi
409af9:	0f 84 81 00 00 00    	je     0x409b80
409aff:	56                   	push   %esi
409b00:	57                   	push   %edi
409b01:	53                   	push   %ebx
409b02:	6a 00                	push   $0x0
409b04:	ff 15 84 21 41 00    	call   *0x412184
409b0a:	8b c8                	mov    %eax,%ecx
409b0c:	85 c9                	test   %ecx,%ecx
409b0e:	75 2c                	jne    0x409b3c
409b10:	ff 15 48 20 41 00    	call   *0x412048
409b16:	3d 16 07 00 00       	cmp    $0x716,%eax
409b1b:	75 75                	jne    0x409b92
409b1d:	33 c9                	xor    %ecx,%ecx
409b1f:	8d 45 fc             	lea    -0x4(%ebp),%eax
409b22:	51                   	push   %ecx
409b23:	51                   	push   %ecx
409b24:	50                   	push   %eax
409b25:	51                   	push   %ecx
409b26:	53                   	push   %ebx
409b27:	51                   	push   %ecx
409b28:	68 00 0b 00 00       	push   $0xb00
409b2d:	ff 15 60 20 41 00    	call   *0x412060
409b33:	8b c8                	mov    %eax,%ecx
409b35:	85 c9                	test   %ecx,%ecx
409b37:	74 59                	je     0x409b92
409b39:	8b 7d fc             	mov    -0x4(%ebp),%edi
409b3c:	8d 46 ff             	lea    -0x1(%esi),%eax
409b3f:	3b c8                	cmp    %eax,%ecx
409b41:	73 a3                	jae    0x409ae6
409b43:	51                   	push   %ecx
409b44:	8b 0d b0 14 41 00    	mov    0x4114b0,%ecx
409b4a:	33 d2                	xor    %edx,%edx
409b4c:	57                   	push   %edi
409b4d:	ff 75 08             	push   0x8(%ebp)
409b50:	42                   	inc    %edx
409b51:	e8 94 f7 ff ff       	call   0x4092ea
409b56:	85 c0                	test   %eax,%eax
409b58:	74 26                	je     0x409b80
409b5a:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
409b5e:	74 0d                	je     0x409b6d
409b60:	ff 75 fc             	push   -0x4(%ebp)
409b63:	ff 15 ec 20 41 00    	call   *0x4120ec
409b69:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
409b6d:	ff 75 08             	push   0x8(%ebp)
409b70:	8b 0d b0 14 41 00    	mov    0x4114b0,%ecx
409b76:	33 d2                	xor    %edx,%edx
409b78:	42                   	inc    %edx
409b79:	e8 f1 f4 ff ff       	call   0x40906f
409b7e:	eb 17                	jmp    0x409b97
409b80:	ff 15 48 20 41 00    	call   *0x412048
409b86:	85 c0                	test   %eax,%eax
409b88:	75 08                	jne    0x409b92
409b8a:	6a 08                	push   $0x8
409b8c:	ff 15 74 20 41 00    	call   *0x412074
409b92:	b8 8c 18 40 00       	mov    $0x40188c,%eax
409b97:	5f                   	pop    %edi
409b98:	5e                   	pop    %esi
409b99:	5b                   	pop    %ebx
409b9a:	c9                   	leave
409b9b:	c2 04 00             	ret    $0x4
409b9e:	8b ff                	mov    %edi,%edi
409ba0:	55                   	push   %ebp
409ba1:	8b ec                	mov    %esp,%ebp
409ba3:	83 ec 10             	sub    $0x10,%esp
409ba6:	56                   	push   %esi
409ba7:	57                   	push   %edi
409ba8:	8b f1                	mov    %ecx,%esi
409baa:	33 ff                	xor    %edi,%edi
409bac:	89 7d fc             	mov    %edi,-0x4(%ebp)
409baf:	85 f6                	test   %esi,%esi
409bb1:	74 6a                	je     0x409c1d
409bb3:	e8 d3 08 00 00       	call   0x40a48b
409bb8:	85 c0                	test   %eax,%eax
409bba:	74 61                	je     0x409c1d
409bbc:	e8 ca f8 ff ff       	call   0x40948b
409bc1:	85 c0                	test   %eax,%eax
409bc3:	74 6a                	je     0x409c2f
409bc5:	57                   	push   %edi
409bc6:	57                   	push   %edi
409bc7:	8b d6                	mov    %esi,%edx
409bc9:	33 c9                	xor    %ecx,%ecx
409bcb:	e8 d3 f9 ff ff       	call   0x4095a3
409bd0:	8b f0                	mov    %eax,%esi
409bd2:	85 f6                	test   %esi,%esi
409bd4:	75 0e                	jne    0x409be4
409bd6:	ff 15 48 20 41 00    	call   *0x412048
409bdc:	85 c0                	test   %eax,%eax
409bde:	75 4f                	jne    0x409c2f
409be0:	6a 08                	push   $0x8
409be2:	eb 45                	jmp    0x409c29
409be4:	ff 15 dc 22 41 00    	call   *0x4122dc
409bea:	89 38                	mov    %edi,(%eax)
409bec:	8d 45 fc             	lea    -0x4(%ebp),%eax
409bef:	50                   	push   %eax
409bf0:	56                   	push   %esi
409bf1:	ff 15 e0 22 41 00    	call   *0x4122e0
409bf7:	83 c4 08             	add    $0x8,%esp
409bfa:	dd 5d f0             	fstpl  -0x10(%ebp)
409bfd:	ff 15 dc 22 41 00    	call   *0x4122dc
409c03:	83 38 22             	cmpl   $0x22,(%eax)
409c06:	74 15                	je     0x409c1d
409c08:	8b 4d fc             	mov    -0x4(%ebp),%ecx
409c0b:	85 c9                	test   %ecx,%ecx
409c0d:	74 09                	je     0x409c18
409c0f:	e8 77 08 00 00       	call   0x40a48b
409c14:	85 c0                	test   %eax,%eax
409c16:	75 05                	jne    0x409c1d
409c18:	dd 45 f0             	fldl   -0x10(%ebp)
409c1b:	eb 14                	jmp    0x409c31
409c1d:	ff 15 48 20 41 00    	call   *0x412048
409c23:	85 c0                	test   %eax,%eax
409c25:	75 08                	jne    0x409c2f
409c27:	6a 57                	push   $0x57
409c29:	ff 15 74 20 41 00    	call   *0x412074
409c2f:	d9 ee                	fldz
409c31:	5f                   	pop    %edi
409c32:	5e                   	pop    %esi
409c33:	c9                   	leave
409c34:	c3                   	ret
409c35:	8b ff                	mov    %edi,%edi
409c37:	55                   	push   %ebp
409c38:	8b ec                	mov    %esp,%ebp
409c3a:	51                   	push   %ecx
409c3b:	56                   	push   %esi
409c3c:	57                   	push   %edi
409c3d:	8b f1                	mov    %ecx,%esi
409c3f:	33 ff                	xor    %edi,%edi
409c41:	89 7d fc             	mov    %edi,-0x4(%ebp)
409c44:	85 f6                	test   %esi,%esi
409c46:	0f 84 88 00 00 00    	je     0x409cd4
409c4c:	e8 3a f8 ff ff       	call   0x40948b
409c51:	85 c0                	test   %eax,%eax
409c53:	0f 84 8d 00 00 00    	je     0x409ce6
409c59:	57                   	push   %edi
409c5a:	57                   	push   %edi
409c5b:	8b d6                	mov    %esi,%edx
409c5d:	33 c9                	xor    %ecx,%ecx
409c5f:	e8 3f f9 ff ff       	call   0x4095a3
409c64:	8b f0                	mov    %eax,%esi
409c66:	85 f6                	test   %esi,%esi
409c68:	75 0e                	jne    0x409c78
409c6a:	ff 15 48 20 41 00    	call   *0x412048
409c70:	85 c0                	test   %eax,%eax
409c72:	75 72                	jne    0x409ce6
409c74:	6a 08                	push   $0x8
409c76:	eb 68                	jmp    0x409ce0
409c78:	51                   	push   %ecx
409c79:	33 d2                	xor    %edx,%edx
409c7b:	8b ce                	mov    %esi,%ecx
409c7d:	e8 60 03 00 00       	call   0x409fe2
409c82:	8b ce                	mov    %esi,%ecx
409c84:	e8 02 08 00 00       	call   0x40a48b
409c89:	85 c0                	test   %eax,%eax
409c8b:	74 47                	je     0x409cd4
409c8d:	ff 15 dc 22 41 00    	call   *0x4122dc
409c93:	6a 0a                	push   $0xa
409c95:	89 38                	mov    %edi,(%eax)
409c97:	8d 45 fc             	lea    -0x4(%ebp),%eax
409c9a:	66 83 3e 2d          	cmpw   $0x2d,(%esi)
409c9e:	50                   	push   %eax
409c9f:	56                   	push   %esi
409ca0:	75 08                	jne    0x409caa
409ca2:	ff 15 e4 22 41 00    	call   *0x4122e4
409ca8:	eb 06                	jmp    0x409cb0
409caa:	ff 15 e8 22 41 00    	call   *0x4122e8
409cb0:	83 c4 0c             	add    $0xc,%esp
409cb3:	8b f0                	mov    %eax,%esi
409cb5:	ff 15 dc 22 41 00    	call   *0x4122dc
409cbb:	83 38 22             	cmpl   $0x22,(%eax)
409cbe:	74 14                	je     0x409cd4
409cc0:	8b 4d fc             	mov    -0x4(%ebp),%ecx
409cc3:	85 c9                	test   %ecx,%ecx
409cc5:	74 09                	je     0x409cd0
409cc7:	e8 bf 07 00 00       	call   0x40a48b
409ccc:	85 c0                	test   %eax,%eax
409cce:	75 04                	jne    0x409cd4
409cd0:	8b c6                	mov    %esi,%eax
409cd2:	eb 14                	jmp    0x409ce8
409cd4:	ff 15 48 20 41 00    	call   *0x412048
409cda:	85 c0                	test   %eax,%eax
409cdc:	75 08                	jne    0x409ce6
409cde:	6a 57                	push   $0x57
409ce0:	ff 15 74 20 41 00    	call   *0x412074
409ce6:	33 c0                	xor    %eax,%eax
409ce8:	5f                   	pop    %edi
409ce9:	5e                   	pop    %esi
409cea:	c9                   	leave
409ceb:	c3                   	ret
409cec:	8b ff                	mov    %edi,%edi
409cee:	55                   	push   %ebp
409cef:	8b ec                	mov    %esp,%ebp
409cf1:	51                   	push   %ecx
409cf2:	56                   	push   %esi
409cf3:	57                   	push   %edi
409cf4:	33 ff                	xor    %edi,%edi
409cf6:	89 7d fc             	mov    %edi,-0x4(%ebp)
409cf9:	85 c9                	test   %ecx,%ecx
409cfb:	0f 84 85 00 00 00    	je     0x409d86
409d01:	57                   	push   %edi
409d02:	8b d1                	mov    %ecx,%edx
409d04:	33 c9                	xor    %ecx,%ecx
409d06:	57                   	push   %edi
409d07:	e8 97 f8 ff ff       	call   0x4095a3
409d0c:	8b f0                	mov    %eax,%esi
409d0e:	85 f6                	test   %esi,%esi
409d10:	75 0e                	jne    0x409d20
409d12:	ff 15 48 20 41 00    	call   *0x412048
409d18:	85 c0                	test   %eax,%eax
409d1a:	75 7c                	jne    0x409d98
409d1c:	6a 08                	push   $0x8
409d1e:	eb 72                	jmp    0x409d92
409d20:	51                   	push   %ecx
409d21:	33 d2                	xor    %edx,%edx
409d23:	8b ce                	mov    %esi,%ecx
409d25:	e8 b8 02 00 00       	call   0x409fe2
409d2a:	8b ce                	mov    %esi,%ecx
409d2c:	e8 5a 07 00 00       	call   0x40a48b
409d31:	85 c0                	test   %eax,%eax
409d33:	74 63                	je     0x409d98
409d35:	39 7d 08             	cmp    %edi,0x8(%ebp)
409d38:	75 06                	jne    0x409d40
409d3a:	66 83 3e 2d          	cmpw   $0x2d,(%esi)
409d3e:	74 58                	je     0x409d98
409d40:	ff 15 dc 22 41 00    	call   *0x4122dc
409d46:	83 7d 08 01          	cmpl   $0x1,0x8(%ebp)
409d4a:	6a 0a                	push   $0xa
409d4c:	89 38                	mov    %edi,(%eax)
409d4e:	8d 45 fc             	lea    -0x4(%ebp),%eax
409d51:	50                   	push   %eax
409d52:	56                   	push   %esi
409d53:	75 08                	jne    0x409d5d
409d55:	ff 15 e4 22 41 00    	call   *0x4122e4
409d5b:	eb 06                	jmp    0x409d63
409d5d:	ff 15 e8 22 41 00    	call   *0x4122e8
409d63:	83 c4 0c             	add    $0xc,%esp
409d66:	ff 15 dc 22 41 00    	call   *0x4122dc
409d6c:	83 38 22             	cmpl   $0x22,(%eax)
409d6f:	74 27                	je     0x409d98
409d71:	8b 4d fc             	mov    -0x4(%ebp),%ecx
409d74:	85 c9                	test   %ecx,%ecx
409d76:	74 09                	je     0x409d81
409d78:	e8 0e 07 00 00       	call   0x40a48b
409d7d:	85 c0                	test   %eax,%eax
409d7f:	75 17                	jne    0x409d98
409d81:	33 c0                	xor    %eax,%eax
409d83:	40                   	inc    %eax
409d84:	eb 14                	jmp    0x409d9a
409d86:	ff 15 48 20 41 00    	call   *0x412048
409d8c:	85 c0                	test   %eax,%eax
409d8e:	75 08                	jne    0x409d98
409d90:	6a 57                	push   $0x57
409d92:	ff 15 74 20 41 00    	call   *0x412074
409d98:	33 c0                	xor    %eax,%eax
409d9a:	5f                   	pop    %edi
409d9b:	5e                   	pop    %esi
409d9c:	c9                   	leave
409d9d:	c2 04 00             	ret    $0x4
409da0:	8b ff                	mov    %edi,%edi
409da2:	56                   	push   %esi
409da3:	8b f1                	mov    %ecx,%esi
409da5:	57                   	push   %edi
409da6:	8b fa                	mov    %edx,%edi
409da8:	85 f6                	test   %esi,%esi
409daa:	75 0e                	jne    0x409dba
409dac:	ff 15 48 20 41 00    	call   *0x412048
409db2:	85 c0                	test   %eax,%eax
409db4:	75 2a                	jne    0x409de0
409db6:	6a 57                	push   $0x57
409db8:	eb 20                	jmp    0x409dda
409dba:	e8 cc 06 00 00       	call   0x40a48b
409dbf:	85 c0                	test   %eax,%eax
409dc1:	74 12                	je     0x409dd5
409dc3:	57                   	push   %edi
409dc4:	56                   	push   %esi
409dc5:	ff 15 40 21 41 00    	call   *0x412140
409dcb:	85 c0                	test   %eax,%eax
409dcd:	74 06                	je     0x409dd5
409dcf:	2b c6                	sub    %esi,%eax
409dd1:	d1 f8                	sar    $1,%eax
409dd3:	eb 0e                	jmp    0x409de3
409dd5:	68 90 04 00 00       	push   $0x490
409dda:	ff 15 74 20 41 00    	call   *0x412074
409de0:	83 c8 ff             	or     $0xffffffff,%eax
409de3:	5f                   	pop    %edi
409de4:	5e                   	pop    %esi
409de5:	c2 08 00             	ret    $0x8
409de8:	8b ff                	mov    %edi,%edi
409dea:	55                   	push   %ebp
409deb:	8b ec                	mov    %esp,%ebp
409ded:	83 ec 0c             	sub    $0xc,%esp
409df0:	53                   	push   %ebx
409df1:	56                   	push   %esi
409df2:	57                   	push   %edi
409df3:	8b f9                	mov    %ecx,%edi
409df5:	8b f2                	mov    %edx,%esi
409df7:	85 ff                	test   %edi,%edi
409df9:	0f 84 a8 00 00 00    	je     0x409ea7
409dff:	85 f6                	test   %esi,%esi
409e01:	0f 84 a0 00 00 00    	je     0x409ea7
409e07:	8b ce                	mov    %esi,%ecx
409e09:	e8 7d 06 00 00       	call   0x40a48b
409e0e:	6a 01                	push   $0x1
409e10:	33 d2                	xor    %edx,%edx
409e12:	33 c9                	xor    %ecx,%ecx
409e14:	8d 58 04             	lea    0x4(%eax),%ebx
409e17:	53                   	push   %ebx
409e18:	e8 86 f7 ff ff       	call   0x4095a3
409e1d:	89 45 fc             	mov    %eax,-0x4(%ebp)
409e20:	85 c0                	test   %eax,%eax
409e22:	75 12                	jne    0x409e36
409e24:	ff 15 48 20 41 00    	call   *0x412048
409e2a:	85 c0                	test   %eax,%eax
409e2c:	0f 85 87 00 00 00    	jne    0x409eb9
409e32:	6a 08                	push   $0x8
409e34:	eb 7d                	jmp    0x409eb3
409e36:	8b cf                	mov    %edi,%ecx
409e38:	e8 4e 06 00 00       	call   0x40a48b
409e3d:	83 c0 04             	add    $0x4,%eax
409e40:	33 c9                	xor    %ecx,%ecx
409e42:	6a 01                	push   $0x1
409e44:	50                   	push   %eax
409e45:	33 d2                	xor    %edx,%edx