Function at 0x140068f70
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x88
mov qword [rsp + 0x78], rcx
mov dword [rsp + 0x74], edx
mov dword [rsp + 0x70], r8d
mov rax, qword [rsp + 0x78]
cmp qword [rax + 0x148], 0
jne 0x140068fa8
mov dword [rsp + 0x84], 0
jmp 0x14006948f
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x154]
mov rcx, qword [rsp + 0x78]
cmp eax, dword [rcx + 0x15c]
jne 0x14006903d
mov eax, dword [0x1401059ec]
and eax, dword [0x1401059f0]
add eax, 0x44c638d3
imul eax, eax, 0x4bffcddf
sub eax, 0xfbcbf23
cmp eax, 0x5bbbd3b3
jb 0x1400694f3
mov eax, dword [0x1401059f4]
or eax, dword [0x1401059f8]
mov ecx, 0x579b50b2
xor edx, edx
div ecx
imul eax, eax, 0xc8b32560
mov ecx, 0xdb8d7d79
xor edx, edx
div ecx
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x15c], 0
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x154], 0
cmp eax, 0x1a79f296
jae 0x1400694f3
jmp 0x140069171
mov rax, qword [rsp + 0x78]
cmp dword [rax + 0x15c], 0
je 0x14006911e
mov eax, dword [0x1401059fc]
or eax, dword [0x140105a00]
and eax, 0xcfe694e0
sub eax, 0x16e58b0
sub eax, 0xfa59ebd2
cmp eax, 0xc25507ae
je 0x140069516
mov eax, dword [str.MoCM_]
or eax, dword [0x140105a08]
or eax, 0x77dae9ec
or eax, 0xc7fc6100
or eax, 0xc6c80f2
mov dword [rsp + 0x68], eax
mov rax, qword [rsp + 0x78]
mov rcx, qword [rax + 0x148]
mov rax, qword [rsp + 0x78]
mov rdx, qword [rax + 0x148]
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x15c]
add rdx, rax
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x154]
mov r8, qword [rsp + 0x78]
sub eax, dword [r8 + 0x15c]
mov eax, eax
mov r8d, eax
call sub.msvcrt.dll_memmove
mov eax, dword [rsp + 0x68]
mov rcx, qword [rsp + 0x78]
mov r8d, dword [rcx + 0x15c]
mov rcx, qword [rsp + 0x78]
mov edx, dword [rcx + 0x154]
sub edx, r8d
mov dword [rcx + 0x154], edx
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x15c], 0
cmp eax, 0xa313f853
jbe 0x140069516
jmp 0x14006911e
mov eax, dword [0x140105a0c]
and eax, dword [0x140105a10]
or eax, 0x4439e6c1
imul eax, eax, 0xbdf784fc
imul eax, eax, 0xd256b22d
cmp eax, 0xf7a482d7
ja 0x140069592
mov eax, dword [0x140105a14]
xor eax, dword [0x140105a18]
and eax, 0xf184b6e4
sub eax, 0x236c833e
add eax, 0x260e889e
cmp eax, 0x1987bcde
jae 0x140069592
jmp 0x140069171
mov eax, dword [0x140105a1c]
xor eax, dword [0x140105a20]
or eax, 0x5b8d8472
sub eax, 0x37d059be
add eax, 0x80b3a467
cmp eax, 0x958977c3
je 0x140069597
mov eax, dword [0x140105a24]
sub eax, dword [0x140105a28]
add eax, 0xc661d173
and eax, 0xbb7da86c
sub eax, 0xab236d41
mov ecx, dword [rsp + 0x74]
mov rdx, qword [rsp + 0x78]
cmp ecx, dword [rdx + 0x154]
setbe cl
mov byte [rsp + 0x67], cl
cmp eax, 0x666c9810
je 0x140069597
mov al, byte [rsp + 0x67]
test al, 1
jne 0x1400691e4
jmp 0x140069242
mov eax, dword [0x140105a2c]
sub eax, dword [0x140105a30]
imul eax, eax, 0xe86cd51f
or eax, 0x3dbd50e3
imul eax, eax, 0xf66b9e22
cmp eax, 0x58d1564
je 0x14006959c
mov eax, dword [0x140105a34]
add eax, dword [0x140105a38]
xor eax, 0xa9d785ae
xor eax, 0xa8e6872c
and eax, 0x505d4617
mov ecx, dword [rsp + 0x74]
mov dword [rsp + 0x84], ecx
cmp eax, 0x6270dc16
je 0x14006959c
jmp 0x14006948f
mov eax, dword [0x140105a3c]
imul eax, dword [0x140105a40]
mov ecx, 0x357ccfd8
xor edx, edx
div ecx
imul eax, eax, 0x358b4587
imul eax, eax, 0x36e84674
cmp eax, 0x9ae86a8d
ja 0x1400695ac
mov eax, dword [0x140105a44]
sub eax, dword [0x140105a48]
sub eax, 0x3de46d9f
or eax, 0x744562ce
sub eax, 0xb030f38c
mov rcx, qword [rsp + 0x78]
mov edx, dword [rcx + 0x154]
mov ecx, dword [rsp + 0x74]
sub ecx, edx
mov dword [rsp + 0x74], ecx
mov rcx, qword [rsp + 0x78]
mov qword [rsp + 0x40], rcx
mov rcx, qword [rsp + 0x78]
mov rcx, qword [rcx + 0x80]
mov qword [rsp + 0x48], rcx
mov rcx, qword [rsp + 0x78]
add rcx, 0x1b0
mov qword [rsp + 0x50], rcx
mov rcx, qword [rsp + 0x78]
mov rcx, qword [rcx + 0x148]
mov rdx, qword [rsp + 0x78]
mov edx, dword [rdx + 0x154]
add rcx, rdx
mov qword [rsp + 0x58], rcx
mov rcx, qword [rsp + 0x78]
mov ecx, dword [rcx + 0x164]
mov rdx, qword [rsp + 0x78]
sub ecx, dword [rdx + 0x154]
cmp ecx, dword [rsp + 0x74]
setb cl
mov byte [rsp + 0x66], cl
cmp eax, 0xe65582cf
je 0x1400695ac
mov al, byte [rsp + 0x66]
test al, 1
jne 0x140069327
jmp 0x14006939f
mov eax, dword [0x140105a4c]
sub eax, dword [0x140105a50]
and eax, 0x2562639d
sub eax, 0xdf205450
mov ecx, 0xfd177196
xor edx, edx
div ecx
cmp eax, 0x2f6d3e56
jae 0x1400695c6
mov eax, dword [0x140105a54]
add eax, dword [0x140105a58]
add eax, 0x5f5c9509
xor eax, 0x803952de
imul eax, eax, 0x638e9ea1
mov rcx, qword [rsp + 0x78]
mov ecx, dword [rcx + 0x164]
mov rdx, qword [rsp + 0x78]
sub ecx, dword [rdx + 0x154]
mov dword [rsp + 0x3c], ecx
cmp eax, 0x8efd8b29
jae 0x1400695c6
mov eax, dword [rsp + 0x3c]
mov dword [rsp + 0x38], eax
jmp 0x1400693a7
mov eax, dword [rsp + 0x74]
mov dword [rsp + 0x38], eax
mov r9, qword [rsp + 0x58]
mov r8, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x40]
mov r10d, dword [rsp + 0x38]
imul eax, dword [rsp + 0x70], 0x3e8
mov dword [rsp + 0x20], r10d
mov dword [rsp + 0x28], eax
call fcn.140067820
mov dword [rsp + 0x6c], eax
cmp eax, 0
jle 0x140069424
mov ecx, dword [rsp + 0x6c]
mov rax, qword [rsp + 0x78]
add ecx, dword [rax + 0x154]
mov dword [rax + 0x154], ecx
mov rax, qword [rsp + 0x78]
mov ecx, dword [rax + 0x1e0]
add ecx, 1
mov dword [rax + 0x1e0], ecx
movsxd rcx, dword [rsp + 0x6c]
mov rax, qword [rsp + 0x78]
add rcx, qword [rax + 0x1d8]
mov qword [rax + 0x1d8], rcx
mov eax, dword [0x140105a5c]
or eax, dword [0x140105a60]
or eax, 0x6f97011a
mov ecx, 0xf21fa0b5
xor edx, edx
div ecx
mov ecx, 0x3fbcac6e
xor edx, edx
div ecx
cmp eax, 0x9d38596f
jae 0x1400695cb
mov eax, dword [0x140105a64]
xor eax, dword [0x140105a68]
xor eax, 0xfb71d26e
add eax, 0x8bc54826
sub eax, 0xcedb3b23
mov rcx, qword [rsp + 0x78]
mov ecx, dword [rcx + 0x154]
mov dword [rsp + 0x84], ecx
cmp eax, 0x61a9680e
je 0x140069452
jmp 0x14006948f
mov eax, dword [0x140105a6c]
sub eax, dword [0x140105a70]
sub eax, 0x3bcab84
imul eax, eax, 0x42d362b1
xor eax, 0x5e23e510
cmp eax, 0xdecaeb2b
jae 0x1400695e2
mov eax, dword [0x140105a74]
xor eax, dword [0x140105a78]
add eax, 0x6fef86d0
xor eax, 0x5a99236b
add eax, 0xb0b3bdf4
mov ecx, dword [rsp + 0x84]
mov dword [rsp + 0x34], ecx
cmp eax, 0xa719d214
jae 0x1400695e2
mov eax, dword [rsp + 0x34]
add rsp, 0x88
ret
mov rax, qword [rsp + 0x78]
mov dword [rax + 0x15c], 0
mov rax, qword [rsp + 0x78]
mov dword [rax + 0x154], 0
jmp 0x140068feb
mov rax, qword [rsp + 0x78]
mov rcx, qword [rax + 0x148]
mov rax, qword [rsp + 0x78]
mov rdx, qword [rax + 0x148]
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x15c]
add rdx, rax
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x154]
mov r8, qword [rsp + 0x78]
mov r8d, dword [r8 + 0x15c]
sub eax, r8d
mov eax, eax
mov r8d, eax
call sub.msvcrt.dll_memmove
mov rax, qword [rsp + 0x78]
mov edx, dword [rax + 0x15c]
mov rax, qword [rsp + 0x78]
mov ecx, dword [rax + 0x154]
sub ecx, edx
mov dword [rax + 0x154], ecx
mov rax, qword [rsp + 0x78]
mov dword [rax + 0x15c], 0
jmp 0x140069075
jmp 0x140069146
jmp 0x140069197
mov eax, dword [rsp + 0x74]
mov dword [rsp + 0x84], eax
jmp 0x14006920c
mov rax, qword [rsp + 0x78]
mov ecx, dword [rax + 0x154]
mov eax, dword [rsp + 0x74]
sub eax, ecx
mov dword [rsp + 0x74], eax
jmp 0x14006926f
jmp 0x140069351
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x154]
mov dword [rsp + 0x84], eax
jmp 0x140069452
jmp 0x1400694b6