Function at 0x140078f30
Capabilities:
Get system information on windows

Disassembly:
mov r11, rsp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xd0
mov rax, qword [0x1400b1008]
xor rax, rsp
mov qword [rsp + 0xc0], rax
mov rsi, r9
mov r15, rdx
mov rbx, rcx
mov r13, qword [rsp + 0x130]
mov r12, qword [rsp + 0x138]
mov rax, qword [rsp + 0x140]
mov qword [rsp + 0x48], rax
mov rcx, qword [rsp + 0x148]
mov qword [rsp + 0x50], rcx
mov rdi, qword [rsp + 0x150]
xor r14d, r14d
mov dword [rsp + 0x3c], r14d
mov dword [rsp + 0x2c], r14d
mov dword [rsp + 0x30], r14d
mov dword [rsp + 0x28], r14d
mov dword [rsp + 0x34], r14d
mov qword [rsp + 0x20], r14
xorps xmm0, xmm0
movups xmmword [r11 - 0x78], xmm0
movups xmmword [r11 - 0x68], xmm0
movups xmmword [r11 - 0x58], xmm0
test rbx, rbx
je 0x140079351
cmp byte [rbx], r14b
je 0x140079351
test rdx, rdx
je 0x140079351
test r8, r8
je 0x140079351
cmp rdx, r8
ja 0x140079351
test r9, r9
je 0x140079351
test r13, r13
je 0x140079351
test r12, r12
je 0x140079351
test rax, rax
je 0x140079351
test rcx, rcx
je 0x140079351
test rdi, rdi
je 0x140079351
lfence
mov dword [rdi], r14d
mov rcx, rbx
call fcn.1400783f0
mov r8, r15
lea rdx, str.EFFICIENCY
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncmp]
test eax, eax
jne 0x140079081
mov dword [r12], 1
lea r9d, [r14 + 1]
mov rbx, qword [rsi + 0x28]
mov qword [rsp + 0x20], rbx
test rbx, rbx
jne 0x1400791c1
mov dword [r12], 2
mov rbx, qword [rsi + 0x30]
mov qword [rsp + 0x20], rbx
jmp 0x1400791c1
lfence
mov r8, r15
lea rdx, str.PERFORMANCE
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncmp]
test eax, eax
jne 0x1400790b5
mov dword [r12], 2
lea r9d, [rax + 1]
mov rbx, qword [rsi + 0x30]
mov qword [rsp + 0x20], rbx
jmp 0x1400791c1
lfence
mov r8, r15
lea rdx, [0x1400f217c]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncmp]
test eax, eax
je 0x14007934d
mov r8d, dword [r12]
mov ecx, r8d
test r8d, r8d
je 0x14007915e
sub ecx, 1
je 0x1400790f4
cmp ecx, 1
je 0x1400790f4
mov dword [rdi], 1
jmp 0x140079351
mov r9d, 1
mov dword [rsp + 0x38], r14d
mov rbx, r14
mov qword [rsp + 0x20], rbx
mov edx, r14d
nop word [rax + rax]
cmp edx, dword [rsi + 0x10]
jae 0x1400791c1
mov ecx, r8d
sub ecx, r9d
je 0x14007913a
cmp ecx, r9d
je 0x14007912e
mov dword [rdi], r9d
jmp 0x140079351
mov ecx, edx
mov rax, qword [rsi + 0x20]
cmp dword [rax + rcx*4], 2
jmp 0x140079144
mov ecx, edx
mov rax, qword [rsi + 0x20]
cmp dword [rax + rcx*4], r9d
jne 0x140079156
mov ecx, edx
mov rax, r9
shl rax, cl
or rbx, rax
mov qword [rsp + 0x20], rbx
inc edx
mov dword [rsp + 0x38], edx
jmp 0x140079110
mov rcx, rbx
call fcn.140078350
mov rcx, rbx
test eax, eax
jne 0x14007918d
lea rdx, [rsp + 0x20]
call fcn.140077820
cmp eax, 1
jne 0x140079183
mov dword [rdi], eax
jmp 0x140079351
mov dword [rsp + 0x2c], 1
jmp 0x1400791b7
call fcn.140078820
test eax, eax
jne 0x1400791e7
lea rdx, [rsp + 0x20]
mov rcx, rbx
call fcn.140077780
cmp eax, 1
jne 0x1400791af
mov dword [rdi], eax
jmp 0x140079351
mov dword [rsp + 0x30], 1
mov rbx, qword [rsp + 0x20]
mov r9d, dword [rsp + 0x28]
cmp dword [rsp + 0x3c], 1
je 0x14007922a
cmp dword [rsp + 0x2c], 1
je 0x14007922a
cmp dword [rsp + 0x30], 1
je 0x14007922a
cmp r9d, 1
je 0x14007922a
mov dword [rdi], 1
jmp 0x140079351
cmp byte [rbx], 0x23
jne 0x140079345
cmp byte [rbx + 1], 0
je 0x140079345
lea rcx, [rbx + 1]
call fcn.140077930
test eax, eax
jne 0x140079345
lea rdx, [rsp + 0x20]
lea rcx, [rbx + 1]
call fcn.140077730
cmp eax, 1
jne 0x140079225
mov dword [rdi], eax
jmp 0x140079351
mov rbx, qword [rsp + 0x20]
xorps xmm0, xmm0
movups xmmword [rsp + 0x90], xmm0
movups xmmword [rsp + 0xa0], xmm0
movups xmmword [rsp + 0xb0], xmm0
lea rcx, [rsp + 0x90]
call qword [sym.imp.KERNEL32.dll_GetSystemInfo]
mov rsi, qword [rsp + 0xa8]
call qword [sym.imp.KERNEL32.dll_GetMaximumProcessorGroupCount]
movzx eax, ax
test eax, eax
jne 0x140079273
mov dword [rdi], 1
jmp 0x140079351
cmp eax, 1
jne 0x14007928c
cmp rbx, rsi
jbe 0x14007932b
mov dword [rdi], 2
jmp 0x140079351
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0x58], xmm0
movups xmmword [rsp + 0x68], xmm0
movups xmmword [rsp + 0x78], xmm0
mov qword [rsp + 0x88], rax
lea rcx, [rsp + 0x58]
call fcn.14007aa70
cmp eax, 1
jne 0x1400792be
mov dword [rdi], eax
jmp 0x140079351
mov dword [rsp + 0x40], r14d
mov dword [rsp + 0x44], r14d
mov ecx, r14d
mov edx, dword [rsp + 0x34]
mov r8, qword [rsp + 0x70]
cmp ecx, 0x40
jae 0x140079321
mov eax, ecx
bt rbx, rax
jae 0x140079319
mov eax, ecx
test r14d, r14d
jne 0x140079303
mov r14d, 1
mov dword [rsp + 0x40], r14d
mov edx, dword [r8 + rax*4]
mov dword [rsp + 0x34], edx
inc ecx
mov dword [rsp + 0x44], ecx
jmp 0x1400792d4
cmp edx, dword [r8 + rax*4]
je 0x140079311
mov dword [rdi], 3
jmp 0x140079351
inc ecx
mov dword [rsp + 0x44], ecx
jmp 0x1400792d4
mov dword [rdi], 1
jmp 0x140079351
lea rcx, [rsp + 0x58]
call fcn.14007f5b0
mov dword [r13], 1
mov rax, qword [rsp + 0x48]
mov qword [rax], rbx
mov rax, qword [rsp + 0x50]
mov qword [rax], rsi
jmp 0x14007934d
mov dword [rdi], 1
jmp 0x140079351
xor eax, eax
jmp 0x140079365
nop
mov eax, 1
jmp 0x140079365
mov rcx, qword [rsp + 0xc0]
xor rcx, rsp
call fcn.140001ea0
add rsp, 0xd0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret