Function at 0x408cd0
Capabilities:
Connect pipe
Get common file path
Get file attributes
Get geographical location
Manipulate console buffer

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x43c
mov eax, dword [0x420004]
xor eax, esp
mov dword [esp + 0x438], eax
mov edx, dword [0x421cf0]
mov ecx, dword [0x52189c]
push ebx
push esi
push edi
xor ebx, ebx
xor eax, eax
mov edi, 0xec58acac
or esi, 0xffffffff
cmp eax, 0x8450db
jne 0x408d12
lea ecx, [edx + 0xa231]
cmp ecx, 0x141
jne 0x408d26
mov dword [0x422e70], edi
mov dword [0x422e74], esi
inc eax
cmp eax, 0xb9fa618
jl 0x408d05
mov edi, dword [sym.imp.KERNEL32.dll_SetEvent]
mov dword [0x52189c], ecx
xor esi, esi
lea esp, [esp]
cmp esi, 0x562d05
jne 0x408d52
mov eax, dword [0x421ce4]
mov dword [0x521c24], eax
cmp ecx, 0x3c
jne 0x408d60
push ebx
call edi
mov ecx, dword [0x52189c]
inc esi
cmp esi, 0x5f6c74
jl 0x408d40
cmp ecx, 0x7c
jne 0x408dd9
lea ecx, [esp + 0x14]
push ecx
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
call dword [sym.imp.KERNEL32.dll_GetThreadLocale]
push ebx
call dword [sym.imp.KERNEL32.dll_FindAtomW]
push ebx
call dword [sym.imp.KERNEL32.dll_UnhandledExceptionFilter]
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_GetNumaProcessorNode]
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
push ebx
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
push ebx
lea edx, [esp + 0x44]
push edx
push ebx
call dword [sym.imp.KERNEL32.dll_GetProfileSectionA]
cmp dword [0x52189c], 0x2d
jne 0x408dca
push ebx
lea eax, [esp + 0x14]
push eax
mov dword [esp + 0x18], ebx
call dword [sym.imp.KERNEL32.dll_ConnectNamedPipe]
push ebx
call fcn.0040113d
mov ecx, dword [0x52189c]
add esp, 4
cmp ecx, 0x110a
jne 0x408e3c
push str.joxesonofumoyodimuzuvi
mov dword [0x521890], ebx
mov dword [0x521894], ebx
call dword [sym.imp.KERNEL32.dll_SetComputerNameA]
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push str.cesiwozaxaweso
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoA]
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_HeapValidate]
push ebx
call fcn.0040100f
push str.0__s__d__f
call fcn.00401120
push ebx
call fcn.0040100f
push ebx
push ebx
call fcn.00401153
add esp, 0x14
call fcn.004089f0
xor esi, esi
cmp dword [0x52189c], ebx
jbe 0x408e8e
mov edi, dword [sym.imp.KERNEL32.dll_CreateHardLinkA]
mov ecx, dword [0x521c24]
mov dword [esp + 0x10], ecx
mov eax, 0xa231
add dword [esp + 0x10], eax
cmp dword [0x52189c], 0x5ab
mov edx, dword [esp + 0x10]
mov al, byte [edx + esi]
mov ecx, dword [0x5215bc]
mov byte [ecx + esi], al
jne 0x408e85
push ebx
push ebx
push ebx
call edi
inc esi
cmp esi, dword [0x52189c]
jb 0x408e51
push str.msimg32.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
call fcn.00408a30
call fcn.00408c60
call fcn.00408a20
mov edi, dword [sym.imp.USER32.dll_GetMonitorInfoW]
mov ebx, dword [sym.imp.KERNEL32.dll_GetAtomNameA]
xor esi, esi
lea edx, [esp + 0x18]
push edx
push 0
call edi
push 0
push 0
push 0
call ebx
cmp esi, 0x1a01e
jle 0x408ed9
cmp dword [esp + 0x20], 0xf5bed7
jne 0x408ee2
inc esi
cmp esi, 0x1ece7a52
jl 0x408eb6
mov edi, dword [sym.imp.KERNEL32.dll_ReadConsoleOutputCharacterA]
mov ebx, dword [sym.imp.KERNEL32.dll_CreateFileW]
xor esi, esi
cmp esi, 0x12e6c3
jne 0x408efd
call fcn.004089e0
cmp dword [0x52189c], 0x3dc
mov dword [0x5215c4], 0x8e46a6f0
jne 0x408f37
xor eax, eax
lea edx, [esp + 0x14]
push edx
push eax
push eax
push eax
push eax
mov dword [esp + 0x24], eax
call edi
push 0
push 0
push 0
push 0
push 0
push 0
push str.simuyijiyexerezopexezusasegere
call ebx
inc esi
cmp esi, 0x1519a5
jl 0x408ef0
mov ecx, dword [esp + 0x444]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.00401000
mov esp, ebp
pop ebp
ret