Function at 0x14006fed0
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
sub rsp, 0x178
movaps xmmword [rsp + 0x160], xmm8
movaps xmmword [rsp + 0x150], xmm7
movaps xmmword [rsp + 0x140], xmm6
mov qword [rsp + 0xd0], rdx
mov qword [rsp + 0xd8], rcx
mov qword [rsp + 0xe0], rcx
mov rax, qword [0x14028d330]
mov qword [rsp + 0xe8], rax
mov ecx, dword [rax]
call fcn.14000efc9
mov rcx, rax
mov rax, qword [rsp + 0xe8]
mov qword [rsp + 0xf0], rcx
mov ecx, dword [rax]
call fcn.14000efc9
movaps xmm0, xmmword [0x140284bb0]
movaps xmm1, xmmword [0x140284bc0]
movaps xmm2, xmmword [0x140284bd0]
movaps xmm3, xmmword [0x140284be0]
xor eax, eax
mov qword [rsp + 0xf8], rax
movaps xmmword [rsp + 0x100], xmm3
movaps xmmword [rsp + 0x110], xmm2
movaps xmmword [rsp + 0x120], xmm1
movaps xmmword [rsp + 0x130], xmm0
jmp 0x14006ff85
mov rax, qword [rsp + 0xf8]
movaps xmm2, xmmword [rsp + 0x100]
movaps xmm7, xmmword [rsp + 0x110]
movaps xmm8, xmmword [rsp + 0x120]
movaps xmm5, xmmword [rsp + 0x130]
movaps xmmword [rsp + 0x70], xmm5
movaps xmmword [rsp + 0x80], xmm8
movaps xmmword [rsp + 0x90], xmm7
movaps xmmword [rsp + 0xa0], xmm2
mov qword [rsp + 0xb8], rax
movaps xmm6, xmmword [0x140284bf0]
pxor xmm2, xmm6
pshufd xmm1, xmm2, 0xf5
movaps xmm3, xmmword [0x140284bf0]
movaps xmm0, xmm3
pcmpeqd xmm0, xmm1
movaps xmm4, xmmword [0x140284c00]
movaps xmm1, xmm4
pcmpgtd xmm1, xmm2
pshufd xmm2, xmm1, 0xa0
pand xmm0, xmm2
pshufd xmm1, xmm1, 0xf5
por xmm0, xmm1
pxor xmm7, xmm6
pshufd xmm1, xmm7, 0xf5
movaps xmm2, xmm3
pcmpeqd xmm2, xmm1
movaps xmm1, xmm4
pcmpgtd xmm1, xmm7
pshufd xmm7, xmm1, 0xa0
pand xmm2, xmm7
pshufd xmm1, xmm1, 0xf5
por xmm2, xmm1
movaps xmm1, xmm0
packssdw xmm1, xmm2
pxor xmm8, xmm6
pshufd xmm7, xmm8, 0xf5
movaps xmm2, xmm3
pcmpeqd xmm2, xmm7
movaps xmm7, xmm4
pcmpgtd xmm7, xmm8
pshufd xmm8, xmm7, 0xa0
pand xmm2, xmm8
pshufd xmm7, xmm7, 0xf5
por xmm2, xmm7
pxor xmm5, xmm6
pshufd xmm6, xmm5, 0xf5
pcmpeqd xmm3, xmm6
pcmpgtd xmm4, xmm5
pshufd xmm5, xmm4, 0xa0
pand xmm3, xmm5
pshufd xmm4, xmm4, 0xf5
por xmm3, xmm4
packssdw xmm2, xmm3
packssdw xmm1, xmm2
movaps xmmword [rsp + 0xc0], xmm1
movd eax, xmm0
test al, 1
jne 0x1400700b4
jmp 0x1400700c8
mov rax, qword [rsp + 0xd8]
mov rcx, qword [rsp + 0xb8]
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rsp + 0xc0]
movd eax, xmm0
shr eax, 0x10
test al, 1
jne 0x1400700e4
jmp 0x140070112
mov rax, qword [rsp + 0xd8]
mov rcx, qword [rsp + 0xb8]
movabs rdx, 0x55bad33d8a0aec4f
movabs r8, 0x55bad33d8a0aec4e
xor rdx, r8
or rcx, rdx
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rsp + 0xc0]
pextrw eax, xmm0, 2
test al, 1
jne 0x14007012c
jmp 0x14007017c
mov rax, qword [rsp + 0xd8]
mov rdx, qword [rsp + 0xb8]
mov rcx, rdx
xor rcx, 0xffffffffffffffff
movabs r8, 0x16a34c4abcd876a8
movabs r9, 0xe95cb3b543278957
xor r8, r9
xor rdx, r8
or rcx, rdx
mov edx, 2
and rdx, 2
xor rdx, 0xffffffffffffffff
and rcx, rdx
xor rcx, 0xffffffffffffffff
mov dl, 0xf9
xor dl, 0xf9
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rsp + 0xc0]
pextrw eax, xmm0, 3
test al, 1
jne 0x140070196
jmp 0x1400702ad
mov eax, dword [0x140275580]
xor eax, dword [0x140275584]
mov edx, eax
xor edx, 0x163c3d7e
xor edx, 0xffffffff
and edx, 0x163c3d7e
mov ecx, 0x57279571
xor ecx, 0x57279573
imul ecx, edx
sub ecx, 0x163c3d7e
sub eax, ecx
mov ecx, 0x6fab4118
xor ecx, 0x9054bee7
xor eax, ecx
mov edx, 0xffffffff
xor edx, 0x67447a04
mov ecx, 0x39347ec0
xor ecx, 0x589f2233
mov r8d, 0x2b0eaed9
xor r8d, 0xd4f15126
xor ecx, r8d
or eax, edx
or ecx, 0x61ab5cf3
mov edx, 0xdbb84084
xor edx, 0x2447bf7b
xor eax, edx
and eax, ecx
and eax, 0x2de2d067
mov ecx, 0x46520287
xor ecx, 0xc98f89aa
cmp eax, ecx
je 0x140070910
mov rcx, qword [rsp + 0xd8]
mov r8, qword [rsp + 0xb8]
mov edx, dword [0x140275588]
sub edx, dword [0x14027558c]
mov eax, edx
or eax, 0x34b684b
xor eax, 0xffffffff
xor edx, 0xffffffff
mov r9d, 0xffffffff
xor r9d, 0x34b684b
and edx, r9d
mov r9d, 0x9240e689
xor r9d, 0x6dbf1976
xor eax, r9d
xor edx, 0xffffffff
and eax, edx
imul eax, eax, 0xaf8b8eac
xor eax, 0xeae3057e
mov rdx, r8
and rdx, 3
xor r8, 3
or rdx, r8
mov r8b, 0xf8
xor r8b, 0xf8
mov byte [rcx + rdx], r8b
cmp eax, 0xa5771cf3
je 0x140070910
jmp 0x1400702ad
movaps xmm0, xmmword [rsp + 0xc0]
pextrw eax, xmm0, 4
test al, 1
jne 0x1400702c7
jmp 0x14007032c
mov rax, qword [rsp + 0xd8]
mov rcx, qword [rsp + 0xb8]
and rcx, rcx
xor rcx, 0xffffffffffffffff
movabs rdx, 0x5af2d094a5989c95
movabs r8, 0x5af2d094a5989c91
xor rdx, r8
movabs r8, 0x43ecfa5d13f67f8
movabs r9, 0xfbc1305a2ec09807
xor r8, r9
xor rdx, r8
mov r8, 0xffffffffffffffff
xor r8, 4
or rdx, r8
xor rcx, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
or rcx, rdx
mov byte [rax + rcx], 0
mov eax, dword [0x140275590]
mov ecx, dword [0x140275594]
xor ecx, 0x82f2531b
sub eax, ecx
or eax, 0x315c8386
and eax, 0xaf04a9be
xor eax, 0x75b0d2a6
cmp eax, 0x2efe431e
jbe 0x140070919
movaps xmm0, xmmword [rsp + 0xc0]
mov ecx, dword [0x140275598]
xor ecx, 0x7881d113
mov eax, dword [0x14027559c]
or ecx, eax
mov edx, ecx
and edx, 0x2012efd7
add edx, edx
mov eax, ecx
neg edx
mov ecx, edx
lea eax, [rax + rcx - 0x5fed1029]
imul rax, rax, 0x5660ffdf
shr rax, 0x3d
xor eax, 0x9ce3d2f5
pextrw ecx, xmm0, 5
mov byte [rsp + 0x6f], cl
cmp eax, 0x18c3c257
jbe 0x14007035a
mov al, byte [rsp + 0x6f]
test al, 1
jne 0x1400703c2
jmp 0x14007042a
mov rax, qword [rsp + 0xd8]
mov rdx, qword [rsp + 0xb8]
movabs r8, 0xc9e3ceead7eaee73
movabs rcx, 0x361c31152815118c
xor r8, rcx
mov rcx, rdx
xor rcx, r8
mov r8, 0xffffffffffffffff
xor r8, 5
and rcx, r8
movabs r8, 0xb9ea0fed9eca3356
movabs r9, 0xb9ea0fed9eca3353
xor r8, r9
or rdx, r8
xor rdx, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
and rcx, rdx
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rsp + 0xc0]
pextrw eax, xmm0, 6
test al, 1
jne 0x140070444
jmp 0x14007046e
mov rax, qword [rsp + 0xd8]
mov rcx, qword [rsp + 0xb8]
mov rdx, rcx
and rdx, 6
xor rdx, 0xffffffffffffffff
add rcx, 6
add rcx, 1
add rcx, rdx
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rsp + 0xc0]
pextrw eax, xmm0, 7
test al, 1
jne 0x140070488
jmp 0x140070522
mov rax, qword [rsp + 0xd8]
mov rsi, qword [rsp + 0xb8]
mov rdx, rsi
xor rdx, 0xffffffffffffffff
mov r9, 0xffffffffffffffff
xor r9, 7
mov r8, 0xffffffffffffffff
movabs rcx, 0xef023f09e88c1888
xor r8, rcx
movabs r10, 0xef023f09e88c1888
mov rcx, rdx
and rcx, r10
and rsi, r8
movabs r11, 0xef023f09e88c1888
mov r10, r9
and r10, r11
movabs r11, 0x647afff40d13933b
movabs rdi, 0x647afff40d13933c
xor r11, rdi
and r11, r8
or rcx, rsi
or r10, r11
xor rcx, r10
or rdx, r9
xor rdx, 0xffffffffffffffff
movabs r9, 0xef023f09e88c1888
or r8, r9
and rdx, r8
or rcx, rdx
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rsp + 0x70]
movaps xmm1, xmmword [rsp + 0x80]
movaps xmm2, xmmword [rsp + 0x90]
movaps xmm3, xmmword [rsp + 0xa0]
mov rax, qword [rsp + 0xb8]
add rax, 8
movaps xmm4, xmmword [0x140284c10]
paddq xmm3, xmm4
paddq xmm2, xmm4
paddq xmm1, xmm4
paddq xmm0, xmm4
mov rcx, rax
sub rcx, 0x18
mov qword [rsp + 0xf8], rax
movaps xmmword [rsp + 0x100], xmm3
movaps xmmword [rsp + 0x110], xmm2
movaps xmmword [rsp + 0x120], xmm1
movaps xmmword [rsp + 0x130], xmm0
jne 0x14006ff85
jmp 0x14007059c
mov rax, qword [rsp + 0xd0]
mov rcx, qword [rsp + 0xf0]
add rcx, 0x60
mov qword [rsp + 0x60], rcx
cmp rax, 0
jge 0x1400705df
mov rcx, qword [rsp + 0xd0]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
call fcn.14001a720
jmp 0x1400708e5
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
call fcn.14000efc9
mov rcx, qword [rsp + 0xd0]
imul rax, rcx, 3
mov qword [rsp + 0x48], rax
cvtsi2sd xmm0, rcx
movsd xmm1, qword [0x140284c20]
mulsd xmm0, xmm1
movsd qword [rsp + 0x50], xmm0
cvtsi2sd xmm1, rax
movsd qword [rsp + 0x58], xmm1
ucomisd xmm0, xmm1
jne 0x140070635
jp 0x140070635
jmp 0x1400707ca
movsd xmm1, qword [rsp + 0x50]
movsd xmm0, qword [rsp + 0x58]
subsd xmm0, xmm1
call fcn.140271c60
movaps xmm1, xmm0
movsd xmm0, qword [rsp + 0x50]
movsd qword [rsp + 0x40], xmm1
call fcn.140271c60
movsd xmm1, qword [rsp + 0x40]
movsd xmm2, qword [0x140284c28]
mulsd xmm1, xmm2
ucomisd xmm0, xmm1
jae 0x1400707ca
mov r11d, dword [0x1402755a0]
add r11d, dword [0x1402755a4]
mov eax, 0x5130ea45
xor eax, 0xaecf15ba
mov ecx, r11d
xor ecx, eax
and ecx, 0xea6597ab
mov edx, 0xffffffff
xor edx, 0xea6597ab
mov eax, r11d
and eax, edx
imul eax, ecx
mov ecx, r11d
and ecx, 0xea6597ab
or r11d, 0xea6597ab
imul r11d, ecx
add r11d, eax
mov eax, 0xd5d0130e
xor eax, 0x2a2fecf1
mov ecx, r11d
xor ecx, eax
mov edx, 0x2104ab0
xor edx, 0xab47c6f1
mov eax, 0xd444f15d
xor eax, 0x2bbb0ea2
xor edx, eax
mov r8d, 0xffffffff
xor r8d, 0x4585ca54
mov eax, ecx
and eax, 0x4585ca54
and r11d, r8d
mov r10d, 0x5d404126
xor r10d, 0x18c58b72
mov r9d, edx
and r9d, r10d
mov r10d, r8d
and r10d, 0xa9578c41
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, edx
xor ecx, 0xffffffff
mov edx, 0xe43bd9c3
xor edx, 0xa1be1397
or edx, r8d
and ecx, edx
or eax, ecx
add eax, 0x137b4e8f
cmp eax, 0x291d89cf
jae 0x140070922
mov eax, dword [0x1402755a8]
add eax, dword [0x1402755ac]
mov ecx, 0x164ea4ff
xor ecx, 0xe650c126
imul eax, ecx
mov r8d, 0xffffffff
xor r8d, 0xea3ece5e
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
mov r8d, 0x1fe634c1
xor r8d, 0xe019cb3e
xor ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0xea3ece5e
or eax, 0xea3ece5e
imul eax, edx
add eax, ecx
imul eax, eax, 0xa7dd64d9
mov dword [rsp + 0x3c], eax
call fcn.14000f24b
mov eax, dword [rsp + 0x3c]
cmp eax, 0xd9df80d0
ja 0x140070922
jmp 0x14007087f
mov rax, qword [rsp + 0x48]
mov ecx, 2
cqo
idiv rcx
mov rcx, rax
mov rax, rcx
add rax, 4
mov qword [rsp + 0x30], rax
mov r8, rcx
xor r8, 0xffffffffffffffff
movabs rdx, 0x610d30d99b624d82
movabs r9, 0x9ef2cf26649db27d
xor rdx, r9
and rdx, r8
movabs r8, 0x1cc37b2081316ea0
movabs r9, 0xe33c84df7ece915f
xor r8, r9
movabs r9, 0xf1deca656123b178
movabs r10, 0xe21359a9edc4e87
xor r9, r10
xor r8, r9
and rcx, r8
or rdx, rcx
or rax, rax
xor rax, 0xffffffffffffffff
mov rcx, rdx
xor rcx, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
and rcx, rdx
or rax, rcx
xor rax, 0xffffffffffffffff
cmp rax, 0
jge 0x140070870
call fcn.14000f24b
jmp 0x14007087f
mov rcx, qword [rsp + 0x30]
call fcn.140059f24
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x28]
mov qword [rsp + 0x20], rcx
cmp byte [rax], 0
jne 0x1400708e5
mov rax, qword [rsp + 0x20]
mov rcx, qword [rsp + 0xd8]
mov qword [rcx + 0x10], 0
cmp rax, 0
jge 0x1400708d3
mov rcx, qword [rsp + 0x20]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
call fcn.14001a720
jmp 0x1400708e5
mov rdx, qword [rsp + 0x20]
mov rcx, qword [rsp + 0xd8]
call fcn.14002fbc0
mov rax, qword [rsp + 0xe0]
movaps xmm6, xmmword [rsp + 0x140]
movaps xmm7, xmmword [rsp + 0x150]
movaps xmm8, xmmword [rsp + 0x160]
add rsp, 0x178
pop rdi
pop rsi
ret
adc edx, dword [rax]
adc al, 0x8c
jmp 0x14007022b
ret 0x8d18
mov edi, 0xe98b6a58
invalid