140159c5b:	49 8b 5d 28          	mov    0x28(%r13),%rbx
140159c5f:	48 85 ed             	test   %rbp,%rbp
140159c62:	0f 85 48 fd ff ff    	jne    0x1401599b0
140159c68:	48 8b 7c 24 60       	mov    0x60(%rsp),%rdi
140159c6d:	48 89 f9             	mov    %rdi,%rcx
140159c70:	e8 3b f9 ff ff       	call   0x1401595b0
140159c75:	83 f8 ff             	cmp    $0xffffffff,%eax
140159c78:	0f 85 4f 0a 00 00    	jne    0x14015a6cd
140159c7e:	31 c0                	xor    %eax,%eax
140159c80:	48 8b 3d 69 ee 0d 00 	mov    0xdee69(%rip),%rdi        # 0x140238af0
140159c87:	48 8b 94 24 28 01 00 	mov    0x128(%rsp),%rdx
140159c8e:	00
140159c8f:	48 2b 17             	sub    (%rdi),%rdx
140159c92:	0f 85 90 0d 00 00    	jne    0x14015aa28
140159c98:	48 81 c4 38 01 00 00 	add    $0x138,%rsp
140159c9f:	5b                   	pop    %rbx
140159ca0:	5e                   	pop    %rsi
140159ca1:	5f                   	pop    %rdi
140159ca2:	5d                   	pop    %rbp
140159ca3:	41 5c                	pop    %r12
140159ca5:	41 5d                	pop    %r13
140159ca7:	41 5e                	pop    %r14
140159ca9:	41 5f                	pop    %r15
140159cab:	c3                   	ret
140159cac:	41 c7 85 48 03 00 00 	movl   $0x1,0x348(%r13)
140159cb3:	01 00 00 00
140159cb7:	e9 f1 fb ff ff       	jmp    0x1401598ad
140159cbc:	49 8b 45 28          	mov    0x28(%r13),%rax
140159cc0:	48 8b 4c 24 60       	mov    0x60(%rsp),%rcx
140159cc5:	48 8b 90 80 01 00 00 	mov    0x180(%rax),%rdx
140159ccc:	e8 ef fa ff ff       	call   0x1401597c0
140159cd1:	89 84 24 88 00 00 00 	mov    %eax,0x88(%rsp)
140159cd8:	85 c0                	test   %eax,%eax
140159cda:	0f 84 f4 fe ff ff    	je     0x140159bd4
140159ce0:	eb 9c                	jmp    0x140159c7e
140159ce2:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
140159ce8:	8b 84 24 90 01 00 00 	mov    0x190(%rsp),%eax
140159cef:	49 89 d9             	mov    %rbx,%r9
140159cf2:	49 89 e8             	mov    %rbp,%r8
140159cf5:	4c 89 e9             	mov    %r13,%rcx
140159cf8:	44 89 64 24 20       	mov    %r12d,0x20(%rsp)
140159cfd:	89 44 24 38          	mov    %eax,0x38(%rsp)
140159d01:	48 8d 84 24 c0 00 00 	lea    0xc0(%rsp),%rax
140159d08:	00
140159d09:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
140159d0e:	48 8d 84 24 b8 00 00 	lea    0xb8(%rsp),%rax
140159d15:	00
140159d16:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
140159d1b:	e8 40 ec ff ff       	call   0x140158960
140159d20:	41 89 c6             	mov    %eax,%r14d
140159d23:	8b bc 24 90 01 00 00 	mov    0x190(%rsp),%edi
140159d2a:	85 ff                	test   %edi,%edi
140159d2c:	0f 85 fe 01 00 00    	jne    0x140159f30
140159d32:	41 8b 45 38          	mov    0x38(%r13),%eax
140159d36:	85 c0                	test   %eax,%eax
140159d38:	74 0b                	je     0x140159d45
140159d3a:	45 85 f6             	test   %r14d,%r14d
140159d3d:	41 0f 94 c6          	sete   %r14b
140159d41:	45 0f b6 f6          	movzbl %r14b,%r14d
140159d45:	41 8b 4d 48          	mov    0x48(%r13),%ecx
140159d49:	85 c9                	test   %ecx,%ecx
140159d4b:	0f 84 ff 01 00 00    	je     0x140159f50
140159d51:	45 85 f6             	test   %r14d,%r14d
140159d54:	0f 85 24 ff ff ff    	jne    0x140159c7e
140159d5a:	48 8d 6b 01          	lea    0x1(%rbx),%rbp
140159d5e:	85 f6                	test   %esi,%esi
140159d60:	0f 84 3e 08 00 00    	je     0x14015a5a4
140159d66:	83 44 24 4c 01       	addl   $0x1,0x4c(%rsp)
140159d6b:	83 ee 01             	sub    $0x1,%esi
140159d6e:	0f 84 66 03 00 00    	je     0x14015a0da
140159d74:	44 8b 74 24 50       	mov    0x50(%rsp),%r14d
140159d79:	48 c7 84 24 b8 00 00 	movq   $0xffffffffffffffff,0xb8(%rsp)
140159d80:	00 ff ff ff ff
140159d85:	48 c7 84 24 c0 00 00 	movq   $0xffffffffffffffff,0xc0(%rsp)
140159d8c:	00 ff ff ff ff
140159d91:	45 85 f6             	test   %r14d,%r14d
140159d94:	0f 84 86 01 00 00    	je     0x140159f20
140159d9a:	8b 44 24 58          	mov    0x58(%rsp),%eax
140159d9e:	85 c0                	test   %eax,%eax
140159da0:	74 21                	je     0x140159dc3
140159da2:	44 8b 7c 24 54       	mov    0x54(%rsp),%r15d
140159da7:	45 85 ff             	test   %r15d,%r15d
140159daa:	0f 85 70 01 00 00    	jne    0x140159f20
140159db0:	8b 7c 24 4c          	mov    0x4c(%rsp),%edi
140159db4:	41 03 85 40 03 00 00 	add    0x340(%r13),%eax
140159dbb:	39 f8                	cmp    %edi,%eax
140159dbd:	0f 83 5d 01 00 00    	jae    0x140159f20
140159dc3:	49 89 ee             	mov    %rbp,%r14
140159dc6:	49 8b 6d 00          	mov    0x0(%r13),%rbp
140159dca:	48 85 ed             	test   %rbp,%rbp
140159dcd:	0f 84 d1 07 00 00    	je     0x14015a5a4
140159dd3:	89 f3                	mov    %esi,%ebx
140159dd5:	41 bf ff ff ff ff    	mov    $0xffffffff,%r15d
140159ddb:	48 8d bc 24 c8 00 00 	lea    0xc8(%rsp),%rdi
140159de2:	00
140159de3:	4c 01 f3             	add    %r14,%rbx
140159de6:	eb 52                	jmp    0x140159e3a
140159de8:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
140159def:	00
140159df0:	49 89 f9             	mov    %rdi,%r9
140159df3:	49 89 d8             	mov    %rbx,%r8
140159df6:	4c 89 f2             	mov    %r14,%rdx
140159df9:	48 89 e9             	mov    %rbp,%rcx
140159dfc:	c7 44 24 20 00 00 00 	movl   $0x0,0x20(%rsp)
140159e03:	00
140159e04:	e8 87 de ff ff       	call   0x140157c90
140159e09:	85 c0                	test   %eax,%eax
140159e0b:	75 24                	jne    0x140159e31
140159e0d:	8b 84 24 c8 00 00 00 	mov    0xc8(%rsp),%eax
140159e14:	89 c1                	mov    %eax,%ecx
140159e16:	0b 8c 24 cc 00 00 00 	or     0xcc(%rsp),%ecx
140159e1d:	78 12                	js     0x140159e31
140159e1f:	41 39 c7             	cmp    %eax,%r15d
140159e22:	89 c2                	mov    %eax,%edx
140159e24:	41 0f 4e d7          	cmovle %r15d,%edx
140159e28:	45 85 ff             	test   %r15d,%r15d
140159e2b:	0f 49 c2             	cmovns %edx,%eax
140159e2e:	41 89 c7             	mov    %eax,%r15d
140159e31:	48 8b 6d 00          	mov    0x0(%rbp),%rbp
140159e35:	48 85 ed             	test   %rbp,%rbp
140159e38:	74 56                	je     0x140159e90
140159e3a:	48 83 7d 68 00       	cmpq   $0x0,0x68(%rbp)
140159e3f:	75 af                	jne    0x140159df0
140159e41:	48 8d 4d 30          	lea    0x30(%rbp),%rcx
140159e45:	49 89 f9             	mov    %rdi,%r9
140159e48:	41 b8 01 00 00 00    	mov    $0x1,%r8d
140159e4e:	4c 89 f2             	mov    %r14,%rdx
140159e51:	c7 44 24 20 04 00 00 	movl   $0x4,0x20(%rsp)
140159e58:	00
140159e59:	c7 84 24 c8 00 00 00 	movl   $0x0,0xc8(%rsp)
140159e60:	00 00 00 00
140159e64:	89 b4 24 cc 00 00 00 	mov    %esi,0xcc(%rsp)
140159e6b:	e8 e0 e3 f9 ff       	call   0x1400f8250
140159e70:	85 c0                	test   %eax,%eax
140159e72:	74 99                	je     0x140159e0d
140159e74:	83 f8 01             	cmp    $0x1,%eax
140159e77:	0f 85 53 fc ff ff    	jne    0x140159ad0
140159e7d:	48 8b 6d 00          	mov    0x0(%rbp),%rbp
140159e81:	48 85 ed             	test   %rbp,%rbp
140159e84:	75 b4                	jne    0x140159e3a
140159e86:	66 2e 0f 1f 84 00 00 	cs nopw 0x0(%rax,%rax,1)
140159e8d:	00 00 00
140159e90:	45 85 ff             	test   %r15d,%r15d
140159e93:	0f 88 0b 07 00 00    	js     0x14015a5a4
140159e99:	49 63 ef             	movslq %r15d,%rbp
140159e9c:	4c 01 f5             	add    %r14,%rbp
140159e9f:	49 39 ee             	cmp    %rbp,%r14
140159ea2:	72 19                	jb     0x140159ebd
140159ea4:	eb 51                	jmp    0x140159ef7
140159ea6:	66 2e 0f 1f 84 00 00 	cs nopw 0x0(%rax,%rax,1)
140159ead:	00 00 00
140159eb0:	48 83 ed 01          	sub    $0x1,%rbp
140159eb4:	4c 39 f5             	cmp    %r14,%rbp
140159eb7:	0f 84 a5 09 00 00    	je     0x14015a862
140159ebd:	80 7d ff 0a          	cmpb   $0xa,-0x1(%rbp)
140159ec1:	75 ed                	jne    0x140159eb0
140159ec3:	49 39 ee             	cmp    %rbp,%r14
140159ec6:	73 2f                	jae    0x140159ef7
140159ec8:	8b 54 24 4c          	mov    0x4c(%rsp),%edx
140159ecc:	4c 89 f0             	mov    %r14,%rax
140159ecf:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
140159ed6:	00 00 00 00
140159eda:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
140159ee0:	31 c9                	xor    %ecx,%ecx
140159ee2:	80 38 0a             	cmpb   $0xa,(%rax)
140159ee5:	0f 94 c1             	sete   %cl
140159ee8:	48 83 c0 01          	add    $0x1,%rax
140159eec:	01 ca                	add    %ecx,%edx
140159eee:	48 39 c5             	cmp    %rax,%rbp
140159ef1:	75 ed                	jne    0x140159ee0
140159ef3:	89 54 24 4c          	mov    %edx,0x4c(%rsp)
140159ef7:	48 89 e8             	mov    %rbp,%rax
140159efa:	c7 44 24 50 01 00 00 	movl   $0x1,0x50(%rsp)
140159f01:	00
140159f02:	41 83 e4 01          	and    $0x1,%r12d
140159f06:	4c 29 f0             	sub    %r14,%rax
140159f09:	29 c6                	sub    %eax,%esi
140159f0b:	0f 85 cf fb ff ff    	jne    0x140159ae0
140159f11:	48 89 eb             	mov    %rbp,%rbx
140159f14:	41 bc 01 00 00 00    	mov    $0x1,%r12d
140159f1a:	e9 ec fb ff ff       	jmp    0x140159b0b
140159f1f:	90                   	nop
140159f20:	41 83 e4 01          	and    $0x1,%r12d
140159f24:	e9 b7 fb ff ff       	jmp    0x140159ae0
140159f29:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
140159f30:	48 8d 6b 01          	lea    0x1(%rbx),%rbp
140159f34:	85 f6                	test   %esi,%esi
140159f36:	0f 84 68 06 00 00    	je     0x14015a5a4
140159f3c:	83 44 24 4c 01       	addl   $0x1,0x4c(%rsp)
140159f41:	83 ee 01             	sub    $0x1,%esi
140159f44:	0f 85 2a fe ff ff    	jne    0x140159d74
140159f4a:	e9 2f fd ff ff       	jmp    0x140159c7e
140159f4f:	90                   	nop
140159f50:	45 85 f6             	test   %r14d,%r14d
140159f53:	0f 84 07 01 00 00    	je     0x14015a060
140159f59:	41 8b 95 54 03 00 00 	mov    0x354(%r13),%edx
140159f60:	85 d2                	test   %edx,%edx
140159f62:	78 0d                	js     0x140159f71
140159f64:	39 94 24 80 00 00 00 	cmp    %edx,0x80(%rsp)
140159f6b:	0f 83 ef 00 00 00    	jae    0x14015a060
140159f71:	45 8b 5d 40          	mov    0x40(%r13),%r11d
140159f75:	83 84 24 80 00 00 00 	addl   $0x1,0x80(%rsp)
140159f7c:	01
140159f7d:	45 85 db             	test   %r11d,%r11d
140159f80:	0f 85 c2 07 00 00    	jne    0x14015a748
140159f86:	45 8b 55 44          	mov    0x44(%r13),%r10d
140159f8a:	45 85 d2             	test   %r10d,%r10d
140159f8d:	0f 85 67 07 00 00    	jne    0x14015a6fa
140159f93:	45 8b 4d 4c          	mov    0x4c(%r13),%r9d
140159f97:	45 85 c9             	test   %r9d,%r9d
140159f9a:	0f 85 21 05 00 00    	jne    0x14015a4c1
140159fa0:	44 8b 84 24 88 00 00 	mov    0x88(%rsp),%r8d
140159fa7:	00
140159fa8:	45 85 c0             	test   %r8d,%r8d
140159fab:	0f 85 1e 09 00 00    	jne    0x14015a8cf
140159fb1:	45 8b 9d 88 00 00 00 	mov    0x88(%r13),%r11d
140159fb8:	41 8b 95 3c 03 00 00 	mov    0x33c(%r13),%edx
140159fbf:	41 8b 8d 84 00 00 00 	mov    0x84(%r13),%ecx
140159fc6:	44 89 df             	mov    %r11d,%edi
140159fc9:	45 89 da             	mov    %r11d,%r10d
140159fcc:	09 d7                	or     %edx,%edi
140159fce:	0f 85 ac 01 00 00    	jne    0x14015a180
140159fd4:	85 c9                	test   %ecx,%ecx
140159fd6:	0f 85 9a 07 00 00    	jne    0x14015a776
140159fdc:	85 c0                	test   %eax,%eax
140159fde:	0f 84 89 03 00 00    	je     0x14015a36d
140159fe4:	48 8b 84 24 c0 00 00 	mov    0xc0(%rsp),%rax
140159feb:	00
140159fec:	31 d2                	xor    %edx,%edx
140159fee:	48 85 c0             	test   %rax,%rax
140159ff1:	8b 7c 24 4c          	mov    0x4c(%rsp),%edi
140159ff5:	49 89 d8             	mov    %rbx,%r8
140159ff8:	48 0f 48 c2          	cmovs  %rdx,%rax
140159ffc:	c7 44 24 30 3a 00 00 	movl   $0x3a,0x30(%rsp)
14015a003:	00
14015a004:	48 89 ea             	mov    %rbp,%rdx
14015a007:	4c 89 e9             	mov    %r13,%rcx
14015a00a:	89 7c 24 20          	mov    %edi,0x20(%rsp)
14015a00e:	48 8d 6b 01          	lea    0x1(%rbx),%rbp
14015a012:	48 83 c0 01          	add    $0x1,%rax
14015a016:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
14015a01b:	48 8b 44 24 60       	mov    0x60(%rsp),%rax
14015a020:	4c 8b 08             	mov    (%rax),%r9
14015a023:	e8 28 f1 ff ff       	call   0x140159150
14015a028:	41 8b 95 88 00 00 00 	mov    0x88(%r13),%edx
14015a02f:	31 c0                	xor    %eax,%eax
14015a031:	85 d2                	test   %edx,%edx
14015a033:	0f 95 c0             	setne  %al
14015a036:	09 44 24 54          	or     %eax,0x54(%rsp)
14015a03a:	85 f6                	test   %esi,%esi
14015a03c:	0f 84 64 08 00 00    	je     0x14015a8a6
14015a042:	8d 47 01             	lea    0x1(%rdi),%eax
14015a045:	83 ee 01             	sub    $0x1,%esi
14015a048:	0f 84 58 08 00 00    	je     0x14015a8a6
14015a04e:	8b 7c 24 4c          	mov    0x4c(%rsp),%edi
14015a052:	89 44 24 4c          	mov    %eax,0x4c(%rsp)
14015a056:	89 7c 24 58          	mov    %edi,0x58(%rsp)
14015a05a:	e9 15 fd ff ff       	jmp    0x140159d74
14015a05f:	90                   	nop
14015a060:	8b 44 24 54          	mov    0x54(%rsp),%eax
14015a064:	85 c0                	test   %eax,%eax
14015a066:	0f 84 a4 00 00 00    	je     0x14015a110
14015a06c:	48 8b 44 24 78       	mov    0x78(%rsp),%rax
14015a071:	48 85 c0             	test   %rax,%rax
14015a074:	0f 84 db 03 00 00    	je     0x14015a455
14015a07a:	48 39 e8             	cmp    %rbp,%rax
14015a07d:	0f 82 d2 03 00 00    	jb     0x14015a455
14015a083:	8b 7c 24 4c          	mov    0x4c(%rsp),%edi
14015a087:	48 89 ea             	mov    %rbp,%rdx
14015a08a:	49 89 d8             	mov    %rbx,%r8
14015a08d:	4c 89 e9             	mov    %r13,%rcx
14015a090:	48 8b 84 24 b8 00 00 	mov    0xb8(%rsp),%rax
14015a097:	00
14015a098:	c7 44 24 30 2d 00 00 	movl   $0x2d,0x30(%rsp)
14015a09f:	00
14015a0a0:	48 8d 6b 01          	lea    0x1(%rbx),%rbp
14015a0a4:	89 7c 24 20          	mov    %edi,0x20(%rsp)
14015a0a8:	48 83 c0 01          	add    $0x1,%rax
14015a0ac:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
14015a0b1:	48 8b 44 24 60       	mov    0x60(%rsp),%rax
14015a0b6:	4c 8b 08             	mov    (%rax),%r9
14015a0b9:	e8 92 f0 ff ff       	call   0x140159150
14015a0be:	85 f6                	test   %esi,%esi
14015a0c0:	0f 84 aa 00 00 00    	je     0x14015a170
14015a0c6:	83 c7 01             	add    $0x1,%edi
14015a0c9:	89 7c 24 4c          	mov    %edi,0x4c(%rsp)
14015a0cd:	83 ee 01             	sub    $0x1,%esi
14015a0d0:	0f 85 9e fc ff ff    	jne    0x140159d74
14015a0d6:	41 8b 4d 48          	mov    0x48(%r13),%ecx
14015a0da:	8b 74 24 58          	mov    0x58(%rsp),%esi
14015a0de:	e9 31 04 00 00       	jmp    0x14015a514
14015a0e3:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
14015a0e8:	41 89 c6             	mov    %eax,%r14d
14015a0eb:	e9 33 fc ff ff       	jmp    0x140159d23
14015a0f0:	48 8b 7c 24 60       	mov    0x60(%rsp),%rdi
14015a0f5:	4c 89 54 24 78       	mov    %r10,0x78(%rsp)
14015a0fa:	8b 47 28             	mov    0x28(%rdi),%eax
14015a0fd:	48 03 47 20          	add    0x20(%rdi),%rax
14015a101:	49 39 c2             	cmp    %rax,%r10
14015a104:	0f 82 a8 05 00 00    	jb     0x14015a6b2
14015a10a:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
14015a110:	44 8b 7c 24 58       	mov    0x58(%rsp),%r15d
14015a115:	45 85 ff             	test   %r15d,%r15d
14015a118:	75 27                	jne    0x14015a141
14015a11a:	48 8d 6b 01          	lea    0x1(%rbx),%rbp
14015a11e:	85 f6                	test   %esi,%esi
14015a120:	0f 84 ea 03 00 00    	je     0x14015a510
14015a126:	83 44 24 4c 01       	addl   $0x1,0x4c(%rsp)
14015a12b:	83 ee 01             	sub    $0x1,%esi
14015a12e:	0f 84 dc 03 00 00    	je     0x14015a510
14015a134:	c7 44 24 54 00 00 00 	movl   $0x0,0x54(%rsp)
14015a13b:	00
14015a13c:	e9 33 fc ff ff       	jmp    0x140159d74
14015a141:	8b 7c 24 4c          	mov    0x4c(%rsp),%edi
14015a145:	8b 44 24 58          	mov    0x58(%rsp),%eax
14015a149:	41 03 85 40 03 00 00 	add    0x340(%r13),%eax
14015a150:	39 f8                	cmp    %edi,%eax
14015a152:	0f 83 80 03 00 00    	jae    0x14015a4d8
14015a158:	48 8d 6b 01          	lea    0x1(%rbx),%rbp
14015a15c:	85 f6                	test   %esi,%esi
14015a15e:	0f 84 40 04 00 00    	je     0x14015a5a4
14015a164:	83 c7 01             	add    $0x1,%edi
14015a167:	89 7c 24 4c          	mov    %edi,0x4c(%rsp)
14015a16b:	83 ee 01             	sub    $0x1,%esi
14015a16e:	75 c4                	jne    0x14015a134
14015a170:	8b 74 24 58          	mov    0x58(%rsp),%esi
14015a174:	41 8b 4d 48          	mov    0x48(%r13),%ecx
14015a178:	e9 97 03 00 00       	jmp    0x14015a514
14015a17d:	0f 1f 00             	nopl   (%rax)
14015a180:	31 c0                	xor    %eax,%eax
14015a182:	85 c9                	test   %ecx,%ecx
14015a184:	8b 4c 24 4c          	mov    0x4c(%rsp),%ecx
14015a188:	bf 01 00 00 00       	mov    $0x1,%edi
14015a18d:	0f 95 c0             	setne  %al
14015a190:	89 44 24 58          	mov    %eax,0x58(%rsp)
14015a194:	89 c8                	mov    %ecx,%eax
14015a196:	29 d0                	sub    %edx,%eax
14015a198:	39 ca                	cmp    %ecx,%edx
14015a19a:	0f 43 c7             	cmovae %edi,%eax
14015a19d:	89 c1                	mov    %eax,%ecx
14015a19f:	41 8b 85 44 03 00 00 	mov    0x344(%r13),%eax
14015a1a6:	39 c8                	cmp    %ecx,%eax
14015a1a8:	8d 50 01             	lea    0x1(%rax),%edx
14015a1ab:	0f 42 d1             	cmovb  %ecx,%edx
14015a1ae:	89 54 24 70          	mov    %edx,0x70(%rsp)
14015a1b2:	89 d1                	mov    %edx,%ecx
14015a1b4:	45 85 db             	test   %r11d,%r11d
14015a1b7:	0f 85 c3 04 00 00    	jne    0x14015a680
14015a1bd:	48 8b 44 24 60       	mov    0x60(%rsp),%rax
14015a1c2:	8b 7c 24 4c          	mov    0x4c(%rsp),%edi