Function at 0x40ab82
Capabilities:
Create thread

Disassembly:
push 0x4b4
mov eax, 0x4896b5
call fcn.0046e86d
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 0x4c37a8
call edi
lea eax, [ebx + 0x30]
cmp dword [eax + 0x14], 8
jb 0x40abe1
mov eax, dword [eax]
push eax
push 0x4c41b0
call edi
push 0x4a3aa0
push 0x4c41b0
call dword [sym.imp.KERNEL32.dll_lstrcatW]
cmp byte [ebx + 0x7f], 0
je 0x40ac10
imul eax, dword [ebx + 0x80], 0x3e8
push eax
call dword [sym.imp.KERNEL32.dll_Sleep]
call fcn.0046b473
xor edi, edi
mov dword [ebx + 0xd0], eax
push edi
push edi
push edi
push 0x40d4a2
push edi
push edi
call dword [sym.imp.KERNEL32.dll_CreateThread]
mov dword [ebp - 0x4c0], eax
test eax, eax
je 0x40aebf
push 0x1b7740
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov dword [ebp - 0x4b4], edi
cmp eax, 0x102
jne 0x40ac67
mov eax, dword [ebx + 0xd0]
add eax, 0x1b7740
mov dword [ebx + 0xd4], eax
jmp 0x40acd1
call fcn.0046b473
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.00405fca
push eax
lea ecx, [ebx + 0xb8]
call fcn.00404f11
push edi
push 1
lea ecx, [ebp - 0x2c]
call fcn.00405141
or dword [ebp - 4], 0xffffffff
jmp 0x40acd1
lea eax, [ebp - 0x208]
mov ecx, esi
push eax
call fcn.0042d836
push eax
lea ecx, [ebp - 0x20]
mov dword [ebp - 4], 2
call fcn.0040decc
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 4
call fcn.004045c6
mov esi, dword [ebp - 0x20]
cmp esi, dword [ebp - 0x1c]
je 0x40ad65
add ebx, 0x48
mov dword [ebp - 0x4b0], ebx
push esi
lea ecx, [ebp - 0x4a8]
call fcn.004098e2
push ecx
push ebx
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 5
call fcn.0041127c
lea edx, [ebp - 0x60]
lea ecx, [ebp - 0x49c]
call fcn.004123f3
lea ecx, [ebp - 0x60]
mov bl, al
call fcn.004114ce
test bl, bl
jne 0x40ad85
lea ecx, [ebp - 0x4a8]
mov byte [ebp - 4], 4
call fcn.00405b13
mov ebx, dword [ebp - 0x4b0]
add esi, 0x26c
cmp esi, dword [ebp - 0x1c]
jne 0x40ad0f
mov esi, dword [ebp - 0x4ac]
lea ecx, [ebp - 0x20]
call fcn.004051f5
lea eax, [esi + 0x10ec]
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
jmp 0x40b162
lea ecx, [ebp - 0x194]
call fcn.0040ab21
lea eax, [ebp - 0x49c]
mov byte [ebp - 4], 6
push eax
lea ecx, [ebp - 0x12c]
call fcn.004114ea
mov esi, dword [ebp - 0x4ac]
lea eax, [ebp - 0x23c]
push eax
mov ecx, esi
call fcn.0042d7ff
push eax
lea ecx, [ebp - 0x194]
mov byte [ebp - 4], 7
call fcn.004114ea
lea ecx, [ebp - 0x23c]
mov byte [ebp - 4], 6
call fcn.0040739d
lea ecx, [ebp - 0x60]
call fcn.0042221f
push eax
lea ecx, [ebp - 0x160]
mov byte [ebp - 4], 8
call fcn.004114ea
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 6
call fcn.004114ce
push ecx
push 0x4a3a24
lea ecx, [ebp - 0x60]
call fcn.004112d3
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 9
push eax
lea ecx, [ebp - 0xc4]
call fcn.004114ea
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 6
call fcn.004114ce
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.00405edd
push 1
push eax
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0xa
call fcn.004111fc
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0xb
push eax
lea ecx, [ebp - 0xf8]
call fcn.004114ea
lea ecx, [ebp - 0x60]
call fcn.004114ce
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.0040b920
lea ecx, [ebp - 0x194]
call fcn.0040ab51
lea ecx, [ebp - 0x4a8]
call fcn.00405b13
jmp 0x40ad6b
call fcn.0046b473
push 0x4a3528
lea ecx, [ebp - 0x78]
mov dword [ebx + 0xd4], eax
call fcn.00404ebb
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.0040ede0
pop ecx
push 0xffffffffffffffff
push edi
push eax
lea ecx, [ebp - 0x78]
mov byte [ebp - 4], 0xd
call fcn.00405284
push edi
push 1
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0xc
call fcn.00405141
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea ecx, [ebp - 0x90]
call fcn.00405fca
push eax
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0xe
call fcn.0040ee4a
pop ecx
push 0xffffffffffffffff
push edi
push eax
lea ecx, [ebp - 0x78]
mov byte [ebp - 4], 0xf
call fcn.00405284
push edi
push 1
lea ecx, [ebp - 0x2c]
call fcn.00405141
push edi
push 1
lea ecx, [ebp - 0x90]
mov byte [ebp - 4], 0xc
call fcn.00405141
lea eax, [ebp - 0x78]
push eax
lea eax, [ebp - 0x90]
push eax
lea ecx, [esi + 0x1088]
call fcn.00426e9a
push edi
push 1
lea ecx, [ebp - 0x90]
call fcn.00405141
lea eax, [ebp - 0x208]
mov ecx, esi
push eax
call fcn.0042d836
push eax
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 0x10
call fcn.0040decc
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 0x12
call fcn.004045c6
mov esi, dword [ebp - 0x20]
cmp esi, dword [ebp - 0x1c]
je 0x40b12f
add ebx, 0x48
mov dword [ebp - 0x4b0], ebx
push esi
lea ecx, [ebp - 0x4a8]
call fcn.004098e2
push ecx
push ebx
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0x13
call fcn.0041127c
lea edx, [ebp - 0x60]
lea ecx, [ebp - 0x49c]
call fcn.004123f3
lea ecx, [ebp - 0x60]
mov bl, al
call fcn.004114ce
test bl, bl
jne 0x40b01b
lea ecx, [ebp - 0x4a8]
mov byte [ebp - 4], 0x12
call fcn.00405b13
mov ebx, dword [ebp - 0x4b0]
add esi, 0x26c
cmp esi, dword [ebp - 0x1c]
jne 0x40afc0
jmp 0x40b12f
lea ecx, [ebp - 0x194]
call fcn.0040ab21
lea eax, [ebp - 0x49c]
mov byte [ebp - 4], 0x14
push eax
lea ecx, [ebp - 0x12c]
call fcn.004114ea
mov ecx, dword [ebp - 0x4ac]
lea eax, [ebp - 0x23c]
push eax
call fcn.0042d7ff
push eax
lea ecx, [ebp - 0x194]
mov byte [ebp - 4], 0x15
call fcn.004114ea
lea ecx, [ebp - 0x23c]
mov byte [ebp - 4], 0x14
call fcn.0040739d
lea ecx, [ebp - 0x60]
call fcn.0042221f
push eax
lea ecx, [ebp - 0x160]
mov byte [ebp - 4], 0x16
call fcn.004114ea
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0x14
call fcn.004114ce
push ecx
push 0x4a3a1c
lea ecx, [ebp - 0x60]
call fcn.004112d3
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x17
push eax
lea ecx, [ebp - 0xc4]
call fcn.004114ea
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0x14
call fcn.004114ce
xor edx, edx
lea ecx, [ebp - 0x90]
call fcn.00405e4f
push 1
push eax
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0x18
call fcn.004111fc
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x19
push eax
lea ecx, [ebp - 0xf8]
call fcn.004114ea
lea ecx, [ebp - 0x60]
call fcn.004114ce
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.0040b920
lea ecx, [ebp - 0x194]
call fcn.0040ab51
lea ecx, [ebp - 0x4a8]
call fcn.00405b13
lea ecx, [ebp - 0x20]
call fcn.004051f5
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.00405141
call fcn.0046e7bf
ret 8