140161dab:	90                   	nop
140161dac:	48 8b d6             	mov    %rsi,%rdx
140161daf:	48 8b cb             	mov    %rbx,%rcx
140161db2:	ff d5                	call   *%rbp
140161db4:	85 c0                	test   %eax,%eax
140161db6:	0f 95 c3             	setne  %bl
140161db9:	4c 8b 07             	mov    (%rdi),%r8
140161dbc:	4d 85 c0             	test   %r8,%r8
140161dbf:	74 16                	je     0x140161dd7
140161dc1:	49 8b 48 08          	mov    0x8(%r8),%rcx
140161dc5:	48 63 49 04          	movslq 0x4(%rcx),%rcx
140161dc9:	49 83 c0 08          	add    $0x8,%r8
140161dcd:	49 03 c8             	add    %r8,%rcx
140161dd0:	48 8b 11             	mov    (%rcx),%rdx
140161dd3:	ff 52 08             	call   *0x8(%rdx)
140161dd6:	90                   	nop
140161dd7:	0f b6 c3             	movzbl %bl,%eax
140161dda:	48 8b 5c 24 58       	mov    0x58(%rsp),%rbx
140161ddf:	48 83 c4 20          	add    $0x20,%rsp
140161de3:	5f                   	pop    %rdi
140161de4:	5e                   	pop    %rsi
140161de5:	5d                   	pop    %rbp
140161de6:	c3                   	ret
140161de7:	48 8b 17             	mov    (%rdi),%rdx
140161dea:	48 85 d2             	test   %rdx,%rdx
140161ded:	74 16                	je     0x140161e05
140161def:	48 8b 42 08          	mov    0x8(%rdx),%rax
140161df3:	48 63 48 04          	movslq 0x4(%rax),%rcx
140161df7:	48 83 c2 08          	add    $0x8,%rdx
140161dfb:	48 03 ca             	add    %rdx,%rcx
140161dfe:	48 8b 01             	mov    (%rcx),%rax
140161e01:	ff 50 08             	call   *0x8(%rax)
140161e04:	90                   	nop
140161e05:	32 c0                	xor    %al,%al
140161e07:	48 8b 5c 24 58       	mov    0x58(%rsp),%rbx
140161e0c:	48 83 c4 20          	add    $0x20,%rsp
140161e10:	5f                   	pop    %rdi
140161e11:	5e                   	pop    %rsi
140161e12:	5d                   	pop    %rbp
140161e13:	c3                   	ret
140161e14:	cc                   	int3
140161e15:	cc                   	int3
140161e16:	cc                   	int3
140161e17:	cc                   	int3
140161e18:	cc                   	int3
140161e19:	cc                   	int3
140161e1a:	cc                   	int3
140161e1b:	cc                   	int3
140161e1c:	cc                   	int3
140161e1d:	cc                   	int3
140161e1e:	cc                   	int3
140161e1f:	cc                   	int3
140161e20:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140161e25:	57                   	push   %rdi
140161e26:	48 83 ec 20          	sub    $0x20,%rsp
140161e2a:	48 8b d9             	mov    %rcx,%rbx
140161e2d:	48 8b 49 e0          	mov    -0x20(%rcx),%rcx
140161e31:	48 8b 41 10          	mov    0x10(%rcx),%rax
140161e35:	48 85 c0             	test   %rax,%rax
140161e38:	74 02                	je     0x140161e3c
140161e3a:	ff d0                	call   *%rax
140161e3c:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
140161e41:	f0 0f c1 43 f8       	lock xadd %eax,-0x8(%rbx)
140161e46:	83 f8 01             	cmp    $0x1,%eax
140161e49:	75 52                	jne    0x140161e9d
140161e4b:	48 8d 7b d8          	lea    -0x28(%rbx),%rdi
140161e4f:	48 85 ff             	test   %rdi,%rdi
140161e52:	74 3c                	je     0x140161e90
140161e54:	48 8d 05 a5 b3 0b 00 	lea    0xbb3a5(%rip),%rax        # 0x14021d200
140161e5b:	48 89 43 e8          	mov    %rax,-0x18(%rbx)
140161e5f:	48 8b 43 f0          	mov    -0x10(%rbx),%rax
140161e63:	48 63 50 04          	movslq 0x4(%rax),%rdx
140161e67:	48 8d 05 ca b3 0b 00 	lea    0xbb3ca(%rip),%rax        # 0x14021d238
140161e6e:	48 89 44 1a f0       	mov    %rax,-0x10(%rdx,%rbx,1)
140161e73:	e8 58 40 f6 ff       	call   0x1400c5ed0
140161e78:	90                   	nop
140161e79:	48 8d 05 68 a0 0d 00 	lea    0xda068(%rip),%rax        # 0x14023bee8
140161e80:	48 89 03             	mov    %rax,(%rbx)
140161e83:	ba 30 00 00 00       	mov    $0x30,%edx
140161e88:	48 8b cf             	mov    %rdi,%rcx
140161e8b:	e8 bc 47 02 00       	call   0x14018664c
140161e90:	b0 01                	mov    $0x1,%al
140161e92:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140161e97:	48 83 c4 20          	add    $0x20,%rsp
140161e9b:	5f                   	pop    %rdi
140161e9c:	c3                   	ret
140161e9d:	32 c0                	xor    %al,%al
140161e9f:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140161ea4:	48 83 c4 20          	add    $0x20,%rsp
140161ea8:	5f                   	pop    %rdi
140161ea9:	c3                   	ret
140161eaa:	cc                   	int3
140161eab:	cc                   	int3
140161eac:	cc                   	int3
140161ead:	cc                   	int3
140161eae:	cc                   	int3
140161eaf:	cc                   	int3
140161eb0:	45 33 c9             	xor    %r9d,%r9d
140161eb3:	4c 8b c1             	mov    %rcx,%r8
140161eb6:	85 d2                	test   %edx,%edx
140161eb8:	74 16                	je     0x140161ed0
140161eba:	48 8d 05 0f b4 0b 00 	lea    0xbb40f(%rip),%rax        # 0x14021d2d0
140161ec1:	48 89 41 08          	mov    %rax,0x8(%rcx)
140161ec5:	48 8d 05 1c a0 0d 00 	lea    0xda01c(%rip),%rax        # 0x14023bee8
140161ecc:	48 89 41 18          	mov    %rax,0x18(%rcx)
140161ed0:	48 8d 05 11 ab 0b 00 	lea    0xbab11(%rip),%rax        # 0x14021c9e8
140161ed7:	48 89 01             	mov    %rax,(%rcx)
140161eda:	48 8b 41 08          	mov    0x8(%rcx),%rax
140161ede:	48 63 48 04          	movslq 0x4(%rax),%rcx
140161ee2:	48 8d 05 1f 84 0b 00 	lea    0xb841f(%rip),%rax        # 0x14021a308
140161ee9:	4a 89 44 01 08       	mov    %rax,0x8(%rcx,%r8,1)
140161eee:	48 8d 05 f3 aa 0b 00 	lea    0xbaaf3(%rip),%rax        # 0x14021c9e8
140161ef5:	49 89 00             	mov    %rax,(%r8)
140161ef8:	49 8b 40 08          	mov    0x8(%r8),%rax
140161efc:	48 63 48 04          	movslq 0x4(%rax),%rcx
140161f00:	48 8d 05 61 b3 0b 00 	lea    0xbb361(%rip),%rax        # 0x14021d268
140161f07:	4a 89 44 01 08       	mov    %rax,0x8(%rcx,%r8,1)
140161f0c:	48 8d 05 7d b3 0b 00 	lea    0xbb37d(%rip),%rax        # 0x14021d290
140161f13:	45 89 48 10          	mov    %r9d,0x10(%r8)
140161f17:	49 89 00             	mov    %rax,(%r8)
140161f1a:	49 8b 40 08          	mov    0x8(%r8),%rax
140161f1e:	48 63 48 04          	movslq 0x4(%rax),%rcx
140161f22:	48 8d 05 7f b3 0b 00 	lea    0xbb37f(%rip),%rax        # 0x14021d2a8
140161f29:	4a 89 44 01 08       	mov    %rax,0x8(%rcx,%r8,1)
140161f2e:	49 8b c0             	mov    %r8,%rax
140161f31:	c3                   	ret
140161f32:	cc                   	int3
140161f33:	cc                   	int3
140161f34:	cc                   	int3
140161f35:	cc                   	int3
140161f36:	cc                   	int3
140161f37:	cc                   	int3
140161f38:	cc                   	int3
140161f39:	cc                   	int3
140161f3a:	cc                   	int3
140161f3b:	cc                   	int3
140161f3c:	cc                   	int3
140161f3d:	cc                   	int3
140161f3e:	cc                   	int3
140161f3f:	cc                   	int3
140161f40:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140161f45:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
140161f4a:	57                   	push   %rdi
140161f4b:	48 83 ec 20          	sub    $0x20,%rsp
140161f4f:	8b fa                	mov    %edx,%edi
140161f51:	48 8b d9             	mov    %rcx,%rbx
140161f54:	48 8d 05 35 b3 0b 00 	lea    0xbb335(%rip),%rax        # 0x14021d290
140161f5b:	48 89 41 e8          	mov    %rax,-0x18(%rcx)
140161f5f:	4c 8b 41 f0          	mov    -0x10(%rcx),%r8
140161f63:	4d 63 48 04          	movslq 0x4(%r8),%r9
140161f67:	48 8d 05 3a b3 0b 00 	lea    0xbb33a(%rip),%rax        # 0x14021d2a8
140161f6e:	49 89 44 09 f0       	mov    %rax,-0x10(%r9,%rcx,1)
140161f73:	e8 58 3f f6 ff       	call   0x1400c5ed0
140161f78:	90                   	nop
140161f79:	48 8d 05 68 9f 0d 00 	lea    0xd9f68(%rip),%rax        # 0x14023bee8
140161f80:	48 89 03             	mov    %rax,(%rbx)
140161f83:	40 f6 c7 01          	test   $0x1,%dil
140161f87:	74 0e                	je     0x140161f97
140161f89:	ba 20 00 00 00       	mov    $0x20,%edx
140161f8e:	48 8d 4b e8          	lea    -0x18(%rbx),%rcx
140161f92:	e8 b5 46 02 00       	call   0x14018664c
140161f97:	48 8d 43 e8          	lea    -0x18(%rbx),%rax
140161f9b:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140161fa0:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
140161fa5:	48 83 c4 20          	add    $0x20,%rsp
140161fa9:	5f                   	pop    %rdi
140161faa:	c3                   	ret
140161fab:	cc                   	int3
140161fac:	cc                   	int3
140161fad:	cc                   	int3
140161fae:	cc                   	int3
140161faf:	cc                   	int3
140161fb0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140161fb5:	57                   	push   %rdi
140161fb6:	48 83 ec 20          	sub    $0x20,%rsp
140161fba:	48 8b d9             	mov    %rcx,%rbx
140161fbd:	48 8b 49 e0          	mov    -0x20(%rcx),%rcx
140161fc1:	48 8b 41 10          	mov    0x10(%rcx),%rax
140161fc5:	48 85 c0             	test   %rax,%rax
140161fc8:	74 02                	je     0x140161fcc
140161fca:	ff d0                	call   *%rax
140161fcc:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
140161fd1:	f0 0f c1 43 f8       	lock xadd %eax,-0x8(%rbx)
140161fd6:	83 f8 01             	cmp    $0x1,%eax
140161fd9:	75 52                	jne    0x14016202d
140161fdb:	48 8d 7b d8          	lea    -0x28(%rbx),%rdi
140161fdf:	48 85 ff             	test   %rdi,%rdi
140161fe2:	74 3c                	je     0x140162020
140161fe4:	48 8d 05 a5 b2 0b 00 	lea    0xbb2a5(%rip),%rax        # 0x14021d290
140161feb:	48 89 43 e8          	mov    %rax,-0x18(%rbx)
140161fef:	48 8b 43 f0          	mov    -0x10(%rbx),%rax
140161ff3:	48 63 50 04          	movslq 0x4(%rax),%rdx
140161ff7:	48 8d 05 aa b2 0b 00 	lea    0xbb2aa(%rip),%rax        # 0x14021d2a8
140161ffe:	48 89 44 1a f0       	mov    %rax,-0x10(%rdx,%rbx,1)
140162003:	e8 c8 3e f6 ff       	call   0x1400c5ed0
140162008:	90                   	nop
140162009:	48 8d 05 d8 9e 0d 00 	lea    0xd9ed8(%rip),%rax        # 0x14023bee8
140162010:	48 89 03             	mov    %rax,(%rbx)
140162013:	ba 30 00 00 00       	mov    $0x30,%edx
140162018:	48 8b cf             	mov    %rdi,%rcx
14016201b:	e8 2c 46 02 00       	call   0x14018664c
140162020:	b0 01                	mov    $0x1,%al
140162022:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140162027:	48 83 c4 20          	add    $0x20,%rsp
14016202b:	5f                   	pop    %rdi
14016202c:	c3                   	ret
14016202d:	32 c0                	xor    %al,%al
14016202f:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140162034:	48 83 c4 20          	add    $0x20,%rsp
140162038:	5f                   	pop    %rdi
140162039:	c3                   	ret
14016203a:	cc                   	int3
14016203b:	cc                   	int3
14016203c:	cc                   	int3
14016203d:	cc                   	int3
14016203e:	cc                   	int3
14016203f:	cc                   	int3
140162040:	48 8d 05 91 b2 0b 00 	lea    0xbb291(%rip),%rax        # 0x14021d2d8
140162047:	48 89 01             	mov    %rax,(%rcx)
14016204a:	48 8b c1             	mov    %rcx,%rax
14016204d:	c3                   	ret
14016204e:	cc                   	int3
14016204f:	cc                   	int3
140162050:	4c 89 44 24 18       	mov    %r8,0x18(%rsp)
140162055:	53                   	push   %rbx
140162056:	55                   	push   %rbp
140162057:	56                   	push   %rsi
140162058:	57                   	push   %rdi
140162059:	41 56                	push   %r14
14016205b:	48 83 ec 20          	sub    $0x20,%rsp
14016205f:	49 8b f8             	mov    %r8,%rdi
140162062:	4c 8b f2             	mov    %rdx,%r14
140162065:	33 db                	xor    %ebx,%ebx
140162067:	48 8b 71 f8          	mov    -0x8(%rcx),%rsi
14016206b:	48 83 3e 18          	cmpq   $0x18,(%rsi)
14016206f:	0f 82 06 01 00 00    	jb     0x14016217b
140162075:	48 8b 6e 10          	mov    0x10(%rsi),%rbp
140162079:	48 85 ed             	test   %rbp,%rbp
14016207c:	0f 84 f9 00 00 00    	je     0x14016217b
140162082:	48 8b 42 08          	mov    0x8(%rdx),%rax
140162086:	48 85 c0             	test   %rax,%rax
140162089:	0f 84 ea 00 00 00    	je     0x140162179
14016208f:	48 39 58 08          	cmp    %rbx,0x8(%rax)
140162093:	0f 84 e0 00 00 00    	je     0x140162179
140162099:	49 8b 10             	mov    (%r8),%rdx
14016209c:	48 85 d2             	test   %rdx,%rdx
14016209f:	75 15                	jne    0x1401620b6
1401620a1:	49 8b c8             	mov    %r8,%rcx
1401620a4:	e8 17 0c f9 ff       	call   0x1400f2cc0
1401620a9:	32 c0                	xor    %al,%al
1401620ab:	48 83 c4 20          	add    $0x20,%rsp
1401620af:	41 5e                	pop    %r14
1401620b1:	5f                   	pop    %rdi
1401620b2:	5e                   	pop    %rsi
1401620b3:	5d                   	pop    %rbp
1401620b4:	5b                   	pop    %rbx
1401620b5:	c3                   	ret
1401620b6:	48 89 54 24 50       	mov    %rdx,0x50(%rsp)
1401620bb:	48 8b 42 08          	mov    0x8(%rdx),%rax
1401620bf:	48 63 48 04          	movslq 0x4(%rax),%rcx
1401620c3:	48 83 c2 08          	add    $0x8,%rdx
1401620c7:	48 03 ca             	add    %rdx,%rcx
1401620ca:	48 8b 01             	mov    (%rcx),%rax
1401620cd:	ff 10                	call   *(%rax)
1401620cf:	48 8d 44 24 50       	lea    0x50(%rsp),%rax
1401620d4:	48 89 44 24 68       	mov    %rax,0x68(%rsp)
1401620d9:	48 8b 44 24 50       	mov    0x50(%rsp),%rax
1401620de:	48 85 c0             	test   %rax,%rax
1401620e1:	75 02                	jne    0x1401620e5
1401620e3:	eb 6d                	jmp    0x140162152
1401620e5:	8b 48 f0             	mov    -0x10(%rax),%ecx
1401620e8:	3b 0d 7a 8f 14 00    	cmp    0x148f7a(%rip),%ecx        # 0x1402ab068
1401620ee:	74 2d                	je     0x14016211d
1401620f0:	48 8b d0             	mov    %rax,%rdx
1401620f3:	e8 e8 47 f6 ff       	call   0x1400c68e0
1401620f8:	48 8b d8             	mov    %rax,%rbx
1401620fb:	48 8b 4c 24 50       	mov    0x50(%rsp),%rcx
140162100:	48 85 c9             	test   %rcx,%rcx
140162103:	74 16                	je     0x14016211b
140162105:	48 8b 51 08          	mov    0x8(%rcx),%rdx
140162109:	4c 63 42 04          	movslq 0x4(%rdx),%r8
14016210d:	48 83 c1 08          	add    $0x8,%rcx
140162111:	49 03 c8             	add    %r8,%rcx
140162114:	48 8b 11             	mov    (%rcx),%rdx
140162117:	ff 52 08             	call   *0x8(%rdx)
14016211a:	90                   	nop
14016211b:	eb 35                	jmp    0x140162152
14016211d:	48 8d 58 f8          	lea    -0x8(%rax),%rbx
140162121:	48 8b 0b             	mov    (%rbx),%rcx
140162124:	48 8b 51 08          	mov    0x8(%rcx),%rdx
140162128:	48 85 d2             	test   %rdx,%rdx
14016212b:	74 07                	je     0x140162134
14016212d:	ff d2                	call   *%rdx
14016212f:	48 8b 44 24 50       	mov    0x50(%rsp),%rax
140162134:	48 8b 1b             	mov    (%rbx),%rbx
140162137:	48 85 c0             	test   %rax,%rax
14016213a:	74 16                	je     0x140162152
14016213c:	48 8b 50 08          	mov    0x8(%rax),%rdx
140162140:	48 63 4a 04          	movslq 0x4(%rdx),%rcx
140162144:	48 83 c0 08          	add    $0x8,%rax
140162148:	48 03 c8             	add    %rax,%rcx
14016214b:	48 8b 01             	mov    (%rcx),%rax
14016214e:	ff 50 08             	call   *0x8(%rax)
140162151:	90                   	nop
140162152:	4c 8b c3             	mov    %rbx,%r8
140162155:	49 8b 56 08          	mov    0x8(%r14),%rdx
140162159:	48 8b ce             	mov    %rsi,%rcx
14016215c:	ff d5                	call   *%rbp
14016215e:	85 c0                	test   %eax,%eax
140162160:	0f 95 c3             	setne  %bl
140162163:	48 8b cf             	mov    %rdi,%rcx
140162166:	e8 55 0b f9 ff       	call   0x1400f2cc0
14016216b:	0f b6 c3             	movzbl %bl,%eax
14016216e:	48 83 c4 20          	add    $0x20,%rsp
140162172:	41 5e                	pop    %r14
140162174:	5f                   	pop    %rdi
140162175:	5e                   	pop    %rsi
140162176:	5d                   	pop    %rbp
140162177:	5b                   	pop    %rbx
140162178:	c3                   	ret
140162179:	eb 00                	jmp    0x14016217b
14016217b:	49 8b 10             	mov    (%r8),%rdx
14016217e:	48 85 d2             	test   %rdx,%rdx
140162181:	74 16                	je     0x140162199
140162183:	48 8b 42 08          	mov    0x8(%rdx),%rax
140162187:	48 83 c2 08          	add    $0x8,%rdx
14016218b:	48 63 48 04          	movslq 0x4(%rax),%rcx
14016218f:	48 03 ca             	add    %rdx,%rcx
140162192:	48 8b 01             	mov    (%rcx),%rax
140162195:	ff 50 08             	call   *0x8(%rax)
140162198:	90                   	nop
140162199:	32 c0                	xor    %al,%al
14016219b:	48 83 c4 20          	add    $0x20,%rsp
14016219f:	41 5e                	pop    %r14
1401621a1:	5f                   	pop    %rdi
1401621a2:	5e                   	pop    %rsi
1401621a3:	5d                   	pop    %rbp
1401621a4:	5b                   	pop    %rbx
1401621a5:	c3                   	ret
1401621a6:	cc                   	int3
1401621a7:	cc                   	int3
1401621a8:	cc                   	int3
1401621a9:	cc                   	int3
1401621aa:	cc                   	int3
1401621ab:	cc                   	int3
1401621ac:	cc                   	int3
1401621ad:	cc                   	int3
1401621ae:	cc                   	int3
1401621af:	cc                   	int3
1401621b0:	45 33 c9             	xor    %r9d,%r9d