180032cd2:	74 38                	je     0x180032d0c
180032cd4:	48 8b 59 10          	mov    0x10(%rcx),%rbx
180032cd8:	48 8b c3             	mov    %rbx,%rax
180032cdb:	48 83 e0 fc          	and    $0xfffffffffffffffc,%rax
180032cdf:	45 85 c0             	test   %r8d,%r8d
180032ce2:	74 08                	je     0x180032cec
180032ce4:	48 85 c0             	test   %rax,%rax
180032ce7:	74 03                	je     0x180032cec
180032ce9:	48 33 c1             	xor    %rcx,%rax
180032cec:	49 3b c1             	cmp    %r9,%rax
180032cef:	0f 85 dc 01 00 00    	jne    0x180032ed1
180032cf5:	48 8b c1             	mov    %rcx,%rax
180032cf8:	49 33 c2             	xor    %r10,%rax
180032cfb:	45 85 c0             	test   %r8d,%r8d
180032cfe:	49 0f 44 c2          	cmove  %r10,%rax
180032d02:	83 e3 03             	and    $0x3,%ebx
180032d05:	48 0b c3             	or     %rbx,%rax
180032d08:	48 89 41 10          	mov    %rax,0x10(%rcx)
180032d0c:	45 85 c0             	test   %r8d,%r8d
180032d0f:	74 08                	je     0x180032d19
180032d11:	48 85 c9             	test   %rcx,%rcx
180032d14:	74 03                	je     0x180032d19
180032d16:	49 33 ca             	xor    %r10,%rcx
180032d19:	49 33 ff             	xor    %r15,%rdi
180032d1c:	49 89 0c fa          	mov    %rcx,(%r10,%rdi,8)
180032d20:	49 8b ca             	mov    %r10,%rcx
180032d23:	49 33 c9             	xor    %r9,%rcx
180032d26:	45 85 c0             	test   %r8d,%r8d
180032d29:	48 8b c1             	mov    %rcx,%rax
180032d2c:	49 0f 44 c2          	cmove  %r10,%rax
180032d30:	48 89 06             	mov    %rax,(%rsi)
180032d33:	49 83 62 10 03       	andq   $0x3,0x10(%r10)
180032d38:	45 85 c0             	test   %r8d,%r8d
180032d3b:	49 0f 44 c9          	cmove  %r9,%rcx
180032d3f:	49 09 4a 10          	or     %rcx,0x10(%r10)
180032d43:	4d 8b d1             	mov    %r9,%r10
180032d46:	4d 8b 03             	mov    (%r11),%r8
180032d49:	45 84 7b 08          	test   %r15b,0x8(%r11)
180032d4d:	74 08                	je     0x180032d57
180032d4f:	4d 85 c0             	test   %r8,%r8
180032d52:	74 03                	je     0x180032d57
180032d54:	4d 33 c3             	xor    %r11,%r8
180032d57:	49 8b 42 10          	mov    0x10(%r10),%rax
180032d5b:	41 33 ef             	xor    %r15d,%ebp
180032d5e:	45 0f b6 4b 08       	movzbl 0x8(%r11),%r9d
180032d63:	48 83 e0 fc          	and    $0xfffffffffffffffc,%rax
180032d67:	45 23 cf             	and    %r15d,%r9d
180032d6a:	74 08                	je     0x180032d74
180032d6c:	48 85 c0             	test   %rax,%rax
180032d6f:	74 03                	je     0x180032d74
180032d71:	49 33 c2             	xor    %r10,%rax
180032d74:	48 3b c2             	cmp    %rdx,%rax
180032d77:	0f 85 54 01 00 00    	jne    0x180032ed1
180032d7d:	8b fd                	mov    %ebp,%edi
180032d7f:	49 33 ff             	xor    %r15,%rdi
180032d82:	48 8b 04 fa          	mov    (%rdx,%rdi,8),%rax
180032d86:	45 85 c9             	test   %r9d,%r9d
180032d89:	74 08                	je     0x180032d93
180032d8b:	48 85 c0             	test   %rax,%rax
180032d8e:	74 03                	je     0x180032d93
180032d90:	48 33 c2             	xor    %rdx,%rax
180032d93:	49 3b c2             	cmp    %r10,%rax
180032d96:	0f 85 35 01 00 00    	jne    0x180032ed1
180032d9c:	48 8b 4a 10          	mov    0x10(%rdx),%rcx
180032da0:	48 83 e1 fc          	and    $0xfffffffffffffffc,%rcx
180032da4:	45 85 c9             	test   %r9d,%r9d
180032da7:	74 08                	je     0x180032db1
180032da9:	48 85 c9             	test   %rcx,%rcx
180032dac:	74 08                	je     0x180032db6
180032dae:	48 33 ca             	xor    %rdx,%rcx
180032db1:	48 85 c9             	test   %rcx,%rcx
180032db4:	75 0e                	jne    0x180032dc4
180032db6:	4c 3b c2             	cmp    %rdx,%r8
180032db9:	0f 85 12 01 00 00    	jne    0x180032ed1
180032dbf:	4d 8b c2             	mov    %r10,%r8
180032dc2:	eb 52                	jmp    0x180032e16
180032dc4:	48 8b 41 08          	mov    0x8(%rcx),%rax
180032dc8:	45 85 c9             	test   %r9d,%r9d
180032dcb:	74 08                	je     0x180032dd5
180032dcd:	48 85 c0             	test   %rax,%rax
180032dd0:	74 03                	je     0x180032dd5
180032dd2:	48 33 c1             	xor    %rcx,%rax
180032dd5:	48 3b c2             	cmp    %rdx,%rax
180032dd8:	75 13                	jne    0x180032ded
180032dda:	49 8b c2             	mov    %r10,%rax
180032ddd:	48 33 c1             	xor    %rcx,%rax
180032de0:	45 85 c9             	test   %r9d,%r9d
180032de3:	49 0f 44 c2          	cmove  %r10,%rax
180032de7:	48 89 41 08          	mov    %rax,0x8(%rcx)
180032deb:	eb 29                	jmp    0x180032e16
180032ded:	48 8b 01             	mov    (%rcx),%rax
180032df0:	45 85 c9             	test   %r9d,%r9d
180032df3:	74 08                	je     0x180032dfd
180032df5:	48 85 c0             	test   %rax,%rax
180032df8:	74 03                	je     0x180032dfd
180032dfa:	48 33 c1             	xor    %rcx,%rax
180032dfd:	48 3b c2             	cmp    %rdx,%rax
180032e00:	0f 85 cb 00 00 00    	jne    0x180032ed1
180032e06:	49 8b c2             	mov    %r10,%rax
180032e09:	48 33 c1             	xor    %rcx,%rax
180032e0c:	45 85 c9             	test   %r9d,%r9d
180032e0f:	49 0f 44 c2          	cmove  %r10,%rax
180032e13:	48 89 01             	mov    %rax,(%rcx)
180032e16:	45 85 c9             	test   %r9d,%r9d
180032e19:	74 08                	je     0x180032e23
180032e1b:	48 85 c9             	test   %rcx,%rcx
180032e1e:	74 03                	je     0x180032e23
180032e20:	49 33 ca             	xor    %r10,%rcx
180032e23:	49 83 62 10 03       	andq   $0x3,0x10(%r10)
180032e28:	49 09 4a 10          	or     %rcx,0x10(%r10)
180032e2c:	49 8b 0c ea          	mov    (%r10,%rbp,8),%rcx
180032e30:	45 85 c9             	test   %r9d,%r9d
180032e33:	74 08                	je     0x180032e3d
180032e35:	48 85 c9             	test   %rcx,%rcx
180032e38:	74 3c                	je     0x180032e76
180032e3a:	49 33 ca             	xor    %r10,%rcx
180032e3d:	48 85 c9             	test   %rcx,%rcx
180032e40:	74 34                	je     0x180032e76
180032e42:	48 8b 59 10          	mov    0x10(%rcx),%rbx
180032e46:	48 8b c3             	mov    %rbx,%rax
180032e49:	48 83 e0 fc          	and    $0xfffffffffffffffc,%rax
180032e4d:	45 85 c9             	test   %r9d,%r9d
180032e50:	74 08                	je     0x180032e5a
180032e52:	48 85 c0             	test   %rax,%rax
180032e55:	74 03                	je     0x180032e5a
180032e57:	48 33 c1             	xor    %rcx,%rax
180032e5a:	49 3b c2             	cmp    %r10,%rax
180032e5d:	75 72                	jne    0x180032ed1
180032e5f:	48 8b c2             	mov    %rdx,%rax
180032e62:	48 33 c1             	xor    %rcx,%rax
180032e65:	45 85 c9             	test   %r9d,%r9d
180032e68:	48 0f 44 c2          	cmove  %rdx,%rax
180032e6c:	83 e3 03             	and    $0x3,%ebx
180032e6f:	48 0b c3             	or     %rbx,%rax
180032e72:	48 89 41 10          	mov    %rax,0x10(%rcx)
180032e76:	45 85 c9             	test   %r9d,%r9d
180032e79:	74 08                	je     0x180032e83
180032e7b:	48 85 c9             	test   %rcx,%rcx
180032e7e:	74 03                	je     0x180032e83
180032e80:	48 33 ca             	xor    %rdx,%rcx
180032e83:	48 89 0c fa          	mov    %rcx,(%rdx,%rdi,8)
180032e87:	48 8b ca             	mov    %rdx,%rcx
180032e8a:	49 33 ca             	xor    %r10,%rcx
180032e8d:	45 85 c9             	test   %r9d,%r9d
180032e90:	48 8b c1             	mov    %rcx,%rax
180032e93:	48 0f 44 c2          	cmove  %rdx,%rax
180032e97:	49 89 04 ea          	mov    %rax,(%r10,%rbp,8)
180032e9b:	48 83 62 10 03       	andq   $0x3,0x10(%rdx)
180032ea0:	45 85 c9             	test   %r9d,%r9d
180032ea3:	49 0f 44 ca          	cmove  %r10,%rcx
180032ea7:	48 09 4a 10          	or     %rcx,0x10(%rdx)
180032eab:	45 84 7b 08          	test   %r15b,0x8(%r11)
180032eaf:	74 0f                	je     0x180032ec0
180032eb1:	49 8b c3             	mov    %r11,%rax
180032eb4:	49 33 c0             	xor    %r8,%rax
180032eb7:	49 f7 d8             	neg    %r8
180032eba:	4d 1b c0             	sbb    %r8,%r8
180032ebd:	4c 23 c0             	and    %rax,%r8
180032ec0:	4d 89 03             	mov    %r8,(%r11)
180032ec3:	44 08 7a 10          	or     %r15b,0x10(%rdx)
180032ec7:	41 80 62 10 fe       	andb   $0xfe,0x10(%r10)
180032ecc:	e9 0c fc ff ff       	jmp    0x180032add
180032ed1:	b9 1d 00 00 00       	mov    $0x1d,%ecx
180032ed6:	cd 29                	int    $0x29
180032ed8:	48 8b c4             	mov    %rsp,%rax
180032edb:	48 89 58 08          	mov    %rbx,0x8(%rax)
180032edf:	48 89 68 10          	mov    %rbp,0x10(%rax)
180032ee3:	48 89 70 18          	mov    %rsi,0x18(%rax)
180032ee7:	48 89 78 20          	mov    %rdi,0x20(%rax)
180032eeb:	41 56                	push   %r14
180032eed:	41 57                	push   %r15
180032eef:	0f b6 79 08          	movzbl 0x8(%rcx),%edi
180032ef3:	41 bf 01 00 00 00    	mov    $0x1,%r15d
180032ef9:	4c 8b 12             	mov    (%rdx),%r10
180032efc:	8b c7                	mov    %edi,%eax
180032efe:	4c 8b da             	mov    %rdx,%r11
180032f01:	4c 8b c9             	mov    %rcx,%r9
180032f04:	41 23 c7             	and    %r15d,%eax
180032f07:	74 08                	je     0x180032f11
180032f09:	4d 85 d2             	test   %r10,%r10
180032f0c:	74 03                	je     0x180032f11
180032f0e:	4c 33 d2             	xor    %rdx,%r10
180032f11:	48 8b 5a 08          	mov    0x8(%rdx),%rbx
180032f15:	85 c0                	test   %eax,%eax
180032f17:	74 08                	je     0x180032f21
180032f19:	48 85 db             	test   %rbx,%rbx
180032f1c:	74 03                	je     0x180032f21
180032f1e:	49 33 db             	xor    %r11,%rbx
180032f21:	4d 85 d2             	test   %r10,%r10
180032f24:	4c 8b c3             	mov    %rbx,%r8
180032f27:	49 8b c2             	mov    %r10,%rax
180032f2a:	4d 0f 45 c2          	cmovne %r10,%r8
180032f2e:	41 22 ff             	and    %r15b,%dil
180032f31:	48 f7 d8             	neg    %rax
180032f34:	48 1b c9             	sbb    %rcx,%rcx
180032f37:	48 85 cb             	test   %rcx,%rbx
180032f3a:	0f 84 f7 01 00 00    	je     0x180033137
180032f40:	48 8b 03             	mov    (%rbx),%rax
180032f43:	48 8b cb             	mov    %rbx,%rcx
180032f46:	48 8b d3             	mov    %rbx,%rdx
180032f49:	45 8b f7             	mov    %r15d,%r14d
180032f4c:	48 85 c0             	test   %rax,%rax
180032f4f:	74 20                	je     0x180032f71
180032f51:	45 33 f6             	xor    %r14d,%r14d
180032f54:	48 8b d1             	mov    %rcx,%rdx
180032f57:	40 84 ff             	test   %dil,%dil
180032f5a:	74 0a                	je     0x180032f66
180032f5c:	48 85 c0             	test   %rax,%rax
180032f5f:	74 05                	je     0x180032f66
180032f61:	48 33 c8             	xor    %rax,%rcx
180032f64:	eb 03                	jmp    0x180032f69
180032f66:	48 8b c8             	mov    %rax,%rcx
180032f69:	48 8b 01             	mov    (%rcx),%rax
180032f6c:	48 85 c0             	test   %rax,%rax
180032f6f:	75 e3                	jne    0x180032f54
180032f71:	40 84 ff             	test   %dil,%dil
180032f74:	74 0d                	je     0x180032f83
180032f76:	4d 85 d2             	test   %r10,%r10
180032f79:	74 08                	je     0x180032f83
180032f7b:	48 8b c1             	mov    %rcx,%rax
180032f7e:	49 33 c2             	xor    %r10,%rax
180032f81:	eb 03                	jmp    0x180032f86
180032f83:	49 8b c2             	mov    %r10,%rax
180032f86:	48 89 01             	mov    %rax,(%rcx)
180032f89:	49 8d 72 10          	lea    0x10(%r10),%rsi
180032f8d:	48 8b 3e             	mov    (%rsi),%rdi
180032f90:	45 8a 41 08          	mov    0x8(%r9),%r8b
180032f94:	48 8b c7             	mov    %rdi,%rax
180032f97:	48 83 e0 fc          	and    $0xfffffffffffffffc,%rax
180032f9b:	45 22 c7             	and    %r15b,%r8b
180032f9e:	74 08                	je     0x180032fa8
180032fa0:	48 85 c0             	test   %rax,%rax
180032fa3:	74 03                	je     0x180032fa8
180032fa5:	49 33 c2             	xor    %r10,%rax
180032fa8:	49 3b c3             	cmp    %r11,%rax
180032fab:	0f 85 7d 08 00 00    	jne    0x18003382e
180032fb1:	4c 33 d1             	xor    %rcx,%r10
180032fb4:	45 84 c0             	test   %r8b,%r8b
180032fb7:	4c 0f 44 d1          	cmove  %rcx,%r10
180032fbb:	83 e7 03             	and    $0x3,%edi
180032fbe:	4c 0b d7             	or     %rdi,%r10
180032fc1:	4c 89 16             	mov    %r10,(%rsi)
180032fc4:	4c 8b 43 10          	mov    0x10(%rbx),%r8
180032fc8:	41 8a 79 08          	mov    0x8(%r9),%dil
180032fcc:	49 8b c0             	mov    %r8,%rax
180032fcf:	48 83 e0 fc          	and    $0xfffffffffffffffc,%rax
180032fd3:	41 22 ff             	and    %r15b,%dil
180032fd6:	74 08                	je     0x180032fe0
180032fd8:	48 85 c0             	test   %rax,%rax
180032fdb:	74 03                	je     0x180032fe0
180032fdd:	48 33 c3             	xor    %rbx,%rax
180032fe0:	49 3b c3             	cmp    %r11,%rax
180032fe3:	0f 85 45 08 00 00    	jne    0x18003382e
180032fe9:	4c 8b d3             	mov    %rbx,%r10
180032fec:	48 8b c3             	mov    %rbx,%rax
180032fef:	48 33 c1             	xor    %rcx,%rax
180032ff2:	4c 33 d1             	xor    %rcx,%r10
180032ff5:	40 84 ff             	test   %dil,%dil
180032ff8:	48 0f 44 c1          	cmove  %rcx,%rax
180032ffc:	41 83 e0 03          	and    $0x3,%r8d
180033000:	49 0b c0             	or     %r8,%rax
180033003:	48 89 43 10          	mov    %rax,0x10(%rbx)
180033007:	41 8a 41 08          	mov    0x8(%r9),%al
18003300b:	4c 8b 41 08          	mov    0x8(%rcx),%r8
18003300f:	41 22 c7             	and    %r15b,%al
180033012:	74 08                	je     0x18003301c
180033014:	4d 85 c0             	test   %r8,%r8
180033017:	74 03                	je     0x18003301c
180033019:	4c 33 c1             	xor    %rcx,%r8
18003301c:	48 8b 79 10          	mov    0x10(%rcx),%rdi
180033020:	84 c0                	test   %al,%al
180033022:	48 8b c7             	mov    %rdi,%rax
180033025:	4c 0f 44 d3          	cmove  %rbx,%r10
180033029:	48 83 e0 fc          	and    $0xfffffffffffffffc,%rax
18003302d:	4c 89 51 08          	mov    %r10,0x8(%rcx)
180033031:	41 8a 59 08          	mov    0x8(%r9),%bl
180033035:	41 22 df             	and    %r15b,%bl
180033038:	74 0d                	je     0x180033047
18003303a:	48 85 c0             	test   %rax,%rax
18003303d:	74 08                	je     0x180033047
18003303f:	4c 8b d0             	mov    %rax,%r10
180033042:	4c 33 d1             	xor    %rcx,%r10
180033045:	eb 03                	jmp    0x18003304a
180033047:	4c 8b d0             	mov    %rax,%r10
18003304a:	4c 3b d2             	cmp    %rdx,%r10
18003304d:	74 1e                	je     0x18003306d
18003304f:	84 db                	test   %bl,%bl
180033051:	74 08                	je     0x18003305b
180033053:	48 85 c0             	test   %rax,%rax
180033056:	74 0c                	je     0x180033064
180033058:	48 33 c1             	xor    %rcx,%rax
18003305b:	48 85 c0             	test   %rax,%rax
18003305e:	0f 85 ca 07 00 00    	jne    0x18003382e
180033064:	48 3b ca             	cmp    %rdx,%rcx
180033067:	0f 85 c1 07 00 00    	jne    0x18003382e
18003306d:	49 8b 43 10          	mov    0x10(%r11),%rax
180033071:	40 8a 71 10          	mov    0x10(%rcx),%sil
180033075:	48 83 e0 fc          	and    $0xfffffffffffffffc,%rax
180033079:	84 db                	test   %bl,%bl
18003307b:	74 14                	je     0x180033091
18003307d:	48 85 c0             	test   %rax,%rax
180033080:	74 03                	je     0x180033085
180033082:	49 33 c3             	xor    %r11,%rax
180033085:	84 db                	test   %bl,%bl
180033087:	74 08                	je     0x180033091
180033089:	48 85 c0             	test   %rax,%rax
18003308c:	74 03                	je     0x180033091
18003308e:	48 33 c1             	xor    %rcx,%rax
180033091:	83 e7 03             	and    $0x3,%edi
180033094:	48 0b f8             	or     %rax,%rdi
180033097:	48 89 79 10          	mov    %rdi,0x10(%rcx)
18003309b:	40 8a c7             	mov    %dil,%al
18003309e:	41 32 43 10          	xor    0x10(%r11),%al
1800330a2:	41 22 c7             	and    %r15b,%al
1800330a5:	30 41 10             	xor    %al,0x10(%rcx)
1800330a8:	4d 8b 53 10          	mov    0x10(%r11),%r10
1800330ac:	49 83 e2 fc          	and    $0xfffffffffffffffc,%r10
1800330b0:	75 2e                	jne    0x1800330e0
1800330b2:	49 8b 01             	mov    (%r9),%rax
1800330b5:	45 84 79 08          	test   %r15b,0x8(%r9)
1800330b9:	74 08                	je     0x1800330c3
1800330bb:	48 85 c0             	test   %rax,%rax
1800330be:	74 03                	je     0x1800330c3
1800330c0:	49 33 c1             	xor    %r9,%rax
1800330c3:	49 3b c3             	cmp    %r11,%rax
1800330c6:	0f 85 62 07 00 00    	jne    0x18003382e
1800330cc:	48 8b c1             	mov    %rcx,%rax
1800330cf:	45 84 79 08          	test   %r15b,0x8(%r9)
1800330d3:	74 03                	je     0x1800330d8
1800330d5:	49 33 c1             	xor    %r9,%rax
1800330d8:	49 89 01             	mov    %rax,(%r9)
1800330db:	e9 80 01 00 00       	jmp    0x180033260
1800330e0:	41 8a 79 08          	mov    0x8(%r9),%dil
1800330e4:	41 22 ff             	and    %r15b,%dil
1800330e7:	74 03                	je     0x1800330ec
1800330e9:	4d 33 d3             	xor    %r11,%r10
1800330ec:	49 8b 5a 08          	mov    0x8(%r10),%rbx
1800330f0:	40 84 ff             	test   %dil,%dil
1800330f3:	74 08                	je     0x1800330fd
1800330f5:	48 85 db             	test   %rbx,%rbx
1800330f8:	74 03                	je     0x1800330fd
1800330fa:	49 33 da             	xor    %r10,%rbx
1800330fd:	33 c0                	xor    %eax,%eax
1800330ff:	49 3b db             	cmp    %r11,%rbx
180033102:	8d 68 08             	lea    0x8(%rax),%ebp
180033105:	0f 44 c5             	cmove  %ebp,%eax
180033108:	4a 8d 1c 10          	lea    (%rax,%r10,1),%rbx
18003310c:	48 8b 03             	mov    (%rbx),%rax
18003310f:	40 84 ff             	test   %dil,%dil
180033112:	74 08                	je     0x18003311c