40e15b:	50                   	push   %eax
40e15c:	a2 43 22 77 3e       	mov    %al,0x3e772243
40e161:	27                   	daa
40e162:	12 3d 93 71 89 2e    	adc    0x2e897193,%bh
40e168:	b0 b0                	mov    $0xb0,%al
40e16a:	00 28                	add    %ch,(%eax)
40e16c:	b8 24 84 0c 9d       	mov    $0x9d0c8424,%eax
40e171:	4e                   	dec    %esi
40e172:	33 6c 85 82          	xor    -0x7e(%ebp,%eax,4),%ebp
40e176:	34 68                	xor    $0x68,%al
40e178:	8a 8a 00 55 9f 9c    	mov    -0x6360ab00(%edx),%cl
40e17e:	8b 6a 5f             	mov    0x5f(%edx),%ebp
40e181:	a0 20 81 05 b4       	mov    0xb4058120,%al
40e186:	1b 0e                	sbb    (%esi),%ecx
40e188:	61                   	popa
40e189:	61                   	popa
40e18a:	00 8f 60 aa 09 31    	add    %cl,0x3109aa60(%edi)
40e190:	0b 23                	or     (%ebx),%esp
40e192:	1e                   	push   %ds
40e193:	1a 69 64             	sbb    0x64(%ecx),%ch
40e196:	a3 2b 48 48 00       	mov    %eax,0x48482b
40e19b:	29 9a 40 1d 7f 9b    	sub    %ebx,-0x6480e2c0(%edx)
40e1a1:	92                   	xchg   %eax,%edx
40e1a2:	72 97                	jb     0x40e13b
40e1a4:	86 95 1c 32 6d 6d    	xchg   %dl,0x6d6d321c(%ebp)
40e1aa:	00 bc bb 30 6e ba 51 	add    %bh,0x51ba6e30(%ebx,%edi,4)
40e1b1:	4d                   	dec    %ebp
40e1b2:	54                   	push   %esp
40e1b3:	63 19                	arpl   %ebx,(%ecx)
40e1b5:	49                   	dec    %ecx
40e1b6:	45                   	inc    %ebp
40e1b7:	75 41                	jne    0x40e1fa
40e1b9:	41                   	inc    %ecx
40e1ba:	00 01                	add    %al,(%ecx)
40e1bc:	bf be b3 10 3c       	mov    $0x3c10b3be,%edi
40e1c1:	6f                   	outsl  %ds:(%esi),(%dx)
40e1c2:	a4                   	movsb  %ds:(%esi),%es:(%edi)
40e1c3:	3b 37                	cmp    (%edi),%esi
40e1c5:	b5 2a                	mov    $0x2a,%ch
40e1c7:	2c 93                	sub    $0x93,%al
40e1c9:	93                   	xchg   %eax,%ebx
40e1ca:	00 53 ac             	add    %dl,-0x54(%ebx)
40e1cd:	0f 9e 04 c1          	setle  (%ecx,%eax,8)
40e1d1:	ab                   	stos   %eax,%es:(%edi)
40e1d2:	6b 02 80             	imul   $0xffffff80,(%edx),%eax
40e1d5:	4b                   	dec    %ebx
40e1d6:	18 a9 93 93 00 14    	sbb    %ch,0x14009393(%ecx)
40e1dc:	8c 0d 03 83 36 39    	mov    %cs,0x39368303
40e1e2:	3a b1 b2 7d 06 35    	cmp    0x35067db2(%ecx),%dh
40e1e8:	93                   	xchg   %eax,%ebx
40e1e9:	93                   	xchg   %eax,%ebx
40e1ea:	00 5a 52             	add    %bl,0x52(%edx)
40e1ed:	59                   	pop    %ecx
40e1ee:	93                   	xchg   %eax,%ebx
40e1ef:	11 93 b7 b7 b6 93    	adc    %edx,-0x6c494849(%ebx)
40e1f5:	0a 2d a6 93 93 00    	or     0x9393a6,%ch
40e1fb:	4c                   	dec    %esp
40e1fc:	66 99                	cwtd
40e1fe:	79 3f                	jns    0x40e23f
40e200:	96                   	xchg   %eax,%esi
40e201:	a8 67                	test   $0x67,%al
40e203:	5b                   	pop    %ebx
40e204:	a1 b9 47 93 76       	mov    0x769347b9,%eax
40e209:	76 00                	jbe    0x40e20b
40e20b:	56                   	push   %esi
40e20c:	74 5e                	je     0x40e26c
40e20e:	58                   	pop    %eax
40e20f:	73 57                	jae    0x40e268
40e211:	78 15                	js     0x40e228
40e213:	98                   	cwtl
40e214:	4a                   	dec    %edx
40e215:	88 90 13 93 93 00    	mov    %dl,0x939313(%eax)
40e21b:	8e 25 62 21 4f ae    	mov    0xae4f2162,%fs
40e221:	08 1f                	or     %bl,(%edi)
40e223:	ad                   	lods   %ds:(%esi),%eax
40e224:	5d                   	pop    %ebp
40e225:	91                   	xchg   %eax,%ecx
40e226:	93                   	xchg   %eax,%ebx
40e227:	26 93                	es xchg %eax,%ebx
40e229:	93                   	xchg   %eax,%ebx
40e22a:	00 00                	add    %al,(%eax)
40e22c:	01 00                	add    %eax,(%eax)
40e22e:	00 00                	add    %al,(%eax)
40e230:	01 00                	add    %eax,(%eax)
40e232:	00 00                	add    %al,(%eax)
40e234:	01 00                	add    %eax,(%eax)
40e236:	00 00                	add    %al,(%eax)
40e238:	01 00                	add    %eax,(%eax)
40e23a:	00 00                	add    %al,(%eax)
40e23c:	01 00                	add    %eax,(%eax)
40e23e:	00 00                	add    %al,(%eax)
40e240:	01 00                	add    %eax,(%eax)
40e242:	00 00                	add    %al,(%eax)
40e244:	01 00                	add    %eax,(%eax)
40e246:	00 00                	add    %al,(%eax)
40e248:	01 00                	add    %eax,(%eax)
40e24a:	00 00                	add    %al,(%eax)
40e24c:	01 00                	add    %eax,(%eax)
40e24e:	00 00                	add    %al,(%eax)
40e250:	01 00                	add    %eax,(%eax)
40e252:	00 00                	add    %al,(%eax)
40e254:	01 00                	add    %eax,(%eax)
40e256:	00 00                	add    %al,(%eax)
40e258:	01 00                	add    %eax,(%eax)
40e25a:	00 00                	add    %al,(%eax)
40e25c:	01 00                	add    %eax,(%eax)
40e25e:	00 00                	add    %al,(%eax)
40e260:	01 00                	add    %eax,(%eax)
40e262:	00 00                	add    %al,(%eax)
40e264:	01 00                	add    %eax,(%eax)
40e266:	00 00                	add    %al,(%eax)
40e268:	01 00                	add    %eax,(%eax)
40e26a:	00 0b                	add    %cl,(%ebx)
40e26c:	b4 00                	mov    $0x0,%ah
40e26e:	00 00                	add    %al,(%eax)
40e270:	ce                   	into
40e271:	ca ef be             	lret   $0xbeef
40e274:	01 00                	add    %eax,(%eax)
40e276:	00 00                	add    %al,(%eax)
40e278:	91                   	xchg   %eax,%ecx
40e279:	00 00                	add    %al,(%eax)
40e27b:	00 6c 53 79          	add    %ch,0x79(%ebx,%edx,2)
40e27f:	73 74                	jae    0x40e2f5
40e281:	65 6d                	gs insl (%dx),%es:(%edi)
40e283:	2e 52                	cs push %edx
40e285:	65 73 6f             	gs jae 0x40e2f7
40e288:	75 72                	jne    0x40e2fc
40e28a:	63 65 73             	arpl   %esp,0x73(%ebp)
40e28d:	2e 52                	cs push %edx
40e28f:	65 73 6f             	gs jae 0x40e301
40e292:	75 72                	jne    0x40e306
40e294:	63 65 52             	arpl   %esp,0x52(%ebp)
40e297:	65 61                	gs popa
40e299:	64 65 72 2c          	fs gs jb 0x40e2c9
40e29d:	20 6d 73             	and    %ch,0x73(%ebp)
40e2a0:	63 6f 72             	arpl   %ebp,0x72(%edi)
40e2a3:	6c                   	insb   (%dx),%es:(%edi)
40e2a4:	69 62 2c 20 56 65 72 	imul   $0x72655620,0x2c(%edx),%esp
40e2ab:	73 69                	jae    0x40e316
40e2ad:	6f                   	outsl  %ds:(%esi),(%dx)
40e2ae:	6e                   	outsb  %ds:(%esi),(%dx)
40e2af:	3d 34 2e 30 2e       	cmp    $0x2e302e34,%eax
40e2b4:	30 2e                	xor    %ch,(%esi)
40e2b6:	30 2c 20             	xor    %ch,(%eax,%eiz,1)
40e2b9:	43                   	inc    %ebx
40e2ba:	75 6c                	jne    0x40e328
40e2bc:	74 75                	je     0x40e333
40e2be:	72 65                	jb     0x40e325
40e2c0:	3d 6e 65 75 74       	cmp    $0x7475656e,%eax
40e2c5:	72 61                	jb     0x40e328
40e2c7:	6c                   	insb   (%dx),%es:(%edi)
40e2c8:	2c 20                	sub    $0x20,%al
40e2ca:	50                   	push   %eax
40e2cb:	75 62                	jne    0x40e32f
40e2cd:	6c                   	insb   (%dx),%es:(%edi)
40e2ce:	69 63 4b 65 79 54 6f 	imul   $0x6f547965,0x4b(%ebx),%esp
40e2d5:	6b 65 6e 3d          	imul   $0x3d,0x6e(%ebp),%esp
40e2d9:	62 37                	bound  %esi,(%edi)
40e2db:	37                   	aaa
40e2dc:	61                   	popa
40e2dd:	35 63 35 36 31       	xor    $0x31363563,%eax
40e2e2:	39 33                	cmp    %esi,(%ebx)
40e2e4:	34 65                	xor    $0x65,%al
40e2e6:	30 38                	xor    %bh,(%eax)
40e2e8:	39 23                	cmp    %esp,(%ebx)
40e2ea:	53                   	push   %ebx
40e2eb:	79 73                	jns    0x40e360
40e2ed:	74 65                	je     0x40e354
40e2ef:	6d                   	insl   (%dx),%es:(%edi)
40e2f0:	2e 52                	cs push %edx
40e2f2:	65 73 6f             	gs jae 0x40e364
40e2f5:	75 72                	jne    0x40e369
40e2f7:	63 65 73             	arpl   %esp,0x73(%ebp)
40e2fa:	2e 52                	cs push %edx
40e2fc:	75 6e                	jne    0x40e36c
40e2fe:	74 69                	je     0x40e369
40e300:	6d                   	insl   (%dx),%es:(%edi)
40e301:	65 52                	gs push %edx
40e303:	65 73 6f             	gs jae 0x40e375
40e306:	75 72                	jne    0x40e37a
40e308:	63 65 53             	arpl   %esp,0x53(%ebp)
40e30b:	65 74 02             	gs je  0x40e310
40e316:	00 00                	add    %al,(%eax)
40e318:	00 50 41             	add    %dl,0x41(%eax)
40e31b:	44                   	inc    %esp
40e31c:	50                   	push   %eax
40e31d:	41                   	inc    %ecx
40e31e:	44                   	inc    %esp
40e31f:	50                   	push   %eax
40e320:	b4 00                	mov    $0x0,%ah
40e322:	00 00                	add    %al,(%eax)
40e324:	b4 00                	mov    $0x0,%ah
40e326:	00 00                	add    %al,(%eax)
40e328:	ce                   	into
40e329:	ca ef be             	lret   $0xbeef
40e32c:	01 00                	add    %eax,(%eax)
40e32e:	00 00                	add    %al,(%eax)
40e330:	91                   	xchg   %eax,%ecx
40e331:	00 00                	add    %al,(%eax)
40e333:	00 6c 53 79          	add    %ch,0x79(%ebx,%edx,2)
40e337:	73 74                	jae    0x40e3ad
40e339:	65 6d                	gs insl (%dx),%es:(%edi)
40e33b:	2e 52                	cs push %edx
40e33d:	65 73 6f             	gs jae 0x40e3af
40e340:	75 72                	jne    0x40e3b4
40e342:	63 65 73             	arpl   %esp,0x73(%ebp)
40e345:	2e 52                	cs push %edx
40e347:	65 73 6f             	gs jae 0x40e3b9
40e34a:	75 72                	jne    0x40e3be
40e34c:	63 65 52             	arpl   %esp,0x52(%ebp)
40e34f:	65 61                	gs popa
40e351:	64 65 72 2c          	fs gs jb 0x40e381
40e355:	20 6d 73             	and    %ch,0x73(%ebp)
40e358:	63 6f 72             	arpl   %ebp,0x72(%edi)
40e35b:	6c                   	insb   (%dx),%es:(%edi)
40e35c:	69 62 2c 20 56 65 72 	imul   $0x72655620,0x2c(%edx),%esp
40e363:	73 69                	jae    0x40e3ce
40e365:	6f                   	outsl  %ds:(%esi),(%dx)
40e366:	6e                   	outsb  %ds:(%esi),(%dx)
40e367:	3d 34 2e 30 2e       	cmp    $0x2e302e34,%eax
40e36c:	30 2e                	xor    %ch,(%esi)
40e36e:	30 2c 20             	xor    %ch,(%eax,%eiz,1)
40e371:	43                   	inc    %ebx
40e372:	75 6c                	jne    0x40e3e0
40e374:	74 75                	je     0x40e3eb
40e376:	72 65                	jb     0x40e3dd
40e378:	3d 6e 65 75 74       	cmp    $0x7475656e,%eax
40e37d:	72 61                	jb     0x40e3e0
40e37f:	6c                   	insb   (%dx),%es:(%edi)
40e380:	2c 20                	sub    $0x20,%al
40e382:	50                   	push   %eax
40e383:	75 62                	jne    0x40e3e7
40e385:	6c                   	insb   (%dx),%es:(%edi)
40e386:	69 63 4b 65 79 54 6f 	imul   $0x6f547965,0x4b(%ebx),%esp
40e38d:	6b 65 6e 3d          	imul   $0x3d,0x6e(%ebp),%esp
40e391:	62 37                	bound  %esi,(%edi)
40e393:	37                   	aaa
40e394:	61                   	popa
40e395:	35 63 35 36 31       	xor    $0x31363563,%eax
40e39a:	39 33                	cmp    %esi,(%ebx)
40e39c:	34 65                	xor    $0x65,%al
40e39e:	30 38                	xor    %bh,(%eax)
40e3a0:	39 23                	cmp    %esp,(%ebx)
40e3a2:	53                   	push   %ebx
40e3a3:	79 73                	jns    0x40e418
40e3a5:	74 65                	je     0x40e40c
40e3a7:	6d                   	insl   (%dx),%es:(%edi)
40e3a8:	2e 52                	cs push %edx
40e3aa:	65 73 6f             	gs jae 0x40e41c
40e3ad:	75 72                	jne    0x40e421
40e3af:	63 65 73             	arpl   %esp,0x73(%ebp)
40e3b2:	2e 52                	cs push %edx
40e3b4:	75 6e                	jne    0x40e424
40e3b6:	74 69                	je     0x40e421
40e3b8:	6d                   	insl   (%dx),%es:(%edi)
40e3b9:	65 52                	gs push %edx
40e3bb:	65 73 6f             	gs jae 0x40e42d
40e3be:	75 72                	jne    0x40e432
40e3c0:	63 65 53             	arpl   %esp,0x53(%ebp)
40e3c3:	65 74 02             	gs je  0x40e3c8
40e3ce:	00 00                	add    %al,(%eax)
40e3d0:	00 50 41             	add    %dl,0x41(%eax)
40e3d3:	44                   	inc    %esp
40e3d4:	50                   	push   %eax
40e3d5:	41                   	inc    %ecx
40e3d6:	44                   	inc    %esp
40e3d7:	50                   	push   %eax
40e3d8:	b4 00                	mov    $0x0,%ah
40e3da:	00 00                	add    %al,(%eax)
40e3dc:	24 31                	and    $0x31,%al
40e3de:	00 00                	add    %al,(%eax)
40e3e0:	ce                   	into
40e3e1:	ca ef be             	lret   $0xbeef
40e3e4:	01 00                	add    %eax,(%eax)
40e3e6:	00 00                	add    %al,(%eax)
40e3e8:	91                   	xchg   %eax,%ecx
40e3e9:	00 00                	add    %al,(%eax)
40e3eb:	00 6c 53 79          	add    %ch,0x79(%ebx,%edx,2)
40e3ef:	73 74                	jae    0x40e465
40e3f1:	65 6d                	gs insl (%dx),%es:(%edi)
40e3f3:	2e 52                	cs push %edx
40e3f5:	65 73 6f             	gs jae 0x40e467
40e3f8:	75 72                	jne    0x40e46c
40e3fa:	63 65 73             	arpl   %esp,0x73(%ebp)
40e3fd:	2e 52                	cs push %edx
40e3ff:	65 73 6f             	gs jae 0x40e471
40e402:	75 72                	jne    0x40e476
40e404:	63 65 52             	arpl   %esp,0x52(%ebp)
40e407:	65 61                	gs popa
40e409:	64 65 72 2c          	fs gs jb 0x40e439
40e40d:	20 6d 73             	and    %ch,0x73(%ebp)
40e410:	63 6f 72             	arpl   %ebp,0x72(%edi)
40e413:	6c                   	insb   (%dx),%es:(%edi)
40e414:	69 62 2c 20 56 65 72 	imul   $0x72655620,0x2c(%edx),%esp
40e41b:	73 69                	jae    0x40e486
40e41d:	6f                   	outsl  %ds:(%esi),(%dx)
40e41e:	6e                   	outsb  %ds:(%esi),(%dx)
40e41f:	3d 34 2e 30 2e       	cmp    $0x2e302e34,%eax
40e424:	30 2e                	xor    %ch,(%esi)
40e426:	30 2c 20             	xor    %ch,(%eax,%eiz,1)
40e429:	43                   	inc    %ebx
40e42a:	75 6c                	jne    0x40e498
40e42c:	74 75                	je     0x40e4a3
40e42e:	72 65                	jb     0x40e495
40e430:	3d 6e 65 75 74       	cmp    $0x7475656e,%eax
40e435:	72 61                	jb     0x40e498
40e437:	6c                   	insb   (%dx),%es:(%edi)
40e438:	2c 20                	sub    $0x20,%al
40e43a:	50                   	push   %eax
40e43b:	75 62                	jne    0x40e49f
40e43d:	6c                   	insb   (%dx),%es:(%edi)
40e43e:	69 63 4b 65 79 54 6f 	imul   $0x6f547965,0x4b(%ebx),%esp
40e445:	6b 65 6e 3d          	imul   $0x3d,0x6e(%ebp),%esp
40e449:	62 37                	bound  %esi,(%edi)
40e44b:	37                   	aaa
40e44c:	61                   	popa
40e44d:	35 63 35 36 31       	xor    $0x31363563,%eax
40e452:	39 33                	cmp    %esi,(%ebx)
40e454:	34 65                	xor    $0x65,%al
40e456:	30 38                	xor    %bh,(%eax)
40e458:	39 23                	cmp    %esp,(%ebx)
40e45a:	53                   	push   %ebx
40e45b:	79 73                	jns    0x40e4d0
40e45d:	74 65                	je     0x40e4c4
40e45f:	6d                   	insl   (%dx),%es:(%edi)
40e460:	2e 52                	cs push %edx
40e462:	65 73 6f             	gs jae 0x40e4d4
40e465:	75 72                	jne    0x40e4d9
40e467:	63 65 73             	arpl   %esp,0x73(%ebp)
40e46a:	2e 52                	cs push %edx
40e46c:	75 6e                	jne    0x40e4dc
40e46e:	74 69                	je     0x40e4d9
40e470:	6d                   	insl   (%dx),%es:(%edi)
40e471:	65 52                	gs push %edx
40e473:	65 73 6f             	gs jae 0x40e4e5
40e476:	75 72                	jne    0x40e4ea
40e478:	63 65 53             	arpl   %esp,0x53(%ebp)
40e47b:	65 74 02             	gs je  0x40e480
40e47e:	00 00                	add    %al,(%eax)
40e480:	00 01                	add    %al,(%ecx)
40e482:	00 00                	add    %al,(%eax)
40e484:	00 01                	add    %al,(%ecx)
40e486:	00 00                	add    %al,(%eax)
40e488:	00 66 53             	add    %ah,0x53(%esi)
40e48b:	79 73                	jns    0x40e500
40e48d:	74 65                	je     0x40e4f4
40e48f:	6d                   	insl   (%dx),%es:(%edi)
40e490:	2e 44                	cs inc %esp
40e492:	72 61                	jb     0x40e4f5
40e494:	77 69                	ja     0x40e4ff