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

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rdi
mov qword [rax + 0x20], r14
mov rax, qword gs:[0x60]
mov ebp, 1
mov r14d, 0x811c9dc5
mov rcx, qword [rax + 0x18]
mov rdx, qword [rcx + 0x10]
mov r8, qword [rdx + 0x30]
movsxd rax, dword [r8 + 0x3c]
mov r9d, dword [rax + r8 + 0x88]
add r9, r8
cmp r9, r8
je 0x180010355
xor ecx, ecx
cmp dword [r9 + 0x18], ecx
jbe 0x180010355
mov edi, dword [r9 + 0x20]
lea rax, [rdi + rcx*4]
mov ebx, ecx
mov r10d, dword [rax + r8]
mov r11d, r14d
add r10, r8
mov al, byte [r10]
add r10, rbp
test al, al
je 0x18001034d
movsx eax, al
xor eax, r11d
imul r11d, eax, 0x1000193
mov al, byte [r10]
add r10, rbp
test al, al
jne 0x18001032d
cmp r11d, 0xdc3250cb
je 0x18001035a
add ecx, ebp
cmp ecx, dword [r9 + 0x18]
jb 0x180010313
mov rdx, qword [rdx]
jmp 0x1800102ef
mov ecx, dword [r9 + 0x24]
add rcx, r8
movzx edx, word [rcx + rbx*2]
mov ecx, dword [r9 + 0x1c]
add rcx, r8
mov eax, dword [rcx + rdx*4]
add rax, r8
mov qword [0x18001c038], rax
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov r10, qword [rcx + 0x10]
mov r8, qword [r10 + 0x30]
movsxd rax, dword [r8 + 0x3c]
mov r9d, dword [rax + r8 + 0x88]
add r9, r8
cmp r9, r8
je 0x1800103ee
xor ecx, ecx
cmp dword [r9 + 0x18], ecx
jbe 0x1800103ee
mov edi, dword [r9 + 0x20]
lea rax, [rdi + rcx*4]
mov ebx, ecx
mov edx, dword [rax + r8]
mov r11d, r14d
add rdx, r8
mov al, byte [rdx]
add rdx, rbp
test al, al
je 0x1800103e6
movsx eax, al
xor eax, r11d
imul r11d, eax, 0x1000193
mov al, byte [rdx]
add rdx, rbp
test al, al
jne 0x1800103c7
cmp r11d, 0xd1f79bec
je 0x1800103f3
add ecx, ebp
cmp ecx, dword [r9 + 0x18]
jb 0x1800103ae
mov r10, qword [r10]
jmp 0x18001038a
mov ecx, dword [r9 + 0x24]
add rcx, r8
movzx edx, word [rcx + rbx*2]
mov ecx, dword [r9 + 0x1c]
add rcx, r8
mov eax, dword [rcx + rdx*4]
add rax, r8
mov qword [0x18001c058], rax
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov r10, qword [rcx + 0x10]
mov r8, qword [r10 + 0x30]
movsxd rax, dword [r8 + 0x3c]
mov r9d, dword [rax + r8 + 0x88]
add r9, r8
cmp r9, r8
je 0x180010487
xor ecx, ecx
cmp dword [r9 + 0x18], ecx
jbe 0x180010487
mov edi, dword [r9 + 0x20]
lea rax, [rdi + rcx*4]
mov ebx, ecx
mov edx, dword [rax + r8]
mov r11d, r14d
add rdx, r8
mov al, byte [rdx]
add rdx, rbp
test al, al
je 0x18001047f
movsx eax, al
xor eax, r11d
imul r11d, eax, 0x1000193
mov al, byte [rdx]
add rdx, rbp
test al, al
jne 0x180010460
cmp r11d, 0x615a11c1
je 0x18001048c
add ecx, ebp
cmp ecx, dword [r9 + 0x18]
jb 0x180010447
mov r10, qword [r10]
jmp 0x180010423
mov ecx, dword [r9 + 0x24]
add rcx, r8
movzx edx, word [rcx + rbx*2]
mov ecx, dword [r9 + 0x1c]
add rcx, r8
mov eax, dword [rcx + rdx*4]
add rax, r8
mov qword [0x18001c020], rax
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov r10, qword [rcx + 0x10]
mov r8, qword [r10 + 0x30]
movsxd rax, dword [r8 + 0x3c]
mov r9d, dword [rax + r8 + 0x88]
add r9, r8
cmp r9, r8
je 0x180010520
xor ecx, ecx
cmp dword [r9 + 0x18], ecx
jbe 0x180010520
mov edi, dword [r9 + 0x20]
lea rax, [rdi + rcx*4]
mov ebx, ecx
mov edx, dword [rax + r8]
mov r11d, r14d
add rdx, r8
mov al, byte [rdx]
add rdx, rbp
test al, al
je 0x180010518
movsx eax, al
xor eax, r11d
imul r11d, eax, 0x1000193
mov al, byte [rdx]
add rdx, rbp
test al, al
jne 0x1800104f9
cmp r11d, 0x9332acfd
je 0x180010525
add ecx, ebp
cmp ecx, dword [r9 + 0x18]
jb 0x1800104e0
mov r10, qword [r10]
jmp 0x1800104bc
mov ecx, dword [r9 + 0x24]
add rcx, r8
movzx edx, word [rcx + rbx*2]
mov ecx, dword [r9 + 0x1c]
add rcx, r8
mov eax, dword [rcx + rdx*4]
add rax, r8
mov qword [0x18001c030], rax
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov r10, qword [rcx + 0x10]
mov r8, qword [r10 + 0x30]
movsxd rax, dword [r8 + 0x3c]
mov r9d, dword [rax + r8 + 0x88]
add r9, r8
cmp r9, r8
je 0x1800105b9
xor ecx, ecx
cmp dword [r9 + 0x18], ecx
jbe 0x1800105b9
mov edi, dword [r9 + 0x20]
lea rax, [rdi + rcx*4]
mov ebx, ecx
mov edx, dword [rax + r8]
mov r11d, r14d
add rdx, r8
mov al, byte [rdx]
add rdx, rbp
test al, al
je 0x1800105b1
movsx eax, al
xor eax, r11d
imul r11d, eax, 0x1000193
mov al, byte [rdx]
add rdx, rbp
test al, al
jne 0x180010592
cmp r11d, 0xb0640550
je 0x1800105be
add ecx, ebp
cmp ecx, dword [r9 + 0x18]
jb 0x180010579
mov r10, qword [r10]
jmp 0x180010555
mov ecx, dword [r9 + 0x24]
add rcx, r8
movzx edx, word [rcx + rbx*2]
mov ecx, dword [r9 + 0x1c]
add rcx, r8
mov eax, dword [rcx + rdx*4]
add rax, r8
mov qword [0x18001c028], rax
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov r10, qword [rcx + 0x10]
mov r8, qword [r10 + 0x30]
movsxd rax, dword [r8 + 0x3c]
mov r9d, dword [rax + r8 + 0x88]
add r9, r8
cmp r9, r8
je 0x180010652
xor ecx, ecx
cmp dword [r9 + 0x18], ecx
jbe 0x180010652
mov edi, dword [r9 + 0x20]
lea rax, [rdi + rcx*4]
mov ebx, ecx
mov edx, dword [rax + r8]
mov r11d, r14d
add rdx, r8
mov al, byte [rdx]
add rdx, rbp
test al, al
je 0x18001064a
movsx eax, al
xor eax, r11d
imul r11d, eax, 0x1000193
mov al, byte [rdx]
add rdx, rbp
test al, al
jne 0x18001062b
cmp r11d, 0xda09a27f
je 0x180010657
add ecx, ebp
cmp ecx, dword [r9 + 0x18]
jb 0x180010612
mov r10, qword [r10]
jmp 0x1800105ee
mov ecx, dword [r9 + 0x24]
add rcx, r8
movzx edx, word [rcx + rbx*2]
mov ecx, dword [r9 + 0x1c]
add rcx, r8
mov eax, dword [rcx + rdx*4]
add rax, r8
mov qword [0x18001c050], rax
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov r10, qword [rcx + 0x10]
mov r8, qword [r10 + 0x30]
movsxd rax, dword [r8 + 0x3c]
mov r9d, dword [rax + r8 + 0x88]
add r9, r8
cmp r9, r8
je 0x1800106eb
xor ecx, ecx
cmp dword [r9 + 0x18], ecx
jbe 0x1800106eb
mov edi, dword [r9 + 0x20]
lea rax, [rdi + rcx*4]
mov ebx, ecx
mov edx, dword [rax + r8]
mov r11d, r14d
add rdx, r8
mov al, byte [rdx]
add rdx, rbp
test al, al
je 0x1800106e3
movsx eax, al
xor eax, r11d
imul r11d, eax, 0x1000193
mov al, byte [rdx]
add rdx, rbp
test al, al
jne 0x1800106c4
cmp r11d, 0x3f2be80
je 0x1800106f0
add ecx, ebp
cmp ecx, dword [r9 + 0x18]
jb 0x1800106ab
mov r10, qword [r10]
jmp 0x180010687
mov ecx, dword [r9 + 0x24]
add rcx, r8
movzx edx, word [rcx + rbx*2]
mov ecx, dword [r9 + 0x1c]
add rcx, r8
mov eax, dword [rcx + rdx*4]
add rax, r8
mov qword [0x18001c018], rax
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov r10, qword [rcx + 0x10]
mov r8, qword [r10 + 0x30]
movsxd rax, dword [r8 + 0x3c]
mov r9d, dword [rax + r8 + 0x88]
add r9, r8
cmp r9, r8
je 0x180010784
xor ecx, ecx
cmp dword [r9 + 0x18], ecx
jbe 0x180010784
mov edi, dword [r9 + 0x20]
lea rax, [rdi + rcx*4]
mov ebx, ecx
mov edx, dword [rax + r8]
mov r11d, r14d
add rdx, r8
mov al, byte [rdx]
add rdx, rbp
test al, al
je 0x18001077c
movsx eax, al
xor eax, r11d
imul r11d, eax, 0x1000193
mov al, byte [rdx]
add rdx, rbp
test al, al
jne 0x18001075d
cmp r11d, 0xcef68909
je 0x180010789
add ecx, ebp
cmp ecx, dword [r9 + 0x18]
jb 0x180010744
mov r10, qword [r10]
jmp 0x180010720
mov ecx, dword [r9 + 0x24]
add rcx, r8
movzx edx, word [rcx + rbx*2]
mov ecx, dword [r9 + 0x1c]
add rcx, r8
mov eax, dword [rcx + rdx*4]
add rax, r8
mov qword [0x18001c048], rax
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov r10, qword [rcx + 0x10]
mov r8, qword [r10 + 0x30]
movsxd rax, dword [r8 + 0x3c]
mov r9d, dword [rax + r8 + 0x88]
add r9, r8
cmp r9, r8
je 0x18001081d
xor ecx, ecx
cmp dword [r9 + 0x18], ecx
jbe 0x18001081d
mov edi, dword [r9 + 0x20]
lea rax, [rdi + rcx*4]
mov ebx, ecx
mov edx, dword [rax + r8]
mov r11d, r14d
add rdx, r8
mov al, byte [rdx]
add rdx, rbp
test al, al
je 0x180010815
movsx eax, al
xor eax, r11d
imul r11d, eax, 0x1000193
mov al, byte [rdx]
add rdx, rbp
test al, al
jne 0x1800107f6
cmp r11d, 0xa5356f67
je 0x180010822
add ecx, ebp
cmp ecx, dword [r9 + 0x18]
jb 0x1800107dd
mov r10, qword [r10]
jmp 0x1800107b9
mov ecx, dword [r9 + 0x24]
add rcx, r8
movzx edx, word [rcx + rbx*2]
mov ecx, dword [r9 + 0x1c]
add rcx, r8
mov eax, dword [rcx + rdx*4]
add rax, r8
mov qword [0x18001c040], rax
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov r10, qword [rcx + 0x10]
mov r8, qword [r10 + 0x30]
movsxd rax, dword [r8 + 0x3c]
mov r9d, dword [rax + r8 + 0x88]
add r9, r8
cmp r9, r8
je 0x1800108b5
xor ecx, ecx
cmp dword [r9 + 0x18], ecx
jbe 0x1800108b5
mov edi, dword [r9 + 0x20]
lea rax, [r8 + rcx*4]
mov ebx, ecx
mov edx, dword [rax + rdi]
mov r11d, r14d
add rdx, r8
mov al, byte [rdx]
add rdx, rbp
test al, al
je 0x1800108ad
movsx eax, al
xor eax, r11d
imul r11d, eax, 0x1000193
mov al, byte [rdx]
add rdx, rbp
test al, al
jne 0x18001088e
cmp r11d, 0xcb03686c
je 0x1800108ba
add ecx, ebp
cmp ecx, dword [r9 + 0x18]
jb 0x180010876
mov r10, qword [r10]
jmp 0x180010852
mov ecx, dword [r9 + 0x24]
add rcx, r8
movzx edx, word [rcx + rbx*2]
mov ecx, dword [r9 + 0x1c]
add rcx, r8
mov eax, dword [rcx + rdx*4]
add rax, r8
mov qword [0x18001b8e0], rax
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov r10, qword [rcx + 0x10]
mov r8, qword [r10 + 0x30]
movsxd rax, dword [r8 + 0x3c]
mov r9d, dword [rax + r8 + 0x88]
add r9, r8
cmp r9, r8
je 0x18001094d
xor ecx, ecx
cmp dword [r9 + 0x18], ecx
jbe 0x18001094d
mov edi, dword [r9 + 0x20]
lea rax, [r8 + rcx*4]
mov ebx, ecx
mov edx, dword [rax + rdi]
mov r11d, r14d
add rdx, r8
mov al, byte [rdx]
add rdx, rbp
test al, al
je 0x180010945
movsx eax, al
xor eax, r11d
imul r11d, eax, 0x1000193
mov al, byte [rdx]
add rdx, rbp
test al, al
jne 0x180010926
cmp r11d, 0xd697c396
je 0x180010952
add ecx, ebp
cmp ecx, dword [r9 + 0x18]
jb 0x18001090e
mov r10, qword [r10]
jmp 0x1800108ea
mov ecx, dword [r9 + 0x24]
mov rbp, qword [rsp + 0x10]
add rcx, r8
mov rdi, qword [rsp + 0x18]
mov r14, qword [rsp + 0x20]
movzx edx, word [rcx + rbx*2]
mov ecx, dword [r9 + 0x1c]
mov rbx, qword [rsp + 8]
add rcx, r8
mov eax, dword [rcx + rdx*4]
add rax, r8
mov qword [0x18001bfa0], rax
ret