424d41:	8b 03                	mov    (%ebx),%eax
424d43:	0b 43 04             	or     0x4(%ebx),%eax
424d46:	75 1b                	jne    0x424d63
424d48:	6a 0b                	push   $0xb
424d4a:	e8 61 22 fe ff       	call   0x406fb0
424d4f:	8b 55 08             	mov    0x8(%ebp),%edx
424d52:	89 02                	mov    %eax,(%edx)
424d54:	6a 0c                	push   $0xc
424d56:	e8 55 22 fe ff       	call   0x406fb0
424d5b:	8b 55 08             	mov    0x8(%ebp),%edx
424d5e:	89 42 04             	mov    %eax,0x4(%edx)
424d61:	eb 0d                	jmp    0x424d70
424d63:	8b 45 08             	mov    0x8(%ebp),%eax
424d66:	8b 13                	mov    (%ebx),%edx
424d68:	89 10                	mov    %edx,(%eax)
424d6a:	8b 53 04             	mov    0x4(%ebx),%edx
424d6d:	89 50 04             	mov    %edx,0x4(%eax)
424d70:	6a 00                	push   $0x0
424d72:	e8 41 21 fe ff       	call   0x406eb8
424d77:	89 45 d8             	mov    %eax,-0x28(%ebp)
424d7a:	83 7d d8 00          	cmpl   $0x0,-0x28(%ebp)
424d7e:	75 05                	jne    0x424d85
424d80:	e8 2f f4 ff ff       	call   0x4241b4
424d85:	33 d2                	xor    %edx,%edx
424d87:	55                   	push   %ebp
424d88:	68 e5 4d 42 00       	push   $0x424de5
424d8d:	64 ff 32             	push   %fs:(%edx)
424d90:	64 89 22             	mov    %esp,%fs:(%edx)
424d93:	6a 0e                	push   $0xe
424d95:	8b 45 d8             	mov    -0x28(%ebp),%eax
424d98:	50                   	push   %eax
424d99:	e8 3a 1e fe ff       	call   0x406bd8
424d9e:	8b d8                	mov    %eax,%ebx
424da0:	6a 0c                	push   $0xc
424da2:	8b 45 d8             	mov    -0x28(%ebp),%eax
424da5:	50                   	push   %eax
424da6:	e8 2d 1e fe ff       	call   0x406bd8
424dab:	66 0f af d8          	imul   %ax,%bx
424daf:	8b c3                	mov    %ebx,%eax
424db1:	66 83 f8 08          	cmp    $0x8,%ax
424db5:	76 09                	jbe    0x424dc0
424db7:	c7 45 e4 ff ff ff 7f 	movl   $0x7fffffff,-0x1c(%ebp)
424dbe:	eb 0c                	jmp    0x424dcc
424dc0:	8b c8                	mov    %eax,%ecx
424dc2:	b8 01 00 00 00       	mov    $0x1,%eax
424dc7:	d3 e0                	shl    %cl,%eax
424dc9:	89 45 e4             	mov    %eax,-0x1c(%ebp)
424dcc:	33 c0                	xor    %eax,%eax
424dce:	5a                   	pop    %edx
424dcf:	59                   	pop    %ecx
424dd0:	59                   	pop    %ecx
424dd1:	64 89 10             	mov    %edx,%fs:(%eax)
424dd4:	68 ec 4d 42 00       	push   $0x424dec
424dd9:	8b 45 d8             	mov    -0x28(%ebp),%eax
424ddc:	50                   	push   %eax
424ddd:	6a 00                	push   $0x0
424ddf:	e8 44 23 fe ff       	call   0x407128
424de4:	c3                   	ret
424de5:	e9 9e f2 fd ff       	jmp    0x404088
424dea:	eb ed                	jmp    0x424dd9
424dec:	33 c0                	xor    %eax,%eax
424dee:	89 45 dc             	mov    %eax,-0x24(%ebp)
424df1:	8b 45 f0             	mov    -0x10(%ebp),%eax
424df4:	0f b7 40 02          	movzwl 0x2(%eax),%eax
424df8:	e8 63 fe ff ff       	call   0x424c60
424dfd:	89 45 e0             	mov    %eax,-0x20(%ebp)
424e00:	8b 7d f4             	mov    -0xc(%ebp),%edi
424e03:	4f                   	dec    %edi
424e04:	85 ff                	test   %edi,%edi
424e06:	7e 4c                	jle    0x424e54
424e08:	be 01 00 00 00       	mov    $0x1,%esi
424e0d:	8b c6                	mov    %esi,%eax
424e0f:	03 c0                	add    %eax,%eax
424e11:	8b 55 f0             	mov    -0x10(%ebp),%edx
424e14:	0f b7 44 c2 02       	movzwl 0x2(%edx,%eax,8),%eax
424e19:	e8 42 fe ff ff       	call   0x424c60
424e1e:	8b d8                	mov    %eax,%ebx
424e20:	3b 5d e4             	cmp    -0x1c(%ebp),%ebx
424e23:	7f 2b                	jg     0x424e50
424e25:	3b 5d e0             	cmp    -0x20(%ebp),%ebx
424e28:	7c 26                	jl     0x424e50
424e2a:	55                   	push   %ebp
424e2b:	8b c6                	mov    %esi,%eax
424e2d:	03 c0                	add    %eax,%eax
424e2f:	8b 55 f0             	mov    -0x10(%ebp),%edx
424e32:	8d 14 c2             	lea    (%edx,%eax,8),%edx
424e35:	8b 45 dc             	mov    -0x24(%ebp),%eax
424e38:	03 c0                	add    %eax,%eax
424e3a:	8b 4d f0             	mov    -0x10(%ebp),%ecx
424e3d:	8d 04 c1             	lea    (%ecx,%eax,8),%eax
424e40:	e8 27 fe ff ff       	call   0x424c6c
424e45:	59                   	pop    %ecx
424e46:	84 c0                	test   %al,%al
424e48:	74 06                	je     0x424e50
424e4a:	89 75 dc             	mov    %esi,-0x24(%ebp)
424e4d:	89 5d e0             	mov    %ebx,-0x20(%ebp)
424e50:	46                   	inc    %esi
424e51:	4f                   	dec    %edi
424e52:	75 b9                	jne    0x424e0d
424e54:	8b 45 dc             	mov    -0x24(%ebp),%eax
424e57:	03 c0                	add    %eax,%eax
424e59:	8b 55 f0             	mov    -0x10(%ebp),%edx
424e5c:	8d 04 c2             	lea    (%edx,%eax,8),%eax
424e5f:	89 45 c0             	mov    %eax,-0x40(%ebp)
424e62:	8b 45 c0             	mov    -0x40(%ebp),%eax
424e65:	0f b6 00             	movzbl (%eax),%eax
424e68:	8b 55 08             	mov    0x8(%ebp),%edx
424e6b:	89 02                	mov    %eax,(%edx)
424e6d:	8b 45 c0             	mov    -0x40(%ebp),%eax
424e70:	0f b6 40 01          	movzbl 0x1(%eax),%eax
424e74:	8b 55 08             	mov    0x8(%ebp),%edx
424e77:	89 42 04             	mov    %eax,0x4(%edx)
424e7a:	8b 45 c0             	mov    -0x40(%ebp),%eax
424e7d:	8b 40 08             	mov    0x8(%eax),%eax
424e80:	e8 4f de fd ff       	call   0x402cd4
424e85:	89 45 d4             	mov    %eax,-0x2c(%ebp)
424e88:	33 c0                	xor    %eax,%eax
424e8a:	55                   	push   %ebp
424e8b:	68 d5 4f 42 00       	push   $0x424fd5
424e90:	64 ff 30             	push   %fs:(%eax)
424e93:	64 89 20             	mov    %esp,%fs:(%eax)
424e96:	8b 45 c0             	mov    -0x40(%ebp),%eax
424e99:	8b 50 0c             	mov    0xc(%eax),%edx
424e9c:	8b 45 ec             	mov    -0x14(%ebp),%eax
424e9f:	03 45 10             	add    0x10(%ebp),%eax
424ea2:	2b d0                	sub    %eax,%edx
424ea4:	66 b9 01 00          	mov    $0x1,%cx
424ea8:	8b 45 fc             	mov    -0x4(%ebp),%eax
424eab:	8b 18                	mov    (%eax),%ebx
424ead:	ff 53 14             	call   *0x14(%ebx)
424eb0:	8b 45 c0             	mov    -0x40(%ebp),%eax
424eb3:	8b 48 08             	mov    0x8(%eax),%ecx
424eb6:	8b 5d d4             	mov    -0x2c(%ebp),%ebx
424eb9:	8b d3                	mov    %ebx,%edx
424ebb:	8b 45 fc             	mov    -0x4(%ebp),%eax
424ebe:	8b 30                	mov    (%eax),%esi
424ec0:	ff 56 0c             	call   *0xc(%esi)
424ec3:	8b 45 08             	mov    0x8(%ebp),%eax
424ec6:	50                   	push   %eax
424ec7:	8d 4d c8             	lea    -0x38(%ebp),%ecx
424eca:	8d 55 cc             	lea    -0x34(%ebp),%edx
424ecd:	8b c3                	mov    %ebx,%eax
424ecf:	e8 cc fb ff ff       	call   0x424aa0
424ed4:	8d 45 90             	lea    -0x70(%ebp),%eax
424ed7:	50                   	push   %eax
424ed8:	6a 18                	push   $0x18
424eda:	8b 45 c8             	mov    -0x38(%ebp),%eax
424edd:	50                   	push   %eax
424ede:	e8 1d 1d fe ff       	call   0x406c00
424ee3:	8d 45 a8             	lea    -0x58(%ebp),%eax
424ee6:	50                   	push   %eax
424ee7:	6a 18                	push   $0x18
424ee9:	8b 45 cc             	mov    -0x34(%ebp),%eax
424eec:	50                   	push   %eax
424eed:	e8 0e 1d fe ff       	call   0x406c00
424ef2:	8b 5d 9c             	mov    -0x64(%ebp),%ebx
424ef5:	0f af 5d 98          	imul   -0x68(%ebp),%ebx
424ef9:	0f b7 45 a0          	movzwl -0x60(%ebp),%eax
424efd:	0f af d8             	imul   %eax,%ebx
424f00:	8b 45 b4             	mov    -0x4c(%ebp),%eax
424f03:	f7 6d b0             	imull  -0x50(%ebp)
424f06:	0f b7 55 b8          	movzwl -0x48(%ebp),%edx
424f0a:	f7 ea                	imul   %edx
424f0c:	89 45 c4             	mov    %eax,-0x3c(%ebp)
424f0f:	8b 45 c4             	mov    -0x3c(%ebp),%eax
424f12:	03 c3                	add    %ebx,%eax
424f14:	89 45 e8             	mov    %eax,-0x18(%ebp)
424f17:	8b 45 e8             	mov    -0x18(%ebp),%eax
424f1a:	e8 b5 dd fd ff       	call   0x402cd4
424f1f:	89 45 d0             	mov    %eax,-0x30(%ebp)
424f22:	33 c0                	xor    %eax,%eax
424f24:	55                   	push   %ebp
424f25:	68 b2 4f 42 00       	push   $0x424fb2
424f2a:	64 ff 30             	push   %fs:(%eax)
424f2d:	64 89 20             	mov    %esp,%fs:(%eax)
424f30:	8b 7d d0             	mov    -0x30(%ebp),%edi
424f33:	8b 75 d0             	mov    -0x30(%ebp),%esi
424f36:	03 f3                	add    %ebx,%esi
424f38:	57                   	push   %edi
424f39:	53                   	push   %ebx
424f3a:	8b 45 c8             	mov    -0x38(%ebp),%eax
424f3d:	50                   	push   %eax
424f3e:	e8 5d 1c fe ff       	call   0x406ba0
424f43:	56                   	push   %esi
424f44:	8b 45 c4             	mov    -0x3c(%ebp),%eax
424f47:	50                   	push   %eax
424f48:	8b 45 cc             	mov    -0x34(%ebp),%eax
424f4b:	50                   	push   %eax
424f4c:	e8 4f 1c fe ff       	call   0x406ba0
424f51:	8b 45 cc             	mov    -0x34(%ebp),%eax
424f54:	50                   	push   %eax
424f55:	e8 36 1c fe ff       	call   0x406b90
424f5a:	8b 45 c8             	mov    -0x38(%ebp),%eax
424f5d:	50                   	push   %eax
424f5e:	e8 2d 1c fe ff       	call   0x406b90
424f63:	56                   	push   %esi
424f64:	57                   	push   %edi
424f65:	0f b6 45 ba          	movzbl -0x46(%ebp),%eax
424f69:	50                   	push   %eax
424f6a:	0f b6 45 b8          	movzbl -0x48(%ebp),%eax
424f6e:	50                   	push   %eax
424f6f:	8b 45 08             	mov    0x8(%ebp),%eax
424f72:	8b 40 04             	mov    0x4(%eax),%eax
424f75:	50                   	push   %eax
424f76:	8b 45 08             	mov    0x8(%ebp),%eax
424f79:	8b 00                	mov    (%eax),%eax
424f7b:	50                   	push   %eax
424f7c:	a1 f8 07 47 00       	mov    0x4707f8,%eax
424f81:	50                   	push   %eax
424f82:	e8 01 1e fe ff       	call   0x406d88
424f87:	8b 55 f8             	mov    -0x8(%ebp),%edx
424f8a:	89 02                	mov    %eax,(%edx)
424f8c:	8b 45 f8             	mov    -0x8(%ebp),%eax
424f8f:	83 38 00             	cmpl   $0x0,(%eax)
424f92:	75 05                	jne    0x424f99
424f94:	e8 6f f2 ff ff       	call   0x424208
424f99:	33 c0                	xor    %eax,%eax
424f9b:	5a                   	pop    %edx
424f9c:	59                   	pop    %ecx
424f9d:	59                   	pop    %ecx
424f9e:	64 89 10             	mov    %edx,%fs:(%eax)
424fa1:	68 b9 4f 42 00       	push   $0x424fb9
424fa6:	8b 55 e8             	mov    -0x18(%ebp),%edx
424fa9:	8b 45 d0             	mov    -0x30(%ebp),%eax
424fac:	e8 57 dd fd ff       	call   0x402d08
424fb1:	c3                   	ret
424fb2:	e9 d1 f0 fd ff       	jmp    0x404088
424fb7:	eb ed                	jmp    0x424fa6
424fb9:	33 c0                	xor    %eax,%eax
424fbb:	5a                   	pop    %edx
424fbc:	59                   	pop    %ecx
424fbd:	59                   	pop    %ecx
424fbe:	64 89 10             	mov    %edx,%fs:(%eax)
424fc1:	68 dc 4f 42 00       	push   $0x424fdc
424fc6:	8b 45 c0             	mov    -0x40(%ebp),%eax
424fc9:	8b 50 08             	mov    0x8(%eax),%edx
424fcc:	8b 45 d4             	mov    -0x2c(%ebp),%eax
424fcf:	e8 34 dd fd ff       	call   0x402d08
424fd4:	c3                   	ret
424fd5:	e9 ae f0 fd ff       	jmp    0x404088
424fda:	eb ea                	jmp    0x424fc6
424fdc:	33 c0                	xor    %eax,%eax
424fde:	5a                   	pop    %edx
424fdf:	59                   	pop    %ecx
424fe0:	59                   	pop    %ecx
424fe1:	64 89 10             	mov    %edx,%fs:(%eax)
424fe4:	68 fc 4f 42 00       	push   $0x424ffc
424fe9:	8b 55 ec             	mov    -0x14(%ebp),%edx
424fec:	8b 45 f0             	mov    -0x10(%ebp),%eax
424fef:	e8 14 dd fd ff       	call   0x402d08
424ff4:	c3                   	ret
424ff5:	e9 8e f0 fd ff       	jmp    0x404088
424ffa:	eb ed                	jmp    0x424fe9
424ffc:	5f                   	pop    %edi
424ffd:	5e                   	pop    %esi
424ffe:	5b                   	pop    %ebx
424fff:	8b e5                	mov    %ebp,%esp
425001:	5d                   	pop    %ebp
425002:	c2 0c 00             	ret    $0xc
425005:	8d 40 00             	lea    0x0(%eax),%eax
425008:	33 c9                	xor    %ecx,%ecx
42500a:	8b d0                	mov    %eax,%edx
42500c:	83 c0 14             	add    $0x14,%eax
42500f:	eb 06                	jmp    0x425017
425011:	66 33 0a             	xor    (%edx),%cx
425014:	83 c2 02             	add    $0x2,%edx
425017:	3b d0                	cmp    %eax,%edx
425019:	7c f6                	jl     0x425011
42501b:	8b c1                	mov    %ecx,%eax
42501d:	c3                   	ret
42501e:	8b c0                	mov    %eax,%eax
425020:	53                   	push   %ebx
425021:	56                   	push   %esi
425022:	57                   	push   %edi
425023:	83 c4 ac             	add    $0xffffffac,%esp
425026:	8b f1                	mov    %ecx,%esi
425028:	8b da                	mov    %edx,%ebx
42502a:	33 d2                	xor    %edx,%edx
42502c:	89 54 24 18          	mov    %edx,0x18(%esp)
425030:	54                   	push   %esp
425031:	6a 54                	push   $0x54
425033:	50                   	push   %eax
425034:	e8 c7 1b fe ff       	call   0x406c00
425039:	85 c0                	test   %eax,%eax
42503b:	75 07                	jne    0x425044
42503d:	e8 4e f1 ff ff       	call   0x424190
425042:	eb 3f                	jmp    0x425083
425044:	83 f8 40             	cmp    $0x40,%eax
425047:	7c 18                	jl     0x425061
425049:	83 7c 24 18 28       	cmpl   $0x28,0x18(%esp)
42504e:	72 11                	jb     0x425061
425050:	56                   	push   %esi
425051:	8b fb                	mov    %ebx,%edi
425053:	8d 74 24 1c          	lea    0x1c(%esp),%esi
425057:	b9 0a 00 00 00       	mov    $0xa,%ecx
42505c:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
42505e:	5e                   	pop    %esi
42505f:	eb 22                	jmp    0x425083
425061:	8b c3                	mov    %ebx,%eax
425063:	33 c9                	xor    %ecx,%ecx
425065:	ba 28 00 00 00       	mov    $0x28,%edx
42506a:	e8 c1 e1 fd ff       	call   0x403230
42506f:	c7 03 28 00 00 00    	movl   $0x28,(%ebx)
425075:	8b 44 24 04          	mov    0x4(%esp),%eax
425079:	89 43 04             	mov    %eax,0x4(%ebx)
42507c:	8b 44 24 08          	mov    0x8(%esp),%eax
425080:	89 43 08             	mov    %eax,0x8(%ebx)
425083:	8b c6                	mov    %esi,%eax
425085:	83 e8 02             	sub    $0x2,%eax
425088:	74 0f                	je     0x425099
42508a:	48                   	dec    %eax
42508b:	83 e8 0e             	sub    $0xe,%eax
42508e:	72 11                	jb     0x4250a1
425090:	2d f0 00 00 00       	sub    $0xf0,%eax
425095:	72 15                	jb     0x4250ac
425097:	eb 1e                	jmp    0x4250b7
425099:	66 c7 43 0e 01 00    	movw   $0x1,0xe(%ebx)
42509f:	eb 24                	jmp    0x4250c5
4250a1:	66 c7 43 0e 04 00    	movw   $0x4,0xe(%ebx)
4250a7:	89 73 20             	mov    %esi,0x20(%ebx)
4250aa:	eb 19                	jmp    0x4250c5
4250ac:	66 c7 43 0e 08 00    	movw   $0x8,0xe(%ebx)
4250b2:	89 73 20             	mov    %esi,0x20(%ebx)
4250b5:	eb 0e                	jmp    0x4250c5
4250b7:	0f b7 44 24 12       	movzwl 0x12(%esp),%eax
4250bc:	66 f7 6c 24 10       	imulw  0x10(%esp)
4250c1:	66 89 43 0e          	mov    %ax,0xe(%ebx)
4250c5:	66 c7 43 0c 01 00    	movw   $0x1,0xc(%ebx)
4250cb:	8b 43 20             	mov    0x20(%ebx),%eax
4250ce:	3b 43 24             	cmp    0x24(%ebx),%eax
4250d1:	73 03                	jae    0x4250d6
4250d3:	89 43 24             	mov    %eax,0x24(%ebx)
4250d6:	83 7b 14 00          	cmpl   $0x0,0x14(%ebx)
4250da:	75 21                	jne    0x4250fd
4250dc:	0f b7 53 0e          	movzwl 0xe(%ebx),%edx
4250e0:	8b 43 04             	mov    0x4(%ebx),%eax
4250e3:	b9 20 00 00 00       	mov    $0x20,%ecx
4250e8:	e8 53 f3 ff ff       	call   0x424440
4250ed:	8b c8                	mov    %eax,%ecx
4250ef:	8b 43 08             	mov    0x8(%ebx),%eax
4250f2:	99                   	cltd
4250f3:	33 c2                	xor    %edx,%eax
4250f5:	2b c2                	sub    %edx,%eax
4250f7:	0f af c8             	imul   %eax,%ecx
4250fa:	89 4b 14             	mov    %ecx,0x14(%ebx)
4250fd:	83 c4 54             	add    $0x54,%esp
425100:	5f                   	pop    %edi
425101:	5e                   	pop    %esi
425102:	5b                   	pop    %ebx
425103:	c3                   	ret