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

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
lea rdx, str.48_83_EC_48_48_8B_05_________48_63_90________
lea rcx, [0x18005cd98]
call fcn.180055830
mov qword [0x18006de30], rax
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rdi, qword [rcx + 0x10]
nop word [rax + rax]
mov r10, qword [rdi + 0x30]
movsxd rax, dword [r10 + 0x3c]
mov ebx, dword [rax + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x18001c0db
mov r11d, dword [rbx + 0x18]
xor r9d, r9d
test r11d, r11d
je 0x18001c0db
mov r8d, dword [rbx + 0x20]
add r8, r10
nop dword [rax + rax]
mov ecx, dword [r8]
mov edx, 0x811c9dc5
add rcx, r10
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x18001c0cf
nop word [rax + rax]
movsx eax, al
lea rcx, [rcx + 1]
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx - 1]
test al, al
jne 0x18001c0b0
cmp edx, 0x595fa990
je 0x18001c0e0
inc r9d
add r8, 4
cmp r9d, r11d
jb 0x18001c090
mov rdi, qword [rdi]
jmp 0x18001c060
mov eax, dword [rbx + 0x24]
mov ecx, dword [rbx + 0x1c]
add rax, r10
add rcx, r10
movzx edx, word [rax + r9*2]
mov eax, dword [rcx + rdx*4]
add rax, r10
mov qword [0x18006de60], rax
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rdi, qword [rcx + 0x10]
nop
mov r10, qword [rdi + 0x30]
movsxd rax, dword [r10 + 0x3c]
mov ebx, dword [rax + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x18001c18b
mov r11d, dword [rbx + 0x18]
xor r9d, r9d
test r11d, r11d
je 0x18001c18b
mov r8d, dword [rbx + 0x20]
add r8, r10
nop dword [rax + rax]
mov ecx, dword [r8]
mov edx, 0x811c9dc5
add rcx, r10
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x18001c17f
nop word [rax + rax]
movsx eax, al
lea rcx, [rcx + 1]
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx - 1]
test al, al
jne 0x18001c160
cmp edx, 0xdc3250cb
je 0x18001c190
inc r9d
add r8, 4
cmp r9d, r11d
jb 0x18001c140
mov rdi, qword [rdi]
jmp 0x18001c110
mov eax, dword [rbx + 0x24]
mov ecx, dword [rbx + 0x1c]
add rax, r10
add rcx, r10
movzx edx, word [rax + r9*2]
mov eax, dword [rcx + rdx*4]
add rax, r10
mov qword [0x18006dcf8], rax
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rdi, qword [rcx + 0x10]
nop
mov r10, qword [rdi + 0x30]
movsxd rax, dword [r10 + 0x3c]
mov ebx, dword [rax + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x18001c23b
mov r11d, dword [rbx + 0x18]
xor r9d, r9d
test r11d, r11d
je 0x18001c23b
mov r8d, dword [rbx + 0x20]
add r8, r10
nop dword [rax + rax]
mov ecx, dword [r8]
mov edx, 0x811c9dc5
add rcx, r10
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x18001c22f
nop word [rax + rax]
movsx eax, al
lea rcx, [rcx + 1]
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx - 1]
test al, al
jne 0x18001c210
cmp edx, 0x52d556ee
je 0x18001c240
inc r9d
add r8, 4
cmp r9d, r11d
jb 0x18001c1f0
mov rdi, qword [rdi]
jmp 0x18001c1c0
mov ecx, dword [rbx + 0x24]
add rcx, r10
movzx r8d, word [rcx + r9*2]
mov ecx, dword [rbx + 0x1c]
add rcx, r10
mov eax, dword [rcx + r8*4]
add rax, r10
mov qword [0x18006dcd0], rax
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rdi, qword [rcx + 0x10]
mov r10, qword [rdi + 0x30]
movsxd rax, dword [r10 + 0x3c]
mov ebx, dword [rax + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x18001c2eb
mov r11d, dword [rbx + 0x18]
xor r9d, r9d
test r11d, r11d
je 0x18001c2eb
mov r8d, dword [rbx + 0x20]
add r8, r10
nop dword [rax + rax]
mov ecx, dword [r8]
mov edx, 0x811c9dc5
add rcx, r10
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x18001c2df
nop word [rax + rax]
movsx eax, al
lea rcx, [rcx + 1]
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx - 1]
test al, al
jne 0x18001c2c0
cmp edx, 0x2d4afd64
je 0x18001c2f0
inc r9d
add r8, 4
cmp r9d, r11d
jb 0x18001c2a0
mov rdi, qword [rdi]
jmp 0x18001c270
mov ecx, dword [rbx + 0x24]
add rcx, r10
movzx r8d, word [rcx + r9*2]
mov ecx, dword [rbx + 0x1c]
add rcx, r10
mov eax, dword [rcx + r8*4]
add rax, r10
mov qword [0x18006dd50], rax
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rdi, qword [rcx + 0x10]
mov r10, qword [rdi + 0x30]
movsxd rax, dword [r10 + 0x3c]
mov ebx, dword [rax + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x18001c39b
mov r11d, dword [rbx + 0x18]
xor r9d, r9d
test r11d, r11d
je 0x18001c39b
mov r8d, dword [rbx + 0x20]
add r8, r10
nop dword [rax + rax]
mov ecx, dword [r8]
mov edx, 0x811c9dc5
add rcx, r10
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x18001c38f
nop word [rax + rax]
movsx eax, al
lea rcx, [rcx + 1]
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx - 1]
test al, al
jne 0x18001c370
cmp edx, 0x615a11c1
je 0x18001c3a0
inc r9d
add r8, 4
cmp r9d, r11d
jb 0x18001c350
mov rdi, qword [rdi]
jmp 0x18001c320
mov ecx, dword [rbx + 0x24]
add rcx, r10
movzx r8d, word [rcx + r9*2]
mov ecx, dword [rbx + 0x1c]
add rcx, r10
mov eax, dword [rcx + r8*4]
add rax, r10
mov qword [0x18006dd58], rax
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rdi, qword [rcx + 0x10]
mov r10, qword [rdi + 0x30]
movsxd rax, dword [r10 + 0x3c]
mov ebx, dword [rax + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x18001c44b
mov r11d, dword [rbx + 0x18]
xor r9d, r9d
test r11d, r11d
je 0x18001c44b
mov r8d, dword [rbx + 0x20]
add r8, r10
nop dword [rax + rax]
mov ecx, dword [r8]
mov edx, 0x811c9dc5
add rcx, r10
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x18001c43f
nop word [rax + rax]
movsx eax, al
lea rcx, [rcx + 1]
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx - 1]
test al, al
jne 0x18001c420
cmp edx, 0xd1f79bec
je 0x18001c450
inc r9d
add r8, 4
cmp r9d, r11d
jb 0x18001c400
mov rdi, qword [rdi]
jmp 0x18001c3d0
mov ecx, dword [rbx + 0x24]
add rcx, r10
movzx r8d, word [rcx + r9*2]
mov ecx, dword [rbx + 0x1c]
add rcx, r10
mov eax, dword [rcx + r8*4]
add rax, r10
mov qword [0x18006de48], rax
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rdi, qword [rcx + 0x10]
mov r10, qword [rdi + 0x30]
movsxd rax, dword [r10 + 0x3c]
mov ebx, dword [rax + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x18001c4fb
mov r11d, dword [rbx + 0x18]
xor r9d, r9d
test r11d, r11d
je 0x18001c4fb
mov r8d, dword [rbx + 0x20]
add r8, r10
nop dword [rax + rax]
mov ecx, dword [r8]
mov edx, 0x811c9dc5
add rcx, r10
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x18001c4ef
nop word [rax + rax]
movsx eax, al
lea rcx, [rcx + 1]
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx - 1]
test al, al
jne 0x18001c4d0
cmp edx, 0x9332acfd
je 0x18001c500
inc r9d
add r8, 4
cmp r9d, r11d
jb 0x18001c4b0
mov rdi, qword [rdi]
jmp 0x18001c480
mov ecx, dword [rbx + 0x24]
add rcx, r10
movzx r8d, word [rcx + r9*2]
mov ecx, dword [rbx + 0x1c]
add rcx, r10
mov eax, dword [rcx + r8*4]
add rax, r10
mov qword [0x18006ddf8], rax
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rdi, qword [rcx + 0x10]
mov r10, qword [rdi + 0x30]
movsxd rax, dword [r10 + 0x3c]
mov ebx, dword [rax + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x18001c5ab
mov r11d, dword [rbx + 0x18]
xor r9d, r9d
test r11d, r11d
je 0x18001c5ab
mov r8d, dword [rbx + 0x20]
add r8, r10
nop dword [rax + rax]
mov ecx, dword [r8]
mov edx, 0x811c9dc5
add rcx, r10
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x18001c59f
nop word [rax + rax]
movsx eax, al
lea rcx, [rcx + 1]
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx - 1]
test al, al
jne 0x18001c580
cmp edx, 0xb544ab00
je 0x18001c5b0
inc r9d
add r8, 4
cmp r9d, r11d
jb 0x18001c560
mov rdi, qword [rdi]
jmp 0x18001c530
mov ecx, dword [rbx + 0x24]
add rcx, r10
movzx r8d, word [rcx + r9*2]
mov ecx, dword [rbx + 0x1c]
add rcx, r10
mov eax, dword [rcx + r8*4]
add rax, r10
mov qword [0x18006dcc0], rax
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rdi, qword [rcx + 0x10]
mov r10, qword [rdi + 0x30]
movsxd rax, dword [r10 + 0x3c]
mov ebx, dword [rax + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x18001c65b
mov r11d, dword [rbx + 0x18]
xor r9d, r9d
test r11d, r11d
je 0x18001c65b
mov r8d, dword [rbx + 0x20]
add r8, r10
nop dword [rax + rax]
mov ecx, dword [r8]
mov edx, 0x811c9dc5
add rcx, r10
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x18001c64f
nop word [rax + rax]
movsx eax, al
lea rcx, [rcx + 1]
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx - 1]
test al, al
jne 0x18001c630
cmp edx, 0x2a654126
je 0x18001c660
inc r9d
add r8, 4
cmp r9d, r11d
jb 0x18001c610
mov rdi, qword [rdi]
jmp 0x18001c5e0
mov ecx, dword [rbx + 0x24]
add rcx, r10
movzx r8d, word [rcx + r9*2]
mov ecx, dword [rbx + 0x1c]
add rcx, r10
mov eax, dword [rcx + r8*4]
add rax, r10
mov qword [0x18006de38], rax
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rdi, qword [rcx + 0x10]
mov r10, qword [rdi + 0x30]
movsxd rax, dword [r10 + 0x3c]
mov ebx, dword [rax + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x18001c70b
mov r11d, dword [rbx + 0x18]
xor r9d, r9d
test r11d, r11d
je 0x18001c70b
mov r8d, dword [rbx + 0x20]
add r8, r10
nop dword [rax + rax]
mov ecx, dword [r8]
mov edx, 0x811c9dc5
add rcx, r10
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x18001c6ff
nop word [rax + rax]
movsx eax, al
lea rcx, [rcx + 1]
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx - 1]
test al, al
jne 0x18001c6e0
cmp edx, 0xde4cdca5
je 0x18001c710
inc r9d
add r8, 4
cmp r9d, r11d
jb 0x18001c6c0
mov rdi, qword [rdi]
jmp 0x18001c690
mov ecx, dword [rbx + 0x24]
add rcx, r10
movzx r8d, word [rcx + r9*2]
mov ecx, dword [rbx + 0x1c]
add rcx, r10
mov eax, dword [rcx + r8*4]
add rax, r10
mov qword [0x18006df08], rax
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rdi, qword [rcx + 0x10]
mov r10, qword [rdi + 0x30]
movsxd rax, dword [r10 + 0x3c]
mov ebx, dword [rax + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x18001c7bb
mov r11d, dword [rbx + 0x18]
xor r9d, r9d
test r11d, r11d
je 0x18001c7bb
mov r8d, dword [rbx + 0x20]
add r8, r10
nop dword [rax + rax]
mov ecx, dword [r8]
mov edx, 0x811c9dc5
add rcx, r10
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x18001c7af
nop word [rax + rax]
movsx eax, al
lea rcx, [rcx + 1]
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx - 1]
test al, al
jne 0x18001c790
cmp edx, 0xa5356f67
je 0x18001c7c0
inc r9d
add r8, 4
cmp r9d, r11d
jb 0x18001c770
mov rdi, qword [rdi]
jmp 0x18001c740
mov ecx, dword [rbx + 0x24]
add rcx, r10
movzx r8d, word [rcx + r9*2]
mov ecx, dword [rbx + 0x1c]
add rcx, r10
mov eax, dword [rcx + r8*4]
add rax, r10
mov qword [0x18006dd90], rax
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rdi, qword [rcx + 0x10]
mov r10, qword [rdi + 0x30]
movsxd rax, dword [r10 + 0x3c]
mov ebx, dword [rax + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x18001c86b
mov r11d, dword [rbx + 0x18]
xor r9d, r9d
test r11d, r11d
je 0x18001c86b
mov r8d, dword [rbx + 0x20]
add r8, r10
nop dword [rax + rax]
mov ecx, dword [r8]
mov edx, 0x811c9dc5
add rcx, r10
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x18001c85f
nop word [rax + rax]
movsx eax, al
lea rcx, [rcx + 1]
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx - 1]
test al, al
jne 0x18001c840
cmp edx, 0xd697c396
je 0x18001c870
inc r9d
add r8, 4
cmp r9d, r11d
jb 0x18001c820
mov rdi, qword [rdi]
jmp 0x18001c7f0
mov ecx, dword [rbx + 0x24]
add rcx, r10
movzx r8d, word [rcx + r9*2]
mov ecx, dword [rbx + 0x1c]
add rcx, r10
mov eax, dword [rcx + r8*4]
add rax, r10
mov qword [0x18006de58], rax
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rdi, qword [rcx + 0x10]
mov r10, qword [rdi + 0x30]
movsxd rax, dword [r10 + 0x3c]
mov ebx, dword [rax + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x18001c91b
mov r11d, dword [rbx + 0x18]
xor r9d, r9d
test r11d, r11d
je 0x18001c91b
mov r8d, dword [rbx + 0x20]
add r8, r10
nop dword [rax + rax]
mov ecx, dword [r8]
mov edx, 0x811c9dc5
add rcx, r10
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x18001c90f
nop word [rax + rax]
movsx eax, al
lea rcx, [rcx + 1]
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx - 1]
test al, al
jne 0x18001c8f0
cmp edx, 0x2164fbe
je 0x18001c920
inc r9d
add r8, 4
cmp r9d, r11d
jb 0x18001c8d0
mov rdi, qword [rdi]
jmp 0x18001c8a0
mov ecx, dword [rbx + 0x24]
add rcx, r10
movzx r8d, word [rcx + r9*2]
mov ecx, dword [rbx + 0x1c]
mov rbx, qword [rsp + 0x30]
add rcx, r10
mov eax, dword [rcx + r8*4]
add rax, r10
mov qword [0x18006dce8], rax
add rsp, 0x20
pop rdi
ret