Function at 0x10019180
Capabilities:
Check if file exists
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1009734c
mov eax, dword fs:[0]
push eax
sub esp, 0x19c
push ebx
push esi
push edi
mov eax, dword [0x100c4350]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, ecx
mov dword [ebp - 0x14], eax
cmp dword [eax + 0xa0], 8
lea ebx, [eax + 0x8c]
mov eax, ebx
jb 0x100191c3
mov eax, dword [ebx]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x1001929e
call fcn.1002c4b0
mov ecx, eax
push 1
mov edx, dword [eax]
mov eax, dword [edx + 8]
call eax
movzx eax, al
sub eax, 1
jne 0x100196eb
push 0x6b
push str.d:jenkins.jenkinsworkspacegroup_cleanmemory_optimizer_promemory_optimizer_promem_opt_srcmain_wnd.cc
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], al
call fcn.10006d20
push 3
push 0x1009e898
lea ecx, [ebp - 0x44]
mov dword [ebp - 4], 0
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0xf
mov byte [ebp - 0x44], 0
call fcn.10006d20
mov byte [ebp - 4], 1
call fcn.1002c4b0
mov edi, eax
lea ecx, [ebp - 0x110]
push 0x252
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x44]
push eax
call fcn.100039c0
mov esi, eax
push str._mo.set_not_exist
push esi
mov byte [ebp - 4], 2
call fcn.10004980
mov edx, dword [edi]
add esp, 8
mov ecx, edi
push esi
call dword [edx + 0x1c]
lea ecx, [ebp - 0x110]
call fcn.10004aa0
lea ecx, [ebp - 0x44]
call fcn.100043d0
lea ecx, [ebp - 0x2c]
call fcn.100043d0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [ebx + 0x14], 8
mov eax, ebx
jb 0x100192a8
mov eax, dword [ebx]
mov edi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
push eax
push 0
push str.amom
push 0x1009fbfc
call edi
cmp eax, 1
mov eax, ebx
sete byte [ebp - 0xd]
cmp dword [ebx + 0x14], 8
jb 0x100192ce
mov eax, dword [ebx]
push eax
push 0
push str.amoi
push 0x1009fbfc
call edi
cmp eax, 1
sete byte [ebp - 0xe]
cmp byte [ebp - 0xd], 0
je 0x1001942e
cmp dword [ebx + 0x14], 8
mov eax, ebx
jb 0x100192f8
mov eax, dword [ebx]
push eax
push 0x50
push str.amomv
push 0x1009fbfc
call edi
mov esi, eax
mov eax, 0x50
test esi, esi
cmove esi, eax
mov dword [ebp - 0x48], esi
call fcn.1002c4b0
mov ecx, eax
push 1
mov edx, dword [eax]
mov eax, dword [edx + 8]
call eax
movzx eax, al
sub eax, 1
jne 0x100193f5
push 0x6b
push str.d:jenkins.jenkinsworkspacegroup_cleanmemory_optimizer_promemory_optimizer_promem_opt_srcmain_wnd.cc
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], al
call fcn.10006d20
push 3
push 0x1009e898
lea ecx, [ebp - 0x44]
mov dword [ebp - 4], 3
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0xf
mov byte [ebp - 0x44], 0
call fcn.10006d20
mov byte [ebp - 4], 4
call fcn.1002c4b0
mov edi, eax
lea ecx, [ebp - 0x110]
push 0x267
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x44]
push eax
call fcn.100039c0
mov esi, eax
push str.GoVipFunction
push esi
mov byte [ebp - 4], 5
call fcn.10004980
push str._target_usage:
push esi
call fcn.10004980
add esp, 0x10
mov ecx, esi
push dword [ebp - 0x48]
call fcn.10009b90
mov eax, dword [edi]
mov ecx, edi
push esi
call dword [eax + 0x1c]
lea ecx, [ebp - 0x110]
call fcn.10004aa0
lea ecx, [ebp - 0x44]
call fcn.100043d0
lea ecx, [ebp - 0x2c]
mov dword [ebp - 4], 0xffffffff
call fcn.100043d0
mov esi, dword [ebp - 0x48]
mov edi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
movd xmm0, esi
cvtdq2pd xmm0, xmm0
shr esi, 0x1f
push 0x1388
addsd xmm0, qword [esi*8 + 0x1009f930]
mov esi, dword [ebp - 0x14]
mov ecx, esi
cvtpd2ps xmm0, xmm0
divss xmm0, dword [0x100a0b58]
movss dword [esi + 0x30], xmm0
call fcn.1001d500
jmp 0x10019574
call fcn.1002c4b0
mov ecx, eax
push 1
mov edx, dword [eax]
mov eax, dword [edx + 8]
call eax
movzx eax, al
sub eax, 1
jne 0x10019563
push 0x6b
push str.d:jenkins.jenkinsworkspacegroup_cleanmemory_optimizer_promemory_optimizer_promem_opt_srcmain_wnd.cc
lea ecx, [ebp - 0x44]
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x30], 0xf
mov byte [ebp - 0x44], al
call fcn.10006d20
push 3
push 0x1009e898
lea ecx, [ebp - 0x2c]
mov dword [ebp - 4], 6
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
call fcn.10006d20
mov byte [ebp - 4], 7
call fcn.1002c4b0
mov edi, eax
lea ecx, [ebp - 0x110]
push 0x134
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.100039c0
mov esi, eax
push str.StopTimerQueryMemoryUsage
push esi
mov byte [ebp - 4], 8
call fcn.10004980
mov edx, dword [edi]
add esp, 8
mov ecx, edi
push esi
call dword [edx + 0x1c]
lea ecx, [ebp - 0x110]
call fcn.10004aa0
mov edx, dword [ebp - 0x18]
mov byte [ebp - 4], 6
cmp edx, 0x10
jb 0x10019510
mov ecx, dword [ebp - 0x2c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10019506
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100196fd
push edx
push ecx
call fcn.1002e0a6
add esp, 8
mov edx, dword [ebp - 0x30]
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
mov dword [ebp - 4], 0xffffffff
cmp edx, 0x10
jb 0x1001955d
mov ecx, dword [ebp - 0x44]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10019553
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10019702
push edx
push ecx
call fcn.1002e0a6
add esp, 8
mov edi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov esi, dword [ebp - 0x14]
push 0x3e9
push dword [esi + 4]
call dword [sym.imp.USER32.dll_KillTimer]
cmp byte [ebp - 0xe], 0
je 0x100195be
cmp dword [ebx + 0x14], 8
jb 0x10019582
mov ebx, dword [ebx]
push ebx
push 0x384
push str.amoiv
push 0x1009fbfc
call edi
test eax, eax
mov ecx, 0x384
cmove eax, ecx
mov ecx, esi
imul eax, eax, 0x3e8
push eax
call fcn.1001d1a0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.1002c4b0
mov ecx, eax
push 1
mov edx, dword [eax]
mov eax, dword [edx + 8]
call eax
movzx eax, al
sub eax, 1
jne 0x100196da
push 0x6b
push str.d:jenkins.jenkinsworkspacegroup_cleanmemory_optimizer_promemory_optimizer_promem_opt_srcmain_wnd.cc
lea ecx, [ebp - 0x78]
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], al
call fcn.10006d20
push 3
push 0x1009e898
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 9
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
call fcn.10006d20
mov byte [ebp - 4], 0xa
call fcn.1002c4b0
mov edi, eax
lea ecx, [ebp - 0x1a8]
push 0x13f
lea eax, [ebp - 0x78]
push eax
lea eax, [ebp - 0x60]
push eax
call fcn.100039c0
mov esi, eax
push str.StopTimerMemoryOpt
push esi
mov byte [ebp - 4], 0xb
call fcn.10004980
mov edx, dword [edi]
add esp, 8
mov ecx, edi
push esi
call dword [edx + 0x1c]
lea ecx, [ebp - 0x1a8]
call fcn.10004aa0
mov edx, dword [ebp - 0x4c]
cmp edx, 0x10
jb 0x10019698
mov ecx, dword [ebp - 0x60]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1001968e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10019707
push edx
push ecx
call fcn.1002e0a6
add esp, 8
mov edx, dword [ebp - 0x64]
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
cmp edx, 0x10
jb 0x100196da
mov ecx, dword [ebp - 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100196d0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001970c
push edx
push ecx
call fcn.1002e0a6
add esp, 8
mov eax, dword [ebp - 0x14]
push 0x3eb
push dword [eax + 4]
call dword [sym.imp.USER32.dll_KillTimer]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.1006edd9
call fcn.1006edd9
call fcn.1006edd9
call fcn.1006edd9
int3