Function at 0x140012eb0
Capabilities:
Get system information on windows

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x1a0
mov rdi, rcx
add rcx, 0x10
call fcn.14000fd50
lea rcx, [rsp + 0x80]
mov byte [rdi + 0x42], 0
mov dword [rsp + 0x80], 0x11c
call qword [sym.imp.KERNEL32.dll_GetVersionExW]
mov eax, dword [rsp + 0x88]
mov r11d, dword [rsp + 0x84]
mov dword [rdi + 4], eax
mov eax, dword [rsp + 0x8c]
lea rdx, [rsp + 0x94]
lea rcx, [rdi + 0x10]
mov dword [rdi + 8], eax
mov dword [rdi], r11d
call fcn.1400107e0
lea rdx, [0x14009bce0]
lea rcx, [rdi + 0x10]
call fcn.140013070
lea rdx, [0x14009bce0]
lea rcx, [rdi + 0x10]
call fcn.1400130b0
mov eax, dword [rdi]
mov byte [rdi + 0x3e], 0
sub eax, 5
mov byte [rdi + 0x30], 0
mov byte [rdi + 0x31], 0
mov byte [rdi + 0x32], 0
mov byte [rdi + 0x33], 0
mov byte [rdi + 0x34], 0
mov byte [rdi + 0x35], 0
mov byte [rdi + 0x36], 0
mov byte [rdi + 0x37], 0
mov byte [rdi + 0x38], 0
mov byte [rdi + 0x39], 0
mov byte [rdi + 0x3a], 0
mov byte [rdi + 0x3b], 0
mov byte [rdi + 0x3c], 0
mov byte [rdi + 0x3d], 0
je 0x140033581
cmp eax, 1
jne 0x140012fb9
mov byte [rdi + 0x31], al
mov byte [rdi + 0x33], al
mov byte [rdi + 0x35], al
mov eax, dword [rdi + 4]
test eax, eax
je 0x140033550
cmp eax, 1
jne 0x140012fb9
mov byte [rdi + 0x37], al
mov byte [rdi + 0x39], al
mov byte [rdi + 0x3b], al
cmp byte [rsp + 0x19a], al
jne 0x140033574
mov byte [rdi + 0x3a], al
xor esi, esi
lea rcx, [rsp + 0x20]
mov qword [rsp + 0x20], rsi
mov qword [rsp + 0x30], rsi
call fcn.140013b10
test al, al
je 0x140013008
mov dword [rsp + 0x1b0], esi
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
lea rcx, [rsp + 0x20]
mov rbx, rax
call fcn.140013b90
lea rdx, [rsp + 0x1b0]
mov rcx, rbx
call rax
cmp dword [rsp + 0x1b0], 1
je 0x1400335dd
xor edx, edx
lea rcx, [rsp + 0x54]
mov dword [rsp + 0x50], esi
lea r8d, [rdx + 0x2c]
call fcn.140017520
cmp byte [rdi + 0x3e], sil
jne 0x1400335e6
lea rcx, [rsp + 0x50]
call qword [sym.imp.KERNEL32.dll_GetSystemInfo]
mov rcx, qword [rsp + 0x20]
movzx eax, word [rsp + 0x50]
mov word [rdi + 0x40], ax
test rcx, rcx
je 0x14001304a
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
lea r11, [rsp + 0x1a0]
mov rax, rdi
mov rbx, qword [r11 + 0x18]
mov rsi, qword [r11 + 0x20]
mov rsp, r11
pop rdi
ret
cmp byte [rsp + 0x19a], 1
mov byte [rdi + 0x37], 1
jne 0x140033567
mov byte [rdi + 0x36], 1
jmp 0x140012fb9
mov byte [rdi + 0x39], 1
mov byte [rdi + 0x38], 1
jmp 0x140012fb9
mov byte [rdi + 0x3d], 1
mov byte [rdi + 0x3c], 1
jmp 0x140012fb9
mov eax, dword [rdi + 4]
test eax, eax
jne 0x140033592
mov byte [rdi + 0x31], 1
mov byte [rdi + 0x30], 1
jmp 0x1400335c7
cmp eax, 1
jne 0x1400335a2
mov byte [rdi + 0x31], al
mov byte [rdi + 0x33], al
mov byte [rdi + 0x32], al
jmp 0x1400335c7
cmp eax, 2
jne 0x1400335c7
cmp byte [rsp + 0x19a], 1
mov byte [rdi + 0x31], 1
mov byte [rdi + 0x33], 1
mov byte [rdi + 0x35], 1
jne 0x1400335c3
mov byte [rdi + 0x32], 1
jmp 0x1400335c7
mov byte [rdi + 0x34], 1
movzx eax, byte [rsp + 0x198]
shr eax, 6
and eax, 1
mov byte [rdi + 0x42], al
jmp 0x140012fb9
mov byte [rdi + 0x3e], 1
jmp 0x140013008
lea rcx, [rsp + 0x38]
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x48], rsi
call fcn.1400425f0
test al, al
je 0x14003361f
lea rcx, [rsp + 0x38]
call fcn.140052040
lea rcx, [rsp + 0x50]
call rax
lea rcx, [rsp + 0x38]
call fcn.14003df10
nop
jmp 0x140013031
lea rcx, [rsp + 0x50]
call qword [sym.imp.KERNEL32.dll_GetSystemInfo]
lea rcx, [rsp + 0x38]
call fcn.14003df10
nop
jmp 0x140013031