582eb9:	48                   	dec    %eax
582eba:	23 c8                	and    %eax,%ecx
582ebc:	8b 46 04             	mov    0x4(%esi),%eax
582ebf:	8b 3c 88             	mov    (%eax,%ecx,4),%edi
582ec2:	8b 4f 20             	mov    0x20(%edi),%ecx
582ec5:	83 f9 10             	cmp    $0x10,%ecx
582ec8:	72 2c                	jb     0x582ef6
582eca:	8b 47 0c             	mov    0xc(%edi),%eax
582ecd:	41                   	inc    %ecx
582ece:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
582ed4:	72 16                	jb     0x582eec
582ed6:	8b 50 fc             	mov    -0x4(%eax),%edx
582ed9:	83 c1 23             	add    $0x23,%ecx
582edc:	2b c2                	sub    %edx,%eax
582ede:	83 c0 fc             	add    $0xfffffffc,%eax
582ee1:	83 f8 1f             	cmp    $0x1f,%eax
582ee4:	0f 87 97 00 00 00    	ja     0x582f81
582eea:	8b c2                	mov    %edx,%eax
582eec:	51                   	push   %ecx
582eed:	50                   	push   %eax
582eee:	e8 7f e1 05 00       	call   0x5e1072
582ef3:	83 c4 08             	add    $0x8,%esp
582ef6:	c7 47 1c 00 00 00 00 	movl   $0x0,0x1c(%edi)
582efd:	c7 47 20 0f 00 00 00 	movl   $0xf,0x20(%edi)
582f04:	c6 47 0c 00          	movb   $0x0,0xc(%edi)
582f08:	8b 4e 10             	mov    0x10(%esi),%ecx
582f0b:	83 e9 01             	sub    $0x1,%ecx
582f0e:	89 4e 10             	mov    %ecx,0x10(%esi)
582f11:	75 07                	jne    0x582f1a
582f13:	c7 46 0c 00 00 00 00 	movl   $0x0,0xc(%esi)
582f1a:	85 c9                	test   %ecx,%ecx
582f1c:	75 92                	jne    0x582eb0
582f1e:	8b 7e 08             	mov    0x8(%esi),%edi
582f21:	85 ff                	test   %edi,%edi
582f23:	74 1a                	je     0x582f3f
582f25:	8b 46 04             	mov    0x4(%esi),%eax
582f28:	4f                   	dec    %edi
582f29:	8b 04 b8             	mov    (%eax,%edi,4),%eax
582f2c:	85 c0                	test   %eax,%eax
582f2e:	74 0b                	je     0x582f3b
582f30:	6a 28                	push   $0x28
582f32:	50                   	push   %eax
582f33:	e8 3a e1 05 00       	call   0x5e1072
582f38:	83 c4 08             	add    $0x8,%esp
582f3b:	85 ff                	test   %edi,%edi
582f3d:	75 e6                	jne    0x582f25
582f3f:	8b 46 04             	mov    0x4(%esi),%eax
582f42:	85 c0                	test   %eax,%eax
582f44:	74 2a                	je     0x582f70
582f46:	8b 4e 08             	mov    0x8(%esi),%ecx
582f49:	c1 e1 02             	shl    $0x2,%ecx
582f4c:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
582f52:	72 12                	jb     0x582f66
582f54:	8b 50 fc             	mov    -0x4(%eax),%edx
582f57:	83 c1 23             	add    $0x23,%ecx
582f5a:	2b c2                	sub    %edx,%eax
582f5c:	83 c0 fc             	add    $0xfffffffc,%eax
582f5f:	83 f8 1f             	cmp    $0x1f,%eax
582f62:	77 1d                	ja     0x582f81
582f64:	8b c2                	mov    %edx,%eax
582f66:	51                   	push   %ecx
582f67:	50                   	push   %eax
582f68:	e8 05 e1 05 00       	call   0x5e1072
582f6d:	83 c4 08             	add    $0x8,%esp
582f70:	5f                   	pop    %edi
582f71:	c7 46 08 00 00 00 00 	movl   $0x0,0x8(%esi)
582f78:	c7 46 04 00 00 00 00 	movl   $0x0,0x4(%esi)
582f7f:	5e                   	pop    %esi
582f80:	c3                   	ret
582f81:	e8 a9 9f 06 00       	call   0x5ecf2f
582f86:	cc                   	int3
582f87:	cc                   	int3
582f88:	cc                   	int3
582f89:	cc                   	int3
582f8a:	cc                   	int3
582f8b:	cc                   	int3
582f8c:	cc                   	int3
582f8d:	cc                   	int3
582f8e:	cc                   	int3
582f8f:	cc                   	int3
582f90:	55                   	push   %ebp
582f91:	8b ec                	mov    %esp,%ebp
582f93:	6a ff                	push   $0xffffffff
582f95:	68 38 d0 65 00       	push   $0x65d038
582f9a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
582fa0:	50                   	push   %eax
582fa1:	83 ec 2c             	sub    $0x2c,%esp
582fa4:	a1 d4 89 72 00       	mov    0x7289d4,%eax
582fa9:	33 c5                	xor    %ebp,%eax
582fab:	89 45 f0             	mov    %eax,-0x10(%ebp)
582fae:	56                   	push   %esi
582faf:	57                   	push   %edi
582fb0:	50                   	push   %eax
582fb1:	8d 45 f4             	lea    -0xc(%ebp),%eax
582fb4:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
582fba:	8b f1                	mov    %ecx,%esi
582fbc:	8b 55 08             	mov    0x8(%ebp),%edx
582fbf:	8b 45 0c             	mov    0xc(%ebp),%eax
582fc2:	8b 7d 10             	mov    0x10(%ebp),%edi
582fc5:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
582fcc:	c7 45 e8 0f 00 00 00 	movl   $0xf,-0x18(%ebp)
582fd3:	c6 45 d4 00          	movb   $0x0,-0x2c(%ebp)
582fd7:	f3 0f 7e 00          	movq   (%eax),%xmm0
582fdb:	8b 40 08             	mov    0x8(%eax),%eax
582fde:	89 45 d0             	mov    %eax,-0x30(%ebp)
582fe1:	8d 45 d4             	lea    -0x2c(%ebp),%eax
582fe4:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
582feb:	66 0f d6 45 c8       	movq   %xmm0,-0x38(%ebp)
582ff0:	3b c2                	cmp    %edx,%eax
582ff2:	74 16                	je     0x58300a
582ff4:	83 7a 14 10          	cmpl   $0x10,0x14(%edx)
582ff8:	8b c2                	mov    %edx,%eax
582ffa:	72 02                	jb     0x582ffe
582ffc:	8b 02                	mov    (%edx),%eax
582ffe:	ff 72 10             	push   0x10(%edx)
583001:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
583004:	50                   	push   %eax
583005:	e8 36 22 ec ff       	call   0x445240
58300a:	8d 45 c8             	lea    -0x38(%ebp),%eax
58300d:	89 7d ec             	mov    %edi,-0x14(%ebp)
583010:	50                   	push   %eax
583011:	8d 4e 14             	lea    0x14(%esi),%ecx
583014:	e8 57 15 00 00       	call   0x584570
583019:	8b 55 e8             	mov    -0x18(%ebp),%edx
58301c:	83 fa 10             	cmp    $0x10,%edx
58301f:	72 28                	jb     0x583049
583021:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
583024:	42                   	inc    %edx
583025:	8b c1                	mov    %ecx,%eax
583027:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
58302d:	72 10                	jb     0x58303f
58302f:	8b 49 fc             	mov    -0x4(%ecx),%ecx
583032:	83 c2 23             	add    $0x23,%edx
583035:	2b c1                	sub    %ecx,%eax
583037:	83 c0 fc             	add    $0xfffffffc,%eax
58303a:	83 f8 1f             	cmp    $0x1f,%eax
58303d:	77 29                	ja     0x583068
58303f:	52                   	push   %edx
583040:	51                   	push   %ecx
583041:	e8 2c e0 05 00       	call   0x5e1072
583046:	83 c4 08             	add    $0x8,%esp
583049:	32 c0                	xor    %al,%al
58304b:	8b 4d f4             	mov    -0xc(%ebp),%ecx
58304e:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
583055:	59                   	pop    %ecx
583056:	5f                   	pop    %edi
583057:	5e                   	pop    %esi
583058:	8b 4d f0             	mov    -0x10(%ebp),%ecx
58305b:	33 cd                	xor    %ebp,%ecx
58305d:	e8 78 e4 05 00       	call   0x5e14da
583062:	8b e5                	mov    %ebp,%esp
583064:	5d                   	pop    %ebp
583065:	c2 0c 00             	ret    $0xc
583068:	e8 c2 9e 06 00       	call   0x5ecf2f
58306d:	cc                   	int3
58306e:	cc                   	int3
58306f:	cc                   	int3
583070:	55                   	push   %ebp
583071:	8b ec                	mov    %esp,%ebp
583073:	6a ff                	push   $0xffffffff
583075:	68 79 d0 65 00       	push   $0x65d079
58307a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
583080:	50                   	push   %eax
583081:	51                   	push   %ecx
583082:	53                   	push   %ebx
583083:	56                   	push   %esi
583084:	a1 d4 89 72 00       	mov    0x7289d4,%eax
583089:	33 c5                	xor    %ebp,%eax
58308b:	50                   	push   %eax
58308c:	8d 45 f4             	lea    -0xc(%ebp),%eax
58308f:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
583095:	c7 45 f0 00 00 00 00 	movl   $0x0,-0x10(%ebp)
58309c:	8b 75 08             	mov    0x8(%ebp),%esi
58309f:	c7 46 10 00 00 00 00 	movl   $0x0,0x10(%esi)
5830a6:	c7 46 14 0f 00 00 00 	movl   $0xf,0x14(%esi)
5830ad:	c6 06 00             	movb   $0x0,(%esi)
5830b0:	8b 5d 0c             	mov    0xc(%ebp),%ebx
5830b3:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
5830ba:	c7 45 f0 01 00 00 00 	movl   $0x1,-0x10(%ebp)
5830c1:	83 fb 7f             	cmp    $0x7f,%ebx
5830c4:	77 1e                	ja     0x5830e4
5830c6:	6a 00                	push   $0x0
5830c8:	6a 01                	push   $0x1
5830ca:	8b ce                	mov    %esi,%ecx
5830cc:	e8 7f bf eb ff       	call   0x43f050
5830d1:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
5830d5:	8b c6                	mov    %esi,%eax
5830d7:	0f 82 fb 00 00 00    	jb     0x5831d8
5830dd:	8b 06                	mov    (%esi),%eax
5830df:	e9 f4 00 00 00       	jmp    0x5831d8
5830e4:	81 fb ff 07 00 00    	cmp    $0x7ff,%ebx
5830ea:	77 36                	ja     0x583122
5830ec:	6a 00                	push   $0x0
5830ee:	6a 02                	push   $0x2
5830f0:	8b ce                	mov    %esi,%ecx
5830f2:	e8 59 bf eb ff       	call   0x43f050
5830f7:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
5830fb:	8b ce                	mov    %esi,%ecx
5830fd:	72 02                	jb     0x583101
5830ff:	8b 0e                	mov    (%esi),%ecx
583101:	8a c3                	mov    %bl,%al
583103:	24 3f                	and    $0x3f,%al
583105:	0c 80                	or     $0x80,%al
583107:	88 41 01             	mov    %al,0x1(%ecx)
58310a:	8b c6                	mov    %esi,%eax
58310c:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
583110:	72 02                	jb     0x583114
583112:	8b 06                	mov    (%esi),%eax
583114:	c1 eb 06             	shr    $0x6,%ebx
583117:	80 e3 1f             	and    $0x1f,%bl
58311a:	80 cb c0             	or     $0xc0,%bl
58311d:	e9 b6 00 00 00       	jmp    0x5831d8
583122:	81 fb ff ff 00 00    	cmp    $0xffff,%ebx
583128:	77 49                	ja     0x583173
58312a:	6a 00                	push   $0x0
58312c:	6a 03                	push   $0x3
58312e:	8b ce                	mov    %esi,%ecx
583130:	e8 1b bf eb ff       	call   0x43f050
583135:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
583139:	8b ce                	mov    %esi,%ecx
58313b:	72 02                	jb     0x58313f
58313d:	8b 0e                	mov    (%esi),%ecx
58313f:	8a c3                	mov    %bl,%al
583141:	24 3f                	and    $0x3f,%al
583143:	0c 80                	or     $0x80,%al
583145:	88 41 02             	mov    %al,0x2(%ecx)
583148:	8b ce                	mov    %esi,%ecx
58314a:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
58314e:	72 02                	jb     0x583152
583150:	8b 0e                	mov    (%esi),%ecx
583152:	8b c3                	mov    %ebx,%eax
583154:	c1 e8 06             	shr    $0x6,%eax
583157:	24 3f                	and    $0x3f,%al
583159:	0c 80                	or     $0x80,%al
58315b:	88 41 01             	mov    %al,0x1(%ecx)
58315e:	8b c6                	mov    %esi,%eax
583160:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
583164:	72 02                	jb     0x583168
583166:	8b 06                	mov    (%esi),%eax
583168:	c1 eb 0c             	shr    $0xc,%ebx
58316b:	80 e3 0f             	and    $0xf,%bl
58316e:	80 cb e0             	or     $0xe0,%bl
583171:	eb 65                	jmp    0x5831d8
583173:	81 fb ff ff 10 00    	cmp    $0x10ffff,%ebx
583179:	77 5f                	ja     0x5831da
58317b:	6a 00                	push   $0x0
58317d:	6a 04                	push   $0x4
58317f:	8b ce                	mov    %esi,%ecx
583181:	e8 ca be eb ff       	call   0x43f050
583186:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
58318a:	8b ce                	mov    %esi,%ecx
58318c:	72 02                	jb     0x583190
58318e:	8b 0e                	mov    (%esi),%ecx
583190:	8a c3                	mov    %bl,%al
583192:	24 3f                	and    $0x3f,%al
583194:	0c 80                	or     $0x80,%al
583196:	88 41 03             	mov    %al,0x3(%ecx)
583199:	8b ce                	mov    %esi,%ecx
58319b:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
58319f:	72 02                	jb     0x5831a3
5831a1:	8b 0e                	mov    (%esi),%ecx
5831a3:	8b c3                	mov    %ebx,%eax
5831a5:	c1 e8 06             	shr    $0x6,%eax
5831a8:	24 3f                	and    $0x3f,%al
5831aa:	0c 80                	or     $0x80,%al
5831ac:	88 41 02             	mov    %al,0x2(%ecx)
5831af:	8b ce                	mov    %esi,%ecx
5831b1:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
5831b5:	72 02                	jb     0x5831b9
5831b7:	8b 0e                	mov    (%esi),%ecx
5831b9:	8b c3                	mov    %ebx,%eax
5831bb:	c1 e8 0c             	shr    $0xc,%eax
5831be:	24 3f                	and    $0x3f,%al
5831c0:	0c 80                	or     $0x80,%al
5831c2:	88 41 01             	mov    %al,0x1(%ecx)
5831c5:	8b c6                	mov    %esi,%eax
5831c7:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
5831cb:	72 02                	jb     0x5831cf
5831cd:	8b 06                	mov    (%esi),%eax
5831cf:	c1 eb 12             	shr    $0x12,%ebx
5831d2:	80 e3 07             	and    $0x7,%bl
5831d5:	80 cb f0             	or     $0xf0,%bl
5831d8:	88 18                	mov    %bl,(%eax)
5831da:	8b c6                	mov    %esi,%eax
5831dc:	8b 4d f4             	mov    -0xc(%ebp),%ecx
5831df:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
5831e6:	59                   	pop    %ecx
5831e7:	5e                   	pop    %esi
5831e8:	5b                   	pop    %ebx
5831e9:	8b e5                	mov    %ebp,%esp
5831eb:	5d                   	pop    %ebp
5831ec:	c3                   	ret
5831ed:	cc                   	int3
5831ee:	cc                   	int3
5831ef:	cc                   	int3
5831f0:	55                   	push   %ebp
5831f1:	8b ec                	mov    %esp,%ebp
5831f3:	8b 45 08             	mov    0x8(%ebp),%eax
5831f6:	8b 55 0c             	mov    0xc(%ebp),%edx
5831f9:	3b c2                	cmp    %edx,%eax
5831fb:	73 14                	jae    0x583211
5831fd:	0f 1f 00             	nopl   (%eax)
583200:	8a 08                	mov    (%eax),%cl
583202:	80 f9 0a             	cmp    $0xa,%cl
583205:	74 0e                	je     0x583215
583207:	80 f9 0d             	cmp    $0xd,%cl
58320a:	74 09                	je     0x583215
58320c:	40                   	inc    %eax
58320d:	3b c2                	cmp    %edx,%eax
58320f:	72 ef                	jb     0x583200
583211:	32 c0                	xor    %al,%al
583213:	5d                   	pop    %ebp
583214:	c3                   	ret
583215:	b0 01                	mov    $0x1,%al
583217:	5d                   	pop    %ebp
583218:	c3                   	ret
583219:	cc                   	int3
58321a:	cc                   	int3
58321b:	cc                   	int3
58321c:	cc                   	int3
58321d:	cc                   	int3
58321e:	cc                   	int3
58321f:	cc                   	int3
583220:	55                   	push   %ebp
583221:	8b ec                	mov    %esp,%ebp
583223:	83 ec 08             	sub    $0x8,%esp
583226:	56                   	push   %esi
583227:	57                   	push   %edi
583228:	8b f9                	mov    %ecx,%edi
58322a:	8b 47 10             	mov    0x10(%edi),%eax
58322d:	03 47 0c             	add    0xc(%edi),%eax
583230:	8b 4f 08             	mov    0x8(%edi),%ecx
583233:	49                   	dec    %ecx
583234:	8d 70 ff             	lea    -0x1(%eax),%esi
583237:	8b 47 04             	mov    0x4(%edi),%eax
58323a:	8b d6                	mov    %esi,%edx
58323c:	c1 ea 02             	shr    $0x2,%edx
58323f:	23 d1                	and    %ecx,%edx
583241:	83 e6 03             	and    $0x3,%esi
583244:	5f                   	pop    %edi
583245:	8b 04 90             	mov    (%eax,%edx,4),%eax
583248:	8b 04 b0             	mov    (%eax,%esi,4),%eax
58324b:	5e                   	pop    %esi
58324c:	8b e5                	mov    %ebp,%esp
58324e:	5d                   	pop    %ebp
58324f:	c3                   	ret
583250:	55                   	push   %ebp
583251:	8b ec                	mov    %esp,%ebp
583253:	6a ff                	push   $0xffffffff
583255:	68 cb d0 65 00       	push   $0x65d0cb