Function at 0x18003b080
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 rdi
push r13
push r15
lea rbp, [rsp - 0x40]
sub rsp, 0x140
mov r10, qword [0x1800eae58]
mov rsi, r9
mov r11, qword [0x1800eae60]
mov r13, r8
mov r15, rcx
movabs rdi, 0x7ffffffdfffe
cmp r8, r10
jbe 0x18003b0c7
lea rax, [r11 + r10]
cmp r8, rax
jb 0x18003b0d7
lea rax, [r8 - 0x10000]
cmp rax, rdi
ja 0x18003b90d
cmp rdx, r10
jbe 0x18003b0e5
lea rax, [r11 + r10]
cmp rdx, rax
jb 0x18003b0f5
lea rax, [rdx - 0x10000]
cmp rax, rdi
ja 0x18003b90d
movaps xmmword [rsp + 0x120], xmm6
call fcn.180014430
movss xmm6, dword [rax]
call fcn.18001c830
comiss xmm6, xmm0
jae 0x18003b905
mov rcx, r15
call fcn.180015080
test al, al
je 0x18003b905
mov rcx, r15
call fcn.180014c20
test al, al
jne 0x18003b905
mov qword [rsp + 0x170], rbx
lea rdx, [rsp + 0x30]
mov qword [rsp + 0x138], r12
lea rcx, [rbp - 0x80]
movabs r12, 0xc1075ecd36131414
mov qword [rsp + 0x130], r14
movabs r14, 0x10eed3cc94530b27
mov qword [rbp + 0x80], r14
mov rax, qword [rbp + 0x80]
mov qword [rsp + 0x30], rax
mov qword [rbp + 0x80], r12
mov rax, qword [rbp + 0x80]
mov qword [rsp + 0x38], rax
mov qword [rbp + 0x80], r14
mov rax, qword [rbp + 0x80]
mov qword [rsp + 0x40], rax
mov qword [rbp + 0x80], r12
mov rax, qword [rbp + 0x80]
movdqa xmm0, xmmword [rsp + 0x30]
mov qword [rsp + 0x48], rax
movabs rax, 0x27dbe1faf2373e02
xorps xmm0, xmmword [rsp + 0x40]
movdqa xmmword [rsp + 0x30], xmm0
mov qword [rbp + 0x80], rax
mov rax, qword [rbp + 0x80]
mov qword [rbp - 0x80], rax
movabs rax, 0xa46269af54767621
mov qword [rbp + 0x80], rax
mov rax, qword [rbp + 0x80]
mov qword [rbp - 0x78], rax
movabs rax, 0x6504fd2539331b41
mov qword [rbp + 0x80], rax
mov rax, qword [rbp + 0x80]
mov qword [rbp - 0x70], rax
movabs rax, 0xc386da4b1b5bcd9e
mov qword [rbp + 0x80], rax
mov rax, qword [rbp + 0x80]
mov qword [rbp - 0x68], rax
movabs rax, 0x3040ab01e7cc82f3
mov qword [rbp + 0x80], rax
mov rax, qword [rbp + 0x80]
mov qword [rbp - 0x60], rax
movabs rax, 0xb6fdddb1d322268c
mov qword [rbp + 0x80], rax
mov rax, qword [rbp + 0x80]
mov qword [rbp - 0x58], rax
mov qword [rbp + 0x80], r14
mov rax, qword [rbp + 0x80]
mov qword [rsp + 0x50], rax
mov qword [rbp + 0x80], r12
mov rax, qword [rbp + 0x80]
mov qword [rsp + 0x58], rax
movabs rax, 0x136c4120f0b2979
mov qword [rbp + 0x80], rax
mov rax, qword [rbp + 0x80]
mov qword [rsp + 0x60], rax
movabs rax, 0xa7bfed737f6baeae
mov qword [rbp + 0x80], rax
mov rax, qword [rbp + 0x80]
mov qword [rsp + 0x68], rax
movabs rax, 0x925996084afb7cb
mov qword [rbp + 0x80], rax
mov rax, qword [rbp + 0x80]
mov qword [rsp + 0x70], rax
movabs rax, 0xb6fdddb1d32226e8
mov qword [rbp + 0x80], rax
mov rax, qword [rbp + 0x80]
movdqa xmm0, xmmword [rbp - 0x80]
xorps xmm0, xmmword [rsp + 0x50]
movdqa xmm1, xmmword [rbp - 0x70]
xorps xmm1, xmmword [rsp + 0x60]
movdqa xmmword [rbp - 0x80], xmm0
movdqa xmm0, xmmword [rbp - 0x60]
mov qword [rsp + 0x78], rax
xorps xmm0, xmmword [rsp + 0x70]
movdqa xmmword [rbp - 0x60], xmm0
movdqa xmmword [rbp - 0x70], xmm1
call fcn.1800429a0
mov rcx, qword [0x1800ecf98]
test rcx, rcx
mov qword [rbp + 0x80], rax
jne 0x18003b43e
mov rcx, qword gs:[0x60]
mov rdx, qword [rcx + 0x18]
mov rcx, qword [rdx + 0x10]
mov r12, qword [rcx]
mov r14, r12
nop dword [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 0x18003b3fa
mov r10d, dword [rsi + 0x18]
test r10d, r10d
je 0x18003b3fa
mov edi, dword [rsi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r10d
mov r9d, 0x9da0e9
lea rax, [rdi + r10*4]
mov r8d, dword [rax + r11]
add r8, r11
movzx edx, byte [r8]
inc r8
test dl, dl
je 0x18003b3f5
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 0x18003b3c0
cmp r9d, 0x5c62511a
je 0x18003b524
test r10d, r10d
jne 0x18003b3a0
mov rax, qword [r14]
mov r14, rax
cmp rax, r12
je 0x18003b410
cmp qword [rax + 0x30], 0
jne 0x18003b370
xor ecx, ecx
mov rsi, qword [rbp + 0x88]
movabs rdi, 0x7ffffffdfffe
mov qword [0x1800ecf98], rcx
movabs r14, 0x10eed3cc94530b27
movabs r12, 0xc1075ecd36131414
mov qword gs:[0x130], rcx
mov rax, qword [0x1800c5210]
mov rcx, qword [rbp + 0x80]
mov qword gs:[0x128], rax
call fcn.1800c3200
mov rbx, rax
mov rax, qword [0x1800eae58]
cmp rbx, rax
jbe 0x18003b481
mov rdx, qword [0x1800eae60]
add rdx, rax
cmp rbx, rdx
jb 0x18003b491
lea rcx, [rbx - 0x10000]
cmp rcx, rdi
ja 0x18003b8ed
mov rdi, qword [rbp + 0x98]
movaps xmmword [rsp + 0x110], xmm7
movaps xmmword [rsp + 0x100], xmm8
movaps xmmword [rsp + 0xf0], xmm9
movss xmm7, dword [rdi]
movss xmm8, dword [rdi + 4]
movss xmm6, dword [rdi + 8]
movaps xmmword [rsp + 0xe0], xmm10
movaps xmm9, xmm6
subss xmm9, dword [rsi + 8]
movaps xmmword [rsp + 0xd0], xmm11
movaps xmm10, xmm7
subss xmm10, dword [rsi]
movaps xmm11, xmm8
subss xmm11, dword [rsi + 4]
movaps xmm1, xmm9
mulss xmm1, xmm9
movaps xmm0, xmm10
mulss xmm0, xmm10
movaps xmm2, xmm11
mulss xmm2, xmm11
addss xmm2, xmm0
xorps xmm0, xmm0
addss xmm2, xmm1
ucomiss xmm0, xmm2
ja 0x18003b540
xorps xmm0, xmm0
sqrtss xmm0, xmm2
jmp 0x18003b548
mov ecx, dword [rsi + 0x24]
add rcx, r11
movzx edx, word [rcx + r10*2]
mov ecx, dword [rsi + 0x1c]
add rcx, r11
mov ecx, dword [rcx + rdx*4]
add rcx, r11
jmp 0x18003b412
movaps xmm0, xmm2
call fcn.1800c2810
mov eax, dword [rsi + 8]
lea r8, [rsp + 0x30]
divss xmm9, xmm0
mov dword [rsp + 0x58], eax
lea rdx, [rbp - 0x40]
mov eax, dword [rdi + 8]
divss xmm10, xmm0
divss xmm11, xmm0
movsd xmm0, qword [rsi]
movsd qword [rsp + 0x50], xmm0
movaps xmm0, xmm10
unpcklps xmm0, xmm11
movsd qword [rsp + 0x30], xmm0
movsd qword [rsp + 0x5c], xmm0
movsd xmm0, qword [rdi]
mov rdi, qword [rbp + 0x90]
movss dword [rsp + 0x38], xmm9
mov rcx, rdi
movss dword [rsp + 0x64], xmm9
movsd qword [rsp + 0x30], xmm0
mov dword [rsp + 0x38], eax
call fcn.18001d1f0
movaps xmm11, xmmword [rsp + 0xd0]
movaps xmm0, xmm7
movaps xmm10, xmmword [rsp + 0xe0]
movaps xmm2, xmm8
movaps xmm9, xmmword [rsp + 0xf0]
movaps xmm1, xmm6
mulss xmm2, xmm8
mulss xmm0, xmm7
mulss xmm1, xmm6
addss xmm2, xmm0
xorps xmm0, xmm0
addss xmm2, xmm1
ucomiss xmm0, xmm2
ja 0x18003b5fe
xorps xmm0, xmm0
sqrtss xmm0, xmm2
jmp 0x18003b606
movaps xmm0, xmm2
call fcn.1800c2810
comiss xmm0, dword [0x1800c8040]
jbe 0x18003b61e
divss xmm7, xmm0
divss xmm8, xmm0
divss xmm6, xmm0
jmp 0x18003b652
xorps xmm3, xmm3
xorps xmm0, xmm0
unpcklps xmm0, xmm3
movaps xmm1, xmm0
movsd qword [rsp + 0x30], xmm0
movd eax, xmm3
shufps xmm0, xmm0, 0x55
movsd qword [rsp + 0x30], xmm1
movaps xmm8, xmm0
movss xmm7, dword [rsp + 0x30]
movss dword [rsp + 0x38], xmm3
movd xmm6, eax
movaps xmm0, xmm7
movss dword [rsp + 0x38], xmm6
unpcklps xmm0, xmm8
lea r8, [rsp + 0x30]
movsd qword [rsp + 0x30], xmm0
lea rdx, [rbp - 0x50]
mov rcx, rdi
movsd qword [rsp + 0x30], xmm0
movss dword [rsp + 0x38], xmm6
call fcn.18001cfa0
movups xmm0, xmmword [rsp + 0x50]
mov qword [rbx + 0xd0], r13
movsd xmm1, qword [rsp + 0x60]
movaps xmm8, xmmword [rsp + 0x100]
movaps xmm7, xmmword [rsp + 0x110]
movups xmmword [rbx + 0xb0], xmm0
mov byte [rbx + 0x14], 1
movsd qword [rbx + 0xc0], xmm1
mov dword [rbx + 0x50], 0x41000000
mov qword [rbx + 0x28], rdi
movsd xmm0, qword [rbp - 0x50]
movsd qword [rbx + 0x94], xmm0
mov eax, dword [rbp - 0x48]
mov dword [rbx + 0x9c], eax
movsd xmm0, qword [rbp - 0x40]
movsd qword [rbx + 0x58], xmm0
mov eax, dword [rbp - 0x38]
mov dword [rbx + 0x60], eax
mov rax, qword [0x1800c5cc0]
cmp rax, 0x402402
jne 0x18003b8c6
mov qword [rbp + 0x80], r14
lea r8, [rsp + 0x30]
mov rax, qword [rbp + 0x80]
movabs rcx, 0x136c4120f0b2979
mov qword [rsp + 0x30], rax
movabs rdx, 0xa7bfed737f6baeae
mov qword [rbp + 0x80], r12
mov r9b, 1
mov rax, qword [rbp + 0x80]
mov qword [rsp + 0x38], rax
mov qword [rbp + 0x80], r14
mov rax, qword [rbp + 0x80]
mov qword [rsp + 0x40], rax
mov qword [rbp + 0x80], r12
mov rax, qword [rbp + 0x80]
movdqa xmm0, xmmword [rsp + 0x30]
mov qword [rsp + 0x48], rax
movabs rax, 0x62beb6abf53e6a43
xorps xmm0, xmmword [rsp + 0x40]
movdqa xmmword [rsp + 0x30], xmm0
mov qword [rbp + 0x80], rax
mov rax, qword [rbp + 0x80]
mov qword [rbp - 0x80], rax
movabs rax, 0xb26237b94476647b
mov qword [rbp + 0x80], rax
mov rax, qword [rbp + 0x80]
mov qword [rbp - 0x78], rax
mov qword [rbp + 0x80], rcx
mov rax, qword [rbp + 0x80]
mov qword [rbp - 0x70], rax
mov qword [rbp + 0x80], rdx
mov rax, qword [rbp + 0x80]
mov qword [rbp - 0x68], rax
mov qword [rbp + 0x80], r14
mov rax, qword [rbp + 0x80]
mov qword [rsp + 0x50], rax
mov qword [rbp + 0x80], r12
mov rax, qword [rbp + 0x80]
mov qword [rsp + 0x58], rax
mov qword [rbp + 0x80], rcx
lea rcx, [rsp + 0x40]
mov rax, qword [rbp + 0x80]
mov qword [rsp + 0x60], rax
mov qword [rbp + 0x80], rdx
lea rdx, [rbp - 0x80]
mov rax, qword [rbp + 0x80]
movdqa xmm0, xmmword [rbp - 0x80]
xorps xmm0, xmmword [rsp + 0x50]
movdqa xmm1, xmmword [rbp - 0x70]
mov qword [rsp + 0x68], rax
movabs rax, 0x7582b681f1206a65
xorps xmm1, xmmword [rsp + 0x60]
movdqa xmmword [rbp - 0x80], xmm0
movdqa xmmword [rbp - 0x70], xmm1
mov qword [rbp + 0x80], rax
mov rax, qword [rbp + 0x80]
mov qword [rsp + 0x40], rax
movabs rax, 0xc1075ecd36131471
mov qword [rbp + 0x80], rax
mov rax, qword [rbp + 0x80]
mov qword [rsp + 0x48], rax
mov qword [rbp + 0x80], r14
mov rax, qword [rbp + 0x80]
mov qword [rsp + 0x50], rax
mov qword [rbp + 0x80], r12
mov rax, qword [rbp + 0x80]
movdqa xmm0, xmmword [rsp + 0x40]
mov qword [rsp + 0x58], rax
xorps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x40], xmm0
mov byte [rsp + 0x20], 0
call fcn.180043270
mov qword [0x1800c5cc0], rax
mov rax, qword [rax + r15]
mov rcx, r15
mov qword [rbx + 0x30], rax
call fcn.180014a70
mov rcx, r15
movss xmm1, dword [rax]
call fcn.180015990
mov rdx, rbx
mov rcx, r15
call fcn.180015590
mov r14, qword [rsp + 0x130]
mov r12, qword [rsp + 0x138]
mov rbx, qword [rsp + 0x170]
movaps xmm6, xmmword [rsp + 0x120]
add rsp, 0x140
pop r15
pop r13
pop rdi
pop rsi
pop rbp
ret