14007cd91:	41 8b d1             	mov    %r9d,%edx
14007cd94:	48 8b ce             	mov    %rsi,%rcx
14007cd97:	e8 d4 04 00 00       	call   0x14007d270
14007cd9c:	48 8b c7             	mov    %rdi,%rax
14007cd9f:	48 c1 e8 06          	shr    $0x6,%rax
14007cda3:	83 e0 3f             	and    $0x3f,%eax
14007cda6:	46 0f be 0c 38       	movsbl (%rax,%r15,1),%r9d
14007cdab:	48 8b 4e 10          	mov    0x10(%rsi),%rcx
14007cdaf:	4c 8b 46 18          	mov    0x18(%rsi),%r8
14007cdb3:	49 8b c0             	mov    %r8,%rax
14007cdb6:	48 2b c1             	sub    %rcx,%rax
14007cdb9:	48 83 f8 01          	cmp    $0x1,%rax
14007cdbd:	72 22                	jb     0x14007cde1
14007cdbf:	48 8d 41 01          	lea    0x1(%rcx),%rax
14007cdc3:	48 89 46 10          	mov    %rax,0x10(%rsi)
14007cdc7:	48 8b d6             	mov    %rsi,%rdx
14007cdca:	49 83 f8 0f          	cmp    $0xf,%r8
14007cdce:	76 03                	jbe    0x14007cdd3
14007cdd0:	48 8b 16             	mov    (%rsi),%rdx
14007cdd3:	41 0f b6 c1          	movzbl %r9b,%eax
14007cdd7:	88 04 0a             	mov    %al,(%rdx,%rcx,1)
14007cdda:	c6 44 0a 01 00       	movb   $0x0,0x1(%rdx,%rcx,1)
14007cddf:	eb 19                	jmp    0x14007cdfa
14007cde1:	44 88 4c 24 20       	mov    %r9b,0x20(%rsp)
14007cde6:	41 b9 01 00 00 00    	mov    $0x1,%r9d
14007cdec:	45 33 c0             	xor    %r8d,%r8d
14007cdef:	41 8b d1             	mov    %r9d,%edx
14007cdf2:	48 8b ce             	mov    %rsi,%rcx
14007cdf5:	e8 76 04 00 00       	call   0x14007d270
14007cdfa:	83 e7 3f             	and    $0x3f,%edi
14007cdfd:	46 0f be 0c 3f       	movsbl (%rdi,%r15,1),%r9d
14007ce02:	48 8b 4e 10          	mov    0x10(%rsi),%rcx
14007ce06:	4c 8b 46 18          	mov    0x18(%rsi),%r8
14007ce0a:	49 8b c0             	mov    %r8,%rax
14007ce0d:	48 2b c1             	sub    %rcx,%rax
14007ce10:	48 83 f8 01          	cmp    $0x1,%rax
14007ce14:	72 22                	jb     0x14007ce38
14007ce16:	48 8d 41 01          	lea    0x1(%rcx),%rax
14007ce1a:	48 89 46 10          	mov    %rax,0x10(%rsi)
14007ce1e:	48 8b d6             	mov    %rsi,%rdx
14007ce21:	49 83 f8 0f          	cmp    $0xf,%r8
14007ce25:	76 03                	jbe    0x14007ce2a
14007ce27:	48 8b 16             	mov    (%rsi),%rdx
14007ce2a:	41 0f b6 c1          	movzbl %r9b,%eax
14007ce2e:	88 04 0a             	mov    %al,(%rdx,%rcx,1)
14007ce31:	c6 44 0a 01 00       	movb   $0x0,0x1(%rdx,%rcx,1)
14007ce36:	eb 19                	jmp    0x14007ce51
14007ce38:	44 88 4c 24 20       	mov    %r9b,0x20(%rsp)
14007ce3d:	41 b9 01 00 00 00    	mov    $0x1,%r9d
14007ce43:	45 33 c0             	xor    %r8d,%r8d
14007ce46:	41 8b d1             	mov    %r9d,%edx
14007ce49:	48 8b ce             	mov    %rsi,%rcx
14007ce4c:	e8 1f 04 00 00       	call   0x14007d270
14007ce51:	48 ff c5             	inc    %rbp
14007ce54:	4d 8b 46 08          	mov    0x8(%r14),%r8
14007ce58:	4d 8b 0e             	mov    (%r14),%r9
14007ce5b:	49 8b c8             	mov    %r8,%rcx
14007ce5e:	49 2b c9             	sub    %r9,%rcx
14007ce61:	49 8b c4             	mov    %r12,%rax
14007ce64:	48 f7 e1             	mul    %rcx
14007ce67:	48 d1 ea             	shr    $1,%rdx
14007ce6a:	48 3b ea             	cmp    %rdx,%rbp
14007ce6d:	0f 82 4d fe ff ff    	jb     0x14007ccc0
14007ce73:	4d 2b c1             	sub    %r9,%r8
14007ce76:	49 8b c4             	mov    %r12,%rax
14007ce79:	49 f7 e0             	mul    %r8
14007ce7c:	48 d1 ea             	shr    $1,%rdx
14007ce7f:	48 8d 04 52          	lea    (%rdx,%rdx,2),%rax
14007ce83:	4c 2b c0             	sub    %rax,%r8
14007ce86:	49 83 e8 01          	sub    $0x1,%r8
14007ce8a:	0f 84 a7 00 00 00    	je     0x14007cf37
14007ce90:	49 83 f8 01          	cmp    $0x1,%r8
14007ce94:	0f 85 24 01 00 00    	jne    0x14007cfbe
14007ce9a:	0f b6 3b             	movzbl (%rbx),%edi
14007ce9d:	48 c1 e7 08          	shl    $0x8,%rdi
14007cea1:	0f b6 43 01          	movzbl 0x1(%rbx),%eax
14007cea5:	48 03 f8             	add    %rax,%rdi
14007cea8:	48 c1 e7 08          	shl    $0x8,%rdi
14007ceac:	4c 8b c7             	mov    %rdi,%r8
14007ceaf:	49 c1 e8 12          	shr    $0x12,%r8
14007ceb3:	47 0f b6 04 38       	movzbl (%r8,%r15,1),%r8d
14007ceb8:	ba 01 00 00 00       	mov    $0x1,%edx
14007cebd:	48 8b ce             	mov    %rsi,%rcx
14007cec0:	e8 cb 01 00 00       	call   0x14007d090
14007cec5:	4c 8b c7             	mov    %rdi,%r8
14007cec8:	49 c1 e8 0c          	shr    $0xc,%r8
14007cecc:	41 83 e0 3f          	and    $0x3f,%r8d
14007ced0:	47 0f b6 04 38       	movzbl (%r8,%r15,1),%r8d
14007ced5:	ba 01 00 00 00       	mov    $0x1,%edx
14007ceda:	48 8b ce             	mov    %rsi,%rcx
14007cedd:	e8 ae 01 00 00       	call   0x14007d090
14007cee2:	48 c1 ef 06          	shr    $0x6,%rdi
14007cee6:	83 e7 3f             	and    $0x3f,%edi
14007cee9:	46 0f b6 04 3f       	movzbl (%rdi,%r15,1),%r8d
14007ceee:	ba 01 00 00 00       	mov    $0x1,%edx
14007cef3:	48 8b ce             	mov    %rsi,%rcx
14007cef6:	e8 95 01 00 00       	call   0x14007d090
14007cefb:	4c 8b 46 10          	mov    0x10(%rsi),%r8
14007ceff:	4c 8b 4e 18          	mov    0x18(%rsi),%r9
14007cf03:	49 8b c1             	mov    %r9,%rax
14007cf06:	49 2b c0             	sub    %r8,%rax
14007cf09:	48 83 f8 01          	cmp    $0x1,%rax
14007cf0d:	72 20                	jb     0x14007cf2f
14007cf0f:	49 8d 48 01          	lea    0x1(%r8),%rcx
14007cf13:	48 89 4e 10          	mov    %rcx,0x10(%rsi)
14007cf17:	48 8b d6             	mov    %rsi,%rdx
14007cf1a:	49 83 f9 0f          	cmp    $0xf,%r9
14007cf1e:	76 03                	jbe    0x14007cf23
14007cf20:	48 8b 16             	mov    (%rsi),%rdx
14007cf23:	66 42 c7 04 02 3d 00 	movw   $0x3d,(%rdx,%r8,1)
14007cf2a:	e9 8f 00 00 00       	jmp    0x14007cfbe
14007cf2f:	41 b9 01 00 00 00    	mov    $0x1,%r9d
14007cf35:	eb 74                	jmp    0x14007cfab
14007cf37:	0f b6 1b             	movzbl (%rbx),%ebx
14007cf3a:	48 c1 e3 10          	shl    $0x10,%rbx
14007cf3e:	4c 8b c3             	mov    %rbx,%r8
14007cf41:	49 c1 e8 12          	shr    $0x12,%r8
14007cf45:	47 0f b6 04 38       	movzbl (%r8,%r15,1),%r8d
14007cf4a:	ba 01 00 00 00       	mov    $0x1,%edx
14007cf4f:	48 8b ce             	mov    %rsi,%rcx
14007cf52:	e8 39 01 00 00       	call   0x14007d090
14007cf57:	48 c1 eb 0c          	shr    $0xc,%rbx
14007cf5b:	83 e3 3f             	and    $0x3f,%ebx
14007cf5e:	46 0f b6 04 3b       	movzbl (%rbx,%r15,1),%r8d
14007cf63:	ba 01 00 00 00       	mov    $0x1,%edx
14007cf68:	48 8b ce             	mov    %rsi,%rcx
14007cf6b:	e8 20 01 00 00       	call   0x14007d090
14007cf70:	48 8b 56 10          	mov    0x10(%rsi),%rdx
14007cf74:	48 8b 4e 18          	mov    0x18(%rsi),%rcx
14007cf78:	48 8b c1             	mov    %rcx,%rax
14007cf7b:	48 2b c2             	sub    %rdx,%rax
14007cf7e:	48 83 f8 02          	cmp    $0x2,%rax
14007cf82:	72 21                	jb     0x14007cfa5
14007cf84:	48 8d 42 02          	lea    0x2(%rdx),%rax
14007cf88:	48 89 46 10          	mov    %rax,0x10(%rsi)
14007cf8c:	48 8b c6             	mov    %rsi,%rax
14007cf8f:	48 83 f9 0f          	cmp    $0xf,%rcx
14007cf93:	76 03                	jbe    0x14007cf98
14007cf95:	48 8b 06             	mov    (%rsi),%rax
14007cf98:	66 c7 04 10 3d 3d    	movw   $0x3d3d,(%rax,%rdx,1)
14007cf9e:	c6 44 10 02 00       	movb   $0x0,0x2(%rax,%rdx,1)
14007cfa3:	eb 19                	jmp    0x14007cfbe
14007cfa5:	41 b9 02 00 00 00    	mov    $0x2,%r9d
14007cfab:	c6 44 24 20 3d       	movb   $0x3d,0x20(%rsp)
14007cfb0:	45 33 c0             	xor    %r8d,%r8d
14007cfb3:	49 8b d1             	mov    %r9,%rdx
14007cfb6:	48 8b ce             	mov    %rsi,%rcx
14007cfb9:	e8 b2 02 00 00       	call   0x14007d270
14007cfbe:	48 8b c6             	mov    %rsi,%rax
14007cfc1:	4c 8d 5c 24 40       	lea    0x40(%rsp),%r11
14007cfc6:	49 8b 5b 40          	mov    0x40(%r11),%rbx
14007cfca:	49 8b 6b 48          	mov    0x48(%r11),%rbp
14007cfce:	49 8b e3             	mov    %r11,%rsp
14007cfd1:	41 5f                	pop    %r15
14007cfd3:	41 5e                	pop    %r14
14007cfd5:	41 5c                	pop    %r12
14007cfd7:	5f                   	pop    %rdi
14007cfd8:	5e                   	pop    %rsi
14007cfd9:	c3                   	ret
14007cfda:	cc                   	int3
14007cfdb:	cc                   	int3
14007cfdc:	cc                   	int3
14007cfdd:	cc                   	int3
14007cfde:	cc                   	int3
14007cfdf:	cc                   	int3
14007cfe0:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
14007cfe5:	57                   	push   %rdi
14007cfe6:	48 83 ec 20          	sub    $0x20,%rsp
14007cfea:	48 8b 71 10          	mov    0x10(%rcx),%rsi
14007cfee:	48 8b f9             	mov    %rcx,%rdi
14007cff1:	48 3b f2             	cmp    %rdx,%rsi
14007cff4:	77 7f                	ja     0x14007d075
14007cff6:	48 8b 41 18          	mov    0x18(%rcx),%rax
14007cffa:	48 3b c2             	cmp    %rdx,%rax
14007cffd:	74 76                	je     0x14007d075
14007cfff:	73 17                	jae    0x14007d018
14007d001:	48 2b d6             	sub    %rsi,%rdx
14007d004:	e8 17 01 00 00       	call   0x14007d120
14007d009:	48 89 77 10          	mov    %rsi,0x10(%rdi)
14007d00d:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
14007d012:	48 83 c4 20          	add    $0x20,%rsp
14007d016:	5f                   	pop    %rdi
14007d017:	c3                   	ret
14007d018:	48 83 fa 0f          	cmp    $0xf,%rdx
14007d01c:	77 57                	ja     0x14007d075
14007d01e:	48 83 f8 0f          	cmp    $0xf,%rax
14007d022:	76 51                	jbe    0x14007d075
14007d024:	48 89 5c 24 40       	mov    %rbx,0x40(%rsp)
14007d029:	4c 8d 46 01          	lea    0x1(%rsi),%r8
14007d02d:	48 8b 19             	mov    (%rcx),%rbx
14007d030:	48 8b d3             	mov    %rbx,%rdx
14007d033:	e8 28 43 26 00       	call   0x1402e1360
14007d038:	48 8b 57 18          	mov    0x18(%rdi),%rdx
14007d03c:	48 ff c2             	inc    %rdx
14007d03f:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
14007d046:	72 18                	jb     0x14007d060
14007d048:	48 8b 4b f8          	mov    -0x8(%rbx),%rcx
14007d04c:	48 83 c2 27          	add    $0x27,%rdx
14007d050:	48 2b d9             	sub    %rcx,%rbx
14007d053:	48 8d 43 f8          	lea    -0x8(%rbx),%rax
14007d057:	48 83 f8 1f          	cmp    $0x1f,%rax
14007d05b:	77 23                	ja     0x14007d080
14007d05d:	48 8b d9             	mov    %rcx,%rbx
14007d060:	48 8b cb             	mov    %rbx,%rcx
14007d063:	e8 a4 2e 23 00       	call   0x1402aff0c
14007d068:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
14007d06d:	48 c7 47 18 0f 00 00 	movq   $0xf,0x18(%rdi)
14007d074:	00
14007d075:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
14007d07a:	48 83 c4 20          	add    $0x20,%rsp
14007d07e:	5f                   	pop    %rdi
14007d07f:	c3                   	ret
14007d080:	e8 9f 93 23 00       	call   0x1402b6424
14007d085:	cc                   	int3
14007d086:	cc                   	int3
14007d087:	cc                   	int3
14007d088:	cc                   	int3
14007d089:	cc                   	int3
14007d08a:	cc                   	int3
14007d08b:	cc                   	int3
14007d08c:	cc                   	int3
14007d08d:	cc                   	int3
14007d08e:	cc                   	int3
14007d08f:	cc                   	int3
14007d090:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
14007d095:	57                   	push   %rdi
14007d096:	48 83 ec 30          	sub    $0x30,%rsp
14007d09a:	48 8b f9             	mov    %rcx,%rdi
14007d09d:	48 8b f2             	mov    %rdx,%rsi
14007d0a0:	48 8b 49 10          	mov    0x10(%rcx),%rcx
14007d0a4:	48 8b 57 18          	mov    0x18(%rdi),%rdx
14007d0a8:	48 8b c2             	mov    %rdx,%rax
14007d0ab:	48 2b c1             	sub    %rcx,%rax
14007d0ae:	48 3b f0             	cmp    %rax,%rsi
14007d0b1:	77 43                	ja     0x14007d0f6
14007d0b3:	48 89 5c 24 40       	mov    %rbx,0x40(%rsp)
14007d0b8:	48 8d 04 31          	lea    (%rcx,%rsi,1),%rax
14007d0bc:	48 89 47 10          	mov    %rax,0x10(%rdi)
14007d0c0:	48 8b c7             	mov    %rdi,%rax
14007d0c3:	48 83 fa 0f          	cmp    $0xf,%rdx
14007d0c7:	76 03                	jbe    0x14007d0cc
14007d0c9:	48 8b 07             	mov    (%rdi),%rax
14007d0cc:	48 8d 1c 08          	lea    (%rax,%rcx,1),%rbx
14007d0d0:	41 0f be d0          	movsbl %r8b,%edx
14007d0d4:	48 8b cb             	mov    %rbx,%rcx
14007d0d7:	4c 8b c6             	mov    %rsi,%r8
14007d0da:	e8 21 49 26 00       	call   0x1402e1a00
14007d0df:	c6 04 33 00          	movb   $0x0,(%rbx,%rsi,1)
14007d0e3:	48 8b c7             	mov    %rdi,%rax
14007d0e6:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
14007d0eb:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
14007d0f0:	48 83 c4 30          	add    $0x30,%rsp
14007d0f4:	5f                   	pop    %rdi
14007d0f5:	c3                   	ret
14007d0f6:	44 88 44 24 20       	mov    %r8b,0x20(%rsp)
14007d0fb:	4c 8b ce             	mov    %rsi,%r9
14007d0fe:	45 33 c0             	xor    %r8d,%r8d
14007d101:	48 8b d6             	mov    %rsi,%rdx
14007d104:	48 8b cf             	mov    %rdi,%rcx
14007d107:	e8 64 01 00 00       	call   0x14007d270
14007d10c:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
14007d111:	48 83 c4 30          	add    $0x30,%rsp
14007d115:	5f                   	pop    %rdi
14007d116:	c3                   	ret
14007d117:	cc                   	int3
14007d118:	cc                   	int3
14007d119:	cc                   	int3
14007d11a:	cc                   	int3
14007d11b:	cc                   	int3
14007d11c:	cc                   	int3
14007d11d:	cc                   	int3
14007d11e:	cc                   	int3
14007d11f:	cc                   	int3
14007d120:	40 53                	rex push %rbx
14007d122:	56                   	push   %rsi
14007d123:	41 56                	push   %r14
14007d125:	48 83 ec 30          	sub    $0x30,%rsp
14007d129:	4c 8b 71 10          	mov    0x10(%rcx),%r14
14007d12d:	48 bb ff ff ff ff ff 	movabs $0x7fffffffffffffff,%rbx
14007d134:	ff ff 7f
14007d137:	48 8b c3             	mov    %rbx,%rax
14007d13a:	48 8b f1             	mov    %rcx,%rsi
14007d13d:	49 2b c6             	sub    %r14,%rax
14007d140:	48 3b c2             	cmp    %rdx,%rax
14007d143:	0f 82 1d 01 00 00    	jb     0x14007d266
14007d149:	48 89 6c 24 60       	mov    %rbp,0x60(%rsp)
14007d14e:	48 8b 69 18          	mov    0x18(%rcx),%rbp
14007d152:	48 89 7c 24 28       	mov    %rdi,0x28(%rsp)
14007d157:	4c 89 7c 24 20       	mov    %r15,0x20(%rsp)
14007d15c:	4e 8d 3c 32          	lea    (%rdx,%r14,1),%r15
14007d160:	49 8b d7             	mov    %r15,%rdx
14007d163:	48 83 ca 0f          	or     $0xf,%rdx
14007d167:	48 3b d3             	cmp    %rbx,%rdx
14007d16a:	77 44                	ja     0x14007d1b0
14007d16c:	48 8b cd             	mov    %rbp,%rcx
14007d16f:	48 8b c3             	mov    %rbx,%rax
14007d172:	48 d1 e9             	shr    $1,%rcx
14007d175:	48 2b c1             	sub    %rcx,%rax
14007d178:	48 3b e8             	cmp    %rax,%rbp
14007d17b:	77 33                	ja     0x14007d1b0
14007d17d:	48 8d 04 29          	lea    (%rcx,%rbp,1),%rax
14007d181:	48 8b da             	mov    %rdx,%rbx
14007d184:	48 3b d0             	cmp    %rax,%rdx
14007d187:	48 0f 42 d8          	cmovb  %rax,%rbx
14007d18b:	48 8d 4b 01          	lea    0x1(%rbx),%rcx
14007d18f:	48 85 c9             	test   %rcx,%rcx
14007d192:	75 04                	jne    0x14007d198
14007d194:	33 ff                	xor    %edi,%edi
14007d196:	eb 4d                	jmp    0x14007d1e5
14007d198:	48 81 f9 00 10 00 00 	cmp    $0x1000,%rcx
14007d19f:	72 3c                	jb     0x14007d1dd
14007d1a1:	48 8d 41 27          	lea    0x27(%rcx),%rax
14007d1a5:	48 3b c1             	cmp    %rcx,%rax
14007d1a8:	0f 86 b2 00 00 00    	jbe    0x14007d260
14007d1ae:	eb 0e                	jmp    0x14007d1be
14007d1b0:	48 b8 00 00 00 00 00 	movabs $0x8000000000000000,%rax
14007d1b7:	00 00 80
14007d1ba:	48 83 c0 27          	add    $0x27,%rax
14007d1be:	48 8b c8             	mov    %rax,%rcx
14007d1c1:	e8 0a 2d 23 00       	call   0x1402afed0
14007d1c6:	48 85 c0             	test   %rax,%rax
14007d1c9:	0f 84 8b 00 00 00    	je     0x14007d25a
14007d1cf:	48 8d 78 27          	lea    0x27(%rax),%rdi
14007d1d3:	48 83 e7 e0          	and    $0xffffffffffffffe0,%rdi
14007d1d7:	48 89 47 f8          	mov    %rax,-0x8(%rdi)
14007d1db:	eb 08                	jmp    0x14007d1e5
14007d1dd:	e8 ee 2c 23 00       	call   0x1402afed0
14007d1e2:	48 8b f8             	mov    %rax,%rdi
14007d1e5:	4c 89 7e 10          	mov    %r15,0x10(%rsi)
14007d1e9:	4d 8d 46 01          	lea    0x1(%r14),%r8
14007d1ed:	48 89 5e 18          	mov    %rbx,0x18(%rsi)
14007d1f1:	48 8b cf             	mov    %rdi,%rcx
14007d1f4:	48 83 fd 0f          	cmp    $0xf,%rbp
14007d1f8:	76 3a                	jbe    0x14007d234
14007d1fa:	48 8b 1e             	mov    (%rsi),%rbx
14007d1fd:	48 8b d3             	mov    %rbx,%rdx
14007d200:	e8 5b 41 26 00       	call   0x1402e1360
14007d205:	48 8d 55 01          	lea    0x1(%rbp),%rdx
14007d209:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
14007d210:	72 18                	jb     0x14007d22a
14007d212:	48 8b 4b f8          	mov    -0x8(%rbx),%rcx
14007d216:	48 83 c2 27          	add    $0x27,%rdx
14007d21a:	48 2b d9             	sub    %rcx,%rbx
14007d21d:	48 8d 43 f8          	lea    -0x8(%rbx),%rax
14007d221:	48 83 f8 1f          	cmp    $0x1f,%rax
14007d225:	77 33                	ja     0x14007d25a
14007d227:	48 8b d9             	mov    %rcx,%rbx
14007d22a:	48 8b cb             	mov    %rbx,%rcx
14007d22d:	e8 da 2c 23 00       	call   0x1402aff0c
14007d232:	eb 08                	jmp    0x14007d23c