180070e0e:	41 8b c9             	mov    %r9d,%ecx
180070e11:	48 03 4d 70          	add    0x70(%rbp),%rcx
180070e15:	89 5d c8             	mov    %ebx,-0x38(%rbp)
180070e18:	e8 a3 4b 0c 00       	call   0x1801359c0
180070e1d:	8b 4d cc             	mov    -0x34(%rbp),%ecx
180070e20:	48 01 5d 60          	add    %rbx,0x60(%rbp)
180070e24:	03 cb                	add    %ebx,%ecx
180070e26:	89 4d cc             	mov    %ecx,-0x34(%rbp)
180070e29:	3b 4d 68             	cmp    0x68(%rbp),%ecx
180070e2c:	73 12                	jae    0x180070e40
180070e2e:	4c 8b 6d 48          	mov    0x48(%rbp),%r13
180070e32:	48 8b 5d 60          	mov    0x60(%rbp),%rbx
180070e36:	e9 aa fe ff ff       	jmp    0x180070ce5
180070e3b:	bf 0d 00 00 c0       	mov    $0xc000000d,%edi
180070e40:	49 8b ce             	mov    %r14,%rcx
180070e43:	e8 b4 91 02 00       	call   0x180099ffc
180070e48:	4d 85 ff             	test   %r15,%r15
180070e4b:	74 08                	je     0x180070e55
180070e4d:	49 8b cf             	mov    %r15,%rcx
180070e50:	e8 a7 91 02 00       	call   0x180099ffc
180070e55:	8b c7                	mov    %edi,%eax
180070e57:	48 83 c4 78          	add    $0x78,%rsp
180070e5b:	41 5f                	pop    %r15
180070e5d:	41 5e                	pop    %r14
180070e5f:	41 5d                	pop    %r13
180070e61:	41 5c                	pop    %r12
180070e63:	5f                   	pop    %rdi
180070e64:	5e                   	pop    %rsi
180070e65:	5b                   	pop    %rbx
180070e66:	5d                   	pop    %rbp
180070e67:	c3                   	ret
180070e68:	cc                   	int3
180070e69:	cc                   	int3
180070e6a:	cc                   	int3
180070e6b:	cc                   	int3
180070e6c:	40 55                	rex push %rbp
180070e6e:	53                   	push   %rbx
180070e6f:	56                   	push   %rsi
180070e70:	57                   	push   %rdi
180070e71:	41 54                	push   %r12
180070e73:	41 55                	push   %r13
180070e75:	41 56                	push   %r14
180070e77:	41 57                	push   %r15
180070e79:	48 8b ec             	mov    %rsp,%rbp
180070e7c:	48 83 ec 78          	sub    $0x78,%rsp
180070e80:	ff 41 78             	incl   0x78(%rcx)
180070e83:	4d 8b e9             	mov    %r9,%r13
180070e86:	0f be 41 0a          	movsbl 0xa(%rcx),%eax
180070e8a:	45 33 c9             	xor    %r9d,%r9d
180070e8d:	4c 89 4d 50          	mov    %r9,0x50(%rbp)
180070e91:	49 8b f8             	mov    %r8,%rdi
180070e94:	48 8b f1             	mov    %rcx,%rsi
180070e97:	3c 80                	cmp    $0x80,%al
180070e99:	77 06                	ja     0x180070ea1
180070e9b:	44 0f b6 c0          	movzbl %al,%r8d
180070e9f:	eb 0d                	jmp    0x180070eae
180070ea1:	8b c8                	mov    %eax,%ecx
180070ea3:	41 b8 01 00 00 00    	mov    $0x1,%r8d
180070ea9:	f7 d9                	neg    %ecx
180070eab:	41 d3 e0             	shl    %cl,%r8d
180070eae:	0f b7 46 08          	movzwl 0x8(%rsi),%eax
180070eb2:	8b 5a 08             	mov    0x8(%rdx),%ebx
180070eb5:	44 0f af c0          	imul   %eax,%r8d
180070eb9:	48 03 df             	add    %rdi,%rbx
180070ebc:	48 8b 43 10          	mov    0x10(%rbx),%rax
180070ec0:	49 0f af c0          	imul   %r8,%rax
180070ec4:	4c 89 45 58          	mov    %r8,0x58(%rbp)
180070ec8:	4c 3b e8             	cmp    %rax,%r13
180070ecb:	7c 14                	jl     0x180070ee1
180070ecd:	48 8b 43 18          	mov    0x18(%rbx),%rax
180070ed1:	48 ff c0             	inc    %rax
180070ed4:	49 0f af c0          	imul   %r8,%rax
180070ed8:	49 3b c5             	cmp    %r13,%rax
180070edb:	0f 8f c6 00 00 00    	jg     0x180070fa7
180070ee1:	48 8b 47 20          	mov    0x20(%rdi),%rax
180070ee5:	48 85 c0             	test   %rax,%rax
180070ee8:	74 31                	je     0x180070f1b
180070eea:	48 89 45 48          	mov    %rax,0x48(%rbp)
180070eee:	4c 8d 45 60          	lea    0x60(%rbp),%r8
180070ef2:	66 44 89 4d 4e       	mov    %r9w,0x4e(%rbp)
180070ef7:	48 8b ce             	mov    %rsi,%rcx
180070efa:	4c 8b 75 48          	mov    0x48(%rbp),%r14
180070efe:	49 8b d6             	mov    %r14,%rdx
180070f01:	e8 de 03 00 00       	call   0x1800712e4
180070f06:	45 33 c9             	xor    %r9d,%r9d
180070f09:	85 c0                	test   %eax,%eax
180070f0b:	0f 88 41 01 00 00    	js     0x180071052
180070f11:	48 8b 7d 60          	mov    0x60(%rbp),%rdi
180070f15:	4c 8b 45 58          	mov    0x58(%rbp),%r8
180070f19:	eb 03                	jmp    0x180070f1e
180070f1b:	4c 8b 32             	mov    (%rdx),%r14
180070f1e:	0f 10 05 53 e7 0d 00 	movups 0xde753(%rip),%xmm0        # 0x18014f678
180070f25:	f3 0f 7f 45 c8       	movdqu %xmm0,-0x38(%rbp)
180070f2a:	44 38 4b 09          	cmp    %r9b,0x9(%rbx)
180070f2e:	76 1a                	jbe    0x180070f4a
180070f30:	0f b7 43 0a          	movzwl 0xa(%rbx),%eax
180070f34:	48 03 c3             	add    %rbx,%rax
180070f37:	48 89 45 d0          	mov    %rax,-0x30(%rbp)
180070f3b:	0f b6 43 09          	movzbl 0x9(%rbx),%eax
180070f3f:	66 03 c0             	add    %ax,%ax
180070f42:	66 89 45 c8          	mov    %ax,-0x38(%rbp)
180070f46:	66 89 45 ca          	mov    %ax,-0x36(%rbp)
180070f4a:	44 8b 0b             	mov    (%rbx),%r9d
180070f4d:	48 8d 4d d8          	lea    -0x28(%rbp),%rcx
180070f51:	49 8b c5             	mov    %r13,%rax
180070f54:	48 89 4c 24 30       	mov    %rcx,0x30(%rsp)
180070f59:	48 99                	cqto
180070f5b:	48 8b ce             	mov    %rsi,%rcx
180070f5e:	49 f7 f8             	idiv   %r8
180070f61:	4d 8b c6             	mov    %r14,%r8
180070f64:	48 8b d7             	mov    %rdi,%rdx
180070f67:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
180070f6c:	48 8d 45 c8          	lea    -0x38(%rbp),%rax
180070f70:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
180070f75:	e8 12 f6 ff ff       	call   0x18007058c
180070f7a:	45 33 c9             	xor    %r9d,%r9d
180070f7d:	85 c0                	test   %eax,%eax
180070f7f:	0f 88 cd 00 00 00    	js     0x180071052
180070f85:	48 8b 55 d8          	mov    -0x28(%rbp),%rdx
180070f89:	49 3b d6             	cmp    %r14,%rdx
180070f8c:	74 13                	je     0x180070fa1
180070f8e:	4c 8d 45 50          	lea    0x50(%rbp),%r8
180070f92:	48 8b ce             	mov    %rsi,%rcx
180070f95:	e8 4a 03 00 00       	call   0x1800712e4
180070f9a:	48 8b 7d 50          	mov    0x50(%rbp),%rdi
180070f9e:	45 33 c9             	xor    %r9d,%r9d
180070fa1:	8b 5d e0             	mov    -0x20(%rbp),%ebx
180070fa4:	48 03 df             	add    %rdi,%rbx
180070fa7:	0f b7 7b 20          	movzwl 0x20(%rbx),%edi
180070fab:	4d 8b f1             	mov    %r9,%r14
180070fae:	4c 8b 63 10          	mov    0x10(%rbx),%r12
180070fb2:	48 03 fb             	add    %rbx,%rdi
180070fb5:	e9 89 00 00 00       	jmp    0x180071043
180070fba:	0f be d0             	movsbl %al,%edx
180070fbd:	48 ff c7             	inc    %rdi
180070fc0:	c0 f8 04             	sar    $0x4,%al
180070fc3:	83 e2 0f             	and    $0xf,%edx
180070fc6:	4c 89 65 50          	mov    %r12,0x50(%rbp)
180070fca:	44 0f be f8          	movsbl %al,%r15d
180070fce:	83 fa 08             	cmp    $0x8,%edx
180070fd1:	77 7a                	ja     0x18007104d
180070fd3:	41 83 ff 08          	cmp    $0x8,%r15d
180070fd7:	77 74                	ja     0x18007104d
180070fd9:	8d 42 ff             	lea    -0x1(%rdx),%eax
180070fdc:	44 38 0c 38          	cmp    %r9b,(%rax,%rdi,1)
180070fe0:	7c 6b                	jl     0x18007104d
180070fe2:	8b da                	mov    %edx,%ebx
180070fe4:	48 8d 4d 48          	lea    0x48(%rbp),%rcx
180070fe8:	44 8b c2             	mov    %edx,%r8d
180070feb:	48 8b d7             	mov    %rdi,%rdx
180070fee:	4c 89 4d 48          	mov    %r9,0x48(%rbp)
180070ff2:	e8 c9 49 0c 00       	call   0x1801359c0
180070ff7:	4c 03 65 48          	add    0x48(%rbp),%r12
180070ffb:	45 33 c9             	xor    %r9d,%r9d
180070ffe:	48 03 fb             	add    %rbx,%rdi
180071001:	45 85 ff             	test   %r15d,%r15d
180071004:	74 2d                	je     0x180071033
180071006:	41 8d 47 ff          	lea    -0x1(%r15),%eax
18007100a:	45 8b c7             	mov    %r15d,%r8d
18007100d:	48 0f be 04 38       	movsbq (%rax,%rdi,1),%rax
180071012:	48 8d 4d 48          	lea    0x48(%rbp),%rcx
180071016:	48 c1 f8 3f          	sar    $0x3f,%rax
18007101a:	48 8b d7             	mov    %rdi,%rdx
18007101d:	48 89 45 48          	mov    %rax,0x48(%rbp)
180071021:	41 8b df             	mov    %r15d,%ebx
180071024:	e8 97 49 0c 00       	call   0x1801359c0
180071029:	4c 03 75 48          	add    0x48(%rbp),%r14
18007102d:	48 03 fb             	add    %rbx,%rdi
180071030:	45 33 c9             	xor    %r9d,%r9d
180071033:	4c 8b 45 58          	mov    0x58(%rbp),%r8
180071037:	49 8b d0             	mov    %r8,%rdx
18007103a:	49 0f af d4          	imul   %r12,%rdx
18007103e:	4c 3b ea             	cmp    %rdx,%r13
180071041:	7c 24                	jl     0x180071067
180071043:	8a 07                	mov    (%rdi),%al
180071045:	84 c0                	test   %al,%al
180071047:	0f 85 6d ff ff ff    	jne    0x180070fba
18007104d:	b8 0d 00 00 c0       	mov    $0xc000000d,%eax
180071052:	ff 4e 78             	decl   0x78(%rsi)
180071055:	48 83 c4 78          	add    $0x78,%rsp
180071059:	41 5f                	pop    %r15
18007105b:	41 5e                	pop    %r14
18007105d:	41 5d                	pop    %r13
18007105f:	41 5c                	pop    %r12
180071061:	5f                   	pop    %rdi
180071062:	5e                   	pop    %rsi
180071063:	5b                   	pop    %rbx
180071064:	5d                   	pop    %rbp
180071065:	c3                   	ret
180071066:	cc                   	int3
180071067:	48 8b 45 70          	mov    0x70(%rbp),%rax
18007106b:	45 85 ff             	test   %r15d,%r15d
18007106e:	0f 94 c1             	sete   %cl
180071071:	88 08                	mov    %cl,(%rax)
180071073:	4c 2b 75 50          	sub    0x50(%rbp),%r14
180071077:	48 8b 45 68          	mov    0x68(%rbp),%rax
18007107b:	4d 0f af f0          	imul   %r8,%r14
18007107f:	4d 03 f5             	add    %r13,%r14
180071082:	4c 89 30             	mov    %r14,(%rax)
180071085:	49 2b d5             	sub    %r13,%rdx
180071088:	48 8b 45 78          	mov    0x78(%rbp),%rax
18007108c:	48 89 10             	mov    %rdx,(%rax)
18007108f:	41 8b c1             	mov    %r9d,%eax
180071092:	eb be                	jmp    0x180071052
180071094:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
180071099:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
18007109e:	48 89 7c 24 18       	mov    %rdi,0x18(%rsp)
1800710a3:	0f b7 59 04          	movzwl 0x4(%rcx),%ebx
1800710a7:	41 ba 01 00 00 00    	mov    $0x1,%r10d
1800710ad:	0f b7 71 06          	movzwl 0x6(%rcx),%esi
1800710b1:	48 03 d9             	add    %rcx,%rbx
1800710b4:	48 8b fa             	mov    %rdx,%rdi
1800710b7:	41 3b f2             	cmp    %r10d,%esi
1800710ba:	76 40                	jbe    0x1800710fc
1800710bc:	4c 8d 5b 02          	lea    0x2(%rbx),%r11
1800710c0:	41 8b c2             	mov    %r10d,%eax
1800710c3:	c1 e0 09             	shl    $0x9,%eax
1800710c6:	8b d0                	mov    %eax,%edx
1800710c8:	48 8d 48 fe          	lea    -0x2(%rax),%rcx
1800710cc:	4c 3b c9             	cmp    %rcx,%r9
1800710cf:	7f 1f                	jg     0x1800710f0
1800710d1:	41 8b c0             	mov    %r8d,%eax
1800710d4:	49 03 c1             	add    %r9,%rax
1800710d7:	48 3b d0             	cmp    %rax,%rdx
1800710da:	7f 14                	jg     0x1800710f0
1800710dc:	0f b7 03             	movzwl (%rbx),%eax
1800710df:	49 2b c9             	sub    %r9,%rcx
1800710e2:	66 39 04 39          	cmp    %ax,(%rcx,%rdi,1)
1800710e6:	75 27                	jne    0x18007110f
1800710e8:	41 0f b7 03          	movzwl (%r11),%eax
1800710ec:	66 89 04 39          	mov    %ax,(%rcx,%rdi,1)
1800710f0:	41 ff c2             	inc    %r10d
1800710f3:	49 83 c3 02          	add    $0x2,%r11
1800710f7:	44 3b d6             	cmp    %esi,%r10d
1800710fa:	72 c4                	jb     0x1800710c0
1800710fc:	33 c0                	xor    %eax,%eax
1800710fe:	48 8b 5c 24 08       	mov    0x8(%rsp),%rbx
180071103:	48 8b 74 24 10       	mov    0x10(%rsp),%rsi
180071108:	48 8b 7c 24 18       	mov    0x18(%rsp),%rdi
18007110d:	c3                   	ret
18007110e:	cc                   	int3
18007110f:	b8 01 00 00 c0       	mov    $0xc0000001,%eax
180071114:	eb e8                	jmp    0x1800710fe
180071116:	cc                   	int3
180071117:	cc                   	int3
180071118:	40 53                	rex push %rbx
18007111a:	48 83 ec 40          	sub    $0x40,%rsp
18007111e:	48 8b d9             	mov    %rcx,%rbx
180071121:	8b 49 60             	mov    0x60(%rcx),%ecx
180071124:	eb 1a                	jmp    0x180071140
180071126:	8b 4b 60             	mov    0x60(%rbx),%ecx
180071129:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
18007112e:	e8 9d 3f 02 00       	call   0x1800950d0
180071133:	48 8b 4c 24 28       	mov    0x28(%rsp),%rcx
180071138:	e8 bf 8e 02 00       	call   0x180099ffc
18007113d:	8b 4b 60             	mov    0x60(%rbx),%ecx
180071140:	4c 8d 4c 24 30       	lea    0x30(%rsp),%r9
180071145:	4c 8d 44 24 20       	lea    0x20(%rsp),%r8
18007114a:	e8 81 40 02 00       	call   0x1800951d0
18007114f:	85 c0                	test   %eax,%eax
180071151:	79 d3                	jns    0x180071126
180071153:	48 83 c4 40          	add    $0x40,%rsp
180071157:	5b                   	pop    %rbx
180071158:	c3                   	ret
180071159:	cc                   	int3
18007115a:	cc                   	int3
18007115b:	cc                   	int3
18007115c:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
180071161:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
180071166:	57                   	push   %rdi
180071167:	48 83 ec 40          	sub    $0x40,%rsp
18007116b:	48 8b d9             	mov    %rcx,%rbx
18007116e:	8b f2                	mov    %edx,%esi
180071170:	8b 49 60             	mov    0x60(%rcx),%ecx
180071173:	eb 17                	jmp    0x18007118c
180071175:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
18007117a:	e8 51 3f 02 00       	call   0x1800950d0
18007117f:	48 8b 4c 24 28       	mov    0x28(%rsp),%rcx
180071184:	e8 73 8e 02 00       	call   0x180099ffc
180071189:	8b 4b 60             	mov    0x60(%rbx),%ecx
18007118c:	4c 8d 4c 24 30       	lea    0x30(%rsp),%r9
180071191:	4c 8d 44 24 20       	lea    0x20(%rsp),%r8
180071196:	e8 35 40 02 00       	call   0x1800951d0
18007119b:	8b 4b 60             	mov    0x60(%rbx),%ecx
18007119e:	8b f8                	mov    %eax,%edi
1800711a0:	85 c0                	test   %eax,%eax
1800711a2:	79 d1                	jns    0x180071175
1800711a4:	e8 7f 3c 02 00       	call   0x180094e28
1800711a9:	48 8b cb             	mov    %rbx,%rcx
1800711ac:	e8 4b 8e 02 00       	call   0x180099ffc
1800711b1:	48 8b 05 78 39 13 00 	mov    0x133978(%rip),%rax        # 0x1801a4b30
1800711b8:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
1800711bd:	48 83 24 f0 00       	andq   $0x0,(%rax,%rsi,8)
1800711c2:	8b c7                	mov    %edi,%eax
1800711c4:	48 8b 74 24 58       	mov    0x58(%rsp),%rsi
1800711c9:	48 83 c4 40          	add    $0x40,%rsp
1800711cd:	5f                   	pop    %rdi
1800711ce:	c3                   	ret
1800711cf:	cc                   	int3
1800711d0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1800711d5:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
1800711da:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
1800711df:	57                   	push   %rdi
1800711e0:	41 56                	push   %r14
1800711e2:	41 57                	push   %r15
1800711e4:	48 81 ec 50 01 00 00 	sub    $0x150,%rsp
1800711eb:	4c 8b f2             	mov    %rdx,%r14
1800711ee:	48 8b d9             	mov    %rcx,%rbx
1800711f1:	8b 09                	mov    (%rcx),%ecx
1800711f3:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
1800711f8:	49 8b e8             	mov    %r8,%rbp
1800711fb:	e8 28 5b fb ff       	call   0x180026d28
180071200:	44 8b 7c 24 40       	mov    0x40(%rsp),%r15d
180071205:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
18007120a:	8b 0b                	mov    (%rbx),%ecx
18007120c:	41 8b c7             	mov    %r15d,%eax
18007120f:	be 01 00 00 00       	mov    $0x1,%esi
180071214:	0b c6                	or     %esi,%eax
180071216:	89 44 24 40          	mov    %eax,0x40(%rsp)
18007121a:	e8 71 5b fb ff       	call   0x180026d90
18007121f:	33 ff                	xor    %edi,%edi
180071221:	4d 85 f6             	test   %r14,%r14
180071224:	75 47                	jne    0x18007126d
180071226:	0f be 43 0a          	movsbl 0xa(%rbx),%eax
18007122a:	3c 80                	cmp    $0x80,%al
18007122c:	77 05                	ja     0x180071233
18007122e:	0f b6 f0             	movzbl %al,%esi
180071231:	eb 06                	jmp    0x180071239
180071233:	8b c8                	mov    %eax,%ecx
180071235:	f7 d9                	neg    %ecx
180071237:	d3 e6                	shl    %cl,%esi
180071239:	44 8b 4b 38          	mov    0x38(%rbx),%r9d
18007123d:	45 85 c9             	test   %r9d,%r9d
180071240:	75 07                	jne    0x180071249
180071242:	be 0d 00 00 c0       	mov    $0xc000000d,%esi
180071247:	eb 49                	jmp    0x180071292
180071249:	44 0f b7 43 08       	movzwl 0x8(%rbx),%r8d
18007124e:	48 8b cb             	mov    %rbx,%rcx
180071251:	8b 13                	mov    (%rbx),%edx
180071253:	44 0f af c6          	imul   %esi,%r8d
180071257:	48 89 7c 24 28       	mov    %rdi,0x28(%rsp)
18007125c:	48 89 6c 24 20       	mov    %rbp,0x20(%rsp)
180071261:	4c 0f af 43 30       	imul   0x30(%rbx),%r8
180071266:	e8 69 01 00 00       	call   0x1800713d4
18007126b:	eb 23                	jmp    0x180071290
18007126d:	8b 43 38             	mov    0x38(%rbx),%eax
180071270:	48 8d 53 40          	lea    0x40(%rbx),%rdx
180071274:	44 8b c0             	mov    %eax,%r8d
180071277:	40 88 74 24 28       	mov    %sil,0x28(%rsp)
18007127c:	4d 0f af c6          	imul   %r14,%r8