1401d7ed4:	e8 77 92 f1 ff       	call   0x1400f1150
1401d7ed9:	83 e0 07             	and    $0x7,%eax
1401d7edc:	be 00 00 00 00       	mov    $0x0,%esi
1401d7ee1:	40 0f 94 c6          	sete   %sil
1401d7ee5:	48 85 db             	test   %rbx,%rbx
1401d7ee8:	74 14                	je     0x1401d7efe
1401d7eea:	85 c0                	test   %eax,%eax
1401d7eec:	75 05                	jne    0x1401d7ef3
1401d7eee:	88 03                	mov    %al,(%rbx)
1401d7ef0:	48 ff c3             	inc    %rbx
1401d7ef3:	48 8b d3             	mov    %rbx,%rdx
1401d7ef6:	48 8b cf             	mov    %rdi,%rcx
1401d7ef9:	e8 52 88 f1 ff       	call   0x1400f0750
1401d7efe:	48 8b cf             	mov    %rdi,%rcx
1401d7f01:	e8 4a 92 f1 ff       	call   0x1400f1150
1401d7f06:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
1401d7f0b:	83 c0 07             	add    $0x7,%eax
1401d7f0e:	99                   	cltd
1401d7f0f:	83 e2 07             	and    $0x7,%edx
1401d7f12:	03 c2                	add    %edx,%eax
1401d7f14:	c1 f8 03             	sar    $0x3,%eax
1401d7f17:	03 c6                	add    %esi,%eax
1401d7f19:	48 8b 74 24 30       	mov    0x30(%rsp),%rsi
1401d7f1e:	48 83 c4 20          	add    $0x20,%rsp
1401d7f22:	5f                   	pop    %rdi
1401d7f23:	c3                   	ret
1401d7f24:	cc                   	int3
1401d7f25:	cc                   	int3
1401d7f26:	cc                   	int3
1401d7f27:	cc                   	int3
1401d7f28:	cc                   	int3
1401d7f29:	cc                   	int3
1401d7f2a:	cc                   	int3
1401d7f2b:	cc                   	int3
1401d7f2c:	cc                   	int3
1401d7f2d:	cc                   	int3
1401d7f2e:	cc                   	int3
1401d7f2f:	cc                   	int3
1401d7f30:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1401d7f35:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
1401d7f3a:	57                   	push   %rdi
1401d7f3b:	b8 20 00 00 00       	mov    $0x20,%eax
1401d7f40:	e8 eb 8b 0d 00       	call   0x1402b0b30
1401d7f45:	48 2b e0             	sub    %rax,%rsp
1401d7f48:	48 8b 01             	mov    (%rcx),%rax
1401d7f4b:	41 8b f8             	mov    %r8d,%edi
1401d7f4e:	48 8b f2             	mov    %rdx,%rsi
1401d7f51:	48 8b d9             	mov    %rcx,%rbx
1401d7f54:	48 85 c0             	test   %rax,%rax
1401d7f57:	75 0d                	jne    0x1401d7f66
1401d7f59:	e8 82 91 f1 ff       	call   0x1400f10e0
1401d7f5e:	48 89 03             	mov    %rax,(%rbx)
1401d7f61:	48 85 c0             	test   %rax,%rax
1401d7f64:	74 4f                	je     0x1401d7fb5
1401d7f66:	4c 8b c0             	mov    %rax,%r8
1401d7f69:	8b d7                	mov    %edi,%edx
1401d7f6b:	48 8b ce             	mov    %rsi,%rcx
1401d7f6e:	e8 4d 86 f1 ff       	call   0x1400f05c0
1401d7f73:	48 85 c0             	test   %rax,%rax
1401d7f76:	75 4f                	jne    0x1401d7fc7
1401d7f78:	48 8b 0b             	mov    (%rbx),%rcx
1401d7f7b:	48 85 c9             	test   %rcx,%rcx
1401d7f7e:	74 35                	je     0x1401d7fb5
1401d7f80:	48 8b 44 24 58       	mov    0x58(%rsp),%rax
1401d7f85:	f6 40 20 01          	testb  $0x1,0x20(%rax)
1401d7f89:	74 1e                	je     0x1401d7fa9
1401d7f8b:	e8 c0 89 f1 ff       	call   0x1400f0950
1401d7f90:	33 c0                	xor    %eax,%eax
1401d7f92:	48 c7 03 00 00 00 00 	movq   $0x0,(%rbx)
1401d7f99:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1401d7f9e:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
1401d7fa3:	48 83 c4 20          	add    $0x20,%rsp
1401d7fa7:	5f                   	pop    %rdi
1401d7fa8:	c3                   	ret
1401d7fa9:	e8 82 8d f1 ff       	call   0x1400f0d30
1401d7fae:	48 c7 03 00 00 00 00 	movq   $0x0,(%rbx)
1401d7fb5:	33 c0                	xor    %eax,%eax
1401d7fb7:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1401d7fbc:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
1401d7fc1:	48 83 c4 20          	add    $0x20,%rsp
1401d7fc5:	5f                   	pop    %rdi
1401d7fc6:	c3                   	ret
1401d7fc7:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1401d7fcc:	b8 01 00 00 00       	mov    $0x1,%eax
1401d7fd1:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
1401d7fd6:	48 83 c4 20          	add    $0x20,%rsp
1401d7fda:	5f                   	pop    %rdi
1401d7fdb:	c3                   	ret
1401d7fdc:	cc                   	int3
1401d7fdd:	cc                   	int3
1401d7fde:	cc                   	int3
1401d7fdf:	cc                   	int3
1401d7fe0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1401d7fe5:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
1401d7fea:	57                   	push   %rdi
1401d7feb:	b8 20 00 00 00       	mov    $0x20,%eax
1401d7ff0:	e8 3b 8b 0d 00       	call   0x1402b0b30
1401d7ff5:	48 2b e0             	sub    %rax,%rsp
1401d7ff8:	48 8b 01             	mov    (%rcx),%rax
1401d7ffb:	41 8b f8             	mov    %r8d,%edi
1401d7ffe:	48 8b f2             	mov    %rdx,%rsi
1401d8001:	48 8b d9             	mov    %rcx,%rbx
1401d8004:	48 85 c0             	test   %rax,%rax
1401d8007:	75 0d                	jne    0x1401d8016
1401d8009:	e8 12 93 f1 ff       	call   0x1400f1320
1401d800e:	48 89 03             	mov    %rax,(%rbx)
1401d8011:	48 85 c0             	test   %rax,%rax
1401d8014:	74 4f                	je     0x1401d8065
1401d8016:	4c 8b c0             	mov    %rax,%r8
1401d8019:	8b d7                	mov    %edi,%edx
1401d801b:	48 8b ce             	mov    %rsi,%rcx
1401d801e:	e8 9d 85 f1 ff       	call   0x1400f05c0
1401d8023:	48 8b 0b             	mov    (%rbx),%rcx
1401d8026:	48 85 c0             	test   %rax,%rax
1401d8029:	75 4c                	jne    0x1401d8077
1401d802b:	48 85 c9             	test   %rcx,%rcx
1401d802e:	74 35                	je     0x1401d8065
1401d8030:	48 8b 44 24 58       	mov    0x58(%rsp),%rax
1401d8035:	f6 40 20 01          	testb  $0x1,0x20(%rax)
1401d8039:	74 1e                	je     0x1401d8059
1401d803b:	e8 10 89 f1 ff       	call   0x1400f0950
1401d8040:	33 c0                	xor    %eax,%eax
1401d8042:	48 c7 03 00 00 00 00 	movq   $0x0,(%rbx)
1401d8049:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1401d804e:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
1401d8053:	48 83 c4 20          	add    $0x20,%rsp
1401d8057:	5f                   	pop    %rdi
1401d8058:	c3                   	ret
1401d8059:	e8 d2 8c f1 ff       	call   0x1400f0d30
1401d805e:	48 c7 03 00 00 00 00 	movq   $0x0,(%rbx)
1401d8065:	33 c0                	xor    %eax,%eax
1401d8067:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1401d806c:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
1401d8071:	48 83 c4 20          	add    $0x20,%rsp
1401d8075:	5f                   	pop    %rdi
1401d8076:	c3                   	ret
1401d8077:	ba 04 00 00 00       	mov    $0x4,%edx
1401d807c:	e8 df 93 f1 ff       	call   0x1400f1460
1401d8081:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1401d8086:	b8 01 00 00 00       	mov    $0x1,%eax
1401d808b:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
1401d8090:	48 83 c4 20          	add    $0x20,%rsp
1401d8094:	5f                   	pop    %rdi
1401d8095:	c3                   	ret
1401d8096:	cc                   	int3
1401d8097:	cc                   	int3
1401d8098:	cc                   	int3
1401d8099:	cc                   	int3
1401d809a:	cc                   	int3
1401d809b:	cc                   	int3
1401d809c:	cc                   	int3
1401d809d:	cc                   	int3
1401d809e:	cc                   	int3
1401d809f:	cc                   	int3
1401d80a0:	40 53                	rex push %rbx
1401d80a2:	b8 20 00 00 00       	mov    $0x20,%eax
1401d80a7:	e8 84 8a 0d 00       	call   0x1402b0b30
1401d80ac:	48 2b e0             	sub    %rax,%rsp
1401d80af:	48 8b 12             	mov    (%rdx),%rdx
1401d80b2:	48 8b d9             	mov    %rcx,%rbx
1401d80b5:	e8 36 9c f1 ff       	call   0x1400f1cf0
1401d80ba:	85 c0                	test   %eax,%eax
1401d80bc:	74 1e                	je     0x1401d80dc
1401d80be:	48 8d 15 4b 0e 11 00 	lea    0x110e4b(%rip),%rdx        # 0x1402e8f10
1401d80c5:	48 8b cb             	mov    %rbx,%rcx
1401d80c8:	e8 43 4e f1 ff       	call   0x1400ecf10
1401d80cd:	85 c0                	test   %eax,%eax
1401d80cf:	7e 0b                	jle    0x1401d80dc
1401d80d1:	b8 01 00 00 00       	mov    $0x1,%eax
1401d80d6:	48 83 c4 20          	add    $0x20,%rsp
1401d80da:	5b                   	pop    %rbx
1401d80db:	c3                   	ret
1401d80dc:	33 c0                	xor    %eax,%eax
1401d80de:	48 83 c4 20          	add    $0x20,%rsp
1401d80e2:	5b                   	pop    %rbx
1401d80e3:	c3                   	ret
1401d80e4:	cc                   	int3
1401d80e5:	cc                   	int3
1401d80e6:	cc                   	int3
1401d80e7:	cc                   	int3
1401d80e8:	cc                   	int3
1401d80e9:	cc                   	int3
1401d80ea:	cc                   	int3
1401d80eb:	cc                   	int3
1401d80ec:	cc                   	int3
1401d80ed:	cc                   	int3
1401d80ee:	cc                   	int3
1401d80ef:	cc                   	int3
1401d80f0:	48 8d 05 d9 cd 15 00 	lea    0x15cdd9(%rip),%rax        # 0x140334ed0
1401d80f7:	c3                   	ret
1401d80f8:	cc                   	int3
1401d80f9:	cc                   	int3
1401d80fa:	cc                   	int3
1401d80fb:	cc                   	int3
1401d80fc:	cc                   	int3
1401d80fd:	cc                   	int3
1401d80fe:	cc                   	int3
1401d80ff:	cc                   	int3
1401d8100:	48 8d 05 f9 cd 15 00 	lea    0x15cdf9(%rip),%rax        # 0x140334f00
1401d8107:	c3                   	ret
1401d8108:	cc                   	int3
1401d8109:	cc                   	int3
1401d810a:	cc                   	int3
1401d810b:	cc                   	int3
1401d810c:	cc                   	int3
1401d810d:	cc                   	int3
1401d810e:	cc                   	int3
1401d810f:	cc                   	int3
1401d8110:	40 53                	rex push %rbx
1401d8112:	b8 20 00 00 00       	mov    $0x20,%eax
1401d8117:	e8 14 8a 0d 00       	call   0x1402b0b30
1401d811c:	48 2b e0             	sub    %rax,%rsp
1401d811f:	48 8b d9             	mov    %rcx,%rbx
1401d8122:	44 8d 40 ff          	lea    -0x1(%rax),%r8d
1401d8126:	8d 48 e8             	lea    -0x18(%rax),%ecx
1401d8129:	48 8d 15 d0 cf 15 00 	lea    0x15cfd0(%rip),%rdx        # 0x140335100
1401d8130:	e8 8b 3f f1 ff       	call   0x1400ec0c0
1401d8135:	48 89 03             	mov    %rax,(%rbx)
1401d8138:	48 85 c0             	test   %rax,%rax
1401d813b:	75 36                	jne    0x1401d8173
1401d813d:	e8 2e ef f4 ff       	call   0x140127070
1401d8142:	4c 8d 05 cf cf 15 00 	lea    0x15cfcf(%rip),%r8        # 0x140335118
1401d8149:	ba 20 00 00 00       	mov    $0x20,%edx
1401d814e:	48 8d 0d ab cf 15 00 	lea    0x15cfab(%rip),%rcx        # 0x140335100
1401d8155:	e8 36 f0 f4 ff       	call   0x140127190
1401d815a:	45 33 c0             	xor    %r8d,%r8d
1401d815d:	ba 00 01 0c 00       	mov    $0xc0100,%edx
1401d8162:	41 8d 48 0d          	lea    0xd(%r8),%ecx
1401d8166:	e8 25 f1 f4 ff       	call   0x140127290
1401d816b:	33 c0                	xor    %eax,%eax
1401d816d:	48 83 c4 20          	add    $0x20,%rsp
1401d8171:	5b                   	pop    %rbx
1401d8172:	c3                   	ret
1401d8173:	b8 01 00 00 00       	mov    $0x1,%eax
1401d8178:	48 83 c4 20          	add    $0x20,%rsp
1401d817c:	5b                   	pop    %rbx
1401d817d:	c3                   	ret
1401d817e:	cc                   	int3
1401d817f:	cc                   	int3
1401d8180:	40 53                	rex push %rbx
1401d8182:	b8 20 00 00 00       	mov    $0x20,%eax
1401d8187:	e8 a4 89 0d 00       	call   0x1402b0b30
1401d818c:	48 2b e0             	sub    %rax,%rsp
1401d818f:	48 8b d9             	mov    %rcx,%rbx
1401d8192:	44 8d 40 08          	lea    0x8(%rax),%r8d
1401d8196:	48 8b 09             	mov    (%rcx),%rcx
1401d8199:	48 8d 15 60 cf 15 00 	lea    0x15cf60(%rip),%rdx        # 0x140335100
1401d81a0:	e8 1b 3c f1 ff       	call   0x1400ebdc0
1401d81a5:	48 c7 03 00 00 00 00 	movq   $0x0,(%rbx)
1401d81ac:	48 83 c4 20          	add    $0x20,%rsp
1401d81b0:	5b                   	pop    %rbx
1401d81b1:	c3                   	ret
1401d81b2:	cc                   	int3
1401d81b3:	cc                   	int3
1401d81b4:	cc                   	int3
1401d81b5:	cc                   	int3
1401d81b6:	cc                   	int3
1401d81b7:	cc                   	int3
1401d81b8:	cc                   	int3
1401d81b9:	cc                   	int3
1401d81ba:	cc                   	int3
1401d81bb:	cc                   	int3
1401d81bc:	cc                   	int3
1401d81bd:	cc                   	int3
1401d81be:	cc                   	int3
1401d81bf:	cc                   	int3
1401d81c0:	48 8b 01             	mov    (%rcx),%rax
1401d81c3:	48 c7 00 00 00 00 00 	movq   $0x0,(%rax)
1401d81ca:	c3                   	ret
1401d81cb:	cc                   	int3
1401d81cc:	cc                   	int3
1401d81cd:	cc                   	int3
1401d81ce:	cc                   	int3
1401d81cf:	cc                   	int3
1401d81d0:	b8 28 00 00 00       	mov    $0x28,%eax
1401d81d5:	e8 56 89 0d 00       	call   0x1402b0b30
1401d81da:	48 2b e0             	sub    %rax,%rsp
1401d81dd:	48 8b 01             	mov    (%rcx),%rax
1401d81e0:	4c 8b d2             	mov    %rdx,%r10
1401d81e3:	45 33 c0             	xor    %r8d,%r8d
1401d81e6:	48 8b 10             	mov    (%rax),%rdx
1401d81e9:	41 8b 41 20          	mov    0x20(%r9),%eax
1401d81ed:	a8 01                	test   $0x1,%al
1401d81ef:	74 0f                	je     0x1401d8200
1401d81f1:	48 85 d2             	test   %rdx,%rdx
1401d81f4:	75 0a                	jne    0x1401d8200
1401d81f6:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
1401d81fb:	48 83 c4 28          	add    $0x28,%rsp
1401d81ff:	c3                   	ret
1401d8200:	a8 02                	test   $0x2,%al
1401d8202:	74 0e                	je     0x1401d8212
1401d8204:	48 85 d2             	test   %rdx,%rdx
1401d8207:	79 09                	jns    0x1401d8212
1401d8209:	48 f7 da             	neg    %rdx
1401d820c:	41 b8 01 00 00 00    	mov    $0x1,%r8d
1401d8212:	49 8b ca             	mov    %r10,%rcx
1401d8215:	48 83 c4 28          	add    $0x28,%rsp
1401d8219:	e9 52 c9 f9 ff       	jmp    0x140174b70
1401d821e:	cc                   	int3
1401d821f:	cc                   	int3
1401d8220:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
1401d8225:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
1401d822a:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
1401d822f:	57                   	push   %rdi
1401d8230:	b8 30 00 00 00       	mov    $0x30,%eax
1401d8235:	e8 f6 88 0d 00       	call   0x1402b0b30
1401d823a:	48 2b e0             	sub    %rax,%rsp
1401d823d:	48 8b 7c 24 68       	mov    0x68(%rsp),%rdi
1401d8242:	33 c0                	xor    %eax,%eax
1401d8244:	41 8b f0             	mov    %r8d,%esi
1401d8247:	48 8b d9             	mov    %rcx,%rbx
1401d824a:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
1401d824f:	89 44 24 40          	mov    %eax,0x40(%rsp)
1401d8253:	48 39 01             	cmp    %rax,(%rcx)
1401d8256:	75 11                	jne    0x1401d8269
1401d8258:	48 8b d7             	mov    %rdi,%rdx
1401d825b:	e8 b0 fe ff ff       	call   0x1401d8110
1401d8260:	85 c0                	test   %eax,%eax
1401d8262:	74 66                	je     0x1401d82ca
1401d8264:	48 8b 44 24 20       	mov    0x20(%rsp),%rax
1401d8269:	48 8b 1b             	mov    (%rbx),%rbx
1401d826c:	85 f6                	test   %esi,%esi
1401d826e:	0f 84 cd 00 00 00    	je     0x1401d8341
1401d8274:	44 8b ce             	mov    %esi,%r9d
1401d8277:	4c 8d 44 24 48       	lea    0x48(%rsp),%r8
1401d827c:	48 8d 54 24 40       	lea    0x40(%rsp),%rdx
1401d8281:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
1401d8286:	e8 d5 c7 f9 ff       	call   0x140174a60
1401d828b:	85 c0                	test   %eax,%eax
1401d828d:	74 3b                	je     0x1401d82ca
1401d828f:	f6 47 20 02          	testb  $0x2,0x20(%rdi)
1401d8293:	75 4e                	jne    0x1401d82e3
1401d8295:	83 7c 24 40 00       	cmpl   $0x0,0x40(%rsp)
1401d829a:	74 40                	je     0x1401d82dc
1401d829c:	e8 cf ed f4 ff       	call   0x140127070
1401d82a1:	4c 8d 05 80 ce 15 00 	lea    0x15ce80(%rip),%r8        # 0x140335128
1401d82a8:	ba 61 00 00 00       	mov    $0x61,%edx
1401d82ad:	48 8d 0d 4c ce 15 00 	lea    0x15ce4c(%rip),%rcx        # 0x140335100
1401d82b4:	e8 d7 ee f4 ff       	call   0x140127190
1401d82b9:	45 33 c0             	xor    %r8d,%r8d
1401d82bc:	ba e2 00 00 00       	mov    $0xe2,%edx
1401d82c1:	41 8d 48 0d          	lea    0xd(%r8),%ecx
1401d82c5:	e8 c6 ef f4 ff       	call   0x140127290
1401d82ca:	33 c0                	xor    %eax,%eax
1401d82cc:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
1401d82d1:	48 8b 74 24 58       	mov    0x58(%rsp),%rsi
1401d82d6:	48 83 c4 30          	add    $0x30,%rsp
1401d82da:	5f                   	pop    %rdi
1401d82db:	c3                   	ret
1401d82dc:	48 8b 44 24 20       	mov    0x20(%rsp),%rax