Function at 0x40aaa5
Capabilities:
Create thread

Disassembly:
push 0x4b4
mov eax, 0x488a65
call fcn.0046dc2d
mov esi, ecx
mov dword [ebp - 0x4ac], esi
mov eax, dword [ebp + 0xc]
mov ebx, dword [ebp + 8]
mov dword [ebp - 0x4bc], eax
lea eax, [esi + 0x10ec]
push eax
mov dword [ebp - 0x4b0], esi
mov dword [ebp - 0x4b8], ebx
mov dword [ebp - 0x4b4], eax
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
mov edi, dword [sym.imp.KERNEL32.dll_lstrcpyW]
push str.abc
push 0x4c2748
call edi
lea eax, [ebx + 0x30]
cmp dword [eax + 0x14], 8
jb 0x40ab04
mov eax, dword [eax]
push eax
push 0x4c3150
call edi
push 0x4a2ac8
push 0x4c3150
call dword [sym.imp.KERNEL32.dll_lstrcatW]
cmp byte [ebx + 0x7f], 0
je 0x40ab33
imul eax, dword [ebx + 0x80], 0x3e8
push eax
call dword [sym.imp.KERNEL32.dll_Sleep]
call fcn.0046a823
xor edi, edi
mov dword [ebx + 0xd0], eax
push edi
push edi
push edi
push 0x40d387
push edi
push edi
call dword [sym.imp.KERNEL32.dll_CreateThread]
mov dword [ebp - 0x4c0], eax
test eax, eax
je 0x40ade2
push 0x1b7740
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov dword [ebp - 0x4b4], edi
cmp eax, 0x102
jne 0x40ab8a
mov eax, dword [ebx + 0xd0]
add eax, 0x1b7740
mov dword [ebx + 0xd4], eax
jmp 0x40abf4
call fcn.0046a823
mov dword [ebx + 0xd4], eax
lea eax, [ebp - 0x4b4]
push eax
push dword [ebp - 0x4c0]
mov dword [ebp - 4], edi
call dword [sym.imp.KERNEL32.dll_GetExitCodeProcess]
mov edx, dword [ebp - 0x4b4]
lea ecx, [ebp - 0x2c]
call fcn.00405f47
push eax
lea ecx, [ebx + 0xb8]
call fcn.00404f01
push edi
push 1
lea ecx, [ebp - 0x2c]
call fcn.00405131
or dword [ebp - 4], 0xffffffff
jmp 0x40abf4
lea eax, [ebp - 0x208]
mov ecx, esi
push eax
call fcn.0042cec6
push eax
lea ecx, [ebp - 0x20]
mov dword [ebp - 4], 2
call fcn.0040dd45
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 4
call fcn.004045c4
mov esi, dword [ebp - 0x20]
cmp esi, dword [ebp - 0x1c]
je 0x40ac88
add ebx, 0x48
mov dword [ebp - 0x4b0], ebx
push esi
lea ecx, [ebp - 0x4a8]
call fcn.0040985f
push ecx
push ebx
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 5
call fcn.00410be3
lea edx, [ebp - 0x60]
lea ecx, [ebp - 0x49c]
call fcn.00411daa
lea ecx, [ebp - 0x60]
mov bl, al
call fcn.00410e35
test bl, bl
jne 0x40aca8
lea ecx, [ebp - 0x4a8]
mov byte [ebp - 4], 4
call fcn.00405aed
mov ebx, dword [ebp - 0x4b0]
add esi, 0x26c
cmp esi, dword [ebp - 0x1c]
jne 0x40ac32
mov esi, dword [ebp - 0x4ac]
lea ecx, [ebp - 0x20]
call fcn.004051e5
lea eax, [esi + 0x10ec]
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
jmp 0x40b085
lea ecx, [ebp - 0x194]
call fcn.0040aa44
lea eax, [ebp - 0x49c]
mov byte [ebp - 4], 6
push eax
lea ecx, [ebp - 0x12c]
call fcn.00410e51
mov esi, dword [ebp - 0x4ac]
lea eax, [ebp - 0x23c]
push eax
mov ecx, esi
call fcn.0042ce8f
push eax
lea ecx, [ebp - 0x194]
mov byte [ebp - 4], 7
call fcn.00410e51
lea ecx, [ebp - 0x23c]
mov byte [ebp - 4], 6
call fcn.0040731a
lea ecx, [ebp - 0x60]
call fcn.004218af
push eax
lea ecx, [ebp - 0x160]
mov byte [ebp - 4], 8
call fcn.00410e51
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 6
call fcn.00410e35
push ecx
push 0x4a2a4c
lea ecx, [ebp - 0x60]
call fcn.00410c3a
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 9
push eax
lea ecx, [ebp - 0xc4]
call fcn.00410e51
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 6
call fcn.00410e35
mov ecx, dword [ebp - 0x4b8]
mov eax, dword [ecx + 0xd4]
sub eax, dword [ecx + 0xd0]
mov ecx, 0x3e8
cdq
idiv ecx
mov ecx, 0x708
cdq
xor eax, edx
sub eax, edx
cmp eax, ecx
cmovg eax, ecx
lea ecx, [ebp - 0x78]
mov edx, eax
call fcn.00405e5a
push 1
push eax
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0xa
call fcn.00410b63
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0xb
push eax
lea ecx, [ebp - 0xf8]
call fcn.00410e51
lea ecx, [ebp - 0x60]
call fcn.00410e35
push edi
push 1
lea ecx, [ebp - 0x78]
mov byte [ebp - 4], 6
call fcn.00403790
lea eax, [ebp - 0x194]
mov ecx, esi
push eax
call fcn.0040b843
lea ecx, [ebp - 0x194]
call fcn.0040aa74
lea ecx, [ebp - 0x4a8]
call fcn.00405aed
jmp 0x40ac8e
call fcn.0046a823
push 0x4a2528
lea ecx, [ebp - 0x78]
mov dword [ebx + 0xd4], eax
call fcn.00404eab
lea eax, [ebx + 0x18]
mov dword [ebp - 4], 0xc
push eax
mov edx, str.Cannot_run_component_in_memory:
lea ecx, [ebp - 0x2c]
call fcn.0040ebda
pop ecx
push 0xffffffffffffffff
push edi
push eax
lea ecx, [ebp - 0x78]
mov byte [ebp - 4], 0xd
call fcn.00405274
push edi
push 1
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0xc
call fcn.00405131
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea ecx, [ebp - 0x90]
call fcn.00405f47
push eax
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0xe
call fcn.0040ec44
pop ecx
push 0xffffffffffffffff
push edi
push eax
lea ecx, [ebp - 0x78]
mov byte [ebp - 4], 0xf
call fcn.00405274
push edi
push 1
lea ecx, [ebp - 0x2c]
call fcn.00405131
push edi
push 1
lea ecx, [ebp - 0x90]
mov byte [ebp - 4], 0xc
call fcn.00405131
lea eax, [ebp - 0x78]
push eax
lea eax, [ebp - 0x90]
push eax
lea ecx, [esi + 0x1088]
call fcn.0042652a
push edi
push 1
lea ecx, [ebp - 0x90]
call fcn.00405131
lea eax, [ebp - 0x208]
mov ecx, esi
push eax
call fcn.0042cec6
push eax
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 0x10
call fcn.0040dd45
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 0x12
call fcn.004045c4
mov esi, dword [ebp - 0x20]
cmp esi, dword [ebp - 0x1c]
je 0x40b052
add ebx, 0x48
mov dword [ebp - 0x4b0], ebx
push esi
lea ecx, [ebp - 0x4a8]
call fcn.0040985f
push ecx
push ebx
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0x13
call fcn.00410be3
lea edx, [ebp - 0x60]
lea ecx, [ebp - 0x49c]
call fcn.00411daa
lea ecx, [ebp - 0x60]
mov bl, al
call fcn.00410e35
test bl, bl
jne 0x40af3e
lea ecx, [ebp - 0x4a8]
mov byte [ebp - 4], 0x12
call fcn.00405aed
mov ebx, dword [ebp - 0x4b0]
add esi, 0x26c
cmp esi, dword [ebp - 0x1c]
jne 0x40aee3
jmp 0x40b052
lea ecx, [ebp - 0x194]
call fcn.0040aa44
lea eax, [ebp - 0x49c]
mov byte [ebp - 4], 0x14
push eax
lea ecx, [ebp - 0x12c]
call fcn.00410e51
mov ecx, dword [ebp - 0x4ac]
lea eax, [ebp - 0x23c]
push eax
call fcn.0042ce8f
push eax
lea ecx, [ebp - 0x194]
mov byte [ebp - 4], 0x15
call fcn.00410e51
lea ecx, [ebp - 0x23c]
mov byte [ebp - 4], 0x14
call fcn.0040731a
lea ecx, [ebp - 0x60]
call fcn.004218af
push eax
lea ecx, [ebp - 0x160]
mov byte [ebp - 4], 0x16
call fcn.00410e51
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0x14
call fcn.00410e35
push ecx
push 0x4a2a44
lea ecx, [ebp - 0x60]
call fcn.00410c3a
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x17
push eax
lea ecx, [ebp - 0xc4]
call fcn.00410e51
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0x14
call fcn.00410e35
xor edx, edx
lea ecx, [ebp - 0x90]
call fcn.00405dcc
push 1
push eax
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0x18
call fcn.00410b63
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x19
push eax
lea ecx, [ebp - 0xf8]
call fcn.00410e51
lea ecx, [ebp - 0x60]
call fcn.00410e35
push edi
push 1
lea ecx, [ebp - 0x90]
mov byte [ebp - 4], 0x14
call fcn.00403790
mov ecx, dword [ebp - 0x4ac]
lea eax, [ebp - 0x194]
push eax
call fcn.0040b843
lea ecx, [ebp - 0x194]
call fcn.0040aa74
lea ecx, [ebp - 0x4a8]
call fcn.00405aed
lea ecx, [ebp - 0x20]
call fcn.004051e5
push dword [ebp - 0x4b4]
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
push edi
push 3
push 0x111
push dword [ebp - 0x4bc]
call dword [sym.imp.USER32.dll_SendMessageW]
push edi
push 1
lea ecx, [ebp - 0x78]
call fcn.00405131
call fcn.0046db7f
ret 8