Function at 0x42c8f0
Capabilities:
Terminate thread

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
push ebx
push esi
mov esi, eax
mov eax, dword [0x52afa0]
push edi
push eax
call dword [sym.imp.KERNEL32.dll_SetEvent]
mov eax, dword [esi + 0x268]
mov ebx, dword [sym.imp.KERNEL32.dll_TerminateThread]
xor edi, edi
cmp eax, edi
je 0x42c96c
lea ecx, [ebp - 4]
mov dword [ebp - 4], edi
mov edx, dword [eax + 0x2c]
push ecx
push edx
call dword [sym.imp.KERNEL32.dll_GetExitCodeThread]
cmp dword [ebp - 4], 0x103
jne 0x42c966
mov eax, dword [esi + 0x268]
mov ecx, dword [eax + 0x2c]
push 0xffffffffffffffff
push ecx
call ebx
mov edx, dword [esi + 0x268]
mov eax, dword [edx + 0x2c]
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov ecx, dword [esi + 0x268]
cmp ecx, edi
je 0x42c966
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push 1
call eax
mov dword [esi + 0x268], edi
mov eax, dword [esi + 0x26c]
cmp eax, edi
je 0x42c9c9
lea ecx, [ebp - 8]
mov dword [ebp - 8], edi
mov edx, dword [eax + 0x2c]
push ecx
push edx
call dword [sym.imp.KERNEL32.dll_GetExitCodeThread]
cmp dword [ebp - 8], 0x103
jne 0x42c9c3
mov eax, dword [esi + 0x26c]
mov ecx, dword [eax + 0x2c]
push 0xffffffffffffffff
push ecx
call ebx
mov edx, dword [esi + 0x26c]
mov eax, dword [edx + 0x2c]
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov ecx, dword [esi + 0x26c]
cmp ecx, edi
je 0x42c9c3
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push 1
call eax
mov dword [esi + 0x26c], edi
mov eax, dword [esi + 0x270]
cmp eax, edi
je 0x42ca26
lea ecx, [ebp - 0xc]
mov dword [ebp - 0xc], edi
mov edx, dword [eax + 0x2c]
push ecx
push edx
call dword [sym.imp.KERNEL32.dll_GetExitCodeThread]
cmp dword [ebp - 0xc], 0x103
jne 0x42ca20
mov eax, dword [esi + 0x270]
mov ecx, dword [eax + 0x2c]
push 0xffffffffffffffff
push ecx
call ebx
mov edx, dword [esi + 0x270]
mov eax, dword [edx + 0x2c]
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov ecx, dword [esi + 0x270]
cmp ecx, edi
je 0x42ca20
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push 1
call eax
mov dword [esi + 0x270], edi
mov eax, dword [esi + 0x274]
cmp eax, edi
je 0x42ca83
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], edi
mov edx, dword [eax + 0x2c]
push ecx
push edx
call dword [sym.imp.KERNEL32.dll_GetExitCodeThread]
cmp dword [ebp - 0x10], 0x103
jne 0x42ca7d
mov eax, dword [esi + 0x274]
mov ecx, dword [eax + 0x2c]
push 0xffffffffffffffff
push ecx
call ebx
mov edx, dword [esi + 0x274]
mov eax, dword [edx + 0x2c]
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov ecx, dword [esi + 0x274]
cmp ecx, edi
je 0x42ca7d
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push 1
call eax
mov dword [esi + 0x274], edi
mov eax, dword [esi + 0x84]
cmp eax, edi
je 0x42ca9c
push eax
call fcn.0045024c
add esp, 4
mov dword [esi + 0x84], edi
mov eax, dword [esi + 0x80]
mov dword [esi + 0x7c], edi
cmp eax, edi
je 0x42cab8
push eax
call fcn.0045024c
add esp, 4
mov dword [esi + 0x80], edi
mov eax, dword [esi + 0x78]
cmp eax, edi
je 0x42cacb
push eax
call fcn.0046f030
add esp, 4
mov dword [esi + 0x78], edi
mov ecx, dword [esi + 0x168]
cmp ecx, edi
je 0x42caf1
cmp dword [ecx - 4], edi
lea eax, [ecx - 4]
je 0x42cae8
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push 3
call eax
jmp 0x42caf1
push eax
call fcn.0045024c
add esp, 4
mov ecx, dword [esi + 0x16c]
cmp ecx, edi
je 0x42cb04
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push 1
call eax
mov ecx, dword [esi + 0x170]
cmp ecx, edi
je 0x42cb17
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push 1
call eax
mov ecx, dword [esi + 0x174]
cmp ecx, edi
je 0x42cb2a
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push 1
call eax
mov ecx, dword [esi + 0x178]
cmp ecx, edi
je 0x42cb3d
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push 1
call eax
mov ecx, dword [0x529dc4]
cmp ecx, edi
je 0x42cb71
mov eax, dword [ecx + 4]
lea esi, [ecx + 4]
cmp eax, edi
je 0x42cb62
push eax
call fcn.0045024c
mov ecx, dword [0x529dc4]
add esp, 4
mov dword [esi], edi
push ecx
call fcn.0045024c
add esp, 4
mov dword [0x529dc4], edi
mov ecx, dword [0x529dc8]
cmp ecx, edi
je 0x42cba5
mov eax, dword [ecx + 4]
lea esi, [ecx + 4]
cmp eax, edi
je 0x42cb96
push eax
call fcn.0045024c
mov ecx, dword [0x529dc8]
add esp, 4
mov dword [esi], edi
push ecx
call fcn.0045024c
add esp, 4
mov dword [0x529dc8], edi
mov ecx, dword [0x529dcc]
cmp ecx, edi
je 0x42cbd9
mov eax, dword [ecx + 4]
lea esi, [ecx + 4]
cmp eax, edi
je 0x42cbca
push eax
call fcn.0045024c
mov ecx, dword [0x529dcc]
add esp, 4
mov dword [esi], edi
push ecx
call fcn.0045024c
add esp, 4
mov dword [0x529dcc], edi
mov ecx, dword [0x529dd0]
cmp ecx, edi
je 0x42cc0d
mov eax, dword [ecx + 4]
lea esi, [ecx + 4]
cmp eax, edi
je 0x42cbfe
push eax
call fcn.0045024c
mov ecx, dword [0x529dd0]
add esp, 4
mov dword [esi], edi
push ecx
call fcn.0045024c
add esp, 4
mov dword [0x529dd0], edi
mov ecx, dword [0x529dd4]
cmp ecx, edi
je 0x42cc41
mov eax, dword [ecx + 4]
lea esi, [ecx + 4]
cmp eax, edi
je 0x42cc32
push eax
call fcn.0045024c
mov ecx, dword [0x529dd4]
add esp, 4
mov dword [esi], edi
push ecx
call fcn.0045024c
add esp, 4
mov dword [0x529dd4], edi
mov ecx, dword [0x529dd8]
cmp ecx, edi
je 0x42cc75
mov eax, dword [ecx + 4]
lea esi, [ecx + 4]
cmp eax, edi
je 0x42cc66
push eax
call fcn.0045024c
mov ecx, dword [0x529dd8]
add esp, 4
mov dword [esi], edi
push ecx
call fcn.0045024c
add esp, 4
mov dword [0x529dd8], edi
mov ecx, dword [0x529ddc]
cmp ecx, edi
je 0x42cca9
mov eax, dword [ecx + 4]
lea esi, [ecx + 4]
cmp eax, edi
je 0x42cc9a
push eax
call fcn.0045024c
mov ecx, dword [0x529ddc]
add esp, 4
mov dword [esi], edi
push ecx
call fcn.0045024c
add esp, 4
mov dword [0x529ddc], edi
mov ecx, dword [0x529de0]
cmp ecx, edi
je 0x42ccdd
mov eax, dword [ecx + 4]
lea esi, [ecx + 4]
cmp eax, edi
je 0x42ccce
push eax
call fcn.0045024c
mov ecx, dword [0x529de0]
add esp, 4
mov dword [esi], edi
push ecx
call fcn.0045024c
add esp, 4
mov dword [0x529de0], edi
mov ecx, dword [0x529d70]
cmp ecx, edi
je 0x42cd1d
call fcn.00449e50
lea esi, [ecx + 4]
mov ebx, eax
mov eax, dword [esi]
cmp eax, edi
je 0x42cd02
push eax
call fcn.0045024c
add esp, 4
mov dword [esi], edi
push ebx
call fcn.0045024c
mov ecx, dword [0x529d70]
push ecx
call fcn.0045024c
add esp, 8
mov dword [0x529d70], edi
mov ecx, dword [0x529de4]
cmp ecx, edi
je 0x42cd51
mov eax, dword [ecx + 4]
lea esi, [ecx + 4]
cmp eax, edi
je 0x42cd42
push eax
call fcn.0045024c
mov ecx, dword [0x529de4]
add esp, 4
mov dword [esi], edi
push ecx
call fcn.0045024c
add esp, 4
mov dword [0x529de4], edi
mov eax, dword [0x52afe8]
sub eax, dword [0x52afe4]
mov ebx, dword [sym.imp.KERNEL32.dll_CloseHandle]
sar eax, 2
xor esi, esi
cmp eax, edi
jbe 0x42cd97
cmp esi, eax
jb 0x42cd74
call fcn.0046de02
mov edx, dword [0x52afe4]
mov eax, dword [edx + esi*4]
cmp eax, edi
je 0x42cd84
push eax
call ebx
mov eax, dword [0x52afe8]
sub eax, dword [0x52afe4]
inc esi
sar eax, 2
cmp esi, eax
jb 0x42cd74
call fcn.00440b40
mov eax, dword [0x529b3c]
mov esi, dword [sym.imp.GDI32.dll_DeleteObject]
cmp eax, edi
je 0x42cdb4
push eax
call esi
mov dword [0x529b3c], edi
mov eax, dword [0x529b40]
cmp eax, edi
je 0x42cdc6
push eax
call esi
mov dword [0x529b40], edi
mov eax, dword [0x529d8c]
cmp eax, edi
je 0x42cdd8
push eax
call ebx
mov dword [0x529d8c], edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret