Function at 0x18002e3a0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xd0]
sub rsp, 0x1d0
mov rax, qword [0x1800c8010]
xor rax, rsp
mov qword [rbp + 0xc0], rax
mov rdi, r8
mov rsi, rdx
mov r14, rcx
mov qword [rbp + 0x18], rcx
mov qword [rbp + 0x20], rdx
mov qword [rbp + 0x28], r8
mov rdx, qword [rcx + 0x10]
test rdx, rdx
je 0x18002e75e
mov rcx, qword [rsi + 0x10]
test rcx, rcx
je 0x18002e75e
mov rax, qword [r8 + 0x10]
add rax, rcx
add rdx, 0x104
add rax, rdx
mov qword [rbp + 0x10], rax
lea rdx, [rax + rax]
mov ecx, 0x40
call qword [sym.imp.KERNEL32.dll_LocalAlloc]
mov qword [rbp - 0x80], rax
test rax, rax
je 0x18002e75e
movsd xmm1, qword [0x1800ba7d0]
movq rdx, xmm1
lea rcx, [0x1800a7d98]
call fcn.18000ba10
xor edx, edx
cmp qword [rdi + 0x10], rdx
jne 0x18002e465
mov dword [rsp + 0x50], 0xbaf5
mov word [rsp + 0x52], dx
lea r15, [rsp + 0x52]
jmp 0x18002e472
mov r15, rdi
cmp qword [rdi + 0x18], 8
jb 0x18002e472
mov r15, qword [rdi]
mov r13, rsi
cmp qword [rsi + 0x18], 8
jb 0x18002e47f
mov r13, qword [rsi]
mov r12, r14
cmp qword [r14 + 0x18], 8
jb 0x18002e48c
mov r12, qword [r14]
movdqa xmm0, xmmword [0x1800babb0]
movdqu xmmword [rbp - 0x50], xmm0
movdqa xmm1, xmmword [0x1800bac60]
movdqu xmmword [rbp - 0x40], xmm1
movdqa xmm0, xmmword [0x1800bc560]
movdqu xmmword [rbp - 0x30], xmm0
movdqa xmm1, xmmword [0x1800baba0]
movdqu xmmword [rbp - 0x20], xmm1
movdqa xmm0, xmmword [0x1800bc5a0]
movdqu xmmword [rbp - 0x10], xmm0
mov dword [rbp], 0x77060172
mov dword [rbp + 4], 0x72740600
mov word [rbp + 8], 7
mov rcx, rdx
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rbp - 0x50]
xor byte [rbp + rcx - 0x4f], al
movzx eax, byte [rbp - 0x50]
xor byte [rbp + rcx - 0x4e], al
add rcx, 2
cmp rcx, 0x58
jb 0x18002e4f0
mov byte [rbp + 9], dl
mov qword [rsp + 0x68], rdx
mov qword [rsp + 0x70], 0xf
mov byte [rsp + 0x58], dl
lea rax, [rbp - 0x4f]
mov rbx, 0xffffffffffffffff
mov r8, rbx
nop dword [rax]
inc r8
cmp byte [rax + r8], dl
jne 0x18002e530
lea rdx, [rbp - 0x4f]
lea rcx, [rsp + 0x58]
call fcn.18000b0f0
nop
lea rdx, [rsp + 0x58]
lea rcx, [rbp - 0x78]
call fcn.18000a230
cmp qword [rax + 0x18], 8
jb 0x18002e560
mov rax, qword [rax]
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], r13
mov r9, r12
mov r8, rax
mov rdx, qword [rbp + 0x10]
mov r15, qword [rbp - 0x80]
mov rcx, r15
call fcn.180025c40
mov rdx, qword [rbp - 0x60]
cmp rdx, 8
jb 0x18002e5c0
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18002e5bb
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18002e7aa
call fcn.180055890
xor r12d, r12d
mov qword [rbp - 0x68], r12
mov qword [rbp - 0x60], 7
mov word [rbp - 0x78], r12w
mov rdx, qword [rsp + 0x70]
cmp rdx, 0x10
jb 0x18002e611
inc rdx
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18002e60c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18002e7a4
call fcn.180055890
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x54], xmm0
movups xmmword [rbp + 0x64], xmm0
movups xmmword [rbp + 0x74], xmm0
movups xmmword [rbp + 0x84], xmm0
movups xmmword [rbp + 0x94], xmm0
movups xmmword [rbp + 0xa4], xmm0
mov dword [rbp + 0xb4], eax
movups xmmword [rbp + 0x30], xmm0
mov qword [rbp + 0x40], rax
mov dword [rbp + 0x50], 0x68
movdqa xmm0, xmmword [0x1800bb760]
movdqu xmmword [rsp + 0x58], xmm0
movdqa xmm1, xmmword [0x1800bbdb0]
movdqu xmmword [rsp + 0x68], xmm1
mov dword [rsp + 0x78], 0x4c405150
mov byte [rsp + 0x7c], al
mov rax, r12
movdqa xmm1, xmmword [0x1800bad30]
nop
movdqu xmm0, xmmword [rsp + rax + 0x58]
psubb xmm0, xmm1
movdqu xmmword [rsp + rax + 0x58], xmm0
add rax, 0x10
cmp rax, 0x20
jb 0x18002e680
cmp rax, 0x24
jae 0x18002e6ae
add byte [rsp + rax + 0x58], 0xf5
inc rax
cmp rax, 0x24
jb 0x18002e6a0
mov qword [rbp - 0x68], r12
mov qword [rbp - 0x60], 0xf
mov byte [rbp - 0x78], 0
lea rax, [rsp + 0x58]
inc rbx
cmp byte [rax + rbx], 0
jne 0x18002e6c3
mov r8, rbx
lea rdx, [rsp + 0x58]
lea rcx, [rbp - 0x78]
call fcn.18000b0f0
lea rdx, [rbp - 0x78]
call fcn.18000a540
lea rcx, [rbp + 0x30]
mov qword [rsp + 0x48], rcx
lea rcx, [rbp + 0x50]
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x28], 0x8000000
mov dword [rsp + 0x20], r12d
xor r9d, r9d
xor r8d, r8d
mov rdx, r15
xor ecx, ecx
call rax
mov ebx, eax
movsd xmm1, qword [0x1800ba7d0]
movq rdx, xmm1
lea rcx, [0x1800a7d98]
call fcn.18000ba10
mov rcx, r15
call fcn.18000cfe0
nop
mov rcx, r14
call fcn.18000af00
nop
mov rcx, rsi
call fcn.18000af00
nop
mov rcx, rdi
call fcn.18000af00
mov eax, ebx
jmp 0x18002e77a
mov rcx, r14
call fcn.18000af00
nop
mov rcx, rsi
call fcn.18000af00
nop
mov rcx, rdi
call fcn.18000af00
xor eax, eax
mov rcx, qword [rbp + 0xc0]
xor rcx, rsp
call fcn.1800555d0
mov rbx, qword [rsp + 0x228]
add rsp, 0x1d0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.180067178
nop
call fcn.180067178
int3