Function at 0x1800222c0
Capabilities:
Access peb ldr_data
Encode data using xor
Hash data using fnv

Disassembly:
push rbx
push rdi
sub rsp, 0x68
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax + rax]
mov r9, qword [rax + 0x60]
mov r10d, 0x4697a0eb
movzx ecx, word [rax + 0x58]
shr rcx, 1
lea r11, [r9 + rcx*2]
cmp r9, r11
je 0x180022333
nop word [rax + rax]
movsx ecx, byte [r9]
mov edx, ecx
sub cl, 0x41
mov r8d, edx
or r8d, 0x20
cmp cl, 0x19
cmova r8d, edx
add r9, 2
xor r8d, r10d
imul r10d, r8d, 0x1000193
cmp r9, r11
jne 0x180022300
cmp r10d, 0x85f8694e
je 0x180022338
mov rax, qword [rax]
jmp 0x1800222e0
mov r11, qword [rax + 0x30]
xor ebx, ebx
mov qword [rsp + 0x88], rbp
mov qword [rsp + 0x90], rsi
mov qword [rsp + 0x60], r14
test r11, r11
je 0x1800223dd
movsxd rax, dword [r11 + 0x3c]
mov ebp, dword [rax + r11 + 0x88]
add rbp, r11
cmp rbp, r11
je 0x1800223dd
mov esi, dword [rbp + 0x18]
mov r10d, ebx
test esi, esi
je 0x1800223dd
mov r14d, dword [rbp + 0x20]
nop
mov edi, r10d
mov r9d, 0x3440918f
lea rax, [r14 + rdi*4]
mov r8d, dword [rax + r11]
add r8, r11
movzx edx, byte [r8]
inc r8
test dl, dl
je 0x1800223d5
nop
movsx eax, dl
lea r8, [r8 + 1]
sub dl, 0x41
mov ecx, eax
or ecx, 0x20
cmp dl, 0x19
movzx edx, byte [r8 - 1]
cmova ecx, eax
xor ecx, r9d
imul r9d, ecx, 0x1000193
test dl, dl
jne 0x1800223a0
cmp r9d, 0x91d95f6e
je 0x180022458
inc r10d
cmp r10d, esi
jne 0x180022380
mov rax, rbx
call rax
mov qword [0x1800ecfa8], rax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
mov r9, qword [rax + 0x60]
mov r10d, 0x4697a0eb
movzx ecx, word [rax + 0x58]
shr rcx, 1
lea r11, [r9 + rcx*2]
cmp r9, r11
je 0x180022453
nop word [rax + rax]
movsx ecx, byte [r9]
mov edx, ecx
sub cl, 0x41
mov r8d, edx
or r8d, 0x20
cmp cl, 0x19
cmova r8d, edx
add r9, 2
xor r8d, r10d
imul r10d, r8d, 0x1000193
cmp r9, r11
jne 0x180022420
cmp r10d, 0x85f8694e
je 0x180022473
mov rax, qword [rax]
jmp 0x180022400
mov ecx, dword [rbp + 0x24]
add rcx, r11
movzx edx, word [rcx + rdi*2]
mov ecx, dword [rbp + 0x1c]
add rcx, r11
mov eax, dword [rcx + rdx*4]
add rax, r11
jmp 0x1800223e0
mov r11, qword [rax + 0x30]
test r11, r11
je 0x1800224fe
movsxd rax, dword [r11 + 0x3c]
mov ebp, dword [rax + r11 + 0x88]
add rbp, r11
cmp rbp, r11
je 0x1800224fe
mov esi, dword [rbp + 0x18]
mov r10d, ebx
test esi, esi
je 0x1800224fe
mov r14d, dword [rbp + 0x20]
mov edi, r10d
mov r9d, 0x6bbdd810
lea rax, [r14 + rdi*4]
mov r8d, dword [rax + r11]
add r8, r11
movzx edx, byte [r8]
inc r8
test dl, dl
je 0x1800224f6
movsx eax, dl
lea r8, [r8 + 1]
sub dl, 0x41
mov ecx, eax
or ecx, 0x20
cmp dl, 0x19
movzx edx, byte [r8 - 1]
cmova ecx, eax
xor ecx, r9d
imul r9d, ecx, 0x1000193
test dl, dl
jne 0x1800224c1
cmp r9d, 0x817dc5d8
je 0x180022578
inc r10d
cmp r10d, esi
jne 0x1800224a2
mov rax, rbx
call rax
mov qword [0x1800ecfb0], rax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax + rax]
mov r9, qword [rax + 0x60]
mov r10d, 0x4697a0eb
movzx ecx, word [rax + 0x58]
shr rcx, 1
lea r11, [r9 + rcx*2]
cmp r9, r11
je 0x180022573
nop word [rax + rax]
movsx ecx, byte [r9]
mov edx, ecx
sub cl, 0x41
mov r8d, edx
or r8d, 0x20
cmp cl, 0x19
cmova r8d, edx
add r9, 2
xor r8d, r10d
imul r10d, r8d, 0x1000193
cmp r9, r11
jne 0x180022540
cmp r10d, 0x85f8694e
je 0x180022593
mov rax, qword [rax]
jmp 0x180022520
mov ecx, dword [rbp + 0x24]
add rcx, r11
movzx edx, word [rcx + rdi*2]
mov ecx, dword [rbp + 0x1c]
add rcx, r11
mov eax, dword [rcx + rdx*4]
add rax, r11
jmp 0x180022501
mov r11, qword [rax + 0x30]
test r11, r11
je 0x18002263f
movsxd rax, dword [r11 + 0x3c]
mov ebp, dword [rax + r11 + 0x88]
add rbp, r11
cmp rbp, r11
je 0x18002263f
mov esi, dword [rbp + 0x18]
mov r10d, ebx
test esi, esi
je 0x18002263f
mov r14d, dword [rbp + 0x20]
nop word [rax + rax]
mov edi, r10d
mov r9d, 0x22c4e0c8
lea rax, [r14 + rdi*4]
mov r8d, dword [rax + r11]
add r8, r11
movzx eax, byte [r8]
inc r8
test al, al
je 0x18002261f
nop
movsx ecx, al
lea r8, [r8 + 1]
sub al, 0x41
mov edx, ecx
or edx, 0x20
cmp al, 0x19
movzx eax, byte [r8 - 1]
cmova edx, ecx
xor edx, r9d
imul r9d, edx, 0x1000193
test al, al
jne 0x1800225f0
cmp r9d, 0x24fbb80f
je 0x180022629
inc r10d
cmp r10d, esi
jne 0x1800225d0
jmp 0x18002263f
mov ecx, dword [rbp + 0x24]
add rcx, r11
movzx edx, word [rcx + rdi*2]
mov ecx, dword [rbp + 0x1c]
add rcx, r11
mov ebx, dword [rcx + rdx*4]
add rbx, r11
call rbx
mov qword [0x1800ecfb8], rax
lea r9, [rsp + 0x40]
mov rax, qword [0x1800ecfa8]
movabs rdi, 0x10eed3cc94530b27
movabs rbx, 0xc1075ecd36131414
mov rcx, qword [rax]
movabs rax, 0x44ba9b81d5165f74
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x40], rax
movabs rax, 0x87551b99785a4b44
mov r10, qword [rcx + 0xb8]
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x48], rax
movabs rax, 0x52648144504e6a38
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x50], rax
movabs rax, 0xa7bfde434f25e1e7
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x80], rdi
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x80], rbx
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x28], rax
movabs rax, 0x136c4120f0b2979
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x30], rax
movabs rax, 0xa7bfed737f6baeae
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x80]
movdqa xmm0, xmmword [rsp + 0x40]
movdqa xmm1, xmmword [rsp + 0x50]
xorps xmm0, xmmword [rsp + 0x20]
mov r8, qword [0x1800ecfb8]
mov rdx, qword [0x1800ecfb0]
mov rcx, qword [0x1800ecfa8]
mov qword [rsp + 0x38], rax
xorps xmm1, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x40], xmm0
movdqa xmmword [rsp + 0x50], xmm1
call r10
mov qword [0x1800ecfc0], rax
lea r8, [rsp + 0x20]
mov rax, qword [0x1800ecfa8]
mov rcx, qword [rax]
movabs rax, 0x799a86a1f5367f74
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x20], rax
movabs rax, 0xc1075efd07236778
mov r9, qword [rcx + 0x48]
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x80], rdi
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x80], rbx
mov rax, qword [rsp + 0x80]
movdqa xmm0, xmmword [rsp + 0x20]
mov rdx, qword [0x1800ecfb8]
mov rcx, qword [0x1800ecfa8]
mov qword [rsp + 0x48], rax
xorps xmm0, xmmword [rsp + 0x40]
movdqa xmmword [rsp + 0x20], xmm0
call r9
mov r14, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x90]
mov rbp, qword [rsp + 0x88]
mov qword [0x1800ecfc8], rax
add rsp, 0x68
pop rdi
pop rbx
ret