Function at 0x140061120
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], r14
push rbp
lea rbp, [rsp - 0x57]
sub rsp, 0xb0
mov rax, qword [0x140147140]
xor rax, rsp
mov qword [rbp + 0x47], rax
mov r14, rcx
call fcn.14003a3e0
lea rcx, [rbp + 0x37]
mov rsi, rax
call qword [sym.imp.KERNEL32.dll_QueryPerformanceFrequency]
test eax, eax
je 0x14006150e
lea rcx, [rbp + 0x3f]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
test eax, eax
je 0x14006150e
mov qword [rsp + 0xc0], rbx
mov ecx, 0x48
mov qword [rsp + 0xc8], rdi
call fcn.14003cfc0
xor ebx, ebx
mov qword [rbp - 0x39], rax
mov rdi, rax
test rax, rax
je 0x1400611b6
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rdi], xmm0
movups xmmword [rdi + 0x10], xmm0
movups xmmword [rdi + 0x20], xmm0
movups xmmword [rdi + 0x30], xmm0
mov qword [rdi + 0x40], rax
jmp 0x1400611b9
mov rdi, rbx
or dword [rsi + 4], 0xc06
lea rax, str.imgui_impl_win32
mov qword [rsi + 0x80], rax
mov qword [rsi + 0x90], rdi
mov qword [rdi], r14
mov word [rdi + 0x2d], 0x101
mov rax, qword [rbp + 0x37]
mov qword [rdi + 0x20], rax
mov rax, qword [rbp + 0x3f]
mov qword [rdi + 0x18], rax
mov dword [rdi + 0x28], 9
call fcn.14003a4b0
mov rcx, qword [rdi]
mov qword [rax + 0x50], rcx
mov qword [rax + 0x48], rcx
test dword [rsi], 0x400
je 0x140061375
lea rax, [0x140063360]
mov dword [rbp - 0x19], 0x50
xor ecx, ecx
mov qword [rbp - 0x11], rax
mov dword [rbp - 0x15], 3
mov qword [rbp - 9], rbx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
movdqa xmm1, xmmword [reloc.WS2_32.dll_bind]
lea rcx, [rbp - 0x19]
mov qword [rbp - 1], rax
xorps xmm0, xmm0
lea rax, str.ImGui_Platform
movdqa xmmword [rbp + 7], xmm0
mov qword [rbp + 0x27], rax
movdqa xmmword [rbp + 0x17], xmm1
mov qword [rbp + 0x2f], rbx
call qword [sym.imp.USER32.dll_RegisterClassExA]
call fcn.140062170
call fcn.14003a8a0
lea rcx, [0x140060af0]
mov qword [rax], rcx
lea rcx, [0x140060c90]
mov qword [rax + 8], rcx
lea rcx, [0x140061bb0]
mov qword [rax + 0x10], rcx
lea rcx, [0x1400619c0]
mov qword [rax + 0x18], rcx
lea rcx, [0x140061040]
mov qword [rax + 0x20], rcx
lea rcx, [0x140061a50]
mov qword [rax + 0x28], rcx
lea rcx, [0x1400610b0]
mov qword [rax + 0x30], rcx
lea rcx, [0x140061990]
mov qword [rax + 0x38], rcx
lea rcx, [0x140061000]
mov qword [rax + 0x40], rcx
lea rcx, [0x140061020]
mov qword [rax + 0x48], rcx
lea rcx, [0x140061af0]
mov qword [rax + 0x50], rcx
lea rcx, [0x140061900]
mov qword [rax + 0x58], rcx
lea rcx, [0x140062550]
mov qword [rax + 0x60], rcx
lea rcx, [0x140060fd0]
mov qword [rax + 0x78], rcx
lea rcx, [fcn.140028ac0]
mov qword [rax + 0x80], rcx
call fcn.14003a4b0
mov r14, rax
call fcn.140039f90
test rax, rax
je 0x140061339
call fcn.14003a3e0
mov rsi, qword [rax + 0x90]
jmp 0x14006133c
mov rsi, rbx
mov ecx, Ordinal_26
call fcn.14003cfc0
mov qword [rbp - 0x39], rax
mov rcx, rax
test rax, rax
je 0x14006135e
mov qword [rax], rbx
mov byte [rax + 8], bl
mov qword [rax + 0xc], rbx
jmp 0x140061361
mov rcx, rbx
mov rax, qword [rsi]
mov qword [rcx], rax
mov byte [rcx + 8], bl
mov qword [r14 + 0x40], rcx
mov rax, qword [rsi]
mov qword [r14 + 0x48], rax
mov dword [rbp - 0x39], 0xdac7c1df
mov rcx, rbx
mov dword [rbp - 0x35], 0xf19cd8de
mov dword [rbp - 0x31], 0xded59e9b
mov word [rbp - 0x2d], 0xdf
mov byte [rbp - 0x2b], 1
nop word [rax + rax]
lea eax, [rcx - 0x59]
xor byte [rbp + rcx - 0x39], al
inc rcx
cmp rcx, 0xd
jb 0x1400613a0
lea rax, [rbp - 0x39]
mov dword [rbp - 0x39], 0xdac7c1df
mov qword [rbp - 0x19], rax
mov rcx, rbx
mov dword [rbp - 0x35], 0xf19cd8de
mov dword [rbp - 0x31], 0xded59e9c
mov word [rbp - 0x2d], 0xdf
mov byte [rbp - 0x2b], 1
nop word [rax + rax]
lea eax, [rcx - 0x59]
xor byte [rbp + rcx - 0x39], al
inc rcx
cmp rcx, 0xd
jb 0x1400613e0
movdqa xmm0, xmmword [0x1400f8dc0]
lea rax, [rbp - 0x39]
mov qword [rbp - 0x11], rax
mov rcx, rbx
movdqu xmmword [rbp - 0x39], xmm0
mov byte [rbp - 0x29], 1
nop dword [rax]
lea eax, [rcx - 0x59]
xor byte [rbp + rcx - 0x39], al
inc rcx
cmp rcx, 0xf
jb 0x140061410
lea rax, [rbp - 0x39]
mov dword [rbp - 0x39], 0xdac7c1df
mov qword [rbp - 9], rax
mov rcx, rbx
mov dword [rbp - 0x35], 0xf19cd8de
mov dword [rbp - 0x31], 0xded59e9d
mov word [rbp - 0x2d], 0xdf
mov byte [rbp - 0x2b], 1
nop word [rax + rax]
lea eax, [rcx - 0x59]
xor byte [rbp + rcx - 0x39], al
inc rcx
cmp rcx, 0xd
jb 0x140061450
lea rax, [rbp - 0x39]
mov dword [rbp - 0x39], 0xdac7c1df
mov qword [rbp - 1], rax
mov rcx, rbx
mov dword [rbp - 0x35], 0xf19cd8de
mov dword [rbp - 0x31], 0xded59e9e
mov word [rbp - 0x2d], 0xdf
mov byte [rbp - 0x2b], 1
nop word [rax + rax]
lea eax, [rcx - 0x59]
xor byte [rbp + rcx - 0x39], al
inc rcx
cmp rcx, 0xd
jb 0x140061490
lea rax, [rbp - 0x39]
mov qword [rbp + 7], rax
nop dword [rax + rax]
mov rcx, qword [rbp + rbx*8 - 0x19]
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov rsi, rax
test rax, rax
jne 0x1400614ce
inc rbx
cmp rbx, 5
jl 0x1400614b0
jmp 0x1400614fa
lea rdx, str.XInputGetCapabilities
mov qword [rdi + 0x30], rsi
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.XInputGetState
mov rcx, rsi
mov qword [rdi + 0x38], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rdi + 0x40], rax
mov rdi, qword [rsp + 0xc8]
mov al, 1
mov rbx, qword [rsp + 0xc0]
jmp 0x140061510
xor al, al
mov rcx, qword [rbp + 0x47]
xor rcx, rsp
call fcn.1400edb20
lea r11, [rsp + 0xb0]
mov rsi, qword [r11 + 0x20]
mov r14, qword [r11 + 0x28]
mov rsp, r11
pop rbp
ret