Function at 0x40d590
Capabilities:
Get hostname
Get session user name

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x3048
call fcn.0044b470
mov eax, dword [0x46614c]
xor eax, ebp
mov dword [ebp - 4], eax
mov dword [ebp - 0x3048], 0
mov dword [ebp - 0x3044], 0
mov byte [ebp - 0x2f18], 0
push 0x1787
push 0
lea eax, [ebp - 0x2f17]
push eax
call fcn.00448bd0
add esp, 0xc
mov byte [ebp - 0x1790], 0
push 0x1783
push 0
lea ecx, [ebp - 0x178f]
push ecx
call fcn.00448bd0
add esp, 0xc
mov byte [ebp - 0x3038], 1
mov byte [ebp - 0x3037], 2
mov byte [ebp - 0x3036], 3
mov byte [ebp - 0x3035], 4
mov byte [ebp - 0x3034], 5
mov byte [ebp - 0x3033], 6
mov byte [ebp - 0x3032], 7
mov byte [ebp - 0x3031], 8
mov byte [ebp - 0x3030], 9
xor edx, edx
mov dword [ebp - 0x302f], edx
mov dword [ebp - 0x302b], edx
mov dword [ebp - 0x3027], edx
mov eax, dword [ebp + 8]
mov dword [ebp - 0x303c], eax
mov byte [ebp - 0x3020], 0
push 0x100
push 0
lea ecx, [ebp - 0x301f]
push ecx
call fcn.00448bd0
add esp, 0xc
cmp dword [ebp + 8], 0
jne 0x40d67e
mov eax, 0x10c
jmp 0x40d8a5
push 0x14
lea edx, [ebp - 0x3038]
push edx
call fcn.00421d80
add esp, 8
mov eax, dword [ebp - 0x303c]
add eax, 0x48
push eax
lea ecx, [ebp - 0x2f00]
push ecx
push 0x14
lea edx, [ebp - 0x3038]
push edx
push 0
mov eax, dword [ebp - 0x303c]
add eax, 0x58
push eax
call fcn.00408c30
add esp, 0x18
mov ecx, dword [ebp - 0x303c]
mov edx, dword [ecx + 0xa4]
and edx, 0x80000
je 0x40d7b1
mov dword [ebp - 0x3044], 0x100
lea eax, [ebp - 0x3044]
push eax
lea ecx, [ebp - 0x3020]
push ecx
call dword [sym.imp.ADVAPI32.dll_GetUserNameA]
mov edx, dword [ebp - 0x3044]
push edx
lea eax, [ebp - 0x2eeb]
push eax
call fcn.00417450
add esp, 8
mov ecx, dword [ebp - 0x3044]
push ecx
lea edx, [ebp - 0x3020]
push edx
lea eax, [ebp - 0x2ee9]
push eax
call fcn.00448ea0
add esp, 0xc
mov dword [ebp - 0x3048], 0x100
push 0x101
push 0
lea ecx, [ebp - 0x3020]
push ecx
call fcn.00448bd0
add esp, 0xc
lea edx, [ebp - 0x3048]
push edx
lea eax, [ebp - 0x3020]
push eax
call dword [sym.imp.KERNEL32.dll_GetComputerNameA]
mov ecx, dword [ebp - 0x3048]
push ecx
mov edx, dword [ebp - 0x3044]
lea eax, [ebp + edx - 0x2ee9]
push eax
call fcn.00417450
add esp, 8
mov ecx, dword [ebp - 0x3048]
push ecx
lea edx, [ebp - 0x3020]
push edx
mov eax, dword [ebp - 0x3044]
lea ecx, [ebp + eax - 0x2ee7]
push ecx
call fcn.00448ea0
add esp, 0xc
mov edx, dword [ebp - 0x3048]
mov eax, dword [ebp - 0x3044]
lea ecx, [eax + edx + 4]
mov dword [ebp - 0x3044], ecx
mov dl, byte [ebp + 0xc]
mov byte [ebp - 0x2f18], dl
mov eax, dword [ebp - 0x3044]
add eax, 0x15
mov word [ebp - 0x2f16], ax
xor ecx, ecx
mov word [ebp - 0x178e], cx
lea edx, [ebp - 0x1790]
push edx
lea eax, [ebp - 0x2f18]
push eax
mov ecx, dword [ebp - 0x303c]
push ecx
call fcn.0040cb00
add esp, 0xc
mov dword [ebp - 0x3040], eax
cmp dword [ebp - 0x3040], 0
je 0x40d80a
mov eax, dword [ebp - 0x3040]
jmp 0x40d8a5
movzx edx, word [ebp - 0x177e]
test edx, edx
je 0x40d821
movzx eax, word [ebp - 0x177e]
jmp 0x40d8a5
movzx eax, word [ebp - 0x178e]
cmp eax, 4
jne 0x40d881
push 4
lea ecx, [ebp - 0x177c]
push ecx
mov edx, dword [ebp - 0x303c]
add edx, 0x48
push edx
call fcn.00448ea0
add esp, 0xc
push 4
lea eax, [ebp - 0x2f00]
push eax
mov ecx, dword [ebp - 0x303c]
add ecx, 0x4c
push ecx
call fcn.00448ea0
add esp, 0xc
push 8
mov edx, dword [ebp - 0x303c]
add edx, 0x38
push edx
mov eax, dword [ebp - 0x303c]
add eax, 0x50
push eax
call fcn.00448ea0
add esp, 0xc
mov ecx, dword [ebp - 0x303c]
mov edx, dword [ecx + 0xa4]
or edx, 0x8000
mov eax, dword [ebp - 0x303c]
mov dword [eax + 0xa4], edx
mov eax, dword [ebp - 0x3040]
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0044892a
mov esp, ebp
pop ebp
ret