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

Disassembly:
mov qword [rsp + 0x20], r9
push rbp
push rsi
push r13
push r14
push r15
lea rbp, [rsp - 0x17]
sub rsp, 0xf0
mov rdx, qword [0x1800ccf18]
mov rsi, r9
mov r10, qword [0x1800ccf20]
mov r13, r8
mov r15, rcx
movabs r14, 0x7ffffffdfffe
cmp rcx, rdx
jbe 0x18001f8d8
lea rax, [r10 + rdx]
cmp rcx, rax
jb 0x18001f8e8
lea rax, [rcx - 0x10000]
cmp rax, r14
ja 0x18001ff17
cmp r13, rdx
jbe 0x18001f8f6
lea rax, [r10 + rdx]
cmp r13, rax
jb 0x18001f906
lea rax, [r8 - 0x10000]
cmp rax, r14
ja 0x18001ff17
mov rcx, qword [rbp + 0x67]
cmp rcx, rdx
jbe 0x18001f918
lea rax, [r10 + rdx]
cmp rcx, rax
jb 0x18001f928
lea rax, [rcx - 0x10000]
cmp rax, r14
ja 0x18001ff17
mov rcx, r15
movaps xmmword [rsp + 0xd0], xmm6
call fcn.18000f770
movss xmm6, dword [rax]
call fcn.1800168b0
comiss xmm6, xmm0
jae 0x18001ff0f
mov rcx, r15
call fcn.180010140
test al, al
je 0x18001ff0f
mov rcx, r15
call fcn.18000ff10
test al, al
jne 0x18001ff0f
movabs rcx, 0x75cc4ec9e2a369e
mov qword [rsp + 0x128], rbx
mov qword [rsp + 0xe8], rdi
lea rdx, [rsp + 0x40]
mov qword [rsp + 0xe0], r12
movabs r12, 0x493d35de0f97ae5
mov qword [rbp + 0x47], r12
mov rax, qword [rbp + 0x47]
mov qword [rsp + 0x40], rax
mov qword [rbp + 0x47], rcx
mov rax, qword [rbp + 0x47]
mov qword [rsp + 0x48], rax
mov qword [rbp + 0x47], r12
mov rax, qword [rbp + 0x47]
mov qword [rsp + 0x30], rax
mov qword [rbp + 0x47], rcx
mov rax, qword [rbp + 0x47]
movdqa xmm0, xmmword [rsp + 0x40]
mov qword [rsp + 0x38], rax
movabs rax, 0x33a6e16b869d4fc0
xorps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x40], xmm0
mov qword [rbp + 0x47], rax
mov rax, qword [rbp + 0x47]
mov qword [rbp - 0x59], rax
movabs rax, 0x6239f38efc4f54ab
mov qword [rbp + 0x47], rax
mov rax, qword [rbp + 0x47]
mov qword [rbp - 0x51], rax
movabs rax, 0xfaeb2a94a600fa87
mov qword [rbp + 0x47], rax
mov rax, qword [rbp + 0x47]
mov qword [rbp - 0x49], rax
movabs rax, 0x6064e392232655b0
mov qword [rbp + 0x47], rax
mov rax, qword [rbp + 0x47]
mov qword [rbp - 0x41], rax
movabs rax, 0xf550c2703f498531
mov qword [rbp + 0x47], rax
mov rax, qword [rbp + 0x47]
mov qword [rbp - 0x39], rax
movabs rax, 0xed8c5160175d7376
mov qword [rbp + 0x47], rax
mov rax, qword [rbp + 0x47]
mov qword [rbp - 0x31], rax
mov qword [rbp + 0x47], r12
mov rax, qword [rbp + 0x47]
mov qword [rsp + 0x50], rax
mov qword [rbp + 0x47], rcx
lea rcx, [rbp - 0x59]
mov rax, qword [rbp + 0x47]
mov qword [rsp + 0x58], rax
movabs rax, 0x9ed913a39038c8bf
mov qword [rbp + 0x47], rax
mov rax, qword [rbp + 0x47]
mov qword [rbp - 0x79], rax
movabs rax, 0x45dd4aa47163680
mov qword [rbp + 0x47], rax
mov rax, qword [rbp + 0x47]
mov qword [rbp - 0x71], rax
movabs rax, 0xcc35f0115c2ab009
mov qword [rbp + 0x47], rax
mov rax, qword [rbp + 0x47]
mov qword [rbp - 0x69], rax
movabs rax, 0xed8c5160175d7312
mov qword [rbp + 0x47], rax
mov rax, qword [rbp + 0x47]
movdqa xmm0, xmmword [rbp - 0x59]
xorps xmm0, xmmword [rsp + 0x50]
movdqa xmm1, xmmword [rbp - 0x49]
xorps xmm1, xmmword [rbp - 0x79]
movdqa xmmword [rbp - 0x59], xmm0
movdqa xmm0, xmmword [rbp - 0x39]
mov qword [rbp - 0x61], rax
xorps xmm0, xmmword [rbp - 0x69]
movdqa xmmword [rbp - 0x39], xmm0
movdqa xmmword [rbp - 0x49], xmm1
call fcn.18000a8c0
mov rdx, qword [0x1800cf048]
test rdx, rdx
mov qword [rbp + 0x47], rax
jne 0x18001fc05
mov rcx, qword gs:[0x60]
mov rdx, qword [rcx + 0x18]
mov rcx, qword [rdx + 0x10]
mov r12, qword [rcx]
mov r14, r12
nop word [rax + rax]
mov r11, qword [r14 + 0x30]
movsxd rax, dword [r11 + 0x3c]
mov esi, dword [rax + r11 + 0x88]
add rsi, r11
cmp rsi, r11
je 0x18001fbca
mov r10d, dword [rsi + 0x18]
test r10d, r10d
je 0x18001fbca
mov edi, dword [rsi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r10d
mov r9d, 0x2c30c6c4
lea rax, [rdi + r10*4]
mov r8d, dword [rax + r11]
add r8, r11
movzx edx, byte [r8]
inc r8
test dl, dl
je 0x18001fbc5
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 0x18001fb90
cmp r9d, 0x4d8ed111
je 0x18001ff27
test r10d, r10d
jne 0x18001fb70
mov rax, qword [r14]
mov r14, rax
cmp rax, r12
je 0x18001fbe0
cmp qword [rax + 0x30], 0
jne 0x18001fb40
xor edx, edx
mov rsi, qword [rbp + 0x5f]
movabs r14, 0x7ffffffdfffe
mov rax, qword [rbp + 0x47]
movabs r12, 0x493d35de0f97ae5
mov qword [0x1800cf048], rdx
mov rcx, rax
call rdx
mov rcx, qword [0x1800ccf30]
mov edx, 0x2f
mov rbx, rax
call fcn.180020100
lea rdx, [rsp + 0x40]
mov rcx, rax
mov rdi, rax
call fcn.180016df0
lea r8, [rsp + 0x30]
lea rdx, [rbp - 0x29]
mov ecx, dword [rax + 8]
movsd xmm0, qword [rax]
mov dword [rsp + 0x38], ecx
mov rcx, rdi
movsd qword [rsp + 0x30], xmm0
call fcn.180017270
mov eax, dword [rsi + 8]
xorps xmm0, xmm0
movsd xmm2, qword [rsi]
xorps xmm6, xmm6
unpcklps xmm0, xmm6
movsd qword [rbp - 0x7d], xmm0
movsd qword [rsp + 0x30], xmm0
mov dword [rsp + 0x58], eax
movups xmm0, xmmword [rsp + 0x50]
mov dword [rbx + 0x50], 0x447a0000
movss dword [rbp - 0x75], xmm6
movsd xmm0, xmm2
mov byte [rbx + 0x14], 1
movups xmmword [rbx + 0xb0], xmm0
mov qword [rbx + 0x28], rdi
movups xmmword [rsp + 0x50], xmm0
mov qword [rbx + 0xd0], r13
movsd xmm0, qword [rbp - 0x79]
movsd qword [rbx + 0xc0], xmm0
mov rcx, qword [0x1800ccf18]
movss dword [rsp + 0x38], xmm6
cmp rdi, rcx
jbe 0x18001fcca
add rcx, qword [0x1800ccf20]
cmp rdi, rcx
jb 0x18001fcda
lea rax, [rdi - 0x10000]
cmp rax, r14
ja 0x18001fef7
mov rcx, qword [0x1800ccf30]
mov edx, 0x2f
call fcn.180020100
lea rdx, [rsp + 0x40]
mov rcx, rax
call fcn.180016df0
lea r8, [rsp + 0x30]
mov rcx, rdi
lea rdx, [rbp - 0x19]
movsd xmm0, qword [rax]
mov eax, dword [rax + 8]
movsd qword [rsp + 0x30], xmm0
mov dword [rsp + 0x38], eax
call fcn.180017270
movsd xmm0, qword [rbp - 0x29]
movsd qword [rbx + 0x58], xmm0
xorps xmm0, xmm0
mov eax, dword [rbp - 0x21]
unpcklps xmm0, xmm6
movsd qword [rbx + 0x94], xmm0
movss dword [rbx + 0x9c], xmm6
mov dword [rbx + 0x60], eax
mov rax, qword [0x1800acf60]
movss dword [rsp + 0x38], xmm6
movsd qword [rsp + 0x30], xmm0
cmp rax, 0x402402
jne 0x18001fed0
mov qword [rbp + 0x47], r12
movabs rcx, 0x75cc4ec9e2a369e
mov rax, qword [rbp + 0x47]
movabs rdx, 0x9ed913a39038c8bf
mov qword [rsp + 0x40], rax
movabs r8, 0x45dd4aa47163680
mov qword [rbp + 0x47], rcx
mov r9b, 1
mov rax, qword [rbp + 0x47]
mov qword [rsp + 0x48], rax
mov qword [rbp + 0x47], r12
mov rax, qword [rbp + 0x47]
mov qword [rsp + 0x30], rax
mov qword [rbp + 0x47], rcx
mov rax, qword [rbp + 0x47]
movdqa xmm0, xmmword [rsp + 0x40]
mov qword [rsp + 0x38], rax
movabs rax, 0x76c3b63a81941b81
xorps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x40], xmm0
mov qword [rbp + 0x47], rax
mov rax, qword [rbp + 0x47]
mov qword [rbp - 0x59], rax
movabs rax, 0x7439ad98ec4f46f1
mov qword [rbp + 0x47], rax
mov rax, qword [rbp + 0x47]
mov qword [rbp - 0x51], rax
mov qword [rbp + 0x47], rdx
mov rax, qword [rbp + 0x47]
mov qword [rbp - 0x49], rax
mov qword [rbp + 0x47], r8
mov rax, qword [rbp + 0x47]
mov qword [rbp - 0x41], rax
mov qword [rbp + 0x47], r12
mov rax, qword [rbp + 0x47]
mov qword [rsp + 0x50], rax
mov qword [rbp + 0x47], rcx
mov rax, qword [rbp + 0x47]
mov qword [rsp + 0x58], rax
mov qword [rbp + 0x47], rdx
lea rdx, [rbp - 0x59]
mov rax, qword [rbp + 0x47]
mov qword [rbp - 0x79], rax
mov qword [rbp + 0x47], r8
lea r8, [rsp + 0x40]
mov rax, qword [rbp + 0x47]
movdqa xmm0, xmmword [rbp - 0x59]
xorps xmm0, xmmword [rsp + 0x50]
movdqa xmm1, xmmword [rbp - 0x49]
mov qword [rbp - 0x71], rax
movabs rax, 0x61ffb610858a1ba7
xorps xmm1, xmmword [rbp - 0x79]
movdqa xmmword [rbp - 0x59], xmm0
movdqa xmmword [rbp - 0x49], xmm1
mov qword [rbp + 0x47], rax
mov rax, qword [rbp + 0x47]
mov qword [rsp + 0x30], rax
movabs rax, 0x75cc4ec9e2a36fb
mov qword [rbp + 0x47], rax
mov rax, qword [rbp + 0x47]
mov qword [rsp + 0x38], rax
mov qword [rbp + 0x47], r12
mov rax, qword [rbp + 0x47]
mov qword [rsp + 0x50], rax
mov qword [rbp + 0x47], rcx
lea rcx, [rsp + 0x30]
mov rax, qword [rbp + 0x47]
movdqa xmm0, xmmword [rsp + 0x30]
mov qword [rsp + 0x58], rax
xorps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x30], xmm0
mov byte [rsp + 0x20], 0
call fcn.18000c050
mov qword [0x1800acf60], rax
mov rax, qword [rax + r15]
mov rcx, r15
mov qword [rbx + 0x30], rax
call fcn.18000fd60
mov rcx, r15
movss xmm1, dword [rax]
call fcn.1800106e0
mov rdx, rbx
mov rcx, r15
call fcn.1800104a0
mov r12, qword [rsp + 0xe0]
mov rdi, qword [rsp + 0xe8]
mov rbx, qword [rsp + 0x128]
movaps xmm6, xmmword [rsp + 0xd0]
add rsp, 0xf0
pop r15
pop r14
pop r13
pop rsi
pop rbp
ret
mov ecx, dword [rsi + 0x24]
add rcx, r11
movzx edx, word [rcx + r10*2]
mov ecx, dword [rsi + 0x1c]
add rcx, r11
mov edx, dword [rcx + rdx*4]
add rdx, r11
jmp 0x18001fbe2