Function at 0x43b120
Capabilities:
Get system information on windows

Disassembly:
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x78
test rdx, rdx
mov rsi, rcx
je 0x43b4a2
mov r9, qword [rcx + 0x10]
cmp r9, rdx
ja 0x43b4d0
mov rax, qword [0x006881b8]
test rax, rax
je 0x43b460
lea rdi, [rax - 1]
test rax, rdi
jne 0x43b4f0
add rdi, rdx
neg rax
lea rdx, str.InternalMmapVector
and rdi, rax
mov rcx, rdi
call fcn.0040d590
mov r8, qword [rsi + 0x10]
mov rbx, rax
mov rcx, qword [rsi]
test r8, r8
je 0x43b440
lea rax, [rax + 0x10]
cmp rcx, rax
lea rax, [rcx + 0x10]
setae dl
cmp rbx, rax
setae al
or dl, al
je 0x43b485
cmp r8, 0x16
jbe 0x43b485
mov rax, rcx
neg rax
and eax, 0xf
cmp rax, r8
cmova rax, r8
xor edx, edx
test rax, rax
je 0x43b2c6
movzx edx, byte [rcx]
cmp rax, 1
mov byte [rbx], dl
je 0x43b5c0
movzx edx, byte [rcx + 1]
cmp rax, 2
mov byte [rbx + 1], dl
je 0x43b580
movzx edx, byte [rcx + 2]
cmp rax, 3
mov byte [rbx + 2], dl
je 0x43b590
movzx edx, byte [rcx + 3]
cmp rax, 4
mov byte [rbx + 3], dl
je 0x43b5a0
movzx edx, byte [rcx + 4]
cmp rax, 5
mov byte [rbx + 4], dl
je 0x43b5b0
movzx edx, byte [rcx + 5]
cmp rax, 6
mov byte [rbx + 5], dl
je 0x43b500
movzx edx, byte [rcx + 6]
cmp rax, 7
mov byte [rbx + 6], dl
je 0x43b510
movzx edx, byte [rcx + 7]
cmp rax, 8
mov byte [rbx + 7], dl
je 0x43b520
movzx edx, byte [rcx + 8]
cmp rax, 9
mov byte [rbx + 8], dl
je 0x43b530
movzx edx, byte [rcx + 9]
cmp rax, 0xa
mov byte [rbx + 9], dl
je 0x43b540
movzx edx, byte [rcx + 0xa]
cmp rax, 0xb
mov byte [rbx + 0xa], dl
je 0x43b550
movzx edx, byte [rcx + 0xb]
cmp rax, 0xc
mov byte [rbx + 0xb], dl
je 0x43b560
movzx edx, byte [rcx + 0xc]
cmp rax, 0xd
mov byte [rbx + 0xc], dl
je 0x43b570
movzx edx, byte [rcx + 0xd]
cmp rax, 0xe
mov byte [rbx + 0xd], dl
je 0x43b4f5
movzx edx, byte [rcx + 0xe]
mov byte [rbx + 0xe], dl
mov edx, 0xf
lea r10, [r8 - 1]
mov r11, r8
sub r11, rax
sub r10, rax
lea r9, [r11 - 0x10]
shr r9, 4
add r9, 1
mov rbp, r9
shl rbp, 4
cmp r10, 0xe
jbe 0x43b31e
lea r13, [rcx + rax]
xor r10d, r10d
add rax, rbx
xor r12d, r12d
movdqa xmm0, xmmword [r13 + r10]
add r12, 1
movups xmmword [rax + r10], xmm0
add r10, 0x10
cmp r12, r9
jb 0x43b2f9
add rdx, rbp
cmp r11, rbp
je 0x43b43d
movzx eax, byte [rcx + rdx]
mov byte [rbx + rdx], al
lea rax, [rdx + 1]
cmp r8, rax
jbe 0x43b43d
movzx eax, byte [rcx + rdx + 1]
mov byte [rbx + rdx + 1], al
lea rax, [rdx + 2]
cmp r8, rax
jbe 0x43b43d
movzx eax, byte [rcx + rdx + 2]
mov byte [rbx + rdx + 2], al
lea rax, [rdx + 3]
cmp r8, rax
jbe 0x43b43d
movzx eax, byte [rcx + rdx + 3]
mov byte [rbx + rdx + 3], al
lea rax, [rdx + 4]
cmp r8, rax
jbe 0x43b43d
movzx eax, byte [rcx + rdx + 4]
mov byte [rbx + rdx + 4], al
lea rax, [rdx + 5]
cmp r8, rax
jbe 0x43b43d
movzx eax, byte [rcx + rdx + 5]
mov byte [rbx + rdx + 5], al
lea rax, [rdx + 6]
cmp r8, rax
jbe 0x43b43d
movzx eax, byte [rcx + rdx + 6]
mov byte [rbx + rdx + 6], al
lea rax, [rdx + 7]
cmp r8, rax
jbe 0x43b43d
movzx eax, byte [rcx + rdx + 7]
mov byte [rbx + rdx + 7], al
lea rax, [rdx + 8]
cmp r8, rax
jbe 0x43b43d
movzx eax, byte [rcx + rdx + 8]
mov byte [rbx + rdx + 8], al
lea rax, [rdx + 9]
cmp r8, rax
jbe 0x43b43d
movzx eax, byte [rcx + rdx + 9]
mov byte [rbx + rdx + 9], al
lea rax, [rdx + 0xa]
cmp r8, rax
jbe 0x43b43d
movzx eax, byte [rcx + rdx + 0xa]
mov byte [rbx + rdx + 0xa], al
lea rax, [rdx + 0xb]
cmp r8, rax
jbe 0x43b43d
movzx eax, byte [rcx + rdx + 0xb]
mov byte [rbx + rdx + 0xb], al
lea rax, [rdx + 0xc]
cmp r8, rax
jbe 0x43b43d
movzx eax, byte [rcx + rdx + 0xc]
mov byte [rbx + rdx + 0xc], al
lea rax, [rdx + 0xd]
cmp r8, rax
jbe 0x43b43d
movzx eax, byte [rcx + rdx + 0xd]
mov byte [rbx + rdx + 0xd], al
lea rax, [rdx + 0xe]
cmp r8, rax
jbe 0x43b43d
movzx eax, byte [rcx + rdx + 0xe]
mov byte [rbx + rdx + 0xe], al
mov rcx, qword [rsi]
mov rdx, qword [rsi + 8]
call fcn.0040e7f0
mov qword [rsi], rbx
mov qword [rsi + 8], rdi
add rsp, 0x78
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
ret
mov qword [rsp + 0x38], rdx
lea rcx, [rsp + 0x40]
call qword [sym.imp.kernel32.dll_GetSystemInfo]
mov eax, dword [rsp + 0x44]
mov rdx, qword [rsp + 0x38]
mov qword [0x006881b8], rax
jmp 0x43b155
xor eax, eax
nop word [rax + rax]
movzx edx, byte [rcx + rax]
mov byte [rbx + rax], dl
add rax, 1
cmp r8, rax
jne 0x43b490
jmp 0x43b43d
lea r8, str.__new_capacity_______0__
xor r9d, r9d
mov edx, 0x225
mov qword [rsp + 0x20], 0
lea rcx, str....._sanitizer_common_sanitizer_common.h
call fcn.00406990
nop word cs:[rax + rax]
mov qword [rsp + 0x20], rdx
lea r8, str.__size________new_capacity__
mov edx, 0x226
lea rcx, str....._sanitizer_common_sanitizer_common.h
call fcn.00406990
nop dword [rax]
call fcn.0040b4c0
mov edx, 0xe
jmp 0x43b2c6
mov edx, 6
jmp 0x43b2c6
mov edx, 7
jmp 0x43b2c6
mov edx, 8
jmp 0x43b2c6
mov edx, 9
jmp 0x43b2c6
mov edx, 0xa
jmp 0x43b2c6
mov edx, 0xb
jmp 0x43b2c6
mov edx, 0xc
jmp 0x43b2c6
mov edx, 0xd
jmp 0x43b2c6
mov edx, 2
jmp 0x43b2c6
mov edx, 3
jmp 0x43b2c6
mov edx, 4
jmp 0x43b2c6
mov edx, 5
jmp 0x43b2c6
mov edx, 1
jmp 0x43b2c6