40f2a1:	79 74                	jns    0x40f317
40f2a3:	65 73 52             	gs jae 0x40f2f8
40f2a6:	65 61                	gs popa
40f2a8:	64 20 3d 20 25 64 2e 	and    %bh,%fs:0x2e642520
40f2af:	0a 00                	or     (%eax),%al
40f2b1:	00 00                	add    %al,(%eax)
40f2b3:	00 00                	add    %al,(%eax)
40f2b5:	00 00                	add    %al,(%eax)
40f2b7:	00 46 00             	add    %al,0x0(%esi)
40f2ba:	41                   	inc    %ecx
40f2bb:	00 49 00             	add    %cl,0x0(%ecx)
40f2be:	4c                   	dec    %esp
40f2bf:	00 55 00             	add    %dl,0x0(%ebp)
40f2c2:	52                   	push   %edx
40f2c3:	00 45 00             	add    %al,0x0(%ebp)
40f2c6:	3a 00                	cmp    (%eax),%al
40f2c8:	20 00                	and    %al,(%eax)
40f2ca:	47                   	inc    %edi
40f2cb:	00 65 00             	add    %ah,0x0(%ebp)
40f2ce:	74 00                	je     0x40f2d0
40f2d0:	4f                   	dec    %edi
40f2d1:	00 76 00             	add    %dh,0x0(%esi)
40f2d4:	65 00 72 00          	add    %dh,%gs:0x0(%edx)
40f2d8:	6c                   	insb   (%dx),%es:(%edi)
40f2d9:	00 61 00             	add    %ah,0x0(%ecx)
40f2dc:	70 00                	jo     0x40f2de
40f2de:	70 00                	jo     0x40f2e0
40f2e0:	65 00 64 00 52       	add    %ah,%gs:0x52(%eax,%eax,1)
40f2e5:	00 65 00             	add    %ah,0x0(%ebp)
40f2e8:	73 00                	jae    0x40f2ea
40f2ea:	75 00                	jne    0x40f2ec
40f2ec:	6c                   	insb   (%dx),%es:(%edi)
40f2ed:	00 74 00 20          	add    %dh,0x20(%eax,%eax,1)
40f2f1:	00 28                	add    %ch,(%eax)
40f2f3:	00 72 00             	add    %dh,0x0(%edx)
40f2f6:	65 00 61 00          	add    %ah,%gs:0x0(%ecx)
40f2fa:	64 00 29             	add    %ch,%fs:(%ecx)
40f2fd:	00 3a                	add    %bh,(%edx)
40f2ff:	00 20                	add    %ah,(%eax)
40f301:	00 00                	add    %al,(%eax)
40f303:	00 00                	add    %al,(%eax)
40f305:	00 00                	add    %al,(%eax)
40f307:	00 46 57             	add    %al,0x57(%esi)
40f30a:	61                   	popa
40f30b:	69 74 46 6f 72 41 6c 	imul   $0x6c6c4172,0x6f(%esi,%eax,2),%esi
40f312:	6c
40f313:	52                   	push   %edx
40f314:	65 61                	gs popa
40f316:	64 73 2e             	fs jae 0x40f347
40f319:	20 47 65             	and    %al,0x65(%edi)
40f31c:	74 4f                	je     0x40f36d
40f31e:	76 65                	jbe    0x40f385
40f320:	72 6c                	jb     0x40f38e
40f322:	61                   	popa
40f323:	70 70                	jo     0x40f395
40f325:	65 64 52             	gs fs push %edx
40f328:	65 73 75             	gs jae 0x40f3a0
40f32b:	6c                   	insb   (%dx),%es:(%edi)
40f32c:	74 20                	je     0x40f34e
40f32e:	68 61 64 20 74       	push   $0x74206461
40f333:	68 65 20 77 72       	push   $0x72772065
40f338:	6f                   	outsl  %ds:(%esi),(%dx)
40f339:	6e                   	outsb  %ds:(%esi),(%dx)
40f33a:	67 20 6e 75          	and    %ch,0x75(%bp)
40f33e:	6d                   	insl   (%dx),%es:(%edi)
40f33f:	62 65 72             	bound  %esp,0x72(%ebp)
40f342:	20 6f 66             	and    %ch,0x66(%edi)
40f345:	20 62 79             	and    %ah,0x79(%edx)
40f348:	74 65                	je     0x40f3af
40f34a:	73 21                	jae    0x40f36d
40f34c:	20 4f 66             	and    %cl,0x66(%edi)
40f34f:	66 73 65             	data16 jae 0x40f3b7
40f352:	74 20                	je     0x40f374
40f354:	3d 20 30 78 25       	cmp    $0x25783020,%eax
40f359:	78 60                	js     0x40f3bb
40f35b:	25 30 38 78 2e       	and    $0x2e783830,%eax
40f360:	20 64 77 42          	and    %ah,0x42(%edi,%esi,2)
40f364:	79 74                	jns    0x40f3da
40f366:	65 73 54             	gs jae 0x40f3bd
40f369:	6f                   	outsl  %ds:(%esi),(%dx)
40f36a:	52                   	push   %edx
40f36b:	65 61                	gs popa
40f36d:	64 20 3d 20 25 64 2e 	and    %bh,%fs:0x2e642520
40f374:	20 64 77 42          	and    %ah,0x42(%edi,%esi,2)
40f378:	79 74                	jns    0x40f3ee
40f37a:	65 73 52             	gs jae 0x40f3cf
40f37d:	65 61                	gs popa
40f37f:	64 20 3d 20 25 64 2e 	and    %bh,%fs:0x2e642520
40f386:	0a 00                	or     (%eax),%al
40f388:	46                   	inc    %esi
40f389:	00 41 00             	add    %al,0x0(%ecx)
40f38c:	49                   	dec    %ecx
40f38d:	00 4c 00 55          	add    %cl,0x55(%eax,%eax,1)
40f391:	00 52 00             	add    %dl,0x0(%edx)
40f394:	45                   	inc    %ebp
40f395:	00 3a                	add    %bh,(%edx)
40f397:	00 20                	add    %ah,(%eax)
40f399:	00 47 00             	add    %al,0x0(%edi)
40f39c:	65 00 74 00 4f       	add    %dh,%gs:0x4f(%eax,%eax,1)
40f3a1:	00 76 00             	add    %dh,0x0(%esi)
40f3a4:	65 00 72 00          	add    %dh,%gs:0x0(%edx)
40f3a8:	6c                   	insb   (%dx),%es:(%edi)
40f3a9:	00 61 00             	add    %ah,0x0(%ecx)
40f3ac:	70 00                	jo     0x40f3ae
40f3ae:	70 00                	jo     0x40f3b0
40f3b0:	65 00 64 00 52       	add    %ah,%gs:0x52(%eax,%eax,1)
40f3b5:	00 65 00             	add    %ah,0x0(%ebp)
40f3b8:	73 00                	jae    0x40f3ba
40f3ba:	75 00                	jne    0x40f3bc
40f3bc:	6c                   	insb   (%dx),%es:(%edi)
40f3bd:	00 74 00 20          	add    %dh,0x20(%eax,%eax,1)
40f3c1:	00 28                	add    %ch,(%eax)
40f3c3:	00 72 00             	add    %dh,0x0(%edx)
40f3c6:	65 00 61 00          	add    %ah,%gs:0x0(%ecx)
40f3ca:	64 00 29             	add    %ch,%fs:(%ecx)
40f3cd:	00 20                	add    %ah,(%eax)
40f3cf:	00 72 00             	add    %dh,0x0(%edx)
40f3d2:	65 00 74 00 75       	add    %dh,%gs:0x75(%eax,%eax,1)
40f3d7:	00 72 00             	add    %dh,0x0(%edx)
40f3da:	6e                   	outsb  %ds:(%esi),(%dx)
40f3db:	00 65 00             	add    %ah,0x0(%ebp)
40f3de:	64 00 20             	add    %ah,%fs:(%eax)
40f3e1:	00 77 00             	add    %dh,0x0(%edi)
40f3e4:	72 00                	jb     0x40f3e6
40f3e6:	6f                   	outsl  %ds:(%esi),(%dx)
40f3e7:	00 6e 00             	add    %ch,0x0(%esi)
40f3ea:	67 00 20             	add    %ah,(%bx,%si)
40f3ed:	00 6e 00             	add    %ch,0x0(%esi)
40f3f0:	75 00                	jne    0x40f3f2
40f3f2:	6d                   	insl   (%dx),%es:(%edi)
40f3f3:	00 62 00             	add    %ah,0x0(%edx)
40f3f6:	65 00 72 00          	add    %dh,%gs:0x0(%edx)
40f3fa:	20 00                	and    %al,(%eax)
40f3fc:	6f                   	outsl  %ds:(%esi),(%dx)
40f3fd:	00 66 00             	add    %ah,0x0(%esi)
40f400:	20 00                	and    %al,(%eax)
40f402:	62 00                	bound  %eax,(%eax)
40f404:	79 00                	jns    0x40f406
40f406:	74 00                	je     0x40f408
40f408:	65 00 73 00          	add    %dh,%gs:0x0(%ebx)
40f40c:	3a 00                	cmp    (%eax),%al
40f40e:	20 00                	and    %al,(%eax)
40f418:	49                   	dec    %ecx
40f419:	67 6e                	outsb  %ds:(%si),(%dx)
40f41b:	6f                   	outsl  %ds:(%esi),(%dx)
40f41c:	72 69                	jb     0x40f487
40f41e:	6e                   	outsb  %ds:(%esi),(%dx)
40f41f:	67 20 65 72          	and    %ah,0x72(%di)
40f423:	72 6f                	jb     0x40f494
40f425:	72 73                	jb     0x40f49a
40f427:	20 70 72             	and    %dh,0x72(%eax)
40f42a:	65 76 69             	gs jbe 0x40f496
40f42d:	6f                   	outsl  %ds:(%esi),(%dx)
40f42e:	75 73                	jne    0x40f4a3
40f430:	6c                   	insb   (%dx),%es:(%edi)
40f431:	79 20                	jns    0x40f453
40f433:	65 6e                	outsb  %gs:(%esi),(%dx)
40f435:	63 6f 75             	arpl   %ebp,0x75(%edi)
40f438:	6e                   	outsb  %ds:(%esi),(%dx)
40f439:	74 65                	je     0x40f4a0
40f43b:	72 65                	jb     0x40f4a2
40f43d:	64 2c 20             	fs sub $0x20,%al
40f440:	61                   	popa
40f441:	6e                   	outsb  %ds:(%esi),(%dx)
40f442:	64 20 70 72          	and    %dh,%fs:0x72(%eax)
40f446:	6f                   	outsl  %ds:(%esi),(%dx)
40f447:	63 65 65             	arpl   %esp,0x65(%ebp)
40f44a:	64 69 6e 67 20 77 69 	imul   $0x74697720,%fs:0x67(%esi),%ebp
40f451:	74
40f452:	68 20 74 68 65       	push   $0x65687420
40f457:	20 66 69             	and    %ah,0x69(%esi)
40f45a:	6c                   	insb   (%dx),%es:(%edi)
40f45b:	65 20 63 6f          	and    %ah,%gs:0x6f(%ebx)
40f45f:	70 79                	jo     0x40f4da
40f461:	2e 20 54 68 65       	and    %dl,%cs:0x65(%eax,%ebp,2)
40f466:	20 64 65 73          	and    %ah,0x73(%ebp,%eiz,2)
40f46a:	74 69                	je     0x40f4d5
40f46c:	6e                   	outsb  %ds:(%esi),(%dx)
40f46d:	61                   	popa
40f46e:	74 69                	je     0x40f4d9
40f470:	6f                   	outsl  %ds:(%esi),(%dx)
40f471:	6e                   	outsb  %ds:(%esi),(%dx)
40f472:	20 66 69             	and    %ah,0x69(%esi)
40f475:	6c                   	insb   (%dx),%es:(%edi)
40f476:	65 20 69 73          	and    %ch,%gs:0x73(%ecx)
40f47a:	20 6c 69 6b          	and    %ch,0x6b(%ecx,%ebp,2)
40f47e:	65 6c                	gs insb (%dx),%es:(%edi)
40f480:	79 20                	jns    0x40f4a2
40f482:	43                   	inc    %ebx
40f483:	4f                   	dec    %edi
40f484:	52                   	push   %edx
40f485:	52                   	push   %edx
40f486:	55                   	push   %ebp
40f487:	50                   	push   %eax
40f488:	54                   	push   %esp
40f489:	21 0a                	and    %ecx,(%edx)
40f48b:	00 00                	add    %al,(%eax)
40f48d:	00 00                	add    %al,(%eax)
40f48f:	00 57 72             	add    %dl,0x72(%edi)
40f492:	69 74 65 46 69 6c 65 	imul   $0x20656c69,0x46(%ebp,%eiz,2),%esi
40f499:	20
40f49a:	66 61                	popaw
40f49c:	69 6c 65 64 20 77 69 	imul   $0x74697720,0x64(%ebp,%eiz,2),%ebp
40f4a3:	74
40f4a4:	68 20 25 64 2e       	push   $0x2e642520
40f4a9:	20 4f 66             	and    %cl,0x66(%edi)
40f4ac:	66 73 65             	data16 jae 0x40f514
40f4af:	74 20                	je     0x40f4d1
40f4b1:	3d 20 30 78 25       	cmp    $0x25783020,%eax
40f4b6:	78 60                	js     0x40f518
40f4b8:	25 30 38 78 2e       	and    $0x2e783830,%eax
40f4bd:	20 63 62             	and    %ah,0x62(%ebx)
40f4c0:	54                   	push   %esp
40f4c1:	6f                   	outsl  %ds:(%esi),(%dx)
40f4c2:	57                   	push   %edi
40f4c3:	72 69                	jb     0x40f52e
40f4c5:	74 65                	je     0x40f52c
40f4c7:	20 3d 20 25 64 2e    	and    %bh,0x2e642520
40f4cd:	20 63 62             	and    %ah,0x62(%ebx)
40f4d0:	57                   	push   %edi
40f4d1:	72 69                	jb     0x40f53c
40f4d3:	74 74                	je     0x40f549
40f4d5:	65 6e                	outsb  %gs:(%esi),(%dx)
40f4d7:	20 3d 20 25 64 2e    	and    %bh,0x2e642520
40f4dd:	0a 00                	or     (%eax),%al
40f4df:	00 46 00             	add    %al,0x0(%esi)
40f4e2:	41                   	inc    %ecx
40f4e3:	00 49 00             	add    %cl,0x0(%ecx)
40f4e6:	4c                   	dec    %esp
40f4e7:	00 55 00             	add    %dl,0x0(%ebp)
40f4ea:	52                   	push   %edx
40f4eb:	00 45 00             	add    %al,0x0(%ebp)
40f4ee:	3a 00                	cmp    (%eax),%al
40f4f0:	20 00                	and    %al,(%eax)
40f4f2:	57                   	push   %edi
40f4f3:	00 72 00             	add    %dh,0x0(%edx)
40f4f6:	69 00 74 00 65 00    	imul   $0x650074,(%eax),%eax
40f4fc:	46                   	inc    %esi
40f4fd:	00 69 00             	add    %ch,0x0(%ecx)
40f500:	6c                   	insb   (%dx),%es:(%edi)
40f501:	00 65 00             	add    %ah,0x0(%ebp)
40f504:	3a 00                	cmp    (%eax),%al
40f506:	20 00                	and    %al,(%eax)
40f510:	46                   	inc    %esi
40f511:	57                   	push   %edi
40f512:	61                   	popa
40f513:	69 74 46 6f 72 57 72 	imul   $0x69725772,0x6f(%esi,%eax,2),%esi
40f51a:	69
40f51b:	74 65                	je     0x40f582
40f51d:	3a 20                	cmp    (%eax),%ah
40f51f:	47                   	inc    %edi
40f520:	65 74 4f             	gs je  0x40f572
40f523:	76 65                	jbe    0x40f58a
40f525:	72 6c                	jb     0x40f593
40f527:	61                   	popa
40f528:	70 70                	jo     0x40f59a
40f52a:	65 64 52             	gs fs push %edx
40f52d:	65 73 75             	gs jae 0x40f5a5
40f530:	6c                   	insb   (%dx),%es:(%edi)
40f531:	74 20                	je     0x40f553
40f533:	66 61                	popaw
40f535:	69 6c 65 64 20 77 69 	imul   $0x74697720,0x64(%ebp,%eiz,2),%ebp
40f53c:	74
40f53d:	68 20 25 64 2e       	push   $0x2e642520
40f542:	20 4f 66             	and    %cl,0x66(%edi)
40f545:	66 73 65             	data16 jae 0x40f5ad
40f548:	74 20                	je     0x40f56a
40f54a:	3d 20 30 78 25       	cmp    $0x25783020,%eax
40f54f:	78 60                	js     0x40f5b1
40f551:	25 30 38 78 2e       	and    $0x2e783830,%eax
40f556:	20 64 77 42          	and    %ah,0x42(%edi,%esi,2)
40f55a:	79 74                	jns    0x40f5d0
40f55c:	65 73 54             	gs jae 0x40f5b3
40f55f:	6f                   	outsl  %ds:(%esi),(%dx)
40f560:	57                   	push   %edi
40f561:	72 69                	jb     0x40f5cc
40f563:	74 65                	je     0x40f5ca
40f565:	20 3d 20 25 64 2e    	and    %bh,0x2e642520
40f56b:	20 64 77 42          	and    %ah,0x42(%edi,%esi,2)
40f56f:	79 74                	jns    0x40f5e5
40f571:	65 73 57             	gs jae 0x40f5cb
40f574:	72 69                	jb     0x40f5df
40f576:	74 74                	je     0x40f5ec
40f578:	65 6e                	outsb  %gs:(%esi),(%dx)
40f57a:	20 3d 20 25 64 2e    	and    %bh,0x2e642520
40f580:	0a 00                	or     (%eax),%al
40f582:	00 00                	add    %al,(%eax)
40f584:	00 00                	add    %al,(%eax)
40f586:	00 00                	add    %al,(%eax)
40f588:	46                   	inc    %esi
40f589:	00 41 00             	add    %al,0x0(%ecx)
40f58c:	49                   	dec    %ecx
40f58d:	00 4c 00 55          	add    %cl,0x55(%eax,%eax,1)
40f591:	00 52 00             	add    %dl,0x0(%edx)
40f594:	45                   	inc    %ebp
40f595:	00 3a                	add    %bh,(%edx)
40f597:	00 20                	add    %ah,(%eax)
40f599:	00 47 00             	add    %al,0x0(%edi)
40f59c:	65 00 74 00 4f       	add    %dh,%gs:0x4f(%eax,%eax,1)
40f5a1:	00 76 00             	add    %dh,0x0(%esi)
40f5a4:	65 00 72 00          	add    %dh,%gs:0x0(%edx)
40f5a8:	6c                   	insb   (%dx),%es:(%edi)
40f5a9:	00 61 00             	add    %ah,0x0(%ecx)
40f5ac:	70 00                	jo     0x40f5ae
40f5ae:	70 00                	jo     0x40f5b0
40f5b0:	65 00 64 00 52       	add    %ah,%gs:0x52(%eax,%eax,1)
40f5b5:	00 65 00             	add    %ah,0x0(%ebp)
40f5b8:	73 00                	jae    0x40f5ba
40f5ba:	75 00                	jne    0x40f5bc
40f5bc:	6c                   	insb   (%dx),%es:(%edi)
40f5bd:	00 74 00 20          	add    %dh,0x20(%eax,%eax,1)
40f5c1:	00 28                	add    %ch,(%eax)
40f5c3:	00 77 00             	add    %dh,0x0(%edi)
40f5c6:	72 00                	jb     0x40f5c8
40f5c8:	69 00 74 00 65 00    	imul   $0x650074,(%eax),%eax
40f5ce:	29 00                	sub    %eax,(%eax)
40f5d0:	3a 00                	cmp    (%eax),%al
40f5d2:	20 00                	and    %al,(%eax)
40f5d4:	00 00                	add    %al,(%eax)
40f5d6:	00 00                	add    %al,(%eax)
40f5d8:	46                   	inc    %esi
40f5d9:	57                   	push   %edi
40f5da:	61                   	popa
40f5db:	69 74 46 6f 72 57 72 	imul   $0x69725772,0x6f(%esi,%eax,2),%esi
40f5e2:	69
40f5e3:	74 65                	je     0x40f64a
40f5e5:	2e 20 47 65          	and    %al,%cs:0x65(%edi)
40f5e9:	74 4f                	je     0x40f63a
40f5eb:	76 65                	jbe    0x40f652
40f5ed:	72 6c                	jb     0x40f65b
40f5ef:	61                   	popa
40f5f0:	70 70                	jo     0x40f662
40f5f2:	65 64 52             	gs fs push %edx
40f5f5:	65 73 75             	gs jae 0x40f66d
40f5f8:	6c                   	insb   (%dx),%es:(%edi)
40f5f9:	74 20                	je     0x40f61b
40f5fb:	68 61 64 20 74       	push   $0x74206461
40f600:	68 65 20 77 72       	push   $0x72772065
40f605:	6f                   	outsl  %ds:(%esi),(%dx)
40f606:	6e                   	outsb  %ds:(%esi),(%dx)
40f607:	67 20 6e 75          	and    %ch,0x75(%bp)
40f60b:	6d                   	insl   (%dx),%es:(%edi)
40f60c:	62 65 72             	bound  %esp,0x72(%ebp)
40f60f:	20 6f 66             	and    %ch,0x66(%edi)
40f612:	20 62 79             	and    %ah,0x79(%edx)
40f615:	74 65                	je     0x40f67c
40f617:	73 21                	jae    0x40f63a
40f619:	20 4f 66             	and    %cl,0x66(%edi)
40f61c:	66 73 65             	data16 jae 0x40f684
40f61f:	74 20                	je     0x40f641