668198:	e0 2a                	loopne 0x6681c4
66819a:	46                   	inc    %esi
66819b:	00 b4 85 44 00 e0 4d 	add    %dh,0x4de00044(%ebp,%eax,4)
6681a2:	42                   	inc    %edx
6681a3:	00 58 33             	add    %bl,0x33(%eax)
6681a6:	46                   	inc    %esi
6681a7:	00 c0                	add    %al,%al
6681a9:	4a                   	dec    %edx
6681aa:	42                   	inc    %edx
6681ab:	00 b4 6d 46 00 3c 24 	add    %dh,0x243c0046(%ebp,%ebp,2)
6681b2:	46                   	inc    %esi
6681b3:	00 80 f5 44 00 9c    	add    %al,-0x63ffbb0b(%eax)
6681b9:	fa                   	cli
6681ba:	44                   	inc    %esp
6681bb:	00 e8                	add    %ch,%al
6681bd:	f9                   	stc
6681be:	44                   	inc    %esp
6681bf:	00 e8                	add    %ch,%al
6681c1:	7a 44                	jp     0x668207
6681c3:	00 fc                	add    %bh,%ah
6681c5:	ef                   	out    %eax,(%dx)
6681c6:	44                   	inc    %esp
6681c7:	00 38                	add    %bh,(%eax)
6681c9:	30 46 00             	xor    %al,0x0(%esi)
6681cc:	3c ed                	cmp    $0xed,%al
6681ce:	44                   	inc    %esp
6681cf:	00 30                	add    %dh,(%eax)
6681d1:	7a 44                	jp     0x668217
6681d3:	00 34 7a             	add    %dh,(%edx,%edi,2)
6681d6:	44                   	inc    %esp
6681d7:	00 2c 31             	add    %ch,(%ecx,%esi,1)
6681da:	46                   	inc    %esi
6681db:	00 bc aa 44 00 9c 85 	add    %bh,-0x7a63ffbc(%edx,%ebp,4)
6681e2:	44                   	inc    %esp
6681e3:	00 ac 7b 44 00 28 87 	add    %ch,-0x78d7ffbc(%ebx,%edi,2)
6681ea:	44                   	inc    %esp
6681eb:	00 20                	add    %ah,(%eax)
6681ed:	33 46 00             	xor    0x0(%esi),%eax
6681f0:	ec                   	in     (%dx),%al
6681f1:	31 46 00             	xor    %eax,0x0(%esi)
6681f4:	60                   	pusha
6681f5:	88 44 00 98          	mov    %al,-0x68(%eax,%eax,1)
6681f9:	33 46 00             	xor    0x0(%esi),%eax
6681fc:	40                   	inc    %eax
6681fd:	ab                   	stos   %eax,%es:(%edi)
6681fe:	44                   	inc    %esp
6681ff:	00 c8                	add    %cl,%al
668201:	ed                   	in     (%dx),%eax
668202:	44                   	inc    %esp
668203:	00 44 ee 44          	add    %al,0x44(%esi,%ebp,8)
668207:	00 48 e9             	add    %cl,-0x17(%eax)
66820a:	44                   	inc    %esp
66820b:	00 28                	add    %ch,(%eax)
66820d:	ee                   	out    %al,(%dx)
66820e:	44                   	inc    %esp
66820f:	00 18                	add    %bl,(%eax)
668211:	1f                   	pop    %ds
668212:	46                   	inc    %esi
668213:	00 a4 39 46 00 58 c4 	add    %ah,-0x3ba7ffba(%ecx,%edi,1)
66821a:	44                   	inc    %esp
66821b:	00 38                	add    %bh,(%eax)
66821d:	46                   	inc    %esi
66821e:	46                   	inc    %esi
66821f:	00 94 49 46 00 54 48 	add    %dl,0x48540046(%ecx,%ecx,2)
668226:	46                   	inc    %esi
668227:	00 f0                	add    %dh,%al
668229:	c4 44 00 f4          	les    -0xc(%eax,%eax,1),%eax
66822d:	c4 44 00 cc          	les    -0x34(%eax,%eax,1),%eax
668231:	4a                   	dec    %edx
668232:	46                   	inc    %esi
668233:	00 54 c3 44          	add    %dl,0x44(%ebx,%eax,8)
668237:	00 68 ef             	add    %ch,-0x11(%eax)
66823a:	44                   	inc    %esp
66823b:	00 c0                	add    %al,%al
66823d:	51                   	push   %ecx
66823e:	46                   	inc    %esi
66823f:	00 ec                	add    %ch,%ah
668241:	eb 44                	jmp    0x668287
668243:	00 94 66 46 00 0c 19 	add    %dl,0x190c0046(%esi,%eiz,2)
66824a:	46                   	inc    %esi
66824b:	00 bc 1b 46 00 b4 57 	add    %bh,0x57b40046(%ebx,%ebx,1)
668252:	46                   	inc    %esi
668253:	00 bc 28 46 00 38 29 	add    %bh,0x29380046(%eax,%ebp,1)
66825a:	46                   	inc    %esi
66825b:	00 3c 6a             	add    %bh,(%edx,%ebp,2)
66825e:	46                   	inc    %esi
66825f:	00 00                	add    %al,(%eax)
668261:	26 46                	es inc %esi
668263:	00 78 65             	add    %bh,0x65(%eax)
668266:	46                   	inc    %esi
668267:	00 98 4c 46 00 2c    	add    %bl,0x2c00464c(%eax)
66826d:	67 46                	addr16 inc %esi
66826f:	00 1c 33             	add    %bl,(%ebx,%esi,1)
668272:	46                   	inc    %esi
668273:	00 0e                	add    %cl,(%esi)
668275:	00 00                	add    %al,(%eax)
668277:	00 00                	add    %al,(%eax)
668279:	00 02                	add    %al,(%edx)
66827b:	00 00                	add    %al,(%eax)
66827d:	00 ac 10 40 00 28 03 	add    %ch,0x3280040(%eax,%edx,1)
668284:	00 00                	add    %al,(%eax)
668286:	ac                   	lods   %ds:(%esi),%al
668287:	10 40 00             	adc    %al,0x0(%eax)
66828a:	2c 03                	sub    $0x3,%al
66828c:	00 00                	add    %al,(%eax)
66828e:	0c 00                	or     $0x0,%al
668290:	e4 83                	in     $0x83,%al
668292:	66 00 f0             	data16 add %dh,%al
668295:	02 00                	add    (%eax),%al
668297:	00 00                	add    %al,(%eax)
668299:	00 07                	add    %al,(%edi)
66829b:	42                   	inc    %edx
66829c:	75 74                	jne    0x668312
66829e:	74 6f                	je     0x66830f
6682a0:	6e                   	outsb  %ds:(%esi),(%dx)
6682a1:	31 f4                	xor    %esi,%esp
6682a3:	02 00                	add    (%eax),%al
6682a5:	00 00                	add    %al,(%eax)
6682a7:	00 07                	add    %al,(%edi)
6682a9:	42                   	inc    %edx
6682aa:	75 74                	jne    0x668320
6682ac:	74 6f                	je     0x66831d
6682ae:	6e                   	outsb  %ds:(%esi),(%dx)
6682af:	32 f8                	xor    %al,%bh
6682b1:	02 00                	add    (%eax),%al
6682b3:	00 01                	add    %al,(%ecx)
6682b5:	00 09                	add    %cl,(%ecx)
6682b7:	47                   	inc    %edi
6682b8:	72 6f                	jb     0x668329
6682ba:	75 70                	jne    0x66832c
6682bc:	42                   	inc    %edx
6682bd:	6f                   	outsl  %ds:(%esi),(%dx)
6682be:	78 31                	js     0x6682f1
6682c0:	fc                   	cld
6682c1:	02 00                	add    (%eax),%al
6682c3:	00 02                	add    %al,(%edx)
6682c5:	00 06                	add    %al,(%esi)
6682c7:	4c                   	dec    %esp
6682c8:	61                   	popa
6682c9:	62 65 6c             	bound  %esp,0x6c(%ebp)
6682cc:	31 00                	xor    %eax,(%eax)
6682ce:	03 00                	add    (%eax),%eax
6682d0:	00 03                	add    %al,(%ebx)
6682d2:	00 0c 53             	add    %cl,(%ebx,%edx,2)
6682d5:	74 61                	je     0x668338
6682d7:	6e                   	outsb  %ds:(%esi),(%dx)
6682d8:	64 61                	fs popa
6682da:	72 64                	jb     0x668340
6682dc:	53                   	push   %ebx
6682dd:	69 7a 65 04 03 00 00 	imul   $0x304,0x65(%edx),%edi
6682e4:	02 00                	add    (%eax),%al
6682e6:	06                   	push   %es
6682e7:	4c                   	dec    %esp
6682e8:	61                   	popa
6682e9:	62 65 6c             	bound  %esp,0x6c(%ebp)
6682ec:	32 08                	xor    (%eax),%cl
6682ee:	03 00                	add    (%eax),%eax
6682f0:	00 04 00             	add    %al,(%eax,%eax,1)
6682f3:	07                   	pop    %es
6682f4:	55                   	push   %ebp
6682f5:	70 44                	jo     0x66833b
6682f7:	6f                   	outsl  %ds:(%esi),(%dx)
6682f8:	77 6e                	ja     0x668368
6682fa:	31 0c 03             	xor    %ecx,(%ebx,%eax,1)
6682fd:	00 00                	add    %al,(%eax)
6682ff:	05 00 0a 50 69       	add    $0x69500a00,%eax
668304:	78 65                	js     0x66836b
668306:	6c                   	insb   (%dx),%es:(%edi)
668307:	57                   	push   %edi
668308:	69 64 74 68 10 03 00 	imul   $0x310,0x68(%esp,%esi,2),%esp
66830f:	00
668310:	05 00 0b 50 69       	add    $0x69500b00,%eax
668315:	78 65                	js     0x66837c
668317:	6c                   	insb   (%dx),%es:(%edi)
668318:	48                   	dec    %eax
668319:	65 69 67 68 74 14 03 	imul   $0x31474,%gs:0x68(%edi),%esp
668320:	00
668321:	00 04 00             	add    %al,(%eax,%eax,1)
668324:	07                   	pop    %es
668325:	55                   	push   %ebp
668326:	70 44                	jo     0x66836c
668328:	6f                   	outsl  %ds:(%esi),(%dx)
668329:	77 6e                	ja     0x668399
66832b:	32 18                	xor    (%eax),%bl
66832d:	03 00                	add    (%eax),%eax
66832f:	00 02                	add    %al,(%edx)
668331:	00 06                	add    %al,(%esi)
668333:	4c                   	dec    %esp
668334:	61                   	popa
668335:	62 65 6c             	bound  %esp,0x6c(%ebp)
668338:	33 1c 03             	xor    (%ebx,%eax,1),%ebx
66833b:	00 00                	add    %al,(%eax)
66833d:	02 00                	add    (%eax),%al
66833f:	06                   	push   %es
668340:	4c                   	dec    %esp
668341:	61                   	popa
668342:	62 65 6c             	bound  %esp,0x6c(%ebp)
668345:	34 07                	xor    $0x7,%al
668347:	00 19                	add    %bl,(%ecx)
668349:	00 28                	add    %ch,(%eax)
66834b:	84 66 00             	test   %ah,0x0(%esi)
66834e:	12 53 74             	adc    0x74(%ebx),%dl
668351:	61                   	popa
668352:	6e                   	outsb  %ds:(%esi),(%dx)
668353:	64 61                	fs popa
668355:	72 64                	jb     0x6683bb
668357:	53                   	push   %ebx
668358:	69 7a 65 43 68 61 6e 	imul   $0x6e616843,0x65(%edx),%edi
66835f:	67 65 13 00          	adc    %gs:(%bx,%si),%eax
668363:	c8 86 66 00          	enter  $0x6686,$0x0
668367:	0c 42                	or     $0x42,%al
668369:	75 74                	jne    0x6683df
66836b:	74 6f                	je     0x6683dc
66836d:	6e                   	outsb  %ds:(%esi),(%dx)
66836e:	32 43 6c             	xor    0x6c(%ebx),%al
668371:	69 63 6b 13 00 d0 86 	imul   $0x86d00013,0x6b(%ebx),%esp
668378:	66 00 0c 42          	data16 add %cl,(%edx,%eax,2)
66837c:	75 74                	jne    0x6683f2
66837e:	74 6f                	je     0x6683ef
668380:	6e                   	outsb  %ds:(%esi),(%dx)
668381:	31 43 6c             	xor    %eax,0x6c(%ebx)
668384:	69 63 6b 12 00 80 89 	imul   $0x89800012,0x6b(%ebx),%esp
66838b:	66 00 0b             	data16 add %cl,(%ebx)
66838e:	46                   	inc    %esi
66838f:	6f                   	outsl  %ds:(%esi),(%dx)
668390:	72 6d                	jb     0x6683ff
668392:	4b                   	dec    %ebx
668393:	65 79 44             	gs jns 0x6683da
668396:	6f                   	outsl  %ds:(%esi),(%dx)
668397:	77 6e                	ja     0x668407
668399:	0f 00 dc             	ltr    %esp
66839c:	8a 66 00             	mov    0x0(%esi),%ah
66839f:	08 46 6f             	or     %al,0x6f(%esi)
6683a2:	72 6d                	jb     0x668411
6683a4:	53                   	push   %ebx
6683a5:	68 6f 77 17 00       	push   $0x17776f
6683aa:	ac                   	lods   %ds:(%esi),%al
6683ab:	8b 66 00             	mov    0x0(%esi),%esp
6683ae:	10 50 69             	adc    %dl,0x69(%eax)
6683b1:	78 65                	js     0x668418
6683b3:	6c                   	insb   (%dx),%es:(%edi)
6683b4:	57                   	push   %edi
6683b5:	69 64 74 68 43 68 61 	imul   $0x6e616843,0x68(%esp,%esi,2),%esp
6683bc:	6e
6683bd:	67 65 18 00          	sbb    %al,%gs:(%bx,%si)
6683c1:	a4                   	movsb  %ds:(%esi),%es:(%edi)
6683c2:	8c 66 00             	mov    %fs,0x0(%esi)
6683c5:	11 50 69             	adc    %edx,0x69(%eax)
6683c8:	78 65                	js     0x66842f
6683ca:	6c                   	insb   (%dx),%es:(%edi)
6683cb:	48                   	dec    %eax
6683cc:	65 69 67 68 74 43 68 	imul   $0x61684374,%gs:0x68(%edi),%esp
6683d3:	61
6683d4:	6e                   	outsb  %ds:(%esi),(%dx)
6683d5:	67 65 0c 54          	addr16 gs or $0x54,%al
6683d9:	52                   	push   %edx
6683da:	65 73 69             	gs jae 0x668446
6683dd:	7a 65                	jp     0x668444
6683df:	49                   	dec    %ecx
6683e0:	6d                   	insl   (%dx),%es:(%edi)
6683e1:	61                   	popa
6683e2:	67 65 06             	addr16 gs push %es
6683e5:	00 60 6b             	add    %ah,0x6b(%eax)
6683e8:	43                   	inc    %ebx
6683e9:	00 5c 34 43          	add    %bl,0x43(%esp,%esi,1)
6683ed:	00 e8                	add    %ch,%al
6683ef:	3c 43                	cmp    $0x43,%al
6683f1:	00 8c 5f 43 00 a8 a0 	add    %cl,-0x5f57ffbd(%edi,%ebx,2)
6683f8:	49                   	dec    %ecx
6683f9:	00 80 45 43 00 8b    	add    %al,-0x74ffbcbb(%eax)
6683ff:	c0 04 84 66          	rolb   $0x66,(%esp,%eax,4)
668403:	00 07                	add    %al,(%edi)
668405:	0c 54                	or     $0x54,%al
668407:	52                   	push   %edx
668408:	65 73 69             	gs jae 0x668474
66840b:	7a 65                	jp     0x668472
66840d:	49                   	dec    %ecx
66840e:	6d                   	insl   (%dx),%es:(%edi)
66840f:	61                   	popa
668410:	67 65 84 81 66 00    	test   %al,%gs:0x66(%bx,%di)
668416:	e8 f6 45 00 5c       	call   0x5c66ca11
66841b:	00 07                	add    %al,(%edi)
66841d:	55                   	push   %ebp
66841e:	52                   	push   %edx
66841f:	65 73 69             	gs jae 0x66848b
668422:	7a 65                	jp     0x668489
668424:	00 00                	add    %al,(%eax)
668426:	8b c0                	mov    %eax,%eax
668428:	55                   	push   %ebp
668429:	8b ec                	mov    %esp,%ebp
66842b:	83 c4 bc             	add    $0xffffffbc,%esp
66842e:	53                   	push   %ebx
66842f:	56                   	push   %esi
668430:	57                   	push   %edi
668431:	33 c9                	xor    %ecx,%ecx
668433:	89 4d cc             	mov    %ecx,-0x34(%ebp)
668436:	89 4d c8             	mov    %ecx,-0x38(%ebp)
668439:	89 4d c4             	mov    %ecx,-0x3c(%ebp)
66843c:	89 4d d8             	mov    %ecx,-0x28(%ebp)
66843f:	89 4d d4             	mov    %ecx,-0x2c(%ebp)
668442:	89 4d d0             	mov    %ecx,-0x30(%ebp)
668445:	89 4d dc             	mov    %ecx,-0x24(%ebp)
668448:	89 45 fc             	mov    %eax,-0x4(%ebp)
66844b:	33 c0                	xor    %eax,%eax
66844d:	55                   	push   %ebp
66844e:	68 92 86 66 00       	push   $0x668692
668453:	64 ff 30             	push   %fs:(%eax)
668456:	64 89 20             	mov    %esp,%fs:(%eax)
668459:	33 c0                	xor    %eax,%eax
66845b:	55                   	push   %ebp
66845c:	68 48 86 66 00       	push   $0x668648
668461:	64 ff 30             	push   %fs:(%eax)
668464:	64 89 20             	mov    %esp,%fs:(%eax)
668467:	8d 55 dc             	lea    -0x24(%ebp),%edx
66846a:	8b 45 fc             	mov    -0x4(%ebp),%eax
66846d:	8b 80 00 03 00 00    	mov    0x300(%eax),%eax
668473:	e8 54 03 de ff       	call   0x4487cc
668478:	8b 55 dc             	mov    -0x24(%ebp),%edx
66847b:	b8 a8 86 66 00       	mov    $0x6686a8,%eax
668480:	e8 d7 c9 d9 ff       	call   0x404e5c
668485:	8b d8                	mov    %eax,%ebx
668487:	85 db                	test   %ebx,%ebx
668489:	0f 8e 8b 01 00 00    	jle    0x66861a
66848f:	8d 45 d4             	lea    -0x2c(%ebp),%eax
668492:	50                   	push   %eax
668493:	8d 55 d0             	lea    -0x30(%ebp),%edx
668496:	8b 45 fc             	mov    -0x4(%ebp),%eax
668499:	8b 80 00 03 00 00    	mov    0x300(%eax),%eax
66849f:	e8 28 03 de ff       	call   0x4487cc
6684a4:	8b 45 d0             	mov    -0x30(%ebp),%eax
6684a7:	8b cb                	mov    %ebx,%ecx
6684a9:	49                   	dec    %ecx
6684aa:	ba 01 00 00 00       	mov    $0x1,%edx
6684af:	e8 c4 c8 d9 ff       	call   0x404d78
6684b4:	8b 45 d4             	mov    -0x2c(%ebp),%eax
6684b7:	8d 55 d8             	lea    -0x28(%ebp),%edx
6684ba:	e8 e9 0e da ff       	call   0x4093a8
6684bf:	8b 45 d8             	mov    -0x28(%ebp),%eax
6684c2:	ba 20 03 00 00       	mov    $0x320,%edx
6684c7:	e8 14 12 da ff       	call   0x4096e0
6684cc:	8b f0                	mov    %eax,%esi
6684ce:	8d 45 c8             	lea    -0x38(%ebp),%eax
6684d1:	50                   	push   %eax
6684d2:	8d 55 c4             	lea    -0x3c(%ebp),%edx
6684d5:	8b 45 fc             	mov    -0x4(%ebp),%eax
6684d8:	8b 80 00 03 00 00    	mov    0x300(%eax),%eax
6684de:	e8 e9 02 de ff       	call   0x4487cc
6684e3:	8b 45 c4             	mov    -0x3c(%ebp),%eax
6684e6:	8d 53 01             	lea    0x1(%ebx),%edx
6684e9:	b9 0a 00 00 00       	mov    $0xa,%ecx