Function at 0x1800119f0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push r13
push r14
push r15
sub rsp, 0x30
mov r15d, dword [rsp + 0x70]
lea r11d, [rcx - 0x6c8]
mov r13d, dword [rsp + 0x80]
lea eax, [r11 - 0x119]
mov r10d, r9d
lea esi, [rcx - 0x353f]
mov edi, r9d
xor r13d, 0x1bd4
lea r14d, [r15 - 0x766]
xor edi, 0x1a05
xor r10d, 0x733
lea ebp, [r15 - 0x7d4]
mov rbx, r8
cmp r14d, eax
jle 0x180011c8a
lea eax, [rbp + 0x6e]
cmp r14d, eax
jl 0x180011bc9
mov eax, edi
mov qword [rsp + 0x28], rbx
xor eax, 0x19ab
lea edx, [r10 - 0x453]
lea ecx, [rbp - 0x368]
mov dword [rsp + 0x20], eax
mov r9d, ebp
lea r8d, [rbp - 0x12c]
call fcn.180001120
mov r10d, eax
xor r9d, r9d
mov eax, dword [rbx + 0xf8]
xor eax, 0x1a9252
sub dword [rbx + 0x74], eax
movsxd rcx, dword [rbx + 0x64]
mov rax, qword [rbx + 0x98]
mov r8d, dword [r9 + rax]
add r9, 4
imul r8d, dword [rbx + 0x58]
mov rax, qword [rbx + 0xb0]
mov edx, r8d
shr edx, 8
mov byte [rcx + rax], dl
inc dword [rbx + 0x64]
mov eax, dword [rbx + 0x20]
sub eax, dword [rbx + 0x28]
movsxd rcx, dword [rbx + 0x64]
xor eax, 0x37fdc2
sub dword [rbx + 0x6c], eax
mov rax, qword [rbx + 0xb0]
mov byte [rcx + rax], r8b
inc dword [rbx + 0x64]
mov eax, dword [rbx + 0x108]
xor eax, dword [rbx + 0x6c]
add eax, 0x3d1f3d
add dword [rbx + 0x90], eax
mov eax, dword [rbx + 0x4c]
mov ecx, dword [rbx + 0xf0]
sub ecx, 0x2bd18
imul eax, ecx
mov dword [rbx + 0x4c], eax
mov eax, dword [rbx + 0xf8]
sub eax, dword [rbx + 0x7c]
xor eax, 0x1a9252
sub dword [rbx + 0x11c], eax
mov eax, dword [rbx + 0xdc]
dec eax
xor dword [rbx + 0xcc], eax
mov eax, dword [rbx + 0xcc]
xor eax, 0x1c3477
add dword [rbx + 0x28], eax
mov ecx, dword [rbx + 0x70]
mov eax, ecx
sub eax, dword [rbx + 0x90]
xor ecx, dword [rbx + 0xf8]
add eax, 5
or dword [rbx + 0x20], eax
xor ecx, 0x1a9252
mov dword [rbx + 0x70], ecx
mov eax, dword [rbx + 0x4c]
sub eax, 0x1c0d78
xor dword [rbx + 0x5c], eax
cmp r9, 0x588
jl 0x180011aa1
lea eax, [rdi + 0x4ca]
xor r10d, 0x201
lea edx, [r13 - 0x11c]
mov dword [rsp + 0x28], eax
xor edi, 0x1d36
mov dword [rsp + 0x20], edx
mov edx, r10d
mov r9d, edi
mov r8, rbx
mov ecx, r15d
call fcn.1800118e0
lea eax, [rbp + 0xe9e]
jmp 0x180011c90
mov eax, dword [r8 + 0xac]
imul eax, dword [r8 + 0x90]
and eax, r10d
cmp r11d, eax
jb 0x180011c4d
lea eax, [r15 - 0x4e4]
add eax, esi
movsxd rcx, eax
call qword [sym.imp.KERNEL32.dll_ReleaseActCtx]
mov eax, dword [rbx + 0x2c]
mov edx, dword [rbx + 0x120]
mov ecx, dword [rbx + 0x6c]
or rcx, rax
imul edx, edi
mov eax, dword [rbx + 8]
or rcx, rax
xor edx, dword [rbx + 0xa4]
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword [rbx + 0xf4]
mov ecx, dword [rbx + 0x110]
or ecx, r14d
or ecx, esi
imul eax, ecx
mov ecx, dword [rbx + 0x4c]
add ecx, r13d
mov dword [rbx + 0xf4], eax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
sub esi, dword [rbx + 0xf0]
sub esi, 0x2e09
add dword [rbx + 0x74], esi
jmp 0x180011c8a
mov r9d, dword [r8 + 0x4c]
mov ecx, r10d
mov edx, dword [rbx + 0x100]
and ecx, r11d
sub ecx, dword [r8 + 0x34]
and edi, r11d
mov r8d, dword [r8 + 0xcc]
or edi, esi
imul edx, r10d
add r9d, esi
mov qword [rsp + 0x28], rbx
and r8d, r10d
mov dword [rsp + 0x20], ecx
mov ecx, edi
imul edx, esi
call fcn.1800125e0
lea eax, [rbp + 0xfca]
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x68]
add rsp, 0x30
pop r15
pop r14
pop r13
ret