Function at 0x437e30
Capabilities:
Accept command line arguments
Create process on windows
Create thread
Enumerate gui resources
Execute command
Hide graphical window
Set console window title
Terminate process

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x7c
push ebx
push esi
push edi
push str.WarRock_Papaya_External_Software
call dword [sym.imp.KERNEL32.dll_SetConsoleTitleA]
push str.Waiting_for_WarRock..
call fcn.00401810
mov ebx, dword [sym.imp.KERNEL32.dll_GetLastError]
add esp, 4
cmp dword [0x462064], 0
jne 0x437f57
nop word [eax + eax]
push 0x457450
push 0
call dword [sym.imp.USER32.dll_FindWindowA]
test eax, eax
je 0x437f4a
lea ecx, [esp + 0x10]
push ecx
push eax
call dword [sym.imp.USER32.dll_GetWindowThreadProcessId]
push 4
call fcn.00406871
add esp, 4
mov esi, eax
mov dword [esp + 0x1c], esi
mov edi, dword [esp + 0x10]
push 0
push 0x80
push 3
push 0
push 0
push 0x80000000
push 0x457458
mov dword [esi], 0
call dword [sym.imp.KERNEL32.dll_CreateFileA]
push 0
push 0
push 0x28
lea ecx, [esp + 0x4c]
mov dword [esi], eax
push ecx
push 0x28
push ecx
xorps xmm0, xmm0
mov dword [esp + 0x58], edi
push 0x1df62440
push eax
movlpd qword [esp + 0x68], xmm0
movlpd qword [esp + 0x70], xmm0
movlpd qword [esp + 0x78], xmm0
movlpd qword [esp + 0x80], xmm0
mov dword [esp + 0x64], 0
call dword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov eax, dword [esp + 0x10]
mov dword [esp + 0x24], eax
lea eax, [esp + 0x20]
push eax
push 0x438800
mov dword [esp + 0x28], 0
call dword [sym.imp.USER32.dll_EnumWindows]
test eax, eax
jne 0x437f41
call ebx
cmp eax, 0xffffffff
jne 0x437f41
mov eax, dword [esp + 0x20]
test eax, eax
jne 0x437f43
xor eax, eax
mov dword [0x462064], eax
jmp 0x437f4f
mov eax, dword [0x462064]
test eax, eax
je 0x437e70
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
push 0x1f4
call edi
push 0x457468
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
mov esi, dword [sym.imp.KERNEL32.dll_LoadLibraryA]
add esp, 4
push 0x456e54
call esi
test eax, eax
je 0x4382bb
push 0x456e60
call esi
test eax, eax
je 0x4382bb
mov esi, dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
push str.user32.dll
call esi
mov dword [0x46205c], eax
test eax, eax
je 0x4382bb
push str.win32u.dll
call esi
mov dword [0x462060], eax
test eax, eax
je 0x4382bb
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push 0x456f0c
push dword [0x46205c]
call esi
mov ecx, eax
test ecx, ecx
jne 0x43800c
push str.NtUserSendInput
push dword [0x462060]
call esi
mov ecx, eax
test ecx, ecx
jne 0x43800c
push str.The_input_was_not_initialized
call fcn.00401810
add esp, 4
push 0xbb8
call edi
push 0
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
movups xmm0, xmmword [ecx]
mov dword [esp + 0x14], 0
movups xmmword [0x46bcc8], xmm0
movq xmm0, qword [ecx + 0x10]
movq qword [0x46bcd8], xmm0
mov eax, dword [ecx + 0x18]
mov dword [0x46bce0], eax
mov ax, word [ecx + 0x1c]
mov word [0x46bce4], ax
lea eax, [esp + 0x10]
push eax
push 8
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call dword [sym.imp.ADVAPI32.dll_OpenProcessToken]
test eax, eax
je 0x43811c
lea eax, [esp + 0x20]
push eax
push 4
lea eax, [esp + 0x24]
push eax
push 0x1a
push dword [esp + 0x20]
call dword [sym.imp.ADVAPI32.dll_GetTokenInformation]
test eax, eax
je 0x438083
mov esi, dword [esp + 0x20]
mov dword [esp + 0x14], 1
jmp 0x438087
call ebx
mov esi, eax
push dword [esp + 0x10]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [esp + 0x14], 0
je 0x438120
cmp dword [esp + 0x1c], 0
jne 0x438128
lea ecx, [esp + 0x18]
call fcn.0043be90
test eax, eax
jne 0x4382b1
lea eax, [esp + 0x40]
push eax
call dword [sym.imp.KERNEL32.dll_GetStartupInfoW]
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
lea ecx, [esp + 0x30]
push ecx
lea ecx, [esp + 0x44]
push ecx
push 0
push 0
push 0
push 0
push 0
push 0
push eax
push 0
push dword [esp + 0x40]
call dword [sym.imp.ADVAPI32.dll_CreateProcessAsUserW]
test eax, eax
je 0x43810a
push dword [esp + 0x30]
mov ebx, dword [sym.imp.KERNEL32.dll_CloseHandle]
call ebx
push dword [esp + 0x34]
call ebx
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
call ebx
push dword [esp + 0x18]
mov ebx, dword [sym.imp.KERNEL32.dll_CloseHandle]
mov esi, eax
call ebx
jmp 0x438120
call ebx
mov esi, eax
test esi, esi
jne 0x4382b1
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push 0x456f68
push dword [0x46205c]
call esi
mov dword [0x462014], eax
test eax, eax
jne 0x43815e
push str.CreateWindowInBand
push dword [0x462060]
call esi
mov dword [0x462014], eax
test eax, eax
je 0x4382b1
mov eax, dword [sym.imp.USER32.dll_DefWindowProcA]
mov esi, dword [sym.imp.USER32.dll_LoadIconW]
push 0x7f00
push 0
mov dword [esp + 0x48], 0x30
mov dword [esp + 0x4c], 0
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], 0
mov dword [esp + 0x58], 0
mov dword [esp + 0x5c], 0
call esi
push 0x7f00
push 0
mov dword [esp + 0x60], eax
call dword [sym.imp.USER32.dll_LoadCursorW]
push 0x7f00
push 0
mov dword [esp + 0x64], eax
mov dword [esp + 0x68], 0
mov dword [esp + 0x6c], 0
mov dword [esp + 0x70], str.GayWindowClass
call esi
mov dword [esp + 0x6c], eax
lea eax, [esp + 0x40]
push eax
call dword [sym.imp.USER32.dll_RegisterClassExA]
movzx esi, ax
lea eax, [esp + 0x20]
push eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetWindowRect]
push 2
push 0
push dword [esp + 0x5c]
mov eax, dword [0x462014]
push 0
push 0
push dword [esp + 0x40]
push dword [esp + 0x40]
push dword [esp + 0x40]
push dword [esp + 0x40]
push 0x80000000
push str.GayWindowTitle
push esi
push 0
call eax
push 0x800a0
push 0xffffffffffffffec
push eax
mov dword [0x46200c], eax
call dword [sym.imp.USER32.dll_SetWindowLongW]
push 2
push 0xff
push 0
push dword [0x46200c]
call dword [sym.imp.USER32.dll_SetLayeredWindowAttributes]
movaps xmm0, xmmword [0x4578f0]
lea eax, [esp + 0x30]
push eax
push dword [0x46200c]
movups xmmword [esp + 0x38], xmm0
call dword [sym.imp.dwmapi.dll_DwmExtendFrameIntoClientArea]
push 5
push dword [0x46200c]
call dword [sym.imp.USER32.dll_ShowWindow]
push dword [0x46200c]
call dword [sym.imp.USER32.dll_UpdateWindow]
call fcn.0043adf0
mov esi, dword [sym.imp.KERNEL32.dll_CreateThread]
call fcn.004382d0
push 0
push 0
push 0
push 0x439130
push 0
push 0
call esi
push 0x3e8
call edi
jmp 0x438292
push str.The_gui_was_not_initialized
jmp 0x437ff5
push str.The_librarys_was_not_initialized
jmp 0x437ff5