140075d82:	41 8b 44 87 04       	mov    0x4(%r15,%rax,4),%eax
140075d87:	d3 e8                	shr    %cl,%eax
140075d89:	44 0b d8             	or     %eax,%r11d
140075d8c:	44 89 9c 24 70 02 00 	mov    %r11d,0x270(%rsp)
140075d93:	00
140075d94:	45 8d 60 ff          	lea    -0x1(%r8),%r12d
140075d98:	48 89 6c 24 30       	mov    %rbp,0x30(%rsp)
140075d9d:	4c 8b dd             	mov    %rbp,%r11
140075da0:	45 85 e4             	test   %r12d,%r12d
140075da3:	0f 88 00 02 00 00    	js     0x140075fa9
140075da9:	41 8b c6             	mov    %r14d,%eax
140075dac:	41 bf ff ff ff ff    	mov    $0xffffffff,%r15d
140075db2:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
140075db7:	41 8b c1             	mov    %r9d,%eax
140075dba:	4c 89 ac 24 18 02 00 	mov    %r13,0x218(%rsp)
140075dc1:	00
140075dc2:	45 8d 2c 3c          	lea    (%r12,%rdi,1),%r13d
140075dc6:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
140075dcb:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140075dd0:	45 3b ea             	cmp    %r10d,%r13d
140075dd3:	77 07                	ja     0x140075ddc
140075dd5:	42 8b 54 ae 04       	mov    0x4(%rsi,%r13,4),%edx
140075dda:	eb 02                	jmp    0x140075dde
140075ddc:	8b d5                	mov    %ebp,%edx
140075dde:	89 94 24 78 02 00 00 	mov    %edx,0x278(%rsp)
140075de5:	41 8d 45 ff          	lea    -0x1(%r13),%eax
140075de9:	8b 4c 86 04          	mov    0x4(%rsi,%rax,4),%ecx
140075ded:	41 8d 45 fe          	lea    -0x2(%r13),%eax
140075df1:	44 8b 5c 86 04       	mov    0x4(%rsi,%rax,4),%r11d
140075df6:	48 89 4c 24 20       	mov    %rcx,0x20(%rsp)
140075dfb:	89 54 24 24          	mov    %edx,0x24(%rsp)
140075dff:	85 db                	test   %ebx,%ebx
140075e01:	74 33                	je     0x140075e36
140075e03:	48 8b 4c 24 38       	mov    0x38(%rsp),%rcx
140075e08:	45 8b c3             	mov    %r11d,%r8d
140075e0b:	48 8b 44 24 20       	mov    0x20(%rsp),%rax
140075e10:	49 d3 e8             	shr    %cl,%r8
140075e13:	8b cb                	mov    %ebx,%ecx
140075e15:	48 d3 e0             	shl    %cl,%rax
140075e18:	4c 0b c0             	or     %rax,%r8
140075e1b:	41 d3 e3             	shl    %cl,%r11d
140075e1e:	41 83 fd 03          	cmp    $0x3,%r13d
140075e22:	72 17                	jb     0x140075e3b
140075e24:	41 8d 45 fd          	lea    -0x3(%r13),%eax
140075e28:	41 8b ce             	mov    %r14d,%ecx
140075e2b:	8b 44 86 04          	mov    0x4(%rsi,%rax,4),%eax
140075e2f:	d3 e8                	shr    %cl,%eax
140075e31:	44 0b d8             	or     %eax,%r11d
140075e34:	eb 05                	jmp    0x140075e3b
140075e36:	4c 8b 44 24 20       	mov    0x20(%rsp),%r8
140075e3b:	48 8b 4c 24 28       	mov    0x28(%rsp),%rcx
140075e40:	33 d2                	xor    %edx,%edx
140075e42:	49 8b c0             	mov    %r8,%rax
140075e45:	48 f7 f1             	div    %rcx
140075e48:	33 d2                	xor    %edx,%edx
140075e4a:	4c 8b c8             	mov    %rax,%r9
140075e4d:	49 8b c0             	mov    %r8,%rax
140075e50:	48 f7 f1             	div    %rcx
140075e53:	44 8b c2             	mov    %edx,%r8d
140075e56:	4d 3b cf             	cmp    %r15,%r9
140075e59:	76 17                	jbe    0x140075e72
140075e5b:	48 b8 01 00 00 00 ff 	movabs $0xffffffff00000001,%rax
140075e62:	ff ff ff
140075e65:	49 03 c1             	add    %r9,%rax
140075e68:	4d 8b cf             	mov    %r15,%r9
140075e6b:	48 0f af c1          	imul   %rcx,%rax
140075e6f:	4c 03 c0             	add    %rax,%r8
140075e72:	4d 3b c7             	cmp    %r15,%r8
140075e75:	77 3e                	ja     0x140075eb5
140075e77:	8b 94 24 70 02 00 00 	mov    0x270(%rsp),%edx
140075e7e:	4c 8b f1             	mov    %rcx,%r14
140075e81:	8b c2                	mov    %edx,%eax
140075e83:	49 0f af c1          	imul   %r9,%rax
140075e87:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
140075e8e:	00 00
140075e90:	49 8b c8             	mov    %r8,%rcx
140075e93:	48 c1 e1 20          	shl    $0x20,%rcx
140075e97:	49 0b cb             	or     %r11,%rcx
140075e9a:	48 3b c1             	cmp    %rcx,%rax
140075e9d:	76 0e                	jbe    0x140075ead
140075e9f:	49 ff c9             	dec    %r9
140075ea2:	48 2b c2             	sub    %rdx,%rax
140075ea5:	4d 03 c6             	add    %r14,%r8
140075ea8:	4d 3b c7             	cmp    %r15,%r8
140075eab:	76 e3                	jbe    0x140075e90
140075ead:	44 8b b4 24 60 02 00 	mov    0x260(%rsp),%r14d
140075eb4:	00
140075eb5:	4d 85 c9             	test   %r9,%r9
140075eb8:	0f 84 c2 00 00 00    	je     0x140075f80
140075ebe:	4c 8b d5             	mov    %rbp,%r10
140075ec1:	44 8b dd             	mov    %ebp,%r11d
140075ec4:	85 ff                	test   %edi,%edi
140075ec6:	74 64                	je     0x140075f2c
140075ec8:	4c 8b b4 24 68 02 00 	mov    0x268(%rsp),%r14
140075ecf:	00
140075ed0:	44 8b bc 24 60 02 00 	mov    0x260(%rsp),%r15d
140075ed7:	00
140075ed8:	49 83 c6 04          	add    $0x4,%r14
140075edc:	0f 1f 40 00          	nopl   0x0(%rax)
140075ee0:	41 8b 06             	mov    (%r14),%eax
140075ee3:	4d 8d 76 04          	lea    0x4(%r14),%r14
140075ee7:	49 0f af c1          	imul   %r9,%rax
140075eeb:	4c 03 d0             	add    %rax,%r10
140075eee:	43 8d 04 23          	lea    (%r11,%r12,1),%eax
140075ef2:	45 8b c2             	mov    %r10d,%r8d
140075ef5:	8b c8                	mov    %eax,%ecx
140075ef7:	49 c1 ea 20          	shr    $0x20,%r10
140075efb:	8b 44 86 04          	mov    0x4(%rsi,%rax,4),%eax
140075eff:	49 8b d2             	mov    %r10,%rdx
140075f02:	49 ff c2             	inc    %r10
140075f05:	41 3b c0             	cmp    %r8d,%eax
140075f08:	4c 0f 43 d2          	cmovae %rdx,%r10
140075f0c:	41 2b c0             	sub    %r8d,%eax
140075f0f:	41 ff c3             	inc    %r11d
140075f12:	89 44 8e 04          	mov    %eax,0x4(%rsi,%rcx,4)
140075f16:	44 3b df             	cmp    %edi,%r11d
140075f19:	72 c5                	jb     0x140075ee0
140075f1b:	45 8b f7             	mov    %r15d,%r14d
140075f1e:	44 89 bc 24 60 02 00 	mov    %r15d,0x260(%rsp)
140075f25:	00
140075f26:	41 bf ff ff ff ff    	mov    $0xffffffff,%r15d
140075f2c:	4c 8b 9c 24 68 02 00 	mov    0x268(%rsp),%r11
140075f33:	00
140075f34:	8b 84 24 78 02 00 00 	mov    0x278(%rsp),%eax
140075f3b:	49 83 c3 04          	add    $0x4,%r11
140075f3f:	49 3b c2             	cmp    %r10,%rax
140075f42:	73 38                	jae    0x140075f7c
140075f44:	44 8b d5             	mov    %ebp,%r10d
140075f47:	85 ff                	test   %edi,%edi
140075f49:	74 2e                	je     0x140075f79
140075f4b:	4c 8b c5             	mov    %rbp,%r8
140075f4e:	66 90                	xchg   %ax,%ax
140075f50:	43 8d 04 22          	lea    (%r10,%r12,1),%eax
140075f54:	41 ff c2             	inc    %r10d
140075f57:	8b 4c 86 04          	mov    0x4(%rsi,%rax,4),%ecx
140075f5b:	48 8d 14 86          	lea    (%rsi,%rax,4),%rdx
140075f5f:	41 8b 03             	mov    (%r11),%eax
140075f62:	4d 8d 5b 04          	lea    0x4(%r11),%r11
140075f66:	4c 03 c0             	add    %rax,%r8
140075f69:	4c 03 c1             	add    %rcx,%r8
140075f6c:	44 89 42 04          	mov    %r8d,0x4(%rdx)
140075f70:	49 c1 e8 20          	shr    $0x20,%r8
140075f74:	44 3b d7             	cmp    %edi,%r10d
140075f77:	72 d7                	jb     0x140075f50
140075f79:	49 ff c9             	dec    %r9
140075f7c:	45 8d 55 ff          	lea    -0x1(%r13),%r10d
140075f80:	4c 8b 5c 24 30       	mov    0x30(%rsp),%r11
140075f85:	41 ff cd             	dec    %r13d
140075f88:	49 c1 e3 20          	shl    $0x20,%r11
140075f8c:	41 8b c1             	mov    %r9d,%eax
140075f8f:	4c 03 d8             	add    %rax,%r11
140075f92:	41 83 ec 01          	sub    $0x1,%r12d
140075f96:	4c 89 5c 24 30       	mov    %r11,0x30(%rsp)
140075f9b:	0f 89 2f fe ff ff    	jns    0x140075dd0
140075fa1:	4c 8b ac 24 18 02 00 	mov    0x218(%rsp),%r13
140075fa8:	00
140075fa9:	41 ff c2             	inc    %r10d
140075fac:	41 8b ca             	mov    %r10d,%ecx
140075faf:	44 3b 16             	cmp    (%rsi),%r10d
140075fb2:	73 0c                	jae    0x140075fc0
140075fb4:	8b c1                	mov    %ecx,%eax
140075fb6:	ff c1                	inc    %ecx
140075fb8:	89 6c 86 04          	mov    %ebp,0x4(%rsi,%rax,4)
140075fbc:	3b 0e                	cmp    (%rsi),%ecx
140075fbe:	72 f4                	jb     0x140075fb4
140075fc0:	44 89 16             	mov    %r10d,(%rsi)
140075fc3:	45 85 d2             	test   %r10d,%r10d
140075fc6:	74 1b                	je     0x140075fe3
140075fc8:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
140075fcf:	00
140075fd0:	41 8d 52 ff          	lea    -0x1(%r10),%edx
140075fd4:	44 8b d2             	mov    %edx,%r10d
140075fd7:	39 6c 96 04          	cmp    %ebp,0x4(%rsi,%rdx,4)
140075fdb:	75 06                	jne    0x140075fe3
140075fdd:	89 16                	mov    %edx,(%rsi)
140075fdf:	85 d2                	test   %edx,%edx
140075fe1:	75 ed                	jne    0x140075fd0
140075fe3:	49 8b c3             	mov    %r11,%rax
140075fe6:	eb 02                	jmp    0x140075fea
140075fe8:	33 c0                	xor    %eax,%eax
140075fea:	48 81 c4 20 02 00 00 	add    $0x220,%rsp
140075ff1:	41 5f                	pop    %r15
140075ff3:	41 5e                	pop    %r14
140075ff5:	41 5c                	pop    %r12
140075ff7:	5f                   	pop    %rdi
140075ff8:	5e                   	pop    %rsi
140075ff9:	5d                   	pop    %rbp
140075ffa:	5b                   	pop    %rbx
140075ffb:	c3                   	ret
140075ffc:	48 83 ec 38          	sub    $0x38,%rsp
140076000:	80 79 08 00          	cmpb   $0x0,0x8(%rcx)
140076004:	74 08                	je     0x14007600e
140076006:	48 8b 01             	mov    (%rcx),%rax
140076009:	48 83 c4 38          	add    $0x38,%rsp
14007600d:	c3                   	ret
14007600e:	48 83 64 24 20 00    	andq   $0x0,0x20(%rsp)
140076014:	4c 8d 05 45 18 06 00 	lea    0x61845(%rip),%r8        # 0x1400d7860
14007601b:	41 b9 db 01 00 00    	mov    $0x1db,%r9d
140076021:	48 8d 15 a8 18 06 00 	lea    0x618a8(%rip),%rdx        # 0x1400d78d0
140076028:	48 8d 0d 01 19 06 00 	lea    0x61901(%rip),%rcx        # 0x1400d7930
14007602f:	e8 d0 87 01 00       	call   0x14008e804
140076034:	cc                   	int3
140076035:	cc                   	int3
140076036:	cc                   	int3
140076037:	cc                   	int3
140076038:	48 83 ec 38          	sub    $0x38,%rsp
14007603c:	80 79 08 00          	cmpb   $0x0,0x8(%rcx)
140076040:	75 08                	jne    0x14007604a
140076042:	48 8b 01             	mov    (%rcx),%rax
140076045:	48 83 c4 38          	add    $0x38,%rsp
140076049:	c3                   	ret
14007604a:	48 83 64 24 20 00    	andq   $0x0,0x20(%rsp)
140076050:	4c 8d 05 09 18 06 00 	lea    0x61809(%rip),%r8        # 0x1400d7860
140076057:	41 b9 e1 01 00 00    	mov    $0x1e1,%r9d
14007605d:	48 8d 15 ec 18 06 00 	lea    0x618ec(%rip),%rdx        # 0x1400d7950
140076064:	48 8d 0d 45 19 06 00 	lea    0x61945(%rip),%rcx        # 0x1400d79b0
14007606b:	e8 94 87 01 00       	call   0x14008e804
140076070:	cc                   	int3
140076071:	cc                   	int3
140076072:	cc                   	int3
140076073:	cc                   	int3
140076074:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
140076079:	89 54 24 10          	mov    %edx,0x10(%rsp)
14007607d:	55                   	push   %rbp
14007607e:	56                   	push   %rsi
14007607f:	57                   	push   %rdi
140076080:	41 54                	push   %r12
140076082:	41 55                	push   %r13
140076084:	41 56                	push   %r14
140076086:	41 57                	push   %r15
140076088:	48 83 ec 30          	sub    $0x30,%rsp
14007608c:	83 64 24 70 00       	andl   $0x0,0x70(%rsp)
140076091:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
140076096:	41 0f b6 f0          	movzbl %r8b,%esi
14007609a:	45 8a d9             	mov    %r9b,%r11b
14007609d:	44 8b fa             	mov    %edx,%r15d
1400760a0:	48 8b d9             	mov    %rcx,%rbx
1400760a3:	48 3b c8             	cmp    %rax,%rcx
1400760a6:	76 17                	jbe    0x1400760bf
1400760a8:	48 8b c1             	mov    %rcx,%rax
1400760ab:	48 c1 e8 20          	shr    $0x20,%rax
1400760af:	0f bd c8             	bsr    %eax,%ecx
1400760b2:	74 04                	je     0x1400760b8
1400760b4:	ff c1                	inc    %ecx
1400760b6:	eb 02                	jmp    0x1400760ba
1400760b8:	33 c9                	xor    %ecx,%ecx
1400760ba:	83 c1 20             	add    $0x20,%ecx
1400760bd:	eb 0b                	jmp    0x1400760ca
1400760bf:	0f bd cb             	bsr    %ebx,%ecx
1400760c2:	74 04                	je     0x1400760c8
1400760c4:	ff c1                	inc    %ecx
1400760c6:	eb 02                	jmp    0x1400760ca
1400760c8:	33 c9                	xor    %ecx,%ecx
1400760ca:	4c 8b 94 24 90 00 00 	mov    0x90(%rsp),%r10
1400760d1:	00
1400760d2:	41 8b ff             	mov    %r15d,%edi
1400760d5:	41 8a 52 08          	mov    0x8(%r10),%dl
1400760d9:	8a c2                	mov    %dl,%al
1400760db:	f6 d8                	neg    %al
1400760dd:	8a c2                	mov    %dl,%al
1400760df:	1b ed                	sbb    %ebp,%ebp
1400760e1:	83 e5 1d             	and    $0x1d,%ebp
1400760e4:	83 c5 18             	add    $0x18,%ebp
1400760e7:	2b e9                	sub    %ecx,%ebp
1400760e9:	2b fd                	sub    %ebp,%edi
1400760eb:	f6 d8                	neg    %al
1400760ed:	45 1b c0             	sbb    %r8d,%r8d
1400760f0:	41 81 e0 80 03 00 00 	and    $0x380,%r8d
1400760f7:	41 83 c0 7f          	add    $0x7f,%r8d
1400760fb:	41 3b f8             	cmp    %r8d,%edi
1400760fe:	0f 8f 6a 02 00 00    	jg     0x14007636e
140076104:	8a c2                	mov    %dl,%al
140076106:	49 bc 00 00 80 ff ff 	movabs $0xfffffff800000,%r12
14007610d:	ff 0f 00
140076110:	f6 d8                	neg    %al
140076112:	1b c9                	sbb    %ecx,%ecx
140076114:	81 e1 80 fc ff ff    	and    $0xfffffc80,%ecx
14007611a:	83 c1 82             	add    $0xffffff82,%ecx
14007611d:	3b f9                	cmp    %ecx,%edi
14007611f:	0f 8d 51 01 00 00    	jge    0x140076276
140076125:	45 8d 4f ff          	lea    -0x1(%r15),%r9d
140076129:	41 8b f8             	mov    %r8d,%edi
14007612c:	45 03 c8             	add    %r8d,%r9d
14007612f:	f7 df                	neg    %edi
140076131:	44 89 4c 24 70       	mov    %r9d,0x70(%rsp)
140076136:	45 85 c9             	test   %r9d,%r9d
140076139:	0f 89 2f 01 00 00    	jns    0x14007626e
14007613f:	45 8b e9             	mov    %r9d,%r13d
140076142:	41 be 01 00 00 00    	mov    $0x1,%r14d
140076148:	41 f7 dd             	neg    %r13d
14007614b:	41 83 fd 40          	cmp    $0x40,%r13d
14007614f:	72 07                	jb     0x140076158
140076151:	33 db                	xor    %ebx,%ebx
140076153:	e9 bf 00 00 00       	jmp    0x140076217
140076158:	41 8b cd             	mov    %r13d,%ecx
14007615b:	49 8b c6             	mov    %r14,%rax
14007615e:	48 d3 e0             	shl    %cl,%rax
140076161:	41 8d 4d ff          	lea    -0x1(%r13),%ecx
140076165:	48 23 c3             	and    %rbx,%rax
140076168:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
14007616d:	49 8b c6             	mov    %r14,%rax
140076170:	48 d3 e0             	shl    %cl,%rax
140076173:	4c 8b e0             	mov    %rax,%r12
140076176:	4c 23 e3             	and    %rbx,%r12
140076179:	45 84 db             	test   %r11b,%r11b
14007617c:	74 0d                	je     0x14007618b
14007617e:	48 ff c8             	dec    %rax
140076181:	48 85 c3             	test   %rax,%rbx
140076184:	75 05                	jne    0x14007618b
140076186:	45 32 ff             	xor    %r15b,%r15b
140076189:	eb 03                	jmp    0x14007618e
14007618b:	45 8a fe             	mov    %r14b,%r15b
14007618e:	4d 85 e4             	test   %r12,%r12
140076191:	75 05                	jne    0x140076198
140076193:	45 84 ff             	test   %r15b,%r15b
140076196:	74 62                	je     0x1400761fa
140076198:	e8 67 9d 01 00       	call   0x14008ff04
14007619d:	85 c0                	test   %eax,%eax
14007619f:	74 28                	je     0x1400761c9
1400761a1:	3d 00 01 00 00       	cmp    $0x100,%eax
1400761a6:	74 1c                	je     0x1400761c4
1400761a8:	44 8b 4c 24 70       	mov    0x70(%rsp),%r9d
1400761ad:	4c 8b 94 24 90 00 00 	mov    0x90(%rsp),%r10
1400761b4:	00
1400761b5:	3d 00 02 00 00       	cmp    $0x200,%eax
1400761ba:	75 3e                	jne    0x1400761fa
1400761bc:	40 8a c6             	mov    %sil,%al
1400761bf:	41 32 c6             	xor    %r14b,%al
1400761c2:	eb 38                	jmp    0x1400761fc
1400761c4:	40 8a c6             	mov    %sil,%al
1400761c7:	eb 15                	jmp    0x1400761de
1400761c9:	4d 85 e4             	test   %r12,%r12
1400761cc:	74 1f                	je     0x1400761ed
1400761ce:	45 84 ff             	test   %r15b,%r15b
1400761d1:	75 08                	jne    0x1400761db
1400761d3:	48 83 7c 24 20 00    	cmpq   $0x0,0x20(%rsp)
1400761d9:	74 12                	je     0x1400761ed
1400761db:	41 8a c6             	mov    %r14b,%al
1400761de:	44 8b 4c 24 70       	mov    0x70(%rsp),%r9d
1400761e3:	4c 8b 94 24 90 00 00 	mov    0x90(%rsp),%r10
1400761ea:	00
1400761eb:	eb 0f                	jmp    0x1400761fc
1400761ed:	44 8b 4c 24 70       	mov    0x70(%rsp),%r9d
1400761f2:	4c 8b 94 24 90 00 00 	mov    0x90(%rsp),%r10
1400761f9:	00
1400761fa:	32 c0                	xor    %al,%al
1400761fc:	44 8b 7c 24 78       	mov    0x78(%rsp),%r15d
140076201:	41 8b cd             	mov    %r13d,%ecx
140076204:	48 d3 eb             	shr    %cl,%rbx
140076207:	49 bc 00 00 80 ff ff 	movabs $0xfffffff800000,%r12