Function at 0x40e7e0
Capabilities:
Create thread
Initialize winsock library
Terminate process

Disassembly:
sub esp, 0x1a8
mov eax, dword [0x45a7c0]
push esi
push edi
push 0x462e14
mov dword [esp + 0x1b0], eax
call fcn.00422e61
push str.eserver_Version_17.4__lugdunum__May_18_2005_11:59:28_n
mov dword [0x4664dc], 0x80000000
call fcn.00423e18
call fcn.00422cc0
push eax
push str.zlib_Version_:__s_n
call fcn.00423e18
call fcn.0041d0e0
call fcn.0040e170
call fcn.0041f330
call fcn.00417eb0
push 0x468208
call fcn.0040f2e0
push 0x4669e0
call fcn.0040f2e0
mov esi, dword [sym.imp.KERNEL32.dll_InitializeCriticalSectionAndSpinCount]
add esp, 0x18
push 0x8000001e
push 0x462d3c
call esi
push 0x8000001e
push 0x462d5c
call esi
push 0x8000001e
push 0x462cbc
call esi
push 0x8000001e
push 0x462e60
call esi
mov dword [0x46646c], 0xffffffff
call fcn.00409bb0
call fcn.0040b1d0
call fcn.00417f00
push 0x8000001e
push 0x45b740
call esi
push 0x8000001e
push 0x45b7c0
call esi
mov edi, dword [sym.imp.KERNEL32.dll_TryEnterCriticalSection]
push 0x45b7c0
call edi
test eax, eax
jne 0x40e8d9
push str.Bug1_of_pfasttrylock___n
call fcn.0040ce60
add esp, 4
push 1
call fcn.004244b7
push ebx
mov ebx, dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
push 0x45b7c0
call ebx
push 0x45b7c0
call edi
test eax, eax
jne 0x40e906
push str.Bug3_of_pfasttrylock___n
call fcn.0040ce60
add esp, 4
push 1
call fcn.004244b7
push 0x45b7c0
call ebx
push 0x8000001e
push 0x45b790
call esi
mov eax, 0x45b77c
mov dword [0x45b77c], eax
mov dword [0x45b780], eax
mov eax, 0x45b7a8
mov dword [0x45b7a8], eax
mov dword [0x45b7ac], eax
call fcn.0040ff00
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
lea ecx, [esp + 0xc]
push ecx
push 0x20
push eax
call dword [sym.imp.ADVAPI32.dll_OpenProcessToken]
test eax, eax
je 0x40e9c4
lea edx, [esp + 0x14]
push edx
push str.SeLockMemoryPrivilege
push 0
mov dword [esp + 0x1c], 1
mov dword [esp + 0x28], 2
call dword [sym.imp.ADVAPI32.dll_LookupPrivilegeValueA]
test eax, eax
je 0x40e9b9
mov ecx, dword [esp + 0xc]
push 0
push 0
push 0
lea eax, [esp + 0x1c]
push eax
push 0
push ecx
call dword [sym.imp.ADVAPI32.dll_AdjustTokenPrivileges]
test eax, eax
je 0x40e9a5
push str.SE_LOCK_MEMORY_privilege_granted_n
call fcn.0040ce60
add esp, 4
jmp 0x40e9b9
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.Could_not_obtain_SE_LOCK_MEMORY_privilege._No_4MB_pages._errcode_d_n
call fcn.0040ce60
add esp, 8
mov edx, dword [esp + 0xc]
push edx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push str.kernel32
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov esi, eax
mov eax, dword [0x466450]
test eax, eax
je 0x40e9e8
push esi
push str.GetModuleHandle__kernel32___p_n
call fcn.0040ce60
add esp, 8
push str.GetLargePageMinimum
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
je 0x40ea1b
call eax
mov esi, eax
push esi
push str.GetLargePageMinimum_____lu_n
call fcn.0040ce60
mov eax, dword [0x4664f4]
add esp, 8
cmp esi, eax
jbe 0x40ea28
mov dword [0x4664f4], esi
jmp 0x40ea28
push str.No_GetLargePageMinimum____needs_Windows_2003__n
call fcn.0040ce60
add esp, 4
lea eax, [esp + 0x20]
push eax
push 2
call dword [sym.imp.WS2_32.dll_WSAStartup]
test eax, eax
je 0x40ea4d
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
push eax
push str.WSAStartup_error__d_n
call fcn.0040ce60
add esp, 8
mov eax, dword [0x465e54]
cmp eax, 0x1b59
ja 0x40ea63
mov eax, 0x1b59
mov dword [0x465e54], eax
push eax
call fcn.00408d40
push 0x1b59
call fcn.00408ef0
push 0x400
call fcn.00409080
call fcn.0041f690
call fcn.00421b90
call fcn.0041d510
push 0x42f7bf
call fcn.0041d450
mov ecx, dword [0x465e5c]
mov esi, dword [sym.imp.KERNEL32.dll_CreateThread]
add esp, 0x10
push 0x462c48
push 0
push 0
push 0x408b30
push ecx
push 0
call esi
mov edx, dword [0x465e5c]
push 0x462c40
push 0
push 0
push 0x416620
push edx
push 0
mov dword [0x462c44], eax
call esi
push 0x462c38
push 0
push 0
mov dword [0x462c3c], eax
mov eax, dword [0x465e5c]
push 0x4163e0
push eax
push 0
call esi
push 0x45b740
mov dword [0x462c34], eax
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov eax, dword [0x465e68]
xor edi, edi
test eax, eax
jle 0x40eb3e
mov edi, edi
mov edx, dword [0x465e5c]
lea ecx, [esp + 0xc]
push ecx
push 0
push 0
push 0x405850
push edx
push 0
call esi
test eax, eax
mov dword [edi*4 + 0x462c70], eax
je 0x40eb3e
mov eax, dword [0x465e68]
inc edi
cmp edi, eax
jl 0x40eb10
push 0x45b740
mov dword [0x462c54], edi
call ebx
mov eax, dword [0x465e5c]
push 0x462c50
push 0
push 0
push 0x405b60
push eax
push 0
call esi
mov ecx, dword [0x465e5c]
push 0x462c18
push 0
push 0
push 0x421e90
push ecx
push 0
mov dword [0x462c4c], eax
call esi
mov edx, dword [0x465e5c]
push 0x462c28
push 0
push 0
push 0x422890
push edx
push 0
mov dword [0x462c14], eax
call esi
push 0x462c30
push 0
push 0
mov dword [0x462c24], eax
mov eax, dword [0x465e5c]
push 0x421a80
push eax
push 0
call esi
mov ecx, dword [0x465e5c]
push 0x462c5c
push 0
push 0
push 0x401130
push ecx
push 0
mov dword [0x462c2c], eax
call esi
mov edx, dword [0x465e5c]
push 0x462c6c
push 0
push 0
push 0x403ea0
push edx
push 0
mov dword [0x462c58], eax
call esi
push 0x462c64
push 0
push 0
mov dword [0x462c68], eax
mov eax, dword [0x465e5c]
push 0x416dd0
push eax
push 0
call esi
push 0xfa
mov dword [0x462c60], eax
call dword [sym.imp.KERNEL32.dll_Sleep]
call fcn.0041ef00
push 0x400
call fcn.0041f3b0
push 0x400
push 0x40
push eax
push 0x45a7d0
call fcn.00423993
push 0
call fcn.00416040
push 5
push str.Audioeded
call fcn.0040faa0
push 3
push str.Proeded
call fcn.0040faa0
push 3
push str.Doceded
call fcn.0040faa0
push 5
push str.audioeded
call fcn.0040faa0
push 3
push str.proeded
call fcn.0040faa0
add esp, 0x40
push 3
push str.doceded
call fcn.0040faa0
add esp, 8
call fcn.0040e1c0
mov ecx, dword [0x45b8e8]
push ecx
call dword [sym.imp.USER32.dll_DestroyWindow]
push 0
push str.eserver
call dword [sym.imp.USER32.dll_UnregisterClassA]
call dword [sym.imp.WS2_32.dll_WSACleanup]
mov ecx, dword [esp + 0x1b0]
pop ebx
pop edi
xor eax, eax
pop esi
call fcn.004233fe
add esp, 0x1a8
ret