Function at 0x140014fe0
Capabilities:
Access peb ldr_data
Encode data using xor
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x27]
sub rsp, 0xe0
mov rax, qword [0x14007c040]
xor rax, rsp
mov qword [rbp + 0x1f], rax
mov r10, rdx
mov rdi, rcx
xor r9d, r9d
call fcn.140003760
movsx r15d, al
mov dword [rbp - 0x71], r15d
call fcn.140003750
movsx r13d, al
mov dword [rsp + 0x38], r13d
mov r12d, r13d
imul r12d, r15d
call fcn.140003790
movsx esi, al
mov dword [rbp - 0x79], esi
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add eax, esi
lea eax, [rax + r12*2]
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
movsx ecx, byte [0x14007c0db]
sub eax, ecx
je 0x1400159a9
movsx eax, byte [0x14007c0da]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14007c0dc]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mov ecx, r9d
mov eax, dword [0x14007d2c0]
cmp dword [0x14007d2c4], eax
setg cl
xorps xmm0, xmm0
cvtsi2sd xmm0, rcx
mulsd xmm1, xmm0
movsd qword [rsp + 0x30], xmm1
lea r14d, [rsi + r12*2]
add r14d, r12d
mov dword [rbp - 0x75], r14d
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add eax, r14d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
movsx ecx, byte [0x14007c0db]
lea ebx, [r9 + 7]
cmp eax, ecx
je 0x140015119
call fcn.140003770
movsx edx, al
movsx eax, byte [0x14007d2e0]
imul edx, eax
shl edx, 3
call fcn.1400037a0
movsx ecx, al
sub edx, ecx
call fcn.140003780
movsx ecx, al
add edx, ecx
movsx ecx, byte [0x14007c0dc]
add ecx, edx
je 0x140015119
mov r9d, ebx
jmp 0x14001517d
lea ecx, [r12 + r12*4]
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add eax, ecx
add eax, esi
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
movsx ecx, byte [0x14007c0db]
cmp eax, ecx
je 0x140015178
lea ecx, [r12 + rsi]
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
lea ecx, [rcx + r12*8]
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
movsx ecx, byte [0x14007c0db]
sub eax, ecx
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si r9d, xmm0
jmp 0x14001517d
mov r9d, dword [rsp + 0x38]
imul ecx, r12d, 7
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, esi
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
movsx ecx, byte [0x14007c0db]
sub eax, ecx
imul eax, r9d
test eax, eax
je 0x1400159a9
mov rdx, r10
lea rcx, [rbp - 1]
call sym.Stunner.exe_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t_____cdecl_stw_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const____ptr64_
nop
lea rax, [rbp + 0xd]
xor al, 0xba
mov byte [rbp - 0x69], al
lea rax, [rbp - 9]
shr rax, 8
add al, 0x16
xor al, 0xbb
mov byte [rbp - 0x68], al
lea rax, [rbp - 9]
shr rax, 0x10
add al, 0x16
xor al, 0xbc
mov byte [rbp - 0x67], al
lea rax, [rbp - 9]
shr rax, 0x18
add al, 0x16
xor al, 0xbd
mov byte [rbp - 0x66], al
lea rax, [rbp - 9]
shr rax, 0x20
add al, 0x16
xor al, 0xbe
mov byte [rbp - 0x65], al
lea rax, [rbp - 9]
shr rax, 0x28
add al, 0x16
xor al, 0xbf
mov byte [rbp - 0x64], al
lea rax, [rbp - 9]
shr rax, 0x30
add al, 0x16
xor al, 0xc0
mov byte [rbp - 0x63], al
lea rax, [rbp - 9]
shr rax, 0x38
add al, 0x16
xor al, 0xc1
mov byte [rbp - 0x62], al
xor eax, eax
mov qword [rbp - 0x61], rax
mov dword [rbp - 0x59], eax
xor r10d, r10d
mov qword [rsp + 0x30], r10
mov rax, qword [rsp + 0x30]
movabs r9, 0xc92e4ad671f86eba
nop dword [rax + rax]
mov r8, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
movzx edx, byte [rbp + rax - 0x69]
add r8, r9
mov eax, edx
and rax, r8
imul rcx, rax, 0xfffffffffffffffe
add rcx, rdx
add rcx, r8
sub cl, 0x16
mov rax, qword [rsp + 0x30]
mov byte [rbp + rax - 0x69], cl
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0x14
jb 0x140015250
mov dword [rbp - 0x29], 0x636a6581
xorps xmm0, xmm0
movups xmmword [rbp - 0x25], xmm0
mov qword [rsp + 0x30], r10
mov rax, qword [rsp + 0x30]
movabs r9, 0x1ed1a5e91b7ab991
nop word [rax + rax]
mov r8, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
movzx edx, byte [rbp + rax - 0x29]
add r8, r9
mov eax, edx
and rax, r8
imul rcx, rax, 0xfffffffffffffffe
add rcx, rdx
add rcx, r8
add cl, 9
mov rax, qword [rsp + 0x30]
mov byte [rbp + rax - 0x29], cl
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0x14
jb 0x1400152c0
mov dword [rbp - 0x49], 0x5b5a5958
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp - 0x45], xmm0
mov word [rbp - 0x35], ax
mov byte [rbp - 0x33], al
mov qword [rsp + 0x30], r10
mov rax, qword [rsp + 0x30]
movabs r9, 0xe68d49ca63d82d8c
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
movzx edx, byte [rbp + rax - 0x49]
add rcx, r9
mov rax, rcx
and rax, rdx
imul r8, rax, 0xfffffffffffffffe
add r8, rcx
add r8, rdx
add r8b, 0x2c
mov rax, qword [rsp + 0x30]
mov byte [rbp + rax - 0x49], r8b
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0x17
jb 0x140015330
lea rdx, [rbp - 1]
cmp qword [rbp + 0x17], 7
cmova rdx, qword [rbp - 1]
mov rax, qword [rbp - 0x69]
mov qword [rsp + 0x20], rax
mov r9d, dword [rbp - 0x29]
mov r8d, dword [rbp - 0x49]
mov rcx, rdi
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
mov r9d, eax
movsx ecx, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, esi
lea eax, [rcx + r12*4]
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
movsx ecx, byte [0x14007c0db]
xor r10d, r10d
cmp eax, ecx
je 0x1400157cf
movsx eax, byte [0x14007c0da]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14007c0dc]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mov eax, r10d
test r9d, r9d
sete al
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm1, xmm0
movsd qword [rsp + 0x30], xmm1
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add eax, r14d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
movsx ecx, byte [0x14007c0db]
cmp eax, ecx
je 0x140015462
call fcn.140003770
movsx edx, al
movsx eax, byte [0x14007d2e0]
imul edx, eax
shl edx, 3
call fcn.1400037a0
movsx ecx, al
sub edx, ecx
call fcn.140003780
movsx ecx, al
add edx, ecx
movsx ecx, byte [0x14007c0dc]
add ecx, edx
jne 0x1400154c5
lea r9d, [r12 + r12*4]
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add eax, r9d
add eax, esi
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
movsx ecx, byte [0x14007c0db]
cmp eax, ecx
je 0x1400154c1
lea ecx, [r12 + rsi]
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
lea ecx, [rcx + r12*8]
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
movsx ecx, byte [0x14007c0db]
sub eax, ecx
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si ebx, xmm0
jmp 0x1400154c5
mov ebx, dword [rsp + 0x38]
lea edi, [rsi + r12*8]
add edi, r12d
mov dword [rsp + 0x30], edi
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add eax, edi
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
movsx ecx, byte [0x14007c0db]
sub eax, ecx
imul eax, ebx
test eax, eax
je 0x1400157cf
mov rdx, qword [0x14007d080]
test rdx, rdx
jne 0x1400156b4
mov r11d, r10d
mov r10d, 0x31a196c9
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov r13, qword [rax]
mov rsi, r13
nop dword [rax + rax]
movups xmm0, xmmword [rsi + 0x58]
movd eax, xmm0
sub ax, 8
test r11d, r11d
je 0x14001557d
psrldq xmm0, 8
movq rcx, xmm0
movzx eax, ax
shr rax, 1
lea r8, [rcx + rax*2]
mov edx, 0x2db532a4
cmp rcx, r8
je 0x140015574
nop
movsx eax, byte [rcx]
xor eax, edx
imul edx, eax, 0x1000193
add rcx, 2
cmp rcx, r8
jne 0x140015560
cmp edx, r11d
jne 0x14001567d
mov r9, qword [rsi + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov rcx, qword [rax + r9 + 0x88]
mov r15, rcx
shr r15, 0x20
mov edi, ecx
add rdi, r9
cmp rdi, r9
je 0x14001567d
mov r8d, dword [rdi + 0x18]
test r8d, r8d
je 0x14001567d
mov r14d, dword [rdi + 0x20]
nop dword [rax]
nop word [rax + rax]
dec r8d
lea rax, [r9 + r8*4]
mov ecx, dword [rax + r14]
add rcx, r9
mov edx, 0x2db532a4
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x1400155f6
nop dword [rax]
movsx eax, al
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx]
lea rcx, [rcx + 1]
test al, al
jne 0x1400155e0
cmp edx, r10d
je 0x140015602
test r8d, r8d
jne 0x1400155c0
jmp 0x14001567d
mov ecx, dword [rdi + 0x1c]
add rcx, r9
mov eax, dword [rdi + 0x24]
add rax, r9
movzx eax, word [rax + r8*2]
mov edx, dword [rcx + rax*4]
add rdx, r9
cmp rdx, rdi
jbe 0x140015699
lea rax, [r15 + rdi]
cmp rdx, rax
jae 0x140015699
mov r11d, 0x2db532a4
mov r10d, r11d
movzx eax, byte [rdx]
cmp al, 0x2e
je 0x140015657
nop word [rax + rax]
movsx eax, al
xor eax, r11d
imul r11d, eax, 0x1000193
inc rdx
movzx eax, byte [rdx]
cmp al, 0x2e
jne 0x140015640
inc rdx
movzx eax, byte [rdx]
test al, al
je 0x140015679
movsx eax, al
xor eax, r10d
imul r10d, eax, 0x1000193
lea rdx, [rdx + 1]
movzx eax, byte [rdx]
test al, al
jne 0x140015661
mov rsi, qword [r13]
mov rax, qword [rsi]
mov rsi, rax
cmp rax, r13
je 0x140015693
cmp qword [rax + 0x30], 0
jne 0x140015530
xor r10d, r10d
mov edx, r10d
mov qword [0x14007d080], rdx
mov esi, dword [rbp - 0x79]
mov edi, dword [rsp + 0x30]
mov r14d, dword [rbp - 0x75]
mov r15d, dword [rbp - 0x71]
mov r13d, dword [rsp + 0x38]
mov rcx, qword [rbp - 9]
call rdx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add eax, r12d
add eax, esi
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
movsx ecx, byte [0x14007c0db]
sub eax, ecx
xorps xmm2, xmm2
cvtsi2sd xmm2, rax
movsx eax, byte [0x14007c0da]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14007c0dc]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add eax, r14d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
movsx ecx, byte [0x14007c0db]
cmp eax, ecx
je 0x140015766
call fcn.140003770
movsx edx, al
movsx eax, byte [0x14007d2e0]
imul edx, eax
shl edx, 3
call fcn.1400037a0
movsx ecx, al
sub edx, ecx
call fcn.140003780
movsx ecx, al
add edx, ecx
movsx ecx, byte [0x14007c0dc]
add ecx, edx
jne 0x1400157c8
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
lea ecx, [r12 + r12*4]
add eax, ecx
add eax, esi
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
movsx ecx, byte [0x14007c0db]
cmp eax, ecx
je 0x1400157bc
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add eax, edi
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
movsx ecx, byte [0x14007c0db]
sub eax, ecx
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
jmp 0x1400157c0
mov eax, dword [rsp + 0x38]
xor r10d, r10d
cmp r10d, eax
jge 0x1400157cf
mov bl, 1
jmp 0x140015925
imul r15d, r13d
imul ecx, r15d, 7
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, esi
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
movsx ecx, byte [0x14007c0db]
sub eax, ecx
xorps xmm2, xmm2
cvtsi2sd xmm2, rax
movsx eax, byte [0x14007c0da]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14007c0dc]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add eax, r14d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
movsx ecx, byte [0x14007c0db]
cmp eax, ecx
je 0x140015886
call fcn.140003770
movsx edx, al
movsx eax, byte [0x14007d2e0]
imul edx, eax
shl edx, 3
call fcn.1400037a0
movsx ecx, al
sub edx, ecx
call fcn.140003780
movsx ecx, al
add edx, ecx
movsx ecx, byte [0x14007c0dc]
add ecx, edx
jne 0x140015923
call fcn.140003760
movsx edx, al
call fcn.140003750
movsx ecx, al
imul edx, ecx
lea r8d, [rdx + rdx*4]
call fcn.140003790
movsx ecx, al
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, r8d
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
movsx ecx, byte [0x14007c0db]
cmp eax, ecx
je 0x14001591a
call fcn.140003760
movsx edx, al
call fcn.140003750
movsx ecx, al
imul edx, ecx
lea r9d, [rdx + rdx*8]
call fcn.140003790
movsx eax, al
add eax, r9d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantCopy]
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
movsx ecx, byte [0x14007c0db]
sub eax, ecx
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
jmp 0x14001591e
mov eax, dword [rsp + 0x38]
cmp r10d, eax
jge 0x140015966
xor bl, bl
mov rdx, qword [rbp + 0x17]
cmp rdx, 7
jbe 0x140015961
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 1]
mov r8, rcx
cmp rdx, 0x1000
jb 0x14001595c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub r8, rcx
add r8, 0xfffffffffffffff8
cmp r8, 0x1f
ja 0x14001599d
call fcn.14006f7a0
movzx eax, bl
jmp 0x1400159a9
mov rdx, qword [rbp + 0x17]
cmp rdx, 7
jbe 0x1400159a9
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 1]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400159a4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400159a4
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14006f7a0
mov rcx, qword [rbp + 0x1f]
xor rcx, rsp
call fcn.14006f780
mov rbx, qword [rsp + 0x130]
add rsp, 0xe0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret