Function at 0x140024040
Capabilities:
Get system information on windows

Disassembly:
mov qword [rsp + 8], rcx
push rbx
sub rsp, 0x170
lea rcx, [0x1400ef3d0]
call fcn.140008ce8
lea rcx, [rsp + 0x50]
mov byte [0x1400ef40c], 0
mov dword [rsp + 0x50], 0x11c
call qword [sym.imp.KERNEL32.dll_GetVersionExW]
mov eax, dword [rsp + 0x54]
lea rdx, [rsp + 0x64]
mov dword [0x1400ef3c0], eax
lea rcx, [0x1400ef3d0]
mov eax, dword [rsp + 0x58]
mov dword [0x1400ef3c4], eax
mov eax, dword [rsp + 0x5c]
mov dword [0x1400ef3c8], eax
call fcn.1400092ac
mov rcx, qword [0x1400ef3d8]
lea rbx, [0x1400b549c]
xor r8d, r8d
test rcx, rcx
jne 0x140068efe
or r8, 0xffffffffffffffff
xor edx, edx
lea rcx, [0x1400ef3d0]
call fcn.14000942c
mov r8, qword [0x1400ef3d8]
xor r11d, r11d
lea rax, [r8 - 1]
test r8, r8
je 0x140024256
mov r10, qword [0x1400ef3d0]
xor edx, edx
mov ecx, reloc.OLEAUT32.dll_RegisterActiveObject
xor r9d, r9d
cmp word [r10 + rax*2], cx
je 0x140068f51
movzx ecx, word [rbx + rdx*2 + 2]
inc rdx
test cx, cx
jne 0x1400240f6
test r9, r9
jne 0x140068f59
cmp rax, 0xffffffffffffffff
je 0x140024256
lea rdx, [rax + 1]
or r8, 0xffffffffffffffff
lea rcx, [0x1400ef3d0]
call fcn.14000942c
mov eax, dword [0x1400ef3c0]
mov word [0x1400ef407], 0
mov qword [0x1400ef3f0], 0
mov qword [0x1400ef3f8], 0
mov dword [0x1400ef400], 0
mov word [0x1400ef404], 0
mov byte [0x1400ef406], 0
sub eax, 5
je 0x1400690c5
sub eax, 1
jne 0x140068f6d
mov eax, dword [0x1400ef3c4]
mov byte [0x1400ef3f1], 1
mov byte [0x1400ef3f3], 1
test eax, eax
je 0x140068fef
cmp eax, 1
je 0x14006901c
cmp eax, 2
jne 0x14006906c
cmp byte [rsp + 0x16a], 1
mov byte [0x1400ef3fb], 1
mov byte [0x1400ef3f9], 1
mov byte [0x1400ef3f5], 1
jne 0x140069057
mov word [0x1400ef3fc], 0x101
mov dword [rsp + 0x180], 0
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov rcx, rax
lea rdx, [rsp + 0x180]
call qword [sym.imp.KERNEL32.dll_IsWow64Process]
cmp dword [rsp + 0x180], 1
je 0x140069120
movzx ebx, byte [0x1400ef408]
xor edx, edx
lea rcx, [rsp + 0x20]
lea r8d, [rdx + 0x30]
call fcn.140026550
test bl, bl
jne 0x14006912d
lea rcx, [rsp + 0x20]
call qword [sym.imp.KERNEL32.dll_GetSystemInfo]
movzx eax, word [rsp + 0x20]
mov word [0x1400ef40a], ax
lea rax, [0x1400ef3c0]
add rsp, 0x170
pop rbx
ret
xor edx, edx
jmp 0x140024125
mov r11, qword [0x1400ef3d0]
xor r9d, r9d
mov r10d, reloc.OLEAUT32.dll_RegisterActiveObject
xor edx, edx
cmp word [r11 + r8*2], r10w
lea rax, [rdx + 1]
movzx r10d, word [rbx + r9*2 + 2]
lea r9, [r9 + 1]
cmovne rax, rdx
mov rdx, rax
test r10w, r10w
jne 0x140068f10
test rax, rax
je 0x140068f42
inc r8
cmp r8, rcx
jb 0x140068f05
jmp 0x1400240bc
cmp r8, 0xffffffffffffffff
jne 0x1400240c0
jmp 0x1400240bc
inc r9
jmp 0x140024101
dec rax
inc r11
cmp r11, r8
jb 0x1400240ec
jmp 0x140024256
cmp eax, 4
jne 0x1400241e0
cmp dword [0x1400ef3c4], 0
mov byte [0x1400ef3f1], 1
mov byte [0x1400ef3f3], 1
mov byte [0x1400ef3ff], 1
mov byte [0x1400ef3fd], 1
mov byte [0x1400ef3fb], 1
mov byte [0x1400ef3f9], 1
mov byte [0x1400ef3f5], 1
mov byte [0x1400ef401], 1
mov byte [0x1400ef403], 1
jne 0x1400241e0
cmp byte [rsp + 0x16a], 1
jne 0x140068fda
mov word [0x1400ef404], 0x101
jmp 0x1400241e0
mov word [0x1400ef405], 0x101
mov byte [0x1400ef407], 1
jmp 0x1400241e0
cmp byte [rsp + 0x16a], 1
jne 0x140069007
mov word [0x1400ef3f4], 0x101
jmp 0x1400241e0
mov word [0x1400ef3f5], 0x101
mov byte [0x1400ef3f7], 1
jmp 0x1400241e0
cmp byte [rsp + 0x16a], 1
mov byte [0x1400ef3f5], 1
mov byte [0x1400ef3f7], 1
jne 0x140069042
mov word [0x1400ef3f8], 0x101
jmp 0x1400241e0
mov word [0x1400ef3f9], 0x101
mov byte [0x1400ef3fb], 1
jmp 0x1400241e0
mov word [0x1400ef3fd], 0x101
mov byte [0x1400ef3ff], 1
jmp 0x1400241e0
cmp eax, 3
jne 0x1400241e0
cmp byte [rsp + 0x16a], 1
mov byte [0x1400ef3ff], 1
mov byte [0x1400ef3fd], 1
mov byte [0x1400ef3fb], 1
mov byte [0x1400ef3f9], 1
mov byte [0x1400ef3f5], 1
jne 0x1400690b0
mov word [0x1400ef400], 0x101
jmp 0x1400241e0
mov word [0x1400ef401], 0x101
mov byte [0x1400ef403], 1
jmp 0x1400241e0
mov eax, dword [0x1400ef3c4]
cmp eax, 1
jne 0x1400690db
mov word [0x1400ef3f0], 0x101
jmp 0x140069108
cmp eax, 2
jne 0x140069108
cmp byte [rsp + 0x16a], 1
mov byte [0x1400ef3f1], 1
mov byte [0x1400ef3f3], 1
jne 0x140069101
mov byte [0x1400ef3f0], 1
jmp 0x140069108
mov byte [0x1400ef3f2], 1
movzx eax, byte [rsp + 0x168]
shr al, 6
and al, 1
mov byte [0x1400ef40c], al
jmp 0x1400241e0
mov bl, 1
mov byte [0x1400ef408], bl
jmp 0x140024217
lea rcx, [0x1400b53a0]
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov rbx, rax
test rax, rax
je 0x140069160
lea rdx, str.GetNativeSystemInfo
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x140069160
lea rcx, [rsp + 0x20]
call rax
jmp 0x14006916b
lea rcx, [rsp + 0x20]
call qword [sym.imp.KERNEL32.dll_GetSystemInfo]
test rbx, rbx
je 0x14002423a
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
nop
jmp 0x14002423a