Function at 0x140059bc0
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 [0x14029a038]
xor rax, rsp
mov qword [rsp + 0x278], rax
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x28], rax
mov qword [rcx + 0x10], rax
movaps xmm6, xmmword [0x140270690]
movups xmmword [rcx], xmm6
cmp byte [rdx + 0x17], 0
js 0x14005a407
mov rax, qword [rdx + 0x10]
mov qword [rsi + 0x10], rax
movups xmm0, xmmword [rdx]
movups xmmword [rsi], xmm0
movzx ecx, byte [rsi + 0x17]
mov eax, ecx
and eax, 0x7f
test cl, cl
mov rdx, qword [rsi + 8]
cmovs rax, rdx
test rax, rax
je 0x14005a232
mov r8d, ecx
and r8d, 0x7e
test cl, cl
cmovs r8, rdx
cmp r8, 2
jb 0x140059c8b
test cl, cl
js 0x14005a808
test rcx, rcx
je 0x14005a832
movzx edx, word [rsi]
cmp edx, 0x22
je 0x140059c7f
cmp edx, 0x27
jne 0x140059c8b
cmp word [rsi + rcx*2 - 2], 0x27
jne 0x140059c8b
jmp 0x14005a41e
cmp word [rsi + rcx*2 - 2], 0x22
je 0x14005a41e
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 0x140059cc4
lea rdx, [0x14027858a]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x40], rdi
xor r12d, r12d
lea rdi, str._windows
lea rax, [rsp + 0x70]
mov qword [rsp + 0x30], rax
mov rbx, r12
shl rbx, 4
mov rbp, qword [rbx + rdi]
test rbp, rbp
je 0x14005a7fc
mov rcx, rbp
call fcn.14017bd98
movzx edx, byte [rsi + 0x17]
mov rcx, rsi
test dl, dl
jns 0x140059d07
mov rcx, qword [rsi]
test rax, rax
je 0x140059dc7
test dl, dl
jns 0x140059d1a
mov rdx, qword [rsi + 8]
jmp 0x140059d1d
and edx, 0x7f
cmp rdx, rax
jge 0x140059d30
inc r12
cmp r12, 7
jne 0x140059cdd
jmp 0x140059f55
lea r8, [rcx + rdx*2]
movzx r9d, word [rbp]
lea r10, [rcx + rdx*2]
add r10, 0xfffffffffffffffe
mov r11, rcx
mov r14, rdx
sub r14, rax
inc r14
je 0x140059d22
inc rdx
xor r14d, r14d
cmp word [r11 + r14], r9w
je 0x140059d6a
add r14, 2
dec rdx
cmp rax, rdx
jne 0x140059d55
jmp 0x140059d22
mov r13, r11
add r13, r14
je 0x140059d22
xor edx, edx
movzx r15d, word [r13 + rdx*2]
cmp r15w, word [rbp + rdx*2]
jne 0x140059d8c
inc rdx
cmp rax, rdx
jne 0x140059d74
jmp 0x140059da9
mov rdx, r10
sub rdx, r11
add r11, r14
add r11, 2
sub rdx, r14
sar rdx, 1
cmp rdx, rax
jge 0x140059d44
jmp 0x140059d22
cmp r13, r8
je 0x140059d22
sub r13, rcx
mov rax, r13
add rax, 2
je 0x140059d22
sar r13, 1
jmp 0x140059dca
xor r13d, r13d
mov rcx, rbp
call fcn.14017bd98
mov rbp, rax
mov r8d, 0x208
lea r14, [rsp + 0x70]
mov rcx, r14
mov dl, 0xaa
call fcn.1401808d0
mov r8d, dword [rbx + rdi + 8]
xor ecx, ecx
mov rdx, r14
xor r9d, r9d
mov rax, qword [rsp + 0x38]
call qword [case.0x1401e7f70.0]
test eax, eax
jne 0x140059e0d
mov word [rsp + 0x70], 0
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x60], rax
movaps xmmword [rsp + 0x50], xmm6
lea rcx, [rsp + 0x50]
lea rdx, [rsp + 0x70]
call fcn.1401bc8c0
mov al, byte [rsp + 0x67]
movzx r9d, al
mov ecx, r9d
and ecx, 0x7f
test r9b, r9b
mov rdx, qword [rsp + 0x58]
mov r8, rcx
cmovs r8, rdx
test r8, r8
je 0x140059f04
test al, al
jns 0x140059f45
test rdx, rdx
je 0x14005a805
mov r10, qword [rsp + 0x50]
mov r9, rdx
cmp word [r10 + r9*2 - 2], 0x5c
jne 0x140059f04
movzx r10d, byte [rsi + 0x17]
mov ebx, r10d
and ebx, 0x7f
test r10b, r10b
mov r11, qword [rsi + 8]
cmovs rbx, r11
mov r9, rbp
add r9, r13
cmp rbx, r9
jbe 0x140059f04
test r10b, r10b
jns 0x140059eb0
cmp r11, r9
jb 0x14005a7ff
mov r11, qword [rsi]
jmp 0x140059ebc
mov r11, rsi
cmp r9, r10
ja 0x14005a7ff
cmp word [r11 + r9*2], 0x5c
jne 0x140059f04
lea rdx, [r8 - 1]
lea rcx, [rsp + 0x50]
test al, al
jns 0x140059ed6
mov rcx, qword [rsp + 0x50]
jns 0x140059edf
mov qword [rsp + 0x58], rdx
jmp 0x140059eed
cmp r8, 0xc
jae 0x14005a802
mov byte [rsp + 0x67], dl
mov word [rcx + r8*2 - 2], 0
movzx eax, byte [rsp + 0x67]
mov rdx, qword [rsp + 0x58]
mov ecx, eax
and ecx, 0x7f
test al, al
cmovs rcx, rdx
mov r9, qword [rsp + 0x50]
lea rax, [rsp + 0x50]
cmovns r9, rax
mov qword [rsp + 0x20], rcx
mov rcx, rsi
mov rdx, r13
mov r8, rbp
call fcn.1401dbe90
cmp byte [rsp + 0x67], 0
jns 0x140059d22
mov rcx, qword [rsp + 0x50]
call fcn.14017b254
jmp 0x140059d22
je 0x14005a805
lea r10, [rsp + 0x50]
jmp 0x140059e6f
lea rcx, str.advapi32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov r14, rax
test rax, rax
je 0x140059f7f
lea rdx, [0x140278622]
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov r12, rax
jmp 0x140059f89
movabs r12, 0xaaaaaaaaaaaaaaaa
movzx edx, byte [rsi + 0x17]
mov ecx, edx
and ecx, 0x7f
test dl, dl
mov rax, qword [rsi]
mov r8, qword [rsi + 8]
mov r9, rsi
cmovs r9, rax
mov r13, rcx
cmovs r13, r8
cmp r13, 0xc
jge 0x140059ff4
test dl, dl
cmovns rax, rsi
cmovs rcx, r8
cmp rcx, 0xf
jge 0x14005a0a4
lea rcx, str.wtsapi32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov r15, rax
test rax, rax
je 0x14005a183
lea rdx, [0x14027864c]
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov r13, rax
jmp 0x14005a18d
lea r10, [r9 + r13*2]
lea r11, [r9 + r13*2]
add r11, 0xfffffffffffffffe
add r13, r13
mov rdi, r9
shr r13, 1
add r13, 0xfffffffffffffff5
xor ebx, ebx
cmp word [rdi + rbx], 0x24
je 0x14005a021
add rbx, 2
dec r13
jne 0x14005a00f
jmp 0x140059faf
mov r13, rdi
add r13, rbx
je 0x140059faf
cmp word [rdi + rbx + 2], 0x7b
jne 0x14005a085
cmp word [rdi + rbx + 4], 0x75
jne 0x14005a085
cmp word [rdi + rbx + 6], 0x73
jne 0x14005a085
cmp word [rdi + rbx + 8], 0x65
jne 0x14005a085
cmp word [rdi + rbx + 0xa], 0x72
jne 0x14005a085
cmp word [rdi + rbx + 0xc], 0x5f
jne 0x14005a085
cmp word [rdi + rbx + 0xe], 0x6e
jne 0x14005a085
cmp word [rdi + rbx + 0x10], 0x61
jne 0x14005a085
cmp word [rdi + rbx + 0x12], 0x6d
jne 0x14005a085
cmp word [rdi + rbx + 0x14], 0x65
jne 0x14005a085
cmp word [rdi + rbx + 0x16], 0x7d
je 0x14005a44c
mov r13, r11
sub r13, rdi
add rdi, rbx
add rdi, 2
sub r13, rbx
cmp r13, 0x18
jge 0x14005a006
jmp 0x140059faf
lea rdx, [rax + rcx*2]
lea r8, [rax + rcx*2]
add r8, 0xfffffffffffffffe
add rcx, rcx
mov r9, rax
shr rcx, 1
add rcx, 0xfffffffffffffff2
xor r10d, r10d
cmp word [r9 + r10], 0x24
je 0x14005a0d6
add r10, 2
dec rcx
jne 0x14005a0c0
jmp 0x140059fc3
mov r15, r9
add r15, r10
je 0x140059fc3
cmp word [r9 + r10 + 2], 0x7b
jne 0x14005a164
cmp word [r9 + r10 + 4], 0x6d
jne 0x14005a164
cmp word [r9 + r10 + 6], 0x61
jne 0x14005a164
cmp word [r9 + r10 + 8], 0x63
jne 0x14005a164
cmp word [r9 + r10 + 0xa], 0x68
jne 0x14005a164
cmp word [r9 + r10 + 0xc], 0x69
jne 0x14005a164
cmp word [r9 + r10 + 0xe], 0x6e
jne 0x14005a164
cmp word [r9 + r10 + 0x10], 0x65
jne 0x14005a164
cmp word [r9 + r10 + 0x12], 0x5f
jne 0x14005a164
cmp word [r9 + r10 + 0x14], 0x6e
jne 0x14005a164
cmp word [r9 + r10 + 0x16], 0x61
jne 0x14005a164
cmp word [r9 + r10 + 0x18], 0x6d
jne 0x14005a164
cmp word [r9 + r10 + 0x1a], 0x65
jne 0x14005a164
cmp word [r9 + r10 + 0x1c], 0x7d
je 0x14005a508
mov rcx, r8
sub rcx, r9
add r9, r10
add r9, 2
sub rcx, r10
cmp rcx, 0x1e
jge 0x14005a0b6
jmp 0x140059fc3
movabs r13, 0xaaaaaaaaaaaaaaaa
lea rcx, str.wtsapi32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov r12, rax
test rax, rax
je 0x14005a1b7
lea rdx, [0x140278684]
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rsp + 0x28], rax
movzx edx, byte [rsi + 0x17]
mov ecx, edx
and ecx, 0x7f
test dl, dl
mov rax, qword [rsi]
mov r8, qword [rsi + 8]
mov r9, rsi
cmovs r9, rax
mov rbp, rcx
cmovs rbp, r8
cmp rbp, 0xe
jge 0x14005a261
test dl, dl
cmovns rax, rsi
cmovs rcx, r8
cmp rcx, 0xf
jge 0x14005a328
test r12, r12
je 0x14005a203
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
test r15, r15
je 0x14005a211
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
test r14, r14
mov rdi, qword [rsp + 0x40]
je 0x14005a224
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
test rdi, rdi
je 0x14005a232
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov rcx, qword [rsp + 0x278]
xor rcx, rsp
call fcn.14017e7b0
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
lea r10, [r9 + rbp*2]
lea r11, [r9 + rbp*2]
add r11, 0xfffffffffffffffe
add rbp, rbp
mov rdi, r9
shr rbp, 1
add rbp, 0xfffffffffffffff3
xor ebx, ebx
cmp word [rdi + rbx], 0x24
je 0x14005a291
add rbx, 2
dec rbp
jne 0x14005a27c
jmp 0x14005a1e1
mov rbp, rdi
add rbp, rbx
je 0x14005a1e1
cmp word [rdi + rbx + 2], 0x7b
jne 0x14005a309
cmp word [rdi + rbx + 4], 0x63
jne 0x14005a309
cmp word [rdi + rbx + 6], 0x6c
jne 0x14005a309
cmp word [rdi + rbx + 8], 0x69
jne 0x14005a309
cmp word [rdi + rbx + 0xa], 0x65
jne 0x14005a309
cmp word [rdi + rbx + 0xc], 0x6e
jne 0x14005a309
cmp word [rdi + rbx + 0xe], 0x74
jne 0x14005a309
cmp word [rdi + rbx + 0x10], 0x5f
jne 0x14005a309
cmp word [rdi + rbx + 0x12], 0x6e
jne 0x14005a309
cmp word [rdi + rbx + 0x14], 0x61
jne 0x14005a309
cmp word [rdi + rbx + 0x16], 0x6d
jne 0x14005a309
cmp word [rdi + rbx + 0x18], 0x65
jne 0x14005a309
cmp word [rdi + rbx + 0x1a], 0x7d
je 0x14005a4a0
mov rbp, r11
sub rbp, rdi
add rdi, rbx
add rdi, 2
sub rbp, rbx
cmp rbp, 0x1c
jge 0x14005a273
jmp 0x14005a1e1
lea rdx, [rax + rcx*2]
lea r8, [rax + rcx*2]
add r8, 0xfffffffffffffffe
add rcx, rcx
mov r9, rax
shr rcx, 1
add rcx, 0xfffffffffffffff2
xor r10d, r10d
cmp word [r9 + r10], 0x24
je 0x14005a35a
add r10, 2
dec rcx
jne 0x14005a344
jmp 0x14005a1f5
mov rbp, r9
add rbp, r10
je 0x14005a1f5
cmp word [r9 + r10 + 2], 0x7b
jne 0x14005a3e8
cmp word [r9 + r10 + 4], 0x73
jne 0x14005a3e8
cmp word [r9 + r10 + 6], 0x65
jne 0x14005a3e8
cmp word [r9 + r10 + 8], 0x73
jne 0x14005a3e8
cmp word [r9 + r10 + 0xa], 0x73
jne 0x14005a3e8
cmp word [r9 + r10 + 0xc], 0x69
jne 0x14005a3e8
cmp word [r9 + r10 + 0xe], 0x6f
jne 0x14005a3e8
cmp word [r9 + r10 + 0x10], 0x6e
jne 0x14005a3e8
cmp word [r9 + r10 + 0x12], 0x5f
jne 0x14005a3e8
cmp word [r9 + r10 + 0x14], 0x6e
jne 0x14005a3e8
cmp word [r9 + r10 + 0x16], 0x61
jne 0x14005a3e8
cmp word [r9 + r10 + 0x18], 0x6d
jne 0x14005a3e8
cmp word [r9 + r10 + 0x1a], 0x65
jne 0x14005a3e8
cmp word [r9 + r10 + 0x1c], 0x7d
je 0x14005a5ab
mov rcx, r8
sub rcx, r9
add r9, r10
add r9, 2
sub rcx, r10
cmp rcx, 0x1e
jge 0x14005a33a
jmp 0x14005a1f5
mov rax, qword [rdx]
mov r8, qword [rdx + 8]
mov rcx, rsi
mov rdx, rax
call fcn.140008850
jmp 0x140059c25
cmp rax, 0xc
jae 0x14005a84d
dec rax
mov byte [rsi + 0x17], al
mov rcx, rsi
mov word [rcx + rax*2], 0
mov r8d, 1
mov rcx, rsi
xor edx, edx
call fcn.140179610
jmp 0x140059c8b
cmp r13, r10
je 0x140059faf
sub r13, r9
mov r9, r13
add r9, 2
je 0x140059faf
lea rbp, [rsp + 0x50]
mov dword [rbp], 0
xor ecx, ecx
mov rdx, rbp
mov rax, r12
call qword [case.0x1401e7f70.0]
mov ecx, dword [rbp]
test rcx, rcx
jne 0x14005a642
movzx edx, byte [rsi + 0x17]
mov rax, qword [rsi]
mov r8, qword [rsi + 8]
mov ecx, edx
and ecx, 0x7f
jmp 0x140059faf
cmp rbp, r10
je 0x14005a1e1
sub rbp, r9
mov r9, rbp
add r9, 2
je 0x14005a1e1
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 [case.0x1401e7f70.0]
test eax, eax
jne 0x14005a6ea
movzx edx, byte [rsi + 0x17]
mov rax, qword [rsi]
mov r8, qword [rsi + 8]
mov ecx, edx
and ecx, 0x7f
jmp 0x14005a1e1
cmp r15, rdx
je 0x140059fc3
sub r15, rax
mov rax, r15
add rax, 2
je 0x140059fc3
lea r12, [rsp + 0x50]
mov dword [r12], 0
mov ecx, 5
xor edx, edx
mov r8, r12
call qword [sym.imp.KERNEL32.dll_GetComputerNameExW]
mov ecx, dword [r12]
test rcx, rcx
je 0x140059fc3
sar r15, 1
add rcx, rcx
call fcn.14017b5a0
mov r12, rax
lea r8, [rsp + 0x50]
mov ecx, 5
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_GetComputerNameExW]
movabs rax, 0xaaaaaaaaaaaaaaaa
lea r13, [rsp + 0x70]
mov qword [r13 + 0x10], rax
movaps xmmword [r13], xmm6
mov rcx, r13
mov rdx, r12
call fcn.1401bc8c0
movzx eax, byte [r13 + 0x17]
test al, al
jns 0x14005a76d
mov rax, qword [rsp + 0x78]
mov r13, qword [rsp + 0x70]
jmp 0x14005a770
cmp rbp, rdx
je 0x14005a1f5
sub rbp, rax
mov rax, rbp
add rax, 2
je 0x14005a1f5
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 [case.0x1401e7f70.0]
test eax, eax
je 0x14005a1f5
sar rbp, 1
movabs rax, 0xaaaaaaaaaaaaaaaa
lea r13, [rsp + 0x70]
mov qword [r13 + 0x10], rax
movaps xmmword [r13], xmm6
mov rdx, qword [rsp + 0x50]
mov rcx, r13
call fcn.1401bc8c0
movzx eax, byte [r13 + 0x17]
test al, al
jns 0x14005a7b3
mov rax, qword [rsp + 0x78]
mov r13, qword [rsp + 0x70]
jmp 0x14005a7b6
sar r13, 1
add rcx, rcx
call fcn.14017b5a0
mov rbp, rax
lea rdx, [rsp + 0x50]
mov rcx, rax
mov rax, r12
call qword [case.0x1401e7f70.0]
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x80], rax
movaps xmmword [rsp + 0x70], xmm6
lea rcx, [rsp + 0x70]
mov rdx, rbp
call fcn.1401bc8c0
movzx eax, byte [rsp + 0x87]
test al, al
jns 0x14005a6a2
mov rax, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x70]
mov qword [rsp + 0x30], rcx
jmp 0x14005a6a5
and eax, 0x7f
mov qword [rsp + 0x20], rax
mov r8d, 0xc
mov rcx, rsi
mov rdx, r13
mov r9, qword [rsp + 0x30]
call fcn.1401dbe90
cmp byte [rsp + 0x87], 0
jns 0x14005a6d4
mov rcx, qword [rsp + 0x70]
call fcn.14017b254
test rbp, rbp
je 0x14005a48b
mov rcx, rbp
call fcn.14017b598
jmp 0x14005a48b
sar rbp, 1
movabs rax, 0xaaaaaaaaaaaaaaaa
lea rdi, [rsp + 0x70]
mov qword [rdi + 0x10], rax
movaps xmmword [rdi], xmm6
mov rdx, qword [rsp + 0x50]
mov rcx, rdi
call fcn.1401bc8c0
movzx eax, byte [rdi + 0x17]
test al, al
jns 0x14005a724
mov rax, qword [rsp + 0x78]
mov rdi, qword [rsp + 0x70]
jmp 0x14005a727
and eax, 0x7f
mov qword [rsp + 0x20], rax
mov r8d, 0xe
mov rcx, rsi
mov rdx, rbp
mov r9, rdi
call fcn.1401dbe90
mov rcx, qword [rsp + 0x50]
mov rax, qword [rsp + 0x28]
call qword [case.0x1401e7f70.0]
cmp byte [rsp + 0x87], 0
jns 0x14005a4f3
mov rcx, qword [rsp + 0x70]
call fcn.14017b254
jmp 0x14005a4f3
and eax, 0x7f
mov qword [rsp + 0x20], rax
mov r8d, 0xf
mov rcx, rsi
mov rdx, r15
mov r9, r13
call fcn.1401dbe90
cmp byte [rsp + 0x87], 0
jns 0x14005a79d
mov rcx, qword [rsp + 0x70]
call fcn.14017b254
test r12, r12
je 0x140059fc3
mov rcx, r12
call fcn.14017b598
jmp 0x140059fc3
and eax, 0x7f
mov qword [rsp + 0x20], rax
mov r8d, 0xf
mov rcx, rsi
mov rdx, rbp
mov r9, r13
call fcn.1401dbe90
mov rcx, qword [rsp + 0x50]
mov rax, qword [rsp + 0x28]
call qword [case.0x1401e7f70.0]
cmp byte [rsp + 0x87], 0
jns 0x14005a1f5
mov rcx, qword [rsp + 0x70]
call fcn.14017b254
jmp 0x14005a1f5
int3
int3
int3
int3
test rdx, rdx
je 0x14005a832
mov rcx, qword [rsi]
movzx r8d, word [rcx]
cmp r8d, 0x22
je 0x14005a835
cmp r8d, 0x27
jne 0x140059c8b
cmp word [rcx + rdx*2 - 2], 0x27
jne 0x140059c8b
jmp 0x14005a841
int3
cmp word [rcx + rdx*2 - 2], 0x22
jne 0x140059c8b
dec rax
mov qword [rsi + 8], rax
jmp 0x14005a431
int3