1407a7f3a:	8b 41 10             	mov    0x10(%rcx),%eax
1407a7f3d:	ff c8                	dec    %eax
1407a7f3f:	89 41 10             	mov    %eax,0x10(%rcx)
1407a7f42:	85 c0                	test   %eax,%eax
1407a7f44:	7f 18                	jg     0x1407a7f5e
1407a7f46:	0f 88 ae 00 00 00    	js     0x1407a7ffa
1407a7f4c:	48 8b 01             	mov    (%rcx),%rax
1407a7f4f:	ba 01 00 00 00       	mov    $0x1,%edx
1407a7f54:	48 8b 00             	mov    (%rax),%rax
1407a7f57:	ff 15 c3 ba 7d 00    	call   *0x7dbac3(%rip)        # 0x140f83a20
1407a7f5d:	90                   	nop
1407a7f5e:	49 8b 0f             	mov    (%r15),%rcx
1407a7f61:	48 85 c9             	test   %rcx,%rcx
1407a7f64:	74 20                	je     0x1407a7f86
1407a7f66:	8b 41 10             	mov    0x10(%rcx),%eax
1407a7f69:	ff c8                	dec    %eax
1407a7f6b:	89 41 10             	mov    %eax,0x10(%rcx)
1407a7f6e:	85 c0                	test   %eax,%eax
1407a7f70:	7f 14                	jg     0x1407a7f86
1407a7f72:	78 21                	js     0x1407a7f95
1407a7f74:	48 8b 01             	mov    (%rcx),%rax
1407a7f77:	ba 01 00 00 00       	mov    $0x1,%edx
1407a7f7c:	48 8b 00             	mov    (%rax),%rax
1407a7f7f:	ff 15 9b ba 7d 00    	call   *0x7dba9b(%rip)        # 0x140f83a20
1407a7f85:	90                   	nop
1407a7f86:	48 83 c4 60          	add    $0x60,%rsp
1407a7f8a:	41 5f                	pop    %r15
1407a7f8c:	41 5e                	pop    %r14
1407a7f8e:	41 5c                	pop    %r12
1407a7f90:	5f                   	pop    %rdi
1407a7f91:	5e                   	pop    %rsi
1407a7f92:	5b                   	pop    %rbx
1407a7f93:	5d                   	pop    %rbp
1407a7f94:	c3                   	ret
1407a7f95:	b9 02 00 00 00       	mov    $0x2,%ecx
1407a7f9a:	e8 61 27 fe ff       	call   0x14078a700
1407a7f9f:	90                   	nop
1407a7fa0:	b9 02 00 00 00       	mov    $0x2,%ecx
1407a7fa5:	e8 56 27 fe ff       	call   0x14078a700
1407a7faa:	90                   	nop
1407a7fab:	33 c9                	xor    %ecx,%ecx
1407a7fad:	e8 4e 27 fe ff       	call   0x14078a700
1407a7fb2:	cc                   	int3
1407a7fb3:	b9 01 00 00 00       	mov    $0x1,%ecx
1407a7fb8:	e8 43 27 fe ff       	call   0x14078a700
1407a7fbd:	90                   	nop
1407a7fbe:	b9 02 00 00 00       	mov    $0x2,%ecx
1407a7fc3:	e8 38 27 fe ff       	call   0x14078a700
1407a7fc8:	90                   	nop
1407a7fc9:	33 c9                	xor    %ecx,%ecx
1407a7fcb:	e8 30 27 fe ff       	call   0x14078a700
1407a7fd0:	cc                   	int3
1407a7fd1:	b9 01 00 00 00       	mov    $0x1,%ecx
1407a7fd6:	e8 25 27 fe ff       	call   0x14078a700
1407a7fdb:	90                   	nop
1407a7fdc:	b9 02 00 00 00       	mov    $0x2,%ecx
1407a7fe1:	e8 1a 27 fe ff       	call   0x14078a700
1407a7fe6:	90                   	nop
1407a7fe7:	33 c9                	xor    %ecx,%ecx
1407a7fe9:	e8 12 27 fe ff       	call   0x14078a700
1407a7fee:	cc                   	int3
1407a7fef:	b9 01 00 00 00       	mov    $0x1,%ecx
1407a7ff4:	e8 07 27 fe ff       	call   0x14078a700
1407a7ff9:	90                   	nop
1407a7ffa:	b9 02 00 00 00       	mov    $0x2,%ecx
1407a7fff:	e8 fc 26 fe ff       	call   0x14078a700
1407a8004:	cc                   	int3
1407a8005:	cc                   	int3
1407a8006:	cc                   	int3
1407a8007:	cc                   	int3
1407a8008:	cc                   	int3
1407a8009:	cc                   	int3
1407a800a:	cc                   	int3
1407a800b:	cc                   	int3
1407a800c:	cc                   	int3
1407a800d:	cc                   	int3
1407a800e:	cc                   	int3
1407a800f:	cc                   	int3
1407a8010:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1407a8015:	4c 89 44 24 18       	mov    %r8,0x18(%rsp)
1407a801a:	55                   	push   %rbp
1407a801b:	56                   	push   %rsi
1407a801c:	57                   	push   %rdi
1407a801d:	41 54                	push   %r12
1407a801f:	41 55                	push   %r13
1407a8021:	41 56                	push   %r14
1407a8023:	41 57                	push   %r15
1407a8025:	48 83 ec 50          	sub    $0x50,%rsp
1407a8029:	49 8b f9             	mov    %r9,%rdi
1407a802c:	49 8b f0             	mov    %r8,%rsi
1407a802f:	4c 8b f2             	mov    %rdx,%r14
1407a8032:	45 33 ed             	xor    %r13d,%r13d
1407a8035:	49 8b 41 08          	mov    0x8(%r9),%rax
1407a8039:	49 39 01             	cmp    %rax,(%r9)
1407a803c:	75 0e                	jne    0x1407a804c
1407a803e:	49 8b 00             	mov    (%r8),%rax
1407a8041:	4d 89 28             	mov    %r13,(%r8)
1407a8044:	48 89 02             	mov    %rax,(%rdx)
1407a8047:	e9 a1 01 00 00       	jmp    0x1407a81ed
1407a804c:	b9 48 00 00 00       	mov    $0x48,%ecx
1407a8051:	e8 b2 30 67 00       	call   0x140e1b108
1407a8056:	48 89 84 24 a8 00 00 	mov    %rax,0xa8(%rsp)
1407a805d:	00
1407a805e:	48 85 c0             	test   %rax,%rax
1407a8061:	74 0d                	je     0x1407a8070
1407a8063:	48 8b c8             	mov    %rax,%rcx
1407a8066:	e8 e5 0f fb ff       	call   0x140759050
1407a806b:	48 8b e8             	mov    %rax,%rbp
1407a806e:	eb 03                	jmp    0x1407a8073
1407a8070:	49 8b ed             	mov    %r13,%rbp
1407a8073:	48 89 ac 24 a8 00 00 	mov    %rbp,0xa8(%rsp)
1407a807a:	00
1407a807b:	4c 8b 65 40          	mov    0x40(%rbp),%r12
1407a807f:	b9 58 00 00 00       	mov    $0x58,%ecx
1407a8084:	e8 7f 30 67 00       	call   0x140e1b108
1407a8089:	4c 8b f8             	mov    %rax,%r15
1407a808c:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
1407a8091:	48 85 c0             	test   %rax,%rax
1407a8094:	0f 84 ee 00 00 00    	je     0x1407a8188
1407a809a:	0f 57 c0             	xorps  %xmm0,%xmm0
1407a809d:	f3 0f 7f 44 24 38    	movdqu %xmm0,0x38(%rsp)
1407a80a3:	4c 89 6c 24 48       	mov    %r13,0x48(%rsp)
1407a80a8:	48 8b 5f 08          	mov    0x8(%rdi),%rbx
1407a80ac:	48 2b 1f             	sub    (%rdi),%rbx
1407a80af:	48 c1 fb 03          	sar    $0x3,%rbx
1407a80b3:	48 85 db             	test   %rbx,%rbx
1407a80b6:	0f 84 bd 00 00 00    	je     0x1407a8179
1407a80bc:	48 b8 ff ff ff ff ff 	movabs $0x1fffffffffffffff,%rax
1407a80c3:	ff ff 1f
1407a80c6:	48 3b d8             	cmp    %rax,%rbx
1407a80c9:	0f 87 44 01 00 00    	ja     0x1407a8213
1407a80cf:	48 8d 1c dd 00 00 00 	lea    0x0(,%rbx,8),%rbx
1407a80d6:	00
1407a80d7:	48 85 db             	test   %rbx,%rbx
1407a80da:	75 05                	jne    0x1407a80e1
1407a80dc:	49 8b d5             	mov    %r13,%rdx
1407a80df:	eb 3d                	jmp    0x1407a811e
1407a80e1:	48 81 fb 00 10 00 00 	cmp    $0x1000,%rbx
1407a80e8:	72 29                	jb     0x1407a8113
1407a80ea:	48 8d 4b 27          	lea    0x27(%rbx),%rcx
1407a80ee:	48 3b cb             	cmp    %rbx,%rcx
1407a80f1:	0f 86 22 01 00 00    	jbe    0x1407a8219
1407a80f7:	e8 0c 30 67 00       	call   0x140e1b108
1407a80fc:	48 85 c0             	test   %rax,%rax
1407a80ff:	0f 84 1a 01 00 00    	je     0x1407a821f
1407a8105:	48 8d 50 27          	lea    0x27(%rax),%rdx
1407a8109:	48 83 e2 e0          	and    $0xffffffffffffffe0,%rdx
1407a810d:	48 89 42 f8          	mov    %rax,-0x8(%rdx)
1407a8111:	eb 0b                	jmp    0x1407a811e
1407a8113:	48 8b cb             	mov    %rbx,%rcx
1407a8116:	e8 ed 2f 67 00       	call   0x140e1b108
1407a811b:	48 8b d0             	mov    %rax,%rdx
1407a811e:	48 89 54 24 38       	mov    %rdx,0x38(%rsp)
1407a8123:	48 89 54 24 40       	mov    %rdx,0x40(%rsp)
1407a8128:	48 8d 0c 1a          	lea    (%rdx,%rbx,1),%rcx
1407a812c:	48 89 4c 24 48       	mov    %rcx,0x48(%rsp)
1407a8131:	4c 8b 4f 08          	mov    0x8(%rdi),%r9
1407a8135:	4c 8b 07             	mov    (%rdi),%r8
1407a8138:	4d 3b c1             	cmp    %r9,%r8
1407a813b:	74 37                	je     0x1407a8174
1407a813d:	0f 1f 00             	nopl   (%rax)
1407a8140:	49 8b 08             	mov    (%r8),%rcx
1407a8143:	48 89 0a             	mov    %rcx,(%rdx)
1407a8146:	48 85 c9             	test   %rcx,%rcx
1407a8149:	74 1c                	je     0x1407a8167
1407a814b:	8b 41 10             	mov    0x10(%rcx),%eax
1407a814e:	ff c0                	inc    %eax
1407a8150:	89 41 10             	mov    %eax,0x10(%rcx)
1407a8153:	83 f8 01             	cmp    $0x1,%eax
1407a8156:	0f 8e d4 00 00 00    	jle    0x1407a8230
1407a815c:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
1407a8161:	0f 84 be 00 00 00    	je     0x1407a8225
1407a8167:	48 83 c2 08          	add    $0x8,%rdx
1407a816b:	49 83 c0 08          	add    $0x8,%r8
1407a816f:	4d 3b c1             	cmp    %r9,%r8
1407a8172:	75 cc                	jne    0x1407a8140
1407a8174:	48 89 54 24 40       	mov    %rdx,0x40(%rsp)
1407a8179:	48 8d 54 24 38       	lea    0x38(%rsp),%rdx
1407a817e:	49 8b cf             	mov    %r15,%rcx
1407a8181:	e8 ba 09 fb ff       	call   0x140758b40
1407a8186:	eb 03                	jmp    0x1407a818b
1407a8188:	49 8b c5             	mov    %r13,%rax
1407a818b:	48 89 84 24 a8 00 00 	mov    %rax,0xa8(%rsp)
1407a8192:	00
1407a8193:	48 8d 94 24 a8 00 00 	lea    0xa8(%rsp),%rdx
1407a819a:	00
1407a819b:	49 8b cc             	mov    %r12,%rcx
1407a819e:	e8 dd 0a d9 ff       	call   0x140538c80
1407a81a3:	48 8b 4d 40          	mov    0x40(%rbp),%rcx
1407a81a7:	48 8b 06             	mov    (%rsi),%rax
1407a81aa:	4c 89 2e             	mov    %r13,(%rsi)
1407a81ad:	48 89 84 24 a8 00 00 	mov    %rax,0xa8(%rsp)
1407a81b4:	00
1407a81b5:	48 8d 94 24 a8 00 00 	lea    0xa8(%rsp),%rdx
1407a81bc:	00
1407a81bd:	e8 be 0a d9 ff       	call   0x140538c80
1407a81c2:	49 89 2e             	mov    %rbp,(%r14)
1407a81c5:	48 8b 0e             	mov    (%rsi),%rcx
1407a81c8:	48 85 c9             	test   %rcx,%rcx
1407a81cb:	74 20                	je     0x1407a81ed
1407a81cd:	8b 41 10             	mov    0x10(%rcx),%eax
1407a81d0:	ff c8                	dec    %eax
1407a81d2:	89 41 10             	mov    %eax,0x10(%rcx)
1407a81d5:	85 c0                	test   %eax,%eax
1407a81d7:	7f 14                	jg     0x1407a81ed
1407a81d9:	78 2d                	js     0x1407a8208
1407a81db:	48 8b 01             	mov    (%rcx),%rax
1407a81de:	ba 01 00 00 00       	mov    $0x1,%edx
1407a81e3:	48 8b 00             	mov    (%rax),%rax
1407a81e6:	ff 15 34 b8 7d 00    	call   *0x7db834(%rip)        # 0x140f83a20
1407a81ec:	90                   	nop
1407a81ed:	49 8b c6             	mov    %r14,%rax
1407a81f0:	48 8b 9c 24 90 00 00 	mov    0x90(%rsp),%rbx
1407a81f7:	00
1407a81f8:	48 83 c4 50          	add    $0x50,%rsp
1407a81fc:	41 5f                	pop    %r15
1407a81fe:	41 5e                	pop    %r14
1407a8200:	41 5d                	pop    %r13
1407a8202:	41 5c                	pop    %r12
1407a8204:	5f                   	pop    %rdi
1407a8205:	5e                   	pop    %rsi
1407a8206:	5d                   	pop    %rbp
1407a8207:	c3                   	ret
1407a8208:	b9 02 00 00 00       	mov    $0x2,%ecx
1407a820d:	e8 ee 24 fe ff       	call   0x14078a700
1407a8212:	90                   	nop
1407a8213:	e8 78 53 9f ff       	call   0x14019d590
1407a8218:	cc                   	int3
1407a8219:	e8 72 4f 9f ff       	call   0x14019d190
1407a821e:	cc                   	int3
1407a821f:	e8 80 1f 68 00       	call   0x140e2a1a4
1407a8224:	90                   	nop
1407a8225:	b9 01 00 00 00       	mov    $0x1,%ecx
1407a822a:	e8 d1 24 fe ff       	call   0x14078a700
1407a822f:	cc                   	int3
1407a8230:	33 c9                	xor    %ecx,%ecx
1407a8232:	e8 c9 24 fe ff       	call   0x14078a700
1407a8237:	cc                   	int3
1407a8238:	cc                   	int3
1407a8239:	cc                   	int3
1407a823a:	cc                   	int3
1407a823b:	cc                   	int3
1407a823c:	cc                   	int3
1407a823d:	cc                   	int3
1407a823e:	cc                   	int3
1407a823f:	cc                   	int3
1407a8240:	40 56                	rex push %rsi
1407a8242:	48 83 ec 30          	sub    $0x30,%rsp
1407a8246:	49 8b f0             	mov    %r8,%rsi
1407a8249:	4c 8b c1             	mov    %rcx,%r8
1407a824c:	84 d2                	test   %dl,%dl
1407a824e:	75 0c                	jne    0x1407a825c
1407a8250:	48 83 3e 00          	cmpq   $0x0,(%rsi)
1407a8254:	0f 85 9c 00 00 00    	jne    0x1407a82f6
1407a825a:	eb 70                	jmp    0x1407a82cc
1407a825c:	45 85 c9             	test   %r9d,%r9d
1407a825f:	74 2b                	je     0x1407a828c
1407a8261:	41 83 e9 01          	sub    $0x1,%r9d
1407a8265:	74 19                	je     0x1407a8280
1407a8267:	41 83 f9 01          	cmp    $0x1,%r9d
1407a826b:	75 5f                	jne    0x1407a82cc
1407a826d:	48 8b 06             	mov    (%rsi),%rax
1407a8270:	48 8b 48 18          	mov    0x18(%rax),%rcx
1407a8274:	44 39 49 18          	cmp    %r9d,0x18(%rcx)
1407a8278:	0f 85 8c 00 00 00    	jne    0x1407a830a
1407a827e:	eb 4c                	jmp    0x1407a82cc
1407a8280:	48 83 3e 00          	cmpq   $0x0,(%rsi)
1407a8284:	0f 85 9f 00 00 00    	jne    0x1407a8329
1407a828a:	eb 40                	jmp    0x1407a82cc
1407a828c:	48 89 5c 24 40       	mov    %rbx,0x40(%rsp)
1407a8291:	48 8b 59 40          	mov    0x40(%rcx),%rbx
1407a8295:	48 8b 4b 50          	mov    0x50(%rbx),%rcx
1407a8299:	48 85 c9             	test   %rcx,%rcx
1407a829c:	74 23                	je     0x1407a82c1
1407a829e:	8b 49 18             	mov    0x18(%rcx),%ecx
1407a82a1:	85 c9                	test   %ecx,%ecx
1407a82a3:	74 1c                	je     0x1407a82c1
1407a82a5:	48 8b 06             	mov    (%rsi),%rax
1407a82a8:	48 85 c0             	test   %rax,%rax
1407a82ab:	74 1a                	je     0x1407a82c7
1407a82ad:	48 8b 40 18          	mov    0x18(%rax),%rax
1407a82b1:	39 48 18             	cmp    %ecx,0x18(%rax)
1407a82b4:	74 11                	je     0x1407a82c7
1407a82b6:	83 f9 0d             	cmp    $0xd,%ecx
1407a82b9:	0f 85 86 00 00 00    	jne    0x1407a8345
1407a82bf:	eb 06                	jmp    0x1407a82c7
1407a82c1:	48 83 3e 00          	cmpq   $0x0,(%rsi)
1407a82c5:	75 10                	jne    0x1407a82d7
1407a82c7:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
1407a82cc:	48 83 c4 30          	add    $0x30,%rsp
1407a82d0:	5e                   	pop    %rsi
1407a82d1:	c3                   	ret
1407a82d2:	48 8b 7c 24 48       	mov    0x48(%rsp),%rdi
1407a82d7:	49 8b c8             	mov    %r8,%rcx
1407a82da:	e8 f1 35 bf ff       	call   0x14039b8d0
1407a82df:	48 8b 0d 12 92 c8 00 	mov    0xc89212(%rip),%rcx        # 0x1414314f8
1407a82e6:	48 8d 15 33 e4 88 00 	lea    0x88e433(%rip),%rdx        # 0x141036720
1407a82ed:	4c 8b c0             	mov    %rax,%r8
1407a82f0:	e8 1b b9 fe ff       	call   0x140793c10
1407a82f5:	cc                   	int3
1407a82f6:	48 8b 0d fb 91 c8 00 	mov    0xc891fb(%rip),%rcx        # 0x1414314f8
1407a82fd:	48 8d 15 7c e3 88 00 	lea    0x88e37c(%rip),%rdx        # 0x141036680
1407a8304:	e8 07 b9 fe ff       	call   0x140793c10
1407a8309:	cc                   	int3
1407a830a:	49 8b c8             	mov    %r8,%rcx
1407a830d:	e8 be 35 bf ff       	call   0x14039b8d0
1407a8312:	48 8b 0d df 91 c8 00 	mov    0xc891df(%rip),%rcx        # 0x1414314f8
1407a8319:	48 8d 15 d8 e3 88 00 	lea    0x88e3d8(%rip),%rdx        # 0x1410366f8
1407a8320:	4c 8b c0             	mov    %rax,%r8
1407a8323:	e8 e8 b8 fe ff       	call   0x140793c10
1407a8328:	cc                   	int3
1407a8329:	e8 a2 35 bf ff       	call   0x14039b8d0
1407a832e:	48 8b 0d c3 91 c8 00 	mov    0xc891c3(%rip),%rcx        # 0x1414314f8
1407a8335:	48 8d 15 8c e3 88 00 	lea    0x88e38c(%rip),%rdx        # 0x1410366c8
1407a833c:	4c 8b c0             	mov    %rax,%r8
1407a833f:	e8 cc b8 fe ff       	call   0x140793c10
1407a8344:	cc                   	int3
1407a8345:	49 8b c8             	mov    %r8,%rcx
1407a8348:	48 89 7c 24 48       	mov    %rdi,0x48(%rsp)
1407a834d:	e8 7e 35 bf ff       	call   0x14039b8d0
1407a8352:	48 8d 4b 50          	lea    0x50(%rbx),%rcx
1407a8356:	48 8b f8             	mov    %rax,%rdi
1407a8359:	e8 72 73 9f ff       	call   0x14019f6d0
1407a835e:	48 8b c8             	mov    %rax,%rcx
1407a8361:	e8 da 43 a2 ff       	call   0x1401cc740
1407a8366:	48 8b ce             	mov    %rsi,%rcx
1407a8369:	8b d8                	mov    %eax,%ebx
1407a836b:	e8 60 73 9f ff       	call   0x14019f6d0
1407a8370:	48 8b c8             	mov    %rax,%rcx
1407a8373:	e8 e8 1f 9f ff       	call   0x14019a360
1407a8378:	48 8b c8             	mov    %rax,%rcx
1407a837b:	e8 50 73 9f ff       	call   0x14019f6d0
1407a8380:	48 8b c8             	mov    %rax,%rcx
1407a8383:	e8 b8 43 a2 ff       	call   0x1401cc740
1407a8388:	48 8b 0d 69 91 c8 00 	mov    0xc89169(%rip),%rcx        # 0x1414314f8
1407a838f:	48 8d 15 c2 e3 88 00 	lea    0x88e3c2(%rip),%rdx        # 0x141036758
1407a8396:	44 8b cb             	mov    %ebx,%r9d
1407a8399:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
1407a839e:	44 8b c0             	mov    %eax,%r8d
1407a83a1:	e8 6a b8 fe ff       	call   0x140793c10
1407a83a6:	cc                   	int3
1407a83a7:	cc                   	int3
1407a83a8:	cc                   	int3
1407a83a9:	cc                   	int3
1407a83aa:	cc                   	int3
1407a83ab:	cc                   	int3
1407a83ac:	cc                   	int3
1407a83ad:	cc                   	int3
1407a83ae:	cc                   	int3
1407a83af:	cc                   	int3