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

Disassembly:
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x38
mov dword [rsp + 0x24], 0x10
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
add rcx, 0x10
mov rcx, qword [rcx]
mov rax, qword [rcx + 0x30]
movsxd rdx, dword [rax + 0x3c]
mov edx, dword [rax + rdx + 0x88]
test rdx, rdx
je 0x14000424b
mov r8d, dword [rax + rdx + 0x18]
test r8, r8
je 0x14000424b
mov r9d, dword [rax + rdx + 0x20]
add r9, rax
lea r10, [rax + 1]
dec r8
mov r11d, r8d
mov esi, dword [r9 + r11*4]
mov bl, byte [rax + rsi]
test bl, bl
je 0x1400042ad
add rsi, r10
mov edi, 0x909ada35
movsx ebx, bl
xor ebx, edi
imul edi, ebx, 0x1000193
mov bl, byte [rsi]
inc rsi
test bl, bl
jne 0x140004291
cmp edi, 0xab21039c
je 0x1400042b4
test r11, r11
jne 0x140004278
jmp 0x14000424b
mov ecx, dword [rax + rdx + 0x1c]
mov edx, dword [rax + rdx + 0x24]
add rcx, rax
add rdx, rax
movzx edx, word [rdx + r11*2]
mov r9d, dword [rcx + rdx*4]
add r9, rax
xor edi, edi
mov ecx, 2
mov edx, 2
xor r8d, r8d
call r9
mov rsi, rax
cmp esi, 0xffffffff
je 0x140004617
mov word [rsp + 0x28], 2
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
add rcx, 0x10
mov rcx, qword [rcx]
mov rax, qword [rcx + 0x30]
movsxd rdx, dword [rax + 0x3c]
mov edx, dword [rax + rdx + 0x88]
test rdx, rdx
je 0x140004304
mov r8d, dword [rax + rdx + 0x18]
test r8, r8
je 0x140004304
mov r9d, dword [rax + rdx + 0x20]
add r9, rax
lea r10, [rax + 1]
dec r8
mov r11d, r8d
mov edi, dword [r9 + r11*4]
mov bl, byte [rax + rdi]
test bl, bl
je 0x140004366
add rdi, r10
mov ebp, 0x1fa27717
movsx ebx, bl
xor ebx, ebp
imul ebp, ebx, 0x1000193
mov bl, byte [rdi]
inc rdi
test bl, bl
jne 0x14000434a
cmp ebp, 0xd9ac602e
je 0x14000436d
test r11, r11
jne 0x140004331
jmp 0x140004304
mov ecx, dword [rax + rdx + 0x1c]
mov edx, dword [rax + rdx + 0x24]
add rcx, rax
add rdx, rax
movzx edx, word [rdx + r11*2]
mov edx, dword [rcx + rdx*4]
add rdx, rax
mov ecx, 0x8080808
call rdx
mov dword [rsp + 0x2c], eax
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
add rcx, 0x10
mov rcx, qword [rcx]
mov rax, qword [rcx + 0x30]
movsxd rdx, dword [rax + 0x3c]
mov edx, dword [rax + rdx + 0x88]
test rdx, rdx
je 0x1400043a2
mov r8d, dword [rax + rdx + 0x18]
test r8, r8
je 0x1400043a2
mov r9d, dword [rax + rdx + 0x20]
add r9, rax
lea r10, [rax + 1]
dec r8
mov r11d, r8d
mov edi, dword [r9 + r11*4]
mov bl, byte [rax + rdi]
test bl, bl
je 0x140004404
add rdi, r10
mov ebp, 0xaa4949f
movsx ebx, bl
xor ebx, ebp
imul ebp, ebx, 0x1000193
mov bl, byte [rdi]
inc rdi
test bl, bl
jne 0x1400043e8
cmp ebp, 0x6268afc7
je 0x14000440b
test r11, r11
jne 0x1400043cf
jmp 0x1400043a2
mov ecx, dword [rax + rdx + 0x1c]
mov edx, dword [rax + rdx + 0x24]
add rcx, rax
add rdx, rax
movzx edx, word [rdx + r11*2]
mov edx, dword [rcx + rdx*4]
add rdx, rax
mov cx, 0x35
call rdx
mov word [rsp + 0x2a], ax
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
add rcx, 0x10
mov rcx, qword [rcx]
mov rax, qword [rcx + 0x30]
movsxd rdx, dword [rax + 0x3c]
mov edx, dword [rax + rdx + 0x88]
test rdx, rdx
je 0x140004440
mov r8d, dword [rax + rdx + 0x18]
test r8, r8
je 0x140004440
mov r9d, dword [rax + rdx + 0x20]
add r9, rax
lea r10, [rax + 1]
dec r8
mov r11d, r8d
mov edi, dword [r9 + r11*4]
mov bl, byte [rax + rdi]
test bl, bl
je 0x1400044a2
add rdi, r10
mov ebp, 0x62327ab
movsx ebx, bl
xor ebx, ebp
imul ebp, ebx, 0x1000193
mov bl, byte [rdi]
inc rdi
test bl, bl
jne 0x140004486
cmp ebp, 0xf2b02d7f
je 0x1400044a9
test r11, r11
jne 0x14000446d
jmp 0x140004440
mov ecx, dword [rax + rdx + 0x1c]
mov edx, dword [rax + rdx + 0x24]
add rcx, rax
add rdx, rax
movzx edx, word [rdx + r11*2]
mov r9d, dword [rcx + rdx*4]
add r9, rax
movsxd rsi, esi
lea rdx, [rsp + 0x28]
mov rcx, rsi
mov r8d, 0x10
call r9
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
add rcx, 0x10
mov rcx, qword [rcx]
mov rax, qword [rcx + 0x30]
movsxd rdx, dword [rax + 0x3c]
mov edx, dword [rax + rdx + 0x88]
test rdx, rdx
je 0x1400044e8
mov r8d, dword [rax + rdx + 0x18]
test r8, r8
je 0x1400044e8
mov r9d, dword [rax + rdx + 0x20]
add r9, rax
lea r10, [rax + 1]
dec r8
mov r11d, r8d
mov edi, dword [r9 + r11*4]
mov bl, byte [rax + rdi]
test bl, bl
je 0x14000454a
add rdi, r10
mov ebp, 0x772856bc
movsx ebx, bl
xor ebx, ebp
imul ebp, ebx, 0x1000193
mov bl, byte [rdi]
inc rdi
test bl, bl
jne 0x14000452e
cmp ebp, 0xd909aba3
je 0x140004551
test r11, r11
jne 0x140004515
jmp 0x1400044e8
mov ecx, dword [rax + rdx + 0x1c]
mov edx, dword [rax + rdx + 0x24]
add rcx, rax
add rdx, rax
movzx edx, word [rdx + r11*2]
mov r9d, dword [rcx + rdx*4]
add r9, rax
lea rdx, [rsp + 0x28]
lea r8, [rsp + 0x24]
mov rcx, rsi
call r9
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
add rcx, 0x10
mov rcx, qword [rcx]
mov rax, qword [rcx + 0x30]
movsxd rdx, dword [rax + 0x3c]
mov edx, dword [rax + rdx + 0x88]
test rdx, rdx
je 0x14000458c
mov r8d, dword [rax + rdx + 0x18]
test r8, r8
je 0x14000458c
mov r9d, dword [rax + rdx + 0x20]
add r9, rax
lea r10, [rax + 1]
dec r8
mov r11d, r8d
mov edi, dword [r9 + r11*4]
mov bl, byte [rax + rdi]
test bl, bl
je 0x1400045ee
add rdi, r10
mov ebp, 0x78194dc5
movsx ebx, bl
xor ebx, ebp
imul ebp, ebx, 0x1000193
mov bl, byte [rdi]
inc rdi
test bl, bl
jne 0x1400045d2
cmp ebp, 0xe2fcd302
je 0x1400045f5
test r11, r11
jne 0x1400045b9
jmp 0x14000458c
mov ecx, dword [rax + rdx + 0x1c]
mov edx, dword [rax + rdx + 0x24]
add rcx, rax
add rdx, rax
movzx edx, word [rdx + r11*2]
mov edx, dword [rcx + rdx*4]
add rdx, rax
mov rcx, rsi
call rdx
mov edi, dword [rsp + 0x2c]
mov eax, edi
add rsp, 0x38
pop rbx
pop rbp
pop rdi
pop rsi
ret