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

Disassembly:
push rbp
push rbx
push rdi
push r14
push r15
mov rbp, rsp
sub rsp, 0x70
mov eax, dword [0x1400a8ae0]
or r15d, 0xffffffff
movups xmm0, xmmword [str.PKCRPI_OWAdm]
mov dword [rbp - 8], eax
mov al, byte [0x1400a8ae4]
movups xmm1, xmmword [0x1400a8ac8]
mov byte [rbp - 4], al
mov eax, dword [0x1400a8df8]
movups xmmword [rbp - 0x30], xmm0
mov dword [rbp - 0x38], eax
movsd xmm0, qword [0x1400a8ad8]
movsd qword [rbp - 0x10], xmm0
movsd xmm0, qword [str.JjvrfdeNjxh]
movsd qword [rbp - 0x40], xmm0
movups xmmword [rbp - 0x20], xmm1
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov r8, qword [rax + 0x30]
movsxd rcx, dword [r8 + 0x3c]
mov r10d, dword [rcx + r8 + 0x88]
add r10, r8
cmp r10, r8
je 0x14000cbb1
mov r9d, dword [r10 + 0x18]
test r9d, r9d
je 0x14000cbb1
mov edi, dword [r10 + 0x20]
add r9d, r15d
mov r11d, 0xed35965e
lea rcx, [rdi + r9*4]
mov edx, dword [rcx + r8]
add rdx, r8
mov cl, byte [rdx]
inc rdx
test cl, cl
je 0x14000cbac
movsx ecx, cl
xor ecx, r11d
imul r11d, ecx, 0x37d89a
mov cl, byte [rdx]
inc rdx
test cl, cl
jne 0x14000cb8d
cmp r11d, 0x55441832
je 0x14000cbb6
test r9d, r9d
jne 0x14000cb70
mov rax, qword [rax]
jmp 0x14000cb4b
mov ecx, dword [r10 + 0x24]
movabs r14, 0x50850631d17d
add rcx, r8
movzx edx, word [rcx + r9*2]
mov ecx, dword [r10 + 0x1c]
add rcx, r8
mov r10d, dword [rcx + rdx*4]
lea rcx, [rbp - 0x30]
add r10, r8
xor r8d, r8d
lea r9d, [r8 + 0x2d]
mov rax, r8
inc r8
cqo
idiv r14
add dl, 3
xor byte [rcx], dl
inc rcx
sub r9, 1
jne 0x14000cbe5
lea rax, [rbp + 0x40]
mov r9d, 0x20019
xor r8d, r8d
mov qword [rsp + 0x20], rax
lea rdx, [rbp - 0x30]
mov rcx, 0xffffffff80000002
call r10
test eax, eax
je 0x14000cc29
xor eax, eax
jmp 0x14000ce3f
mov dword [rbp + 0x30], 4
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov r8, qword [rax + 0x30]
movsxd rcx, dword [r8 + 0x3c]
mov r10d, dword [rcx + r8 + 0x88]
add r10, r8
cmp r10, r8
je 0x14000cca7
mov r9d, dword [r10 + 0x18]
test r9d, r9d
je 0x14000cca7
mov edi, dword [r10 + 0x20]
add r9d, r15d
mov r11d, 0x27f8d6e0
lea rcx, [rdi + r9*4]
mov edx, dword [rcx + r8]
add rdx, r8
mov cl, byte [rdx]
inc rdx
test cl, cl
je 0x14000cca2
movsx ecx, cl
xor ecx, r11d
imul r11d, ecx, 0x37d89a
mov cl, byte [rdx]
inc rdx
test cl, cl
jne 0x14000cc83
cmp r11d, 0x29a670b2
je 0x14000ccac
test r9d, r9d
jne 0x14000cc66
mov rax, qword [rax]
jmp 0x14000cc41
mov ecx, dword [r10 + 0x24]
add rcx, r8
movzx edx, word [rcx + r9*2]
mov ecx, dword [r10 + 0x1c]
add rcx, r8
mov r10d, dword [rcx + rdx*4]
lea rcx, [rbp - 0x40]
add r10, r8
xor r8d, r8d
lea r9d, [r8 + 0xc]
mov rax, r8
inc r8
cqo
idiv r14
add dl, 3
xor byte [rcx], dl
inc rcx
sub r9, 1
jne 0x14000ccd1
mov rcx, qword [rbp + 0x40]
lea rax, [rbp + 0x30]
mov qword [rsp + 0x28], rax
lea rdx, [rbp - 0x40]
lea rax, [rbp + 0x38]
xor r8d, r8d
mov qword [rsp + 0x20], rax
call r10
mov rcx, qword gs:[0x60]
test eax, eax
mov rax, qword [rcx + 0x18]
mov rax, qword [rax + 0x10]
je 0x14000cdb2
mov r8, qword [rax + 0x30]
movsxd rcx, dword [r8 + 0x3c]
mov r9d, dword [rcx + r8 + 0x88]
add r9, r8
cmp r9, r8
je 0x14000cd89
mov r10d, dword [r9 + 0x18]
test r10d, r10d
je 0x14000cd89
mov edi, dword [r9 + 0x20]
add r10d, r15d
mov r11d, 0x8c3c2122
lea rcx, [rdi + r10*4]
mov edx, dword [rcx + r8]
add rdx, r8
mov cl, byte [rdx]
inc rdx
test cl, cl
je 0x14000cd84
movsx ecx, cl
xor ecx, r11d
imul r11d, ecx, 0x37d89a
mov cl, byte [rdx]
inc rdx
test cl, cl
jne 0x14000cd65
cmp r11d, 0xceda2346
je 0x14000cd8e
test r10d, r10d
jne 0x14000cd48
mov rax, qword [rax]
jmp 0x14000cd23
mov ecx, dword [r9 + 0x24]
add rcx, r8
movzx edx, word [rcx + r10*2]
mov ecx, dword [r9 + 0x1c]
add rcx, r8
mov eax, dword [rcx + rdx*4]
mov rcx, qword [rbp + 0x40]
add rax, r8
call rax
jmp 0x14000cc22
mov r8, qword [rax + 0x30]
movsxd rcx, dword [r8 + 0x3c]
mov r9d, dword [rcx + r8 + 0x88]
add r9, r8
cmp r9, r8
je 0x14000ce18
mov r10d, dword [r9 + 0x18]
test r10d, r10d
je 0x14000ce18
mov edi, dword [r9 + 0x20]
add r10d, r15d
mov r11d, 0x2e1c7ddc
lea rcx, [rdi + r10*4]
mov edx, dword [rcx + r8]
add rdx, r8
mov cl, byte [rdx]
inc rdx
test cl, cl
je 0x14000ce13
movsx ecx, cl
xor ecx, r11d
imul r11d, ecx, 0x37d89a
mov cl, byte [rdx]
inc rdx
test cl, cl
jne 0x14000cdf4
cmp r11d, 0xe465b346
je 0x14000ce1d
test r10d, r10d
jne 0x14000cdd7
mov rax, qword [rax]
jmp 0x14000cdb2
mov ecx, dword [r9 + 0x24]
add rcx, r8
movzx edx, word [rcx + r10*2]
mov ecx, dword [r9 + 0x1c]
add rcx, r8
mov eax, dword [rcx + rdx*4]
mov rcx, qword [rbp + 0x40]
add rax, r8
call rax
mov eax, dword [rbp + 0x38]
add rsp, 0x70
pop r15
pop r14
pop rdi
pop rbx
pop rbp
ret