Function at 0x4120a4
Capabilities:
Get file attributes
Set console window title
Set file attributes

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xb90
mov eax, dword [0x5c4e68]
xor eax, ebp
mov dword [ebp - 8], eax
push ebx
push esi
push edi
mov esi, 0x103
push esi
xor ebx, ebx
lea eax, [ebp - 0x21b]
push ebx
push eax
mov byte [ebp - 0x21c], 0
call fcn.005117f0
add esp, 0xc
push esi
lea eax, [ebp - 0x113]
push ebx
push eax
mov byte [ebp - 0x114], bl
call fcn.005117f0
add esp, 0xc
push 0x7ff
lea eax, [ebp - 0xb23]
push ebx
push eax
mov byte [ebp - 0xb24], bl
call fcn.005117f0
xor eax, eax
mov dword [ebp - 0xb40], ebx
lea edi, [ebp - 0xb3c]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
add esp, 0xc
push 0x40
stosd dword es:[edi], eax
lea eax, [ebp - 0xb88]
push ebx
push eax
mov dword [ebp - 0xb8c], ebx
call fcn.005117f0
add esp, 0xc
push str.PAULA_Initialization...
mov dword [ebp - 0xb30], ebx
call dword [sym.imp.KERNEL32.dll_SetConsoleTitleA]
cmp dword [ebp + 8], ebx
jne 0x4121d1
cmp dword [0x5d9c9c], ebx
mov dword [ebp - 0xb28], ebx
jle 0x4121d1
mov edi, dword [ebp - 0xb28]
lea edi, [edi*4 + 0x5d9ca0]
push dword [edi]
mov esi, 0x538f50
call fcn.004c3c75
test eax, eax
pop ecx
je 0x412646
push dword [edi]
mov esi, str._Spawned
call fcn.004c3c75
test eax, eax
pop ecx
je 0x412646
push dword [edi]
mov esi, 0x538f68
call fcn.004c3c75
test eax, eax
pop ecx
je 0x4124b3
push dword [edi]
mov esi, str._CreateTerminal
call fcn.004c3c75
test eax, eax
pop ecx
je 0x4124b3
inc dword [ebp - 0xb28]
mov eax, dword [ebp - 0xb28]
cmp eax, dword [0x5d9c9c]
jl 0x41215c
cmp dword [0x5d9c9c], ebx
mov dword [ebp - 0xb2c], ebx
mov dword [ebp - 0xb28], ebx
jle 0x412234
mov edi, dword [ebp - 0xb28]
lea edi, [edi*4 + 0x5d9ca0]
push dword [edi]
mov esi, 0x538f88
call fcn.004c3c75
test eax, eax
pop ecx
je 0x41222a
push dword [edi]
mov esi, str._TelNet
call fcn.004c3c75
test eax, eax
pop ecx
je 0x41222a
inc dword [ebp - 0xb28]
mov eax, dword [ebp - 0xb28]
cmp eax, dword [0x5d9c9c]
jl 0x4121e5
jmp 0x412234
mov dword [ebp - 0xb2c], 1
cmp dword [ebp + 8], ebx
je 0x412243
mov dword [ebp - 0xb2c], 1
push ebx
push ebx
call fcn.0048a119
pop ecx
pop ecx
mov edi, eax
call fcn.0042ad00
test eax, eax
jne 0x412269
push ebx
push ebx
push ebx
call fcn.0048a119
pop ecx
pop ecx
mov ecx, eax
call fcn.0042b0ca
pop ecx
push ebx
push ebx
call fcn.00489f49
pop ecx
pop ecx
push eax
push ebx
push ebx
call fcn.0048a119
pop ecx
pop ecx
push eax
call fcn.004c48c1
test eax, eax
pop ecx
pop ecx
jne 0x4122ae
push ebx
push ebx
call fcn.00489f49
pop ecx
pop ecx
mov edi, eax
call fcn.0042ad00
test eax, eax
jne 0x4122ae
push ebx
push ebx
push ebx
call fcn.00489f49
pop ecx
pop ecx
mov ecx, eax
call fcn.0042b0ca
pop ecx
push 0x5387f4
push ebx
push ebx
call fcn.00489f49
pop ecx
pop ecx
push eax
mov esi, 0x533dd4
push esi
mov ebx, 0x104
lea eax, [ebp - 0x21c]
push ebx
push eax
call fcn.004c53b7
add esp, 0x14
lea edi, [ebp - 0x21c]
call fcn.0042ad00
test eax, eax
jne 0x41233e
push 0x5dc
call dword [sym.imp.KERNEL32.dll_Sleep]
call fcn.0042ad00
test eax, eax
jne 0x41233e
mov eax, edi
push eax
push dword [0x5d9ca0]
push str.:8:SpawnPaulaExe___has_determined_that_the_default_PAULA_exe_does_not_exist___Had_to_CopyFile___s_____s___TRUE__
call fcn.00426c01
add esp, 0xc
push 1
mov eax, edi
push eax
push dword [0x5d9ca0]
call fcn.0042a5f2
add esp, 0xc
test eax, eax
jne 0x41233e
mov eax, edi
push eax
push dword [0x5d9ca0]
push str.:9:SpawnPaulaExe___FAILED:_CopyFile___s_____s___TRUE__FAILED:_Could_not_create_the_default_PAULA_exe_
call fcn.00426c01
add esp, 0xc
mov edi, dword [0x5d9ca0]
call fcn.0042ad00
test eax, eax
je 0x4123fd
push dword [0x5d9ca0]
mov ecx, ebx
lea eax, [ebp - 0x21c]
call fcn.004c3b66
pop ecx
push eax
mov ecx, ebx
lea eax, [ebp - 0x114]
call fcn.004c3b66
pop ecx
mov esi, eax
call fcn.004c3e68
mov eax, esi
push str.PAULA.st
push eax
call fcn.00512a33
test eax, eax
pop ecx
pop ecx
jne 0x4123eb
mov esi, 0x5387f4
push esi
push eax
push eax
call fcn.00489f49
pop ecx
pop ecx
push eax
push 0x533dd4
lea eax, [ebp - 0x114]
push ebx
push eax
call fcn.004c53b7
add esp, 0x14
lea edi, [ebp - 0x114]
call fcn.0042ad00
test eax, eax
je 0x4123eb
call fcn.0048a53c
test eax, eax
jne 0x4123eb
push esi
push eax
push eax
call fcn.00489f49
pop ecx
pop ecx
push eax
push 0x533dd4
lea eax, [ebp - 0x21c]
push ebx
push eax
call fcn.004c53b7
add esp, 0x14
lea eax, [ebp - 0x114]
call fcn.004c3ab2
mov esi, 0x533dd4
jmp 0x41241f
push 0x5387f4
push 0
push 0
call fcn.00489f49
pop ecx
pop ecx
push eax
push esi
lea eax, [ebp - 0x21c]
push ebx
push eax
call fcn.004c53b7
add esp, 0x14
xor edi, edi
cmp dword [ebp - 0xb2c], edi
je 0x412521
push str.ttcon.dat
push edi
push edi
mov dword [ebp - 0xb30], 1
call fcn.00489f49
pop ecx
pop ecx
push eax
push esi
lea eax, [ebp - 0x21c]
push ebx
push eax
call fcn.004c53b7
add esp, 0x14
push edi
push edi
call fcn.0048a119
push eax
push str._sTelKomm
lea eax, [ebp - 0x114]
push ebx
push eax
call fcn.004c53b7
add esp, 0x18
lea edi, [ebp - 0x21c]
call fcn.0042ad00
test eax, eax
jne 0x4124bb
mov eax, edi
push eax
push str.:7:SpawnPaulaExe___FAILED:___s__does_not_exist_to_create_TelKomm_session.
call fcn.004265da
pop ecx
pop ecx
call fcn.00415e85
test eax, eax
jne 0x4124bb
push 0x10
push str.__ERROR__
push str.The_TelKomm_dependency_file_is_missing_
call fcn.004101db
push eax
call dword [sym.imp.USER32.dll_MessageBoxA]
xor eax, eax
inc eax
jmp 0x412782
call fcn.0048a53c
test eax, eax
push 0
je 0x4124f2
call fcn.0048a45f
pop ecx
push eax
lea eax, [ebp - 0x114]
push eax
push str.__s___s__Spawned
lea eax, [ebp - 0xb24]
push 0x800
push eax
call fcn.004c53b7
add esp, 0x14
jmp 0x4125c3
push 0
xor ecx, ecx
call fcn.0046255a
push eax
lea eax, [ebp - 0x114]
push eax
push str.__s___s__Spawned
lea eax, [ebp - 0xb24]
push 0x800
push eax
call fcn.004c53b7
add esp, 0x1c
jmp 0x4125c3
mov ecx, 0x5387f4
call fcn.004c4503
push eax
push edi
push edi
call fcn.0048a119
pop ecx
pop ecx
push eax
push esi
lea eax, [ebp - 0x114]
push ebx
push eax
call fcn.004c53b7
add esp, 0x14
lea eax, [ebp - 0x114]
push eax
push str.__s___Spawned
mov edi, 0x800
lea eax, [ebp - 0xb24]
push edi
push eax
call fcn.004c53b7
xor eax, eax
inc eax
add esp, 0x10
cmp dword [0x5d9c9c], eax
mov dword [ebp - 0xb28], eax
jle 0x4125c3
push 0x539144
mov eax, edi
lea esi, [ebp - 0xb24]
call fcn.004c3c36
mov eax, dword [ebp - 0xb28]
pop ecx
push dword [eax*4 + 0x5d9ca0]
mov eax, edi
call fcn.004c3c36
mov eax, edi
mov dword [esp], 0x539148
call fcn.004c3c36
inc dword [ebp - 0xb28]
mov eax, dword [ebp - 0xb28]
cmp eax, dword [0x5d9c9c]
pop ecx
jl 0x412579
lea eax, [ebp - 0x21c]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
test al, 1
je 0x4125e5
and eax, 0xfffffffe
push eax
lea eax, [ebp - 0x21c]
push eax
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
cmp dword [ebp - 0xb2c], 0
je 0x41260e
cmp dword [ebp - 0xb30], 0
je 0x41260e
lea eax, [ebp - 0x114]
push eax
mov edx, eax
lea ecx, [ebp - 0x21c]
call fcn.0042ab29
pop ecx
jmp 0x412627
push 1
lea eax, [ebp - 0x114]
push eax
push eax
lea eax, [ebp - 0x21c]
push eax
call fcn.0042ab09
add esp, 0x10
test eax, eax
jne 0x41264d
lea eax, [ebp - 0x114]
push eax
lea eax, [ebp - 0x21c]
push eax
push str.:9:SpawnPaulaExe___CRITICALLY_FAILED:_CopyFileEnumerated___s_____s___TRUE__FAILED:_The_real_PAULA_exe_will_have_to_be_used_instead_of_the_spawn___
call fcn.004265da
add esp, 0xc
xor eax, eax
jmp 0x412782
lea edi, [ebp - 0x114]
call fcn.0042ad00
test eax, eax
jne 0x41266b
mov eax, edi
push eax
push str.:8:SpawnPaulaExe___FAILED:_The_spawned_exe___s__did_not_exist_after_creation_
call fcn.004265da
pop ecx
pop ecx
xor esi, esi
cmp dword [ebp - 0xb2c], esi
je 0x412725
push esi
mov esi, str.TelKomm
call fcn.004111f6
cmp eax, 0x19
pop ecx
jg 0x412646
push 0x10
xor edi, edi
lea eax, [ebp - 0xb40]
push edi
push eax
call fcn.005117f0
add esp, 0xc
push 0x44
pop esi
push esi
lea eax, [ebp - 0xb8c]
push edi
push eax
call fcn.005117f0
mov dword [ebp - 0xb8c], esi
xor esi, esi
inc esi
add esp, 0xc
mov dword [ebp - 0xb60], esi
mov word [ebp - 0xb5c], si
call fcn.00415b26
test eax, eax
je 0x4126de
lea eax, [ebp - 0x114]
push eax
call fcn.0041156c
pop ecx
lea eax, [ebp - 0xb40]
push eax
push edi
push edi
call fcn.00489f49
pop ecx
pop ecx
push eax
lea eax, [ebp - 0xb24]
push eax
lea eax, [ebp - 0x114]
push eax
lea ecx, [ebp - 0xb8c]
call fcn.00415585
add esp, 0x10
test eax, eax
jne 0x41276a
push str._GetLastError_
lea eax, [ebp - 0x114]
push eax
push str.:8:SpawnPaulaExe___FAILED_to_start_the_Paula_Session_Process:___s__Spawned_:__s
jmp 0x41263e
push 0x103
lea eax, [ebp - 0x323]
push esi
push eax
mov byte [ebp - 0x324], 0
call fcn.005117f0
add esp, 0xc
mov ecx, 0x5387f4
call fcn.004c4503
push eax
mov ecx, ebx
lea eax, [ebp - 0x324]
call fcn.004c3b66
pop ecx
push esi
mov esi, eax
call fcn.004111f6
cmp eax, 0x14
jmp 0x412687
mov edi, dword [ebp - 0xb3c]
call fcn.0042dbeb
mov edi, dword [ebp - 0xb40]
call fcn.0042dbeb
mov eax, esi
mov ecx, dword [ebp - 8]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0051291c
leave
ret