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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0xd24
mov eax, dword [0x4ac004]
xor eax, esp
mov dword [esp + 0xd20], 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
jmp 0x49b150
call edi
push 0
call ebx
push 0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_GetConsoleAliasesA]
cmp esi, 0x176afc
jg 0x49b318
inc esi
cmp esi, 0x365ea9e0
jl 0x49b150
xor ebx, ebx
mov edi, dword [sym.imp.KERNEL32.dll_ResetEvent]
xor esi, esi
cmp esi, 0x562d05
jne 0x49b193
mov eax, dword [0x4ad944]
mov dword [0x2c54438], eax
cmp dword [0x2c54434], 0x3c
jne 0x49b19f
push ebx
call edi
inc esi
cmp esi, 0x5f6c74
jl 0x49b181
cmp dword [0x2c54434], 0x7c
jne 0x49b278
lea ecx, [esp + 0x10]
push ecx
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
push ebx
call dword [sym.imp.KERNEL32.dll_FindAtomW]
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 + 0x1c]
push eax
push ebx
lea ecx, [esp + 0x534]
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 + 0x4c]
push ebx
push edx
mov dword [esp + 0x50], ebx
call fcn.004043f0
add esp, 0xc
push ebx
lea eax, [esp + 0x48]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_SetDefaultCommConfigW]
push ebx
call dword [sym.imp.KERNEL32.dll_FreeEnvironmentStringsA]
push str.fubeyof
call dword [sym.imp.KERNEL32.dll_AddAtomW]
lea ecx, [esp + 0x128]
push ecx
push ebx
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryA]
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_EnumDateFormatsW]
cmp dword [0x2c54434], 0x2d
jne 0x49b25e
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_FatalAppExitW]
cmp dword [0x2c54434], 0x54
jne 0x49b278
lea edx, [esp + 0x14]
push edx
push str.sebumoyejebodedowaguzogekaz
push ebx
call dword [sym.imp.KERNEL32.dll_GetModuleHandleExW]
cmp dword [0x2c54434], 0x110a
jne 0x49b334
push ebx
mov dword [0x2c540a0], ebx
mov dword [0x2c540a4], ebx
call dword [sym.imp.KERNEL32.dll_GetConsoleAliasesLengthW]
lea eax, [esp + 0x14]
push eax
lea ecx, [esp + 0x12c]
push ecx
push str.rakajipuvit
call dword [sym.imp.KERNEL32.dll_DnsHostnameToComputerNameA]
push ebx
lea edx, [esp + 0x52c]
push edx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
push ebx
push ebx
lea eax, [esp + 0x80]
push eax
call dword [sym.imp.KERNEL32.dll_TzSpecificLocalTimeToSystemTime]
push ebx
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_OpenWaitableTimerA]
push ebx
push str.cipuhay
push ebx
push str.lelematu
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_CompareStringA]
push ebx
push ebx
call fcn.00401155
push ebx
call fcn.0040111b
add esp, 0xc
push ebx
push ebx
call fcn.00401155
add esp, 8
push ebx
call fcn.004014ab
cmp dword [0x2c54434], 0xa
jne 0x49b177
xor ebx, ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
jmp 0x49b179
call fcn.0049a6d0
xor ecx, ecx
cmp dword [0x2c54434], ebx
jbe 0x49b37b
jmp 0x49b350
mov edx, dword [0x2c54438]
mov dword [esp + 0x10], edx
mov eax, 0xa231
add dword [esp + 0x10], eax
mov eax, dword [esp + 0x10]
mov dl, byte [eax + ecx]
mov eax, dword [0x2c51fb4]
mov byte [eax + ecx], dl
inc ecx
cmp ecx, dword [0x2c54434]
jb 0x49b350
call fcn.0049afc0
call fcn.0049a700
call fcn.0049b0b0
mov edi, dword [sym.imp.KERNEL32.dll_GetProcessWorkingSetSize]
xor esi, esi
cmp dword [0x2c54434], 0x41
jne 0x49b3a0
push ebx
push ebx
push ebx
call edi
cmp esi, 0xbd9cb
jne 0x49b3b2
add dword [0x2c51fb4], 0
inc esi
cmp esi, 0x15a63d
jl 0x49b392
mov edi, dword [sym.imp.USER32.dll_GetClassLongW]
mov ebx, dword [esp + 0x24]
xor esi, esi
push 0
push 0
call edi
cmp esi, 0x1ac2b
jle 0x49b3dd
cmp ebx, 0xf5bee1
jne 0x49b3e6
inc esi
cmp esi, 0x1ebc2db6
jl 0x49b3c7
mov ecx, dword [esp + 0xd2c]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.0040110c
mov esp, ebp
pop ebp
ret