Function at 0x100357f0
Capabilities:
Query environment variable
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100393e3
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x8f8
mov dword [ebp - 0x8e8], ecx
mov dword [ebp - 0x8e4], 0
mov eax, dword [ebp - 0x8e8]
push eax
lea ecx, [ebp - 0x834]
call fcn.100052d0
mov dword [ebp - 4], 1
xor ecx, ecx
mov word [ebp - 0x82c], cx
push 0x7fe
push 0
lea edx, [ebp - 0x82a]
push edx
call fcn.1001b770
add esp, 0xc
xor eax, eax
mov word [ebp - 0x850], ax
xor ecx, ecx
mov dword [ebp - 0x84e], ecx
mov dword [ebp - 0x84a], ecx
mov dword [ebp - 0x846], ecx
mov dword [ebp - 0x842], ecx
mov dword [ebp - 0x83e], ecx
mov dword [ebp - 0x83a], ecx
push 0x400
lea edx, [ebp - 0x82c]
push edx
push 0x1003fe38
call dword [sym.imp.KERNEL32.dll_ExpandEnvironmentStringsW]
lea eax, [ebp - 0x82c]
push eax
push 0xd
lea ecx, [ebp - 0x850]
push ecx
push 0x1003fe70
push 0x1003fe8c
push 0x1003fe94
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea edx, [ebp - 0x850]
push edx
lea ecx, [ebp - 0x28]
call fcn.10001c20
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x28]
call fcn.10001b20
cmp eax, 0xc
jne 0x1003598e
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x88c]
push ecx
call fcn.100075c0
add esp, 8
mov dword [ebp - 0x8ec], eax
mov edx, dword [ebp - 0x8ec]
mov dword [ebp - 0x8f0], edx
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x8e4]
or eax, 1
mov dword [ebp - 0x8e4], eax
lea ecx, [ebp - 0x28]
push ecx
lea edx, [ebp - 0x8a8]
push edx
call fcn.100075c0
add esp, 8
mov dword [ebp - 0x8f4], eax
mov eax, dword [ebp - 0x8f4]
mov dword [ebp - 0x8f8], eax
mov dword [ebp - 4], 4
mov ecx, dword [ebp - 0x8e4]
or ecx, 2
mov dword [ebp - 0x8e4], ecx
mov ecx, dword [ebp - 0x8f0]
call fcn.10001b20
push eax
mov ecx, dword [ebp - 0x8f8]
call fcn.10005050
push eax
mov ecx, dword [ebp - 0x8e8]
call fcn.10034cb0
movzx edx, al
test edx, edx
jne 0x1003598e
mov dword [ebp - 0x8fc], 0
jmp 0x10035998
mov dword [ebp - 0x8fc], 1
mov al, byte [ebp - 0x8fc]
mov byte [ebp - 0x86d], al
mov dword [ebp - 4], 3
mov ecx, dword [ebp - 0x8e4]
and ecx, 2
je 0x100359c8
and dword [ebp - 0x8e4], 0xfffffffd
lea ecx, [ebp - 0x8a8]
call fcn.10001870
mov dword [ebp - 4], 2
mov edx, dword [ebp - 0x8e4]
and edx, 1
je 0x100359ec
and dword [ebp - 0x8e4], 0xfffffffe
lea ecx, [ebp - 0x88c]
call fcn.10001870
movzx eax, byte [ebp - 0x86d]
test eax, eax
je 0x10035a96
push 0xd
push 0
lea ecx, [ebp - 0x850]
push ecx
call fcn.1001b770
add esp, 0xc
lea edx, [ebp - 0x8c4]
push edx
call fcn.10009ea0
add esp, 4
mov dword [ebp - 0x900], eax
mov eax, dword [ebp - 0x900]
mov dword [ebp - 0x904], eax
mov byte [ebp - 4], 5
push str.FunShion.ini
mov ecx, dword [ebp - 0x904]
push ecx
lea edx, [ebp - 0x86c]
push edx
call fcn.10005870
add esp, 0xc
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x8c4]
call fcn.10001d10
lea ecx, [ebp - 0x86c]
call fcn.10001e90
push eax
push 0xd
lea eax, [ebp - 0x850]
push eax
push 0x1003fed0
push 0x1003feec
push 0x1003fef4
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x86c]
call fcn.10001d10
lea ecx, [ebp - 0x850]
push ecx
lea ecx, [ebp - 0x8e0]
call fcn.10001c20
mov byte [ebp - 4], 8
lea edx, [ebp - 0x8e0]
push edx
mov eax, dword [ebp + 8]
push eax
call fcn.100075c0
add esp, 8
mov ecx, dword [ebp - 0x8e4]
or ecx, 4
mov dword [ebp - 0x8e4], ecx
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x8e0]
call fcn.10001d10
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x28]
call fcn.10001d10
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x834]
call fcn.10005300
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 4