Function at 0x1400f3376
Capabilities:
Get hostname

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x298
movaps xmmword [rsp + 0x280], xmm6
mov rsi, rcx
mov rax, qword [0x140137040]
xor rax, rsp
mov qword [rsp + 0x278], rax
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x30], rax
mov qword [rcx + 0x10], rax
movaps xmm6, xmmword [0x14010db00]
movups xmmword [rcx], xmm6
cmp byte [rdx + 0x17], 0
js 0x1400f341e
mov rax, qword [rdx + 0x10]
mov qword [rsi + 0x10], rax
movups xmm0, xmmword [rdx]
movups xmmword [rsi], xmm0
movsx rax, byte [rsi + 0x17]
test rax, rax
mov rcx, qword [rsi + 8]
mov rdx, rax
cmovs rdx, rcx
test rdx, rdx
jne 0x1400f3432
mov rcx, qword [rsp + 0x278]
xor rcx, rsp
call fcn.140079050
mov rax, rsi
movaps xmm6, xmmword [rsp + 0x280]
add rsp, 0x298
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rax, qword [rdx]
mov r8, qword [rdx + 8]
mov rcx, rsi
mov rdx, rax
call fcn.14002fe10
jmp 0x1400f33d7
cmp rdx, 1
je 0x1400f34a8
mov edx, eax
mov r8, rsi
test al, al
jns 0x1400f3444
mov r8, qword [rsi]
cmp word [r8], 0x22
jne 0x1400f3463
mov rcx, rsi
call fcn.1400e0fd6
cmp word [rax], 0x22
je 0x1400f3490
mov dl, byte [rsi + 0x17]
mov rcx, qword [rsi + 8]
movzx eax, dl
test dl, dl
cmovs rax, rcx
test rax, rax
je 0x1400f3a73
mov rax, rsi
test dl, dl
jns 0x1400f347c
mov rax, qword [rsi]
cmp word [rax], 0x27
jne 0x1400f34a8
mov rcx, rsi
call fcn.1400e0fd6
cmp word [rax], 0x27
jne 0x1400f34a8
mov rcx, rsi
call fcn.1400e13e4
mov r8d, 1
mov rcx, rsi
xor edx, edx
call fcn.14003056c
lea rcx, str.shell32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov rdi, rax
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x38], rax
test rdi, rdi
je 0x1400f34e1
lea rdx, [0x140123982]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x40], rdi
mov edi, 8
lea r14, str._windows
lea r15, [rsp + 0x70]
lea r12, [rsp + 0x50]
jmp 0x1400f353c
mov edx, eax
test dl, dl
cmovs rax, rcx
cmovns r9, r12
mov qword [rsp + 0x20], rax
mov rcx, rsi
mov rdx, r13
mov r8, rbp
call fcn.1400e1f00
cmp byte [rsp + 0x67], 0
jns 0x1400f352e
mov rcx, qword [rsp + 0x50]
call fcn.140077d00
add rdi, 0x10
cmp rdi, 0x78
je 0x1400f3663
mov rbx, qword [rdi + r14 - 8]
mov rcx, rsi
mov rdx, rbx
xor r8d, r8d
call fcn.140062d5c
cmp rax, 0xffffffffffffffff
je 0x1400f352e
mov r13, rax
mov rcx, rbx
call fcn.1400973f4
mov rbp, rax
mov r8d, 0x208
mov rcx, r15
mov dl, 0xaa
call fcn.1400ae900
mov r8d, dword [rdi + r14]
xor ecx, ecx
mov rdx, r15
xor r9d, r9d
mov rax, qword [rsp + 0x38]
call qword [0x14012a4d0]
test eax, eax
jne 0x1400f3595
mov word [rsp + 0x70], 0
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x60], rax
movaps xmmword [rsp + 0x50], xmm6
mov rcx, r15
call fcn.1400973f4
mov rcx, r12
mov rdx, r15
mov r8, rax
call fcn.14002fd1e
movsx rax, byte [rsp + 0x67]
test rax, rax
mov r9, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x58]
mov rdx, rax
cmovs rdx, rcx
test rdx, rdx
je 0x1400f34fe
test al, al
mov r8, r12
cmovs r8, r9
cmp word [r8 + rdx*2 - 2], 0x5c
jne 0x1400f34fe
movsx r10, byte [rsi + 0x17]
mov rbx, r10
test r10, r10
jns 0x1400f3609
mov rbx, qword [rsi + 8]
mov r11, rbp
add r11, r13
cmp rbx, r11
jbe 0x1400f34fe
mov rbx, rsi
test r10b, r10b
jns 0x1400f3623
mov rbx, qword [rsi]
cmp word [rbx + r11*2], 0x5c
jne 0x1400f34fe
lea rcx, [rdx - 1]
test al, al
js 0x1400f3640
and cl, 0x7f
mov byte [rsp + 0x67], cl
jmp 0x1400f3645
mov qword [rsp + 0x58], rcx
mov word [r8 + rdx*2 - 2], 0
mov dl, byte [rsp + 0x67]
mov r9, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x58]
movzx eax, dl
jmp 0x1400f3500
lea rcx, str.advapi32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov r14, rax
movabs rbp, 0xaaaaaaaaaaaaaaaa
test rax, rax
je 0x1400f3695
lea rdx, [0x140123a2a]
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rbp, rax
lea rdx, str._user_name
mov rcx, rsi
xor r8d, r8d
call fcn.140062d5c
cmp rax, 0xffffffffffffffff
mov rdi, qword [rsp + 0x40]
je 0x1400f376d
mov r12, rax
lea rbx, [rsp + 0x50]
mov dword [rbx], 0
xor ecx, ecx
mov rdx, rbx
mov rax, rbp
call qword [0x14012a4d0]
mov ecx, dword [rbx]
test rcx, rcx
je 0x1400f376d
add rcx, rcx
call fcn.140077d3c
mov r13, rax
lea rdx, [rsp + 0x50]
mov rcx, rax
mov rax, rbp
call qword [0x14012a4d0]
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x80], rax
movaps xmmword [rsp + 0x70], xmm6
mov rcx, r15
mov rdx, r13
call fcn.140025308
movsx rax, byte [rsp + 0x87]
test rax, rax
jns 0x1400f3733
mov rax, qword [rsp + 0x78]
mov r15, qword [rsp + 0x70]
mov qword [rsp + 0x20], rax
mov r8d, 0xc
mov rcx, rsi
mov rdx, r12
mov r9, r15
call fcn.1400e1f00
cmp byte [rsp + 0x87], 0
jns 0x1400f3760
mov rcx, qword [rsp + 0x70]
call fcn.140077d00
test r13, r13
je 0x1400f376d
mov rcx, r13
call fcn.140077d44
lea rdx, str._machine_name
mov rcx, rsi
xor r8d, r8d
call fcn.140062d5c
cmp rax, 0xffffffffffffffff
je 0x1400f383f
mov r15, rax
lea rbx, [rsp + 0x50]
mov dword [rbx], 0
mov ecx, 5
xor edx, edx
mov r8, rbx
call qword [sym.imp.KERNEL32.dll_GetComputerNameExW]
mov ecx, dword [rbx]
test rcx, rcx
je 0x1400f383f
add rcx, rcx
call fcn.140077d3c
mov r12, rax
lea r8, [rsp + 0x50]
mov ecx, 5
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_GetComputerNameExW]
movabs rax, 0xaaaaaaaaaaaaaaaa
lea rbx, [rsp + 0x70]
mov qword [rbx + 0x10], rax
movaps xmmword [rbx], xmm6
mov rcx, rbx
mov rdx, r12
call fcn.140025308
movsx rax, byte [rbx + 0x17]
test rax, rax
jns 0x1400f3805
mov rax, qword [rsp + 0x78]
mov rbx, qword [rsp + 0x70]
mov qword [rsp + 0x20], rax
mov r8d, 0xf
mov rcx, rsi
mov rdx, r15
mov r9, rbx
call fcn.1400e1f00
cmp byte [rsp + 0x87], 0
jns 0x1400f3832
mov rcx, qword [rsp + 0x70]
call fcn.140077d00
test r12, r12
je 0x1400f383f
mov rcx, r12
call fcn.140077d44
lea rcx, str.wtsapi32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov r15, rax
movabs r13, 0xaaaaaaaaaaaaaaaa
test rax, rax
je 0x1400f3871
lea rdx, [0x140123a9a]
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov r13, rax
lea rcx, str.wtsapi32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov r12, rax
test rax, rax
je 0x1400f389b
lea rdx, [0x140123ad2]
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rsp + 0x30], rax
lea rdx, str._client_name
mov rcx, rsi
xor r8d, r8d
call fcn.140062d5c
cmp rax, 0xffffffffffffffff
je 0x1400f3964
mov rbp, rax
lea r9, [rsp + 0x50]
mov qword [r9], 0
lea rax, [rsp + 0x4c]
mov dword [rax], 0
mov qword [rsp + 0x20], rax
xor ecx, ecx
mov edx, 0xffffffff
mov r8d, 0xa
mov rax, r13
call qword [0x14012a4d0]
test eax, eax
je 0x1400f3964
movabs rax, 0xaaaaaaaaaaaaaaaa
lea rbx, [rsp + 0x70]
mov qword [rbx + 0x10], rax
movaps xmmword [rbx], xmm6
mov rdx, qword [rsp + 0x50]
mov rcx, rbx
call fcn.140025308
movsx rax, byte [rbx + 0x17]
test rax, rax
jns 0x1400f3927
mov rax, qword [rsp + 0x78]
mov rbx, qword [rsp + 0x70]
mov qword [rsp + 0x20], rax
mov r8d, 0xe
mov rcx, rsi
mov rdx, rbp
mov r9, rbx
call fcn.1400e1f00
mov rcx, qword [rsp + 0x50]
mov rax, qword [rsp + 0x30]
call qword [0x14012a4d0]
cmp byte [rsp + 0x87], 0
jns 0x1400f3964
mov rcx, qword [rsp + 0x70]
call fcn.140077d00
lea rdx, str._session_name
mov rcx, rsi
xor r8d, r8d
call fcn.140062d5c
cmp rax, 0xffffffffffffffff
je 0x1400f39b5
mov rbp, rax
lea r9, [rsp + 0x50]
mov qword [r9], 0
lea rax, [rsp + 0x4c]
mov dword [rax], 0
mov qword [rsp + 0x20], rax
xor ecx, ecx
mov edx, 0xffffffff
mov r8d, 6
mov rax, r13
call qword [0x14012a4d0]
test eax, eax
jne 0x1400f39f6
test r12, r12
je 0x1400f39c3
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
test r15, r15
je 0x1400f39d1
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
test r14, r14
je 0x1400f39df
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
test rdi, rdi
je 0x1400f33ef
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
jmp 0x1400f33ef
movabs rax, 0xaaaaaaaaaaaaaaaa
lea rbx, [rsp + 0x70]
mov qword [rbx + 0x10], rax
movaps xmmword [rbx], xmm6
mov rdx, qword [rsp + 0x50]
mov rcx, rbx
call fcn.140025308
movsx rax, byte [rbx + 0x17]
test rax, rax
jns 0x1400f3a2d
mov rax, qword [rsp + 0x78]
mov rbx, qword [rsp + 0x70]
mov qword [rsp + 0x20], rax
mov r8d, 0xf
mov rcx, rsi
mov rdx, rbp
mov r9, rbx
call fcn.1400e1f00
mov rcx, qword [rsp + 0x50]
mov rax, qword [rsp + 0x30]
call qword [0x14012a4d0]
cmp byte [rsp + 0x87], 0
jns 0x1400f39b5
mov rcx, qword [rsp + 0x70]
call fcn.140077d00
jmp 0x1400f39b5
lea rcx, [0x140110299]
lea rdx, str....._third_partylibc_srcinclude_string:1329:_assertion__empty___failed:_string::front__:_string_is_empty_n
call fcn.1400bde54
int3