Function at 0x1003f5cf
Capabilities:
Terminate process

Disassembly:
mov eax, 0x140c
call fcn.1005b1d0
cmp dword [0x100e0310], 0
push ebx
push ebp
push esi
push edi
je 0x1003f66f
push 0x20abb
push 0
push 0x10184500
call fcn.1005d0d0
add esp, 0xc
call fcn.1003d483
mov ecx, dword [0x101a4fd0]
xor ebx, ebx
mov dword [esp + 0x10], ebx
test ecx, ecx
jle 0x1003f6a1
mov edx, dword [0x101a4fcc]
xor edi, edi
and dword [esp + 0x14], 0
lea esi, [edi + edx]
cmp dword [esi + 8], 0
jle 0x1003f661
mov ebx, dword [esp + 0x14]
xor ebp, ebp
mov eax, dword [esi + 0xc]
push dword [eax + ebp + 8]
push 0xffffffffffffffff
push esi
call fcn.1003c7ad
mov edx, dword [0x101a4fcc]
lea ebp, [ebp + 0xc]
add esp, 0xc
inc ebx
lea esi, [edi + edx]
cmp ebx, dword [esi + 8]
jl 0x1003f633
mov ecx, dword [0x101a4fd0]
mov ebx, dword [esp + 0x10]
inc ebx
add edi, 0x10
mov dword [esp + 0x10], ebx
cmp ebx, ecx
jl 0x1003f61f
jmp 0x1003f67b
mov ecx, dword [0x101a4fd0]
mov edx, dword [0x101a4fcc]
test ecx, ecx
jle 0x1003f6a1
add edx, 8
xor esi, esi
cmp dword [edx], esi
jle 0x1003f699
xor edi, edi
mov eax, dword [edx + 4]
and dword [edi + eax], 0
inc esi
lea edi, [edi + 0xc]
cmp esi, dword [edx]
jl 0x1003f68a
add edx, 0x10
sub ecx, 1
jne 0x1003f682
push str.western.ini
push 0x101b9580
push str._swestern_s
lea eax, [esp + 0x228]
push 0x200
push eax
call fcn.10007ca2
lea eax, [esp + 0x230]
push 0x100929c8
push eax
call fcn.10069f1a
mov ebp, eax
add esp, 0x1c
mov dword [esp + 0x10], ebp
test ebp, ebp
jne 0x1003f8bc
lea eax, [esp + 0x21c]
push eax
push str.Could_not_open__s__using_default__or_previous__settings.
call fcn.10058778
pop ecx
pop ecx
jmp 0x1003f99c
lea esi, [esp + 0x1c]
lea ecx, [esi + 1]
mov al, byte [esi]
inc esi
test al, al
jne 0x1003f705
sub esi, ecx
jmp 0x1003f72c
movsx eax, byte [esp + esi + 0x1b]
push eax
push str._t_n_r
call fcn.1005eff0
pop ecx
pop ecx
test eax, eax
je 0x1003f730
dec esi
mov byte [esp + esi + 0x1c], 0
test esi, esi
jg 0x1003f710
mov al, byte [esp + 0x1c]
cmp al, 0x23
je 0x1003f8c4
cmp al, 0x3b
je 0x1003f8c4
test al, al
je 0x1003f8c4
test esi, esi
jle 0x1003f77b
cmp byte [esp + esi + 0x1b], 0x5c
jne 0x1003f77b
push 0x1000
lea eax, [esp + 0x20]
mov byte [esp + esi + 0x1f], 0x20
push eax
lea eax, [esp + 0x424]
push eax
call fcn.1002d012
add esp, 0xc
jmp 0x1003f8c4
push 0x1000
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x424]
push eax
call fcn.1002d012
add esp, 0xc
lea esi, [esp + 0x41c]
or dword [esp + 0x14], 0xffffffff
mov al, byte [esi]
cmp al, 9
je 0x1003f7ab
cmp al, 0x20
jne 0x1003f7ae
inc esi
jmp 0x1003f7a1
cmp al, 0x30
jl 0x1003f7b6
cmp al, 0x39
jle 0x1003f7ce
cmp al, 0x41
jl 0x1003f7be
cmp al, 0x5a
jle 0x1003f7ce
cmp al, 0x61
jl 0x1003f7c6
cmp al, 0x7a
jle 0x1003f7ce
cmp al, 0x5f
je 0x1003f7ce
cmp al, 0x2d
jne 0x1003f7d3
inc esi
mov al, byte [esi]
jmp 0x1003f7ae
cmp al, 0x5b
jne 0x1003f82f
mov byte [esi], 0
inc esi
mov al, byte [esi]
cmp al, 9
je 0x1003f7da
cmp al, 0x20
je 0x1003f7da
cmp al, 0x5d
je 0x1003f82c
push esi
call fcn.1003fbb4
mov ebx, eax
mov dword [esp + 0x18], ebx
pop ecx
test ebx, ebx
jns 0x1003f810
lea eax, [esp + 0x1c]
push eax
push str.Parse_error:__s__Negative_array_index_
call fcn.10058778
pop ecx
pop ecx
jmp 0x1003f8bc
push 0x5d
push esi
call fcn.1005eff0
mov esi, eax
pop ecx
pop ecx
test esi, esi
jne 0x1003f82c
lea eax, [esp + 0x1c]
push eax
push str.Parse_error:__s__missing___
jmp 0x1003f804
inc esi
mov al, byte [esi]
mov byte [esi], 0
cmp al, 0x3d
je 0x1003f851
inc esi
mov al, byte [esi]
cmp al, 9
je 0x1003f836
cmp al, 0x20
je 0x1003f836
cmp al, 0x3d
je 0x1003f851
lea eax, [esp + 0x1c]
push eax
push str.Parse_error:__s__expected__
jmp 0x1003f804
mov edi, dword [0x101a4fd0]
lea ebp, [esi + 1]
xor esi, esi
test edi, edi
jle 0x1003f8a4
mov ecx, dword [0x101a4fcc]
mov edx, dword [ecx]
lea eax, [esp + 0x41c]
mov bl, byte [eax]
cmp bl, byte [edx]
jne 0x1003f88f
test bl, bl
je 0x1003f88b
mov bl, byte [eax + 1]
cmp bl, byte [edx + 1]
jne 0x1003f88f
add eax, 2
add edx, 2
test bl, bl
jne 0x1003f86f
xor eax, eax
jmp 0x1003f894
sbb eax, eax
or eax, 1
test eax, eax
je 0x1003f9a7
inc esi
add ecx, 0x10
cmp esi, edi
jl 0x1003f866
lea eax, [esp + 0x41c]
push eax
push str.Unknown_setting__s
call fcn.10058778
pop ecx
pop ecx
mov ebp, dword [esp + 0x10]
mov byte [esp + 0x41c], 0
push ebp
lea eax, [esp + 0x20]
push 0x200
push eax
call fcn.1006a8e0
add esp, 0xc
test eax, eax
jne 0x1003f6fe
push ebp
call fcn.10060f3b
xor edi, edi
pop ecx
mov dword [esp + 0x10], edi
cmp dword [0x101a4fd0], edi
jle 0x1003f990
xor ebx, ebx
mov esi, dword [0x101a4fcc]
xor ebp, ebp
and dword [esp + 0x18], 0
add esi, ebx
mov ecx, dword [esi + 8]
test ecx, ecx
jle 0x1003f95c
mov edi, dword [esp + 0x18]
xor edx, edx
mov dword [esp + 0x14], edx
mov eax, dword [esi + 0xc]
cmp dword [edx + eax], 0
je 0x1003f945
cmp dword [edx + eax], 1
jle 0x1003f942
push ebp
push esi
call fcn.1003c768
push eax
push str.Warning:_setting__s_was_set_multiple_times_in_the_.ini_file
call fcn.10058778
mov edx, dword [esp + 0x24]
add esp, 0x10
xor edi, edi
inc edi
mov ecx, dword [esi + 8]
inc ebp
add edx, 0xc
mov dword [esp + 0x14], edx
cmp ebp, ecx
jl 0x1003f91a
test edi, edi
mov edi, dword [esp + 0x10]
jne 0x1003f97c
cmp ecx, 1
mov edx, 0x10082444
mov eax, 0x10092ad0
cmovle eax, edx
push eax
push dword [esi]
push str.Warning:_setting__s_s_was_not_present_in_the_.ini_file
call fcn.10058778
add esp, 0xc
inc edi
add ebx, 0x10
mov dword [esp + 0x10], edi
cmp edi, dword [0x101a4fd0]
jl 0x1003f8fa
and dword [0x100e0310], 0
call fcn.1003f9e1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x140c
ret
cmp dword [0x100e0310], 0
jne 0x1003f9ce
cmp dword [ecx + 4], 8
je 0x1003f8b8
cmp dword [ecx + 4], 9
je 0x1003f8b8
cmp dword [ecx + 4], 0x10
je 0x1003f8b8
push ebp
push dword [esp + 0x18]
push ecx
call fcn.1003c7ad
add esp, 0xc
jmp 0x1003f8b8