140040e4c:	49 8b 46 10          	mov    0x10(%r14),%rax
140040e50:	49 2b 46 08          	sub    0x8(%r14),%rax
140040e54:	48 c1 f8 03          	sar    $0x3,%rax
140040e58:	c6 45 c0 05          	movb   $0x5,-0x40(%rbp)
140040e5c:	89 45 d8             	mov    %eax,-0x28(%rbp)
140040e5f:	49 8b 8e a8 00 00 00 	mov    0xa8(%r14),%rcx
140040e66:	48 85 c9             	test   %rcx,%rcx
140040e69:	75 07                	jne    0x140040e72
140040e6b:	ff 15 67 e4 01 00    	call   *0x1e467(%rip)        # 0x14005f2d8
140040e71:	cc                   	int3
140040e72:	48 8b 01             	mov    (%rcx),%rax
140040e75:	4c 8d 4d c8          	lea    -0x38(%rbp),%r9
140040e79:	4c 8d 45 c0          	lea    -0x40(%rbp),%r8
140040e7d:	48 8d 55 d8          	lea    -0x28(%rbp),%rdx
140040e81:	ff 50 10             	call   *0x10(%rax)
140040e84:	84 c0                	test   %al,%al
140040e86:	75 1d                	jne    0x140040ea5
140040e88:	88 06                	mov    %al,(%rsi)
140040e8a:	48 c7 46 08 00 00 00 	movq   $0x0,0x8(%rsi)
140040e91:	00
140040e92:	0f b6 55 c8          	movzbl -0x38(%rbp),%edx
140040e96:	48 8d 4d d0          	lea    -0x30(%rbp),%rcx
140040e9a:	e8 21 55 ff ff       	call   0x1400363c0
140040e9f:	90                   	nop
140040ea0:	e9 ce 01 00 00       	jmp    0x140041073
140040ea5:	49 8b 4e 10          	mov    0x10(%r14),%rcx
140040ea9:	49 39 4e 08          	cmp    %rcx,0x8(%r14)
140040ead:	75 52                	jne    0x140040f01
140040eaf:	0f b6 45 c8          	movzbl -0x38(%rbp),%eax
140040eb3:	4c 8b 45 d0          	mov    -0x30(%rbp),%r8
140040eb7:	c6 45 c8 00          	movb   $0x0,-0x38(%rbp)
140040ebb:	48 c7 45 d0 00 00 00 	movq   $0x0,-0x30(%rbp)
140040ec2:	00
140040ec3:	49 8b 0e             	mov    (%r14),%rcx
140040ec6:	0f b6 11             	movzbl (%rcx),%edx
140040ec9:	88 01                	mov    %al,(%rcx)
140040ecb:	88 55 d8             	mov    %dl,-0x28(%rbp)
140040ece:	48 8b 41 08          	mov    0x8(%rcx),%rax
140040ed2:	4c 89 41 08          	mov    %r8,0x8(%rcx)
140040ed6:	48 89 45 e0          	mov    %rax,-0x20(%rbp)
140040eda:	48 8d 4d e0          	lea    -0x20(%rbp),%rcx
140040ede:	e8 dd 54 ff ff       	call   0x1400363c0
140040ee3:	90                   	nop
140040ee4:	49 8b 06             	mov    (%r14),%rax
140040ee7:	c6 06 01             	movb   $0x1,(%rsi)
140040eea:	48 89 46 08          	mov    %rax,0x8(%rsi)
140040eee:	0f b6 55 c8          	movzbl -0x38(%rbp),%edx
140040ef2:	48 8d 4d d0          	lea    -0x30(%rbp),%rcx
140040ef6:	e8 c5 54 ff ff       	call   0x1400363c0
140040efb:	90                   	nop
140040efc:	e9 72 01 00 00       	jmp    0x140041073
140040f01:	48 8b 49 f8          	mov    -0x8(%rcx),%rcx
140040f05:	48 85 c9             	test   %rcx,%rcx
140040f08:	75 19                	jne    0x140040f23
140040f0a:	88 0e                	mov    %cl,(%rsi)
140040f0c:	48 89 4e 08          	mov    %rcx,0x8(%rsi)
140040f10:	0f b6 55 c8          	movzbl -0x38(%rbp),%edx
140040f14:	48 8d 4d d0          	lea    -0x30(%rbp),%rcx
140040f18:	e8 a3 54 ff ff       	call   0x1400363c0
140040f1d:	90                   	nop
140040f1e:	e9 50 01 00 00       	jmp    0x140041073
140040f23:	80 39 02             	cmpb   $0x2,(%rcx)
140040f26:	75 66                	jne    0x140040f8e
140040f28:	48 8b 49 08          	mov    0x8(%rcx),%rcx
140040f2c:	48 8b 51 08          	mov    0x8(%rcx),%rdx
140040f30:	48 3b 51 10          	cmp    0x10(%rcx),%rdx
140040f34:	74 21                	je     0x140040f57
140040f36:	0f b6 45 c8          	movzbl -0x38(%rbp),%eax
140040f3a:	88 02                	mov    %al,(%rdx)
140040f3c:	48 8b 45 d0          	mov    -0x30(%rbp),%rax
140040f40:	48 89 42 08          	mov    %rax,0x8(%rdx)
140040f44:	c6 45 c8 00          	movb   $0x0,-0x38(%rbp)
140040f48:	48 c7 45 d0 00 00 00 	movq   $0x0,-0x30(%rbp)
140040f4f:	00
140040f50:	48 83 41 08 10       	addq   $0x10,0x8(%rcx)
140040f55:	eb 09                	jmp    0x140040f60
140040f57:	4c 8d 45 c8          	lea    -0x38(%rbp),%r8
140040f5b:	e8 00 af ff ff       	call   0x14003be60
140040f60:	49 8b 46 10          	mov    0x10(%r14),%rax
140040f64:	48 8b 40 f8          	mov    -0x8(%rax),%rax
140040f68:	48 8b 48 08          	mov    0x8(%rax),%rcx
140040f6c:	48 8b 41 08          	mov    0x8(%rcx),%rax
140040f70:	48 83 e8 10          	sub    $0x10,%rax
140040f74:	c6 06 01             	movb   $0x1,(%rsi)
140040f77:	48 89 46 08          	mov    %rax,0x8(%rsi)
140040f7b:	0f b6 55 c8          	movzbl -0x38(%rbp),%edx
140040f7f:	48 8d 4d d0          	lea    -0x30(%rbp),%rcx
140040f83:	e8 38 54 ff ff       	call   0x1400363c0
140040f88:	90                   	nop
140040f89:	e9 e5 00 00 00       	jmp    0x140041073
140040f8e:	49 8b 5e 40          	mov    0x40(%r14),%rbx
140040f92:	49 8b 4e 58          	mov    0x58(%r14),%rcx
140040f96:	48 85 c9             	test   %rcx,%rcx
140040f99:	79 1f                	jns    0x140040fba
140040f9b:	48 8b c1             	mov    %rcx,%rax
140040f9e:	48 f7 d8             	neg    %rax
140040fa1:	74 17                	je     0x140040fba
140040fa3:	48 8b c1             	mov    %rcx,%rax
140040fa6:	48 f7 d0             	not    %rax
140040fa9:	48 c1 e8 05          	shr    $0x5,%rax
140040fad:	48 8d 04 85 04 00 00 	lea    0x4(,%rax,4),%rax
140040fb4:	00
140040fb5:	48 2b d8             	sub    %rax,%rbx
140040fb8:	eb 0b                	jmp    0x140040fc5
140040fba:	48 8b c1             	mov    %rcx,%rax
140040fbd:	48 c1 e8 05          	shr    $0x5,%rax
140040fc1:	48 8d 1c 83          	lea    (%rbx,%rax,4),%rbx
140040fc5:	83 e1 1f             	and    $0x1f,%ecx
140040fc8:	48 8d 51 ff          	lea    -0x1(%rcx),%rdx
140040fcc:	48 8b c2             	mov    %rdx,%rax
140040fcf:	48 83 f9 01          	cmp    $0x1,%rcx
140040fd3:	73 14                	jae    0x140040fe9
140040fd5:	48 f7 d0             	not    %rax
140040fd8:	48 c1 e8 05          	shr    $0x5,%rax
140040fdc:	48 8d 04 85 04 00 00 	lea    0x4(,%rax,4),%rax
140040fe3:	00
140040fe4:	48 2b d8             	sub    %rax,%rbx
140040fe7:	eb 08                	jmp    0x140040ff1
140040fe9:	48 c1 e8 05          	shr    $0x5,%rax
140040fed:	48 8d 1c 83          	lea    (%rbx,%rax,4),%rbx
140040ff1:	0f b6 c2             	movzbl %dl,%eax
140040ff4:	24 1f                	and    $0x1f,%al
140040ff6:	0f b6 f8             	movzbl %al,%edi
140040ff9:	8b 1b                	mov    (%rbx),%ebx
140040ffb:	49 8d 4e 40          	lea    0x40(%r14),%rcx
140040fff:	e8 ac de ff ff       	call   0x14003eeb0
140041004:	0f a3 fb             	bt     %edi,%ebx
140041007:	72 1b                	jb     0x140041024
140041009:	c6 06 00             	movb   $0x0,(%rsi)
14004100c:	48 c7 46 08 00 00 00 	movq   $0x0,0x8(%rsi)
140041013:	00
140041014:	0f b6 55 c8          	movzbl -0x38(%rbp),%edx
140041018:	48 8d 4d d0          	lea    -0x30(%rbp),%rcx
14004101c:	e8 9f 53 ff ff       	call   0x1400363c0
140041021:	90                   	nop
140041022:	eb 4f                	jmp    0x140041073
140041024:	0f b6 45 c8          	movzbl -0x38(%rbp),%eax
140041028:	4c 8b 45 d0          	mov    -0x30(%rbp),%r8
14004102c:	c6 45 c8 00          	movb   $0x0,-0x38(%rbp)
140041030:	48 c7 45 d0 00 00 00 	movq   $0x0,-0x30(%rbp)
140041037:	00
140041038:	49 8b 4e 60          	mov    0x60(%r14),%rcx
14004103c:	0f b6 11             	movzbl (%rcx),%edx
14004103f:	88 01                	mov    %al,(%rcx)
140041041:	88 55 d8             	mov    %dl,-0x28(%rbp)
140041044:	48 8b 41 08          	mov    0x8(%rcx),%rax
140041048:	4c 89 41 08          	mov    %r8,0x8(%rcx)
14004104c:	48 89 45 e0          	mov    %rax,-0x20(%rbp)
140041050:	48 8d 4d e0          	lea    -0x20(%rbp),%rcx
140041054:	e8 67 53 ff ff       	call   0x1400363c0
140041059:	90                   	nop
14004105a:	c6 06 01             	movb   $0x1,(%rsi)
14004105d:	49 8b 46 60          	mov    0x60(%r14),%rax
140041061:	48 89 46 08          	mov    %rax,0x8(%rsi)
140041065:	0f b6 55 c8          	movzbl -0x38(%rbp),%edx
140041069:	48 8d 4d d0          	lea    -0x30(%rbp),%rcx
14004106d:	e8 4e 53 ff ff       	call   0x1400363c0
140041072:	90                   	nop
140041073:	48 8b c6             	mov    %rsi,%rax
140041076:	48 8b 4d e8          	mov    -0x18(%rbp),%rcx
14004107a:	48 33 cc             	xor    %rsp,%rcx
14004107d:	e8 7e 87 01 00       	call   0x140059800
140041082:	4c 8d 5c 24 60       	lea    0x60(%rsp),%r11
140041087:	49 8b 5b 30          	mov    0x30(%r11),%rbx
14004108b:	49 8b 73 38          	mov    0x38(%r11),%rsi
14004108f:	0f 28 74 24 50       	movaps 0x50(%rsp),%xmm6
140041094:	49 8b e3             	mov    %r11,%rsp
140041097:	41 5e                	pop    %r14
140041099:	5f                   	pop    %rdi
14004109a:	5d                   	pop    %rbp
14004109b:	c3                   	ret
14004109c:	cc                   	int3
14004109d:	cc                   	int3
14004109e:	cc                   	int3
14004109f:	cc                   	int3
1400410a0:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
1400410a5:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
1400410aa:	55                   	push   %rbp
1400410ab:	57                   	push   %rdi
1400410ac:	41 56                	push   %r14
1400410ae:	48 8b ec             	mov    %rsp,%rbp
1400410b1:	48 83 ec 50          	sub    $0x50,%rsp
1400410b5:	48 8b 05 84 6f 03 00 	mov    0x36f84(%rip),%rax        # 0x140078040
1400410bc:	48 33 c4             	xor    %rsp,%rax
1400410bf:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
1400410c3:	49 8b d8             	mov    %r8,%rbx
1400410c6:	48 8b f2             	mov    %rdx,%rsi
1400410c9:	4c 8b f1             	mov    %rcx,%r14
1400410cc:	4c 8b 49 20          	mov    0x20(%rcx),%r9
1400410d0:	48 8b 51 38          	mov    0x38(%rcx),%rdx
1400410d4:	48 85 d2             	test   %rdx,%rdx
1400410d7:	79 1f                	jns    0x1400410f8
1400410d9:	48 8b c2             	mov    %rdx,%rax
1400410dc:	48 f7 d8             	neg    %rax
1400410df:	74 17                	je     0x1400410f8
1400410e1:	48 8b c2             	mov    %rdx,%rax
1400410e4:	48 f7 d0             	not    %rax
1400410e7:	48 c1 e8 05          	shr    $0x5,%rax
1400410eb:	48 8d 04 85 04 00 00 	lea    0x4(,%rax,4),%rax
1400410f2:	00
1400410f3:	4c 2b c8             	sub    %rax,%r9
1400410f6:	eb 0b                	jmp    0x140041103
1400410f8:	48 8b c2             	mov    %rdx,%rax
1400410fb:	48 c1 e8 05          	shr    $0x5,%rax
1400410ff:	4d 8d 0c 81          	lea    (%r9,%rax,4),%r9
140041103:	83 e2 1f             	and    $0x1f,%edx
140041106:	4c 8d 42 ff          	lea    -0x1(%rdx),%r8
14004110a:	48 83 fa 01          	cmp    $0x1,%rdx
14004110e:	73 17                	jae    0x140041127
140041110:	49 8b c0             	mov    %r8,%rax
140041113:	48 f7 d0             	not    %rax
140041116:	48 c1 e8 05          	shr    $0x5,%rax
14004111a:	48 8d 04 85 04 00 00 	lea    0x4(,%rax,4),%rax
140041121:	00
140041122:	4c 2b c8             	sub    %rax,%r9
140041125:	eb 0b                	jmp    0x140041132
140041127:	49 8b c8             	mov    %r8,%rcx
14004112a:	48 c1 e9 05          	shr    $0x5,%rcx
14004112e:	4d 8d 0c 89          	lea    (%r9,%rcx,4),%r9
140041132:	41 0f b6 c8          	movzbl %r8b,%ecx
140041136:	80 e1 1f             	and    $0x1f,%cl
140041139:	0f b6 d1             	movzbl %cl,%edx
14004113c:	41 8b 09             	mov    (%r9),%ecx
14004113f:	0f a3 d1             	bt     %edx,%ecx
140041142:	72 10                	jb     0x140041154
140041144:	c6 06 00             	movb   $0x0,(%rsi)
140041147:	48 c7 46 08 00 00 00 	movq   $0x0,0x8(%rsi)
14004114e:	00
14004114f:	e9 47 02 00 00       	jmp    0x14004139b
140041154:	c6 45 d8 00          	movb   $0x0,-0x28(%rbp)
140041158:	33 c0                	xor    %eax,%eax
14004115a:	48 89 45 e0          	mov    %rax,-0x20(%rbp)
14004115e:	48 8b 1b             	mov    (%rbx),%rbx
140041161:	33 d2                	xor    %edx,%edx
140041163:	48 8d 4d e0          	lea    -0x20(%rbp),%rcx
140041167:	e8 54 52 ff ff       	call   0x1400363c0
14004116c:	c6 45 d8 06          	movb   $0x6,-0x28(%rbp)
140041170:	48 89 5d e0          	mov    %rbx,-0x20(%rbp)
140041174:	49 8b 46 10          	mov    0x10(%r14),%rax
140041178:	49 2b 46 08          	sub    0x8(%r14),%rax
14004117c:	48 c1 f8 03          	sar    $0x3,%rax
140041180:	c6 45 d0 05          	movb   $0x5,-0x30(%rbp)
140041184:	89 45 e8             	mov    %eax,-0x18(%rbp)
140041187:	49 8b 8e a8 00 00 00 	mov    0xa8(%r14),%rcx
14004118e:	48 85 c9             	test   %rcx,%rcx
140041191:	75 07                	jne    0x14004119a
140041193:	ff 15 3f e1 01 00    	call   *0x1e13f(%rip)        # 0x14005f2d8
140041199:	cc                   	int3
14004119a:	48 8b 01             	mov    (%rcx),%rax
14004119d:	4c 8d 4d d8          	lea    -0x28(%rbp),%r9
1400411a1:	4c 8d 45 d0          	lea    -0x30(%rbp),%r8
1400411a5:	48 8d 55 e8          	lea    -0x18(%rbp),%rdx
1400411a9:	ff 50 10             	call   *0x10(%rax)
1400411ac:	84 c0                	test   %al,%al
1400411ae:	75 1d                	jne    0x1400411cd
1400411b0:	88 06                	mov    %al,(%rsi)
1400411b2:	48 c7 46 08 00 00 00 	movq   $0x0,0x8(%rsi)
1400411b9:	00
1400411ba:	0f b6 55 d8          	movzbl -0x28(%rbp),%edx
1400411be:	48 8d 4d e0          	lea    -0x20(%rbp),%rcx
1400411c2:	e8 f9 51 ff ff       	call   0x1400363c0
1400411c7:	90                   	nop
1400411c8:	e9 ce 01 00 00       	jmp    0x14004139b
1400411cd:	49 8b 4e 10          	mov    0x10(%r14),%rcx
1400411d1:	49 39 4e 08          	cmp    %rcx,0x8(%r14)
1400411d5:	75 52                	jne    0x140041229
1400411d7:	0f b6 45 d8          	movzbl -0x28(%rbp),%eax
1400411db:	4c 8b 45 e0          	mov    -0x20(%rbp),%r8
1400411df:	c6 45 d8 00          	movb   $0x0,-0x28(%rbp)
1400411e3:	48 c7 45 e0 00 00 00 	movq   $0x0,-0x20(%rbp)
1400411ea:	00
1400411eb:	49 8b 0e             	mov    (%r14),%rcx
1400411ee:	0f b6 11             	movzbl (%rcx),%edx
1400411f1:	88 01                	mov    %al,(%rcx)
1400411f3:	88 55 e8             	mov    %dl,-0x18(%rbp)
1400411f6:	48 8b 41 08          	mov    0x8(%rcx),%rax
1400411fa:	4c 89 41 08          	mov    %r8,0x8(%rcx)
1400411fe:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
140041202:	48 8d 4d f0          	lea    -0x10(%rbp),%rcx
140041206:	e8 b5 51 ff ff       	call   0x1400363c0
14004120b:	90                   	nop
14004120c:	49 8b 06             	mov    (%r14),%rax
14004120f:	c6 06 01             	movb   $0x1,(%rsi)
140041212:	48 89 46 08          	mov    %rax,0x8(%rsi)
140041216:	0f b6 55 d8          	movzbl -0x28(%rbp),%edx
14004121a:	48 8d 4d e0          	lea    -0x20(%rbp),%rcx
14004121e:	e8 9d 51 ff ff       	call   0x1400363c0
140041223:	90                   	nop
140041224:	e9 72 01 00 00       	jmp    0x14004139b
140041229:	48 8b 49 f8          	mov    -0x8(%rcx),%rcx
14004122d:	48 85 c9             	test   %rcx,%rcx
140041230:	75 19                	jne    0x14004124b
140041232:	88 0e                	mov    %cl,(%rsi)
140041234:	48 89 4e 08          	mov    %rcx,0x8(%rsi)
140041238:	0f b6 55 d8          	movzbl -0x28(%rbp),%edx
14004123c:	48 8d 4d e0          	lea    -0x20(%rbp),%rcx
140041240:	e8 7b 51 ff ff       	call   0x1400363c0
140041245:	90                   	nop
140041246:	e9 50 01 00 00       	jmp    0x14004139b
14004124b:	80 39 02             	cmpb   $0x2,(%rcx)
14004124e:	75 66                	jne    0x1400412b6
140041250:	48 8b 49 08          	mov    0x8(%rcx),%rcx
140041254:	48 8b 51 08          	mov    0x8(%rcx),%rdx
140041258:	48 3b 51 10          	cmp    0x10(%rcx),%rdx
14004125c:	74 21                	je     0x14004127f
14004125e:	0f b6 45 d8          	movzbl -0x28(%rbp),%eax
140041262:	88 02                	mov    %al,(%rdx)
140041264:	48 8b 45 e0          	mov    -0x20(%rbp),%rax
140041268:	48 89 42 08          	mov    %rax,0x8(%rdx)
14004126c:	c6 45 d8 00          	movb   $0x0,-0x28(%rbp)
140041270:	48 c7 45 e0 00 00 00 	movq   $0x0,-0x20(%rbp)
140041277:	00
140041278:	48 83 41 08 10       	addq   $0x10,0x8(%rcx)
14004127d:	eb 09                	jmp    0x140041288
14004127f:	4c 8d 45 d8          	lea    -0x28(%rbp),%r8
140041283:	e8 d8 ab ff ff       	call   0x14003be60
140041288:	49 8b 46 10          	mov    0x10(%r14),%rax
14004128c:	48 8b 40 f8          	mov    -0x8(%rax),%rax
140041290:	48 8b 48 08          	mov    0x8(%rax),%rcx
140041294:	48 8b 41 08          	mov    0x8(%rcx),%rax
140041298:	48 83 e8 10          	sub    $0x10,%rax
14004129c:	c6 06 01             	movb   $0x1,(%rsi)
14004129f:	48 89 46 08          	mov    %rax,0x8(%rsi)
1400412a3:	0f b6 55 d8          	movzbl -0x28(%rbp),%edx
1400412a7:	48 8d 4d e0          	lea    -0x20(%rbp),%rcx
1400412ab:	e8 10 51 ff ff       	call   0x1400363c0
1400412b0:	90                   	nop
1400412b1:	e9 e5 00 00 00       	jmp    0x14004139b
1400412b6:	49 8b 5e 40          	mov    0x40(%r14),%rbx
1400412ba:	49 8b 4e 58          	mov    0x58(%r14),%rcx
1400412be:	48 85 c9             	test   %rcx,%rcx
1400412c1:	79 1f                	jns    0x1400412e2
1400412c3:	48 8b c1             	mov    %rcx,%rax
1400412c6:	48 f7 d8             	neg    %rax
1400412c9:	74 17                	je     0x1400412e2
1400412cb:	48 8b c1             	mov    %rcx,%rax
1400412ce:	48 f7 d0             	not    %rax
1400412d1:	48 c1 e8 05          	shr    $0x5,%rax
1400412d5:	48 8d 04 85 04 00 00 	lea    0x4(,%rax,4),%rax
1400412dc:	00
1400412dd:	48 2b d8             	sub    %rax,%rbx
1400412e0:	eb 0b                	jmp    0x1400412ed
1400412e2:	48 8b c1             	mov    %rcx,%rax
1400412e5:	48 c1 e8 05          	shr    $0x5,%rax
1400412e9:	48 8d 1c 83          	lea    (%rbx,%rax,4),%rbx
1400412ed:	83 e1 1f             	and    $0x1f,%ecx
1400412f0:	48 8d 51 ff          	lea    -0x1(%rcx),%rdx
1400412f4:	48 8b c2             	mov    %rdx,%rax
1400412f7:	48 83 f9 01          	cmp    $0x1,%rcx
1400412fb:	73 14                	jae    0x140041311