Function at 0x492e30
Capabilities:
Terminate thread

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
mov esi, ecx
xor ebx, ebx
push edi
mov edi, dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
cmp dword [esi + 0x3cfc], ebx
je 0x492eb8
call fcn.0048a7c0
mov eax, dword [esi + 0x3cfc]
push 0x12c
push eax
call edi
test eax, eax
je 0x492e9c
mov ecx, dword [0x52fe2c]
push ebx
call fcn.0040cf30
mov ecx, dword [esi + 0x4964]
cmp ecx, ebx
je 0x492e83
push 1
push ebx
push ebx
push str._Main_Thread_wating_timeout__terminating..._n
call fcn.004c77f0
mov ecx, dword [esi + 0x3cfc]
push 1
push ecx
mov dword [esi + 0x3d04], 1
call dword [sym.imp.KERNEL32.dll_TerminateThread]
mov eax, dword [esi + 0x3cfc]
cmp eax, ebx
je 0x492eb8
cmp eax, 0xffffffff
je 0x492eb8
push eax
mov dword [esi + 0x3cfc], ebx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [esi + 0x728]
cmp eax, ebx
je 0x492efd
push ebx
push eax
call edi
test eax, eax
jne 0x492ee1
mov edx, dword [esi + 0x728]
mov edi, dword [sym.imp.KERNEL32.dll_CloseHandle]
push edx
call edi
mov dword [esi + 0x728], ebx
jmp 0x492f03
mov eax, dword [esi + 0x728]
push 0x64
push eax
call dword [sym.imp.KERNEL32.dll_TerminateThread]
mov ecx, dword [esi + 0x728]
push ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov edi, dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp word [esi + 0xf90], bx
je 0x492f28
mov ecx, esi
call fcn.0048a7c0
push ebx
lea ecx, [esi + 0x493c]
call fcn.00499b20
xor edx, edx
mov word [esi + 0xf90], dx
cmp dword [ebp + 8], ebx
jne 0x492f76
mov eax, dword [esi + 0x3d20]
cmp eax, ebx
je 0x492f45
cmp eax, 0xffffffff
je 0x492f45
push eax
mov dword [esi + 0x3d20], ebx
call edi
mov eax, dword [esi + 0x3d08]
mov dword [esi + 0x3d1c], 0xffffffff
cmp eax, ebx
je 0x4930e9
cmp eax, 0xffffffff
je 0x4930e9
push eax
mov dword [esi + 0x3d08], ebx
call edi
pop edi
pop esi
pop ebx
pop ebp
ret 4
mov eax, dword [esi + 0x944]
mov dword [esi + 4], ebx
mov dword [esi + 0x95c], ebx
cmp eax, ebx
je 0x492f97
cmp eax, 0xffffffff
je 0x492f97
push eax
mov dword [esi + 0x944], ebx
call edi
mov eax, dword [esi]
mov dword [esi + 0x944], ebx
mov dword [esi + 0x940], ebx
mov byte [esi + 0x954], bl
mov dword [esi + 0x958], ebx
mov dword [esi + 0x94c], ebx
cmp eax, ebx
je 0x492fe8
push ebx
push eax
call fcn.004b6cc0
add esp, 8
cmp al, bl
je 0x492fe8
mov eax, dword [esi + 0x95c]
mov ecx, dword [esi + 0x940]
mov edx, dword [0x52fe2c]
push eax
push ecx
mov ecx, dword [edx + 0x40a8]
call fcn.004a41f0
cmp dword [esi + 0x46c8], ebx
mov eax, dword [esi + 0x4924]
setne cl
test al, 4
je 0x493004
and eax, 0xfffffffb
mov dword [esi + 0x4924], eax
mov dword [esi + 0x46c8], ebx
cmp cl, bl
je 0x493024
push ebx
lea ecx, [esi + 0x48e8]
call fcn.0048b700
mov ecx, dword [esi]
push ebx
push 1
call fcn.004c41c0
cmp dword [esi + 0x6b94], ebx
mov dword [esi + 0x6b94], ebx
setne al
cmp al, bl
je 0x49304d
push ebx
lea ecx, [esi + 0x48e8]
call fcn.0048b700
mov ecx, dword [esi]
push ebx
push 1
call fcn.004c41c0
cmp dword [esi + 0x46d0], ebx
je 0x493082
mov eax, dword [esi]
mov dword [esi + 0x46d0], ebx
cmp eax, ebx
je 0x493082
push ebx
push eax
call fcn.004b6cc0
add esp, 8
cmp al, bl
je 0x493082
mov eax, dword [0x52fe2c]
mov ecx, dword [eax + 0x40a8]
push ebx
push 1
call fcn.004a3780
mov eax, dword [esi + 0xb74]
mov dword [esi + 0x46d4], ebx
cmp eax, ebx
je 0x4930a0
cmp eax, 0xffffffff
je 0x4930a0
push eax
mov dword [esi + 0xb74], ebx
call edi
lea ecx, [esi + 0x5274]
call fcn.004c64c0
lea ecx, [esi + 0x4b78]
call fcn.0047d3f0
xor ecx, ecx
mov word [esi + 0xb80], cx
xor edx, edx
xor eax, eax
mov ecx, esi
mov word [esi + 0xd88], dx
mov word [esi + 0x96a], ax
call fcn.004916d0
mov ecx, esi
call fcn.00491580
mov ecx, dword [esi]
add ecx, 8
call fcn.004b37a0
pop edi
pop esi
pop ebx
pop ebp
ret 4