Function at 0x140052a40
Capabilities:
Check for foreground window switch
Create thread
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rdi
push rbp
mov rbp, rsp
sub rsp, 0x50
movzx ecx, word [0x140188ee0]
lea rdx, [rbp - 0x10]
movzx eax, byte [0x140188ee2]
movsd xmm0, qword [0x140188ed8]
xor al, 0x3e
movsd qword [rbp - 0x10], xmm0
xor byte [rbp - 0xf], 0x35
xor byte [rbp - 0xe], 0x36
xor byte [rbp - 0xd], 0x37
xor byte [rbp - 0xc], 0x38
xor byte [rbp - 0xb], 0x39
xor byte [rbp - 0xa], 0x3a
xor byte [rbp - 9], 0x3b
mov word [rbp - 8], cx
xor cl, 0x3c
xor byte [rbp - 7], 0x3d
mov byte [rbp - 8], cl
xor ecx, ecx
mov byte [rbp - 0x10], 0x56
mov byte [rbp - 6], al
call qword [sym.imp.USER32.dll_FindWindowA]
mov qword [0x1401dd0b8], rax
call fcn.140052410
lea rdx, [0x1401dd0b0]
mov ecx, reloc.WLDAP32.dll_Ordinal_32
call qword [sym.imp.d3d9.dll_Direct3DCreate9Ex]
xor edi, edi
test eax, eax
js 0x140052cb1
cvttss2si rax, dword [0x1401dd0d0]
mov rcx, qword [0x1401dd0b0]
lea rdx, [0x1401dd4d8]
mov r9, qword [0x1401dd4d0]
lea r8d, [rdi + 1]
mov qword [rsp + 0x30], rdx
lea rdx, [0x1401dd040]
mov qword [rsp + 0x28], rdx
xor edx, edx
mov qword [0x1401dd04c], rdi
mov qword [0x1401dd058], 1
mov qword [0x1401dd074], rdi
mov dword [0x1401dd07c], edi
mov dword [0x1401dd048], 0x15
mov dword [0x1401dd040], eax
cvttss2si rax, dword [0x1401dd038]
mov dword [0x1401dd054], edi
mov dword [0x1401dd070], 0x50
mov dword [0x1401dd06c], 1
mov qword [0x1401dd060], r9
mov dword [0x1401dd068], 1
mov dword [rsp + reloc.WLDAP32.dll_Ordinal_32], 0x20
mov dword [0x1401dd044], eax
mov rax, qword [rcx]
call qword [rax + 0x80]
call fcn.140007010
mov rbx, qword [0x1401dd4d0]
lea rcx, [0x1401dd4b8]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceFrequency]
test eax, eax
je 0x140052c81
lea rcx, [0x1401dd4b0]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
test eax, eax
je 0x140052c81
mov rcx, qword [0x1401dcf80]
lea rax, str.imgui_impl_win32
mov qword [0x1401dd4a8], rbx
or dword [rcx + 0xc], 6
mov qword [rcx + 0xd8], rax
mov qword [rcx + 0x108], rbx
mov dword [rcx + 0x3c], 9
mov dword [rcx + 0x40], Ordinal_41
mov dword [rcx + 0x44], Ordinal_45
mov dword [rcx + 0x48], Ordinal_41
mov dword [rcx + 0x4c], Ordinal_45
mov dword [rcx + 0x50], reloc.WLDAP32.dll_Ordinal_33
mov dword [rcx + 0x54], Ordinal_35
mov dword [rcx + 0x58], Ordinal_41
mov dword [rcx + 0x5c], reloc.WLDAP32.dll_Ordinal_35
mov dword [rcx + 0x60], reloc.WLDAP32.dll_Ordinal_45
mov dword [rcx + 0x64], reloc.WLDAP32.dll_Ordinal_46
mov dword [rcx + 0x68], 8
mov dword [rcx + 0x6c], reloc.WLDAP32.dll_Ordinal_32
mov dword [rcx + 0x70], reloc.WS2_32.dll_listen
mov dword [rcx + 0x74], reloc.WLDAP32.dll_Ordinal_27
mov dword [rcx + 0x78], 0x41
mov dword [rcx + 0x7c], 0x43
mov dword [rcx + 0x80], 0x56
mov dword [rcx + 0x84], 0x58
mov dword [rcx + 0x88], 0x59
mov dword [rcx + 0x8c], 0x5a
jmp 0x140052c88
mov rcx, qword [0x1401dcf80]
mov rax, qword [0x1401dd4d8]
lea rdx, str.imgui_impl_dx9
mov qword [rcx + 0xe0], rdx
mov rcx, qword [0x1401dd0b0]
mov qword [0x1401dd498], rax
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
call qword [sym.imp.USER32.dll_GetForegroundWindow]
movzx ecx, word [0x140188ee0]
mov rbx, rax
mov word [rbp - 8], cx
movzx ecx, byte [0x140188ee2]
lea rdx, [rbp - 0x10]
movsd xmm0, qword [0x140188ed8]
xor cl, 0x3e
xor byte [rbp - 8], 0x3c
xor byte [rbp - 7], 0x3d
movsd qword [rbp - 0x10], xmm0
xor byte [rbp - 0xf], 0x35
xor byte [rbp - 0xe], 0x36
xor byte [rbp - 0xd], 0x37
xor byte [rbp - 0xc], 0x38
xor byte [rbp - 0xb], 0x39
xor byte [rbp - 0xa], 0x3a
xor byte [rbp - 9], 0x3b
mov byte [rbp - 6], cl
xor ecx, ecx
mov byte [rbp - 0x10], 0x56
call qword [sym.imp.USER32.dll_FindWindowA]
cmp rbx, rax
je 0x140052d39
mov ecx, reloc.WLDAP32.dll_Ordinal_200
call qword [sym.imp.KERNEL32.dll_Sleep]
call qword [sym.imp.USER32.dll_GetForegroundWindow]
mov rbx, rax
movzx eax, word [0x140188ee0]
mov word [rbp - 8], ax
jmp 0x140052cc5
mov qword [rsp + 0x28], rdi
lea r8, [0x140046be0]
xor r9d, r9d
mov dword [rsp + 0x20], edi
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
call fcn.140051df0
mov rbx, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x68]
add rsp, 0x50
pop rbp
jmp fcn.140052110