Function at 0x140054740
Capabilities:
Copy file
Create thread
Extract resource via kernel32 functions

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x3e0]
sub rsp, 0x4e0
mov rax, qword [section..data]
xor rax, rsp
mov qword [rbp + 0x3d0], rax
call qword [sym.imp.USER32.dll_GetActiveWindow]
lea rdx, str.believe
lea rcx, str.lemonade
mov r8, rax
mov qword [rbp - 0x78], rax
call fcn.1400d8cb0
lea rcx, [rbp + 0x150]
xor edx, edx
mov r8d, 0x140
mov r14, rax
call fcn.1400e27d0
lea rdx, [rbp + 0x150]
lea rcx, str.lemonade
call qword [sym.imp.KERNEL32.dll_FindFirstFileA]
lea rcx, [rbp - 0x20]
mov r8d, 0x38
mov rdx, rax
mov rsi, rax
call fcn.1400890c0
mov edi, 1
mov rdx, qword [rax + 0x10]
imul r15d, r14d, 7
mov rcx, rdx
sub r15d, edx
movups xmm0, xmmword [rax]
shr rcx, 0x20
add r15d, 0x40
movups xmmword [rsp + 0x50], xmm0
mov r8d, r15d
imul ecx, r14d
sub edi, ecx
mov edx, edi
mov dword [rsp + 0x44], edi
call fcn.1400cf5c0
lea rcx, [rbp + 0x10]
mov edx, 0x104
mov dword [rsp + 0x48], eax
call qword [sym.imp.KERNEL32.dll_FindFirstVolumeA]
lea rcx, str.believe
mov rbx, rax
mov qword [rbp - 0x28], rax
lea r12d, [rdi + 1]
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rdx, r14
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SizeofResource]
mov edi, eax
mov dword [rbp - 0x80], eax
call qword [sym.imp.USER32.dll_GetForegroundWindow]
mov r9d, edi
mov r8d, r12d
mov rcx, rbx
mov r13, rax
mov qword [rsp + 0x28], rax
call fcn.140078610
lea rcx, [rbp + 0x10]
xor edx, edx
mov r8d, 0x140
mov qword [rbp - 0x30], rax
call fcn.1400e27d0
lea rdx, [rbp + 0x10]
lea rcx, str.c0a1
call qword [sym.imp.KERNEL32.dll_FindFirstFileA]
lea rcx, [rbp + 0x290]
xor edx, edx
mov r8d, 0x140
mov qword [rbp - 0x70], rax
call fcn.1400e27d0
lea rdx, [rbp + 0x290]
lea rcx, str.c0a0
call qword [sym.imp.KERNEL32.dll_FindFirstFileA]
mov ecx, esi
mov qword [rsp + 0x50], rax
lea rax, str.lasagna
imul ecx, r14d
mov qword [rsp + 0x58], rax
imul eax, dword [rsp + 0x44], 0xffffffc8
sub eax, ecx
sub eax, r13d
sub eax, r15d
add eax, 0x3c
movups xmm0, xmmword [rsp + 0x50]
mov rdx, qword [rbp - 0x70]
add eax, edi
add eax, dword [rbp - 0x78]
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0x70], rsi
movaps xmmword [rbp - 0x60], xmm0
add eax, r12d
lea r8, [rbp - 0x60]
mov rcx, r13
mov dword [rsp + 0x60], eax
lea rax, str.snakebite
mov qword [rsp + 0x78], rax
movups xmm1, xmmword [rsp + 0x60]
movups xmm0, xmmword [rsp + 0x70]
movaps xmmword [rbp - 0x50], xmm1
movaps xmmword [rbp - 0x40], xmm0
call fcn.1400c1a40
xor ecx, ecx
mov byte [rsp + 0x40], al
cmp edi, dword [rsp + 0x48]
jbe 0x140054a60
mov rax, qword [rbp - 0x78]
mov qword [rsp + 0x28], rcx
lea r8, [0x140001b00]
movsxd r9, r12d
xor edx, edx
mov qword [rbp - 0x60], rbx
mov qword [rbp - 0x58], rax
mov dword [rbp - 0x50], 4
mov dword [rsp + 0x20], ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov qword [rbp - 0x48], rax
call qword [sym.imp.USER32.dll_GetForegroundWindow]
mov qword [rbp - 0x40], rax
call qword [sym.imp.KERNEL32.dll_GetCurrentProcessorNumber]
mov rdx, qword [rbp - 0x30]
mov dword [rbp - 0x38], eax
mov eax, r15d
lea ecx, [rdx + 1]
mov qword [rsp + 0x70], r14
imul eax, dword [rsp + 0x44]
lea ecx, [rax + rcx*4]
lea rax, str.c3a4
sub ecx, r14d
mov qword [rsp + 0x58], rax
mov eax, r15d
add ecx, ebx
add ecx, edi
add ecx, dword [rsp + 0x48]
mov dword [rsp + 0x50], ecx
movsx ecx, byte [rsp + 0x40]
imul ecx, edx
inc ecx
imul ecx, r13d
sub eax, ecx
add eax, 0x1c4
mov dword [rsp + 0x60], eax
lea rax, str.c0a1
mov qword [rsp + 0x68], rax
call qword [sym.imp.KERNEL32.dll_GetActiveProcessorGroupCount]
mov dword [rsp + 0x7c], 0x10
movzx eax, ax
mov dword [rsp + 0x78], eax
call qword [sym.imp.USER32.dll_GetForegroundWindow]
lea rbx, str.c0a0
movups xmm0, xmmword [rsp + 0x50]
movups xmm1, xmmword [rsp + 0x60]
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x28], rax
lea rax, str.streetcar
movaps xmmword [rbp - 0x20], xmm0
movaps xmmword [rbp - 0x10], xmm1
movups xmm0, xmmword [rsp + 0x70]
movups xmm1, xmmword [rbp - 0x50]
lea r9, [rbp - 0x20]
lea r8, [rsp + 0x50]
mov rdx, r14
movaps xmmword [rbp], xmm0
movaps xmmword [rsp + 0x60], xmm1
mov rcx, rsi
mov qword [rsp + 0x20], rax
movups xmm0, xmmword [rbp - 0x60]
movaps xmmword [rsp + 0x50], xmm0
movups xmm0, xmmword [rbp - 0x40]
movaps xmmword [rsp + 0x70], xmm0
call fcn.140093120
jmp 0x140054a67
lea rbx, str.c0a0
call fcn.1400d0cb0
mov cl, 4
call fcn.1400833d0
cmp r12d, 4
jl 0x140054ad9
lea rcx, str.genetics
xor r8d, r8d
mov rdx, r14
call fcn.1400c9b90
lea rdx, str.icebreaker
lea rcx, str.c7ret
mov rdi, rax
call fcn.1400834e0
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rdx, r14
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_LoadResource]
mov rdx, rdi
xor ecx, ecx
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_SizeofResource]
lea r8, str.c0a1
movzx edx, al
mov rcx, rbx
call fcn.1400816f0
mov edi, dword [rbp - 0x80]
mov rax, qword [rbp - 0x70]
mov ebx, r13d
imul esi, r15d
imul ebx, edi
mov qword [rsp + 0x50], rax
lea rax, str.ride
imul esi, r14d
shl ebx, 2
lea rdx, str.c0a1
lea rcx, str.believe
sub ebx, r12d
mov r8d, r15d
mov qword [rsp + 0x58], 0
mov qword [rsp + 0x60], rax
imul ebx, dword [rbp - 0x28]
sub ebx, esi
call qword [sym.imp.KERNEL32.dll_CopyFileA]
mov dword [rsp + 0x6c], 1
movups xmm0, xmmword [rsp + 0x50]
mov dword [rsp + 0x68], eax
mov qword [rsp + 0x70], r13
mov dword [rsp + 0x78], 0x20
movaps xmmword [rbp - 0x60], xmm0
movups xmm0, xmmword [rsp + 0x70]
movups xmm1, xmmword [rsp + 0x60]
lea r8, [rbp - 0x60]
lea edx, [rbx + 8]
xor ecx, ecx
movaps xmmword [rbp - 0x40], xmm0
movaps xmmword [rbp - 0x50], xmm1
call fcn.1400cf6c0
lea rcx, str.thunderstorm
call fcn.140083b20
lea rax, str.brian
mov rcx, qword [rbp + 0x3d0]
xor rcx, rsp
call fcn.1400dd340
lea r11, [rsp + 0x4e0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret