40d686:	1d 02 00 06 0c       	sbb    $0xc060002,%eax
40d68b:	12 02                	adc    (%edx),%al
40d68d:	28 50 01             	sub    %dl,0x1(%eax)
40d690:	00 0a                	add    %cl,(%edx)
40d692:	fe 01                	incb   (%ecx)
40d694:	16                   	push   %ss
40d695:	fe 01                	incb   (%ecx)
40d697:	0d 09 2c 1a 02       	or     $0x21a2c09,%eax
40d69c:	7b e1                	jnp    0x40d67f
40d69e:	01 00                	add    %eax,(%eax)
40d6a0:	04 02                	add    $0x2,%al
40d6a2:	28 1d 02 00 06 0c    	sub    %bl,0xc060002
40d6a8:	12 02                	adc    (%edx),%al
40d6aa:	28 50 01             	sub    %dl,0x1(%eax)
40d6ad:	00 0a                	add    %cl,(%edx)
40d6af:	6f                   	outsl  %ds:(%esi),(%dx)
40d6b0:	6f                   	outsl  %ds:(%esi),(%dx)
40d6b1:	02 00                	add    (%eax),%al
40d6b3:	06                   	push   %es
40d6b4:	00 7e 22             	add    %bh,0x22(%esi)
40d6b7:	02 00                	add    (%eax),%al
40d6b9:	04 0a                	add    $0xa,%al
40d6bb:	02 7b e0             	add    -0x20(%ebx),%bh
40d6be:	01 00                	add    %eax,(%eax)
40d6c0:	04 02                	add    $0x2,%al
40d6c2:	28 7d 01             	sub    %bh,0x1(%ebp)
40d6c5:	00 0a                	add    %cl,(%edx)
40d6c7:	0c 12                	or     $0x12,%al
40d6c9:	02 28                	add    (%eax),%ch
40d6cb:	50                   	push   %eax
40d6cc:	01 00                	add    %eax,(%eax)
40d6ce:	0a 06                	or     (%esi),%al
40d6d0:	59                   	pop    %ecx
40d6d1:	16                   	push   %ss
40d6d2:	73 4d                	jae    0x40d721
40d6d4:	00 00                	add    %al,(%eax)
40d6d6:	0a 6f b5             	or     -0x4b(%edi),%ch
40d6d9:	00 00                	add    %al,(%eax)
40d6db:	0a 00                	or     (%eax),%al
40d6dd:	02 7b e0             	add    -0x20(%ebx),%bh
40d6e0:	01 00                	add    %eax,(%eax)
40d6e2:	04 06                	add    $0x6,%al
40d6e4:	02 28                	add    (%eax),%ch
40d6e6:	7d 01                	jge    0x40d6e9
40d6e8:	00 0a                	add    %cl,(%edx)
40d6ea:	0c 12                	or     $0x12,%al
40d6ec:	02 28                	add    (%eax),%ch
40d6ee:	51                   	push   %ecx
40d6ef:	01 00                	add    %eax,(%eax)
40d6f1:	0a 73 5a             	or     0x5a(%ebx),%dh
40d6f4:	00 00                	add    %al,(%eax)
40d6f6:	0a 6f b7             	or     -0x49(%edi),%ch
40d6f9:	00 00                	add    %al,(%eax)
40d6fb:	0a 00                	or     (%eax),%al
40d6fd:	02 7b e1             	add    -0x1f(%ebx),%bh
40d700:	01 00                	add    %eax,(%eax)
40d702:	04 16                	add    $0x16,%al
40d704:	02 28                	add    (%eax),%ch
40d706:	7d 01                	jge    0x40d709
40d708:	00 0a                	add    %cl,(%edx)
40d70a:	0c 12                	or     $0x12,%al
40d70c:	02 28                	add    (%eax),%ch
40d70e:	51                   	push   %ecx
40d70f:	01 00                	add    %eax,(%eax)
40d711:	0a 06                	or     (%esi),%al
40d713:	59                   	pop    %ecx
40d714:	73 4d                	jae    0x40d763
40d716:	00 00                	add    %al,(%eax)
40d718:	0a 6f b5             	or     -0x4b(%edi),%ch
40d71b:	00 00                	add    %al,(%eax)
40d71d:	0a 00                	or     (%eax),%al
40d71f:	02 7b e1             	add    -0x1f(%ebx),%bh
40d722:	01 00                	add    %eax,(%eax)
40d724:	04 02                	add    $0x2,%al
40d726:	28 7d 01             	sub    %bh,0x1(%ebp)
40d729:	00 0a                	add    %cl,(%edx)
40d72b:	0c 12                	or     $0x12,%al
40d72d:	02 28                	add    (%eax),%ch
40d72f:	50                   	push   %eax
40d730:	01 00                	add    %eax,(%eax)
40d732:	0a 06                	or     (%esi),%al
40d734:	73 5a                	jae    0x40d790
40d736:	00 00                	add    %al,(%eax)
40d738:	0a 6f b7             	or     -0x49(%edi),%ch
40d73b:	00 00                	add    %al,(%eax)
40d73d:	0a 00                	or     (%eax),%al
40d73f:	02 28                	add    (%eax),%ch
40d741:	a7                   	cmpsl  %es:(%edi),%ds:(%esi)
40d742:	01 00                	add    %eax,(%eax)
40d744:	0a 13                	or     (%ebx),%dl
40d746:	04 11                	add    $0x11,%al
40d748:	04 2c                	add    $0x2c,%al
40d74a:	05 38 9b 00 00       	add    $0x9b38,%eax
40d74f:	00 02                	add    %al,(%edx)
40d751:	28 27                	sub    %ah,(%edi)
40d753:	02 00                	add    (%eax),%al
40d755:	06                   	push   %es
40d756:	00 02                	add    %al,(%edx)
40d758:	28 26                	sub    %ah,(%esi)
40d75a:	02 00                	add    (%eax),%al
40d75c:	06                   	push   %es
40d75d:	00 02                	add    %al,(%edx)
40d75f:	28 27                	sub    %ah,(%edi)
40d761:	02 00                	add    (%eax),%al
40d763:	06                   	push   %es
40d764:	00 02                	add    %al,(%edx)
40d766:	28 26                	sub    %ah,(%esi)
40d768:	02 00                	add    (%eax),%al
40d76a:	06                   	push   %es
40d76b:	00 02                	add    %al,(%edx)
40d76d:	7b e0                	jnp    0x40d74f
40d76f:	01 00                	add    %eax,(%eax)
40d771:	04 6f                	add    $0x6f,%al
40d773:	72 02                	jb     0x40d777
40d775:	00 06                	add    %al,(%esi)
40d777:	13 05 11 05 2c 14    	adc    0x142c0511,%eax
40d77d:	02 7b e1             	add    -0x1f(%ebx),%bh
40d780:	01 00                	add    %eax,(%eax)
40d782:	04 25                	add    $0x25,%al
40d784:	6f                   	outsl  %ds:(%esi),(%dx)
40d785:	3a 00                	cmp    (%eax),%al
40d787:	00 0a                	add    %cl,(%edx)
40d789:	06                   	push   %es
40d78a:	59                   	pop    %ecx
40d78b:	6f                   	outsl  %ds:(%esi),(%dx)
40d78c:	ae                   	scas   %es:(%edi),%al
40d78d:	00 00                	add    %al,(%eax)
40d78f:	0a 00                	or     (%eax),%al
40d791:	02 7b e1             	add    -0x1f(%ebx),%bh
40d794:	01 00                	add    %eax,(%eax)
40d796:	04 6f                	add    $0x6f,%al
40d798:	72 02                	jb     0x40d79c
40d79a:	00 06                	add    %al,(%esi)
40d79c:	13 06                	adc    (%esi),%eax
40d79e:	11 06                	adc    %eax,(%esi)
40d7a0:	2c 14                	sub    $0x14,%al
40d7a2:	02 7b e0             	add    -0x20(%ebx),%bh
40d7a5:	01 00                	add    %eax,(%eax)
40d7a7:	04 25                	add    $0x25,%al
40d7a9:	6f                   	outsl  %ds:(%esi),(%dx)
40d7aa:	3b 00                	cmp    (%eax),%eax
40d7ac:	00 0a                	add    %cl,(%edx)
40d7ae:	06                   	push   %es
40d7af:	59                   	pop    %ecx
40d7b0:	6f                   	outsl  %ds:(%esi),(%dx)
40d7b1:	4c                   	dec    %esp
40d7b2:	01 00                	add    %eax,(%eax)
40d7b4:	0a 00                	or     (%eax),%al
40d7b6:	02 7b e0             	add    -0x20(%ebx),%bh
40d7b9:	01 00                	add    %eax,(%eax)
40d7bb:	04 02                	add    $0x2,%al
40d7bd:	7c e2                	jl     0x40d7a1
40d7bf:	01 00                	add    %eax,(%eax)
40d7c1:	04 28                	add    $0x28,%al
40d7c3:	51                   	push   %ecx
40d7c4:	01 00                	add    %eax,(%eax)
40d7c6:	0a 6f 71             	or     0x71(%edi),%ch
40d7c9:	02 00                	add    (%eax),%al
40d7cb:	06                   	push   %es
40d7cc:	00 02                	add    %al,(%edx)
40d7ce:	7b e1                	jnp    0x40d7b1
40d7d0:	01 00                	add    %eax,(%eax)
40d7d2:	04 02                	add    $0x2,%al
40d7d4:	7c e2                	jl     0x40d7b8
40d7d6:	01 00                	add    %eax,(%eax)
40d7d8:	04 28                	add    $0x28,%al
40d7da:	50                   	push   %eax
40d7db:	01 00                	add    %eax,(%eax)
40d7dd:	0a 6f 71             	or     0x71(%edi),%ch
40d7e0:	02 00                	add    (%eax),%al
40d7e2:	06                   	push   %es
40d7e3:	00 02                	add    %al,(%edx)
40d7e5:	28 28                	sub    %ch,(%eax)
40d7e7:	02 00                	add    (%eax),%al
40d7e9:	06                   	push   %es
40d7ea:	00 2a                	add    %ch,(%edx)
40d7ec:	13 30                	adc    (%eax),%esi
40d7ee:	03 00                	add    (%eax),%eax
40d7f0:	50                   	push   %eax
40d7f1:	00 00                	add    %al,(%eax)
40d7f3:	00 a4 00 00 11 00 02 	add    %ah,0x2001100(%eax,%eax,1)
40d7fa:	7b e0                	jnp    0x40d7dc
40d7fc:	01 00                	add    %eax,(%eax)
40d7fe:	04 02                	add    $0x2,%al
40d800:	7c e2                	jl     0x40d7e4
40d802:	01 00                	add    %eax,(%eax)
40d804:	04 28                	add    $0x28,%al
40d806:	51                   	push   %ecx
40d807:	01 00                	add    %eax,(%eax)
40d809:	0a 02                	or     (%edx),%al
40d80b:	28 1d 02 00 06 0a    	sub    %bl,0xa060002
40d811:	12 00                	adc    (%eax),%al
40d813:	28 51 01             	sub    %dl,0x1(%ecx)
40d816:	00 0a                	add    %cl,(%edx)
40d818:	fe 04 6f             	incb   (%edi,%ebp,2)
40d81b:	73 02                	jae    0x40d81f
40d81d:	00 06                	add    %al,(%esi)
40d81f:	00 02                	add    %al,(%edx)
40d821:	7b e1                	jnp    0x40d804
40d823:	01 00                	add    %eax,(%eax)
40d825:	04 02                	add    $0x2,%al
40d827:	7c e2                	jl     0x40d80b
40d829:	01 00                	add    %eax,(%eax)
40d82b:	04 28                	add    $0x28,%al
40d82d:	50                   	push   %eax
40d82e:	01 00                	add    %eax,(%eax)
40d830:	0a 02                	or     (%edx),%al
40d832:	28 1d 02 00 06 0a    	sub    %bl,0xa060002
40d838:	12 00                	adc    (%eax),%al
40d83a:	28 50 01             	sub    %dl,0x1(%eax)
40d83d:	00 0a                	add    %cl,(%edx)
40d83f:	fe 04 6f             	incb   (%edi,%ebp,2)
40d842:	73 02                	jae    0x40d846
40d844:	00 06                	add    %al,(%esi)
40d846:	00 2a                	add    %ch,(%edx)
40d848:	13 30                	adc    (%eax),%esi
40d84a:	03 00                	add    (%eax),%eax
40d84c:	75 00                	jne    0x40d84e
40d84e:	00 00                	add    %al,(%eax)
40d850:	a6                   	cmpsb  %es:(%edi),%ds:(%esi)
40d851:	00 00                	add    %al,(%eax)
40d853:	11 00                	adc    %eax,(%eax)
40d855:	7e 22                	jle    0x40d879
40d857:	02 00                	add    (%eax),%al
40d859:	04 0a                	add    $0xa,%al
40d85b:	02 02                	add    (%edx),%al
40d85d:	28 7d 01             	sub    %bh,0x1(%ebp)
40d860:	00 0a                	add    %cl,(%edx)
40d862:	0b 12                	or     (%edx),%edx
40d864:	01 28                	add    %ebp,(%eax)
40d866:	50                   	push   %eax
40d867:	01 00                	add    %eax,(%eax)
40d869:	0a 02                	or     (%edx),%al
40d86b:	28 7d 01             	sub    %bh,0x1(%ebp)
40d86e:	00 0a                	add    %cl,(%edx)
40d870:	0b 12                	or     (%edx),%edx
40d872:	01 28                	add    %ebp,(%eax)
40d874:	51                   	push   %ecx
40d875:	01 00                	add    %eax,(%eax)
40d877:	0a 73 5a             	or     0x5a(%ebx),%dh
40d87a:	00 00                	add    %al,(%eax)
40d87c:	0a 7d e2             	or     -0x1e(%ebp),%bh
40d87f:	01 00                	add    %eax,(%eax)
40d881:	04 02                	add    $0x2,%al
40d883:	7b e0                	jnp    0x40d865
40d885:	01 00                	add    %eax,(%eax)
40d887:	04 6f                	add    $0x6f,%al
40d889:	72 02                	jb     0x40d88d
40d88b:	00 06                	add    %al,(%esi)
40d88d:	0c 08                	or     $0x8,%al
40d88f:	2c 14                	sub    $0x14,%al
40d891:	02 7c e2 01          	add    0x1(%edx,%eiz,8),%bh
40d895:	00 04 25 28 50 01 00 	add    %al,0x15028(,%eiz,1)
40d89c:	0a 06                	or     (%esi),%al
40d89e:	59                   	pop    %ecx
40d89f:	28 ea                	sub    %ch,%dl
40d8a1:	01 00                	add    %eax,(%eax)
40d8a3:	0a 00                	or     (%eax),%al
40d8a5:	02 7b e1             	add    -0x1f(%ebx),%bh
40d8a8:	01 00                	add    %eax,(%eax)
40d8aa:	04 6f                	add    $0x6f,%al
40d8ac:	72 02                	jb     0x40d8b0
40d8ae:	00 06                	add    %al,(%esi)
40d8b0:	0d 09 2c 14 02       	or     $0x2142c09,%eax
40d8b5:	7c e2                	jl     0x40d899
40d8b7:	01 00                	add    %eax,(%eax)
40d8b9:	04 25                	add    $0x25,%al
40d8bb:	28 51 01             	sub    %dl,0x1(%ecx)
40d8be:	00 0a                	add    %cl,(%edx)
40d8c0:	06                   	push   %es
40d8c1:	59                   	pop    %ecx
40d8c2:	28 eb                	sub    %ch,%bl
40d8c4:	01 00                	add    %eax,(%eax)
40d8c6:	0a 00                	or     (%eax),%al
40d8c8:	2a 00                	sub    (%eax),%al
40d8ca:	00 00                	add    %al,(%eax)
40d8cc:	13 30                	adc    (%eax),%esi
40d8ce:	05 00 dd 00 00       	add    $0xdd00,%eax
40d8d3:	00 a7 00 00 11 00    	add    %ah,0x110000(%edi)
40d8d9:	16                   	push   %ss
40d8da:	0a 16                	or     (%esi),%dl
40d8dc:	0b 02                	or     (%edx),%eax
40d8de:	28 7d 01             	sub    %bh,0x1(%ebp)
40d8e1:	00 0a                	add    %cl,(%edx)
40d8e3:	13 05 12 05 28 50    	adc    0x50280512,%eax
40d8e9:	01 00                	add    %eax,(%eax)
40d8eb:	0a 0c 02             	or     (%edx,%eax,1),%cl
40d8ee:	28 7d 01             	sub    %bh,0x1(%ebp)
40d8f1:	00 0a                	add    %cl,(%edx)
40d8f3:	13 05 12 05 28 51    	adc    0x51280512,%eax
40d8f9:	01 00                	add    %eax,(%eax)
40d8fb:	0a 0d 02 7b e1 01    	or     0x1e17b02,%cl
40d901:	00 04 6f             	add    %al,(%edi,%ebp,2)
40d904:	72 02                	jb     0x40d908
40d906:	00 06                	add    %al,(%esi)
40d908:	13 06                	adc    (%esi),%eax
40d90a:	11 06                	adc    %eax,(%esi)
40d90c:	2c 1c                	sub    $0x1c,%al
40d90e:	00 02                	add    %al,(%edx)
40d910:	7b e1                	jnp    0x40d8f3
40d912:	01 00                	add    %eax,(%eax)
40d914:	04 6f                	add    $0x6f,%al
40d916:	6a 02                	push   $0x2
40d918:	00 06                	add    %al,(%esi)
40d91a:	0a 09                	or     (%ecx),%cl
40d91c:	02 7b e1             	add    -0x1f(%ebx),%bh
40d91f:	01 00                	add    %eax,(%eax)
40d921:	04 6f                	add    $0x6f,%al
40d923:	3b 00                	cmp    (%eax),%eax
40d925:	00 0a                	add    %cl,(%edx)
40d927:	59                   	pop    %ecx
40d928:	0d 00 02 7b e0       	or     $0xe07b0200,%eax
40d92d:	01 00                	add    %eax,(%eax)
40d92f:	04 6f                	add    $0x6f,%al
40d931:	72 02                	jb     0x40d935
40d933:	00 06                	add    %al,(%esi)
40d935:	13 07                	adc    (%edi),%eax
40d937:	11 07                	adc    %eax,(%edi)
40d939:	2c 1c                	sub    $0x1c,%al
40d93b:	00 02                	add    %al,(%edx)
40d93d:	7b e0                	jnp    0x40d91f
40d93f:	01 00                	add    %eax,(%eax)
40d941:	04 6f                	add    $0x6f,%al
40d943:	6a 02                	push   $0x2
40d945:	00 06                	add    %al,(%esi)
40d947:	0b 08                	or     (%eax),%ecx
40d949:	02 7b e0             	add    -0x20(%ebx),%bh
40d94c:	01 00                	add    %eax,(%eax)
40d94e:	04 6f                	add    $0x6f,%al
40d950:	3a 00                	cmp    (%eax),%al
40d952:	00 0a                	add    %cl,(%edx)
40d954:	59                   	pop    %ecx
40d955:	0c 00                	or     $0x0,%al
40d957:	02 06                	add    (%esi),%al
40d959:	07                   	pop    %es
40d95a:	08 09                	or     %cl,(%ecx)
40d95c:	73 3c                	jae    0x40d99a
40d95e:	00 00                	add    %al,(%eax)
40d960:	0a 28                	or     (%eax),%ch
40d962:	1c 02                	sbb    $0x2,%al
40d964:	00 06                	add    %al,(%esi)
40d966:	00 02                	add    %al,(%edx)
40d968:	28 ce                	sub    %cl,%dh
40d96a:	01 00                	add    %eax,(%eax)
40d96c:	0a 28                	or     (%eax),%ch
40d96e:	cf                   	iret
40d96f:	01 00                	add    %eax,(%eax)
40d971:	0a 13                	or     (%ebx),%dl
40d973:	04 02                	add    $0x2,%al
40d975:	12 04 28             	adc    (%eax,%ebp,1),%al