Function at 0x412e90
Capabilities:
Create thread
Resume thread

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4204a1
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
mov eax, 0x406c
call fcn.0041e970
mov dword [ebp - 0x4078], ecx
mov dword [ebp - 0x405c], 0
mov dword [ebp - 0x4054], 1
mov dword [ebp - 0x4064], 2
mov dword [ebp - 0x4060], 0
mov eax, dword [ebp - 0x4078]
cmp dword [eax + 0x2564], 0
je 0x412f09
mov ecx, dword [ebp - 0x4078]
mov edx, dword [ecx + 0x84b8]
shl edx, 1
mov eax, dword [ebp - 0x4078]
mov dword [eax + 0x84b8], edx
mov ecx, dword [ebp - 0x4078]
mov edx, dword [ecx + 0x84c0]
push edx
call dword [sym.imp.KERNEL32.dll_ResetEvent]
mov eax, dword [ebp - 0x4078]
mov dword [eax + 0x84ec], 1
mov dword [ebp - 0x4060], 0
jmp 0x412f47
mov ecx, dword [ebp - 0x4060]
add ecx, 1
mov dword [ebp - 0x4060], ecx
mov edx, dword [ebp - 0x4078]
mov eax, dword [ebp - 0x4060]
cmp eax, dword [edx + 0x84b0]
jge 0x412fad
lea ecx, [ebp - 0x4050]
push ecx
push 4
mov edx, dword [ebp - 0x4078]
push edx
push 0x412e54
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
mov ecx, dword [ebp - 0x4078]
mov edx, dword [ecx + 0x84bc]
mov ecx, dword [ebp - 0x4060]
mov dword [edx + ecx*4], eax
mov edx, dword [ebp - 0x4078]
mov eax, dword [edx + 0x84bc]
mov ecx, dword [ebp - 0x4060]
mov edx, dword [eax + ecx*4]
push edx
call dword [sym.imp.KERNEL32.dll_ResumeThread]
jmp 0x412f38
push 0xffffffffffffffff
push 1
mov eax, dword [ebp - 0x4078]
mov ecx, dword [eax + 0x84bc]
push ecx
mov edx, dword [ebp - 0x4078]
mov eax, dword [edx + 0x84b0]
push eax
call dword [sym.imp.KERNEL32.dll_WaitForMultipleObjects]
mov dword [ebp - 0x4060], 0
jmp 0x412fec
mov ecx, dword [ebp - 0x4060]
add ecx, 1
mov dword [ebp - 0x4060], ecx
mov edx, dword [ebp - 0x4078]
mov eax, dword [ebp - 0x4060]
cmp eax, dword [edx + 0x84b0]
jge 0x41301e
mov ecx, dword [ebp - 0x4078]
mov edx, dword [ecx + 0x84bc]
mov eax, dword [ebp - 0x4060]
mov ecx, dword [edx + eax*4]
push ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x412fdd
mov edx, dword [ebp - 0x4078]
mov eax, dword [ebp - 0x4078]
mov ecx, dword [eax + 0x84b0]
mov dword [edx + 0x84b8], ecx
mov edx, dword [ebp - 0x4078]
cmp dword [edx + 0x84bc], 0
je 0x413066
mov eax, dword [ebp - 0x4078]
mov ecx, dword [eax + 0x84bc]
mov dword [ebp - 0x406c], ecx
mov edx, dword [ebp - 0x406c]
push edx
call sub.MFC42.DLL_operatordelete
add esp, 4
mov eax, dword [ebp - 0x4078]
cmp dword [eax + 0x2564], 0
je 0x4131be
mov ecx, dword [ebp - 0x4078]
mov edx, dword [ecx + 0x84b0]
shl edx, 2
push edx
call sub.MFC42.DLL_operatornew
add esp, 4
mov dword [ebp - 0x4070], eax
mov eax, dword [ebp - 0x4078]
mov ecx, dword [ebp - 0x4070]
mov dword [eax + 0x84bc], ecx
mov edx, dword [ebp - 0x4078]
mov eax, dword [edx + 0x84c0]
push eax
call dword [sym.imp.KERNEL32.dll_ResetEvent]
mov ecx, dword [ebp - 0x4078]
mov dword [ecx + 0x84ec], 2
mov dword [ebp - 0x4060], 0
jmp 0x4130e7
mov edx, dword [ebp - 0x4060]
add edx, 1
mov dword [ebp - 0x4060], edx
mov eax, dword [ebp - 0x4078]
mov ecx, dword [ebp - 0x4060]
cmp ecx, dword [eax + 0x84b0]
jge 0x41314d
lea edx, [ebp - 0x4050]
push edx
push 4
mov eax, dword [ebp - 0x4078]
push eax
push 0x412e54
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
mov ecx, dword [ebp - 0x4078]
mov edx, dword [ecx + 0x84bc]
mov ecx, dword [ebp - 0x4060]
mov dword [edx + ecx*4], eax
mov edx, dword [ebp - 0x4078]
mov eax, dword [edx + 0x84bc]
mov ecx, dword [ebp - 0x4060]
mov edx, dword [eax + ecx*4]
push edx
call dword [sym.imp.KERNEL32.dll_ResumeThread]
jmp 0x4130d8
push 0xffffffffffffffff
push 1
mov eax, dword [ebp - 0x4078]
mov ecx, dword [eax + 0x84bc]
push ecx
mov edx, dword [ebp - 0x4078]
mov eax, dword [edx + 0x84b0]
push eax
call dword [sym.imp.KERNEL32.dll_WaitForMultipleObjects]
mov dword [ebp - 0x4060], 0
jmp 0x41318c
mov ecx, dword [ebp - 0x4060]
add ecx, 1
mov dword [ebp - 0x4060], ecx
mov edx, dword [ebp - 0x4078]
mov eax, dword [ebp - 0x4060]
cmp eax, dword [edx + 0x84b0]
jge 0x4131be
mov ecx, dword [ebp - 0x4078]
mov edx, dword [ecx + 0x84bc]
mov eax, dword [ebp - 0x4060]
mov ecx, dword [edx + eax*4]
push ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x41317d
lea ecx, [ebp - 0x4058]
call sub.MFC42.DLL_CString::CString_2
mov dword [ebp - 4], 0
mov dword [ebp - 0x4068], 0
jmp 0x4131eb
mov edx, dword [ebp - 0x4068]
add edx, 1
mov dword [ebp - 0x4068], edx
mov eax, dword [ebp - 0x4060]
cmp eax, dword [0x42aaa0]
jge 0x413287
mov ecx, dword [ebp - 0x4068]
imul ecx, ecx, 0x2280
mov edx, dword [0x437854]
cmp dword [edx + ecx + 0x30], 0
je 0x413233
mov eax, dword [ebp - 0x4068]
imul eax, eax, 0x2280
mov ecx, dword [0x437854]
mov edx, dword [ecx + eax + 0x30]
push edx
call dword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
mov eax, dword [ebp - 0x4068]
imul eax, eax, 0x2280
mov ecx, dword [0x437854]
cmp dword [ecx + eax + 0x20], 0
je 0x413268
mov edx, dword [ebp - 0x4068]
imul edx, edx, 0x2280
mov eax, dword [0x437854]
mov ecx, dword [eax + edx + 0x20]
push ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov edx, dword [ebp - 0x4068]
imul edx, edx, 0x2280
mov eax, dword [0x437854]
lea ecx, [eax + edx + 0x34]
call fcn.0041de12
jmp 0x4131dc
mov ecx, dword [ebp - 0x4078]
cmp dword [ecx + 0x84bc], 0
je 0x4132b7
mov edx, dword [ebp - 0x4078]
mov eax, dword [edx + 0x84bc]
mov dword [ebp - 0x4074], eax
mov ecx, dword [ebp - 0x4074]
push ecx
call sub.MFC42.DLL_operatordelete
add esp, 4
lea ecx, [ebp - 0x4048]
call fcn.0040cff0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x4048]
call fcn.0040ce30
mov edx, dword [ebp - 0x4078]
mov eax, dword [edx + 0x2258]
mov dword [ebp - 0x14], eax
mov ecx, dword [0x439ae4]
mov dword [ebp - 0x18], ecx
mov edx, dword [0x42a5e8]
mov dword [ebp - 0x1c], edx
mov dword [ebp - 0x10], 0
cmp dword [0x439aec], 0
je 0x413324
push 0
lea eax, [ebp - 0x4048]
push eax
mov ecx, dword [ebp - 0x4078]
mov edx, dword [ecx + 0x2254]
push edx
mov eax, dword [ebp - 0x4078]
call dword [eax + 0x43fc]
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x4048]
call fcn.0040d020
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x4058]
call sub.MFC42.DLL_CString::CString
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 4