40fa64:	06                   	push   %es
40fa65:	07                   	pop    %es
40fa66:	33 df                	xor    %edi,%ebx
40fa68:	2a 00                	sub    (%eax),%al
40fa6a:	00 00                	add    %al,(%eax)
40fa6c:	13 30                	adc    (%eax),%esi
40fa6e:	03 00                	add    (%eax),%eax
40fa70:	29 00                	sub    %eax,(%eax)
40fa72:	00 00                	add    %al,(%eax)
40fa74:	61                   	popa
40fa75:	00 00                	add    %al,(%eax)
40fa77:	11 02                	adc    %eax,(%edx)
40fa79:	7b ce                	jnp    0x40fa49
40fa7b:	00 00                	add    %al,(%eax)
40fa7d:	04 0a                	add    $0xa,%al
40fa7f:	06                   	push   %es
40fa80:	0b 07                	or     (%edi),%eax
40fa82:	03 28                	add    (%eax),%ebp
40fa84:	cf                   	iret
40fa85:	01 00                	add    %eax,(%eax)
40fa87:	0a 74 1d 00          	or     0x0(%ebp,%ebx,1),%dh
40fa8b:	00 02                	add    %al,(%edx)
40fa8d:	0c 02                	or     $0x2,%al
40fa8f:	7c ce                	jl     0x40fa5f
40fa91:	00 00                	add    %al,(%eax)
40fa93:	04 08                	add    $0x8,%al
40fa95:	07                   	pop    %es
40fa96:	28 03                	sub    %al,(%ebx)
40fa98:	00 00                	add    %al,(%eax)
40fa9a:	2b 0a                	sub    (%edx),%ecx
40fa9c:	06                   	push   %es
40fa9d:	07                   	pop    %es
40fa9e:	33 df                	xor    %edi,%ebx
40faa0:	2a 00                	sub    (%eax),%al
40faa2:	00 00                	add    %al,(%eax)
40faa4:	13 30                	adc    (%eax),%esi
40faa6:	03 00                	add    (%eax),%eax
40faa8:	29 00                	sub    %eax,(%eax)
40faaa:	00 00                	add    %al,(%eax)
40faac:	61                   	popa
40faad:	00 00                	add    %al,(%eax)
40faaf:	11 02                	adc    %eax,(%edx)
40fab1:	7b ce                	jnp    0x40fa81
40fab3:	00 00                	add    %al,(%eax)
40fab5:	04 0a                	add    $0xa,%al
40fab7:	06                   	push   %es
40fab8:	0b 07                	or     (%edi),%eax
40faba:	03 28                	add    (%eax),%ebp
40fabc:	d1 01                	roll   $1,(%ecx)
40fabe:	00 0a                	add    %cl,(%edx)
40fac0:	74 1d                	je     0x40fadf
40fac2:	00 00                	add    %al,(%eax)
40fac4:	02 0c 02             	add    (%edx,%eax,1),%cl
40fac7:	7c ce                	jl     0x40fa97
40fac9:	00 00                	add    %al,(%eax)
40facb:	04 08                	add    $0x8,%al
40facd:	07                   	pop    %es
40face:	28 03                	sub    %al,(%ebx)
40fad0:	00 00                	add    %al,(%eax)
40fad2:	2b 0a                	sub    (%edx),%ecx
40fad4:	06                   	push   %es
40fad5:	07                   	pop    %es
40fad6:	33 df                	xor    %edi,%ebx
40fad8:	2a 00                	sub    (%eax),%al
40fada:	00 00                	add    %al,(%eax)
40fadc:	13 30                	adc    (%eax),%esi
40fade:	03 00                	add    (%eax),%eax
40fae0:	29 00                	sub    %eax,(%eax)
40fae2:	00 00                	add    %al,(%eax)
40fae4:	61                   	popa
40fae5:	00 00                	add    %al,(%eax)
40fae7:	11 02                	adc    %eax,(%edx)
40fae9:	7b cf                	jnp    0x40faba
40faeb:	00 00                	add    %al,(%eax)
40faed:	04 0a                	add    $0xa,%al
40faef:	06                   	push   %es
40faf0:	0b 07                	or     (%edi),%eax
40faf2:	03 28                	add    (%eax),%ebp
40faf4:	cf                   	iret
40faf5:	01 00                	add    %eax,(%eax)
40faf7:	0a 74 1d 00          	or     0x0(%ebp,%ebx,1),%dh
40fafb:	00 02                	add    %al,(%edx)
40fafd:	0c 02                	or     $0x2,%al
40faff:	7c cf                	jl     0x40fad0
40fb01:	00 00                	add    %al,(%eax)
40fb03:	04 08                	add    $0x8,%al
40fb05:	07                   	pop    %es
40fb06:	28 03                	sub    %al,(%ebx)
40fb08:	00 00                	add    %al,(%eax)
40fb0a:	2b 0a                	sub    (%edx),%ecx
40fb0c:	06                   	push   %es
40fb0d:	07                   	pop    %es
40fb0e:	33 df                	xor    %edi,%ebx
40fb10:	2a 00                	sub    (%eax),%al
40fb12:	00 00                	add    %al,(%eax)
40fb14:	13 30                	adc    (%eax),%esi
40fb16:	03 00                	add    (%eax),%eax
40fb18:	29 00                	sub    %eax,(%eax)
40fb1a:	00 00                	add    %al,(%eax)
40fb1c:	61                   	popa
40fb1d:	00 00                	add    %al,(%eax)
40fb1f:	11 02                	adc    %eax,(%edx)
40fb21:	7b cf                	jnp    0x40faf2
40fb23:	00 00                	add    %al,(%eax)
40fb25:	04 0a                	add    $0xa,%al
40fb27:	06                   	push   %es
40fb28:	0b 07                	or     (%edi),%eax
40fb2a:	03 28                	add    (%eax),%ebp
40fb2c:	d1 01                	roll   $1,(%ecx)
40fb2e:	00 0a                	add    %cl,(%edx)
40fb30:	74 1d                	je     0x40fb4f
40fb32:	00 00                	add    %al,(%eax)
40fb34:	02 0c 02             	add    (%edx,%eax,1),%cl
40fb37:	7c cf                	jl     0x40fb08
40fb39:	00 00                	add    %al,(%eax)
40fb3b:	04 08                	add    $0x8,%al
40fb3d:	07                   	pop    %es
40fb3e:	28 03                	sub    %al,(%ebx)
40fb40:	00 00                	add    %al,(%eax)
40fb42:	2b 0a                	sub    (%edx),%ecx
40fb44:	06                   	push   %es
40fb45:	07                   	pop    %es
40fb46:	33 df                	xor    %edi,%ebx
40fb48:	2a 00                	sub    (%eax),%al
40fb4a:	00 00                	add    %al,(%eax)
40fb4c:	13 30                	adc    (%eax),%esi
40fb4e:	03 00                	add    (%eax),%eax
40fb50:	29 00                	sub    %eax,(%eax)
40fb52:	00 00                	add    %al,(%eax)
40fb54:	61                   	popa
40fb55:	00 00                	add    %al,(%eax)
40fb57:	11 02                	adc    %eax,(%edx)
40fb59:	7b d0                	jnp    0x40fb2b
40fb5b:	00 00                	add    %al,(%eax)
40fb5d:	04 0a                	add    $0xa,%al
40fb5f:	06                   	push   %es
40fb60:	0b 07                	or     (%edi),%eax
40fb62:	03 28                	add    (%eax),%ebp
40fb64:	cf                   	iret
40fb65:	01 00                	add    %eax,(%eax)
40fb67:	0a 74 1d 00          	or     0x0(%ebp,%ebx,1),%dh
40fb6b:	00 02                	add    %al,(%edx)
40fb6d:	0c 02                	or     $0x2,%al
40fb6f:	7c d0                	jl     0x40fb41
40fb71:	00 00                	add    %al,(%eax)
40fb73:	04 08                	add    $0x8,%al
40fb75:	07                   	pop    %es
40fb76:	28 03                	sub    %al,(%ebx)
40fb78:	00 00                	add    %al,(%eax)
40fb7a:	2b 0a                	sub    (%edx),%ecx
40fb7c:	06                   	push   %es
40fb7d:	07                   	pop    %es
40fb7e:	33 df                	xor    %edi,%ebx
40fb80:	2a 00                	sub    (%eax),%al
40fb82:	00 00                	add    %al,(%eax)
40fb84:	13 30                	adc    (%eax),%esi
40fb86:	03 00                	add    (%eax),%eax
40fb88:	29 00                	sub    %eax,(%eax)
40fb8a:	00 00                	add    %al,(%eax)
40fb8c:	61                   	popa
40fb8d:	00 00                	add    %al,(%eax)
40fb8f:	11 02                	adc    %eax,(%edx)
40fb91:	7b d0                	jnp    0x40fb63
40fb93:	00 00                	add    %al,(%eax)
40fb95:	04 0a                	add    $0xa,%al
40fb97:	06                   	push   %es
40fb98:	0b 07                	or     (%edi),%eax
40fb9a:	03 28                	add    (%eax),%ebp
40fb9c:	d1 01                	roll   $1,(%ecx)
40fb9e:	00 0a                	add    %cl,(%edx)
40fba0:	74 1d                	je     0x40fbbf
40fba2:	00 00                	add    %al,(%eax)
40fba4:	02 0c 02             	add    (%edx,%eax,1),%cl
40fba7:	7c d0                	jl     0x40fb79
40fba9:	00 00                	add    %al,(%eax)
40fbab:	04 08                	add    $0x8,%al
40fbad:	07                   	pop    %es
40fbae:	28 03                	sub    %al,(%ebx)
40fbb0:	00 00                	add    %al,(%eax)
40fbb2:	2b 0a                	sub    (%edx),%ecx
40fbb4:	06                   	push   %es
40fbb5:	07                   	pop    %es
40fbb6:	33 df                	xor    %edi,%ebx
40fbb8:	2a 00                	sub    (%eax),%al
40fbba:	00 00                	add    %al,(%eax)
40fbbc:	13 30                	adc    (%eax),%esi
40fbbe:	04 00                	add    $0x0,%al
40fbc0:	40                   	inc    %eax
40fbc1:	00 00                	add    %al,(%eax)
40fbc3:	00 62 00             	add    %ah,0x0(%edx)
40fbc6:	00 11                	add    %dl,(%ecx)
40fbc8:	00 02                	add    %al,(%edx)
40fbca:	28 d3                	sub    %dl,%bl
40fbcc:	01 00                	add    %eax,(%eax)
40fbce:	0a 74 23 00          	or     0x0(%ebx,%eiz,1),%dh
40fbd2:	00 02                	add    %al,(%edx)
40fbd4:	0a 1a                	or     (%edx),%bl
40fbd6:	8d 17                	lea    (%edi),%edx
40fbd8:	00 00                	add    %al,(%eax)
40fbda:	01 25 16 03 a2 25    	add    %esp,0x25a20316
40fbe0:	17                   	pop    %ss
40fbe1:	04 a2                	add    $0xa2,%al
40fbe3:	25 18 05 a2 25       	and    $0x25a20518,%eax
40fbe8:	19 0e                	sbb    %ecx,(%esi)
40fbea:	04 a2                	add    $0xa2,%al
40fbec:	0b 06                	or     (%esi),%eax
40fbee:	07                   	pop    %es
40fbef:	6f                   	outsl  %ds:(%esi),(%dx)
40fbf0:	d4 01                	aam    $0x1
40fbf2:	00 0a                	add    %cl,(%edx)
40fbf4:	00 02                	add    %al,(%edx)
40fbf6:	28 63 00             	sub    %ah,0x0(%ebx)
40fbf9:	00 0a                	add    %cl,(%edx)
40fbfb:	06                   	push   %es
40fbfc:	6f                   	outsl  %ds:(%esi),(%dx)
40fbfd:	d2 01                	rolb   %cl,(%ecx)
40fbff:	00 0a                	add    %cl,(%edx)
40fc01:	00 06                	add    %al,(%esi)
40fc03:	0c 2b                	or     $0x2b,%al
40fc05:	00 08                	add    %cl,(%eax)
40fc07:	2a 13                	sub    (%ebx),%dl
40fc09:	30 05 00 20 00 00    	xor    %al,0x2000
40fc0f:	00 60 00             	add    %ah,0x0(%eax)
40fc12:	00 11                	add    %dl,(%ecx)
40fc14:	00 02                	add    %al,(%edx)
40fc16:	28 63 00             	sub    %ah,0x0(%ebx)
40fc19:	00 0a                	add    %cl,(%edx)
40fc1b:	17                   	pop    %ss
40fc1c:	8d 17                	lea    (%edi),%edx
40fc1e:	00 00                	add    %al,(%eax)
40fc20:	01 25 16 03 a2 6f    	add    %esp,0x6fa20316
40fc26:	d5 01                	aad    $0x1
40fc28:	00 0a                	add    %cl,(%edx)
40fc2a:	74 23                	je     0x40fc4f
40fc2c:	00 00                	add    %al,(%eax)
40fc2e:	02 0a                	add    (%edx),%cl
40fc30:	2b 00                	sub    (%eax),%eax
40fc32:	06                   	push   %es
40fc33:	2a 13                	sub    (%ebx),%dl
40fc35:	30 01                	xor    %al,(%ecx)
40fc37:	00 11                	add    %dl,(%ecx)
40fc39:	00 00                	add    %al,(%eax)
40fc3b:	00 5a 00             	add    %bl,0x0(%edx)
40fc3e:	00 11                	add    %dl,(%ecx)
40fc40:	00 02                	add    %al,(%edx)
40fc42:	28 63 00             	sub    %ah,0x0(%ebx)
40fc45:	00 0a                	add    %cl,(%edx)
40fc47:	6f                   	outsl  %ds:(%esi),(%dx)
40fc48:	9a 00 00 0a 0a 2b 00 	lcall  $0x2b,$0xa0a0000
40fc4f:	06                   	push   %es
40fc50:	2a 00                	sub    (%eax),%al
40fc52:	00 00                	add    %al,(%eax)
40fc54:	13 30                	adc    (%eax),%esi
40fc56:	01 00                	add    %eax,(%eax)
40fc58:	1a 00                	sbb    (%eax),%al
40fc5a:	00 00                	add    %al,(%eax)
40fc5c:	63 00                	arpl   %eax,(%eax)
40fc5e:	00 11                	add    %dl,(%ecx)
40fc60:	00 02                	add    %al,(%edx)
40fc62:	28 d6                	sub    %dl,%dh
40fc64:	01 00                	add    %eax,(%eax)
40fc66:	0a 74 20 00          	or     0x0(%eax,%eiz,1),%dh
40fc6a:	00 02                	add    %al,(%edx)
40fc6c:	0a 06                	or     (%esi),%al
40fc6e:	6f                   	outsl  %ds:(%esi),(%dx)
40fc6f:	34 01                	xor    $0x1,%al
40fc71:	00 06                	add    %al,(%esi)
40fc73:	00 06                	add    %al,(%esi)
40fc75:	0b 2b                	or     (%ebx),%ebp
40fc77:	00 07                	add    %al,(%edi)
40fc79:	2a 00                	sub    (%eax),%al
40fc7b:	00 13                	add    %dl,(%ebx)
40fc7d:	30 01                	xor    %al,(%ecx)
40fc7f:	00 0b                	add    %cl,(%ebx)
40fc81:	00 00                	add    %al,(%eax)
40fc83:	00 5c 00 00          	add    %bl,0x0(%eax,%eax,1)
40fc87:	11 00                	adc    %eax,(%eax)
40fc89:	73 1d                	jae    0x40fca8
40fc8b:	01 00                	add    %eax,(%eax)
40fc8d:	06                   	push   %es
40fc8e:	0a 2b                	or     (%ebx),%ch
40fc90:	00 06                	add    %al,(%esi)
40fc92:	2a 00                	sub    (%eax),%al
40fc94:	13 30                	adc    (%eax),%esi
40fc96:	03 00                	add    (%eax),%eax
40fc98:	5a                   	pop    %edx
40fca1:	02 02                	add    (%edx),%al
40fca3:	28 53 00             	sub    %dl,0x0(%ebx)
40fca6:	00 0a                	add    %cl,(%edx)
40fca8:	72 86                	jb     0x40fc30
40fcaa:	1a 00                	sbb    (%eax),%al
40fcac:	70 6f                	jo     0x40fd1d
40fcae:	d7                   	xlat   %ds:(%ebx)
40fcaf:	01 00                	add    %eax,(%eax)
40fcb1:	0a 7d c9             	or     -0x37(%ebp),%bh
40fcb4:	00 00                	add    %al,(%eax)
40fcb6:	04 02                	add    $0x2,%al
40fcb8:	02 28                	add    (%eax),%ch
40fcba:	53                   	push   %ebx
40fcbb:	00 00                	add    %al,(%eax)
40fcbd:	0a 72 d8             	or     -0x28(%edx),%dh
40fcc0:	1a 00                	sbb    (%eax),%al
40fcc2:	70 6f                	jo     0x40fd33
40fcc4:	d7                   	xlat   %ds:(%ebx)
40fcc5:	01 00                	add    %eax,(%eax)
40fcc7:	0a 7d ca             	or     -0x36(%ebp),%bh
40fcca:	00 00                	add    %al,(%eax)
40fccc:	04 02                	add    $0x2,%al
40fcce:	02 28                	add    (%eax),%ch
40fcd0:	53                   	push   %ebx
40fcd1:	00 00                	add    %al,(%eax)
40fcd3:	0a 72 30             	or     0x30(%edx),%dh
40fcd6:	1b 00                	sbb    (%eax),%eax
40fcd8:	70 6f                	jo     0x40fd49
40fcda:	d7                   	xlat   %ds:(%ebx)
40fcdb:	01 00                	add    %eax,(%eax)
40fcdd:	0a 7d cb             	or     -0x35(%ebp),%bh
40fce0:	00 00                	add    %al,(%eax)
40fce2:	04 02                	add    $0x2,%al
40fce4:	02 28                	add    (%eax),%ch
40fce6:	53                   	push   %ebx
40fce7:	00 00                	add    %al,(%eax)
40fce9:	0a 72 86             	or     -0x7a(%edx),%dh
40fcec:	1b 00                	sbb    (%eax),%eax
40fcee:	70 6f                	jo     0x40fd5f
40fcf0:	d7                   	xlat   %ds:(%ebx)
40fcf1:	01 00                	add    %eax,(%eax)
40fcf3:	0a 7d cc             	or     -0x34(%ebp),%bh
40fcf6:	00 00                	add    %al,(%eax)
40fcf8:	04 2a                	add    $0x2a,%al
40fcfa:	00 00                	add    %al,(%eax)
40fcfc:	13 30                	adc    (%eax),%esi
40fcfe:	06                   	push   %es
40fcff:	00 3f                	add    %bh,(%edi)
40fd01:	01 00                	add    %eax,(%eax)
40fd03:	00 00                	add    %al,(%eax)
40fd05:	00 00                	add    %al,(%eax)
40fd07:	00 00                	add    %al,(%eax)
40fd09:	02 72 86             	add    -0x7a(%edx),%dh
40fd0c:	1a 00                	sbb    (%eax),%al
40fd0e:	70 d0                	jo     0x40fce0
40fd10:	9e                   	sahf
40fd11:	00 00                	add    %al,(%eax)
40fd13:	01 28                	add    %ebp,(%eax)
40fd15:	3c 00                	cmp    $0x0,%al
40fd17:	00 0a                	add    %cl,(%edx)
40fd19:	14 17                	adc    $0x17,%al
40fd1b:	73 d8                	jae    0x40fcf5
40fd1d:	01 00                	add    %eax,(%eax)
40fd1f:	0a 7d c9             	or     -0x37(%ebp),%bh