Function at 0x140002f90
Capabilities:
Generate random numbers via winapi
Terminate process

Disassembly:
mov qword [rsp + 0x20], rbp
push rsi
push r14
push r15
sub rsp, 0xa0
mov rax, qword [section..data]
xor rax, rsp
mov qword [rsp + 0x90], rax
mov rbp, rdx
lea r9, [rsp + 0x50]
xorps xmm0, xmm0
lea r8, [0x1400059c0]
xor edx, edx
xor ecx, ecx
movups xmmword [rsp + 0x50], xmm0
call qword [sym.imp.USER32.dll_EnumDisplayMonitors]
mov r15, qword [rsp + 0x50]
lea r9, [rsp + 0x60]
xorps xmm0, xmm0
shr r15, 0x20
lea r8, [0x1400059c0]
xor edx, edx
xor ecx, ecx
movups xmmword [rsp + 0x60], xmm0
call qword [sym.imp.USER32.dll_EnumDisplayMonitors]
mov rax, qword [rsp + 0x60]
lea rdx, [rsp + 0x78]
mov rsi, qword [rsp + 0x68]
xor ecx, ecx
mov r9d, dword [rsp + 0x50]
mov r14d, esi
sub r14d, eax
mov dword [rsp + 0x48], ecx
shr rax, 0x20
mov r8, rbp
mov qword [rsp + 0x60], rcx
mov dword [rsp + 0x40], ecx
mov dword [rsp + 0x64], ecx
mov qword [rsp + 0x38], rcx
mov dword [rsp + 0x60], r14d
mov qword [rsp + 0x78], rcx
shr rsi, 0x20
sub esi, eax
mov eax, ecx
mov rax, qword [rsp + 0x60]
mov rcx, rbp
mov qword [rsp + 0x80], rax
mov dword [rsp + 0x30], esi
mov dword [rsp + 0x60], 0x19
mov dword [rsp + 0x64], esi
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x88], rax
lea eax, [r14 + 0x19]
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], r15d
call qword [sym.imp.GDI32.dll_PlgBlt]
mov rcx, qword [0x14001fc40]
test rcx, rcx
jne 0x1400030c5
lea r9d, [rcx + 1]
mov dword [rsp + 0x20], 0xf0000040
lea rcx, [0x14001fc40]
xor r8d, r8d
xor edx, edx
call qword [sym.imp.ADVAPI32.dll_CryptAcquireContextW]
test eax, eax
jne 0x1400030be
lea ecx, [rax + 1]
call qword [sym.imp.KERNEL32.dll_ExitProcess]
mov rcx, qword [0x14001fc40]
lea r8, [rsp + 0x70]
mov qword [rsp + 0xd0], rdi
mov edx, 4
call qword [sym.imp.ADVAPI32.dll_CryptGenRandom]
mov edi, dword [rsp + 0x70]
mov rcx, qword [0x14001fc40]
btr edi, 0x1f
test rcx, rcx
jne 0x140003124
lea r9d, [rcx + 1]
mov dword [rsp + 0x20], 0xf0000040
lea rcx, [0x14001fc40]
xor r8d, r8d
xor edx, edx
call qword [sym.imp.ADVAPI32.dll_CryptAcquireContextW]
test eax, eax
jne 0x14000311d
lea ecx, [rax + 1]
call qword [sym.imp.KERNEL32.dll_ExitProcess]
mov rcx, qword [0x14001fc40]
lea r8, [rsp + 0x74]
mov qword [rsp + 0xc0], rbx
mov edx, 4
call qword [sym.imp.ADVAPI32.dll_CryptGenRandom]
mov ebx, dword [rsp + 0x74]
mov rcx, qword [0x14001fc40]
btr ebx, 0x1f
test rcx, rcx
jne 0x140003183
lea r9d, [rcx + 1]
mov dword [rsp + 0x20], 0xf0000040
lea rcx, [0x14001fc40]
xor r8d, r8d
xor edx, edx
call qword [sym.imp.ADVAPI32.dll_CryptAcquireContextW]
test eax, eax
jne 0x14000317c
lea ecx, [rax + 1]
call qword [sym.imp.KERNEL32.dll_ExitProcess]
mov rcx, qword [0x14001fc40]
lea r8, [rsp + 0x60]
mov edx, 4
call qword [sym.imp.ADVAPI32.dll_CryptGenRandom]
movzx eax, byte [rsp + 0x60]
shl eax, 0x10
movzx ecx, bl
shl ecx, 8
or ecx, eax
movzx eax, dil
or ecx, eax
call qword [sym.imp.GDI32.dll_CreateSolidBrush]
mov rdx, rax
mov rcx, rbp
call qword [sym.imp.GDI32.dll_SelectObject]
mov edx, dword [rsp + 0x50]
mov r9d, r14d
mov r8d, r15d
mov dword [rsp + 0x28], 0x5a0049
mov rcx, rbp
mov dword [rsp + 0x20], esi
call qword [sym.imp.GDI32.dll_PatBlt]
mov ecx, 0x32
call qword [sym.imp.KERNEL32.dll_Sleep]
mov rbx, qword [rsp + 0xc0]
mov rdi, qword [rsp + 0xd0]
mov rcx, qword [rsp + 0x90]
xor rcx, rsp
call fcn.1400059f0
mov rbp, qword [rsp + 0xd8]
add rsp, 0xa0
pop r15
pop r14
pop rsi
ret