Function at 0x140027840
Capabilities:
Write file on windows

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x498]
sub rsp, 0x598
mov qword [rsp + 0x28], 0xfffffffffffffffe
mov rax, qword [0x140061740]
xor rax, rsp
mov qword [rbp + 0x480], rax
mov r15, r9
mov r13, r8
movsxd r12, edx
test rcx, rcx
je 0x140027d3c
cmp dword [rcx], 0
jne 0x140027d3c
add rcx, 0x10
lea rdx, str.params
call fcn.1400154c0
mov rcx, rax
test rax, rax
je 0x140027d3c
cmp dword [rax], 1
jne 0x140027d3c
mov rdx, qword [rax + 0x18]
cmp edx, 2
jl 0x140027d3c
xor r9d, r9d
test rdx, rdx
je 0x1400278e3
mov rax, qword [rax + 0x20]
mov r8, qword [rax]
test r8, r8
je 0x1400278e3
cmp dword [r8], 2
jne 0x1400278e3
mov r14, qword [r8 + 0x10]
jmp 0x1400278e6
mov r14, r9
cmp rdx, 1
jb 0x140027906
jbe 0x140027906
mov rax, qword [rcx + 0x20]
mov rcx, qword [rax + 8]
test rcx, rcx
je 0x140027906
cmp dword [rcx], 2
jne 0x140027906
mov rcx, qword [rcx + 0x10]
jmp 0x140027909
mov rcx, r9
test r14, r14
je 0x140027d3c
test rcx, rcx
je 0x140027d3c
or rdi, 0xffffffffffffffff
mov rax, rdi
inc rax
cmp byte [rcx + rax], r9b
jne 0x140027922
cdq
sub eax, edx
sar eax, 1
movsxd rsi, eax
call fcn.140027780
mov rbx, rax
mov r8d, 0x12c
lea rdx, [rbp + 0x350]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea rax, [rbp + 0x350]
mov rcx, rdi
nop word [rax + rax]
inc rcx
cmp byte [rax + rcx], 0
jne 0x140027960
movsxd rax, ecx
test ecx, ecx
jle 0x140027984
cmp byte [rbp + rax + 0x350], 0x5c
je 0x140027984
dec ecx
dec rax
test rax, rax
jg 0x140027970
lea eax, [rcx + 1]
movsxd rcx, eax
cmp rcx, 0x12c
jae 0x140027d36
mov byte [rbp + rcx + 0x350], 0
lea rcx, [rbp + 0x350]
dec rcx
nop dword [rax]
lea rcx, [rcx + 1]
cmp byte [rcx], 0
jne 0x1400279b0
xor edx, edx
nop dword [rax + rax]
movzx eax, byte [r14 + rdx]
mov byte [rcx + rdx], al
lea rdx, [rdx + 1]
test al, al
jne 0x1400279c0
xor eax, eax
mov qword [rbp + 0x338], rax
mov dword [rbp + 0x330], eax
mov word [rsp + 0x30], ax
lea rax, [rbp + 0x350]
mov qword [rsp + 0x20], rax
mov byte [rbp + 0x340], 0
xor eax, eax
mov dword [rbp + 0x341], eax
mov byte [rbp + 0x345], al
lea rcx, [rbp + 0x340]
dec rcx
nop
lea rcx, [rcx + 1]
cmp byte [rcx], al
jne 0x140027a10
movzx eax, word [0x1400570cc]
mov word [rcx], ax
lea rcx, [rbp + 0x340]
dec rcx
nop dword [rax]
lea rcx, [rcx + 1]
cmp byte [rcx], 0
jne 0x140027a30
movzx eax, word [0x140058020]
mov word [rcx], ax
lea rcx, [rbp + 0x340]
dec rcx
nop dword [rax]
lea rcx, [rcx + 1]
cmp byte [rcx], 0
jne 0x140027a50
movzx eax, word [0x14005a884]
mov word [rcx], ax
lea rdx, [rbp + 0x340]
lea rcx, [rbp + 0x350]
call fcn.1400306b8
mov qword [rbp + 0x338], rax
test rax, rax
je 0x140027aa7
xor r9d, r9d
mov r8d, 0x200
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x30]
call fcn.1400349ac
mov ecx, 2
mov dword [rbp + 0x330], ecx
jmp 0x140027b00
call fcn.1400310d4
cmp dword [rax], 0
je 0x140027afa
lea r9, [rbp + 0x350]
lea r8, str.Cannot_create_file__s_n
mov edx, 3
xor ecx, ecx
call fcn.14000f050
mov rcx, rbx
call fcn.14002ed70
nop
mov rcx, qword [rbp + 0x338]
test rcx, rcx
je 0x140027d4d
call fcn.140031884
mov rcx, qword [rbp + 0x338]
call fcn.140030960
jmp 0x140027d4d
mov ecx, dword [rbp + 0x330]
mov rax, qword [rbp + 0x338]
test rax, rax
je 0x140027b64
shr ecx, 1
test cl, 1
je 0x140027b3d
mov r8, rsi
mov r9, rax
mov edx, 1
mov rcx, rbx
call fcn.140030854
cmp eax, esi
je 0x140027b36
mov rcx, qword [rbp + 0x338]
call fcn.1400324f0
mov rax, qword [rbp + 0x338]
test rax, rax
je 0x140027b64
mov rcx, rax
call fcn.140031884
mov rcx, qword [rbp + 0x338]
call fcn.140030960
xor eax, eax
mov qword [rbp + 0x338], rax
mov word [rsp + 0x30], ax
mov rcx, rbx
call fcn.14002ed70
mov r8, r14
lea rdx, str.Remote_management:_file__s_was_downloaded_n
xor ecx, ecx
call fcn.14000ee60
call fcn.140017200
mov rbx, rax
mov rcx, r12
call fcn.1400176e0
mov r8, rax
lea rdx, [0x1400598b4]
mov rcx, rbx
call fcn.1400172f0
mov edx, 5
lea rcx, str.error
call fcn.140017150
test eax, eax
je 0x140027c0b
lea rsi, [0x140063868]
test rbx, rbx
je 0x140027bed
cmp dword [rbx], 0
jne 0x140027bed
cmp rbx, rsi
je 0x140027bed
mov r8, qword [rbx + 0x38]
lea rax, [r8 + 1]
mov qword [rbx + 0x38], rax
lea rcx, [rbx + 0x10]
mov r9, rsi
lea rdx, str.error
call fcn.140015340
test eax, eax
je 0x140027c30
mov rax, qword [0x140063870]
cmp rax, 0xffffffffffffffff
je 0x140027c30
dec rax
mov qword [0x140063870], rax
jne 0x140027c30
mov rcx, rsi
jmp 0x140027c2b
mov rax, qword [0x140063870]
cmp rax, 0xffffffffffffffff
je 0x140027c30
dec rax
mov qword [0x140063870], rax
jne 0x140027c30
lea rcx, [0x140063868]
call fcn.140017780
mov edx, 6
lea rcx, str.result
call fcn.140017150
test eax, eax
je 0x140027c9c
lea rsi, [0x140063878]
test rbx, rbx
je 0x140027c7e
cmp dword [rbx], 0
jne 0x140027c7e
cmp rbx, rsi
je 0x140027c7e
mov r8, qword [rbx + 0x38]
lea rax, [r8 + 1]
mov qword [rbx + 0x38], rax
lea rcx, [rbx + 0x10]
mov r9, rsi
lea rdx, str.result
call fcn.140015340
test eax, eax
je 0x140027cc1
mov rax, qword [0x140063880]
cmp rax, 0xffffffffffffffff
je 0x140027cc1
dec rax
mov qword [0x140063880], rax
jne 0x140027cc1
mov rcx, rsi
jmp 0x140027cbc
mov rax, qword [0x140063880]
cmp rax, 0xffffffffffffffff
je 0x140027cc1
dec rax
mov qword [0x140063880], rax
jne 0x140027cc1
lea rcx, [0x140063878]
call fcn.140017780
mov rcx, rbx
call fcn.140014d20
mov rsi, rax
nop dword [rax]
inc rdi
cmp byte [rax + rdi], 0
jne 0x140027cd0
movsxd r8, edi
movsxd rcx, dword [r15]
add rcx, r13
mov rdx, rax
call fcn.14002e480
add dword [r15], edi
test rbx, rbx
je 0x140027d0d
mov rax, qword [rbx + 8]
cmp rax, 0xffffffffffffffff
je 0x140027d0d
dec rax
mov qword [rbx + 8], rax
jne 0x140027d0d
mov rcx, rbx
call fcn.140017780
mov rcx, rsi
call fcn.14002ed70
lea rdx, str.epools.txt
mov rcx, r14
call fcn.1400356c0
test eax, eax
jne 0x140027ad4
call fcn.14001cc50
jmp 0x140027ad4
call fcn.14002f174
int3
lea rdx, str.srv:_wrong_miner_file:params_format_n
mov ecx, 2
call fcn.14000ee60
mov rcx, qword [rbp + 0x480]
xor rcx, rsp
call fcn.14002e450
add rsp, 0x598
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret