Function at 0x14001b50c
Capabilities:
Encode data using xor
Get thread local storage value

Disassembly:
sub rsp, 0x5b8
movaps xmmword [rsp + 0x5a0], xmm15
movaps xmmword [rsp + 0x590], xmm14
movaps xmmword [rsp + 0x580], xmm13
movaps xmmword [rsp + 0x570], xmm12
movaps xmmword [rsp + 0x560], xmm11
movaps xmmword [rsp + 0x550], xmm10
movaps xmmword [rsp + 0x540], xmm9
movaps xmmword [rsp + 0x530], xmm8
movaps xmmword [rsp + 0x520], xmm7
movaps xmmword [rsp + 0x510], xmm6
mov qword [rsp + 0x500], rdx
mov qword [rsp + 0x508], rcx
cmp rdx, 0
je 0x14001d6cf
mov rax, qword [rsp + 0x508]
mov rcx, rax
add rcx, 8
mov qword [rsp + 0x4f0], rcx
mov rax, qword [rax + 8]
mov qword [rsp + 0x4f8], rax
cmp rax, 0
je 0x14001b678
mov rax, qword [rsp + 0x4f8]
mov rax, qword [rax]
mov qword [rsp + 0x4e8], rax
movabs rcx, 0x74360306a124a61e
movabs rdx, 0x8bc9fcf95edb59e1
xor rcx, rdx
xor rax, rcx
movabs rdx, 0xe3d5f866db7800a9
movabs rcx, 0xa3d5f866db7800a9
xor rdx, rcx
movabs rcx, 0xcbcabb16a815f24
movabs r8, 0xf343544e957ea0db
xor rcx, r8
xor rdx, rcx
movabs rcx, 0x82186370c3fdfe91
movabs r8, 0x7bc9c838199a837f
xor rcx, r8
movabs r8, 0xdc509af7146ae180
movabs r9, 0x23af6508eb951e7f
xor r8, r9
xor rcx, r8
or rax, rdx
movabs rdx, 0xf9d1ab48da677dee
or rcx, rdx
xor rax, 0xffffffffffffffff
and rax, rcx
movabs rcx, 0x3a321ee296fa65ee
movabs rdx, 0x3a321ee296fa65ee
xor rcx, rdx
cmp rax, rcx
je 0x14001d150
mov rdx, qword [rsp + 0x500]
xor eax, eax
mov ecx, eax
sub rcx, 1
mov rax, rdx
sub rax, rcx
mov qword [rsp + 0x4e0], rax
mov rcx, rdx
xor rcx, 0xffffffffffffffff
mov r8, rdx
xor r8, 0xffffffffffffffff
or rcx, r8
movabs r8, 0x5f20f337d7f5aa2c
movabs r9, 0xa0df0cc8280a55d3
xor r8, r9
xor rcx, r8
mov r8, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
or rcx, r8
movabs r8, 0x3d70dacf2fa0ece5
movabs r9, 0xc28f2530d05f131a
xor r8, r9
movabs r9, 0x4e0fdf93acad7c59
movabs r10, 0xb1f0206c535283a6
xor r9, r10
and r8, r9
movabs r9, 0xf1db57b83b6cec66
movabs r10, 0xe24a847c4931399
xor r9, r10
xor r8, r9
xor rdx, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
or rdx, r8
and rcx, rdx
movabs rdx, 0x1f70e5f87b004583
movabs r8, 0xe08f1a0784ffba7c
xor rdx, r8
xor rcx, rdx
or rax, rax
xor rax, 0xffffffffffffffff
or rcx, rcx
movabs rdx, 0xa86e0d9521b34946
movabs r8, 0x5791f26ade4cb6b9
xor rdx, r8
xor rcx, rdx
xor rax, 0xffffffffffffffff
movabs rdx, 0x85a689c732034525
movabs r8, 0x7a597638cdfcbada
xor rdx, r8
xor rcx, rdx
and rax, rcx
movabs rcx, 0xef2ac8d36a6f5270
movabs rdx, 0xef2ac8d36a6f5270
xor rcx, rdx
cmp rax, rcx
jge 0x14001b7b1
call fcn.14000a590
jmp 0x14001d6e2
mov rax, qword [rsp + 0x500]
movabs rdx, 0xd96439652a40bc14
movabs rcx, 0xd96439652a40bc1d
xor rdx, rcx
movabs rcx, 0xf48054c01d8baa03
movabs r8, 0xb7fab3fe27455fc
xor rcx, r8
xor rdx, rcx
xor ecx, ecx
sub rcx, 1
sub rdx, rcx
mov rcx, rax
sub rcx, rdx
mov qword [rsp + 0x4d8], rcx
movabs rdx, 0x59c6cc804f0cb25
movabs r8, 0xfa639337fb0f34db
xor rdx, r8
sub rdx, rax
movabs r8, 0xfbbbdf1ddac64b8c
movabs rax, 0x44420e22539b473
xor r8, rax
mov rax, rcx
xor rax, r8
movabs r8, 0x18422fd7159d12c0
movabs r9, 0xe7bdd028ea62ed3f
xor r8, r9
xor rcx, r8
and rax, rcx
movabs r8, 0xd584b805388748f4
movabs rcx, 0x2a7b47fac778b70b
xor r8, rcx
mov rcx, rdx
xor rcx, r8
xor rdx, 0xffffffffffffffff
and rcx, rdx
movabs rdx, 0xe618d45411c51b74
movabs r8, 0x19e72babee3ae48b
xor rdx, r8
xor rax, rdx
movabs rdx, 0xde2c8eee0f88912d
movabs r8, 0x21d37111f0776ed2
xor rdx, r8
xor rcx, rdx
and rax, rcx
movabs rcx, 0x87b0a8b59d8712fc
movabs rdx, 0x87b0a8b59d8712fc
xor rcx, rdx
cmp rax, rcx
jge 0x14001b8da
call fcn.14000a590
jmp 0x14001d6e2
mov rax, qword [rsp + 0x4d8]
movabs rcx, 0x292247b278212293
movabs rdx, 0x292247b278212293
xor rcx, rdx
cmp rax, rcx
jge 0x14001b912
mov rcx, r8
mov rdx, r8
call fcn.140010917
jmp 0x14001d6e2
mov ecx, dword [0x1401ab0a0]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rdx, qword [rsp + 0x4d8]
mov rcx, rax
add rcx, 0x68
call fcn.14000d5e6
mov r8, qword [rsp + 0x4f0]
mov rdx, qword [rsp + 0x500]
mov rcx, rax
mov rax, qword [rsp + 0x508]
mov qword [rsp + 0x4c8], rcx
mov qword [r8], rcx
mov qword [rcx], rdx
mov rax, qword [rax]
mov qword [rsp + 0x4d0], rax
cmp rax, 0
jle 0x14001c683
mov rcx, qword [rsp + 0x4d0]
mov rax, qword [rsp + 0x500]
mov rdx, rcx
sub rdx, rax
cmovl rax, rcx
mov qword [rsp + 0x4c0], rax
cmp rax, 0
jge 0x14001b9ac
mov rcx, r8
mov rdx, r8
call fcn.140010917
jmp 0x14001d6e2
mov rax, qword [rsp + 0x4f8]
mov rcx, qword [rsp + 0x4c8]
add rcx, 8
mov qword [rsp + 0x4a8], rcx
add rax, 8
mov qword [rsp + 0x4b0], rax
xor eax, eax
mov qword [rsp + 0x4b8], rax
mov rax, qword [rsp + 0x4b8]
mov rcx, qword [rsp + 0x4c0]
mov rdx, qword [rsp + 0x4a8]
mov r8, qword [rsp + 0x4b0]
mov r8b, byte [r8 + rax]
mov byte [rdx + rax], r8b
movabs rdx, 0x717e5ffd43981f6d
movabs r8, 0x717e5ffd43981f6c
xor rdx, r8
add rax, rdx
cmp rax, rcx
mov qword [rsp + 0x4b8], rax
jne 0x14001b9de
mov rcx, qword [rsp + 0x500]
mov rax, qword [rsp + 0x508]
mov rax, qword [rax]
mov qword [rsp + 0x4a0], rax
cmp rax, rcx
jge 0x14001c666
mov r8, qword [rsp + 0x4a0]
mov r9, qword [rsp + 0x500]
movabs rax, 0xc388774ef746a5ec
movabs rcx, 0x77a8bccaa64956e1
xor rax, rcx
mov rdx, r9
sub rdx, rax
sub rdx, r8
movabs rax, 0xb420cb84510ff30d
add rdx, rax
mov qword [rsp + 0x498], rdx
movabs rax, 0x7969b5b3563f7043
movabs rcx, 0x86964a4ca9c08fbc
xor rax, rcx
mov rcx, rdx
xor rcx, rax
mov rax, r9
and rax, rcx
movabs rcx, 0xafdcd34272ede8d1
movabs r10, 0x50232cbd8d12172e
xor rcx, r10
xor r9, rcx
mov rcx, rdx
and rcx, r9
or rax, rcx
movabs rcx, 0x5102f01690945111
movabs r9, 0x5102f01690945111
xor rcx, r9
cmp rax, rcx
setl al
mov rcx, rdx
xor rcx, 0xffffffffffffffff
mov r9, rdx
xor r9, 0xffffffffffffffff
and rcx, r9
mov r9, r8
xor r9, 0xffffffffffffffff
mov r10, r8
xor r10, 0xffffffffffffffff
and r9, r10
or rcx, r9
xor rcx, 0xffffffffffffffff
movabs r9, 0xde7365d6155c5a90
movabs r10, 0x218c9a29eaa3a56f
xor r9, r10
xor rdx, r9
xor r8, 0xffffffffffffffff
and rdx, r8
or rcx, rdx
movabs rdx, 0x8feef3c4756776cd
movabs r8, 0x70110c3b8a988932
xor rdx, r8
xor rcx, rdx
cmp rcx, 0xffffffffffffffff
setg cl
and al, cl
test al, 1
jne 0x14001bb7a
jmp 0x14001bb84
call fcn.14000a590
jmp 0x14001d6e2
mov rdx, qword [rsp + 0x498]
mov rax, rdx
add rax, 1
mov qword [rsp + 0x490], rax
mov rcx, rdx
xor rcx, 0xffffffffffffffff
and rcx, 0xffffffffffffffff
mov r8, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
and rdx, r8
or rcx, rdx
and rax, rcx
cmp rax, 0
jge 0x14001bbce
call fcn.14000a590
jmp 0x14001d6e2
mov rax, qword [rsp + 0x490]
movabs rcx, 0xf859914b9cc9f1d0
movabs rdx, 0xf859914b9cc9f1d0
xor rcx, rdx
cmp rax, rcx
jge 0x14001bc06
mov rcx, r8
mov rdx, r8
call fcn.140010917
jmp 0x14001d6e2
mov rcx, qword [rsp + 0x4a0]
mov rax, qword [rsp + 0x4f0]
mov rax, qword [rax]
add rax, 8
add rax, rcx
mov qword [rsp + 0x488], rax
mov ecx, dword [0x1401ab0a0]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rax, qword [rsp + 0x490]
movabs rcx, 0x8cf68610de9db48f
movabs rdx, 0x8cf68610de9db48f
xor rcx, rdx
cmp rax, rcx
je 0x14001d6b3
mov rax, qword [rsp + 0x498]
mov rcx, rax
and rcx, 0xfffffffffffffff0
mov qword [rsp + 0x368], rcx
movq xmm0, rax
pshufd xmm8, xmm0, 0x44
movaps xmmword [rsp + 0x370], xmm8
movaps xmm0, xmmword [0x1401978c0]
movaps xmm1, xmmword [0x1401978d0]
movaps xmm2, xmmword [0x1401978e0]
movaps xmm3, xmmword [0x1401978f0]
movaps xmm4, xmmword [0x140197900]
movaps xmm5, xmmword [0x140197910]
movaps xmm6, xmmword [0x140197920]
movaps xmm7, xmmword [0x140197930]
movaps xmm9, xmm8
movaps xmmword [rsp + 0x380], xmm9
movaps xmm9, xmm8
movaps xmmword [rsp + 0x390], xmm9
movaps xmm9, xmm8
movaps xmmword [rsp + 0x3a0], xmm9
movaps xmm9, xmm8
movaps xmmword [rsp + 0x3b0], xmm9
movaps xmm9, xmm8
movaps xmmword [rsp + 0x3c0], xmm9
movaps xmm9, xmm8
movaps xmmword [rsp + 0x3d0], xmm9
movaps xmmword [rsp + 0x3e0], xmm8
xor eax, eax
mov qword [rsp + 0x3f8], rax
movaps xmmword [rsp + 0x400], xmm7
movaps xmmword [rsp + 0x410], xmm6
movaps xmmword [rsp + 0x420], xmm5
movaps xmmword [rsp + 0x430], xmm4
movaps xmmword [rsp + 0x440], xmm3
movaps xmmword [rsp + 0x450], xmm2
movaps xmmword [rsp + 0x460], xmm1
movaps xmmword [rsp + 0x470], xmm0
jmp 0x14001bd65
movaps xmm8, xmmword [rsp + 0x370]
movaps xmm10, xmmword [rsp + 0x380]
movaps xmm12, xmmword [rsp + 0x390]
movaps xmm13, xmmword [rsp + 0x3a0]
movaps xmm2, xmmword [rsp + 0x3d0]
movaps xmm15, xmmword [rsp + 0x3e0]
mov rax, qword [rsp + 0x3f8]
movaps xmm0, xmmword [rsp + 0x400]
movaps xmm14, xmmword [rsp + 0x410]
movaps xmm9, xmmword [rsp + 0x420]
movaps xmm11, xmmword [rsp + 0x430]
movaps xmm1, xmmword [rsp + 0x440]
movaps xmm7, xmmword [rsp + 0x450]
movaps xmm3, xmmword [rsp + 0x460]
movaps xmm4, xmmword [rsp + 0x470]
movaps xmmword [rsp + 0x2a0], xmm4
movaps xmmword [rsp + 0x2b0], xmm3
movaps xmmword [rsp + 0x2c0], xmm7
movaps xmmword [rsp + 0x340], xmm1
movaps xmmword [rsp + 0x2d0], xmm11
movaps xmmword [rsp + 0x2e0], xmm9
movaps xmmword [rsp + 0x2f0], xmm14
movaps xmmword [rsp + 0x300], xmm0
mov qword [rsp + 0x318], rax
movaps xmm6, xmmword [0x140197940]
movaps xmmword [rsp + 0x320], xmm6
pxor xmm15, xmm6
pxor xmm0, xmm6
movaps xmm1, xmm0
pcmpgtd xmm1, xmm15
pshufd xmm5, xmm1, 0xa0
pcmpeqd xmm0, xmm15
pshufd xmm0, xmm0, 0xf5
pand xmm0, xmm5
pshufd xmm1, xmm1, 0xf5
por xmm0, xmm1
pcmpeqd xmm5, xmm5
movaps xmmword [rsp + 0x330], xmm5
pxor xmm0, xmm5
pxor xmm2, xmm6
pxor xmm14, xmm6
movaps xmm1, xmm14
pcmpgtd xmm1, xmm2
pshufd xmm15, xmm1, 0xa0
pcmpeqd xmm14, xmm2
movaps xmm2, xmmword [rsp + 0x3c0]
pshufd xmm14, xmm14, 0xf5
pand xmm14, xmm15
pshufd xmm1, xmm1, 0xf5
por xmm14, xmm1
pxor xmm14, xmm5
movaps xmm1, xmm0
packssdw xmm1, xmm14
pxor xmm2, xmm6
pxor xmm9, xmm6
movaps xmm14, xmm9
pcmpgtd xmm14, xmm2
pshufd xmm15, xmm14, 0xa0
pcmpeqd xmm9, xmm2
movaps xmm2, xmmword [rsp + 0x3b0]
pshufd xmm9, xmm9, 0xf5
pand xmm9, xmm15
pshufd xmm14, xmm14, 0xf5
por xmm9, xmm14
pxor xmm9, xmm5
pxor xmm2, xmm6
pxor xmm11, xmm6
movaps xmm14, xmm11
pcmpgtd xmm14, xmm2
pshufd xmm15, xmm14, 0xa0
pcmpeqd xmm11, xmm2
movaps xmm2, xmmword [rsp + 0x340]
pshufd xmm11, xmm11, 0xf5
pand xmm11, xmm15
pshufd xmm14, xmm14, 0xf5
por xmm11, xmm14
pxor xmm11, xmm5
packssdw xmm9, xmm11
packssdw xmm1, xmm9
pxor xmm13, xmm6
pxor xmm2, xmm6
movaps xmm9, xmm2
pcmpgtd xmm9, xmm13
pshufd xmm11, xmm9, 0xa0
pcmpeqd xmm2, xmm13
pshufd xmm2, xmm2, 0xf5
pand xmm2, xmm11
pshufd xmm9, xmm9, 0xf5
por xmm2, xmm9
pxor xmm2, xmm5
pxor xmm12, xmm6
pxor xmm7, xmm6
movaps xmm9, xmm7
pcmpgtd xmm9, xmm12
pshufd xmm11, xmm9, 0xa0
pcmpeqd xmm7, xmm12
pshufd xmm7, xmm7, 0xf5
pand xmm7, xmm11
pshufd xmm9, xmm9, 0xf5
por xmm7, xmm9
pxor xmm7, xmm5
packssdw xmm2, xmm7
pxor xmm10, xmm6
pxor xmm3, xmm6
movaps xmm7, xmm3
pcmpgtd xmm7, xmm10
pshufd xmm9, xmm7, 0xa0
pcmpeqd xmm3, xmm10
pshufd xmm3, xmm3, 0xf5
pand xmm3, xmm9
pshufd xmm7, xmm7, 0xf5
por xmm3, xmm7
pxor xmm3, xmm5
pxor xmm8, xmm6
pxor xmm4, xmm6
movaps xmm6, xmm4
pcmpgtd xmm6, xmm8
pshufd xmm7, xmm6, 0xa0
pcmpeqd xmm4, xmm8
pshufd xmm4, xmm4, 0xf5
pand xmm4, xmm7
pshufd xmm6, xmm6, 0xf5
por xmm4, xmm6
pxor xmm4, xmm5
packssdw xmm3, xmm4
packssdw xmm2, xmm3
packsswb xmm1, xmm2
movaps xmmword [rsp + 0x350], xmm1
movd eax, xmm0
test al, 1
jne 0x14001c045
jmp 0x14001c059
mov rax, qword [rsp + 0x488]
mov rcx, qword [rsp + 0x318]
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rsp + 0x350]
movd eax, xmm0
shr eax, 8
test al, 1
jne 0x14001c075
jmp 0x14001c0a7
mov rax, qword [rsp + 0x488]
mov rcx, qword [rsp + 0x318]
movabs rdx, 0x6f8a99972bf09
movabs r8, 0x6f8a99972bf08
xor rdx, r8
or rcx, rdx
mov dl, 0x66
xor dl, 0x66
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rsp + 0x350]
movd eax, xmm0
shr eax, 0x10
test al, 1
jne 0x14001c0c3
jmp 0x14001c0db
mov rax, qword [rsp + 0x488]
mov rcx, qword [rsp + 0x318]
or rcx, 2
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rsp + 0x350]
movd eax, xmm0
shr eax, 0x18
test al, 1
jne 0x14001c0f7
jmp 0x14001c11d
mov rax, qword [rsp + 0x488]
mov rdx, qword [rsp + 0x318]
mov rcx, rdx
and rcx, 3
xor rdx, 3
or rcx, rdx
mov dl, 0x4b
xor dl, 0x4b
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rsp + 0x350]
pextrw eax, xmm0, 2
test al, 1
jne 0x14001c137
jmp 0x14001c18d
mov rax, qword [rsp + 0x488]
mov rcx, qword [rsp + 0x318]
mov rdx, rcx
and rdx, 4
xor rdx, 0xffffffffffffffff
movabs r8, 0xb9ab3f298ae13f2b
movabs r9, 0xb9ab3f298ae13f2f
xor r8, r9
add rcx, r8
movabs r8, 0x2b8398a78c760c02
movabs r9, 0x2b8398a78c760c03
xor r8, r9
add rcx, r8
add rcx, rdx
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rsp + 0x350]
pextrw eax, xmm0, 2
shr eax, 8
test al, 1
jne 0x14001c1aa
jmp 0x14001c1c6
mov rax, qword [rsp + 0x488]
mov rcx, qword [rsp + 0x318]
or rcx, 5
mov dl, 0x23
xor dl, 0x23
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rsp + 0x350]
pextrw eax, xmm0, 3
test al, 1
jne 0x14001c1e0
jmp 0x14001c20e
mov rax, qword [rsp + 0x488]
mov rcx, qword [rsp + 0x318]
movabs rdx, 0xcc61d276f8fcda9c
movabs r8, 0xcc61d276f8fcda9a
xor rdx, r8
or rcx, rdx
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rsp + 0x350]
pextrw eax, xmm0, 3
shr eax, 8
test al, 1
jne 0x14001c22b
jmp 0x14001c268
mov rax, qword [rsp + 0x488]
mov rcx, qword [rsp + 0x318]
movabs rdx, 0xf33d5bb9a6009158
movabs r8, 0xf33d5bb9a600915f
xor rdx, r8
and rdx, rcx
xor rdx, 0xffffffffffffffff
add rcx, 7
add rcx, 1
add rcx, rdx
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rsp + 0x350]
pextrw eax, xmm0, 4
test al, 1
jne 0x14001c282
jmp 0x14001c2dc
mov rax, qword [rsp + 0x488]
mov rcx, qword [rsp + 0x318]
mov rdx, rcx
and rdx, 8
xor rdx, 0xffffffffffffffff
movabs r8, 0x1dae048add2f9346
movabs r9, 0x1dae048add2f934e
xor r8, r9
add rcx, r8
movabs r8, 0x6a77f7c993dc95e3
movabs r9, 0x6a77f7c993dc95e2
xor r8, r9
add rcx, r8
add rcx, rdx
mov dl, 0x5c
xor dl, 0x5c
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rsp + 0x350]
pextrw eax, xmm0, 4
shr eax, 8
test al, 1
jne 0x14001c2f9
jmp 0x14001c327
mov rax, qword [rsp + 0x488]
mov rcx, qword [rsp + 0x318]
mov rdx, rcx
and rdx, 9
xor rdx, 0xffffffffffffffff
add rcx, 9
add rcx, 1
add rcx, rdx
mov dl, 0x7b
xor dl, 0x7b
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rsp + 0x350]
pextrw eax, xmm0, 5
test al, 1
jne 0x14001c341
jmp 0x14001c377
mov rax, qword [rsp + 0x488]
mov rcx, qword [rsp + 0x318]
mov r8, 0xffffffffffffffff
xor r8, 0xa
mov rdx, rcx
and rdx, r8
mov r8, rcx
xor r8, 0xa
add rcx, r8
sub rcx, rdx
mov dl, 0xdd
xor dl, 0xdd
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rsp + 0x350]
pextrw eax, xmm0, 5
shr eax, 8
test al, 1
jne 0x14001c394
jmp 0x14001c3c6
mov rax, qword [rsp + 0x488]
mov rcx, qword [rsp + 0x318]
mov r8, 0xffffffffffffffff
xor r8, 0xb
mov rdx, rcx
and rdx, r8
mov r8, rcx
xor r8, 0xb
add rcx, r8
sub rcx, rdx
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rsp + 0x350]
pextrw eax, xmm0, 6
test al, 1
jne 0x14001c3e0
jmp 0x14001c3f8
mov rax, qword [rsp + 0x488]
mov rcx, qword [rsp + 0x318]
or rcx, 0xc
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rsp + 0x350]
pextrw eax, xmm0, 6
shr eax, 8
test al, 1
jne 0x14001c415
jmp 0x14001c4a9
mov rax, qword [rsp + 0x488]
mov rdx, qword [rsp + 0x318]
movabs r8, 0x2427e0acd84f7ed4
movabs rcx, 0xdbd81f5327b0812b
xor r8, rcx
mov rcx, rdx
xor rcx, r8
mov r8, 0xffffffffffffffff
xor r8, 0xd
and rcx, r8
movabs r8, 0xf316382de1c1e3c0
movabs r9, 0xce9c7d21e3e1c3f
xor r8, r9
xor rdx, r8
movabs r8, 0x848e907d0e6b6de0
movabs r9, 0x848e907d0e6b6ded
xor r8, r9
movabs r9, 0x72b05b68c4c86366
movabs r10, 0x8d4fa4973b379c99
xor r9, r10
xor r8, r9
and rdx, r8
or rcx, rdx
xor rcx, 0xffffffffffffffff
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rsp + 0x350]
pextrw eax, xmm0, 7
test al, 1
jne 0x14001c4c3
jmp 0x14001c52c
mov rax, qword [rsp + 0x488]
mov rcx, qword [rsp + 0x318]
movabs rdx, 0xae4da604622bef6a
movabs r8, 0xae4da604622bef64
xor rdx, r8
and rdx, rcx
movabs r8, 0xbba3e5f60ba022e4
movabs r9, 0x445c1a09f45fdd1b
xor r8, r9
xor rdx, r8
movabs r8, 0x8e1317f0e8cc1dbb
movabs r9, 0x8e1317f0e8cc1db5
xor r8, r9
add rcx, r8
add rcx, 1
add rcx, rdx
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rsp + 0x350]
pextrw eax, xmm0, 7
shr eax, 8
test al, 1
jne 0x14001c549
jmp 0x14001c580
mov rax, qword [rsp + 0x488]
mov rcx, qword [rsp + 0x318]
and rcx, rcx
xor rcx, 0xffffffffffffffff
mov edx, 0xf
and rdx, 0xf
xor rdx, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
or rcx, rdx
mov dl, 0xd5
xor dl, 0xd5
mov byte [rax + rcx], dl
mov rdx, qword [rsp + 0x368]
mov rcx, qword [rsp + 0x318]
movaps xmm0, xmmword [rsp + 0x2a0]
movaps xmm1, xmmword [rsp + 0x2b0]
movaps xmm2, xmmword [rsp + 0x2c0]
movaps xmm3, xmmword [rsp + 0x340]
movaps xmm4, xmmword [rsp + 0x2d0]
movaps xmm5, xmmword [rsp + 0x2e0]
movaps xmm6, xmmword [rsp + 0x2f0]
movaps xmm7, xmmword [rsp + 0x300]
mov rax, rcx
add rax, 0x10
movaps xmm8, xmmword [0x140197950]
movaps xmmword [rsp + 0x290], xmm8
paddq xmm7, xmm8
paddq xmm6, xmm8
paddq xmm5, xmm8
paddq xmm4, xmm8
paddq xmm3, xmm8
paddq xmm2, xmm8
paddq xmm1, xmm8
paddq xmm0, xmm8
sub rcx, rdx
mov qword [rsp + 0x3f8], rax
movaps xmmword [rsp + 0x400], xmm7
movaps xmmword [rsp + 0x410], xmm6
movaps xmmword [rsp + 0x420], xmm5
movaps xmmword [rsp + 0x430], xmm4
movaps xmmword [rsp + 0x440], xmm3
movaps xmmword [rsp + 0x450], xmm2
movaps xmmword [rsp + 0x460], xmm1
movaps xmmword [rsp + 0x470], xmm0
je 0x14001d6b3
jmp 0x14001bd65
mov rcx, qword [rsp + 0x500]
mov rax, qword [rsp + 0x4f0]
mov rax, qword [rax]
mov byte [rax + rcx + 8], 0
jmp 0x14001d6b3
mov rax, qword [rsp + 0x4e0]
movabs rcx, 0x5b8a72e332d7349c
movabs rdx, 0x5b8a72e332d7349c
xor rcx, rdx
cmp rax, rcx
jl 0x14001d140
mov rax, qword [rsp + 0x4c8]
add rax, 8
mov qword [rsp + 0x288], rax
mov ecx, dword [0x1401ab0a0]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rax, qword [rsp + 0x4e0]
movabs rcx, 0x8862c433b77584eb
movabs rdx, 0x8862c433b77584eb
xor rcx, rdx
cmp rax, rcx
je 0x14001d6b3
mov rax, qword [rsp + 0x500]
mov rcx, rax
and rcx, 0xfffffffffffffff0
mov qword [rsp + 0x168], rcx
movq xmm0, rax
pshufd xmm8, xmm0, 0x44
movaps xmmword [rsp + 0x170], xmm8
movaps xmm0, xmmword [0x1401978c0]
movaps xmm1, xmmword [0x1401978d0]
movaps xmm2, xmmword [0x1401978e0]
movaps xmm3, xmmword [0x1401978f0]
movaps xmm4, xmmword [0x140197900]
movaps xmm5, xmmword [0x140197910]
movaps xmm6, xmmword [0x140197920]
movaps xmm7, xmmword [0x140197930]
movaps xmm9, xmm8
movaps xmmword [rsp + 0x180], xmm9
movaps xmm9, xmm8
movaps xmmword [rsp + 0x190], xmm9
movaps xmm9, xmm8
movaps xmmword [rsp + 0x1a0], xmm9
movaps xmm9, xmm8
movaps xmmword [rsp + 0x1b0], xmm9
movaps xmm9, xmm8
movaps xmmword [rsp + 0x1c0], xmm9
movaps xmm9, xmm8
movaps xmmword [rsp + 0x1d0], xmm9
movaps xmmword [rsp + 0x1e0], xmm8
xor eax, eax
mov qword [rsp + 0x1f8], rax
movaps xmmword [rsp + 0x200], xmm7
movaps xmmword [rsp + 0x210], xmm6
movaps xmmword [rsp + 0x220], xmm5
movaps xmmword [rsp + 0x230], xmm4
movaps xmmword [rsp + 0x240], xmm3
movaps xmmword [rsp + 0x250], xmm2
movaps xmmword [rsp + 0x260], xmm1
movaps xmmword [rsp + 0x270], xmm0
jmp 0x14001c7fc
movaps xmm8, xmmword [rsp + 0x170]
movaps xmm10, xmmword [rsp + 0x180]
movaps xmm12, xmmword [rsp + 0x190]
movaps xmm13, xmmword [rsp + 0x1a0]
movaps xmm2, xmmword [rsp + 0x1d0]
movaps xmm15, xmmword [rsp + 0x1e0]
mov rax, qword [rsp + 0x1f8]
movaps xmm0, xmmword [rsp + 0x200]
movaps xmm14, xmmword [rsp + 0x210]
movaps xmm9, xmmword [rsp + 0x220]
movaps xmm11, xmmword [rsp + 0x230]
movaps xmm1, xmmword [rsp + 0x240]
movaps xmm7, xmmword [rsp + 0x250]
movaps xmm3, xmmword [rsp + 0x260]
movaps xmm4, xmmword [rsp + 0x270]
movaps xmmword [rsp + 0xa0], xmm4
movaps xmmword [rsp + 0xb0], xmm3
movaps xmmword [rsp + 0xc0], xmm7
movaps xmmword [rsp + 0x140], xmm1
movaps xmmword [rsp + 0xd0], xmm11
movaps xmmword [rsp + 0xe0], xmm9
movaps xmmword [rsp + 0xf0], xmm14
movaps xmmword [rsp + 0x100], xmm0
mov qword [rsp + 0x118], rax
movaps xmm6, xmmword [0x140197940]
movaps xmmword [rsp + 0x120], xmm6
pxor xmm15, xmm6
pxor xmm0, xmm6
movaps xmm1, xmm0
pcmpgtd xmm1, xmm15
pshufd xmm5, xmm1, 0xa0
pcmpeqd xmm0, xmm15
pshufd xmm0, xmm0, 0xf5
pand xmm0, xmm5
pshufd xmm1, xmm1, 0xf5
por xmm0, xmm1
pcmpeqd xmm5, xmm5
movaps xmmword [rsp + 0x130], xmm5
pxor xmm0, xmm5
pxor xmm2, xmm6
pxor xmm14, xmm6
movaps xmm1, xmm14
pcmpgtd xmm1, xmm2
pshufd xmm15, xmm1, 0xa0
pcmpeqd xmm14, xmm2
movaps xmm2, xmmword [rsp + 0x1c0]
pshufd xmm14, xmm14, 0xf5
pand xmm14, xmm15
pshufd xmm1, xmm1, 0xf5
por xmm14, xmm1
pxor xmm14, xmm5
movaps xmm1, xmm0
packssdw xmm1, xmm14
pxor xmm2, xmm6
pxor xmm9, xmm6
movaps xmm14, xmm9
pcmpgtd xmm14, xmm2
pshufd xmm15, xmm14, 0xa0
pcmpeqd xmm9, xmm2
movaps xmm2, xmmword [rsp + 0x1b0]
pshufd xmm9, xmm9, 0xf5
pand xmm9, xmm15
pshufd xmm14, xmm14, 0xf5
por xmm9, xmm14
pxor xmm9, xmm5
pxor xmm2, xmm6
pxor xmm11, xmm6
movaps xmm14, xmm11
pcmpgtd xmm14, xmm2
pshufd xmm15, xmm14, 0xa0
pcmpeqd xmm11, xmm2
movaps xmm2, xmmword [rsp + 0x140]
pshufd xmm11, xmm11, 0xf5
pand xmm11, xmm15
pshufd xmm14, xmm14, 0xf5
por xmm11, xmm14
pxor xmm11, xmm5
packssdw xmm9, xmm11
packssdw xmm1, xmm9
pxor xmm13, xmm6
pxor xmm2, xmm6
movaps xmm9, xmm2
pcmpgtd xmm9, xmm13
pshufd xmm11, xmm9, 0xa0
pcmpeqd xmm2, xmm13
pshufd xmm2, xmm2, 0xf5
pand xmm2, xmm11
pshufd xmm9, xmm9, 0xf5
por xmm2, xmm9
pxor xmm2, xmm5
pxor xmm12, xmm6
pxor xmm7, xmm6
movaps xmm9, xmm7
pcmpgtd xmm9, xmm12
pshufd xmm11, xmm9, 0xa0
pcmpeqd xmm7, xmm12
pshufd xmm7, xmm7, 0xf5
pand xmm7, xmm11
pshufd xmm9, xmm9, 0xf5
por xmm7, xmm9
pxor xmm7, xmm5
packssdw xmm2, xmm7
pxor xmm10, xmm6
pxor xmm3, xmm6
movaps xmm7, xmm3
pcmpgtd xmm7, xmm10
pshufd xmm9, xmm7, 0xa0
pcmpeqd xmm3, xmm10
pshufd xmm3, xmm3, 0xf5
pand xmm3, xmm9
pshufd xmm7, xmm7, 0xf5
por xmm3, xmm7
pxor xmm3, xmm5
pxor xmm8, xmm6
pxor xmm4, xmm6
movaps xmm6, xmm4
pcmpgtd xmm6, xmm8
pshufd xmm7, xmm6, 0xa0
pcmpeqd xmm4, xmm8
pshufd xmm4, xmm4, 0xf5
pand xmm4, xmm7
pshufd xmm6, xmm6, 0xf5
por xmm4, xmm6
pxor xmm4, xmm5
packssdw xmm3, xmm4
packssdw xmm2, xmm3
packsswb xmm1, xmm2
movaps xmmword [rsp + 0x150], xmm1
movd eax, xmm0
test al, 1
jne 0x14001cadc
jmp 0x14001caf0
mov rax, qword [rsp + 0x288]
mov rcx, qword [rsp + 0x118]
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rsp + 0x150]
movd eax, xmm0
shr eax, 8
test al, 1
jne 0x14001cb0c
jmp 0x14001cb28
mov rax, qword [rsp + 0x288]
mov rcx, qword [rsp + 0x118]
or rcx, 1
mov dl, 0xd9
xor dl, 0xd9
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rsp + 0x150]
movd eax, xmm0
shr eax, 0x10
test al, 1
jne 0x14001cb44
jmp 0x14001cb76
mov rax, qword [rsp + 0x288]
mov rcx, qword [rsp + 0x118]
movabs rdx, 0x380b29329d15c1a2
movabs r8, 0x380b29329d15c1a0
xor rdx, r8
or rcx, rdx
mov dl, 0x9c
xor dl, 0x9c
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rsp + 0x150]
movd eax, xmm0
shr eax, 0x18
test al, 1
jne 0x14001cb92
jmp 0x14001cc0a
mov rax, qword [rsp + 0x288]
mov rdx, qword [rsp + 0x118]
mov rcx, rdx
or rcx, 3
xor rcx, 0xffffffffffffffff
movabs r8, 0x474f3905db5ef09b
movabs r9, 0x474f3905db5ef098
xor r8, r9
or rdx, r8
movabs r8, 0xc8bc289d7d93a7e
movabs r9, 0xf3743d762826c581
xor r8, r9
xor rdx, r8
movabs r8, 0xc05910605b192b6d
movabs r9, 0x3fa6ef9fa4e6d492
xor r8, r9
xor rcx, r8
xor rdx, 0xffffffffffffffff
and rcx, rdx
mov dl, 0x7d
xor dl, 0x7d
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rsp + 0x150]
pextrw eax, xmm0, 2
test al, 1
jne 0x14001cc24
jmp 0x14001cc64
mov rax, qword [rsp + 0x288]
mov rcx, qword [rsp + 0x118]
mov rdx, rcx
and rdx, 4
xor rdx, 0xffffffffffffffff
add rcx, 4
movabs r8, 0xeb6523248f7a9a6e
movabs r9, 0xeb6523248f7a9a6f
xor r8, r9
add rcx, r8
add rcx, rdx
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rsp + 0x150]
pextrw eax, xmm0, 2
shr eax, 8
test al, 1
jne 0x14001cc81
jmp 0x14001ccbd
mov rax, qword [rsp + 0x288]
mov rdx, qword [rsp + 0x118]
movabs r8, 0xdcb409bc78ddedeb
movabs rcx, 0xdcb409bc78ddedee
xor r8, rcx
mov rcx, rdx
and rcx, r8
xor rdx, 5
or rcx, rdx
mov dl, 0x3f
xor dl, 0x3f
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rsp + 0x150]
pextrw eax, xmm0, 3
test al, 1
jne 0x14001ccd7
jmp 0x14001cd5e
mov rax, qword [rsp + 0x288]
mov rcx, qword [rsp + 0x118]
and rcx, rcx
xor rcx, 0xffffffffffffffff
movabs rdx, 0xeab4a564f35f446
movabs r8, 0xeab4a564f35f440
xor rdx, r8
movabs r8, 0xb7835c0ab8202c04
movabs r9, 0xb7835c0ab8202c02
xor r8, r9
and rdx, r8
movabs r8, 0xa91df3701869822e
movabs r9, 0x56e20c8fe7967dd1
xor r8, r9
xor rdx, r8
xor rcx, 0xffffffffffffffff
movabs r8, 0xc66090331ffb6036
movabs r9, 0x399f6fcce0049fc9
xor r8, r9
xor rdx, r8
or rcx, rdx
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rsp + 0x150]
pextrw eax, xmm0, 3
shr eax, 8
test al, 1
jne 0x14001cd7b
jmp 0x14001cd93
mov rax, qword [rsp + 0x288]
mov rcx, qword [rsp + 0x118]
or rcx, 7
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rsp + 0x150]
pextrw eax, xmm0, 4
test al, 1
jne 0x14001cdad
jmp 0x14001cdc5
mov rax, qword [rsp + 0x288]
mov rcx, qword [rsp + 0x118]
or rcx, 8
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rsp + 0x150]
pextrw eax, xmm0, 4
shr eax, 8
test al, 1
jne 0x14001cde2
jmp 0x14001cdfa
mov rax, qword [rsp + 0x288]
mov rcx, qword [rsp + 0x118]
or rcx, 9
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rsp + 0x150]
pextrw eax, xmm0, 5
test al, 1
jne 0x14001ce14
jmp 0x14001ce3a
mov rax, qword [rsp + 0x288]
mov rdx, qword [rsp + 0x118]
mov rcx, rdx
and rcx, 0xa
xor rdx, 0xa
or rcx, rdx
mov dl, 0x7a
xor dl, 0x7a
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rsp + 0x150]
pextrw eax, xmm0, 5
shr eax, 8
test al, 1
jne 0x14001ce57
jmp 0x14001ce73
mov rax, qword [rsp + 0x288]
mov rcx, qword [rsp + 0x118]
or rcx, 0xb
mov dl, 0x81
xor dl, 0x81
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rsp + 0x150]
pextrw eax, xmm0, 6
test al, 1
jne 0x14001ce8d
jmp 0x14001cf14
mov rax, qword [rsp + 0x288]
mov rcx, qword [rsp + 0x118]
and rcx, rcx
xor rcx, 0xffffffffffffffff
movabs rdx, 0x7798dcd183aae954
movabs r8, 0x7798dcd183aae958
xor rdx, r8
movabs r8, 0x914c4cbb06510a6e
movabs r9, 0x914c4cbb06510a62
xor r8, r9
and rdx, r8
movabs r8, 0xc08e45d9b30f4f89
movabs r9, 0x3f71ba264cf0b076
xor r8, r9
xor rdx, r8
movabs r8, 0xc38bc44e6c159a56
movabs r9, 0x3c743bb193ea65a9
xor r8, r9
xor rcx, r8
xor rdx, 0xffffffffffffffff
or rcx, rdx
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rsp + 0x150]
pextrw eax, xmm0, 6
shr eax, 8
test al, 1
jne 0x14001cf31
jmp 0x14001cfc3
mov rax, qword [rsp + 0x288]
mov rdx, qword [rsp + 0x118]
mov rcx, rdx
xor rcx, 0xffffffffffffffff
movabs r8, 0x25296ee898d2e33f
movabs r9, 0x25296ee898d2e332
xor r8, r9
movabs r9, 0x6b02a879dc58206
movabs r10, 0xf94fd578623a7df9
xor r9, r10
xor r8, r9
and rcx, r8
or rdx, 0xd
movabs r8, 0x9b82622501200f6e
movabs r9, 0x647d9ddafedff091
xor r8, r9
xor rdx, r8
xor rcx, 0xffffffffffffffff
movabs r8, 0x709abd36207ece13
movabs r9, 0x8f6542c9df8131ec
xor r8, r9
xor rdx, r8
and rcx, rdx
mov dl, 0x7e
xor dl, 0x7e
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rsp + 0x150]
pextrw eax, xmm0, 7
test al, 1
jne 0x14001cfdd
jmp 0x14001d00b
mov rax, qword [rsp + 0x288]
mov rcx, qword [rsp + 0x118]
movabs rdx, 0xf62bcfffa1b6d6b4
movabs r8, 0xf62bcfffa1b6d6ba
xor rdx, r8
or rcx, rdx
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rsp + 0x150]
pextrw eax, xmm0, 7
shr eax, 8
test al, 1
jne 0x14001d028
jmp 0x14001d05a
mov rax, qword [rsp + 0x288]
mov rcx, qword [rsp + 0x118]
movabs rdx, 0x6d338ad3ffdb4c1
movabs r8, 0x6d338ad3ffdb4ce
xor rdx, r8
or rcx, rdx
xor edx, edx
xor dl, 0
mov byte [rax + rcx], dl
mov rdx, qword [rsp + 0x168]
mov rcx, qword [rsp + 0x118]
movaps xmm0, xmmword [rsp + 0xa0]
movaps xmm1, xmmword [rsp + 0xb0]
movaps xmm2, xmmword [rsp + 0xc0]
movaps xmm3, xmmword [rsp + 0x140]
movaps xmm4, xmmword [rsp + 0xd0]
movaps xmm5, xmmword [rsp + 0xe0]
movaps xmm6, xmmword [rsp + 0xf0]
movaps xmm7, xmmword [rsp + 0x100]
mov rax, rcx
add rax, 0x10
movaps xmm8, xmmword [0x140197950]
movaps xmmword [rsp + 0x90], xmm8
paddq xmm7, xmm8
paddq xmm6, xmm8
paddq xmm5, xmm8
paddq xmm4, xmm8
paddq xmm3, xmm8
paddq xmm2, xmm8
paddq xmm1, xmm8
paddq xmm0, xmm8
sub rcx, rdx
mov qword [rsp + 0x1f8], rax
movaps xmmword [rsp + 0x200], xmm7
movaps xmmword [rsp + 0x210], xmm6
movaps xmmword [rsp + 0x220], xmm5
movaps xmmword [rsp + 0x230], xmm4
movaps xmmword [rsp + 0x240], xmm3
movaps xmmword [rsp + 0x250], xmm2
movaps xmmword [rsp + 0x260], xmm1
movaps xmmword [rsp + 0x270], xmm0
je 0x14001d6b3
jmp 0x14001c7fc
mov rcx, r8
mov rdx, r8
call fcn.140010917
jmp 0x14001d6e2
mov rax, qword [rsp + 0x508]
mov rcx, qword [rsp + 0x500]
cmp qword [rax], rcx
jge 0x14001d6b3
mov rcx, qword [rsp + 0x500]
mov rax, qword [rsp + 0x4e8]
movabs rdx, 0x3e54181d203d5d9f
movabs r8, 0x81abe7e2dfc2a260
xor rdx, r8
and rax, rdx
mov qword [rsp + 0x88], rax
cmp rax, rcx
jge 0x14001d6b3
mov rcx, qword [rsp + 0x88]
mov eax, 4
cmp rcx, 1
mov qword [rsp + 0x80], rax
jl 0x14001d350
mov rax, qword [rsp + 0x88]
cvtsi2sd xmm0, rax
movsd qword [rsp + 0x78], xmm0
cmp rax, 0x8000
jae 0x14001d28f
movsd xmm0, qword [rsp + 0x78]
mov rax, qword [rsp + 0x88]
shl rax, 1
mov qword [rsp + 0x60], rax
movsd xmm1, qword [0x1401978b0]
mulsd xmm0, xmm1
movsd qword [rsp + 0x68], xmm0
cvtsi2sd xmm1, rax
movsd qword [rsp + 0x70], xmm1
ucomisd xmm0, xmm1
mov qword [rsp + 0x80], rax
jne 0x14001d233
jp 0x14001d233
jmp 0x14001d350
movsd xmm1, qword [rsp + 0x68]
movsd xmm0, qword [rsp + 0x70]
subsd xmm0, xmm1
call fcn.140195ba0
movaps xmm1, xmm0
movsd xmm0, qword [rsp + 0x68]
movsd qword [rsp + 0x58], xmm1
call fcn.140195ba0
movsd xmm1, qword [rsp + 0x58]
mov rax, qword [rsp + 0x60]
movsd xmm2, qword [0x1401978a8]
mulsd xmm1, xmm2
ucomisd xmm0, xmm1
mov qword [rsp + 0x80], rax
jae 0x14001d350
call fcn.14000a590
jmp 0x14001d350
movsd xmm0, qword [rsp + 0x78]
mov rax, qword [rsp + 0x88]
imul rax, rax, 3
mov qword [rsp + 0x40], rax
movsd xmm1, qword [0x1401978a0]
mulsd xmm0, xmm1
movsd qword [rsp + 0x48], xmm0
cvtsi2sd xmm1, rax
movsd qword [rsp + 0x50], xmm1
ucomisd xmm0, xmm1
jne 0x14001d2d8
jp 0x14001d2d8
jmp 0x14001d327
movsd xmm1, qword [rsp + 0x48]
movsd xmm0, qword [rsp + 0x50]
subsd xmm0, xmm1
call fcn.140195ba0
movaps xmm1, xmm0
movsd xmm0, qword [rsp + 0x48]
movsd qword [rsp + 0x38], xmm1
call fcn.140195ba0
movsd xmm1, qword [rsp + 0x38]
movsd xmm2, qword [0x1401978a8]
mulsd xmm1, xmm2
ucomisd xmm0, xmm1
jae 0x14001d327
call fcn.14000a590
jmp 0x14001d350
mov rax, qword [rsp + 0x40]
movabs rcx, 0xfda9c72bd84be534
movabs rdx, 0xfda9c72bd84be536
xor rcx, rdx
cqo
idiv rcx
mov qword [rsp + 0x80], rax
mov rdx, qword [rsp + 0x4e8]
mov rcx, qword [rsp + 0x88]
mov rax, qword [rsp + 0x500]
mov r8, qword [rsp + 0x80]
mov r9, r8
sub r9, rax
cmovg rax, r8
mov qword [rsp + 0x30], rax
movabs rax, 0xc0c617f979b3e819
sub rcx, rax
movabs rax, 0x430baa28ec5ffd6f
movabs r8, 0x430baa28ec5ffd6e
xor rax, r8
add rcx, rax
movabs rax, 0xf67bdc28e3862f29
movabs r8, 0x36bdcbd19a35c730
xor rax, r8
add rcx, rax
movabs r8, 0x1f58cb6fde82a378
movabs rax, 0xe0a73490217d5c87
xor r8, rax
mov rax, rdx
xor rax, r8
movabs r8, 0xfa52a67c72aee20
movabs r9, 0xf05ad59838d511df
xor r8, r9
xor rax, r8
movabs r8, 0xbde7fb9e27877fdc
movabs r9, 0x42180461d8788023
xor r8, r9
and r8, rax
movabs rax, 0x51800862a0cfa0e1
movabs r9, 0x51800862a0cfa0e3
xor rax, r9
imul rax, r8
sub rax, 0xffffffffffffffff
sub rdx, rax
xor rdx, 0xffffffffffffffff
mov rax, rcx
xor rax, rdx
and rax, rcx
movabs rcx, 0x49d599759e43ac05
movabs rdx, 0x49d599759e43ac05
xor rcx, rdx
cmp rax, rcx
jge 0x14001d46a
call fcn.14000a590
jmp 0x14001d6e2
mov rcx, qword [rsp + 0x88]
mov rax, rcx
add rax, 9
mov qword [rsp + 0x28], rax
mov rdx, 0xffffffffffffffff
xor rdx, 0xfffffffffffffffe
and rdx, rcx
xor rcx, 0xffffffffffffffff
and rcx, 0xfffffffffffffffe
sub rcx, rdx
and rax, rcx
cmp rax, 0
jge 0x14001d4ae
call fcn.14000a590
jmp 0x14001d6e2
mov rax, qword [rsp + 0x88]
movabs rcx, 0xe5123aa62e67cbb3
movabs rdx, 0x1aedc559d1983444
xor rcx, rdx
cmp rax, rcx
jge 0x14001d4e6
mov rcx, r8
mov rdx, r8
call fcn.140010917
jmp 0x14001d6e2
mov rdx, qword [rsp + 0x30]
movabs rcx, 0xc1f6bcd76638bd3c
movabs rax, 0xc1f6bcd76638bd3d
xor rcx, rax
mov rax, rdx
add rax, rcx
movabs rcx, 0x61941fd416c4965e
movabs r8, 0x9e6be02be93b69a1
xor rcx, r8
xor rdx, rcx
xor rax, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
movabs rcx, 0x34eec3327b90e18b
movabs r8, 0xd4b708c6a59c7d5c
xor rcx, r8
movabs r8, 0x96a1686552f0dc1d
movabs r9, 0x695e979aad0f23e2
xor r8, r9
xor rcx, r8
or rax, rdx
movabs rdx, 0xe059cbf4de0c9cd7
or rcx, rdx
movabs rdx, 0x94dbaccb28ce1d9f
movabs r8, 0x6b245334d731e260
xor rdx, r8
xor rax, rdx
and rax, rcx
cmp rax, 0
jge 0x14001d59c
call fcn.14000a590
jmp 0x14001d6e2
mov rdx, qword [rsp + 0x30]
mov rax, rdx
and rax, 9
mov rcx, rdx
or rcx, 9
add rax, rcx
mov qword [rsp + 0x20], rax
movabs rcx, 0xef683448557df686
movabs r8, 0x1097cbb7aa820978
xor rcx, r8
sub rcx, rdx
movabs rdx, 0xd51f543c1037cb3a
movabs r8, 0x2ae0abc3efc834c5
xor rdx, r8
xor rax, rdx
xor rcx, 0xffffffffffffffff
mov rdx, 0xffffffffffffffff
movabs r8, 0x9851c859e36541af
xor rdx, r8
or rax, rcx
movabs rcx, 0x1b8237085a35a069
movabs r8, 0x83d3ff51b950e1c6
xor rcx, r8
or rcx, rdx
xor rax, 0xffffffffffffffff
and rax, rcx
movabs rcx, 0x3124f1e289c77d86
movabs rdx, 0x3124f1e289c77d86
xor rcx, rdx
cmp rax, rcx
jge 0x14001d651
call fcn.14000a590
jmp 0x14001d6e2
mov rax, qword [rsp + 0x20]
movabs rcx, 0xacc386848b2ba032
movabs rdx, 0xacc386848b2ba032
xor rcx, rdx
cmp rax, rcx
jge 0x14001d686
mov rcx, r8
mov rdx, r8
call fcn.140010917
jmp 0x14001d6e2
mov rax, qword [rsp + 0x4f0]
mov r8, qword [rsp + 0x20]
mov rdx, qword [rsp + 0x28]
mov rcx, qword [rax]
call fcn.1400163df
mov rdx, qword [rsp + 0x4f0]
mov rcx, qword [rsp + 0x30]
mov qword [rdx], rax
mov qword [rax], rcx
mov rcx, qword [rsp + 0x500]
mov rax, qword [rsp + 0x4f0]
mov rax, qword [rax]
xor edx, edx
xor dl, 0
mov byte [rax + rcx + 8], dl
mov rax, qword [rsp + 0x508]
mov rcx, qword [rsp + 0x500]
mov qword [rax], rcx
movaps xmm6, xmmword [rsp + 0x510]
movaps xmm7, xmmword [rsp + 0x520]
movaps xmm8, xmmword [rsp + 0x530]
movaps xmm9, xmmword [rsp + 0x540]
movaps xmm10, xmmword [rsp + 0x550]
movaps xmm11, xmmword [rsp + 0x560]
movaps xmm12, xmmword [rsp + 0x570]
movaps xmm13, xmmword [rsp + 0x580]
movaps xmm14, xmmword [rsp + 0x590]
movaps xmm15, xmmword [rsp + 0x5a0]
add rsp, 0x5b8
ret