Function at 0x40a9ee
Capabilities:
Create thread

Disassembly:
push 0x4b4
mov eax, 0x4885bc
call fcn.0046d79d
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 + 0x1084]
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 0x4c1748
call edi
lea eax, [ebx + 0x30]
cmp dword [eax + 0x14], 8
jb 0x40aa4d
mov eax, dword [eax]
push eax
push 0x4c2150
call edi
push 0x4a2ac8
push 0x4c2150
call dword [sym.imp.KERNEL32.dll_lstrcatW]
cmp byte [ebx + 0x7f], 0
je 0x40aa7c
imul eax, dword [ebx + 0x80], 0x3e8
push eax
call dword [sym.imp.KERNEL32.dll_Sleep]
call fcn.0046a393
xor edi, edi
mov dword [ebx + 0xd0], eax
push edi
push edi
push edi
push 0x40d2d0
push edi
push edi
call dword [sym.imp.KERNEL32.dll_CreateThread]
mov dword [ebp - 0x4c0], eax
test eax, eax
je 0x40ad2b
push 0x1b7740
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov dword [ebp - 0x4b4], edi
cmp eax, 0x102
jne 0x40aad3
mov eax, dword [ebx + 0xd0]
add eax, 0x1b7740
mov dword [ebx + 0xd4], eax
jmp 0x40ab3d
call fcn.0046a393
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 0x40ab3d
lea eax, [ebp - 0x208]
mov ecx, esi
push eax
call fcn.0042cd93
push eax
lea ecx, [ebp - 0x20]
mov dword [ebp - 4], 2
call fcn.0040dc8e
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 4
call fcn.004045c4
mov esi, dword [ebp - 0x20]
cmp esi, dword [ebp - 0x1c]
je 0x40abd1
add ebx, 0x48
mov dword [ebp - 0x4b0], ebx
push esi
lea ecx, [ebp - 0x4a8]
call fcn.004097a8
push ecx
push ebx
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 5
call fcn.00410b48
lea edx, [ebp - 0x60]
lea ecx, [ebp - 0x49c]
call fcn.00411d0f
lea ecx, [ebp - 0x60]
mov bl, al
call fcn.00410d9a
test bl, bl
jne 0x40abf1
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 0x40ab7b
mov esi, dword [ebp - 0x4ac]
lea ecx, [ebp - 0x20]
call fcn.004051e5
lea eax, [esi + 0x1084]
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
jmp 0x40afce
lea ecx, [ebp - 0x194]
call fcn.0040a98d
lea eax, [ebp - 0x49c]
mov byte [ebp - 4], 6
push eax
lea ecx, [ebp - 0x12c]
call fcn.00410db6
mov esi, dword [ebp - 0x4ac]
lea eax, [ebp - 0x23c]
push eax
mov ecx, esi
call fcn.0042cd5c
push eax
lea ecx, [ebp - 0x194]
mov byte [ebp - 4], 7
call fcn.00410db6
lea ecx, [ebp - 0x23c]
mov byte [ebp - 4], 6
call fcn.00407263
lea ecx, [ebp - 0x60]
call fcn.0042177c
push eax
lea ecx, [ebp - 0x160]
mov byte [ebp - 4], 8
call fcn.00410db6
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 6
call fcn.00410d9a
push ecx
push 0x4a2a4c
lea ecx, [ebp - 0x60]
call fcn.00410b9f
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 9
push eax
lea ecx, [ebp - 0xc4]
call fcn.00410db6
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 6
call fcn.00410d9a
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.00410ac8
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0xb
push eax
lea ecx, [ebp - 0xf8]
call fcn.00410db6
lea ecx, [ebp - 0x60]
call fcn.00410d9a
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.0040b78c
lea ecx, [ebp - 0x194]
call fcn.0040a9bd
lea ecx, [ebp - 0x4a8]
call fcn.00405aed
jmp 0x40abd7
call fcn.0046a393
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.0040eb23
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.0040eb8d
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 + 0x1020]
call fcn.004263f7
push edi
push 1
lea ecx, [ebp - 0x90]
call fcn.00405131
lea eax, [ebp - 0x208]
mov ecx, esi
push eax
call fcn.0042cd93
push eax
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 0x10
call fcn.0040dc8e
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 0x12
call fcn.004045c4
mov esi, dword [ebp - 0x20]
cmp esi, dword [ebp - 0x1c]
je 0x40af9b
add ebx, 0x48
mov dword [ebp - 0x4b0], ebx
push esi
lea ecx, [ebp - 0x4a8]
call fcn.004097a8
push ecx
push ebx
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0x13
call fcn.00410b48
lea edx, [ebp - 0x60]
lea ecx, [ebp - 0x49c]
call fcn.00411d0f
lea ecx, [ebp - 0x60]
mov bl, al
call fcn.00410d9a
test bl, bl
jne 0x40ae87
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 0x40ae2c
jmp 0x40af9b
lea ecx, [ebp - 0x194]
call fcn.0040a98d
lea eax, [ebp - 0x49c]
mov byte [ebp - 4], 0x14
push eax
lea ecx, [ebp - 0x12c]
call fcn.00410db6
mov ecx, dword [ebp - 0x4ac]
lea eax, [ebp - 0x23c]
push eax
call fcn.0042cd5c
push eax
lea ecx, [ebp - 0x194]
mov byte [ebp - 4], 0x15
call fcn.00410db6
lea ecx, [ebp - 0x23c]
mov byte [ebp - 4], 0x14
call fcn.00407263
lea ecx, [ebp - 0x60]
call fcn.0042177c
push eax
lea ecx, [ebp - 0x160]
mov byte [ebp - 4], 0x16
call fcn.00410db6
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0x14
call fcn.00410d9a
push ecx
push 0x4a2a44
lea ecx, [ebp - 0x60]
call fcn.00410b9f
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x17
push eax
lea ecx, [ebp - 0xc4]
call fcn.00410db6
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0x14
call fcn.00410d9a
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.00410ac8
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x19
push eax
lea ecx, [ebp - 0xf8]
call fcn.00410db6
lea ecx, [ebp - 0x60]
call fcn.00410d9a
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.0040b78c
lea ecx, [ebp - 0x194]
call fcn.0040a9bd
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.0046d6ef
ret 8