40b2fa:	00 6d 00             	add    %ch,0x0(%ebp)
40b2fd:	65 00 6e 00          	add    %ch,%gs:0x0(%esi)
40b301:	75 00                	jne    0x40b303
40b303:	00 17                	add    %dl,(%edi)
40b305:	73 00                	jae    0x40b307
40b307:	70 00                	jo     0x40b309
40b309:	72 00                	jb     0x40b30b
40b30b:	69 00 74 00 65 00    	imul   $0x650074,(%eax),%eax
40b311:	5f                   	pop    %edi
40b312:	00 74 00 65          	add    %dh,0x65(%eax,%eax,1)
40b316:	00 73 00             	add    %dh,0x0(%ebx)
40b319:	74 00                	je     0x40b31b
40b31b:	00 23                	add    %ah,(%ebx)
40b31d:	74 00                	je     0x40b31f
40b31f:	65 00 73 00          	add    %dh,%gs:0x0(%ebx)
40b323:	74 00                	je     0x40b325
40b325:	5f                   	pop    %edi
40b326:	00 73 00             	add    %dh,0x0(%ebx)
40b329:	70 00                	jo     0x40b32b
40b32b:	72 00                	jb     0x40b32d
40b32d:	69 00 74 00 65 00    	imul   $0x650074,(%eax),%eax
40b333:	5f                   	pop    %edi
40b334:	00 63 00             	add    %ah,0x0(%ebx)
40b337:	6c                   	insb   (%dx),%es:(%edi)
40b338:	00 61 00             	add    %ah,0x0(%ecx)
40b33b:	73 00                	jae    0x40b33d
40b33d:	73 00                	jae    0x40b33f
40b33f:	00 5f 47             	add    %bl,0x47(%edi)
40b342:	00 4e 00             	add    %cl,0x0(%esi)
40b345:	55                   	push   %ebp
40b346:	00 5f 00             	add    %bl,0x0(%edi)
40b349:	47                   	inc    %edi
40b34a:	00 65 00             	add    %ah,0x0(%ebp)
40b34d:	6e                   	outsb  %ds:(%esi),(%dx)
40b34e:	00 65 00             	add    %ah,0x0(%ebp)
40b351:	72 00                	jb     0x40b353
40b353:	61                   	popa
40b354:	00 6c 00 5f          	add    %ch,0x5f(%eax,%eax,1)
40b358:	00 50 00             	add    %dl,0x0(%eax)
40b35b:	75 00                	jne    0x40b35d
40b35d:	62 00                	bound  %eax,(%eax)
40b35f:	6c                   	insb   (%dx),%es:(%edi)
40b360:	00 69 00             	add    %ch,0x0(%ecx)
40b363:	63 00                	arpl   %eax,(%eax)
40b365:	5f                   	pop    %edi
40b366:	00 4c 00 69          	add    %cl,0x69(%eax,%eax,1)
40b36a:	00 63 00             	add    %ah,0x0(%ebx)
40b36d:	65 00 6e 00          	add    %ch,%gs:0x0(%esi)
40b371:	73 00                	jae    0x40b373
40b373:	65 00 2e             	add    %ch,%gs:(%esi)
40b376:	00 50 00             	add    %dl,0x0(%eax)
40b379:	72 00                	jb     0x40b37b
40b37b:	6f                   	outsl  %ds:(%esi),(%dx)
40b37c:	00 70 00             	add    %dh,0x0(%eax)
40b37f:	65 00 72 00          	add    %dh,%gs:0x0(%edx)
40b383:	74 00                	je     0x40b385
40b385:	69 00 65 00 73 00    	imul   $0x730065,(%eax),%eax
40b38b:	2e 00 52 00          	add    %dl,%cs:0x0(%edx)
40b38f:	65 00 73 00          	add    %dh,%gs:0x0(%ebx)
40b393:	6f                   	outsl  %ds:(%esi),(%dx)
40b394:	00 75 00             	add    %dh,0x0(%ebp)
40b397:	72 00                	jb     0x40b399
40b399:	63 00                	arpl   %eax,(%eax)
40b39b:	65 00 73 00          	add    %dh,%gs:0x0(%ebx)
40b39f:	00 05 42 00 67 00    	add    %al,0x670042
40b3a5:	00 15 66 00 61 00    	add    %dl,0x610066
40b3ab:	63 00                	arpl   %eax,(%eax)
40b3ad:	65 00 5f 00          	add    %bl,%gs:0x0(%edi)
40b3b1:	61                   	popa
40b3b2:	00 6c 00 70          	add    %ch,0x70(%eax,%eax,1)
40b3b6:	00 68 00             	add    %ch,0x0(%eax)
40b3b9:	61                   	popa
40b3ba:	00 00                	add    %al,(%eax)
40b3bc:	59                   	pop    %ecx
40b3bd:	3c 28                	cmp    $0x28,%al
40b3bf:	20 a1 29 3f 43 83    	and    %ah,-0x7cbcc0d7(%ecx)
40b3c5:	80 cf 38             	or     $0x38,%bh
40b3c8:	42                   	inc    %edx
40b3c9:	82 0f 46             	orb    $0x46,(%edi)
40b3cc:	00 04 20             	add    %al,(%eax,%eiz,1)
40b3cf:	01 01                	add    %eax,(%ecx)
40b3d1:	08 03                	or     %al,(%ebx)
40b3d3:	20 00                	and    %al,(%eax)
40b3d5:	01 05 20 01 01 11    	add    %eax,0x11010120
40b3db:	11 04 20             	adc    %eax,(%eax,%eiz,1)
40b3de:	01 01                	add    %eax,(%ecx)
40b3e0:	0e                   	push   %cs
40b3e1:	04 20                	add    $0x20,%al
40b3e3:	01 01                	add    %eax,(%ecx)
40b3e5:	02 06                	add    (%esi),%al
40b3e7:	20 01                	and    %al,(%ecx)
40b3e9:	01 11                	add    %edx,(%ecx)
40b3eb:	80 91 07 15 12 80 9d 	adcb   $0x9d,-0x7fedeaf9(%ecx)
40b3f2:	01 11                	add    %edx,(%ecx)
40b3f4:	40                   	inc    %eax
40b3f5:	06                   	push   %es
40b3f6:	15 12 80 9d 01       	adc    $0x19d8012,%eax
40b3fb:	08 07                	or     %al,(%edi)
40b3fd:	15 12 80 a1 01       	adc    $0x1a18012,%eax
40b402:	11 40 05             	adc    %eax,0x5(%eax)
40b405:	20 02                	and    %al,(%edx)
40b407:	01 0e                	add    %ecx,(%esi)
40b409:	0e                   	push   %cs
40b40a:	06                   	push   %es
40b40b:	20 01                	and    %al,(%ecx)
40b40d:	01 11                	add    %edx,(%ecx)
40b40f:	80 e9 03             	sub    $0x3,%cl
40b412:	20 00                	and    %al,(%eax)
40b414:	0e                   	push   %cs
40b415:	03 07                	add    (%edi),%eax
40b417:	01 02                	add    %eax,(%edx)
40b419:	0c 20                	or     $0x20,%al
40b41b:	05 01 0e 0c 11       	add    $0x110c0e01,%eax
40b420:	81 09 11 81 0d 05    	orl    $0x50d8111,(%ecx)
40b426:	06                   	push   %es
40b427:	20 01                	and    %al,(%ecx)
40b429:	01 12                	add    %edx,(%edx)
40b42b:	81 05 05 20 02 01 08 	addl   $0x20060808,0x1022005
40b432:	08 06 20
40b435:	01 01                	add    %eax,(%ecx)
40b437:	11 81 11 06 20 01    	adc    %eax,0x1200611(%ecx)
40b43d:	01 11                	add    %edx,(%ecx)
40b43f:	80 cd 05             	or     $0x5,%ch
40b442:	20 02                	and    %al,(%edx)
40b444:	01 1c 18             	add    %ebx,(%eax,%ebx,1)
40b447:	06                   	push   %es
40b448:	20 01                	and    %al,(%ecx)
40b44a:	01 12                	add    %edx,(%edx)
40b44c:	81 19 05 20 02 01    	sbbl   $0x1022005,(%ecx)
40b452:	0c 0c                	or     $0xc,%al
40b454:	06                   	push   %es
40b455:	20 01                	and    %al,(%ecx)
40b457:	01 11                	add    %edx,(%ecx)
40b459:	81 1d 06 20 01 01 11 	sbbl   $0x5258111,0x1012006
40b460:	81 25 05
40b463:	20 00                	and    %al,(%eax)
40b465:	12 81 29 06 20 01    	adc    0x1200629(%ecx),%al
40b46b:	01 12                	add    %edx,(%edx)
40b46d:	81 01 06 20 01 01    	addl   $0x1012006,(%ecx)
40b473:	11 81 2d 03 07 01    	adc    %eax,0x107032d(%ecx)
40b479:	08 04 07             	or     %al,(%edi,%eax,1)
40b47c:	01 11                	add    %edx,(%ecx)
40b47e:	5d                   	pop    %ebp
40b47f:	03 07                	add    (%edi),%eax
40b481:	01 0e                	add    %ecx,(%esi)
40b483:	05 00 01 0e 1d       	add    $0x1d0e0100,%eax
40b488:	0e                   	push   %cs
40b489:	06                   	push   %es
40b48a:	07                   	pop    %es
40b48b:	03 02                	add    (%edx),%eax
40b48d:	12 65 02             	adc    0x2(%ebp),%ah
40b490:	07                   	pop    %es
40b491:	20 02                	and    %al,(%edx)
40b493:	01 0e                	add    %ecx,(%esi)
40b495:	12 81 35 03 20 00    	adc    0x200335(%ecx),%al
40b49b:	08 07                	or     %al,(%edi)
40b49d:	07                   	pop    %es
40b49e:	03 02                	add    (%edx),%eax
40b4a0:	12 65 12             	adc    0x12(%ebp),%ah
40b4a3:	69 04 20 00 12 69 05 	imul   $0x5691200,(%eax,%eiz,1),%eax
40b4aa:	07                   	pop    %es
40b4ab:	03 0d 02 02 05 00    	add    0x50202,%ecx
40b4b1:	02 0d 0d 0d 04 00    	add    0x40d0d,%cl
40b4b7:	01 0d 0d 0b 07 06    	add    %ecx,0x6070b0d
40b4bd:	12 10                	adc    (%eax),%dl
40b4bf:	0e                   	push   %cs
40b4c0:	12 71 12             	adc    0x12(%ecx),%dh
40b4c3:	1c 02                	sbb    $0x2,%al
40b4c5:	02 06                	add    (%esi),%al
40b4c7:	00 03                	add    %al,(%ebx)
40b4c9:	0e                   	push   %cs
40b4ca:	0e                   	push   %cs
40b4cb:	0e                   	push   %cs
40b4cc:	0e                   	push   %cs
40b4cd:	06                   	push   %es
40b4ce:	15 12 6d 01 12       	adc    $0x12016d12,%eax
40b4d3:	1c 04                	sbb    $0x4,%al
40b4d5:	20 01                	and    %al,(%ecx)
40b4d7:	1c 0e                	sbb    $0xe,%al
40b4d9:	05 20 01 01 13       	add    $0x13010120,%eax
40b4de:	00 03                	add    %al,(%ebx)
40b4e0:	20 00                	and    %al,(%eax)
40b4e2:	02 04 07             	add    (%edi,%eax,1),%al
40b4e5:	01 11                	add    %edx,(%ecx)
40b4e7:	75 03                	jne    0x40b4ec
40b4e9:	07                   	pop    %es
40b4ea:	01 0a                	add    %ecx,(%edx)
40b4ec:	08 15 12 79 02 12    	or     %dl,0x12027912
40b4f2:	7d 12                	jge    0x40b506
40b4f4:	2c 04                	sub    $0x4,%al
40b4f6:	07                   	pop    %es
40b4f7:	02 08                	add    (%eax),%cl
40b4f9:	02 05 10 01 00 1e    	add    0x1e000110,%al
40b4ff:	00 04 0a             	add    %al,(%edx,%ecx,1)
40b502:	01 1e                	add    %ebx,(%esi)
40b504:	00 02                	add    %al,(%edx)
40b506:	1e                   	push   %ds
40b507:	00 04 20             	add    %al,(%eax,%eiz,1)
40b50a:	00 12                	add    %dl,(%edx)
40b50c:	7d 07                	jge    0x40b515
40b50e:	20 02                	and    %al,(%edx)
40b510:	01 13                	add    %edx,(%ebx)
40b512:	00 13                	add    %dl,(%ebx)
40b514:	01 04 07             	add    %eax,(%edi,%eax,1)
40b517:	02 02                	add    (%edx),%al
40b519:	02 08                	add    (%eax),%cl
40b51b:	07                   	pop    %es
40b51c:	02 1d 12 2c 1d 12    	add    0x121d2c12,%bl
40b522:	2c 0b                	sub    $0xb,%al
40b524:	20 00                	and    %al,(%eax)
40b526:	15 12 81 51 02       	adc    $0x2518112,%eax
40b52b:	13 00                	adc    (%eax),%eax
40b52d:	13 01                	adc    (%ecx),%eax
40b52f:	09 15 12 81 51 02    	or     %edx,0x2518112
40b535:	12 7d 12             	adc    0x12(%ebp),%bh
40b538:	2c 07                	sub    $0x7,%al
40b53a:	20 02                	and    %al,(%edx)
40b53c:	01 1d 13 01 08 05    	add    %ebx,0x5080113
40b542:	07                   	pop    %es
40b543:	01 1d 1e 00 05 07    	add    %ebx,0x705001e
40b549:	01 1d 12 2c 04 07    	add    %ebx,0x7042c12
40b54f:	01 1e                	add    %ebx,(%esi)
40b551:	00 07                	add    %al,(%edi)
40b553:	00 01                	add    %al,(%ecx)
40b555:	12 7d 11             	adc    0x11(%ebp),%bh
40b558:	81 55 08 07 04 12 2c 	adcl   $0x2c120407,0x8(%ebp)
40b55f:	02 12                	add    (%edx),%dl
40b561:	2c 02                	sub    $0x2,%al
40b563:	08 20                	or     %ah,(%eax)
40b565:	02 02                	add    (%edx),%al
40b567:	13 00                	adc    (%eax),%eax
40b569:	10 13                	adc    %dl,(%ebx)
40b56b:	01 05 20 01 02 13    	add    %eax,0x13020120
40b571:	00 06                	add    %al,(%esi)
40b573:	07                   	pop    %es
40b574:	04 08                	add    $0x8,%al
40b576:	02 02                	add    (%edx),%al
40b578:	02 05 07 03 02 02    	add    0x2020307,%al
40b57e:	02 15 07 03 15 11    	add    0x11150307,%dl
40b584:	80 85 02 12 7d 12 2c 	addb   $0x2c,0x127d1202(%ebp)
40b58b:	15 11 80 89 02       	adc    $0x2898011,%eax
40b590:	12 7d 12             	adc    0x12(%ebp),%bh
40b593:	2c 02                	sub    $0x2,%al
40b595:	0b 20                	or     (%eax),%esp
40b597:	00 15 11 80 85 02    	add    %dl,0x2858011
40b59d:	13 00                	adc    (%eax),%eax
40b59f:	13 01                	adc    (%ecx),%eax
40b5a1:	09 15 11 80 85 02    	or     %edx,0x2858011
40b5a7:	12 7d 12             	adc    0x12(%ebp),%bh
40b5aa:	2c 0b                	sub    $0xb,%al
40b5ac:	20 00                	and    %al,(%eax)
40b5ae:	15 11 80 89 02       	adc    $0x2898011,%eax
40b5b3:	13 00                	adc    (%eax),%eax
40b5b5:	13 01                	adc    (%ecx),%eax
40b5b7:	1d 07 04 15 12       	sbb    $0x12150407,%eax
40b5bc:	6d                   	insl   (%dx),%es:(%edi)
40b5bd:	01 1e                	add    %ebx,(%esi)
40b5bf:	00 15 11 80 85 02    	add    %dl,0x2858011
40b5c5:	12 7d 12             	adc    0x12(%ebp),%bh
40b5c8:	2c 15                	sub    $0x15,%al
40b5ca:	11 80 89 02 12 7d    	adc    %eax,0x7d120289(%eax)
40b5d0:	12 2c 1d 1e 00 06 15 	adc    0x1506001e(,%ebx,1),%ch
40b5d7:	12 6d 01             	adc    0x1(%ebp),%ch
40b5da:	1e                   	push   %ds
40b5db:	00 05 20 00 1d 13    	add    %al,0x131d0020
40b5e1:	00 1d 07 04 15 12    	add    %bl,0x12150407
40b5e7:	6d                   	insl   (%dx),%es:(%edi)
40b5e8:	01 12                	add    %edx,(%edx)
40b5ea:	2c 15                	sub    $0x15,%al
40b5ec:	11 80 85 02 12 7d    	adc    %eax,0x7d120285(%eax)
40b5f2:	12 2c 15 11 80 89 02 	adc    0x2898011(,%edx,1),%ch
40b5f9:	12 7d 12             	adc    0x12(%ebp),%bh
40b5fc:	2c 1d                	sub    $0x1d,%al
40b5fe:	12 2c 06             	adc    (%esi,%eax,1),%ch
40b601:	15 12 6d 01 12       	adc    $0x12016d12,%eax
40b606:	2c 04                	sub    $0x4,%al
40b608:	00 01                	add    %al,(%ecx)
40b60a:	01 0e                	add    %ecx,(%esi)
40b60c:	03 07                	add    (%edi),%eax
40b60e:	01 0d 04 07 01 11    	add    %ecx,0x11010704
40b614:	40                   	inc    %eax
40b615:	05 07 03 02 08       	add    $0x8020307,%eax
40b61a:	02 05 07 03 08 08    	add    0x8080307,%al
40b620:	08 06                	or     %al,(%esi)
40b622:	00 03                	add    %al,(%ebx)
40b624:	0e                   	push   %cs
40b625:	0e                   	push   %cs
40b626:	1c 1c                	sbb    $0x1c,%al
40b628:	05 07 02 11 40       	add    $0x40110207,%eax
40b62d:	0d 03 07 01 05       	or     $0x5010703,%eax
40b632:	03 07                	add    (%edi),%eax
40b634:	01 06                	add    %eax,(%esi)
40b636:	03 07                	add    (%edi),%eax
40b638:	01 07                	add    %eax,(%edi)
40b63a:	03 07                	add    (%edi),%eax
40b63c:	01 09                	add    %ecx,(%ecx)
40b63e:	03 07                	add    (%edi),%eax
40b640:	01 0b                	add    %ecx,(%ebx)
40b642:	03 07                	add    (%edi),%eax
40b644:	01 0c 05 07 01 11 80 	add    %ecx,-0x7feefef9(,%eax,1)
40b64b:	a5                   	movsl  %ds:(%esi),%es:(%edi)
40b64c:	06                   	push   %es
40b64d:	00 01                	add    %al,(%ecx)
40b64f:	11 80 a5 0d 09 20    	adc    %eax,0x20090da5(%eax)
40b655:	02 12                	add    (%edx),%dl
40b657:	81 61 0e 11 81 65 04 	andl   $0x4658111,0xe(%ecx)
40b65e:	20 01                	and    %al,(%ecx)
40b660:	1c 1c                	sbb    $0x1c,%al
40b662:	03 1d 1e 00 05 20    	add    0x2005001e,%ebx
40b668:	01 02                	add    %eax,(%edx)
40b66a:	12 7d 07             	adc    0x7(%ebp),%bh
40b66d:	07                   	pop    %es
40b66e:	05 0b 07 0b 05       	add    $0x50b070b,%eax
40b673:	0e                   	push   %cs
40b674:	08 07                	or     %al,(%edi)
40b676:	06                   	push   %es
40b677:	05 08 0a 0a 06       	add    $0x60a0a08,%eax
40b67c:	02 07                	add    (%edi),%al
40b67e:	07                   	pop    %es
40b67f:	05 06 06 05 0b       	add    $0xb050606,%eax
40b684:	0b 08                	or     (%eax),%ecx
40b686:	07                   	pop    %es
40b687:	06                   	push   %es
40b688:	06                   	push   %es
40b689:	07                   	pop    %es
40b68a:	04 06                	add    $0x6,%al
40b68c:	08 02                	or     %al,(%edx)
40b68e:	07                   	pop    %es
40b68f:	07                   	pop    %es
40b690:	05 04 04 0c 0c       	add    $0xc0c0404,%eax
40b695:	04 07                	add    $0x7,%al
40b697:	07                   	pop    %es
40b698:	05 0c 0e 09 05       	add    $0x5090e0c,%eax
40b69d:	05 09 07 07 0e       	add    $0xe070709,%eax
40b6a2:	05 05 08 08 02       	add    $0x2080805,%eax
40b6a7:	02 09                	add    (%ecx),%cl
40b6a9:	07                   	pop    %es
40b6aa:	07                   	pop    %es
40b6ab:	08 09                	or     %cl,(%ecx)
40b6ad:	0a 04 08             	or     (%eax,%ecx,1),%al
40b6b0:	02 02                	add    (%edx),%al
40b6b2:	07                   	pop    %es
40b6b3:	07                   	pop    %es
40b6b4:	05 0a 06 0a 0e       	add    $0xe0a060a,%eax
40b6b9:	0c 07                	or     $0x7,%al
40b6bb:	07                   	pop    %es
40b6bc:	05 0a 09 0e 0a       	add    $0xa0e090a,%eax
40b6c1:	05 08 07 06 09       	add    $0x9060708,%eax
40b6c6:	09 0b                	or     %ecx,(%ebx)
40b6c8:	08 09                	or     %cl,(%ecx)