412c63:	5e                   	pop    %esi
412c64:	53                   	push   %ebx
412c65:	53                   	push   %ebx
412c66:	53                   	push   %ebx
412c67:	53                   	push   %ebx
412c68:	53                   	push   %ebx
412c69:	89 30                	mov    %esi,(%eax)
412c6b:	e8 b5 25 ff ff       	call   0x405225
412c70:	83 c4 14             	add    $0x14,%esp
412c73:	8b c6                	mov    %esi,%eax
412c75:	eb 56                	jmp    0x412ccd
412c77:	ff 75 18             	push   0x18(%ebp)
412c7a:	8d 4d f0             	lea    -0x10(%ebp),%ecx
412c7d:	e8 e2 4b ff ff       	call   0x407864
412c82:	8b 45 f0             	mov    -0x10(%ebp),%eax
412c85:	39 58 14             	cmp    %ebx,0x14(%eax)
412c88:	0f 85 9c 00 00 00    	jne    0x412d2a
412c8e:	66 8b 45 14          	mov    0x14(%ebp),%ax
412c92:	b9 ff 00 00 00       	mov    $0xff,%ecx
412c97:	66 3b c1             	cmp    %cx,%ax
412c9a:	76 36                	jbe    0x412cd2
412c9c:	3b f3                	cmp    %ebx,%esi
412c9e:	74 0f                	je     0x412caf
412ca0:	3b fb                	cmp    %ebx,%edi
412ca2:	76 0b                	jbe    0x412caf
412ca4:	57                   	push   %edi
412ca5:	53                   	push   %ebx
412ca6:	56                   	push   %esi
412ca7:	e8 54 7a ff ff       	call   0x40a700
412cac:	83 c4 0c             	add    $0xc,%esp
412caf:	e8 21 2e ff ff       	call   0x405ad5
412cb4:	c7 00 2a 00 00 00    	movl   $0x2a,(%eax)
412cba:	e8 16 2e ff ff       	call   0x405ad5
412cbf:	8b 00                	mov    (%eax),%eax
412cc1:	38 5d fc             	cmp    %bl,-0x4(%ebp)
412cc4:	74 07                	je     0x412ccd
412cc6:	8b 4d f8             	mov    -0x8(%ebp),%ecx
412cc9:	83 61 70 fd          	andl   $0xfffffffd,0x70(%ecx)
412ccd:	5f                   	pop    %edi
412cce:	5e                   	pop    %esi
412ccf:	5b                   	pop    %ebx
412cd0:	c9                   	leave
412cd1:	c3                   	ret
412cd2:	3b f3                	cmp    %ebx,%esi
412cd4:	74 32                	je     0x412d08
412cd6:	3b fb                	cmp    %ebx,%edi
412cd8:	77 2c                	ja     0x412d06
412cda:	e8 f6 2d ff ff       	call   0x405ad5
412cdf:	6a 22                	push   $0x22
412ce1:	5e                   	pop    %esi
412ce2:	53                   	push   %ebx
412ce3:	53                   	push   %ebx
412ce4:	53                   	push   %ebx
412ce5:	53                   	push   %ebx
412ce6:	53                   	push   %ebx
412ce7:	89 30                	mov    %esi,(%eax)
412ce9:	e8 37 25 ff ff       	call   0x405225
412cee:	83 c4 14             	add    $0x14,%esp
412cf1:	38 5d fc             	cmp    %bl,-0x4(%ebp)
412cf4:	0f 84 79 ff ff ff    	je     0x412c73
412cfa:	8b 45 f8             	mov    -0x8(%ebp),%eax
412cfd:	83 60 70 fd          	andl   $0xfffffffd,0x70(%eax)
412d01:	e9 6d ff ff ff       	jmp    0x412c73
412d06:	88 06                	mov    %al,(%esi)
412d08:	8b 45 08             	mov    0x8(%ebp),%eax
412d0b:	3b c3                	cmp    %ebx,%eax
412d0d:	74 06                	je     0x412d15
412d0f:	c7 00 01 00 00 00    	movl   $0x1,(%eax)
412d15:	38 5d fc             	cmp    %bl,-0x4(%ebp)
412d18:	0f 84 25 ff ff ff    	je     0x412c43
412d1e:	8b 45 f8             	mov    -0x8(%ebp),%eax
412d21:	83 60 70 fd          	andl   $0xfffffffd,0x70(%eax)
412d25:	e9 19 ff ff ff       	jmp    0x412c43
412d2a:	8d 4d 0c             	lea    0xc(%ebp),%ecx
412d2d:	51                   	push   %ecx
412d2e:	53                   	push   %ebx
412d2f:	57                   	push   %edi
412d30:	56                   	push   %esi
412d31:	6a 01                	push   $0x1
412d33:	8d 4d 14             	lea    0x14(%ebp),%ecx
412d36:	51                   	push   %ecx
412d37:	53                   	push   %ebx
412d38:	89 5d 0c             	mov    %ebx,0xc(%ebp)
412d3b:	ff 70 04             	push   0x4(%eax)
412d3e:	ff 15 70 a0 41 00    	call   *0x41a070
412d44:	3b c3                	cmp    %ebx,%eax
412d46:	74 14                	je     0x412d5c
412d48:	39 5d 0c             	cmp    %ebx,0xc(%ebp)
412d4b:	0f 85 5e ff ff ff    	jne    0x412caf
412d51:	8b 4d 08             	mov    0x8(%ebp),%ecx
412d54:	3b cb                	cmp    %ebx,%ecx
412d56:	74 bd                	je     0x412d15
412d58:	89 01                	mov    %eax,(%ecx)
412d5a:	eb b9                	jmp    0x412d15
412d5c:	ff 15 98 a0 41 00    	call   *0x41a098
412d62:	83 f8 7a             	cmp    $0x7a,%eax
412d65:	0f 85 44 ff ff ff    	jne    0x412caf
412d6b:	3b f3                	cmp    %ebx,%esi
412d6d:	0f 84 67 ff ff ff    	je     0x412cda
412d73:	3b fb                	cmp    %ebx,%edi
412d75:	0f 86 5f ff ff ff    	jbe    0x412cda
412d7b:	57                   	push   %edi
412d7c:	53                   	push   %ebx
412d7d:	56                   	push   %esi
412d7e:	e8 7d 79 ff ff       	call   0x40a700
412d83:	83 c4 0c             	add    $0xc,%esp
412d86:	e9 4f ff ff ff       	jmp    0x412cda
412d8b:	8b ff                	mov    %edi,%edi
412d8d:	55                   	push   %ebp
412d8e:	8b ec                	mov    %esp,%ebp
412d90:	6a 00                	push   $0x0
412d92:	ff 75 14             	push   0x14(%ebp)
412d95:	ff 75 10             	push   0x10(%ebp)
412d98:	ff 75 0c             	push   0xc(%ebp)
412d9b:	ff 75 08             	push   0x8(%ebp)
412d9e:	e8 7c fe ff ff       	call   0x412c1f
412da3:	83 c4 14             	add    $0x14,%esp
412da6:	5d                   	pop    %ebp
412da7:	c3                   	ret
412da8:	8b ff                	mov    %edi,%edi
412daa:	55                   	push   %ebp
412dab:	8b ec                	mov    %esp,%ebp
412dad:	83 ec 10             	sub    $0x10,%esp
412db0:	ff 75 0c             	push   0xc(%ebp)
412db3:	8d 4d f0             	lea    -0x10(%ebp),%ecx
412db6:	e8 a9 4a ff ff       	call   0x407864
412dbb:	0f b6 45 08          	movzbl 0x8(%ebp),%eax
412dbf:	8b 4d f0             	mov    -0x10(%ebp),%ecx
412dc2:	8b 89 c8 00 00 00    	mov    0xc8(%ecx),%ecx
412dc8:	0f b7 04 41          	movzwl (%ecx,%eax,2),%eax
412dcc:	25 00 80 00 00       	and    $0x8000,%eax
412dd1:	80 7d fc 00          	cmpb   $0x0,-0x4(%ebp)
412dd5:	74 07                	je     0x412dde
412dd7:	8b 4d f8             	mov    -0x8(%ebp),%ecx
412dda:	83 61 70 fd          	andl   $0xfffffffd,0x70(%ecx)
412dde:	c9                   	leave
412ddf:	c3                   	ret
412de0:	8b ff                	mov    %edi,%edi
412de2:	55                   	push   %ebp
412de3:	8b ec                	mov    %esp,%ebp
412de5:	6a 00                	push   $0x0
412de7:	ff 75 08             	push   0x8(%ebp)
412dea:	e8 b9 ff ff ff       	call   0x412da8
412def:	59                   	pop    %ecx
412df0:	59                   	pop    %ecx
412df1:	5d                   	pop    %ebp
412df2:	c3                   	ret
412df3:	8b ff                	mov    %edi,%edi
412df5:	55                   	push   %ebp
412df6:	8b ec                	mov    %esp,%ebp
412df8:	83 ec 14             	sub    $0x14,%esp
412dfb:	56                   	push   %esi
412dfc:	57                   	push   %edi
412dfd:	ff 75 08             	push   0x8(%ebp)
412e00:	8d 4d ec             	lea    -0x14(%ebp),%ecx
412e03:	e8 5c 4a ff ff       	call   0x407864
412e08:	8b 45 10             	mov    0x10(%ebp),%eax
412e0b:	8b 75 0c             	mov    0xc(%ebp),%esi
412e0e:	33 ff                	xor    %edi,%edi
412e10:	3b c7                	cmp    %edi,%eax
412e12:	74 02                	je     0x412e16
412e14:	89 30                	mov    %esi,(%eax)
412e16:	3b f7                	cmp    %edi,%esi
412e18:	75 2c                	jne    0x412e46
412e1a:	e8 b6 2c ff ff       	call   0x405ad5
412e1f:	57                   	push   %edi
412e20:	57                   	push   %edi
412e21:	57                   	push   %edi
412e22:	57                   	push   %edi
412e23:	57                   	push   %edi
412e24:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
412e2a:	e8 f6 23 ff ff       	call   0x405225
412e2f:	83 c4 14             	add    $0x14,%esp
412e32:	80 7d f8 00          	cmpb   $0x0,-0x8(%ebp)
412e36:	74 07                	je     0x412e3f
412e38:	8b 45 f4             	mov    -0xc(%ebp),%eax
412e3b:	83 60 70 fd          	andl   $0xfffffffd,0x70(%eax)
412e3f:	33 c0                	xor    %eax,%eax
412e41:	e9 d8 01 00 00       	jmp    0x41301e
412e46:	39 7d 14             	cmp    %edi,0x14(%ebp)
412e49:	74 0c                	je     0x412e57
412e4b:	83 7d 14 02          	cmpl   $0x2,0x14(%ebp)
412e4f:	7c c9                	jl     0x412e1a
412e51:	83 7d 14 24          	cmpl   $0x24,0x14(%ebp)
412e55:	7f c3                	jg     0x412e1a
412e57:	8b 4d ec             	mov    -0x14(%ebp),%ecx
412e5a:	53                   	push   %ebx
412e5b:	8a 1e                	mov    (%esi),%bl
412e5d:	89 7d fc             	mov    %edi,-0x4(%ebp)
412e60:	8d 7e 01             	lea    0x1(%esi),%edi
412e63:	83 b9 ac 00 00 00 01 	cmpl   $0x1,0xac(%ecx)
412e6a:	7e 17                	jle    0x412e83
412e6c:	8d 45 ec             	lea    -0x14(%ebp),%eax
412e6f:	50                   	push   %eax
412e70:	0f b6 c3             	movzbl %bl,%eax
412e73:	6a 08                	push   $0x8
412e75:	50                   	push   %eax
412e76:	e8 f1 f0 ff ff       	call   0x411f6c
412e7b:	8b 4d ec             	mov    -0x14(%ebp),%ecx
412e7e:	83 c4 0c             	add    $0xc,%esp
412e81:	eb 10                	jmp    0x412e93
412e83:	8b 91 c8 00 00 00    	mov    0xc8(%ecx),%edx
412e89:	0f b6 c3             	movzbl %bl,%eax
412e8c:	0f b7 04 42          	movzwl (%edx,%eax,2),%eax
412e90:	83 e0 08             	and    $0x8,%eax
412e93:	85 c0                	test   %eax,%eax
412e95:	74 05                	je     0x412e9c
412e97:	8a 1f                	mov    (%edi),%bl
412e99:	47                   	inc    %edi
412e9a:	eb c7                	jmp    0x412e63
412e9c:	80 fb 2d             	cmp    $0x2d,%bl
412e9f:	75 06                	jne    0x412ea7
412ea1:	83 4d 18 02          	orl    $0x2,0x18(%ebp)
412ea5:	eb 05                	jmp    0x412eac
412ea7:	80 fb 2b             	cmp    $0x2b,%bl
412eaa:	75 03                	jne    0x412eaf
412eac:	8a 1f                	mov    (%edi),%bl
412eae:	47                   	inc    %edi
412eaf:	8b 45 14             	mov    0x14(%ebp),%eax
412eb2:	85 c0                	test   %eax,%eax
412eb4:	0f 8c 4b 01 00 00    	jl     0x413005
412eba:	83 f8 01             	cmp    $0x1,%eax
412ebd:	0f 84 42 01 00 00    	je     0x413005
412ec3:	83 f8 24             	cmp    $0x24,%eax
412ec6:	0f 8f 39 01 00 00    	jg     0x413005
412ecc:	85 c0                	test   %eax,%eax
412ece:	75 2a                	jne    0x412efa
412ed0:	80 fb 30             	cmp    $0x30,%bl
412ed3:	74 09                	je     0x412ede
412ed5:	c7 45 14 0a 00 00 00 	movl   $0xa,0x14(%ebp)
412edc:	eb 34                	jmp    0x412f12
412ede:	8a 07                	mov    (%edi),%al
412ee0:	3c 78                	cmp    $0x78,%al
412ee2:	74 0d                	je     0x412ef1
412ee4:	3c 58                	cmp    $0x58,%al
412ee6:	74 09                	je     0x412ef1
412ee8:	c7 45 14 08 00 00 00 	movl   $0x8,0x14(%ebp)
412eef:	eb 21                	jmp    0x412f12
412ef1:	c7 45 14 10 00 00 00 	movl   $0x10,0x14(%ebp)
412ef8:	eb 0a                	jmp    0x412f04
412efa:	83 f8 10             	cmp    $0x10,%eax
412efd:	75 13                	jne    0x412f12
412eff:	80 fb 30             	cmp    $0x30,%bl
412f02:	75 0e                	jne    0x412f12
412f04:	8a 07                	mov    (%edi),%al
412f06:	3c 78                	cmp    $0x78,%al
412f08:	74 04                	je     0x412f0e
412f0a:	3c 58                	cmp    $0x58,%al
412f0c:	75 04                	jne    0x412f12
412f0e:	47                   	inc    %edi
412f0f:	8a 1f                	mov    (%edi),%bl
412f11:	47                   	inc    %edi
412f12:	8b b1 c8 00 00 00    	mov    0xc8(%ecx),%esi
412f18:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
412f1d:	33 d2                	xor    %edx,%edx
412f1f:	f7 75 14             	divl   0x14(%ebp)
412f22:	0f b6 cb             	movzbl %bl,%ecx
412f25:	0f b7 0c 4e          	movzwl (%esi,%ecx,2),%ecx
412f29:	f6 c1 04             	test   $0x4,%cl
412f2c:	74 08                	je     0x412f36
412f2e:	0f be cb             	movsbl %bl,%ecx
412f31:	83 e9 30             	sub    $0x30,%ecx
412f34:	eb 1b                	jmp    0x412f51
412f36:	f7 c1 03 01 00 00    	test   $0x103,%ecx
412f3c:	74 31                	je     0x412f6f
412f3e:	8a cb                	mov    %bl,%cl
412f40:	80 e9 61             	sub    $0x61,%cl
412f43:	80 f9 19             	cmp    $0x19,%cl
412f46:	0f be cb             	movsbl %bl,%ecx
412f49:	77 03                	ja     0x412f4e
412f4b:	83 e9 20             	sub    $0x20,%ecx
412f4e:	83 c1 c9             	add    $0xffffffc9,%ecx
412f51:	3b 4d 14             	cmp    0x14(%ebp),%ecx
412f54:	73 19                	jae    0x412f6f
412f56:	83 4d 18 08          	orl    $0x8,0x18(%ebp)
412f5a:	39 45 fc             	cmp    %eax,-0x4(%ebp)
412f5d:	72 27                	jb     0x412f86
412f5f:	75 04                	jne    0x412f65
412f61:	3b ca                	cmp    %edx,%ecx
412f63:	76 21                	jbe    0x412f86
412f65:	83 4d 18 04          	orl    $0x4,0x18(%ebp)
412f69:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
412f6d:	75 23                	jne    0x412f92
412f6f:	8b 45 18             	mov    0x18(%ebp),%eax
412f72:	4f                   	dec    %edi
412f73:	a8 08                	test   $0x8,%al
412f75:	75 20                	jne    0x412f97
412f77:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
412f7b:	74 03                	je     0x412f80
412f7d:	8b 7d 0c             	mov    0xc(%ebp),%edi
412f80:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
412f84:	eb 5b                	jmp    0x412fe1
412f86:	8b 5d fc             	mov    -0x4(%ebp),%ebx
412f89:	0f af 5d 14          	imul   0x14(%ebp),%ebx
412f8d:	03 d9                	add    %ecx,%ebx
412f8f:	89 5d fc             	mov    %ebx,-0x4(%ebp)
412f92:	8a 1f                	mov    (%edi),%bl
412f94:	47                   	inc    %edi
412f95:	eb 8b                	jmp    0x412f22
412f97:	be ff ff ff 7f       	mov    $0x7fffffff,%esi
412f9c:	a8 04                	test   $0x4,%al
412f9e:	75 1b                	jne    0x412fbb
412fa0:	a8 01                	test   $0x1,%al
412fa2:	75 3d                	jne    0x412fe1
412fa4:	83 e0 02             	and    $0x2,%eax
412fa7:	74 09                	je     0x412fb2
412fa9:	81 7d fc 00 00 00 80 	cmpl   $0x80000000,-0x4(%ebp)
412fb0:	77 09                	ja     0x412fbb
412fb2:	85 c0                	test   %eax,%eax
412fb4:	75 2b                	jne    0x412fe1
412fb6:	39 75 fc             	cmp    %esi,-0x4(%ebp)
412fb9:	76 26                	jbe    0x412fe1
412fbb:	e8 15 2b ff ff       	call   0x405ad5
412fc0:	f6 45 18 01          	testb  $0x1,0x18(%ebp)
412fc4:	c7 00 22 00 00 00    	movl   $0x22,(%eax)
412fca:	74 06                	je     0x412fd2
412fcc:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
412fd0:	eb 0f                	jmp    0x412fe1
412fd2:	f6 45 18 02          	testb  $0x2,0x18(%ebp)
412fd6:	6a 00                	push   $0x0
412fd8:	58                   	pop    %eax
412fd9:	0f 95 c0             	setne  %al
412fdc:	03 c6                	add    %esi,%eax
412fde:	89 45 fc             	mov    %eax,-0x4(%ebp)
412fe1:	8b 45 10             	mov    0x10(%ebp),%eax
412fe4:	85 c0                	test   %eax,%eax
412fe6:	74 02                	je     0x412fea
412fe8:	89 38                	mov    %edi,(%eax)
412fea:	f6 45 18 02          	testb  $0x2,0x18(%ebp)
412fee:	74 03                	je     0x412ff3
412ff0:	f7 5d fc             	negl   -0x4(%ebp)
412ff3:	80 7d f8 00          	cmpb   $0x0,-0x8(%ebp)
412ff7:	74 07                	je     0x413000
412ff9:	8b 45 f4             	mov    -0xc(%ebp),%eax
412ffc:	83 60 70 fd          	andl   $0xfffffffd,0x70(%eax)
413000:	8b 45 fc             	mov    -0x4(%ebp),%eax
413003:	eb 18                	jmp    0x41301d
413005:	8b 45 10             	mov    0x10(%ebp),%eax
413008:	85 c0                	test   %eax,%eax
41300a:	74 02                	je     0x41300e
41300c:	89 30                	mov    %esi,(%eax)
41300e:	80 7d f8 00          	cmpb   $0x0,-0x8(%ebp)
413012:	74 07                	je     0x41301b
413014:	8b 45 f4             	mov    -0xc(%ebp),%eax
413017:	83 60 70 fd          	andl   $0xfffffffd,0x70(%eax)
41301b:	33 c0                	xor    %eax,%eax
41301d:	5b                   	pop    %ebx
41301e:	5f                   	pop    %edi
41301f:	5e                   	pop    %esi
413020:	c9                   	leave