Function at 0x48f180
Capabilities:
Read .ini file
Resume thread

Disassembly:
mov eax, dword [0x7c67dc]
mov eax, dword [eax + 0xc0]
sub esp, 0x1c
push ebx
push ebp
xor ebp, ebp
cmp eax, ebp
push edi
mov edi, ecx
je 0x48f1ad
fld dword [eax + 0x34]
fcomp dword [0x7464b8]
fnstsw ax
test ah, 0x41
je 0x48f513
movsx ecx, byte [0x7c9a88]
mov eax, dword [esp + 0x2c]
test eax, ecx
jne 0x48f513
mov dl, byte [0x7c9a88]
or dl, al
dec eax
cmp eax, 0x7f
mov dword [esp + 0xc], ebp
mov dword [esp + 0x2c], ebp
mov dword [esp + 0x14], ebp
mov dword [esp + 0x10], ebp
mov byte [0x7c9a88], dl
mov ebx, 4
ja case.0x48f1f1.8
xor edx, edx
mov dl, byte [eax + 0x48f53c]
jmp dword [edx*4 + 0x48f51c]
mov dword [esp + 0x2c], ebx
mov eax, 1
mov dword [esp + 0xc], eax
mov dword [esp + 0x14], eax
jmp case.0x48f1f1.8
mov dword [esp + 0xc], ebx
mov eax, 1
mov dword [esp + 0x2c], eax
mov dword [esp + 0x10], eax
jmp case.0x48f1f1.8
mov dword [esp + 0xc], ebx
jmp case.0x48f1f1.8
mov dword [esp + 0xc], ebx
mov dword [esp + 0x2c], ebx
mov eax, dword [edi + 0xa0]
mov ecx, dword [edi + 0xa4]
sub eax, 2
sub ecx, 2
push esi
mov dword [esp + 0x24], eax
mov dword [esp + 0x20], ecx
mov dword [esp + 0x1c], ebp
jmp 0x48f25c
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
mov ebx, 4
xor ebp, ebp
mov edx, dword [esp + 0x30]
add ecx, edx
push ecx
mov ecx, dword [esp + 0x14]
add eax, ecx
mov ecx, dword [edi]
push eax
call fcn.004baa10
mov esi, eax
cmp esi, ebp
je 0x48f41c
mov ecx, esi
call fcn.004e22f0
test al, al
jne 0x48f2a0
push ebp
mov ecx, esi
call fcn.004db9f0
push eax
mov ecx, esi
call fcn.004db9d0
push eax
mov ecx, edi
call fcn.00484a30
jmp 0x48f2c7
cmp dword [edi + 0xac], esi
je 0x48f2cb
mov edx, dword [0x7c9b10]
xor eax, eax
cmp edx, ebp
jbe 0x48f2c5
mov ecx, dword [edi + 0xb0]
cmp dword [ecx], esi
je 0x48f2ec
inc eax
add ecx, ebx
cmp eax, edx
jb 0x48f2ba
xor al, al
test al, al
je 0x48f2f0
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x30]
lea eax, [edx + 2]
lea edx, [ecx + eax*4]
add eax, edx
mov eax, dword [edi + eax*4]
mov dword [eax], 1
mov dword [eax + 4], esi
jmp 0x48f41c
mov al, 1
jmp 0x48f2c7
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x30]
add eax, 2
lea edx, [ecx + eax*4]
add eax, edx
mov eax, dword [edi + eax*4]
mov ecx, esi
mov dword [eax], 2
mov dword [eax + 4], esi
call fcn.004e2330
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x30]
add eax, 2
lea edx, [ecx + eax*4]
add eax, edx
mov eax, dword [edi + eax*4]
mov dword [eax + 8], ebp
mov eax, dword [edi + 0xb550]
xor edx, edx
cmp eax, ebp
mov dword [esp + 0x28], eax
jle 0x48f41c
xor esi, esi
xor eax, eax
test esi, esi
je 0x48f363
test eax, eax
je 0x48f353
cmp esi, 4
je 0x48f358
cmp eax, 4
jne 0x48f3ca
cmp esi, 4
jne 0x48f390
test eax, eax
jne 0x48f37f
mov ecx, 0x40
jmp 0x48f3a7
test eax, eax
jne 0x48f36e
mov ecx, 0x10
jmp 0x48f3a7
xor ecx, ecx
cmp eax, 4
setne cl
dec ecx
and ecx, 0x1c
add ecx, 4
jmp 0x48f3a7
xor ecx, ecx
cmp eax, 4
setne cl
dec ecx
and ecx, 0x78
add ecx, 8
jmp 0x48f3a7
test eax, eax
jne 0x48f39b
mov ecx, 1
jmp 0x48f3a7
xor ecx, ecx
cmp eax, 4
setne cl
dec ecx
and ecx, 2
movsx ebx, byte [0x7c9c90]
test ecx, ebx
je 0x48f3ca
lea ecx, [esi + 2]
lea ebx, [eax + ecx*4]
add ecx, ebx
mov ebx, dword [edi + 0xb554]
mov ecx, dword [edi + ecx*4]
add ebx, ebp
cmp dword [ecx + 8], ebx
je 0x48f3df
inc eax
cmp eax, 5
jl 0x48f341
inc esi
cmp esi, 5
jge 0x48f3f3
jmp 0x48f33f
mov eax, dword [esp + 0x28]
inc edx
add ebp, 0x10c
cmp edx, eax
jge 0x48f41c
jmp 0x48f33d
mov eax, edx
shl eax, 5
add eax, edx
lea ecx, [edx + eax*2]
mov edx, dword [edi + 0xb554]
lea ecx, [edx + ecx*4]
mov edx, dword [esp + 0x10]
lea eax, [edx + 2]
mov edx, dword [esp + 0x30]
lea edx, [edx + eax*4]
add eax, edx
mov eax, dword [edi + eax*4]
mov dword [eax + 8], ecx
mov eax, dword [esp + 0x18]
test eax, eax
jne 0x48f42c
mov ecx, dword [esp + 0x14]
test ecx, ecx
je 0x48f456
mov ebx, dword [esp + 0x10]
mov esi, dword [esp + 0x30]
mov ecx, dword [esp + 0x14]
add ebx, eax
mov eax, dword [esp + 0x1c]
add esi, ecx
inc eax
cmp eax, 3
mov dword [esp + 0x10], ebx
mov dword [esp + 0x30], esi
mov dword [esp + 0x1c], eax
jl 0x48f24d
mov ebx, 1
push ebx
lea edx, [esp + 0x34]
push edx
lea eax, [esp + 0x18]
push eax
push 2
mov ecx, edi
call fcn.004901f0
test al, al
pop esi
je 0x48f513
push str..Morrowind.ini
push 0
push str.DontThreadLoad
push str.General
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
cmp eax, ebx
je 0x48f50d
mov ecx, dword [edi + 0xb538]
push str.TES::Resume_Thread
call fcn.00693f00
mov al, byte [edi + 0xb511]
test al, al
jne 0x48f4fc
mov ecx, dword [0x7c9b30]
mov edx, dword [edi + 0xb504]
push ecx
push edx
call dword [sym.imp.KERNEL32.dll_SetThreadPriority]
mov eax, dword [edi + 0xb504]
push eax
push str.Resuming_Background_Thread__d_n
call fcn.006e9a00
add esp, 8
mov byte [edi + 0xb518], 0
mov byte [edi + 0xb511], bl
mov ecx, dword [edi + 0xb538]
call fcn.00693f10
mov ecx, dword [edi + 0xb504]
push ecx
call dword [sym.imp.KERNEL32.dll_ResumeThread]
jmp 0x48f507
mov ecx, dword [edi + 0xb538]
call fcn.00693f10
mov byte [edi + 0xb50c], bl
mov byte [edi + 0xb50c], bl
pop edi
pop ebp
pop ebx
add esp, 0x1c
ret 4