Function at 0x14003a510
Capabilities:
Encode data using xor
Link many functions at runtime

Disassembly:
push rbp
mov rbp, rsp
sub rsp, 0x80
movdqa xmm0, xmmword [0x1400c0730]
mov qword [rsp + 0x78], rsi
xor esi, esi
mov eax, esi
mov dword [rbp - 0x36], 0xf9e5fefc
movdqu xmmword [rbp - 0x46], xmm0
mov dword [rbp - 0x32], 0xe1cfade7
mov dword [rbp - 0x2e], 0xe9ebfdf1
mov dword [rbp - 0x2a], 0x100e7f1
nop
lea ecx, [rax + 0x78]
xor byte [rbp + rax - 0x46], cl
inc rax
cmp rax, 0x1e
jb 0x14003a550
mov qword [rsp + 0xa0], rbx
lea rdx, [rbp - 0x46]
xor ecx, ecx
mov qword [rsp + 0x70], rdi
mov byte [rbp - 0x27], sil
call qword [sym.imp.USER32.dll_FindWindowA]
test rax, rax
je 0x14003a5fc
mov ecx, 0x5dc
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rcx, [0x1400be180]
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov rcx, rax
lea rdx, [0x1400be770]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, [0x1400be180]
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, str.NtRaiseHardError
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
xor r8d, r8d
lea r9, [rbp + 0x10]
mov dl, 1
mov rdi, rax
lea ecx, [r8 + 0x13]
call rbx
lea rax, [rbp + 0x18]
xor r9d, r9d
mov qword [rsp + 0x28], rax
xor r8d, r8d
xor edx, edx
mov dword [rsp + 0x20], 6
mov ecx, 0xc00002b4
call rdi
movdqa xmm0, xmmword [0x1400c07b0]
mov rcx, rsi
movdqa xmm1, xmmword [0x1400c0830]
movdqu xmmword [rbp - 0x46], xmm0
mov dword [rbp - 0x26], 0xfefdfeed
movdqu xmmword [rbp - 0x36], xmm1
mov word [rbp - 0x22], 0xee
mov byte [rbp - 0x20], 1
nop word [rax + rax]
lea eax, [rcx + 0x78]
xor byte [rbp + rcx - 0x46], al
inc rcx
cmp rcx, 0x25
jb 0x14003a630
lea rdx, [rbp - 0x46]
mov byte [rbp - 0x20], sil
xor ecx, ecx
call qword [sym.imp.USER32.dll_FindWindowA]
test rax, rax
je 0x14003a6cf
mov ecx, 0x5dc
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rcx, [0x1400be180]
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov rcx, rax
lea rdx, [0x1400be770]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, [0x1400be180]
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, str.NtRaiseHardError
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
xor r8d, r8d
lea r9, [rbp + 0x10]
mov dl, 1
mov rdi, rax
lea ecx, [r8 + 0x13]
call rbx
lea rax, [rbp + 0x18]
xor r9d, r9d
mov qword [rsp + 0x28], rax
xor r8d, r8d
xor edx, edx
mov dword [rsp + 0x20], 6
mov ecx, 0xc00002b4
call rdi
mov dword [rbp + 0x10], 0x1f4e4f00
mov rcx, rsi
mov dword [rbp + 0x14], 0x1001a1e
lea eax, [rcx + 0x78]
xor byte [rbp + rcx + 0x10], al
inc rcx
cmp rcx, 6
jb 0x14003a6e0
lea rdx, [rbp + 0x10]
mov byte [rbp + 0x17], sil
xor ecx, ecx
call qword [sym.imp.USER32.dll_FindWindowA]
test rax, rax
je 0x14003a77f
mov ecx, 0x5dc
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rcx, [0x1400be180]
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov rcx, rax
lea rdx, [0x1400be770]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, [0x1400be180]
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, str.NtRaiseHardError
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
xor r8d, r8d
lea r9, [rbp + 0x10]
mov dl, 1
mov rdi, rax
lea ecx, [r8 + 0x13]
call rbx
lea rax, [rbp + 0x18]
xor r9d, r9d
mov qword [rsp + 0x28], rax
xor r8d, r8d
xor edx, edx
mov dword [rsp + 0x20], 6
mov ecx, 0xc00002b4
call rdi
mov dword [rbp - 0x50], 0xe3e0a33
mov dword [rbp - 0x4c], 0xd1b0d11
mov word [rbp - 0x48], 0x100
nop dword [rax]
nop word [rax + rax]
lea eax, [rsi + 0x78]
xor byte [rbp + rsi - 0x50], al
inc rsi
cmp rsi, 8
jb 0x14003a7a0
lea rdx, [rbp - 0x50]
mov byte [rbp - 0x47], 0
xor ecx, ecx
call qword [sym.imp.USER32.dll_FindWindowA]
mov rsi, qword [rsp + 0x78]
test rax, rax
je 0x14003a844
mov ecx, 0x5dc
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rcx, [0x1400be180]
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov rcx, rax
lea rdx, [0x1400be770]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, [0x1400be180]
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, str.NtRaiseHardError
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
xor r8d, r8d
lea r9, [rbp + 0x10]
mov dl, 1
mov rdi, rax
lea ecx, [r8 + 0x13]
call rbx
lea rax, [rbp + 0x18]
xor r9d, r9d
mov qword [rsp + 0x28], rax
xor r8d, r8d
xor edx, edx
mov dword [rsp + 0x20], 6
mov ecx, 0xc00002b4
call rdi
mov rdi, qword [rsp + 0x70]
mov rbx, qword [rsp + 0xa0]
add rsp, 0x80
pop rbp
ret