Function at 0x1400897e0
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 [0x140219028]
xor rax, rsp
mov qword [rsp + 0x278], rax
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x28], rax
mov qword [rcx + 0x10], rax
movaps xmm6, xmmword [0x1401ee3a0]
movups xmmword [rcx], xmm6
cmp byte [rdx + 0x17], 0
js 0x1400898a6
mov rax, qword [rdx + 0x10]
mov qword [rsi + 0x10], rax
movups xmm0, xmmword [rdx]
movups xmmword [rsi], xmm0
movzx edx, byte [rsi + 0x17]
mov ecx, edx
and ecx, 0x7f
test dl, dl
mov rax, qword [rsi + 8]
mov r8, rcx
cmovs r8, rax
test r8, r8
je 0x140089e7d
mov r8d, edx
and r8d, 0x7e
test dl, dl
cmovs r8, rax
cmp r8, 2
jb 0x140089926
test dl, dl
js 0x14008a4ba
test rdx, rdx
je 0x14008a4b7
movzx eax, word [rsi]
cmp eax, 0x22
je 0x1400898ba
cmp eax, 0x27
jne 0x140089926
cmp word [rsi + rdx*2 - 2], 0x27
je 0x1400898c2
jmp 0x140089926
mov rax, qword [rdx]
mov r8, qword [rdx + 8]
mov rcx, rsi
mov rdx, rax
call fcn.1400144b0
jmp 0x140089841
cmp word [rsi + rdx*2 - 2], 0x22
jne 0x140089926
dec rcx
mov eax, ecx
and al, 0x7f
mov byte [rsi + 0x17], al
mov rdx, rsi
mov rax, rcx
mov word [rdx + rax*2], 0
movzx eax, byte [rsi + 0x17]
mov rcx, rax
mov rbx, rsi
test al, al
jns 0x1400898ed
mov rcx, qword [rsi + 8]
mov rbx, qword [rsi]
xor edx, edx
test rcx, rcx
setne dl
mov rdi, rcx
sub rdi, rdx
cmp rcx, 2
jb 0x140089914
lea rdx, [rbx + rdx*2]
lea r8, [rdi + rdi]
mov rcx, rbx
call fcn.140131180
mov al, byte [rsi + 0x17]
test al, al
jns 0x14008a362
mov qword [rsi + 8], rdi
mov word [rbx + rdi*2], 0
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 0x14008995f
lea rdx, [0x1401fa249]
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
jmp 0x140089a1e
mov rdx, r10
sub rdx, r11
add r11, r14
add r11, 2
sub rdx, r14
sar rdx, 1
cmp rdx, rax
jge 0x1400899ed
jmp 0x140089a11
mov r13, r11
add r13, r14
je 0x140089a11
xor edx, edx
movzx r15d, word [r13 + rdx*2]
cmp r15w, word [rbp + rdx*2]
jne 0x14008997d
inc rdx
cmp rax, rdx
jne 0x1400899a1
cmp r13, r8
je 0x140089a11
sub r13, rcx
mov rax, r13
add rax, 2
je 0x140089a11
sar r13, 1
jmp 0x140089a60
mov rdx, qword [rsi + 8]
cmp rdx, rax
jl 0x140089a11
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 0x140089a11
inc rdx
xor r14d, r14d
cmp word [r11 + r14], r9w
je 0x140089997
add r14, 2
dec rdx
cmp rax, rdx
jne 0x1400899fe
inc r12
cmp r12, 7
je 0x140089c9a
mov rbx, r12
shl rbx, 4
mov rbp, qword [rbx + rdi]
test rbp, rbp
je 0x14008a4ae
mov rcx, rbp
call fcn.14012d784
movzx edx, byte [rsi + 0x17]
mov rcx, rsi
test dl, dl
jns 0x140089a48
mov rcx, qword [rsi]
test rax, rax
je 0x140089a5d
test dl, dl
js 0x1400899d0
and edx, 0x7f
jmp 0x1400899d4
xor r13d, r13d
mov rcx, rbp
call fcn.14012d784
mov rbp, rax
mov r8d, 0x208
lea r14, [rsp + 0x70]
mov rcx, r14
mov dl, 0xaa
call fcn.140131830
mov r8d, dword [rbx + rdi + 8]
xor ecx, ecx
mov rdx, r14
xor r9d, r9d
mov rax, qword [rsp + 0x38]
call qword [0x140243008]
test eax, eax
jne 0x140089aa3
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.140168480
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 0x140089b8b
test al, al
jns 0x14008a352
test rdx, rdx
je 0x14008a4b4
mov r10, qword [rsp + 0x50]
mov r9, rdx
cmp word [r10 + r9*2 - 2], 0x5c
jne 0x140089b8b
movzx r9d, byte [rsi + 0x17]
mov ebx, r9d
and ebx, 0x7f
test r9b, r9b
mov r11, qword [rsi + 8]
cmovs rbx, r11
mov r10, rbp
add r10, r13
cmp rbx, r10
jbe 0x140089b8b
test r9b, r9b
cmovns r11, r9
cmp r11, r10
jb 0x14008a4b1
mov r11, rsi
test r9b, r9b
jns 0x140089b4a
mov r11, qword [rsi]
cmp word [r11 + r10*2], 0x5c
jne 0x140089b8b
lea rdx, [r8 - 1]
lea rcx, [rsp + 0x50]
test al, al
jns 0x140089b64
mov rcx, qword [rsp + 0x50]
js 0x140089b6f
and dl, 0x7f
mov byte [rsp + 0x67], dl
jmp 0x140089b74
mov qword [rsp + 0x58], rdx
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.14018b9f0
cmp byte [rsp + 0x67], 0
jns 0x140089a11
mov rcx, qword [rsp + 0x50]
call fcn.14012cd4c
jmp 0x140089a11
mov r13, rdi
add r13, rbx
je 0x140089d17
cmp word [rdi + rbx + 2], 0x7b
jne 0x140089c04
cmp word [rdi + rbx + 4], 0x75
jne 0x140089c04
cmp word [rdi + rbx + 6], 0x73
jne 0x140089c04
cmp word [rdi + rbx + 8], 0x65
jne 0x140089c04
cmp word [rdi + rbx + 0xa], 0x72
je 0x14008a36e
mov r13, r11
sub r13, rdi
add rdi, rbx
add rdi, 2
sub r13, rbx
cmp r13, 0x18
jge 0x140089cfa
jmp 0x140089d17
mov r15, r9
add r15, r10
je 0x140089d58
cmp word [r9 + r10 + 2], 0x7b
jne 0x140089c60
cmp word [r9 + r10 + 4], 0x6d
jne 0x140089c60
cmp word [r9 + r10 + 6], 0x61
jne 0x140089c60
cmp word [r9 + r10 + 8], 0x63
jne 0x140089c60
cmp word [r9 + r10 + 0xa], 0x68
je 0x14008a032
mov rcx, r8
sub rcx, r9
add r9, r10
add r9, 2
sub rcx, r10
cmp rcx, 0x1e
jge 0x140089d39
jmp 0x140089d58
movabs r13, 0xaaaaaaaaaaaaaaaa
jmp 0x140089d84
movabs r12, 0xaaaaaaaaaaaaaaaa
jmp 0x140089cc2
lea rcx, str.advapi32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov r14, rax
test rax, rax
je 0x140089c8e
lea rdx, [0x1401fa2f2]
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov r12, 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 r13, rcx
cmovs r13, r8
cmp r13, 0xc
jl 0x140089d17
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 0x140089bcc
add rbx, 2
dec r13
jne 0x140089d03
test dl, dl
cmovns rax, rsi
cmovs rcx, r8
cmp rcx, 0xf
jl 0x140089d58
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 0x140089c23
add r10, 2
dec rcx
jne 0x140089d43
lea rcx, str.wtsapi32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov r15, rax
test rax, rax
je 0x140089c7f
lea rdx, [0x1401fa31c]
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 0x140089dae
lea rdx, [0x1401fa354]
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
jl 0x140089e03
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 0x140089f00
add rbx, 2
dec rbp
jne 0x140089def
test dl, dl
cmovns rax, rsi
cmovs rcx, r8
cmp rcx, 0xf
jl 0x140089e40
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 0x140089eac
add r10, 2
dec rcx
jne 0x140089e2f
test r12, r12
je 0x140089e4e
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
test r15, r15
je 0x140089e5c
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
test r14, r14
mov rdi, qword [rsp + 0x40]
je 0x140089e6f
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
test rdi, rdi
je 0x140089e7d
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov rcx, qword [rsp + 0x278]
xor rcx, rsp
call fcn.14012f6f0
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 rbp, r9
add rbp, r10
je 0x140089e40
cmp word [r9 + r10 + 2], 0x7b
jne 0x140089ee1
cmp word [r9 + r10 + 4], 0x73
jne 0x140089ee1
cmp word [r9 + r10 + 6], 0x65
jne 0x140089ee1
cmp word [r9 + r10 + 8], 0x73
jne 0x140089ee1
cmp word [r9 + r10 + 0xa], 0x73
je 0x140089f5f
mov rcx, r8
sub rcx, r9
add r9, r10
add r9, 2
sub rcx, r10
cmp rcx, 0x1e
jge 0x140089e25
jmp 0x140089e40
mov rbp, rdi
add rbp, rbx
je 0x140089e03
cmp word [rdi + rbx + 2], 0x7b
jne 0x140089f40
cmp word [rdi + rbx + 4], 0x63
jne 0x140089f40
cmp word [rdi + rbx + 6], 0x6c
jne 0x140089f40
cmp word [rdi + rbx + 8], 0x69
jne 0x140089f40
cmp word [rdi + rbx + 0xa], 0x65
jne 0x140089f40
cmp word [rdi + rbx + 0xc], 0x6e
je 0x140089fd9
mov rbp, r11
sub rbp, rdi
add rdi, rbx
add rdi, 2
sub rbp, rbx
cmp rbp, 0x1c
jge 0x140089de6
jmp 0x140089e03
cmp word [r9 + r10 + 0xc], 0x69
jne 0x140089ee1
cmp word [r9 + r10 + 0xe], 0x6f
jne 0x140089ee1
cmp word [r9 + r10 + 0x10], 0x6e
jne 0x140089ee1
cmp word [r9 + r10 + 0x12], 0x5f
jne 0x140089ee1
cmp word [r9 + r10 + 0x14], 0x6e
jne 0x140089ee1
cmp word [r9 + r10 + 0x16], 0x61
jne 0x140089ee1
cmp word [r9 + r10 + 0x18], 0x6d
jne 0x140089ee1
cmp word [r9 + r10 + 0x1a], 0x65
jne 0x140089ee1
cmp word [r9 + r10 + 0x1c], 0x7d
jne 0x140089ee1
jmp 0x14008a157
cmp word [rdi + rbx + 0xe], 0x74
jne 0x140089f40
cmp word [rdi + rbx + 0x10], 0x5f
jne 0x140089f40
cmp word [rdi + rbx + 0x12], 0x6e
jne 0x140089f40
cmp word [rdi + rbx + 0x14], 0x61
jne 0x140089f40
cmp word [rdi + rbx + 0x16], 0x6d
jne 0x140089f40
cmp word [rdi + rbx + 0x18], 0x65
jne 0x140089f40
cmp word [rdi + rbx + 0x1a], 0x7d
jne 0x140089f40
jmp 0x14008a0ef
cmp word [r9 + r10 + 0xc], 0x69
jne 0x140089c60
cmp word [r9 + r10 + 0xe], 0x6e
jne 0x140089c60
cmp word [r9 + r10 + 0x10], 0x65
jne 0x140089c60
cmp word [r9 + r10 + 0x12], 0x5f
jne 0x140089c60
cmp word [r9 + r10 + 0x14], 0x6e
jne 0x140089c60
cmp word [r9 + r10 + 0x16], 0x61
jne 0x140089c60
cmp word [r9 + r10 + 0x18], 0x6d
jne 0x140089c60
cmp word [r9 + r10 + 0x1a], 0x65
jne 0x140089c60
cmp word [r9 + r10 + 0x1c], 0x7d
jne 0x140089c60
cmp r15, rdx
je 0x140089d58
sub r15, rax
mov rax, r15
add rax, 2
je 0x140089d58
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 0x140089d58
jmp 0x14008a2b3
cmp rbp, r10
je 0x140089e03
sub rbp, r9
mov r9, rbp
add r9, 2
je 0x140089e03
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 [0x140243008]
test eax, eax
jne 0x14008a230
movzx edx, byte [rsi + 0x17]
mov rax, qword [rsi]
mov r8, qword [rsi + 8]
mov ecx, edx
and ecx, 0x7f
jmp 0x140089e03
cmp rbp, rdx
je 0x140089e40
sub rbp, rax
mov rax, rbp
add rax, 2
je 0x140089e40
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 [0x140243008]
test eax, eax
je 0x140089e40
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.140168480
movzx eax, byte [r13 + 0x17]
test al, al
js 0x14008a1e0
and eax, 0x7f
jmp 0x14008a1ea
mov rax, qword [rsp + 0x78]
mov r13, qword [rsp + 0x70]
mov qword [rsp + 0x20], rax
mov r8d, 0xf
mov rcx, rsi
mov rdx, rbp
mov r9, r13
call fcn.14018b9f0
mov rcx, qword [rsp + 0x50]
mov rax, qword [rsp + 0x28]
call qword [0x140243008]
cmp byte [rsp + 0x87], 0
jns 0x140089e40
mov rcx, qword [rsp + 0x70]
call fcn.14012cd4c
jmp 0x140089e40
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.140168480
movzx eax, byte [rdi + 0x17]
test al, al
jns 0x14008a26a
mov rax, qword [rsp + 0x78]
mov rdi, qword [rsp + 0x70]
jmp 0x14008a26d
and eax, 0x7f
mov qword [rsp + 0x20], rax
mov r8d, 0xe
mov rcx, rsi
mov rdx, rbp
mov r9, rdi
call fcn.14018b9f0
mov rcx, qword [rsp + 0x50]
mov rax, qword [rsp + 0x28]
call qword [0x140243008]
cmp byte [rsp + 0x87], 0
jns 0x14008a142
mov rcx, qword [rsp + 0x70]
call fcn.14012cd4c
jmp 0x14008a142
sar r15, 1
add rcx, rcx
call fcn.14012cd54
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.140168480
movzx eax, byte [r13 + 0x17]
test al, al
js 0x14008a305
and eax, 0x7f
jmp 0x14008a30f
mov rax, qword [rsp + 0x78]
mov r13, qword [rsp + 0x70]
mov qword [rsp + 0x20], rax
mov r8d, 0xf
mov rcx, rsi
mov rdx, r15
mov r9, r13
call fcn.14018b9f0
cmp byte [rsp + 0x87], 0
jns 0x14008a33c
mov rcx, qword [rsp + 0x70]
call fcn.14012cd4c
test r12, r12
je 0x140089d58
mov rcx, r12
call fcn.14012cf90
jmp 0x140089d58
je 0x14008a4b4
lea r10, [rsp + 0x50]
jmp 0x140089b05
mov eax, edi
and al, 0x7f
mov byte [rsi + 0x17], al
jmp 0x140089920
cmp word [rdi + rbx + 0xc], 0x5f
jne 0x140089c04
cmp word [rdi + rbx + 0xe], 0x6e
jne 0x140089c04
cmp word [rdi + rbx + 0x10], 0x61
jne 0x140089c04
cmp word [rdi + rbx + 0x12], 0x6d
jne 0x140089c04
cmp word [rdi + rbx + 0x14], 0x65
jne 0x140089c04
cmp word [rdi + rbx + 0x16], 0x7d
jne 0x140089c04
cmp r13, r10
je 0x140089d17
sub r13, r9
mov r9, r13
add r9, 2
je 0x140089d17
lea rbp, [rsp + 0x50]
mov dword [rbp], 0
xor ecx, ecx
mov rdx, rbp
mov rax, r12
call qword [0x140243008]
mov ecx, dword [rbp]
test rcx, rcx
jne 0x14008a406
movzx edx, byte [rsi + 0x17]
mov rax, qword [rsi]
mov r8, qword [rsi + 8]
mov ecx, edx
and ecx, 0x7f
jmp 0x140089d17
sar r13, 1
add rcx, rcx
call fcn.14012cd54
mov rbp, rax
lea rdx, [rsp + 0x50]
mov rcx, rax
mov rax, r12
call qword [0x140243008]
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x80], rax
movaps xmmword [rsp + 0x70], xmm6
lea rcx, [rsp + 0x70]
mov rdx, rbp
call fcn.140168480
movzx eax, byte [rsp + 0x87]
test al, al
js 0x14008a45a
and eax, 0x7f
jmp 0x14008a469
mov rax, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x70]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x20], rax
mov r8d, 0xc
mov rcx, rsi
mov rdx, r13
mov r9, qword [rsp + 0x30]
call fcn.14018b9f0
cmp byte [rsp + 0x87], 0
jns 0x14008a498
mov rcx, qword [rsp + 0x70]
call fcn.14012cd4c
test rbp, rbp
je 0x14008a3f1
mov rcx, rbp
call fcn.14012cf90
jmp 0x14008a3f1
int3
int3
int3
int3
test rax, rax
je 0x14008a4b7
mov rdx, qword [rsi]
movzx ecx, word [rdx]
cmp ecx, 0x22
je 0x14008a4e1
cmp ecx, 0x27
jne 0x140089926
cmp word [rdx + rax*2 - 2], 0x27
jne 0x140089926
jmp 0x14008a4ed
cmp word [rdx + rax*2 - 2], 0x22
jne 0x140089926
dec rax
mov qword [rsi + 8], rax
jmp 0x1400898d2