Function at 0x180037d50
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
push rbp
push rdi
push r14
lea rbp, [rax - 0x108]
sub rsp, 0x1f0
movaps xmmword [rax - 0x28], xmm6
movaps xmmword [rax - 0x38], xmm7
movaps xmmword [rax - 0x48], xmm8
movaps xmmword [rax - 0x58], xmm9
movaps xmmword [rax - 0x68], xmm10
movaps xmmword [rax - 0x78], xmm11
movaps xmmword [rax - 0x88], xmm12
movaps xmmword [rax - 0x98], xmm13
movaps xmmword [rax - 0xa8], xmm14
movaps xmmword [rax - 0xb8], xmm15
mov rax, qword [0x18004c010]
xor rax, rsp
mov qword [rbp + 0x40], rax
mov rbx, qword [0x18004c9d0]
xor eax, eax
mov dword [rbp + 0x20], eax
xorps xmm0, xmm0
mov qword [rbp + 0x34], rax
xorps xmm1, xmm1
mov eax, dword [0x18004c9d8]
xor edi, edi
mov dword [rbp - 0x40], eax
mov rsi, rdx
mov rax, qword [0x18004c9e8]
mov r14, rcx
mov qword [rbp - 0x30], rax
mov rax, qword [0x18004c9e0]
add rax, 0x10f90a10
movaps xmmword [rbp - 0x10], xmm0
mov qword [rbp - 0x38], rax
lea rax, [rbp - 0x10]
mov qword [rbp - 0x28], rax
lea rax, [rbp - 0x40]
mov qword [rbp - 0x48], rax
movaps xmmword [rbp], xmm1
movaps xmmword [rbp + 0x10], xmm0
movups xmmword [rbp + 0x24], xmm0
mov dword [rbp - 0x3c], edi
mov qword [rbp - 0x20], 0x50
mov qword [rbp - 0x50], 1
call qword [sym.imp.USER32.dll_GetDesktopWindow]
mov dword [rsp + 0x30], edi
lea r8, [rbp - 0x50]
mov rcx, rax
mov dword [rsp + 0x28], 0x7a
xor r9d, r9d
mov qword [rsp + 0x20], rdi
mov edx, 0x404
call rbx
movaps xmm0, xmmword [rbp - 0x10]
lea rcx, [rsp + 0x60]
movaps xmm1, xmmword [rbp]
mov dl, 0x40
movaps xmmword [rsp + 0x60], xmm0
movaps xmm0, xmmword [rbp + 0x10]
movaps xmmword [rbp - 0x80], xmm0
movaps xmm0, xmmword [rbp + 0x30]
movaps xmmword [rsp + 0x70], xmm1
movaps xmm1, xmmword [rbp + 0x20]
movaps xmmword [rbp - 0x60], xmm0
movaps xmmword [rbp - 0x70], xmm1
nop word [rax + rax]
xor byte [rcx], dl
lea eax, [rdi + 0x17]
add dl, al
lea rcx, [rcx + 1]
inc edi
cmp edi, 0x40
jl 0x180037e90
movsd xmm2, qword [0x180045308]
xorps xmm8, xmm8
movaps xmm11, xmmword [rsp + 0x70]
xorps xmm7, xmm7
movsd xmm12, qword [0x1800452d0]
movaps xmm1, xmm11
movaps xmm3, xmmword [rbp - 0x80]
xorps xmm6, xmm6
movaps xmm0, xmmword [rbp - 0x60]
movaps xmm10, xmmword [rsp + 0x60]
movaps xmm14, xmmword [rbp - 0x70]
unpckhpd xmm1, xmm11
mulsd xmm1, xmm12
movaps xmmword [0x18004c2c0], xmm3
movaps xmmword [0x18004c2e0], xmm0
movaps xmmword [0x18004c2a0], xmm10
divsd xmm1, xmm2
movaps xmmword [0x18004c2b0], xmm11
cvtsd2ss xmm8, xmm1
movaps xmm1, xmm3
movaps xmmword [0x18004c2d0], xmm14
unpckhpd xmm3, xmm3
movaps xmm0, xmm8
mulsd xmm3, xmm12
mulsd xmm1, xmm12
divsd xmm3, xmm2
divsd xmm1, xmm2
cvtsd2ss xmm6, xmm3
cvtsd2ss xmm7, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sinf
movaps xmm9, xmm0
movaps xmm0, xmm8
call sub.api_ms_win_crt_math_l1_1_0.dll_cosf
movss dword [rsp + 0x40], xmm0
movaps xmm0, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_sinf
movaps xmm8, xmm0
movaps xmm0, xmm7
movss dword [rsp + 0x4c], xmm8
call sub.api_ms_win_crt_math_l1_1_0.dll_cosf
movss dword [rsp + 0x44], xmm0
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_sinf
movaps xmm7, xmm0
movaps xmm0, xmm6
movss dword [rsp + 0x48], xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_cosf
movsd xmm15, qword [rsi]
movaps xmm1, xmm7
movsd xmm13, qword [rsi + 8]
subsd xmm15, xmm10
mov ebx, dword [0x18004cb70]
movaps xmm7, xmm0
mulss xmm1, xmm9
xorps xmm6, xmm6
movss dword [rsp + 0x50], xmm0
unpckhpd xmm10, xmm10
movss dword [rsp + 0x54], xmm1
subsd xmm13, xmm10
movss xmm1, dword [rsp + 0x40]
movsd xmm10, qword [rsi + 0x10]
subsd xmm10, xmm11
mulss xmm7, xmm9
movss xmm11, dword [rsp + 0x44]
movaps xmm0, xmm11
mulss xmm0, xmm1
mulss xmm1, xmm8
movsd xmm8, qword [0x1800452c0]
cvtps2pd xmm2, xmm0
cvtps2pd xmm0, xmm1
xorps xmm1, xmm1
mulsd xmm2, xmm15
mulsd xmm0, xmm13
cvtss2sd xmm1, xmm9
addsd xmm2, xmm0
xorps xmm0, xmm0
mulsd xmm1, xmm10
cvtsi2ss xmm6, ebx
addsd xmm2, xmm1
cvtss2sd xmm0, xmm14
maxsd xmm8, xmm2
mulsd xmm0, xmm12
divsd xmm0, qword [0x180045310]
cvtpd2ps xmm0, xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_tanf
movss xmm9, dword [rsp + 0x4c]
xorps xmm2, xmm2
movss xmm12, dword [rsp + 0x48]
xorps xmm5, xmm5
cvtsi2sd xmm5, dword [0x18004cb78]
mov rax, r14
divss xmm6, xmm0
movaps xmm0, xmm7
movaps xmm1, xmm12
mulss xmm0, xmm11
mulss xmm1, xmm9
mulss xmm7, xmm9
addss xmm1, xmm0
movaps xmm0, xmm12
xorps xmm12, xmmword [0x180045660]
mulss xmm12, dword [rsp + 0x40]
mulss xmm0, xmm11
xorps xmm1, xmmword [0x180045660]
cvtss2sd xmm2, xmm1
subss xmm0, xmm7
movss xmm7, dword [rsp + 0x54]
mulsd xmm2, xmm15
cvtps2pd xmm4, xmm6
movss xmm6, dword [rsp + 0x50]
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm13
addsd xmm2, xmm0
movaps xmm0, xmm6
mulss xmm0, dword [rsp + 0x40]
cvtps2pd xmm1, xmm0
movaps xmm0, xmm7
mulss xmm7, xmm11
mulss xmm0, xmm9
mulsd xmm1, xmm10
addsd xmm2, xmm1
movaps xmm1, xmm6
mulss xmm1, xmm11
mulss xmm6, xmm9
mulsd xmm2, xmm4
addss xmm1, xmm0
subss xmm7, xmm6
divsd xmm2, xmm8
cvtps2pd xmm0, xmm7
subsd xmm5, xmm2
mulsd xmm0, xmm15
cvtps2pd xmm2, xmm1
movsd qword [r14 + 8], xmm5
mulsd xmm2, xmm13
addsd xmm2, xmm0
xorps xmm0, xmm0
cvtss2sd xmm0, xmm12
mulsd xmm0, xmm10
addsd xmm2, xmm0
xorps xmm0, xmm0
cvtsi2sd xmm0, ebx
mulsd xmm2, xmm4
divsd xmm2, xmm8
addsd xmm2, xmm0
movsd qword [r14], xmm2
mov rcx, qword [rbp + 0x40]
xor rcx, rsp
call fcn.18003cdf0
lea r11, [rsp + 0x1f0]
mov rbx, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
movaps xmm13, xmmword [r11 - 0x80]
movaps xmm14, xmmword [r11 - 0x90]
movaps xmm15, xmmword [r11 - 0xa0]
mov rsp, r11
pop r14
pop rdi
pop rbp
ret