427c58:	0f 8f 22 03 00 00    	jg     0x427f80
427c5e:	3d b0 eb ff ff       	cmp    $0xffffebb0,%eax
427c63:	0f 8c 2e 03 00 00    	jl     0x427f97
427c69:	b9 a0 02 43 00       	mov    $0x4302a0,%ecx
427c6e:	83 e9 60             	sub    $0x60,%ecx
427c71:	89 45 ac             	mov    %eax,-0x54(%ebp)
427c74:	3b c2                	cmp    %edx,%eax
427c76:	0f 84 e9 02 00 00    	je     0x427f65
427c7c:	7d 0d                	jge    0x427c8b
427c7e:	f7 d8                	neg    %eax
427c80:	b9 00 04 43 00       	mov    $0x430400,%ecx
427c85:	89 45 ac             	mov    %eax,-0x54(%ebp)
427c88:	83 e9 60             	sub    $0x60,%ecx
427c8b:	39 55 14             	cmp    %edx,0x14(%ebp)
427c8e:	75 06                	jne    0x427c96
427c90:	33 c0                	xor    %eax,%eax
427c92:	66 89 45 c4          	mov    %ax,-0x3c(%ebp)
427c96:	39 55 ac             	cmp    %edx,-0x54(%ebp)
427c99:	0f 84 c6 02 00 00    	je     0x427f65
427c9f:	eb 05                	jmp    0x427ca6
427ca1:	8b 4d 84             	mov    -0x7c(%ebp),%ecx
427ca4:	33 d2                	xor    %edx,%edx
427ca6:	8b 45 ac             	mov    -0x54(%ebp),%eax
427ca9:	c1 7d ac 03          	sarl   $0x3,-0x54(%ebp)
427cad:	83 c1 54             	add    $0x54,%ecx
427cb0:	83 e0 07             	and    $0x7,%eax
427cb3:	89 4d 84             	mov    %ecx,-0x7c(%ebp)
427cb6:	3b c2                	cmp    %edx,%eax
427cb8:	0f 84 9d 02 00 00    	je     0x427f5b
427cbe:	6b c0 0c             	imul   $0xc,%eax,%eax
427cc1:	03 c1                	add    %ecx,%eax
427cc3:	8b d8                	mov    %eax,%ebx
427cc5:	b8 00 80 00 00       	mov    $0x8000,%eax
427cca:	66 39 03             	cmp    %ax,(%ebx)
427ccd:	72 0e                	jb     0x427cdd
427ccf:	8b f3                	mov    %ebx,%esi
427cd1:	8d 7d b8             	lea    -0x48(%ebp),%edi
427cd4:	a5                   	movsl  %ds:(%esi),%es:(%edi)
427cd5:	a5                   	movsl  %ds:(%esi),%es:(%edi)
427cd6:	a5                   	movsl  %ds:(%esi),%es:(%edi)
427cd7:	ff 4d ba             	decl   -0x46(%ebp)
427cda:	8d 5d b8             	lea    -0x48(%ebp),%ebx
427cdd:	0f b7 4b 0a          	movzwl 0xa(%ebx),%ecx
427ce1:	33 c0                	xor    %eax,%eax
427ce3:	89 45 b0             	mov    %eax,-0x50(%ebp)
427ce6:	89 45 d4             	mov    %eax,-0x2c(%ebp)
427ce9:	89 45 d8             	mov    %eax,-0x28(%ebp)
427cec:	89 45 dc             	mov    %eax,-0x24(%ebp)
427cef:	8b 45 ce             	mov    -0x32(%ebp),%eax
427cf2:	8b f1                	mov    %ecx,%esi
427cf4:	ba ff 7f 00 00       	mov    $0x7fff,%edx
427cf9:	33 f0                	xor    %eax,%esi
427cfb:	23 c2                	and    %edx,%eax
427cfd:	23 ca                	and    %edx,%ecx
427cff:	81 e6 00 80 00 00    	and    $0x8000,%esi
427d05:	bf ff 7f 00 00       	mov    $0x7fff,%edi
427d0a:	8d 14 01             	lea    (%ecx,%eax,1),%edx
427d0d:	89 75 90             	mov    %esi,-0x70(%ebp)
427d10:	0f b7 d2             	movzwl %dx,%edx
427d13:	66 3b c7             	cmp    %di,%ax
427d16:	0f 83 21 02 00 00    	jae    0x427f3d
427d1c:	66 3b cf             	cmp    %di,%cx
427d1f:	0f 83 18 02 00 00    	jae    0x427f3d
427d25:	bf fd bf 00 00       	mov    $0xbffd,%edi
427d2a:	66 3b d7             	cmp    %di,%dx
427d2d:	0f 87 0a 02 00 00    	ja     0x427f3d
427d33:	be bf 3f 00 00       	mov    $0x3fbf,%esi
427d38:	66 3b d6             	cmp    %si,%dx
427d3b:	77 0d                	ja     0x427d4a
427d3d:	33 c0                	xor    %eax,%eax
427d3f:	89 45 c8             	mov    %eax,-0x38(%ebp)
427d42:	89 45 c4             	mov    %eax,-0x3c(%ebp)
427d45:	e9 0e 02 00 00       	jmp    0x427f58
427d4a:	33 f6                	xor    %esi,%esi
427d4c:	66 3b c6             	cmp    %si,%ax
427d4f:	75 1f                	jne    0x427d70
427d51:	42                   	inc    %edx
427d52:	f7 45 cc ff ff ff 7f 	testl  $0x7fffffff,-0x34(%ebp)
427d59:	75 15                	jne    0x427d70
427d5b:	39 75 c8             	cmp    %esi,-0x38(%ebp)
427d5e:	75 10                	jne    0x427d70
427d60:	39 75 c4             	cmp    %esi,-0x3c(%ebp)
427d63:	75 0b                	jne    0x427d70
427d65:	33 c0                	xor    %eax,%eax
427d67:	66 89 45 ce          	mov    %ax,-0x32(%ebp)
427d6b:	e9 eb 01 00 00       	jmp    0x427f5b
427d70:	66 3b ce             	cmp    %si,%cx
427d73:	75 21                	jne    0x427d96
427d75:	42                   	inc    %edx
427d76:	f7 43 08 ff ff ff 7f 	testl  $0x7fffffff,0x8(%ebx)
427d7d:	75 17                	jne    0x427d96
427d7f:	39 73 04             	cmp    %esi,0x4(%ebx)
427d82:	75 12                	jne    0x427d96
427d84:	39 33                	cmp    %esi,(%ebx)
427d86:	75 0e                	jne    0x427d96
427d88:	89 75 cc             	mov    %esi,-0x34(%ebp)
427d8b:	89 75 c8             	mov    %esi,-0x38(%ebp)
427d8e:	89 75 c4             	mov    %esi,-0x3c(%ebp)
427d91:	e9 c5 01 00 00       	jmp    0x427f5b
427d96:	89 75 98             	mov    %esi,-0x68(%ebp)
427d99:	8d 7d d8             	lea    -0x28(%ebp),%edi
427d9c:	c7 45 a8 05 00 00 00 	movl   $0x5,-0x58(%ebp)
427da3:	8b 45 98             	mov    -0x68(%ebp),%eax
427da6:	8b 4d a8             	mov    -0x58(%ebp),%ecx
427da9:	03 c0                	add    %eax,%eax
427dab:	89 4d 9c             	mov    %ecx,-0x64(%ebp)
427dae:	85 c9                	test   %ecx,%ecx
427db0:	7e 52                	jle    0x427e04
427db2:	8d 44 05 c4          	lea    -0x3c(%ebp,%eax,1),%eax
427db6:	89 45 a4             	mov    %eax,-0x5c(%ebp)
427db9:	8d 43 08             	lea    0x8(%ebx),%eax
427dbc:	89 45 a0             	mov    %eax,-0x60(%ebp)
427dbf:	8b 45 a0             	mov    -0x60(%ebp),%eax
427dc2:	8b 4d a4             	mov    -0x5c(%ebp),%ecx
427dc5:	0f b7 09             	movzwl (%ecx),%ecx
427dc8:	0f b7 00             	movzwl (%eax),%eax
427dcb:	83 65 b4 00          	andl   $0x0,-0x4c(%ebp)
427dcf:	0f af c1             	imul   %ecx,%eax
427dd2:	8b 4f fc             	mov    -0x4(%edi),%ecx
427dd5:	8d 34 01             	lea    (%ecx,%eax,1),%esi
427dd8:	3b f1                	cmp    %ecx,%esi
427dda:	72 04                	jb     0x427de0
427ddc:	3b f0                	cmp    %eax,%esi
427dde:	73 07                	jae    0x427de7
427de0:	c7 45 b4 01 00 00 00 	movl   $0x1,-0x4c(%ebp)
427de7:	83 7d b4 00          	cmpl   $0x0,-0x4c(%ebp)
427deb:	89 77 fc             	mov    %esi,-0x4(%edi)
427dee:	74 03                	je     0x427df3
427df0:	66 ff 07             	incw   (%edi)
427df3:	83 45 a4 02          	addl   $0x2,-0x5c(%ebp)
427df7:	83 6d a0 02          	subl   $0x2,-0x60(%ebp)
427dfb:	ff 4d 9c             	decl   -0x64(%ebp)
427dfe:	83 7d 9c 00          	cmpl   $0x0,-0x64(%ebp)
427e02:	7f bb                	jg     0x427dbf
427e04:	47                   	inc    %edi
427e05:	47                   	inc    %edi
427e06:	ff 45 98             	incl   -0x68(%ebp)
427e09:	ff 4d a8             	decl   -0x58(%ebp)
427e0c:	83 7d a8 00          	cmpl   $0x0,-0x58(%ebp)
427e10:	7f 91                	jg     0x427da3
427e12:	81 c2 02 c0 00 00    	add    $0xc002,%edx
427e18:	66 85 d2             	test   %dx,%dx
427e1b:	7e 37                	jle    0x427e54
427e1d:	8b 7d dc             	mov    -0x24(%ebp),%edi
427e20:	85 ff                	test   %edi,%edi
427e22:	78 2b                	js     0x427e4f
427e24:	8b 75 d8             	mov    -0x28(%ebp),%esi
427e27:	8b 45 d4             	mov    -0x2c(%ebp),%eax
427e2a:	d1 65 d4             	shll   $1,-0x2c(%ebp)
427e2d:	c1 e8 1f             	shr    $0x1f,%eax
427e30:	8b ce                	mov    %esi,%ecx
427e32:	03 f6                	add    %esi,%esi
427e34:	0b f0                	or     %eax,%esi
427e36:	c1 e9 1f             	shr    $0x1f,%ecx
427e39:	8d 04 3f             	lea    (%edi,%edi,1),%eax
427e3c:	0b c1                	or     %ecx,%eax
427e3e:	81 c2 ff ff 00 00    	add    $0xffff,%edx
427e44:	89 75 d8             	mov    %esi,-0x28(%ebp)
427e47:	89 45 dc             	mov    %eax,-0x24(%ebp)
427e4a:	66 85 d2             	test   %dx,%dx
427e4d:	7f ce                	jg     0x427e1d
427e4f:	66 85 d2             	test   %dx,%dx
427e52:	7f 4d                	jg     0x427ea1
427e54:	81 c2 ff ff 00 00    	add    $0xffff,%edx
427e5a:	66 85 d2             	test   %dx,%dx
427e5d:	7d 42                	jge    0x427ea1
427e5f:	8b c2                	mov    %edx,%eax
427e61:	f7 d8                	neg    %eax
427e63:	0f b7 f0             	movzwl %ax,%esi
427e66:	03 d6                	add    %esi,%edx
427e68:	f6 45 d4 01          	testb  $0x1,-0x2c(%ebp)
427e6c:	74 03                	je     0x427e71
427e6e:	ff 45 b0             	incl   -0x50(%ebp)
427e71:	8b 45 dc             	mov    -0x24(%ebp),%eax
427e74:	8b 7d d8             	mov    -0x28(%ebp),%edi
427e77:	8b 4d d8             	mov    -0x28(%ebp),%ecx
427e7a:	d1 6d dc             	shrl   $1,-0x24(%ebp)
427e7d:	c1 e0 1f             	shl    $0x1f,%eax
427e80:	d1 ef                	shr    $1,%edi
427e82:	0b f8                	or     %eax,%edi
427e84:	8b 45 d4             	mov    -0x2c(%ebp),%eax
427e87:	c1 e1 1f             	shl    $0x1f,%ecx
427e8a:	d1 e8                	shr    $1,%eax
427e8c:	0b c1                	or     %ecx,%eax
427e8e:	4e                   	dec    %esi
427e8f:	89 7d d8             	mov    %edi,-0x28(%ebp)
427e92:	89 45 d4             	mov    %eax,-0x2c(%ebp)
427e95:	75 d1                	jne    0x427e68
427e97:	39 75 b0             	cmp    %esi,-0x50(%ebp)
427e9a:	74 05                	je     0x427ea1
427e9c:	66 83 4d d4 01       	orw    $0x1,-0x2c(%ebp)
427ea1:	b8 00 80 00 00       	mov    $0x8000,%eax
427ea6:	8b c8                	mov    %eax,%ecx
427ea8:	66 39 4d d4          	cmp    %cx,-0x2c(%ebp)
427eac:	77 11                	ja     0x427ebf
427eae:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
427eb1:	81 e1 ff ff 01 00    	and    $0x1ffff,%ecx
427eb7:	81 f9 00 80 01 00    	cmp    $0x18000,%ecx
427ebd:	75 34                	jne    0x427ef3
427ebf:	83 7d d6 ff          	cmpl   $0xffffffff,-0x2a(%ebp)
427ec3:	75 2b                	jne    0x427ef0
427ec5:	83 65 d6 00          	andl   $0x0,-0x2a(%ebp)
427ec9:	83 7d da ff          	cmpl   $0xffffffff,-0x26(%ebp)
427ecd:	75 1c                	jne    0x427eeb
427ecf:	83 65 da 00          	andl   $0x0,-0x26(%ebp)
427ed3:	b9 ff ff 00 00       	mov    $0xffff,%ecx
427ed8:	66 39 4d de          	cmp    %cx,-0x22(%ebp)
427edc:	75 07                	jne    0x427ee5
427ede:	66 89 45 de          	mov    %ax,-0x22(%ebp)
427ee2:	42                   	inc    %edx
427ee3:	eb 0e                	jmp    0x427ef3
427ee5:	66 ff 45 de          	incw   -0x22(%ebp)
427ee9:	eb 08                	jmp    0x427ef3
427eeb:	ff 45 da             	incl   -0x26(%ebp)
427eee:	eb 03                	jmp    0x427ef3
427ef0:	ff 45 d6             	incl   -0x2a(%ebp)
427ef3:	b8 ff 7f 00 00       	mov    $0x7fff,%eax
427ef8:	66 3b d0             	cmp    %ax,%dx
427efb:	72 23                	jb     0x427f20
427efd:	33 c0                	xor    %eax,%eax
427eff:	33 c9                	xor    %ecx,%ecx
427f01:	66 39 45 90          	cmp    %ax,-0x70(%ebp)
427f05:	89 45 c8             	mov    %eax,-0x38(%ebp)
427f08:	0f 94 c1             	sete   %cl
427f0b:	89 45 c4             	mov    %eax,-0x3c(%ebp)
427f0e:	49                   	dec    %ecx
427f0f:	81 e1 00 00 00 80    	and    $0x80000000,%ecx
427f15:	81 c1 00 80 ff 7f    	add    $0x7fff8000,%ecx
427f1b:	89 4d cc             	mov    %ecx,-0x34(%ebp)
427f1e:	eb 3b                	jmp    0x427f5b
427f20:	66 8b 45 d6          	mov    -0x2a(%ebp),%ax
427f24:	0b 55 90             	or     -0x70(%ebp),%edx
427f27:	66 89 45 c4          	mov    %ax,-0x3c(%ebp)
427f2b:	8b 45 d8             	mov    -0x28(%ebp),%eax
427f2e:	89 45 c6             	mov    %eax,-0x3a(%ebp)
427f31:	8b 45 dc             	mov    -0x24(%ebp),%eax
427f34:	89 45 ca             	mov    %eax,-0x36(%ebp)
427f37:	66 89 55 ce          	mov    %dx,-0x32(%ebp)
427f3b:	eb 1e                	jmp    0x427f5b
427f3d:	33 c0                	xor    %eax,%eax
427f3f:	66 85 f6             	test   %si,%si
427f42:	0f 94 c0             	sete   %al
427f45:	83 65 c8 00          	andl   $0x0,-0x38(%ebp)
427f49:	48                   	dec    %eax
427f4a:	25 00 00 00 80       	and    $0x80000000,%eax
427f4f:	05 00 80 ff 7f       	add    $0x7fff8000,%eax
427f54:	83 65 c4 00          	andl   $0x0,-0x3c(%ebp)
427f58:	89 45 cc             	mov    %eax,-0x34(%ebp)
427f5b:	83 7d ac 00          	cmpl   $0x0,-0x54(%ebp)
427f5f:	0f 85 3c fd ff ff    	jne    0x427ca1
427f65:	8b 45 cc             	mov    -0x34(%ebp),%eax
427f68:	0f b7 4d c4          	movzwl -0x3c(%ebp),%ecx
427f6c:	8b 75 c6             	mov    -0x3a(%ebp),%esi
427f6f:	8b 55 ca             	mov    -0x36(%ebp),%edx
427f72:	c1 e8 10             	shr    $0x10,%eax
427f75:	eb 2f                	jmp    0x427fa6
427f77:	c7 45 94 04 00 00 00 	movl   $0x4,-0x6c(%ebp)
427f7e:	eb 1e                	jmp    0x427f9e
427f80:	33 f6                	xor    %esi,%esi
427f82:	b8 ff 7f 00 00       	mov    $0x7fff,%eax
427f87:	ba 00 00 00 80       	mov    $0x80000000,%edx
427f8c:	33 c9                	xor    %ecx,%ecx
427f8e:	c7 45 94 02 00 00 00 	movl   $0x2,-0x6c(%ebp)
427f95:	eb 0f                	jmp    0x427fa6
427f97:	c7 45 94 01 00 00 00 	movl   $0x1,-0x6c(%ebp)
427f9e:	33 c9                	xor    %ecx,%ecx
427fa0:	33 c0                	xor    %eax,%eax
427fa2:	33 d2                	xor    %edx,%edx
427fa4:	33 f6                	xor    %esi,%esi
427fa6:	8b 7d 88             	mov    -0x78(%ebp),%edi
427fa9:	0b 45 8c             	or     -0x74(%ebp),%eax
427fac:	66 89 0f             	mov    %cx,(%edi)
427faf:	66 89 47 0a          	mov    %ax,0xa(%edi)
427fb3:	8b 45 94             	mov    -0x6c(%ebp),%eax
427fb6:	89 77 02             	mov    %esi,0x2(%edi)
427fb9:	89 57 06             	mov    %edx,0x6(%edi)
427fbc:	8b 4d fc             	mov    -0x4(%ebp),%ecx
427fbf:	5f                   	pop    %edi
427fc0:	5e                   	pop    %esi
427fc1:	33 cd                	xor    %ebp,%ecx
427fc3:	5b                   	pop    %ebx
427fc4:	e8 05 62 ff ff       	call   0x41e1ce
427fc9:	c9                   	leave
427fca:	c3                   	ret
427fcb:	90                   	nop
427fcc:	9e                   	sahf
427fcd:	79 42                	jns    0x428011
427fcf:	00 f2                	add    %dh,%dl
427fd1:	79 42                	jns    0x428015
427fd3:	00 48 7a             	add    %cl,0x7a(%eax)
427fd6:	42                   	inc    %edx
427fd7:	00 7b 7a             	add    %bh,0x7a(%ebx)
427fda:	42                   	inc    %edx
427fdb:	00 c0                	add    %al,%al
427fdd:	7a 42                	jp     0x428021
427fdf:	00 f8                	add    %bh,%al
427fe1:	7a 42                	jp     0x428025
427fe3:	00 0c 7b             	add    %cl,(%ebx,%edi,2)
427fe6:	42                   	inc    %edx
427fe7:	00 67 7b             	add    %ah,0x7b(%edi)
427fea:	42                   	inc    %edx
427feb:	00 52 7b             	add    %dl,0x7b(%edx)
427fee:	42                   	inc    %edx
427fef:	00 d1                	add    %dl,%cl
427ff1:	7b 42                	jnp    0x428035
427ff3:	00 c6                	add    %al,%dh
427ff5:	7b 42                	jnp    0x428039
427ff7:	00 75 7b             	add    %dh,0x7b(%ebp)
427ffa:	42                   	inc    %edx
427ffb:	00 8b ff 55 8b ec    	add    %cl,-0x1374aa01(%ebx)
428001:	83 ec 74             	sub    $0x74,%esp
428004:	a1 98 f2 42 00       	mov    0x42f298,%eax
428009:	33 c5                	xor    %ebp,%eax
42800b:	89 45 fc             	mov    %eax,-0x4(%ebp)
42800e:	53                   	push   %ebx
42800f:	8b 5d 1c             	mov    0x1c(%ebp),%ebx
428012:	56                   	push   %esi
428013:	57                   	push   %edi
428014:	8d 75 08             	lea    0x8(%ebp),%esi
428017:	8d 7d f0             	lea    -0x10(%ebp),%edi
42801a:	a5                   	movsl  %ds:(%esi),%es:(%edi)
42801b:	a5                   	movsl  %ds:(%esi),%es:(%edi)
42801c:	66 a5                	movsw  %ds:(%esi),%es:(%edi)
42801e:	8b 55 f8             	mov    -0x8(%ebp),%edx
428021:	8b ca                	mov    %edx,%ecx
428023:	b8 00 80 00 00       	mov    $0x8000,%eax
428028:	23 c8                	and    %eax,%ecx
42802a:	81 e2 ff 7f 00 00    	and    $0x7fff,%edx
428030:	89 5d a0             	mov    %ebx,-0x60(%ebp)
428033:	c6 45 d0 cc          	movb   $0xcc,-0x30(%ebp)
428037:	c6 45 d1 cc          	movb   $0xcc,-0x2f(%ebp)
42803b:	c6 45 d2 cc          	movb   $0xcc,-0x2e(%ebp)
42803f:	c6 45 d3 cc          	movb   $0xcc,-0x2d(%ebp)
428043:	c6 45 d4 cc          	movb   $0xcc,-0x2c(%ebp)
428047:	c6 45 d5 cc          	movb   $0xcc,-0x2b(%ebp)
42804b:	c6 45 d6 cc          	movb   $0xcc,-0x2a(%ebp)
42804f:	c6 45 d7 cc          	movb   $0xcc,-0x29(%ebp)
428053:	c6 45 d8 cc          	movb   $0xcc,-0x28(%ebp)
428057:	c6 45 d9 cc          	movb   $0xcc,-0x27(%ebp)
42805b:	c6 45 da fb          	movb   $0xfb,-0x26(%ebp)
42805f:	c6 45 db 3f          	movb   $0x3f,-0x25(%ebp)
428063:	c7 45 8c 01 00 00 00 	movl   $0x1,-0x74(%ebp)
42806a:	89 4d 90             	mov    %ecx,-0x70(%ebp)
42806d:	66 85 c9             	test   %cx,%cx
428070:	74 06                	je     0x428078
428072:	c6 43 02 2d          	movb   $0x2d,0x2(%ebx)
428076:	eb 04                	jmp    0x42807c
428078:	c6 43 02 20          	movb   $0x20,0x2(%ebx)
42807c:	8b 75 f4             	mov    -0xc(%ebp),%esi
42807f:	8b 7d f0             	mov    -0x10(%ebp),%edi