Function at 0x140027d80
Capabilities:
Access peb ldr_data
Check for peb beingdebugged flag
Encode data using xor
Hash data using djb2
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x2d0
mov rax, qword [0x140038010]
xor rax, rsp
mov qword [rsp + 0x2c0], rax
mov esi, ecx
mov dword [rsp + 0x80], 0x238
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rdx, dword [r10 + 0x3c]
mov edi, dword [rdx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x140027e46
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140027e46
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [rbx + r9*4]
mov edx, dword [rcx + r10]
add rdx, r10
mov r8d, 0x97d2ce70
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140027e41
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x140027e20
cmp r8d, 0x4bcbe498
je 0x140027e4b
test r9d, r9d
jne 0x140027e00
mov rax, qword [rax]
jmp 0x140027dd0
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov r8d, dword [rcx + rax*4]
add r8, r10
xor edx, edx
lea ecx, [rdx + 2]
call r8
mov rbp, rax
mov rcx, qword gs:[0x60]
mov rcx, qword [rcx + 0x18]
mov rcx, qword [rcx + 0x10]
nop
mov r10, qword [rcx + 0x30]
movsxd rdx, dword [r10 + 0x3c]
mov edi, dword [rdx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x140027ef6
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140027ef6
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rax, [rbx + r9*4]
mov edx, dword [rax + r10]
add rdx, r10
mov r8d, 0x5ab61c4d
movzx eax, byte [rdx]
inc rdx
test al, al
je 0x140027ef1
nop
movsx eax, al
xor eax, r8d
imul r8d, eax, 0x1000193
movzx eax, byte [rdx]
lea rdx, [rdx + 1]
test al, al
jne 0x140027ed0
cmp r8d, 0xe3eebfe0
je 0x140027efb
test r9d, r9d
jne 0x140027eb0
mov rcx, qword [rcx]
jmp 0x140027e80
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov r8d, dword [rcx + rax*4]
add r8, r10
lea rdx, [rsp + 0x80]
mov rcx, rbp
call r8
test eax, eax
je 0x140028167
nop dword [rax]
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x140027fc6
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140027fc6
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [r10 + r9*4]
mov ecx, dword [rcx + rbx]
add rcx, r10
mov r8d, 0xa06f8b07
movzx edx, byte [rcx]
inc rcx
test dl, dl
je 0x140027fc1
nop dword [rax]
movsx edx, dl
xor edx, r8d
imul r8d, edx, 0x1000193
movzx edx, byte [rcx]
lea rcx, [rcx + 1]
test dl, dl
jne 0x140027fa0
cmp r8d, 0xb74243fd
je 0x140027fcb
test r9d, r9d
jne 0x140027f80
mov rax, qword [rax]
jmp 0x140027f50
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov r8d, dword [rcx + rax*4]
add r8, r10
lea rdx, [rsp + 0x80]
mov rcx, rbp
call r8
test eax, eax
je 0x1400280bc
lea rdx, [rsp + 0xac]
lea rcx, [rsp + 0x38]
call fcn.140006330
nop
lea rcx, [rsp + 0x20]
call fcn.140006720
mov rdi, rax
lea rdx, [rsp + 0x28]
lea rcx, [rsp + 0x38]
call fcn.140006150
mov rbx, qword [rax]
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x38]
call fcn.140006230
mov r9, rdi
mov r8, rbx
mov rdx, qword [rax]
lea rcx, [rsp + 0x58]
call fcn.140007fd0
lea rcx, [rsp + 0x58]
call fcn.140006400
mov rcx, rax
test rax, rax
je 0x140028080
mov eax, 0x1505
movsx edx, byte [rcx]
inc rcx
test edx, edx
je 0x140028080
nop
imul eax, eax, 0x21
add eax, edx
movsx edx, byte [rcx]
lea rcx, [rcx + 1]
test edx, edx
jne 0x140028070
lea rcx, [rsp + 0x58]
cmp eax, esi
je 0x14002809e
call fcn.1400064f0
nop
lea rcx, [rsp + 0x38]
call fcn.140006300
jmp 0x140027f30
mov ebx, dword [rsp + 0x88]
call fcn.1400064f0
nop
lea rcx, [rsp + 0x38]
call fcn.140006300
mov eax, ebx
jmp 0x140028169
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov ebx, dword [rcx + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x140028146
mov r9d, dword [rbx + 0x18]
test r9d, r9d
je 0x140028146
mov edi, dword [rbx + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [r10 + r9*4]
mov edx, dword [rcx + rdi]
add rdx, r10
mov r8d, 0xbe818ae0
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140028141
nop dword [rax]
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x140028120
cmp r8d, 0x9172342a
je 0x14002814b
test r9d, r9d
jne 0x140028100
mov rax, qword [rax]
jmp 0x1400280d0
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
mov rcx, rbp
call rax
xor eax, eax
mov rcx, qword [rsp + 0x2c0]
xor rcx, rsp
call fcn.14002d4b0
lea r11, [rsp + 0x2d0]
mov rbx, qword [r11 + 0x10]
mov rbp, qword [r11 + 0x18]
mov rsi, qword [r11 + 0x20]
mov rsp, r11
pop rdi
ret