Function at 0x140189d00
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x58
mov qword [rsp + 0x50], rcx
mov eax, dword [0x14020b020]
xor eax, 0x1e77c52c
sub eax, dword [0x14020b024]
imul eax, eax, 0x7ef89824
mov ecx, 0xdaed3e62
xor ecx, 0x764abb1e
or eax, ecx
mov ecx, 0xa57f4753
xor edx, edx
div ecx
cmp eax, 0x1be640a3
ja 0x140189fc3
mov r11d, dword [0x14020b028]
mov ecx, dword [0x14020b02c]
xor ecx, 0x6d828ebe
mov eax, r11d
add eax, 1
xor r11d, 0xffffffff
or r11d, ecx
add r11d, eax
and r11d, r11d
mov eax, 0xbd33b5f6
xor eax, 0x42cc4a09
xor r11d, eax
mov eax, 0x6f8d58e6
xor eax, 0x85fcfdf0
mov ecx, 0x4e9a4f96
xor ecx, 0xa4ebea80
and eax, ecx
mov ecx, 0x30f2c679
xor ecx, 0xcf0d3986
xor eax, ecx
xor r11d, 0xffffffff
xor eax, 0xffffffff
or r11d, eax
or r11d, 0xafb7a878
mov ecx, r11d
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x6911d356
mov r8d, 0xffffffff
xor r8d, 0x2d6b65bb
mov eax, ecx
and eax, 0x2d6b65bb
and r11d, r8d
mov r9d, edx
and r9d, 0x2d6b65bb
mov r10d, r8d
and r10d, 0x6911d356
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, edx
xor ecx, 0xffffffff
mov edx, 0x63fbaa45
xor edx, 0x4e90cffe
or edx, r8d
and ecx, edx
or eax, ecx
mov dword [rsp + 0x3c], eax
mov eax, 0x5eae87e5
xor eax, 0x31ebde04
mov dword [rsp + 0x38], eax
call fcn.1401898ee
mov rdx, qword [rsp + 0x50]
mov ecx, dword [rsp + 0x38]
mov r8, rax
mov eax, dword [rsp + 0x3c]
mov qword [rsp + 0x40], r8
add rdx, 8
mov qword [rsp + 0x48], rdx
cmp eax, ecx
jb 0x140189d41
xor eax, eax
mov qword [rsp + 0x30], rax
jmp 0x140189e4e
mov rdx, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x50]
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x20], rax
mov rcx, qword [rcx]
mov rdx, qword [rdx]
mov qword [rsp + 0x28], rdx
cmp rax, rcx
jge 0x140189f0f
mov rax, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x20]
mov rcx, qword [rax + rcx*8 + 8]
call fcn.140189910
test al, 1
jne 0x140189e97
jmp 0x140189ed8
mov rcx, qword [rsp + 0x20]
mov rax, qword [rsp + 0x48]
mov rax, qword [rax]
mov rcx, qword [rax + rcx*8 + 8]
call fcn.140189840
mov rax, qword [rsp + 0x40]
cmp byte [rax], 0
jne 0x140189fbd
mov rcx, qword [rsp + 0x20]
mov rax, qword [rsp + 0x48]
mov rax, qword [rax]
mov rcx, qword [rax + rcx*8 + 8]
mov edx, 8
call fcn.14000fb9a
mov rax, qword [rsp + 0x20]
mov rcx, rax
and rcx, 1
shl rcx, 1
movabs rdx, 0x16edb65b3eea6afb
movabs r8, 0x16edb65b3eea6afa
xor rdx, r8
xor rax, rdx
add rax, rcx
mov qword [rsp + 0x30], rax
jmp 0x140189e4e
mov rax, qword [rsp + 0x28]
cmp rax, 0
je 0x140189fbd
mov rax, qword [rsp + 0x28]
mov rax, qword [rax]
or rax, rax
movabs rcx, 0xa6e48a6c1df862ab
movabs rdx, 0x591b7593e2079d54
xor rcx, rdx
xor rax, rcx
movabs rcx, 0x99f7c8e1c3714a5d
movabs rdx, 0xd9f7c8e1c3714a5d
xor rcx, rdx
movabs rdx, 0x1af7194e5162c23f
movabs r8, 0xe508e6b1ae9d3dc0
xor rdx, r8
xor rcx, rdx
mov rdx, 0xffffffffffffffff
movabs r8, 0x4000000000000000
xor rdx, r8
and rcx, rdx
or rax, rcx
xor rax, 0xffffffffffffffff
cmp rax, 0
jne 0x140189fbd
mov rcx, qword [rsp + 0x28]
movabs rdx, 0xbb13e0dc8f57312e
movabs rax, 0xbb13e0dc8f573126
xor rdx, rax
call fcn.14000fb49
nop
add rsp, 0x58
ret
and al, 0x76
jp 0x140189fd4
jmp 0x140189d41
add byte [rax], al
add byte [rax - 0x77], cl
mov word [rax + rsi*4], fs
add byte [rax], al
add byte [rbx + 0x8104b05], cl
add byte [rbx + 0x810490d], cl
add byte [rcx + 0x56ad5bf1], al
mov ebx, 0x89c1af0f
rol dword [rcx - 0x184b810f], 0x8f