40a6b2:	01 0c 05 07 01 11 80 	add    %ecx,-0x7feefef9(,%eax,1)
40a6b9:	d1 06                	roll   $1,(%esi)
40a6bb:	00 01                	add    %al,(%ecx)
40a6bd:	11 80 d1 0d 09 20    	adc    %eax,0x20090dd1(%eax)
40a6c3:	02 12                	add    (%edx),%dl
40a6c5:	81 a1 0e 11 81 a5 04 	andl   $0x1c012004,-0x5a7eeef2(%ecx)
40a6cc:	20 01 1c
40a6cf:	1c 03                	sbb    $0x3,%al
40a6d1:	1d 1e 00 06 20       	sbb    $0x2006001e,%eax
40a6d6:	01 02                	add    %eax,(%edx)
40a6d8:	12 80 a9 04 07 01    	adc    0x10704a9(%eax),%al
40a6de:	1d 05 0a 07 05       	sbb    $0x5070a05,%eax
40a6e3:	1d 05 12 80 d5       	sbb    $0xd5801205,%eax
40a6e8:	1c 1c                	sbb    $0x1c,%al
40a6ea:	0e                   	push   %cs
40a6eb:	05 00 00 12 81       	add    $0x81120000,%eax
40a6f0:	ad                   	lods   %ds:(%esi),%eax
40a6f1:	07                   	pop    %es
40a6f2:	20 01                	and    %al,(%ecx)
40a6f4:	12 80 d5 1d 05 0e    	adc    0xe051dd5(%eax),%al
40a6fa:	00 06                	add    %al,(%esi)
40a6fc:	1c 1c                	sbb    $0x1c,%al
40a6fe:	12 80 a9 0e 1d 1c    	adc    0x1c1d0ea9(%eax),%al
40a704:	1d 0e 1d 02 04       	sbb    $0x4021d0e,%eax
40a709:	00 01                	add    %al,(%ecx)
40a70b:	01 08                	add    %ecx,(%eax)
40a70d:	04 07                	add    $0x7,%al
40a70f:	02 0d 0d 09 07 03    	add    0x307090d,%cl
40a715:	02 12                	add    (%edx),%dl
40a717:	80 e9 12             	sub    $0x12,%cl
40a71a:	80 e9 05             	sub    $0x5,%cl
40a71d:	20 00                	and    %al,(%eax)
40a71f:	12 80 d5 07 20 02    	adc    0x22007d5(%eax),%al
40a725:	01 0e                	add    %ecx,(%esi)
40a727:	12 80 d5 05 07 01    	adc    0x10705d5(%eax),%al
40a72d:	12 80 ed 05 07 02    	adc    0x20705ed(%eax),%al
40a733:	1c 1d                	sbb    $0x1d,%al
40a735:	05 07 20 02 1c       	add    $0x1c022007,%eax
40a73a:	0e                   	push   %cs
40a73b:	12 80 ed 02 1d 05    	adc    0x51d02ed(%eax),%al
40a741:	06                   	push   %es
40a742:	07                   	pop    %es
40a743:	02 1c 12             	add    (%edx,%edx,1),%bl
40a746:	80 f1 14             	xor    $0x14,%cl
40a749:	07                   	pop    %es
40a74a:	10 0d 0d 0d 0d 0d    	adc    %cl,0xd0d0d0d
40a750:	0d 0d 0c 0c 0c       	or     $0xc0c0c0d,%eax
40a755:	0c 0c                	or     $0xc,%al
40a757:	0c 0c                	or     $0xc,%al
40a759:	0c 11                	or     $0x11,%al
40a75b:	80 88 05 07 01 11 80 	orb    $0x80,0x11010705(%eax)
40a762:	88 07                	mov    %al,(%edi)
40a764:	07                   	pop    %es
40a765:	03 0d 0d 11 80 94    	add    0x9480110d,%ecx
40a76b:	04 07                	add    $0x7,%al
40a76d:	01 12                	add    %edx,(%edx)
40a76f:	54                   	push   %esp
40a770:	04 00                	add    $0x0,%al
40a772:	01 01                	add    %eax,(%ecx)
40a774:	02 08                	add    (%eax),%cl
40a776:	15 12 80 fd 02       	adc    $0x2fd8012,%eax
40a77b:	0e                   	push   %cs
40a77c:	12 5c 06 20          	adc    0x20(%esi,%eax,1),%bl
40a780:	01 13                	add    %edx,(%ebx)
40a782:	01 13                	add    %edx,(%ebx)
40a784:	00 08                	add    %cl,(%eax)
40a786:	15 12 80 a5 02       	adc    $0x2a58012,%eax
40a78b:	0e                   	push   %cs
40a78c:	12 5c 09 15          	adc    0x15(%ecx,%ecx,1),%bl
40a790:	12 80 fd 02 0e 11    	adc    0x110e02fd(%eax),%al
40a796:	80 88 0a 07 04 12 80 	orb    $0x80,0x1204070a(%eax)
40a79d:	f1                   	int1
40a79e:	08 08                	or     %cl,(%eax)
40a7a0:	12 81 09 04 00 01    	adc    0x1000409(%ecx),%al
40a7a6:	02 0e                	add    (%esi),%cl
40a7a8:	06                   	push   %es
40a7a9:	20 01                	and    %al,(%ecx)
40a7ab:	01 11                	add    %edx,(%ecx)
40a7ad:	81 c1 07 20 04 01    	add    $0x1042007,%ecx
40a7b3:	08 08                	or     %cl,(%eax)
40a7b5:	08 08                	or     %cl,(%eax)
40a7b7:	0e                   	push   %cs
40a7b8:	20 03                	and    %al,(%ebx)
40a7ba:	12 81 09 11 81 c5    	adc    -0x3a7eeef7(%ecx),%al
40a7c0:	11 81 c9 11 81 05    	adc    %eax,0x58111c9(%ecx)
40a7c6:	06                   	push   %es
40a7c7:	20 01                	and    %al,(%ecx)
40a7c9:	01 12                	add    %edx,(%edx)
40a7cb:	81 09 09 15 12 80    	orl    $0x80121509,(%ecx)
40a7d1:	a5                   	movsl  %ds:(%esi),%es:(%edi)
40a7d2:	02 0e                	add    (%esi),%cl
40a7d4:	11 80 88 08 b7 7a    	adc    %eax,0x7ab70888(%eax)
40a7da:	5c                   	pop    %esp
40a7db:	56                   	push   %esi
40a7dc:	19 34 e0             	sbb    %esi,(%eax,%eiz,8)
40a7df:	89 08                	mov    %ecx,(%eax)
40a7e1:	b0 3f                	mov    $0x3f,%al
40a7e3:	5f                   	pop    %edi
40a7e4:	7f 11                	jg     0x40a7f7
40a7e6:	d5 0a                	aad    $0xa
40a7e8:	3a 04 06             	cmp    (%esi,%eax,1),%al
40a7eb:	00 00                	add    %al,(%eax)
40a7ed:	00 03                	add    %al,(%ebx)
40a7ef:	06                   	push   %es
40a7f0:	12 1c 07             	adc    (%edi,%eax,1),%bl
40a7f3:	06                   	push   %es
40a7f4:	15 12 41 01 12       	adc    $0x12014112,%eax
40a7f9:	10 03                	adc    %al,(%ebx)
40a7fb:	06                   	push   %es
40a7fc:	12 18                	adc    (%eax),%bl
40a7fe:	02 06                	add    (%esi),%al
40a800:	08 03                	or     %al,(%ebx)
40a802:	06                   	push   %es
40a803:	12 45 02             	adc    0x2(%ebp),%al
40a806:	06                   	push   %es
40a807:	02 03                	add    (%ebx),%al
40a809:	06                   	push   %es
40a80a:	12 49 03             	adc    0x3(%ecx),%cl
40a80d:	06                   	push   %es
40a80e:	12 4d 03             	adc    0x3(%ebp),%cl
40a811:	06                   	push   %es
40a812:	12 51 03             	adc    0x3(%ecx),%dl
40a815:	06                   	push   %es
40a816:	12 55 03             	adc    0x3(%ebp),%dl
40a819:	06                   	push   %es
40a81a:	12 59 03             	adc    0x3(%ecx),%bl
40a81d:	06                   	push   %es
40a81e:	12 5d 03             	adc    0x3(%ebp),%bl
40a821:	06                   	push   %es
40a822:	12 61 02             	adc    0x2(%ecx),%ah
40a825:	06                   	push   %es
40a826:	0e                   	push   %cs
40a827:	04 06                	add    $0x6,%al
40a829:	12 80 89 04 06 11    	adc    0x11060489(%eax),%al
40a82f:	80 8d 04 06 12 80 91 	orb    $0x91,-0x7fedf9fc(%ebp)
40a836:	07                   	pop    %es
40a837:	06                   	push   %es
40a838:	15 12 41 01 12       	adc    $0x12014112,%eax
40a83d:	20 04 06             	and    %al,(%esi,%eax,1)
40a840:	11 80 a1 02 06 0a    	adc    %eax,0xa0602a1(%eax)
40a846:	0b 06                	or     (%esi),%eax
40a848:	15 12 80 a5 02       	adc    $0x2a58012,%eax
40a84d:	12 80 a9 12 30 03    	adc    0x33012a9(%eax),%al
40a853:	06                   	push   %es
40a854:	11 44 04 06          	adc    %eax,0x6(%esp,%eax,1)
40a858:	11 80 d9 02 06 1c    	adc    %eax,0x1c0602d9(%eax)
40a85e:	04 06                	add    $0x6,%al
40a860:	12 80 8c 04 06 12    	adc    0x1206048c(%eax),%al
40a866:	80 80 03 06 12 58 04 	addb   $0x4,0x58120603(%eax)
40a86d:	06                   	push   %es
40a86e:	12 80 e9 04 06 12    	adc    0x120604e9(%eax),%al
40a874:	80 ed 02             	sub    $0x2,%ch
40a877:	06                   	push   %es
40a878:	0c 02                	or     $0x2,%al
40a87a:	06                   	push   %es
40a87b:	0d 04 06 11 80       	or     $0x80110604,%eax
40a880:	88 05 06 1d 11 80    	mov    %al,0x80111d06
40a886:	94                   	xchg   %eax,%esp
40a887:	04 06                	add    $0x6,%al
40a889:	1d 11 68 04 06       	sbb    $0x6046811,%eax
40a88e:	1d 11 70 09 06       	sbb    $0x6097011,%eax
40a893:	15 12 80 fd 02       	adc    $0x2fd8012,%eax
40a898:	0e                   	push   %cs
40a899:	12 5c 03 06          	adc    0x6(%ebx,%eax,1),%bl
40a89d:	12 5c 03 06          	adc    0x6(%ebx,%eax,1),%bl
40a8a1:	12 74 03 06          	adc    0x6(%ebx,%eax,1),%dh
40a8a5:	12 7c 0a 06          	adc    0x6(%edx,%ecx,1),%bh
40a8a9:	15 12 80 fd 02       	adc    $0x2fd8012,%eax
40a8ae:	0e                   	push   %cs
40a8af:	11 80 88 06 20 02    	adc    %eax,0x2200688(%eax)
40a8b5:	01 1c 12             	add    %ebx,(%edx,%edx,1)
40a8b8:	71 05                	jno    0x40a8bf
40a8ba:	20 01                	and    %al,(%ecx)
40a8bc:	01 12                	add    %edx,(%edx)
40a8be:	79 05                	jns    0x40a8c5
40a8c0:	20 00                	and    %al,(%eax)
40a8c2:	11 80 8d 04 20 01    	adc    %eax,0x120048d(%eax)
40a8c8:	02 0e                	add    (%esi),%cl
40a8ca:	06                   	push   %es
40a8cb:	20 01                	and    %al,(%ecx)
40a8cd:	12 80 99 0e 06 20    	adc    0x20060e99(%eax),%al
40a8d3:	03 02                	add    (%edx),%eax
40a8d5:	08 08                	or     %cl,(%eax)
40a8d7:	08 05 20 00 11 80    	or     %al,0x80110020
40a8dd:	a1 06 20 01 01       	mov    0x1012006,%eax
40a8e2:	11 80 a1 03 20 00    	adc    %eax,0x2003a1(%eax)
40a8e8:	0a 04 20             	or     (%eax,%eiz,1),%al
40a8eb:	01 01                	add    %eax,(%ecx)
40a8ed:	0a 06                	or     (%esi),%al
40a8ef:	20 01                	and    %al,(%ecx)
40a8f1:	01 1d 12 30 04 30    	add    %ebx,0x30043012
40a8f7:	01 00                	add    %eax,(%eax)
40a8f9:	01 05 20 01 01 12    	add    %eax,0x12010120
40a8ff:	30 07                	xor    %al,(%edi)
40a901:	30 01                	xor    %al,(%ecx)
40a903:	01 02                	add    %eax,(%edx)
40a905:	10 1e                	adc    %bl,(%esi)
40a907:	00 09                	add    %cl,(%ecx)
40a909:	20 02                	and    %al,(%edx)
40a90b:	02 12                	add    (%edx),%dl
40a90d:	80 a9 10 12 30 05 20 	subb   $0x20,0x5301210(%ecx)
40a914:	00 1d 12 30 06 30    	add    %bl,0x30063012
40a91a:	01 00                	add    %eax,(%eax)
40a91c:	1d 1e 00 08 20       	sbb    $0x2008001e,%eax
40a921:	01 1d 12 30 12 80    	add    %ebx,0x80123012
40a927:	a9 05 30 01 00       	test   $0x13005,%eax
40a92c:	1e                   	push   %ds
40a92d:	00 07                	add    %al,(%edi)
40a92f:	20 01                	and    %al,(%ecx)
40a931:	12 30                	adc    (%eax),%dh
40a933:	12 80 a9 06 20 01    	adc    0x12006a9(%eax),%al
40a939:	01 12                	add    %edx,(%edx)
40a93b:	80 a9 07 20 01 02 1d 	subb   $0x1d,0x2012007(%ecx)
40a942:	12 80 a9 04 30 01    	adc    0x13004a9(%eax),%al
40a948:	00 02                	add    %al,(%edx)
40a94a:	04 20                	add    $0x20,%al
40a94c:	00 11                	add    %dl,(%ecx)
40a94e:	44                   	inc    %esp
40a94f:	05 20 01 01 11       	add    $0x11010120,%eax
40a954:	44                   	inc    %esp
40a955:	03 20                	add    (%eax),%esp
40a957:	00 0d 05 20 01 08    	add    %cl,0x8012005
40a95d:	11 44 05 20          	adc    %eax,0x20(%ebp,%eax,1)
40a961:	01 02                	add    %eax,(%edx)
40a963:	11 44 04 20          	adc    %eax,0x20(%esp,%eax,1)
40a967:	01 02                	add    %eax,(%edx)
40a969:	08 04 20             	or     %al,(%eax,%eiz,1)
40a96c:	01 02                	add    %eax,(%edx)
40a96e:	1c 05                	sbb    $0x5,%al
40a970:	00 01                	add    %al,(%ecx)
40a972:	0d 11 44 06 00       	or     $0x64411,%eax
40a977:	01 11                	add    %edx,(%ecx)
40a979:	44                   	inc    %esp
40a97a:	11 44 07 00          	adc    %eax,0x0(%edi,%eax,1)
40a97e:	02 0d 11 44 11 44    	add    0x44114411,%cl
40a984:	05 00 01 02 11       	add    $0x11020100,%eax
40a989:	44                   	inc    %esp
40a98a:	08 00                	or     %al,(%eax)
40a98c:	02 11                	add    (%ecx),%dl
40a98e:	44                   	inc    %esp
40a98f:	11 44 11 44          	adc    %eax,0x44(%ecx,%edx,1)
40a993:	07                   	pop    %es
40a994:	00 02                	add    %al,(%edx)
40a996:	11 44 11 44          	adc    %eax,0x44(%ecx,%edx,1)
40a99a:	08 07                	or     %al,(%edi)
40a99c:	00 02                	add    %al,(%edx)
40a99e:	02 11                	add    (%ecx),%dl
40a9a0:	44                   	inc    %esp
40a9a1:	11 44 06 00          	adc    %eax,0x0(%esi,%eax,1)
40a9a5:	02 02                	add    (%edx),%al
40a9a7:	11 44 08 05          	adc    %eax,0x5(%eax,%ecx,1)
40a9ab:	00 01                	add    %al,(%ecx)
40a9ad:	05 11 44 05 00       	add    $0x54411,%eax
40a9b2:	01 06                	add    %eax,(%esi)
40a9b4:	11 44 05 00          	adc    %eax,0x0(%ebp,%eax,1)
40a9b8:	01 07                	add    %eax,(%edi)
40a9ba:	11 44 05 00          	adc    %eax,0x0(%ebp,%eax,1)
40a9be:	01 08                	add    %ecx,(%eax)
40a9c0:	11 44 05 00          	adc    %eax,0x0(%ebp,%eax,1)
40a9c4:	01 09                	add    %ecx,(%ecx)
40a9c6:	11 44 05 00          	adc    %eax,0x0(%ebp,%eax,1)
40a9ca:	01 0a                	add    %ecx,(%edx)
40a9cc:	11 44 05 00          	adc    %eax,0x0(%ebp,%eax,1)
40a9d0:	01 0b                	add    %ecx,(%ebx)
40a9d2:	11 44 05 00          	adc    %eax,0x0(%ebp,%eax,1)
40a9d6:	01 0c 11             	add    %ecx,(%ecx,%edx,1)
40a9d9:	44                   	inc    %esp
40a9da:	07                   	pop    %es
40a9db:	00 01                	add    %al,(%ecx)
40a9dd:	11 80 d1 11 44 05    	adc    %eax,0x54411d1(%eax)
40a9e3:	00 01                	add    %al,(%ecx)
40a9e5:	0e                   	push   %cs
40a9e6:	11 44 03 00          	adc    %eax,0x0(%ebx,%eax,1)
40a9ea:	00 01                	add    %al,(%ecx)
40a9ec:	0c 10                	or     $0x10,%al
40a9ee:	01 01                	add    %eax,(%ecx)
40a9f0:	1d 1e 00 15 12       	sbb    $0x1215001e,%eax
40a9f5:	41                   	inc    %ecx
40a9f6:	01 1e                	add    %ebx,(%esi)
40a9f8:	00 09                	add    %cl,(%ecx)
40a9fa:	00 02                	add    %al,(%edx)
40a9fc:	02 12                	add    (%edx),%dl
40a9fe:	80 a9 12 80 a9 04 00 	subb   $0x0,0x4a98012(%ecx)
40aa05:	00 1d 05 05 20 00    	add    %bl,0x200505
40aa0b:	11 80 d9 03 20 00    	adc    %eax,0x2003d9(%eax)
40aa11:	1c 04                	sbb    $0x4,%al
40aa13:	20 01                	and    %al,(%ecx)
40aa15:	01 1c 04             	add    %ebx,(%esp,%eax,1)
40aa18:	20 01                	and    %al,(%ecx)
40aa1a:	01 0d 05 00 01 01    	add    %ecx,0x1010005
40aa20:	1d 0e 05 00 02       	sbb    $0x200050e,%eax
40aa25:	01 0d 0d 05 00 00    	add    %ecx,0x50d
40aa2b:	12 80 e9 05 00 00    	adc    0x5e9(%eax),%al
40aa31:	12 80 ed 06 00 01    	adc    0x10006ed(%eax),%al
40aa37:	01 12                	add    %edx,(%edx)
40aa39:	80 ed 05             	sub    $0x5,%ch
40aa3c:	00 00                	add    %al,(%eax)
40aa3e:	12 80 f1 03 20 00    	adc    0x2003f1(%eax),%al
40aa44:	0c 07                	or     $0x7,%al
40aa46:	20 04 01             	and    %al,(%ecx,%eax,1)
40aa49:	0c 0c                	or     $0xc,%al
40aa4b:	0c 0c                	or     $0xc,%al
40aa4d:	06                   	push   %es
40aa4e:	20 01                	and    %al,(%ecx)
40aa50:	01 12                	add    %edx,(%edx)
40aa52:	80 8c 0a 20 03 01 11 	orb    $0x80,0x11010320(%edx,%ecx,1)
40aa59:	80
40aa5a:	94                   	xchg   %eax,%esp
40aa5b:	11 68 11             	adc    %ebp,0x11(%eax)
40aa5e:	70 05                	jo     0x40aa65
40aa60:	20 01                	and    %al,(%ecx)
40aa62:	01 12                	add    %edx,(%edx)
40aa64:	7c 06                	jl     0x40aa6c
40aa66:	20 01                	and    %al,(%ecx)
40aa68:	01 12                	add    %edx,(%edx)
40aa6a:	80 80 05 20 00 11 80 	addb   $0x80,0x11002005(%eax)
40aa71:	88 06                	mov    %al,(%esi)
40aa73:	20 01                	and    %al,(%ecx)
40aa75:	01 11                	add    %edx,(%ecx)
40aa77:	80 88 06 20 00 1d 11 	orb    $0x11,0x1d002006(%eax)
40aa7e:	80 94 07 20 01 01 1d 	adcb   $0x11,0x1d010120(%edi,%eax,1)
40aa85:	11
40aa86:	80 94 05 20 00 1d 11 	adcb   $0x68,0x111d0020(%ebp,%eax,1)
40aa8d:	68
40aa8e:	06                   	push   %es
40aa8f:	20 01                	and    %al,(%ecx)
40aa91:	01 1d 11 68 05 20    	add    %ebx,0x20056811
40aa97:	00 1d 11 70 06 20    	add    %bl,0x20067011
40aa9d:	01 01                	add    %eax,(%ecx)
40aa9f:	1d 11 70 05 20       	sbb    $0x20057011,%eax
40aaa4:	00 11                	add    %dl,(%ecx)
40aaa6:	80 94 08 20 03 01 11 	adcb   $0x80,0x11010320(%eax,%ecx,1)
40aaad:	80
40aaae:	94                   	xchg   %eax,%esp
40aaaf:	0d 0d 05 20 02       	or     $0x220050d,%eax
40aab4:	01 0d 0d 06 20 01    	add    %ecx,0x120060d
40aaba:	01 11                	add    %edx,(%ecx)
40aabc:	80 94 05 20 01 01 11 	adcb   $0x68,0x11010120(%ebp,%eax,1)
40aac3:	68
40aac4:	07                   	pop    %es
40aac5:	20 02                	and    %al,(%edx)
40aac7:	01 11                	add    %edx,(%ecx)
40aac9:	70 11                	jo     0x40aadc
40aacb:	70 06                	jo     0x40aad3
40aacd:	20 02                	and    %al,(%edx)
40aacf:	01 0e                	add    %ecx,(%esi)
40aad1:	12 5c 06 20          	adc    0x20(%esi,%eax,1),%bl
40aad5:	03 01                	add    (%ecx),%eax
40aad7:	08 08                	or     %cl,(%eax)
40aad9:	08 06                	or     %al,(%esi)