405a1e:	59                   	pop    %ecx
405a1f:	66 3b c1             	cmp    %cx,%ax
405a22:	8b 4b 04             	mov    0x4(%ebx),%ecx
405a25:	89 55 d0             	mov    %edx,-0x30(%ebp)
405a28:	89 45 f0             	mov    %eax,-0x10(%ebp)
405a2b:	74 ab                	je     0x4059d8
405a2d:	6a 7f                	push   $0x7f
405a2f:	8b d1                	mov    %ecx,%edx
405a31:	8b 4d d8             	mov    -0x28(%ebp),%ecx
405a34:	5f                   	pop    %edi
405a35:	e9 78 ff ff ff       	jmp    0x4059b2
405a3a:	8b 45 cc             	mov    -0x34(%ebp),%eax
405a3d:	8b 00                	mov    (%eax),%eax
405a3f:	83 f8 13             	cmp    $0x13,%eax
405a42:	7f 7a                	jg     0x405abe
405a44:	83 f8 12             	cmp    $0x12,%eax
405a47:	0f 8d 01 03 00 00    	jge    0x405d4e
405a4d:	83 e8 04             	sub    $0x4,%eax
405a50:	83 f8 0a             	cmp    $0xa,%eax
405a53:	0f 87 9e 03 00 00    	ja     0x405df7
405a59:	ff 24 85 1c 5e 40 00 	jmp    *0x405e1c(,%eax,4)
405a60:	33 c0                	xor    %eax,%eax
405a62:	66 85 c0             	test   %ax,%ax
405a65:	74 1c                	je     0x405a83
405a67:	42                   	inc    %edx
405a68:	89 55 d0             	mov    %edx,-0x30(%ebp)
405a6b:	8b 04 91             	mov    (%ecx,%edx,4),%eax
405a6e:	89 45 cc             	mov    %eax,-0x34(%ebp)
405a71:	0f b7 40 08          	movzwl 0x8(%eax),%eax
405a75:	66 3b 85 74 ff ff ff 	cmp    -0x8c(%ebp),%ax
405a7c:	75 e4                	jne    0x405a62
405a7e:	e9 73 3c 07 00       	jmp    0x4796f6
405a83:	8b 45 cc             	mov    -0x34(%ebp),%eax
405a86:	83 38 05             	cmpl   $0x5,(%eax)
405a89:	75 dc                	jne    0x405a67
405a8b:	8b 45 d8             	mov    -0x28(%ebp),%eax
405a8e:	8b 04 81             	mov    (%ecx,%eax,4),%eax
405a91:	33 c9                	xor    %ecx,%ecx
405a93:	66 39 48 08          	cmp    %cx,0x8(%eax)
405a97:	0f 84 cd 00 00 00    	je     0x405b6a
405a9d:	8b 4d d0             	mov    -0x30(%ebp),%ecx
405aa0:	8b 43 04             	mov    0x4(%ebx),%eax
405aa3:	33 d2                	xor    %edx,%edx
405aa5:	8b 44 88 04          	mov    0x4(%eax,%ecx,4),%eax
405aa9:	66 39 50 08          	cmp    %dx,0x8(%eax)
405aad:	8b 55 fc             	mov    -0x4(%ebp),%edx
405ab0:	0f 84 8a 01 00 00    	je     0x405c40
405ab6:	8b 45 f4             	mov    -0xc(%ebp),%eax
405ab9:	e9 25 ff ff ff       	jmp    0x4059e3
405abe:	83 f8 20             	cmp    $0x20,%eax
405ac1:	0f 8f c7 00 00 00    	jg     0x405b8e
405ac7:	0f 84 e5 00 00 00    	je     0x405bb2
405acd:	83 e8 14             	sub    $0x14,%eax
405ad0:	0f 84 a2 3b 07 00    	je     0x479678
405ad6:	48                   	dec    %eax
405ad7:	0f 84 55 3b 07 00    	je     0x479632
405add:	48                   	dec    %eax
405ade:	0f 84 ff 3a 07 00    	je     0x4795e3
405ae4:	48                   	dec    %eax
405ae5:	0f 84 ed 3a 07 00    	je     0x4795d8
405aeb:	8b 55 fc             	mov    -0x4(%ebp),%edx
405aee:	48                   	dec    %eax
405aef:	8b 45 f4             	mov    -0xc(%ebp),%eax
405af2:	0f 85 eb fe ff ff    	jne    0x4059e3
405af8:	e9 8c 3a 07 00       	jmp    0x479589
405afd:	ff 45 fc             	incl   -0x4(%ebp)
405b00:	8d 4d 9c             	lea    -0x64(%ebp),%ecx
405b03:	8d 45 f0             	lea    -0x10(%ebp),%eax
405b06:	89 75 f0             	mov    %esi,-0x10(%ebp)
405b09:	50                   	push   %eax
405b0a:	46                   	inc    %esi
405b0b:	e8 09 04 00 00       	call   0x405f19
405b10:	8b 4d f8             	mov    -0x8(%ebp),%ecx
405b13:	8b 55 fc             	mov    -0x4(%ebp),%edx
405b16:	8b 45 f4             	mov    -0xc(%ebp),%eax
405b19:	e9 c8 fe ff ff       	jmp    0x4059e6
405b1e:	8b 41 04             	mov    0x4(%ecx),%eax
405b21:	6a 7f                	push   $0x7f
405b23:	59                   	pop    %ecx
405b24:	66 39 48 08          	cmp    %cx,0x8(%eax)
405b28:	0f 85 f0 3b 07 00    	jne    0x47971e
405b2e:	8b 55 fc             	mov    -0x4(%ebp),%edx
405b31:	4a                   	dec    %edx
405b32:	4e                   	dec    %esi
405b33:	83 7d 9c 00          	cmpl   $0x0,-0x64(%ebp)
405b37:	89 55 fc             	mov    %edx,-0x4(%ebp)
405b3a:	0f 84 c9 02 00 00    	je     0x405e09
405b40:	8d 4d 9c             	lea    -0x64(%ebp),%ecx
405b43:	e8 c3 03 00 00       	call   0x405f0b
405b48:	8b 18                	mov    (%eax),%ebx
405b4a:	8d 4d 9c             	lea    -0x64(%ebp),%ecx
405b4d:	e8 00 04 00 00       	call   0x405f52
405b52:	8b 55 fc             	mov    -0x4(%ebp),%edx
405b55:	85 d2                	test   %edx,%edx
405b57:	0f 88 a1 3b 07 00    	js     0x4796fe
405b5d:	3b f3                	cmp    %ebx,%esi
405b5f:	0f 85 99 3b 07 00    	jne    0x4796fe
405b65:	8b 4d f8             	mov    -0x8(%ebp),%ecx
405b68:	eb ac                	jmp    0x405b16
405b6a:	83 38 05             	cmpl   $0x5,(%eax)
405b6d:	0f 85 2a ff ff ff    	jne    0x405a9d
405b73:	ff 45 e8             	incl   -0x18(%ebp)
405b76:	8d 45 f0             	lea    -0x10(%ebp),%eax
405b79:	89 75 f0             	mov    %esi,-0x10(%ebp)
405b7c:	50                   	push   %eax
405b7d:	8d 8d 78 ff ff ff    	lea    -0x88(%ebp),%ecx
405b83:	46                   	inc    %esi
405b84:	e8 90 03 00 00       	call   0x405f19
405b89:	e9 0f ff ff ff       	jmp    0x405a9d
405b8e:	83 e8 21             	sub    $0x21,%eax
405b91:	0f 85 48 01 00 00    	jne    0x405cdf
405b97:	8b 41 04             	mov    0x4(%ecx),%eax
405b9a:	6a 7f                	push   $0x7f
405b9c:	59                   	pop    %ecx
405b9d:	66 39 48 08          	cmp    %cx,0x8(%eax)
405ba1:	0f 85 77 3b 07 00    	jne    0x47971e
405ba7:	ff 4d d4             	decl   -0x2c(%ebp)
405baa:	0f 85 66 3b 07 00    	jne    0x479716
405bb0:	eb 10                	jmp    0x405bc2
405bb2:	8b 45 d4             	mov    -0x2c(%ebp),%eax
405bb5:	40                   	inc    %eax
405bb6:	89 45 d4             	mov    %eax,-0x2c(%ebp)
405bb9:	83 f8 01             	cmp    $0x1,%eax
405bbc:	0f 8f 54 3b 07 00    	jg     0x479716
405bc2:	ff 75 dc             	push   -0x24(%ebp)
405bc5:	8b 45 fc             	mov    -0x4(%ebp),%eax
405bc8:	ff 75 e8             	push   -0x18(%ebp)
405bcb:	ff 75 e0             	push   -0x20(%ebp)
405bce:	ff 75 e4             	push   -0x1c(%ebp)
405bd1:	50                   	push   %eax
405bd2:	8b 45 f8             	mov    -0x8(%ebp),%eax
405bd5:	50                   	push   %eax
405bd6:	ff 75 ec             	push   -0x14(%ebp)
405bd9:	56                   	push   %esi
405bda:	e8 a6 03 00 00       	call   0x405f85
405bdf:	85 c0                	test   %eax,%eax
405be1:	0f 89 29 ff ff ff    	jns    0x405b10
405be7:	e9 b1 00 00 00       	jmp    0x405c9d
405bec:	8b 41 04             	mov    0x4(%ecx),%eax
405bef:	6a 7f                	push   $0x7f
405bf1:	59                   	pop    %ecx
405bf2:	66 39 48 08          	cmp    %cx,0x8(%eax)
405bf6:	0f 85 22 3b 07 00    	jne    0x47971e
405bfc:	8b 45 e8             	mov    -0x18(%ebp),%eax
405bff:	48                   	dec    %eax
405c00:	4e                   	dec    %esi
405c01:	83 bd 78 ff ff ff 00 	cmpl   $0x0,-0x88(%ebp)
405c08:	89 45 e8             	mov    %eax,-0x18(%ebp)
405c0b:	0f 84 00 02 00 00    	je     0x405e11
405c11:	8d 8d 78 ff ff ff    	lea    -0x88(%ebp),%ecx
405c17:	e8 ef 02 00 00       	call   0x405f0b
405c1c:	8b 18                	mov    (%eax),%ebx
405c1e:	8d 8d 78 ff ff ff    	lea    -0x88(%ebp),%ecx
405c24:	e8 29 03 00 00       	call   0x405f52
405c29:	8b 45 e8             	mov    -0x18(%ebp),%eax
405c2c:	85 c0                	test   %eax,%eax
405c2e:	78 08                	js     0x405c38
405c30:	3b f3                	cmp    %ebx,%esi
405c32:	0f 84 d8 fe ff ff    	je     0x405b10
405c38:	57                   	push   %edi
405c39:	6a 75                	push   $0x75
405c3b:	e9 eb 3a 07 00       	jmp    0x47972b
405c40:	83 38 12             	cmpl   $0x12,(%eax)
405c43:	0f 8c 9a 3a 07 00    	jl     0x4796e3
405c49:	83 38 13             	cmpl   $0x13,(%eax)
405c4c:	0f 8e fc 00 00 00    	jle    0x405d4e
405c52:	83 38 18             	cmpl   $0x18,(%eax)
405c55:	0f 8e 88 3a 07 00    	jle    0x4796e3
405c5b:	83 38 1e             	cmpl   $0x1e,(%eax)
405c5e:	8b 55 fc             	mov    -0x4(%ebp),%edx
405c61:	0f 8e 4f fe ff ff    	jle    0x405ab6
405c67:	83 38 21             	cmpl   $0x21,(%eax)
405c6a:	0f 8e 73 3a 07 00    	jle    0x4796e3
405c70:	83 38 23             	cmpl   $0x23,(%eax)
405c73:	0f 8e 97 fe ff ff    	jle    0x405b10
405c79:	e9 65 3a 07 00       	jmp    0x4796e3
405c7e:	ff 75 dc             	push   -0x24(%ebp)
405c81:	33 db                	xor    %ebx,%ebx
405c83:	ff 75 e8             	push   -0x18(%ebp)
405c86:	ff 75 e0             	push   -0x20(%ebp)
405c89:	ff 75 e4             	push   -0x1c(%ebp)
405c8c:	52                   	push   %edx
405c8d:	51                   	push   %ecx
405c8e:	ff 75 ec             	push   -0x14(%ebp)
405c91:	53                   	push   %ebx
405c92:	e8 ee 02 00 00       	call   0x405f85
405c97:	85 c0                	test   %eax,%eax
405c99:	78 02                	js     0x405c9d
405c9b:	8b fb                	mov    %ebx,%edi
405c9d:	8d 4d 90             	lea    -0x70(%ebp),%ecx
405ca0:	e8 47 dc ff ff       	call   0x4038ec
405ca5:	8d 4d a8             	lea    -0x58(%ebp),%ecx
405ca8:	e8 3f dc ff ff       	call   0x4038ec
405cad:	8d 4d 9c             	lea    -0x64(%ebp),%ecx
405cb0:	e8 37 dc ff ff       	call   0x4038ec
405cb5:	8d 4d 84             	lea    -0x7c(%ebp),%ecx
405cb8:	e8 2f dc ff ff       	call   0x4038ec
405cbd:	8d 4d b4             	lea    -0x4c(%ebp),%ecx
405cc0:	e8 27 dc ff ff       	call   0x4038ec
405cc5:	8d 8d 78 ff ff ff    	lea    -0x88(%ebp),%ecx
405ccb:	e8 1c dc ff ff       	call   0x4038ec
405cd0:	8d 4d c0             	lea    -0x40(%ebp),%ecx
405cd3:	e8 14 dc ff ff       	call   0x4038ec
405cd8:	8b c7                	mov    %edi,%eax
405cda:	5f                   	pop    %edi
405cdb:	5e                   	pop    %esi
405cdc:	5b                   	pop    %ebx
405cdd:	c9                   	leave
405cde:	c3                   	ret
405cdf:	83 e8 04             	sub    $0x4,%eax
405ce2:	0f 84 f0 39 07 00    	je     0x4796d8
405ce8:	48                   	dec    %eax
405ce9:	0f 84 a4 39 07 00    	je     0x479693
405cef:	8b 4d f8             	mov    -0x8(%ebp),%ecx
405cf2:	8b 55 fc             	mov    -0x4(%ebp),%edx
405cf5:	83 e8 05             	sub    $0x5,%eax
405cf8:	8b 45 f4             	mov    -0xc(%ebp),%eax
405cfb:	0f 85 e5 fc ff ff    	jne    0x4059e6
405d01:	e9 ac fe ff ff       	jmp    0x405bb2
405d06:	8b 41 04             	mov    0x4(%ecx),%eax
405d09:	6a 7f                	push   $0x7f
405d0b:	59                   	pop    %ecx
405d0c:	66 39 48 08          	cmp    %cx,0x8(%eax)
405d10:	0f 85 08 3a 07 00    	jne    0x47971e
405d16:	83 7d e8 00          	cmpl   $0x0,-0x18(%ebp)
405d1a:	0f 85 f0 fd ff ff    	jne    0x405b10
405d20:	57                   	push   %edi
405d21:	6a 74                	push   $0x74
405d23:	e9 03 3a 07 00       	jmp    0x47972b
405d28:	8b 41 04             	mov    0x4(%ecx),%eax
405d2b:	6a 7f                	push   $0x7f
405d2d:	59                   	pop    %ecx
405d2e:	66 39 48 08          	cmp    %cx,0x8(%eax)
405d32:	0f 85 e6 39 07 00    	jne    0x47971e
405d38:	ff 45 ec             	incl   -0x14(%ebp)
405d3b:	8d 4d a8             	lea    -0x58(%ebp),%ecx
405d3e:	e9 c0 fd ff ff       	jmp    0x405b03
405d43:	ff 45 f8             	incl   -0x8(%ebp)
405d46:	8d 4d 84             	lea    -0x7c(%ebp),%ecx
405d49:	e9 b5 fd ff ff       	jmp    0x405b03
405d4e:	83 7d ec 00          	cmpl   $0x0,-0x14(%ebp)
405d52:	8b 4d f8             	mov    -0x8(%ebp),%ecx
405d55:	8b 55 fc             	mov    -0x4(%ebp),%edx
405d58:	8b 45 f4             	mov    -0xc(%ebp),%eax
405d5b:	0f 85 85 fc ff ff    	jne    0x4059e6
405d61:	85 c9                	test   %ecx,%ecx
405d63:	0f 85 7d fc ff ff    	jne    0x4059e6
405d69:	85 d2                	test   %edx,%edx
405d6b:	0f 85 a5 fd ff ff    	jne    0x405b16
405d71:	e9 98 39 07 00       	jmp    0x47970e
405d76:	8b 45 ec             	mov    -0x14(%ebp),%eax
405d79:	48                   	dec    %eax
405d7a:	4e                   	dec    %esi
405d7b:	83 7d a8 00          	cmpl   $0x0,-0x58(%ebp)
405d7f:	89 45 ec             	mov    %eax,-0x14(%ebp)
405d82:	74 7b                	je     0x405dff
405d84:	8d 4d a8             	lea    -0x58(%ebp),%ecx
405d87:	e8 7f 01 00 00       	call   0x405f0b
405d8c:	8b 18                	mov    (%eax),%ebx
405d8e:	8d 4d a8             	lea    -0x58(%ebp),%ecx
405d91:	e8 bc 01 00 00       	call   0x405f52
405d96:	8b 45 ec             	mov    -0x14(%ebp),%eax
405d99:	85 c0                	test   %eax,%eax
405d9b:	78 08                	js     0x405da5
405d9d:	3b f3                	cmp    %ebx,%esi
405d9f:	0f 84 6b fd ff ff    	je     0x405b10
405da5:	57                   	push   %edi
405da6:	68 93 00 00 00       	push   $0x93
405dab:	e9 7b 39 07 00       	jmp    0x47972b
405db0:	8b 41 04             	mov    0x4(%ecx),%eax
405db3:	6a 7f                	push   $0x7f
405db5:	59                   	pop    %ecx
405db6:	66 39 48 08          	cmp    %cx,0x8(%eax)
405dba:	0f 85 5e 39 07 00    	jne    0x47971e
405dc0:	8b 4d f8             	mov    -0x8(%ebp),%ecx
405dc3:	49                   	dec    %ecx
405dc4:	4e                   	dec    %esi
405dc5:	83 7d 84 00          	cmpl   $0x0,-0x7c(%ebp)
405dc9:	89 4d f8             	mov    %ecx,-0x8(%ebp)
405dcc:	74 36                	je     0x405e04
405dce:	8d 4d 84             	lea    -0x7c(%ebp),%ecx
405dd1:	e8 35 01 00 00       	call   0x405f0b
405dd6:	8b 18                	mov    (%eax),%ebx
405dd8:	8d 4d 84             	lea    -0x7c(%ebp),%ecx
405ddb:	e8 72 01 00 00       	call   0x405f52
405de0:	8b 4d f8             	mov    -0x8(%ebp),%ecx
405de3:	85 c9                	test   %ecx,%ecx
405de5:	78 08                	js     0x405def
405de7:	3b f3                	cmp    %ebx,%esi
405de9:	0f 84 24 fd ff ff    	je     0x405b13
405def:	57                   	push   %edi
405df0:	6a 78                	push   $0x78
405df2:	e9 34 39 07 00       	jmp    0x47972b
405df7:	8b 45 f4             	mov    -0xc(%ebp),%eax
405dfa:	e9 e1 fb ff ff       	jmp    0x4059e0
405dff:	8d 5e 01             	lea    0x1(%esi),%ebx
405e02:	eb 95                	jmp    0x405d99
405e04:	8d 5e 01             	lea    0x1(%esi),%ebx
405e07:	eb da                	jmp    0x405de3
405e09:	8d 5e 01             	lea    0x1(%esi),%ebx
405e0c:	e9 44 fd ff ff       	jmp    0x405b55
405e11:	8d 5e 01             	lea    0x1(%esi),%ebx
405e14:	e9 13 fe ff ff       	jmp    0x405c2c
405e19:	8d 49 00             	lea    0x0(%ecx),%ecx
405e1c:	60                   	pusha
405e1d:	5a                   	pop    %edx
405e1e:	40                   	inc    %eax
405e1f:	00 06                	add    %al,(%esi)
405e21:	97                   	xchg   %eax,%edi
405e22:	47                   	inc    %edi
405e23:	00 06                	add    %al,(%esi)
405e25:	5d                   	pop    %ebp
405e26:	40                   	inc    %eax
405e27:	00 16                	add    %dl,(%esi)
405e29:	5d                   	pop    %ebp
405e2a:	40                   	inc    %eax
405e2b:	00 ec                	add    %ch,%ah
405e2d:	5b                   	pop    %ebx
405e2e:	40                   	inc    %eax
405e2f:	00 43 5d             	add    %al,0x5d(%ebx)
405e32:	40                   	inc    %eax
405e33:	00 b0 5d 40 00 28    	add    %dh,0x2800405d(%eax)
405e39:	5d                   	pop    %ebp
405e3a:	40                   	inc    %eax
405e3b:	00 76 5d             	add    %dh,0x5d(%esi)
405e3e:	40                   	inc    %eax
405e3f:	00 fd                	add    %bh,%ch
405e41:	5a                   	pop    %edx
405e42:	40                   	inc    %eax
405e43:	00 1e                	add    %bl,(%esi)
405e45:	5b                   	pop    %ebx
405e46:	40                   	inc    %eax
405e47:	00 55 8b             	add    %dl,-0x75(%ebp)
405e4a:	ec                   	in     (%dx),%al
405e4b:	8b 45 08             	mov    0x8(%ebp),%eax
405e4e:	3b 05 10 21 4c 00    	cmp    0x4c2110,%eax
405e54:	7f 11                	jg     0x405e67
405e56:	85 c0                	test   %eax,%eax
405e58:	7e 0d                	jle    0x405e67
405e5a:	c1 e0 04             	shl    $0x4,%eax
405e5d:	03 05 4c 21 4c 00    	add    0x4c214c,%eax
405e63:	5d                   	pop    %ebp
405e64:	c2 04 00             	ret    $0x4
405e67:	33 c0                	xor    %eax,%eax
405e69:	eb f8                	jmp    0x405e63
405e6b:	33 d2                	xor    %edx,%edx
405e6d:	33 c0                	xor    %eax,%eax
405e6f:	40                   	inc    %eax
405e70:	89 41 1c             	mov    %eax,0x1c(%ecx)
405e73:	89 51 10             	mov    %edx,0x10(%ecx)