Function at 0x5ef6a0
Capabilities:
Get system information on windows

Disassembly:
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0xb0
lea rbp, [0x005f4f60]
lea rdi, str.a:b:Bc:CDf:hK:m:n:N:p:Px:qr:R:s:t:T:o:u:O:V
mov ebx, ecx
mov rsi, rdx
call fcn.005e7120
lea rcx, [0x00663bf0]
xor edx, edx
call fcn.005bc1f0
lea rcx, str._n___________cpuminer_opt_23.5____n
call fcn.005b3c00
lea rcx, str._____A_CPU_miner_with_multi_algo_support_and_optimized_for_CPUs_n
call fcn.005b3c00
lea rcx, str._____with_AVX512__SHA_and_VAES_extensions_by_JayDDee._n
call fcn.005b3c00
lea rcx, str._____BTC_donation_address:_12tdvfF7KmAsihBXQXynT6E6th2c2pByTT_n_n
call fcn.005b3c00
lea rcx, [0x005f3019]
call sub.msvcrt.dll__strdup
lea rcx, [0x005f3019]
mov qword [0x00663c00], rax
call sub.msvcrt.dll__strdup
lea rcx, [rsp + 0x40]
mov qword [0x00663658], rax
call qword [sym.imp.KERNEL32.dll_GetSystemInfo]
mov eax, dword [rsp + 0x60]
mov edx, 1
mov r12, qword [0x0064c6f0]
test eax, eax
cmovle eax, edx
mov dword [0x005f105c], eax
mov dword [0x0065e110], eax
jmp 0x5ef769
mov rdx, qword [r12]
call fcn.004095d0
mov ecx, ebx
mov r9, rbp
mov r8, rdi
mov qword [rsp + 0x20], 0
mov rdx, rsi
call fcn.005e97b0
mov ecx, eax
test eax, eax
jns 0x5ef760
mov rax, qword [0x0064c700]
movsxd rax, dword [rax]
cmp ebx, eax
jg 0x5f014c
mov ecx, dword [0x0065e128]
test ecx, ecx
je 0x5f0122
mov edx, dword [0x0065e6e4]
test edx, edx
je 0x5efc20
mov eax, dword [0x0065e6ec]
test eax, eax
jne 0x5efc5b
lea rdx, [0x00663b40]
call fcn.00413260
test al, al
je 0x5f00f7
xor ecx, ecx
call fcn.00401e20
test al, al
je 0x5f00f7
cmp byte [0x0065e132], 0
je 0x5efbe8
cmp qword [0x0065e0f8], 0
je 0x5efeae
mov r8, qword [0x00663640]
test r8, r8
je 0x5ef831
movsxd rdx, dword [0x005f1054]
lea rcx, [0x0065e6b0]
call fcn.0040cb70
mov qword [0x0065e6a8], rax
test rax, rax
je 0x5efc3c
lea r12, [0x00663bf8]
xor edx, edx
mov rcx, r12
call fcn.005bc1f0
lea rcx, [0x00663650]
xor edx, edx
call fcn.005c2c90
lea rcx, [0x006637b0]
xor edx, edx
call fcn.005bc1f0
lea rcx, [0x00663b00]
xor edx, edx
call fcn.005bc1f0
cmp byte [0x0065e132], 0
je 0x5efc96
mov ecx, 3
call qword [sym.imp.libcurl_4.dll_curl_global_init]
test eax, eax
jne 0x5efc7a
lea rcx, [0x00404260]
mov edx, 1
call qword [sym.imp.KERNEL32.dll_SetConsoleCtrlHandler]
cmp byte [0x0065e6f0], 0
jne 0x5efd19
mov eax, dword [0x0065e108]
test eax, eax
jle 0x5ef8d9
sub eax, 1
mov r13d, 0x20
cmp eax, 4
jbe 0x5efd38
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov edx, r13d
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetPriorityClass]
movsxd rcx, dword [0x0065e110]
mov edx, 1
mov rsi, rcx
call sub.msvcrt.dll_calloc
mov ebx, dword [0x005f105c]
mov qword [0x0065e070], rax
cmp esi, ebx
cmovl esi, ebx
movsxd rcx, esi
shl rcx, 2
call sub.msvcrt.dll_malloc
mov r10, rax
mov qword [0x0065e420], rax
test rax, rax
je 0x5f0101
mov r8, qword [0x005f1060]
test r8, r8
je 0x5ef999
test esi, esi
jle 0x5f00b5
lea eax, [rsi - 1]
mov r11d, dword [0x005f105c]
xor ecx, ecx
xor r9d, r9d
lea rsi, [r10 + rax*4 + 4]
jmp 0x5ef953
add ecx, 1
bt r8, rcx
jae 0x5ef950
mov eax, ecx
cdq
idiv ebx
xor eax, eax
cmp r11d, ecx
setg al
add r10, 4
mov ebx, r11d
add r9d, eax
add ecx, 1
mov dword [r10 - 4], edx
cmp rsi, r10
jne 0x5ef953
mov r8d, dword [0x0065e110]
cmp r8d, r9d
jg 0x5efd57
cmp byte [0x0065e12d], 0
je 0x5efd6d
movsxd r13, dword [0x0065e110]
mov edx, pe_nt_image_headers64
mov rcx, r13
mov rsi, r13
call sub.msvcrt.dll_calloc
mov qword [0x0065e0d8], rax
test rax, rax
je 0x5efbcd
lea ecx, [r13 + 4]
mov edx, 0x50
movsxd rcx, ecx
call sub.msvcrt.dll_calloc
mov rbx, rax
mov qword [0x00663be8], rax
test rax, rax
je 0x5efbcd
mov edx, 8
mov rcx, r13
call sub.msvcrt.dll_calloc
mov qword [0x00663c10], rax
test rax, rax
je 0x5efbcd
mov dword [0x00663660], r13d
imul r13, r13, 0x50
add r13, rbx
mov dword [r13], esi
call fcn.00410eb0
mov qword [r13 + 0x20], rax
test rax, rax
je 0x5efbcd
mov rcx, qword [0x00663658]
test rcx, rcx
je 0x5efa67
mov r14, qword [0x00663c00]
test r14, r14
je 0x5efa67
lea rdx, str.stats
call sub.msvcrt.dll_strstr
mov r8, rax
mov eax, 1
test r8, r8
je 0x5efe92
mov byte [0x0065e0d1], al
and byte [0x0065e0d1], 1
mov rcx, r13
lea rdx, [0x00406ff0]
call fcn.00403880
mov r13d, eax
test eax, eax
jne 0x5eff11
cmp byte [0x0065e131], 0
je 0x5efaed
cmp byte [0x0065e12f], 0
jne 0x5efdf9
cmp byte [0x0065e135], 0
jne 0x5f009f
mov eax, dword [0x0065e110]
add eax, 1
movsxd r14, eax
mov dword [0x005f1050], eax
imul r14, r14, 0x50
add r14, qword [0x00663be8]
mov dword [r14], eax
call fcn.00410eb0
mov qword [r14 + 0x20], rax
test rax, rax
je 0x5efbcd
lea rdx, [0x00403c20]
mov rcx, r14
call fcn.00403880
test eax, eax
jne 0x5f0049
cmp byte [0x0065e12f], 0
jne 0x5efdf9
cmp byte [0x0065e620], 0
je 0x5efb66
cmp byte [0x0065e135], 0
jne 0x5f0033
mov eax, dword [0x0065e110]
add eax, 3
movsxd r14, eax
mov dword [0x005f1048], eax
imul r14, r14, 0x50
add r14, qword [0x00663be8]
mov dword [r14], eax
call fcn.00410eb0
mov qword [r14 + 0x20], rax
test rax, rax
je 0x5efbcd
lea rdx, [0x00412f70]
mov rcx, r14
call fcn.00403880
test eax, eax
jne 0x5f00d9
cmp byte [0x0065e12d], 0
je 0x5f007b
mov rcx, r12
call fcn.005bee00
cmp dword [0x0065e110], 0
jle 0x5eff2d
lea rdi, [0x00663be8]
xor ebx, ebx
xor esi, esi
lea rbp, [0x00405110]
jmp 0x5efbb6
mov rdx, rbp
mov rcx, r14
call fcn.00403880
test eax, eax
jne 0x5efff5
add ebx, 1
add rsi, 0x50
cmp dword [0x0065e110], ebx
jle 0x5eff2d
mov r14, qword [rdi]
add r14, rsi
mov dword [r14], ebx
call fcn.00410eb0
mov qword [r14 + 0x20], rax
test rax, rax
jne 0x5efb90
mov r13d, 1
mov eax, r13d
add rsp, 0xb0
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
ret
cmp qword [0x0065e0f0], 0
jne 0x5ef7f4
mov rbx, qword [rsi]
mov ecx, 2
call qword [fcn.005ef2f0]
lea rdx, str._s:_no_URL_supplied_n
mov rcx, rax
mov r8, rbx
call fcn.005b3bd0
mov ecx, 1
call fcn.00409420
cmp byte [0x0065e12f], 0
je 0x5efd01
mov dword [0x0065e6e4], 0x1e
jmp 0x5ef7b6
mov r8, qword [0x00663640]
mov ecx, 1
lea rdx, str.Invalid_coinbase_address:__s
call fcn.0040ad90
xor ecx, ecx
call sub.msvcrt.dll_exit
xor ecx, ecx
call qword [sym.imp.msvcrt.dll__time64]
add eax, dword [0x0065e6ec]
mov ecx, dword [0x0065e128]
mov dword [0x0065e6e8], eax
jmp 0x5ef7c4
lea rdx, [0x005f3f00]
mov ecx, 1
mov r13d, 1
call fcn.0040ad90
jmp 0x5efbd3
mov rcx, qword [0x0065e100]
mov r8d, 6
mov rbx, qword [sym.imp.msvcrt.dll__strnicmp]
lea rdx, str.https:
call rbx
test eax, eax
je 0x5ef879
mov rcx, qword [0x0065e100]
mov r8d, 0xe
lea rdx, str.stratumssl:__
call rbx
test eax, eax
je 0x5ef879
mov rcx, qword [0x0065e100]
mov r8d, 0xf
lea rdx, str.stratumtcps:__
call rbx
mov ecx, 2
test eax, eax
jne 0x5ef87e
jmp 0x5ef879
cmp byte [0x0065e130], 0
je 0x5efd48
mov dword [0x0065e6e4], 0x3c
jmp 0x5ef7b6
call qword [sym.imp.KERNEL32.dll_GetConsoleWindow]
mov rcx, rax
test rax, rax
je 0x5f0014
xor edx, edx
call qword [sym.imp.USER32.dll_ShowWindow]
jmp 0x5ef8ab
lea rdx, [0x005f4bc0]
mov r13d, dword [rdx + rax*4]
jmp 0x5ef8c7
mov dword [0x0065e6e4], 5
jmp 0x5ef7b6
lea rdx, str.Affinity:_more_threads___d__than_active_CPUs___d_
mov ecx, 2
call fcn.0040ad90
jmp 0x5ef98c
mov eax, dword [0x005f105c]
lea r8, [rsp + 0x70]
mov r9d, 0x40
mov rcx, qword [0x005f1060]
cmp eax, 0x40
cmovle r9d, eax
xor edx, edx
test eax, eax
jle 0x5f00ef
nop word cs:[rax + rax]
mov rax, rcx
and eax, 1
cmp rax, 1
sbb eax, eax
shr rcx, 1
and eax, 0xd
add eax, 0x21
mov byte [r8 + rdx], al
add rdx, 1
cmp r9d, edx
jg 0x5efda0
test r9d, r9d
mov eax, 1
cmovle r9d, eax
movsxd rdx, r9d
mov ecx, 0x40
add rdx, r8
sub ecx, r9d
xor eax, eax
mov rdi, rdx
rep stosb byte [rdi], al
lea rdx, str.CPU_affinity___s_
mov ecx, 4
call fcn.0040ad90
jmp 0x5ef999
cmp byte [0x0065e135], 0
jne 0x5f0065
mov eax, dword [0x0065e110]
mov byte [0x00663b0c], 0
add eax, 2
movsxd r14, eax
mov dword [0x005f104c], eax
imul r14, r14, 0x50
add r14, qword [0x00663be8]
mov dword [r14], eax
call fcn.00410eb0
mov qword [r14 + 0x20], rax
test rax, rax
je 0x5efbcd
lea rdx, [0x00406ac0]
mov rcx, r14
call fcn.00403880
test eax, eax
jne 0x5f00bd
cmp byte [0x0065e12f], 0
je 0x5efafa
mov rcx, qword [0x0065e100]
call sub.msvcrt.dll__strdup
mov rdx, rax
movsxd rax, dword [0x005f104c]
imul rax, rax, 0x50
add rax, qword [0x00663be8]
mov rcx, qword [rax + 0x20]
call fcn.00411000
jmp 0x5efafa
lea rdx, str.benchmark
mov rcx, r14
call sub.msvcrt.dll_strcmp
test eax, eax
sete al
movzx eax, al
jmp 0x5efa5a
mov rbp, qword [0x00663c00]
or r8, 0xffffffffffffffff
xor eax, eax
mov rcx, r8
mov r12, qword [0x00663658]
mov rdi, rbp
repne scasb al, byte [rdi]
mov rdi, r12
mov rdx, rcx
mov rcx, r8
repne scasb al, byte [rdi]
not rdx
mov rax, rcx
not rax
lea rcx, [rdx + rax]
call sub.msvcrt.dll_malloc
mov rcx, rax
mov qword [0x0065e0f8], rax
test rax, rax
je 0x5efbcd
lea rdx, str._s:_s
mov r9, r12
mov r8, rbp
call sub.msvcrt.dll_sprintf
jmp 0x5ef802
lea rdx, str.work_thread_create_failed
mov ecx, 1
mov r13d, 1
call fcn.0040ad90
jmp 0x5efbd3
lea rcx, [0x0065e160]
mov r8d, 0x2c0
xor edx, edx
call sub.msvcrt.dll_memset
lea rcx, [0x0065e138]
xor edx, edx
call fcn.005e9890
mov rax, qword [0x0065e138]
mov rcx, r12
mov qword [0x0065e610], rax
mov qword [0x0065e618], rax
mov qword [0x0065e6d8], rax
mov qword [0x0065e6d0], rax
mov qword [0x0065e0a0], rax
call fcn.005bfd30
mov edx, dword [0x0065e128]
lea rax, [0x005f77a0]
mov ecx, 4
mov r9d, dword [0x005f105c]
mov r8d, dword [0x0065e110]
mov rax, qword [rax + rdx*8]
lea rdx, str._d_of__d_miner_threads_started_using__s_algorithm
mov qword [rsp + 0x20], rax
call fcn.0040ad90
movsxd rax, dword [0x00663660]
lea rcx, [rsp + 0x30]
xor edx, edx
imul rax, rax, 0x50
add rax, qword [0x00663be8]
vmovdqu xmm0, xmmword [rax + 8]
vmovups xmmword [rsp + 0x30], xmm0
call fcn.005c7720
lea rdx, str.workio_thread_dead__exiting.
mov ecx, 2
call fcn.0040ad90
jmp 0x5efbd3
mov r8d, ebx
mov ecx, 1
mov r13d, 1
lea rdx, str.Miner_thread__d_create_failed
call fcn.0040ad90
jmp 0x5efbd3
mov ecx, 0xfffffff5
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
call qword [sym.imp.KERNEL32.dll_FreeConsole]
jmp 0x5ef8ab
lea rdx, str.Creating_API_thread
mov ecx, 4
call fcn.0040ad90
jmp 0x5efb10
lea rdx, str.Long_poll_thread_create_failed
mov ecx, 1
mov r13d, 1
call fcn.0040ad90
jmp 0x5efbd3
lea rdx, str.Creating_stratum_thread
mov ecx, 4
call fcn.0040ad90
jmp 0x5efe06
mov r9d, dword [0x0065e04c]
lea rdx, str.API_listening_to__s:_d
mov ecx, 4
mov r8, qword [0x0065e050]
call fcn.0040ad90
jmp 0x5efb66
lea rdx, str.Creating_long_poll_thread
mov ecx, 4
call fcn.0040ad90
jmp 0x5efaa4
xor r9d, r9d
jmp 0x5ef97c
lea rdx, str.Stratum_thread_create_failed
mov ecx, 1
mov r13d, 1
call fcn.0040ad90
jmp 0x5efbd3
lea rdx, str.API_thread_create_failed
mov ecx, 1
call fcn.0040ad90
jmp 0x5efbcd
xor r9d, r9d
jmp 0x5efdce
mov ecx, 1
call sub.msvcrt.dll_exit
lea rdx, str.CPU_Affinity_disabled__memory_allocation_failed
mov ecx, 1
call fcn.0040ad90
mov qword [0x005f1060], 0
jmp 0x5ef999
mov rbx, qword [rsi]
mov ecx, 2
call qword [fcn.005ef2f0]
lea rdx, str._s:_No_algo_parameter_specified_n
mov rcx, rax
mov r8, rbx
call fcn.005b3bd0
mov ecx, 1
call fcn.00409420
mov rdi, qword [rsi + rax*8]
mov ecx, 2
mov rbx, qword [rsi]
call qword [fcn.005ef2f0]
lea rdx, str._s:_unsupported_non_option_argument_____s_n
mov rcx, rax
mov r9, rdi
mov r8, rbx
call fcn.005b3bd0
mov ecx, 1
call fcn.00409420
nop
nop
nop
sub rsp, 0x28
lea rcx, [0x0065f180]
call fcn.005e7068
lea rcx, [0x004eb660]
add rsp, 0x28
jmp fcn.00401520