140043c12:	f7 f1                	div    %ecx
140043c14:	89 d0                	mov    %edx,%eax
140043c16:	3d cd 00 00 00       	cmp    $0xcd,%eax
140043c1b:	0f 82 65 02 00 00    	jb     0x140043e86
140043c21:	48 81 f9 01 00 01 00 	cmp    $0x10001,%rcx
140043c28:	72 17                	jb     0x140043c41
140043c2a:	f7 c1 00 00 f0 0f    	test   $0xff00000,%ecx
140043c30:	0f 85 6f 03 00 00    	jne    0x140043fa5
140043c36:	c1 e9 0c             	shr    $0xc,%ecx
140043c39:	41 89 c9             	mov    %ecx,%r9d
140043c3c:	e9 45 02 00 00       	jmp    0x140043e86
140043c41:	b8 00 00 01 00       	mov    $0x10000,%eax
140043c46:	31 d2                	xor    %edx,%edx
140043c48:	f7 f1                	div    %ecx
140043c4a:	f2 0f 2a c2          	cvtsi2sd %edx,%xmm0
140043c4e:	f2 0f 59 05 8a 03 0b 	mulsd  0xb038a(%rip),%xmm0        # 0x1400f3fe0
140043c55:	00
140043c56:	b8 00 f0 00 00       	mov    $0xf000,%eax
140043c5b:	31 d2                	xor    %edx,%edx
140043c5d:	f7 f1                	div    %ecx
140043c5f:	83 c2 08             	add    $0x8,%edx
140043c62:	f2 0f 2a ca          	cvtsi2sd %edx,%xmm1
140043c66:	f2 0f 5e 0d 7a 03 0b 	divsd  0xb037a(%rip),%xmm1        # 0x1400f3fe8
140043c6d:	00
140043c6e:	b8 00 e0 00 00       	mov    $0xe000,%eax
140043c73:	31 d2                	xor    %edx,%edx
140043c75:	f7 f1                	div    %ecx
140043c77:	83 c2 10             	add    $0x10,%edx
140043c7a:	f2 0f 2a d2          	cvtsi2sd %edx,%xmm2
140043c7e:	f2 0f 5e 15 6a 03 0b 	divsd  0xb036a(%rip),%xmm2        # 0x1400f3ff0
140043c85:	00
140043c86:	b8 00 d0 00 00       	mov    $0xd000,%eax
140043c8b:	31 d2                	xor    %edx,%edx
140043c8d:	f7 f1                	div    %ecx
140043c8f:	83 c2 18             	add    $0x18,%edx
140043c92:	f2 0f 2a da          	cvtsi2sd %edx,%xmm3
140043c96:	f2 0f 5e 1d 5a 03 0b 	divsd  0xb035a(%rip),%xmm3        # 0x1400f3ff8
140043c9d:	00
140043c9e:	b8 00 c0 00 00       	mov    $0xc000,%eax
140043ca3:	31 d2                	xor    %edx,%edx
140043ca5:	f7 f1                	div    %ecx
140043ca7:	f2 0f 2a e2          	cvtsi2sd %edx,%xmm4
140043cab:	f2 0f 5e 25 4d 03 0b 	divsd  0xb034d(%rip),%xmm4        # 0x1400f4000
140043cb2:	00
140043cb3:	b8 00 b0 00 00       	mov    $0xb000,%eax
140043cb8:	31 d2                	xor    %edx,%edx
140043cba:	f7 f1                	div    %ecx
140043cbc:	83 c2 08             	add    $0x8,%edx
140043cbf:	f2 0f 2a ea          	cvtsi2sd %edx,%xmm5
140043cc3:	f2 0f 5e 2d 3d 03 0b 	divsd  0xb033d(%rip),%xmm5        # 0x1400f4008
140043cca:	00
140043ccb:	b8 00 a0 00 00       	mov    $0xa000,%eax
140043cd0:	31 d2                	xor    %edx,%edx
140043cd2:	f7 f1                	div    %ecx
140043cd4:	83 c2 10             	add    $0x10,%edx
140043cd7:	f2 0f 2a f2          	cvtsi2sd %edx,%xmm6
140043cdb:	f2 0f 5e 35 2d 03 0b 	divsd  0xb032d(%rip),%xmm6        # 0x1400f4010
140043ce2:	00
140043ce3:	b8 00 90 00 00       	mov    $0x9000,%eax
140043ce8:	31 d2                	xor    %edx,%edx
140043cea:	f7 f1                	div    %ecx
140043cec:	83 c2 18             	add    $0x18,%edx
140043cef:	f2 0f 2a fa          	cvtsi2sd %edx,%xmm7
140043cf3:	f2 0f 5e 3d 1d 03 0b 	divsd  0xb031d(%rip),%xmm7        # 0x1400f4018
140043cfa:	00
140043cfb:	b8 00 80 00 00       	mov    $0x8000,%eax
140043d00:	31 d2                	xor    %edx,%edx
140043d02:	f7 f1                	div    %ecx
140043d04:	f2 44 0f 2a c2       	cvtsi2sd %edx,%xmm8
140043d09:	f2 44 0f 59 05 0e 03 	mulsd  0xb030e(%rip),%xmm8        # 0x1400f4020
140043d10:	0b 00
140043d12:	b8 00 70 00 00       	mov    $0x7000,%eax
140043d17:	31 d2                	xor    %edx,%edx
140043d19:	f7 f1                	div    %ecx
140043d1b:	83 c2 08             	add    $0x8,%edx
140043d1e:	f2 44 0f 2a ca       	cvtsi2sd %edx,%xmm9
140043d23:	f2 44 0f 5e 0d fc 02 	divsd  0xb02fc(%rip),%xmm9        # 0x1400f4028
140043d2a:	0b 00
140043d2c:	b8 00 60 00 00       	mov    $0x6000,%eax
140043d31:	31 d2                	xor    %edx,%edx
140043d33:	f7 f1                	div    %ecx
140043d35:	83 c2 10             	add    $0x10,%edx
140043d38:	f2 44 0f 2a d2       	cvtsi2sd %edx,%xmm10
140043d3d:	f2 44 0f 5e 15 ea 02 	divsd  0xb02ea(%rip),%xmm10        # 0x1400f4030
140043d44:	0b 00
140043d46:	b8 00 50 00 00       	mov    $0x5000,%eax
140043d4b:	31 d2                	xor    %edx,%edx
140043d4d:	f7 f1                	div    %ecx
140043d4f:	83 c2 18             	add    $0x18,%edx
140043d52:	f2 44 0f 2a da       	cvtsi2sd %edx,%xmm11
140043d57:	f2 44 0f 5e 1d d8 02 	divsd  0xb02d8(%rip),%xmm11        # 0x1400f4038
140043d5e:	0b 00
140043d60:	b8 00 40 00 00       	mov    $0x4000,%eax
140043d65:	31 d2                	xor    %edx,%edx
140043d67:	f7 f1                	div    %ecx
140043d69:	f2 44 0f 2a e2       	cvtsi2sd %edx,%xmm12
140043d6e:	f2 44 0f 59 25 c9 02 	mulsd  0xb02c9(%rip),%xmm12        # 0x1400f4040
140043d75:	0b 00
140043d77:	b8 00 30 00 00       	mov    $0x3000,%eax
140043d7c:	31 d2                	xor    %edx,%edx
140043d7e:	f7 f1                	div    %ecx
140043d80:	83 c2 08             	add    $0x8,%edx
140043d83:	f2 44 0f 2a ea       	cvtsi2sd %edx,%xmm13
140043d88:	f2 44 0f 5e 2d b7 02 	divsd  0xb02b7(%rip),%xmm13        # 0x1400f4048
140043d8f:	0b 00
140043d91:	f2 44 0f 10 35 9e 4c 	movsd  0x94c9e(%rip),%xmm14        # 0x1400d8a38
140043d98:	09 00
140043d9a:	31 c0                	xor    %eax,%eax
140043d9c:	66 45 0f 2e f5       	ucomisd %xmm13,%xmm14
140043da1:	0f 97 c0             	seta   %al
140043da4:	f2 45 0f 5d ee       	minsd  %xmm14,%xmm13
140043da9:	66 45 0f 2e ec       	ucomisd %xmm12,%xmm13
140043dae:	8d 04 40             	lea    (%rax,%rax,2),%eax
140043db1:	b9 04 00 00 00       	mov    $0x4,%ecx
140043db6:	0f 46 c8             	cmovbe %eax,%ecx
140043db9:	f2 45 0f 5d e5       	minsd  %xmm13,%xmm12
140043dbe:	66 45 0f 2e e3       	ucomisd %xmm11,%xmm12
140043dc3:	b8 05 00 00 00       	mov    $0x5,%eax
140043dc8:	0f 46 c1             	cmovbe %ecx,%eax
140043dcb:	f2 45 0f 5d dc       	minsd  %xmm12,%xmm11
140043dd0:	66 45 0f 2e da       	ucomisd %xmm10,%xmm11
140043dd5:	b9 06 00 00 00       	mov    $0x6,%ecx
140043dda:	0f 46 c8             	cmovbe %eax,%ecx
140043ddd:	f2 45 0f 5d d3       	minsd  %xmm11,%xmm10
140043de2:	66 45 0f 2e d1       	ucomisd %xmm9,%xmm10
140043de7:	b8 07 00 00 00       	mov    $0x7,%eax
140043dec:	0f 46 c1             	cmovbe %ecx,%eax
140043def:	f2 45 0f 5d ca       	minsd  %xmm10,%xmm9
140043df4:	66 45 0f 2e c8       	ucomisd %xmm8,%xmm9
140043df9:	b9 08 00 00 00       	mov    $0x8,%ecx
140043dfe:	0f 46 c8             	cmovbe %eax,%ecx
140043e01:	f2 45 0f 5d c1       	minsd  %xmm9,%xmm8
140043e06:	66 44 0f 2e c7       	ucomisd %xmm7,%xmm8
140043e0b:	b8 09 00 00 00       	mov    $0x9,%eax
140043e10:	0f 46 c1             	cmovbe %ecx,%eax
140043e13:	f2 41 0f 5d f8       	minsd  %xmm8,%xmm7
140043e18:	66 0f 2e fe          	ucomisd %xmm6,%xmm7
140043e1c:	b9 0a 00 00 00       	mov    $0xa,%ecx
140043e21:	0f 46 c8             	cmovbe %eax,%ecx
140043e24:	f2 0f 5d f7          	minsd  %xmm7,%xmm6
140043e28:	66 0f 2e f5          	ucomisd %xmm5,%xmm6
140043e2c:	b8 0b 00 00 00       	mov    $0xb,%eax
140043e31:	0f 46 c1             	cmovbe %ecx,%eax
140043e34:	f2 0f 5d ee          	minsd  %xmm6,%xmm5
140043e38:	66 0f 2e ec          	ucomisd %xmm4,%xmm5
140043e3c:	b9 0c 00 00 00       	mov    $0xc,%ecx
140043e41:	0f 46 c8             	cmovbe %eax,%ecx
140043e44:	f2 0f 5d e5          	minsd  %xmm5,%xmm4
140043e48:	66 0f 2e e3          	ucomisd %xmm3,%xmm4
140043e4c:	b8 0d 00 00 00       	mov    $0xd,%eax
140043e51:	0f 46 c1             	cmovbe %ecx,%eax
140043e54:	f2 0f 5d dc          	minsd  %xmm4,%xmm3
140043e58:	66 0f 2e da          	ucomisd %xmm2,%xmm3
140043e5c:	b9 0e 00 00 00       	mov    $0xe,%ecx
140043e61:	0f 46 c8             	cmovbe %eax,%ecx
140043e64:	f2 0f 5d d3          	minsd  %xmm3,%xmm2
140043e68:	66 0f 2e d1          	ucomisd %xmm1,%xmm2
140043e6c:	b8 0f 00 00 00       	mov    $0xf,%eax
140043e71:	0f 46 c1             	cmovbe %ecx,%eax
140043e74:	f2 0f 5d ca          	minsd  %xmm2,%xmm1
140043e78:	66 0f 2e c8          	ucomisd %xmm0,%xmm1
140043e7c:	41 b9 10 00 00 00    	mov    $0x10,%r9d
140043e82:	44 0f 46 c8          	cmovbe %eax,%r9d
140043e86:	44 89 c8             	mov    %r9d,%eax
140043e89:	0f 28 34 24          	movaps (%rsp),%xmm6
140043e8d:	0f 28 7c 24 10       	movaps 0x10(%rsp),%xmm7
140043e92:	44 0f 28 44 24 20    	movaps 0x20(%rsp),%xmm8
140043e98:	44 0f 28 4c 24 30    	movaps 0x30(%rsp),%xmm9
140043e9e:	44 0f 28 54 24 40    	movaps 0x40(%rsp),%xmm10
140043ea4:	44 0f 28 5c 24 50    	movaps 0x50(%rsp),%xmm11
140043eaa:	44 0f 28 64 24 60    	movaps 0x60(%rsp),%xmm12
140043eb0:	44 0f 28 6c 24 70    	movaps 0x70(%rsp),%xmm13
140043eb6:	44 0f 28 b4 24 80 00 	movaps 0x80(%rsp),%xmm14
140043ebd:	00 00
140043ebf:	48 81 c4 90 00 00 00 	add    $0x90,%rsp
140043ec6:	5e                   	pop    %rsi
140043ec7:	c3                   	ret
140043ec8:	41 89 d2             	mov    %edx,%r10d
140043ecb:	44 39 c6             	cmp    %r8d,%esi
140043ece:	44 0f 42 c6          	cmovb  %esi,%r8d
140043ed2:	41 0f 92 c1          	setb   %r9b
140043ed6:	b8 00 70 00 00       	mov    $0x7000,%eax
140043edb:	31 d2                	xor    %edx,%edx
140043edd:	f7 f1                	div    %ecx
140043edf:	41 c0 e1 02          	shl    $0x2,%r9b
140043ee3:	41 80 c1 04          	add    $0x4,%r9b
140043ee7:	44 39 c2             	cmp    %r8d,%edx
140043eea:	44 0f 42 c2          	cmovb  %edx,%r8d
140043eee:	41 0f b6 c1          	movzbl %r9b,%eax
140043ef2:	be 07 00 00 00       	mov    $0x7,%esi
140043ef7:	0f 43 f0             	cmovae %eax,%esi
140043efa:	b8 00 b0 00 00       	mov    $0xb000,%eax
140043eff:	31 d2                	xor    %edx,%edx
140043f01:	f7 f1                	div    %ecx
140043f03:	41 89 d1             	mov    %edx,%r9d
140043f06:	45 39 c3             	cmp    %r8d,%r11d
140043f09:	45 0f 42 c3          	cmovb  %r11d,%r8d
140043f0d:	41 bb 0c 00 00 00    	mov    $0xc,%r11d
140043f13:	44 0f 43 de          	cmovae %esi,%r11d
140043f17:	b8 00 a0 00 00       	mov    $0xa000,%eax
140043f1c:	31 d2                	xor    %edx,%edx
140043f1e:	f7 f1                	div    %ecx
140043f20:	45 39 c1             	cmp    %r8d,%r9d
140043f23:	45 0f 42 c1          	cmovb  %r9d,%r8d
140043f27:	b8 0b 00 00 00       	mov    $0xb,%eax
140043f2c:	41 0f 43 c3          	cmovae %r11d,%eax
140043f30:	44 39 c2             	cmp    %r8d,%edx
140043f33:	44 0f 42 c2          	cmovb  %edx,%r8d
140043f37:	41 bb 0a 00 00 00    	mov    $0xa,%r11d
140043f3d:	44 0f 43 d8          	cmovae %eax,%r11d
140043f41:	b8 00 f0 00 00       	mov    $0xf000,%eax
140043f46:	31 d2                	xor    %edx,%edx
140043f48:	f7 f1                	div    %ecx
140043f4a:	41 89 d1             	mov    %edx,%r9d
140043f4d:	45 39 c2             	cmp    %r8d,%r10d
140043f50:	45 0f 42 c2          	cmovb  %r10d,%r8d
140043f54:	be 10 00 00 00       	mov    $0x10,%esi
140043f59:	41 0f 43 f3          	cmovae %r11d,%esi
140043f5d:	b8 00 e0 00 00       	mov    $0xe000,%eax
140043f62:	31 d2                	xor    %edx,%edx
140043f64:	f7 f1                	div    %ecx
140043f66:	41 89 d2             	mov    %edx,%r10d
140043f69:	45 39 c1             	cmp    %r8d,%r9d
140043f6c:	45 0f 42 c1          	cmovb  %r9d,%r8d
140043f70:	41 b9 0f 00 00 00    	mov    $0xf,%r9d
140043f76:	44 0f 43 ce          	cmovae %esi,%r9d
140043f7a:	b8 00 d0 00 00       	mov    $0xd000,%eax
140043f7f:	31 d2                	xor    %edx,%edx
140043f81:	f7 f1                	div    %ecx
140043f83:	45 39 c2             	cmp    %r8d,%r10d
140043f86:	45 0f 42 c2          	cmovb  %r10d,%r8d
140043f8a:	b8 0e 00 00 00       	mov    $0xe,%eax
140043f8f:	41 0f 43 c1          	cmovae %r9d,%eax
140043f93:	44 39 c2             	cmp    %r8d,%edx
140043f96:	41 b9 0d 00 00 00    	mov    $0xd,%r9d
140043f9c:	44 0f 43 c8          	cmovae %eax,%r9d
140043fa0:	e9 5f fc ff ff       	jmp    0x140043c04
140043fa5:	cc                   	int3
140043fa6:	0f 0b                	ud2
140043fa8:	cc                   	int3
140043fa9:	cc                   	int3
140043faa:	cc                   	int3
140043fab:	cc                   	int3
140043fac:	cc                   	int3
140043fad:	cc                   	int3
140043fae:	cc                   	int3
140043faf:	cc                   	int3
140043fb0:	56                   	push   %rsi
140043fb1:	53                   	push   %rbx
140043fb2:	48 83 ec 28          	sub    $0x28,%rsp
140043fb6:	44 89 c3             	mov    %r8d,%ebx
140043fb9:	48 89 ce             	mov    %rcx,%rsi
140043fbc:	89 51 18             	mov    %edx,0x18(%rcx)
140043fbf:	89 d1                	mov    %edx,%ecx
140043fc1:	48 b8 ff ff ff ff ff 	movabs $0x3ffffffffff,%rax
140043fc8:	03 00 00
140043fcb:	31 d2                	xor    %edx,%edx
140043fcd:	48 f7 f1             	div    %rcx
140043fd0:	48 ff c0             	inc    %rax
140043fd3:	48 89 46 20          	mov    %rax,0x20(%rsi)
140043fd7:	e8 14 da ff ff       	call   0x1400419f0
140043fdc:	48 89 06             	mov    %rax,(%rsi)
140043fdf:	0f 57 c0             	xorps  %xmm0,%xmm0
140043fe2:	0f 11 46 08          	movups %xmm0,0x8(%rsi)
140043fe6:	0f b6 46 1c          	movzbl 0x1c(%rsi),%eax
140043fea:	89 46 1c             	mov    %eax,0x1c(%rsi)
140043fed:	8b 4e 18             	mov    0x18(%rsi),%ecx
140043ff0:	31 d2                	xor    %edx,%edx
140043ff2:	e8 59 fb ff ff       	call   0x140043b50
140043ff7:	0f b6 c8             	movzbl %al,%ecx
140043ffa:	88 4e 1c             	mov    %cl,0x1c(%rsi)
140043ffd:	c6 46 28 00          	movb   $0x0,0x28(%rsi)
140044001:	8b 56 18             	mov    0x18(%rsi),%edx
140044004:	81 fa 00 00 01 00    	cmp    $0x10000,%edx
14004400a:	77 34                	ja     0x140044040
14004400c:	81 fa 01 80 00 00    	cmp    $0x8001,%edx
140044012:	0f 92 c2             	setb   %dl
140044015:	80 f3 01             	xor    $0x1,%bl
140044018:	08 d3                	or     %dl,%bl
14004401a:	75 18                	jne    0x140044034
14004401c:	c1 e1 0c             	shl    $0xc,%ecx
14004401f:	48 0f af 4e 20       	imul   0x20(%rsi),%rcx
140044024:	48 c1 e9 2a          	shr    $0x2a,%rcx
140044028:	83 f9 01             	cmp    $0x1,%ecx
14004402b:	75 07                	jne    0x140044034
14004402d:	3c 05                	cmp    $0x5,%al
14004402f:	0f 93 c0             	setae  %al
140044032:	eb 02                	jmp    0x140044036
140044034:	31 c0                	xor    %eax,%eax
140044036:	88 46 28             	mov    %al,0x28(%rsi)
140044039:	48 83 c4 28          	add    $0x28,%rsp
14004403d:	5b                   	pop    %rbx
14004403e:	5e                   	pop    %rsi
14004403f:	c3                   	ret
140044040:	f7 c2 ff 0f 00 00    	test   $0xfff,%edx
140044046:	75 16                	jne    0x14004405e
140044048:	c1 e1 0c             	shl    $0xc,%ecx
14004404b:	48 0f af 4e 20       	imul   0x20(%rsi),%rcx
140044050:	48 c1 e9 2a          	shr    $0x2a,%rcx
140044054:	b0 01                	mov    $0x1,%al
140044056:	83 f9 01             	cmp    $0x1,%ecx
140044059:	74 db                	je     0x140044036
14004405b:	cc                   	int3
14004405c:	0f 0b                	ud2
14004405e:	cc                   	int3
14004405f:	0f 0b                	ud2
140044061:	cc                   	int3
140044062:	cc                   	int3
140044063:	cc                   	int3
140044064:	cc                   	int3
140044065:	cc                   	int3
140044066:	cc                   	int3
140044067:	cc                   	int3
140044068:	cc                   	int3
140044069:	cc                   	int3
14004406a:	cc                   	int3
14004406b:	cc                   	int3
14004406c:	cc                   	int3
14004406d:	cc                   	int3
14004406e:	cc                   	int3
14004406f:	cc                   	int3
140044070:	56                   	push   %rsi
140044071:	57                   	push   %rdi
140044072:	53                   	push   %rbx
140044073:	48 83 ec 20          	sub    $0x20,%rsp
140044077:	48 89 ce             	mov    %rcx,%rsi
14004407a:	48 8b 19             	mov    (%rcx),%rbx
14004407d:	e8 6e d9 ff ff       	call   0x1400419f0
140044082:	48 39 c3             	cmp    %rax,%rbx
140044085:	74 74                	je     0x1400440fb
140044087:	48 85 db             	test   %rbx,%rbx
14004408a:	74 7b                	je     0x140044107
14004408c:	31 c9                	xor    %ecx,%ecx
14004408e:	31 c0                	xor    %eax,%eax
140044090:	eb 2a                	jmp    0x1400440bc
140044092:	4c 8b 46 10          	mov    0x10(%rsi),%r8
140044096:	4c 89 42 08          	mov    %r8,0x8(%rdx)
14004409a:	48 89 56 10          	mov    %rdx,0x10(%rsi)
14004409e:	eb 11                	jmp    0x1400440b1
1400440a0:	4d 85 c9             	test   %r9,%r9
1400440a3:	74 ed                	je     0x140044092
1400440a5:	4c 8b 46 08          	mov    0x8(%rsi),%r8
1400440a9:	4c 89 42 08          	mov    %r8,0x8(%rdx)
1400440ad:	48 89 56 08          	mov    %rdx,0x8(%rsi)
1400440b1:	48 89 ca             	mov    %rcx,%rdx
1400440b4:	48 89 d1             	mov    %rdx,%rcx
1400440b7:	48 85 db             	test   %rbx,%rbx
1400440ba:	74 43                	je     0x1400440ff
1400440bc:	48 89 da             	mov    %rbx,%rdx
1400440bf:	4c 8b 0b             	mov    (%rbx),%r9