Function at 0x180035c50
Capabilities:
Access peb ldr_data
Create thread
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x60
mov rax, qword [0x1800c1280]
xor rax, rsp
mov qword [rsp + 0x50], rax
cmp edx, 1
jne 0x180035efc
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
mov rbx, qword [rax + 0x30]
movsxd rcx, dword [rbx + 0x3c]
mov ebp, dword [rcx + rbx + 0x88]
add rbp, rbx
cmp rbp, rbx
je 0x180035d18
mov r11d, dword [rbp + 0x18]
test r11d, r11d
je 0x180035d18
mov esi, dword [rbp + 0x20]
nop dword [rax]
nop word [rax + rax]
dec r11d
lea rcx, [rsi + r11*4]
mov r9d, dword [rcx + rbx]
add r9, rbx
mov r10d, 0xe3421db9
movzx ecx, byte [r9]
inc r9
test cl, cl
je 0x180035d13
nop
movsx edx, cl
sub cl, 0x41
mov r8d, edx
or r8d, 0x20
cmp cl, 0x19
cmova r8d, edx
xor r8d, r10d
imul r10d, r8d, 0x1000193
movzx ecx, byte [r9]
lea r9, [r9 + 1]
test cl, cl
jne 0x180035ce0
cmp r10d, 0xe4f6126b
je 0x180035d20
test r11d, r11d
jne 0x180035cc0
mov rax, qword [rax]
jmp 0x180035c90
mov ecx, dword [rbp + 0x1c]
add rcx, rbx
mov eax, dword [rbp + 0x24]
add rax, rbx
movzx eax, word [rax + r11*2]
mov r10d, dword [rcx + rax*4]
add r10, rbx
movsd xmm0, qword [str.GkVR_Re_t_b]
movsd qword [rsp + 0x40], xmm0
mov eax, dword [0x180081e20]
mov dword [rsp + 0x48], eax
cmp byte [0x180081e23], 0
je 0x180035e90
xor r8d, r8d
cmp dword [0x1800c1268], 2
jl 0x180035e53
movdqa xmm4, xmmword [0x1800820e0]
movdqa xmm2, xmmword [0x180081ff0]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x180082020]
psubd xmm2, xmm0
andps xmm2, xmmword [0x180082050]
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmmword [0x180082070]
movd xmm0, dword [str.GkVR_Re_t_b]
xorps xmm2, xmm0
movd dword [rsp + 0x40], xmm2
movdqa xmm2, xmmword [0x180082000]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x180082020]
psubd xmm2, xmm0
andps xmm2, xmmword [0x180082050]
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmmword [0x180082070]
movd xmm0, dword [rsp + 0x44]
xorps xmm2, xmm0
movd dword [rsp + 0x44], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rsp + 0x40]
add r9, rax
nop
mov eax, 0x4bda12f7
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x36
movzx eax, r8b
sub al, cl
add al, 0x32
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xc
jl 0x180035e60
lea rcx, [rsp + 0x40]
call r10
test ax, ax
je 0x180035efc
mov ecx, 1
call fcn.18007ba3c
mov qword [rsp + 0x40], rax
lea rcx, [rsp + 0x38]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], 0
mov r9, rax
lea r8, [0x180001d50]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__beginthreadex]
mov qword [rsp + 0x30], rax
test rax, rax
je 0x180035f31
cmp dword [rsp + 0x38], 0
je 0x180035f26
movaps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x40], xmm0
lea rcx, [rsp + 0x40]
call sub.MSVCP140.dll__Thrd_detach
test eax, eax
jne 0x180035f26
mov eax, 1
mov rcx, qword [rsp + 0x50]
xor rcx, rsp
call fcn.18007c090
mov rbx, qword [rsp + 0x70]
mov rbp, qword [rsp + 0x78]
mov rsi, qword [rsp + 0x80]
add rsp, 0x60
pop rdi
ret
mov ecx, 1
call sub.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_
nop
mov dword [rsp + 0x38], 0
mov ecx, 6
call sub.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_
int3