Function at 0x55d3bc
Capabilities:
Terminate thread

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffff8
push ebx
push esi
push edi
mov dword [ebp - 4], eax
xor eax, eax
mov dword [ebp - 8], eax
mov eax, dword [0x5a8470]
cmp dword [eax], 0
je 0x55d408
lea eax, [ebp - 8]
push eax
mov eax, dword [0x5a8470]
mov eax, dword [eax]
mov eax, dword [eax + 4]
push eax
call sub.kernel32.dll_GetExitCodeThread
cmp dword [ebp - 8], 0x103
jne 0x55d408
mov eax, dword [ebp - 8]
push eax
mov eax, dword [0x5a8470]
mov eax, dword [eax]
mov eax, dword [eax + 4]
push eax
call sub.kernel32.dll_TerminateThread
mov eax, dword [0x5a822c]
cmp dword [eax], 0
je 0x55d41c
mov eax, dword [0x5a822c]
call fcn.00412390
mov eax, dword [0x5a7d54]
cmp dword [eax], 0
je 0x55d430
mov eax, dword [0x5a7d54]
call fcn.00412390
mov eax, dword [0x5a7c90]
cmp dword [eax], 0
je 0x55d472
mov eax, dword [0x5a8234]
cmp byte [eax], 0
je 0x55d450
mov eax, dword [0x5a7c90]
mov eax, dword [eax]
call fcn.00596d18
mov eax, dword [0x5a7c90]
mov eax, dword [eax]
call fcn.004277f4
mov eax, dword [0x5a7c90]
mov eax, dword [eax]
call fcn.004277fc
mov eax, dword [0x5a7c90]
call fcn.00412390
mov eax, dword [0x5a887c]
push eax
call sub.kernel32.dll_DeleteCriticalSection_1
mov eax, dword [0x5a7e2c]
cmp dword [eax], 0
je 0x55d4ab
mov eax, dword [0x5a7e2c]
mov eax, dword [eax]
call fcn.004277f4
mov eax, dword [0x5a7e2c]
mov eax, dword [eax]
call fcn.004277fc
mov eax, dword [0x5a7e2c]
mov eax, dword [eax]
call fcn.00403d88
mov eax, dword [0x5a8a34]
call fcn.00412390
mov eax, dword [0x5a820c]
cmp dword [eax], 0
je 0x55d505
mov eax, dword [0x5a820c]
mov eax, dword [eax]
call fcn.004277f4
xor eax, eax
push ebp
push 0x55d4fb
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [0x5a820c]
mov eax, dword [eax]
call fcn.004277fc
mov eax, dword [0x5a820c]
mov eax, dword [eax]
call fcn.00403d88
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x55d505
mov eax, dword [0x5a7c38]
cmp dword [eax], 0
je 0x55d596
xor eax, eax
push ebp
push 0x55d552
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [0x5a7c38]
mov eax, dword [eax]
call fcn.00427760
mov eax, dword [0x5a7c38]
mov eax, dword [eax]
xor edx, edx
mov dword [eax + 0x18], edx
mov dword [eax + 0x1c], edx
mov eax, dword [0x5a7c38]
mov eax, dword [eax]
call fcn.004277cc
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x55d55c
xor eax, eax
push ebp
push 0x55d58c
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [0x5a7c38]
mov eax, dword [eax]
call fcn.004277f4
mov eax, dword [0x5a7c38]
mov eax, dword [eax]
call fcn.004277fc
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x55d596
xor eax, eax
push ebp
push 0x55d5cc
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [0x5a89ec]
mov eax, dword [eax]
push eax
call sub.user32.dll_IsWindow
test eax, eax
je 0x55d5c2
mov eax, dword [0x5a89ec]
mov eax, dword [eax]
push eax
call sub.user32.dll_DestroyWindow
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x55d5d6
xor edx, edx
push ebp
push 0x55d600
push dword fs:[edx]
mov dword fs:[edx], esp
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x418]
test eax, eax
je 0x55d5f6
call fcn.00403d88
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x55d60a
xor edx, edx
push ebp
push 0x55d634
push dword fs:[edx]
mov dword fs:[edx], esp
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x41c]
test eax, eax
je 0x55d62a
call fcn.00403d88
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x55d63e
mov eax, dword [0x5a7d80]
cmp dword [eax], 0
je 0x55d65c
mov eax, dword [0x5a7d80]
mov eax, dword [eax]
mov eax, dword [eax + 0x2f8]
xor edx, edx
call fcn.00438c2c
mov eax, dword [0x5a8abc]
cmp dword [eax], 0
je 0x55d68f
mov eax, dword [0x5a8abc]
mov eax, dword [eax]
xor edx, edx
call fcn.00550668
mov eax, dword [0x5a8204]
mov dword [eax], 1
mov eax, dword [0x5a8abc]
mov eax, dword [eax]
xor ecx, ecx
xor edx, edx
call fcn.00550420
mov eax, dword [0x5a7d80]
cmp dword [eax], 0
je 0x55d6f5
xor eax, eax
push ebp
push 0x55d6bd
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [0x5a7d80]
mov eax, dword [eax]
call fcn.0046b754
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x55d6c7
xor eax, eax
push ebp
push 0x55d6eb
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [0x5a7d80]
mov eax, dword [eax]
call fcn.00403d88
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x55d6f5
mov eax, dword [ebp - 4]
call fcn.0055e970
mov eax, dword [0x5a8354]
cmp dword [eax], 0
je 0x55d735
xor eax, eax
push ebp
push 0x55d72b
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [0x5a8354]
mov eax, dword [eax]
call fcn.00403d88
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x55d735
mov eax, dword [0x5a866c]
cmp dword [eax], 0
je 0x55d76d
xor eax, eax
push ebp
push 0x55d763
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [0x5a866c]
mov eax, dword [eax]
call fcn.00403d88
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x55d76d
xor eax, eax
push ebp
push 0x55d799
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [0x5a88c0]
cmp dword [eax], 0
je 0x55d78f
mov eax, dword [0x5a88c0]
call fcn.00412390
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x55d7a3
mov eax, dword [0x5a8ac4]
mov eax, dword [eax]
mov ebx, dword [eax + 8]
dec ebx
test ebx, ebx
jl 0x55d7ce
inc ebx
xor esi, esi
mov eax, dword [0x5a8ac4]
mov eax, dword [eax]
mov edx, esi
call fcn.0041e1d0
xor edx, edx
call fcn.00402e34
inc esi
dec ebx
jne 0x55d7b5
mov eax, dword [0x5a8ac4]
mov eax, dword [eax]
call fcn.00403d88
mov eax, dword [0x5a857c]
mov eax, dword [eax]
mov ebx, dword [eax + 8]
dec ebx
test ebx, ebx
jl 0x55d805
inc ebx
xor esi, esi
mov eax, dword [0x5a857c]
mov eax, dword [eax]
mov edx, esi
call fcn.0041e1d0
xor edx, edx
call fcn.00402e34
inc esi
dec ebx
jne 0x55d7ec
mov eax, dword [0x5a857c]
mov eax, dword [eax]
call fcn.00403d88
mov eax, dword [0x5a8ac8]
mov eax, dword [eax]
mov ebx, dword [eax + 8]
dec ebx
test ebx, ebx
jl 0x55d83c
inc ebx
xor esi, esi
mov eax, dword [0x5a8ac8]
mov eax, dword [eax]
mov edx, esi
call fcn.0041e1d0
xor edx, edx
call fcn.00402e34
inc esi
dec ebx
jne 0x55d823
mov eax, dword [0x5a8ac8]
mov eax, dword [eax]
call fcn.00403d88
mov eax, dword [0x5a8700]
mov eax, dword [eax]
mov dl, 1
mov ecx, dword [eax]
call dword [ecx - 4]
pop edi
pop esi
pop ebx
pop ecx
pop ecx
pop ebp
ret