40c3c6:	57                   	push   %edi
40c3c7:	50                   	push   %eax
40c3c8:	57                   	push   %edi
40c3c9:	59                   	pop    %ecx
40c3ca:	48                   	dec    %eax
40c3cb:	74 56                	je     0x40c423
40c3cd:	66 30 78 6c          	data16 xor %bh,0x6c(%eax)
40c3d1:	64 2b 55 5a          	sub    %fs:0x5a(%ebp),%edx
40c3d5:	37                   	aaa
40c3d6:	71 65                	jno    0x40c43d
40c3d8:	50                   	push   %eax
40c3d9:	64 77 4e             	fs ja  0x40c42a
40c3dc:	6c                   	insb   (%dx),%es:(%edi)
40c3dd:	63 67 33             	arpl   %esp,0x33(%edi)
40c3e0:	54                   	push   %esp
40c3e1:	4a                   	dec    %edx
40c3e2:	4e                   	dec    %esi
40c3e3:	66 33 45 6c          	xor    0x6c(%ebp),%ax
40c3e7:	72 42                	jb     0x40c42b
40c3e9:	42                   	inc    %edx
40c3ea:	42                   	inc    %edx
40c3eb:	42                   	inc    %edx
40c3ec:	66 33 75 34          	xor    0x34(%ebp),%si
40c3f0:	4e                   	dec    %esi
40c3f1:	35 4a 36 76 67       	xor    $0x6776364a,%eax
40c3f6:	57                   	push   %edi
40c3f7:	41                   	inc    %ecx
40c3f8:	64 7a 62             	fs jp  0x40c45d
40c3fb:	75 76                	jne    0x40c473
40c3fd:	70 56                	jo     0x40c455
40c3ff:	76 61                	jbe    0x40c462
40c401:	41                   	inc    %ecx
40c402:	77 2b                	ja     0x40c42f
40c404:	42                   	inc    %edx
40c405:	43                   	inc    %ebx
40c406:	76 62                	jbe    0x40c46a
40c408:	50                   	push   %eax
40c409:	74 53                	je     0x40c45e
40c40b:	6d                   	insl   (%dx),%es:(%edi)
40c40c:	43                   	inc    %ebx
40c40d:	30 35 47 41 37 59    	xor    %dh,0x59374147
40c413:	45                   	inc    %ebp
40c414:	72 49                	jb     0x40c45f
40c416:	6b 36 49             	imul   $0x49,(%esi),%esi
40c419:	70 30                	jo     0x40c44b
40c41b:	76 5a                	jbe    0x40c477
40c41d:	6a 44                	push   $0x44
40c41f:	66 65 51             	gs push %cx
40c422:	5a                   	pop    %edx
40c423:	6c                   	insb   (%dx),%es:(%edi)
40c424:	7a 58                	jp     0x40c47e
40c426:	77 78                	ja     0x40c4a0
40c428:	65 41                	gs inc %ecx
40c42a:	43                   	inc    %ebx
40c42b:	6c                   	insb   (%dx),%es:(%edi)
40c42c:	4f                   	dec    %edi
40c42d:	6c                   	insb   (%dx),%es:(%edi)
40c42e:	52                   	push   %edx
40c42f:	54                   	push   %esp
40c430:	4f                   	dec    %edi
40c431:	71 59                	jno    0x40c48c
40c433:	36 79 44             	ss jns 0x40c47a
40c436:	6a 67                	push   $0x67
40c438:	6f                   	outsl  %ds:(%esi),(%dx)
40c439:	54                   	push   %esp
40c43a:	47                   	inc    %edi
40c43b:	48                   	dec    %eax
40c43c:	4b                   	dec    %ebx
40c43d:	42                   	inc    %edx
40c43e:	64 72 73             	fs jb  0x40c4b4
40c441:	34 71                	xor    $0x71,%al
40c443:	47                   	inc    %edi
40c444:	64 57                	fs push %edi
40c446:	4d                   	dec    %ebp
40c447:	33 31                	xor    (%ecx),%esi
40c449:	75 70                	jne    0x40c4bb
40c44b:	54                   	push   %esp
40c44c:	4e                   	dec    %esi
40c44d:	31 52 63             	xor    %edx,0x63(%edx)
40c450:	34 64                	xor    $0x64,%al
40c452:	62 2b                	bound  %ebp,(%ebx)
40c454:	71 61                	jno    0x40c4b7
40c456:	42                   	inc    %edx
40c457:	51                   	push   %ecx
40c458:	42                   	inc    %edx
40c459:	38 32                	cmp    %dh,(%edx)
40c45b:	57                   	push   %edi
40c45c:	65 66 71 69          	gs data16 jno 0x40c4c9
40c460:	78 63                	js     0x40c4c5
40c462:	53                   	push   %ebx
40c463:	54                   	push   %esp
40c464:	57                   	push   %edi
40c465:	61                   	popa
40c466:	4c                   	dec    %esp
40c467:	71 6c                	jno    0x40c4d5
40c469:	56                   	push   %esi
40c46a:	63 42 64             	arpl   %eax,0x64(%edx)
40c46d:	2b 42 2b             	sub    0x2b(%edx),%eax
40c470:	6a 64                	push   $0x64
40c472:	4c                   	dec    %esp
40c473:	52                   	push   %edx
40c474:	4e                   	dec    %esi
40c475:	53                   	push   %ebx
40c476:	6f                   	outsl  %ds:(%esi),(%dx)
40c477:	50                   	push   %eax
40c478:	6d                   	insl   (%dx),%es:(%edi)
40c479:	2f                   	das
40c47a:	6f                   	outsl  %ds:(%esi),(%dx)
40c47b:	42                   	inc    %edx
40c47c:	55                   	push   %ebp
40c47d:	2f                   	das
40c47e:	74 2f                	je     0x40c4af
40c480:	48                   	dec    %eax
40c481:	61                   	popa
40c482:	66 65 77 4c          	data16 gs ja 0x40c4d2
40c486:	47                   	inc    %edi
40c487:	67 32 4f 4b          	xor    0x4b(%bx),%cl
40c48b:	31 35 61 2b 69 39    	xor    %esi,0x39692b61
40c491:	32 4a 47             	xor    0x47(%edx),%cl
40c494:	6e                   	outsb  %ds:(%esi),(%dx)
40c495:	58                   	pop    %eax
40c496:	51                   	push   %ecx
40c497:	46                   	inc    %esi
40c498:	69 7a 67 45 42 5a 58 	imul   $0x585a4245,0x67(%edx),%edi
40c49f:	75 73                	jne    0x40c514
40c4a1:	57                   	push   %edi
40c4a2:	4d                   	dec    %ebp
40c4a3:	33 42 4e             	xor    0x4e(%edx),%eax
40c4a6:	77 4a                	ja     0x40c4f2
40c4a8:	57                   	push   %edi
40c4a9:	69 61 6a 68 5a 66 70 	imul   $0x70665a68,0x6a(%ecx),%esp
40c4b0:	36 4b                	ss dec %ebx
40c4b2:	42                   	inc    %edx
40c4b3:	32 76 55             	xor    0x55(%esi),%dh
40c4b6:	46                   	inc    %esi
40c4b7:	70 57                	jo     0x40c510
40c4b9:	39 77 4c             	cmp    %esi,0x4c(%edi)
40c4bc:	54                   	push   %esp
40c4bd:	6c                   	insb   (%dx),%es:(%edi)
40c4be:	47                   	inc    %edi
40c4bf:	46                   	inc    %esi
40c4c0:	45                   	inc    %ebp
40c4c1:	51                   	push   %ecx
40c4c2:	2f                   	das
40c4c3:	4b                   	dec    %ebx
40c4c4:	57                   	push   %edi
40c4c5:	52                   	push   %edx
40c4c6:	4b                   	dec    %ebx
40c4c7:	52                   	push   %edx
40c4c8:	36 42                	ss inc %edx
40c4ca:	73 33                	jae    0x40c4ff
40c4cc:	6e                   	outsb  %ds:(%esi),(%dx)
40c4cd:	59                   	pop    %ecx
40c4ce:	71 5a                	jno    0x40c52a
40c4d0:	39 35 7a 43 41 65    	cmp    %esi,0x6541437a
40c4d6:	36 45                	ss inc %ebp
40c4d8:	50                   	push   %eax
40c4d9:	42                   	inc    %edx
40c4da:	4a                   	dec    %edx
40c4db:	67 55                	addr16 push %ebp
40c4dd:	2f                   	das
40c4de:	4a                   	dec    %edx
40c4df:	7a 6a                	jp     0x40c54b
40c4e1:	77 68                	ja     0x40c54b
40c4e3:	58                   	pop    %eax
40c4e4:	53                   	push   %ebx
40c4e5:	38 4b 66             	cmp    %cl,0x66(%ebx)
40c4e8:	32 65 63             	xor    0x63(%ebp),%ah
40c4eb:	36 45                	ss inc %ebp
40c4ed:	55                   	push   %ebp
40c4ee:	38 79 57             	cmp    %bh,0x57(%ecx)
40c4f1:	72 50                	jb     0x40c543
40c4f3:	6f                   	outsl  %ds:(%esi),(%dx)
40c4f4:	34 2b                	xor    $0x2b,%al
40c4f6:	32 4a 49             	xor    0x49(%edx),%cl
40c4f9:	2b 2f                	sub    (%edi),%ebp
40c4fb:	33 48 6c             	xor    0x6c(%eax),%ecx
40c4fe:	2f                   	das
40c4ff:	71 6e                	jno    0x40c56f
40c501:	4e                   	dec    %esi
40c502:	59                   	pop    %ecx
40c503:	34 30                	xor    $0x30,%al
40c505:	59                   	pop    %ecx
40c506:	79 47                	jns    0x40c54f
40c508:	68 55 45 64 75       	push   $0x75644555
40c50d:	48                   	dec    %eax
40c50e:	6d                   	insl   (%dx),%es:(%edi)
40c50f:	68 30 2b 61 36       	push   $0x36612b30
40c514:	45                   	inc    %ebp
40c515:	57                   	push   %edi
40c516:	34 72                	xor    $0x72,%al
40c518:	4e                   	dec    %esi
40c519:	57                   	push   %edi
40c51a:	62 65 4a             	bound  %esp,0x4a(%ebp)
40c51d:	77 52                	ja     0x40c571
40c51f:	55                   	push   %ebp
40c520:	75 73                	jne    0x40c595
40c522:	37                   	aaa
40c523:	73 32                	jae    0x40c557
40c525:	49                   	dec    %ecx
40c526:	64 69 43 75 47 77 72 	imul   $0x74727747,%fs:0x75(%ebx),%eax
40c52d:	74
40c52e:	39 63 4b             	cmp    %esp,0x4b(%ebx)
40c531:	6d                   	insl   (%dx),%es:(%edi)
40c532:	43                   	inc    %ebx
40c533:	39 6e 35             	cmp    %ebp,0x35(%esi)
40c536:	4a                   	dec    %edx
40c537:	6c                   	insb   (%dx),%es:(%edi)
40c538:	50                   	push   %eax
40c539:	41                   	inc    %ecx
40c53a:	55                   	push   %ebp
40c53b:	52                   	push   %edx
40c53c:	30 57 52             	xor    %dl,0x52(%edi)
40c53f:	77 4f                	ja     0x40c590
40c541:	64 73 42             	fs jae 0x40c586
40c544:	4f                   	dec    %edi
40c545:	49                   	dec    %ecx
40c546:	70 56                	jo     0x40c59e
40c548:	6e                   	outsb  %ds:(%esi),(%dx)
40c549:	66 4a                	dec    %dx
40c54b:	36 53                	ss push %ebx
40c54d:	6d                   	insl   (%dx),%es:(%edi)
40c54e:	75 45                	jne    0x40c595
40c550:	76 31                	jbe    0x40c583
40c552:	35 4c 38 6a 41       	xor    $0x416a384c,%eax
40c557:	46                   	inc    %esi
40c558:	59                   	pop    %ecx
40c559:	2f                   	das
40c55a:	38 55 63             	cmp    %dl,0x63(%ebp)
40c55d:	45                   	inc    %ebp
40c55e:	47                   	inc    %edi
40c55f:	50                   	push   %eax
40c560:	56                   	push   %esi
40c561:	55                   	push   %ebp
40c562:	42                   	inc    %edx
40c563:	49                   	dec    %ecx
40c564:	55                   	push   %ebp
40c565:	4e                   	dec    %esi
40c566:	44                   	inc    %esp
40c567:	48                   	dec    %eax
40c568:	6c                   	insb   (%dx),%es:(%edi)
40c569:	4e                   	dec    %esi
40c56a:	4a                   	dec    %edx
40c56b:	6c                   	insb   (%dx),%es:(%edi)
40c56c:	54                   	push   %esp
40c56d:	41                   	inc    %ecx
40c56e:	68 69 67 68 50       	push   $0x50686769
40c573:	4f                   	dec    %edi
40c574:	5a                   	pop    %edx
40c575:	63 43 63             	arpl   %eax,0x63(%ebx)
40c578:	30 49 64             	xor    %cl,0x64(%ecx)
40c57b:	68 2f 63 51 4c       	push   $0x4c51632f
40c580:	7a 5a                	jp     0x40c5dc
40c582:	4b                   	dec    %ebx
40c583:	77 73                	ja     0x40c5f8
40c585:	34 41                	xor    $0x41,%al
40c587:	67 62 7a 62          	bound  %edi,0x62(%bp,%si)
40c58b:	42                   	inc    %edx
40c58c:	36 56                	ss push %esi
40c58e:	4f                   	dec    %edi
40c58f:	65 6c                	gs insb (%dx),%es:(%edi)
40c591:	44                   	inc    %esp
40c592:	55                   	push   %ebp
40c593:	62 37                	bound  %esi,(%edi)
40c595:	52                   	push   %edx
40c596:	56                   	push   %esi
40c597:	43                   	inc    %ebx
40c598:	78 7a                	js     0x40c614
40c59a:	50                   	push   %eax
40c59b:	4c                   	dec    %esp
40c59c:	71 71                	jno    0x40c60f
40c59e:	4c                   	dec    %esp
40c59f:	46                   	inc    %esi
40c5a0:	72 67                	jb     0x40c609
40c5a2:	4a                   	dec    %edx
40c5a3:	55                   	push   %ebp
40c5a4:	4e                   	dec    %esi
40c5a5:	32 43 4b             	xor    0x4b(%ebx),%al
40c5a8:	33 6c 34 34          	xor    0x34(%esp,%esi,1),%ebp
40c5ac:	76 57                	jbe    0x40c605
40c5ae:	45                   	inc    %ebp
40c5af:	4d                   	dec    %ebp
40c5b0:	6b 58 34 57          	imul   $0x57,0x34(%eax),%ebx
40c5b4:	74 32                	je     0x40c5e8
40c5b6:	71 68                	jno    0x40c620
40c5b8:	37                   	aaa
40c5b9:	46                   	inc    %esi
40c5ba:	50                   	push   %eax
40c5bb:	47                   	inc    %edi
40c5bc:	6e                   	outsb  %ds:(%esi),(%dx)
40c5bd:	6a 41                	push   $0x41
40c5bf:	6e                   	outsb  %ds:(%esi),(%dx)
40c5c0:	58                   	pop    %eax
40c5c1:	46                   	inc    %esi
40c5c2:	53                   	push   %ebx
40c5c3:	6c                   	insb   (%dx),%es:(%edi)
40c5c4:	4b                   	dec    %ebx
40c5c5:	75 4b                	jne    0x40c612
40c5c7:	6f                   	outsl  %ds:(%esi),(%dx)
40c5c8:	70 56                	jo     0x40c620
40c5ca:	31 30                	xor    %esi,(%eax)
40c5cc:	44                   	inc    %esp
40c5cd:	51                   	push   %ecx
40c5ce:	56                   	push   %esi
40c5cf:	48                   	dec    %eax
40c5d0:	6b 2f 41             	imul   $0x41,(%edi),%ebp
40c5d3:	56                   	push   %esi
40c5d4:	45                   	inc    %ebp
40c5d5:	75 56                	jne    0x40c62d
40c5d7:	68 68 36 76 67       	push   $0x67763668
40c5dc:	77 37                	ja     0x40c615
40c5de:	53                   	push   %ebx
40c5df:	59                   	pop    %ecx
40c5e0:	62 71 76             	bound  %esi,0x76(%ecx)
40c5e3:	52                   	push   %edx
40c5e4:	49                   	dec    %ecx
40c5e5:	39 72 59             	cmp    %esi,0x59(%edx)
40c5e8:	42                   	inc    %edx
40c5e9:	68 55 39 44 53       	push   $0x53443955
40c5ee:	6b 32 4d             	imul   $0x4d,(%edx),%esi
40c5f1:	4f                   	dec    %edi
40c5f2:	74 56                	je     0x40c64a
40c5f4:	4f                   	dec    %edi
40c5f5:	67 75 36             	addr16 jne 0x40c62e
40c5f8:	6b 79 4a 44          	imul   $0x44,0x4a(%ecx),%edi
40c5fc:	4a                   	dec    %edx
40c5fd:	50                   	push   %eax
40c5fe:	2b 68 67             	sub    0x67(%eax),%ebp
40c601:	69 72 6a 50 41 5a 54 	imul   $0x545a4150,0x6a(%edx),%esi
40c608:	59                   	pop    %ecx
40c609:	41                   	inc    %ecx
40c60a:	6c                   	insb   (%dx),%es:(%edi)
40c60b:	6d                   	insl   (%dx),%es:(%edi)
40c60c:	72 48                	jb     0x40c656
40c60e:	54                   	push   %esp
40c60f:	69 5a 5a 62 31 31 59 	imul   $0x59313162,0x5a(%edx),%ebx
40c616:	63 51 46             	arpl   %edx,0x46(%ecx)
40c619:	6d                   	insl   (%dx),%es:(%edi)
40c61a:	31 51 47             	xor    %edx,0x47(%ecx)
40c61d:	31 6f 71             	xor    %ebp,0x71(%edi)
40c620:	37                   	aaa
40c621:	44                   	inc    %esp
40c622:	70 54                	jo     0x40c678
40c624:	59                   	pop    %ecx
40c625:	33 50 75             	xor    0x75(%eax),%edx
40c628:	51                   	push   %ecx
40c629:	48                   	dec    %eax
40c62a:	64 36 77 6b          	fs ss ja 0x40c699
40c62e:	4e                   	dec    %esi
40c62f:	62 57 7a             	bound  %edx,0x7a(%edi)