140a56e7d:	73 57                	jae    0x140a56ed6
140a56e7f:	89 45 20             	mov    %eax,0x20(%rbp)
140a56e82:	48 8b 49 10          	mov    0x10(%rcx),%rcx
140a56e86:	48 8d 41 04          	lea    0x4(%rcx),%rax
140a56e8a:	48 3b 43 18          	cmp    0x18(%rbx),%rax
140a56e8e:	76 2e                	jbe    0x140a56ebe
140a56e90:	41 b8 2c 00 00 00    	mov    $0x2c,%r8d
140a56e96:	b2 18                	mov    $0x18,%dl
140a56e98:	48 8d 4d 30          	lea    0x30(%rbp),%rcx
140a56e9c:	e8 3f 01 fb ff       	call   0x140a06fe0
140a56ea1:	48 8d 4b 08          	lea    0x8(%rbx),%rcx
140a56ea5:	48 8d 55 30          	lea    0x30(%rbp),%rdx
140a56ea9:	e8 42 7e f6 ff       	call   0x1409becf0
140a56eae:	48 8d 4d 30          	lea    0x30(%rbp),%rcx
140a56eb2:	e8 39 83 f6 ff       	call   0x1409bf1f0
140a56eb7:	32 c0                	xor    %al,%al
140a56eb9:	8b 4d 20             	mov    0x20(%rbp),%ecx
140a56ebc:	eb 09                	jmp    0x140a56ec7
140a56ebe:	8b 09                	mov    (%rcx),%ecx
140a56ec0:	48 83 43 10 04       	addq   $0x4,0x10(%rbx)
140a56ec5:	b0 01                	mov    $0x1,%al
140a56ec7:	84 c0                	test   %al,%al
140a56ec9:	74 48                	je     0x140a56f13
140a56ecb:	0f c9                	bswap  %ecx
140a56ecd:	85 c9                	test   %ecx,%ecx
140a56ecf:	78 2b                	js     0x140a56efc
140a56ed1:	48 63 c1             	movslq %ecx,%rax
140a56ed4:	eb 1a                	jmp    0x140a56ef0
140a56ed6:	48 89 45 20          	mov    %rax,0x20(%rbp)
140a56eda:	48 8d 55 20          	lea    0x20(%rbp),%rdx
140a56ede:	e8 6d 0a 00 00       	call   0x140a57950
140a56ee3:	84 c0                	test   %al,%al
140a56ee5:	74 2c                	je     0x140a56f13
140a56ee7:	48 8b 45 20          	mov    0x20(%rbp),%rax
140a56eeb:	48 85 c0             	test   %rax,%rax
140a56eee:	78 0c                	js     0x140a56efc
140a56ef0:	48 3b c7             	cmp    %rdi,%rax
140a56ef3:	73 07                	jae    0x140a56efc
140a56ef5:	48 89 06             	mov    %rax,(%rsi)
140a56ef8:	b0 01                	mov    $0x1,%al
140a56efa:	eb 19                	jmp    0x140a56f15
140a56efc:	c6 45 20 39          	movb   $0x39,0x20(%rbp)
140a56f00:	4c 8d 05 f9 81 62 00 	lea    0x6281f9(%rip),%r8        # 0x14107f100
140a56f07:	48 8d 55 20          	lea    0x20(%rbp),%rdx
140a56f0b:	48 8b cb             	mov    %rbx,%rcx
140a56f0e:	e8 fd e6 f7 ff       	call   0x1409d5610
140a56f13:	32 c0                	xor    %al,%al
140a56f15:	48 8b 5c 24 48       	mov    0x48(%rsp),%rbx
140a56f1a:	48 8b 74 24 58       	mov    0x58(%rsp),%rsi
140a56f1f:	48 83 c4 20          	add    $0x20,%rsp
140a56f23:	41 5e                	pop    %r14
140a56f25:	5f                   	pop    %rdi
140a56f26:	5d                   	pop    %rbp
140a56f27:	c3                   	ret
140a56f28:	cc                   	int3
140a56f29:	cc                   	int3
140a56f2a:	cc                   	int3
140a56f2b:	cc                   	int3
140a56f2c:	cc                   	int3
140a56f2d:	cc                   	int3
140a56f2e:	cc                   	int3
140a56f2f:	cc                   	int3
140a56f30:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140a56f35:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
140a56f3a:	56                   	push   %rsi
140a56f3b:	57                   	push   %rdi
140a56f3c:	41 56                	push   %r14
140a56f3e:	48 83 ec 20          	sub    $0x20,%rsp
140a56f42:	4c 8b f2             	mov    %rdx,%r14
140a56f45:	48 8b d9             	mov    %rcx,%rbx
140a56f48:	33 ed                	xor    %ebp,%ebp
140a56f4a:	40 32 ff             	xor    %dil,%dil
140a56f4d:	8b f5                	mov    %ebp,%esi
140a56f4f:	90                   	nop
140a56f50:	48 8b 43 10          	mov    0x10(%rbx),%rax
140a56f54:	48 8d 48 01          	lea    0x1(%rax),%rcx
140a56f58:	48 3b 4b 18          	cmp    0x18(%rbx),%rcx
140a56f5c:	77 0b                	ja     0x140a56f69
140a56f5e:	0f b6 38             	movzbl (%rax),%edi
140a56f61:	48 89 4b 10          	mov    %rcx,0x10(%rbx)
140a56f65:	b0 01                	mov    $0x1,%al
140a56f67:	eb 2c                	jmp    0x140a56f95
140a56f69:	41 b8 2c 00 00 00    	mov    $0x2c,%r8d
140a56f6f:	b2 18                	mov    $0x18,%dl
140a56f71:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
140a56f76:	e8 65 00 fb ff       	call   0x140a06fe0
140a56f7b:	48 8d 4b 08          	lea    0x8(%rbx),%rcx
140a56f7f:	48 8d 54 24 40       	lea    0x40(%rsp),%rdx
140a56f84:	e8 67 7d f6 ff       	call   0x1409becf0
140a56f89:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
140a56f8e:	e8 5d 82 f6 ff       	call   0x1409bf1f0
140a56f93:	32 c0                	xor    %al,%al
140a56f95:	84 c0                	test   %al,%al
140a56f97:	74 1d                	je     0x140a56fb6
140a56f99:	40 8b c7             	rex mov %edi,%eax
140a56f9c:	83 e0 7f             	and    $0x7f,%eax
140a56f9f:	8b ce                	mov    %esi,%ecx
140a56fa1:	d3 e0                	shl    %cl,%eax
140a56fa3:	0b e8                	or     %eax,%ebp
140a56fa5:	83 c6 07             	add    $0x7,%esi
140a56fa8:	40 84 ff             	test   %dil,%dil
140a56fab:	78 a3                	js     0x140a56f50
140a56fad:	8b c5                	mov    %ebp,%eax
140a56faf:	49 89 06             	mov    %rax,(%r14)
140a56fb2:	b0 01                	mov    $0x1,%al
140a56fb4:	eb 02                	jmp    0x140a56fb8
140a56fb6:	32 c0                	xor    %al,%al
140a56fb8:	48 8b 5c 24 48       	mov    0x48(%rsp),%rbx
140a56fbd:	48 8b 6c 24 50       	mov    0x50(%rsp),%rbp
140a56fc2:	48 83 c4 20          	add    $0x20,%rsp
140a56fc6:	41 5e                	pop    %r14
140a56fc8:	5f                   	pop    %rdi
140a56fc9:	5e                   	pop    %rsi
140a56fca:	c3                   	ret
140a56fcb:	cc                   	int3
140a56fcc:	cc                   	int3
140a56fcd:	cc                   	int3
140a56fce:	cc                   	int3
140a56fcf:	cc                   	int3
140a56fd0:	40 53                	rex push %rbx
140a56fd2:	48 83 ec 20          	sub    $0x20,%rsp
140a56fd6:	48 8b d9             	mov    %rcx,%rbx
140a56fd9:	48 8b 41 10          	mov    0x10(%rcx),%rax
140a56fdd:	48 8d 48 01          	lea    0x1(%rax),%rcx
140a56fe1:	48 3b 4b 18          	cmp    0x18(%rbx),%rcx
140a56fe5:	77 11                	ja     0x140a56ff8
140a56fe7:	0f b6 00             	movzbl (%rax),%eax
140a56fea:	48 89 4b 10          	mov    %rcx,0x10(%rbx)
140a56fee:	88 02                	mov    %al,(%rdx)
140a56ff0:	b0 01                	mov    $0x1,%al
140a56ff2:	48 83 c4 20          	add    $0x20,%rsp
140a56ff6:	5b                   	pop    %rbx
140a56ff7:	c3                   	ret
140a56ff8:	41 b8 2c 00 00 00    	mov    $0x2c,%r8d
140a56ffe:	b2 18                	mov    $0x18,%dl
140a57000:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
140a57005:	e8 d6 ff fa ff       	call   0x140a06fe0
140a5700a:	48 8d 4b 08          	lea    0x8(%rbx),%rcx
140a5700e:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
140a57013:	e8 d8 7c f6 ff       	call   0x1409becf0
140a57018:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
140a5701d:	e8 ce 81 f6 ff       	call   0x1409bf1f0
140a57022:	32 c0                	xor    %al,%al
140a57024:	48 83 c4 20          	add    $0x20,%rsp
140a57028:	5b                   	pop    %rbx
140a57029:	c3                   	ret
140a5702a:	cc                   	int3
140a5702b:	cc                   	int3
140a5702c:	cc                   	int3
140a5702d:	cc                   	int3
140a5702e:	cc                   	int3
140a5702f:	cc                   	int3
140a57030:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140a57035:	57                   	push   %rdi
140a57036:	48 83 ec 20          	sub    $0x20,%rsp
140a5703a:	48 8b fa             	mov    %rdx,%rdi
140a5703d:	48 8b d9             	mov    %rcx,%rbx
140a57040:	33 c0                	xor    %eax,%eax
140a57042:	66 89 44 24 30       	mov    %ax,0x30(%rsp)
140a57047:	48 8b 49 10          	mov    0x10(%rcx),%rcx
140a5704b:	48 8d 41 02          	lea    0x2(%rcx),%rax
140a5704f:	48 3b 43 18          	cmp    0x18(%rbx),%rax
140a57053:	76 33                	jbe    0x140a57088
140a57055:	41 b8 2c 00 00 00    	mov    $0x2c,%r8d
140a5705b:	b2 18                	mov    $0x18,%dl
140a5705d:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
140a57062:	e8 79 ff fa ff       	call   0x140a06fe0
140a57067:	48 8d 4b 08          	lea    0x8(%rbx),%rcx
140a5706b:	48 8d 54 24 40       	lea    0x40(%rsp),%rdx
140a57070:	e8 7b 7c f6 ff       	call   0x1409becf0
140a57075:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
140a5707a:	e8 71 81 f6 ff       	call   0x1409bf1f0
140a5707f:	32 c0                	xor    %al,%al
140a57081:	0f b7 4c 24 30       	movzwl 0x30(%rsp),%ecx
140a57086:	eb 0a                	jmp    0x140a57092
140a57088:	0f b7 09             	movzwl (%rcx),%ecx
140a5708b:	48 83 43 10 02       	addq   $0x2,0x10(%rbx)
140a57090:	b0 01                	mov    $0x1,%al
140a57092:	84 c0                	test   %al,%al
140a57094:	74 14                	je     0x140a570aa
140a57096:	66 c1 c9 08          	ror    $0x8,%cx
140a5709a:	66 89 0f             	mov    %cx,(%rdi)
140a5709d:	b0 01                	mov    $0x1,%al
140a5709f:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
140a570a4:	48 83 c4 20          	add    $0x20,%rsp
140a570a8:	5f                   	pop    %rdi
140a570a9:	c3                   	ret
140a570aa:	32 c0                	xor    %al,%al
140a570ac:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
140a570b1:	48 83 c4 20          	add    $0x20,%rsp
140a570b5:	5f                   	pop    %rdi
140a570b6:	c3                   	ret
140a570b7:	cc                   	int3
140a570b8:	cc                   	int3
140a570b9:	cc                   	int3
140a570ba:	cc                   	int3
140a570bb:	cc                   	int3
140a570bc:	cc                   	int3
140a570bd:	cc                   	int3
140a570be:	cc                   	int3
140a570bf:	cc                   	int3
140a570c0:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140a570c5:	57                   	push   %rdi
140a570c6:	48 83 ec 20          	sub    $0x20,%rsp
140a570ca:	48 8b fa             	mov    %rdx,%rdi
140a570cd:	48 8b d9             	mov    %rcx,%rbx
140a570d0:	c7 44 24 30 00 00 00 	movl   $0x0,0x30(%rsp)
140a570d7:	00
140a570d8:	48 8b 49 10          	mov    0x10(%rcx),%rcx
140a570dc:	48 8d 41 04          	lea    0x4(%rcx),%rax
140a570e0:	48 3b 43 18          	cmp    0x18(%rbx),%rax
140a570e4:	76 32                	jbe    0x140a57118
140a570e6:	41 b8 2c 00 00 00    	mov    $0x2c,%r8d
140a570ec:	b2 18                	mov    $0x18,%dl
140a570ee:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
140a570f3:	e8 e8 fe fa ff       	call   0x140a06fe0
140a570f8:	48 8d 4b 08          	lea    0x8(%rbx),%rcx
140a570fc:	48 8d 54 24 40       	lea    0x40(%rsp),%rdx
140a57101:	e8 ea 7b f6 ff       	call   0x1409becf0
140a57106:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
140a5710b:	e8 e0 80 f6 ff       	call   0x1409bf1f0
140a57110:	32 c0                	xor    %al,%al
140a57112:	8b 4c 24 30          	mov    0x30(%rsp),%ecx
140a57116:	eb 09                	jmp    0x140a57121
140a57118:	8b 09                	mov    (%rcx),%ecx
140a5711a:	48 83 43 10 04       	addq   $0x4,0x10(%rbx)
140a5711f:	b0 01                	mov    $0x1,%al
140a57121:	84 c0                	test   %al,%al
140a57123:	74 11                	je     0x140a57136
140a57125:	0f c9                	bswap  %ecx
140a57127:	89 0f                	mov    %ecx,(%rdi)
140a57129:	b0 01                	mov    $0x1,%al
140a5712b:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
140a57130:	48 83 c4 20          	add    $0x20,%rsp
140a57134:	5f                   	pop    %rdi
140a57135:	c3                   	ret
140a57136:	32 c0                	xor    %al,%al
140a57138:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
140a5713d:	48 83 c4 20          	add    $0x20,%rsp
140a57141:	5f                   	pop    %rdi
140a57142:	c3                   	ret
140a57143:	cc                   	int3
140a57144:	cc                   	int3
140a57145:	cc                   	int3
140a57146:	cc                   	int3
140a57147:	cc                   	int3
140a57148:	cc                   	int3
140a57149:	cc                   	int3
140a5714a:	cc                   	int3
140a5714b:	cc                   	int3
140a5714c:	cc                   	int3
140a5714d:	cc                   	int3
140a5714e:	cc                   	int3
140a5714f:	cc                   	int3
140a57150:	48 83 ec 28          	sub    $0x28,%rsp
140a57154:	e8 97 f8 ff ff       	call   0x140a569f0
140a57159:	90                   	nop
140a5715a:	48 83 c4 28          	add    $0x28,%rsp
140a5715e:	c3                   	ret
140a5715f:	cc                   	int3
140a57160:	48 83 ec 28          	sub    $0x28,%rsp
140a57164:	e8 d7 f3 ff ff       	call   0x140a56540
140a57169:	90                   	nop
140a5716a:	48 83 c4 28          	add    $0x28,%rsp
140a5716e:	c3                   	ret
140a5716f:	cc                   	int3
140a57170:	48 83 ec 28          	sub    $0x28,%rsp
140a57174:	e8 f7 f5 ff ff       	call   0x140a56770
140a57179:	90                   	nop
140a5717a:	48 83 c4 28          	add    $0x28,%rsp
140a5717e:	c3                   	ret
140a5717f:	cc                   	int3
140a57180:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
140a57185:	55                   	push   %rbp
140a57186:	56                   	push   %rsi
140a57187:	57                   	push   %rdi
140a57188:	41 54                	push   %r12
140a5718a:	41 55                	push   %r13
140a5718c:	41 56                	push   %r14
140a5718e:	41 57                	push   %r15
140a57190:	48 8d 6c 24 b0       	lea    -0x50(%rsp),%rbp
140a57195:	48 81 ec 50 01 00 00 	sub    $0x150,%rsp
140a5719c:	48 8b 05 5d 1d 96 00 	mov    0x961d5d(%rip),%rax        # 0x1413b8f00
140a571a3:	48 33 c4             	xor    %rsp,%rax
140a571a6:	48 89 45 40          	mov    %rax,0x40(%rbp)
140a571aa:	48 89 54 24 28       	mov    %rdx,0x28(%rsp)
140a571af:	48 8b d9             	mov    %rcx,%rbx
140a571b2:	45 33 e4             	xor    %r12d,%r12d
140a571b5:	44 89 64 24 20       	mov    %r12d,0x20(%rsp)
140a571ba:	0f 57 c0             	xorps  %xmm0,%xmm0
140a571bd:	0f 11 45 20          	movups %xmm0,0x20(%rbp)
140a571c1:	48 c7 45 38 0f 00 00 	movq   $0xf,0x38(%rbp)
140a571c8:	00
140a571c9:	4c 89 65 30          	mov    %r12,0x30(%rbp)
140a571cd:	44 88 65 20          	mov    %r12b,0x20(%rbp)
140a571d1:	45 33 f6             	xor    %r14d,%r14d
140a571d4:	40 32 ff             	xor    %dil,%dil
140a571d7:	33 f6                	xor    %esi,%esi
140a571d9:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
140a571e0:	48 8b 43 10          	mov    0x10(%rbx),%rax
140a571e4:	48 8d 48 01          	lea    0x1(%rax),%rcx
140a571e8:	48 3b 4b 18          	cmp    0x18(%rbx),%rcx
140a571ec:	77 0b                	ja     0x140a571f9
140a571ee:	0f b6 38             	movzbl (%rax),%edi
140a571f1:	48 89 4b 10          	mov    %rcx,0x10(%rbx)
140a571f5:	b0 01                	mov    $0x1,%al
140a571f7:	eb 30                	jmp    0x140a57229
140a571f9:	41 b8 2c 00 00 00    	mov    $0x2c,%r8d
140a571ff:	b2 18                	mov    $0x18,%dl
140a57201:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140a57206:	e8 d5 fd fa ff       	call   0x140a06fe0
140a5720b:	41 83 cc 01          	or     $0x1,%r12d
140a5720f:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
140a57214:	48 8d 4b 08          	lea    0x8(%rbx),%rcx
140a57218:	e8 d3 7a f6 ff       	call   0x1409becf0
140a5721d:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140a57222:	e8 c9 7f f6 ff       	call   0x1409bf1f0
140a57227:	32 c0                	xor    %al,%al
140a57229:	84 c0                	test   %al,%al
140a5722b:	74 54                	je     0x140a57281
140a5722d:	40 8b c7             	rex mov %edi,%eax
140a57230:	83 e0 7f             	and    $0x7f,%eax
140a57233:	8b ce                	mov    %esi,%ecx
140a57235:	d3 e0                	shl    %cl,%eax
140a57237:	44 0b f0             	or     %eax,%r14d
140a5723a:	83 c6 07             	add    $0x7,%esi
140a5723d:	40 84 ff             	test   %dil,%dil
140a57240:	78 9e                	js     0x140a571e0
140a57242:	41 8b fe             	mov    %r14d,%edi
140a57245:	4c 8b 6b 10          	mov    0x10(%rbx),%r13
140a57249:	4b 8d 04 2e          	lea    (%r14,%r13,1),%rax
140a5724d:	48 3b 43 18          	cmp    0x18(%rbx),%rax
140a57251:	0f 86 91 00 00 00    	jbe    0x140a572e8
140a57257:	41 b8 2c 00 00 00    	mov    $0x2c,%r8d
140a5725d:	b2 18                	mov    $0x18,%dl
140a5725f:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140a57264:	e8 77 fd fa ff       	call   0x140a06fe0
140a57269:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
140a5726e:	48 8d 4b 08          	lea    0x8(%rbx),%rcx
140a57272:	e8 79 7a f6 ff       	call   0x1409becf0
140a57277:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140a5727c:	e8 6f 7f f6 ff       	call   0x1409bf1f0
140a57281:	32 db                	xor    %bl,%bl
140a57283:	48 8b 55 38          	mov    0x38(%rbp),%rdx
140a57287:	48 83 fa 0f          	cmp    $0xf,%rdx
140a5728b:	76 31                	jbe    0x140a572be
140a5728d:	48 ff c2             	inc    %rdx
140a57290:	48 8b 4d 20          	mov    0x20(%rbp),%rcx
140a57294:	48 8b c1             	mov    %rcx,%rax
140a57297:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx