598e75:	52                   	push   %edx
598e76:	65 61                	gs popa
598e78:	64 42                	fs inc %edx
598e7a:	79 74                	jns    0x598ef0
598e7c:	65 00 52 65          	add    %dl,%gs:0x65(%edx)
598e80:	61                   	popa
598e81:	64 00 42 6c          	add    %al,%fs:0x6c(%edx)
598e85:	6f                   	outsl  %ds:(%esi),(%dx)
598e86:	63 6b 43             	arpl   %ebp,0x43(%ebx)
598e89:	6f                   	outsl  %ds:(%esi),(%dx)
598e8a:	70 79                	jo     0x598f05
598e8c:	00 43 6f             	add    %al,0x6f(%ebx)
598e8f:	6d                   	insl   (%dx),%es:(%edi)
598e90:	62 69 6e             	bound  %ebp,0x6e(%ecx)
598e93:	65 00 43 6f          	add    %al,%gs:0x6f(%ebx)
598e97:	6d                   	insl   (%dx),%es:(%edi)
598e98:	70 61                	jo     0x598efb
598e9a:	72 65                	jb     0x598f01
598e9c:	45                   	inc    %ebp
598e9d:	78 63                	js     0x598f02
598e9f:	68 61 6e 67 65       	push   $0x65676e61
598ea4:	00 52 65             	add    %dl,0x65(%edx)
598ea7:	6d                   	insl   (%dx),%es:(%edi)
598ea8:	6f                   	outsl  %ds:(%esi),(%dx)
598ea9:	76 65                	jbe    0x598f10
598eab:	00 49 6e             	add    %cl,0x6e(%ecx)
598eae:	76 6f                	jbe    0x598f1f
598eb0:	6b 65 00 67          	imul   $0x67,0x0(%ebp),%esp
598eb4:	65 74 5f             	gs je  0x598f16
598eb7:	44                   	inc    %esp
598eb8:	61                   	popa
598eb9:	79 00                	jns    0x598ebb
598ebb:	67 65 74 5f          	addr16 gs je 0x598f1e
598ebf:	4d                   	dec    %ebp
598ec0:	6f                   	outsl  %ds:(%esi),(%dx)
598ec1:	6e                   	outsb  %ds:(%esi),(%dx)
598ec2:	74 68                	je     0x598f2c
598ec4:	00 41 64             	add    %al,0x64(%ecx)
598ec7:	64 52                	fs push %edx
598ec9:	61                   	popa
598eca:	6e                   	outsb  %ds:(%esi),(%dx)
598ecb:	67 65 00 67 65       	add    %ah,%gs:0x65(%bx)
598ed0:	74 5f                	je     0x598f31
598ed2:	4e                   	dec    %esi
598ed3:	61                   	popa
598ed4:	6d                   	insl   (%dx),%es:(%edi)
598ed5:	65 00 47 65          	add    %al,%gs:0x65(%edi)
598ed9:	74 42                	je     0x598f1d
598edb:	79 74                	jns    0x598f51
598edd:	65 73 00             	gs jae 0x598ee0
598ee0:	67 65 74 5f          	addr16 gs je 0x598f43
598ee4:	43                   	inc    %ebx
598ee5:	6f                   	outsl  %ds:(%esi),(%dx)
598ee6:	75 6e                	jne    0x598f56
598ee8:	74 00                	je     0x598eea
598eea:	73 65                	jae    0x598f51
598eec:	74 5f                	je     0x598f4d
598eee:	49                   	dec    %ecx
598eef:	74 65                	je     0x598f56
598ef1:	6d                   	insl   (%dx),%es:(%edi)
598ef2:	00 67 65             	add    %ah,0x65(%edi)
598ef5:	74 5f                	je     0x598f56
598ef7:	4d                   	dec    %ebp
598ef8:	65 74 61             	gs je  0x598f5c
598efb:	64 61                	fs popa
598efd:	74 61                	je     0x598f60
598eff:	54                   	push   %esp
598f00:	6f                   	outsl  %ds:(%esi),(%dx)
598f01:	6b 65 6e 00          	imul   $0x0,0x6e(%ebp),%esp
598f05:	41                   	inc    %ecx
598f06:	64 64 44             	fs fs inc %esp
598f09:	61                   	popa
598f0a:	79 73                	jns    0x598f7f
598f0c:	00 6f 70             	add    %ch,0x70(%edi)
598f0f:	5f                   	pop    %edi
598f10:	4c                   	dec    %esp
598f11:	65 73 73             	gs jae 0x598f87
598f14:	54                   	push   %esp
598f15:	68 61 6e 4f 72       	push   $0x724f6e61
598f1a:	45                   	inc    %ebp
598f1b:	71 75                	jno    0x598f92
598f1d:	61                   	popa
598f1e:	6c                   	insb   (%dx),%es:(%edi)
598f1f:	00 61 64             	add    %ah,0x64(%ecx)
598f22:	64 5f                	fs pop %edi
598f24:	46                   	inc    %esi
598f25:	6f                   	outsl  %ds:(%esi),(%dx)
598f26:	72 6d                	jb     0x598f95
598f28:	43                   	inc    %ebx
598f29:	6c                   	insb   (%dx),%es:(%edi)
598f2a:	6f                   	outsl  %ds:(%esi),(%dx)
598f2b:	73 69                	jae    0x598f96
598f2d:	6e                   	outsb  %ds:(%esi),(%dx)
598f2e:	67 00 6f 70          	add    %ch,0x70(%bx)
598f32:	5f                   	pop    %edi
598f33:	53                   	push   %ebx
598f34:	75 62                	jne    0x598f98
598f36:	74 72                	je     0x598faa
598f38:	61                   	popa
598f39:	63 74 69 6f          	arpl   %esi,0x6f(%ecx,%ebp,2)
598f3d:	6e                   	outsb  %ds:(%esi),(%dx)
598f3e:	00 00                	add    %al,(%eax)
598f40:	2a 80 39 2d 60 bc    	sub    -0x439fd2c7(%eax),%al
598f46:	16                   	push   %ss
598f47:	44                   	inc    %esp
598f48:	38 79 61             	cmp    %bh,0x61(%ecx)
598f4b:	10 7c 56 9d          	adc    %bh,-0x63(%esi,%edx,2)
598f4f:	35 00 08 b7 7a       	xor    $0x7ab70800,%eax
598f54:	5c                   	pop    %esp
598f55:	56                   	push   %esi
598f56:	19 34 e0             	sbb    %esi,(%eax,%eiz,8)
598f59:	89 08                	mov    %ecx,(%eax)
598f5b:	b0 3f                	mov    $0x3f,%al
598f5d:	5f                   	pop    %edi
598f5e:	7f 11                	jg     0x598f71
598f60:	d5 0a                	aad    $0xa
598f62:	3a 02                	cmp    (%edx),%al
598f64:	06                   	push   %es
598f65:	08 04 20             	or     %al,(%eax,%eiz,1)
598f68:	01 01                	add    %eax,(%ecx)
598f6a:	08 03                	or     %al,(%ebx)
598f6c:	20 00                	and    %al,(%eax)
598f6e:	01 03                	add    %eax,(%ebx)
598f70:	20 00                	and    %al,(%eax)
598f72:	02 03                	add    (%ebx),%al
598f74:	20 00                	and    %al,(%eax)
598f76:	08 03                	or     %al,(%ebx)
598f78:	20 00                	and    %al,(%eax)
598f7a:	1c 08                	sbb    $0x8,%al
598f7c:	20 00                	and    %al,(%eax)
598f7e:	15 12 80 94 01       	adc    $0x1948012,%eax
598f83:	08 04 20             	or     %al,(%eax,%eiz,1)
598f86:	00 12                	add    %dl,(%edx)
598f88:	6c                   	insb   (%dx),%es:(%edi)
598f89:	03 06                	add    (%esi),%eax
598f8b:	12 45 04             	adc    0x4(%ebp),%al
598f8e:	06                   	push   %es
598f8f:	12 81 69 07 20 02    	adc    0x2200769(%ecx),%al
598f95:	01 1c 12             	add    %ebx,(%edx,%edx,1)
598f98:	80 95 07 20 02 01 1c 	adcb   $0x1c,0x1022007(%ebp)
598f9f:	12 81 b1 04 20 01    	adc    0x12004b1(%ecx),%al
598fa5:	01 02                	add    %eax,(%edx)
598fa7:	04 06                	add    $0x6,%al
598fa9:	12 80 dc 03 06 12    	adc    0x120603dc(%eax),%al
598faf:	4c                   	dec    %esp
598fb0:	05 20 00 12 80       	add    $0x80120020,%eax
598fb5:	dc 06                	faddl  (%esi)
598fb7:	20 01                	and    %al,(%ecx)
598fb9:	01 12                	add    %edx,(%edx)
598fbb:	80 dc 04             	sbb    $0x4,%ah
598fbe:	20 00                	and    %al,(%eax)
598fc0:	12 4c 05 20          	adc    0x20(%ebp,%eax,1),%cl
598fc4:	01 01                	add    %eax,(%ecx)
598fc6:	12 4c 03 06          	adc    0x6(%ebx,%eax,1),%cl
598fca:	12 58 04             	adc    0x4(%eax),%bl
598fcd:	06                   	push   %es
598fce:	12 81 cd 04 06 12    	adc    0x120604cd(%ecx),%al
598fd4:	81 c1 04 06 12 81    	add    $0x81120604,%ecx
598fda:	a5                   	movsl  %ds:(%esi),%es:(%edi)
598fdb:	04 06                	add    $0x6,%al
598fdd:	12 81 a9 05 20 01    	adc    0x12005a9(%ecx),%al
598fe3:	01 12                	add    %edx,(%edx)
598fe5:	58                   	pop    %eax
598fe6:	06                   	push   %es
598fe7:	20 02                	and    %al,(%edx)
598fe9:	01 1c 12             	add    %ebx,(%edx,%edx,1)
598fec:	39 02                	cmp    %eax,(%edx)
598fee:	06                   	push   %es
598fef:	0e                   	push   %cs
598ff0:	03 06                	add    (%esi),%eax
598ff2:	11 4d 07             	adc    %ecx,0x7(%ebp)
598ff5:	20 03                	and    %al,(%ebx)
598ff7:	01 0e                	add    %ecx,(%esi)
598ff9:	11 4d 0e             	adc    %ecx,0xe(%ebp)
598ffc:	03 20                	add    (%eax),%esp
598ffe:	00 0e                	add    %cl,(%esi)
599000:	04 20                	add    $0x20,%al
599002:	01 01                	add    %eax,(%ecx)
599004:	0e                   	push   %cs
599005:	04 20                	add    $0x20,%al
599007:	00 11                	add    %dl,(%ecx)
599009:	4d                   	dec    %ebp
59900a:	05 20 01 01 11       	add    $0x11010120,%eax
59900f:	4d                   	dec    %ebp
599010:	04 06                	add    $0x6,%al
599012:	12 81 01 04 06 12    	adc    0x12060401(%ecx),%al
599018:	80 a5 05 00 00 12 81 	andb   $0x81,0x12000005(%ebp)
59901f:	01 05 00 00 12 80    	add    %eax,0x80120000
599025:	a5                   	movsl  %ds:(%esi),%es:(%edi)
599026:	06                   	push   %es
599027:	00 01                	add    %al,(%ecx)
599029:	01 12                	add    %edx,(%edx)
59902b:	80 a5 04 00 00 1d 05 	andb   $0x5,0x1d000004(%ebp)
599032:	04 00                	add    $0x0,%al
599034:	00 12                	add    %dl,(%edx)
599036:	71 04                	jno    0x59903c
599038:	06                   	push   %es
599039:	12 81 85 07 20 02    	adc    0x2200785(%ecx),%al
59903f:	01 1c 12             	add    %ebx,(%edx,%edx,1)
599042:	81 91 05 20 01 12 1c 	adcl   $0x608081c,0x12012005(%ecx)
599049:	08 08 06
59904c:	15 12 80 a0 01       	adc    $0x1a08012,%eax
599051:	12 1c 08             	adc    (%eax,%ecx,1),%bl
599054:	06                   	push   %es
599055:	15 12 80 a0 01       	adc    $0x1a08012,%eax
59905a:	12 50 09             	adc    0x9(%eax),%dl
59905d:	06                   	push   %es
59905e:	15 12 80 a0 01       	adc    $0x1a08012,%eax
599063:	12 80 a4 08 06 15    	adc    0x150608a4(%eax),%al
599069:	12 80 a0 01 12 7c    	adc    0x7c1201a0(%eax),%al
59906f:	08 06                	or     %al,(%esi)
599071:	15 12 80 a0 01       	adc    $0x1a08012,%eax
599076:	12 4c 09 06          	adc    0x6(%ecx,%ecx,1),%cl
59907a:	15 12 80 a0 01       	adc    $0x1a08012,%eax
59907f:	12 80 dc 08 06 15    	adc    0x150608dc(%eax),%al
599085:	12 80 a0 01 12 34    	adc    0x341201a0(%eax),%al
59908b:	09 20                	or     %esp,(%eax)
59908d:	00 15 12 80 a0 01    	add    %dl,0x1a08012
599093:	12 1c 0a             	adc    (%edx,%ecx,1),%bl
599096:	20 01                	and    %al,(%ecx)
599098:	01 15 12 80 a0 01    	add    %edx,0x1a08012
59909e:	12 1c 09             	adc    (%ecx,%ecx,1),%bl
5990a1:	20 00                	and    %al,(%eax)
5990a3:	15 12 80 a0 01       	adc    $0x1a08012,%eax
5990a8:	12 50 0a             	adc    0xa(%eax),%dl
5990ab:	20 01                	and    %al,(%ecx)
5990ad:	01 15 12 80 a0 01    	add    %edx,0x1a08012
5990b3:	12 50 0a             	adc    0xa(%eax),%dl
5990b6:	20 00                	and    %al,(%eax)
5990b8:	15 12 80 a0 01       	adc    $0x1a08012,%eax
5990bd:	12 80 a4 0b 20 01    	adc    0x1200ba4(%eax),%al
5990c3:	01 15 12 80 a0 01    	add    %edx,0x1a08012
5990c9:	12 80 a4 09 20 00    	adc    0x2009a4(%eax),%al
5990cf:	15 12 80 a0 01       	adc    $0x1a08012,%eax
5990d4:	12 7c 0a 20          	adc    0x20(%edx,%ecx,1),%bh
5990d8:	01 01                	add    %eax,(%ecx)
5990da:	15 12 80 a0 01       	adc    $0x1a08012,%eax
5990df:	12 7c 09 20          	adc    0x20(%ecx,%ecx,1),%bh
5990e3:	00 15 12 80 a0 01    	add    %dl,0x1a08012
5990e9:	12 4c 0a 20          	adc    0x20(%edx,%ecx,1),%cl
5990ed:	01 01                	add    %eax,(%ecx)
5990ef:	15 12 80 a0 01       	adc    $0x1a08012,%eax
5990f4:	12 4c 0a 20          	adc    0x20(%edx,%ecx,1),%cl
5990f8:	00 15 12 80 a0 01    	add    %dl,0x1a08012
5990fe:	12 80 dc 0b 20 01    	adc    0x1200bdc(%eax),%al
599104:	01 15 12 80 a0 01    	add    %edx,0x1a08012
59910a:	12 80 dc 09 20 00    	adc    0x2009dc(%eax),%al
599110:	15 12 80 a0 01       	adc    $0x1a08012,%eax
599115:	12 34 0a             	adc    (%edx,%ecx,1),%dh
599118:	20 01                	and    %al,(%ecx)
59911a:	01 15 12 80 a0 01    	add    %edx,0x1a08012
599120:	12 34 05 20 01 01 12 	adc    0x12010120(,%eax,1),%dh
599127:	60                   	pusha
599128:	03 06                	add    (%esi),%eax
59912a:	12 1c 04             	adc    (%esp,%eax,1),%bl
59912d:	20 00                	and    %al,(%eax)
59912f:	12 1c 05 20 01 01 12 	adc    0x12010120(,%eax,1),%bl
599136:	1c 09                	sbb    $0x9,%al
599138:	20 00                	and    %al,(%eax)
59913a:	15 12 80 94 01       	adc    $0x1948012,%eax
59913f:	13 00                	adc    (%eax),%eax
599141:	05 20 01 12 4c       	add    $0x4c120120,%eax
599146:	08 03                	or     %al,(%ebx)
599148:	00 00                	add    %al,(%eax)
59914a:	01 04 20             	add    %eax,(%eax,%eiz,1)
59914d:	01 1c 1c             	add    %ebx,(%esp,%ebx,1)
599150:	0a 20                	or     (%eax),%ah
599152:	03 01                	add    (%ecx),%eax
599154:	12 1c 12             	adc    (%edx,%edx,1),%bl
599157:	80 dc 11             	sbb    $0x11,%ah
59915a:	4d                   	dec    %ebp
59915b:	02 06                	add    (%esi),%al
59915d:	02 04 06             	add    (%esi,%eax,1),%al
599160:	12 81 71 07 20 01    	adc    0x1200771(%ecx),%al
599166:	12 4c 12 80          	adc    -0x80(%edx,%edx,1),%cl
59916a:	dc 06                	faddl  (%esi)
59916c:	20 02                	and    %al,(%edx)
59916e:	01 1c 12             	add    %ebx,(%edx,%edx,1)
599171:	14 03                	adc    $0x3,%al
599173:	06                   	push   %es
599174:	1d 05 04 06 11       	sbb    $0x11060405,%eax
599179:	80 84 02 06 06 04 06 	addb   $0x12,0x6040606(%edx,%eax,1)
599180:	12
599181:	80 90 04 06 12 80 88 	adcb   $0x88,-0x7fedf9fc(%eax)
599188:	04 00                	add    $0x0,%al
59918a:	01 0e                	add    %ecx,(%esi)
59918c:	08 05 00 02 0e 08    	or     %al,0x80e0200
599192:	02 08                	add    (%eax),%cl
599194:	00 01                	add    %al,(%ecx)
599196:	12 80 e9 12 80 d1    	adc    -0x2e7fed17(%eax),%al
59919c:	07                   	pop    %es
59919d:	00 01                	add    %al,(%ecx)
59919f:	1d 05 12 80 e9       	sbb    $0xe9801205,%eax
5991a4:	06                   	push   %es
5991a5:	00 02                	add    %al,(%edx)
5991a7:	02 12                	add    (%edx),%dl
5991a9:	69 08 08 00 03 01    	imul   $0x1030008,(%eax),%ecx
5991af:	1d 05 08 1d 05       	sbb    $0x51d0805,%eax
5991b4:	05 06 1d 11 80       	add    $0x80111d06,%eax
5991b9:	8c 04 20             	mov    %es,(%eax,%eiz,1)
5991bc:	01 0e                	add    %ecx,(%esi)
5991be:	08 05 20 02 01 08    	or     %al,0x8010220
5991c4:	0e                   	push   %cs
5991c5:	04 06                	add    $0x6,%al
5991c7:	12 80 b1 06 20 01    	adc    0x12006b1(%eax),%al
5991cd:	01 12                	add    %edx,(%edx)
5991cf:	80 b1 05 20 00 12 80 	xorb   $0x80,0x12002005(%ecx)
5991d6:	b1 03                	mov    $0x3,%cl
5991d8:	20 00                	and    %al,(%eax)
5991da:	06                   	push   %es
5991db:	05 20 01 1d 05       	add    $0x51d0120,%eax
5991e0:	08 04 20             	or     %al,(%eax,%eiz,1)
5991e3:	00 13                	add    %dl,(%ebx)
5991e5:	00 08                	add    %cl,(%eax)
5991e7:	06                   	push   %es
5991e8:	15 12 80 9d 01       	adc    $0x19d8012,%eax
5991ed:	12 14 0a             	adc    (%edx,%ecx,1),%dl
5991f0:	20 01                	and    %al,(%ecx)
5991f2:	01 15 12 80 9d 01    	add    %edx,0x19d8012
5991f8:	12 14 05 20 01 01 12 	adc    0x12010120(,%eax,1),%dl
5991ff:	14 08                	adc    $0x8,%al
599201:	20 04 01             	and    %al,(%ecx,%eax,1)
599204:	0e                   	push   %cs
599205:	11 4d 02             	adc    %ecx,0x2(%ebp)
599208:	02 04 06             	add    (%esi,%eax,1),%al
59920b:	12 80 c0 03 00 00    	adc    0x3c0(%eax),%al
599211:	0a 03                	or     (%ebx),%al
599213:	00 00                	add    %al,(%eax)
599215:	02 06                	add    (%esi),%al
599217:	00 01                	add    %al,(%ecx)
599219:	08 12                	or     %dl,(%edx)
59921b:	81 49 03 00 00 08 05 	orl    $0x5080000,0x3(%ecx)
599222:	00 02                	add    %al,(%edx)
599224:	08 08                	or     %cl,(%eax)
599226:	08 03                	or     %al,(%ebx)
599228:	20 00                	and    %al,(%eax)
59922a:	0a 04 20             	or     (%eax,%eiz,1),%al
59922d:	01 01                	add    %eax,(%ecx)
59922f:	0a 07                	or     (%edi),%al
599231:	20 02                	and    %al,(%edx)
599233:	01 1c 12             	add    %ebx,(%edx,%edx,1)
599236:	81 b9 08 01 00 00 00 	cmpl   $0x0,0x108(%ecx)
59923d:	00 00 00
599240:	00 05 20 01 01 11    	add    %al,0x11010120
599246:	59                   	pop    %ecx
599247:	04 01                	add    $0x1,%al
599249:	00 00                	add    %al,(%eax)
59924b:	00 06                	add    %al,(%esi)
59924d:	15 12 80 94 01       	adc    $0x1948012,%eax
599252:	08 05 15 12 3c 01    	or     %al,0x13c1215