Function at 0x14006d010
Capabilities:
Encode data using xor
Enumerate process modules
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
sub rsp, 0x350
lea rbp, [rsp + 0x40]
and rbp, 0xffffffffffffffe0
mov rax, qword [0x14015f0c8]
xor rax, rsp
mov qword [rbp + 0x300], rax
mov r12, rdx
mov r14, rcx
mov ecx, 4
mov rax, qword gs:[0x58]
mov rax, qword [rax]
xor ebx, ebx
mov eax, dword [rcx + rax]
cmp dword [0x140170d68], eax
jle 0x14006d138
lea rcx, [0x140170d68]
call fcn.1400ceb88
cmp dword [0x140170d68], 0xffffffff
jne 0x14006d138
xorps xmm0, xmm0
movups xmmword [0x140170d70], xmm0
movups xmmword [0x140170d80], xmm0
movups xmmword [0x140170d90], xmm0
movups xmmword [0x140170da0], xmm0
mov dword [rbp], ebx
mov eax, ebx
mov dword [0x140170d70], ebx
mov qword [0x140170d78], rbx
mov qword [0x140170d80], rbx
mov ecx, 0x268
call fcn.1400cec00
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [0x140170d78], rax
mov qword [0x140170d88], rbx
xorps xmm0, xmm0
movdqu xmmword [0x140170d90], xmm0
mov qword [0x140170da0], 7
mov qword [0x140170da8], 8
mov dword [0x140170d70], 0x3f800000
mov r8, rax
lea edx, [rbx + 0x10]
lea rcx, [0x140170d88]
call fcn.140009440
nop
lea rcx, [0x1400d9470]
call fcn.1400cee74
nop
lea rcx, [0x140170d68]
call fcn.1400ceb1c
xorps xmm0, xmm0
movups xmmword [rbp + 0x20], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x30], xmm1
mov r8, qword [r12 + 8]
mov rdx, qword [r12]
lea rcx, [rbp + 0x20]
call fcn.14000acd0
lea rcx, [rbp + 0x20]
cmp qword [rbp + 0x38], 0x10
cmovae rcx, qword [rbp + 0x20]
movabs r9, 0xcbf29ce484222325
mov rdx, qword [rbp + 0x30]
test rdx, rdx
je 0x14006d1a3
movabs r8, 0x100000001b3
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rbx + rcx]
xor r9, rax
imul r9, r8
inc rbx
cmp rbx, rdx
jb 0x14006d190
lea r8, [rbp + 0x20]
lea rdx, [rbp + 0x60]
call fcn.14006e6f0
mov rcx, qword [rax + 8]
mov rdi, qword [0x140170d78]
mov rbx, rdi
test rcx, rcx
cmovne rbx, rcx
lea rcx, [rbp + 0x20]
call fcn.1400092b0
cmp rbx, rdi
je 0x14006d295
xorps xmm0, xmm0
movups xmmword [rbp + 0x20], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x30], xmm1
mov r8, qword [r12 + 8]
mov rdx, qword [r12]
lea rcx, [rbp + 0x20]
call fcn.14000acd0
nop
lea r8, [rbp + 0x20]
lea rdx, [rbp + 0x60]
call fcn.14006e060
mov rax, qword [rax]
add rax, 0x30
mov rcx, r14
mov ebx, 4
nop word [rax + rax]
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rax, [rax + 0x80]
sub rbx, 1
jne 0x14006d220
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
mov rax, qword [rax + 0x30]
mov qword [rcx + 0x30], rax
jmp 0x14006d470
mov edx, dword [0x140170d6c]
mov ecx, 0x18
call qword [sym.imp.KERNEL32.dll_CreateToolhelp32Snapshot]
mov r15, rax
mov dword [r14], 0x238
test rax, rax
je 0x14006d4ac
mov rdx, r14
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_Module32First]
mov rdx, r14
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_Module32Next]
test eax, eax
je 0x14006d32c
mov rsi, qword [r12 + 8]
mov r13, qword [r12]
nop
mov rbx, 0xffffffffffffffff
nop word [rax + rax]
inc rbx
cmp byte [r14 + rbx + 0x30], 0
jne 0x14006d2f0
mov r8, rsi
cmp rbx, rsi
cmovb r8, rbx
lea rdx, [r14 + 0x30]
mov rcx, r13
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x14006d31c
cmp rsi, rbx
jb 0x14006d31c
jbe 0x14006d32c
mov rdx, r14
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_Module32Next]
test eax, eax
jne 0x14006d2e0
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rax, r14
lea rcx, [rbp + 0x78]
mov ebx, 4
mov edx, ebx
nop dword [rax]
nop word [rax + rax]
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rax, [rax + 0x80]
sub rdx, 1
jne 0x14006d350
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
mov rax, qword [rax + 0x30]
mov qword [rcx + 0x30], rax
xorps xmm0, xmm0
movups xmmword [rbp + 0x20], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x30], xmm1
mov r8, qword [r12 + 8]
mov rdx, qword [r12]
lea rcx, [rbp + 0x20]
call fcn.14000acd0
nop
lea r8, [rbp + 0x20]
lea rdx, [rbp + 0x60]
call fcn.14006e060
mov rcx, qword [rax]
add rcx, 0x30
lea rax, [rbp + 0x78]
nop word [rax + rax]
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rax, [rax + 0x80]
sub rbx, 1
jne 0x14006d400
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
mov rax, qword [rax + 0x30]
mov qword [rcx + 0x30], rax
lea rcx, [rbp + 0x20]
call fcn.1400092b0
mov rax, r14
mov rcx, qword [rbp + 0x300]
xor rcx, rsp
call fcn.1400ceac0
lea r11, [rsp + 0x350]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
movabs rax, 0xfacc1fb4450888e2
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x20], rax
movabs rax, 0x2df50ea5eccb69d
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x28], rax
movabs rax, 0x9d31668927c615de
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x30], rax
movabs rax, 0xe778359b06f19dba
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x38], rax
movabs rax, 0x69a36abd1f5d089
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x40], rax
movabs rax, 0xf774a3e80b571ad0
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x48], rax
movabs rax, 0x62d82edeba275259
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x50], rax
movabs rax, 0x24e39951af56dc72
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x58], rax
movabs rax, 0x979366c62a65ed8f
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x2c0], rax
movabs rax, 0x38e5228f39add8fc
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x2c8], rax
movabs rax, 0xe85509e478b270b9
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x2d0], rax
movabs rax, 0x9e0a41f563aef8d6
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x2d8], rax
movabs rax, 0x62ff5ac2b093f0b3
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x2e0], rax
movabs rax, 0x9611d18b2b386ef0
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x2e8], rax
movabs rax, 0x11a84fb0c907372d
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x2f0], rax
movabs rax, 0x24e39951af22b31a
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x2f8], rax
vmovdqu ymm0, ymmword [rbp + 0x2c0]
vpxor ymm1, ymm0, ymmword [rbp + 0x20]
vmovdqa ymmword [rbp + 0x20], ymm1
vmovdqu ymm0, ymmword [rbp + 0x40]
vpxor ymm1, ymm0, ymmword [rbp + 0x2e0]
vmovdqa ymmword [rbp + 0x40], ymm1
lea rdx, [rbp + 0x20]
lea rcx, [rbp + 0x60]
vzeroupper
call fcn.140002c90
lea rdx, [0x14015bb48]
lea rcx, [rbp + 0x60]
call sub.VCRUNTIME140.dll__CxxThrowException
int3