Function at 0x416790
Capabilities:
Create directory
Get common file path
Get geographical location
Get hostname
Set current directory

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov eax, 0x1144
call fcn.00407360
mov eax, dword [0x427004]
xor eax, esp
mov dword [esp + 0x1140], eax
push ebx
mov ebx, dword [sym.imp.KERNEL32.dll_SetLastError]
push esi
push edi
mov edi, dword [sym.imp.KERNEL32.dll_GetTickCount]
xor esi, esi
nop
call edi
push 0
call ebx
push 0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_GetConsoleAliasesA]
cmp esi, 0x176afc
jg 0x416a4b
inc esi
cmp esi, 0x365ea5f8
jl 0x4167c0
xor ebx, ebx
mov edi, dword [sym.imp.KERNEL32.dll_ResetEvent]
xor esi, esi
cmp esi, 0x562d05
jne 0x416803
mov eax, dword [0x428944]
mov dword [0x2bcf440], eax
cmp dword [0x2bcf43c], 0x3c
jne 0x41680f
push ebx
call edi
inc esi
cmp esi, 0x5f6c74
jl 0x4167f1
cmp dword [0x2bcf43c], 0x7c
jne 0x4168f7
lea ecx, [esp + 0xc]
push ecx
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
lea edx, [esp + 0x18]
push edx
lea eax, [esp + 0x58]
push eax
lea ecx, [esp + 0x4c]
push ecx
push ebx
call dword [sym.imp.ole32.dll_CreateDataCache]
xor eax, eax
lea edx, [esp + 0x1c]
push edx
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], eax
lea eax, [esp + 0x18]
push eax
push ebx
lea ecx, [esp + 0x154]
push ecx
push ebx
push ebx
push ebx
push ebx
mov dword [esp + 0x3c], ebx
call dword [sym.imp.KERNEL32.dll_DeviceIoControl]
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_GetComputerNameW]
push 0x2e
lea edx, [esp + 0x6c]
push ebx
push edx
mov dword [esp + 0x70], ebx
call fcn.00405120
add esp, 0xc
push ebx
lea eax, [esp + 0x68]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_SetDefaultCommConfigA]
push ebx
call dword [sym.imp.KERNEL32.dll_FreeEnvironmentStringsA]
push str.hamiraz
call dword [sym.imp.KERNEL32.dll_AddAtomW]
lea ecx, [esp + 0x948]
push ecx
push ebx
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_EnumDateFormatsA]
cmp dword [0x2bcf43c], 0x2d
jne 0x4168dd
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_FatalAppExitW]
cmp dword [0x2bcf43c], 0x54
jne 0x4168f7
lea edx, [esp + 0x10]
push edx
push str.xenetiwe
push ebx
call dword [sym.imp.KERNEL32.dll_GetModuleHandleExW]
cmp dword [0x2bcf43c], 0x110a
jne 0x416991
push ebx
mov dword [0x2bcf0a8], ebx
mov dword [0x2bcf0ac], ebx
call dword [sym.imp.KERNEL32.dll_GetConsoleAliasesLengthW]
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x94c]
push ecx
push str.fenasinirefecufalitojapu
call dword [sym.imp.KERNEL32.dll_DnsHostnameToComputerNameW]
push ebx
lea edx, [esp + 0x14c]
push edx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
push ebx
push ebx
lea eax, [esp + 0xa0]
push eax
call dword [sym.imp.KERNEL32.dll_SystemTimeToTzSpecificLocalTime]
push ebx
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_OpenWaitableTimerW]
push ebx
push str.haduvofihujane
push ebx
push str.dasofitafucapaliwipefunafigi
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_CompareStringA]
push ebx
push ebx
call fcn.0040115b
push ebx
call fcn.00401121
add esp, 0xc
push ebx
push ebx
call fcn.0040115b
add esp, 8
call fcn.00415d30
xor ecx, ecx
cmp dword [0x2bcf43c], ebx
jbe 0x4169cb
mov edx, dword [0x2bcf440]
mov dword [esp + 0xc], edx
mov eax, 0xa231
add dword [esp + 0xc], eax
mov eax, dword [esp + 0xc]
mov dl, byte [eax + ecx]
mov eax, dword [0x2bccfbc]
mov byte [ecx + eax], dl
inc ecx
cmp ecx, dword [0x2bcf43c]
jb 0x4169a0
call fcn.00416620
call fcn.00415d60
call fcn.00416720
mov edi, dword [sym.imp.KERNEL32.dll_GetProcessWorkingSetSize]
xor esi, esi
cmp dword [0x2bcf43c], 0x41
jne 0x4169f0
push ebx
push ebx
push ebx
call edi
cmp esi, 0xbd9cb
jne 0x416a02
add dword [0x2bccfbc], 0
inc esi
cmp esi, 0x15a63d
jl 0x4169e2
mov edi, dword [sym.imp.USER32.dll_GetClassLongA]
mov ebx, dword [esp + 0x24]
xor esi, esi
push 0
push 0
call edi
cmp esi, 0x1ac2b
jle 0x416a2d
cmp ebx, 0xf5bee1
jne 0x416a36
inc esi
cmp esi, 0x1ebc2db6
jl 0x416a17
mov ecx, dword [esp + 0x114c]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.00401112
mov esp, ebp
pop ebp
ret
cmp dword [0x2bcf43c], 0xa
jne 0x4167e7
xor ebx, ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
jmp 0x4167e9