140163e49:	4a 89 44 01 08       	mov    %rax,0x8(%rcx,%r8,1)
140163e4e:	49 8b c0             	mov    %r8,%rax
140163e51:	c3                   	ret
140163e52:	cc                   	int3
140163e53:	cc                   	int3
140163e54:	cc                   	int3
140163e55:	cc                   	int3
140163e56:	cc                   	int3
140163e57:	cc                   	int3
140163e58:	cc                   	int3
140163e59:	cc                   	int3
140163e5a:	cc                   	int3
140163e5b:	cc                   	int3
140163e5c:	cc                   	int3
140163e5d:	cc                   	int3
140163e5e:	cc                   	int3
140163e5f:	cc                   	int3
140163e60:	40 53                	rex push %rbx
140163e62:	48 83 ec 20          	sub    $0x20,%rsp
140163e66:	4c 8b 41 f0          	mov    -0x10(%rcx),%r8
140163e6a:	48 8d 05 af 99 0b 00 	lea    0xb99af(%rip),%rax        # 0x14021d820
140163e71:	48 89 41 e8          	mov    %rax,-0x18(%rcx)
140163e75:	48 8d 05 dc 99 0b 00 	lea    0xb99dc(%rip),%rax        # 0x14021d858
140163e7c:	48 8d 59 e8          	lea    -0x18(%rcx),%rbx
140163e80:	4d 63 48 04          	movslq 0x4(%r8),%r9
140163e84:	49 89 44 09 f0       	mov    %rax,-0x10(%r9,%rcx,1)
140163e89:	48 8d 05 58 80 0d 00 	lea    0xd8058(%rip),%rax        # 0x14023bee8
140163e90:	48 89 01             	mov    %rax,(%rcx)
140163e93:	f6 c2 01             	test   $0x1,%dl
140163e96:	74 0d                	je     0x140163ea5
140163e98:	ba 20 00 00 00       	mov    $0x20,%edx
140163e9d:	48 8b cb             	mov    %rbx,%rcx
140163ea0:	e8 a7 27 02 00       	call   0x14018664c
140163ea5:	48 8b c3             	mov    %rbx,%rax
140163ea8:	48 83 c4 20          	add    $0x20,%rsp
140163eac:	5b                   	pop    %rbx
140163ead:	c3                   	ret
140163eae:	cc                   	int3
140163eaf:	cc                   	int3
140163eb0:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
140163eb5:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
140163eba:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
140163ebf:	57                   	push   %rdi
140163ec0:	48 83 ec 20          	sub    $0x20,%rsp
140163ec4:	48 8b da             	mov    %rdx,%rbx
140163ec7:	48 8b 79 f8          	mov    -0x8(%rcx),%rdi
140163ecb:	48 83 3f 58          	cmpq   $0x58,(%rdi)
140163ecf:	0f 82 86 00 00 00    	jb     0x140163f5b
140163ed5:	48 8b 77 50          	mov    0x50(%rdi),%rsi
140163ed9:	48 85 f6             	test   %rsi,%rsi
140163edc:	74 7d                	je     0x140163f5b
140163ede:	48 8b 0a             	mov    (%rdx),%rcx
140163ee1:	48 85 c9             	test   %rcx,%rcx
140163ee4:	75 12                	jne    0x140163ef8
140163ee6:	32 c0                	xor    %al,%al
140163ee8:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140163eed:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
140163ef2:	48 83 c4 20          	add    $0x20,%rsp
140163ef6:	5f                   	pop    %rdi
140163ef7:	c3                   	ret
140163ef8:	48 89 4c 24 30       	mov    %rcx,0x30(%rsp)
140163efd:	48 8b 41 08          	mov    0x8(%rcx),%rax
140163f01:	48 63 50 04          	movslq 0x4(%rax),%rdx
140163f05:	48 83 c1 08          	add    $0x8,%rcx
140163f09:	48 03 ca             	add    %rdx,%rcx
140163f0c:	48 8b 01             	mov    (%rcx),%rax
140163f0f:	ff 10                	call   *(%rax)
140163f11:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
140163f16:	e8 d5 03 00 00       	call   0x1401642f0
140163f1b:	48 8b d0             	mov    %rax,%rdx
140163f1e:	48 8b cf             	mov    %rdi,%rcx
140163f21:	ff d6                	call   *%rsi
140163f23:	85 c0                	test   %eax,%eax
140163f25:	40 0f 95 c7          	setne  %dil
140163f29:	4c 8b 03             	mov    (%rbx),%r8
140163f2c:	4d 85 c0             	test   %r8,%r8
140163f2f:	74 16                	je     0x140163f47
140163f31:	49 8b 48 08          	mov    0x8(%r8),%rcx
140163f35:	48 63 49 04          	movslq 0x4(%rcx),%rcx
140163f39:	49 83 c0 08          	add    $0x8,%r8
140163f3d:	49 03 c8             	add    %r8,%rcx
140163f40:	48 8b 11             	mov    (%rcx),%rdx
140163f43:	ff 52 08             	call   *0x8(%rdx)
140163f46:	90                   	nop
140163f47:	40 0f b6 c7          	movzbl %dil,%eax
140163f4b:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140163f50:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
140163f55:	48 83 c4 20          	add    $0x20,%rsp
140163f59:	5f                   	pop    %rdi
140163f5a:	c3                   	ret
140163f5b:	48 8b 12             	mov    (%rdx),%rdx
140163f5e:	48 85 d2             	test   %rdx,%rdx
140163f61:	74 16                	je     0x140163f79
140163f63:	48 8b 42 08          	mov    0x8(%rdx),%rax
140163f67:	48 63 48 04          	movslq 0x4(%rax),%rcx
140163f6b:	48 83 c2 08          	add    $0x8,%rdx
140163f6f:	48 03 ca             	add    %rdx,%rcx
140163f72:	48 8b 01             	mov    (%rcx),%rax
140163f75:	ff 50 08             	call   *0x8(%rax)
140163f78:	90                   	nop
140163f79:	32 c0                	xor    %al,%al
140163f7b:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140163f80:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
140163f85:	48 83 c4 20          	add    $0x20,%rsp
140163f89:	5f                   	pop    %rdi
140163f8a:	c3                   	ret
140163f8b:	cc                   	int3
140163f8c:	cc                   	int3
140163f8d:	cc                   	int3
140163f8e:	cc                   	int3
140163f8f:	cc                   	int3
140163f90:	48 8b 49 f8          	mov    -0x8(%rcx),%rcx
140163f94:	48 83 39 40          	cmpq   $0x40,(%rcx)
140163f98:	72 0c                	jb     0x140163fa6
140163f9a:	48 8b 41 38          	mov    0x38(%rcx),%rax
140163f9e:	48 85 c0             	test   %rax,%rax
140163fa1:	74 03                	je     0x140163fa6
140163fa3:	48 ff e0             	rex.W jmp *%rax
140163fa6:	33 c0                	xor    %eax,%eax
140163fa8:	c3                   	ret
140163fa9:	cc                   	int3
140163faa:	cc                   	int3
140163fab:	cc                   	int3
140163fac:	cc                   	int3
140163fad:	cc                   	int3
140163fae:	cc                   	int3
140163faf:	cc                   	int3
140163fb0:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140163fb5:	55                   	push   %rbp
140163fb6:	56                   	push   %rsi
140163fb7:	57                   	push   %rdi
140163fb8:	41 56                	push   %r14
140163fba:	41 57                	push   %r15
140163fbc:	48 83 ec 20          	sub    $0x20,%rsp
140163fc0:	48 8b da             	mov    %rdx,%rbx
140163fc3:	45 33 ff             	xor    %r15d,%r15d
140163fc6:	4c 8b 71 f8          	mov    -0x8(%rcx),%r14
140163fca:	49 83 3e 48          	cmpq   $0x48,(%r14)
140163fce:	0f 82 83 01 00 00    	jb     0x140164157
140163fd4:	4d 39 7e 40          	cmp    %r15,0x40(%r14)
140163fd8:	0f 84 79 01 00 00    	je     0x140164157
140163fde:	48 8b 6a 08          	mov    0x8(%rdx),%rbp
140163fe2:	48 2b 2a             	sub    (%rdx),%rbp
140163fe5:	48 c1 fd 03          	sar    $0x3,%rbp
140163fe9:	48 8b 01             	mov    (%rcx),%rax
140163fec:	ff 50 10             	call   *0x10(%rax)
140163fef:	48 8b c8             	mov    %rax,%rcx
140163ff2:	48 3b c5             	cmp    %rbp,%rax
140163ff5:	48 0f 42 cd          	cmovb  %rbp,%rcx
140163ff9:	48 89 4c 24 50       	mov    %rcx,0x50(%rsp)
140163ffe:	41 8b f7             	mov    %r15d,%esi
140164001:	48 85 c9             	test   %rcx,%rcx
140164004:	0f 84 81 00 00 00    	je     0x14016408b
14016400a:	b8 08 00 00 00       	mov    $0x8,%eax
14016400f:	48 f7 e1             	mul    %rcx
140164012:	48 c7 c1 ff ff ff ff 	mov    $0xffffffffffffffff,%rcx
140164019:	48 0f 40 c1          	cmovo  %rcx,%rax
14016401d:	48 8b c8             	mov    %rax,%rcx
140164020:	e8 f3 28 02 00       	call   0x140186918
140164025:	48 8b f0             	mov    %rax,%rsi
140164028:	48 85 c0             	test   %rax,%rax
14016402b:	74 5e                	je     0x14016408b
14016402d:	4c 8b 44 24 50       	mov    0x50(%rsp),%r8
140164032:	4e 8d 04 c5 00 00 00 	lea    0x0(,%r8,8),%r8
140164039:	00
14016403a:	33 d2                	xor    %edx,%edx
14016403c:	48 8b c8             	mov    %rax,%rcx
14016403f:	e8 2c 4a 02 00       	call   0x140188a70
140164044:	48 85 ed             	test   %rbp,%rbp
140164047:	74 42                	je     0x14016408b
140164049:	41 8b ff             	mov    %r15d,%edi
14016404c:	0f 1f 40 00          	nopl   0x0(%rax)
140164050:	48 8b 03             	mov    (%rbx),%rax
140164053:	48 8b 14 f8          	mov    (%rax,%rdi,8),%rdx
140164057:	48 89 54 24 60       	mov    %rdx,0x60(%rsp)
14016405c:	48 85 d2             	test   %rdx,%rdx
14016405f:	74 14                	je     0x140164075
140164061:	48 8b 42 08          	mov    0x8(%rdx),%rax
140164065:	48 63 48 04          	movslq 0x4(%rax),%rcx
140164069:	48 83 c2 08          	add    $0x8,%rdx
14016406d:	48 03 ca             	add    %rdx,%rcx
140164070:	48 8b 01             	mov    (%rcx),%rax
140164073:	ff 10                	call   *(%rax)
140164075:	48 8d 4c 24 60       	lea    0x60(%rsp),%rcx
14016407a:	e8 71 02 00 00       	call   0x1401642f0
14016407f:	48 89 04 fe          	mov    %rax,(%rsi,%rdi,8)
140164083:	48 ff c7             	inc    %rdi
140164086:	48 3b fd             	cmp    %rbp,%rdi
140164089:	72 c5                	jb     0x140164050
14016408b:	49 8b 46 40          	mov    0x40(%r14),%rax
14016408f:	4c 8b c6             	mov    %rsi,%r8
140164092:	48 8d 54 24 50       	lea    0x50(%rsp),%rdx
140164097:	49 8b ce             	mov    %r14,%rcx
14016409a:	ff d0                	call   *%rax
14016409c:	48 8b 3b             	mov    (%rbx),%rdi
14016409f:	48 8b 6b 08          	mov    0x8(%rbx),%rbp
1401640a3:	48 3b fd             	cmp    %rbp,%rdi
1401640a6:	74 2e                	je     0x1401640d6
1401640a8:	48 8b 17             	mov    (%rdi),%rdx
1401640ab:	48 85 d2             	test   %rdx,%rdx
1401640ae:	74 16                	je     0x1401640c6
1401640b0:	48 8b 42 08          	mov    0x8(%rdx),%rax
1401640b4:	48 63 48 04          	movslq 0x4(%rax),%rcx
1401640b8:	48 83 c2 08          	add    $0x8,%rdx
1401640bc:	48 03 ca             	add    %rdx,%rcx
1401640bf:	48 8b 01             	mov    (%rcx),%rax
1401640c2:	ff 50 08             	call   *0x8(%rax)
1401640c5:	90                   	nop
1401640c6:	48 83 c7 08          	add    $0x8,%rdi
1401640ca:	48 3b fd             	cmp    %rbp,%rdi
1401640cd:	75 d9                	jne    0x1401640a8
1401640cf:	48 8b 03             	mov    (%rbx),%rax
1401640d2:	48 89 43 08          	mov    %rax,0x8(%rbx)
1401640d6:	48 8b 44 24 50       	mov    0x50(%rsp),%rax
1401640db:	48 85 c0             	test   %rax,%rax
1401640de:	74 77                	je     0x140164157
1401640e0:	48 85 f6             	test   %rsi,%rsi
1401640e3:	74 72                	je     0x140164157
1401640e5:	49 8b ff             	mov    %r15,%rdi
1401640e8:	48 85 c0             	test   %rax,%rax
1401640eb:	74 62                	je     0x14016414f
1401640ed:	0f 1f 00             	nopl   (%rax)
1401640f0:	48 8b 14 fe          	mov    (%rsi,%rdi,8),%rdx
1401640f4:	48 8d 4c 24 60       	lea    0x60(%rsp),%rcx
1401640f9:	e8 a2 02 00 00       	call   0x1401643a0
1401640fe:	90                   	nop
1401640ff:	48 8b 53 08          	mov    0x8(%rbx),%rdx
140164103:	48 3b 53 10          	cmp    0x10(%rbx),%rdx
140164107:	74 10                	je     0x140164119
140164109:	48 8b 08             	mov    (%rax),%rcx
14016410c:	48 89 0a             	mov    %rcx,(%rdx)
14016410f:	4c 89 38             	mov    %r15,(%rax)
140164112:	48 83 43 08 08       	addq   $0x8,0x8(%rbx)
140164117:	eb 0c                	jmp    0x140164125
140164119:	4c 8b c0             	mov    %rax,%r8
14016411c:	48 8b cb             	mov    %rbx,%rcx
14016411f:	e8 dc c2 ff ff       	call   0x140160400
140164124:	90                   	nop
140164125:	48 8b 44 24 60       	mov    0x60(%rsp),%rax
14016412a:	48 85 c0             	test   %rax,%rax
14016412d:	74 16                	je     0x140164145
14016412f:	48 8b 48 08          	mov    0x8(%rax),%rcx
140164133:	48 63 49 04          	movslq 0x4(%rcx),%rcx
140164137:	48 83 c0 08          	add    $0x8,%rax
14016413b:	48 03 c8             	add    %rax,%rcx
14016413e:	48 8b 01             	mov    (%rcx),%rax
140164141:	ff 50 08             	call   *0x8(%rax)
140164144:	90                   	nop
140164145:	48 ff c7             	inc    %rdi
140164148:	48 3b 7c 24 50       	cmp    0x50(%rsp),%rdi
14016414d:	72 a1                	jb     0x1401640f0
14016414f:	48 8b ce             	mov    %rsi,%rcx
140164152:	e8 f5 24 02 00       	call   0x14018664c
140164157:	48 8b 5c 24 58       	mov    0x58(%rsp),%rbx
14016415c:	48 83 c4 20          	add    $0x20,%rsp
140164160:	41 5f                	pop    %r15
140164162:	41 5e                	pop    %r14
140164164:	5f                   	pop    %rdi
140164165:	5e                   	pop    %rsi
140164166:	5d                   	pop    %rbp
140164167:	c3                   	ret
140164168:	cc                   	int3
140164169:	cc                   	int3
14016416a:	cc                   	int3
14016416b:	cc                   	int3
14016416c:	cc                   	int3
14016416d:	cc                   	int3
14016416e:	cc                   	int3
14016416f:	cc                   	int3
140164170:	40 53                	rex push %rbx
140164172:	48 83 ec 20          	sub    $0x20,%rsp
140164176:	48 8b d9             	mov    %rcx,%rbx
140164179:	48 8b 49 e0          	mov    -0x20(%rcx),%rcx
14016417d:	48 8b 41 10          	mov    0x10(%rcx),%rax
140164181:	48 85 c0             	test   %rax,%rax
140164184:	74 02                	je     0x140164188
140164186:	ff d0                	call   *%rax
140164188:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
14016418d:	f0 0f c1 43 f8       	lock xadd %eax,-0x8(%rbx)
140164192:	83 f8 01             	cmp    $0x1,%eax
140164195:	75 44                	jne    0x1401641db
140164197:	48 8d 4b d8          	lea    -0x28(%rbx),%rcx
14016419b:	48 85 c9             	test   %rcx,%rcx
14016419e:	74 33                	je     0x1401641d3
1401641a0:	48 8d 05 79 96 0b 00 	lea    0xb9679(%rip),%rax        # 0x14021d820
1401641a7:	48 89 43 e8          	mov    %rax,-0x18(%rbx)
1401641ab:	48 8b 43 f0          	mov    -0x10(%rbx),%rax
1401641af:	48 63 50 04          	movslq 0x4(%rax),%rdx
1401641b3:	48 8d 05 9e 96 0b 00 	lea    0xb969e(%rip),%rax        # 0x14021d858
1401641ba:	48 89 44 1a f0       	mov    %rax,-0x10(%rdx,%rbx,1)
1401641bf:	48 8d 05 22 7d 0d 00 	lea    0xd7d22(%rip),%rax        # 0x14023bee8
1401641c6:	ba 30 00 00 00       	mov    $0x30,%edx
1401641cb:	48 89 03             	mov    %rax,(%rbx)
1401641ce:	e8 79 24 02 00       	call   0x14018664c
1401641d3:	b0 01                	mov    $0x1,%al
1401641d5:	48 83 c4 20          	add    $0x20,%rsp
1401641d9:	5b                   	pop    %rbx
1401641da:	c3                   	ret
1401641db:	32 c0                	xor    %al,%al
1401641dd:	48 83 c4 20          	add    $0x20,%rsp
1401641e1:	5b                   	pop    %rbx
1401641e2:	c3                   	ret
1401641e3:	cc                   	int3
1401641e4:	cc                   	int3
1401641e5:	cc                   	int3
1401641e6:	cc                   	int3
1401641e7:	cc                   	int3
1401641e8:	cc                   	int3
1401641e9:	cc                   	int3
1401641ea:	cc                   	int3
1401641eb:	cc                   	int3
1401641ec:	cc                   	int3
1401641ed:	cc                   	int3
1401641ee:	cc                   	int3
1401641ef:	cc                   	int3
1401641f0:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
1401641f5:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
1401641fa:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
1401641ff:	57                   	push   %rdi
140164200:	48 83 ec 20          	sub    $0x20,%rsp
140164204:	48 8b da             	mov    %rdx,%rbx
140164207:	48 8b 79 f8          	mov    -0x8(%rcx),%rdi
14016420b:	48 83 3f 50          	cmpq   $0x50,(%rdi)
14016420f:	0f 82 86 00 00 00    	jb     0x14016429b
140164215:	48 8b 77 48          	mov    0x48(%rdi),%rsi
140164219:	48 85 f6             	test   %rsi,%rsi
14016421c:	74 7d                	je     0x14016429b
14016421e:	48 8b 0a             	mov    (%rdx),%rcx
140164221:	48 85 c9             	test   %rcx,%rcx
140164224:	75 12                	jne    0x140164238
140164226:	32 c0                	xor    %al,%al
140164228:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
14016422d:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
140164232:	48 83 c4 20          	add    $0x20,%rsp
140164236:	5f                   	pop    %rdi
140164237:	c3                   	ret
140164238:	48 89 4c 24 30       	mov    %rcx,0x30(%rsp)
14016423d:	48 8b 41 08          	mov    0x8(%rcx),%rax
140164241:	48 63 50 04          	movslq 0x4(%rax),%rdx
140164245:	48 83 c1 08          	add    $0x8,%rcx
140164249:	48 03 ca             	add    %rdx,%rcx
14016424c:	48 8b 01             	mov    (%rcx),%rax
14016424f:	ff 10                	call   *(%rax)
140164251:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
140164256:	e8 95 00 00 00       	call   0x1401642f0
14016425b:	48 8b d0             	mov    %rax,%rdx
14016425e:	48 8b cf             	mov    %rdi,%rcx
140164261:	ff d6                	call   *%rsi
140164263:	85 c0                	test   %eax,%eax
140164265:	40 0f 95 c7          	setne  %dil