412b26:	03 c3                	add    %ebx,%eax
412b28:	50                   	push   %eax
412b29:	ff 75 0c             	push   0xc(%ebp)
412b2c:	53                   	push   %ebx
412b2d:	e8 c7 03 00 00       	call   0x412ef9
412b32:	8a 55 20             	mov    0x20(%ebp),%dl
412b35:	83 c4 10             	add    $0x10,%esp
412b38:	8b 45 1c             	mov    0x1c(%ebp),%eax
412b3b:	8b f3                	mov    %ebx,%esi
412b3d:	83 38 2d             	cmpl   $0x2d,(%eax)
412b40:	75 06                	jne    0x412b48
412b42:	c6 03 2d             	movb   $0x2d,(%ebx)
412b45:	8d 73 01             	lea    0x1(%ebx),%esi
412b48:	85 ff                	test   %edi,%edi
412b4a:	7e 15                	jle    0x412b61
412b4c:	8a 46 01             	mov    0x1(%esi),%al
412b4f:	88 06                	mov    %al,(%esi)
412b51:	46                   	inc    %esi
412b52:	8b 45 f4             	mov    -0xc(%ebp),%eax
412b55:	8b 80 88 00 00 00    	mov    0x88(%eax),%eax
412b5b:	8b 00                	mov    (%eax),%eax
412b5d:	8a 00                	mov    (%eax),%al
412b5f:	88 06                	mov    %al,(%esi)
412b61:	0f b6 c2             	movzbl %dl,%eax
412b64:	83 f0 01             	xor    $0x1,%eax
412b67:	03 c7                	add    %edi,%eax
412b69:	03 f0                	add    %eax,%esi
412b6b:	83 c8 ff             	or     $0xffffffff,%eax
412b6e:	39 45 0c             	cmp    %eax,0xc(%ebp)
412b71:	74 07                	je     0x412b7a
412b73:	8b c3                	mov    %ebx,%eax
412b75:	2b c6                	sub    %esi,%eax
412b77:	03 45 0c             	add    0xc(%ebp),%eax
412b7a:	68 18 ed 41 00       	push   $0x41ed18
412b7f:	50                   	push   %eax
412b80:	56                   	push   %esi
412b81:	e8 1b 97 ff ff       	call   0x40c2a1
412b86:	83 c4 0c             	add    $0xc,%esp
412b89:	5b                   	pop    %ebx
412b8a:	85 c0                	test   %eax,%eax
412b8c:	75 76                	jne    0x412c04
412b8e:	8d 4e 02             	lea    0x2(%esi),%ecx
412b91:	38 45 14             	cmp    %al,0x14(%ebp)
412b94:	74 03                	je     0x412b99
412b96:	c6 06 45             	movb   $0x45,(%esi)
412b99:	8b 55 1c             	mov    0x1c(%ebp),%edx
412b9c:	8b 42 08             	mov    0x8(%edx),%eax
412b9f:	80 38 30             	cmpb   $0x30,(%eax)
412ba2:	74 2f                	je     0x412bd3
412ba4:	8b 52 04             	mov    0x4(%edx),%edx
412ba7:	83 ea 01             	sub    $0x1,%edx
412baa:	79 06                	jns    0x412bb2
412bac:	f7 da                	neg    %edx
412bae:	c6 46 01 2d          	movb   $0x2d,0x1(%esi)
412bb2:	6a 64                	push   $0x64
412bb4:	5f                   	pop    %edi
412bb5:	3b d7                	cmp    %edi,%edx
412bb7:	7c 08                	jl     0x412bc1
412bb9:	8b c2                	mov    %edx,%eax
412bbb:	99                   	cltd
412bbc:	f7 ff                	idiv   %edi
412bbe:	00 46 02             	add    %al,0x2(%esi)
412bc1:	6a 0a                	push   $0xa
412bc3:	5f                   	pop    %edi
412bc4:	3b d7                	cmp    %edi,%edx
412bc6:	7c 08                	jl     0x412bd0
412bc8:	8b c2                	mov    %edx,%eax
412bca:	99                   	cltd
412bcb:	f7 ff                	idiv   %edi
412bcd:	00 46 03             	add    %al,0x3(%esi)
412bd0:	00 56 04             	add    %dl,0x4(%esi)
412bd3:	83 7d 18 02          	cmpl   $0x2,0x18(%ebp)
412bd7:	75 14                	jne    0x412bed
412bd9:	80 39 30             	cmpb   $0x30,(%ecx)
412bdc:	75 0f                	jne    0x412bed
412bde:	6a 03                	push   $0x3
412be0:	8d 41 01             	lea    0x1(%ecx),%eax
412be3:	50                   	push   %eax
412be4:	51                   	push   %ecx
412be5:	e8 e6 6f ff ff       	call   0x409bd0
412bea:	83 c4 0c             	add    $0xc,%esp
412bed:	80 7d fc 00          	cmpb   $0x0,-0x4(%ebp)
412bf1:	74 0a                	je     0x412bfd
412bf3:	8b 45 f0             	mov    -0x10(%ebp),%eax
412bf6:	83 a0 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%eax)
412bfd:	33 c0                	xor    %eax,%eax
412bff:	e9 f5 fe ff ff       	jmp    0x412af9
412c04:	33 c0                	xor    %eax,%eax
412c06:	50                   	push   %eax
412c07:	50                   	push   %eax
412c08:	50                   	push   %eax
412c09:	50                   	push   %eax
412c0a:	50                   	push   %eax
412c0b:	e8 16 c0 ff ff       	call   0x40ec26
412c10:	cc                   	int3
412c11:	8b ff                	mov    %edi,%edi
412c13:	55                   	push   %ebp
412c14:	8b ec                	mov    %esp,%ebp
412c16:	83 ec 0c             	sub    $0xc,%esp
412c19:	33 c0                	xor    %eax,%eax
412c1b:	56                   	push   %esi
412c1c:	57                   	push   %edi
412c1d:	ff 75 18             	push   0x18(%ebp)
412c20:	8d 7d f4             	lea    -0xc(%ebp),%edi
412c23:	ff 75 14             	push   0x14(%ebp)
412c26:	ab                   	stos   %eax,%es:(%edi)
412c27:	ab                   	stos   %eax,%es:(%edi)
412c28:	ab                   	stos   %eax,%es:(%edi)
412c29:	8d 45 f4             	lea    -0xc(%ebp),%eax
412c2c:	8b 7d 1c             	mov    0x1c(%ebp),%edi
412c2f:	50                   	push   %eax
412c30:	8b 45 08             	mov    0x8(%ebp),%eax
412c33:	57                   	push   %edi
412c34:	ff 70 04             	push   0x4(%eax)
412c37:	ff 30                	push   (%eax)
412c39:	e8 ca 26 00 00       	call   0x415308
412c3e:	83 c9 ff             	or     $0xffffffff,%ecx
412c41:	83 c4 18             	add    $0x18,%esp
412c44:	8b d0                	mov    %eax,%edx
412c46:	39 4d 10             	cmp    %ecx,0x10(%ebp)
412c49:	74 0e                	je     0x412c59
412c4b:	8b 4d 10             	mov    0x10(%ebp),%ecx
412c4e:	33 c0                	xor    %eax,%eax
412c50:	83 7d f4 2d          	cmpl   $0x2d,-0xc(%ebp)
412c54:	0f 94 c0             	sete   %al
412c57:	2b c8                	sub    %eax,%ecx
412c59:	ff 75 24             	push   0x24(%ebp)
412c5c:	8b 75 0c             	mov    0xc(%ebp),%esi
412c5f:	8d 45 f4             	lea    -0xc(%ebp),%eax
412c62:	52                   	push   %edx
412c63:	50                   	push   %eax
412c64:	8b 45 f8             	mov    -0x8(%ebp),%eax
412c67:	03 c7                	add    %edi,%eax
412c69:	50                   	push   %eax
412c6a:	33 c0                	xor    %eax,%eax
412c6c:	83 7d f4 2d          	cmpl   $0x2d,-0xc(%ebp)
412c70:	51                   	push   %ecx
412c71:	0f 94 c0             	sete   %al
412c74:	03 c6                	add    %esi,%eax
412c76:	50                   	push   %eax
412c77:	e8 15 21 00 00       	call   0x414d91
412c7c:	83 c4 18             	add    $0x18,%esp
412c7f:	85 c0                	test   %eax,%eax
412c81:	74 05                	je     0x412c88
412c83:	c6 06 00             	movb   $0x0,(%esi)
412c86:	eb 16                	jmp    0x412c9e
412c88:	ff 75 20             	push   0x20(%ebp)
412c8b:	8d 45 f4             	lea    -0xc(%ebp),%eax
412c8e:	6a 00                	push   $0x0
412c90:	50                   	push   %eax
412c91:	57                   	push   %edi
412c92:	ff 75 10             	push   0x10(%ebp)
412c95:	56                   	push   %esi
412c96:	e8 07 00 00 00       	call   0x412ca2
412c9b:	83 c4 18             	add    $0x18,%esp
412c9e:	5f                   	pop    %edi
412c9f:	5e                   	pop    %esi
412ca0:	c9                   	leave
412ca1:	c3                   	ret
412ca2:	8b ff                	mov    %edi,%edi
412ca4:	55                   	push   %ebp
412ca5:	8b ec                	mov    %esp,%ebp
412ca7:	83 ec 14             	sub    $0x14,%esp
412caa:	8d 4d ec             	lea    -0x14(%ebp),%ecx
412cad:	53                   	push   %ebx
412cae:	56                   	push   %esi
412caf:	57                   	push   %edi
412cb0:	ff 75 1c             	push   0x1c(%ebp)
412cb3:	e8 92 9d ff ff       	call   0x40ca4a
412cb8:	8b 5d 14             	mov    0x14(%ebp),%ebx
412cbb:	33 d2                	xor    %edx,%edx
412cbd:	8b 75 10             	mov    0x10(%ebp),%esi
412cc0:	8b 7d 08             	mov    0x8(%ebp),%edi
412cc3:	8b 4b 04             	mov    0x4(%ebx),%ecx
412cc6:	49                   	dec    %ecx
412cc7:	38 55 18             	cmp    %dl,0x18(%ebp)
412cca:	74 14                	je     0x412ce0
412ccc:	3b ce                	cmp    %esi,%ecx
412cce:	75 10                	jne    0x412ce0
412cd0:	33 c0                	xor    %eax,%eax
412cd2:	83 3b 2d             	cmpl   $0x2d,(%ebx)
412cd5:	0f 94 c0             	sete   %al
412cd8:	03 c1                	add    %ecx,%eax
412cda:	66 c7 04 38 30 00    	movw   $0x30,(%eax,%edi,1)
412ce0:	83 3b 2d             	cmpl   $0x2d,(%ebx)
412ce3:	8b cf                	mov    %edi,%ecx
412ce5:	89 7d fc             	mov    %edi,-0x4(%ebp)
412ce8:	75 09                	jne    0x412cf3
412cea:	8d 4f 01             	lea    0x1(%edi),%ecx
412ced:	c6 07 2d             	movb   $0x2d,(%edi)
412cf0:	89 4d fc             	mov    %ecx,-0x4(%ebp)
412cf3:	8b 43 04             	mov    0x4(%ebx),%eax
412cf6:	85 c0                	test   %eax,%eax
412cf8:	7f 2e                	jg     0x412d28
412cfa:	75 0a                	jne    0x412d06
412cfc:	8b 43 08             	mov    0x8(%ebx),%eax
412cff:	80 38 30             	cmpb   $0x30,(%eax)
412d02:	75 02                	jne    0x412d06
412d04:	b2 01                	mov    $0x1,%dl
412d06:	80 7d 18 00          	cmpb   $0x0,0x18(%ebp)
412d0a:	74 04                	je     0x412d10
412d0c:	84 d2                	test   %dl,%dl
412d0e:	75 12                	jne    0x412d22
412d10:	6a 01                	push   $0x1
412d12:	51                   	push   %ecx
412d13:	ff 75 0c             	push   0xc(%ebp)
412d16:	57                   	push   %edi
412d17:	e8 dd 01 00 00       	call   0x412ef9
412d1c:	8b 4d fc             	mov    -0x4(%ebp),%ecx
412d1f:	83 c4 10             	add    $0x10,%esp
412d22:	33 c0                	xor    %eax,%eax
412d24:	c6 01 30             	movb   $0x30,(%ecx)
412d27:	40                   	inc    %eax
412d28:	03 c1                	add    %ecx,%eax
412d2a:	89 45 fc             	mov    %eax,-0x4(%ebp)
412d2d:	85 f6                	test   %esi,%esi
412d2f:	7e 52                	jle    0x412d83
412d31:	6a 01                	push   $0x1
412d33:	50                   	push   %eax
412d34:	ff 75 0c             	push   0xc(%ebp)
412d37:	57                   	push   %edi
412d38:	e8 bc 01 00 00       	call   0x412ef9
412d3d:	8b 45 f0             	mov    -0x10(%ebp),%eax
412d40:	83 c4 10             	add    $0x10,%esp
412d43:	8b 4d fc             	mov    -0x4(%ebp),%ecx
412d46:	8b 80 88 00 00 00    	mov    0x88(%eax),%eax
412d4c:	8b 00                	mov    (%eax),%eax
412d4e:	8a 00                	mov    (%eax),%al
412d50:	88 01                	mov    %al,(%ecx)
412d52:	41                   	inc    %ecx
412d53:	8b 43 04             	mov    0x4(%ebx),%eax
412d56:	85 c0                	test   %eax,%eax
412d58:	79 29                	jns    0x412d83
412d5a:	f7 d8                	neg    %eax
412d5c:	80 7d 18 00          	cmpb   $0x0,0x18(%ebp)
412d60:	75 04                	jne    0x412d66
412d62:	3b c6                	cmp    %esi,%eax
412d64:	7d 02                	jge    0x412d68
412d66:	8b f0                	mov    %eax,%esi
412d68:	56                   	push   %esi
412d69:	51                   	push   %ecx
412d6a:	ff 75 0c             	push   0xc(%ebp)
412d6d:	57                   	push   %edi
412d6e:	e8 86 01 00 00       	call   0x412ef9
412d73:	8b 45 fc             	mov    -0x4(%ebp),%eax
412d76:	56                   	push   %esi
412d77:	40                   	inc    %eax
412d78:	6a 30                	push   $0x30
412d7a:	50                   	push   %eax
412d7b:	e8 90 63 ff ff       	call   0x409110
412d80:	83 c4 1c             	add    $0x1c,%esp
412d83:	80 7d f8 00          	cmpb   $0x0,-0x8(%ebp)
412d87:	5f                   	pop    %edi
412d88:	5e                   	pop    %esi
412d89:	5b                   	pop    %ebx
412d8a:	74 0a                	je     0x412d96
412d8c:	8b 45 ec             	mov    -0x14(%ebp),%eax
412d8f:	83 a0 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%eax)
412d96:	33 c0                	xor    %eax,%eax
412d98:	c9                   	leave
412d99:	c3                   	ret
412d9a:	8b ff                	mov    %edi,%edi
412d9c:	55                   	push   %ebp
412d9d:	8b ec                	mov    %esp,%ebp
412d9f:	83 ec 14             	sub    $0x14,%esp
412da2:	53                   	push   %ebx
412da3:	56                   	push   %esi
412da4:	57                   	push   %edi
412da5:	ff 75 18             	push   0x18(%ebp)
412da8:	33 c0                	xor    %eax,%eax
412daa:	8d 7d ec             	lea    -0x14(%ebp),%edi
412dad:	ff 75 14             	push   0x14(%ebp)
412db0:	ab                   	stos   %eax,%es:(%edi)
412db1:	ab                   	stos   %eax,%es:(%edi)
412db2:	ab                   	stos   %eax,%es:(%edi)
412db3:	8d 45 ec             	lea    -0x14(%ebp),%eax
412db6:	8b 7d 1c             	mov    0x1c(%ebp),%edi
412db9:	50                   	push   %eax
412dba:	8b 45 08             	mov    0x8(%ebp),%eax
412dbd:	57                   	push   %edi
412dbe:	ff 70 04             	push   0x4(%eax)
412dc1:	ff 30                	push   (%eax)
412dc3:	e8 40 25 00 00       	call   0x415308
412dc8:	8b 5d 0c             	mov    0xc(%ebp),%ebx
412dcb:	33 d2                	xor    %edx,%edx
412dcd:	83 c4 18             	add    $0x18,%esp
412dd0:	89 45 fc             	mov    %eax,-0x4(%ebp)
412dd3:	83 7d ec 2d          	cmpl   $0x2d,-0x14(%ebp)
412dd7:	8b 45 f0             	mov    -0x10(%ebp),%eax
412dda:	0f 94 c2             	sete   %dl
412ddd:	48                   	dec    %eax
412dde:	89 45 f8             	mov    %eax,-0x8(%ebp)
412de1:	83 c8 ff             	or     $0xffffffff,%eax
412de4:	8d 34 1a             	lea    (%edx,%ebx,1),%esi
412de7:	39 45 10             	cmp    %eax,0x10(%ebp)
412dea:	74 05                	je     0x412df1
412dec:	8b 45 10             	mov    0x10(%ebp),%eax
412def:	2b c2                	sub    %edx,%eax
412df1:	ff 75 28             	push   0x28(%ebp)
412df4:	8d 4d ec             	lea    -0x14(%ebp),%ecx
412df7:	ff 75 fc             	push   -0x4(%ebp)
412dfa:	51                   	push   %ecx
412dfb:	57                   	push   %edi
412dfc:	50                   	push   %eax
412dfd:	56                   	push   %esi
412dfe:	e8 8e 1f 00 00       	call   0x414d91
412e03:	83 c4 18             	add    $0x18,%esp
412e06:	85 c0                	test   %eax,%eax
412e08:	74 05                	je     0x412e0f
412e0a:	c6 03 00             	movb   $0x0,(%ebx)
412e0d:	eb 50                	jmp    0x412e5f
412e0f:	8b 45 f0             	mov    -0x10(%ebp),%eax
412e12:	48                   	dec    %eax
412e13:	83 f8 fc             	cmp    $0xfffffffc,%eax
412e16:	7c 2b                	jl     0x412e43
412e18:	3b c7                	cmp    %edi,%eax
412e1a:	7d 27                	jge    0x412e43
412e1c:	39 45 f8             	cmp    %eax,-0x8(%ebp)
412e1f:	7d 0a                	jge    0x412e2b
412e21:	8a 06                	mov    (%esi),%al
412e23:	46                   	inc    %esi
412e24:	84 c0                	test   %al,%al
412e26:	75 f9                	jne    0x412e21
412e28:	88 46 fe             	mov    %al,-0x2(%esi)
412e2b:	ff 75 2c             	push   0x2c(%ebp)
412e2e:	8d 45 ec             	lea    -0x14(%ebp),%eax
412e31:	6a 01                	push   $0x1
412e33:	50                   	push   %eax
412e34:	57                   	push   %edi
412e35:	ff 75 10             	push   0x10(%ebp)
412e38:	53                   	push   %ebx
412e39:	e8 64 fe ff ff       	call   0x412ca2
412e3e:	83 c4 18             	add    $0x18,%esp
412e41:	eb 1c                	jmp    0x412e5f
412e43:	ff 75 2c             	push   0x2c(%ebp)
412e46:	8d 45 ec             	lea    -0x14(%ebp),%eax
412e49:	6a 01                	push   $0x1
412e4b:	50                   	push   %eax
412e4c:	ff 75 24             	push   0x24(%ebp)
412e4f:	ff 75 20             	push   0x20(%ebp)
412e52:	57                   	push   %edi
412e53:	ff 75 10             	push   0x10(%ebp)
412e56:	53                   	push   %ebx
412e57:	e8 6d fc ff ff       	call   0x412ac9
412e5c:	83 c4 20             	add    $0x20,%esp
412e5f:	5f                   	pop    %edi
412e60:	5e                   	pop    %esi
412e61:	5b                   	pop    %ebx
412e62:	c9                   	leave
412e63:	c3                   	ret