Function at 0x14002c530
Capabilities:
Get system information on windows

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
mov qword [rsp + 0x20], r12
push rbp
push r14
push r15
lea rbp, [rsp - 0x47]
sub rsp, 0xa0
mov rax, qword [0x1400c2138]
xor rax, rsp
mov qword [rbp + 0x37], rax
xor r14d, r14d
mov dword [rbp - 0x31], r14d
mov edx, 4
mov rax, qword gs:[0x58]
mov rcx, qword [rax]
lea r12, [0x1400dc5d0]
mov eax, dword [rdx + rcx]
cmp dword [0x1400dc5c8], eax
jg 0x14002ce7a
lea r15, [0x1400c6b60]
mov qword [rbp - 0x21], r15
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
nop
cmp dword [0x1400c8488], 0
jne 0x14002ce24
mov rax, qword [0x1400c8490]
test rax, rax
jne 0x14002c5e0
lea rcx, [rbp - 0x31]
call qword [sym.imp.KERNEL32.dll_GetSystemTimeAsFileTime]
mov eax, dword [rbp - 0x2d]
mov dword [rbp - 0x25], eax
mov eax, dword [rbp - 0x31]
mov dword [rbp - 0x29], eax
mov rax, qword [rbp - 0x29]
mov qword [0x1400c8490], rax
mov qword [0x1400dc640], rax
lea rcx, [rbp - 0x19]
call fcn.140026490
mov rbx, rax
cmp r12, rax
je 0x14002c674
mov rdx, qword [0x1400dc5e8]
cmp rdx, 0x10
jb 0x14002c639
inc rdx
mov rcx, qword [0x1400dc5d0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002c634
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002ceb9
call fcn.14005cb40
movdqa xmm0, xmmword [0x1400b18f0]
movdqa xmmword [0x1400dc5e0], xmm0
mov byte [0x1400dc5d0], 0
movups xmm0, xmmword [rbx]
movaps xmmword [0x1400dc5d0], xmm0
movups xmm1, xmmword [rbx + 0x10]
movaps xmmword [0x1400dc5e0], xmm1
mov qword [rbx + 0x10], r14
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
mov rdx, qword [rbp - 1]
cmp rdx, 0x10
jb 0x14002c6af
inc rdx
mov rcx, qword [rbp - 0x19]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002c6aa
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002ceb9
call fcn.14005cb40
lea rcx, [rbp - 0x19]
call fcn.140027210
mov rbx, rax
lea rax, [0x1400dc5f0]
cmp rax, rbx
je 0x14002c743
mov rdx, qword [0x1400dc608]
cmp rdx, 0x10
jb 0x14002c708
inc rdx
mov rcx, qword [0x1400dc5f0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002c703
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002cebf
call fcn.14005cb40
movdqa xmm0, xmmword [0x1400b18f0]
movdqa xmmword [0x1400dc600], xmm0
mov byte [0x1400dc5f0], 0
movups xmm0, xmmword [rbx]
movaps xmmword [0x1400dc5f0], xmm0
movups xmm1, xmmword [rbx + 0x10]
movaps xmmword [0x1400dc600], xmm1
mov qword [rbx + 0x10], r14
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
mov rdx, qword [rbp - 1]
cmp rdx, 0x10
jb 0x14002c77e
inc rdx
mov rcx, qword [rbp - 0x19]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002c779
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002cebf
call fcn.14005cb40
mov rsi, qword [0x1400dc6e8]
cmp rsi, 2
jb 0x14002c7ba
lea rax, [0x1400dc6d0]
cmp rsi, 0x10
cmovae rax, qword [0x1400dc6d0]
mov qword [0x1400dc6e0], 2
mov ecx, 0x4350
mov word [rax], cx
mov byte [rax + 2], 0
jmp 0x14002c8a5
mov rcx, rsi
shr rcx, 1
movabs rdi, 0x7fffffffffffffff
mov rax, rdi
sub rax, rcx
cmp rsi, rax
jbe 0x14002c7fe
movabs rax, 0x8000000000000027
mov rcx, rax
call fcn.1400679f4
test rax, rax
je 0x14002cec5
lea rbx, [rax + 0x27]
and rbx, 0xffffffffffffffe0
mov qword [rbx - 8], rax
jmp 0x14002c845
lea rax, [rcx + rsi]
mov edi, 0xf
cmp rax, rdi
cmova rdi, rax
lea rcx, [rdi + 1]
cmp rcx, 0x1000
jb 0x14002c82a
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x14002ce63
jmp 0x14002c7df
test rcx, rcx
je 0x14002c842
call fcn.1400679f4
mov rbx, rax
test rax, rax
je 0x14002ce69
jmp 0x14002c845
mov rbx, r14
mov qword [0x1400dc6e0], 2
mov qword [0x1400dc6e8], rdi
mov ecx, 0x4350
mov word [rbx], cx
mov byte [rbx + 2], 0
cmp rsi, 0x10
jb 0x14002c89e
lea rdx, [rsi + 1]
mov rcx, qword [0x1400dc6d0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002c899
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002ced6
call fcn.14005cb40
mov qword [0x1400dc6d0], rbx
lea rcx, [rbp - 0x19]
call fcn.140027510
mov rbx, rax
lea rax, [0x1400dc6f0]
cmp rax, rbx
je 0x14002c939
mov rdx, qword [0x1400dc708]
cmp rdx, 0x10
jb 0x14002c8fe
inc rdx
mov rcx, qword [0x1400dc6f0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002c8f9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002cedc
call fcn.14005cb40
movdqa xmm0, xmmword [0x1400b18f0]
movdqa xmmword [0x1400dc700], xmm0
mov byte [0x1400dc6f0], 0
movups xmm0, xmmword [rbx]
movaps xmmword [0x1400dc6f0], xmm0
movups xmm1, xmmword [rbx + 0x10]
movaps xmmword [0x1400dc700], xmm1
mov qword [rbx + 0x10], r14
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
mov rdx, qword [rbp - 1]
cmp rdx, 0x10
jb 0x14002c974
inc rdx
mov rcx, qword [rbp - 0x19]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002c96f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002cedc
call fcn.14005cb40
lea rcx, [rbp - 0x19]
call fcn.140026d10
mov rbx, rax
lea rax, [0x1400dc690]
cmp rax, rbx
je 0x14002ca08
mov rdx, qword [0x1400dc6a8]
cmp rdx, 0x10
jb 0x14002c9cd
inc rdx
mov rcx, qword [0x1400dc690]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002c9c8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002cee2
call fcn.14005cb40
movdqa xmm0, xmmword [0x1400b18f0]
movdqa xmmword [0x1400dc6a0], xmm0
mov byte [0x1400dc690], 0
movups xmm0, xmmword [rbx]
movaps xmmword [0x1400dc690], xmm0
movups xmm1, xmmword [rbx + 0x10]
movaps xmmword [0x1400dc6a0], xmm1
mov qword [rbx + 0x10], r14
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
mov rdx, qword [rbp - 1]
cmp rdx, 0x10
jb 0x14002ca43
inc rdx
mov rcx, qword [rbp - 0x19]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002ca3e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002cee2
call fcn.14005cb40
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x17], xmm0
mov qword [rbp + 0x27], r14
mov qword [rbp - 1], 0xf
mov qword [rbp - 9], 0xd
movsd xmm0, qword [str.12.7.5749.400]
movsd qword [rbp - 0x19], xmm0
mov eax, dword [0x1400af620]
mov dword [rbp - 0x11], eax
movzx eax, byte [0x1400af624]
mov byte [rbp - 0xd], al
mov byte [rbp - 0xc], 0
lea rdx, [rbp + 0x17]
lea rcx, [rbp - 0x19]
call fcn.140027e40
nop
mov rdx, qword [rbp - 1]
cmp rdx, 0x10
jb 0x14002cacc
inc rdx
mov rcx, qword [rbp - 0x19]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002cac7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002cee8
call fcn.14005cb40
mov rbx, r14
mov rax, qword [rbp + 0x1f]
mov r8, qword [rbp + 0x17]
sub rax, r8
sar rax, 1
cmp rax, 4
jne 0x14002cb0b
movzx ecx, word [r8]
shl rcx, 0x10
movzx eax, word [r8 + 2]
or rcx, rax
shl rcx, 0x10
movzx eax, word [r8 + 4]
or rcx, rax
shl rcx, 0x10
movzx ebx, word [r8 + 6]
or rbx, rcx
test r8, r8
je 0x14002cb4b
mov rax, qword [rbp + 0x27]
sub rax, r8
sar rax, 1
lea rdx, [rax + rax]
mov rax, r8
cmp rdx, 0x1000
jb 0x14002cb43
add rdx, 0x27
mov r8, qword [r8 - 8]
sub rax, r8
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002ceee
mov rcx, r8
call fcn.14005cb40
mov qword [0x1400dc610], rbx
call fcn.140027920
mov dword [0x1400dc638], eax
mov qword [rbp - 0x19], r14
mov qword [rbp - 9], r14
mov qword [rbp - 1], 0xf
mov byte [rbp - 0x19], 0
mov dword [rbp - 0x31], 3
lea rcx, [rbp + 0x17]
call fcn.1400261b0
nop
lea r8, [rbp - 0x19]
mov rcx, rax
call fcn.140020198
nop
mov rdx, qword [rbp + 0x2f]
cmp rdx, 8
jb 0x14002cbcf
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x17]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002cbca
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002cef4
call fcn.14005cb40
mov rdx, qword [0x1400dc688]
cmp rdx, 0x10
jb 0x14002cc10
inc rdx
mov rcx, qword [0x1400dc670]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002cc0b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002cefa
call fcn.14005cb40
movups xmm0, xmmword [rbp - 0x19]
movaps xmmword [0x1400dc670], xmm0
movups xmm1, xmmword [rbp - 9]
movaps xmmword [0x1400dc680], xmm1
mov ebx, 0x20
lea rcx, [0x1400afe18]
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
lea rdx, str.GetNativeSystemInfo
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, [rbp - 0x19]
test rax, rax
je 0x14002cc55
call rax
jmp 0x14002cc5b
call qword [sym.imp.KERNEL32.dll_GetSystemInfo]
movzx eax, word [rbp - 0x19]
cmp ax, 9
je 0x14002cc6b
cmp ax, 6
jne 0x14002cc70
mov ebx, 0x40
mov word [0x1400dc66c], bx
call qword [sym.imp.KERNEL32.dll_GetSystemDefaultLangID]
movzx eax, ax
mov dword [0x1400dc668], eax
mov qword [rbp - 0x19], r14
mov qword [rbp - 9], r14
mov qword [rbp - 1], 0xf
mov byte [rbp - 0x19], 0
mov dword [rbp - 0x31], 5
lea rcx, [rbp + 0x17]
call fcn.140028020
nop
lea r8, [rbp - 0x19]
mov rcx, rax
call fcn.140020198
nop
mov rdx, qword [rbp + 0x2f]
cmp rdx, 8
jb 0x14002ccf8
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x17]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002ccf3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002cf00
call fcn.14005cb40
mov rdx, qword [0x1400dc660]
cmp rdx, 0x10
jb 0x14002cd39
inc rdx
mov rcx, qword [0x1400dc648]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002cd34
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002cf06
call fcn.14005cb40
movups xmm0, xmmword [rbp - 0x19]
movups xmmword [0x1400dc648], xmm0
movups xmm1, xmmword [rbp - 9]
movups xmmword [0x1400dc658], xmm1
lea rcx, [rbp - 0x19]
call fcn.140027bc0
mov rbx, rax
lea rax, [0x1400dc6b0]
cmp rax, rbx
je 0x14002cde3
mov rdx, qword [0x1400dc6c8]
cmp rdx, 0x10
jb 0x14002cda8
inc rdx
mov rcx, qword [0x1400dc6b0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002cda3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002ce5d
call fcn.14005cb40
movdqa xmm0, xmmword [0x1400b18f0]
movdqa xmmword [0x1400dc6c0], xmm0
mov byte [0x1400dc6b0], 0
movups xmm0, xmmword [rbx]
movaps xmmword [0x1400dc6b0], xmm0
movups xmm1, xmmword [rbx + 0x10]
movaps xmmword [0x1400dc6c0], xmm1
mov qword [rbx + 0x10], r14
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
mov rdx, qword [rbp - 1]
cmp rdx, 0x10
jb 0x14002ce1a
inc rdx
mov rcx, qword [rbp - 0x19]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002ce15
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002ce5d
call fcn.14005cb40
mov dword [0x1400c8488], 1
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rax, r12
mov rcx, qword [rbp + 0x37]
xor rcx, rsp
call fcn.14005ccc0
lea r11, [rsp + 0xa0]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov r12, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
ret
call fcn.140067514
nop
call fcn.140005fc4
int3
lea rdx, [0x1400beb80]
lea rcx, [rbp - 0x38]
call fcn.140062228
nop
lea rcx, [0x1400dc5c8]
call fcn.14005d734
cmp dword [0x1400dc5c8], 0xffffffff
jne 0x14002c591
mov rcx, r12
call fcn.14002bf20
lea rcx, [0x140095e10]
call fcn.14005cf44
nop
lea rcx, [0x1400dc5c8]
call fcn.14005d6d4
jmp 0x14002c591
call fcn.140067514
int3
call fcn.140067514
int3
lea rdx, [0x1400beb80]
lea rcx, [rbp - 0x39]
call fcn.140062228
int3
call fcn.140067514
int3
call fcn.140067514
int3
call fcn.140067514
nop
call fcn.140067514
nop
call fcn.140067514
nop
call fcn.140067514
int3
call fcn.140067514
nop
call fcn.140067514
int3
call fcn.140067514
int3