Function at 0x402fc3
Capabilities:
Create thread
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x848
mov eax, dword [0x40600c]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
xor ebx, ebx
cmp dword [ebp + 8], 8
push esi
mov esi, dword [ebp + 0xc]
mov dword [ebp - 0x848], ebx
mov dword [ebp - 0x840], ebx
jge 0x403003
push 0x4014d0
call dword [sym.imp.MSVCR80.dll_printf]
xor eax, eax
pop ecx
inc eax
jmp 0x40346b
xor ecx, ecx
inc ecx
mov eax, dword [esi + ecx*4]
cmp eax, ebx
je 0x403142
cmp word [eax], bx
je 0x403142
inc ecx
cmp ecx, 8
jl 0x403006
push edi
mov edi, 0x20a
push edi
lea eax, [ebp - 0x628]
push ebx
push eax
call sub.MSVCR80.dll_memset
push edi
lea eax, [ebp - 0x834]
push ebx
push eax
call sub.MSVCR80.dll_memset
push edi
lea eax, [ebp - 0x41c]
push ebx
push eax
call sub.MSVCR80.dll_memset
push edi
lea eax, [ebp - 0x210]
push ebx
push eax
call sub.MSVCR80.dll_memset
mov eax, dword [esi + 0x18]
mov edi, dword [sym.imp.MSVCR80.dll_wcstoul]
add esp, 0x30
cmp word [eax], 0x30
je 0x4030b3
push 0xa
lea ecx, [ebp - 0x840]
push ecx
push eax
mov dword [ebp - 0x840], ebx
call edi
add esp, 0xc
cmp eax, ebx
je 0x4030b3
cmp eax, 0xffffffff
je 0x4030b3
push 0xa
lea eax, [ebp - 0x840]
push eax
push dword [esi + 0x18]
mov dword [ebp - 0x840], ebx
call edi
add esp, 0xc
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call dword [sym.imp.KERNEL32.dll_SetProcessAffinityMask]
push ebx
push ebx
mov dword [0x406084], 1
mov dword [ebp - 0x83c], 5
call dword [sym.imp.ole32.dll_CoInitializeEx]
cmp eax, ebx
mov dword [ebp - 0x838], eax
je 0x40314c
call sub.webengine.dll_InitializeLibrary
mov eax, dword [0x406090]
cmp eax, ebx
mov esi, dword [sym.imp.KERNEL32.dll_CloseHandle]
pop edi
je 0x4030f1
push eax
call esi
mov eax, dword [0x406094]
cmp eax, ebx
je 0x4030fd
push eax
call esi
mov esi, dword [ebp - 0x838]
push esi
call fcn.00401a9c
push esi
call fcn.0040284d
cmp dword [ebp - 0x848], 1
jne 0x40311d
call sub.webengine.dll_UnInitializeManagedCode
call dword [sym.imp.ole32.dll_CoUninitialize]
cmp dword [ebp - 0x83c], ebx
je 0x403469
push esi
push dword [ebp - 0x83c]
call fcn.00402e40
mov eax, esi
jmp 0x40346b
push 0x4014b8
jmp 0x402ff4
push ebx
push 0x40
push ebx
push 0xa
lea eax, [ebp - 0x840]
push eax
push dword [esi + 0x14]
mov dword [ebp - 0x840], ebx
mov dword [ebp - 0x83c], 6
call edi
add esp, 0xc
push eax
push 0xa
lea eax, [ebp - 0x840]
push eax
push dword [esi + 0x10]
call edi
add esp, 0xc
push eax
push ebx
push ebx
push 0xffffffffffffffff
push ebx
call dword [sym.imp.ole32.dll_CoInitializeSecurity]
cmp eax, ebx
mov dword [ebp - 0x838], eax
jne 0x4030d9
mov dword [ebp - 0x83c], 7
call sub.webengine.dll_InitializeLibrary
cmp eax, ebx
mov dword [ebp - 0x838], eax
jne 0x4030de
call fcn.00402f84
call sub.webengine.dll_PerfCounterInitialize
call sub.webengine.dll_EtwTraceAspNetRegister
push dword [esi + 8]
mov edi, 0x104
push dword [esi + 4]
lea eax, [ebp - 0x834]
push 0x401498
push dword [esi + 0x1c]
mov dword [ebp - 0x83c], 1
push 0x401460
push edi
push eax
call fcn.00402f9c
add esp, 0x1c
cmp eax, ebx
mov dword [ebp - 0x838], eax
jne 0x4030de
lea eax, [ebp - 0x834]
push eax
push ebx
push 0x100003
call dword [sym.imp.KERNEL32.dll_OpenEventW]
cmp eax, ebx
mov dword [0x406094], eax
je 0x403377
push dword [esi + 8]
lea eax, [ebp - 0x628]
push dword [esi + 4]
push 0x401498
push dword [esi + 0x1c]
push 0x401420
push edi
push eax
call fcn.00402f9c
add esp, 0x1c
cmp eax, ebx
mov dword [ebp - 0x838], eax
jne 0x4030de
lea eax, [ebp - 0x628]
push eax
push ebx
push 0x100003
call dword [sym.imp.KERNEL32.dll_OpenEventW]
cmp eax, ebx
mov dword [0x406090], eax
je 0x403377
push dword [esi + 8]
lea eax, [ebp - 0x41c]
push dword [esi + 4]
mov dword [ebp - 0x83c], 2
push 0x401498
push dword [esi + 0x1c]
push 0x4013d0
push edi
push eax
call fcn.00402f9c
add esp, 0x1c
cmp eax, ebx
mov dword [ebp - 0x838], eax
jne 0x4030de
lea eax, [ebp - 0x41c]
push eax
call fcn.004022fe
cmp eax, ebx
mov dword [ebp - 0x838], eax
jne 0x4030de
push dword [esi + 8]
lea eax, [ebp - 0x210]
push dword [esi + 4]
mov dword [ebp - 0x83c], 3
push 0x401498
push dword [esi + 0x1c]
push 0x401380
push edi
push eax
call fcn.00402f9c
add esp, 0x1c
cmp eax, ebx
mov dword [ebp - 0x838], eax
jne 0x4030de
push dword [esi + 0xc]
call dword [sym.imp.MSVCR80.dll__wtoi]
pop ecx
push eax
lea eax, [ebp - 0x210]
push eax
call fcn.00402cba
cmp eax, ebx
mov dword [ebp - 0x838], eax
jne 0x4030de
mov dword [ebp - 0x83c], 4
call sub.webengine.dll_InitializeManagedCode
cmp eax, ebx
mov dword [ebp - 0x838], eax
jne 0x4030de
mov edi, dword [sym.imp.MSVCR80.dll__beginthread]
push ebx
push ebx
push 0x402ec8
mov dword [ebp - 0x848], 1
mov dword [ebp - 0x83c], 8
call edi
add esp, 0xc
cmp eax, 0xffffffff
jne 0x403387
call fcn.00404b29
mov dword [ebp - 0x838], eax
jmp 0x4030de
push dword [0x406094]
mov dword [ebp - 0x83c], ebx
call dword [sym.imp.KERNEL32.dll_SetEvent]
mov ecx, 0x4060a0
call fcn.00403486
mov esi, dword [sym.imp.KERNEL32.dll_Sleep]
mov dword [ebp - 0x844], ebx
jmp 0x4033e7
push 0xfa
call esi
cmp dword [0x406078], ebx
jne 0x4033e1
cmp dword [ebp - 0x844], 9
jle 0x4033e1
mov dword [ebp - 0x844], ebx
call fcn.00402d50
cmp dword [0x406078], ebx
jne 0x4033e1
call fcn.00402efe
inc dword [ebp - 0x844]
cmp dword [0x406078], ebx
je 0x4033b1
mov eax, dword [0x40608c]
cmp eax, ebx
mov dword [0x406088], ebx
je 0x40340e
mov dword [ebp - 0x838], eax
mov dword [ebp - 0x83c], 4
push dword [ebp - 0x838]
call fcn.00401a9c
push ebx
push ebx
push 0x402de6
call edi
add esp, 0xc
push 0x64
call esi
xor edi, edi
cmp dword [0x406088], ebx
jne 0x403440
push 0x64
call esi
inc edi
cmp edi, 0x12c
jl 0x40342b
call sub.webengine.dll_ReleaseWmiEventManager
call sub.webengine.dll_EtwTraceAspNetUnregister
mov dword [ebp - 0x838], ebx
call fcn.00404b46
cmp dword [0x406088], ebx
jne 0x4030de
push 1
call dword [sym.imp.KERNEL32.dll_ExitProcess]
xor eax, eax
mov ecx, dword [ebp - 4]
pop esi
xor ecx, ebp
pop ebx
call fcn.00403f82
leave
ret