Function at 0x460c40
Capabilities:
Get system information on windows

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x68
mov r12, rdx
mov ebx, ecx
call fcn.0045aa60
lea rcx, [0x00463b50]
call sub.msvcrt.dll__strdup
lea rcx, [0x00463b50]
mov qword [0x0047fc58], rax
call sub.msvcrt.dll__strdup
mov rbp, qword [0x00474fe0]
mov qword [0x0047fc50], rax
jmp 0x460ca0
mov rdx, qword [rbp]
mov ecx, eax
call fcn.004017e0
nop dword [rax + rax]
lea r9, str.algo
lea r8, str.a:c:Dhp:Px:qr:R:s:t:T:o:u:O:V
mov qword [rsp + 0x20], 0
mov rdx, r12
mov ecx, ebx
call fcn.0045c0a0
test eax, eax
jns 0x460c90
mov rax, qword [0x00474ff0]
movsxd rax, dword [rax]
cmp ebx, eax
jg 0x461320
mov rax, qword [0x0047fc78]
test rax, rax
je 0x460da0
mov ecx, dword [rax]
test ecx, ecx
jne 0x460da0
lea rbx, [0x00464058]
lea r15, [0x00464318]
lea rbp, str.algo
lea r14, str.config
mov r13d, 7
jmp 0x460d40
cmp rbx, r15
je 0x460da0
nop word cs:[rax + rax]
add rbx, 0x20
mov rbp, qword [rbx - 0x18]
test rbp, rbp
je 0x460da0
nop dword [rax]
mov rsi, rbp
mov rdi, r14
mov rcx, r13
repe cmpsb byte [rsi], byte [rdi]
je 0x460d20
mov rcx, qword [0x0047fc78]
mov rdx, rbp
call fcn.0044f9a0
test rax, rax
je 0x460d20
mov edx, dword [rbx - 0x10]
test edx, edx
je 0x461010
cmp dword [rax], 2
je 0x461150
nop word cs:[rax + rax]
lea rdx, str.JSON_option__s_invalid
xor ecx, ecx
mov r8, rbp
call fcn.00404fc0
cmp rbx, r15
jne 0x460d30
nop word cs:[rax + rax]
lea rdx, str.Using_JSON_RPC_2.0
mov ecx, 3
mov byte [0x0047f84c], 1
call fcn.00404fc0
cmp byte [0x0047fc83], 0
je 0x461030
nop word cs:[rax + rax]
cmp qword [0x0047fc60], 0
je 0x4610e0
nop
lea rcx, [0x00481278]
xor edx, edx
call fcn.00455520
lea rcx, [0x0047f960]
xor edx, edx
call fcn.00455520
lea rcx, [0x0047f858]
xor edx, edx
call fcn.00455520
lea rcx, [0x0047f958]
xor edx, edx
call fcn.00455520
lea rcx, [0x0047faf0]
xor edx, edx
call fcn.00455520
lea rcx, [0x0047fc40]
xor edx, edx
call fcn.00455520
cmp byte [0x0047fc83], 0
mov ecx, 3
je 0x4610b0
nop word cs:[rax + rax]
call fcn.004131d0
test eax, eax
jne 0x461070
lea rcx, [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetSystemInfo]
mov eax, dword [rsp + 0x50]
mov edx, 1
test eax, eax
cmovle eax, edx
cmp dword [0x0047fc74], 0
mov dword [0x0047fc70], eax
jne 0x460e90
sub eax, 1
mov dword [0x0047fc74], eax
nop
movsxd rbx, dword [0x0047fc74]
mov edx, pe_nt_image_headers64
mov rcx, rbx
mov rsi, rbx
call sub.msvcrt.dll_calloc
test rax, rax
mov qword [0x0047f840], rax
je 0x461080
lea ecx, [rbx + 3]
mov edx, 0x18
movsxd rcx, ecx
call sub.msvcrt.dll_calloc
test rax, rax
mov rdi, rax
mov qword [0x00481270], rax
je 0x461080
mov edx, 8
mov rcx, rbx
call sub.msvcrt.dll_calloc
test rax, rax
mov qword [0x0047f940], rax
je 0x461080
mov rcx, rbx
mov edx, 8
call sub.msvcrt.dll_calloc
mov dword [0x0047fc48], ebx
mov qword [0x0047f938], rax
imul rbx, rbx, 0x18
add rbx, rdi
mov dword [rbx], esi
call fcn.00407100
test rax, rax
mov qword [rbx + 0x10], rax
je 0x461080
lea rcx, [rbx + 8]
lea r8, [0x004045e0]
xor edx, edx
mov r9, rbx
call fcn.004578b0
test eax, eax
mov ebp, eax
jne 0x461190
cmp byte [0x00462025], 0
je 0x460f70
cmp byte [0x0047f84e], 0
je 0x461290
nop word cs:[rax + rax]
cmp byte [0x00462024], 0
jne 0x4611b0
nop dword [rax]
mov r8d, dword [0x0047fc74]
test r8d, r8d
jle 0x461240
xor edi, edi
xor esi, esi
lea r12, [0x00481270]
jmp 0x460fc0
mov r8d, dword [0x0047fc74]
add esi, 1
add rdi, 0x18
cmp r8d, esi
jle 0x461240
nop word [rax + rax]
mov rbx, rdi
add rbx, qword [r12]
mov dword [rbx], esi
call fcn.00407100
test rax, rax
mov qword [rbx + 0x10], rax
je 0x461080
lea rcx, [rbx + 8]
lea r8, [0x00402090]
xor edx, edx
mov r9, rbx
call fcn.004578b0
test eax, eax
je 0x460fa0
lea rdx, str.thread__d_create_failed
mov r8d, esi
xor ecx, ecx
mov ebp, 1
call fcn.00404fc0
jmp 0x461090
cmp dword [rax], 5
jne 0x460d80
mov ecx, dword [rbx]
lea rdx, [0x00463b50]
call fcn.004017e0
jmp 0x460d20
cmp qword [0x0047fc68], 0
jne 0x460dd0
mov rbx, qword [r12]
call qword [sym.imp.msvcrt.dll___iob_func]
lea rdx, str._s:_no_URL_supplied_n
lea rcx, [rax + 0x60]
mov r8, rbx
call sub.msvcrt.dll_fprintf
mov ecx, 1
call fcn.00401790
nop word cs:[rax + rax]
lea rdx, [0x00463b51]
xor ecx, ecx
call fcn.00404fc0
nop
mov ebp, 1
nop word cs:[rax + rax]
mov eax, ebp
add rsp, 0x68
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov rcx, qword [0x0047fc68]
lea rdx, str.https:
mov r8d, 6
call sub.msvcrt.dll_strncmp
cmp eax, 1
sbb ecx, ecx
not ecx
add ecx, 3
jmp 0x460e50
mov rbx, qword [0x0047fc58]
or r10, 0xffffffffffffffff
xor eax, eax
mov rcx, r10
mov rsi, qword [0x0047fc50]
mov rdi, rbx
repne scasb al, byte [rdi]
mov rdi, rsi
mov rdx, rcx
mov rcx, r10
repne scasb al, byte [rdi]
not rdx
mov rax, rcx
not rax
lea rcx, [rdx + rax]
call sub.msvcrt.dll_malloc
test rax, rax
mov qword [0x0047fc60], rax
je 0x461080
lea rdx, [0x00463eb8]
mov r9, rsi
mov r8, rbx
mov rcx, rax
call sub.msvcrt.dll_sprintf
jmp 0x460de0
mov rcx, rax
call fcn.00450aa7
mov rcx, rax
call sub.msvcrt.dll__strdup
test rax, rax
mov rsi, rax
je 0x460da0
mov ecx, dword [rbx]
mov rdx, rax
call fcn.004017e0
mov rcx, rsi
call sub.msvcrt.dll_free
jmp 0x460d20
lea rdx, str.workio_thread_create_failed
xor ecx, ecx
mov ebp, 1
call fcn.00404fc0
jmp 0x461090
mov eax, dword [0x0047fc74]
add eax, 2
movsxd rbx, eax
mov dword [0x00462010], eax
imul rbx, rbx, 0x18
add rbx, qword [0x00481270]
mov dword [rbx], eax
call fcn.00407100
test rax, rax
mov qword [rbx + 0x10], rax
je 0x461080
lea rcx, [rbx + 8]
lea r8, [0x00402910]
xor edx, edx
mov r9, rbx
call fcn.004578b0
test eax, eax
jne 0x461300
cmp byte [0x0047f84e], 0
je 0x460f80
mov rcx, qword [0x0047fc68]
call sub.msvcrt.dll__strdup
movsxd rcx, dword [0x00462010]
mov rdx, rax
imul rcx, rcx, 0x18
add rcx, qword [0x00481270]
mov rcx, qword [rcx + 0x10]
call fcn.00407270
jmp 0x460f80
lea r9, str.cryptonight
lea rdx, str._d_miner_threads_started__using__s_algorithm.
mov ecx, 3
call fcn.00404fc0
movsxd rax, dword [0x0047fc48]
xor edx, edx
imul rax, rax, 0x18
add rax, qword [0x00481270]
mov rcx, qword [rax + 8]
call fcn.00457b70
lea rdx, str.workio_thread_dead__exiting.
mov ecx, 3
call fcn.00404fc0
jmp 0x461090
mov eax, dword [0x0047fc74]
add eax, 1
movsxd rbx, eax
mov dword [0x00462014], eax
imul rbx, rbx, 0x18
add rbx, qword [0x00481270]
mov dword [rbx], eax
call fcn.00407100
test rax, rax
mov qword [rbx + 0x10], rax
je 0x461080
lea rcx, [rbx + 8]
lea r8, [0x00403ad0]
xor edx, edx
mov r9, rbx
call fcn.004578b0
test eax, eax
je 0x460f70
lea rdx, str.longpoll_thread_create_failed
xor ecx, ecx
mov ebp, 1
call fcn.00404fc0
jmp 0x461090
lea rdx, str.stratum_thread_create_failed
xor ecx, ecx
mov ebp, 1
call fcn.00404fc0
jmp 0x461090
mov rsi, qword [r12 + rax*8]
mov rbx, qword [r12]
call qword [sym.imp.msvcrt.dll___iob_func]
lea rdx, str._s:_unsupported_non_option_argument__s_n
lea rcx, [rax + 0x60]
mov r9, rsi
mov r8, rbx
call sub.msvcrt.dll_fprintf
mov ecx, 1
call fcn.00401790
nop
nop