Function at 0x4063e0
Capabilities:
Create thread

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x458039
mov eax, dword fs:[0]
push eax
push ecx
push ebx
push esi
push edi
mov eax, dword [0x46af24]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
mov eax, dword [ebp + 8]
mov dword [0x46d0d4], 0
mov dword [esi + 0x9c8], eax
mov ecx, dword [eax + 0x18]
mov dword [esi + 0xd58], ecx
mov edx, dword [eax + 0x1c]
mov dword [esi + 0xd5c], edx
mov eax, dword [eax + 0x38]
mov dword [esi + 0xb5c], eax
xor eax, eax
lea ebx, [esi + 0xdb8]
mov dword [ebx], eax
mov dword [ebx + 4], eax
push eax
mov dword [ebx + 8], eax
push eax
mov dword [ebx + 0xc], eax
mov dword [ebx + 0x10], eax
push 1
mov dword [ebx + 0x14], eax
push eax
mov dword [ebx + 0x18], eax
call dword [sym.imp.KERNEL32.dll_CreateEventW]
lea ecx, [ebp - 0x10]
push ecx
push 0
push ebx
push 0x40e820
push 0
push 0
mov dword [ebx], eax
mov dword [esi + 0xdd0], esi
call dword [sym.imp.KERNEL32.dll_CreateThread]
cmp dword [esi + 0xdcc], 0
mov edi, eax
jne 0x406497
push 0x32
call dword [sym.imp.KERNEL32.dll_Sleep]
cmp dword [esi + 0xdcc], 0
je 0x406486
mov edx, dword [esi + 0x9c8]
xor eax, eax
mov dword [esi + 0xdbc], edi
cmp dword [edx + 0x34], eax
je 0x4064b6
mov dword [esi + 0xadc], eax
mov dword [esi + 0x9d8], eax
call fcn.00444257
mov ecx, esi
call fcn.00446ff3
test eax, eax
jne 0x406798
mov ecx, esi
call fcn.00448232
test eax, eax
jne 0x406798
push 0x460b1c
mov ecx, esi
call fcn.00446599
test eax, eax
jne 0x406798
mov ecx, esi
call fcn.0044607e
test eax, eax
jne 0x406798
mov ecx, esi
call fcn.00447175
test eax, eax
jne 0x406798
mov ecx, esi
call fcn.00446c4a
test eax, eax
jne 0x406798
mov ecx, esi
call fcn.004464d3
test eax, eax
jne 0x406798
mov ecx, esi
call fcn.00448453
test eax, eax
jne 0x406798
lea eax, [esi + 0xa8c]
push eax
lea ecx, [esi + 0x9fc]
push ecx
lea edx, [ebp + 8]
push edx
call fcn.00406e00
add esp, 0xc
push eax
lea ecx, [esi + 0xa38]
mov dword [ebp - 4], 0
call dword [sym.imp.mfc100u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::operator]
lea ecx, [ebp + 8]
mov dword [ebp - 4], 0xffffffff
call dword [sym.imp.mfc100u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_cla]
call fcn.00407740
test eax, eax
jne 0x406798
push 4
push str.AVSCAN_SEMAPHORE
mov ecx, esi
call fcn.004462ca
test eax, eax
je 0x4065b4
mov eax, 0x4e30
mov dword [esi + 0xd60], eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov ecx, esi
call fcn.00445d12
cmp dword [esi + 0x9d4], 0
jne 0x4065cb
mov ecx, esi
call fcn.00445610
mov ecx, esi
call fcn.00447364
mov ecx, esi
call fcn.004473d1
mov ecx, esi
call fcn.004477e2
mov ecx, esi
mov dword [0x46d0d4], 0x50
call fcn.004478e7
mov ecx, esi
mov dword [esi + 0xd80], 1
call fcn.00446415
test eax, eax
jne 0x406798
push 1
mov ecx, esi
call fcn.004467af
test eax, eax
jne 0x406798
xor edi, edi
cmp dword [esi + 0xac4], edi
je 0x406655
push 0x10
call dword [sym.imp.mfc100u.dll_new]
add esp, 4
cmp eax, edi
je 0x406640
mov dword [eax], edi
mov dword [eax + 4], edi
mov dword [eax + 0xc], edi
mov ecx, eax
jmp 0x406642
xor ecx, ecx
mov dword [esi + 0xdb4], ecx
cmp ecx, edi
je 0x406655
mov eax, esi
mov edi, ecx
call fcn.00404200
mov ecx, esi
call fcn.00447175
test eax, eax
jne 0x40681f
mov dword [0x46d0d4], 0x64
call fcn.00406e80
test eax, eax
jne 0x406798
mov eax, dword [esi + 0xdb0]
mov ecx, dword [esi + 0xdac]
push eax
push ecx
mov ecx, esi
call fcn.004468f1
test eax, eax
jne 0x406798
mov eax, esi
call fcn.004075a0
test eax, eax
jne 0x406798
call fcn.0044e587
mov dword [0x46d0d4], 0xd2
mov eax, dword [ebx]
xor edi, edi
push eax
mov dword [esi + 0xd60], edi
mov dword [esi + 0xdc0], edi
mov dword [esi + 0xdc4], 2
call dword [sym.imp.KERNEL32.dll_SetEvent]
cmp dword [esi + 0xdc0], edi
jne 0x4066f5
nop
call fcn.0044e587
push 0x64
call dword [sym.imp.KERNEL32.dll_Sleep]
cmp dword [esi + 0xdc0], edi
je 0x4066e0
cmp dword [esi + 0xd60], edi
jne 0x406798
call fcn.0044e587
mov dword [0x46d0d4], 0xdc
call fcn.00407890
test eax, eax
jne 0x406798
mov dword [0x46d0d4], 0xe1
mov ecx, dword [esi + 0x9bc]
mov edx, dword [ecx + 0x96c]
mov ecx, dword [esi + 0x9b0]
push edx
call fcn.00442f1e
mov ecx, esi
mov dword [0x46d0d4], 0xe6
call fcn.00446129
test eax, eax
jne 0x406798
mov ecx, esi
mov dword [0x46d0d4], 0xf0
call fcn.00407640
test eax, eax
jne 0x406798
mov edi, esi
mov dword [0x46d0d4], 0xf5
call fcn.00407a50
test eax, eax
jne 0x406798
mov ecx, esi
mov dword [0x46d0d4], 0xfb
call fcn.00447c36
inc dword [0x46d0d4]
mov eax, esi
call fcn.004079c0
mov dword [0x46d0d4], 0xaa
mov ecx, dword [esi + 0x9b4]
test ecx, ecx
je 0x4067c5
cmp dword [esi + 0xd60], 0
jne 0x4067c5
push esi
call fcn.00408d60
mov dword [esi + 0xd60], 0
inc dword [0x46d0d4]
mov eax, dword [esi + 0x9c8]
cmp dword [eax + 0x18], 0
je 0x4067f2
mov edi, dword [esi + 0x9b4]
test edi, edi
je 0x4067f2
mov eax, dword [eax + 0x68]
push eax
push str.CommandLine:__s
call fcn.004029f0
add esp, 8
mov ecx, dword [esi + 0x9b4]
test ecx, ecx
je 0x40680c
cmp dword [esi + 0xd60], 0
jne 0x40680c
mov ebx, esi
call fcn.004094a0
mov eax, dword [esi + 0xd78]
test eax, eax
je 0x40681f
push eax
call fcn.0042eddd
add esp, 4
mov eax, dword [esi + 0xd60]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4