40b7d1:	81 31 05 20 02 01    	xorl   $0x1022005,(%ecx)
40b7d7:	1c 18                	sbb    $0x18,%al
40b7d9:	06                   	push   %es
40b7da:	20 01                	and    %al,(%ecx)
40b7dc:	01 12                	add    %edx,(%edx)
40b7de:	81 75 05 20 02 01 0c 	xorl   $0xc010220,0x5(%ebp)
40b7e5:	0c 06                	or     $0x6,%al
40b7e7:	20 01                	and    %al,(%ecx)
40b7e9:	01 11                	add    %edx,(%ecx)
40b7eb:	81 29 06 20 01 01    	subl   $0x1012006,(%ecx)
40b7f1:	11 81 7d 06 20 01    	adc    %eax,0x120067d(%ecx)
40b7f7:	01 12                	add    %edx,(%edx)
40b7f9:	81 81 04 07 01 12 28 	addl   $0x1070428,0x12010704(%ecx)
40b800:	04 07 01
40b803:	12 18                	adc    (%eax),%bl
40b805:	04 07                	add    $0x7,%al
40b807:	01 12                	add    %edx,(%edx)
40b809:	0c 04                	or     $0x4,%al
40b80b:	07                   	pop    %es
40b80c:	01 12                	add    %edx,(%edx)
40b80e:	14 06                	adc    $0x6,%al
40b810:	20 01                	and    %al,(%ecx)
40b812:	01 11                	add    %edx,(%ecx)
40b814:	81 8d 1d 07 14 02 02 	orl    $0x12691102,0x214071d(%ebp)
40b81b:	11 69 12
40b81e:	6d                   	insl   (%dx),%es:(%edi)
40b81f:	12 71 02             	adc    0x2(%ecx),%dh
40b822:	02 02                	add    (%edx),%al
40b824:	11 75 02             	adc    %esi,0x2(%ebp)
40b827:	02 12                	add    (%edx),%dl
40b829:	79 12                	jns    0x40b83d
40b82b:	6d                   	insl   (%dx),%es:(%edi)
40b82c:	12 71 02             	adc    0x2(%ecx),%dh
40b82f:	02 08                	add    (%eax),%cl
40b831:	02 02                	add    (%edx),%al
40b833:	02 10                	add    (%eax),%dl
40b835:	07                   	pop    %es
40b836:	08 12                	or     %dl,(%edx)
40b838:	6d                   	insl   (%dx),%es:(%edi)
40b839:	12 71 02             	adc    0x2(%ecx),%dh
40b83c:	11 69 12             	adc    %ebp,0x12(%ecx)
40b83f:	79 12                	jns    0x40b853
40b841:	6d                   	insl   (%dx),%es:(%edi)
40b842:	12 71 02             	adc    0x2(%ecx),%dh
40b845:	13 07                	adc    (%edi),%eax
40b847:	0c 02                	or     $0x2,%al
40b849:	02 11                	add    (%ecx),%dl
40b84b:	69 12 6d 12 71 02    	imul   $0x271126d,(%edx),%edx
40b851:	02 02                	add    (%edx),%al
40b853:	11 75 02             	adc    %esi,0x2(%ebp)
40b856:	02 12                	add    (%edx),%dl
40b858:	79 06                	jns    0x40b860
40b85a:	00 03                	add    %al,(%ebx)
40b85c:	0e                   	push   %cs
40b85d:	0e                   	push   %cs
40b85e:	0e                   	push   %cs
40b85f:	0e                   	push   %cs
40b860:	0b 07                	or     (%edi),%eax
40b862:	05 12 6d 12 71       	add    $0x71126d12,%eax
40b867:	02 11                	add    (%ecx),%dl
40b869:	69 12 79 03 00 00    	imul   $0x379,(%edx),%edx
40b86f:	01 04 00             	add    %eax,(%eax,%eax,1)
40b872:	01 01                	add    %eax,(%ecx)
40b874:	02 05 00 01 01 12    	add    0x12010100,%al
40b87a:	49                   	dec    %ecx
40b87b:	04 07                	add    $0x7,%al
40b87d:	01 12                	add    %edx,(%edx)
40b87f:	20 04 07             	and    %al,(%edi,%eax,1)
40b882:	01 12                	add    %edx,(%edx)
40b884:	1c 04                	sbb    $0x4,%al
40b886:	07                   	pop    %es
40b887:	01 12                	add    %edx,(%edx)
40b889:	10 07                	adc    %al,(%edi)
40b88b:	20 04 01             	and    %al,(%ecx,%eax,1)
40b88e:	08 08                	or     %cl,(%eax)
40b890:	08 08                	or     %cl,(%eax)
40b892:	09 07                	or     %eax,(%edi)
40b894:	03 02                	add    (%edx),%eax
40b896:	12 80 9d 12 80 9d    	adc    -0x627fed63(%eax),%al
40b89c:	04 20                	add    $0x20,%al
40b89e:	00 12                	add    %dl,(%edx)
40b8a0:	45                   	inc    %ebp
40b8a1:	06                   	push   %es
40b8a2:	20 02                	and    %al,(%edx)
40b8a4:	01 0e                	add    %ecx,(%esi)
40b8a6:	12 45 05             	adc    0x5(%ebp),%al
40b8a9:	07                   	pop    %es
40b8aa:	01 12                	add    %edx,(%edx)
40b8ac:	80 a1 06 07 02 1c 12 	andb   $0x12,0x1c020706(%ecx)
40b8b3:	80 a5 07 20 02 1c 0e 	andb   $0xe,0x1c022007(%ebp)
40b8ba:	12 80 a1 05 07 02    	adc    0x20705a1(%eax),%al
40b8c0:	1c 1d                	sbb    $0x1d,%al
40b8c2:	05 02 1d 05 04       	add    $0x4051d02,%eax
40b8c7:	07                   	pop    %es
40b8c8:	01 12                	add    %edx,(%edx)
40b8ca:	30 08                	xor    %cl,(%eax)
40b8cc:	00 01                	add    %al,(%ecx)
40b8ce:	12 81 95 12 81 95    	adc    -0x6a7eed6b(%ecx),%al
40b8d4:	07                   	pop    %es
40b8d5:	15 12 80 c1 01       	adc    $0x1c18012,%eax
40b8da:	12 71 0b             	adc    0xb(%ecx),%dh
40b8dd:	07                   	pop    %es
40b8de:	07                   	pop    %es
40b8df:	02 08                	add    (%eax),%cl
40b8e1:	12 71 02             	adc    0x2(%ecx),%dh
40b8e4:	02 11                	add    (%ecx),%dl
40b8e6:	38 02                	cmp    %al,(%edx)
40b8e8:	05 20 01 13 00       	add    $0x130120,%eax
40b8ed:	08 07                	or     %al,(%edi)
40b8ef:	15 12 80 c1 01       	adc    $0x1c18012,%eax
40b8f4:	11 38                	adc    %edi,(%eax)
40b8f6:	06                   	push   %es
40b8f7:	00 01                	add    %al,(%ecx)
40b8f9:	1c 12                	sbb    $0x12,%al
40b8fb:	80 b9 05 20 01 01 13 	cmpb   $0x13,0x1012005(%ecx)
40b902:	00 05 00 00 12 81    	add    %al,0x81120000
40b908:	a1 08 07 02 11       	mov    0x11020708,%eax
40b90d:	80 bd 11 80 bd 08 07 	cmpb   $0x7,0x8bd8011(%ebp)
40b914:	04 12                	add    $0x12,%al
40b916:	80 cd 02             	or     $0x2,%ch
40b919:	02 02                	add    (%edx),%al
40b91b:	0b 07                	or     (%edi),%eax
40b91d:	03 12                	add    (%edx),%edx
40b91f:	80 84 12 80 84 12 80 	addb   $0x84,-0x7fed7b80(%edx,%edx,1)
40b926:	84
40b927:	0b 00                	or     (%eax),%eax
40b929:	02 12                	add    (%edx),%dl
40b92b:	81 a5 12 81 a5 12 81 	andl   $0x100ca581,0x12a58112(%ebp)
40b932:	a5 0c 10
40b935:	01 03                	add    %eax,(%ebx)
40b937:	1e                   	push   %ds
40b938:	00 10                	add    %dl,(%eax)
40b93a:	1e                   	push   %ds
40b93b:	00 1e                	add    %bl,(%esi)
40b93d:	00 1e                	add    %bl,(%esi)
40b93f:	00 05 0a 01 12 80    	add    %al,0x8012010a
40b945:	84 08                	test   %cl,(%eax)
40b947:	07                   	pop    %es
40b948:	03 12                	add    (%edx),%edx
40b94a:	6d                   	insl   (%dx),%es:(%edi)
40b94b:	12 71 12             	adc    0x12(%ecx),%dh
40b94e:	79 08                	jns    0x40b958
40b950:	15 12 80 c1 01       	adc    $0x1c18012,%eax
40b955:	11 80 d9 06 20 01    	adc    %eax,0x12006d9(%eax)
40b95b:	01 12                	add    %edx,(%edx)
40b95d:	81 ad 07 15 12 80 c1 	subl   $0x581201c1,-0x7fedeaf9(%ebp)
40b964:	01 12 58
40b967:	08 15 12 80 c1 01    	or     %dl,0x1c18012
40b96d:	12 80 80 06 07 02    	adc    0x2070680(%eax),%al
40b973:	02 12                	add    (%edx),%dl
40b975:	80 88 31 07 19 02 15 	orb    $0x15,0x2190731(%eax)
40b97c:	12 80 c1 01 12 54    	adc    0x541201c1(%eax),%al
40b982:	15 11 80 dd 01       	adc    $0x1dd8011,%eax
40b987:	12 48 12             	adc    0x12(%eax),%cl
40b98a:	48                   	dec    %eax
40b98b:	12 54 02 15          	adc    0x15(%edx,%eax,1),%dl
40b98f:	11 80 dd 01 12 54    	adc    %eax,0x541201dd(%eax)
40b995:	12 54 02 12          	adc    0x12(%edx,%eax,1),%dl
40b999:	54                   	push   %esp
40b99a:	0c 0c                	or     $0xc,%al
40b99c:	02 02                	add    (%edx),%al
40b99e:	02 0c 08             	add    (%eax,%ecx,1),%cl
40b9a1:	08 02                	or     %al,(%edx)
40b9a3:	0c 0c                	or     $0xc,%al
40b9a5:	0c 02                	or     $0x2,%al
40b9a7:	02 02                	add    (%edx),%al
40b9a9:	07                   	pop    %es
40b9aa:	15 12 80 c1 01       	adc    $0x1c18012,%eax
40b9af:	12 54 07 15          	adc    0x15(%edi,%eax,1),%dl
40b9b3:	12 80 c1 01 12 48    	adc    0x481201c1(%eax),%al
40b9b9:	09 20                	or     %esp,(%eax)
40b9bb:	00 15 11 80 dd 01    	add    %dl,0x1dd8011
40b9c1:	13 00                	adc    (%eax),%eax
40b9c3:	07                   	pop    %es
40b9c4:	15 11 80 dd 01       	adc    $0x1dd8011,%eax
40b9c9:	12 48 04             	adc    0x4(%eax),%cl
40b9cc:	20 00                	and    %al,(%eax)
40b9ce:	13 00                	adc    (%eax),%eax
40b9d0:	07                   	pop    %es
40b9d1:	15 11 80 dd 01       	adc    $0x1dd8011,%eax
40b9d6:	12 54 08 00          	adc    0x0(%eax,%ecx,1),%dl
40b9da:	01 11                	add    %edx,(%ecx)
40b9dc:	80 e1 11             	and    $0x11,%cl
40b9df:	80 bd 09 00 02 02 11 	cmpb   $0x11,0x2020009(%ebp)
40b9e6:	80 e1 11             	and    $0x11,%cl
40b9e9:	80 e1 05             	and    $0x5,%cl
40b9ec:	00 02                	add    %al,(%edx)
40b9ee:	02 0e                	add    (%esi),%cl
40b9f0:	0e                   	push   %cs
40b9f1:	09 00                	or     %eax,(%eax)
40b9f3:	02 02                	add    (%edx),%al
40b9f5:	11 80 bd 11 80 bd    	adc    %eax,-0x427fee43(%eax)
40b9fb:	03 20                	add    (%eax),%esp
40b9fd:	00 0c 04             	add    %cl,(%esp,%eax,1)
40ba00:	00 01                	add    %al,(%ecx)
40ba02:	0c 0c                	or     $0xc,%al
40ba04:	06                   	push   %es
40ba05:	15 12 80 c1 01       	adc    $0x1c18012,%eax
40ba0a:	0e                   	push   %cs
40ba0b:	05 20 01 02 13       	add    $0x13020120,%eax
40ba10:	00 04 00             	add    %al,(%eax,%eax,1)
40ba13:	01 0d 0d 08 07 06    	add    %ecx,0x607080d
40ba19:	08 02                	or     %al,(%edx)
40ba1b:	02 02                	add    (%edx),%al
40ba1d:	02 02                	add    (%edx),%al
40ba1f:	08 07                	or     %al,(%edi)
40ba21:	06                   	push   %es
40ba22:	02 08                	add    (%eax),%cl
40ba24:	02 02                	add    (%edx),%al
40ba26:	08 02                	or     %al,(%edx)
40ba28:	07                   	pop    %es
40ba29:	15 12 80 c1 01       	adc    $0x1c18012,%eax
40ba2e:	12 3c 07             	adc    (%edi,%eax,1),%bh
40ba31:	07                   	pop    %es
40ba32:	03 12                	add    (%edx),%edx
40ba34:	80 e5 02             	and    $0x2,%ch
40ba37:	02 0c 07             	add    (%edi,%eax,1),%cl
40ba3a:	05 12 71 02 02       	add    $0x2027112,%eax
40ba3f:	11 80 bd 11 80 bd    	adc    %eax,-0x427fee43(%eax)
40ba45:	10 07                	adc    %al,(%edi)
40ba47:	06                   	push   %es
40ba48:	15 11 80 dd 01       	adc    $0x1dd8011,%eax
40ba4d:	12 48 12             	adc    0x12(%eax),%cl
40ba50:	48                   	dec    %eax
40ba51:	12 4c 02 08          	adc    0x8(%edx,%eax,1),%cl
40ba55:	02 05 20 01 12 71    	add    0x71120120,%al
40ba5b:	08 0f                	or     %cl,(%edi)
40ba5d:	07                   	pop    %es
40ba5e:	06                   	push   %es
40ba5f:	15 11 80 dd 01       	adc    $0x1dd8011,%eax
40ba64:	12 3c 12             	adc    (%edx,%edx,1),%bh
40ba67:	3c 08                	cmp    $0x8,%al
40ba69:	02 08                	add    (%eax),%cl
40ba6b:	02 07                	add    (%edi),%al
40ba6d:	15 11 80 dd 01       	adc    $0x1dd8011,%eax
40ba72:	12 3c 08             	adc    (%eax,%ecx,1),%bh
40ba75:	07                   	pop    %es
40ba76:	04 02                	add    $0x2,%al
40ba78:	12 78 02             	adc    0x2(%eax),%bh
40ba7b:	12 70 0b             	adc    0xb(%eax),%dh
40ba7e:	07                   	pop    %es
40ba7f:	03 12                	add    (%edx),%edx
40ba81:	80 8c 12 80 8c 12 80 	orb    $0x8c,-0x7fed7380(%edx,%edx,1)
40ba88:	8c
40ba89:	05 0a 01 12 80       	add    $0x8012010a,%eax
40ba8e:	8c 0a                	mov    %cs,(%edx)
40ba90:	20 01                	and    %al,(%ecx)
40ba92:	01 15 12 81 b9 01    	add    %edx,0x1b98112
40ba98:	13 00                	adc    (%eax),%eax
40ba9a:	05 07 01 11 80       	add    $0x80110107,%eax
40ba9f:	bd 06 07 03 12       	mov    $0x12030706,%ebp
40baa4:	7c 02                	jl     0x40baa8
40baa6:	02 03                	add    (%ebx),%al
40baa8:	07                   	pop    %es
40baa9:	01 0e                	add    %ecx,(%esi)
40baab:	09 07                	or     %eax,(%edi)
40baad:	01 15 12 80 c1 01    	add    %edx,0x1c18012
40bab3:	11 38                	adc    %edi,(%eax)
40bab5:	04 07                	add    $0x7,%al
40bab7:	01 12                	add    %edx,(%edx)
40bab9:	74 0e                	je     0x40bac9
40babb:	07                   	pop    %es
40babc:	05 12 80 f9 12       	add    $0x12f98012,%eax
40bac1:	80 fd 12             	cmp    $0x12,%ch
40bac4:	64 12 81 01 02 04 06 	adc    %fs:0x6040201(%ecx),%al
40bacb:	12 81 bd 07 20 02    	adc    0x22007bd(%ecx),%al
40bad1:	01 12                	add    %edx,(%edx)
40bad3:	81 bd 08 11 07 08 12 	cmpl   $0x12058112,0x8071108(%ebp)
40bada:	81 05 12
40badd:	81 09 0e 02 02 12    	orl    $0x1202020e,(%ecx)
40bae3:	81 01 02 12 64 05    	addl   $0x5641202,(%ecx)
40bae9:	20 00                	and    %al,(%eax)
40baeb:	12 81 05 06 20 01    	adc    0x1200605(%ecx),%al
40baf1:	01 12                	add    %edx,(%edx)
40baf3:	81 c1 04 00 01 02    	add    $0x2010004,%ecx
40baf9:	0e                   	push   %cs
40bafa:	0d 07 03 12 80       	or     $0x80120307,%eax
40baff:	fd                   	std
40bb00:	15 12 68 01 0e       	adc    $0xe016812,%eax
40bb05:	12 81 01 05 20 02    	adc    0x2200501(%ecx),%al
40bb0b:	01 0e                	add    %ecx,(%esi)
40bb0d:	08 11                	or     %dl,(%ecx)
40bb0f:	07                   	pop    %es
40bb10:	05 12 81 05 12       	add    $0x12058112,%eax
40bb15:	81 0d 0e 12 81 01 15 	orl    $0x1681215,0x181120e
40bb1c:	12 68 01
40bb1f:	0e                   	push   %cs
40bb20:	08 07                	or     %al,(%edi)
40bb22:	02 12                	add    (%edx),%dl
40bb24:	81 15 12 81 15 05 20 	adcl   $0x81120020,0x5158112
40bb2b:	00 12 81
40bb2e:	15 07 20 01 01       	adc    $0x1012007,%eax
40bb33:	10 11                	adc    %dl,(%ecx)
40bb35:	81 1d 1b 07 0b 12 81 	sbbl   $0x81122181,0x120b071b
40bb3c:	21 12 81
40bb3f:	25 11 81 29 0c       	and    $0xc298111,%eax
40bb44:	0c 11                	or     $0x11,%al
40bb46:	81 11 11 81 11 11    	adcl   $0x11118111,(%ecx)
40bb4c:	81 11 11 81 11 02    	adcl   $0x2118111,(%ecx)
40bb52:	02 05 20 00 12 81    	add    0x81120020,%al
40bb58:	21 05 20 00 11 80    	and    %eax,0x80110020
40bb5e:	c5 05 20 00 12 81    	lds    0x81120020,%eax
40bb64:	31 09                	xor    %ecx,(%ecx)
40bb66:	20 02                	and    %al,(%edx)
40bb68:	11 81 29 0e 12 81    	adc    %eax,-0x7eedf1d7(%ecx)
40bb6e:	31 05 20 00 11 81    	xor    %eax,0x81110020
40bb74:	2d 0c 20 05 01       	sub    $0x105200c,%eax
40bb79:	0e                   	push   %cs
40bb7a:	12 81 31 12 81 c5    	adc    -0x3a7eedcf(%ecx),%al
40bb80:	0c 0c                	or     $0xc,%al
40bb82:	05 07 01 11 81       	add    $0x81110107,%eax
40bb87:	2d 06 20 01 01       	sub    $0x1012006,%eax
40bb8c:	11 81 2d 05 07 01    	adc    %eax,0x107052d(%ecx)
40bb92:	12 81 31 05 07 01    	adc    0x1070531(%ecx),%al
40bb98:	11 81 11 08 b7 7a    	adc    %eax,0x7ab70811(%ecx)
40bb9e:	5c                   	pop    %esp
40bb9f:	56                   	push   %esi
40bba0:	19 34 e0             	sbb    %esi,(%eax,%eiz,8)
40bba3:	89 08                	mov    %ecx,(%eax)
40bba5:	b0 3f                	mov    $0x3f,%al
40bba7:	5f                   	pop    %edi
40bba8:	7f 11                	jg     0x40bbbb
40bbaa:	d5 0a                	aad    $0xa
40bbac:	3a 04 a4             	cmp    (%esp,%eiz,4),%al
40bbaf:	01 00                	add    %eax,(%eax)
40bbb1:	00 12                	add    %dl,(%edx)
40bbb3:	6c                   	insb   (%dx),%es:(%edi)
40bbb4:	00 6f 00             	add    %ch,0x0(%edi)
40bbb7:	63 00                	arpl   %eax,(%eax)
40bbb9:	61                   	popa
40bbba:	00 6c 00 68          	add    %ch,0x68(%eax,%eax,1)
40bbbe:	00 6f 00             	add    %ch,0x0(%edi)
40bbc1:	73 00                	jae    0x40bbc3
40bbc3:	74 00                	je     0x40bbc5
40bbc5:	04 00                	add    $0x0,%al
40bbc7:	00 00                	add    %al,(%eax)
40bbc9:	00 02                	add    %al,(%edx)
40bbcb:	06                   	push   %es
40bbcc:	0e                   	push   %cs
40bbcd:	02 06                	add    (%esi),%al
40bbcf:	02 02                	add    (%edx),%al
40bbd1:	06                   	push   %es
40bbd2:	08 03                	or     %al,(%ebx)
40bbd4:	06                   	push   %es
40bbd5:	12 4d 03             	adc    0x3(%ebp),%cl
40bbd8:	06                   	push   %es
40bbd9:	12 51 03             	adc    0x3(%ecx),%dl
40bbdc:	06                   	push   %es
40bbdd:	12 55 03             	adc    0x3(%ebp),%dl
40bbe0:	06                   	push   %es