Function at 0x4235f0
Capabilities:
Terminate thread

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
push ebx
push esi
mov esi, eax
mov eax, dword [0x50ff08]
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 0x42366c
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 0x423666
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 0x423666
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 0x4236c9
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 0x4236c3
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 0x4236c3
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 0x423726
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 0x423720
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 0x423720
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 0x423783
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 0x42377d
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 0x42377d
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 0x42379c
push eax
call fcn.0043ca01
add esp, 4
mov dword [esi + 0x84], edi
mov eax, dword [esi + 0x80]
mov dword [esi + 0x7c], edi
cmp eax, edi
je 0x4237b8
push eax
call fcn.0043ca01
add esp, 4
mov dword [esi + 0x80], edi
mov eax, dword [esi + 0x78]
cmp eax, edi
je 0x4237cb
push eax
call fcn.0045b48f
add esp, 4
mov dword [esi + 0x78], edi
mov ecx, dword [esi + 0x168]
cmp ecx, edi
je 0x4237f1
cmp dword [ecx - 4], edi
lea eax, [ecx - 4]
je 0x4237e8
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push 3
call eax
jmp 0x4237f1
push eax
call fcn.0043ca01
add esp, 4
mov ecx, dword [esi + 0x16c]
cmp ecx, edi
je 0x423804
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push 1
call eax
mov ecx, dword [esi + 0x170]
cmp ecx, edi
je 0x423817
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push 1
call eax
mov ecx, dword [esi + 0x174]
cmp ecx, edi
je 0x42382a
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push 1
call eax
mov ecx, dword [esi + 0x178]
cmp ecx, edi
je 0x42383d
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push 1
call eax
mov ecx, dword [0x50ed40]
cmp ecx, edi
je 0x423871
mov eax, dword [ecx + 4]
lea esi, [ecx + 4]
cmp eax, edi
je 0x423862
push eax
call fcn.0043ca01
mov ecx, dword [0x50ed40]
add esp, 4
mov dword [esi], edi
push ecx
call fcn.0043ca01
add esp, 4
mov dword [0x50ed40], edi
mov ecx, dword [0x50ed44]
cmp ecx, edi
je 0x4238a5
mov eax, dword [ecx + 4]
lea esi, [ecx + 4]
cmp eax, edi
je 0x423896
push eax
call fcn.0043ca01
mov ecx, dword [0x50ed44]
add esp, 4
mov dword [esi], edi
push ecx
call fcn.0043ca01
add esp, 4
mov dword [0x50ed44], edi
mov ecx, dword [0x50ed48]
cmp ecx, edi
je 0x4238d9
mov eax, dword [ecx + 4]
lea esi, [ecx + 4]
cmp eax, edi
je 0x4238ca
push eax
call fcn.0043ca01
mov ecx, dword [0x50ed48]
add esp, 4
mov dword [esi], edi
push ecx
call fcn.0043ca01
add esp, 4
mov dword [0x50ed48], edi
mov ecx, dword [0x50ed4c]
cmp ecx, edi
je 0x42390d
mov eax, dword [ecx + 4]
lea esi, [ecx + 4]
cmp eax, edi
je 0x4238fe
push eax
call fcn.0043ca01
mov ecx, dword [0x50ed4c]
add esp, 4
mov dword [esi], edi
push ecx
call fcn.0043ca01
add esp, 4
mov dword [0x50ed4c], edi
mov ecx, dword [0x50ed50]
cmp ecx, edi
je 0x423941
mov eax, dword [ecx + 4]
lea esi, [ecx + 4]
cmp eax, edi
je 0x423932
push eax
call fcn.0043ca01
mov ecx, dword [0x50ed50]
add esp, 4
mov dword [esi], edi
push ecx
call fcn.0043ca01
add esp, 4
mov dword [0x50ed50], edi
mov ecx, dword [0x50ed54]
cmp ecx, edi
je 0x423975
mov eax, dword [ecx + 4]
lea esi, [ecx + 4]
cmp eax, edi
je 0x423966
push eax
call fcn.0043ca01
mov ecx, dword [0x50ed54]
add esp, 4
mov dword [esi], edi
push ecx
call fcn.0043ca01
add esp, 4
mov dword [0x50ed54], edi
mov ecx, dword [0x50ed58]
cmp ecx, edi
je 0x4239a9
mov eax, dword [ecx + 4]
lea esi, [ecx + 4]
cmp eax, edi
je 0x42399a
push eax
call fcn.0043ca01
mov ecx, dword [0x50ed58]
add esp, 4
mov dword [esi], edi
push ecx
call fcn.0043ca01
add esp, 4
mov dword [0x50ed58], edi
mov ecx, dword [0x50ed5c]
cmp ecx, edi
je 0x4239dd
mov eax, dword [ecx + 4]
lea esi, [ecx + 4]
cmp eax, edi
je 0x4239ce
push eax
call fcn.0043ca01
mov ecx, dword [0x50ed5c]
add esp, 4
mov dword [esi], edi
push ecx
call fcn.0043ca01
add esp, 4
mov dword [0x50ed5c], edi
mov ecx, dword [0x50ecec]
cmp ecx, edi
je 0x423a1d
call fcn.004368d0
lea esi, [ecx + 4]
mov ebx, eax
mov eax, dword [esi]
cmp eax, edi
je 0x423a02
push eax
call fcn.0043ca01
add esp, 4
mov dword [esi], edi
push ebx
call fcn.0043ca01
mov ecx, dword [0x50ecec]
push ecx
call fcn.0043ca01
add esp, 8
mov dword [0x50ecec], edi
mov ecx, dword [0x50ed60]
cmp ecx, edi
je 0x423a51
mov eax, dword [ecx + 4]
lea esi, [ecx + 4]
cmp eax, edi
je 0x423a42
push eax
call fcn.0043ca01
mov ecx, dword [0x50ed60]
add esp, 4
mov dword [esi], edi
push ecx
call fcn.0043ca01
add esp, 4
mov dword [0x50ed60], edi
mov eax, dword [0x50ff50]
sub eax, dword [0x50ff4c]
mov ebx, dword [sym.imp.KERNEL32.dll_CloseHandle]
sar eax, 2
xor esi, esi
cmp eax, edi
jbe 0x423a97
cmp esi, eax
jb 0x423a74
call fcn.0045a4cc
mov edx, dword [0x50ff4c]
mov eax, dword [edx + esi*4]
cmp eax, edi
je 0x423a84
push eax
call ebx
mov eax, dword [0x50ff50]
sub eax, dword [0x50ff4c]
inc esi
sar eax, 2
cmp esi, eax
jb 0x423a74
call fcn.0042f1e0
mov eax, dword [0x50eab8]
mov esi, dword [sym.imp.GDI32.dll_DeleteObject]
cmp eax, edi
je 0x423ab4
push eax
call esi
mov dword [0x50eab8], edi
mov eax, dword [0x50eabc]
cmp eax, edi
je 0x423ac6
push eax
call esi
mov dword [0x50eabc], edi
mov eax, dword [0x50ed08]
cmp eax, edi
je 0x423ad8
push eax
call ebx
mov dword [0x50ed08], edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret