Function at 0x1400113c0
Capabilities:
Get system information on windows

Disassembly:
jmp 0x14001af00
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov dword [rsp + 0x10], edx
mov qword [rsp + 8], rcx
push rbp
push rdi
sub rsp, 0x758
lea rbp, [rsp + 0x30]
lea rdi, [rsp + 0x30]
mov ecx, 0x13a
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rcx, qword [rsp + 0x778]
mov rax, qword [0x140033040]
xor rax, rbp
mov qword [rbp + 0x718], rax
mov dword [rbp + 0x6e4], 0
lea rcx, [0x14003b0f6]
call fcn.140011a91
nop
mov r8d, dword [rbp + 0x748]
xor edx, edx
mov ecx, 0x410
call qword [sym.imp.KERNEL32.dll_OpenProcess]
mov qword [rbp + 8], rax
cmp qword [rbp + 8], 0
jne 0x14001afe9
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rbp + 0x6f4], eax
lea rdx, str.____Failed_to_open_process__Error
mov rcx, qword [sym.imp.MSVCP140D.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
call fcn.14001111d
mov ecx, dword [rbp + 0x6f4]
mov edx, ecx
mov rcx, rax
call qword [sym.imp.MSVCP140D.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___unsigned_long_int____ptr64]
lea rdx, [0x14001105f]
mov rcx, rax
call qword [sym.imp.MSVCP140D.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
nop
mov rcx, qword [rbp + 0x740]
call fcn.140011438
mov eax, dword [rbp + 0x6e4]
or eax, 1
mov dword [rbp + 0x6e4], eax
mov rax, qword [rbp + 0x740]
jmp 0x14001b719
lea rcx, [rbp + 0x28]
call qword [sym.imp.KERNEL32.dll_GetSystemInfo]
nop
mov edx, 0x20
lea rcx, [rbp + 0xc8]
call fcn.1400118d4
lea rcx, [rbp + 0xc8]
call fcn.140011361
nop
mov edx, 0x20
lea rcx, [rbp + 0x108]
call fcn.1400110eb
lea rcx, [rbp + 0x108]
call fcn.140011438
nop
mov qword [rbp + 0x148], 0
mov edx, 0x20
lea rcx, [rbp + 0x168]
call fcn.1400110eb
lea rcx, [rbp + 0x168]
call fcn.140011438
nop
mov rax, qword [rbp + 0x750]
mov qword [rbp + 0x1a8], rax
mov rcx, qword [rbp + 0x1a8]
call fcn.1400113c5
mov qword [rbp + 0x1c8], rax
mov rcx, qword [rbp + 0x1a8]
call fcn.140011a1e
mov qword [rbp + 0x1e8], rax
jmp 0x14001b0a1
mov rax, qword [rbp + 0x1c8]
add rax, 0x28
mov qword [rbp + 0x1c8], rax
mov rax, qword [rbp + 0x1e8]
cmp qword [rbp + 0x1c8], rax
je 0x14001b0ea
mov rax, qword [rbp + 0x1c8]
mov qword [rbp + 0x208], rax
mov rcx, qword [rbp + 0x208]
call fcn.140011794
cmp rax, qword [rbp + 0x758]
jb 0x14001b0e8
mov rdx, qword [rbp + 0x208]
lea rcx, [rbp + 0x168]
call fcn.1400115aa
nop
jmp 0x14001b08f
mov rax, qword [rbp + 0x38]
cmp qword [rbp + 0x148], rax
jae 0x14001b6be
mov r9d, 0x30
lea r8, [rbp + 0x78]
mov rdx, qword [rbp + 0x148]
mov rcx, qword [rbp + 8]
call qword [sym.imp.KERNEL32.dll_VirtualQueryEx]
cmp rax, 0x30
je 0x14001b169
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rbp + 0x224], eax
cmp dword [rbp + 0x224], 5
je 0x14001b164
lea rdx, str.VirtualQueryEx_failed__Error
mov rcx, qword [sym.imp.MSVCP140D.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
call fcn.14001111d
mov edx, dword [rbp + 0x224]
mov rcx, rax
call qword [sym.imp.MSVCP140D.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___unsigned_long_int____ptr64]
lea rdx, [0x14001105f]
mov rcx, rax
call qword [sym.imp.MSVCP140D.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
nop
jmp 0x14001b6be
cmp dword [rbp + 0x98], 0x1000
jne 0x14001b69e
cmp dword [rbp + 0x9c], 2
je 0x14001b18f
cmp dword [rbp + 0x9c], 4
jne 0x14001b69e
mov rdx, qword [rbp + 0x90]
lea rcx, [rbp + 0xc8]
call fcn.1400110ff
nop
lea rcx, [rbp + 0xc8]
call fcn.1400112e9
lea rcx, [rbp + 0x248]
mov qword [rsp + 0x20], rcx
mov r9, qword [rbp + 0x90]
mov r8, rax
mov rdx, qword [rbp + 0x148]
mov rcx, qword [rbp + 8]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
test eax, eax
je 0x14001b61e
mov rax, qword [rbp + 0x90]
cmp qword [rbp + 0x248], rax
jae 0x14001b1fe
mov rax, qword [rbp + 0x248]
mov qword [rbp + 0x6f8], rax
jmp 0x14001b20c
mov rax, qword [rbp + 0x90]
mov qword [rbp + 0x6f8], rax
mov rax, qword [rbp + 0x6f8]
mov qword [rbp + 0x268], rax
lea rax, [rbp + 0x168]
mov qword [rbp + 0x288], rax
mov rcx, qword [rbp + 0x288]
call fcn.1400112cb
mov qword [rbp + 0x2a8], rax
mov rcx, qword [rbp + 0x288]
call fcn.1400112c1
mov qword [rbp + 0x2c8], rax
jmp 0x14001b262
mov rax, qword [rbp + 0x2a8]
add rax, 0x28
mov qword [rbp + 0x2a8], rax
mov rax, qword [rbp + 0x2c8]
cmp qword [rbp + 0x2a8], rax
je 0x14001b619
mov rax, qword [rbp + 0x2a8]
mov qword [rbp + 0x2e8], rax
mov qword [rbp + 0x308], 0
jmp 0x14001b2a2
mov rax, qword [rbp + 0x308]
inc rax
mov qword [rbp + 0x308], rax
mov rcx, qword [rbp + 0x2e8]
call fcn.140011794
mov rcx, qword [rbp + 0x268]
sub rcx, rax
mov rax, rcx
cmp qword [rbp + 0x308], rax
ja 0x14001b614
mov rcx, qword [rbp + 0x2e8]
call fcn.140011794
mov qword [rbp + 0x6f8], rax
mov rcx, qword [rbp + 0x2e8]
call fcn.1400110f0
mov qword [rbp + 0x700], rax
lea rcx, [rbp + 0xc8]
call fcn.1400112e9
add rax, qword [rbp + 0x308]
mov rcx, qword [rbp + 0x6f8]
mov r8, rcx
mov rcx, qword [rbp + 0x700]
mov rdx, rcx
mov rcx, rax
call fcn.1400113f7
test eax, eax
jne 0x14001b60f
mov rax, qword [rbp + 0x308]
mov rcx, qword [rbp + 0x148]
add rcx, rax
mov rax, rcx
mov qword [rbp + 0x328], rax
lea rcx, [rbp + 0x348]
call fcn.140011a82
nop
mov qword [rbp + 0x3a8], 0
cmp qword [rbp + 0x3a8], 0x400
jae 0x14001b3ec
mov rax, qword [rbp + 0x3a8]
mov rcx, qword [rbp + 0x328]
add rcx, rax
mov rax, rcx
lea rcx, [rbp + 0x248]
mov qword [rsp + 0x20], rcx
mov r9d, 1
lea r8, [rbp + 0x384]
mov rdx, rax
mov rcx, qword [rbp + 8]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
test eax, eax
je 0x14001b3e5
cmp qword [rbp + 0x248], 0
jbe 0x14001b3e5
movsx eax, byte [rbp + 0x384]
test eax, eax
jne 0x14001b3be
jmp 0x14001b3ec
movzx edx, byte [rbp + 0x384]
lea rcx, [rbp + 0x348]
call fcn.1400115a5
nop
mov rax, qword [rbp + 0x3a8]
inc rax
mov qword [rbp + 0x3a8], rax
jmp 0x14001b3e7
jmp 0x14001b3ec
jmp 0x14001b358
lea rcx, [rbp + 0x348]
call fcn.14001123f
movzx eax, al
test eax, eax
jne 0x14001b602
lea rcx, [rbp + 0x348]
call fcn.140011794
cmp rax, 0x96
jbe 0x14001b467
mov r9d, 0x96
xor r8d, r8d
lea rdx, [rbp + 0x668]
lea rcx, [rbp + 0x348]
call fcn.14001157d
mov qword [rbp + 0x6f8], rax
mov rax, qword [rbp + 0x6f8]
mov qword [rbp + 0x700], rax
mov eax, dword [rbp + 0x6e4]
or eax, 2
mov dword [rbp + 0x6e4], eax
mov rax, qword [rbp + 0x700]
mov qword [rbp + 0x708], rax
jmp 0x14001b49e
lea rdx, [rbp + 0x348]
lea rcx, [rbp + 0x6a8]
call fcn.14001114a
mov qword [rbp + 0x710], rax
mov eax, dword [rbp + 0x6e4]
or eax, 4
mov dword [rbp + 0x6e4], eax
mov rax, qword [rbp + 0x710]
mov qword [rbp + 0x708], rax
mov rax, qword [rbp + 0x708]
mov qword [rbp + 0x648], rax
mov rdx, qword [rbp + 0x648]
lea rcx, [rbp + 0x3c8]
call fcn.1400119e7
nop
mov eax, dword [rbp + 0x6e4]
and eax, 4
test eax, eax
je 0x14001b4e1
and dword [rbp + 0x6e4], 0xfffffffb
lea rcx, [rbp + 0x6a8]
call fcn.1400111c2
nop
mov eax, dword [rbp + 0x6e4]
and eax, 2
test eax, eax
je 0x14001b502
and dword [rbp + 0x6e4], 0xfffffffd
lea rcx, [rbp + 0x668]
call fcn.1400111c2
nop
lea rdx, [rbp + 0x348]
lea rcx, [rbp + 0x108]
call fcn.1400115aa
nop
lea rdx, str.Found_string:
mov rcx, qword [sym.imp.MSVCP140D.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.14001111d
lea rdx, [rbp + 0x3c8]
mov rcx, rax
call fcn.140011956
lea rdx, str._at_address_0x
mov rcx, rax
call fcn.14001111d
lea rdx, [0x1400119ab]
mov rcx, rax
call qword [sym.imp.MSVCP140D.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::ios_base____ptr64____cdecl___class_std::ios_base____ptr64_____ptr64]
mov rdx, qword [rbp + 0x328]
mov rcx, rax
call qword [sym.imp.MSVCP140D.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___unsigned_long_long_unsigned___int64_____ptr64]
lea rdx, [0x14001101e]
mov rcx, rax
call qword [sym.imp.MSVCP140D.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::ios_base____ptr64____cdecl___class_std::ios_base____ptr64_____ptr64]
lea rdx, [0x14001105f]
mov rcx, rax
call qword [sym.imp.MSVCP140D.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
nop
mov rcx, qword [rbp + 8]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
lea rdx, [rbp + 0x108]
mov rcx, qword [rbp + 0x740]
call fcn.140011a0f
mov eax, dword [rbp + 0x6e4]
or eax, 1
mov dword [rbp + 0x6e4], eax
lea rcx, [rbp + 0x3c8]
call fcn.1400111c2
nop
lea rcx, [rbp + 0x348]
call fcn.1400111c2
nop
lea rcx, [rbp + 0x168]
call fcn.140011a32
nop
lea rcx, [rbp + 0x108]
call fcn.140011a32
nop
lea rcx, [rbp + 0xc8]
call fcn.140011997
nop
mov rax, qword [rbp + 0x740]
jmp 0x14001b719
lea rcx, [rbp + 0x348]
call fcn.1400111c2
nop
jmp 0x14001b291
jmp 0x14001b250
jmp 0x14001b69e
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rbp + 0x6f4], eax
lea rdx, str.ReadProcessMemory_error_at_0x
mov rcx, qword [sym.imp.MSVCP140D.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
call fcn.14001111d
lea rdx, [0x1400119ab]
mov rcx, rax
call qword [sym.imp.MSVCP140D.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::ios_base____ptr64____cdecl___class_std::ios_base____ptr64_____ptr64]
mov rdx, qword [rbp + 0x148]
mov rcx, rax
call qword [sym.imp.MSVCP140D.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___unsigned_long_long_unsigned___int64_____ptr64]
lea rdx, [0x14001101e]
mov rcx, rax
call qword [sym.imp.MSVCP140D.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::ios_base____ptr64____cdecl___class_std::ios_base____ptr64_____ptr64]
lea rdx, str.__Error
mov rcx, rax
call fcn.14001111d
mov ecx, dword [rbp + 0x6f4]
mov edx, ecx
mov rcx, rax
call qword [sym.imp.MSVCP140D.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___unsigned_long_int____ptr64]
lea rdx, [0x14001105f]
mov rcx, rax
call qword [sym.imp.MSVCP140D.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
nop
mov rax, qword [rbp + 0x90]
mov rcx, qword [rbp + 0x148]
add rcx, rax
mov rax, rcx
mov qword [rbp + 0x148], rax
jmp 0x14001b0ea
mov rcx, qword [rbp + 8]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
lea rdx, [rbp + 0x108]
mov rcx, qword [rbp + 0x740]
call fcn.140011a0f
mov eax, dword [rbp + 0x6e4]
or eax, 1
mov dword [rbp + 0x6e4], eax
lea rcx, [rbp + 0x168]
call fcn.140011a32
nop
lea rcx, [rbp + 0x108]
call fcn.140011a32
nop
lea rcx, [rbp + 0xc8]
call fcn.140011997
nop
mov rax, qword [rbp + 0x740]
mov rdi, rax
lea rcx, [rbp - 0x30]
lea rdx, [0x14002c7d0]
call fcn.1400118a7
mov rax, rdi
mov rcx, qword [rbp + 0x718]
xor rcx, rbp
call fcn.14001153c
lea rsp, [rbp + 0x728]
pop rdi
pop rbp
ret