40e88d:	07                   	pop    %es
40e88e:	01 1c 03             	add    %ebx,(%ebx,%eax,1)
40e891:	07                   	pop    %es
40e892:	01 08                	add    %ecx,(%eax)
40e894:	07                   	pop    %es
40e895:	15 12 80 c9 01       	adc    $0x1c98012,%eax
40e89a:	12 44 05 20          	adc    0x20(%ebp,%eax,1),%al
40e89e:	01 08                	add    %ecx,(%eax)
40e8a0:	13 00                	adc    (%eax),%eax
40e8a2:	04 07                	add    $0x7,%al
40e8a4:	02 02                	add    (%edx),%al
40e8a6:	02 06                	add    (%esi),%al
40e8a8:	20 02                	and    %al,(%edx)
40e8aa:	01 08                	add    %ecx,(%eax)
40e8ac:	13 00                	adc    (%eax),%eax
40e8ae:	07                   	pop    %es
40e8af:	15 12 80 cd 02       	adc    $0x2cd8012,%eax
40e8b4:	0e                   	push   %cs
40e8b5:	08 05 20 01 02 13    	or     %al,0x13020120
40e8bb:	00 05 00 02 0e 0e    	add    %al,0xe0e0200
40e8c1:	1c 07                	sbb    $0x7,%al
40e8c3:	20 02                	and    %al,(%edx)
40e8c5:	01 13                	add    %edx,(%ebx)
40e8c7:	00 13                	add    %dl,(%ebx)
40e8c9:	01 05 20 01 13 00    	add    %eax,0x130120
40e8cf:	08 04 07             	or     %al,(%edi,%eax,1)
40e8d2:	01 12                	add    %edx,(%edx)
40e8d4:	44                   	inc    %esp
40e8d5:	05 07 02 02 12       	add    $0x12020207,%eax
40e8da:	44                   	inc    %esp
40e8db:	06                   	push   %es
40e8dc:	20 01                	and    %al,(%ecx)
40e8de:	13 01                	adc    (%ecx),%eax
40e8e0:	13 00                	adc    (%eax),%eax
40e8e2:	05 20 01 01 13       	add    $0x13010120,%eax
40e8e7:	00 07                	add    %al,(%edi)
40e8e9:	20 02                	and    %al,(%edx)
40e8eb:	01 1d 13 00 08 09    	add    %ebx,0x9080013
40e8f1:	07                   	pop    %es
40e8f2:	01 15 12 80 d1 01    	add    %edx,0x1d18012
40e8f8:	12 44 05 07          	adc    0x7(%ebp,%eax,1),%al
40e8fc:	01 12                	add    %edx,(%edx)
40e8fe:	80 b9 09 20 00 15 11 	cmpb   $0x11,0x15002009(%ecx)
40e905:	82 15 01 13 00 07 15 	adcb   $0x15,0x7001301
40e90c:	11 82 15 01 12 44    	adc    %eax,0x44120115(%edx)
40e912:	04 07                	add    $0x7,%al
40e914:	01 11                	add    %edx,(%ecx)
40e916:	51                   	push   %ecx
40e917:	05 07 01 11 80       	add    $0x80110107,%eax
40e91c:	ad                   	lods   %ds:(%esi),%eax
40e91d:	06                   	push   %es
40e91e:	07                   	pop    %es
40e91f:	02 11                	add    (%ecx),%dl
40e921:	80 ad 08 04 00 01 08 	subb   $0x8,0x1000408(%ebp)
40e928:	08 06                	or     %al,(%esi)
40e92a:	07                   	pop    %es
40e92b:	01 1d 11 80 ad 07    	add    %ebx,0x7ad8011
40e931:	07                   	pop    %es
40e932:	05 08 08 02 02       	add    $0x2020808,%eax
40e937:	08 04 07             	or     %al,(%edi,%eax,1)
40e93a:	02 08                	add    (%eax),%cl
40e93c:	08 04 06             	or     %al,(%esi,%eax,1)
40e93f:	11 80 ad 03 06 11    	adc    %eax,0x110603ad(%eax)
40e945:	4d                   	dec    %ebp
40e946:	05 07 03 08 02       	add    $0x2080307,%eax
40e94b:	02 0b                	add    (%ebx),%cl
40e94d:	07                   	pop    %es
40e94e:	03 12                	add    (%edx),%edx
40e950:	80 dd 12             	sbb    $0x12,%ch
40e953:	80 dd 12             	sbb    $0x12,%ch
40e956:	80 dd 0b             	sbb    $0xb,%ch
40e959:	00 02                	add    %al,(%edx)
40e95b:	12 82 1d 12 82 1d    	adc    0x1d82121d(%edx),%al
40e961:	12 82 1d 0c 10 01    	adc    0x1100c1d(%edx),%al
40e967:	03 1e                	add    (%esi),%ebx
40e969:	00 10                	add    %dl,(%eax)
40e96b:	1e                   	push   %ds
40e96c:	00 1e                	add    %bl,(%esi)
40e96e:	00 1e                	add    %bl,(%esi)
40e970:	00 05 0a 01 12 80    	add    %al,0x8012010a
40e976:	dd 03                	fldl   (%ebx)
40e978:	20 00                	and    %al,(%eax)
40e97a:	02 04 07             	add    (%edi,%eax,1),%al
40e97d:	01 12                	add    %edx,(%edx)
40e97f:	40                   	inc    %eax
40e980:	06                   	push   %es
40e981:	07                   	pop    %es
40e982:	02 11                	add    (%ecx),%dl
40e984:	51                   	push   %ecx
40e985:	11 4d 04             	adc    %ecx,0x4(%ebp)
40e988:	20 00                	and    %al,(%eax)
40e98a:	11 51 0b             	adc    %edx,0xb(%ecx)
40e98d:	07                   	pop    %es
40e98e:	05 1d 11 80 f5       	add    $0xf580111d,%eax
40e993:	11 51 08             	adc    %edx,0x8(%ecx)
40e996:	02 02                	add    (%edx),%al
40e998:	07                   	pop    %es
40e999:	15 12 80 cd 02       	adc    $0x2cd8012,%eax
40e99e:	08 02                	or     %al,(%edx)
40e9a0:	08 00                	or     %al,(%eax)
40e9a2:	01 12                	add    %edx,(%edx)
40e9a4:	80 e5 12             	and    $0x12,%ch
40e9a7:	81 45 06 00 01 0e 11 	addl   $0x110e0100,0x6(%ebp)
40e9ae:	82 29 04             	subb   $0x4,(%ecx)
40e9b1:	20 00                	and    %al,(%eax)
40e9b3:	11 4d 08             	adc    %ecx,0x8(%ebp)
40e9b6:	00 01                	add    %al,(%ecx)
40e9b8:	12 82 01 12 81 39    	adc    0x39811201(%edx),%al
40e9be:	04 1d                	add    $0x1d,%al
40e9c0:	11 80 f5 06 20 01    	adc    %eax,0x12006f5(%eax)
40e9c6:	01 12                	add    %edx,(%edx)
40e9c8:	82 31 05             	xorb   $0x5,(%ecx)
40e9cb:	20 00                	and    %al,(%eax)
40e9cd:	11 80 f5 08 07 05    	adc    %eax,0x50708f5(%eax)
40e9d3:	08 08                	or     %cl,(%eax)
40e9d5:	11 51 02             	adc    %edx,0x2(%ecx)
40e9d8:	02 05 00 00 12 80    	add    0x80120000,%al
40e9de:	a5                   	movsl  %ds:(%esi),%es:(%edi)
40e9df:	0c 20                	or     $0x20,%al
40e9e1:	03 01                	add    (%ecx),%eax
40e9e3:	12 80 a5 11 80 ad    	adc    -0x527fee5b(%eax),%al
40e9e9:	11 80 ad 05 20 00    	adc    %eax,0x2005ad(%eax)
40e9ef:	11 81 85 05 00 00    	adc    %eax,0x585(%ecx)
40e9f5:	12 82 3d 07 20 02    	adc    0x220073d(%edx),%al
40e9fb:	01 0e                	add    %ecx,(%esi)
40e9fd:	12 82 3d 0f 07 06    	adc    0x6070f3d(%edx),%al
40ea03:	02 02                	add    (%edx),%al
40ea05:	15 12 80 d1 01       	adc    $0x1d18012,%eax
40ea0a:	12 44 12 44          	adc    0x44(%edx,%edx,1),%al
40ea0e:	02 02                	add    (%edx),%al
40ea10:	06                   	push   %es
40ea11:	20 01                	and    %al,(%ecx)
40ea13:	01 12                	add    %edx,(%edx)
40ea15:	80 fd 05             	cmp    $0x5,%ch
40ea18:	20 00                	and    %al,(%eax)
40ea1a:	11 80 a9 07 15 12    	adc    %eax,0x121507a9(%eax)
40ea20:	80 d1 01             	adc    $0x1,%cl
40ea23:	12 44 04 20          	adc    0x20(%esp,%eax,1),%al
40ea27:	00 13                	add    %dl,(%ebx)
40ea29:	00 09                	add    %cl,(%ecx)
40ea2b:	20 02                	and    %al,(%edx)
40ea2d:	01 12                	add    %edx,(%edx)
40ea2f:	81 45 11 80 ad 06 20 	addl   $0x2006ad80,0x11(%ebp)
40ea36:	02 01                	add    (%ecx),%al
40ea38:	1c 12                	sbb    $0x12,%al
40ea3a:	49                   	dec    %ecx
40ea3b:	0a 07                	or     (%edi),%al
40ea3d:	04 11                	add    $0x11,%al
40ea3f:	80 ad 12 44 02 12 44 	subb   $0x44,0x12024412(%ebp)
40ea46:	06                   	push   %es
40ea47:	07                   	pop    %es
40ea48:	02 12                	add    (%edx),%dl
40ea4a:	48                   	dec    %eax
40ea4b:	12 44 0b 07          	adc    0x7(%ebx,%ecx,1),%al
40ea4f:	04 1d                	add    $0x1d,%al
40ea51:	11 80 ad 12 50 02    	adc    %eax,0x25012ad(%eax)
40ea57:	12 44 07 07          	adc    0x7(%edi,%eax,1),%al
40ea5b:	03 12                	add    (%edx),%edx
40ea5d:	4c                   	dec    %esp
40ea5e:	02 12                	add    (%edx),%dl
40ea60:	44                   	inc    %esp
40ea61:	09 07                	or     %eax,(%edi)
40ea63:	06                   	push   %es
40ea64:	02 08                	add    (%eax),%cl
40ea66:	02 11                	add    (%ecx),%dl
40ea68:	4d                   	dec    %ebp
40ea69:	02 02                	add    (%edx),%al
40ea6b:	04 07                	add    $0x7,%al
40ea6d:	01 12                	add    %edx,(%edx)
40ea6f:	64 05 20 01 01 12    	fs add $0x12010120,%eax
40ea75:	3d 06 20 01 01       	cmp    $0x1012006,%eax
40ea7a:	11 82 45 05 07 01    	adc    %eax,0x1070545(%edx)
40ea80:	12 80 e5 0a 20 05    	adc    0x5200ae5(%eax),%al
40ea86:	01 12                	add    %edx,(%edx)
40ea88:	80 d5 08             	adc    $0x8,%ch
40ea8b:	08 08                	or     %cl,(%eax)
40ea8d:	08 0a                	or     %cl,(%edx)
40ea8f:	20 05 01 12 80 a5    	and    %al,0xa5801201
40ea95:	08 08                	or     %cl,(%eax)
40ea97:	08 08                	or     %cl,(%eax)
40ea99:	0a 20                	or     (%eax),%ah
40ea9b:	02 01                	add    (%ecx),%al
40ea9d:	12 80 d5 1d 11 80    	adc    -0x7feee22b(%eax),%al
40eaa3:	ad                   	lods   %ds:(%esi),%eax
40eaa4:	0a 20                	or     (%eax),%ah
40eaa6:	02 01                	add    (%ecx),%al
40eaa8:	12 80 a5 1d 11 80    	adc    -0x7feee25b(%eax),%al
40eaae:	ad                   	lods   %ds:(%esi),%eax
40eaaf:	04 07                	add    $0x7,%al
40eab1:	01 12                	add    %edx,(%edx)
40eab3:	59                   	pop    %ecx
40eab4:	04 20                	add    $0x20,%al
40eab6:	01 0e                	add    %ecx,(%esi)
40eab8:	0e                   	push   %cs
40eab9:	09 07                	or     %eax,(%edi)
40eabb:	03 02                	add    (%edx),%eax
40eabd:	12 81 15 12 81 15    	adc    0x15811215(%ecx),%al
40eac3:	05 20 00 12 82       	add    $0x82120020,%eax
40eac8:	49                   	dec    %ecx
40eac9:	07                   	pop    %es
40eaca:	20 02                	and    %al,(%edx)
40eacc:	01 0e                	add    %ecx,(%esi)
40eace:	12 82 49 05 07 01    	adc    0x1070549(%edx),%al
40ead4:	12 81 19 05 07 02    	adc    0x2070519(%ecx),%al
40eada:	1c 1d                	sbb    $0x1d,%al
40eadc:	05 07 20 02 1c       	add    $0x1c022007,%eax
40eae1:	0e                   	push   %cs
40eae2:	12 81 19 02 1d 05    	adc    0x51d0219(%ecx),%al
40eae8:	06                   	push   %es
40eae9:	07                   	pop    %es
40eaea:	02 1c 12             	add    (%edx,%edx,1),%bl
40eaed:	80 e1 08             	and    $0x8,%cl
40eaf0:	b7 7a                	mov    $0x7a,%bh
40eaf2:	5c                   	pop    %esp
40eaf3:	56                   	push   %esi
40eaf4:	19 34 e0             	sbb    %esi,(%eax,%eiz,8)
40eaf7:	89 08                	mov    %ecx,(%eax)
40eaf9:	b0 3f                	mov    $0x3f,%al
40eafb:	5f                   	pop    %edi
40eafc:	7f 11                	jg     0x40eb0f
40eafe:	d5 0a                	aad    $0xa
40eb00:	3a 04 00             	cmp    (%eax,%eax,1),%al
40eb03:	00 00                	add    %al,(%eax)
40eb05:	00 04 01             	add    %al,(%ecx,%eax,1)
40eb08:	00 00                	add    %al,(%eax)
40eb0a:	00 04 02             	add    %al,(%edx,%eax,1)
40eb0d:	00 00                	add    %al,(%eax)
40eb0f:	00 04 03             	add    %al,(%ebx,%eax,1)
40eb12:	00 00                	add    %al,(%eax)
40eb14:	00 01                	add    %al,(%ecx)
40eb16:	00 02                	add    %al,(%edx)
40eb18:	06                   	push   %es
40eb19:	08 03                	or     %al,(%ebx)
40eb1b:	06                   	push   %es
40eb1c:	12 3d 03 06 12 41    	adc    0x41120603,%bh
40eb22:	03 06                	add    (%esi),%eax
40eb24:	12 61 03             	adc    0x3(%ecx),%ah
40eb27:	06                   	push   %es
40eb28:	12 24 03             	adc    (%ebx,%eax,1),%ah
40eb2b:	06                   	push   %es
40eb2c:	12 79 03             	adc    0x3(%ecx),%bh
40eb2f:	06                   	push   %es
40eb30:	12 7d 04             	adc    0x4(%ebp),%bh
40eb33:	06                   	push   %es
40eb34:	12 80 81 04 06 12    	adc    0x12060481(%eax),%al
40eb3a:	80 85 02 06 0e 04 06 	addb   $0x6,0x40e0602(%ebp)
40eb41:	12 80 89 04 06 12    	adc    0x12060489(%eax),%al
40eb47:	80 91 04 06 12 80 95 	adcb   $0x95,-0x7fedf9fc(%ecx)
40eb4e:	0c 06                	or     $0x6,%al
40eb50:	15 12 28 05 12       	adc    $0x12052812,%eax
40eb55:	80 a5 08 08 08 08 08 	andb   $0x8,0x8080808(%ebp)
40eb5c:	06                   	push   %es
40eb5d:	15 12 80 c9 01       	adc    $0x1c98012,%eax
40eb62:	12 44 08 06          	adc    0x6(%eax,%ecx,1),%al
40eb66:	15 12 80 cd 02       	adc    $0x2cd8012,%eax
40eb6b:	0e                   	push   %cs
40eb6c:	08 04 06             	or     %al,(%esi,%eax,1)
40eb6f:	11 80 a9 02 06 0c    	adc    %eax,0xc0602a9(%eax)
40eb75:	02 06                	add    (%esi),%al
40eb77:	02 03                	add    (%ebx),%al
40eb79:	06                   	push   %es
40eb7a:	11 51 0e             	adc    %edx,0xe(%ecx)
40eb7d:	06                   	push   %es
40eb7e:	15 12 2c 03 12       	adc    $0x12032c12,%eax
40eb83:	80 a5 11 80 ad 11 80 	andb   $0x80,0x11ad8011(%ebp)
40eb8a:	ad                   	lods   %ds:(%esi),%eax
40eb8b:	0c 06                	or     $0x6,%al
40eb8d:	15 12 30 02 12       	adc    $0x12023012,%eax
40eb92:	80 a5 1d 11 80 ad 0c 	andb   $0xc,-0x527feee3(%ebp)
40eb99:	06                   	push   %es
40eb9a:	15 12 30 02 12       	adc    $0x12023012,%eax
40eb9f:	80 d5 1d             	adc    $0x1d,%ch
40eba2:	11 80 ad 05 06 1d    	adc    %eax,0x1d0605ad(%eax)
40eba8:	11 80 ad 04 06 12    	adc    %eax,0x120604ad(%eax)
40ebae:	80 e1 03             	and    $0x3,%cl
40ebb1:	06                   	push   %es
40ebb2:	12 60 04             	adc    0x4(%eax),%ah
40ebb5:	06                   	push   %es
40ebb6:	12 80 e5 04 06 12    	adc    0x120604e5(%eax),%al
40ebbc:	80 dd 03             	sbb    $0x3,%ch
40ebbf:	06                   	push   %es
40ebc0:	12 40 08             	adc    0x8(%eax),%al
40ebc3:	06                   	push   %es
40ebc4:	15 12 80 cd 02       	adc    $0x2cd8012,%eax
40ebc9:	08 02                	or     %al,(%edx)
40ebcb:	04 06                	add    $0x6,%al
40ebcd:	12 80 e9 04 06 12    	adc    0x120604e9(%eax),%al
40ebd3:	80 ed 04             	sub    $0x4,%ch
40ebd6:	06                   	push   %es
40ebd7:	12 80 f1 0c 06 15    	adc    0x15060cf1(%eax),%al
40ebdd:	12 28                	adc    (%eax),%ch
40ebdf:	05 12 80 d5 08       	add    $0x8d58012,%eax
40ebe4:	08 08                	or     %cl,(%eax)
40ebe6:	08 03                	or     %al,(%ebx)
40ebe8:	06                   	push   %es
40ebe9:	11 5c 04 06          	adc    %ebx,0x6(%esp,%eax,1)
40ebed:	12 81 15 04 06 12    	adc    0x12060415(%ecx),%al
40ebf3:	81 19 03 06 11 74    	sbbl   $0x74110603,(%ecx)
40ebf9:	03 06                	add    (%esi),%eax
40ebfb:	11 78 03             	adc    %edi,0x3(%eax)
40ebfe:	06                   	push   %es
40ebff:	11 70 02             	adc    %esi,0x2(%eax)
40ec02:	06                   	push   %es
40ec03:	0a 06                	or     (%esi),%al
40ec05:	20 02                	and    %al,(%edx)
40ec07:	01 1c 12             	add    %ebx,(%edx,%edx,1)
40ec0a:	55                   	push   %ebp
40ec0b:	06                   	push   %es
40ec0c:	20 02                	and    %al,(%edx)
40ec0e:	12 65 0e             	adc    0xe(%ebp),%ah
40ec11:	0e                   	push   %cs
40ec12:	08 20                	or     %ah,(%eax)
40ec14:	05 08 0e 0e 0e       	add    $0xe0e0e08,%eax
40ec19:	0e                   	push   %cs
40ec1a:	0e                   	push   %cs
40ec1b:	04 20                	add    $0x20,%al
40ec1d:	00 12                	add    %dl,(%edx)
40ec1f:	65 05 20 01 12 65    	gs add $0x65120120,%eax
40ec25:	0e                   	push   %cs
40ec26:	0c 20                	or     $0x20,%al
40ec28:	09 08                	or     %ecx,(%eax)
40ec2a:	0e                   	push   %cs
40ec2b:	0e                   	push   %cs
40ec2c:	0e                   	push   %cs
40ec2d:	0e                   	push   %cs
40ec2e:	0e                   	push   %cs
40ec2f:	0e                   	push   %cs
40ec30:	0e                   	push   %cs
40ec31:	0e                   	push   %cs
40ec32:	08 07                	or     %al,(%edi)
40ec34:	20 04 08             	and    %al,(%eax,%ecx,1)
40ec37:	0e                   	push   %cs
40ec38:	0e                   	push   %cs
40ec39:	0e                   	push   %cs
40ec3a:	0e                   	push   %cs
40ec3b:	0a 20                	or     (%eax),%ah
40ec3d:	07                   	pop    %es
40ec3e:	08 0e                	or     %cl,(%esi)
40ec40:	08 0e                	or     %cl,(%esi)
40ec42:	0e                   	push   %cs
40ec43:	08 08                	or     %cl,(%eax)
40ec45:	08 05 20 01 01 12    	or     %al,0x12010120
40ec4b:	24 0d                	and    $0xd,%al
40ec4d:	20 00                	and    %al,(%eax)
40ec4f:	15 12 28 05 12       	adc    $0x12052812,%eax
40ec54:	80 a5 08 08 08 08 0e 	andb   $0xe,0x8080808(%ebp)
40ec5b:	20 01                	and    %al,(%ecx)
40ec5d:	01 15 12 28 05 12    	add    %edx,0x12052812
40ec63:	80 a5 08 08 08 08 17 	andb   $0x17,0x8080808(%ebp)
40ec6a:	20 05 01 11 80 a9    	and    %al,0xa9801101