1401ad8fe:	44 39 65 c0          	cmp    %r12d,-0x40(%rbp)
1401ad902:	75 05                	jne    0x1401ad909
1401ad904:	48 ff cf             	dec    %rdi
1401ad907:	eb 0e                	jmp    0x1401ad917
1401ad909:	e8 fe 25 fe ff       	call   0x14018ff0c
1401ad90e:	c7 00 2a 00 00 00    	movl   $0x2a,(%rax)
1401ad914:	48 8b fb             	mov    %rbx,%rdi
1401ad917:	44 38 65 e0          	cmp    %r12b,-0x20(%rbp)
1401ad91b:	74 0b                	je     0x1401ad928
1401ad91d:	48 8b 4d c8          	mov    -0x38(%rbp),%rcx
1401ad921:	83 a1 a8 03 00 00 fd 	andl   $0xfffffffd,0x3a8(%rcx)
1401ad928:	48 8b c7             	mov    %rdi,%rax
1401ad92b:	48 8b 4d f0          	mov    -0x10(%rbp),%rcx
1401ad92f:	48 33 cc             	xor    %rsp,%rcx
1401ad932:	e8 99 89 fd ff       	call   0x1401862d0
1401ad937:	48 8b 9c 24 d8 00 00 	mov    0xd8(%rsp),%rbx
1401ad93e:	00
1401ad93f:	48 81 c4 80 00 00 00 	add    $0x80,%rsp
1401ad946:	41 5f                	pop    %r15
1401ad948:	41 5e                	pop    %r14
1401ad94a:	41 5d                	pop    %r13
1401ad94c:	41 5c                	pop    %r12
1401ad94e:	5f                   	pop    %rdi
1401ad94f:	5e                   	pop    %rsi
1401ad950:	5d                   	pop    %rbp
1401ad951:	c3                   	ret
1401ad952:	cc                   	int3
1401ad953:	cc                   	int3
1401ad954:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1401ad959:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
1401ad95e:	48 89 7c 24 18       	mov    %rdi,0x18(%rsp)
1401ad963:	41 56                	push   %r14
1401ad965:	48 83 ec 20          	sub    $0x20,%rsp
1401ad969:	45 33 f6             	xor    %r14d,%r14d
1401ad96c:	49 8b c1             	mov    %r9,%rax
1401ad96f:	49 8b f8             	mov    %r8,%rdi
1401ad972:	48 8b da             	mov    %rdx,%rbx
1401ad975:	48 8b f1             	mov    %rcx,%rsi
1401ad978:	48 85 d2             	test   %rdx,%rdx
1401ad97b:	74 51                	je     0x1401ad9ce
1401ad97d:	4d 85 c0             	test   %r8,%r8
1401ad980:	74 51                	je     0x1401ad9d3
1401ad982:	48 85 d2             	test   %rdx,%rdx
1401ad985:	74 03                	je     0x1401ad98a
1401ad987:	44 88 32             	mov    %r14b,(%rdx)
1401ad98a:	48 85 c9             	test   %rcx,%rcx
1401ad98d:	74 03                	je     0x1401ad992
1401ad98f:	4c 21 31             	and    %r14,(%rcx)
1401ad992:	4c 8b 44 24 50       	mov    0x50(%rsp),%r8
1401ad997:	4c 3b c7             	cmp    %rdi,%r8
1401ad99a:	4c 0f 47 c7          	cmova  %rdi,%r8
1401ad99e:	49 81 f8 ff ff ff 7f 	cmp    $0x7fffffff,%r8
1401ad9a5:	77 2c                	ja     0x1401ad9d3
1401ad9a7:	4c 8b 4c 24 58       	mov    0x58(%rsp),%r9
1401ad9ac:	48 8b d0             	mov    %rax,%rdx
1401ad9af:	48 8b cb             	mov    %rbx,%rcx
1401ad9b2:	e8 69 fc ff ff       	call   0x1401ad620
1401ad9b7:	48 83 f8 ff          	cmp    $0xffffffffffffffff,%rax
1401ad9bb:	75 2b                	jne    0x1401ad9e8
1401ad9bd:	48 85 db             	test   %rbx,%rbx
1401ad9c0:	74 03                	je     0x1401ad9c5
1401ad9c2:	44 88 33             	mov    %r14b,(%rbx)
1401ad9c5:	e8 42 25 fe ff       	call   0x14018ff0c
1401ad9ca:	8b 00                	mov    (%rax),%eax
1401ad9cc:	eb 5c                	jmp    0x1401ada2a
1401ad9ce:	4d 85 c0             	test   %r8,%r8
1401ad9d1:	74 af                	je     0x1401ad982
1401ad9d3:	e8 34 25 fe ff       	call   0x14018ff0c
1401ad9d8:	bb 16 00 00 00       	mov    $0x16,%ebx
1401ad9dd:	89 18                	mov    %ebx,(%rax)
1401ad9df:	e8 80 db fd ff       	call   0x14018b564
1401ad9e4:	8b c3                	mov    %ebx,%eax
1401ad9e6:	eb 42                	jmp    0x1401ada2a
1401ad9e8:	48 ff c0             	inc    %rax
1401ad9eb:	48 85 db             	test   %rbx,%rbx
1401ad9ee:	74 2f                	je     0x1401ada1f
1401ad9f0:	48 3b c7             	cmp    %rdi,%rax
1401ad9f3:	76 25                	jbe    0x1401ada1a
1401ad9f5:	48 83 7c 24 50 ff    	cmpq   $0xffffffffffffffff,0x50(%rsp)
1401ad9fb:	74 14                	je     0x1401ada11
1401ad9fd:	44 88 33             	mov    %r14b,(%rbx)
1401ada00:	48 3b f8             	cmp    %rax,%rdi
1401ada03:	77 0c                	ja     0x1401ada11
1401ada05:	e8 02 25 fe ff       	call   0x14018ff0c
1401ada0a:	bb 22 00 00 00       	mov    $0x22,%ebx
1401ada0f:	eb cc                	jmp    0x1401ad9dd
1401ada11:	48 8b c7             	mov    %rdi,%rax
1401ada14:	41 be 50 00 00 00    	mov    $0x50,%r14d
1401ada1a:	c6 44 18 ff 00       	movb   $0x0,-0x1(%rax,%rbx,1)
1401ada1f:	48 85 f6             	test   %rsi,%rsi
1401ada22:	74 03                	je     0x1401ada27
1401ada24:	48 89 06             	mov    %rax,(%rsi)
1401ada27:	41 8b c6             	mov    %r14d,%eax
1401ada2a:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1401ada2f:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
1401ada34:	48 8b 7c 24 40       	mov    0x40(%rsp),%rdi
1401ada39:	48 83 c4 20          	add    $0x20,%rsp
1401ada3d:	41 5e                	pop    %r14
1401ada3f:	c3                   	ret
1401ada40:	40 55                	rex push %rbp
1401ada42:	41 56                	push   %r14
1401ada44:	41 57                	push   %r15
1401ada46:	48 83 ec 70          	sub    $0x70,%rsp
1401ada4a:	48 8d 6c 24 40       	lea    0x40(%rsp),%rbp
1401ada4f:	48 89 5d 50          	mov    %rbx,0x50(%rbp)
1401ada53:	48 89 75 58          	mov    %rsi,0x58(%rbp)
1401ada57:	48 89 7d 60          	mov    %rdi,0x60(%rbp)
1401ada5b:	4c 89 65 68          	mov    %r12,0x68(%rbp)
1401ada5f:	48 8b 05 0a d8 0f 00 	mov    0xfd80a(%rip),%rax        # 0x1402ab270
1401ada66:	48 33 c5             	xor    %rbp,%rax
1401ada69:	48 89 45 20          	mov    %rax,0x20(%rbp)
1401ada6d:	4c 8b f2             	mov    %rdx,%r14
1401ada70:	4d 8b f9             	mov    %r9,%r15
1401ada73:	48 8b d1             	mov    %rcx,%rdx
1401ada76:	41 8b f0             	mov    %r8d,%esi
1401ada79:	48 8d 4d 00          	lea    0x0(%rbp),%rcx
1401ada7d:	e8 1e e2 fd ff       	call   0x14018bca0
1401ada82:	48 8b 45 08          	mov    0x8(%rbp),%rax
1401ada86:	45 33 c9             	xor    %r9d,%r9d
1401ada89:	45 33 c0             	xor    %r8d,%r8d
1401ada8c:	8b d6                	mov    %esi,%edx
1401ada8e:	49 8b ce             	mov    %r14,%rcx
1401ada91:	44 8b 60 0c          	mov    0xc(%rax),%r12d
1401ada95:	e8 16 9a ff ff       	call   0x1401a74b0
1401ada9a:	48 63 f8             	movslq %eax,%rdi
1401ada9d:	85 c0                	test   %eax,%eax
1401ada9f:	75 07                	jne    0x1401adaa8
1401adaa1:	33 ff                	xor    %edi,%edi
1401adaa3:	e9 fc 00 00 00       	jmp    0x1401adba4
1401adaa8:	48 8b d7             	mov    %rdi,%rdx
1401adaab:	48 03 d2             	add    %rdx,%rdx
1401adaae:	48 8d 4a 10          	lea    0x10(%rdx),%rcx
1401adab2:	48 3b d1             	cmp    %rcx,%rdx
1401adab5:	48 1b c0             	sbb    %rax,%rax
1401adab8:	48 85 c1             	test   %rax,%rcx
1401adabb:	74 79                	je     0x1401adb36
1401adabd:	48 8d 4a 10          	lea    0x10(%rdx),%rcx
1401adac1:	48 3b d1             	cmp    %rcx,%rdx
1401adac4:	48 1b c0             	sbb    %rax,%rax
1401adac7:	48 23 c1             	and    %rcx,%rax
1401adaca:	48 3d 00 04 00 00    	cmp    $0x400,%rax
1401adad0:	48 8d 42 10          	lea    0x10(%rdx),%rax
1401adad4:	77 3e                	ja     0x1401adb14
1401adad6:	48 3b d0             	cmp    %rax,%rdx
1401adad9:	48 1b c9             	sbb    %rcx,%rcx
1401adadc:	48 23 c8             	and    %rax,%rcx
1401adadf:	48 8d 41 0f          	lea    0xf(%rcx),%rax
1401adae3:	48 3b c1             	cmp    %rcx,%rax
1401adae6:	77 0a                	ja     0x1401adaf2
1401adae8:	48 b8 f0 ff ff ff ff 	movabs $0xffffffffffffff0,%rax
1401adaef:	ff ff 0f
1401adaf2:	48 83 e0 f0          	and    $0xfffffffffffffff0,%rax
1401adaf6:	e8 25 95 fd ff       	call   0x140187020
1401adafb:	48 2b e0             	sub    %rax,%rsp
1401adafe:	48 8d 5c 24 40       	lea    0x40(%rsp),%rbx
1401adb03:	48 85 db             	test   %rbx,%rbx
1401adb06:	0f 84 80 00 00 00    	je     0x1401adb8c
1401adb0c:	c7 03 cc cc 00 00    	movl   $0xcccc,(%rbx)
1401adb12:	eb 1c                	jmp    0x1401adb30
1401adb14:	48 3b d0             	cmp    %rax,%rdx
1401adb17:	48 1b c9             	sbb    %rcx,%rcx
1401adb1a:	48 23 c8             	and    %rax,%rcx
1401adb1d:	e8 6a a7 ff ff       	call   0x1401a828c
1401adb22:	48 8b d8             	mov    %rax,%rbx
1401adb25:	48 85 c0             	test   %rax,%rax
1401adb28:	74 0e                	je     0x1401adb38
1401adb2a:	c7 00 dd dd 00 00    	movl   $0xdddd,(%rax)
1401adb30:	48 83 c3 10          	add    $0x10,%rbx
1401adb34:	eb 02                	jmp    0x1401adb38
1401adb36:	33 db                	xor    %ebx,%ebx
1401adb38:	48 85 db             	test   %rbx,%rbx
1401adb3b:	74 4f                	je     0x1401adb8c
1401adb3d:	44 8b cf             	mov    %edi,%r9d
1401adb40:	4c 8b c3             	mov    %rbx,%r8
1401adb43:	8b d6                	mov    %esi,%edx
1401adb45:	49 8b ce             	mov    %r14,%rcx
1401adb48:	e8 63 99 ff ff       	call   0x1401a74b0
1401adb4d:	85 c0                	test   %eax,%eax
1401adb4f:	74 3b                	je     0x1401adb8c
1401adb51:	44 8b 45 70          	mov    0x70(%rbp),%r8d
1401adb55:	41 8b cc             	mov    %r12d,%ecx
1401adb58:	41 8b c0             	mov    %r8d,%eax
1401adb5b:	f7 d8                	neg    %eax
1401adb5d:	48 1b d2             	sbb    %rdx,%rdx
1401adb60:	48 83 64 24 38 00    	andq   $0x0,0x38(%rsp)
1401adb66:	48 83 64 24 30 00    	andq   $0x0,0x30(%rsp)
1401adb6c:	49 23 d7             	and    %r15,%rdx
1401adb6f:	44 89 44 24 28       	mov    %r8d,0x28(%rsp)
1401adb74:	41 83 c9 ff          	or     $0xffffffff,%r9d
1401adb78:	48 89 54 24 20       	mov    %rdx,0x20(%rsp)
1401adb7d:	4c 8b c3             	mov    %rbx,%r8
1401adb80:	33 d2                	xor    %edx,%edx
1401adb82:	ff 15 e0 04 05 00    	call   *0x504e0(%rip)        # 0x1401fe068
1401adb88:	8b f8                	mov    %eax,%edi
1401adb8a:	eb 02                	jmp    0x1401adb8e
1401adb8c:	33 ff                	xor    %edi,%edi
1401adb8e:	48 85 db             	test   %rbx,%rbx
1401adb91:	74 11                	je     0x1401adba4
1401adb93:	48 8d 4b f0          	lea    -0x10(%rbx),%rcx
1401adb97:	81 39 dd dd 00 00    	cmpl   $0xdddd,(%rcx)
1401adb9d:	75 05                	jne    0x1401adba4
1401adb9f:	e8 18 8e ff ff       	call   0x1401a69bc
1401adba4:	80 7d 18 00          	cmpb   $0x0,0x18(%rbp)
1401adba8:	74 0b                	je     0x1401adbb5
1401adbaa:	48 8b 45 00          	mov    0x0(%rbp),%rax
1401adbae:	83 a0 a8 03 00 00 fd 	andl   $0xfffffffd,0x3a8(%rax)
1401adbb5:	8b c7                	mov    %edi,%eax
1401adbb7:	48 8b 4d 20          	mov    0x20(%rbp),%rcx
1401adbbb:	48 33 cd             	xor    %rbp,%rcx
1401adbbe:	e8 0d 87 fd ff       	call   0x1401862d0
1401adbc3:	48 8b 5d 50          	mov    0x50(%rbp),%rbx
1401adbc7:	48 8b 75 58          	mov    0x58(%rbp),%rsi
1401adbcb:	48 8b 7d 60          	mov    0x60(%rbp),%rdi
1401adbcf:	4c 8b 65 68          	mov    0x68(%rbp),%r12
1401adbd3:	48 8d 65 30          	lea    0x30(%rbp),%rsp
1401adbd7:	41 5f                	pop    %r15
1401adbd9:	41 5e                	pop    %r14
1401adbdb:	5d                   	pop    %rbp
1401adbdc:	c3                   	ret
1401adbdd:	cc                   	int3
1401adbde:	cc                   	int3
1401adbdf:	cc                   	int3
1401adbe0:	40 53                	rex push %rbx
1401adbe2:	55                   	push   %rbp
1401adbe3:	56                   	push   %rsi
1401adbe4:	57                   	push   %rdi
1401adbe5:	41 54                	push   %r12
1401adbe7:	41 56                	push   %r14
1401adbe9:	41 57                	push   %r15
1401adbeb:	48 81 ec d0 00 00 00 	sub    $0xd0,%rsp
1401adbf2:	48 8b 05 77 d6 0f 00 	mov    0xfd677(%rip),%rax        # 0x1402ab270
1401adbf9:	48 33 c4             	xor    %rsp,%rax
1401adbfc:	48 89 84 24 c0 00 00 	mov    %rax,0xc0(%rsp)
1401adc03:	00
1401adc04:	48 8b b4 24 30 01 00 	mov    0x130(%rsp),%rsi
1401adc0b:	00
1401adc0c:	33 ff                	xor    %edi,%edi
1401adc0e:	41 8b e9             	mov    %r9d,%ebp
1401adc11:	4d 8b f0             	mov    %r8,%r14
1401adc14:	4c 8b e1             	mov    %rcx,%r12
1401adc17:	48 89 3e             	mov    %rdi,(%rsi)
1401adc1a:	83 fa 01             	cmp    $0x1,%edx
1401adc1d:	0f 85 da 00 00 00    	jne    0x1401adcfd
1401adc23:	4c 8d 4c 24 40       	lea    0x40(%rsp),%r9
1401adc28:	c7 44 24 20 80 00 00 	movl   $0x80,0x20(%rsp)
1401adc2f:	00
1401adc30:	44 8b c5             	mov    %ebp,%r8d
1401adc33:	49 8b d6             	mov    %r14,%rdx
1401adc36:	e8 05 fe ff ff       	call   0x1401ada40
1401adc3b:	48 63 d8             	movslq %eax,%rbx
1401adc3e:	85 c0                	test   %eax,%eax
1401adc40:	74 43                	je     0x1401adc85
1401adc42:	8d 57 01             	lea    0x1(%rdi),%edx
1401adc45:	48 8b cb             	mov    %rbx,%rcx
1401adc48:	e8 4f 91 ff ff       	call   0x1401a6d9c
1401adc4d:	33 c9                	xor    %ecx,%ecx
1401adc4f:	48 89 06             	mov    %rax,(%rsi)
1401adc52:	e8 65 8d ff ff       	call   0x1401a69bc
1401adc57:	48 39 3e             	cmp    %rdi,(%rsi)
1401adc5a:	0f 84 0e 01 00 00    	je     0x1401add6e
1401adc60:	48 8b 0e             	mov    (%rsi),%rcx
1401adc63:	8d 43 ff             	lea    -0x1(%rbx),%eax
1401adc66:	4c 63 c8             	movslq %eax,%r9
1401adc69:	4c 8d 44 24 40       	lea    0x40(%rsp),%r8
1401adc6e:	48 8b d3             	mov    %rbx,%rdx
1401adc71:	e8 b6 e6 ff ff       	call   0x1401ac32c
1401adc76:	85 c0                	test   %eax,%eax
1401adc78:	0f 85 15 01 00 00    	jne    0x1401add93
1401adc7e:	33 c0                	xor    %eax,%eax
1401adc80:	e9 ec 00 00 00       	jmp    0x1401add71
1401adc85:	ff 15 3d 06 05 00    	call   *0x5063d(%rip)        # 0x1401fe2c8
1401adc8b:	83 f8 7a             	cmp    $0x7a,%eax
1401adc8e:	0f 85 da 00 00 00    	jne    0x1401add6e
1401adc94:	45 33 c9             	xor    %r9d,%r9d
1401adc97:	89 7c 24 20          	mov    %edi,0x20(%rsp)
1401adc9b:	44 8b c5             	mov    %ebp,%r8d
1401adc9e:	49 8b d6             	mov    %r14,%rdx
1401adca1:	49 8b cc             	mov    %r12,%rcx
1401adca4:	e8 97 fd ff ff       	call   0x1401ada40
1401adca9:	4c 63 f8             	movslq %eax,%r15
1401adcac:	85 c0                	test   %eax,%eax
1401adcae:	0f 84 ba 00 00 00    	je     0x1401add6e
1401adcb4:	49 8b cf             	mov    %r15,%rcx
1401adcb7:	ba 01 00 00 00       	mov    $0x1,%edx
1401adcbc:	e8 db 90 ff ff       	call   0x1401a6d9c
1401adcc1:	48 8b d8             	mov    %rax,%rbx
1401adcc4:	48 85 c0             	test   %rax,%rax
1401adcc7:	74 25                	je     0x1401adcee
1401adcc9:	4c 8b c8             	mov    %rax,%r9
1401adccc:	44 89 7c 24 20       	mov    %r15d,0x20(%rsp)
1401adcd1:	44 8b c5             	mov    %ebp,%r8d
1401adcd4:	49 8b d6             	mov    %r14,%rdx
1401adcd7:	49 8b cc             	mov    %r12,%rcx
1401adcda:	e8 61 fd ff ff       	call   0x1401ada40
1401adcdf:	85 c0                	test   %eax,%eax
1401adce1:	74 0b                	je     0x1401adcee
1401adce3:	48 8b c3             	mov    %rbx,%rax
1401adce6:	48 8b df             	mov    %rdi,%rbx
1401adce9:	48 89 06             	mov    %rax,(%rsi)
1401adcec:	eb 03                	jmp    0x1401adcf1
1401adcee:	83 cf ff             	or     $0xffffffff,%edi
1401adcf1:	48 8b cb             	mov    %rbx,%rcx
1401adcf4:	e8 c3 8c ff ff       	call   0x1401a69bc
1401adcf9:	8b c7                	mov    %edi,%eax
1401adcfb:	eb 74                	jmp    0x1401add71
1401adcfd:	bb 02 00 00 00       	mov    $0x2,%ebx
1401add02:	3b d3                	cmp    %ebx,%edx
1401add04:	75 3b                	jne    0x1401add41
1401add06:	45 33 c9             	xor    %r9d,%r9d
1401add09:	45 33 c0             	xor    %r8d,%r8d
1401add0c:	8b d5                	mov    %ebp,%edx
1401add0e:	49 8b ce             	mov    %r14,%rcx
1401add11:	e8 9a 97 ff ff       	call   0x1401a74b0
1401add16:	4c 63 f8             	movslq %eax,%r15
1401add19:	85 c0                	test   %eax,%eax
1401add1b:	74 51                	je     0x1401add6e
1401add1d:	49 8b cf             	mov    %r15,%rcx
1401add20:	8b d3                	mov    %ebx,%edx
1401add22:	e8 75 90 ff ff       	call   0x1401a6d9c
1401add27:	48 8b d8             	mov    %rax,%rbx
1401add2a:	48 85 c0             	test   %rax,%rax
1401add2d:	74 bf                	je     0x1401adcee
1401add2f:	45 8b cf             	mov    %r15d,%r9d
1401add32:	4c 8b c0             	mov    %rax,%r8
1401add35:	8b d5                	mov    %ebp,%edx
1401add37:	49 8b ce             	mov    %r14,%rcx
1401add3a:	e8 71 97 ff ff       	call   0x1401a74b0
1401add3f:	eb 9e                	jmp    0x1401adcdf
1401add41:	85 d2                	test   %edx,%edx
1401add43:	75 29                	jne    0x1401add6e
1401add45:	0f ba ed 1d          	bts    $0x1d,%ebp
1401add49:	89 7c 24 30          	mov    %edi,0x30(%rsp)
1401add4d:	8b d5                	mov    %ebp,%edx
1401add4f:	4c 8d 44 24 30       	lea    0x30(%rsp),%r8
1401add54:	44 8b cb             	mov    %ebx,%r9d
1401add57:	49 8b ce             	mov    %r14,%rcx
1401add5a:	e8 51 97 ff ff       	call   0x1401a74b0
1401add5f:	85 c0                	test   %eax,%eax
1401add61:	74 0b                	je     0x1401add6e
1401add63:	8a 44 24 30          	mov    0x30(%rsp),%al
1401add67:	88 06                	mov    %al,(%rsi)
1401add69:	e9 10 ff ff ff       	jmp    0x1401adc7e
1401add6e:	83 c8 ff             	or     $0xffffffff,%eax
1401add71:	48 8b 8c 24 c0 00 00 	mov    0xc0(%rsp),%rcx
1401add78:	00
1401add79:	48 33 cc             	xor    %rsp,%rcx
1401add7c:	e8 4f 85 fd ff       	call   0x1401862d0
1401add81:	48 81 c4 d0 00 00 00 	add    $0xd0,%rsp
1401add88:	41 5f                	pop    %r15
1401add8a:	41 5e                	pop    %r14