Function at 0x42a610
Capabilities:
Terminate thread

Disassembly:
push ebx
push ebp
push esi
push edi
push 0x4bde48
xor ebp, ebp
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov esi, dword [0x4bde74]
cmp esi, dword [0x4bde78]
jbe 0x42a634
call fcn.0046814b
mov ebx, dword [0x4bde68]
lea ebx, [ebx]
mov edi, dword [0x4bde78]
cmp dword [0x4bde74], edi
jbe 0x42a653
call fcn.0046814b
test ebx, ebx
je 0x42a65f
cmp ebx, dword [0x4bde68]
je 0x42a664
call fcn.0046814b
cmp esi, edi
je 0x42a6e5
test ebx, ebx
jne 0x42a6a1
call fcn.0046814b
xor eax, eax
cmp esi, dword [eax + 0x10]
jb 0x42a67d
call fcn.0046814b
mov eax, dword [esi]
mov ecx, dword [esp + 0x14]
cmp dword [eax], ecx
je 0x42a6a9
test ebx, ebx
jne 0x42a6a5
call fcn.0046814b
xor eax, eax
cmp esi, dword [eax + 0x10]
jb 0x42a69c
call fcn.0046814b
add esi, 4
jmp 0x42a640
mov eax, dword [ebx]
jmp 0x42a673
mov eax, dword [ebx]
jmp 0x42a692
test ebx, ebx
jne 0x42a85f
call fcn.0046814b
xor eax, eax
cmp esi, dword [eax + 0x10]
jb 0x42a6c2
call fcn.0046814b
mov edx, dword [esi]
mov dword [edx], 0xffffffff
test ebx, ebx
jne 0x42a866
call fcn.0046814b
xor eax, eax
cmp esi, dword [eax + 0x10]
jb 0x42a6e3
call fcn.0046814b
mov ebp, dword [esi]
push 0x4bde48
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
xor ebx, ebx
cmp ebp, ebx
je 0x42a8db
mov eax, dword [ebp + 8]
cmp eax, ebx
je 0x42a70c
push ebx
push ebx
push 0x12
push eax
call dword [sym.imp.USER32.dll_PostThreadMessageA]
mov eax, dword [ebp + 0x20]
push eax
mov byte [ebp + 0x14], 1
call dword [sym.imp.KERNEL32.dll_SetEvent]
mov ecx, dword [ebp + 0xc]
mov edi, dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
push 0x1f4
push ecx
call edi
cmp eax, 0x102
jne 0x42a74a
push str.kill_time_timeout
call fcn.004168b0
mov edx, dword [ebp + 0xc]
add esp, 4
push ebx
push edx
call dword [sym.imp.KERNEL32.dll_TerminateThread]
mov eax, dword [ebp + 0xc]
push 0x9f
push str...p2psrc_src_timer.cpp
push eax
push str.__handle_cls:_0x_x__file:__s:_u
call fcn.00416770
mov eax, dword [ebp + 0xc]
mov esi, dword [sym.imp.KERNEL32.dll_CloseHandle]
add esp, 0x10
cmp eax, ebx
je 0x42a778
push eax
call esi
mov dword [ebp + 0xc], ebx
mov ecx, dword [ebp + 0x10]
push 0xffffffffffffffff
push ecx
call edi
mov edx, dword [ebp + 0x10]
push 0xa1
push str...p2psrc_src_timer.cpp
push edx
push str.__handle_cls:_0x_x__file:__s:_u
call fcn.00416770
mov eax, dword [ebp + 0x10]
add esp, 0x10
cmp eax, ebx
je 0x42a7a8
push eax
call esi
mov dword [ebp + 0x10], ebx
mov eax, dword [ebp + 0x20]
push 0xa2
push str...p2psrc_src_timer.cpp
push eax
push str.__handle_cls:_0x_x__file:__s:_u
call fcn.00416770
mov eax, dword [ebp + 0x20]
add esp, 0x10
cmp eax, ebx
je 0x42a7d0
push eax
call esi
mov dword [ebp + 0x20], ebx
push 0x4bde48
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov esi, dword [0x4bde74]
cmp esi, dword [0x4bde78]
jbe 0x42a7ee
call fcn.0046814b
mov ebx, dword [0x4bde68]
jmp 0x42a800
mov edi, dword [0x4bde78]
cmp dword [0x4bde74], edi
jbe 0x42a813
call fcn.0046814b
test ebx, ebx
je 0x42a81f
cmp ebx, dword [0x4bde68]
je 0x42a824
call fcn.0046814b
cmp esi, edi
je 0x42a8b2
test ebx, ebx
jne 0x42a86d
call fcn.0046814b
xor eax, eax
cmp esi, dword [eax + 0x10]
jb 0x42a841
call fcn.0046814b
cmp dword [esi], ebp
je 0x42a875
test ebx, ebx
jne 0x42a871
call fcn.0046814b
xor eax, eax
cmp esi, dword [eax + 0x10]
jb 0x42a85a
call fcn.0046814b
add esi, 4
jmp 0x42a800
mov eax, dword [ebx]
jmp 0x42a6b8
mov eax, dword [ebx]
jmp 0x42a6d9
mov eax, dword [ebx]
jmp 0x42a837
mov eax, dword [ebx]
jmp 0x42a850
mov eax, dword [0x4bde78]
lea ecx, [esi + 4]
sub eax, ecx
sar eax, 2
test eax, eax
jle 0x42a896
add eax, eax
add eax, eax
push eax
push ecx
push eax
push esi
call fcn.0046602d
add esp, 0x10
sub dword [0x4bde78], 4
cmp dword [0x4bde74], esi
ja 0x42a8ad
cmp esi, dword [0x4bde78]
jbe 0x42a8b2
call fcn.0046814b
push 0x4bde48
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
push 0xad
push str...p2psrc_src_timer.cpp
push ebp
push str.__del:_0x_x__file:__s:_u
call fcn.004166d0
push ebp
call fcn.0042ec92
add esp, 0x14
pop edi
pop esi
pop ebp
pop ebx
ret