412b9f:	8b 86 60 06 00 00    	mov    0x660(%esi),%eax
412ba5:	89 86 5c 06 00 00    	mov    %eax,0x65c(%esi)
412bab:	8b 86 44 06 00 00    	mov    0x644(%esi),%eax
412bb1:	66 89 38             	mov    %di,(%eax)
412bb4:	8b 86 44 06 00 00    	mov    0x644(%esi),%eax
412bba:	b9 01 01 00 00       	mov    $0x101,%ecx
412bbf:	66 89 48 02          	mov    %cx,0x2(%eax)
412bc3:	bf 80 00 00 00       	mov    $0x80,%edi
412bc8:	57                   	push   %edi
412bc9:	8b cb                	mov    %ebx,%ecx
412bcb:	e8 40 fe ff ff       	call   0x412a10
412bd0:	8b 8e 44 06 00 00    	mov    0x644(%esi),%ecx
412bd6:	89 41 04             	mov    %eax,0x4(%ecx)
412bd9:	8b 86 44 06 00 00    	mov    0x644(%esi),%eax
412bdf:	8b 40 04             	mov    0x4(%eax),%eax
412be2:	89 86 50 06 00 00    	mov    %eax,0x650(%esi)
412be8:	8b 86 68 06 00 00    	mov    0x668(%esi),%eax
412bee:	33 c9                	xor    %ecx,%ecx
412bf0:	89 86 64 06 00 00    	mov    %eax,0x664(%esi)
412bf6:	88 8e 6d 0a 00 00    	mov    %cl,0xa6d(%esi)
412bfc:	33 c0                	xor    %eax,%eax
412bfe:	8b 96 44 06 00 00    	mov    0x644(%esi),%edx
412c04:	8b 52 04             	mov    0x4(%edx),%edx
412c07:	88 0c 10             	mov    %cl,(%eax,%edx,1)
412c0a:	8b 96 44 06 00 00    	mov    0x644(%esi),%edx
412c10:	8b 52 04             	mov    0x4(%edx),%edx
412c13:	c6 44 02 01 01       	movb   $0x1,0x1(%edx,%eax,1)
412c18:	8b 96 44 06 00 00    	mov    0x644(%esi),%edx
412c1e:	8b 52 04             	mov    0x4(%edx),%edx
412c21:	83 64 02 02 00       	andl   $0x0,0x2(%edx,%eax,1)
412c26:	83 c0 06             	add    $0x6,%eax
412c29:	41                   	inc    %ecx
412c2a:	3d 00 06 00 00       	cmp    $0x600,%eax
412c2f:	7c cd                	jl     0x412bfe
412c31:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
412c35:	8d 86 70 0a 00 00    	lea    0xa70(%esi),%eax
412c3b:	89 45 f0             	mov    %eax,-0x10(%ebp)
412c3e:	8b 5d fc             	mov    -0x4(%ebp),%ebx
412c41:	8b 45 f0             	mov    -0x10(%ebp),%eax
412c44:	83 c3 02             	add    $0x2,%ebx
412c47:	b9 ac ad 42 00       	mov    $0x42adac,%ecx
412c4c:	89 45 f4             	mov    %eax,-0xc(%ebp)
412c4f:	8b 45 f4             	mov    -0xc(%ebp),%eax
412c52:	89 45 f8             	mov    %eax,-0x8(%ebp)
412c55:	c7 45 ec 08 00 00 00 	movl   $0x8,-0x14(%ebp)
412c5c:	0f b7 01             	movzwl (%ecx),%eax
412c5f:	99                   	cltd
412c60:	f7 fb                	idiv   %ebx
412c62:	ba 00 40 00 00       	mov    $0x4000,%edx
412c67:	2b d0                	sub    %eax,%edx
412c69:	8b 45 f8             	mov    -0x8(%ebp),%eax
412c6c:	83 45 f8 10          	addl   $0x10,-0x8(%ebp)
412c70:	ff 4d ec             	decl   -0x14(%ebp)
412c73:	66 89 10             	mov    %dx,(%eax)
412c76:	75 e4                	jne    0x412c5c
412c78:	83 45 f4 02          	addl   $0x2,-0xc(%ebp)
412c7c:	41                   	inc    %ecx
412c7d:	41                   	inc    %ecx
412c7e:	81 f9 bc ad 42 00    	cmp    $0x42adbc,%ecx
412c84:	7c c9                	jl     0x412c4f
412c86:	ff 45 fc             	incl   -0x4(%ebp)
412c89:	01 7d f0             	add    %edi,-0x10(%ebp)
412c8c:	39 7d fc             	cmp    %edi,-0x4(%ebp)
412c8f:	7c ad                	jl     0x412c3e
412c91:	33 d2                	xor    %edx,%edx
412c93:	8d 4e 03             	lea    0x3(%esi),%ecx
412c96:	8d 42 02             	lea    0x2(%edx),%eax
412c99:	6a 10                	push   $0x10
412c9b:	6b c0 28             	imul   $0x28,%eax,%eax
412c9e:	5e                   	pop    %esi
412c9f:	c6 41 ff 03          	movb   $0x3,-0x1(%ecx)
412ca3:	66 89 41 fd          	mov    %ax,-0x3(%ecx)
412ca7:	c6 01 04             	movb   $0x4,(%ecx)
412caa:	83 c1 04             	add    $0x4,%ecx
412cad:	4e                   	dec    %esi
412cae:	75 ef                	jne    0x412c9f
412cb0:	42                   	inc    %edx
412cb1:	83 fa 19             	cmp    $0x19,%edx
412cb4:	7c e0                	jl     0x412c96
412cb6:	5f                   	pop    %edi
412cb7:	5e                   	pop    %esi
412cb8:	5b                   	pop    %ebx
412cb9:	c9                   	leave
412cba:	c3                   	ret
412cbb:	8b 44 24 04          	mov    0x4(%esp),%eax
412cbf:	53                   	push   %ebx
412cc0:	56                   	push   %esi
412cc1:	8b f1                	mov    %ecx,%esi
412cc3:	33 db                	xor    %ebx,%ebx
412cc5:	43                   	inc    %ebx
412cc6:	57                   	push   %edi
412cc7:	88 9e 6c 0a 00 00    	mov    %bl,0xa6c(%esi)
412ccd:	89 86 60 06 00 00    	mov    %eax,0x660(%esi)
412cd3:	e8 68 fe ff ff       	call   0x412b40
412cd8:	6a 09                	push   $0x9
412cda:	8d 86 6e 08 00 00    	lea    0x86e(%esi),%eax
412ce0:	6a 04                	push   $0x4
412ce2:	50                   	push   %eax
412ce3:	c6 86 6c 08 00 00 00 	movb   $0x0,0x86c(%esi)
412cea:	c6 86 6d 08 00 00 02 	movb   $0x2,0x86d(%esi)
412cf1:	e8 0a 75 00 00       	call   0x41a200
412cf6:	68 f5 00 00 00       	push   $0xf5
412cfb:	8d 86 77 08 00 00    	lea    0x877(%esi),%eax
412d01:	6a 06                	push   $0x6
412d03:	50                   	push   %eax
412d04:	e8 f7 74 00 00       	call   0x41a200
412d09:	83 c4 18             	add    $0x18,%esp
412d0c:	33 c0                	xor    %eax,%eax
412d0e:	88 84 06 6c 07 00 00 	mov    %al,0x76c(%esi,%eax,1)
412d15:	40                   	inc    %eax
412d16:	83 f8 03             	cmp    $0x3,%eax
412d19:	7c f3                	jl     0x412d0e
412d1b:	8b d0                	mov    %eax,%edx
412d1d:	8b fb                	mov    %ebx,%edi
412d1f:	b9 00 01 00 00       	mov    $0x100,%ecx
412d24:	eb 0f                	jmp    0x412d35
412d26:	4f                   	dec    %edi
412d27:	88 94 06 6c 07 00 00 	mov    %dl,0x76c(%esi,%eax,1)
412d2e:	75 04                	jne    0x412d34
412d30:	43                   	inc    %ebx
412d31:	8b fb                	mov    %ebx,%edi
412d33:	42                   	inc    %edx
412d34:	40                   	inc    %eax
412d35:	3b c1                	cmp    %ecx,%eax
412d37:	7c ed                	jl     0x412d26
412d39:	6a 40                	push   $0x40
412d3b:	8d 86 6c 09 00 00    	lea    0x96c(%esi),%eax
412d41:	6a 00                	push   $0x0
412d43:	50                   	push   %eax
412d44:	e8 b7 74 00 00       	call   0x41a200
412d49:	68 c0 00 00 00       	push   $0xc0
412d4e:	8d 86 ac 09 00 00    	lea    0x9ac(%esi),%eax
412d54:	6a 08                	push   $0x8
412d56:	50                   	push   %eax
412d57:	e8 a4 74 00 00       	call   0x41a200
412d5c:	83 c4 18             	add    $0x18,%esp
412d5f:	5f                   	pop    %edi
412d60:	c6 86 42 06 00 00 07 	movb   $0x7,0x642(%esi)
412d67:	5e                   	pop    %esi
412d68:	5b                   	pop    %ebx
412d69:	c2 04 00             	ret    $0x4
412d6c:	55                   	push   %ebp
412d6d:	8b ec                	mov    %esp,%ebp
412d6f:	83 ec 20             	sub    $0x20,%esp
412d72:	53                   	push   %ebx
412d73:	8b d9                	mov    %ecx,%ebx
412d75:	0f b7 03             	movzwl (%ebx),%eax
412d78:	89 45 e8             	mov    %eax,-0x18(%ebp)
412d7b:	48                   	dec    %eax
412d7c:	89 45 fc             	mov    %eax,-0x4(%ebp)
412d7f:	8b 45 08             	mov    0x8(%ebp),%eax
412d82:	8b 80 50 06 00 00    	mov    0x650(%eax),%eax
412d88:	56                   	push   %esi
412d89:	57                   	push   %edi
412d8a:	eb 0c                	jmp    0x412d98
412d8c:	8d 70 fa             	lea    -0x6(%eax),%esi
412d8f:	56                   	push   %esi
412d90:	50                   	push   %eax
412d91:	e8 51 f8 ff ff       	call   0x4125e7
412d96:	8b c6                	mov    %esi,%eax
412d98:	3b 43 04             	cmp    0x4(%ebx),%eax
412d9b:	75 ef                	jne    0x412d8c
412d9d:	8b 4b 04             	mov    0x4(%ebx),%ecx
412da0:	80 41 01 04          	addb   $0x4,0x1(%ecx)
412da4:	8d 4b 02             	lea    0x2(%ebx),%ecx
412da7:	66 83 01 04          	addw   $0x4,(%ecx)
412dab:	0f b7 11             	movzwl (%ecx),%edx
412dae:	0f b6 70 01          	movzbl 0x1(%eax),%esi
412db2:	0f b7 d2             	movzwl %dx,%edx
412db5:	2b d6                	sub    %esi,%edx
412db7:	8b 75 08             	mov    0x8(%ebp),%esi
412dba:	89 55 f8             	mov    %edx,-0x8(%ebp)
412dbd:	33 d2                	xor    %edx,%edx
412dbf:	39 96 5c 06 00 00    	cmp    %edx,0x65c(%esi)
412dc5:	0f 95 c2             	setne  %dl
412dc8:	89 55 ec             	mov    %edx,-0x14(%ebp)
412dcb:	0f b6 50 01          	movzbl 0x1(%eax),%edx
412dcf:	03 55 ec             	add    -0x14(%ebp),%edx
412dd2:	d1 fa                	sar    $1,%edx
412dd4:	88 50 01             	mov    %dl,0x1(%eax)
412dd7:	66 0f b6 d2          	movzbw %dl,%dx
412ddb:	66 89 11             	mov    %dx,(%ecx)
412dde:	0f b6 50 07          	movzbl 0x7(%eax),%edx
412de2:	29 55 f8             	sub    %edx,-0x8(%ebp)
412de5:	8b 75 ec             	mov    -0x14(%ebp),%esi
412de8:	83 c0 06             	add    $0x6,%eax
412deb:	89 55 f0             	mov    %edx,-0x10(%ebp)
412dee:	03 d6                	add    %esi,%edx
412df0:	d1 fa                	sar    $1,%edx
412df2:	88 50 01             	mov    %dl,0x1(%eax)
412df5:	66 0f b6 d2          	movzbw %dl,%dx
412df9:	66 01 11             	add    %dx,(%ecx)
412dfc:	8a 50 01             	mov    0x1(%eax),%dl
412dff:	3a 50 fb             	cmp    -0x5(%eax),%dl
412e02:	76 35                	jbe    0x412e39
412e04:	8b f0                	mov    %eax,%esi
412e06:	8d 7d e0             	lea    -0x20(%ebp),%edi
412e09:	a5                   	movsl  %ds:(%esi),%es:(%edi)
412e0a:	8b d0                	mov    %eax,%edx
412e0c:	66 a5                	movsw  %ds:(%esi),%es:(%edi)
412e0e:	8d 72 fa             	lea    -0x6(%edx),%esi
412e11:	8b fa                	mov    %edx,%edi
412e13:	a5                   	movsl  %ds:(%esi),%es:(%edi)
412e14:	83 ea 06             	sub    $0x6,%edx
412e17:	66 a5                	movsw  %ds:(%esi),%es:(%edi)
412e19:	89 55 f0             	mov    %edx,-0x10(%ebp)
412e1c:	3b 53 04             	cmp    0x4(%ebx),%edx
412e1f:	74 10                	je     0x412e31
412e21:	8b 55 e0             	mov    -0x20(%ebp),%edx
412e24:	8b 75 f0             	mov    -0x10(%ebp),%esi
412e27:	c1 ea 08             	shr    $0x8,%edx
412e2a:	3a 56 fb             	cmp    -0x5(%esi),%dl
412e2d:	8b d6                	mov    %esi,%edx
412e2f:	77 dd                	ja     0x412e0e
412e31:	8d 75 e0             	lea    -0x20(%ebp),%esi
412e34:	8b fa                	mov    %edx,%edi
412e36:	a5                   	movsl  %ds:(%esi),%es:(%edi)
412e37:	66 a5                	movsw  %ds:(%esi),%es:(%edi)
412e39:	ff 4d fc             	decl   -0x4(%ebp)
412e3c:	75 a0                	jne    0x412dde
412e3e:	40                   	inc    %eax
412e3f:	80 38 00             	cmpb   $0x0,(%eax)
412e42:	75 72                	jne    0x412eb6
412e44:	ff 45 fc             	incl   -0x4(%ebp)
412e47:	83 e8 06             	sub    $0x6,%eax
412e4a:	80 38 00             	cmpb   $0x0,(%eax)
412e4d:	74 f5                	je     0x412e44
412e4f:	8b 55 fc             	mov    -0x4(%ebp),%edx
412e52:	8b 45 f8             	mov    -0x8(%ebp),%eax
412e55:	66 29 13             	sub    %dx,(%ebx)
412e58:	03 c2                	add    %edx,%eax
412e5a:	0f b7 13             	movzwl (%ebx),%edx
412e5d:	66 83 fa 01          	cmp    $0x1,%dx
412e61:	75 56                	jne    0x412eb9
412e63:	8b 73 04             	mov    0x4(%ebx),%esi
412e66:	89 75 ec             	mov    %esi,-0x14(%ebp)
412e69:	8d 7d f0             	lea    -0x10(%ebp),%edi
412e6c:	a5                   	movsl  %ds:(%esi),%es:(%edi)
412e6d:	66 a5                	movsw  %ds:(%esi),%es:(%edi)
412e6f:	8b 55 f0             	mov    -0x10(%ebp),%edx
412e72:	c1 ea 08             	shr    $0x8,%edx
412e75:	8a da                	mov    %dl,%bl
412e77:	d0 eb                	shr    $1,%bl
412e79:	2a d3                	sub    %bl,%dl
412e7b:	d1 f8                	sar    $1,%eax
412e7d:	83 f8 01             	cmp    $0x1,%eax
412e80:	88 55 f1             	mov    %dl,-0xf(%ebp)
412e83:	7f ea                	jg     0x412e6f
412e85:	8b 45 e8             	mov    -0x18(%ebp),%eax
412e88:	8b 55 08             	mov    0x8(%ebp),%edx
412e8b:	8b 75 ec             	mov    -0x14(%ebp),%esi
412e8e:	40                   	inc    %eax
412e8f:	d1 f8                	sar    $1,%eax
412e91:	0f b6 84 10 b5 4a 00 	movzbl 0x4ab5(%eax,%edx,1),%eax
412e98:	00
412e99:	8d 84 82 44 4b 00 00 	lea    0x4b44(%edx,%eax,4),%eax
412ea0:	8b 38                	mov    (%eax),%edi
412ea2:	89 3e                	mov    %edi,(%esi)
412ea4:	89 30                	mov    %esi,(%eax)
412ea6:	89 8a 50 06 00 00    	mov    %ecx,0x650(%edx)
412eac:	8d 75 f0             	lea    -0x10(%ebp),%esi
412eaf:	8b f9                	mov    %ecx,%edi
412eb1:	a5                   	movsl  %ds:(%esi),%es:(%edi)
412eb2:	66 a5                	movsw  %ds:(%esi),%es:(%edi)
412eb4:	eb 3e                	jmp    0x412ef4
412eb6:	8b 45 f8             	mov    -0x8(%ebp),%eax
412eb9:	8b d0                	mov    %eax,%edx
412ebb:	d1 fa                	sar    $1,%edx
412ebd:	2b c2                	sub    %edx,%eax
412ebf:	66 01 01             	add    %ax,(%ecx)
412ec2:	8b 4d e8             	mov    -0x18(%ebp),%ecx
412ec5:	0f b7 03             	movzwl (%ebx),%eax
412ec8:	41                   	inc    %ecx
412ec9:	d1 f9                	sar    $1,%ecx
412ecb:	40                   	inc    %eax
412ecc:	d1 f8                	sar    $1,%eax
412ece:	3b c8                	cmp    %eax,%ecx
412ed0:	74 16                	je     0x412ee8
412ed2:	50                   	push   %eax
412ed3:	51                   	push   %ecx
412ed4:	8b 4d 08             	mov    0x8(%ebp),%ecx
412ed7:	ff 73 04             	push   0x4(%ebx)
412eda:	81 c1 8c 4a 00 00    	add    $0x4a8c,%ecx
412ee0:	e8 ef ee ff ff       	call   0x411dd4
412ee5:	89 43 04             	mov    %eax,0x4(%ebx)
412ee8:	8b 43 04             	mov    0x4(%ebx),%eax
412eeb:	8b 4d 08             	mov    0x8(%ebp),%ecx
412eee:	89 81 50 06 00 00    	mov    %eax,0x650(%ecx)
412ef4:	5f                   	pop    %edi
412ef5:	5e                   	pop    %esi
412ef6:	5b                   	pop    %ebx
412ef7:	c9                   	leave
412ef8:	c2 04 00             	ret    $0x4
412efb:	55                   	push   %ebp
412efc:	8b ec                	mov    %esp,%ebp
412efe:	81 ec 08 01 00 00    	sub    $0x108,%esp
412f04:	80 7d 08 00          	cmpb   $0x0,0x8(%ebp)
412f08:	53                   	push   %ebx
412f09:	8b d9                	mov    %ecx,%ebx
412f0b:	8b 83 50 06 00 00    	mov    0x650(%ebx),%eax
412f11:	8b 8b 44 06 00 00    	mov    0x644(%ebx),%ecx
412f17:	56                   	push   %esi
412f18:	8b 70 02             	mov    0x2(%eax),%esi
412f1b:	57                   	push   %edi
412f1c:	8d bd f8 fe ff ff    	lea    -0x108(%ebp),%edi
412f22:	75 12                	jne    0x412f36
412f24:	83 79 08 00          	cmpl   $0x0,0x8(%ecx)
412f28:	89 85 f8 fe ff ff    	mov    %eax,-0x108(%ebp)
412f2e:	8d bd fc fe ff ff    	lea    -0x104(%ebp),%edi
412f34:	74 51                	je     0x412f87
412f36:	8b 45 0c             	mov    0xc(%ebp),%eax
412f39:	85 c0                	test   %eax,%eax
412f3b:	74 05                	je     0x412f42
412f3d:	8b 49 08             	mov    0x8(%ecx),%ecx
412f40:	eb 22                	jmp    0x412f64
412f42:	8b 49 08             	mov    0x8(%ecx),%ecx
412f45:	66 83 39 01          	cmpw   $0x1,(%ecx)
412f49:	74 16                	je     0x412f61
412f4b:	8b 93 50 06 00 00    	mov    0x650(%ebx),%edx
412f51:	8b 41 04             	mov    0x4(%ecx),%eax
412f54:	8a 12                	mov    (%edx),%dl
412f56:	eb 03                	jmp    0x412f5b
412f58:	83 c0 06             	add    $0x6,%eax
412f5b:	38 10                	cmp    %dl,(%eax)
412f5d:	75 f9                	jne    0x412f58
412f5f:	eb 03                	jmp    0x412f64
412f61:	8d 41 02             	lea    0x2(%ecx),%eax
412f64:	39 70 02             	cmp    %esi,0x2(%eax)
412f67:	75 0d                	jne    0x412f76
412f69:	89 07                	mov    %eax,(%edi)
412f6b:	83 c7 04             	add    $0x4,%edi
412f6e:	83 79 08 00          	cmpl   $0x0,0x8(%ecx)
412f72:	75 ce                	jne    0x412f42
412f74:	eb 03                	jmp    0x412f79
412f76:	8b 48 02             	mov    0x2(%eax),%ecx
412f79:	8d 85 f8 fe ff ff    	lea    -0x108(%ebp),%eax
412f7f:	3b f8                	cmp    %eax,%edi
412f81:	0f 84 85 00 00 00    	je     0x41300c
412f87:	8a 16                	mov    (%esi),%dl
412f89:	46                   	inc    %esi
412f8a:	89 75 fa             	mov    %esi,-0x6(%ebp)
412f8d:	0f b7 31             	movzwl (%ecx),%esi
412f90:	88 55 f8             	mov    %dl,-0x8(%ebp)
412f93:	66 83 fe 01          	cmp    $0x1,%si
412f97:	74 4e                	je     0x412fe7
412f99:	3b 8b dc 4b 00 00    	cmp    0x4bdc(%ebx),%ecx
412f9f:	77 04                	ja     0x412fa5
412fa1:	33 c0                	xor    %eax,%eax
412fa3:	eb 69                	jmp    0x41300e
412fa5:	8b 41 04             	mov    0x4(%ecx),%eax