Function at 0x402e39
Capabilities:
Terminate process

Disassembly:
sub esp, 0x140
mov eax, dword [0x431034]
xor eax, esp
mov dword [esp + 0x13c], eax
push ebx
push ebp
mov ebp, dword [esp + 0x14c]
xor ebx, ebx
and dword [esp + 0x10], ebx
and dword [esp + 0xc], ebx
push esi
mov dword [esp + 0x18], ebx
xor esi, esi
call fcn.00401121
test al, al
je 0x402e7b
call fcn.00404db2
mov dword [esp + 0x24], edx
jmp 0x402e87
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x28]
push 0x425ef8
push ebp
mov dword [esp + 0x28], eax
call fcn.0040eff9
mov dword [esp + 0x24], eax
pop ecx
pop ecx
test eax, eax
jne 0x402eb5
cmp byte [esp + 0x154], bl
je 0x4031fa
or eax, 0xffffffff
jmp 0x4031dd
push edi
push eax
jmp 0x403185
mov al, byte [esp + 0x34]
or edi, 0xffffffff
inc esi
mov dword [esp + 0x10], esi
cmp al, 0x23
je 0x403181
cmp al, 0x2d
je 0x402ee3
push ebp
push esi
push str.Warning:_No_leading___on_line__d_of___s
call fcn.00405aa8
add esp, 0xc
mov ecx, dword [0x4319e4]
cmp ebx, ecx
jl 0x402f4a
test ecx, ecx
lea eax, [ecx + ecx]
push 0xa
pop edx
cmove eax, edx
mov ecx, ebx
cmp eax, ebx
cmovg ecx, eax
mov eax, ecx
mov dword [esp + 0x2c], ecx
shl eax, 4
push eax
call fcn.00401127
pop ecx
mov ecx, dword [0x4319dc]
mov esi, eax
test ecx, ecx
je 0x402f34
mov eax, dword [0x4319e4]
shl eax, 4
push eax
push ecx
push esi
call fcn.0040a130
mov ecx, dword [0x4319dc]
add esp, 0xc
push ecx
call fcn.00401149
mov eax, dword [esp + 0x30]
pop ecx
mov dword [0x4319dc], esi
mov dword [0x4319e4], eax
lea eax, [esp + 0x34]
push eax
call fcn.0040e970
dec eax
pop ecx
cmp eax, 0x118
jae 0x4031f5
push dword [0x431018]
mov byte [esp + eax + 0x38], 0
lea eax, [esp + 0x38]
push eax
call fcn.00413dd0
lea esi, [esp + 0x3c]
add esi, eax
pop ecx
pop ecx
cmp byte [esi], 0
je 0x402f9c
push dword [0x431018]
mov byte [esi], 0
inc esi
push esi
call fcn.00413e20
add esi, eax
pop ecx
pop ecx
cmp byte [esi], 0
jne 0x402fb4
mov esi, dword [esp + 0x10]
push ebp
push esi
push str.Warning:_Missing_VM_type_on_line__d_of___s
call fcn.00405aa8
add esp, 0xc
jmp 0x4030ec
push str.KNOWN
push esi
call fcn.0040119c
pop ecx
pop ecx
test eax, eax
jne 0x402fce
mov esi, dword [esp + 0x10]
jmp 0x4030ea
push str.ALIASED_TO
push esi
call fcn.0040119c
pop ecx
pop ecx
test eax, eax
jne 0x403029
push dword [0x431018]
push esi
call fcn.00413dd0
add esi, eax
pop ecx
pop ecx
mov al, byte [esi]
test al, al
je 0x402f9c
push dword [0x431018]
push esi
call fcn.00413e20
add esi, eax
pop ecx
pop ecx
mov al, byte [esi]
test al, al
je 0x402f9c
push dword [0x431018]
mov dword [esp + 0x1c], esi
push esi
call fcn.00413dd0
pop ecx
xor edi, edi
pop ecx
mov byte [eax + esi], 0
inc edi
jmp 0x4030d1
push str.WARN
push esi
call fcn.0040119c
pop ecx
pop ecx
test eax, eax
jne 0x403041
push 2
jmp 0x4030d0
push str.IGNORE
push esi
call fcn.0040119c
pop ecx
pop ecx
test eax, eax
jne 0x403056
push 5
jmp 0x4030d0
push str.ERROR
push esi
call fcn.0040119c
pop ecx
pop ecx
test eax, eax
jne 0x40306b
push 3
jmp 0x4030d0
push str.IF_SERVER_CLASS
push esi
call fcn.0040119c
pop ecx
pop ecx
test eax, eax
jne 0x4030d7
push dword [0x431018]
push esi
call fcn.00413dd0
add esi, eax
pop ecx
pop ecx
mov al, byte [esi]
test al, al
je 0x4030a8
push dword [0x431018]
push esi
call fcn.00413e20
add esi, eax
pop ecx
pop ecx
mov al, byte [esi]
test al, al
jne 0x4030b8
mov esi, dword [esp + 0x10]
push ebp
push esi
push str.Warning:_Missing_server_class_VM_on_line__d_of___s
jmp 0x402fa7
push dword [0x431018]
mov dword [esp + 0x18], esi
push esi
call fcn.00413dd0
pop ecx
pop ecx
push 4
mov byte [eax + esi], 0
pop edi
mov esi, dword [esp + 0x10]
jmp 0x4030ec
mov esi, dword [esp + 0x10]
push ebp
push esi
push str.WarMZ
call fcn.00405aa8
add esp, 0xc
xor edi, edi
lea eax, [esp + 0x34]
push eax
push ebx
push 0x426004
call fcn.004011d9
add esp, 0xc
cmp edi, 0xffffffff
je 0x403181
mov esi, dword [0x4319dc]
lea eax, [esp + 0x34]
push eax
add ebx, ebx
call fcn.004011b7
mov dword [esi + ebx*8 + 4], edi
mov dword [esi + ebx*8], eax
pop ecx
sub edi, 1
je 0x40314b
sub edi, 3
jne 0x403174
push dword [esp + 0x14]
call fcn.004011b7
mov ecx, dword [0x4319dc]
push eax
push 0x426054
push dword [ecx + ebx*8]
mov dword [ecx + ebx*8 + 0xc], eax
push 0x426068
jmp 0x40316c
push dword [esp + 0x18]
call fcn.004011b7
mov ecx, dword [0x4319dc]
push eax
push 0x42601c
push dword [ecx + ebx*8]
mov dword [ecx + ebx*8 + 8], eax
push 0x42602c
call fcn.004011d9
add esp, 0x14
mov ebx, dword [esp + 0x1c]
mov esi, dword [esp + 0x10]
inc ebx
mov dword [esp + 0x1c], ebx
push dword [esp + 0x20]
lea eax, [esp + 0x38]
push 0x118
push eax
call fcn.0040ef37
add esp, 0xc
test eax, eax
jne 0x402ebc
push dword [esp + 0x20]
call fcn.0040edf1
pop ecx
mov dword [0x4319e0], ebx
call fcn.00401121
test al, al
je 0x4031da
call fcn.00404db2
sub eax, dword [esp + 0x24]
sbb edx, dword [esp + 0x28]
push edx
push eax
call fcn.00404d73
push eax
push 0x426094
call fcn.00401104
add esp, 0x10
mov eax, ebx
pop edi
mov ecx, dword [esp + 0x148]
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.004097a8
add esp, 0x140
ret
call fcn.004096ce
push ebp
push str.Error:_could_not_open___s
call fcn.00405aa8
pop ecx
pop ecx
push 1
call fcn.0040ed64
int3