40aad8:	69 74 79 2e 43 72 79 	imul   $0x70797243,0x2e(%ecx,%edi,2),%esi
40aadf:	70
40aae0:	74 6f                	je     0x40ab51
40aae2:	67 72 61             	addr16 jb 0x40ab46
40aae5:	70 68                	jo     0x40ab4f
40aae7:	79 00                	jns    0x40aae9
40aae9:	67 65 74 5f          	addr16 gs je 0x40ab4c
40aaed:	41                   	inc    %ecx
40aaee:	73 73                	jae    0x40ab63
40aaf0:	65 6d                	gs insl (%dx),%es:(%edi)
40aaf2:	62 6c 79 00          	bound  %ebp,0x0(%ecx,%edi,2)
40aaf6:	47                   	inc    %edi
40aaf7:	65 74 45             	gs je  0x40ab3f
40aafa:	78 65                	js     0x40ab61
40aafc:	63 75 74             	arpl   %esi,0x74(%ebp)
40aaff:	69 6e 67 41 73 73 65 	imul   $0x65737341,0x67(%esi),%ebp
40ab06:	6d                   	insl   (%dx),%es:(%edi)
40ab07:	62 6c 79 00          	bound  %ebp,0x0(%ecx,%edi,2)
40ab0b:	73 65                	jae    0x40ab72
40ab0d:	74 5f                	je     0x40ab6e
40ab0f:	52                   	push   %edx
40ab10:	65 61                	gs popa
40ab12:	64 4f                	fs dec %edi
40ab14:	6e                   	outsb  %ds:(%esi),(%dx)
40ab15:	6c                   	insb   (%dx),%es:(%edi)
40ab16:	79 00                	jns    0x40ab18
40ab18:	6f                   	outsl  %ds:(%esi),(%dx)
40ab19:	70 5f                	jo     0x40ab7a
40ab1b:	4d                   	dec    %ebp
40ab1c:	75 6c                	jne    0x40ab8a
40ab1e:	74 69                	je     0x40ab89
40ab20:	70 6c                	jo     0x40ab8e
40ab22:	79 00                	jns    0x40ab24
40ab24:	6d                   	insl   (%dx),%es:(%edi)
40ab25:	79 00                	jns    0x40ab27
40ab27:	67 65 74 5f          	addr16 gs je 0x40ab8a
40ab2b:	43                   	inc    %ebx
40ab2c:	6f                   	outsl  %ds:(%esi),(%dx)
40ab2d:	6d                   	insl   (%dx),%es:(%edi)
40ab2e:	70 61                	jo     0x40ab91
40ab30:	6e                   	outsb  %ds:(%esi),(%dx)
40ab31:	79 00                	jns    0x40ab33
40ab33:	67 65 74 5f          	addr16 gs je 0x40ab96
40ab37:	41                   	inc    %ecx
40ab38:	73 73                	jae    0x40abad
40ab3a:	65 6d                	gs insl (%dx),%es:(%edi)
40ab3c:	62 6c 79 43          	bound  %ebp,0x43(%ecx,%edi,2)
40ab40:	6f                   	outsl  %ds:(%esi),(%dx)
40ab41:	6d                   	insl   (%dx),%es:(%edi)
40ab42:	70 61                	jo     0x40aba5
40ab44:	6e                   	outsb  %ds:(%esi),(%dx)
40ab45:	79 00                	jns    0x40ab47
40ab47:	44                   	inc    %esp
40ab48:	65 73 74             	gs jae 0x40abbf
40ab4b:	72 6f                	jb     0x40abbc
40ab4d:	79 00                	jns    0x40ab4f
40ab4f:	45                   	inc    %ebp
40ab50:	78 65                	js     0x40abb7
40ab52:	63 75 74             	arpl   %esi,0x74(%ebp)
40ab55:	65 4e                	gs dec %esi
40ab57:	6f                   	outsl  %ds:(%esi),(%dx)
40ab58:	6e                   	outsb  %ds:(%esi),(%dx)
40ab59:	51                   	push   %ecx
40ab5a:	75 65                	jne    0x40abc1
40ab5c:	72 79                	jb     0x40abd7
40ab5e:	00 71 75             	add    %dh,0x75(%ecx)
40ab61:	65 72 79             	gs jb  0x40abdd
40ab64:	00 6f 70             	add    %ch,0x70(%edi)
40ab67:	5f                   	pop    %edi
40ab68:	45                   	inc    %ebp
40ab69:	71 75                	jno    0x40abe0
40ab6b:	61                   	popa
40ab6c:	6c                   	insb   (%dx),%es:(%edi)
40ab6d:	69 74 79 00 6f 70 5f 	imul   $0x495f706f,0x0(%ecx,%edi,2),%esi
40ab74:	49
40ab75:	6e                   	outsb  %ds:(%esi),(%dx)
40ab76:	65 71 75             	gs jno 0x40abee
40ab79:	61                   	popa
40ab7a:	6c                   	insb   (%dx),%es:(%edi)
40ab7b:	69 74 79 00 71 77 6a 	imul   $0x4c6a7771,0x0(%ecx,%edi,2),%esi
40ab82:	4c
40ab83:	79 50                	jns    0x40abd5
40ab85:	42                   	inc    %edx
40ab86:	6d                   	insl   (%dx),%es:(%edi)
40ab87:	7a 00                	jp     0x40ab89
40ab89:	00 00                	add    %al,(%eax)
40ab8b:	00 00                	add    %al,(%eax)
40ab8d:	29 4d 00             	sub    %ecx,0x0(%ebp)
40ab90:	69 00 63 00 72 00    	imul   $0x720063,(%eax),%eax
40ab96:	6f                   	outsl  %ds:(%esi),(%dx)
40ab97:	00 73 00             	add    %dh,0x0(%ebx)
40ab9a:	6f                   	outsl  %ds:(%esi),(%dx)
40ab9b:	00 66 00             	add    %ah,0x0(%esi)
40ab9e:	74 00                	je     0x40aba0
40aba0:	20 00                	and    %al,(%eax)
40aba2:	53                   	push   %ebx
40aba3:	00 61 00             	add    %ah,0x0(%ecx)
40aba6:	6e                   	outsb  %ds:(%esi),(%dx)
40aba7:	00 73 00             	add    %dh,0x0(%ebx)
40abaa:	20 00                	and    %al,(%eax)
40abac:	53                   	push   %ebx
40abad:	00 65 00             	add    %ah,0x0(%ebp)
40abb0:	72 00                	jb     0x40abb2
40abb2:	69 00 66 00 00 0d    	imul   $0xd000066,(%eax),%eax
40abb8:	6c                   	insb   (%dx),%es:(%edi)
40abb9:	00 61 00             	add    %ah,0x0(%ecx)
40abbc:	62 00                	bound  %eax,(%eax)
40abbe:	65 00 6c 00 31       	add    %ch,%gs:0x31(%eax,%eax,1)
40abc3:	00 00                	add    %al,(%eax)
40abc5:	0f 4e 00             	cmovle (%eax),%eax
40abc8:	6f                   	outsl  %ds:(%esi),(%dx)
40abc9:	00 6d 00             	add    %ch,0x0(%ebp)
40abcc:	65 00 20             	add    %ah,%gs:(%eax)
40abcf:	00 3a                	add    %bh,(%edx)
40abd1:	00 20                	add    %ah,(%eax)
40abd3:	00 00                	add    %al,(%eax)
40abd5:	0f 74 00             	pcmpeqb (%eax),%mm0
40abd8:	78 00                	js     0x40abda
40abda:	74 00                	je     0x40abdc
40abdc:	4e                   	dec    %esi
40abdd:	00 6f 00             	add    %ch,0x0(%edi)
40abe0:	6d                   	insl   (%dx),%es:(%edi)
40abe1:	00 65 00             	add    %ah,0x0(%ebp)
40abe4:	00 0b                	add    %cl,(%ebx)
40abe6:	62 00                	bound  %eax,(%eax)
40abe8:	74 00                	je     0x40abea
40abea:	6e                   	outsb  %ds:(%esi),(%dx)
40abeb:	00 4f 00             	add    %cl,0x0(%edi)
40abee:	6b 00 00             	imul   $0x0,(%eax),%eax
40abf1:	05 4f 00 6b 00       	add    $0x6b004f,%eax
40abf6:	00 0b                	add    %cl,(%ebx)
40abf8:	46                   	inc    %esi
40abf9:	00 6f 00             	add    %ch,0x0(%edi)
40abfc:	72 00                	jb     0x40abfe
40abfe:	6d                   	insl   (%dx),%es:(%edi)
40abff:	00 32                	add    %dh,(%edx)
40ac01:	00 00                	add    %al,(%eax)
40ac03:	19 50 00             	sbb    %edx,0x0(%eax)
40ac06:	6c                   	insb   (%dx),%es:(%edi)
40ac07:	00 61 00             	add    %ah,0x0(%ecx)
40ac0a:	79 00                	jns    0x40ac0c
40ac0c:	65 00 72 00          	add    %dh,%gs:0x0(%edx)
40ac10:	20 00                	and    %al,(%eax)
40ac12:	6c                   	insb   (%dx),%es:(%edi)
40ac13:	00 6f 00             	add    %ch,0x0(%edi)
40ac16:	67 00 69 00          	add    %ch,0x0(%bx,%di)
40ac1a:	6e                   	outsb  %ds:(%esi),(%dx)
40ac1b:	00 00                	add    %al,(%eax)
40ac1d:	13 6c 00 6f          	adc    0x6f(%eax,%eax,1),%ebp
40ac21:	00 63 00             	add    %ah,0x0(%ebx)
40ac24:	61                   	popa
40ac25:	00 6c 00 68          	add    %ch,0x68(%eax,%eax,1)
40ac29:	00 6f 00             	add    %ch,0x0(%edi)
40ac2c:	73 00                	jae    0x40ac2e
40ac2e:	74 00                	je     0x40ac30
40ac30:	00 09                	add    %cl,(%ecx)
40ac32:	67 00 61 00          	add    %ah,0x0(%bx,%di)
40ac36:	6d                   	insl   (%dx),%es:(%edi)
40ac37:	00 65 00             	add    %ah,0x0(%ebp)
40ac3a:	00 09                	add    %cl,(%ecx)
40ac3c:	72 00                	jb     0x40ac3e
40ac3e:	6f                   	outsl  %ds:(%esi),(%dx)
40ac3f:	00 6f 00             	add    %ch,0x0(%edi)
40ac42:	74 00                	je     0x40ac44
40ac44:	00 0f                	add    %cl,(%edi)
40ac46:	53                   	push   %ebx
40ac47:	00 45 00             	add    %al,0x0(%ebp)
40ac4a:	52                   	push   %edx
40ac4b:	00 56 00             	add    %dl,0x0(%esi)
40ac4e:	45                   	inc    %ebp
40ac4f:	00 52 00             	add    %dl,0x0(%edx)
40ac52:	3d 00 00 15 3b       	cmp    $0x3b150000,%eax
40ac57:	00 44 00 41          	add    %al,0x41(%eax,%eax,1)
40ac5b:	00 54 00 41          	add    %dl,0x41(%eax,%eax,1)
40ac5f:	00 42 00             	add    %al,0x0(%edx)
40ac62:	41                   	inc    %ecx
40ac63:	00 53 00             	add    %dl,0x0(%ebx)
40ac66:	45                   	inc    %ebp
40ac67:	00 3d 00 00 0b 3b    	add    %bh,0x3b0b0000
40ac6d:	00 55 00             	add    %dl,0x0(%ebp)
40ac70:	49                   	dec    %ecx
40ac71:	00 44 00 3d          	add    %al,0x3d(%eax,%eax,1)
40ac75:	00 00                	add    %al,(%eax)
40ac77:	15 3b 00 50 00       	adc    $0x50003b,%eax
40ac7c:	41                   	inc    %ecx
40ac7d:	00 53 00             	add    %dl,0x0(%ebx)
40ac80:	53                   	push   %ebx
40ac81:	00 57 00             	add    %dl,0x0(%edi)
40ac84:	4f                   	dec    %edi
40ac85:	00 52 00             	add    %dl,0x0(%edx)
40ac88:	44                   	inc    %esp
40ac89:	00 3d 00 00 03 3b    	add    %bh,0x3b030000
40ac8f:	00 00                	add    %al,(%eax)
40ac91:	81 4f 73 00 65 00 6c 	orl    $0x6c006500,0x73(%edi)
40ac98:	00 65 00             	add    %ah,0x0(%ebp)
40ac9b:	63 00                	arpl   %eax,(%eax)
40ac9d:	74 00                	je     0x40ac9f
40ac9f:	20 00                	and    %al,(%eax)
40aca1:	70 00                	jo     0x40aca3
40aca3:	6c                   	insb   (%dx),%es:(%edi)
40aca4:	00 2e                	add    %ch,(%esi)
40aca6:	00 49 00             	add    %cl,0x0(%ecx)
40aca9:	64 00 20             	add    %ah,%fs:(%eax)
40acac:	00 61 00             	add    %ah,0x0(%ecx)
40acaf:	73 00                	jae    0x40acb1
40acb1:	20 00                	and    %al,(%eax)
40acb3:	49                   	dec    %ecx
40acb4:	00 64 00 50          	add    %ah,0x50(%eax,%eax,1)
40acb8:	00 6c 00 61          	add    %ch,0x61(%eax,%eax,1)
40acbc:	00 79 00             	add    %bh,0x0(%ecx)
40acbf:	65 00 72 00          	add    %dh,%gs:0x0(%edx)
40acc3:	2c 00                	sub    $0x0,%al
40acc5:	20 00                	and    %al,(%eax)
40acc7:	70 00                	jo     0x40acc9
40acc9:	6c                   	insb   (%dx),%es:(%edi)
40acca:	00 2e                	add    %ch,(%esi)
40accc:	00 4e 00             	add    %cl,0x0(%esi)
40accf:	6f                   	outsl  %ds:(%esi),(%dx)
40acd0:	00 6d 00             	add    %ch,0x0(%ebp)
40acd3:	65 00 20             	add    %ah,%gs:(%eax)
40acd6:	00 61 00             	add    %ah,0x0(%ecx)
40acd9:	73 00                	jae    0x40acdb
40acdb:	20 00                	and    %al,(%eax)
40acdd:	4e                   	dec    %esi
40acde:	00 6f 00             	add    %ch,0x0(%edi)
40ace1:	6d                   	insl   (%dx),%es:(%edi)
40ace2:	00 65 00             	add    %ah,0x0(%ebp)
40ace5:	2c 00                	sub    $0x0,%al
40ace7:	20 00                	and    %al,(%eax)
40ace9:	70 00                	jo     0x40aceb
40aceb:	6f                   	outsl  %ds:(%esi),(%dx)
40acec:	00 2e                	add    %ch,(%esi)
40acee:	00 44 00 61          	add    %al,0x61(%eax,%eax,1)
40acf2:	00 74 00 61          	add    %dh,0x61(%eax,%eax,1)
40acf6:	00 20                	add    %ah,(%eax)
40acf8:	00 61 00             	add    %ah,0x0(%ecx)
40acfb:	73 00                	jae    0x40acfd
40acfd:	20 00                	and    %al,(%eax)
40acff:	44                   	inc    %esp
40ad00:	00 61 00             	add    %ah,0x0(%ecx)
40ad03:	74 00                	je     0x40ad05
40ad05:	61                   	popa
40ad06:	00 4a 00             	add    %cl,0x0(%edx)
40ad09:	6f                   	outsl  %ds:(%esi),(%dx)
40ad0a:	00 67 00             	add    %ah,0x0(%edi)
40ad0d:	6f                   	outsl  %ds:(%esi),(%dx)
40ad0e:	00 2c 00             	add    %ch,(%eax,%eax,1)
40ad11:	20 00                	and    %al,(%eax)
40ad13:	70 00                	jo     0x40ad15
40ad15:	6f                   	outsl  %ds:(%esi),(%dx)
40ad16:	00 2e                	add    %ch,(%esi)
40ad18:	00 50 00             	add    %dl,0x0(%eax)
40ad1b:	6f                   	outsl  %ds:(%esi),(%dx)
40ad1c:	00 6e 00             	add    %ch,0x0(%esi)
40ad1f:	74 00                	je     0x40ad21
40ad21:	6f                   	outsl  %ds:(%esi),(%dx)
40ad22:	00 73 00             	add    %dh,0x0(%ebx)
40ad25:	20 00                	and    %al,(%eax)
40ad27:	61                   	popa
40ad28:	00 73 00             	add    %dh,0x0(%ebx)
40ad2b:	20 00                	and    %al,(%eax)
40ad2d:	50                   	push   %eax
40ad2e:	00 6f 00             	add    %ch,0x0(%edi)
40ad31:	6e                   	outsb  %ds:(%esi),(%dx)
40ad32:	00 74 00 6f          	add    %dh,0x6f(%eax,%eax,1)
40ad36:	00 73 00             	add    %dh,0x0(%ebx)
40ad39:	20 00                	and    %al,(%eax)
40ad3b:	66 00 72 00          	data16 add %dh,0x0(%edx)
40ad3f:	6f                   	outsl  %ds:(%esi),(%dx)
40ad40:	00 6d 00             	add    %ch,0x0(%ebp)
40ad43:	20 00                	and    %al,(%eax)
40ad45:	50                   	push   %eax
40ad46:	00 6c 00 61          	add    %ch,0x61(%eax,%eax,1)
40ad4a:	00 79 00             	add    %bh,0x0(%ecx)
40ad4d:	65 00 72 00          	add    %dh,%gs:0x0(%edx)
40ad51:	73 00                	jae    0x40ad53
40ad53:	20 00                	and    %al,(%eax)
40ad55:	70 00                	jo     0x40ad57
40ad57:	6c                   	insb   (%dx),%es:(%edi)
40ad58:	00 20                	add    %ah,(%eax)
40ad5a:	00 69 00             	add    %ch,0x0(%ecx)
40ad5d:	6e                   	outsb  %ds:(%esi),(%dx)
40ad5e:	00 6e 00             	add    %ch,0x0(%esi)
40ad61:	65 00 72 00          	add    %dh,%gs:0x0(%edx)
40ad65:	20 00                	and    %al,(%eax)
40ad67:	6a 00                	push   $0x0
40ad69:	6f                   	outsl  %ds:(%esi),(%dx)
40ad6a:	00 69 00             	add    %ch,0x0(%ecx)
40ad6d:	6e                   	outsb  %ds:(%esi),(%dx)
40ad6e:	00 20                	add    %ah,(%eax)
40ad70:	00 50 00             	add    %dl,0x0(%eax)
40ad73:	6e                   	outsb  %ds:(%esi),(%dx)
40ad74:	00 74 00 75          	add    %dh,0x75(%eax,%eax,1)
40ad78:	00 61 00             	add    %ah,0x0(%ecx)
40ad7b:	63 00                	arpl   %eax,(%eax)
40ad7d:	61                   	popa
40ad7e:	00 6f 00             	add    %ch,0x0(%edi)
40ad81:	20 00                	and    %al,(%eax)
40ad83:	70 00                	jo     0x40ad85
40ad85:	6f                   	outsl  %ds:(%esi),(%dx)
40ad86:	00 20                	add    %ah,(%eax)
40ad88:	00 6f 00             	add    %ch,0x0(%edi)
40ad8b:	6e                   	outsb  %ds:(%esi),(%dx)
40ad8c:	00 20                	add    %ah,(%eax)
40ad8e:	00 70 00             	add    %dh,0x0(%eax)
40ad91:	6c                   	insb   (%dx),%es:(%edi)
40ad92:	00 2e                	add    %ch,(%esi)
40ad94:	00 49 00             	add    %cl,0x0(%ecx)
40ad97:	64 00 20             	add    %ah,%fs:(%eax)
40ad9a:	00 3d 00 20 00 70    	add    %bh,0x70002000
40ada0:	00 6f 00             	add    %ch,0x0(%edi)
40ada3:	2e 00 49 00          	add    %cl,%cs:0x0(%ecx)
40ada7:	64 00 50 00          	add    %dl,%fs:0x0(%eax)
40adab:	6c                   	insb   (%dx),%es:(%edi)
40adac:	00 61 00             	add    %ah,0x0(%ecx)
40adaf:	79 00                	jns    0x40adb1
40adb1:	65 00 72 00          	add    %dh,%gs:0x0(%edx)
40adb5:	73 00                	jae    0x40adb7
40adb7:	20 00                	and    %al,(%eax)
40adb9:	77 00                	ja     0x40adbb
40adbb:	68 00 65 00 72       	push   $0x72006500
40adc0:	00 65 00             	add    %ah,0x0(%ebp)
40adc3:	20 00                	and    %al,(%eax)
40adc5:	70 00                	jo     0x40adc7
40adc7:	6c                   	insb   (%dx),%es:(%edi)
40adc8:	00 2e                	add    %ch,(%esi)
40adca:	00 4e 00             	add    %cl,0x0(%esi)
40adcd:	6f                   	outsl  %ds:(%esi),(%dx)
40adce:	00 6d 00             	add    %ch,0x0(%ebp)
40add1:	65 00 20             	add    %ah,%gs:(%eax)
40add4:	00 6c 00 69          	add    %ch,0x69(%eax,%eax,1)
40add8:	00 6b 00             	add    %ch,0x0(%ebx)
40addb:	65 00 20             	add    %ah,%gs:(%eax)
40adde:	00 27                	add    %ah,(%edi)
40ade0:	00 01                	add    %al,(%ecx)
40ade2:	03 27                	add    (%edi),%esp
40ade4:	00 01                	add    %al,(%ecx)
40ade6:	09 6e 00             	or     %ebp,0x0(%esi)
40ade9:	6f                   	outsl  %ds:(%esi),(%dx)
40adea:	00 6d 00             	add    %ch,0x0(%ebp)
40aded:	65 00 00             	add    %al,%gs:(%eax)
40adf0:	11 49 00             	adc    %ecx,0x0(%ecx)
40adf3:	64 00 50 00          	add    %dl,%fs:0x0(%eax)
40adf7:	6c                   	insb   (%dx),%es:(%edi)
40adf8:	00 61 00             	add    %ah,0x0(%ecx)
40adfb:	79 00                	jns    0x40adfd
40adfd:	65 00 72 00          	add    %dh,%gs:0x0(%edx)
40ae01:	00 11                	add    %dl,(%ecx)
40ae03:	44                   	inc    %esp
40ae04:	00 61 00             	add    %ah,0x0(%ecx)