Function at 0x1400aaf40
Capabilities:
Create thread

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x1d0
mov rax, qword [section..data]
xor rax, rsp
mov qword [rsp + 0x1c0], rax
movsxd r15, dword [rsp + 0x220]
movsx ebp, cl
mov rsi, r9
movzx r14d, bpl
movzx ebx, r8b
mov dword [rsp + 0x54], edx
sub r14b, r8b
call qword [sym.imp.KERNEL32.dll_GetCurrentThread]
lea rcx, [rsp + 0xb0]
mov edx, 0x104
mov qword [rsp + 0x60], rax
call qword [sym.imp.KERNEL32.dll_FindFirstVolumeA]
mov r12, rax
cmp r15d, ebp
jge 0x1400aafba
call qword [sym.imp.USER32.dll_GetActiveWindow]
lea rcx, [0x1400ed3b8]
movzx edi, bl
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
lea rdx, str.pine
mov r9, r15
mov rcx, rax
mov r8d, edi
call qword [sym.imp.KERNEL32.dll_EnumResourceNamesA]
mov dword [rsp + 0x40], eax
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, r15d
mov dword [rsp + 0x44], eax
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
lea rcx, str.pine
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
lea rdx, str.bench
mov r9d, edi
mov r8d, edi
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_EnumResourceNamesA]
mov edi, eax
mov dword [rsp + 0x48], eax
call qword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
mov dword [rsp + 0x50], eax
movzx r13d, al
movsx eax, byte [rsp + 0x44]
movzx ecx, dil
mov dword [rsp + 0x4c], ecx
imul ecx, ebx
sub eax, ecx
add eax, r13d
add eax, dword [rsp + 0x40]
mov dword [rsp + 0x58], eax
call qword [sym.imp.KERNEL32.dll_GetMaximumProcessorGroupCount]
movzx eax, ax
mov dword [rsp + 0x74], eax
call qword [sym.imp.KERNEL32.dll_GetMaximumProcessorGroupCount]
cmp bpl, al
jg 0x1400ab093
mov edx, 0x5b
xor ecx, ecx
lea r8d, [rdx - 0x4c]
call qword [sym.imp.KERNEL32.dll_FindResourceA]
mov ecx, 0xffff
call qword [sym.imp.KERNEL32.dll_GetMaximumProcessorCount]
xor ecx, ecx
mov edx, 0x2ce
lea r8d, [rcx + 0xd]
call qword [sym.imp.KERNEL32.dll_FindResourceA]
mov rax, qword [rsp + 0x228]
or rdi, 0xffffffffffffffff
mov rbx, rdi
inc rbx
cmp byte [rax + rbx], 0
jne 0x1400ab0a2
movzx eax, byte [rsp + 0x50]
mov edx, 0x202
imul byte [rsp + 0x40]
lea ecx, [rax + 1]
movzx eax, r12b
imul cl
movzx ecx, al
movzx eax, byte [rsp + 0x74]
imul byte [rsp + 0x58]
add al, al
sub al, cl
xor ecx, ecx
sub al, r15b
lea r8d, [rcx + 0x19]
sub al, byte [rsp + 0x54]
add al, 0x3d
add bl, al
add bl, r14b
add bl, bpl
call qword [sym.imp.KERNEL32.dll_FindResourceA]
mov r15, rax
cmp byte [rsp + 0x48], r12b
je 0x1400ab19b
call qword [sym.imp.USER32.dll_GetActiveWindow]
movsx r9, byte [rsp + 0x44]
movzx ecx, bl
mov r14, rax
nop
inc rdi
cmp byte [rsi + rdi], 0
jne 0x1400ab110
mov rdx, qword [rsp + 0x60]
imul r13d, dword [rsp + 0x4c]
mov ebx, ecx
sub ebx, edx
lea r8, [0x140001b00]
imul r13d, dword [rsp + 0x74]
add ebx, 5
add ebx, r15d
imul eax, r13d, 0x7d
imul ebx, r15d
add ebx, eax
movsx rax, bpl
add ebx, eax
xor eax, eax
sub ebx, r12d
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], eax
sub ebx, r9d
add ebx, ecx
xor ecx, ecx
add ebx, edx
xor edx, edx
sub ebx, edi
add ebx, 0x46
call qword [sym.imp.KERNEL32.dll_CreateThread]
lea rdx, str.c5ret
mov qword [rsp + 0x30], rax
lea rax, str.farmer
lea rcx, [rsp + 0x78]
xor r9d, r9d
mov r8, r14
mov dword [rsp + 0x28], ebx
mov qword [rsp + 0x20], rax
call fcn.1400dbec0
lea rax, str.others
mov rcx, qword [rsp + 0x1c0]
xor rcx, rsp
call fcn.1400dd340
lea r11, [rsp + 0x1d0]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret