4229ee:	5b                   	pop    %ebx
4229ef:	e8 6c 46 fe ff       	call   0x407060
4229f4:	8b e5                	mov    %ebp,%esp
4229f6:	5d                   	pop    %ebp
4229f7:	c3                   	ret
4229f8:	8b ff                	mov    %edi,%edi
4229fa:	55                   	push   %ebp
4229fb:	8b ec                	mov    %esp,%ebp
4229fd:	b8 10 14 00 00       	mov    $0x1410,%eax
422a02:	e8 d9 43 fe ff       	call   0x406de0
422a07:	a1 28 ba 43 00       	mov    0x43ba28,%eax
422a0c:	33 c5                	xor    %ebp,%eax
422a0e:	89 45 fc             	mov    %eax,-0x4(%ebp)
422a11:	8b 4d 0c             	mov    0xc(%ebp),%ecx
422a14:	8b c1                	mov    %ecx,%eax
422a16:	c1 f8 06             	sar    $0x6,%eax
422a19:	83 e1 3f             	and    $0x3f,%ecx
422a1c:	6b c9 30             	imul   $0x30,%ecx,%ecx
422a1f:	53                   	push   %ebx
422a20:	8b 5d 10             	mov    0x10(%ebp),%ebx
422a23:	8b 04 85 c0 9d 83 02 	mov    0x2839dc0(,%eax,4),%eax
422a2a:	56                   	push   %esi
422a2b:	8b 75 08             	mov    0x8(%ebp),%esi
422a2e:	57                   	push   %edi
422a2f:	8b 4c 08 18          	mov    0x18(%eax,%ecx,1),%ecx
422a33:	8b 45 14             	mov    0x14(%ebp),%eax
422a36:	03 c3                	add    %ebx,%eax
422a38:	89 8d f0 eb ff ff    	mov    %ecx,-0x1410(%ebp)
422a3e:	33 d2                	xor    %edx,%edx
422a40:	89 85 f8 eb ff ff    	mov    %eax,-0x1408(%ebp)
422a46:	89 16                	mov    %edx,(%esi)
422a48:	89 56 04             	mov    %edx,0x4(%esi)
422a4b:	89 56 08             	mov    %edx,0x8(%esi)
422a4e:	eb 75                	jmp    0x422ac5
422a50:	8d bd fc eb ff ff    	lea    -0x1404(%ebp),%edi
422a56:	3b d8                	cmp    %eax,%ebx
422a58:	73 2b                	jae    0x422a85
422a5a:	0f b7 03             	movzwl (%ebx),%eax
422a5d:	83 c3 02             	add    $0x2,%ebx
422a60:	83 f8 0a             	cmp    $0xa,%eax
422a63:	75 0d                	jne    0x422a72
422a65:	83 46 08 02          	addl   $0x2,0x8(%esi)
422a69:	6a 0d                	push   $0xd
422a6b:	5a                   	pop    %edx
422a6c:	66 89 17             	mov    %dx,(%edi)
422a6f:	83 c7 02             	add    $0x2,%edi
422a72:	66 89 07             	mov    %ax,(%edi)
422a75:	8d 45 fa             	lea    -0x6(%ebp),%eax
422a78:	83 c7 02             	add    $0x2,%edi
422a7b:	3b f8                	cmp    %eax,%edi
422a7d:	8b 85 f8 eb ff ff    	mov    -0x1408(%ebp),%eax
422a83:	72 d1                	jb     0x422a56
422a85:	8d 85 fc eb ff ff    	lea    -0x1404(%ebp),%eax
422a8b:	2b f8                	sub    %eax,%edi
422a8d:	8d 85 f4 eb ff ff    	lea    -0x140c(%ebp),%eax
422a93:	6a 00                	push   $0x0
422a95:	50                   	push   %eax
422a96:	83 e7 fe             	and    $0xfffffffe,%edi
422a99:	8d 85 fc eb ff ff    	lea    -0x1404(%ebp),%eax
422a9f:	57                   	push   %edi
422aa0:	50                   	push   %eax
422aa1:	51                   	push   %ecx
422aa2:	ff 15 e8 71 42 00    	call   *0x4271e8
422aa8:	85 c0                	test   %eax,%eax
422aaa:	74 1f                	je     0x422acb
422aac:	8b 85 f4 eb ff ff    	mov    -0x140c(%ebp),%eax
422ab2:	01 46 04             	add    %eax,0x4(%esi)
422ab5:	3b c7                	cmp    %edi,%eax
422ab7:	72 1a                	jb     0x422ad3
422ab9:	8b 85 f8 eb ff ff    	mov    -0x1408(%ebp),%eax
422abf:	8b 8d f0 eb ff ff    	mov    -0x1410(%ebp),%ecx
422ac5:	3b d8                	cmp    %eax,%ebx
422ac7:	72 87                	jb     0x422a50
422ac9:	eb 08                	jmp    0x422ad3
422acb:	ff 15 c4 71 42 00    	call   *0x4271c4
422ad1:	89 06                	mov    %eax,(%esi)
422ad3:	8b 4d fc             	mov    -0x4(%ebp),%ecx
422ad6:	8b c6                	mov    %esi,%eax
422ad8:	5f                   	pop    %edi
422ad9:	5e                   	pop    %esi
422ada:	33 cd                	xor    %ebp,%ecx
422adc:	5b                   	pop    %ebx
422add:	e8 7e 45 fe ff       	call   0x407060
422ae2:	8b e5                	mov    %ebp,%esp
422ae4:	5d                   	pop    %ebp
422ae5:	c3                   	ret
422ae6:	8b ff                	mov    %edi,%edi
422ae8:	55                   	push   %ebp
422ae9:	8b ec                	mov    %esp,%ebp
422aeb:	b8 18 14 00 00       	mov    $0x1418,%eax
422af0:	e8 eb 42 fe ff       	call   0x406de0
422af5:	a1 28 ba 43 00       	mov    0x43ba28,%eax
422afa:	33 c5                	xor    %ebp,%eax
422afc:	89 45 fc             	mov    %eax,-0x4(%ebp)
422aff:	8b 4d 0c             	mov    0xc(%ebp),%ecx
422b02:	8b c1                	mov    %ecx,%eax
422b04:	c1 f8 06             	sar    $0x6,%eax
422b07:	83 e1 3f             	and    $0x3f,%ecx
422b0a:	6b c9 30             	imul   $0x30,%ecx,%ecx
422b0d:	53                   	push   %ebx
422b0e:	56                   	push   %esi
422b0f:	8b 04 85 c0 9d 83 02 	mov    0x2839dc0(,%eax,4),%eax
422b16:	33 db                	xor    %ebx,%ebx
422b18:	8b 75 08             	mov    0x8(%ebp),%esi
422b1b:	57                   	push   %edi
422b1c:	8b 44 08 18          	mov    0x18(%eax,%ecx,1),%eax
422b20:	8b 4d 10             	mov    0x10(%ebp),%ecx
422b23:	8b f9                	mov    %ecx,%edi
422b25:	89 85 ec eb ff ff    	mov    %eax,-0x1414(%ebp)
422b2b:	8b 45 14             	mov    0x14(%ebp),%eax
422b2e:	03 c1                	add    %ecx,%eax
422b30:	89 1e                	mov    %ebx,(%esi)
422b32:	89 5e 04             	mov    %ebx,0x4(%esi)
422b35:	89 85 f4 eb ff ff    	mov    %eax,-0x140c(%ebp)
422b3b:	89 5e 08             	mov    %ebx,0x8(%esi)
422b3e:	3b c8                	cmp    %eax,%ecx
422b40:	0f 83 ba 00 00 00    	jae    0x422c00
422b46:	8b b5 f4 eb ff ff    	mov    -0x140c(%ebp),%esi
422b4c:	8d 85 50 f9 ff ff    	lea    -0x6b0(%ebp),%eax
422b52:	3b fe                	cmp    %esi,%edi
422b54:	73 21                	jae    0x422b77
422b56:	0f b7 0f             	movzwl (%edi),%ecx
422b59:	83 c7 02             	add    $0x2,%edi
422b5c:	83 f9 0a             	cmp    $0xa,%ecx
422b5f:	75 09                	jne    0x422b6a
422b61:	6a 0d                	push   $0xd
422b63:	5a                   	pop    %edx
422b64:	66 89 10             	mov    %dx,(%eax)
422b67:	83 c0 02             	add    $0x2,%eax
422b6a:	66 89 08             	mov    %cx,(%eax)
422b6d:	83 c0 02             	add    $0x2,%eax
422b70:	8d 4d f8             	lea    -0x8(%ebp),%ecx
422b73:	3b c1                	cmp    %ecx,%eax
422b75:	72 db                	jb     0x422b52
422b77:	53                   	push   %ebx
422b78:	53                   	push   %ebx
422b79:	68 55 0d 00 00       	push   $0xd55
422b7e:	8d 8d f8 eb ff ff    	lea    -0x1408(%ebp),%ecx
422b84:	51                   	push   %ecx
422b85:	8d 8d 50 f9 ff ff    	lea    -0x6b0(%ebp),%ecx
422b8b:	2b c1                	sub    %ecx,%eax
422b8d:	d1 f8                	sar    $1,%eax
422b8f:	50                   	push   %eax
422b90:	8b c1                	mov    %ecx,%eax
422b92:	50                   	push   %eax
422b93:	53                   	push   %ebx
422b94:	68 e9 fd 00 00       	push   $0xfde9
422b99:	ff 15 2c 71 42 00    	call   *0x42712c
422b9f:	8b 75 08             	mov    0x8(%ebp),%esi
422ba2:	89 85 e8 eb ff ff    	mov    %eax,-0x1418(%ebp)
422ba8:	85 c0                	test   %eax,%eax
422baa:	74 4c                	je     0x422bf8
422bac:	6a 00                	push   $0x0
422bae:	8d 8d f0 eb ff ff    	lea    -0x1410(%ebp),%ecx
422bb4:	2b c3                	sub    %ebx,%eax
422bb6:	51                   	push   %ecx
422bb7:	50                   	push   %eax
422bb8:	8d 85 f8 eb ff ff    	lea    -0x1408(%ebp),%eax
422bbe:	03 c3                	add    %ebx,%eax
422bc0:	50                   	push   %eax
422bc1:	ff b5 ec eb ff ff    	push   -0x1414(%ebp)
422bc7:	ff 15 e8 71 42 00    	call   *0x4271e8
422bcd:	85 c0                	test   %eax,%eax
422bcf:	74 27                	je     0x422bf8
422bd1:	03 9d f0 eb ff ff    	add    -0x1410(%ebp),%ebx
422bd7:	8b 85 e8 eb ff ff    	mov    -0x1418(%ebp),%eax
422bdd:	3b d8                	cmp    %eax,%ebx
422bdf:	72 cb                	jb     0x422bac
422be1:	8b c7                	mov    %edi,%eax
422be3:	2b 45 10             	sub    0x10(%ebp),%eax
422be6:	89 46 04             	mov    %eax,0x4(%esi)
422be9:	3b bd f4 eb ff ff    	cmp    -0x140c(%ebp),%edi
422bef:	73 0f                	jae    0x422c00
422bf1:	33 db                	xor    %ebx,%ebx
422bf3:	e9 4e ff ff ff       	jmp    0x422b46
422bf8:	ff 15 c4 71 42 00    	call   *0x4271c4
422bfe:	89 06                	mov    %eax,(%esi)
422c00:	8b 4d fc             	mov    -0x4(%ebp),%ecx
422c03:	8b c6                	mov    %esi,%eax
422c05:	5f                   	pop    %edi
422c06:	5e                   	pop    %esi
422c07:	33 cd                	xor    %ebp,%ecx
422c09:	5b                   	pop    %ebx
422c0a:	e8 51 44 fe ff       	call   0x407060
422c0f:	8b e5                	mov    %ebp,%esp
422c11:	5d                   	pop    %ebp
422c12:	c3                   	ret
422c13:	6a 14                	push   $0x14
422c15:	68 50 83 43 00       	push   $0x438350
422c1a:	e8 01 4a fe ff       	call   0x407620
422c1f:	8b 75 08             	mov    0x8(%ebp),%esi
422c22:	83 fe fe             	cmp    $0xfffffffe,%esi
422c25:	75 18                	jne    0x422c3f
422c27:	e8 2c 1e ff ff       	call   0x414a58
422c2c:	83 20 00             	andl   $0x0,(%eax)
422c2f:	e8 37 1e ff ff       	call   0x414a6b
422c34:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
422c3a:	e9 b6 00 00 00       	jmp    0x422cf5
422c3f:	85 f6                	test   %esi,%esi
422c41:	0f 88 96 00 00 00    	js     0x422cdd
422c47:	3b 35 c0 9f 83 02    	cmp    0x2839fc0,%esi
422c4d:	0f 83 8a 00 00 00    	jae    0x422cdd
422c53:	8b de                	mov    %esi,%ebx
422c55:	c1 fb 06             	sar    $0x6,%ebx
422c58:	8b c6                	mov    %esi,%eax
422c5a:	83 e0 3f             	and    $0x3f,%eax
422c5d:	6b c8 30             	imul   $0x30,%eax,%ecx
422c60:	89 4d e0             	mov    %ecx,-0x20(%ebp)
422c63:	8b 04 9d c0 9d 83 02 	mov    0x2839dc0(,%ebx,4),%eax
422c6a:	0f b6 44 08 28       	movzbl 0x28(%eax,%ecx,1),%eax
422c6f:	83 e0 01             	and    $0x1,%eax
422c72:	74 69                	je     0x422cdd
422c74:	56                   	push   %esi
422c75:	e8 f5 cd ff ff       	call   0x41fa6f
422c7a:	59                   	pop    %ecx
422c7b:	83 cf ff             	or     $0xffffffff,%edi
422c7e:	89 7d e4             	mov    %edi,-0x1c(%ebp)
422c81:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
422c85:	8b 04 9d c0 9d 83 02 	mov    0x2839dc0(,%ebx,4),%eax
422c8c:	8b 4d e0             	mov    -0x20(%ebp),%ecx
422c8f:	f6 44 08 28 01       	testb  $0x1,0x28(%eax,%ecx,1)
422c94:	75 15                	jne    0x422cab
422c96:	e8 d0 1d ff ff       	call   0x414a6b
422c9b:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
422ca1:	e8 b2 1d ff ff       	call   0x414a58
422ca6:	83 20 00             	andl   $0x0,(%eax)
422ca9:	eb 14                	jmp    0x422cbf
422cab:	ff 75 10             	push   0x10(%ebp)
422cae:	ff 75 0c             	push   0xc(%ebp)
422cb1:	56                   	push   %esi
422cb2:	e8 47 00 00 00       	call   0x422cfe
422cb7:	83 c4 0c             	add    $0xc,%esp
422cba:	8b f8                	mov    %eax,%edi
422cbc:	89 7d e4             	mov    %edi,-0x1c(%ebp)
422cbf:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
422cc6:	e8 0a 00 00 00       	call   0x422cd5
422ccb:	8b c7                	mov    %edi,%eax
422ccd:	eb 29                	jmp    0x422cf8
422ccf:	8b 75 08             	mov    0x8(%ebp),%esi
422cd2:	8b 7d e4             	mov    -0x1c(%ebp),%edi
422cd5:	56                   	push   %esi
422cd6:	e8 b7 cd ff ff       	call   0x41fa92
422cdb:	59                   	pop    %ecx
422cdc:	c3                   	ret
422cdd:	e8 76 1d ff ff       	call   0x414a58
422ce2:	83 20 00             	andl   $0x0,(%eax)
422ce5:	e8 81 1d ff ff       	call   0x414a6b
422cea:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
422cf0:	e8 ed 8f fe ff       	call   0x40bce2
422cf5:	83 c8 ff             	or     $0xffffffff,%eax
422cf8:	e8 69 49 fe ff       	call   0x407666
422cfd:	c3                   	ret
422cfe:	8b ff                	mov    %edi,%edi
422d00:	55                   	push   %ebp
422d01:	8b ec                	mov    %esp,%ebp
422d03:	83 ec 30             	sub    $0x30,%esp
422d06:	a1 28 ba 43 00       	mov    0x43ba28,%eax
422d0b:	33 c5                	xor    %ebp,%eax
422d0d:	89 45 fc             	mov    %eax,-0x4(%ebp)
422d10:	8b 4d 10             	mov    0x10(%ebp),%ecx
422d13:	89 4d f8             	mov    %ecx,-0x8(%ebp)
422d16:	56                   	push   %esi
422d17:	8b 75 08             	mov    0x8(%ebp),%esi
422d1a:	57                   	push   %edi
422d1b:	8b 7d 0c             	mov    0xc(%ebp),%edi
422d1e:	89 7d d0             	mov    %edi,-0x30(%ebp)
422d21:	85 c9                	test   %ecx,%ecx
422d23:	75 07                	jne    0x422d2c
422d25:	33 c0                	xor    %eax,%eax
422d27:	e9 ce 01 00 00       	jmp    0x422efa
422d2c:	85 ff                	test   %edi,%edi
422d2e:	75 1f                	jne    0x422d4f
422d30:	e8 23 1d ff ff       	call   0x414a58
422d35:	21 38                	and    %edi,(%eax)
422d37:	e8 2f 1d ff ff       	call   0x414a6b
422d3c:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
422d42:	e8 9b 8f fe ff       	call   0x40bce2
422d47:	83 c8 ff             	or     $0xffffffff,%eax
422d4a:	e9 ab 01 00 00       	jmp    0x422efa
422d4f:	53                   	push   %ebx
422d50:	8b c6                	mov    %esi,%eax
422d52:	8b de                	mov    %esi,%ebx
422d54:	c1 fb 06             	sar    $0x6,%ebx
422d57:	83 e0 3f             	and    $0x3f,%eax
422d5a:	6b d0 30             	imul   $0x30,%eax,%edx
422d5d:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
422d60:	8b 04 9d c0 9d 83 02 	mov    0x2839dc0(,%ebx,4),%eax
422d67:	89 45 d4             	mov    %eax,-0x2c(%ebp)
422d6a:	89 55 e8             	mov    %edx,-0x18(%ebp)
422d6d:	8a 5c 10 29          	mov    0x29(%eax,%edx,1),%bl
422d71:	80 fb 02             	cmp    $0x2,%bl
422d74:	74 05                	je     0x422d7b
422d76:	80 fb 01             	cmp    $0x1,%bl
422d79:	75 28                	jne    0x422da3
422d7b:	8b c1                	mov    %ecx,%eax
422d7d:	f7 d0                	not    %eax
422d7f:	a8 01                	test   $0x1,%al
422d81:	75 1d                	jne    0x422da0
422d83:	e8 d0 1c ff ff       	call   0x414a58
422d88:	83 20 00             	andl   $0x0,(%eax)
422d8b:	e8 db 1c ff ff       	call   0x414a6b
422d90:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
422d96:	e8 47 8f fe ff       	call   0x40bce2
422d9b:	e9 51 01 00 00       	jmp    0x422ef1
422da0:	8b 45 d4             	mov    -0x2c(%ebp),%eax
422da3:	f6 44 10 28 20       	testb  $0x20,0x28(%eax,%edx,1)
422da8:	74 0f                	je     0x422db9
422daa:	6a 02                	push   $0x2
422dac:	6a 00                	push   $0x0
422dae:	6a 00                	push   $0x0
422db0:	56                   	push   %esi
422db1:	e8 39 2e 00 00       	call   0x425bef
422db6:	83 c4 10             	add    $0x10,%esp
422db9:	56                   	push   %esi
422dba:	e8 e4 fa ff ff       	call   0x4228a3
422dbf:	59                   	pop    %ecx
422dc0:	84 c0                	test   %al,%al
422dc2:	74 39                	je     0x422dfd
422dc4:	84 db                	test   %bl,%bl
422dc6:	74 22                	je     0x422dea
422dc8:	fe cb                	dec    %bl
422dca:	80 fb 01             	cmp    $0x1,%bl
422dcd:	0f 87 ee 00 00 00    	ja     0x422ec1
422dd3:	ff 75 f8             	push   -0x8(%ebp)
422dd6:	8d 45 ec             	lea    -0x14(%ebp),%eax
422dd9:	57                   	push   %edi
422dda:	50                   	push   %eax
422ddb:	e8 56 fa ff ff       	call   0x422836
422de0:	83 c4 0c             	add    $0xc,%esp
422de3:	8b f0                	mov    %eax,%esi
422de5:	e9 9c 00 00 00       	jmp    0x422e86
422dea:	ff 75 f8             	push   -0x8(%ebp)
422ded:	8d 45 ec             	lea    -0x14(%ebp),%eax
422df0:	57                   	push   %edi
422df1:	56                   	push   %esi
422df2:	50                   	push   %eax
422df3:	e8 8b f8 ff ff       	call   0x422683
422df8:	83 c4 10             	add    $0x10,%esp
422dfb:	eb e6                	jmp    0x422de3
422dfd:	8b 45 e4             	mov    -0x1c(%ebp),%eax
422e00:	8b 0c 85 c0 9d 83 02 	mov    0x2839dc0(,%eax,4),%ecx
422e07:	8b 45 e8             	mov    -0x18(%ebp),%eax
422e0a:	f6 44 01 28 80       	testb  $0x80,0x28(%ecx,%eax,1)
422e0f:	74 46                	je     0x422e57
422e11:	0f be c3             	movsbl %bl,%eax
422e14:	83 e8 00             	sub    $0x0,%eax
422e17:	74 2e                	je     0x422e47
422e19:	83 e8 01             	sub    $0x1,%eax
422e1c:	74 19                	je     0x422e37
422e1e:	83 e8 01             	sub    $0x1,%eax