4129a0:	89 55 e4             	mov    %edx,-0x1c(%ebp)
4129a3:	04 30                	add    $0x30,%al
4129a5:	8b 55 dc             	mov    -0x24(%ebp),%edx
4129a8:	88 02                	mov    %al,(%edx)
4129aa:	8d 7a 01             	lea    0x1(%edx),%edi
4129ad:	33 c0                	xor    %eax,%eax
4129af:	3b fa                	cmp    %edx,%edi
4129b1:	75 0b                	jne    0x4129be
4129b3:	3b f0                	cmp    %eax,%esi
4129b5:	7c 23                	jl     0x4129da
4129b7:	7f 05                	jg     0x4129be
4129b9:	83 f9 64             	cmp    $0x64,%ecx
4129bc:	72 1c                	jb     0x4129da
4129be:	53                   	push   %ebx
4129bf:	50                   	push   %eax
4129c0:	6a 64                	push   $0x64
4129c2:	56                   	push   %esi
4129c3:	51                   	push   %ecx
4129c4:	e8 47 69 00 00       	call   0x419310
4129c9:	8b f3                	mov    %ebx,%esi
4129cb:	5b                   	pop    %ebx
4129cc:	90                   	nop
4129cd:	04 30                	add    $0x30,%al
4129cf:	89 55 e4             	mov    %edx,-0x1c(%ebp)
4129d2:	8b 55 dc             	mov    -0x24(%ebp),%edx
4129d5:	88 07                	mov    %al,(%edi)
4129d7:	47                   	inc    %edi
4129d8:	33 c0                	xor    %eax,%eax
4129da:	3b fa                	cmp    %edx,%edi
4129dc:	75 0b                	jne    0x4129e9
4129de:	3b f0                	cmp    %eax,%esi
4129e0:	7c 1e                	jl     0x412a00
4129e2:	7f 05                	jg     0x4129e9
4129e4:	83 f9 0a             	cmp    $0xa,%ecx
4129e7:	72 17                	jb     0x412a00
4129e9:	53                   	push   %ebx
4129ea:	50                   	push   %eax
4129eb:	6a 0a                	push   $0xa
4129ed:	56                   	push   %esi
4129ee:	51                   	push   %ecx
4129ef:	e8 1c 69 00 00       	call   0x419310
4129f4:	5b                   	pop    %ebx
4129f5:	90                   	nop
4129f6:	04 30                	add    $0x30,%al
4129f8:	89 55 dc             	mov    %edx,-0x24(%ebp)
4129fb:	88 07                	mov    %al,(%edi)
4129fd:	47                   	inc    %edi
4129fe:	33 c0                	xor    %eax,%eax
412a00:	80 c1 30             	add    $0x30,%cl
412a03:	88 0f                	mov    %cl,(%edi)
412a05:	88 47 01             	mov    %al,0x1(%edi)
412a08:	8b f8                	mov    %eax,%edi
412a0a:	80 7d d4 00          	cmpb   $0x0,-0x2c(%ebp)
412a0e:	5e                   	pop    %esi
412a0f:	5b                   	pop    %ebx
412a10:	74 0a                	je     0x412a1c
412a12:	8b 4d c8             	mov    -0x38(%ebp),%ecx
412a15:	83 a1 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%ecx)
412a1c:	8b c7                	mov    %edi,%eax
412a1e:	5f                   	pop    %edi
412a1f:	c9                   	leave
412a20:	c3                   	ret
412a21:	8b ff                	mov    %edi,%edi
412a23:	55                   	push   %ebp
412a24:	8b ec                	mov    %esp,%ebp
412a26:	83 ec 0c             	sub    $0xc,%esp
412a29:	56                   	push   %esi
412a2a:	8b 75 1c             	mov    0x1c(%ebp),%esi
412a2d:	57                   	push   %edi
412a2e:	8d 7e 01             	lea    0x1(%esi),%edi
412a31:	8d 47 02             	lea    0x2(%edi),%eax
412a34:	3b 45 18             	cmp    0x18(%ebp),%eax
412a37:	72 03                	jb     0x412a3c
412a39:	8b 45 18             	mov    0x18(%ebp),%eax
412a3c:	50                   	push   %eax
412a3d:	ff 75 14             	push   0x14(%ebp)
412a40:	8d 45 f4             	lea    -0xc(%ebp),%eax
412a43:	50                   	push   %eax
412a44:	8b 45 08             	mov    0x8(%ebp),%eax
412a47:	57                   	push   %edi
412a48:	ff 70 04             	push   0x4(%eax)
412a4b:	ff 30                	push   (%eax)
412a4d:	e8 b6 28 00 00       	call   0x415308
412a52:	83 c9 ff             	or     $0xffffffff,%ecx
412a55:	83 c4 18             	add    $0x18,%esp
412a58:	8b d0                	mov    %eax,%edx
412a5a:	39 4d 10             	cmp    %ecx,0x10(%ebp)
412a5d:	74 17                	je     0x412a76
412a5f:	8b 4d 10             	mov    0x10(%ebp),%ecx
412a62:	33 c0                	xor    %eax,%eax
412a64:	83 7d f4 2d          	cmpl   $0x2d,-0xc(%ebp)
412a68:	0f 94 c0             	sete   %al
412a6b:	2b c8                	sub    %eax,%ecx
412a6d:	33 c0                	xor    %eax,%eax
412a6f:	85 f6                	test   %esi,%esi
412a71:	0f 9f c0             	setg   %al
412a74:	2b c8                	sub    %eax,%ecx
412a76:	ff 75 2c             	push   0x2c(%ebp)
412a79:	8d 45 f4             	lea    -0xc(%ebp),%eax
412a7c:	52                   	push   %edx
412a7d:	50                   	push   %eax
412a7e:	57                   	push   %edi
412a7f:	8b 7d 0c             	mov    0xc(%ebp),%edi
412a82:	51                   	push   %ecx
412a83:	33 c9                	xor    %ecx,%ecx
412a85:	83 7d f4 2d          	cmpl   $0x2d,-0xc(%ebp)
412a89:	0f 94 c1             	sete   %cl
412a8c:	33 c0                	xor    %eax,%eax
412a8e:	85 f6                	test   %esi,%esi
412a90:	0f 9f c0             	setg   %al
412a93:	03 cf                	add    %edi,%ecx
412a95:	03 c1                	add    %ecx,%eax
412a97:	50                   	push   %eax
412a98:	e8 f4 22 00 00       	call   0x414d91
412a9d:	83 c4 18             	add    $0x18,%esp
412aa0:	85 c0                	test   %eax,%eax
412aa2:	74 05                	je     0x412aa9
412aa4:	c6 07 00             	movb   $0x0,(%edi)
412aa7:	eb 1c                	jmp    0x412ac5
412aa9:	ff 75 28             	push   0x28(%ebp)
412aac:	8d 45 f4             	lea    -0xc(%ebp),%eax
412aaf:	6a 00                	push   $0x0
412ab1:	50                   	push   %eax
412ab2:	ff 75 24             	push   0x24(%ebp)
412ab5:	ff 75 20             	push   0x20(%ebp)
412ab8:	56                   	push   %esi
412ab9:	ff 75 10             	push   0x10(%ebp)
412abc:	57                   	push   %edi
412abd:	e8 07 00 00 00       	call   0x412ac9
412ac2:	83 c4 20             	add    $0x20,%esp
412ac5:	5f                   	pop    %edi
412ac6:	5e                   	pop    %esi
412ac7:	c9                   	leave
412ac8:	c3                   	ret
412ac9:	8b ff                	mov    %edi,%edi
412acb:	55                   	push   %ebp
412acc:	8b ec                	mov    %esp,%ebp
412ace:	83 ec 10             	sub    $0x10,%esp
412ad1:	56                   	push   %esi
412ad2:	57                   	push   %edi
412ad3:	8b 7d 10             	mov    0x10(%ebp),%edi
412ad6:	85 ff                	test   %edi,%edi
412ad8:	7e 04                	jle    0x412ade
412ada:	8b c7                	mov    %edi,%eax
412adc:	eb 02                	jmp    0x412ae0
412ade:	33 c0                	xor    %eax,%eax
412ae0:	83 c0 09             	add    $0x9,%eax
412ae3:	39 45 0c             	cmp    %eax,0xc(%ebp)
412ae6:	77 15                	ja     0x412afd
412ae8:	e8 e6 c1 ff ff       	call   0x40ecd3
412aed:	6a 22                	push   $0x22
412aef:	5e                   	pop    %esi
412af0:	89 30                	mov    %esi,(%eax)
412af2:	e8 1f c1 ff ff       	call   0x40ec16
412af7:	8b c6                	mov    %esi,%eax
412af9:	5f                   	pop    %edi
412afa:	5e                   	pop    %esi
412afb:	c9                   	leave
412afc:	c3                   	ret
412afd:	53                   	push   %ebx
412afe:	ff 75 24             	push   0x24(%ebp)
412b01:	8d 4d f0             	lea    -0x10(%ebp),%ecx
412b04:	e8 41 9f ff ff       	call   0x40ca4a
412b09:	8a 55 20             	mov    0x20(%ebp),%dl
412b0c:	8b 5d 08             	mov    0x8(%ebp),%ebx
412b0f:	84 d2                	test   %dl,%dl
412b11:	74 25                	je     0x412b38
412b13:	8b 4d 1c             	mov    0x1c(%ebp),%ecx
412b16:	33 c0                	xor    %eax,%eax
412b18:	85 ff                	test   %edi,%edi
412b1a:	0f 9f c0             	setg   %al
412b1d:	50                   	push   %eax
412b1e:	33 c0                	xor    %eax,%eax
412b20:	83 39 2d             	cmpl   $0x2d,(%ecx)
412b23:	0f 94 c0             	sete   %al
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