Function at 0x72a6df90
Capabilities:
Get hostname

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x5c
mov ebx, dword [ebp + 8]
test byte [0x72a768c4], 8
jne 0x72a6e070
mov eax, dword [ebp + 0xc]
mov dword [eax], 0
test ebx, ebx
je 0x72a6e170
cmp word [ebx], 0x5c
mov esi, ebx
jne 0x72a6dfcd
cmp word [ebx + 2], 0x5c
je 0x72a6e0f0
mov dword [esp + 4], 0x2c
mov dword [esp], ebx
call sym._wcschr
mov ecx, eax
test eax, eax
je 0x72a6e0c0
sub eax, esi
sar eax, 1
jne 0x72a6e440
xor edi, edi
xor eax, eax
lea ebx, [ecx + 2]
cmp word [ecx + 2], 0x20
jne 0x72a6e540
add ebx, 2
cmp word [ebx], 0x20
je 0x72a6e003
test ebx, ebx
setne cl
je 0x72a6e180
test al, al
je 0x72a6e180
mov dword [esp + 8], 4
mov dword [esp + 4], 0x72a79d14
mov dword [esp], ebx
call sym._wcsncmp
mov esi, eax
test eax, eax
je 0x72a6e3a3
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp + 0xc]
mov edx, ebx
mov dword [esp], eax
mov eax, edi
call sym.__LocalOpenPrinterHandle
mov ebx, eax
xor eax, eax
test ebx, ebx
sete al
mov esi, eax
mov dword [esp], edi
call sym._DllFreeSplMem_4
sub esp, 4
jmp 0x72a6e0d8
mov eax, dword [ebp + 0x10]
mov dword [esp + 0x18], ebx
mov dword [esp + 0x14], str.LocalOpenPrinter__S___p___p__n
mov dword [esp + 0x20], eax
mov eax, dword [ebp + 0xc]
mov dword [esp + 0x10], 0x580
mov dword [esp + 0x1c], eax
mov dword [esp + 0xc], str.LocalOpenPrinter
mov dword [esp + 8], 0x72a79aad
mov dword [esp + 4], 0x72a768c4
mov dword [esp], 3
call sym._ros_dbg_log
jmp 0x72a6dfa9
mov dword [esp], ebx
call dword [sym.imp.msvcrt.dll_wcslen]
test eax, eax
jne 0x72a6e2e7
xor esi, esi
mov ebx, 0x7b
mov dword [esp], ebx
call sym._SetLastError_4
mov eax, esi
sub esp, 4
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret 0xc
movzx eax, word [ebx + 4]
lea edi, [ebx + 4]
mov esi, edi
cmp ax, 0x5c
je 0x72a6e115
test ax, ax
je 0x72a6e115
add esi, 2
movzx eax, word [esi]
test ax, ax
je 0x72a6e115
cmp ax, 0x5c
jne 0x72a6e104
lea eax, [ebp - 0x38]
lea ebx, [ebp - 0x30]
mov dword [ebp - 0x38], 0x10
mov dword [esp + 4], eax
mov dword [esp], ebx
call sym._GetComputerNameW_8
sub esp, 8
test eax, eax
je 0x72a6e59e
mov eax, esi
sub eax, edi
sar eax, 1
cmp eax, dword [ebp - 0x38]
jne 0x72a6e0d1
mov dword [esp + 8], eax
mov dword [esp + 4], ebx
mov dword [esp], edi
call dword [sym.imp.msvcrt.dll__wcsnicmp]
test eax, eax
jne 0x72a6e0d1
cmp word [esi], 0
lea ebx, [esi + 2]
jne 0x72a6dfcd
mov eax, dword [ebp + 0xc]
lea esi, [esi]
call sym.__LocalOpenPrintServerHandle
mov ebx, eax
jmp 0x72a6e2d9
test edi, edi
jne 0x72a6e485
test cl, cl
je 0x72a6e485
mov dword [esp + 8], 3
mov dword [esp + 4], 0x72a7a046
mov dword [esp], ebx
call sym._wcsncmp
mov esi, eax
test eax, eax
jne 0x72a6e2c5
test byte [0x72a768c4], 1
jne 0x72a6e561
lea edi, [ebx + 6]
mov dword [esp + 8], 8
mov dword [esp + 4], str.Monitor
mov dword [esp], edi
call sym._wcsncmp
test eax, eax
jne 0x72a6e330
add ebx, 0x16
mov dword [esp], ebx
call sym._FindPrintMonitor
mov edi, eax
test eax, eax
je 0x72a6e4e4
mov eax, dword [edi + 0x1c]
mov edx, dword [edi + 0x18]
lea ecx, [ebp - 0x34]
mov eax, dword [eax + 0x3c]
test edx, edx
je 0x72a6e4b0
mov dword [esp + 0xc], ecx
mov dword [esp + 8], 0x20002
mov dword [esp + 4], ebx
mov edx, dword [edi + 0x20]
mov dword [esp], edx
call eax
sub esp, 0x10
test eax, eax
je 0x72a6e5ef
mov dword [esp], 8
call sym._DllAllocSplMem_4
sub esp, 4
mov ebx, eax
test eax, eax
je 0x72a6e63f
mov dword [esp], 8
call sym._DllAllocSplMem_4
sub esp, 4
test eax, eax
je 0x72a6e6d5
mov ecx, dword [ebp - 0x34]
mov edx, dword [ebp + 0xc]
mov dword [eax + 4], edi
mov esi, 1
mov dword [eax], ecx
mov dword [ebx], 3
mov dword [ebx + 4], eax
mov dword [edx], ebx
xor ebx, ebx
test byte [0x72a768c4], 2
je 0x72a6e0d8
mov dword [esp + 0x18], eax
mov dword [esp + 0x14], str.OpenXcvHandle_Success___p_n
mov dword [esp + 0x10], 0x55e
mov dword [esp + 0xc], str._LocalOpenXcvHandle
mov dword [esp + 8], 0x72a79aad
mov dword [esp + 4], 0x72a768c4
mov dword [esp], 1
call sym._ros_dbg_log
jmp 0x72a6e0d8
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp + 0xc]
mov edx, ebx
mov dword [esp], eax
xor eax, eax
call sym.__LocalOpenPrinterHandle
mov ebx, eax
xor eax, eax
test ebx, ebx
sete al
mov esi, eax
jmp 0x72a6e0d8
lea esi, [eax + eax + 2]
mov dword [esp], esi
sub esi, 2
call sym._DllAllocSplMem_4
sub esp, 4
mov edi, eax
mov dword [esp + 4], ebx
mov dword [esp + 8], esi
mov dword [esp], eax
call sym._memmove
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp + 0xc]
xor edx, edx
mov dword [esp], eax
mov eax, edi
call sym.__LocalOpenPrinterHandle
mov ebx, eax
xor eax, eax
test ebx, ebx
sete al
mov esi, eax
jmp 0x72a6e05e
mov dword [esp + 8], 5
mov dword [esp + 4], str.Port
mov dword [esp], edi
call sym._wcsncmp
test eax, eax
je 0x72a6e4c9
test byte [0x72a768c4], 2
je 0x72a6e0d3
mov dword [esp + 0x18], 0x7b
mov ebx, 0x7b
mov dword [esp + 0x14], str.OpenXcvHandle_failed_on_bad_name___lu_n
mov dword [esp + 0x10], 0x531
mov dword [esp + 0xc], str._LocalOpenXcvHandle
mov dword [esp + 8], 0x72a79aad
mov dword [esp + 4], 0x72a768c4
mov dword [esp], 1
call sym._ros_dbg_log
jmp 0x72a6e0d8
mov dword [esp], edi
call sym._FindPort
mov ebx, eax
test eax, eax
je 0x72a6e532
mov eax, dword [eax + 0xc]
mov edx, dword [eax + 0x1c]
mov ecx, dword [eax + 0x18]
mov edx, dword [edx + 8]
test ecx, ecx
je 0x72a6e621
lea ecx, [ebp - 0x34]
mov dword [esp + 4], edi
mov dword [esp + 8], ecx
mov eax, dword [eax + 0x20]
mov dword [esp], eax
call edx
sub esp, 0xc
test eax, eax
je 0x72a6e635
mov dword [esp], 8
call sym._DllAllocSplMem_4
sub esp, 4
test eax, eax
je 0x72a6e68a
mov dword [esp], 8
mov dword [ebp - 0x3c], eax
call sym._DllAllocSplMem_4
mov edx, dword [ebp - 0x3c]
sub esp, 4
test eax, eax
je 0x72a6e71d
mov ecx, dword [ebp - 0x34]
mov dword [eax + 4], ebx
mov esi, 1
xor ebx, ebx
mov dword [eax], ecx
mov dword [edx + 4], eax
mov eax, dword [ebp + 0xc]
mov dword [edx], 0
mov dword [eax], edx
jmp 0x72a6e05e
lea esi, [eax + eax + 2]
mov dword [ebp - 0x3c], ecx
mov dword [esp], esi
sub esi, 2
call sym._DllAllocSplMem_4
sub esp, 4
mov edi, eax
mov dword [esp + 4], ebx
mov dword [esp + 8], esi
mov dword [esp], eax
call sym._memmove
mov ecx, dword [ebp - 0x3c]
mov eax, 1
cmp word [ecx + 2], 0x20
lea ebx, [ecx + 2]
je 0x72a6e003
test ebx, ebx
jne 0x72a6e01f
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp + 0xc]
mov edx, ebx
mov dword [esp], eax
mov eax, edi
call sym.__LocalOpenPrinterHandle
mov ebx, eax
test edi, edi
je 0x72a6e2d9
jmp 0x72a6e31f
mov dword [esp + 8], ecx
mov dword [esp + 4], 0x20002
mov dword [esp], ebx
call eax
sub esp, 0xc
jmp 0x72a6e226
add ebx, 0x10
mov dword [esp], ebx
call sym._FindPort
test eax, eax
je 0x72a6e6f3
mov edi, dword [eax + 0xc]
jmp 0x72a6e1f7
test byte [0x72a768c4], 2
je 0x72a6e0d3
mov dword [esp + 0x18], 0x7b
mov dword [esp + 0x14], str.OpenXcvHandle_failed_on_Monitor_name___lu_n
mov dword [esp + 0x10], 0x519
mov dword [esp + 0xc], str._LocalOpenXcvHandle
mov dword [esp + 8], 0x72a79aad
mov dword [esp + 4], 0x72a768c4
mov dword [esp], 1
call sym._ros_dbg_log
jmp 0x72a6e0d1
mov ebx, 0x7b
jmp 0x72a6e05e
test ebx, ebx
jne 0x72a6e190
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp + 0xc]
xor edx, edx
mov dword [esp], eax
xor eax, eax
call sym.__LocalOpenPrinterHandle
mov ebx, eax
jmp 0x72a6e2d9
mov dword [esp + 0x18], ebx
mov dword [esp + 0x14], str.OpenXcvHandle_:__S_n
mov dword [esp + 0x10], 0x5e8
mov dword [esp + 0xc], str.LocalOpenPrinter
mov dword [esp + 8], 0x72a79aad
mov dword [esp + 4], 0x72a768c4
mov dword [esp], 0
call sym._ros_dbg_log
jmp 0x72a6e1bf
call sym._GetLastError_0
mov ebx, eax
test byte [0x72a768c4], 2
je 0x72a6e2d9
mov dword [esp + 0x18], eax
mov dword [esp + 0x14], str.GetComputerNameW_failed_with_error__lu__n
mov dword [esp + 0x10], 0x59d
mov dword [esp + 0xc], str.LocalOpenPrinter
mov dword [esp + 8], 0x72a79aad
mov dword [esp + 4], 0x72a768c4
mov dword [esp], 1
call sym._ros_dbg_log
jmp 0x72a6e2d9
call sym._GetLastError_0
mov ebx, eax
test byte [0x72a768c4], 2
je 0x72a6e2d9
mov dword [esp + 0x18], eax
mov dword [esp + 0x14], str.XcvOpenPort_function_failed___lu_n
mov dword [esp + 0x10], 0x53f
mov dword [esp + 0xc], str._LocalOpenXcvHandle
jmp 0x72a6e5ce
lea eax, [ebp - 0x34]
mov dword [esp], edi
mov dword [esp + 4], eax
call edx
sub esp, 8
jmp 0x72a6e3df
call sym._GetLastError_0
jmp 0x72a6e053
mov ebx, 8
test byte [0x72a768c4], 2
je 0x72a6e0d8
mov dword [esp + 0x14], 0x72a79b71
mov dword [esp + 0x10], 0x548
mov dword [esp + 0xc], str._LocalOpenXcvHandle
mov dword [esp + 8], 0x72a79aad
mov dword [esp + 4], 0x72a768c4
mov dword [esp], 1
call sym._ros_dbg_log
jmp 0x72a6e0d8
mov ebx, 8
test byte [0x72a768c4], 2
je 0x72a6e05e
mov dword [esp + 0x14], 0x72a79b71
mov dword [esp + 0x10], 0x43a
mov dword [esp + 0xc], str._LocalOpenPortHandle
mov dword [esp + 8], 0x72a79aad
mov dword [esp + 4], 0x72a768c4
mov dword [esp], 1
call sym._ros_dbg_log
jmp 0x72a6e05e
test byte [0x72a768c4], 2
jne 0x72a6e73b
mov dword [esp], ebx
mov ebx, 8
call sym._DllFreeSplMem_4
sub esp, 4
jmp 0x72a6e0d8
test byte [0x72a768c4], 2
je 0x72a6e0d3
mov dword [esp + 0x18], 0x7b
mov dword [esp + 0x14], str.OpenXcvHandle_failed_on_Port_name___lu_n
mov dword [esp + 0x10], 0x528
jmp 0x72a6e509
test byte [0x72a768c4], 2
jne 0x72a6e774
mov dword [esp], edx
mov ebx, 8
call sym._DllFreeSplMem_4
sub esp, 4
jmp 0x72a6e05e
mov dword [esp + 0x14], 0x72a79b71
mov dword [esp + 0x10], 0x551
mov dword [esp + 0xc], str._LocalOpenXcvHandle
mov dword [esp + 8], 0x72a79aad
mov dword [esp + 4], 0x72a768c4
mov dword [esp], 1
call sym._ros_dbg_log
jmp 0x72a6e6de
mov dword [esp + 0x14], 0x72a79b71
mov dword [esp + 0x10], 0x443
mov dword [esp + 0xc], str._LocalOpenPortHandle
mov dword [esp + 8], 0x72a79aad
mov dword [esp + 4], 0x72a768c4
mov dword [esp], 1
call sym._ros_dbg_log
mov edx, dword [ebp - 0x3c]
jmp 0x72a6e726