410d8b:	7c cd                	jl     0x410d5a
410d8d:	eb 53                	jmp    0x410de2
410d8f:	83 7c 24 0c 02       	cmpl   $0x2,0xc(%esp)
410d94:	7d 0a                	jge    0x410da0
410d96:	ff 44 24 0c          	incl   0xc(%esp)
410d9a:	8b 44 24 0c          	mov    0xc(%esp),%eax
410d9e:	eb 02                	jmp    0x410da2
410da0:	33 c0                	xor    %eax,%eax
410da2:	ff 83 48 14 00 00    	incl   0x1448(%ebx)
410da8:	8b f8                	mov    %eax,%edi
410daa:	8b 93 48 14 00 00    	mov    0x1448(%ebx),%edx
410db0:	89 84 93 54 0b 00 00 	mov    %eax,0xb54(%ebx,%edx,4)
410db7:	66 c7 44 bd 00 01 00 	movw   $0x1,0x0(%ebp,%edi,4)
410dbe:	c6 84 3b 50 14 00 00 	movb   $0x0,0x1450(%ebx,%edi,1)
410dc5:	00
410dc6:	ff 8b a0 16 00 00    	decl   0x16a0(%ebx)
410dcc:	83 7c 24 04 00       	cmpl   $0x0,0x4(%esp)
410dd1:	74 0f                	je     0x410de2
410dd3:	8b 44 24 04          	mov    0x4(%esp),%eax
410dd7:	0f b7 54 b8 02       	movzwl 0x2(%eax,%edi,4),%edx
410ddc:	29 93 a4 16 00 00    	sub    %edx,0x16a4(%ebx)
410de2:	83 bb 48 14 00 00 02 	cmpl   $0x2,0x1448(%ebx)
410de9:	7c a4                	jl     0x410d8f
410deb:	8b 0c 24             	mov    (%esp),%ecx
410dee:	8b 44 24 0c          	mov    0xc(%esp),%eax
410df2:	89 41 04             	mov    %eax,0x4(%ecx)
410df5:	8b b3 48 14 00 00    	mov    0x1448(%ebx),%esi
410dfb:	d1 fe                	sar    $1,%esi
410dfd:	79 03                	jns    0x410e02
410dff:	83 d6 00             	adc    $0x0,%esi
410e02:	83 fe 01             	cmp    $0x1,%esi
410e05:	7c 11                	jl     0x410e18
410e07:	8b ce                	mov    %esi,%ecx
410e09:	8b d5                	mov    %ebp,%edx
410e0b:	8b c3                	mov    %ebx,%eax
410e0d:	e8 92 fb ff ff       	call   0x4109a4
410e12:	4e                   	dec    %esi
410e13:	83 fe 01             	cmp    $0x1,%esi
410e16:	7d ef                	jge    0x410e07
410e18:	8b 7c 24 08          	mov    0x8(%esp),%edi
410e1c:	8b 83 48 14 00 00    	mov    0x1448(%ebx),%eax
410e22:	8b b3 58 0b 00 00    	mov    0xb58(%ebx),%esi
410e28:	83 83 48 14 00 00 ff 	addl   $0xffffffff,0x1448(%ebx)
410e2f:	8b 94 83 54 0b 00 00 	mov    0xb54(%ebx,%eax,4),%edx
410e36:	8b c3                	mov    %ebx,%eax
410e38:	89 93 58 0b 00 00    	mov    %edx,0xb58(%ebx)
410e3e:	8b d5                	mov    %ebp,%edx
410e40:	b9 01 00 00 00       	mov    $0x1,%ecx
410e45:	e8 5a fb ff ff       	call   0x4109a4
410e4a:	8b 83 58 0b 00 00    	mov    0xb58(%ebx),%eax
410e50:	ff 8b 4c 14 00 00    	decl   0x144c(%ebx)
410e56:	8b 93 4c 14 00 00    	mov    0x144c(%ebx),%edx
410e5c:	89 b4 93 54 0b 00 00 	mov    %esi,0xb54(%ebx,%edx,4)
410e63:	ff 8b 4c 14 00 00    	decl   0x144c(%ebx)
410e69:	8b 8b 4c 14 00 00    	mov    0x144c(%ebx),%ecx
410e6f:	89 84 8b 54 0b 00 00 	mov    %eax,0xb54(%ebx,%ecx,4)
410e76:	66 8b 54 85 00       	mov    0x0(%ebp,%eax,4),%dx
410e7b:	66 03 54 b5 00       	add    0x0(%ebp,%esi,4),%dx
410e80:	52                   	push   %edx
410e81:	59                   	pop    %ecx
410e82:	66 89 4c bd 00       	mov    %cx,0x0(%ebp,%edi,4)
410e87:	8a 94 03 50 14 00 00 	mov    0x1450(%ebx,%eax,1),%dl
410e8e:	3a 94 33 50 14 00 00 	cmp    0x1450(%ebx,%esi,1),%dl
410e95:	77 09                	ja     0x410ea0
410e97:	8a 8c 33 50 14 00 00 	mov    0x1450(%ebx,%esi,1),%cl
410e9e:	eb 07                	jmp    0x410ea7
410ea0:	8a 8c 03 50 14 00 00 	mov    0x1450(%ebx,%eax,1),%cl
410ea7:	41                   	inc    %ecx
410ea8:	8b d5                	mov    %ebp,%edx
410eaa:	88 8c 3b 50 14 00 00 	mov    %cl,0x1450(%ebx,%edi,1)
410eb1:	b9 01 00 00 00       	mov    $0x1,%ecx
410eb6:	66 89 7c 85 02       	mov    %di,0x2(%ebp,%eax,4)
410ebb:	8b c3                	mov    %ebx,%eax
410ebd:	66 89 7c b5 02       	mov    %di,0x2(%ebp,%esi,4)
410ec2:	89 bb 58 0b 00 00    	mov    %edi,0xb58(%ebx)
410ec8:	47                   	inc    %edi
410ec9:	e8 d6 fa ff ff       	call   0x4109a4
410ece:	83 bb 48 14 00 00 02 	cmpl   $0x2,0x1448(%ebx)
410ed5:	0f 8d 41 ff ff ff    	jge    0x410e1c
410edb:	ff 8b 4c 14 00 00    	decl   0x144c(%ebx)
410ee1:	8b 83 4c 14 00 00    	mov    0x144c(%ebx),%eax
410ee7:	8b 93 58 0b 00 00    	mov    0xb58(%ebx),%edx
410eed:	89 94 83 54 0b 00 00 	mov    %edx,0xb54(%ebx,%eax,4)
410ef4:	8b c3                	mov    %ebx,%eax
410ef6:	8b 14 24             	mov    (%esp),%edx
410ef9:	e8 9a fb ff ff       	call   0x410a98
410efe:	8d 8b 34 0b 00 00    	lea    0xb34(%ebx),%ecx
410f04:	8b 54 24 0c          	mov    0xc(%esp),%edx
410f08:	8b c5                	mov    %ebp,%eax
410f0a:	e8 89 fd ff ff       	call   0x410c98
410f0f:	83 c4 10             	add    $0x10,%esp
410f12:	5d                   	pop    %ebp
410f13:	5f                   	pop    %edi
410f14:	5e                   	pop    %esi
410f15:	5b                   	pop    %ebx
410f16:	c3                   	ret
410f17:	90                   	nop
410f18:	53                   	push   %ebx
410f19:	56                   	push   %esi
410f1a:	57                   	push   %edi
410f1b:	83 c4 ec             	add    $0xffffffec,%esp
410f1e:	89 4c 24 04          	mov    %ecx,0x4(%esp)
410f22:	89 04 24             	mov    %eax,(%esp)
410f25:	c7 44 24 0c ff ff ff 	movl   $0xffffffff,0xc(%esp)
410f2c:	ff
410f2d:	0f b7 5a 02          	movzwl 0x2(%edx),%ebx
410f31:	33 f6                	xor    %esi,%esi
410f33:	b9 07 00 00 00       	mov    $0x7,%ecx
410f38:	b8 04 00 00 00       	mov    $0x4,%eax
410f3d:	85 db                	test   %ebx,%ebx
410f3f:	75 0a                	jne    0x410f4b
410f41:	b9 8a 00 00 00       	mov    $0x8a,%ecx
410f46:	b8 03 00 00 00       	mov    $0x3,%eax
410f4b:	8b 7c 24 04          	mov    0x4(%esp),%edi
410f4f:	66 c7 44 ba 06 ff ff 	movw   $0xffff,0x6(%edx,%edi,4)
410f56:	33 ff                	xor    %edi,%edi
410f58:	83 c2 06             	add    $0x6,%edx
410f5b:	89 7c 24 08          	mov    %edi,0x8(%esp)
410f5f:	89 54 24 10          	mov    %edx,0x10(%esp)
410f63:	8b 54 24 08          	mov    0x8(%esp),%edx
410f67:	3b 54 24 04          	cmp    0x4(%esp),%edx
410f6b:	0f 8f a6 00 00 00    	jg     0x411017
410f71:	8b d3                	mov    %ebx,%edx
410f73:	8b 5c 24 10          	mov    0x10(%esp),%ebx
410f77:	46                   	inc    %esi
410f78:	0f b7 1b             	movzwl (%ebx),%ebx
410f7b:	3b ce                	cmp    %esi,%ecx
410f7d:	7e 04                	jle    0x410f83
410f7f:	3b da                	cmp    %edx,%ebx
410f81:	74 7d                	je     0x411000
410f83:	3b c6                	cmp    %esi,%eax
410f85:	7e 0d                	jle    0x410f94
410f87:	8b 04 24             	mov    (%esp),%eax
410f8a:	66 01 b4 90 74 0a 00 	add    %si,0xa74(%eax,%edx,4)
410f91:	00
410f92:	eb 3c                	jmp    0x410fd0
410f94:	85 d2                	test   %edx,%edx
410f96:	74 1d                	je     0x410fb5
410f98:	3b 54 24 0c          	cmp    0xc(%esp),%edx
410f9c:	74 0b                	je     0x410fa9
410f9e:	8b 0c 24             	mov    (%esp),%ecx
410fa1:	66 ff 84 91 74 0a 00 	incw   0xa74(%ecx,%edx,4)
410fa8:	00
410fa9:	8b 04 24             	mov    (%esp),%eax
410fac:	66 ff 80 b4 0a 00 00 	incw   0xab4(%eax)
410fb3:	eb 1b                	jmp    0x410fd0
410fb5:	83 fe 0a             	cmp    $0xa,%esi
410fb8:	7f 0c                	jg     0x410fc6
410fba:	8b 0c 24             	mov    (%esp),%ecx
410fbd:	66 ff 81 b8 0a 00 00 	incw   0xab8(%ecx)
410fc4:	eb 0a                	jmp    0x410fd0
410fc6:	8b 04 24             	mov    (%esp),%eax
410fc9:	66 ff 80 bc 0a 00 00 	incw   0xabc(%eax)
410fd0:	33 f6                	xor    %esi,%esi
410fd2:	89 54 24 0c          	mov    %edx,0xc(%esp)
410fd6:	85 db                	test   %ebx,%ebx
410fd8:	75 0c                	jne    0x410fe6
410fda:	b9 8a 00 00 00       	mov    $0x8a,%ecx
410fdf:	b8 03 00 00 00       	mov    $0x3,%eax
410fe4:	eb 1a                	jmp    0x411000
410fe6:	3b da                	cmp    %edx,%ebx
410fe8:	75 0c                	jne    0x410ff6
410fea:	b9 06 00 00 00       	mov    $0x6,%ecx
410fef:	b8 03 00 00 00       	mov    $0x3,%eax
410ff4:	eb 0a                	jmp    0x411000
410ff6:	b9 07 00 00 00       	mov    $0x7,%ecx
410ffb:	b8 04 00 00 00       	mov    $0x4,%eax
411000:	ff 44 24 08          	incl   0x8(%esp)
411004:	83 44 24 10 04       	addl   $0x4,0x10(%esp)
411009:	8b 54 24 08          	mov    0x8(%esp),%edx
41100d:	3b 54 24 04          	cmp    0x4(%esp),%edx
411011:	0f 8e 5a ff ff ff    	jle    0x410f71
411017:	83 c4 14             	add    $0x14,%esp
41101a:	5f                   	pop    %edi
41101b:	5e                   	pop    %esi
41101c:	5b                   	pop    %ebx
41101d:	c3                   	ret
41101e:	90                   	nop
41101f:	90                   	nop
411020:	53                   	push   %ebx
411021:	56                   	push   %esi
411022:	57                   	push   %edi
411023:	55                   	push   %ebp
411024:	83 c4 d8             	add    $0xffffffd8,%esp
411027:	33 db                	xor    %ebx,%ebx
411029:	bf 04 00 00 00       	mov    $0x4,%edi
41102e:	89 4c 24 04          	mov    %ecx,0x4(%esp)
411032:	89 14 24             	mov    %edx,(%esp)
411035:	b9 07 00 00 00       	mov    $0x7,%ecx
41103a:	c7 44 24 0c ff ff ff 	movl   $0xffffffff,0xc(%esp)
411041:	ff
411042:	8b 14 24             	mov    (%esp),%edx
411045:	0f b7 72 02          	movzwl 0x2(%edx),%esi
411049:	85 f6                	test   %esi,%esi
41104b:	75 0a                	jne    0x411057
41104d:	b9 8a 00 00 00       	mov    $0x8a,%ecx
411052:	bf 03 00 00 00       	mov    $0x3,%edi
411057:	33 d2                	xor    %edx,%edx
411059:	89 54 24 08          	mov    %edx,0x8(%esp)
41105d:	8b 14 24             	mov    (%esp),%edx
411060:	83 c2 06             	add    $0x6,%edx
411063:	89 54 24 24          	mov    %edx,0x24(%esp)
411067:	8b 54 24 08          	mov    0x8(%esp),%edx
41106b:	3b 54 24 04          	cmp    0x4(%esp),%edx
41106f:	0f 8f 24 06 00 00    	jg     0x411699
411075:	8b d6                	mov    %esi,%edx
411077:	8b 74 24 24          	mov    0x24(%esp),%esi
41107b:	43                   	inc    %ebx
41107c:	0f b7 36             	movzwl (%esi),%esi
41107f:	3b cb                	cmp    %ebx,%ecx
411081:	7e 08                	jle    0x41108b
411083:	3b f2                	cmp    %edx,%esi
411085:	0f 84 f7 05 00 00    	je     0x411682
41108b:	3b fb                	cmp    %ebx,%edi
41108d:	0f 8e c7 00 00 00    	jle    0x41115a
411093:	0f b7 bc 90 76 0a 00 	movzwl 0xa76(%eax,%edx,4),%edi
41109a:	00
41109b:	b9 10 00 00 00       	mov    $0x10,%ecx
4110a0:	2b cf                	sub    %edi,%ecx
4110a2:	3b 88 b4 16 00 00    	cmp    0x16b4(%eax),%ecx
4110a8:	0f 8d 82 00 00 00    	jge    0x411130
4110ae:	0f b7 8c 90 74 0a 00 	movzwl 0xa74(%eax,%edx,4),%ecx
4110b5:	00
4110b6:	89 4c 24 10          	mov    %ecx,0x10(%esp)
4110ba:	83 ef 10             	sub    $0x10,%edi
4110bd:	66 8b 6c 24 10       	mov    0x10(%esp),%bp
4110c2:	8b 88 b4 16 00 00    	mov    0x16b4(%eax),%ecx
4110c8:	66 d3 e5             	shl    %cl,%bp
4110cb:	66 09 a8 b0 16 00 00 	or     %bp,0x16b0(%eax)
4110d2:	8b 48 14             	mov    0x14(%eax),%ecx
4110d5:	ff 40 14             	incl   0x14(%eax)
4110d8:	8b 68 08             	mov    0x8(%eax),%ebp
4110db:	8d 4c 0d 00          	lea    0x0(%ebp,%ecx,1),%ecx
4110df:	51                   	push   %ecx
4110e0:	5d                   	pop    %ebp
4110e1:	8a 88 b0 16 00 00    	mov    0x16b0(%eax),%cl
4110e7:	80 e1 ff             	and    $0xff,%cl
4110ea:	88 4d 00             	mov    %cl,0x0(%ebp)
4110ed:	8b 48 14             	mov    0x14(%eax),%ecx
4110f0:	ff 40 14             	incl   0x14(%eax)
4110f3:	8b 68 08             	mov    0x8(%eax),%ebp
4110f6:	8d 4c 0d 00          	lea    0x0(%ebp,%ecx,1),%ecx
4110fa:	51                   	push   %ecx
4110fb:	0f b7 88 b0 16 00 00 	movzwl 0x16b0(%eax),%ecx
411102:	5d                   	pop    %ebp
411103:	c1 f9 08             	sar    $0x8,%ecx
411106:	88 4d 00             	mov    %cl,0x0(%ebp)
411109:	b9 10 00 00 00       	mov    $0x10,%ecx
41110e:	0f b7 6c 24 10       	movzwl 0x10(%esp),%ebp
411113:	2b 88 b4 16 00 00    	sub    0x16b4(%eax),%ecx
411119:	d3 fd                	sar    %cl,%ebp
41111b:	66 89 a8 b0 16 00 00 	mov    %bp,0x16b0(%eax)
411122:	03 b8 b4 16 00 00    	add    0x16b4(%eax),%edi
411128:	89 b8 b4 16 00 00    	mov    %edi,0x16b4(%eax)
41112e:	eb 1e                	jmp    0x41114e
411130:	66 8b ac 90 74 0a 00 	mov    0xa74(%eax,%edx,4),%bp
411137:	00
411138:	8b 88 b4 16 00 00    	mov    0x16b4(%eax),%ecx
41113e:	66 d3 e5             	shl    %cl,%bp
411141:	66 09 a8 b0 16 00 00 	or     %bp,0x16b0(%eax)
411148:	01 b8 b4 16 00 00    	add    %edi,0x16b4(%eax)
41114e:	4b                   	dec    %ebx
41114f:	0f 85 3e ff ff ff    	jne    0x411093
411155:	e9 f8 04 00 00       	jmp    0x411652
41115a:	85 d2                	test   %edx,%edx
41115c:	0f 84 29 02 00 00    	je     0x41138b
411162:	3b 54 24 0c          	cmp    0xc(%esp),%edx
411166:	0f 84 bc 00 00 00    	je     0x411228
41116c:	0f b7 bc 90 76 0a 00 	movzwl 0xa76(%eax,%edx,4),%edi
411173:	00
411174:	b9 10 00 00 00       	mov    $0x10,%ecx
411179:	2b cf                	sub    %edi,%ecx
41117b:	3b 88 b4 16 00 00    	cmp    0x16b4(%eax),%ecx
411181:	0f 8d 82 00 00 00    	jge    0x411209
411187:	0f b7 8c 90 74 0a 00 	movzwl 0xa74(%eax,%edx,4),%ecx
41118e:	00
41118f:	89 4c 24 14          	mov    %ecx,0x14(%esp)
411193:	83 ef 10             	sub    $0x10,%edi
411196:	66 8b 6c 24 14       	mov    0x14(%esp),%bp
41119b:	8b 88 b4 16 00 00    	mov    0x16b4(%eax),%ecx
4111a1:	66 d3 e5             	shl    %cl,%bp
4111a4:	66 09 a8 b0 16 00 00 	or     %bp,0x16b0(%eax)
4111ab:	8b 48 14             	mov    0x14(%eax),%ecx
4111ae:	ff 40 14             	incl   0x14(%eax)
4111b1:	8b 68 08             	mov    0x8(%eax),%ebp
4111b4:	8d 4c 0d 00          	lea    0x0(%ebp,%ecx,1),%ecx
4111b8:	51                   	push   %ecx
4111b9:	5d                   	pop    %ebp
4111ba:	8a 88 b0 16 00 00    	mov    0x16b0(%eax),%cl
4111c0:	80 e1 ff             	and    $0xff,%cl
4111c3:	88 4d 00             	mov    %cl,0x0(%ebp)
4111c6:	8b 48 14             	mov    0x14(%eax),%ecx
4111c9:	ff 40 14             	incl   0x14(%eax)
4111cc:	8b 68 08             	mov    0x8(%eax),%ebp
4111cf:	8d 4c 0d 00          	lea    0x0(%ebp,%ecx,1),%ecx
4111d3:	51                   	push   %ecx
4111d4:	0f b7 88 b0 16 00 00 	movzwl 0x16b0(%eax),%ecx
4111db:	5d                   	pop    %ebp
4111dc:	c1 f9 08             	sar    $0x8,%ecx
4111df:	88 4d 00             	mov    %cl,0x0(%ebp)
4111e2:	b9 10 00 00 00       	mov    $0x10,%ecx
4111e7:	0f b7 6c 24 14       	movzwl 0x14(%esp),%ebp
4111ec:	2b 88 b4 16 00 00    	sub    0x16b4(%eax),%ecx
4111f2:	d3 fd                	sar    %cl,%ebp
4111f4:	66 89 a8 b0 16 00 00 	mov    %bp,0x16b0(%eax)
4111fb:	03 b8 b4 16 00 00    	add    0x16b4(%eax),%edi
411201:	89 b8 b4 16 00 00    	mov    %edi,0x16b4(%eax)
411207:	eb 1e                	jmp    0x411227
411209:	66 8b ac 90 74 0a 00 	mov    0xa74(%eax,%edx,4),%bp
411210:	00
411211:	8b 88 b4 16 00 00    	mov    0x16b4(%eax),%ecx
411217:	66 d3 e5             	shl    %cl,%bp
41121a:	66 09 a8 b0 16 00 00 	or     %bp,0x16b0(%eax)
411221:	01 b8 b4 16 00 00    	add    %edi,0x16b4(%eax)
411227:	4b                   	dec    %ebx
411228:	0f b7 b8 b6 0a 00 00 	movzwl 0xab6(%eax),%edi
41122f:	b9 10 00 00 00       	mov    $0x10,%ecx
411234:	2b cf                	sub    %edi,%ecx
411236:	3b 88 b4 16 00 00    	cmp    0x16b4(%eax),%ecx
41123c:	0f 8d 81 00 00 00    	jge    0x4112c3
411242:	0f b7 88 b4 0a 00 00 	movzwl 0xab4(%eax),%ecx
411249:	89 4c 24 18          	mov    %ecx,0x18(%esp)
41124d:	83 ef 10             	sub    $0x10,%edi
411250:	66 8b 6c 24 18       	mov    0x18(%esp),%bp
411255:	8b 88 b4 16 00 00    	mov    0x16b4(%eax),%ecx
41125b:	66 d3 e5             	shl    %cl,%bp
41125e:	66 09 a8 b0 16 00 00 	or     %bp,0x16b0(%eax)
411265:	8b 48 14             	mov    0x14(%eax),%ecx
411268:	ff 40 14             	incl   0x14(%eax)
41126b:	8b 68 08             	mov    0x8(%eax),%ebp
41126e:	8d 4c 0d 00          	lea    0x0(%ebp,%ecx,1),%ecx
411272:	51                   	push   %ecx
411273:	5d                   	pop    %ebp
411274:	8a 88 b0 16 00 00    	mov    0x16b0(%eax),%cl
41127a:	80 e1 ff             	and    $0xff,%cl
41127d:	88 4d 00             	mov    %cl,0x0(%ebp)
411280:	8b 48 14             	mov    0x14(%eax),%ecx
411283:	ff 40 14             	incl   0x14(%eax)
411286:	8b 68 08             	mov    0x8(%eax),%ebp
411289:	8d 4c 0d 00          	lea    0x0(%ebp,%ecx,1),%ecx
41128d:	51                   	push   %ecx
41128e:	0f b7 88 b0 16 00 00 	movzwl 0x16b0(%eax),%ecx
411295:	5d                   	pop    %ebp
411296:	c1 f9 08             	sar    $0x8,%ecx
411299:	88 4d 00             	mov    %cl,0x0(%ebp)
41129c:	b9 10 00 00 00       	mov    $0x10,%ecx
4112a1:	0f b7 6c 24 18       	movzwl 0x18(%esp),%ebp
4112a6:	2b 88 b4 16 00 00    	sub    0x16b4(%eax),%ecx
4112ac:	d3 fd                	sar    %cl,%ebp
4112ae:	66 89 a8 b0 16 00 00 	mov    %bp,0x16b0(%eax)