Function at 0x3001539f
Capabilities:
Read .ini file

Disassembly:
push ebp
mov eax, 0x1024
lea ebp, [esp - 0xfa4]
call fcn.3001f58a
mov eax, dword [0x30034be8]
push ebx
push esi
xor esi, esi
push edi
push dword [ebp + 0xfac]
mov dword [ebp + 0xfa0], eax
mov dword [ebp - 0x64], esi
mov dword [ebp - 0x70], esi
mov dword [ebp - 0x68], esi
mov dword [ebp - 0x78], esi
mov dword [ebp - 0x6c], esi
mov dword [ebp - 0x7c], esi
call fcn.3001518d
mov ebx, eax
cmp ebx, esi
je 0x300153ee
push 0x30006538
jmp 0x30015526
push dword [0x30077218]
mov edi, dword [sym.imp.KERNEL32.dll_lstrlenW]
call edi
lea eax, [eax + eax + 2]
push eax
push 0x40
call dword [sym.imp.KERNEL32.dll_LocalAlloc]
cmp eax, esi
mov dword [ebp - 0x64], eax
jne 0x3001541a
mov ebx, 0x8007000e
jmp 0x30015a15
push dword [0x30077218]
call edi
inc eax
push eax
push dword [ebp - 0x64]
push dword [0x30077218]
call fcn.30013962
test eax, eax
je 0x30015445
call fcn.300138fa
mov ebx, 0xffffff35
jmp 0x30015a15
call fcn.3001255f
mov ebx, eax
cmp ebx, esi
je 0x30015462
push 0x300064f8
call fcn.3000fe20
push 3
pop ebx
jmp 0x30015a15
call fcn.30017f72
cmp dword [0x3007718c], esi
jne 0x30015a1d
call fcn.30010b68
cmp dword [0x30077208], esi
je 0x30015497
push 0x300064b8
call fcn.3000fe20
push dword [ebp - 0x64]
call fcn.30012a37
jmp 0x30015919
lea eax, [ebp - 0x80]
push eax
call fcn.3001992a
mov ebx, eax
cmp ebx, esi
je 0x300154ad
push 0x30006494
jmp 0x30015526
cmp dword [ebp - 0x80], esi
je 0x300154f7
cmp dword [0x30077204], esi
je 0x300154d9
push 0x30006448
call fcn.3000fe20
push dword [ebp - 0x64]
call fcn.3001a89e
mov ebx, eax
push ebx
call fcn.30010b3a
jmp 0x30015a15
push 0x300063f8
call fcn.3000fe20
push 1
call fcn.30019d12
mov ebx, eax
cmp ebx, esi
je 0x300154f7
push 0x300063d8
jmp 0x30015526
mov edi, 0x30056258
push edi
call fcn.3001467a
mov ebx, eax
cmp ebx, esi
je 0x3001550f
push 0x300063b8
jmp 0x30015526
push dword [0x30077218]
push edi
call fcn.300148de
mov ebx, eax
cmp ebx, esi
je 0x30015531
push 0x30006390
call fcn.3000fdf9
pop ecx
jmp 0x30015a15
push esi
call fcn.3000fcd6
lea eax, [ebp - 0x68]
push eax
lea eax, [ebp - 0x78]
push eax
lea eax, [ebp - 0x70]
push eax
push esi
call fcn.300136f4
test eax, eax
jne 0x3001557b
push dword [ebp - 0x68]
lea eax, [ebp - 0x60]
push dword [ebp - 0x78]
push 0x800
push eax
call fcn.3001336d
cmp word [ebp - 0x60], si
je 0x30015571
lea eax, [ebp - 0x60]
push eax
push esi
call fcn.3000d0d8
mov ebx, 0xffffff37
jmp 0x30015a15
lea eax, [ebp - 0x64]
push eax
call fcn.300144e0
test eax, eax
jne 0x3001559c
push 0x30006350
call fcn.3000fe20
mov ebx, 0xffffff34
jmp 0x30015a15
call fcn.300127a4
cmp eax, esi
jge 0x300155ba
push eax
push 0x30001400
call fcn.3000fdf9
push 0x30006338
jmp 0x3001566b
call fcn.30017c23
cmp dword [0x30034110], esi
mov ebx, eax
mov dword [ebp + 0xfac], ebx
jne 0x300155d7
cmp dword [0x30076f34], esi
je 0x30015648
cmp dword [0x300771d0], esi
je 0x300155e6
mov eax, 0x30006268
jmp 0x30015630
cmp dword [0x30077180], esi
je 0x300155f5
mov eax, 0x300061b8
jmp 0x30015630
cmp dword [0x300771d4], esi
je 0x30015604
mov eax, 0x30006100
jmp 0x30015630
call fcn.3001073f
test eax, eax
jne 0x30015614
mov eax, 0x30006080
jmp 0x30015630
cmp dword [0x30076f30], esi
je 0x30015623
mov eax, 0x30005fc0
jmp 0x30015630
cmp dword [0x30077148], esi
je 0x3001563e
mov eax, 0x30005f70
push eax
mov dword [0x30034110], esi
call fcn.3000fe20
jmp 0x30015648
mov dword [0x30034110], 1
lea eax, [ebp - 0x6c]
push eax
push 0x728
push esi
call fcn.3001eccf
cmp eax, esi
jge 0x30015678
push eax
push 0x30001400
call fcn.3000fdf9
push 0x30005f40
call fcn.3000fdf9
add esp, 0xc
jmp 0x30015a15
cmp dword [0x30034110], esi
je 0x3001575d
push 0x30005f0c
mov dword [ebp - 0x68], esi
call fcn.3000fe20
call fcn.30018539
push dword [ebp - 0x6c]
push dword [0x3007bd20]
call fcn.30018fa5
cmp eax, esi
jne 0x300156d7
cmp dword [0x30077198], esi
jne 0x300156fb
cmp dword [0x30077190], esi
jne 0x300156fb
mov eax, dword [ebp - 0x6c]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x18]
test eax, eax
push esi
push esi
push 6
je 0x300156d3
push 0x74
push esi
call fcn.3000d700
jmp 0x300156fb
push 0x78
jmp 0x300156cb
cmp eax, 0x80004004
jne 0x300156ea
push 0x30005ed0
call fcn.3000fe20
jmp 0x300156fb
cmp eax, esi
jge 0x300156fb
push eax
push 0x30005e78
call fcn.3000ff32
pop ecx
pop ecx
mov eax, dword [ebp - 0x6c]
mov ecx, dword [eax]
lea edx, [ebp - 0x68]
push edx
push 0x30004ec0
push eax
call dword [ecx + 0x14]
test eax, eax
jl 0x30015725
mov eax, dword [ebp - 0x68]
cmp eax, esi
je 0x30015725
cmp word [eax + 0x104], si
jne 0x30015a15
mov eax, dword [ebp - 0x6c]
mov ecx, dword [eax]
lea edx, [ebp - 0x68]
push edx
push 0x30005e64
push eax
call dword [ecx + 0x14]
test eax, eax
jl 0x3001575d
mov eax, dword [ebp - 0x68]
cmp eax, esi
je 0x3001575d
add eax, 0x104
cmp word [eax], si
je 0x3001575d
push esi
push 0x30076cf0
push eax
push 0x30005e58
call fcn.30011653
call fcn.300128b8
push 0x30056678
push esi
push 0x30002c80
push 0x30002b0c
mov dword [0x30077188], eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
test eax, eax
je 0x300157bc
cmp dword [0x30077188], esi
je 0x300157bc
push esi
push 0x54
push esi
call fcn.3000d300
cmp eax, 7
jne 0x300157ab
push 0x30005e08
call fcn.3000fe20
mov ebx, 0x642
jmp 0x30015a15
cmp dword [0x30077188], esi
je 0x300157bc
push 1
push 1
call fcn.3001ccc9
cmp dword [0x3007717c], esi
jne 0x300157cc
cmp dword [0x30077184], esi
je 0x30015800
cmp dword [0x300771d0], esi
jne 0x30015800
call fcn.3001cbdf
test eax, eax
je 0x30015800
call fcn.30012272
cmp eax, 0x642
mov edi, 0xfffffecd
je 0x300158f1
cmp eax, edi
je 0x300158f1
mov dword [ebp + 0xfac], esi
cmp dword [0x300771e0], esi
je 0x30015902
call fcn.3001c5e5
cmp dword [0x30077184], esi
je 0x3001584f
lea eax, [ebp - 0x64]
push eax
push dword [ebp - 0x70]
call fcn.30011bef
mov ebx, eax
mov eax, dword [0x30034108]
cmp eax, 0xffffffff
mov dword [ebp + 0xfac], ebx
je 0x30015843
push 0x1388
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
cmp ebx, 0xffffff31
je 0x30015a15
cmp dword [0x30077180], esi
jne 0x30015920
cmp dword [0x300771d4], esi
jne 0x30015920
cmp dword [0x30077188], esi
jne 0x30015920
call fcn.3001c2fa
test eax, eax
je 0x30015920
call fcn.3001c462
mov ebx, eax
cmp ebx, 0x80070522
jne 0x30015896
mov dword [ebp - 0x7c], 1
cmp ebx, esi
jne 0x300158d2
push 0x30005dd0
mov edi, 0x104
push edi
push str.REINSTALLALL
call fcn.3000cd1d
push 0x30005db0
push edi
push str.REINSTALLMODEvomu
call fcn.3000cd1d
push esi
push esi
mov dword [0x30077188], 1
call fcn.3001ccc9
cmp ebx, esi
jge 0x30015920
push ebx
push 0x30001400
call fcn.3000fdf9
push 0x30005d68
call fcn.3000fdf9
add esp, 0xc
jmp 0x30015a0f
push 0x30005cf8
call fcn.3000fe20
mov ebx, edi
jmp 0x30015a15
cmp dword [0x300771dc], esi
je 0x30015811
push dword [0x30077218]
call fcn.300119b7
mov ebx, eax
jmp 0x30015a15
call fcn.30016c17
test eax, eax
jl 0x30015946
cmp dword [0x30076f28], esi
jne 0x30015946
call fcn.300109a0
test eax, eax
je 0x30015946
cmp dword [0x3007bc44], esi
jne 0x300159cd
lea ecx, [ebp - 0x74]
call fcn.3000cc94
push 6
lea ecx, [ebp - 0x74]
call fcn.3000cd95
cmp eax, esi
mov dword [ebp + 0xfac], eax
jle 0x3001596e
and eax, 0xffff
or eax, 0x80070000
cmp eax, esi
jge 0x30015992
push eax
push 0x30001400
call fcn.3000fdf9
push 0x30005ce0
call fcn.3000fdf9
add esp, 0xc
lea ecx, [ebp - 0x74]
call fcn.3000cc9e
jmp 0x30015a0f
push dword [0x30076cf4]
lea eax, [ebp - 0x74]
push eax
mov edi, 0x30002cbc
push edi
call fcn.3001185c
push dword [ebp - 0x74]
call dword [sym.imp.KERNEL32.dll_lstrlenW]
test eax, eax
je 0x300159c5
push esi
push 0x30076cf4
push 0x3000446c
push edi
call fcn.30011653
lea ecx, [ebp - 0x74]
call fcn.3000cc9e
push dword [ebp - 0x64]
call fcn.3001501e
cmp eax, esi
mov dword [ebp + 0xfac], eax
je 0x300159ec
push 0x30005cbc
call fcn.3000fdf9
pop ecx
jmp 0x30015a0f
push dword [ebp - 0x64]
call fcn.3001a89e
cmp eax, 0xfffffe0a
mov dword [ebp + 0xfac], eax
jne 0x30015a09
xor eax, eax
mov dword [ebp + 0xfac], eax
push eax
call fcn.30010b3a
mov ebx, dword [ebp + 0xfac]
cmp dword [0x3007718c], esi
je 0x30015a22
call fcn.300138fa
cmp dword [ebp - 0x7c], esi
je 0x30015a2f
push 0x73
push esi
call fcn.3000d12f
push 0x30076cf0
call fcn.300138b9
call fcn.300138ef
push dword [0x30034118]
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
cmp dword [ebp - 0x64], esi
je 0x30015a58
push dword [ebp - 0x64]
call dword [sym.imp.KERNEL32.dll_LocalFree]
push dword [ebp - 0x6c]
push dword [0x30077218]
push ebx
call fcn.30012ee5
mov ecx, dword [ebp + 0xfa0]
pop edi
pop esi
pop ebx
call fcn.3001f57d
add ebp, 0xfa4
leave
ret 0x10