Function at 0x1400017e4
Capabilities:
Link many functions at runtime

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x80
mov rax, qword [0x140047040]
xor rax, rsp
mov qword [rbp - 0x10], rax
xorps xmm0, xmm0
mov r12d, edx
movups xmmword [rbp - 0x58], xmm0
mov rdi, rcx
call qword [sym.imp.KERNEL32.dll_GetCurrentThread]
mov rcx, rax
lea rdx, [rbp - 0x58]
call qword [sym.imp.KERNEL32.dll_GetThreadGroupAffinity]
call qword [sym.imp.KERNEL32.dll_GetActiveProcessorGroupCount]
xor r13d, r13d
movzx r15d, ax
mov ebx, r13d
test r15d, r15d
je 0x1400018a6
movzx ecx, bx
call qword [sym.imp.KERNEL32.dll_GetActiveProcessorCount]
mov r14d, eax
mov esi, r13d
test eax, eax
je 0x14000189f
mov ecx, esi
xorps xmm0, xmm0
movups xmmword [rbp - 0x48], xmm0
mov edx, 1
mov word [rbp - 0x40], bx
shl rdx, cl
mov qword [rbp - 0x48], rdx
call qword [sym.imp.KERNEL32.dll_GetCurrentThread]
xor r8d, r8d
lea rdx, [rbp - 0x48]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetThreadGroupAffinity]
mov rcx, qword [rdi]
mov edx, 5
call fcn.140037100
test eax, eax
jne 0x140001c5d
inc esi
cmp esi, r14d
jb 0x140001854
inc ebx
cmp ebx, r15d
jb 0x140001841
call qword [sym.imp.KERNEL32.dll_GetCurrentThread]
xor r8d, r8d
lea rdx, [rbp - 0x58]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetThreadGroupAffinity]
mov rcx, qword [rdi]
lea r8, [rbp - 0x38]
xor eax, eax
xorps xmm0, xmm0
movups xmmword [rbp - 0x38], xmm0
mov qword [rbp - 0x18], rax
movups xmmword [rbp - 0x28], xmm0
lea edx, [rax + 9]
call fcn.140037103
mov rdx, qword [rbp - 0x38]
lea r15, [rdi + 0x10]
test eax, eax
lea rcx, str.___CurentCr3:__p_n
cmovne rdx, r13
mov qword [r15], rdx
call fcn.1400013d8
mov rcx, rdi
call fcn.140001f50
test al, al
je 0x140001c5d
mov rdx, qword [rdi + 8]
lea rcx, str.___KernelCr3:__p_n
call fcn.1400013d8
mov rax, qword [rdi + 8]
lea r8, [rbp - 0x38]
mov rcx, qword [rdi + 0x28]
xorps xmm0, xmm0
mov qword [rbp - 0x38], rax
xor eax, eax
mov qword [rbp - 0x30], rcx
mov rcx, qword [rdi]
movups xmmword [rbp - 0x28], xmm0
lea edx, [rax + 0xa]
mov qword [rbp - 0x18], rax
call fcn.140037103
mov rdx, qword [rbp - 0x28]
test eax, eax
cmovne rdx, r13
mov qword [rdi + 0x20], rdx
test rdx, rdx
je 0x140001c5d
lea rcx, str.___NtShutdownSystemPa:__p_n
call fcn.1400013d8
mov rax, qword gs:[0x58]
mov rbx, qword [rdi + 0x48]
mov ecx, 4
mov qword [rbp - 0x60], r13
mov rsi, qword [rax]
mov eax, dword [rcx + rsi]
cmp dword [0x1400488dc], eax
jg 0x140001c86
mov rdx, qword [rdi + 0x20]
lea r8, [rbp - 0x48]
mov r9d, 0xe
mov dword [rbp - 0x58], 0x25ff
mov rcx, rdi
mov word [rbp - 0x54], r13w
mov qword [rbp - 0x52], rbx
call fcn.140001e4c
mov rdx, qword [rdi + 0x20]
lea r8, [rbp - 0x58]
mov rcx, rdi
call fcn.140001e9c
mov rcx, r12
lea rdx, [rbp - 0x60]
call qword [0x1400488c8]
mov rdx, qword [rdi + 0x20]
lea r8, [rbp - 0x48]
mov rcx, rdi
call fcn.140001e9c
mov rbx, qword [rbp - 0x60]
test rbx, rbx
je 0x140001c5d
mov r14, qword [rdi + 0x58]
lea r12, [0x1400488d8]
mov eax, 4
mov eax, dword [rax + rsi]
cmp dword [0x1400488d8], eax
jg 0x140001cd4
mov rdx, qword [rdi + 0x20]
lea r8, [rbp - 0x48]
mov r9d, 0xe
mov dword [rbp - 0x58], 0x25ff
mov rcx, rdi
mov word [rbp - 0x54], r13w
mov qword [rbp - 0x52], r14
call fcn.140001e4c
mov rdx, qword [rdi + 0x20]
lea r8, [rbp - 0x58]
mov rcx, rdi
call fcn.140001e9c
mov rax, qword [0x1400488d0]
mov rcx, rbx
call rax
mov rdx, qword [rdi + 0x20]
lea r8, [rbp - 0x48]
mov rcx, rdi
mov rbx, rax
call fcn.140001e9c
mov r14, qword [rdi + 0x60]
mov qword [rdi + 0x30], rbx
mov rbx, qword [rbp - 0x60]
mov eax, 4
mov eax, dword [rax + rsi]
cmp dword [0x1400488d8], eax
jg 0x140001d1a
mov rdx, qword [rdi + 0x20]
lea r8, [rbp - 0x48]
mov r9d, 0xe
mov dword [rbp - 0x58], 0x25ff
mov rcx, rdi
mov word [rbp - 0x54], r13w
mov qword [rbp - 0x52], r14
call fcn.140001e4c
mov rdx, qword [rdi + 0x20]
lea r8, [rbp - 0x58]
mov rcx, rdi
call fcn.140001e9c
mov rax, qword [0x1400488d0]
mov rcx, rbx
call rax
mov rdx, qword [rdi + 0x20]
lea r8, [rbp - 0x48]
mov rcx, rdi
mov rbx, rax
call fcn.140001e9c
mov r8, qword [rbp - 0x60]
lea rdx, [rdi + 0x18]
add r8, 0x28
mov qword [rdi + 0x38], rbx
mov rcx, rdi
call fcn.1400015a0
mov rbx, qword [rbp - 0x60]
mov r14, qword [rdi + 0x50]
mov r12d, 4
mov eax, dword [r12 + rsi]
cmp dword [0x1400488b8], eax
jg 0x140001d60
mov rdx, qword [rdi + 0x20]
lea r8, [rbp - 0x48]
mov r9d, 0xe
mov dword [rbp - 0x58], 0x25ff
mov rcx, rdi
mov word [rbp - 0x54], r13w
mov qword [rbp - 0x52], r14
call fcn.140001e4c
mov rdx, qword [rdi + 0x20]
lea r8, [rbp - 0x58]
mov rcx, rdi
call fcn.140001e9c
mov rcx, rbx
call qword [0x1400488e0]
mov rdx, qword [rdi + 0x20]
lea r8, [rbp - 0x48]
mov rcx, rdi
call fcn.140001e9c
cmp qword [r15], r13
jne 0x140001c59
mov qword [rbp - 0x60], r13
call qword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
mov r14, qword [rdi + 0x48]
mov ebx, eax
mov eax, dword [r12 + rsi]
cmp dword [0x1400488dc], eax
jg 0x140001dae
mov rdx, qword [rdi + 0x20]
lea r8, [rbp - 0x48]
mov r9d, 0xe
mov dword [rbp - 0x58], 0x25ff
mov rcx, rdi
mov word [rbp - 0x54], r13w
mov qword [rbp - 0x52], r14
call fcn.140001e4c
mov rdx, qword [rdi + 0x20]
lea r8, [rbp - 0x58]
mov rcx, rdi
call fcn.140001e9c
lea rdx, [rbp - 0x60]
mov rcx, rbx
call qword [0x1400488c8]
mov rdx, qword [rdi + 0x20]
lea r8, [rbp - 0x48]
mov rcx, rdi
call fcn.140001e9c
mov r8, qword [rbp - 0x60]
test r8, r8
je 0x140001c5d
add r8, 0x28
mov rdx, r15
mov rcx, rdi
call fcn.1400015a0
mov eax, dword [r12 + rsi]
cmp dword [0x1400488b8], eax
mov rbx, qword [rbp - 0x60]
mov r14, qword [rdi + 0x50]
jg 0x140001dfc
mov rdx, qword [rdi + 0x20]
lea r8, [rbp - 0x48]
mov r9d, 0xe
mov dword [rbp - 0x58], 0x25ff
mov rcx, rdi
mov word [rbp - 0x54], r13w
mov qword [rbp - 0x52], r14
call fcn.140001e4c
mov rdx, qword [rdi + 0x20]
lea r8, [rbp - 0x58]
mov rcx, rdi
call fcn.140001e9c
mov rcx, rbx
call qword [0x1400488e0]
mov rdx, qword [rdi + 0x20]
lea r8, [rbp - 0x48]
mov rcx, rdi
call fcn.140001e9c
mov al, 1
jmp 0x140001c5f
xor al, al
mov rcx, qword [rbp - 0x10]
xor rcx, rsp
call fcn.140037200
mov rbx, qword [rsp + 0xd0]
add rsp, 0x80
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
lea rcx, [0x1400488dc]
call fcn.14003728c
cmp dword [0x1400488dc], 0xffffffff
jne 0x140001990
lea rcx, str.ntdll.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, str.NtShutdownSystem
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, [0x1400488dc]
mov qword [0x1400488c8], rax
call fcn.140037220
jmp 0x140001990
mov rcx, r12
call fcn.14003728c
cmp dword [0x1400488d8], 0xffffffff
jne 0x140001a0f
lea rcx, str.ntdll.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, str.NtShutdownSystem
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r12
mov qword [0x1400488d0], rax
call fcn.140037220
jmp 0x140001a0f
mov rcx, r12
call fcn.14003728c
cmp dword [0x1400488d8], 0xffffffff
jne 0x140001a84
lea rcx, str.ntdll.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, str.NtShutdownSystem
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r12
mov qword [0x1400488d0], rax
call fcn.140037220
jmp 0x140001a84
lea rcx, [0x1400488b8]
call fcn.14003728c
cmp dword [0x1400488b8], 0xffffffff
jne 0x140001b0f
lea rcx, str.ntdll.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, str.NtShutdownSystem
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, [0x1400488b8]
mov qword [0x1400488e0], rax
call fcn.140037220
jmp 0x140001b0f
lea rcx, [0x1400488dc]
call fcn.14003728c
cmp dword [0x1400488dc], 0xffffffff
jne 0x140001b87
lea rcx, str.ntdll.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, str.NtShutdownSystem
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, [0x1400488dc]
mov qword [0x1400488c8], rax
call fcn.140037220
jmp 0x140001b87
lea rcx, [0x1400488b8]
call fcn.14003728c
cmp dword [0x1400488b8], 0xffffffff
jne 0x140001c0a
lea rcx, str.ntdll.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, str.NtShutdownSystem
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, [0x1400488b8]
mov qword [0x1400488e0], rax
call fcn.140037220
jmp 0x140001c0a