Function at 0x478df1
Capabilities:
Terminate process

Disassembly:
push 0x110
push 0x4dff40
call fcn.004a8b50
mov esi, dword [ebp + 8]
xor ebx, ebx
mov dword [ebp - 0x120], ebx
mov byte [ebp - 0x11c], bl
push 0xff
push ebx
lea eax, [ebp - 0x11b]
push eax
call fcn.00401f80
add esp, 0xc
mov dword [ebp - 4], ebx
cmp esi, ebx
je 0x478e84
cmp dword [ebp + 0xc], ebx
je 0x478e51
mov edi, dword [0x4fceb4]
cmp edi, ebx
jne 0x478e48
mov dword [ebp - 4], 0xfffffffe
jmp 0x479124
mov ebx, esi
call fcn.00444845
jmp 0x478e3c
mov eax, dword [0x4fceb4]
cmp eax, ebx
jne 0x478e68
call fcn.00444592
mov dword [0x4fceb4], eax
cmp eax, ebx
je 0x478e3c
mov ebx, esi
mov edi, eax
call fcn.00444724
test eax, eax
jne 0x478e3c
push esi
mov ebx, dword [0x4fceb4]
call fcn.00444541
pop ecx
jmp 0x478e3c
cmp dword [0x5d7340], ebx
jle 0x478e96
push 0xa
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x478e84
inc dword [0x5d7340]
push str._nCleaning_up...
call fcn.0049573d
pop ecx
xor ecx, ecx
call fcn.00466346
call fcn.0043c4dd
test eax, eax
je 0x478ebf
push 1
call fcn.0049b66e
pop ecx
call fcn.0041a958
mov dword [ebp - 0x120], eax
push str._nStopping_PAULA_session_flag...
call fcn.0049573d
call fcn.0043c5f5
mov edi, 0x4bc11c
push edi
call fcn.0049573d
push str._nSaving_session...
call fcn.0049573d
mov esi, str.Counting_Dumps_
push esi
push ebx
call fcn.00455496
push eax
call fcn.0048c9dd
add esp, 0x18
test eax, eax
je 0x478f17
push esi
push ebx
call fcn.00455496
pop ecx
pop ecx
mov ecx, eax
call fcn.0048f296
push 0x3a19
push str.MainPAULA.c
push 0x999
call fcn.0046bf44
push edi
call fcn.0049573d
push str._nStopping_TelNet_sessions...
call fcn.0049573d
call fcn.0049139d
call fcn.00436acf
call fcn.00491385
call fcn.00460fe8
push edi
call fcn.0049573d
push str._nPerforming_misc_cleanup...
call fcn.0049573d
push 0x64
pop eax
call fcn.00496c29
mov ecx, 0x4b2214
call fcn.00494d2d
push 4
call fcn.004979a3
push edi
call fcn.0049573d
push str._nClosing_FTP...
call fcn.0049573d
push edi
call fcn.0049573d
push str._nDeleting_String_Lists...
call fcn.0049573d
lea eax, [ebp - 0x11c]
push eax
call fcn.00437be2
push edi
call fcn.0049573d
push str._nDeleting_invoice_archive...
call fcn.0049573d
call fcn.00457e0e
push edi
call fcn.0049573d
add esp, 0x40
push str._nDeleting_Message_Handles...
call fcn.0049573d
call fcn.0049d3fc
push edi
call fcn.0049573d
pop ecx
pop ecx
cmp dword [0x4fcebc], ebx
je 0x478ff3
push str._nRestoring_Volume...
call fcn.0049573d
push edi
call fcn.0049573d
pop ecx
pop ecx
push str._nDeleting_Sounds...
call fcn.0049573d
call fcn.0049bbaf
xor eax, eax
call fcn.0049b069
push edi
call fcn.0049573d
push str._nDeleting_Printer_Handles...
call fcn.0049573d
call fcn.00450cec
push edi
call fcn.0049573d
push str._nDeleting_Console_Fields...
call fcn.0049573d
push edi
call fcn.0049573d
push str._nDeleting_Sprites...
call fcn.0049573d
call fcn.0043c34a
push edi
call fcn.0049573d
add esp, 0x20
cmp dword [0x4fceb4], ebx
je 0x479095
push str._nDeleting_PAULA_objects...
call fcn.0049573d
pop ecx
mov eax, dword [0x4fceb4]
call fcn.00444955
cmp eax, ebx
je 0x479079
call fcn.00473ea1
push 0x4ae7fc
jmp 0x479059
mov esi, dword [0x4fceb4]
cmp esi, ebx
je 0x47908e
call fcn.00444555
mov dword [0x4fceb4], ebx
push edi
call fcn.0049573d
pop ecx
push str._nFreeing_console_window...
call fcn.0049573d
call fcn.00443dbc
mov esi, str.Done.
push esi
call fcn.0049573d
push str._nClosing_Console_Tools...
call fcn.0049573d
push esi
call fcn.0049573d
push str._nFreeing_misc_resources...
call fcn.0049573d
push ebx
call fcn.00496eb6
push esi
call fcn.0049573d
push str._n_nClean_up_is_complete.
call fcn.0049573d
add esp, 0x20
dec dword [0x5d7340]
jmp 0x4790f1
mov dword [ebp - 4], 0xfffffffe
call fcn.004957af
test eax, eax
jne 0x479124
call fcn.0041a958
mov esi, 0x2ee
jmp 0x47911a
push 0xa
call dword [sym.imp.KERNEL32.dll_Sleep]
call fcn.0041a958
sub eax, dword [ebp - 0x120]
cmp eax, esi
jb 0x47910d
call fcn.004a8b98
ret