Function at 0x4a1790
Capabilities:
Get hostname

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffe70
push ebx
push esi
push edi
xor edx, edx
mov dword [ebp - 0x190], edx
mov dword [ebp - 0x18c], edx
mov dword [ebp - 0x184], edx
mov dword [ebp - 0x188], edx
mov dword [ebp - 0x180], edx
mov dword [ebp - 4], edx
mov dword [ebp - 8], edx
mov esi, eax
lea eax, [ebp - 0x20]
mov edx, dword [0x4a0df4]
call fcn.004059dc
xor eax, eax
push ebp
push 0x4a1b80
push dword fs:[eax]
mov dword fs:[eax], esp
xor ebx, ebx
lea edx, [ebp - 0x180]
xor eax, eax
call fcn.004033c8
mov eax, dword [ebp - 0x180]
call fcn.004a6b3c
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], edx
call fcn.0040b860
add esp, 0xfffffff8
fstp qword [esp]
wait
call fcn.004a170c
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x40], esi
push 0
push 0
push 0xffffffffffffffff
push 0
call sub.kernel32.dll_CreateEventA
mov dword [ebp - 0x3c], eax
lea eax, [ebp - 0x40]
push eax
push 0
lea eax, [ebp - 0x44]
push eax
mov ecx, 0x4a15e4
xor edx, edx
xor eax, eax
call fcn.00404e04
mov esi, eax
jmp 0x4a1876
push 1
push 0
push 0
push 0
lea eax, [ebp - 0x17c]
push eax
call sub.user32.dll_PeekMessageA
test eax, eax
je 0x4a1876
lea eax, [ebp - 0x17c]
push eax
call sub.user32.dll_TranslateMessage
lea eax, [ebp - 0x17c]
push eax
call sub.user32.dll_DispatchMessageA
push 0
mov eax, dword [ebp - 0x3c]
push eax
call sub.kernel32.dll_WaitForSingleObject
cmp eax, 0x102
je 0x4a1846
mov eax, dword [ebp - 0x3c]
push eax
call sub.kernel32.dll_CloseHandle
push esi
call sub.kernel32.dll_CloseHandle
mov eax, dword [ebp - 0x30]
mov edx, dword [ebp - 0x2c]
sub eax, dword [ebp - 0x38]
sbb edx, dword [ebp - 0x34]
cmp edx, 0
jne 0x4a18b4
cmp eax, 0x3f480
jae 0x4a18ba
jmp 0x4a1b47
jl 0x4a1b47
lea eax, [ebp - 0x160]
call fcn.004a0694
cmp dword [ebp - 0x15c], 5
jbe 0x4a1b47
lea edx, [ebp - 0x188]
xor eax, eax
call fcn.004033c8
mov eax, dword [ebp - 0x188]
lea ecx, [ebp - 0x184]
xor edx, edx
call fcn.0040a254
lea eax, [ebp - 0x184]
mov edx, 0x4a1b98
call fcn.0040514c
mov eax, dword [ebp - 0x184]
call fcn.004a1648
test al, al
je 0x4a1918
mov bl, 1
jmp 0x4a1b47
call fcn.004a1764
test al, al
je 0x4a1928
mov bl, 1
jmp 0x4a1b47
mov dword [ebp - 0x24], 0x400
lea eax, [ebp - 4]
mov edx, dword [ebp - 0x24]
call fcn.004055a0
lea eax, [ebp - 0x24]
push eax
mov eax, dword [ebp - 4]
call fcn.00405310
push eax
call sub.advapi32.dll_GetUserNameA
mov eax, dword [ebp - 4]
call fcn.00405310
lea edx, [ebp - 0x18c]
call fcn.0040a6e0
mov edx, dword [ebp - 0x18c]
lea eax, [ebp - 4]
call fcn.00404f18
mov eax, 0xaaaaaaaa
mov edx, dword [ebp - 4]
test edx, edx
je 0x4a197e
sub edx, 4
mov edx, dword [edx]
mov ecx, edx
test ecx, ecx
jbe 0x4a19cd
mov edx, 1
mov esi, edx
dec esi
test esi, 1
jne 0x4a19af
mov esi, dword [ebp - 4]
movzx esi, byte [esi + edx - 1]
mov edi, eax
shr edi, 3
imul esi, edi
mov edi, eax
shl edi, 7
xor esi, edi
xor eax, esi
jmp 0x4a19c9
mov esi, dword [ebp - 4]
movzx esi, byte [esi + edx - 1]
mov edi, eax
shl edi, 0xb
add esi, edi
mov edi, eax
shr edi, 5
xor esi, edi
not esi
xor eax, esi
inc edx
dec ecx
jne 0x4a1989
cmp eax, 0xc365e620
jne 0x4a19db
mov bl, 1
jmp 0x4a1b47
mov dword [ebp - 0x24], 0x400
lea eax, [ebp - 4]
mov edx, dword [ebp - 0x24]
call fcn.004055a0
mov eax, dword [ebp - 4]
call fcn.00405310
lea edx, [ebp - 0x190]
call fcn.0040a6e0
mov edx, dword [ebp - 0x190]
lea eax, [ebp - 4]
call fcn.00404f18
lea eax, [ebp - 0x24]
push eax
mov eax, dword [ebp - 4]
call fcn.00405310
push eax
push 0
call sub.kernel32.dll_GetComputerNameExA
mov eax, 0xaaaaaaaa
mov edx, dword [ebp - 4]
test edx, edx
je 0x4a1a33
sub edx, 4
mov edx, dword [edx]
mov ecx, edx
test ecx, ecx
jbe 0x4a1a82
mov edx, 1
mov esi, edx
dec esi
test esi, 1
jne 0x4a1a64
mov esi, dword [ebp - 4]
movzx esi, byte [esi + edx - 1]
mov edi, eax
shr edi, 3
imul esi, edi
mov edi, eax
shl edi, 7
xor esi, edi
xor eax, esi
jmp 0x4a1a7e
mov esi, dword [ebp - 4]
movzx esi, byte [esi + edx - 1]
mov edi, eax
shl edi, 0xb
add esi, edi
mov edi, eax
shr edi, 5
xor esi, edi
not esi
xor eax, esi
inc edx
dec ecx
jne 0x4a1a3e
cmp eax, 0x75798c53
jne 0x4a1a90
mov bl, 1
jmp 0x4a1b47
lea edx, [ebp - 0x20]
mov eax, 0x4a1ba8
call fcn.004a1004
test al, al
je 0x4a1b47
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x4a1ab1
sub eax, 4
mov eax, dword [eax]
mov edx, dword [ebp - 0x14]
cmp byte [edx + eax - 1], 0x2f
jne 0x4a1aca
lea eax, [ebp - 0x14]
mov edx, 0x4a1bd8
call fcn.0040514c
jmp 0x4a1ad7
lea eax, [ebp - 0x14]
mov edx, 0x4a1bf0
call fcn.0040514c
lea eax, [ebp - 0x1c]
mov ecx, dword [ebp - 0x1c]
mov edx, 0x4a1c08
call fcn.00405198
lea edx, [ebp - 8]
lea eax, [ebp - 0x20]
call fcn.004a135c
mov dl, 1
mov eax, dword [0x41a498]
call fcn.00403eac
mov esi, eax
xor eax, eax
mov dword [ebp - 0x28], eax
push 0
push 0
push 0
push 0x4a1c18
push 0
push 0
push 0
push 0x2bf20
lea ecx, [ebp - 0x28]
mov edx, esi
mov eax, dword [ebp - 8]
call fcn.0046a5d0
test al, al
je 0x4a1b40
cmp dword [ebp - 0x28], 0xc8
jne 0x4a1b40
mov eax, esi
call fcn.00403edc
mov bl, 1
jmp 0x4a1b47
mov eax, esi
call fcn.00403edc
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4a1b87
lea eax, [ebp - 0x190]
mov edx, 5
call fcn.00404ea4
lea eax, [ebp - 0x20]
mov edx, dword [0x4a0df4]
call fcn.00405aac
lea eax, [ebp - 8]
mov edx, 2
call fcn.00404ea4
ret