180112c6e:	48 8b d6             	mov    %rsi,%rdx
180112c71:	49 8b ce             	mov    %r14,%rcx
180112c74:	e8 6f d8 ff ff       	call   0x1801104e8
180112c79:	48 3b f7             	cmp    %rdi,%rsi
180112c7c:	48 8b cf             	mov    %rdi,%rcx
180112c7f:	48 0f 47 ce          	cmova  %rsi,%rcx
180112c83:	85 c0                	test   %eax,%eax
180112c85:	0f 84 81 01 00 00    	je     0x180112e0c
180112c8b:	48 83 f9 01          	cmp    $0x1,%rcx
180112c8f:	75 2f                	jne    0x180112cc0
180112c91:	49 8b 14 24          	mov    (%r12),%rdx
180112c95:	4c 8d 45 48          	lea    0x48(%rbp),%r8
180112c99:	49 8b 0e             	mov    (%r14),%rcx
180112c9c:	4d 8b cf             	mov    %r15,%r9
180112c9f:	4c 89 6d 48          	mov    %r13,0x48(%rbp)
180112ca3:	e8 38 19 00 00       	call   0x1801145e0
180112ca8:	85 c0                	test   %eax,%eax
180112caa:	41 8b dd             	mov    %r13d,%ebx
180112cad:	48 8b 45 48          	mov    0x48(%rbp),%rax
180112cb1:	49 89 04 24          	mov    %rax,(%r12)
180112cb5:	0f 95 c3             	setne  %bl
180112cb8:	49 89 06             	mov    %rax,(%r14)
180112cbb:	e9 3f 01 00 00       	jmp    0x180112dff
180112cc0:	48 83 f9 02          	cmp    $0x2,%rcx
180112cc4:	0f 85 81 00 00 00    	jne    0x180112d4b
180112cca:	4c 89 6d d0          	mov    %r13,-0x30(%rbp)
180112cce:	49 8b c5             	mov    %r13,%rax
180112cd1:	4c 89 6d d8          	mov    %r13,-0x28(%rbp)
180112cd5:	48 3b f9             	cmp    %rcx,%rdi
180112cd8:	72 05                	jb     0x180112cdf
180112cda:	49 8b 44 24 08       	mov    0x8(%r12),%rax
180112cdf:	49 8b cd             	mov    %r13,%rcx
180112ce2:	48 83 fe 02          	cmp    $0x2,%rsi
180112ce6:	72 04                	jb     0x180112cec
180112ce8:	49 8b 4e 08          	mov    0x8(%r14),%rcx
180112cec:	48 89 45 e0          	mov    %rax,-0x20(%rbp)
180112cf0:	4c 8d 45 d0          	lea    -0x30(%rbp),%r8
180112cf4:	49 8b 04 24          	mov    (%r12),%rax
180112cf8:	48 8d 55 e0          	lea    -0x20(%rbp),%rdx
180112cfc:	48 89 45 e8          	mov    %rax,-0x18(%rbp)
180112d00:	4d 8b cf             	mov    %r15,%r9
180112d03:	49 8b 06             	mov    (%r14),%rax
180112d06:	48 89 4d f0          	mov    %rcx,-0x10(%rbp)
180112d0a:	48 8d 4d f0          	lea    -0x10(%rbp),%rcx
180112d0e:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
180112d12:	e8 29 1c 00 00       	call   0x180114940
180112d17:	85 c0                	test   %eax,%eax
180112d19:	41 8b dd             	mov    %r13d,%ebx
180112d1c:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
180112d20:	49 89 04 24          	mov    %rax,(%r12)
180112d24:	0f 95 c3             	setne  %bl
180112d27:	49 89 06             	mov    %rax,(%r14)
180112d2a:	48 8b 45 d0          	mov    -0x30(%rbp),%rax
180112d2e:	49 89 44 24 08       	mov    %rax,0x8(%r12)
180112d33:	49 89 46 08          	mov    %rax,0x8(%r14)
180112d37:	48 f7 d8             	neg    %rax
180112d3a:	48 1b ff             	sbb    %rdi,%rdi
180112d3d:	48 f7 df             	neg    %rdi
180112d40:	48 ff c7             	inc    %rdi
180112d43:	48 8b f7             	mov    %rdi,%rsi
180112d46:	e9 b4 00 00 00       	jmp    0x180112dff
180112d4b:	4c 89 7c 24 30       	mov    %r15,0x30(%rsp)
180112d50:	4c 89 6c 24 28       	mov    %r13,0x28(%rsp)
180112d55:	85 c0                	test   %eax,%eax
180112d57:	7e 52                	jle    0x180112dab
180112d59:	4c 8b cf             	mov    %rdi,%r9
180112d5c:	4c 89 74 24 20       	mov    %r14,0x20(%rsp)
180112d61:	4d 8b c4             	mov    %r12,%r8
180112d64:	48 8b d6             	mov    %rsi,%rdx
180112d67:	49 8b ce             	mov    %r14,%rcx
180112d6a:	e8 e9 d8 ff ff       	call   0x180110658
180112d6f:	85 c0                	test   %eax,%eax
180112d71:	45 8b d5             	mov    %r13d,%r10d
180112d74:	4d 8b c7             	mov    %r15,%r8
180112d77:	48 8b d6             	mov    %rsi,%rdx
180112d7a:	49 8b ce             	mov    %r14,%rcx
180112d7d:	41 0f 95 c2          	setne  %r10b
180112d81:	e8 02 e6 ff ff       	call   0x180111388
180112d86:	45 85 d2             	test   %r10d,%r10d
180112d89:	0f 84 03 01 00 00    	je     0x180112e92
180112d8f:	f7 d8                	neg    %eax
180112d91:	4c 89 7c 24 20       	mov    %r15,0x20(%rsp)
180112d96:	8b d0                	mov    %eax,%edx
180112d98:	4c 8b ce             	mov    %rsi,%r9
180112d9b:	4d 8b c6             	mov    %r14,%r8
180112d9e:	49 8b ce             	mov    %r14,%rcx
180112da1:	e8 e6 e6 ff ff       	call   0x18011148c
180112da6:	e9 6b fe ff ff       	jmp    0x180112c16
180112dab:	4c 8b ce             	mov    %rsi,%r9
180112dae:	4c 89 64 24 20       	mov    %r12,0x20(%rsp)
180112db3:	4d 8b c6             	mov    %r14,%r8
180112db6:	48 8b d7             	mov    %rdi,%rdx
180112db9:	49 8b cc             	mov    %r12,%rcx
180112dbc:	e8 97 d8 ff ff       	call   0x180110658
180112dc1:	85 c0                	test   %eax,%eax
180112dc3:	45 8b d5             	mov    %r13d,%r10d
180112dc6:	4d 8b c7             	mov    %r15,%r8
180112dc9:	48 8b d7             	mov    %rdi,%rdx
180112dcc:	49 8b cc             	mov    %r12,%rcx
180112dcf:	41 0f 95 c2          	setne  %r10b
180112dd3:	e8 b0 e5 ff ff       	call   0x180111388
180112dd8:	45 85 d2             	test   %r10d,%r10d
180112ddb:	74 1f                	je     0x180112dfc
180112ddd:	f7 d8                	neg    %eax
180112ddf:	4c 89 7c 24 20       	mov    %r15,0x20(%rsp)
180112de4:	8b d0                	mov    %eax,%edx
180112de6:	4c 8b cf             	mov    %rdi,%r9
180112de9:	4d 8b c4             	mov    %r12,%r8
180112dec:	49 8b cc             	mov    %r12,%rcx
180112def:	e8 98 e6 ff ff       	call   0x18011148c
180112df4:	85 c0                	test   %eax,%eax
180112df6:	0f 85 22 fe ff ff    	jne    0x180112c1e
180112dfc:	41 8b dd             	mov    %r13d,%ebx
180112dff:	85 db                	test   %ebx,%ebx
180112e01:	0f 84 b1 00 00 00    	je     0x180112eb8
180112e07:	e9 17 fe ff ff       	jmp    0x180112c23
180112e0c:	4c 8b c6             	mov    %rsi,%r8
180112e0f:	49 c1 e0 03          	shl    $0x3,%r8
180112e13:	4f 8d 0c 30          	lea    (%r8,%r14,1),%r9
180112e17:	49 8b 49 f8          	mov    -0x8(%r9),%rcx
180112e1b:	48 85 c9             	test   %rcx,%rcx
180112e1e:	74 5d                	je     0x180112e7d
180112e20:	48 8b 7d 58          	mov    0x58(%rbp),%rdi
180112e24:	48 85 ff             	test   %rdi,%rdi
180112e27:	75 11                	jne    0x180112e3a
180112e29:	48 8b 4d 60          	mov    0x60(%rbp),%rcx
180112e2d:	49 8b d6             	mov    %r14,%rdx
180112e30:	4c 8b e6             	mov    %rsi,%r12
180112e33:	e8 88 2b 02 00       	call   0x1801359c0
180112e38:	eb 73                	jmp    0x180112ead
180112e3a:	e8 51 e3 ff ff       	call   0x180111190
180112e3f:	4c 8d 47 ff          	lea    -0x1(%rdi),%r8
180112e43:	33 d2                	xor    %edx,%edx
180112e45:	4c 03 c0             	add    %rax,%r8
180112e48:	49 8b c9             	mov    %r9,%rcx
180112e4b:	49 c1 e8 06          	shr    $0x6,%r8
180112e4f:	4d 8d 24 30          	lea    (%r8,%rsi,1),%r12
180112e53:	49 c1 e0 03          	shl    $0x3,%r8
180112e57:	e8 24 2e 02 00       	call   0x180135c80
180112e5c:	4c 8b 45 60          	mov    0x60(%rbp),%r8
180112e60:	4d 8b cc             	mov    %r12,%r9
180112e63:	8b d7                	mov    %edi,%edx
180112e65:	4c 89 7c 24 20       	mov    %r15,0x20(%rsp)
180112e6a:	49 8b ce             	mov    %r14,%rcx
180112e6d:	e8 1a e6 ff ff       	call   0x18011148c
180112e72:	85 c0                	test   %eax,%eax
180112e74:	74 1c                	je     0x180112e92
180112e76:	bb 01 00 00 00       	mov    $0x1,%ebx
180112e7b:	eb 34                	jmp    0x180112eb1
180112e7d:	41 8b dd             	mov    %r13d,%ebx
180112e80:	4d 85 ff             	test   %r15,%r15
180112e83:	74 33                	je     0x180112eb8
180112e85:	41 c7 47 10 05 00 00 	movl   $0x5,0x10(%r15)
180112e8c:	00
180112e8d:	eb 29                	jmp    0x180112eb8
180112e8f:	45 33 ed             	xor    %r13d,%r13d
180112e92:	41 8b dd             	mov    %r13d,%ebx
180112e95:	eb 21                	jmp    0x180112eb8
180112e97:	48 8b 45 70          	mov    0x70(%rbp),%rax
180112e9b:	45 33 ed             	xor    %r13d,%r13d
180112e9e:	41 8b dd             	mov    %r13d,%ebx
180112ea1:	48 85 c0             	test   %rax,%rax
180112ea4:	74 12                	je     0x180112eb8
180112ea6:	c7 40 10 0c 00 00 00 	movl   $0xc,0x10(%rax)
180112ead:	85 db                	test   %ebx,%ebx
180112eaf:	74 07                	je     0x180112eb8
180112eb1:	48 8b 4d 68          	mov    0x68(%rbp),%rcx
180112eb5:	4c 89 21             	mov    %r12,(%rcx)
180112eb8:	49 8b ce             	mov    %r14,%rcx
180112ebb:	e8 3c 71 f8 ff       	call   0x180099ffc
180112ec0:	8b c3                	mov    %ebx,%eax
180112ec2:	48 8b 9c 24 c0 00 00 	mov    0xc0(%rsp),%rbx
180112ec9:	00
180112eca:	48 83 c4 70          	add    $0x70,%rsp
180112ece:	41 5f                	pop    %r15
180112ed0:	41 5e                	pop    %r14
180112ed2:	41 5d                	pop    %r13
180112ed4:	41 5c                	pop    %r12
180112ed6:	5f                   	pop    %rdi
180112ed7:	5e                   	pop    %rsi
180112ed8:	5d                   	pop    %rbp
180112ed9:	c3                   	ret
180112eda:	cc                   	int3
180112edb:	cc                   	int3
180112edc:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
180112ee1:	55                   	push   %rbp
180112ee2:	56                   	push   %rsi
180112ee3:	57                   	push   %rdi
180112ee4:	41 54                	push   %r12
180112ee6:	41 55                	push   %r13
180112ee8:	41 56                	push   %r14
180112eea:	41 57                	push   %r15
180112eec:	48 81 ec 80 00 00 00 	sub    $0x80,%rsp
180112ef3:	48 8b ac 24 e0 00 00 	mov    0xe0(%rsp),%rbp
180112efa:	00
180112efb:	48 8d 7a 01          	lea    0x1(%rdx),%rdi
180112eff:	4c 8b f9             	mov    %rcx,%r15
180112f02:	48 89 4c 24 70       	mov    %rcx,0x70(%rsp)
180112f07:	48 d1 ef             	shr    $1,%rdi
180112f0a:	49 8b f1             	mov    %r9,%rsi
180112f0d:	44 89 44 24 40       	mov    %r8d,0x40(%rsp)
180112f12:	4c 8b f2             	mov    %rdx,%r14
180112f15:	48 89 7c 24 68       	mov    %rdi,0x68(%rsp)
180112f1a:	48 8d 0c 57          	lea    (%rdi,%rdx,2),%rcx
180112f1e:	48 03 ca             	add    %rdx,%rcx
180112f21:	48 c1 e1 03          	shl    $0x3,%rcx
180112f25:	e8 26 6f f8 ff       	call   0x180099e50
180112f2a:	49 8d 1c 3e          	lea    (%r14,%rdi,1),%rbx
180112f2e:	48 89 44 24 48       	mov    %rax,0x48(%rsp)
180112f33:	48 8b cb             	mov    %rbx,%rcx
180112f36:	4c 8b e8             	mov    %rax,%r13
180112f39:	48 c1 e1 04          	shl    $0x4,%rcx
180112f3d:	48 83 c1 08          	add    $0x8,%rcx
180112f41:	e8 0a 6f f8 ff       	call   0x180099e50
180112f46:	4c 8b e0             	mov    %rax,%r12
180112f49:	48 85 c0             	test   %rax,%rax
180112f4c:	0f 84 21 03 00 00    	je     0x180113273
180112f52:	4d 8b cd             	mov    %r13,%r9
180112f55:	4d 85 ed             	test   %r13,%r13
180112f58:	0f 84 12 03 00 00    	je     0x180113270
180112f5e:	4d 85 f6             	test   %r14,%r14
180112f61:	0f 84 f6 02 00 00    	je     0x18011325d
180112f67:	49 8b d6             	mov    %r14,%rdx
180112f6a:	48 c1 e2 03          	shl    $0x3,%rdx
180112f6e:	48 89 54 24 60       	mov    %rdx,0x60(%rsp)
180112f73:	4a 83 7c 3a f8 00    	cmpq   $0x0,-0x8(%rdx,%r15,1)
180112f79:	0f 84 de 02 00 00    	je     0x18011325d
180112f7f:	48 83 66 58 00       	andq   $0x0,0x58(%rsi)
180112f84:	48 8d 04 d8          	lea    (%rax,%rbx,8),%rax
180112f88:	48 89 44 24 58       	mov    %rax,0x58(%rsp)
180112f8d:	4c 8b c2             	mov    %rdx,%r8
180112f90:	49 8d 46 01          	lea    0x1(%r14),%rax
180112f94:	4c 89 4e 38          	mov    %r9,0x38(%rsi)
180112f98:	48 8d 04 78          	lea    (%rax,%rdi,2),%rax
180112f9c:	4c 89 36             	mov    %r14,(%rsi)
180112f9f:	4d 8d 2c c4          	lea    (%r12,%rax,8),%r13
180112fa3:	48 89 7e 08          	mov    %rdi,0x8(%rsi)
180112fa7:	4a 8d 04 0a          	lea    (%rdx,%r9,1),%rax
180112fab:	49 8b d7             	mov    %r15,%rdx
180112fae:	48 89 46 50          	mov    %rax,0x50(%rsi)
180112fb2:	49 8b c6             	mov    %r14,%rax
180112fb5:	48 c1 e0 04          	shl    $0x4,%rax
180112fb9:	49 03 c1             	add    %r9,%rax
180112fbc:	48 89 46 40          	mov    %rax,0x40(%rsi)
180112fc0:	4b 8d 04 76          	lea    (%r14,%r14,2),%rax
180112fc4:	49 8d 0c c1          	lea    (%r9,%rax,8),%rcx
180112fc8:	8b 44 24 40          	mov    0x40(%rsp),%eax
180112fcc:	48 89 4e 48          	mov    %rcx,0x48(%rsi)
180112fd0:	49 8b c9             	mov    %r9,%rcx
180112fd3:	89 46 1c             	mov    %eax,0x1c(%rsi)
180112fd6:	e8 e5 29 02 00       	call   0x1801359c0
180112fdb:	4c 8d 46 20          	lea    0x20(%rsi),%r8
180112fdf:	4c 8b cd             	mov    %rbp,%r9
180112fe2:	49 8b d6             	mov    %r14,%rdx
180112fe5:	49 8b cf             	mov    %r15,%rcx
180112fe8:	e8 cf 0e 00 00       	call   0x180113ebc
180112fed:	4c 8b 5c 24 70       	mov    0x70(%rsp),%r11
180112ff2:	45 33 ff             	xor    %r15d,%r15d
180112ff5:	85 c0                	test   %eax,%eax
180112ff7:	bb 01 00 00 00       	mov    $0x1,%ebx
180112ffc:	41 0f 95 c7          	setne  %r15b
180113000:	48 83 64 24 50 00    	andq   $0x0,0x50(%rsp)
180113006:	41 84 1b             	test   %bl,(%r11)
180113009:	74 21                	je     0x18011302c
18011300b:	45 85 ff             	test   %r15d,%r15d
18011300e:	74 19                	je     0x180113029
180113010:	49 8b 0b             	mov    (%r11),%rcx
180113013:	48 8d 54 24 50       	lea    0x50(%rsp),%rdx
180113018:	4c 8b c5             	mov    %rbp,%r8
18011301b:	e8 ec e1 ff ff       	call   0x18011120c
180113020:	85 c0                	test   %eax,%eax
180113022:	74 05                	je     0x180113029
180113024:	44 8b fb             	mov    %ebx,%r15d
180113027:	eb 03                	jmp    0x18011302c
180113029:	45 33 ff             	xor    %r15d,%r15d
18011302c:	4c 8b 44 24 50       	mov    0x50(%rsp),%r8
180113031:	8b 44 24 40          	mov    0x40(%rsp),%eax
180113035:	4c 89 46 30          	mov    %r8,0x30(%rsi)
180113039:	85 c0                	test   %eax,%eax
18011303b:	0f 85 ce 00 00 00    	jne    0x18011310f
180113041:	21 46 18             	and    %eax,0x18(%rsi)
180113044:	49 8d 14 3e          	lea    (%r14,%rdi,1),%rdx
180113048:	4c 8b 46 28          	mov    0x28(%rsi),%r8
18011304c:	48 83 c8 ff          	or     $0xffffffffffffffff,%rax
180113050:	48 85 d2             	test   %rdx,%rdx
180113053:	74 0e                	je     0x180113063
180113055:	49 8b fc             	mov    %r12,%rdi
180113058:	48 8b ca             	mov    %rdx,%rcx
18011305b:	f3 48 ab             	rep stos %rax,%es:(%rdi)
18011305e:	48 8b 7c 24 68       	mov    0x68(%rsp),%rdi
180113063:	49 8b c8             	mov    %r8,%rcx
180113066:	48 d3 e8             	shr    %cl,%rax
180113069:	49 89 44 d4 f8       	mov    %rax,-0x8(%r12,%rdx,8)
18011306e:	45 85 ff             	test   %r15d,%r15d
180113071:	74 33                	je     0x1801130a6
180113073:	48 89 6c 24 38       	mov    %rbp,0x38(%rsp)
180113078:	49 8d 04 d4          	lea    (%r12,%rdx,8),%rax
18011307c:	4c 89 6c 24 30       	mov    %r13,0x30(%rsp)
180113081:	4d 8b ce             	mov    %r14,%r9
180113084:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
180113089:	4d 8b c3             	mov    %r11,%r8
18011308c:	48 8d 46 20          	lea    0x20(%rsi),%rax
180113090:	49 8b cc             	mov    %r12,%rcx
180113093:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
180113098:	e8 eb 08 00 00       	call   0x180113988
18011309d:	85 c0                	test   %eax,%eax
18011309f:	74 05                	je     0x1801130a6
1801130a1:	44 8b fb             	mov    %ebx,%r15d
1801130a4:	eb 03                	jmp    0x1801130a9
1801130a6:	45 33 ff             	xor    %r15d,%r15d
1801130a9:	48 8b 44 24 58       	mov    0x58(%rsp),%rax
1801130ae:	48 39 1c f8          	cmp    %rbx,(%rax,%rdi,8)
1801130b2:	74 0f                	je     0x1801130c3
1801130b4:	45 33 ff             	xor    %r15d,%r15d
1801130b7:	48 85 ed             	test   %rbp,%rbp
1801130ba:	74 07                	je     0x1801130c3
1801130bc:	c7 45 10 05 00 00 00 	movl   $0x5,0x10(%rbp)
1801130c3:	33 c9                	xor    %ecx,%ecx
1801130c5:	49 8b 44 cd 00       	mov    0x0(%r13,%rcx,8),%rax
1801130ca:	48 03 c3             	add    %rbx,%rax
1801130cd:	49 89 44 cd 00       	mov    %rax,0x0(%r13,%rcx,8)
1801130d2:	48 3b c3             	cmp    %rbx,%rax
1801130d5:	73 08                	jae    0x1801130df
1801130d7:	48 03 cb             	add    %rbx,%rcx
1801130da:	49 3b ce             	cmp    %r14,%rcx
1801130dd:	75 e6                	jne    0x1801130c5
1801130df:	48 8b 4e 38          	mov    0x38(%rsi),%rcx
1801130e3:	49 8b c6             	mov    %r14,%rax
1801130e6:	48 c1 e0 06          	shl    $0x6,%rax
1801130ea:	4d 8b c5             	mov    %r13,%r8
1801130ed:	49 8b d5             	mov    %r13,%rdx
1801130f0:	48 3d 00 01 00 00    	cmp    $0x100,%rax
1801130f6:	75 0a                	jne    0x180113102
1801130f8:	e8 63 fd 01 00       	call   0x180132e60
1801130fd:	e9 e1 00 00 00       	jmp    0x1801131e3
180113102:	4d 8b ce             	mov    %r14,%r9
180113105:	e8 26 fd 01 00       	call   0x180132e30
18011310a:	e9 d4 00 00 00       	jmp    0x1801131e3
18011310f:	3b c3                	cmp    %ebx,%eax
180113111:	0f 85 bd 00 00 00    	jne    0x1801131d4
180113117:	41 8b c6             	mov    %r14d,%eax
18011311a:	c1 e0 06             	shl    $0x6,%eax
18011311d:	89 46 18             	mov    %eax,0x18(%rsi)
180113120:	4d 85 c0             	test   %r8,%r8
180113123:	0f 84 ab 00 00 00    	je     0x1801131d4
180113129:	48 8b 46 48          	mov    0x48(%rsi),%rax
18011312d:	45 33 c9             	xor    %r9d,%r9d
180113130:	4d 8b dc             	mov    %r12,%r11
180113133:	4d 8b ee             	mov    %r14,%r13
180113136:	4c 89 00             	mov    %r8,(%rax)