Function at 0x180021dd0
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, 0x72d4ab69
movzx ecx, word [rax + 0x58]
shr rcx, 1
lea r11, [r9 + rcx*2]
cmp r9, r11
je 0x180021e43
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 0x180021e10
cmp r10d, 0xb564dc40
je 0x180021e48
mov rax, qword [rax]
jmp 0x180021df0
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 0x180021eed
movsxd rax, dword [r11 + 0x3c]
mov ebp, dword [rax + r11 + 0x88]
add rbp, r11
cmp rbp, r11
je 0x180021eed
mov esi, dword [rbp + 0x18]
mov r10d, ebx
test esi, esi
je 0x180021eed
mov r14d, dword [rbp + 0x20]
nop
mov edi, r10d
mov r9d, 0xef76eb81
lea rax, [r14 + rdi*4]
mov r8d, dword [rax + r11]
add r8, r11
movzx edx, byte [r8]
inc r8
test dl, dl
je 0x180021ee5
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 0x180021eb0
cmp r9d, 0x61c1a0d0
je 0x180021f68
inc r10d
cmp r10d, esi
jne 0x180021e90
mov rax, rbx
call rax
mov qword [0x1800e7388], 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, 0x72d4ab69
movzx ecx, word [rax + 0x58]
shr rcx, 1
lea r11, [r9 + rcx*2]
cmp r9, r11
je 0x180021f63
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 0x180021f30
cmp r10d, 0xb564dc40
je 0x180021f83
mov rax, qword [rax]
jmp 0x180021f10
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 0x180021ef0
mov r11, qword [rax + 0x30]
test r11, r11
je 0x18002200e
movsxd rax, dword [r11 + 0x3c]
mov ebp, dword [rax + r11 + 0x88]
add rbp, r11
cmp rbp, r11
je 0x18002200e
mov esi, dword [rbp + 0x18]
mov r10d, ebx
test esi, esi
je 0x18002200e
mov r14d, dword [rbp + 0x20]
mov edi, r10d
mov r9d, 0x2b8a5bb2
lea rax, [r14 + rdi*4]
mov r8d, dword [rax + r11]
add r8, r11
movzx edx, byte [r8]
inc r8
test dl, dl
je 0x180022006
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 0x180021fd1
cmp r9d, 0xe4743b42
je 0x180022088
inc r10d
cmp r10d, esi
jne 0x180021fb2
mov rax, rbx
call rax
mov qword [0x1800e7390], 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, 0x72d4ab69
movzx ecx, word [rax + 0x58]
shr rcx, 1
lea r11, [r9 + rcx*2]
cmp r9, r11
je 0x180022083
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 0x180022050
cmp r10d, 0xb564dc40
je 0x1800220a3
mov rax, qword [rax]
jmp 0x180022030
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 0x180022011
mov r11, qword [rax + 0x30]
test r11, r11
je 0x18002214f
movsxd rax, dword [r11 + 0x3c]
mov ebp, dword [rax + r11 + 0x88]
add rbp, r11
cmp rbp, r11
je 0x18002214f
mov esi, dword [rbp + 0x18]
mov r10d, ebx
test esi, esi
je 0x18002214f
mov r14d, dword [rbp + 0x20]
nop word [rax + rax]
mov edi, r10d
mov r9d, 0x8d0169e
lea rax, [r14 + rdi*4]
mov r8d, dword [rax + r11]
add r8, r11
movzx eax, byte [r8]
inc r8
test al, al
je 0x18002212f
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 0x180022100
cmp r9d, 0x4ffdeaad
je 0x180022139
inc r10d
cmp r10d, esi
jne 0x1800220e0
jmp 0x18002214f
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 [0x1800e7398], rax
lea r9, [rsp + 0x40]
mov rax, qword [0x1800e7388]
movabs rdi, 0x8561f7a6ac23b9c3
movabs rbx, 0x30a64123b956480c
mov rcx, qword [rax]
movabs rax, 0xd135bfebed66ed90
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x40], rax
movabs rax, 0x76f40477f71f175c
mov r10, qword [rcx + 0xb8]
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x48], rax
movabs rax, 0xeed000863794a61c
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x50], rax
movabs rax, 0xff6a9dc554ada5ff
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, 0xbd8245d068d1e55d
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x30], rax
movabs rax, 0xff6aaef564e3eab6
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 [0x1800e7398]
mov rdx, qword [0x1800e7390]
mov rcx, qword [0x1800e7388]
mov qword [rsp + 0x38], rax
xorps xmm1, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x40], xmm0
movdqa xmmword [rsp + 0x50], xmm1
call r10
mov qword [0x1800e73a0], rax
lea r8, [rsp + 0x20]
mov rax, qword [0x1800e7388]
mov rcx, qword [rax]
movabs rax, 0xec15a2cbcd46cd90
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x20], rax
movabs rax, 0x30a6411388663b60
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 [0x1800e7398]
mov rcx, qword [0x1800e7388]
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 [0x1800e73a8], rax
add rsp, 0x68
pop rdi
pop rbx
ret