40e5e2:	fc                   	cld
40e5e3:	02 0c 11             	add    (%ecx,%edx,1),%cl
40e5e6:	55                   	push   %ebp
40e5e7:	03 04 02             	add    (%edx,%eax,1),%eax
40e5ea:	b9 0b a8 01 0c       	mov    $0xc01a80b,%ecx
40e5ef:	03 15 11 5b 03 1c    	add    0x1c035b11,%edx
40e5f5:	03 1f                	add    (%edi),%ebx
40e5f7:	11 62 03             	adc    %esp,0x3(%edx)
40e5fa:	1c 03                	sbb    $0x3,%al
40e5fc:	2d 11 69 03 2c       	sub    $0x2c036911,%eax
40e601:	03 3e                	add    (%esi),%edi
40e603:	11 6f 03             	adc    %ebp,0x3(%edi)
40e606:	34 03                	xor    $0x3,%al
40e608:	b9 0b 94 00 3c       	mov    $0x3c00940b,%ecx
40e60d:	03 b9 0b 94 00 3c    	add    0x3c00940b(%ecx),%edi
40e613:	03 42 11             	add    0x11(%edx),%eax
40e616:	74 03                	je     0x40e61b
40e618:	3c 03                	cmp    $0x3,%al
40e61a:	4e                   	dec    %esi
40e61b:	11 79 03             	adc    %edi,0x3(%ecx)
40e61e:	3c 03                	cmp    $0x3,%al
40e620:	57                   	push   %edi
40e621:	11 7e 03             	adc    %edi,0x3(%esi)
40e624:	44                   	inc    %esp
40e625:	03 60 11             	add    0x11(%eax),%esp
40e628:	84 03                	test   %al,(%ebx)
40e62a:	4c                   	dec    %esp
40e62b:	03 67 11             	add    0x11(%edi),%esp
40e62e:	89 03                	mov    %eax,(%ebx)
40e630:	4c                   	dec    %esp
40e631:	03 e2                	add    %edx,%esp
40e633:	0d 89 03 54 03       	or     $0x3540389,%eax
40e638:	b9 0b 94 00 5c       	mov    $0x5c00940b,%ecx
40e63d:	03 0d 10 8e 03 5c    	add    0x5c038e10,%ecx
40e643:	03 6d 11             	add    0x11(%ebp),%ebp
40e646:	94                   	xchg   %eax,%esp
40e647:	03 64 03 b9          	add    -0x47(%ebx,%eax,1),%esp
40e64b:	0b 9b 03 6c 03 b9    	or     -0x46fc93fd(%ebx),%ebx
40e651:	0b 94 00 74 03 81 11 	or     0x11810374(%eax,%eax,1),%edx
40e658:	a1 03 74 03 96       	mov    0x96037403,%eax
40e65d:	11 a7 03 74 03 35    	adc    %esp,0x35037403(%edi)
40e663:	10 ae 03 74 03 b0    	adc    %ch,-0x4ffc8bfd(%esi)
40e669:	11 b6 03 7c 03 c9    	adc    %esi,-0x36fc83fd(%esi)
40e66f:	11 b8 01 84 03 51    	adc    %edi,0x51038401(%eax)
40e675:	0e                   	push   %cs
40e676:	12 02                	adc    (%edx),%al
40e678:	84 03                	test   %al,(%ebx)
40e67a:	d2 11                	rclb   %cl,(%ecx)
40e67c:	12 02                	adc    (%edx),%al
40e67e:	8c 03                	mov    %es,(%ebx)
40e680:	df 11                	fists  (%ecx)
40e682:	bb 03 94 03 eb       	mov    $0xeb039403,%ebx
40e687:	11 2d 02 9c 03 27    	adc    %ebp,0x27039c02
40e68d:	0e                   	push   %cs
40e68e:	c1 03 9c             	roll   $0x9c,(%ebx)
40e691:	03 f5                	add    %ebp,%esi
40e693:	11 ca                	adc    %ecx,%edx
40e695:	03 ac 03 db 10 12 03 	add    0x31210db(%ebx,%eax,1),%ebp
40e69c:	b4 03                	mov    $0x3,%ah
40e69e:	67 11 89 03 b4       	adc    %ecx,-0x4bfd(%bx,%di)
40e6a3:	03 e2                	add    %edx,%esp
40e6a5:	0d 89 03 bc 03       	or     $0x3bc0389,%eax
40e6aa:	fb                   	sti
40e6ab:	0f 94 00             	sete   (%eax)
40e6ae:	c4 03                	les    (%ebx),%eax
40e6b0:	3e 0f 88 02 d4 03 b9 	js,pt  0xb944bab9
40e6b7:	0b e3                	or     %ebx,%esp
40e6b9:	01 dc                	add    %ebx,%esp
40e6bb:	03 b9 0b d1 03 dc    	add    -0x23fc2ef5(%ecx),%edi
40e6c1:	03 97 0e b8 01 dc    	add    -0x23fe47f2(%edi),%edx
40e6c7:	03 84 0e 31 02 e4 03 	add    0x3e40231(%esi,%ecx,1),%eax
40e6ce:	b9 0b 94 00 ec       	mov    $0xec00940b,%ecx
40e6d3:	03 01                	add    (%ecx),%eax
40e6d5:	11 d8                	adc    %ebx,%eax
40e6d7:	03 ec                	add    %esp,%ebp
40e6d9:	03 0b                	add    (%ebx),%ecx
40e6db:	12 de                	adc    %dh,%bl
40e6dd:	03 f4                	add    %esp,%esi
40e6df:	03 14 12             	add    (%edx,%edx,1),%edx
40e6e2:	e3 01                	jecxz  0x40e6e5
40e6e4:	f4                   	hlt
40e6e5:	03 1c 12             	add    (%edx,%edx,1),%ebx
40e6e8:	e3 01                	jecxz  0x40e6eb
40e6ea:	f4                   	hlt
40e6eb:	03 23                	add    (%ebx),%esp
40e6ed:	12 e4                	adc    %ah,%ah
40e6ef:	03 fc                	add    %esp,%edi
40e6f1:	03 b9 0b ea 03 0c    	add    0xc03ea0b(%ecx),%edi
40e6f7:	04 33                	add    $0x33,%al
40e6f9:	12 f7                	adc    %bh,%dh
40e6fb:	03 0c 04             	add    (%esp,%eax,1),%ecx
40e6fe:	45                   	inc    %ebp
40e6ff:	12 fd                	adc    %ch,%bh
40e701:	03 0c 04             	add    (%esp,%eax,1),%ecx
40e704:	52                   	push   %edx
40e705:	12 2d 02 0c 04 59    	adc    0x59040c02,%ch
40e70b:	12 b8 01 0c 04 69    	adc    0x69040c01(%eax),%bh
40e711:	12 94 00 0c 04 6e 12 	adc    0x126e040c(%eax,%eax,1),%dl
40e718:	04 03                	add    $0x3,%al
40e71a:	0c 04                	or     $0x4,%al
40e71c:	81 12 0c 04 0c 04    	adcl   $0x40c040c,(%edx)
40e722:	90                   	nop
40e723:	12 12                	adc    (%edx),%dl
40e725:	04 0c                	add    $0xc,%al
40e727:	04 b9                	add    $0xb9,%al
40e729:	0b 94 00 0c 04 96 12 	or     0x1296040c(%eax,%eax,1),%edx
40e730:	1b 04 0c             	sbb    (%esp,%ecx,1),%eax
40e733:	04 90                	add    $0x90,%al
40e735:	12 29                	adc    (%ecx),%ch
40e737:	02 14 04             	add    (%esp,%eax,1),%dl
40e73a:	a4                   	movsb  %ds:(%esi),%es:(%edi)
40e73b:	12 22                	adc    (%edx),%ah
40e73d:	04 14                	add    $0x14,%al
40e73f:	04 b4                	add    $0xb4,%al
40e741:	12 b8 01 14 04 c3    	adc    -0x3cfbebff(%eax),%bh
40e747:	12 b8 01 1c 04 b9    	adc    -0x46fbe3ff(%eax),%bh
40e74d:	0b 94 00 1c 04 d0 12 	or     0x12d0041c(%eax,%eax,1),%edx
40e754:	a8 01                	test   $0x1,%al
40e756:	1c 04                	sbb    $0x4,%al
40e758:	dd 12                	fstl   (%edx)
40e75a:	a8 01                	test   $0x1,%al
40e75c:	1c 04                	sbb    $0x4,%al
40e75e:	eb 12                	jmp    0x40e772
40e760:	26 04 1c             	es add $0x1c,%al
40e763:	04 fb                	add    $0xfb,%al
40e765:	12 ad 01 1c 04 0e    	adc    0xe041c01(%ebp),%ch
40e76b:	13 ad 01 1c 04 22    	adc    0x22041c01(%ebp),%ebp
40e771:	13 ad 01 1c 04 3c    	adc    0x3c041c01(%ebp),%ebp
40e777:	13 ad 01 1c 04 b9    	adc    -0x46fbe3ff(%ebp),%ebp
40e77d:	0b 2d 04 1c 04 56    	or     0x56041c04,%ebp
40e783:	13 ad 01 24 04 b9    	adc    -0x46fbdbff(%ebp),%ebp
40e789:	0b 2d 04 34 04 b9    	or     0xb9043404,%ebp
40e78f:	0b 33                	or     (%ebx),%esi
40e791:	04 3c                	add    $0x3c,%al
40e793:	04 b9                	add    $0xb9,%al
40e795:	0b 94 00 44 04 b9 0b 	or     0xbb90444(%eax,%eax,1),%edx
40e79c:	3a 04 5c             	cmp    (%esp,%ebx,2),%al
40e79f:	04 71                	add    $0x71,%al
40e7a1:	13 44 04 64          	adc    0x64(%esp,%eax,1),%eax
40e7a5:	04 7e                	add    $0x7e,%al
40e7a7:	13 4d 04             	adc    0x4(%ebp),%ecx
40e7aa:	84 04 83             	test   %al,(%ebx,%eax,4)
40e7ad:	13 5b 04             	adc    0x4(%ebx),%ebx
40e7b0:	17                   	pop    %ss
40e7b1:	00 4e 11             	add    %cl,0x11(%esi)
40e7b4:	62 04 17             	bound  %eax,(%edi,%edx,1)
40e7b7:	00 b9 0b 94 00 17    	add    %bh,0x1700940b(%ecx)
40e7bd:	00 9c 13 69 04 27 00 	add    %bl,0x270469(%ebx,%edx,1)
40e7c4:	b9 0b 94 00 27       	mov    $0x2700940b,%ecx
40e7c9:	00 9c 13 71 04 27 00 	add    %bl,0x270471(%ebx,%edx,1)
40e7d0:	14 0e                	adc    $0xe,%al
40e7d2:	77 04                	ja     0x40e7d8
40e7d4:	37                   	aaa
40e7d5:	00 4e 11             	add    %cl,0x11(%esi)
40e7d8:	7d 04                	jge    0x40e7de
40e7da:	3f                   	aas
40e7db:	00 a0 13 2d 02 47    	add    %ah,0x47022d13(%eax)
40e7e1:	00 b9 0b 94 00 47    	add    %bh,0x4700940b(%ecx)
40e7e7:	00 9c 13 69 04 57 00 	add    %bl,0x570469(%ebx,%edx,1)
40e7ee:	b9 0b 94 00 57       	mov    $0x5700940b,%ecx
40e7f3:	00 9c 13 71 04 57 00 	add    %bl,0x570471(%ebx,%edx,1)
40e7fa:	14 0e                	adc    $0xe,%al
40e7fc:	77 04                	ja     0x40e802
40e7fe:	13 00                	adc    (%eax),%eax
40e800:	33 00                	xor    (%eax),%eax
40e802:	0c 06                	or     $0x6,%al
40e804:	13 00                	adc    (%eax),%eax
40e806:	37                   	aaa
40e807:	00 88 04 13 00 3b    	add    %cl,0x3b001304(%eax)
40e80d:	00 11                	add    %dl,(%ecx)
40e80f:	06                   	push   %es
40e810:	13 00                	adc    (%eax),%eax
40e812:	3f                   	aas
40e813:	00 16                	add    %dl,(%esi)
40e815:	06                   	push   %es
40e816:	13 00                	adc    (%eax),%eax
40e818:	43                   	inc    %ebx
40e819:	00 1b                	add    %bl,(%ebx)
40e81b:	06                   	push   %es
40e81c:	13 00                	adc    (%eax),%eax
40e81e:	47                   	inc    %edi
40e81f:	00 20                	add    %ah,(%eax)
40e821:	06                   	push   %es
40e822:	13 00                	adc    (%eax),%eax
40e824:	4b                   	dec    %ebx
40e825:	00 25 06 32 00 96    	add    %ah,0x96003206
40e82b:	00 88 04 34 00 16    	add    %cl,0x16003404(%eax)
40e831:	06                   	push   %es
40e832:	28 05 39 00 16 00    	sub    %al,0x160039
40e838:	31 05 39 00 1e 00    	xor    %eax,0x1e0039
40e83e:	3a 05 39 00 86 00    	cmp    0x860039,%al
40e844:	c2 05 39             	ret    $0x3905
40e847:	00 26                	add    %ah,(%esi)
40e849:	00 28                	add    %ch,(%eax)
40e84b:	05 39 00 7e 00       	add    $0x7e0039,%eax
40e850:	67 05 39 00 76 00    	addr16 add $0x760039,%eax
40e856:	b5 05                	mov    $0x5,%ch
40e858:	39 00                	cmp    %eax,(%eax)
40e85a:	6e                   	outsb  %ds:(%esi),(%dx)
40e85b:	00 8b 05 39 00 66    	add    %cl,0x66003905(%ebx)
40e861:	00 85 05 39 00 5e    	add    %al,0x5e003905(%ebp)
40e867:	00 67 05             	add    %ah,0x5(%edi)
40e86a:	39 00                	cmp    %eax,(%eax)
40e86c:	56                   	push   %esi
40e86d:	00 6d 05             	add    %ch,0x5(%ebp)
40e870:	39 00                	cmp    %eax,(%eax)
40e872:	46                   	inc    %esi
40e873:	00 67 05             	add    %ah,0x5(%edi)
40e876:	39 00                	cmp    %eax,(%eax)
40e878:	4e                   	dec    %esi
40e879:	00 59 05             	add    %bl,0x5(%ecx)
40e87c:	39 00                	cmp    %eax,(%eax)
40e87e:	3e 00 67 05          	add    %ah,%ds:0x5(%edi)
40e882:	39 00                	cmp    %eax,(%eax)
40e884:	36 00 67 05          	add    %ah,%ss:0x5(%edi)
40e888:	39 00                	cmp    %eax,(%eax)
40e88a:	2e 00 59 05          	add    %bl,%cs:0x5(%ecx)
40e88e:	54                   	push   %esp
40e88f:	00 16                	add    %dl,(%esi)
40e891:	06                   	push   %es
40e892:	28 05 ce 01 86 01    	sub    %al,0x18601ce
40e898:	88 04 6e             	mov    %al,(%esi,%ebp,2)
40e89b:	02 1e                	add    (%esi),%bl
40e89d:	02 88 04 6e 02 0e    	add    0xe026e04(%eax),%cl
40e8a3:	06                   	push   %es
40e8a4:	8d 04 6e             	lea    (%esi,%ebp,2),%eax
40e8a7:	02 16                	add    (%esi),%dl
40e8a9:	02 88 04 8e 02 1e    	add    0x1e028e04(%eax),%cl
40e8af:	02 88 04 8e 02 0e    	add    0xe028e04(%eax),%cl
40e8b5:	06                   	push   %es
40e8b6:	ce                   	into
40e8b7:	04 ce                	add    $0xce,%al
40e8b9:	02 1e                	add    (%esi),%bl
40e8bb:	02 88 04 6e 03 0e    	add    0xe036e04(%eax),%cl
40e8c1:	04 88                	add    $0x88,%al
40e8c3:	04 8e                	add    $0x8e,%al
40e8c5:	03 1e                	add    (%esi),%ebx
40e8c7:	02 88 04 4b 05 7e    	add    0x7e054b04(%eax),%cl
40e8cd:	01 88 04 8b 08 6e    	add    %ecx,0x6e088b04(%eax)
40e8d3:	04 88                	add    $0x88,%al
40e8d5:	04 72                	add    $0x72,%al
40e8d7:	00 9b 01 13 00 11    	add    %bl,0x11001301(%ebx)
40e8dd:	00 2a                	add    %ch,(%edx)
40e8df:	06                   	push   %es
40e8e0:	0c 00                	or     $0x0,%al
40e8e2:	0b 14 0b             	or     (%ebx,%ecx,1),%edx
40e8e5:	00 22                	add    %ah,(%edx)
40e8e7:	00 0c 00             	add    %cl,(%eax,%eax,1)
40e8ea:	0b 16                	or     (%esi),%edx
40e8ec:	0b 00                	or     (%eax),%eax
40e8ee:	23 00                	and    (%eax),%eax
40e8f0:	0c 00                	or     $0x0,%al
40e8f2:	0b 1a                	or     (%edx),%ebx
40e8f4:	0b 00                	or     (%eax),%eax
40e8f6:	24 00                	and    $0x0,%al
40e8f8:	0c 00                	or     $0x0,%al
40e8fa:	0b 42 0b             	or     0xb(%edx),%eax
40e8fd:	00 25 00 0c 00 7a    	add    %ah,0x7a000c00
40e903:	00 0b                	add    %cl,(%ebx)
40e905:	00 27                	add    %ah,(%edi)
40e907:	00 ca                	add    %cl,%dl
40e909:	06                   	push   %es
40e90a:	ce                   	into
40e90b:	06                   	push   %es
40e90c:	d5 06                	aad    $0x6
40e90e:	e2 06                	loop   0x40e916
40e910:	f0 06                	lock push %es
40e912:	f7 06 01 06 0c 07    	testl  $0x70c0601,(%esi)
40e918:	13 07                	adc    (%edi),%eax
40e91a:	19 07                	sbb    %eax,(%edi)
40e91c:	46                   	inc    %esi
40e91d:	07                   	pop    %es
40e91e:	4b                   	dec    %ebx
40e91f:	07                   	pop    %es
40e920:	56                   	push   %esi
40e921:	07                   	pop    %es
40e922:	5b                   	pop    %ebx
40e923:	07                   	pop    %es
40e924:	65 07                	gs pop %es
40e926:	6d                   	insl   (%dx),%es:(%edi)
40e927:	07                   	pop    %es
40e928:	7c 07                	jl     0x40e931
40e92a:	82 07 8e             	addb   $0x8e,(%edi)
40e92d:	07                   	pop    %es
40e92e:	95                   	xchg   %eax,%ebp
40e92f:	07                   	pop    %es
40e930:	9f                   	lahf
40e931:	07                   	pop    %es
40e932:	a9 07 1e 00 0c       	test   $0xc001e07,%eax
40e937:	00 1f                	add    %bl,(%edi)
40e939:	00 0e                	add    %cl,(%esi)
40e93b:	00 0b                	add    %cl,(%ebx)
40e93d:	00 aa 13 40 01 0b    	add    %ch,0xb014013(%edx)
40e943:	00 ad 13 46 01 0b    	add    %ch,0xb014613(%ebp)
40e949:	00 b0 13 4c 01 0d    	add    %dh,0xd014c13(%eax)
40e94f:	00 44 00 0e          	add    %al,0xe(%eax,%eax,1)
40e953:	00 0d 00 45 00 10    	add    %cl,0x10004500
40e959:	00 0c 00             	add    %cl,(%eax,%eax,1)
40e95c:	46                   	inc    %esi
40e95d:	00 10                	add    %dl,(%eax)
40e95f:	00 0d 00 47 00 12    	add    %cl,0x12004700
40e965:	00 b8 13 1f 00 26    	add    %bh,0x26001f13(%eax)
40e96b:	00 29                	add    %ch,(%ecx)
40e96d:	00 30                	add    %dh,(%eax)
40e96f:	00 33                	add    %dh,(%ebx)
40e971:	00 3a                	add    %bh,(%edx)
40e973:	00 41 00             	add    %al,0x0(%ecx)
40e976:	49                   	dec    %ecx
40e977:	00 4c 00 4f          	add    %cl,0x4f(%eax,%eax,1)
40e97b:	01 8a 00 c1 13 0c    	add    %ecx,0xc13c100(%edx)
40e981:	00 5b 20             	add    %bl,0x20(%ebx)
40e984:	0b 00                	or     (%eax),%eax
40e986:	1f                   	pop    %ds
40e987:	00 5b 34             	add    %bl,0x34(%ebx)
40e98a:	0b 00                	or     (%eax),%eax
40e98c:	20 00                	and    %al,(%eax)
40e98e:	5b                   	pop    %ebx
40e98f:	76 0b                	jbe    0x40e99c
40e991:	00 21                	add    %ah,(%ecx)
40e993:	00 5b 90             	add    %bl,-0x70(%ebx)
40e996:	0b 00                	or     (%eax),%eax
40e998:	22 00                	and    (%eax),%al
40e99a:	5b                   	pop    %ebx
40e99b:	a6                   	cmpsb  %es:(%edi),%ds:(%esi)
40e99c:	0b 00                	or     (%eax),%eax
40e99e:	25 00 0f 80 0b       	and    $0xb800f00,%eax
40e9a3:	00 0c 00             	add    %cl,(%eax,%eax,1)
40e9a6:	0b 00                	or     (%eax),%eax
40e9a8:	0b 00                	or     (%eax),%eax
40e9aa:	0b 00                	or     (%eax),%eax
40e9ac:	0b 00                	or     (%eax),%eax
40e9ae:	0b 00                	or     (%eax),%eax
40e9b0:	0c 00                	or     $0x0,%al
40e9b2:	cc                   	int3
40e9b3:	13 0b                	adc    (%ebx),%ecx
40e9b5:	00 0f                	add    %cl,(%edi)
40e9b7:	00 0b                	add    %cl,(%ebx)
40e9b9:	00 0b                	add    %cl,(%ebx)
40e9bb:	00 0b                	add    %cl,(%ebx)
40e9bd:	00 0b                	add    %cl,(%ebx)
40e9bf:	00 0b                	add    %cl,(%ebx)
40e9c1:	00 0d 00 d5 13 0b    	add    %cl,0xb13d500
40e9c7:	00 0b                	add    %cl,(%ebx)
40e9c9:	00 0f                	add    %cl,(%edi)
40e9cb:	00 0b                	add    %cl,(%ebx)
40e9cd:	00 0b                	add    %cl,(%ebx)
40e9cf:	00 0b                	add    %cl,(%ebx)
40e9d1:	00 0b                	add    %cl,(%ebx)
40e9d3:	00 0b                	add    %cl,(%ebx)
40e9d5:	00 0d 00 b6 02 0b    	add    %cl,0xb02b600