Function at 0x4189c0
Capabilities:
Get common file path
Read .ini file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x400
mov eax, dword [0x43fd90]
xor eax, ebp
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x368], 0
mov dword [ebp - 0x35c], 0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x2a0], 4
mov dword [ebp - 0x24], 0x40
mov dword [ebp - 0x358], 0x20
mov dword [ebp - 0x378], 1
mov dword [ebp - 0x38], 0
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x1e0]
sub ecx, 1
neg ecx
sbb ecx, ecx
and ecx, 0xffffffda
add ecx, 0x2c
mov dword [ebp - 0xc], ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x1e0]
sub eax, 1
neg eax
sbb eax, eax
and eax, 0
add eax, 1
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x29c], 0x28
mov dword [ebp - 0x18], 0x12
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x2c], 0x32
mov dword [ebp - 0x2cc], 1
mov dword [ebp - 0x354], 4
mov dword [ebp - 0x14], 1
mov dword [ebp - 8], 0
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x2c8], 0
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x364], 0
mov dword [ebp - 0x28], 0xffffffff
xor ecx, ecx
mov word [ebp - 0x298], cx
push 0x206
push 0
lea edx, [ebp - 0x296]
push edx
call fcn.0041f6d0
add esp, 0xc
xor eax, eax
mov word [ebp - 0x350], ax
push 0x3e
push 0
lea ecx, [ebp - 0x34e]
push ecx
call fcn.0041f6d0
add esp, 0xc
xor edx, edx
mov word [ebp - 0x90], dx
push 0x3e
push 0
lea eax, [ebp - 0x8e]
push eax
call fcn.0041f6d0
add esp, 0xc
xor ecx, ecx
mov word [ebp - 0x310], cx
push 0x3e
push 0
lea edx, [ebp - 0x30e]
push edx
call fcn.0041f6d0
add esp, 0xc
lea eax, [ebp - 0x364]
push eax
push 0
mov ecx, dword [ebp + 8]
push ecx
call fcn.00418760
add esp, 0xc
mov edx, dword [ebp + 8]
mov eax, dword [ebp - 0x364]
mov dword [edx + 0x2c4], eax
push 0x104
lea ecx, [ebp - 0x298]
push ecx
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
push 0x4367f0
lea edx, [ebp - 0x298]
push edx
push 0x436810
lea eax, [ebp - 0x298]
push eax
call fcn.0041c8e0
add esp, 0x10
lea ecx, [ebp - 0x298]
push ecx
push 0x20
lea edx, [ebp - 0x310]
push edx
push 0x43681c
push 0xa
lea eax, [ebp - 0x90]
push eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x2c8]
push edx
call fcn.004235bf
add esp, 0xc
push eax
push 0x436820
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
movzx eax, word [ebp - 0x310]
test eax, eax
je 0x418cb3
mov dword [ebp - 0x37c], 0
mov dword [ebp - 0x380], 0
mov ecx, dword [ebp + 8]
movzx edx, word [ecx + 0x2dc]
mov dword [ebp - 0x37c], edx
mov eax, dword [ebp + 8]
cmp dword [eax + 0x2c8], 0x10
jne 0x418c26
mov ecx, dword [ebp + 8]
movzx edx, word [ecx + 0x2dc]
cmp edx, 7
jg 0x418c26
mov eax, dword [ebp + 8]
cmp dword [eax + 0x2c4], 2
je 0x418c26
mov dword [ebp - 0x37c], 8
cmp dword [ebp - 0x37c], 0
jl 0x418cb3
mov ecx, dword [ebp - 0x37c]
push ecx
lea edx, [ebp - 0x310]
push edx
push 0x436834
lea eax, [ebp - 0x350]
push eax
call fcn.0041c8e0
add esp, 0x10
lea ecx, [ebp - 0x298]
push ecx
push 0
push 0x436840
lea edx, [ebp - 0x350]
push edx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [ebp - 0x380], eax
cmp dword [ebp - 0x380], 0
jle 0x418c8c
mov eax, dword [ebp - 0x37c]
mov dword [ebp - 0x28], eax
jmp 0x418cb3
push 0x40
push 0
lea ecx, [ebp - 0x350]
push ecx
call fcn.0041f6d0
add esp, 0xc
mov edx, dword [ebp - 0x37c]
sub edx, 1
mov dword [ebp - 0x37c], edx
jmp 0x418c26
lea eax, [ebp - 0x298]
push eax
push 6
push 0x436854
lea ecx, [ebp - 0x350]
push ecx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [ebp - 0xc], eax
lea edx, [ebp - 0x298]
push edx
push 0x10
push 0x436868
lea eax, [ebp - 0x350]
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [ebp - 0x34], eax
lea ecx, [ebp - 0x298]
push ecx
push 0x14
push 0x436880
lea edx, [ebp - 0x350]
push edx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [ebp - 0x29c], eax
lea eax, [ebp - 0x298]
push eax
push 0
push 0x436894
lea ecx, [ebp - 0x350]
push ecx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x40], 0
lea edx, [ebp - 0x298]
push edx
push 0x30
push 0x43689c
lea eax, [ebp - 0x350]
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x2cc], 0
mov dword [ebp - 0x354], 4
cmp dword [0x94063c], 0x404
jne 0x418d7d
mov dword [ebp - 0x354], 1
cmp dword [0x94063c], 0x405
jne 0x418dc8
lea ecx, [ebp - 0x298]
push ecx
push 1
push 0x4368b4
lea edx, [ebp - 0x350]
push edx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x298]
push eax
push 4
push 0x4368c0
lea ecx, [ebp - 0x350]
push ecx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [ebp - 0x354], eax
lea edx, [ebp - 0x298]
push edx
push 4
push 0x4368d4
lea eax, [ebp - 0x350]
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [ebp - 0x2a0], eax
lea ecx, [ebp - 0x298]
push ecx
push 0x40
push 0x4368e0
lea edx, [ebp - 0x350]
push edx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x298]
push eax
push 0x20
push 0x4368ec
lea ecx, [ebp - 0x350]
push ecx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [ebp - 0x358], eax
lea edx, [ebp - 0x298]
push edx
push 1
push str.Flicker
lea eax, [ebp - 0x350]
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [ebp - 0x378], eax
lea ecx, [ebp - 0x298]
push ecx
push 0
push 0x436908
lea edx, [ebp - 0x350]
push edx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [ebp - 0x35c], eax
lea eax, [ebp - 0x298]
push eax
push 0
push 0x43691c
lea ecx, [ebp - 0x350]
push ecx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [ebp - 0x1c], eax
lea edx, [ebp - 0x298]
push edx
push 0
push 0x43692c
lea eax, [ebp - 0x350]
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x24c], eax
lea edx, [ebp - 0x298]
push edx
push 0
push 0x436950
lea eax, [ebp - 0x350]
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x250], eax
lea edx, [ebp - 0x298]
push edx
push 0
push 0x436974
lea eax, [ebp - 0x350]
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x254], eax
lea edx, [ebp - 0x298]
push edx
push 0
push 0x436994
lea eax, [ebp - 0x350]
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x258], eax
lea edx, [ebp - 0x298]
push edx
push 0
push 0x4369c0
lea eax, [ebp - 0x350]
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x2d0], eax
lea edx, [ebp - 0x298]
push edx
push 0
push 0x4369e4
lea eax, [ebp - 0x350]
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
jbe 0x418f6c
mov ecx, dword [ebp + 8]
mov edx, dword [ebp - 0x10]
mov dword [ecx + 0x2cc], edx
lea eax, [ebp - 0x298]
push eax
push 0
push 0x436a04
lea ecx, [ebp - 0x350]
push ecx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [ebp - 8], eax
mov edx, dword [ebp - 0xc]
push edx
mov eax, dword [ebp + 8]
push eax
call fcn.00419cc0
add esp, 8
cmp dword [0x4718e8], 1
jne 0x41901d
mov byte [ebp - 0x400], 0
push 0x7f
push 0
lea ecx, [ebp - 0x3ff]
push ecx
call fcn.0041f6d0
add esp, 0xc
push 0x80
push 0
lea edx, [ebp - 0x400]
push edx
call fcn.0041f6d0
add esp, 0xc
mov eax, dword [ebp - 0xc]
push eax
mov ecx, dword [ebp - 0x28]
push ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x2c4]
push eax
push str.SetMediaParams_sensorType_d__appIndex_d__expos_d_n
lea ecx, [ebp - 0x400]
push ecx
call fcn.004208cb
add esp, 0x14
lea edx, [ebp - 0x400]
push edx
call fcn.00420840
add esp, 4
push eax
push 0x436a5c
lea eax, [ebp - 0x400]
push eax
call fcn.0040f6d0
add esp, 0xc
lea ecx, [ebp - 0x44]
push ecx
push 0x437120
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x14]
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x14]
mov eax, dword [eax]
push edx
mov ecx, dword [eax]
call ecx
mov dword [ebp - 0x36c], eax
push 2
mov edx, dword [ebp - 0x14]
push edx
push 5
mov eax, dword [ebp - 0x44]
mov ecx, dword [eax]
mov edx, dword [ebp - 0x44]
push edx
mov eax, dword [ecx + 0x10]
call eax
mov dword [ebp - 0x36c], eax
cmp dword [ebp - 0x36c], 0
jge 0x41906b
xor al, al
jmp 0x41933d
push 2
mov ecx, dword [ebp - 0x34]
push ecx
push 0
mov edx, dword [ebp - 0x44]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x44]
push ecx
mov edx, dword [eax + 0x10]
call edx
mov dword [ebp - 0x36c], eax
cmp dword [ebp - 0x36c], 0
jl 0x4190a9
push 2
mov eax, dword [ebp - 0x29c]
push eax
push 1
mov ecx, dword [ebp - 0x44]
mov edx, dword [ecx]
mov eax, dword [ebp - 0x44]
push eax
mov ecx, dword [edx + 0x10]
call ecx
push 2
mov edx, dword [ebp - 0x18]
push edx
push 2
mov eax, dword [ebp - 0x44]
mov ecx, dword [eax]
mov edx, dword [ebp - 0x44]
push edx
mov eax, dword [ecx + 0x10]
call eax
push 2
mov ecx, dword [ebp - 0x40]
push ecx
push 6
mov edx, dword [ebp - 0x44]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x44]
push ecx
mov edx, dword [eax + 0x10]
call edx
mov dword [ebp - 0x36c], eax
cmp dword [ebp - 0x36c], 0
jl 0x419100
push 2
mov eax, dword [ebp - 0x2c]
push eax
push 3
mov ecx, dword [ebp - 0x44]
mov edx, dword [ecx]
mov eax, dword [ebp - 0x44]
push eax
mov ecx, dword [edx + 0x10]
call ecx
mov dword [ebp - 0x36c], eax
cmp dword [ebp - 0x36c], 0
jl 0x419128
push 2
mov edx, dword [ebp - 0x2cc]
push edx
push 8
mov eax, dword [ebp - 0x44]
mov ecx, dword [eax]
mov edx, dword [ebp - 0x44]
push edx
mov eax, dword [ecx + 0x10]
call eax
mov dword [ebp - 0x36c], eax
cmp dword [ebp - 0x36c], 0
jl 0x419150
push 2
mov ecx, dword [ebp - 0x354]
push ecx
push 4
mov edx, dword [ebp - 0x44]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x44]
push ecx
mov edx, dword [eax + 0x10]
call edx
mov dword [ebp - 0x36c], eax
mov eax, dword [ebp - 0x44]
mov ecx, dword [eax]
mov edx, dword [ebp - 0x44]
push edx
mov eax, dword [ecx + 8]
call eax
cmp dword [ebp - 0x36c], 0
jge 0x41916e
xor al, al
jmp 0x41933d
mov ecx, dword [ebp - 0x35c]
push ecx
push 0x13
mov edx, dword [ebp + 8]
mov ecx, dword [edx + 0x1c]
call fcn.00401550
mov eax, dword [ebp - 0x378]
push eax
push 0xf
mov ecx, dword [ebp + 8]
mov ecx, dword [ecx + 0x1c]
call fcn.00401550
mov edx, dword [ebp - 0x1c]
push edx
push 0xd
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x1c]
call fcn.00401550
mov dword [ebp - 0x374], 0
mov dword [ebp - 0x3c], 0xea
mov dword [ebp - 0x360], 0x50
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x370], 0
mov ecx, dword [ebp - 0x358]
push ecx
mov edx, dword [ebp - 0x24]
push edx
mov eax, dword [ebp - 0x2a0]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.00418970
add esp, 0x10
mov dword [ebp - 0x20], 0
mov dword [ebp - 4], 0
mov dword [ebp - 0x2c4], 0x60
mov dword [ebp - 0x2c0], 0xf0
mov dword [ebp - 0x2bc], 0xf0
mov dword [ebp - 0x2b8], 0xf0
mov dword [ebp - 0x2b4], 0x60
mov dword [ebp - 0x2b0], 0xf0
mov dword [ebp - 0x2ac], 0xf0
mov dword [ebp - 0x2a8], 0xf0
mov dword [ebp - 0x2a4], 0x60
mov dword [ebp - 0x20], 0
jmp 0x41926b
mov edx, dword [ebp - 0x20]
add edx, 1
mov dword [ebp - 0x20], edx
cmp dword [ebp - 0x20], 9
jge 0x419299
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp + eax*4 - 0x2c4]
mov dword [ebp - 4], ecx
mov edx, dword [ebp - 4]
push edx
mov eax, dword [ebp - 0x20]
add eax, 0x10a
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.00418720
add esp, 0xc
jmp 0x419262
mov edx, dword [ebp + 8]
movzx eax, word [edx + 0x2dc]
cmp eax, 7
jl 0x4192de
mov ecx, dword [ebp + 8]
cmp dword [ecx + 0x2cc], 0
jle 0x4192de
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x2cc]
mov dword [ebp - 0x3c], eax
mov ecx, dword [ebp - 0x360]
push ecx
mov edx, dword [ebp - 0x3c]
push edx
mov eax, dword [ebp - 0x374]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.00418930
add esp, 0x10
cmp dword [ebp - 8], 1
jne 0x41933b
mov edx, dword [ebp + 8]
cmp dword [edx + 0x2c4], 2
je 0x41933b
lea eax, [ebp - 0x30]
push eax
push 7
mov ecx, dword [ebp + 8]
push ecx
call fcn.00418760
add esp, 0xc
lea edx, [ebp - 0x30]
push edx
push 0x20
mov eax, dword [ebp + 8]
push eax
call fcn.00418760
add esp, 0xc
mov ecx, dword [ebp - 0x30]
or ecx, 0x4000
mov dword [ebp - 0x30], ecx
mov edx, dword [ebp - 0x30]
or edx, 0x20
mov dword [ebp - 0x30], edx
mov eax, dword [ebp - 0x30]
push eax
push 0x20
mov ecx, dword [ebp + 8]
push ecx
call fcn.004187f0
add esp, 0xc
mov al, 1
mov ecx, dword [ebp - 0x4c]
xor ecx, ebp
call fcn.0041f6b5
mov esp, ebp
pop ebp
ret