Function at 0x1400b7fe0
Capabilities:
Create thread

Disassembly:
mov byte [rsp + 8], cl
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x78
movzx esi, cl
mov ecx, esi
mov edi, esi
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
lea edx, [rsi + rsi*4]
xor ecx, ecx
lea r13d, [rdx*8]
lea r8d, [rcx + 7]
mov edx, 0x138
lea r12d, [rax + r13]
mov r14, rax
mov qword [rsp + 0x40], rax
mov dword [rsp + 0xd8], r12d
lea ebp, [rsi + 4]
call qword [sym.imp.KERNEL32.dll_FindResourceA]
lea ebx, [r14 - 0xa]
lea r15d, [r12 + rsi*2]
mov ecx, 0xffff
add bl, sil
mov dword [rsp + 0x34], r15d
mov byte [rsp + 0xd0], bl
call qword [sym.imp.KERNEL32.dll_GetMaximumProcessorCount]
sub ebp, r15d
sub ebp, 8
mov dword [rsp + 0x50], eax
mov dword [rsp + 0x54], ebp
cmp sil, r12b
je 0x1400b80bd
call qword [sym.imp.USER32.dll_GetActiveWindow]
xor eax, eax
lea r8, [0x140001b00]
mov qword [rsp + 0x28], rax
lea r9d, [rax + 4]
xor edx, edx
xor ecx, ecx
mov dword [rsp + 0x20], eax
call qword [sym.imp.KERNEL32.dll_CreateThread]
call qword [sym.imp.USER32.dll_GetForegroundWindow]
xor ecx, ecx
lea r8d, [rcx + 0x12]
mov edx, 0x223
call qword [sym.imp.KERNEL32.dll_FindResourceA]
xor ecx, ecx
mov edx, 0x328
lea r8d, [rcx + 0xd]
call qword [sym.imp.KERNEL32.dll_FindResourceA]
call qword [sym.imp.USER32.dll_GetActiveWindow]
imul r13d, edi
mov ecx, 1
movzx eax, r14b
sub cl, r15b
imul r13d, r14d
movsx r8, bl
mov edx, edi
sub sil, 2
imul cl
add al, r12b
mov ecx, r12d
add al, sil
shl ecx, 6
sub edx, ecx
mov byte [rsp + 0xc8], al
lea eax, [rdi + 4]
add edx, 0x2e
add edx, r8d
imul r13d, eax
sub r13d, r8d
add edx, r14d
sub r13d, 0xc
add r15d, edx
mov dword [rsp + 0x30], r13d
call qword [sym.imp.USER32.dll_GetForegroundWindow]
mov rsi, rax
mov qword [rsp + 0x38], rax
call qword [sym.imp.KERNEL32.dll_GetActiveProcessorGroupCount]
movzx r13d, ax
call qword [sym.imp.USER32.dll_GetActiveWindow]
lea ecx, [rdi + r12*2]
lea edi, [rcx*2 - 0xa]
lea ecx, [r14 + r14*8]
mov rbx, rax
sub edi, ecx
add edi, ebp
lea r12d, [rdi + 4]
call qword [sym.imp.USER32.dll_GetActiveWindow]
movzx edx, byte [rsp + 0xc0]
mov r8, qword [rsp + 0x40]
mov r9d, dword [rsp + 0x30]
mov r14, rax
movzx eax, r8b
lea ecx, [rdx + 2]
sub bl, 0x14
imul cl
movzx ebp, al
mov eax, edx
sub bpl, r15b
sub bpl, r9b
sub bpl, sil
mov esi, 0x25
imul eax, dword [rsp + 0xd8]
sub esi, eax
lea eax, [r9 + r9*2]
sub bpl, r12b
sub esi, r13d
add eax, eax
sub bpl, dl
add bpl, byte [rsp + 0x54]
shl esi, 2
sub esi, eax
movsx rax, byte [rsp + 0xc8]
add bpl, bl
sub esi, eax
movzx eax, r12b
add esi, eax
lea eax, [rdx + 4]
sub esi, dword [rsp + 0x38]
sub esi, edi
sub esi, r8d
add esi, edx
add esi, r15d
add esi, eax
call qword [sym.imp.KERNEL32.dll_GetCurrentThread]
mov edi, 1
mov edx, 0x3a1
xor ecx, ecx
mov r8d, edi
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_FindResourceA]
lea r8d, [rdi + 0xe]
mov edx, 0xed
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_FindResourceA]
sub dil, bpl
mov rbp, qword [rsp + 0x38]
movzx eax, r14b
sub sil, 0x1f
add sil, sil
imul dil
movzx edi, al
movzx eax, bpl
imul r15b
sub dil, al
movzx eax, byte [rsp + 0xd0]
imul byte [rsp + 0x34]
sub dil, al
movzx eax, bl
add dil, sil
shl al, 2
add bl, al
sub dil, bl
sub dil, byte [rsp + 0x50]
sub dil, r13b
sub dil, byte [rsp + 0xc8]
add dil, r12b
add dil, byte [rsp + 0xd8]
add dil, byte [rsp + 0x40]
add dil, byte [rsp + 0xc0]
call qword [sym.imp.USER32.dll_GetActiveWindow]
movsx ecx, dil
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov rax, rbp
add rsp, 0x78
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret