Function at 0x140074c00
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x7e8]
sub rsp, 0x8e8
mov rax, qword [0x1403e3c28]
xor rax, rsp
mov qword [rbp + 0x7d0], rax
mov r13, qword [rbp + 0x850]
mov rdi, rcx
movsxd r14, dword [rbp + 0x858]
mov ecx, r8d
movsxd r15, r9d
mov esi, r8d
mov ebx, edx
call fcn.14008d1f0
lea ecx, [rbx - 1]
mov r12, rax
movsxd rdx, ecx
cmp byte [rdx + rdi], 0xbc
jne 0x140074f96
sub ebx, r14d
lea rcx, [rbp + 0x3d0]
dec ebx
mov r8, rdi
mov r9d, ebx
mov edx, 0x200
call fcn.140063dc0
movsxd r8, ebx
lea rcx, [rsp + 0x30]
add r8, rdi
mov r9d, r14d
mov edx, 0x40
call fcn.140063dc0
test byte [rbp + 0x3d0], 0x80
jne 0x140074f96
mov r9d, ebx
mov dword [rsp + 0x20], esi
lea r8, [rsp + 0x30]
mov edx, ebx
lea rcx, [rbp + 0x5d0]
call fcn.140074660
xor edi, edi
mov edx, edi
test ebx, ebx
jle 0x140074dc7
cmp ebx, 8
jb 0x140074dc7
cmp ebx, 0x40
jb 0x140074d80
mov ecx, ebx
and ecx, 0x8000003f
jge 0x140074ceb
dec ecx
or ecx, 0xffffffc0
inc ecx
mov eax, ebx
sub eax, ecx
mov rcx, rdi
movsxd r8, eax
nop word [rax + rax]
movdqu xmm0, xmmword [rbp + rcx + 0x3d0]
add edx, 0x40
movdqu xmm1, xmmword [rbp + rcx + 0x5d0]
movdqu xmm2, xmmword [rbp + rcx + 0x3e0]
xorps xmm1, xmm0
movdqu xmm0, xmmword [rbp + rcx + 0x5e0]
movdqu xmmword [rbp + rcx - 0x50], xmm1
movdqu xmm1, xmmword [rbp + rcx + 0x3f0]
xorps xmm2, xmm0
movdqu xmm0, xmmword [rbp + rcx + 0x5f0]
movdqu xmmword [rbp + rcx - 0x40], xmm2
movdqu xmm2, xmmword [rbp + rcx + 0x400]
xorps xmm1, xmm0
movdqu xmm0, xmmword [rbp + rcx + 0x600]
movdqu xmmword [rbp + rcx - 0x30], xmm1
xorps xmm2, xmm0
movdqu xmmword [rbp + rcx - 0x20], xmm2
add rcx, 0x40
cmp rcx, r8
jl 0x140074d00
mov eax, ebx
and al, 0x3f
cmp al, 8
jb 0x140074dc7
mov ecx, ebx
and ecx, 0x80000007
jge 0x140074d91
dec ecx
or ecx, 0xfffffff8
inc ecx
mov eax, ebx
sub eax, ecx
movsxd rcx, edx
movsxd r8, eax
nop dword [rax + rax]
movq xmm1, qword [rbp + rcx + 0x5d0]
add edx, 8
movq xmm0, qword [rbp + rcx + 0x3d0]
xorps xmm1, xmm0
movq qword [rbp + rcx - 0x50], xmm1
add rcx, 8
cmp rcx, r8
jl 0x140074da0
movsxd rax, edx
movsxd rdx, ebx
cmp rax, rdx
jge 0x140074dfb
nop dword [rax]
nop word [rax + rax]
movzx ecx, byte [rbp + rax + 0x5d0]
xor cl, byte [rbp + rax + 0x3d0]
mov byte [rbp + rax - 0x50], cl
inc rax
cmp rax, rdx
jl 0x140074de0
and byte [rbp - 0x50], 0x7f
mov r10d, ebx
sub r10d, r15d
xor r9b, r9b
dec r10d
mov r8d, edi
test r10d, r10d
jle 0x140074e97
cmp r10d, 0x20
jb 0x140074e97
mov edx, r10d
xorps xmm2, xmm2
xorps xmm1, xmm1
mov rcx, rdi
and edx, 0x8000001f
jge 0x140074e38
dec edx
or edx, 0xffffffe0
inc edx
mov eax, r10d
sub eax, edx
movsxd rdx, eax
movdqu xmm0, xmmword [rbp + rcx - 0x50]
add r8d, 0x20
orps xmm2, xmm0
movdqu xmm0, xmmword [rbp + rcx - 0x40]
add rcx, 0x20
orps xmm1, xmm0
cmp rcx, rdx
jl 0x140074e40
orps xmm1, xmm2
movdqa xmm0, xmm1
psrldq xmm0, 8
orps xmm1, xmm0
movdqa xmm0, xmm1
psrldq xmm0, 4
orps xmm1, xmm0
movdqa xmm0, xmm1
psrldq xmm0, 2
orps xmm1, xmm0
movdqa xmm0, xmm1
psrldq xmm0, 1
orps xmm1, xmm0
movd r9d, xmm1
movsxd rdx, r8d
movsxd r10, r10d
cmp rdx, r10
jge 0x140074ebd
movsxd rax, r8d
mov ecx, r10d
sub ecx, eax
add r8d, ecx
nop dword [rax]
or r9b, byte [rbp + rdx - 0x50]
inc rdx
cmp rdx, r10
jl 0x140074eb0
test r9b, r9b
jne 0x140074f96
movsxd rax, r8d
cmp byte [rbp + rax - 0x50], 1
jne 0x140074f96
cmp r15d, 0x80
jg 0x140074f96
movsxd rcx, ebx
lea r8, [rbp - 0x50]
sub rcx, r15
mov r9d, r15d
add r8, rcx
mov edx, 0x80
lea rcx, [rbp + 0x280]
call fcn.140063dc0
mov edx, 8
lea rcx, [rbp + 0x1b0]
call fcn.140063da0
mov r8d, r14d
lea rcx, [rbp + 0x1b8]
mov rdx, r13
call fcn.140063db0
lea rcx, [rbp + 0x1b8]
mov r8d, r15d
add rcx, r14
lea rdx, [rbp + 0x280]
call fcn.140063db0
mov edx, r14d
lea rcx, [rbp + 0x300]
call qword [r12]
lea r8d, [r14 + 8]
add r8d, r15d
lea rdx, [rbp + 0x1b0]
lea rcx, [rbp + 0x300]
call qword [r12 + reloc.OLEAUT32.dll_VariantClear]
mov r8d, r14d
lea rdx, [rsp + 0x70]
lea rcx, [rbp + 0x300]
call qword [r12 + reloc.WS2_32.dll_recv]
mov r8, r14
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0x30]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
sete dil
mov eax, edi
jmp 0x140074f98
xor eax, eax
mov rcx, qword [rbp + 0x7d0]
xor rcx, rsp
call fcn.1401f11e0
add rsp, 0x8e8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret