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

Disassembly:
push rbp
lea rbp, [rsp - 0x57]
sub rsp, 0x90
cmp word [0x1401e792a], 0
mov eax, dword [0x1401e7928]
vpxor xmm0, xmm0, xmm0
vmovups ymmword [rbp + 0x27], ymm0
vmovups xmmword [rbp + 0x47], xmm0
vmovups xmm0, xmmword [0x1401e7918]
vmovups xmmword [rbp - 9], xmm0
mov dword [rbp + 0x67], 0
mov dword [rbp + 7], eax
je 0x140103f19
xor word [rbp - 7], 0x37
mov eax, WSAGetLastError
xor word [rbp - 5], 0x38
xor word [rbp - 3], 0x39
xor word [rbp - 1], 0x3a
xor word [rbp + 1], 0x3b
xor word [rbp + 3], 0x3c
xor word [rbp + 5], 0x3d
xor word [rbp + 7], 0x3e
xor word [rbp + 9], 0x3f
mov word [rbp - 9], ax
lea rcx, [rbp - 9]
vzeroupper
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
lea rcx, [rax - 1]
cmp rcx, 0xfffffffffffffffd
ja 0x140104260
cmp byte [reloc.WLDAP32.dll_Ordinal_79], 0
vmovups xmm0, xmmword [str.xCiL_IEtPY_3__0___]
movzx ecx, word [0x1401e7948]
vmovups xmmword [rbp + 0xb], xmm0
vmovsd xmm0, qword [0x1401e7940]
vmovsd qword [rbp + 0x1b], xmm0
mov qword [rsp + 0xa8], rbx
mov word [rbp + 0x23], cx
je 0x140103fd2
xor byte [rbp + 0xc], 0x37
xor byte [rbp + 0xd], 0x38
xor byte [rbp + 0xe], 0x39
xor byte [rbp + 0xf], 0x3a
xor byte [rbp + 0x10], 0x3b
xor byte [rbp + 0x11], 0x3c
xor byte [rbp + 0x12], 0x3d
xor byte [rbp + 0x13], 0x3e
xor byte [rbp + 0x14], 0x3f
xor byte [rbp + 0x15], 0x40
xor byte [rbp + 0x16], 0x41
xor byte [rbp + 0x17], 0x42
xor byte [rbp + 0x18], 0x43
xor byte [rbp + 0x19], 0x44
xor byte [rbp + 0x1a], 0x45
xor byte [rbp + 0x1b], 0x46
xor byte [rbp + 0x1c], 0x47
xor byte [rbp + 0x1d], 0x48
xor byte [rbp + 0x1e], 0x49
xor byte [rbp + 0x1f], 0x4a
xor byte [rbp + 0x20], 0x4b
xor byte [rbp + 0x21], 0x4c
xor byte [rbp + 0x22], 0x4d
xor byte [rbp + 0x23], 0x4e
xor byte [rbp + 0x24], 0x4f
mov byte [rbp + 0xb], Ordinal_79
lea rdx, [rbp + 0xb]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rbx, rax
test rax, rax
je 0x140104258
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
lea rcx, [rbp + 0x67]
mov r9d, Ordinal_50
mov qword [rsp + 0x20], rcx
lea r8, [rbp + 0x27]
mov rcx, rax
xor edx, edx
call rbx
test eax, eax
js 0x140104258
mov rax, qword [rbp + 0x2f]
test rax, rax
je 0x140104258
cmp byte [rax + 2], 0
je 0x140104258
mov byte [0x1403178e2], 1
mov rax, qword gs:[0x60]
mov qword [rsp + 0xb0], rdi
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov ebx, dword [rcx + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x1401040c7
mov r9d, dword [rbx + 0x18]
test r9d, r9d
je 0x1401040c7
mov edi, dword [rbx + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0x811c9dc5
lea rcx, [rdi + r9*4]
mov edx, dword [rcx + r10]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x1401040c2
nop
movsx ecx, cl
lea rdx, [rdx + 1]
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx - 1]
test cl, cl
jne 0x1401040a0
cmp r8d, 0xcded1a85
je 0x1401040cc
test r9d, r9d
jne 0x140104080
mov rax, qword [rax]
jmp 0x140104050
mov ecx, dword [rbx + 0x24]
add rcx, r10
movzx edx, word [rcx + r9*2]
mov ecx, dword [rbx + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
xor ecx, ecx
add rax, r10
call rax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov ebx, dword [rcx + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x140104177
mov r9d, dword [rbx + 0x18]
test r9d, r9d
je 0x140104177
mov edi, dword [rbx + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0x811c9dc5
lea rcx, [rdi + r9*4]
mov edx, dword [rcx + r10]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140104172
nop
movsx ecx, cl
lea rdx, [rdx + 1]
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx - 1]
test cl, cl
jne 0x140104150
cmp r8d, 0xe80fd3a
je 0x14010417c
test r9d, r9d
jne 0x140104130
mov rax, qword [rax]
jmp 0x140104100
mov ecx, dword [rbx + 0x24]
add rcx, r10
movzx edx, word [rcx + r9*2]
mov ecx, dword [rbx + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
xor ecx, ecx
add rax, r10
call rax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov ebx, dword [rcx + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x140104227
mov r9d, dword [rbx + 0x18]
test r9d, r9d
je 0x140104227
mov edi, dword [rbx + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0x811c9dc5
lea rcx, [rdi + r9*4]
mov ecx, dword [rcx + r10]
add rcx, r10
movzx edx, byte [rcx]
inc rcx
test dl, dl
je 0x140104222
nop
movsx edx, dl
lea rcx, [rcx + 1]
xor edx, r8d
imul r8d, edx, 0x1000193
movzx edx, byte [rcx - 1]
test dl, dl
jne 0x140104200
cmp r8d, 0xa52bcaf9
je 0x14010422c
test r9d, r9d
jne 0x1401041e0
mov rax, qword [rax]
jmp 0x1401041b0
mov ecx, dword [rbx + 0x24]
add rcx, r10
movzx edx, word [rcx + r9*2]
mov ecx, dword [rbx + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
add rax, r10
call rax
mov rdi, qword [rsp + 0xb0]
mov dword [0], 0xdead
mov rbx, qword [rsp + 0xa8]
add rsp, 0x90
pop rbp
ret