140023e98:	48 8b 4d d8          	mov    -0x28(%rbp),%rcx
140023e9c:	4c 8d 4d e0          	lea    -0x20(%rbp),%r9
140023ea0:	4c 8d 45 d0          	lea    -0x30(%rbp),%r8
140023ea4:	ba 00 00 00 80       	mov    $0x80000000,%edx
140023ea9:	48 ff 15 00 bc 01 00 	rex.W call *0x1bc00(%rip)        # 0x14003fab0
140023eb0:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140023eb5:	85 c0                	test   %eax,%eax
140023eb7:	0f 84 66 ff ff ff    	je     0x140023e23
140023ebd:	48 8b 4d d0          	mov    -0x30(%rbp),%rcx
140023ec1:	4c 8b c7             	mov    %rdi,%r8
140023ec4:	ba 1b 00 00 00       	mov    $0x1b,%edx
140023ec9:	48 ff 15 a0 bb 01 00 	rex.W call *0x1bba0(%rip)        # 0x14003fa70
140023ed0:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140023ed5:	85 c0                	test   %eax,%eax
140023ed7:	0f 84 46 ff ff ff    	je     0x140023e23
140023edd:	4c 8b 45 e0          	mov    -0x20(%rbp),%r8
140023ee1:	48 8b 55 d0          	mov    -0x30(%rbp),%rdx
140023ee5:	48 8b 4d d8          	mov    -0x28(%rbp),%rcx
140023ee9:	48 ff 15 f0 ba 01 00 	rex.W call *0x1baf0(%rip)        # 0x14003f9e0
140023ef0:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140023ef5:	85 c0                	test   %eax,%eax
140023ef7:	0f 84 26 ff ff ff    	je     0x140023e23
140023efd:	48 8b 4d d8          	mov    -0x28(%rbp),%rcx
140023f01:	4c 8d 4d e0          	lea    -0x20(%rbp),%r9
140023f05:	4c 8d 45 d0          	lea    -0x30(%rbp),%r8
140023f09:	ba 01 00 00 80       	mov    $0x80000001,%edx
140023f0e:	48 ff 15 9b bb 01 00 	rex.W call *0x1bb9b(%rip)        # 0x14003fab0
140023f15:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140023f1a:	85 c0                	test   %eax,%eax
140023f1c:	0f 84 01 ff ff ff    	je     0x140023e23
140023f22:	48 8b 4d d0          	mov    -0x30(%rbp),%rcx
140023f26:	4c 8d 47 08          	lea    0x8(%rdi),%r8
140023f2a:	ba 18 00 00 00       	mov    $0x18,%edx
140023f2f:	48 ff 15 02 ba 01 00 	rex.W call *0x1ba02(%rip)        # 0x14003f938
140023f36:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140023f3b:	85 c0                	test   %eax,%eax
140023f3d:	0f 84 e0 fe ff ff    	je     0x140023e23
140023f43:	4c 8b 45 e0          	mov    -0x20(%rbp),%r8
140023f47:	48 8b 55 d0          	mov    -0x30(%rbp),%rdx
140023f4b:	48 8b 4d d8          	mov    -0x28(%rbp),%rcx
140023f4f:	48 ff 15 8a ba 01 00 	rex.W call *0x1ba8a(%rip)        # 0x14003f9e0
140023f56:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140023f5b:	85 c0                	test   %eax,%eax
140023f5d:	0f 84 c0 fe ff ff    	je     0x140023e23
140023f63:	4c 8b 45 f0          	mov    -0x10(%rbp),%r8
140023f67:	48 8b ce             	mov    %rsi,%rcx
140023f6a:	48 8b 55 d8          	mov    -0x28(%rbp),%rdx
140023f6e:	48 ff 15 6b ba 01 00 	rex.W call *0x1ba6b(%rip)        # 0x14003f9e0
140023f75:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140023f7a:	85 c0                	test   %eax,%eax
140023f7c:	0f 84 a1 fe ff ff    	je     0x140023e23
140023f82:	48 8b 1b             	mov    (%rbx),%rbx
140023f85:	48 8b 55 e8          	mov    -0x18(%rbp),%rdx
140023f89:	48 8b 4d 38          	mov    0x38(%rbp),%rcx
140023f8d:	48 ff 15 3c ba 01 00 	rex.W call *0x1ba3c(%rip)        # 0x14003f9d0
140023f94:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140023f99:	85 c0                	test   %eax,%eax
140023f9b:	0f 85 9a fe ff ff    	jne    0x140023e3b
140023fa1:	48 83 23 00          	andq   $0x0,(%rbx)
140023fa5:	49 8b ce             	mov    %r14,%rcx
140023fa8:	4c 8b 45 e8          	mov    -0x18(%rbp),%r8
140023fac:	48 8b 55 38          	mov    0x38(%rbp),%rdx
140023fb0:	48 ff 15 29 ba 01 00 	rex.W call *0x1ba29(%rip)        # 0x14003f9e0
140023fb7:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140023fbc:	85 c0                	test   %eax,%eax
140023fbe:	0f 84 5f fe ff ff    	je     0x140023e23
140023fc4:	b8 01 00 00 00       	mov    $0x1,%eax
140023fc9:	e9 57 fe ff ff       	jmp    0x140023e25
140023fce:	cc                   	int3
140023fcf:	cc                   	int3
140023fd0:	cc                   	int3
140023fd1:	cc                   	int3
140023fd2:	cc                   	int3
140023fd3:	cc                   	int3
140023fd4:	cc                   	int3
140023fd5:	cc                   	int3
140023fd6:	cc                   	int3
140023fd7:	cc                   	int3
140023fd8:	cc                   	int3
140023fd9:	cc                   	int3
140023fda:	cc                   	int3
140023fdb:	cc                   	int3
140023fdc:	cc                   	int3
140023fdd:	cc                   	int3
140023fde:	cc                   	int3
140023fdf:	cc                   	int3
140023fe0:	48 85 c9             	test   %rcx,%rcx
140023fe3:	74 4e                	je     0x140024033
140023fe5:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140023fea:	57                   	push   %rdi
140023feb:	48 83 ec 20          	sub    $0x20,%rsp
140023fef:	48 8b 39             	mov    (%rcx),%rdi
140023ff2:	48 85 ff             	test   %rdi,%rdi
140023ff5:	74 32                	je     0x140024029
140023ff7:	48 8d 4f 08          	lea    0x8(%rdi),%rcx
140023ffb:	48 85 c9             	test   %rcx,%rcx
140023ffe:	74 0f                	je     0x14002400f
140024000:	48 8b 09             	mov    (%rcx),%rcx
140024003:	48 ff 15 9e ba 01 00 	rex.W call *0x1ba9e(%rip)        # 0x14003faa8
14002400a:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
14002400f:	48 8b 1f             	mov    (%rdi),%rbx
140024012:	48 8b cf             	mov    %rdi,%rcx
140024015:	48 ff 15 0c ba 01 00 	rex.W call *0x1ba0c(%rip)        # 0x14003fa28
14002401c:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140024021:	48 8b fb             	mov    %rbx,%rdi
140024024:	48 85 db             	test   %rbx,%rbx
140024027:	75 ce                	jne    0x140023ff7
140024029:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14002402e:	48 83 c4 20          	add    $0x20,%rsp
140024032:	5f                   	pop    %rdi
140024033:	c3                   	ret
140024034:	cc                   	int3
140024035:	cc                   	int3
140024036:	cc                   	int3
140024037:	cc                   	int3
140024038:	cc                   	int3
140024039:	cc                   	int3
14002403a:	cc                   	int3
14002403b:	cc                   	int3
14002403c:	cc                   	int3
14002403d:	cc                   	int3
14002403e:	cc                   	int3
14002403f:	cc                   	int3
140024040:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140024045:	57                   	push   %rdi
140024046:	48 83 ec 20          	sub    $0x20,%rsp
14002404a:	8b c2                	mov    %edx,%eax
14002404c:	49 8b d8             	mov    %r8,%rbx
14002404f:	85 c0                	test   %eax,%eax
140024051:	4c 8d 44 24 38       	lea    0x38(%rsp),%r8
140024056:	ba 10 00 00 00       	mov    $0x10,%edx
14002405b:	48 8b f9             	mov    %rcx,%rdi
14002405e:	0f 45 d0             	cmovne %eax,%edx
140024061:	48 ff 15 70 b9 01 00 	rex.W call *0x1b970(%rip)        # 0x14003f9d8
140024068:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
14002406d:	eb 15                	jmp    0x140024084
14002406f:	44 8b 43 08          	mov    0x8(%rbx),%r8d
140024073:	ba 02 00 00 00       	mov    $0x2,%edx
140024078:	48 ff 15 81 b9 01 00 	rex.W call *0x1b981(%rip)        # 0x14003fa00
14002407f:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140024084:	85 c0                	test   %eax,%eax
140024086:	74 24                	je     0x1400240ac
140024088:	48 8b 1b             	mov    (%rbx),%rbx
14002408b:	48 8b cf             	mov    %rdi,%rcx
14002408e:	48 85 db             	test   %rbx,%rbx
140024091:	75 dc                	jne    0x14002406f
140024093:	8b 54 24 38          	mov    0x38(%rsp),%edx
140024097:	48 ff 15 72 b9 01 00 	rex.W call *0x1b972(%rip)        # 0x14003fa10
14002409e:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
1400240a3:	85 c0                	test   %eax,%eax
1400240a5:	74 05                	je     0x1400240ac
1400240a7:	8d 43 01             	lea    0x1(%rbx),%eax
1400240aa:	eb 02                	jmp    0x1400240ae
1400240ac:	33 c0                	xor    %eax,%eax
1400240ae:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1400240b3:	48 83 c4 20          	add    $0x20,%rsp
1400240b7:	5f                   	pop    %rdi
1400240b8:	c3                   	ret
1400240b9:	cc                   	int3
1400240ba:	cc                   	int3
1400240bb:	cc                   	int3
1400240bc:	cc                   	int3
1400240bd:	cc                   	int3
1400240be:	cc                   	int3
1400240bf:	cc                   	int3
1400240c0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1400240c5:	48 89 7c 24 18       	mov    %rdi,0x18(%rsp)
1400240ca:	55                   	push   %rbp
1400240cb:	48 8b ec             	mov    %rsp,%rbp
1400240ce:	48 83 ec 30          	sub    $0x30,%rsp
1400240d2:	8b c2                	mov    %edx,%eax
1400240d4:	4c 8d 4d f0          	lea    -0x10(%rbp),%r9
1400240d8:	85 c0                	test   %eax,%eax
1400240da:	ba 10 00 00 00       	mov    $0x10,%edx
1400240df:	49 8b d8             	mov    %r8,%rbx
1400240e2:	48 8b f9             	mov    %rcx,%rdi
1400240e5:	0f 45 d0             	cmovne %eax,%edx
1400240e8:	4c 8d 45 28          	lea    0x28(%rbp),%r8
1400240ec:	48 ff 15 bd b9 01 00 	rex.W call *0x1b9bd(%rip)        # 0x14003fab0
1400240f3:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
1400240f8:	85 c0                	test   %eax,%eax
1400240fa:	75 68                	jne    0x140024164
1400240fc:	33 c0                	xor    %eax,%eax
1400240fe:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140024103:	48 8b 7c 24 50       	mov    0x50(%rsp),%rdi
140024108:	48 83 c4 30          	add    $0x30,%rsp
14002410c:	5d                   	pop    %rbp
14002410d:	c3                   	ret
14002410e:	cc                   	int3
14002410f:	48 8b 4d 28          	mov    0x28(%rbp),%rcx
140024113:	48 8d 55 18          	lea    0x18(%rbp),%rdx
140024117:	48 ff 15 a2 b8 01 00 	rex.W call *0x1b8a2(%rip)        # 0x14003f9c0
14002411e:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140024123:	85 c0                	test   %eax,%eax
140024125:	74 d5                	je     0x1400240fc
140024127:	48 8b 4d 28          	mov    0x28(%rbp),%rcx
14002412b:	ba 10 00 00 00       	mov    $0x10,%edx
140024130:	48 ff 15 f9 b8 01 00 	rex.W call *0x1b8f9(%rip)        # 0x14003fa30
140024137:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
14002413c:	48 89 03             	mov    %rax,(%rbx)
14002413f:	48 85 c0             	test   %rax,%rax
140024142:	74 b8                	je     0x1400240fc
140024144:	48 8b 4d 28          	mov    0x28(%rbp),%rcx
140024148:	4c 8d 40 08          	lea    0x8(%rax),%r8
14002414c:	ba 02 00 00 00       	mov    $0x2,%edx
140024151:	48 ff 15 f0 b8 01 00 	rex.W call *0x1b8f0(%rip)        # 0x14003fa48
140024158:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
14002415d:	85 c0                	test   %eax,%eax
14002415f:	74 9b                	je     0x1400240fc
140024161:	48 8b 1b             	mov    (%rbx),%rbx
140024164:	48 8b 55 f0          	mov    -0x10(%rbp),%rdx
140024168:	48 8b 4d 28          	mov    0x28(%rbp),%rcx
14002416c:	48 ff 15 5d b8 01 00 	rex.W call *0x1b85d(%rip)        # 0x14003f9d0
140024173:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140024178:	85 c0                	test   %eax,%eax
14002417a:	75 93                	jne    0x14002410f
14002417c:	48 83 23 00          	andq   $0x0,(%rbx)
140024180:	48 8b cf             	mov    %rdi,%rcx
140024183:	4c 8b 45 f0          	mov    -0x10(%rbp),%r8
140024187:	48 8b 55 28          	mov    0x28(%rbp),%rdx
14002418b:	48 ff 15 4e b8 01 00 	rex.W call *0x1b84e(%rip)        # 0x14003f9e0
140024192:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140024197:	85 c0                	test   %eax,%eax
140024199:	0f 84 5d ff ff ff    	je     0x1400240fc
14002419f:	b8 01 00 00 00       	mov    $0x1,%eax
1400241a4:	e9 55 ff ff ff       	jmp    0x1400240fe
1400241a9:	cc                   	int3
1400241aa:	cc                   	int3
1400241ab:	cc                   	int3
1400241ac:	cc                   	int3
1400241ad:	cc                   	int3
1400241ae:	cc                   	int3
1400241af:	cc                   	int3
1400241b0:	48 85 c9             	test   %rcx,%rcx
1400241b3:	74 29                	je     0x1400241de
1400241b5:	53                   	push   %rbx
1400241b6:	48 83 ec 20          	sub    $0x20,%rsp
1400241ba:	48 8b 09             	mov    (%rcx),%rcx
1400241bd:	48 85 c9             	test   %rcx,%rcx
1400241c0:	74 17                	je     0x1400241d9
1400241c2:	48 8b 19             	mov    (%rcx),%rbx
1400241c5:	48 ff 15 5c b8 01 00 	rex.W call *0x1b85c(%rip)        # 0x14003fa28
1400241cc:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
1400241d1:	48 8b cb             	mov    %rbx,%rcx
1400241d4:	48 85 db             	test   %rbx,%rbx
1400241d7:	75 e9                	jne    0x1400241c2
1400241d9:	48 83 c4 20          	add    $0x20,%rsp
1400241dd:	5b                   	pop    %rbx
1400241de:	c3                   	ret
1400241df:	cc                   	int3
1400241e0:	cc                   	int3
1400241e1:	cc                   	int3
1400241e2:	cc                   	int3
1400241e3:	cc                   	int3
1400241e4:	cc                   	int3
1400241e5:	cc                   	int3
1400241e6:	cc                   	int3
1400241e7:	cc                   	int3
1400241e8:	cc                   	int3
1400241e9:	cc                   	int3
1400241ea:	cc                   	int3
1400241eb:	cc                   	int3
1400241ec:	cc                   	int3
1400241ed:	cc                   	int3
1400241ee:	cc                   	int3
1400241ef:	cc                   	int3
1400241f0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1400241f5:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
1400241fa:	55                   	push   %rbp
1400241fb:	57                   	push   %rdi
1400241fc:	41 56                	push   %r14
1400241fe:	48 8b ec             	mov    %rsp,%rbp
140024201:	48 83 ec 30          	sub    $0x30,%rsp
140024205:	8b c2                	mov    %edx,%eax
140024207:	45 33 f6             	xor    %r14d,%r14d
14002420a:	85 c0                	test   %eax,%eax
14002420c:	49 8b f8             	mov    %r8,%rdi
14002420f:	4c 8d 45 f0          	lea    -0x10(%rbp),%r8
140024213:	48 8b d9             	mov    %rcx,%rbx
140024216:	41 8d 56 10          	lea    0x10(%r14),%edx
14002421a:	0f 45 d0             	cmovne %eax,%edx
14002421d:	48 ff 15 b4 b7 01 00 	rex.W call *0x1b7b4(%rip)        # 0x14003f9d8
140024224:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140024229:	85 c0                	test   %eax,%eax
14002422b:	0f 84 53 02 00 00    	je     0x140024484
140024231:	4c 8d 45 28          	lea    0x28(%rbp),%r8
140024235:	ba 00 00 00 80       	mov    $0x80000000,%edx
14002423a:	48 8b cb             	mov    %rbx,%rcx
14002423d:	48 ff 15 94 b7 01 00 	rex.W call *0x1b794(%rip)        # 0x14003f9d8
140024244:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140024249:	85 c0                	test   %eax,%eax
14002424b:	0f 84 33 02 00 00    	je     0x140024484
140024251:	44 8b 47 04          	mov    0x4(%rdi),%r8d
140024255:	41 8d 56 02          	lea    0x2(%r14),%edx
140024259:	48 8b cb             	mov    %rbx,%rcx
14002425c:	48 ff 15 9d b7 01 00 	rex.W call *0x1b79d(%rip)        # 0x14003fa00
140024263:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140024268:	85 c0                	test   %eax,%eax
14002426a:	0f 84 14 02 00 00    	je     0x140024484
140024270:	8b 55 28             	mov    0x28(%rbp),%edx
140024273:	48 8b cb             	mov    %rbx,%rcx
140024276:	48 ff 15 93 b7 01 00 	rex.W call *0x1b793(%rip)        # 0x14003fa10
14002427d:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140024282:	85 c0                	test   %eax,%eax
140024284:	0f 84 fa 01 00 00    	je     0x140024484
14002428a:	44 38 37             	cmp    %r14b,(%rdi)
14002428d:	7d 71                	jge    0x140024300
14002428f:	4c 8d 45 28          	lea    0x28(%rbp),%r8
140024293:	ba 01 00 00 80       	mov    $0x80000001,%edx
140024298:	48 8b cb             	mov    %rbx,%rcx
14002429b:	48 ff 15 36 b7 01 00 	rex.W call *0x1b736(%rip)        # 0x14003f9d8
1400242a2:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
1400242a7:	85 c0                	test   %eax,%eax
1400242a9:	0f 84 d5 01 00 00    	je     0x140024484
1400242af:	4c 8d 45 38          	lea    0x38(%rbp),%r8
1400242b3:	48 8b cb             	mov    %rbx,%rcx
1400242b6:	41 8d 56 10          	lea    0x10(%r14),%edx
1400242ba:	48 ff 15 17 b7 01 00 	rex.W call *0x1b717(%rip)        # 0x14003f9d8
1400242c1:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
1400242c6:	85 c0                	test   %eax,%eax
1400242c8:	0f 84 b6 01 00 00    	je     0x140024484
1400242ce:	48 8d 57 08          	lea    0x8(%rdi),%rdx
1400242d2:	48 8b cb             	mov    %rbx,%rcx
1400242d5:	4c 8d 45 38          	lea    0x38(%rbp),%r8
1400242d9:	e8 3e 6f ff ff       	call   0x14001b21c
1400242de:	85 c0                	test   %eax,%eax
1400242e0:	0f 84 9e 01 00 00    	je     0x140024484
1400242e6:	8b 55 28             	mov    0x28(%rbp),%edx
1400242e9:	48 8b cb             	mov    %rbx,%rcx
1400242ec:	48 ff 15 1d b7 01 00 	rex.W call *0x1b71d(%rip)        # 0x14003fa10
1400242f3:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
1400242f8:	85 c0                	test   %eax,%eax
1400242fa:	0f 84 84 01 00 00    	je     0x140024484
140024300:	f6 07 40             	testb  $0x40,(%rdi)
140024303:	0f 84 a8 00 00 00    	je     0x1400243b1
140024309:	48 8b 47 18          	mov    0x18(%rdi),%rax
14002430d:	48 85 c0             	test   %rax,%rax
140024310:	74 35                	je     0x140024347
140024312:	41 b8 ff ff ff 7f    	mov    $0x7fffffff,%r8d
140024318:	41 8b c8             	mov    %r8d,%ecx
14002431b:	44 38 30             	cmp    %r14b,(%rax)
14002431e:	74 09                	je     0x140024329
140024320:	48 ff c0             	inc    %rax
140024323:	48 83 e9 01          	sub    $0x1,%rcx
140024327:	75 f2                	jne    0x14002431b
140024329:	48 8b c1             	mov    %rcx,%rax
14002432c:	48 f7 d8             	neg    %rax
14002432f:	1b d2                	sbb    %edx,%edx
140024331:	4c 2b c1             	sub    %rcx,%r8
140024334:	f7 d2                	not    %edx