Function at 0x1400357c0
Capabilities:
Get system information on windows
Terminate process

Disassembly:
push rbx
push rbp
push r12
push r15
sub rsp, 0x1c8
mov rax, qword [0x140177090]
xor rax, rsp
mov qword [rsp + 0x1a0], rax
mov ebp, ecx
lea rcx, [0x140137a8a]
mov r15, rdx
call qword [sym.imp.MSVCR120.dll__strdup]
lea rcx, [0x140137a8b]
mov qword [0x1401d1ca8], rax
call qword [sym.imp.MSVCR120.dll__strdup]
lea rcx, str.http:__127.0.0.1:8667
mov qword [0x1401d1ca0], rax
call qword [sym.imp.MSVCR120.dll__strdup]
lea rcx, [0x140137ab2]
mov qword [0x1401d1c00], rax
call qword [sym.imp.MSVCR120.dll__strdup]
lea rcx, [0x1401d1d68]
xor edx, edx
mov qword [0x1401d1e08], rax
call fcn.140125020
lea rcx, [0x1401d1988]
xor edx, edx
call fcn.140125020
lea rcx, [0x1401d1c08]
xor edx, edx
call fcn.140125020
mov rdx, r15
mov ecx, ebp
call fcn.1400356d0
mov ecx, dword [0x1401d1eac]
test ecx, ecx
je 0x14003588d
lea rcx, str.http:__127.0.0.1:18667
call qword [sym.imp.MSVCR120.dll__strdup]
mov ecx, dword [0x1401d1eac]
mov qword [0x1401d1c00], rax
test ecx, ecx
lea rdx, str.testnet
lea rax, str.mainnet
cmovne rax, rdx
lea r9, [0x14013842c]
lea r8, str.FABminer
lea rdx, str._s__s_on__s
mov ecx, 3
mov qword [rsp + 0x20], rax
call fcn.14003ce00
mov rcx, qword [0x1401d1c00]
or rbx, 0xffffffffffffffff
mov rax, rbx
inc rax
cmp byte [rcx + rax], 0
jne 0x1400358d3
mov r12d, 1
test rax, rax
jne 0x14003591e
call qword [sym.imp.MSVCR120.dll___iob_func]
mov r8, qword [r15]
lea rdx, str._s:_no_URL_supplied_n
lea rcx, [rax + 0x60]
call fcn.1400301a0
call qword [sym.imp.MSVCR120.dll___iob_func]
lea rdx, str.Try__FABminer___help_for_more_information._n
lea rcx, [rax + 0x60]
call fcn.1400301a0
mov ecx, r12d
call fcn.140030210
cmp qword [0x1401f2bc8], 0
mov qword [rsp + 0x200], rsi
mov qword [rsp + 0x1c0], rdi
jne 0x140035995
mov rdi, qword [0x1401d1ca0]
mov rax, rbx
inc rax
cmp byte [rdi + rax], 0
jne 0x140035942
mov rsi, qword [0x1401d1ca8]
mov rcx, rbx
inc rcx
cmp byte [rsi + rcx], 0
jne 0x140035955
add rax, 2
add rcx, rax
call qword [sym.imp.MSVCR120.dll_malloc]
mov qword [0x1401f2bc8], rax
test rax, rax
jne 0x14003597f
mov eax, r12d
jmp 0x14003632e
lea rdx, [0x140138624]
mov r9, rdi
mov r8, rsi
mov rcx, rax
call qword [sym.imp.MSVCR120.dll_sprintf]
mov rcx, qword [0x1401d1c00]
lea rdx, str.https:
mov r8d, 6
call qword [sym.imp.MSVCR120.dll_strncmp]
neg eax
sbb ecx, ecx
add ecx, 3
call fcn.140045e70
test eax, eax
je 0x1400359d7
lea rdx, str.CURL_initialization_failed
xor ecx, ecx
call fcn.14003ce00
mov eax, 3
jmp 0x14003632e
lea rcx, [rsp + 0x60]
mov qword [rsp + 0x1b8], r13
mov qword [rsp + 0x1b0], r14
call qword [sym.imp.KERNEL32.dll_GetSystemInfo]
mov eax, dword [rsp + 0x80]
cmp eax, r12d
cmovl eax, r12d
mov dword [0x1401d1d64], eax
call fcn.14011f510
lea r13, [0x1401d1f30]
mov r9d, eax
mov dword [0x1401d1e58], eax
movabs rax, 0x40000000400
mov qword [0x1401d1d10], rax
mov qword [0x1401d1d18], rax
mov qword [0x1401d1d20], rax
mov qword [0x1401d1d28], rax
mov qword [0x1401d1d30], rax
mov qword [0x1401d1d38], rax
mov qword [0x1401d1d40], rax
mov qword [0x1401d1d48], rax
movabs rax, 0x100000001
mov qword [0x1401d1cd0], rax
mov qword [0x1401d1cd8], rax
mov qword [0x1401d1ce0], rax
mov qword [0x1401d1ce8], rax
mov qword [0x1401d1cf0], rax
mov qword [0x1401d1cf8], rax
mov qword [0x1401d1d00], rax
mov qword [0x1401d1d08], rax
movabs rax, 0xb0000000b
mov qword [0x1401d1b70], rax
mov qword [0x1401d1b78], rax
mov qword [0x1401d1b80], rax
mov qword [0x1401d1b88], rax
mov qword [0x1401d1b90], rax
mov qword [0x1401d1b98], rax
mov qword [0x1401d1ba0], rax
mov qword [0x1401d1ba8], rax
movabs rax, 0xc0000000c
xor esi, esi
mov r8, r13
mov qword [0x140177120], rbx
mov qword [0x1401d1b30], rax
mov qword [0x1401d1b38], rax
mov qword [0x1401d1b40], rax
mov qword [0x1401d1b48], rax
mov r14d, esi
mov qword [0x140177128], rbx
mov qword [0x140177130], rbx
mov qword [0x140177138], rbx
mov qword [0x140177140], rbx
mov qword [0x140177148], rbx
mov qword [0x140177150], rbx
mov qword [0x140177158], rbx
mov qword [0x140177160], rbx
mov qword [0x140177168], rbx
mov qword [0x1401d1e10], rbx
mov qword [0x1401d1e18], rbx
mov qword [0x1401d1e20], rbx
mov qword [0x1401d1e28], rbx
mov qword [0x1401d1e30], rbx
mov qword [0x1401d1e38], rbx
mov qword [0x1401d1e40], rbx
mov qword [0x1401d1e48], rbx
mov qword [0x1401d1e60], rbx
mov qword [0x1401d1e68], rbx
mov qword [0x1401d1e70], rbx
mov qword [0x1401d1e78], rbx
mov qword [0x1401d1e80], rbx
mov qword [0x1401d1e88], rbx
mov qword [0x1401d1e90], rbx
mov qword [0x1401d1e98], rbx
mov qword [0x1401d1bc0], rbx
mov qword [0x1401d1bc8], rbx
mov qword [0x1401d1bd0], rbx
mov qword [0x1401d1bd8], rbx
mov qword [0x1401d1be0], rbx
mov qword [0x1401d1be8], rbx
mov qword [0x1401d1bf0], rbx
mov qword [0x1401d1bf8], rbx
lea rdi, [0x1401d1d70]
mov qword [0x1401d1b50], rax
mov qword [0x1401d1b58], rax
mov qword [0x1401d1b60], rax
mov qword [0x1401d1b68], rax
xor eax, eax
mov ecx, reloc.WS2_32.dll_recv
rep stosq qword [rdi], rax
lea rdi, [0x1401d1c20]
mov ecx, reloc.WS2_32.dll_recv
rep stosq qword [rdi], rax
nop dword [rax]
mov eax, r14d
inc r14d
lea r8, [r8 + 2]
cdq
idiv r9d
mov word [r8 - 2], dx
cmp r14d, 0x10
jl 0x140035c40
call fcn.14011f5b0
mov rcx, qword [0x1401d1c00]
mov rax, rbx
nop dword [rax + rax]
inc rax
cmp byte [rcx + rax], sil
jne 0x140035c70
test rax, rax
jne 0x140035d02
lea rcx, [rsp + 0x91]
xor edx, edx
mov r8d, 0x103
mov byte [rsp + 0x90], sil
call sub.MSVCR120.dll_memset
mov r8, qword [r15]
lea rcx, [rsp + 0x90]
call fcn.14003d130
lea rax, [rsp + 0x90]
inc rbx
cmp byte [rax + rbx], sil
jne 0x140035cb7
test rbx, rbx
je 0x140035d02
cmp dword [0x1401d1ae8], esi
je 0x140035ce6
lea r8, [rsp + 0x90]
lea rdx, str.Using_config__s
mov ecx, 4
call fcn.14003ce00
lea rdx, [rsp + 0x90]
mov ecx, 0x63
call fcn.140034360
mov rdx, r15
mov ecx, ebp
call fcn.1400356d0
mov eax, dword [0x140177114]
mov ecx, dword [0x1401778c0]
cmp eax, 0xc
cmove ecx, esi
cmp dword [0x1401d1cb8], esi
mov dword [0x1401778c0], ecx
je 0x140035d54
call qword [sym.imp.KERNEL32.dll_GetConsoleWindow]
test rax, rax
je 0x140035d3a
xor edx, edx
mov rcx, rax
call qword [sym.imp.USER32.dll_ShowWindow]
jmp 0x140035d54
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]
lea rcx, [0x140035760]
mov edx, r12d
call qword [sym.imp.KERNEL32.dll_SetConsoleCtrlHandler]
mov ecx, dword [0x1401d19b4]
test ecx, ecx
jle 0x140035db2
mov edi, 0x20
dec ecx
je 0x140035d9c
dec ecx
je 0x140035da1
dec ecx
je 0x140035d95
dec ecx
je 0x140035d8e
dec ecx
jne 0x140035da1
mov edi, 0x100
jmp 0x140035da1
mov edi, 0x80
jmp 0x140035da1
mov edi, 0x8000
jmp 0x140035da1
mov edi, 0x4000
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov edx, edi
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetPriorityClass]
mov ecx, 0x80000001
call qword [sym.imp.KERNEL32.dll_SetThreadExecutionState]
mov ecx, r12d
call qword [sym.imp.WINMM.dll_timeBeginPeriod]
mov rax, qword [0x140177188]
cmp rax, 0xffffffffffffffff
je 0x140035e09
cmp dword [0x1401d1c10], esi
jne 0x140035df6
lea rdx, str.Binding_process_to_cpu_mask__x
mov r8, rax
mov ecx, 4
call fcn.14003ce00
mov rax, qword [0x140177188]
mov edi, eax
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov edx, edi
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetProcessAffinityMask]
mov ecx, dword [0x1401d1e58]
test ecx, ecx
jne 0x140035e2b
lea rdx, str.No_CUDA_devices_found__terminating.
xor ecx, ecx
call fcn.14003ce00
mov ecx, r12d
call qword [sym.imp.MSVCR120.dll_exit]
int3
mov edi, dword [0x1401d1ae4]
test edi, edi
jne 0x140035e3f
mov edi, ecx
mov dword [0x1401d1ae4], ecx
jmp 0x140035e4a
cmp ecx, edi
cmovg ecx, edi
mov dword [0x1401d1e58], ecx
mov eax, edi
cdq
idiv ecx
mov ecx, dword [0x140177110]
mov edx, 0x80
cmp ecx, eax
cmovle ecx, eax
mov dword [0x140177110], ecx
movsxd rcx, edi
call qword [sym.imp.MSVCR120.dll_calloc]
mov qword [0x1401d1c18], rax
test rax, rax
je 0x14003636d
lea eax, [rdi + 5]
mov edx, 0x140
movsxd rcx, eax
call qword [sym.imp.MSVCR120.dll_calloc]
mov rcx, rax
mov qword [0x1401d1cc8], rax
test rax, rax
je 0x14003636d
movsxd rax, edi
mov edx, 0x28
mov dword [0x1401f2bd0], edi
lea rbx, [rax + rax*4]
shl rbx, 6
add rbx, rcx
mov rcx, r12
mov dword [rbx], edi
call qword [sym.imp.MSVCR120.dll_calloc]
mov rdi, rax
test rax, rax
jne 0x140035ed3
mov rdi, rsi
jmp 0x140035ef0
lea rcx, [rax + 0x18]
xor edx, edx
mov qword [rax], rax
mov qword [rax + 8], rax
call fcn.140125020
lea rcx, [rdi + 0x20]
xor edx, edx
call fcn.140124440
mov qword [rbx + 0x18], rdi
test rdi, rdi
je 0x14003636d
lea rcx, [rbx + 8]
lea r8, [0x140032a90]
mov r9, rbx
xor edx, edx
call fcn.140124680
test eax, eax
je 0x140035f2e
lea rdx, str.workio_thread_create_failed
xor ecx, ecx
call fcn.14003ce00
mov eax, 3
jmp 0x14003631e
mov ecx, dword [0x1401d1ae4]
inc ecx
movsxd rax, ecx
mov dword [0x140177180], ecx
lea rdi, [rax + rax*4]
shl rdi, 6
add rdi, qword [0x1401d1cc8]
mov dword [rdi], ecx
call fcn.14003e3d0
mov qword [rdi + 0x18], rax
test rax, rax
je 0x14003636d
lea rcx, [rdi + 8]
lea r8, [0x140032e40]
mov r9, rdi
xor edx, edx
call fcn.140124680
test eax, eax
je 0x140035f93
lea rdx, str.longpoll_thread_create_failed
xor ecx, ecx
call fcn.14003ce00
mov eax, 3
jmp 0x14003631e
call fcn.14003f9c0
mov qword [0x1401d1d58], rax
test rax, rax
je 0x14003601e
cmp dword [0x14017711c], esi
mov edi, esi
setge dil
call fcn.14011f5b0
cmp dword [0x1401d1c10], esi
jne 0x140035fce
lea rdx, str.NVML_GPU_monitoring_enabled.
mov ecx, 3
call fcn.14003ce00
mov ebx, esi
cmp dword [0x1401d1e58], ebx
jle 0x14003601e
mov rbp, r13
nop dword [rax + rax]
movsx edx, word [rbp]
call fcn.1400402f0
movsx edx, word [rbp]
cmp eax, r12d
cmove edi, r12d
call fcn.1400405e0
cmp eax, r12d
jne 0x140036003
mov edi, r12d
jmp 0x140036007
test edi, edi
je 0x140036010
xor edx, edx
mov ecx, ebx
call fcn.14011f800
inc ebx
add rbp, 2
cmp ebx, dword [0x1401d1e58]
jl 0x140035fe0
call fcn.140042df0
test eax, eax
jne 0x140036053
cmp dword [0x1401d1c10], esi
jne 0x14003603e
lea rdx, str.NVAPI_GPU_monitoring_enabled.
lea ecx, [rax + 3]
call fcn.14003ce00
cmp qword [0x1401d1d58], rsi
jne 0x14003604c
call fcn.14011f5b0
call fcn.140043090
jmp 0x140036075
cmp qword [0x1401d1d58], rsi
jne 0x140036075
cmp dword [0x1401d1c10], esi
jne 0x140036075
lea rdx, str.GPU_monitoring_is_not_available.
mov ecx, 3
call fcn.14003ce00
cmp dword [0x14017711c], esi
jl 0x1400360a3
cmp qword [0x1401d1d58], rsi
jne 0x1400360a3
cmp dword [0x1401d1e58], esi
mov edi, esi
jle 0x1400360a3
xor edx, edx
mov ecx, edi
call fcn.14011f800
inc edi
cmp edi, dword [0x1401d1e58]
jl 0x140036090
mov ecx, dword [0x1401d1ae4]
add ecx, 4
movsxd rax, ecx
mov dword [0x140177184], ecx
lea rdi, [rax + rax*4]
shl rdi, 6
add rdi, qword [0x1401d1cc8]
mov dword [rdi], ecx
call fcn.14003e3d0
mov qword [rdi + 0x18], rax
test rax, rax
je 0x14003636d
lea rcx, [rdi + 8]
lea r8, [0x140043ae0]
mov r9, rdi
xor edx, edx
call fcn.140124680
test eax, eax
je 0x14003610c
lea rdx, str.Monitoring_thread__d_create_failed
mov r8d, r14d
xor ecx, ecx
call fcn.14003ce00
mov eax, 3
jmp 0x14003631e
cmp dword [0x1401d1ae4], esi
mov ebp, esi
lea r14, [0x140000000]
jle 0x1400361f0
nop dword [rax]
nop word [rax + rax]
movsxd rcx, ebp
mov edx, 0x28
lea rbx, [rcx + rcx*4]
shl rbx, 6
add rbx, qword [0x1401d1cc8]
mov dword [rbx], ebp
mov byte [rbx + 0x21], bpl
movzx eax, byte [r13 + rcx*2]
mov byte [rbx + 0x20], al
movsx rax, word [r13 + rcx*2]
mov rcx, r12
movzx eax, word [r14 + rax*4 + 0x1d1eb0]
mov word [rbx + 0x44], ax
call qword [sym.imp.MSVCR120.dll_calloc]
mov rdi, rax
test rax, rax
jne 0x14003617f
mov rdi, rsi
jmp 0x14003619c
lea rcx, [rax + 0x18]
xor edx, edx
mov qword [rax], rax
mov qword [rax + 8], rax
call fcn.140125020
lea rcx, [rdi + 0x20]
xor edx, edx
call fcn.140124440
mov qword [rbx + 0x18], rdi
test rdi, rdi
je 0x14003636d
lea rcx, [rbx + 0x128]
xor edx, edx
call fcn.140125020
lea rcx, [rbx + 0x130]
xor edx, edx
call fcn.140124440
lea rcx, [rbx + 8]
lea r8, [0x140033480]
mov r9, rbx
xor edx, edx
call fcn.140124680
test eax, eax
jne 0x14003635c
inc ebp
cmp ebp, dword [0x1401d1ae4]
jl 0x140036130
movsxd rax, dword [0x140177114]
mov r8d, dword [0x1401d1ae4]
lea rcx, [0x14013848c]
mov rax, qword [r14 + rax*8 + 0x139080]
cmp r8d, r12d
lea r9, [0x140137ab3]
cmovg r9, rcx
lea rdx, str._d_miner_thread_s_started__using__s_algorithm.
mov ecx, 3
mov qword [rsp + 0x20], rax
call fcn.14003ce00
movsxd rax, dword [0x1401f2bd0]
lea rcx, [rax + rax*4]
mov rax, qword [0x1401d1cc8]
xor edx, edx
shl rcx, 6
movups xmm0, xmmword [rcx + rax + 8]
lea rcx, [rsp + 0x40]
movaps xmmword [rsp + 0x40], xmm0
call fcn.140124a00
cmp dword [0x1401d1ae4], esi
mov dword [0x1401d1d50], r12d
jle 0x1400362ca
nop dword [rax]
movsxd rax, esi
lea rdi, [rax + rax*4]
mov rax, qword [0x1401d1cc8]
shl rdi, 6
lea rcx, [rax + 0x20]
add rcx, rdi
cmp dword [0x140177184], 0xffffffff
je 0x1400362aa
test rcx, rcx
je 0x1400362aa
add rcx, 0x110
call fcn.140124660
mov rax, qword [0x1401d1cc8]
movups xmm0, xmmword [rdi + rax + 8]
lea rcx, [rsp + 0x50]
xor edx, edx
movaps xmmword [rsp + 0x50], xmm0
call fcn.140124a00
inc esi
cmp esi, dword [0x1401d1ae4]
jl 0x140036270
movsxd rax, dword [0x140177184]
cmp eax, 0xffffffff
je 0x1400362fb
lea rdx, [rax + rax*4]
mov rax, qword [0x1401d1cc8]
lea rcx, [rsp + 0x30]
shl rdx, 6
movups xmm0, xmmword [rdx + rax + 8]
xor edx, edx
movaps xmmword [rsp + 0x30], xmm0
call fcn.140124a00
cmp dword [0x1401d1ae8], 0
je 0x140036315
lea rdx, str.workio_thread_dead__exiting.
mov ecx, 4
call fcn.14003ce00
xor ecx, ecx
call fcn.140030210
xor eax, eax
mov r13, qword [rsp + 0x1b8]
mov r14, qword [rsp + 0x1b0]
mov rdi, qword [rsp + 0x1c0]
mov rsi, qword [rsp + 0x200]
mov rcx, qword [rsp + 0x1a0]
xor rcx, rsp
call fcn.140129b50
add rsp, 0x1c8
pop r15
pop r12
pop rbp
pop rbx
ret
lea rdx, str.thread__d_create_failed
mov r8d, ebp
xor ecx, ecx
call fcn.14003ce00
mov eax, 3
jmp 0x14003631e