Function at 0x41e830
Capabilities:
Resume thread

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x577fc2
mov eax, dword fs:[0]
push eax
sub esp, 0xc
push ebx
push esi
push edi
mov eax, dword [0x5daf20]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
call fcn.00434157
mov ecx, dword [eax + 4]
cmp byte [ecx + 0x173], 0
je 0x41e890
call fcn.0041c250
push dword [ebx + 0x944]
call fcn.0041f460
add esp, 4
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.00427841
xor ecx, ecx
mov edx, eax
test edx, edx
setne cl
test ecx, ecx
jne 0x41e8ac
push 0x80004005
call fcn.004017e0
mov eax, dword [edx]
mov ecx, edx
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
push eax
lea ecx, [ebx + 0x514]
mov dword [ebp - 4], 0
call fcn.0042b7c6
lea ecx, [ebp - 0x10]
call fcn.0040a540
mov ecx, eax
call fcn.0040a5c0
push eax
lea ecx, [ebp - 0x10]
call fcn.004016d0
mov eax, dword [ebp - 0x10]
or esi, 0xffffffff
cmp dword [eax - 0xc], 0
jle 0x41ea08
push ecx
add eax, 0xfffffff0
mov esi, esp
push eax
call fcn.00401750
add eax, 0x10
add esp, 4
mov dword [esi], eax
call fcn.00420fa0
add esp, 4
test eax, eax
jne 0x41ea05
call fcn.00427841
xor ecx, ecx
mov edx, eax
test edx, edx
setne cl
test ecx, ecx
jne 0x41e937
push 0x80004005
call fcn.004017e0
mov eax, dword [edx]
mov ecx, edx
call dword [eax + 0xc]
lea esi, [eax + 0x10]
mov dword [ebp - 0x14], esi
push 0x82
mov byte [ebp - 4], 1
call fcn.00434bde
test eax, eax
je 0x41e967
push 0x82
push eax
lea ecx, [ebp - 0x14]
call fcn.00404f10
mov esi, dword [ebp - 0x14]
call fcn.00427841
xor ecx, ecx
mov edx, eax
test edx, edx
setne cl
test ecx, ecx
jne 0x41e983
push 0x80004005
call fcn.004017e0
mov eax, dword [edx]
mov ecx, edx
call dword [eax + 0xc]
lea edi, [eax + 0x10]
mov dword [ebp - 0x18], edi
push 0x81
mov byte [ebp - 4], 2
call fcn.00434bde
test eax, eax
je 0x41e9b3
push 0x81
push eax
lea ecx, [ebp - 0x18]
call fcn.00404f10
mov edi, dword [ebp - 0x18]
push 0x40
push esi
push edi
mov ecx, ebx
call fcn.0042bb63
add edi, 0xfffffff0
mov byte [ebp - 4], 1
lea eax, [edi + 0xc]
or ecx, 0xffffffff
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x41e9dc
mov ecx, dword [edi]
push edi
mov eax, dword [ecx]
call dword [eax + 4]
lea edx, [esi - 0x10]
or esi, 0xffffffff
mov byte [ebp - 4], 0
lea eax, [edx + 0xc]
mov ecx, esi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x41eaa8
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
jmp 0x41eaa8
or esi, 0xffffffff
push 1
mov ecx, ebx
call fcn.0042dd88
push 1
mov ecx, ebx
call fcn.0041eae0
push 0
push 4
push 0
push 0
push dword [ebx + 0x944]
push fcn.0041f460
call fcn.004380b0
mov dword [ebx + 0x940], eax
test eax, eax
jne 0x41ea54
push eax
push eax
push str.Error:_Unable_to_create_worker_thread._n
mov ecx, ebx
call fcn.0042bb63
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x17c]
mov eax, dword [ebx + 0x940]
mov dword [eax + 0x28], 0
mov eax, dword [ebx + 0x940]
push dword [eax + 0x2c]
call dword [sym.imp.KERNEL32.dll_ResumeThread]
push 0x188
call fcn.0042554a
add esp, 4
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 3
test eax, eax
je 0x41ea94
push ebx
mov ecx, eax
call fcn.00406c10
mov ecx, eax
jmp 0x41ea96
xor ecx, ecx
mov byte [ebp - 4], 0
mov dword [ebx + 0x948], ecx
mov eax, dword [ecx]
call dword [eax + 0x170]
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x10]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
lock xadd dword [eax], esi
dec esi
test esi, esi
jg 0x41eac9
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret