426e00:	57                   	push   %edi
426e01:	57                   	push   %edi
426e02:	57                   	push   %edi
426e03:	e8 eb 8d ff ff       	call   0x41fbf3
426e08:	83 c4 14             	add    $0x14,%esp
426e0b:	eb c9                	jmp    0x426dd6
426e0d:	8b c8                	mov    %eax,%ecx
426e0f:	c1 f9 05             	sar    $0x5,%ecx
426e12:	8d 1c 8d a0 f7 44 00 	lea    0x44f7a0(,%ecx,4),%ebx
426e19:	8b f0                	mov    %eax,%esi
426e1b:	83 e6 1f             	and    $0x1f,%esi
426e1e:	c1 e6 06             	shl    $0x6,%esi
426e21:	8b 0b                	mov    (%ebx),%ecx
426e23:	0f be 4c 31 04       	movsbl 0x4(%ecx,%esi,1),%ecx
426e28:	83 e1 01             	and    $0x1,%ecx
426e2b:	74 bf                	je     0x426dec
426e2d:	50                   	push   %eax
426e2e:	e8 13 f6 ff ff       	call   0x426446
426e33:	59                   	pop    %ecx
426e34:	89 7d fc             	mov    %edi,-0x4(%ebp)
426e37:	8b 03                	mov    (%ebx),%eax
426e39:	f6 44 30 04 01       	testb  $0x1,0x4(%eax,%esi,1)
426e3e:	74 0e                	je     0x426e4e
426e40:	ff 75 08             	push   0x8(%ebp)
426e43:	e8 cb fe ff ff       	call   0x426d13
426e48:	59                   	pop    %ecx
426e49:	89 45 e4             	mov    %eax,-0x1c(%ebp)
426e4c:	eb 0f                	jmp    0x426e5d
426e4e:	e8 4b 7a ff ff       	call   0x41e89e
426e53:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
426e59:	83 4d e4 ff          	orl    $0xffffffff,-0x1c(%ebp)
426e5d:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
426e64:	e8 09 00 00 00       	call   0x426e72
426e69:	8b 45 e4             	mov    -0x1c(%ebp),%eax
426e6c:	e8 60 87 ff ff       	call   0x41f5d1
426e71:	c3                   	ret
426e72:	ff 75 08             	push   0x8(%ebp)
426e75:	e8 6c f6 ff ff       	call   0x4264e6
426e7a:	59                   	pop    %ecx
426e7b:	c3                   	ret
426e7c:	8b ff                	mov    %edi,%edi
426e7e:	55                   	push   %ebp
426e7f:	8b ec                	mov    %esp,%ebp
426e81:	83 ec 2c             	sub    $0x2c,%esp
426e84:	8b 45 08             	mov    0x8(%ebp),%eax
426e87:	0f b7 48 0a          	movzwl 0xa(%eax),%ecx
426e8b:	53                   	push   %ebx
426e8c:	8b d9                	mov    %ecx,%ebx
426e8e:	81 e1 00 80 00 00    	and    $0x8000,%ecx
426e94:	89 4d ec             	mov    %ecx,-0x14(%ebp)
426e97:	8b 48 06             	mov    0x6(%eax),%ecx
426e9a:	89 4d e0             	mov    %ecx,-0x20(%ebp)
426e9d:	8b 48 02             	mov    0x2(%eax),%ecx
426ea0:	0f b7 00             	movzwl (%eax),%eax
426ea3:	81 e3 ff 7f 00 00    	and    $0x7fff,%ebx
426ea9:	81 eb ff 3f 00 00    	sub    $0x3fff,%ebx
426eaf:	c1 e0 10             	shl    $0x10,%eax
426eb2:	57                   	push   %edi
426eb3:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
426eb6:	89 45 e8             	mov    %eax,-0x18(%ebp)
426eb9:	81 fb 01 c0 ff ff    	cmp    $0xffffc001,%ebx
426ebf:	75 27                	jne    0x426ee8
426ec1:	33 db                	xor    %ebx,%ebx
426ec3:	33 c0                	xor    %eax,%eax
426ec5:	39 5c 85 e0          	cmp    %ebx,-0x20(%ebp,%eax,4)
426ec9:	75 0d                	jne    0x426ed8
426ecb:	40                   	inc    %eax
426ecc:	83 f8 03             	cmp    $0x3,%eax
426ecf:	7c f4                	jl     0x426ec5
426ed1:	33 c0                	xor    %eax,%eax
426ed3:	e9 a5 04 00 00       	jmp    0x42737d
426ed8:	33 c0                	xor    %eax,%eax
426eda:	8d 7d e0             	lea    -0x20(%ebp),%edi
426edd:	ab                   	stos   %eax,%es:(%edi)
426ede:	ab                   	stos   %eax,%es:(%edi)
426edf:	6a 02                	push   $0x2
426ee1:	ab                   	stos   %eax,%es:(%edi)
426ee2:	58                   	pop    %eax
426ee3:	e9 95 04 00 00       	jmp    0x42737d
426ee8:	83 65 08 00          	andl   $0x0,0x8(%ebp)
426eec:	56                   	push   %esi
426eed:	8d 75 e0             	lea    -0x20(%ebp),%esi
426ef0:	8d 7d d4             	lea    -0x2c(%ebp),%edi
426ef3:	a5                   	movsl  %ds:(%esi),%es:(%edi)
426ef4:	a5                   	movsl  %ds:(%esi),%es:(%edi)
426ef5:	a5                   	movsl  %ds:(%esi),%es:(%edi)
426ef6:	8b 35 00 02 43 00    	mov    0x430200,%esi
426efc:	4e                   	dec    %esi
426efd:	8d 4e 01             	lea    0x1(%esi),%ecx
426f00:	8b c1                	mov    %ecx,%eax
426f02:	99                   	cltd
426f03:	83 e2 1f             	and    $0x1f,%edx
426f06:	03 c2                	add    %edx,%eax
426f08:	c1 f8 05             	sar    $0x5,%eax
426f0b:	8b d1                	mov    %ecx,%edx
426f0d:	81 e2 1f 00 00 80    	and    $0x8000001f,%edx
426f13:	89 5d f0             	mov    %ebx,-0x10(%ebp)
426f16:	89 45 f4             	mov    %eax,-0xc(%ebp)
426f19:	79 05                	jns    0x426f20
426f1b:	4a                   	dec    %edx
426f1c:	83 ca e0             	or     $0xffffffe0,%edx
426f1f:	42                   	inc    %edx
426f20:	8d 7c 85 e0          	lea    -0x20(%ebp,%eax,4),%edi
426f24:	6a 1f                	push   $0x1f
426f26:	33 c0                	xor    %eax,%eax
426f28:	59                   	pop    %ecx
426f29:	2b ca                	sub    %edx,%ecx
426f2b:	40                   	inc    %eax
426f2c:	d3 e0                	shl    %cl,%eax
426f2e:	89 4d f8             	mov    %ecx,-0x8(%ebp)
426f31:	85 07                	test   %eax,(%edi)
426f33:	0f 84 8d 00 00 00    	je     0x426fc6
426f39:	8b 45 f4             	mov    -0xc(%ebp),%eax
426f3c:	83 ca ff             	or     $0xffffffff,%edx
426f3f:	d3 e2                	shl    %cl,%edx
426f41:	f7 d2                	not    %edx
426f43:	85 54 85 e0          	test   %edx,-0x20(%ebp,%eax,4)
426f47:	eb 05                	jmp    0x426f4e
426f49:	83 7c 85 e0 00       	cmpl   $0x0,-0x20(%ebp,%eax,4)
426f4e:	75 08                	jne    0x426f58
426f50:	40                   	inc    %eax
426f51:	83 f8 03             	cmp    $0x3,%eax
426f54:	7c f3                	jl     0x426f49
426f56:	eb 6e                	jmp    0x426fc6
426f58:	8b c6                	mov    %esi,%eax
426f5a:	99                   	cltd
426f5b:	6a 1f                	push   $0x1f
426f5d:	59                   	pop    %ecx
426f5e:	23 d1                	and    %ecx,%edx
426f60:	03 c2                	add    %edx,%eax
426f62:	c1 f8 05             	sar    $0x5,%eax
426f65:	81 e6 1f 00 00 80    	and    $0x8000001f,%esi
426f6b:	79 05                	jns    0x426f72
426f6d:	4e                   	dec    %esi
426f6e:	83 ce e0             	or     $0xffffffe0,%esi
426f71:	46                   	inc    %esi
426f72:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
426f76:	2b ce                	sub    %esi,%ecx
426f78:	33 d2                	xor    %edx,%edx
426f7a:	42                   	inc    %edx
426f7b:	d3 e2                	shl    %cl,%edx
426f7d:	8d 4c 85 e0          	lea    -0x20(%ebp,%eax,4),%ecx
426f81:	8b 31                	mov    (%ecx),%esi
426f83:	03 f2                	add    %edx,%esi
426f85:	89 75 08             	mov    %esi,0x8(%ebp)
426f88:	8b 31                	mov    (%ecx),%esi
426f8a:	39 75 08             	cmp    %esi,0x8(%ebp)
426f8d:	72 22                	jb     0x426fb1
426f8f:	39 55 08             	cmp    %edx,0x8(%ebp)
426f92:	eb 1b                	jmp    0x426faf
426f94:	85 c9                	test   %ecx,%ecx
426f96:	74 2b                	je     0x426fc3
426f98:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
426f9c:	8d 4c 85 e0          	lea    -0x20(%ebp,%eax,4),%ecx
426fa0:	8b 11                	mov    (%ecx),%edx
426fa2:	8d 72 01             	lea    0x1(%edx),%esi
426fa5:	89 75 08             	mov    %esi,0x8(%ebp)
426fa8:	3b f2                	cmp    %edx,%esi
426faa:	72 05                	jb     0x426fb1
426fac:	83 fe 01             	cmp    $0x1,%esi
426faf:	73 07                	jae    0x426fb8
426fb1:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
426fb8:	48                   	dec    %eax
426fb9:	8b 55 08             	mov    0x8(%ebp),%edx
426fbc:	89 11                	mov    %edx,(%ecx)
426fbe:	8b 4d fc             	mov    -0x4(%ebp),%ecx
426fc1:	79 d1                	jns    0x426f94
426fc3:	89 4d 08             	mov    %ecx,0x8(%ebp)
426fc6:	8b 4d f8             	mov    -0x8(%ebp),%ecx
426fc9:	83 c8 ff             	or     $0xffffffff,%eax
426fcc:	d3 e0                	shl    %cl,%eax
426fce:	21 07                	and    %eax,(%edi)
426fd0:	8b 45 f4             	mov    -0xc(%ebp),%eax
426fd3:	40                   	inc    %eax
426fd4:	83 f8 03             	cmp    $0x3,%eax
426fd7:	7d 0d                	jge    0x426fe6
426fd9:	6a 03                	push   $0x3
426fdb:	59                   	pop    %ecx
426fdc:	8d 7c 85 e0          	lea    -0x20(%ebp,%eax,4),%edi
426fe0:	2b c8                	sub    %eax,%ecx
426fe2:	33 c0                	xor    %eax,%eax
426fe4:	f3 ab                	rep stos %eax,%es:(%edi)
426fe6:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
426fea:	74 01                	je     0x426fed
426fec:	43                   	inc    %ebx
426fed:	a1 fc 01 43 00       	mov    0x4301fc,%eax
426ff2:	8b c8                	mov    %eax,%ecx
426ff4:	2b 0d 00 02 43 00    	sub    0x430200,%ecx
426ffa:	3b d9                	cmp    %ecx,%ebx
426ffc:	7d 0d                	jge    0x42700b
426ffe:	33 c0                	xor    %eax,%eax
427000:	8d 7d e0             	lea    -0x20(%ebp),%edi
427003:	ab                   	stos   %eax,%es:(%edi)
427004:	ab                   	stos   %eax,%es:(%edi)
427005:	ab                   	stos   %eax,%es:(%edi)
427006:	e9 0d 02 00 00       	jmp    0x427218
42700b:	3b d8                	cmp    %eax,%ebx
42700d:	0f 8f 0f 02 00 00    	jg     0x427222
427013:	2b 45 f0             	sub    -0x10(%ebp),%eax
427016:	8d 75 d4             	lea    -0x2c(%ebp),%esi
427019:	8b c8                	mov    %eax,%ecx
42701b:	8d 7d e0             	lea    -0x20(%ebp),%edi
42701e:	a5                   	movsl  %ds:(%esi),%es:(%edi)
42701f:	99                   	cltd
427020:	83 e2 1f             	and    $0x1f,%edx
427023:	03 c2                	add    %edx,%eax
427025:	a5                   	movsl  %ds:(%esi),%es:(%edi)
427026:	8b d1                	mov    %ecx,%edx
427028:	c1 f8 05             	sar    $0x5,%eax
42702b:	81 e2 1f 00 00 80    	and    $0x8000001f,%edx
427031:	a5                   	movsl  %ds:(%esi),%es:(%edi)
427032:	79 05                	jns    0x427039
427034:	4a                   	dec    %edx
427035:	83 ca e0             	or     $0xffffffe0,%edx
427038:	42                   	inc    %edx
427039:	83 65 f4 00          	andl   $0x0,-0xc(%ebp)
42703d:	83 65 08 00          	andl   $0x0,0x8(%ebp)
427041:	83 cf ff             	or     $0xffffffff,%edi
427044:	8b ca                	mov    %edx,%ecx
427046:	d3 e7                	shl    %cl,%edi
427048:	c7 45 fc 20 00 00 00 	movl   $0x20,-0x4(%ebp)
42704f:	29 55 fc             	sub    %edx,-0x4(%ebp)
427052:	f7 d7                	not    %edi
427054:	8b 5d 08             	mov    0x8(%ebp),%ebx
427057:	8d 5c 9d e0          	lea    -0x20(%ebp,%ebx,4),%ebx
42705b:	8b 33                	mov    (%ebx),%esi
42705d:	8b ce                	mov    %esi,%ecx
42705f:	23 cf                	and    %edi,%ecx
427061:	89 4d f0             	mov    %ecx,-0x10(%ebp)
427064:	8b ca                	mov    %edx,%ecx
427066:	d3 ee                	shr    %cl,%esi
427068:	8b 4d fc             	mov    -0x4(%ebp),%ecx
42706b:	0b 75 f4             	or     -0xc(%ebp),%esi
42706e:	89 33                	mov    %esi,(%ebx)
427070:	8b 75 f0             	mov    -0x10(%ebp),%esi
427073:	d3 e6                	shl    %cl,%esi
427075:	ff 45 08             	incl   0x8(%ebp)
427078:	83 7d 08 03          	cmpl   $0x3,0x8(%ebp)
42707c:	89 75 f4             	mov    %esi,-0xc(%ebp)
42707f:	7c d3                	jl     0x427054
427081:	8b f0                	mov    %eax,%esi
427083:	6a 02                	push   $0x2
427085:	c1 e6 02             	shl    $0x2,%esi
427088:	8d 4d e8             	lea    -0x18(%ebp),%ecx
42708b:	5a                   	pop    %edx
42708c:	2b ce                	sub    %esi,%ecx
42708e:	3b d0                	cmp    %eax,%edx
427090:	7c 08                	jl     0x42709a
427092:	8b 31                	mov    (%ecx),%esi
427094:	89 74 95 e0          	mov    %esi,-0x20(%ebp,%edx,4)
427098:	eb 05                	jmp    0x42709f
42709a:	83 64 95 e0 00       	andl   $0x0,-0x20(%ebp,%edx,4)
42709f:	4a                   	dec    %edx
4270a0:	83 e9 04             	sub    $0x4,%ecx
4270a3:	85 d2                	test   %edx,%edx
4270a5:	7d e7                	jge    0x42708e
4270a7:	8b 35 00 02 43 00    	mov    0x430200,%esi
4270ad:	4e                   	dec    %esi
4270ae:	8d 4e 01             	lea    0x1(%esi),%ecx
4270b1:	8b c1                	mov    %ecx,%eax
4270b3:	99                   	cltd
4270b4:	83 e2 1f             	and    $0x1f,%edx
4270b7:	03 c2                	add    %edx,%eax
4270b9:	c1 f8 05             	sar    $0x5,%eax
4270bc:	8b d1                	mov    %ecx,%edx
4270be:	81 e2 1f 00 00 80    	and    $0x8000001f,%edx
4270c4:	89 45 f4             	mov    %eax,-0xc(%ebp)
4270c7:	79 05                	jns    0x4270ce
4270c9:	4a                   	dec    %edx
4270ca:	83 ca e0             	or     $0xffffffe0,%edx
4270cd:	42                   	inc    %edx
4270ce:	6a 1f                	push   $0x1f
4270d0:	59                   	pop    %ecx
4270d1:	2b ca                	sub    %edx,%ecx
4270d3:	33 d2                	xor    %edx,%edx
4270d5:	42                   	inc    %edx
4270d6:	d3 e2                	shl    %cl,%edx
4270d8:	8d 5c 85 e0          	lea    -0x20(%ebp,%eax,4),%ebx
4270dc:	89 4d f0             	mov    %ecx,-0x10(%ebp)
4270df:	85 13                	test   %edx,(%ebx)
4270e1:	0f 84 82 00 00 00    	je     0x427169
4270e7:	83 ca ff             	or     $0xffffffff,%edx
4270ea:	d3 e2                	shl    %cl,%edx
4270ec:	f7 d2                	not    %edx
4270ee:	85 54 85 e0          	test   %edx,-0x20(%ebp,%eax,4)
4270f2:	eb 05                	jmp    0x4270f9
4270f4:	83 7c 85 e0 00       	cmpl   $0x0,-0x20(%ebp,%eax,4)
4270f9:	75 08                	jne    0x427103
4270fb:	40                   	inc    %eax
4270fc:	83 f8 03             	cmp    $0x3,%eax
4270ff:	7c f3                	jl     0x4270f4
427101:	eb 66                	jmp    0x427169
427103:	8b c6                	mov    %esi,%eax
427105:	99                   	cltd
427106:	6a 1f                	push   $0x1f
427108:	59                   	pop    %ecx
427109:	23 d1                	and    %ecx,%edx
42710b:	03 c2                	add    %edx,%eax
42710d:	c1 f8 05             	sar    $0x5,%eax
427110:	81 e6 1f 00 00 80    	and    $0x8000001f,%esi
427116:	79 05                	jns    0x42711d
427118:	4e                   	dec    %esi
427119:	83 ce e0             	or     $0xffffffe0,%esi
42711c:	46                   	inc    %esi
42711d:	83 65 08 00          	andl   $0x0,0x8(%ebp)
427121:	33 d2                	xor    %edx,%edx
427123:	2b ce                	sub    %esi,%ecx
427125:	42                   	inc    %edx
427126:	d3 e2                	shl    %cl,%edx
427128:	8d 4c 85 e0          	lea    -0x20(%ebp,%eax,4),%ecx
42712c:	8b 31                	mov    (%ecx),%esi
42712e:	8d 3c 16             	lea    (%esi,%edx,1),%edi
427131:	3b fe                	cmp    %esi,%edi
427133:	72 04                	jb     0x427139
427135:	3b fa                	cmp    %edx,%edi
427137:	73 07                	jae    0x427140
427139:	c7 45 08 01 00 00 00 	movl   $0x1,0x8(%ebp)
427140:	89 39                	mov    %edi,(%ecx)
427142:	8b 4d 08             	mov    0x8(%ebp),%ecx
427145:	eb 1f                	jmp    0x427166
427147:	85 c9                	test   %ecx,%ecx
427149:	74 1e                	je     0x427169
42714b:	8d 4c 85 e0          	lea    -0x20(%ebp,%eax,4),%ecx
42714f:	8b 11                	mov    (%ecx),%edx
427151:	8d 72 01             	lea    0x1(%edx),%esi
427154:	33 ff                	xor    %edi,%edi
427156:	3b f2                	cmp    %edx,%esi
427158:	72 05                	jb     0x42715f
42715a:	83 fe 01             	cmp    $0x1,%esi
42715d:	73 03                	jae    0x427162
42715f:	33 ff                	xor    %edi,%edi
427161:	47                   	inc    %edi
427162:	89 31                	mov    %esi,(%ecx)
427164:	8b cf                	mov    %edi,%ecx
427166:	48                   	dec    %eax
427167:	79 de                	jns    0x427147
427169:	8b 4d f0             	mov    -0x10(%ebp),%ecx
42716c:	83 c8 ff             	or     $0xffffffff,%eax
42716f:	d3 e0                	shl    %cl,%eax
427171:	21 03                	and    %eax,(%ebx)
427173:	8b 45 f4             	mov    -0xc(%ebp),%eax
427176:	40                   	inc    %eax
427177:	83 f8 03             	cmp    $0x3,%eax
42717a:	7d 0d                	jge    0x427189
42717c:	6a 03                	push   $0x3
42717e:	59                   	pop    %ecx
42717f:	8d 7c 85 e0          	lea    -0x20(%ebp,%eax,4),%edi
427183:	2b c8                	sub    %eax,%ecx
427185:	33 c0                	xor    %eax,%eax
427187:	f3 ab                	rep stos %eax,%es:(%edi)