Function at 0x1403a0be0
Capabilities:
Check os version
Get geographical location
Get memory capacity
Get system information on windows

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x280]
sub rsp, 0x380
mov rax, qword [0x1406836b8]
xor rax, rsp
mov qword [rbp + 0x270], rax
mov qword [rsp + 0x40], rdx
mov r15, rcx
mov rcx, qword [0x14068c270]
lea rdx, [0x140779db0]
mov dword [rsp + 0x30], r8d
call sym.ErrorReportClient.exe_wchar_t_const____ptr64___cdecl_SfGetString_struct_HSFLANG______ptr64__wchar_t_const__const___ptr64_const____ptr64_
mov rcx, qword [0x14068c270]
lea rdx, [0x140779d10]
mov r12, rax
call sym.ErrorReportClient.exe_wchar_t_const____ptr64___cdecl_SfGetString_struct_HSFLANG______ptr64__wchar_t_const__const___ptr64_const____ptr64_
xor edx, edx
mov qword [rsp + 0x38], rax
mov rcx, r15
mov rdi, rax
call sym.ErrorReportClient.exe_SfMEditPrintF
mov rcx, qword [0x14068c270]
lea rdx, [0x140779e50]
call sym.ErrorReportClient.exe_wchar_t_const____ptr64___cdecl_SfGetString_struct_HSFLANG______ptr64__wchar_t_const__const___ptr64_const____ptr64_
mov rdx, rax
mov rcx, r15
call sym.ErrorReportClient.exe_SfMEditPrintF
mov edx, 0x80
lea rcx, [rbp + 0x100]
call sym.ErrorReportClient.exe_SfGetOS
mov rcx, qword [0x14068c270]
lea rdx, [0x140779ef0]
call sym.ErrorReportClient.exe_wchar_t_const____ptr64___cdecl_SfGetString_struct_HSFLANG______ptr64__wchar_t_const__const___ptr64_const____ptr64_
mov rdx, rax
lea r8, [rbp + 0x100]
mov rcx, r15
call sym.ErrorReportClient.exe_SfMEditPrintF
lea rcx, [rbp - 0x40]
mov dword [rbp - 0x40], 0x114
call qword [sym.imp.KERNEL32.dll_GetVersionExW]
cmp word [rbp - 0x2c], 0
movzx ebx, word [rbp - 0x34]
mov rcx, qword [0x14068c270]
je 0x1403a0cfd
lea rdx, [0x140779f90]
call sym.ErrorReportClient.exe_wchar_t_const____ptr64___cdecl_SfGetString_struct_HSFLANG______ptr64__wchar_t_const__const___ptr64_const____ptr64_
mov r9d, dword [rbp - 0x38]
mov rdx, rax
mov r8d, dword [rbp - 0x3c]
lea rax, [rbp - 0x2c]
mov qword [rsp + 0x28], rax
mov rcx, r15
mov dword [rsp + 0x20], ebx
call sym.ErrorReportClient.exe_SfMEditPrintF
jmp 0x1403a0d20
lea rdx, [0x14077a030]
call sym.ErrorReportClient.exe_wchar_t_const____ptr64___cdecl_SfGetString_struct_HSFLANG______ptr64__wchar_t_const__const___ptr64_const____ptr64_
mov r9d, dword [rbp - 0x38]
mov rdx, rax
mov r8d, dword [rbp - 0x3c]
mov rcx, r15
mov dword [rsp + 0x20], ebx
call sym.ErrorReportClient.exe_SfMEditPrintF
xor ebx, ebx
mov word [rbp + 0x100], bx
call fcn.14019c620
test eax, eax
je 0x1403a0d4c
mov r9d, 0x80
lea r8, [rbp + 0x100]
mov edx, 0x1001
mov ecx, eax
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
mov rcx, qword [0x14068c270]
lea rdx, [0x14077a0d0]
call sym.ErrorReportClient.exe_wchar_t_const____ptr64___cdecl_SfGetString_struct_HSFLANG______ptr64__wchar_t_const__const___ptr64_const____ptr64_
mov rdx, rax
lea r8, [rbp + 0x100]
mov rcx, r15
call sym.ErrorReportClient.exe_SfMEditPrintF
mov r9d, 0x80
mov word [rbp + 0x100], bx
lea r8, [rbp + 0x100]
mov edx, 0x1001
mov ecx, 0x800
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
mov rcx, qword [0x14068c270]
lea rdx, [0x14077a170]
call sym.ErrorReportClient.exe_wchar_t_const____ptr64___cdecl_SfGetString_struct_HSFLANG______ptr64__wchar_t_const__const___ptr64_const____ptr64_
mov rdx, rax
lea r8, [rbp + 0x100]
mov rcx, r15
call sym.ErrorReportClient.exe_SfMEditPrintF
mov r9d, 0x80
mov word [rbp + 0x100], bx
lea r8, [rbp + 0x100]
mov edx, 0x1001
mov ecx, 0x400
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
mov rcx, qword [0x14068c270]
lea rdx, [0x14077a210]
call sym.ErrorReportClient.exe_wchar_t_const____ptr64___cdecl_SfGetString_struct_HSFLANG______ptr64__wchar_t_const__const___ptr64_const____ptr64_
mov rdx, rax
lea r8, [rbp + 0x100]
mov rcx, r15
call sym.ErrorReportClient.exe_SfMEditPrintF
mov rcx, qword [0x14068c270]
lea rdx, [0x14077a2b0]
call sym.ErrorReportClient.exe_wchar_t_const____ptr64___cdecl_SfGetString_struct_HSFLANG______ptr64__wchar_t_const__const___ptr64_const____ptr64_
mov rdx, rax
mov rcx, r15
call sym.ErrorReportClient.exe_SfMEditPrintF
xor ecx, ecx
call sym.ErrorReportClient.exe_SfGetCPUSupport
xor ecx, ecx
mov r13d, eax
call fcn.1401983c0
mov edx, 0x32
lea rcx, [rbp + 0x200]
mov esi, eax
call fcn.140197f40
test eax, eax
jns 0x1403a0f1c
mov ecx, r13d
and ecx, 0xf
dec ecx
cmp ecx, 5
ja case.default.0x1403a0e6f
lea rdx, [0x140000000]
mov eax, dword [rdx + rcx*4 + 0x3a13c0]
add rax, rdx
jmp rax
mov rcx, qword [0x14068c270]
lea rdx, [0x14077a3f0]
call sym.ErrorReportClient.exe_wchar_t_const____ptr64___cdecl_SfGetString_struct_HSFLANG______ptr64__wchar_t_const__const___ptr64_const____ptr64_
mov rbx, rax
jmp 0x1403a0f23
mov rcx, qword [0x14068c270]
lea rdx, [0x14077a490]
call sym.ErrorReportClient.exe_wchar_t_const____ptr64___cdecl_SfGetString_struct_HSFLANG______ptr64__wchar_t_const__const___ptr64_const____ptr64_
mov rbx, rax
jmp 0x1403a0f23
mov rcx, qword [0x14068c270]
lea rdx, [0x14077a530]
call sym.ErrorReportClient.exe_wchar_t_const____ptr64___cdecl_SfGetString_struct_HSFLANG______ptr64__wchar_t_const__const___ptr64_const____ptr64_
mov rbx, rax
jmp 0x1403a0f23
mov rcx, qword [0x14068c270]
lea rdx, [0x14077a5d0]
call sym.ErrorReportClient.exe_wchar_t_const____ptr64___cdecl_SfGetString_struct_HSFLANG______ptr64__wchar_t_const__const___ptr64_const____ptr64_
mov rbx, rax
jmp 0x1403a0f23
mov rcx, qword [0x14068c270]
lea rdx, [0x14077a670]
call sym.ErrorReportClient.exe_wchar_t_const____ptr64___cdecl_SfGetString_struct_HSFLANG______ptr64__wchar_t_const__const___ptr64_const____ptr64_
mov rbx, rax
jmp 0x1403a0f23
mov rcx, qword [0x14068c270]
lea rdx, [0x14077a710]
call sym.ErrorReportClient.exe_wchar_t_const____ptr64___cdecl_SfGetString_struct_HSFLANG______ptr64__wchar_t_const__const___ptr64_const____ptr64_
mov rbx, rax
jmp 0x1403a0f23
mov rcx, qword [0x14068c270]
lea rdx, [0x14077a7b0]
call sym.ErrorReportClient.exe_wchar_t_const____ptr64___cdecl_SfGetString_struct_HSFLANG______ptr64__wchar_t_const__const___ptr64_const____ptr64_
mov rbx, rax
jmp 0x1403a0f23
lea rbx, [rbp + 0x200]
mov rcx, qword [0x14068c270]
lea rdx, [0x14077a350]
call sym.ErrorReportClient.exe_wchar_t_const____ptr64___cdecl_SfGetString_struct_HSFLANG______ptr64__wchar_t_const__const___ptr64_const____ptr64_
mov rdx, rax
mov r8, rbx
mov rcx, r15
call sym.ErrorReportClient.exe_SfMEditPrintF
mov edx, 0x10
lea rcx, [rbp + 0xe0]
call fcn.1401980f0
test eax, eax
jns 0x1403a0f71
mov rcx, qword [0x14068c270]
lea rdx, [0x14077a8f0]
call sym.ErrorReportClient.exe_wchar_t_const____ptr64___cdecl_SfGetString_struct_HSFLANG______ptr64__wchar_t_const__const___ptr64_const____ptr64_
mov rbx, rax
jmp 0x1403a0f78
lea rbx, [rbp + 0xe0]
mov rcx, qword [0x14068c270]
lea rdx, [0x14077a850]
call sym.ErrorReportClient.exe_wchar_t_const____ptr64___cdecl_SfGetString_struct_HSFLANG______ptr64__wchar_t_const__const___ptr64_const____ptr64_
mov rdx, rax
mov r8, rbx
mov rcx, r15
call sym.ErrorReportClient.exe_SfMEditPrintF
call sym.ErrorReportClient.exe_SfGetProcessorCount
mov rcx, qword [0x14068c270]
lea rdx, [0x14077a990]
mov ebx, eax
call sym.ErrorReportClient.exe_wchar_t_const____ptr64___cdecl_SfGetString_struct_HSFLANG______ptr64__wchar_t_const__const___ptr64_const____ptr64_
mov rdx, rax
mov r8d, ebx
mov rcx, r15
call sym.ErrorReportClient.exe_SfMEditPrintF
xor ecx, ecx
call sym.ErrorReportClient.exe_SfGetOSSupport
test al, 0x20
jne 0x1403a0fea
mov rcx, qword [0x14068c270]
lea rdx, [0x14077aa30]
call sym.ErrorReportClient.exe_wchar_t_const____ptr64___cdecl_SfGetString_struct_HSFLANG______ptr64__wchar_t_const__const___ptr64_const____ptr64_
mov rdx, rax
mov rcx, r15
call sym.ErrorReportClient.exe_SfMEditPrintF
mov rcx, qword [0x14068c270]
lea rdx, [0x14077aad0]
test sil, 0x10
mov rbx, r12
cmovne rbx, rdi
call sym.ErrorReportClient.exe_wchar_t_const____ptr64___cdecl_SfGetString_struct_HSFLANG______ptr64__wchar_t_const__const___ptr64_const____ptr64_
mov rdx, rax
mov r8, rbx
mov rcx, r15
call sym.ErrorReportClient.exe_SfMEditPrintF
mov rcx, qword [0x14068c270]
lea rdx, [0x14077ab70]
test sil, 0x20
mov rbx, r12
cmovne rbx, rdi
call sym.ErrorReportClient.exe_wchar_t_const____ptr64___cdecl_SfGetString_struct_HSFLANG______ptr64__wchar_t_const__const___ptr64_const____ptr64_
mov rdx, rax
mov r8, rbx
mov rcx, r15
call sym.ErrorReportClient.exe_SfMEditPrintF
mov rcx, qword [0x14068c270]
lea rdx, [0x14077ac10]
test sil, 0x40
mov rbx, r12
cmovne rbx, rdi
call sym.ErrorReportClient.exe_wchar_t_const____ptr64___cdecl_SfGetString_struct_HSFLANG______ptr64__wchar_t_const__const___ptr64_const____ptr64_
mov rdx, rax
mov r8, rbx
mov rcx, r15
call sym.ErrorReportClient.exe_SfMEditPrintF
mov rcx, qword [0x14068c270]
lea rdx, [0x14077acb0]
test sil, 0x80
mov rbx, r12
cmovne rbx, rdi
call sym.ErrorReportClient.exe_wchar_t_const____ptr64___cdecl_SfGetString_struct_HSFLANG______ptr64__wchar_t_const__const___ptr64_const____ptr64_
mov rdx, rax
mov r8, rbx
mov rcx, r15
call sym.ErrorReportClient.exe_SfMEditPrintF
mov rcx, qword [0x14068c270]
lea rdx, [0x14077ad50]
bt esi, 8
mov rbx, r12
cmovb rbx, rdi
call sym.ErrorReportClient.exe_wchar_t_const____ptr64___cdecl_SfGetString_struct_HSFLANG______ptr64__wchar_t_const__const___ptr64_const____ptr64_
mov rdx, rax
mov r8, rbx
mov rcx, r15
call sym.ErrorReportClient.exe_SfMEditPrintF
mov rcx, qword [0x14068c270]
lea rdx, [0x14077adf0]
bt esi, 9
mov rbx, r12
cmovb rbx, rdi
call sym.ErrorReportClient.exe_wchar_t_const____ptr64___cdecl_SfGetString_struct_HSFLANG______ptr64__wchar_t_const__const___ptr64_const____ptr64_
mov rdx, rax
mov r8, rbx
mov rcx, r15
call sym.ErrorReportClient.exe_SfMEditPrintF
mov rcx, qword [0x14068c270]
lea rdx, [0x14077ae90]
bt esi, 0xa
mov rbx, r12
cmovb rbx, rdi
call sym.ErrorReportClient.exe_wchar_t_const____ptr64___cdecl_SfGetString_struct_HSFLANG______ptr64__wchar_t_const__const___ptr64_const____ptr64_
mov rdx, rax
mov r8, rbx
mov rcx, r15
call sym.ErrorReportClient.exe_SfMEditPrintF
mov rcx, qword [0x14068c270]
lea rdx, [0x14077af30]
call sym.ErrorReportClient.exe_wchar_t_const____ptr64___cdecl_SfGetString_struct_HSFLANG______ptr64__wchar_t_const__const___ptr64_const____ptr64_
mov rdx, rax
mov rcx, r15
call sym.ErrorReportClient.exe_SfMEditPrintF
xor ecx, ecx
call qword [sym.imp.USER32.dll_GetDC]
mov rdi, rax
mov rcx, rax
mov edx, 8
call qword [sym.imp.GDI32.dll_GetDeviceCaps]
mov edx, 0xa
mov rcx, rdi
mov r14d, eax
call qword [sym.imp.GDI32.dll_GetDeviceCaps]
mov edx, reloc.OLEAUT32.dll_VariantTimeToDosDateTime
mov rcx, rdi
mov esi, eax
call qword [sym.imp.GDI32.dll_GetDeviceCaps]
mov rdx, rdi
xor ecx, ecx
mov ebx, eax
call qword [sym.imp.USER32.dll_ReleaseDC]
mov rcx, qword [0x14068c270]
lea rdx, [0x14077afd0]
call sym.ErrorReportClient.exe_wchar_t_const____ptr64___cdecl_SfGetString_struct_HSFLANG______ptr64__wchar_t_const__const___ptr64_const____ptr64_
mov rdx, rax
mov dword [rsp + 0x20], ebx
mov r9d, esi
mov r8d, r14d
mov rcx, r15
call sym.ErrorReportClient.exe_SfMEditPrintF
mov rcx, qword [0x14068c270]
lea rdx, [0x14077b070]
call sym.ErrorReportClient.exe_wchar_t_const____ptr64___cdecl_SfGetString_struct_HSFLANG______ptr64__wchar_t_const__const___ptr64_const____ptr64_
mov rdx, rax
mov rcx, r15
call sym.ErrorReportClient.exe_SfMEditPrintF
lea rcx, [rbp - 0x80]
mov dword [rbp - 0x80], 0x40
call qword [sym.imp.KERNEL32.dll_GlobalMemoryStatusEx]
mov rbx, qword [rbp - 0x78]
movabs rdi, 0x400078002d0010e1
mov rcx, qword [0x14068c270]
mov rax, rdi
mul rbx
sub rbx, rdx
shr rbx, 1
add rbx, rdx
lea rdx, [0x14077b110]
shr rbx, 0x10
call sym.ErrorReportClient.exe_wchar_t_const____ptr64___cdecl_SfGetString_struct_HSFLANG______ptr64__wchar_t_const__const___ptr64_const____ptr64_
mov rdx, rax
mov r8, rbx
mov rcx, r15
call sym.ErrorReportClient.exe_SfMEditPrintF
mov rbx, qword [rbp - 0x68]
mov rax, rdi
mov rcx, qword [0x14068c270]
mul rbx
sub rbx, rdx
shr rbx, 1
add rbx, rdx
lea rdx, [0x14077b1b0]
shr rbx, 0x10
call sym.ErrorReportClient.exe_wchar_t_const____ptr64___cdecl_SfGetString_struct_HSFLANG______ptr64__wchar_t_const__const___ptr64_const____ptr64_
mov rdx, rax
mov r8, rbx
mov rcx, r15
call sym.ErrorReportClient.exe_SfMEditPrintF
cmp dword [rsp + 0x30], 0
je 0x1403a134e
lea rcx, [rsp + 0x48]
call qword [sym.imp.KERNEL32.dll_GetSystemInfo]
lea rdx, str._r_nDebug
mov rcx, r15
call sym.ErrorReportClient.exe_SfMEditPrintF
mov r8, qword [rsp + 0x60]
lea rdx, str.__Active_processor_mask:__.08Xh
mov rcx, r15
call sym.ErrorReportClient.exe_SfMEditPrintF
mov r8d, dword [rbp - 0x7c]
lea rdx, str.__Memory_load__current_:__d___
mov rcx, r15
call sym.ErrorReportClient.exe_SfMEditPrintF
mov r8d, dword [rsp + 0x4c]
lea rdx, str.__Page_size:__u_KB
shr r8d, 0xa
mov rcx, r15
call sym.ErrorReportClient.exe_SfMEditPrintF
mov r8d, dword [rsp + 0x70]
lea rdx, str.__Allocation_granularity:__u_KB
shr r8d, 0xa
mov rcx, r15
call sym.ErrorReportClient.exe_SfMEditPrintF
mov r8, qword [rsp + 0x50]
lea rdx, str.__Min._app_address:__.08Xh
mov rcx, r15
call sym.ErrorReportClient.exe_SfMEditPrintF
mov r8, qword [rsp + 0x58]
lea rdx, str.__Max._app_address:__.08Xh
mov rcx, r15
call sym.ErrorReportClient.exe_SfMEditPrintF
mov rbx, qword [rsp + 0x38]
lea rdx, str.__CMOV_available:__s
bt r13d, 0xc
mov r8, r12
mov rcx, r15
cmovb r8, rbx
call sym.ErrorReportClient.exe_SfMEditPrintF
bt r13d, 0xd
lea rdx, str.__FCOMI_available:__s
mov r8, r12
mov rcx, r15
cmovb r8, rbx
call sym.ErrorReportClient.exe_SfMEditPrintF
bt r13d, 0xe
lea rdx, str.__RDTSC_available:__s
mov rcx, r15
cmovb r12, rbx
mov r8, r12
call sym.ErrorReportClient.exe_SfMEditPrintF
mov rbx, qword [rsp + 0x40]
test rbx, rbx
je 0x1403a1393
lea rdx, [0x14044c5b8]
mov rcx, r15
call sym.ErrorReportClient.exe_SfMEditPrintF
mov r9, 0xffffffffffffffff
mov edx, 0xb1
mov r8, r9
mov rcx, r15
call qword [sym.imp.USER32.dll_SendMessageW]
mov r9, rbx
xor r8d, r8d
mov edx, 0xc2
mov rcx, r15
call qword [sym.imp.USER32.dll_SendMessageW]
mov rcx, qword [rbp + 0x270]
xor rcx, rsp
call fcn.14039bbb0
mov rbx, qword [rsp + 0x3d0]
add rsp, 0x380
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret