Function at 0x1400ac15c
Capabilities:
Get hostname

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x58
mov qword [rbp - 0x18], 0xfffffffffffffffe
mov r14, rcx
lea r12, [0x140106190]
mov r13d, 5
mov rcx, qword [0x140106190]
cmp rcx, r12
je 0x1400ac1b7
test byte [rcx + 0x1c], 1
je 0x1400ac1b7
cmp byte [rcx + 0x19], r13b
jb 0x1400ac1b7
lea edx, [r13 + 8]
mov r9, r14
lea r8, [0x1400e7768]
mov rcx, qword [rcx + 0x10]
call fcn.140003670
lea rbx, [r14 + 0x48]
xor r15d, r15d
cmp dword [rbx], r15d
je 0x1400ac1e0
mov edx, dword [rbx]
test edx, edx
je 0x1400ac1e0
mov rcx, qword [0x14010bdc0]
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
call qword [case.0x14006e230.0]
mov dword [rbx], r15d
mov qword [rbp + 0x58], r15
lea rax, [rbp + 0x58]
mov qword [rsp + 0x20], rax
lea r9, [0x1400e7758]
xor edx, edx
lea r8d, [rdx + 0x17]
lea rcx, [0x1400e7748]
call qword [sym.imp.ole32.dll_CoCreateInstance]
mov edi, eax
mov esi, 2
test eax, eax
jns 0x1400ac266
mov r10, qword [0x140106190]
cmp r10, r12
je 0x1400ac247
test byte [r10 + 0x1c], sil
je 0x1400ac247
cmp byte [r10 + 0x19], sil
jb 0x1400ac247
lea edx, [rsi + 0xc]
mov r9d, eax
lea r8, [0x1400e7768]
mov rcx, qword [r10 + 0x10]
call fcn.140003634
mov r10, qword [0x140106190]
mov rcx, qword [rbp + 0x58]
test rcx, rcx
je 0x1400ac6ab
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x14006e230.0]
jmp 0x1400ac6a4
mov r8, qword [rbp + 0x58]
lea rdx, [0x1400e7758]
mov rcx, rbx
call fcn.1400bdf04
mov edi, eax
test eax, eax
jns 0x1400ac28e
mov rcx, qword [rbp + 0x58]
test rcx, rcx
je 0x1400ac6a4
jmp 0x1400ac254
mov rcx, qword [0x140106190]
cmp rcx, r12
je 0x1400ac2bb
test byte [rcx + 0x1c], sil
je 0x1400ac2bb
cmp byte [rcx + 0x19], r13b
jb 0x1400ac2bb
mov edx, reloc.OLEAUT32.dll_SafeArrayDestroy
lea r8, [0x1400e7768]
mov rcx, qword [rcx + 0x10]
call fcn.140003574
mov rcx, r14
call fcn.1400ac808
mov edi, eax
test eax, eax
js 0x1400ac27f
mov rax, qword [0x140108fd0]
lea rcx, [0x140108fd0]
mov rax, qword [rax + 0x18]
call qword [case.0x14006e230.0]
lea rbx, [rax + 0x18]
mov qword [rbp + 0x60], rbx
mov r13d, reloc.OLEAUT32.dll_SafeArrayGetDim
mov dword [rbp + 0x48], r13d
lea ecx, [r13 - 0xf]
sub ecx, dword [rbx - 8]
mov eax, dword [rbx - 0xc]
sub eax, r13d
or eax, ecx
jge 0x1400ac314
mov edx, r13d
lea rcx, [rbp + 0x60]
call fcn.140004ef4
mov rbx, qword [rbp + 0x60]
cmp dword [rbx - 0xc], r13d
jl 0x1400ac6f8
mov dword [rbx - 0x10], r13d
mov word [rbx + 0x20], r15w
lea rdx, [rbp + 0x48]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetComputerNameW]
or r12, 0xffffffffffffffff
test eax, eax
je 0x1400ac3aa
mov rax, r12
inc rax
cmp word [rbx + rax*2], r15w
jne 0x1400ac33f
test eax, eax
js 0x1400ac39f
cmp eax, dword [rbx - 0xc]
jg 0x1400ac39f
mov dword [rbx - 0x10], eax
cdqe
mov word [rbx + rax*2], r15w
mov rcx, qword [0x140106190]
lea rdx, [0x140106190]
cmp rcx, rdx
je 0x1400ac411
test byte [rcx + 0x1c], sil
je 0x1400ac411
cmp byte [rcx + 0x19], 5
jb 0x1400ac411
mov edx, r13d
mov r9, rbx
lea r8, [0x1400e7768]
mov rcx, qword [rcx + 0x10]
call fcn.140003598
jmp 0x1400ac411
mov ecx, 0x80070057
call fcn.14000507c
int3
cmp dword [rbx - 0xc], r15d
jl 0x1400ac6ed
mov dword [rbx - 0x10], r15d
mov word [rbx], r15w
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx edi, ax
or edi, 0x80070000
test eax, eax
cmovle edi, eax
mov ecx, 0x80004005
test edi, edi
cmovns edi, ecx
mov rcx, qword [0x140106190]
lea rdx, [0x140106190]
cmp rcx, rdx
je 0x1400ac411
test byte [rcx + 0x1c], sil
je 0x1400ac411
cmp byte [rcx + 0x19], sil
jb 0x1400ac411
mov edx, SafeArrayUnlock
mov r9d, eax
lea r8, [0x1400e7768]
mov rcx, qword [rcx + 0x10]
call fcn.140003634
lea rcx, [rbp + 0x60]
call fcn.140034130
mov rax, qword [0x140108fd0]
lea rcx, [0x140108fd0]
mov rax, qword [rax + 0x18]
call qword [case.0x14006e230.0]
lea rbx, [rax + 0x18]
mov qword [rbp + 0x50], rbx
mov ecx, 1
sub ecx, dword [rbx - 8]
mov eax, dword [rbx - 0xc]
mov r13d, 0x105
sub eax, r13d
or eax, ecx
jge 0x1400ac462
mov edx, r13d
lea rcx, [rbp + 0x50]
call fcn.140004ef4
mov rbx, qword [rbp + 0x50]
cmp dword [rbx - 0xc], r13d
jl 0x1400ac6e2
mov dword [rbx - 0x10], r13d
mov word [rbx + 0x20a], r15w
mov r8d, r13d
mov rdx, rbx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
test eax, eax
je 0x1400ac54f
mov rax, r12
inc rax
cmp word [rbx + rax*2], r15w
jne 0x1400ac491
test eax, eax
js 0x1400ac544
cmp eax, dword [rbx - 0xc]
jg 0x1400ac544
mov dword [rbx - 0x10], eax
cdqe
mov word [rbx + rax*2], r15w
mov rax, r12
inc rax
cmp word [rbx + rax*2], r15w
jne 0x1400ac4b9
cdqe
lea rcx, [rbx + rax*2]
jmp 0x1400ac4d4
cmp word [rcx], 0x5c
je 0x1400ac4e2
sub rcx, rsi
cmp rcx, rbx
jne 0x1400ac4cb
cmp word [rcx], 0x5c
je 0x1400ac4e2
mov rcx, r15
test rcx, rcx
je 0x1400ac54f
sub rcx, rbx
sar rcx, 1
cmp ecx, r12d
je 0x1400ac54f
mov r8d, dword [rbx - 0x10]
sub r8d, ecx
dec r8d
lea rdx, [rbp - 0x20]
lea rcx, [rbp + 0x50]
call fcn.1400630f0
nop
mov rdx, rax
lea rcx, [rbp + 0x50]
call fcn.140004cb0
nop
mov rdx, qword [rbp - 0x20]
add rdx, 0xffffffffffffffe8
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
add eax, r12d
test eax, eax
jg 0x1400ac53e
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x14006e230.0]
mov rbx, qword [rbp + 0x50]
jmp 0x1400ac54f
mov ecx, 0x80070057
call fcn.14000507c
int3
mov rax, qword [0x140108fd0]
lea rcx, [0x140108fd0]
mov rax, qword [rax + 0x18]
call qword [case.0x14006e230.0]
add rax, 0x18
mov qword [rbp - 0x28], rax
mov r9, qword [rbp + 0x60]
mov r8, rbx
lea rdx, str._ls___ls_
lea rcx, [rbp - 0x28]
call fcn.140008d6c
mov rbx, qword [rbp - 0x28]
mov rcx, qword [0x140106190]
lea rax, [0x140106190]
mov r13d, 5
cmp rcx, rax
je 0x1400ac5c6
test byte [rcx + 0x1c], sil
je 0x1400ac5c6
cmp byte [rcx + 0x19], r13b
jb 0x1400ac5c6
lea edx, [r13 + 0xd]
mov r9, rbx
lea r8, [0x1400e7768]
mov rcx, qword [rcx + 0x10]
call fcn.140003598
mov rcx, qword [r14 + 0x80]
cmp rbx, rcx
je 0x1400ac604
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
test rbx, rbx
je 0x1400ac5fd
mov rcx, rbx
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov qword [r14 + 0x80], rax
test rax, rax
jne 0x1400ac604
mov ecx, 0x8007000e
call fcn.14000507c
int3
mov qword [r14 + 0x80], r15
mov eax, 0x8007000e
cmp qword [r14 + 0x80], r15
cmove edi, eax
lea rdx, [rbx - 0x18]
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
add eax, r12d
test eax, eax
jg 0x1400ac637
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x14006e230.0]
nop
mov rdx, qword [rbp + 0x50]
add rdx, 0xffffffffffffffe8
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
add eax, r12d
test eax, eax
jg 0x1400ac65f
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x14006e230.0]
nop
mov rdx, qword [rbp + 0x60]
add rdx, 0xffffffffffffffe8
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
add eax, r12d
test eax, eax
jg 0x1400ac687
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x14006e230.0]
nop
mov rcx, qword [rbp + 0x58]
test rcx, rcx
je 0x1400ac69d
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x14006e230.0]
lea r12, [0x140106190]
mov r10, qword [0x140106190]
cmp r10, r12
je 0x1400ac6de
test byte [r10 + 0x1c], 1
je 0x1400ac6de
movzx eax, byte [r10 + 0x19]
test edi, edi
cmovns esi, r13d
cmp eax, esi
jl 0x1400ac6de
mov edx, SafeArrayAccessData
mov r9d, edi
lea r8, [0x1400e7768]
mov rcx, qword [r10 + 0x10]
call fcn.140003634
mov eax, edi
jmp 0x1400ac703
mov ecx, 0x80070057
call fcn.14000507c
nop
mov ecx, 0x80070057
call fcn.14000507c
int3
mov ecx, 0x80070057
call fcn.14000507c
nop
add rsp, 0x58
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret