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

Disassembly:
push rbp
push r13
push r15
lea rbp, [rsp - 0x47]
sub rsp, 0xf0
mov rax, qword [0x1801491e0]
xor rax, rsp
mov qword [rbp - 0x19], rax
cmp byte [0x180173948], 0
mov r13, rdx
mov r15, rcx
je 0x18001a871
mov rax, qword [0x180177328]
movss xmm0, dword [rcx + 8]
movss xmm1, dword [rcx]
movss xmm2, dword [rcx + 4]
subss xmm2, dword [rax + 0x94]
subss xmm0, dword [rax + 0x98]
subss xmm1, dword [rax + 0x90]
mulss xmm2, xmm2
mulss xmm0, xmm0
mulss xmm1, xmm1
addss xmm2, xmm1
addss xmm2, xmm0
xorps xmm0, xmm0
ucomiss xmm0, xmm2
ja 0x18001a5a5
xorps xmm0, xmm0
sqrtss xmm0, xmm2
jmp 0x18001a5ad
movaps xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movss xmm1, dword [0x18012c540]
comiss xmm1, xmm0
jbe 0x18001a871
mov edx, dword [0x180173958]
lea rcx, [rbp - 0x51]
mov qword [rsp + 0xe0], r14
call fcn.1800199e0
movups xmm2, xmmword [rax]
movups xmm0, xmmword [rax + 0x10]
movsd xmm1, qword [rax + 0x20]
movups xmmword [rbp - 0x79], xmm2
psrldq xmm2, 8
movq r14, xmm2
movsd qword [rbp - 0x59], xmm1
movups xmmword [rbp - 0x69], xmm0
test r14, r14
je 0x18001a869
movss xmm0, dword [0x18017394c]
comiss xmm0, dword [rbp - 0x59]
jb 0x18001a869
movss xmm0, dword [0x180173954]
cvtps2pd xmm0, xmm0
comisd xmm0, xmmword [rbp - 0x61]
jb 0x18001a869
mov rax, qword [0x180178b38]
mov qword [rsp + 0x120], rbx
test rax, rax
jne 0x18001a717
mov rax, qword gs:[0x60]
mov qword [rsp + 0x128], rsi
mov qword [rsp + 0xe8], rdi
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov r11, rsi
nop dword [rax + rax]
mov r9, qword [r11 + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov ebx, dword [rax + r9 + 0x88]
add rbx, r9
cmp rbx, r9
je 0x18001a6e8
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x18001a6e8
mov edi, dword [rbx + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r8d
mov edx, 0xf5df95c0
lea rax, [rdi + r8*4]
mov ecx, dword [rax + r9]
add rcx, r9
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x18001a6e3
nop dword [rax]
movsx eax, al
lea rcx, [rcx + 1]
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx - 1]
test al, al
jne 0x18001a6c0
cmp edx, 0xdb68d910
je 0x18001a7be
test r8d, r8d
jne 0x18001a6a0
mov rax, qword [r11]
mov r11, rax
cmp rax, rsi
je 0x18001a6fe
cmp qword [rax + 0x30], 0
jne 0x18001a670
xor eax, eax
mov rdi, qword [rsp + 0xe8]
mov rsi, qword [rsp + 0x128]
mov qword [0x180178b38], rax
mov ecx, dword [reloc.WS2_32.dll_bind]
call rax
bt ax, 0xf
jae 0x18001a861
mov r8d, dword [rbp - 0x79]
lea rdx, [rbp - 0x29]
movaps xmmword [rsp + 0xd0], xmm6
mov rcx, r14
movaps xmmword [rsp + 0xc0], xmm7
movaps xmmword [rsp + 0xb0], xmm8
movaps xmmword [rsp + 0xa0], xmm9
call qword [0x180177320]
cmp dword [rbp - 0x79], 0x1233
movaps xmm8, xmmword [rbp - 0x29]
movaps xmm9, xmm8
movss dword [rbp - 0x29], xmm8
movaps xmm7, xmm8
shufps xmm9, xmm8, 0x55
shufps xmm7, xmm8, 0xaa
movss dword [rbp - 0x25], xmm9
movss dword [rbp - 0x21], xmm7
jne 0x18001a7da
movsd xmm6, qword [r14 + 0x90]
mov ebx, dword [r14 + 0x98]
movaps xmm0, xmm6
shufps xmm0, xmm0, 0x55
mov dword [rbp - 0x21], ebx
movaps xmm9, xmm0
movss xmm7, dword [rbp - 0x21]
movsd qword [rbp - 0x29], xmm6
movss xmm8, dword [rbp - 0x29]
jmp 0x18001a7e2
mov ecx, dword [rbx + 0x24]
add rcx, r9
movzx edx, word [rcx + r8*2]
mov ecx, dword [rbx + 0x1c]
add rcx, r9
mov eax, dword [rcx + rdx*4]
add rax, r9
jmp 0x18001a700
mov ebx, dword [rbp - 0x21]
movsd xmm6, qword [rbp - 0x29]
cmp byte [0x1801771fd], 0
je 0x18001a809
cmp byte [rbp - 0x55], 0
jne 0x18001a809
lea rcx, [rsp + 0x20]
movsd qword [rsp + 0x20], xmm6
mov dword [rsp + 0x28], ebx
call fcn.180016e30
test al, al
jne 0x18001a83f
cmp byte [0x180173950], 0
je 0x18001a835
addss xmm7, dword [0x18012c48c]
movaps xmm0, xmm8
unpcklps xmm0, xmm9
movsd qword [r15], xmm0
movss dword [rsp + 0x28], xmm7
mov eax, dword [rsp + 0x28]
mov dword [r15 + 8], eax
movsd qword [r13], xmm6
mov dword [r13 + 8], ebx
movaps xmm8, xmmword [rsp + 0xb0]
movaps xmm7, xmmword [rsp + 0xc0]
movaps xmm6, xmmword [rsp + 0xd0]
movaps xmm9, xmmword [rsp + 0xa0]
mov rbx, qword [rsp + 0x120]
mov r14, qword [rsp + 0xe0]
mov rcx, qword [rbp - 0x19]
xor rcx, rsp
call fcn.180107ca0
add rsp, 0xf0
pop r15
pop r13
pop rbp
ret