Function at 0x14004d120
Capabilities:
Get system information on windows

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x288
test rcx, rcx
je 0x14004d5b0
mov r15, rcx
lea rcx, [rsp + 0x88]
call sub.KERNEL32.dll_GetSystemInfo
mov eax, dword [rsp + 0x8c]
mov ecx, dword [rsp + 0xb0]
cmp rax, rcx
cmova rcx, rax
test rcx, rcx
je 0x14004d566
mov rdi, r15
shr rdi, 1
movabs r12, 0x7fffffff00000000
test rdi, r12
je 0x14004d414
mov rax, rdi
xor edx, edx
div rcx
test rdx, rdx
jne 0x14004d423
mov qword [rsp + 0x38], rdi
test rdi, rdi
je 0x14004d5c0
lea rsi, [rsp + 0x88]
mov rcx, rsi
call sub.KERNEL32.dll_GetSystemInfo
mov eax, dword [rsp + 0x8c]
mov ecx, dword [rsp + 0xb0]
cmp rax, rcx
cmova rcx, rax
test rcx, rcx
je 0x14004d576
test rdi, r12
je 0x14004d43d
mov rax, rdi
xor edx, edx
div rcx
test rdx, rdx
jne 0x14004d44c
mov r9, r15
shr r9, 0x21
mov dword [rsp + 0x20], edi
mov qword [rsp + 0x28], 0
mov rcx, 0xffffffffffffffff
xor edx, edx
mov r8d, 0x8000004
call sub.KERNEL32.dll_CreateFileMappingW
test rax, rax
je 0x14004d45f
mov r13, rax
mov ebx, 0xb
lea r14, [rsp + 0x88]
mov rbp, r15
shr rbp, 0x20
jmp 0x14004d24a
add rbx, 0xffffffffffffffff
je 0x14004d4f0
mov rcx, r14
call sub.KERNEL32.dll_GetSystemInfo
mov eax, dword [rsp + 0x8c]
mov ecx, dword [rsp + 0xb0]
cmp rax, rcx
cmova rcx, rax
test rcx, rcx
je 0x14004d54c
test rbp, rbp
je 0x14004d290
mov rax, r15
xor edx, edx
div rcx
test rdx, rdx
je 0x14004d2a0
jmp 0x14004d596
mov eax, r15d
xor edx, edx
div ecx
test rdx, rdx
jne 0x14004d596
xor ecx, ecx
mov rdx, r15
mov r8d, 0x2000
mov r9d, 1
call sub.KERNEL32.dll_VirtualAlloc
mov rsi, rax
test rax, rax
je 0x14004d4e4
mov rcx, rsi
xor edx, edx
mov r8d, 0x8000
call sub.KERNEL32.dll_VirtualFree
test eax, eax
je 0x14004d4e4
mov rcx, r14
call sub.KERNEL32.dll_GetSystemInfo
mov eax, dword [rsp + 0x8c]
mov ecx, dword [rsp + 0xb0]
cmp rax, rcx
cmova rcx, rax
test rcx, rcx
je 0x14004d53c
test rdi, r12
je 0x14004d320
mov rax, rdi
xor edx, edx
div rcx
test rdx, rdx
je 0x14004d32f
jmp 0x14004d586
mov eax, edi
xor edx, edx
div ecx
test rdx, rdx
jne 0x14004d586
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], rdi
mov rcx, r13
mov edx, 0xf001f
xor r8d, r8d
xor r9d, r9d
call sub.KERNEL32.dll_MapViewOfFileEx
test rax, rax
je 0x14004d240
mov rcx, r14
call sub.KERNEL32.dll_GetSystemInfo
mov eax, dword [rsp + 0x8c]
mov ecx, dword [rsp + 0xb0]
cmp rax, rcx
cmova rcx, rax
test rcx, rcx
je 0x14004d53c
test rdi, r12
je 0x14004d3a0
mov rax, rdi
xor edx, edx
div rcx
test rdx, rdx
je 0x14004d3af
jmp 0x14004d586
mov eax, edi
xor edx, edx
div ecx
test rdx, rdx
jne 0x14004d586
mov rax, rsi
add rax, rdi
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdi
mov rcx, r13
mov edx, 0xf001f
xor r8d, r8d
xor r9d, r9d
call sub.KERNEL32.dll_MapViewOfFileEx
test rax, rax
jne 0x14004d506
mov rcx, rsi
call sub.KERNEL32.dll_UnmapViewOfFile
test eax, eax
jne 0x14004d240
mov rcx, r13
call fcn.14004d7b0
mov ecx, eax
call fcn.14004d0b0
lea rcx, str.unmapping_first_half_of_memory_failed
lea r8, [0x1401afb98]
mov edx, 0x25
call fcn.140191f40
ud2
mov eax, edi
xor edx, edx
div ecx
test rdx, rdx
je 0x14004d194
lea rcx, [0x1401afac9]
lea r8, [0x1401afb08]
mov edx, 0x3b
call fcn.14019e390
ud2
mov eax, edi
xor edx, edx
div ecx
test rdx, rdx
je 0x14004d1ea
lea rcx, str.assertion_failed:_size___allocation_granularity____0
lea r8, [0x1401afd50]
jmp 0x14004d5a4
mov r8d, 0x200
mov rcx, rsi
xor edx, edx
call sub.VCRUNTIME140.dll_memset
lea rax, [rsp + 0x38]
mov qword [rsp + 0x48], rax
lea rax, [fcn.140187c60]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x40], rsi
lea rax, str.create_file_mapping__with_size:__
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], 2
mov qword [rsp + 0x68], 0
lea rax, [rsp + 0x48]
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x80], 1
lea rdx, fcn.140001270
lea rcx, [rsp + 0x40]
lea r8, [rsp + 0x58]
call fcn.140182970
test al, al
jne 0x14004d5da
mov al, 1
xor esi, esi
xor ecx, ecx
jmp 0x14004d518
test rsi, rsi
setne cl
mov al, 1
xor esi, esi
jmp 0x14004d518
mov rcx, r13
call fcn.14018dc70
test eax, eax
je 0x14004d605
mov cl, 1
mov al, 1
jmp 0x14004d518
mov rcx, r13
call fcn.14018dc70
test eax, eax
je 0x14004d630
xor eax, eax
movzx ecx, cl
shl rcx, 8
movzx eax, al
or rax, rcx
mov rdx, rsi
add rsp, 0x288
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rcx, str.attempt_to_calculate_the_remainder_with_a_divisor_of_zeroassertion_failed:_half_size___allocation_granularity____0
lea r8, [0x1401afe40]
jmp 0x14004d55a
lea rcx, str.attempt_to_calculate_the_remainder_with_a_divisor_of_zeroassertion_failed:_half_size___allocation_granularity____0
lea r8, [0x1401afe10]
mov edx, 0x39
call fcn.14019e390
ud2
lea rcx, str.attempt_to_calculate_the_remainder_with_a_divisor_of_zeroassertion_failed:_half_size___allocation_granularity____0
lea r8, [0x1401afa78]
jmp 0x14004d55a
lea rcx, str.attempt_to_calculate_the_remainder_with_a_divisor_of_zeroassertion_failed:_half_size___allocation_granularity____0
lea r8, [0x1401afd38]
jmp 0x14004d55a
lea rcx, str.assertion_failed:_size___allocation_granularity____0
lea r8, [0x1401afe58]
jmp 0x14004d5a4
lea rcx, str.assertion_failed:_size___allocation_granularity____0
lea r8, [0x1401afe28]
mov edx, 0x36
call fcn.14019e390
ud2
lea rcx, str.assertion_failed:_size___0C:UsersAdministrator.cargo_registry_srcgithub.com_1ecc6299db9ec823_slice_deque_0.3.0_srcmirroredwinapi.rs
lea r8, [0x1401afa60]
jmp 0x14004d5ce
lea rcx, str.assertion_failed:_size___0C:UsersAdministrator.cargo_registry_srcgithub.com_1ecc6299db9ec823_slice_deque_0.3.0_srcmirroredwinapi.rs
lea r8, [0x1401afd20]
mov edx, 0x1b
call fcn.14019e390
ud2
lea rax, [0x1401afdb0]
mov qword [rsp + 0x20], rax
lea rcx, [0x1401af980]
lea r9, fcn.140001270
lea r8, [rsp + 0x58]
mov edx, 0x2b
call fcn.14019e510
ud2
lea rax, [0x1401afb40]
mov qword [rsp + 0x20], rax
lea rcx, str.freeing_physical_memory_failed
lea r9, fcn.140001270
lea r8, [rsp + 0x58]
mov edx, 0x1e
call fcn.14019e510
ud2
lea rax, [0x1401afbd0]
mov qword [rsp + 0x20], rax
lea rcx, str.closing_file_handle_failed
lea r9, fcn.140001270
lea r8, [rsp + 0x58]
mov edx, 0x1a
call fcn.14019e510
ud2