Function at 0x432bd0
Capabilities:
Get common file path
Read .ini file
Set current directory

Disassembly:
sub esp, 0x720
mov eax, dword [0x4cbbe8]
xor eax, esp
mov dword [esp + 0x71c], eax
mov eax, dword [0x4d860c]
mov ecx, dword [0x4d8610]
mov edx, dword [0x4d8624]
mov dword [0x4d7838], eax
mov eax, dword [0x4d8628]
mov dword [0x4d783c], ecx
mov ecx, dword [0x4d8644]
mov dword [0x4d76e0], edx
mov edx, dword [0x4d8648]
mov dword [0x4d76e4], eax
mov eax, dword [0x4d8654]
push ebx
mov dword [0x4d7848], ecx
mov ecx, dword [0x4d8658]
mov dword [0x4d784c], edx
mov edx, dword [0x4d861c]
mov dword [0x4d7820], eax
mov eax, dword [0x4d8620]
push ebp
push edi
mov dword [0x4d7824], ecx
mov dword [0x4d76b0], edx
mov dword [0x4d76b4], eax
call fcn.004314a0
call fcn.00431050
xor ebx, ebx
cmp byte [0x4d8c10], bl
push 0x4d79c0
push ebx
push str.BGEnable
jne 0x432c82
call fcn.004309b0
mov dword [0x4d8af8], eax
jmp 0x432c87
call fcn.004309b0
add esp, 0xc
push 0x4d79c0
mov ebp, 1
push ebp
push str.BGUseAlphaBlendAPI
mov dword [0x4d76cc], eax
call fcn.004309b0
push 0x4d79c0
push ebx
push str.BGNoFrame
mov dword [0x4d8afc], eax
call fcn.004309b0
push 0x4d79c0
push ebp
push str.BGFastSizeMove
mov dword [0x4d8c0c], eax
call fcn.004309b0
push 0x4d79c0
push ebp
push str.BGFlickerlessMove
mov dword [0x4d8c04], eax
call fcn.004309b0
mov edi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
add esp, 0x30
push 0x4d79c0
push 0x104
push 0x4d7700
push str.plugin
push str.BGSPIPath
push 0x4a8d78
mov dword [0x4d8c08], eax
call edi
push 0xffffffffffffffff
push 0x4d7700
push 0x104
push 0x4d8b00
call fcn.0046fb1a
add esp, 0x10
cmp byte [0x4d8c10], bl
jne 0x432dcc
push 0x4d79c0
push 0x104
lea ecx, [esp + 0x14]
push ecx
push 0x4a5588
push str.BGThemeFile
push 0x4a8d78
call edi
push 0xffffffffffffffff
lea edx, [esp + 0x10]
push edx
push 0x104
push 0x4d8c10
call fcn.0046fb1a
push str.themeImageFile.INI
push 0x4d78c0
push str._s_s
push 0xffffffffffffffff
lea eax, [esp + 0x2c]
push 0x104
push eax
call fcn.0046f96e
add esp, 0x28
lea ecx, [esp + 0xc]
push ecx
push 0x104
push 0x4d9ad2
push 0x4a5588
push str.BGDestFile
push 0x4a8d78
call edi
lea edx, [esp + 0xc]
push edx
push 0x40
push str.BGSrc1Alpha
push 0x4a8d78
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov word [0x4d9d14], ax
cmp dword [0x4d76cc], ebx
je 0x4330b0
push esi
push ebx
call fcn.0046f529
push eax
call fcn.004774b2
mov ecx, dword [0x4d8c0c]
mov eax, dword [0x4d8afc]
mov edx, dword [0x4d8c04]
add esp, 8
mov dword [0x4d6ff0], ecx
lea ecx, [esp + 0x114]
mov dword [0x4d76d8], eax
mov eax, dword [0x4d8c08]
push ecx
push 0x104
mov dword [0x4d7850], edx
mov dword [0x4d6fb4], eax
call dword [sym.imp.KERNEL32.dll_GetTempPathA]
mov esi, dword [sym.imp.KERNEL32.dll_GetTempFileNameA]
push 0x4d7364
push ebx
push str.ttAK
lea edx, [esp + 0x120]
push edx
call esi
push 0x4d7124
push ebx
push str.ttAK
lea eax, [esp + 0x120]
push eax
call esi
push 0x4d75a4
push ebx
push str.ttAK
lea ecx, [esp + 0x120]
push ecx
call esi
push 0xffffffffffffffff
push 0x4a5588
push 0x104
push 0x4d7260
mov dword [0x4d7244], ebp
mov dword [0x4d7248], ebx
mov dword [0x4d7250], ebx
mov dword [0x4d724c], ebp
call fcn.0046fb1a
push 0xffffffffffffffff
push 0x4a5588
push 0x104
mov esi, 0xff
push 0x4d7020
mov dword [0x4d7004], 2
mov dword [0x4d7008], ebx
mov dword [0x4d7010], 0xffffff
mov dword [0x4d700c], ebp
mov dword [0x4d7014], esi
call fcn.0046fb1a
push 0xffffffffffffffff
push 0x4a5588
push 0x104
push 0x4d74a0
mov dword [0x4d7484], ebx
mov dword [0x4d7488], ebx
mov dword [0x4d7490], ebx
mov dword [0x4d748c], ebp
mov dword [0x4d7494], 0x80
call fcn.0046fb1a
push 0x4d79c0
mov dword [0x4d76c8], esi
call fcn.00430d00
add esp, 0x34
push 0x4d79c0
push 0x104
lea edx, [esp + 0x18]
push edx
push 0x4a5588
push str.BGThemeFile
push 0x4a8d78
call edi
push 0x104
lea eax, [esp + 0x21c]
push eax
lea ecx, [esp + 0x18]
push ecx
call fcn.0042f330
add esp, 0xc
mov edi, 0x4a5588
lea esi, [esp + 0x218]
mov ecx, ebp
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
je 0x432fc9
lea eax, [esp + 0x628]
push eax
push 0x104
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryA]
lea ecx, [esp + 0x524]
push ecx
lea edx, [esp + 0x21c]
push edx
call fcn.0042b040
mov esi, dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryA]
add esp, 8
lea eax, [esp + 0x524]
push eax
call esi
lea ecx, [esp + 0x218]
push ecx
call fcn.00430d00
add esp, 4
lea edx, [esp + 0x628]
push edx
call esi
push 0x104
push 0x4d7700
call fcn.0042b140
push 0xffffffffffffffff
push 0x4a909c
push 0x104
push 0x4d7700
call fcn.004723db
push 0x4d7240
call fcn.00432b90
push 0x4d7000
call fcn.00432b90
push 0x4d7480
call fcn.00432b90
mov esi, dword [sym.imp.KERNEL32.dll_GetSystemDirectoryA]
add esp, 0x24
cmp dword [0x4d76d8], ebx
je 0x433063
push 0x104
lea eax, [esp + 0x320]
push eax
call esi
push 0xffffffffffffffff
push str.msimg32.dll
lea ecx, [esp + 0x324]
push 0x104
push ecx
call fcn.004723db
lea edx, [esp + 0x32c]
push str.AlphaBlend
push edx
call fcn.0042f310
add esp, 0x18
cmp eax, ebx
mov dword [0x4d722c], eax
jne 0x43306d
mov dword [0x4d722c], 0x42f6b0
push 0x104
lea eax, [esp + 0x424]
push eax
call esi
push 0xffffffffffffffff
push 0x4a6558
lea ecx, [esp + 0x428]
push 0x104
push ecx
call fcn.004723db
lea edx, [esp + 0x430]
push str.EnumDisplayMonitors
push edx
call fcn.0042f310
add esp, 0x18
mov dword [0x4d76d4], eax
pop esi
mov ecx, dword [esp + 0x728]
pop edi
pop ebp
pop ebx
xor ecx, esp
call fcn.0046fa34
add esp, 0x720
ret