Function at 0x14000f310
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x40
mov r15d, dword [rsp + 0x90]
lea esi, [r9 - 0x2c99]
mov r14d, r15d
lea eax, [rdx - 0x9c4]
mov edi, edx
lea r13d, [rcx + 0x8a6]
xor r14d, 0x38d5
lea r10d, [r9 + 0xb26]
xor edi, 0x1cd5
xor r15d, 0x87a
mov r12d, edx
cmp esi, eax
je 0x14000f5bf
mov rbx, qword [rsp + 0x98]
xor ecx, ecx
add esi, 0x30af
mov dword [rbx + 0x14], ecx
mov dword [rbx + 0x28], ecx
mov rax, qword [section..data]
mov dword [rax + 0x3c], 9
mov rax, qword [section..data]
mov dword [rax + 0x48], 1
mov dword [rbx + 0x50], ecx
mov dword [0x140043094], ecx
mov dword [rbx + 0x94], ecx
mov dword [rbx + 0xa4], ecx
mov dword [rbx + 0xac], 0x2c
mov dword [rbx + 0xb8], ecx
mov rax, qword [section..data]
mov dword [rax + 0xc0], 7
mov dword [rbx + 0xd0], 5
mov dword [0x1400430f0], 1
mov dword [rbx + 0xe8], ecx
mov rax, qword [section..data]
mov dword [0x140043108], ecx
mov dword [rax + 0x100], 0x52
mov dword [0x140043114], 0x10
mov dword [rbx + 0x118], ecx
mov dword [rbx + 0x128], 0xc
cmp dword [0x140043058], 0x10ca9
je 0x14000f44c
mov rdx, qword [section..data]
mov ecx, dword [rdx + 0xa4]
add ecx, 0xc8319
add ecx, dword [rbx + 0x100]
xor dword [rdx + 0xac], ecx
imul eax, dword [rbx + 0x48], 0x16c511
mov dword [rbx + 0x48], eax
mov eax, dword [rbx + 0x94]
add eax, 0xe08ec
xor dword [rbx + 0x100], eax
cmp dword [rbx + 0x14], 0xaad2
jae 0x14000f47e
mov rax, qword [section..data]
xor dword [rax + 0x28], 0x1301e6
lea eax, [r14 + 0x2ddf]
mov rdx, rbx
lea edi, [r14 + 0x3983]
mov dword [rsp + 0x20], eax
mov r9d, edi
lea r8d, [r10 - 0x8ad]
lea ecx, [r15 - 0x627]
call fcn.1400010f0
mov rdx, qword [section..data]
lea ecx, [r13 - 0x97b]
mov r8d, eax
mov dword [rsp + 0x20], edi
lea r9d, [rax + 0x133]
call fcn.1400027e0
mov rcx, qword [section..data]
xor esi, 0xa85
mov eax, dword [rcx + 0xa4]
xor eax, dword [rbx + 0x128]
sub eax, 0xc
mov dword [0x1400430e4], eax
mov edx, dword [rcx + 0x34]
cmp edx, dword [rcx + 0x38]
ja 0x14000f567
mov eax, dword [rbx + 0x3c]
sub eax, 9
xor dword [0x140043060], eax
mov eax, dword [0x1400430a4]
sub eax, dword [0x1400430b4]
add dword [rcx + 0x104], eax
mov eax, edx
mov rcx, qword [section..data]
imul eax, edx
inc edx
add dword [0x1400430e4], eax
mov eax, 0xc
sub eax, dword [rcx + 0x128]
add dword [0x140043060], eax
mov eax, 0x9ce60e
sub eax, dword [rcx + 0xc0]
add dword [rcx + 0x48], eax
mov eax, dword [rbx + 0xc0]
mov ecx, eax
xor ecx, 0x9ce60e
or ecx, eax
mov dword [rbx + 0xc0], ecx
mov rcx, qword [section..data]
cmp edx, dword [rcx + 0x38]
jbe 0x14000f4f4
mov eax, dword [rcx + 0x128]
sub esi, 0x26b
sub eax, dword [rbx + 0x94]
add eax, 0x44860
or dword [rbx + 0x100], eax
mov eax, dword [rbx + 0xb8]
add eax, dword [rbx + 0x48]
mov edx, dword [0x1400430e4]
xor eax, 0x2db154
mov rcx, qword [section..data]
imul edx, eax
mov dword [0x1400430e4], edx
mov eax, dword [rcx + 0x118]
cmp dword [rcx + 0x28], eax
je 0x14000f8b0
mov dword [rbx + 0x58], edx
jmp 0x14000f8b0
mov rax, qword [section..data]
lea rcx, [0x140043010]
or r10d, 0x2a88
mov qword [rsp + 0x70], rbp
mov rbp, qword [rsp + 0x98]
mov r8d, r15d
mov edx, dword [rax + 0x100]
mov eax, dword [0x14004312c]
imul edx, dword [rbp + 0xe8]
add eax, 0xffffa6b4
imul r10d, dword [rbp + 0x80]
mov r9d, dword [rbp + 0xdc]
sub r8d, dword [rbp + 0xf8]
add r9d, 0x2ddf
xor r9d, dword [0x140043138]
sub r8d, 0x365d
add edx, 0x2ddf
mov dword [rsp + 0x28], r10d
mov dword [rsp + 0x20], eax
call fcn.14000f8e0
mov ecx, dword [0x1400430b4]
mov ebx, eax
sub ecx, dword [0x1400430cc]
mov eax, dword [rbp + 0x11c]
or rcx, rax
call qword [sym.imp.KERNEL32.dll_ConvertThreadToFiber]
mov rdx, qword [section..data]
mov ecx, dword [0x1400430b4]
xor ecx, ebx
mov r9d, dword [rdx + 0xa4]
mov eax, dword [rdx + 0xb8]
sub r9d, ebx
mov r8d, dword [rdx + 0xe8]
xor eax, ebx
add r9d, dword [rbp + 0x104]
lea edx, [rsi + r13]
mov dword [rsp + 0x28], eax
sub r8d, 0x2ac2
mov dword [rsp + 0x20], r9d
xor edx, r13d
mov r9, rbp
call fcn.140010b90
mov rdx, qword [section..data]
mov ecx, dword [0x140043028]
mov dword [rsp + 0x90], eax
add ecx, r15d
xor ecx, 0x365d
mov esi, dword [rdx + 0xd8]
sub esi, r12d
add r12d, eax
xor esi, dword [0x140043060]
mov eax, r12d
xor eax, 0x12ef
cmp ecx, eax
jge 0x14000f703
mov ecx, dword [rdx + 0xac]
mov eax, dword [rbp + 0x94]
sub ecx, 0x6e48a
imul eax, ecx
mov dword [rbp + 0x94], eax
mov rdx, qword [section..data]
mov ecx, dword [rbp + 0x84]
lea r9d, [r15 - 0x2a88]
mov eax, dword [rdx + 0xdc]
add ecx, 0x2a3a
imul eax, ecx
add esi, 0xfffffaaa
mov r11d, esi
imul r11d, r13d
mov dword [rdx + 0xdc], eax
mov rcx, qword [section..data]
mov r10d, dword [0x140043110]
mov ebx, dword [rbp + 0x50]
imul r11d, dword [rbp + 0x104]
sub ebx, r14d
or ebx, dword [rcx + 0x128]
mov r8d, dword [rbp + 0xa4]
mov ecx, dword [rcx + 0xcc]
add r8d, r15d
sub r10d, dword [rbp + 0x100]
sub ecx, esi
imul r9d, dword [rbp + 0xb0]
add r8d, edi
imul eax, esi, 0x30f5
mov dword [rsp + 0x30], ebx
mov qword [rsp + 0x28], r11
mov qword [rsp + 0x20], r10
movsxd rdx, eax
call qword [sym.imp.KERNEL32.dll_GetNamedPipeHandleStateA]
mov edx, dword [rbp + 0xb4]
lea ecx, [r15 + r14]
or edx, dword [rbp + 0x104]
imul ecx, edi
or edx, 0x2f12
xor edi, 0x2a3a
xor edx, 0x3983
add edi, 0x265e
lea eax, [rdi + 0x751]
lea r8d, [rcx - 0x710]
xor ecx, 0x37bf
cmp ecx, eax
je 0x14000f7e7
lea rax, [0x140044e70]
mov qword [0x140043078], rax
jmp 0x14000f80e
mov eax, dword [0x14004310c]
sub eax, r8d
cmp edi, eax
jbe 0x14000f80e
mov eax, dword [0x140043088]
mov ecx, dword [0x1400430d4]
xor ecx, r8d
sub ecx, edx
imul eax, ecx
mov dword [0x140043088], eax
mov ecx, dword [rbp + 0xf8]
lea r11d, [r14 - 0x30f5]
mov r10d, dword [rbp + 0x3c]
lea r8d, [r13 + 0x365d]
mov eax, dword [0x1400430c8]
mov ebx, r15d
imul edi, ecx, 0x30f5
sub ebx, ecx
mov ecx, dword [rbp + 0x114]
or r14d, 0x3a2a
sub ecx, dword [rsp + 0x90]
lea r9d, [r10 + r13]
xor r8d, r10d
mov edx, r14d
or rdi, rax
mov qword [rsp + 0x30], rdi
mov dword [rsp + 0x28], r11d
mov dword [rsp + 0x20], ebx
call qword [sym.imp.KERNEL32.dll_CreateFileA]
mov rax, qword [section..data]
mov ecx, dword [rax + 0x100]
and ecx, 0x2ac2
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
imul ecx, r12d, 0xffffcf51
add dword [0x1400430e8], ecx
mov ecx, dword [rbp + 0x128]
mov edx, ecx
and edx, dword [0x1400430c0]
and edx, r15d
add edx, ecx
mov dword [rbp + 0x128], edx
mov rbp, qword [rsp + 0x70]
mov rbx, qword [rsp + 0x78]
xor esi, 0x1d37
mov eax, esi
mov rsi, qword [rsp + 0x80]
add rsp, 0x40
pop r15
pop r14
pop r13
pop r12
pop rdi
ret