140031e58:	4c 8b ce             	mov    %rsi,%r9
140031e5b:	48 c7 44 24 20 ff ff 	movq   $0x7fffffff,0x20(%rsp)
140031e62:	ff 7f
140031e64:	45 33 c0             	xor    %r8d,%r8d
140031e67:	48 8d 4d 38          	lea    0x38(%rbp),%rcx
140031e6b:	e8 30 b2 00 00       	call   0x14003d0a0
140031e70:	83 f8 16             	cmp    $0x16,%eax
140031e73:	0f 84 0d 02 00 00    	je     0x140032086
140031e79:	83 f8 22             	cmp    $0x22,%eax
140031e7c:	0f 84 04 02 00 00    	je     0x140032086
140031e82:	48 8b 4d 38          	mov    0x38(%rbp),%rcx
140031e86:	ba 02 00 00 00       	mov    $0x2,%edx
140031e8b:	e8 9c a4 00 00       	call   0x14003c32c
140031e90:	33 c9                	xor    %ecx,%ecx
140031e92:	48 8b d8             	mov    %rax,%rbx
140031e95:	48 85 c0             	test   %rax,%rax
140031e98:	75 20                	jne    0x140031eba
140031e9a:	e8 ed 6e 00 00       	call   0x140038d8c
140031e9f:	33 c0                	xor    %eax,%eax
140031ea1:	4c 8d 5c 24 40       	lea    0x40(%rsp),%r11
140031ea6:	49 8b 5b 40          	mov    0x40(%r11),%rbx
140031eaa:	49 8b 73 48          	mov    0x48(%r11),%rsi
140031eae:	49 8b e3             	mov    %r11,%rsp
140031eb1:	41 5f                	pop    %r15
140031eb3:	41 5e                	pop    %r14
140031eb5:	41 5d                	pop    %r13
140031eb7:	5f                   	pop    %rdi
140031eb8:	5d                   	pop    %rbp
140031eb9:	c3                   	ret
140031eba:	4c 8b 45 38          	mov    0x38(%rbp),%r8
140031ebe:	4c 8b ce             	mov    %rsi,%r9
140031ec1:	48 83 4c 24 20 ff    	orq    $0xffffffffffffffff,0x20(%rsp)
140031ec7:	48 8b d3             	mov    %rbx,%rdx
140031eca:	e8 d1 b1 00 00       	call   0x14003d0a0
140031ecf:	85 c0                	test   %eax,%eax
140031ed1:	74 17                	je     0x140031eea
140031ed3:	83 f8 16             	cmp    $0x16,%eax
140031ed6:	0f 84 aa 01 00 00    	je     0x140032086
140031edc:	83 f8 22             	cmp    $0x22,%eax
140031edf:	0f 84 a1 01 00 00    	je     0x140032086
140031ee5:	48 8b cb             	mov    %rbx,%rcx
140031ee8:	eb b0                	jmp    0x140031e9a
140031eea:	48 8b d3             	mov    %rbx,%rdx
140031eed:	41 8b ce             	mov    %r14d,%ecx
140031ef0:	e8 0b 50 00 00       	call   0x140036f00
140031ef5:	48 8b cb             	mov    %rbx,%rcx
140031ef8:	4c 8b f0             	mov    %rax,%r14
140031efb:	e8 8c 6e 00 00       	call   0x140038d8c
140031f00:	4d 85 f6             	test   %r14,%r14
140031f03:	74 9a                	je     0x140031e9f
140031f05:	e8 26 6a 00 00       	call   0x140038930
140031f0a:	4c 8b e8             	mov    %rax,%r13
140031f0d:	4d 8b ce             	mov    %r14,%r9
140031f10:	45 33 c0             	xor    %r8d,%r8d
140031f13:	33 d2                	xor    %edx,%edx
140031f15:	48 8b 88 90 00 00 00 	mov    0x90(%rax),%rcx
140031f1c:	48 89 4d f0          	mov    %rcx,-0x10(%rbp)
140031f20:	48 8b 88 88 00 00 00 	mov    0x88(%rax),%rcx
140031f27:	48 8d 45 f0          	lea    -0x10(%rbp),%rax
140031f2b:	48 83 65 30 00       	andq   $0x0,0x30(%rbp)
140031f30:	48 89 4d f8          	mov    %rcx,-0x8(%rbp)
140031f34:	48 8d 4d 30          	lea    0x30(%rbp),%rcx
140031f38:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
140031f3d:	48 83 64 24 20 00    	andq   $0x0,0x20(%rsp)
140031f43:	e8 54 b6 00 00       	call   0x14003d59c
140031f48:	85 c0                	test   %eax,%eax
140031f4a:	74 17                	je     0x140031f63
140031f4c:	83 f8 16             	cmp    $0x16,%eax
140031f4f:	0f 84 47 01 00 00    	je     0x14003209c
140031f55:	83 f8 22             	cmp    $0x22,%eax
140031f58:	0f 84 3e 01 00 00    	je     0x14003209c
140031f5e:	e9 3c ff ff ff       	jmp    0x140031e9f
140031f63:	48 8b 4d 30          	mov    0x30(%rbp),%rcx
140031f67:	48 83 c1 04          	add    $0x4,%rcx
140031f6b:	e8 58 6e 00 00       	call   0x140038dc8
140031f70:	48 8b f0             	mov    %rax,%rsi
140031f73:	48 85 c0             	test   %rax,%rax
140031f76:	0f 84 23 ff ff ff    	je     0x140031e9f
140031f7c:	4c 8b 45 30          	mov    0x30(%rbp),%r8
140031f80:	4c 8d 78 04          	lea    0x4(%rax),%r15
140031f84:	48 8d 45 f0          	lea    -0x10(%rbp),%rax
140031f88:	4d 8b ce             	mov    %r14,%r9
140031f8b:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
140031f90:	49 8b d7             	mov    %r15,%rdx
140031f93:	48 83 4c 24 20 ff    	orq    $0xffffffffffffffff,0x20(%rsp)
140031f99:	33 c9                	xor    %ecx,%ecx
140031f9b:	e8 fc b5 00 00       	call   0x14003d59c
140031fa0:	85 c0                	test   %eax,%eax
140031fa2:	74 1a                	je     0x140031fbe
140031fa4:	83 f8 16             	cmp    $0x16,%eax
140031fa7:	0f 84 ef 00 00 00    	je     0x14003209c
140031fad:	83 f8 22             	cmp    $0x22,%eax
140031fb0:	0f 84 e6 00 00 00    	je     0x14003209c
140031fb6:	48 8b ce             	mov    %rsi,%rcx
140031fb9:	e9 dc fe ff ff       	jmp    0x140031e9a
140031fbe:	48 8b 07             	mov    (%rdi),%rax
140031fc1:	48 8b 5d f0          	mov    -0x10(%rbp),%rbx
140031fc5:	48 63 08             	movslq (%rax),%rcx
140031fc8:	48 c1 e1 05          	shl    $0x5,%rcx
140031fcc:	48 8b 54 19 30       	mov    0x30(%rcx,%rbx,1),%rdx
140031fd1:	48 85 d2             	test   %rdx,%rdx
140031fd4:	74 30                	je     0x140032006
140031fd6:	83 c8 ff             	or     $0xffffffff,%eax
140031fd9:	f0 0f c1 02          	lock xadd %eax,(%rdx)
140031fdd:	83 f8 01             	cmp    $0x1,%eax
140031fe0:	75 24                	jne    0x140032006
140031fe2:	48 8b 07             	mov    (%rdi),%rax
140031fe5:	48 63 08             	movslq (%rax),%rcx
140031fe8:	48 c1 e1 05          	shl    $0x5,%rcx
140031fec:	48 8b 4c 19 30       	mov    0x30(%rcx,%rbx,1),%rcx
140031ff1:	e8 96 6d 00 00       	call   0x140038d8c
140031ff6:	48 8b 07             	mov    (%rdi),%rax
140031ff9:	48 63 08             	movslq (%rax),%rcx
140031ffc:	48 c1 e1 05          	shl    $0x5,%rcx
140032000:	48 83 64 19 30 00    	andq   $0x0,0x30(%rcx,%rbx,1)
140032006:	41 8b 85 a8 03 00 00 	mov    0x3a8(%r13),%eax
14003200d:	85 05 c1 03 04 00    	test   %eax,0x403c1(%rip)        # 0x1400723d4
140032013:	75 44                	jne    0x140032059
140032015:	48 8b 07             	mov    (%rdi),%rax
140032018:	48 63 08             	movslq (%rax),%rcx
14003201b:	48 c1 e1 05          	shl    $0x5,%rcx
14003201f:	48 8b 54 19 30       	mov    0x30(%rcx,%rbx,1),%rdx
140032024:	48 85 d2             	test   %rdx,%rdx
140032027:	74 30                	je     0x140032059
140032029:	83 c8 ff             	or     $0xffffffff,%eax
14003202c:	f0 0f c1 02          	lock xadd %eax,(%rdx)
140032030:	83 f8 01             	cmp    $0x1,%eax
140032033:	75 24                	jne    0x140032059
140032035:	48 8b 07             	mov    (%rdi),%rax
140032038:	48 63 08             	movslq (%rax),%rcx
14003203b:	48 c1 e1 05          	shl    $0x5,%rcx
14003203f:	48 8b 4c 19 30       	mov    0x30(%rcx,%rbx,1),%rcx
140032044:	e8 43 6d 00 00       	call   0x140038d8c
140032049:	48 8b 07             	mov    (%rdi),%rax
14003204c:	48 63 08             	movslq (%rax),%rcx
14003204f:	48 c1 e1 05          	shl    $0x5,%rcx
140032053:	48 83 64 19 30 00    	andq   $0x0,0x30(%rcx,%rbx,1)
140032059:	8b 4b 10             	mov    0x10(%rbx),%ecx
14003205c:	49 8b c7             	mov    %r15,%rax
14003205f:	89 0e                	mov    %ecx,(%rsi)
140032061:	48 8b 0f             	mov    (%rdi),%rcx
140032064:	48 63 11             	movslq (%rcx),%rdx
140032067:	48 c1 e2 05          	shl    $0x5,%rdx
14003206b:	48 89 74 1a 30       	mov    %rsi,0x30(%rdx,%rbx,1)
140032070:	48 8b 0f             	mov    (%rdi),%rcx
140032073:	48 63 11             	movslq (%rcx),%rdx
140032076:	48 ff c2             	inc    %rdx
140032079:	48 c1 e2 05          	shl    $0x5,%rdx
14003207d:	4c 89 3c 1a          	mov    %r15,(%rdx,%rbx,1)
140032081:	e9 1b fe ff ff       	jmp    0x140031ea1
140032086:	48 83 64 24 20 00    	andq   $0x0,0x20(%rsp)
14003208c:	45 33 c9             	xor    %r9d,%r9d
14003208f:	45 33 c0             	xor    %r8d,%r8d
140032092:	33 d2                	xor    %edx,%edx
140032094:	33 c9                	xor    %ecx,%ecx
140032096:	e8 59 95 ff ff       	call   0x14002b5f4
14003209b:	cc                   	int3
14003209c:	48 83 64 24 20 00    	andq   $0x0,0x20(%rsp)
1400320a2:	45 33 c9             	xor    %r9d,%r9d
1400320a5:	45 33 c0             	xor    %r8d,%r8d
1400320a8:	33 d2                	xor    %edx,%edx
1400320aa:	33 c9                	xor    %ecx,%ecx
1400320ac:	e8 43 95 ff ff       	call   0x14002b5f4
1400320b1:	cc                   	int3
1400320b2:	cc                   	int3
1400320b3:	cc                   	int3
1400320b4:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
1400320b9:	89 4c 24 08          	mov    %ecx,0x8(%rsp)
1400320bd:	55                   	push   %rbp
1400320be:	48 8b ec             	mov    %rsp,%rbp
1400320c1:	48 83 ec 40          	sub    $0x40,%rsp
1400320c5:	e8 4e 7b 00 00       	call   0x140039c18
1400320ca:	48 8d 45 10          	lea    0x10(%rbp),%rax
1400320ce:	48 89 45 e8          	mov    %rax,-0x18(%rbp)
1400320d2:	4c 8d 4d 28          	lea    0x28(%rbp),%r9
1400320d6:	48 8d 45 18          	lea    0x18(%rbp),%rax
1400320da:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
1400320de:	4c 8d 45 e8          	lea    -0x18(%rbp),%r8
1400320e2:	b8 04 00 00 00       	mov    $0x4,%eax
1400320e7:	48 8d 55 e0          	lea    -0x20(%rbp),%rdx
1400320eb:	48 8d 4d 20          	lea    0x20(%rbp),%rcx
1400320ef:	89 45 28             	mov    %eax,0x28(%rbp)
1400320f2:	89 45 e0             	mov    %eax,-0x20(%rbp)
1400320f5:	e8 de fc ff ff       	call   0x140031dd8
1400320fa:	48 83 c4 40          	add    $0x40,%rsp
1400320fe:	5d                   	pop    %rbp
1400320ff:	c3                   	ret
140032100:	40 53                	rex push %rbx
140032102:	48 83 ec 20          	sub    $0x20,%rsp
140032106:	33 db                	xor    %ebx,%ebx
140032108:	48 8d 15 b1 59 04 00 	lea    0x459b1(%rip),%rdx        # 0x140077ac0
14003210f:	45 33 c0             	xor    %r8d,%r8d
140032112:	48 8d 0c 9b          	lea    (%rbx,%rbx,4),%rcx
140032116:	48 8d 0c ca          	lea    (%rdx,%rcx,8),%rcx
14003211a:	ba a0 0f 00 00       	mov    $0xfa0,%edx
14003211f:	e8 20 78 00 00       	call   0x140039944
140032124:	85 c0                	test   %eax,%eax
140032126:	74 11                	je     0x140032139
140032128:	ff 05 c2 5b 04 00    	incl   0x45bc2(%rip)        # 0x140077cf0
14003212e:	ff c3                	inc    %ebx
140032130:	83 fb 0e             	cmp    $0xe,%ebx
140032133:	72 d3                	jb     0x140032108
140032135:	b0 01                	mov    $0x1,%al
140032137:	eb 09                	jmp    0x140032142
140032139:	33 c9                	xor    %ecx,%ecx
14003213b:	e8 30 00 00 00       	call   0x140032170
140032140:	32 c0                	xor    %al,%al
140032142:	48 83 c4 20          	add    $0x20,%rsp
140032146:	5b                   	pop    %rbx
140032147:	c3                   	ret
140032148:	48 63 c1             	movslq %ecx,%rax
14003214b:	48 8d 0c 80          	lea    (%rax,%rax,4),%rcx
14003214f:	48 8d 05 6a 59 04 00 	lea    0x4596a(%rip),%rax        # 0x140077ac0
140032156:	48 8d 0c c8          	lea    (%rax,%rcx,8),%rcx
14003215a:	48 ff 25 37 9f 01 00 	rex.W jmp *0x19f37(%rip)        # 0x14004c098
140032161:	cc                   	int3
140032162:	cc                   	int3
140032163:	cc                   	int3
140032164:	cc                   	int3
140032165:	cc                   	int3
140032166:	cc                   	int3
140032167:	cc                   	int3
140032168:	cc                   	int3
140032169:	cc                   	int3
14003216a:	cc                   	int3
14003216b:	cc                   	int3
14003216c:	cc                   	int3
14003216d:	cc                   	int3
14003216e:	cc                   	int3
14003216f:	cc                   	int3
140032170:	40 53                	rex push %rbx
140032172:	48 83 ec 20          	sub    $0x20,%rsp
140032176:	8b 1d 74 5b 04 00    	mov    0x45b74(%rip),%ebx        # 0x140077cf0
14003217c:	eb 1d                	jmp    0x14003219b
14003217e:	48 8d 05 3b 59 04 00 	lea    0x4593b(%rip),%rax        # 0x140077ac0
140032185:	ff cb                	dec    %ebx
140032187:	48 8d 0c 9b          	lea    (%rbx,%rbx,4),%rcx
14003218b:	48 8d 0c c8          	lea    (%rax,%rcx,8),%rcx
14003218f:	ff 15 ab 9e 01 00    	call   *0x19eab(%rip)        # 0x14004c040
140032195:	ff 0d 55 5b 04 00    	decl   0x45b55(%rip)        # 0x140077cf0
14003219b:	85 db                	test   %ebx,%ebx
14003219d:	75 df                	jne    0x14003217e
14003219f:	b0 01                	mov    $0x1,%al
1400321a1:	48 83 c4 20          	add    $0x20,%rsp
1400321a5:	5b                   	pop    %rbx
1400321a6:	c3                   	ret
1400321a7:	cc                   	int3
1400321a8:	48 63 c1             	movslq %ecx,%rax
1400321ab:	48 8d 0c 80          	lea    (%rax,%rax,4),%rcx
1400321af:	48 8d 05 0a 59 04 00 	lea    0x4590a(%rip),%rax        # 0x140077ac0
1400321b6:	48 8d 0c c8          	lea    (%rax,%rcx,8),%rcx
1400321ba:	48 ff 25 df 9e 01 00 	rex.W jmp *0x19edf(%rip)        # 0x14004c0a0
1400321c1:	cc                   	int3
1400321c2:	cc                   	int3
1400321c3:	cc                   	int3
1400321c4:	48 83 ec 28          	sub    $0x28,%rsp
1400321c8:	e8 4b 7a 00 00       	call   0x140039c18
1400321cd:	48 8d 0d 8c 59 04 00 	lea    0x4598c(%rip),%rcx        # 0x140077b60
1400321d4:	48 83 c4 28          	add    $0x28,%rsp
1400321d8:	48 ff 25 b9 9e 01 00 	rex.W jmp *0x19eb9(%rip)        # 0x14004c098
1400321df:	cc                   	int3
1400321e0:	48 8d 0d 79 59 04 00 	lea    0x45979(%rip),%rcx        # 0x140077b60
1400321e7:	48 ff 25 b2 9e 01 00 	rex.W jmp *0x19eb2(%rip)        # 0x14004c0a0
1400321ee:	cc                   	int3
1400321ef:	cc                   	int3
1400321f0:	48 83 ec 28          	sub    $0x28,%rsp
1400321f4:	e8 37 67 00 00       	call   0x140038930
1400321f9:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
1400321fe:	48 8b 88 90 00 00 00 	mov    0x90(%rax),%rcx
140032205:	48 89 4c 24 30       	mov    %rcx,0x30(%rsp)
14003220a:	48 8b c8             	mov    %rax,%rcx
14003220d:	e8 e2 7b 00 00       	call   0x140039df4
140032212:	48 8b 44 24 30       	mov    0x30(%rsp),%rax
140032217:	48 8b 00             	mov    (%rax),%rax
14003221a:	48 83 c4 28          	add    $0x28,%rsp
14003221e:	c3                   	ret
14003221f:	cc                   	int3
140032220:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140032225:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
14003222a:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14003222f:	57                   	push   %rdi
140032230:	48 83 ec 30          	sub    $0x30,%rsp
140032234:	33 ed                	xor    %ebp,%ebp
140032236:	48 8b f9             	mov    %rcx,%rdi
140032239:	48 85 c9             	test   %rcx,%rcx
14003223c:	74 38                	je     0x140032276
14003223e:	48 83 cb ff          	or     $0xffffffffffffffff,%rbx
140032242:	48 ff c3             	inc    %rbx
140032245:	66 39 2c 59          	cmp    %bp,(%rcx,%rbx,2)
140032249:	75 f7                	jne    0x140032242
14003224b:	48 ff c3             	inc    %rbx
14003224e:	48 8d 0c 1b          	lea    (%rbx,%rbx,1),%rcx
140032252:	e8 79 fb ff ff       	call   0x140031dd0
140032257:	48 8b f0             	mov    %rax,%rsi
14003225a:	48 85 c0             	test   %rax,%rax
14003225d:	74 17                	je     0x140032276
14003225f:	4c 8b c7             	mov    %rdi,%r8
140032262:	48 8b d3             	mov    %rbx,%rdx
140032265:	48 8b c8             	mov    %rax,%rcx
140032268:	e8 8f ee ff ff       	call   0x1400310fc
14003226d:	85 c0                	test   %eax,%eax
14003226f:	75 1c                	jne    0x14003228d
140032271:	48 8b c6             	mov    %rsi,%rax
140032274:	eb 02                	jmp    0x140032278
140032276:	33 c0                	xor    %eax,%eax
140032278:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
14003227d:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
140032282:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
140032287:	48 83 c4 30          	add    $0x30,%rsp
14003228b:	5f                   	pop    %rdi
14003228c:	c3                   	ret
14003228d:	45 33 c9             	xor    %r9d,%r9d
140032290:	48 89 6c 24 20       	mov    %rbp,0x20(%rsp)
140032295:	45 33 c0             	xor    %r8d,%r8d
140032298:	33 d2                	xor    %edx,%edx
14003229a:	33 c9                	xor    %ecx,%ecx
14003229c:	e8 53 93 ff ff       	call   0x14002b5f4
1400322a1:	cc                   	int3
1400322a2:	cc                   	int3
1400322a3:	cc                   	int3
1400322a4:	cc                   	int3
1400322a5:	cc                   	int3
1400322a6:	cc                   	int3
1400322a7:	cc                   	int3
1400322a8:	cc                   	int3
1400322a9:	cc                   	int3
1400322aa:	cc                   	int3
1400322ab:	cc                   	int3
1400322ac:	cc                   	int3
1400322ad:	cc                   	int3
1400322ae:	cc                   	int3
1400322af:	cc                   	int3
1400322b0:	48 8b c4             	mov    %rsp,%rax
1400322b3:	48 89 58 08          	mov    %rbx,0x8(%rax)
1400322b7:	48 89 68 10          	mov    %rbp,0x10(%rax)
1400322bb:	48 89 70 18          	mov    %rsi,0x18(%rax)
1400322bf:	48 89 78 20          	mov    %rdi,0x20(%rax)
1400322c3:	41 56                	push   %r14
1400322c5:	48 83 ec 20          	sub    $0x20,%rsp
1400322c9:	8b 05 29 5a 04 00    	mov    0x45a29(%rip),%eax        # 0x140077cf8
1400322cf:	33 db                	xor    %ebx,%ebx
1400322d1:	bf 03 00 00 00       	mov    $0x3,%edi
1400322d6:	85 c0                	test   %eax,%eax
1400322d8:	75 07                	jne    0x1400322e1
1400322da:	b8 00 02 00 00       	mov    $0x200,%eax
1400322df:	eb 05                	jmp    0x1400322e6
1400322e1:	3b c7                	cmp    %edi,%eax
1400322e3:	0f 4c c7             	cmovl  %edi,%eax
1400322e6:	48 63 c8             	movslq %eax,%rcx
1400322e9:	ba 08 00 00 00       	mov    $0x8,%edx