Function at 0x1000871b
Capabilities:
Contain obfuscated stackstrings
Get common file path
Read .ini file

Disassembly:
push 0x15c
mov eax, 0x1003643f
call fcn.10035531
mov esi, 0x104
lea eax, [ebp - 0x118]
push esi
xor ebx, ebx
push ebx
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea eax, [ebp - 0x118]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryA]
lea eax, [ebp - 0x118]
push eax
lea ecx, [ebp - 0x158]
call fcn.10002845
lea ecx, [ebp - 0x158]
mov dword [ebp - 4], ebx
call fcn.10008fe8
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x158]
xor eax, eax
push ebx
inc eax
push eax
call fcn.100026f1
mov cl, 0x49
mov dword [ebp - 0x14c], 0x3d390649
mov dword [ebp - 0x148], 0x67272620
mov eax, ebx
mov dword [ebp - 0x144], 0x202700
xor byte [ebp + eax - 0x14b], cl
inc eax
cmp eax, 0xa
jae 0x100087bb
mov cl, byte [ebp - 0x14c]
jmp 0x100087a6
lea eax, [ebp - 0x14b]
mov byte [ebp - 0x141], bl
push eax
mov edx, 0x100463c8
lea ecx, [ebp - 0x130]
call fcn.100090f0
cmp dword [ebp - 0x11c], 0x10
lea edx, [ebp - 0x130]
pop ecx
cmovae edx, dword [ebp - 0x130]
mov cl, 0x67
mov dword [ebp - 0x13c], 0x333f2367
mov eax, ebx
mov dword [ebp - 0x138], 0x2171e
xor byte [ebp + eax - 0x13b], cl
inc eax
cmp eax, 6
jae 0x1000881a
mov cl, byte [ebp - 0x13c]
jmp 0x10008805
xor eax, eax
mov byte [ebp - 0x135], bl
inc eax
mov dword [ebp - 0x148], 0x2c203c78
mov byte [ebp - 0x144], al
mov cl, 0x78
mov word [ebp - 0x143], 0x1d08
mov eax, ebx
mov byte [ebp - 0x141], bl
xor byte [ebp + eax - 0x147], cl
inc eax
cmp eax, 6
jae 0x1000885b
mov cl, byte [ebp - 0x148]
jmp 0x10008846
mov esi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
lea eax, [ebp - 0x13b]
push edx
push ebx
push eax
lea eax, [ebp - 0x147]
mov byte [ebp - 0x141], bl
push eax
call esi
xor ecx, ecx
mov dword [ebp - 0x14c], 0x3a380053
test eax, eax
mov dword [ebp - 0x148], 0x21123f3f
lea edx, [ebp - 0x130]
mov word [ebp - 0x144], 0x3236
cmovs eax, ecx
mov byte [ebp - 0x142], bl
inc ecx
cmp eax, ecx
cmovg eax, ecx
cmp dword [ebp - 0x11c], 0x10
mov dword [0x1004b394], eax
mov cl, 0x53
cmovae edx, dword [ebp - 0x130]
mov eax, ebx
xor byte [ebp + eax - 0x14b], cl
inc eax
cmp eax, 9
jae 0x100088db
mov cl, byte [ebp - 0x14c]
jmp 0x100088c6
push 4
mov byte [ebp - 0x142], bl
mov cl, 0x1b
mov dword [ebp - 0x138], 0x6872561b
mov eax, ebx
mov word [ebp - 0x134], 0x78
pop edi
xor byte [ebp + eax - 0x137], cl
inc eax
cmp eax, edi
jae 0x1000890f
mov cl, byte [ebp - 0x138]
jmp 0x100088fb
push edx
push ebx
lea eax, [ebp - 0x14b]
mov byte [ebp - 0x133], bl
push eax
lea eax, [ebp - 0x137]
push eax
call esi
xor ecx, ecx
mov dword [ebp - 0x150], 0x747f5d1a
test eax, eax
mov dword [ebp - 0x14c], 0x734c7f73
lea edx, [ebp - 0x130]
mov dword [ebp - 0x148], 0x76787369
cmovs eax, ecx
mov word [ebp - 0x144], 0x7f
inc ecx
cmp eax, ecx
cmovg eax, ecx
cmp dword [ebp - 0x11c], 0x10
mov dword [0x1004b398], eax
mov cl, 0x1a
cmovae edx, dword [ebp - 0x130]
mov eax, ebx
xor byte [ebp + eax - 0x14f], cl
inc eax
cmp eax, 0xc
jae 0x1000898d
mov cl, byte [ebp - 0x150]
jmp 0x10008978
push 0x43
mov byte [ebp - 0x143], bl
mov cl, 0x20
pop ebx
mov dword [ebp - 0x138], 0x53496d20
xor eax, eax
mov byte [ebp - 0x134], bl
mov byte [ebp - 0x133], 0
xor byte [ebp + eax - 0x137], cl
inc eax
cmp eax, edi
jae 0x100089c5
mov cl, byte [ebp - 0x138]
jmp 0x100089b1
xor eax, eax
mov byte [ebp - 0x133], 0
push edx
inc eax
push eax
lea eax, [ebp - 0x14f]
push eax
lea eax, [ebp - 0x137]
push eax
call esi
xor ecx, ecx
mov dword [ebp - 0x14c], 0x7d764113
test eax, eax
mov dword [ebp - 0x148], 0x50617677
lea edx, [ebp - 0x130]
mov dword [ebp - 0x144], 0x766372
cmovs eax, ecx
inc ecx
cmp eax, ecx
cmovg eax, ecx
cmp dword [ebp - 0x11c], 0x10
mov dword [0x1004b39c], eax
mov cl, 0x13
cmovae edx, dword [ebp - 0x130]
xor eax, eax
xor byte [ebp + eax - 0x14b], cl
inc eax
cmp eax, 0xa
jae 0x10008a3e
mov cl, byte [ebp - 0x14c]
jmp 0x10008a29
xor ecx, ecx
mov byte [ebp - 0x138], bl
mov byte [ebp - 0x141], cl
mov eax, ecx
mov dword [ebp - 0x137], 0x20302a0e
mov byte [ebp - 0x133], cl
xor byte [ebp + eax - 0x137], bl
inc eax
cmp eax, edi
jae 0x10008a72
mov bl, byte [ebp - 0x138]
jmp 0x10008a5e
push edx
xor ebx, ebx
mov byte [ebp - 0x133], cl
inc ebx
lea eax, [ebp - 0x14b]
push ebx
push eax
lea eax, [ebp - 0x137]
push eax
call esi
xor ecx, ecx
mov dword [ebp - 0x150], 0x3b340755
test eax, eax
mov dword [ebp - 0x14c], 0x323b3c3e
push 0x30
cmovs eax, ecx
mov word [ebp - 0x148], 0x3310
cmp eax, ebx
mov byte [ebp - 0x146], 0x33
lea edx, [ebp - 0x130]
mov word [ebp - 0x144], 0x2136
cmovg eax, ebx
mov byte [ebp - 0x142], 0
cmp dword [ebp - 0x11c], 0x10
mov cl, 0x55
pop ebx
cmovae edx, dword [ebp - 0x130]
mov dword [0x1004b3a4], eax
xor eax, eax
mov byte [ebp - 0x145], bl
xor byte [ebp + eax - 0x14f], cl
inc eax
cmp eax, 0xd
jae 0x10008b08
mov cl, byte [ebp - 0x150]
jmp 0x10008af3
mov byte [ebp - 0x142], 0
mov cl, 0x46
mov dword [ebp - 0x138], 0x352f0b46
xor eax, eax
mov word [ebp - 0x134], 0x25
xor byte [ebp + eax - 0x137], cl
inc eax
cmp eax, edi
jae 0x10008b3a
mov cl, byte [ebp - 0x138]
jmp 0x10008b26
xor eax, eax
mov byte [ebp - 0x133], 0
push edx
inc eax
push eax
lea eax, [ebp - 0x14f]
push eax
lea eax, [ebp - 0x137]
push eax
call esi
xor ecx, ecx
mov byte [ebp - 0x14c], bl
test eax, eax
mov dword [ebp - 0x14b], 0x555d5177
lea edx, [ebp - 0x130]
mov dword [ebp - 0x147], 0x555d5964
cmovs eax, ecx
mov byte [ebp - 0x143], 0
inc ecx
cmp eax, ecx
cmovg eax, ecx
cmp dword [ebp - 0x11c], 0x10
mov dword [0x1004b3a8], eax
cmovae edx, dword [ebp - 0x130]
xor eax, eax
xor byte [ebp + eax - 0x14b], bl
inc eax
cmp eax, 8
jae 0x10008bb4
mov bl, byte [ebp - 0x14c]
jmp 0x10008b9f
push 0x2e
xor eax, eax
mov dword [ebp - 0x138], 0x3e24004d
pop ebx
mov byte [ebp - 0x143], al
mov cl, 0x4d
mov byte [ebp - 0x134], bl
mov byte [ebp - 0x133], al
xor byte [ebp + eax - 0x137], cl
inc eax
cmp eax, edi
jae 0x10008beb
mov cl, byte [ebp - 0x138]
jmp 0x10008bd7
push edx
push 0
lea eax, [ebp - 0x14b]
mov byte [ebp - 0x133], 0
push eax
lea eax, [ebp - 0x137]
push eax
call esi
xor ecx, ecx
mov dword [ebp - 0x14f], 0x646c6042
test eax, eax
mov dword [ebp - 0x14b], 0x60536073
push 0x18
cmovs eax, ecx
mov dword [ebp - 0x147], 0x64666f
pop ecx
cmp eax, ecx
lea edx, [ebp - 0x130]
cmovg eax, ecx
cmp dword [ebp - 0x11c], 0x10
mov dword [0x1004b3a0], eax
cmovae edx, dword [ebp - 0x130]
xor eax, eax
lea ecx, [eax + 1]
mov byte [ebp - 0x150], cl
xor byte [ebp + eax - 0x14f], cl
inc eax
cmp eax, 0xb
jae 0x10008c6b
mov cl, byte [ebp - 0x150]
jmp 0x10008c56
mov byte [ebp - 0x144], 0
mov cl, 0x6e
mov dword [ebp - 0x138], 0x1d07236e
xor eax, eax
mov word [ebp - 0x134], 0xd
xor byte [ebp + eax - 0x137], cl
inc eax
cmp eax, edi
jae 0x10008c9d
mov cl, byte [ebp - 0x138]
jmp 0x10008c89
push edx
push 0
lea eax, [ebp - 0x14f]
mov byte [ebp - 0x133], 0
push eax
lea eax, [ebp - 0x137]
push eax
call esi
xor ecx, ecx
mov byte [ebp - 0x13a], bl
test eax, eax
mov dword [ebp - 0x140], 0x293c0d5d
push 0x14
cmovs eax, ecx
mov word [ebp - 0x13c], 0x3235
pop ecx
cmp eax, ecx
mov dword [ebp - 0x139], 0x2a38340b
lea edx, [ebp - 0x130]
cmovg eax, ecx
cmp dword [ebp - 0x11c], 0x10
mov dword [0x1004b3ac], eax
mov cl, 0x5d
cmovae edx, dword [ebp - 0x130]
xor ebx, ebx
mov byte [ebp - 0x135], bl
mov eax, ebx
xor byte [ebp + eax - 0x13f], cl
inc eax
cmp eax, 0xa
jae 0x10008d23
mov cl, byte [ebp - 0x140]
jmp 0x10008d0e
push 0x1e
pop ecx
mov byte [ebp - 0x135], bl
mov eax, ebx
mov byte [ebp - 0x148], cl
mov dword [ebp - 0x147], 0x7b78785b
mov word [ebp - 0x143], 0x6a7d
mov byte [ebp - 0x141], bl
xor byte [ebp + eax - 0x147], cl
inc eax
cmp eax, 6
jae 0x10008d62
mov cl, byte [ebp - 0x148]
jmp 0x10008d4d
xor eax, eax
mov byte [ebp - 0x141], bl
push edx
inc eax
push eax
lea eax, [ebp - 0x13f]
push eax
lea eax, [ebp - 0x147]
push eax
call esi
xor ecx, ecx
mov dword [ebp - 0x138], 0x68695d1c
test eax, eax
mov word [ebp - 0x134], 0x73
lea edx, [ebp - 0x130]
cmovs eax, ecx
cmp eax, 1
cmovg eax, ecx
cmp dword [ebp - 0x11c], 0x10
mov dword [0x1004b3b0], eax
mov cl, 0x1c
cmovae edx, dword [ebp - 0x130]
mov eax, ebx
xor byte [ebp + eax - 0x137], cl
inc eax
cmp eax, edi
jae 0x10008dce
mov cl, byte [ebp - 0x138]
jmp 0x10008dba
push 0x45
mov byte [ebp - 0x133], bl
mov cl, 0x3d
pop ebx
mov dword [ebp - 0x150], 0x58546d3d
xor eax, eax
mov word [ebp - 0x14c], 0x585e
mov byte [ebp - 0x14a], 0x78
mov byte [ebp - 0x149], bl
mov dword [ebp - 0x148], 0x535c555e
mov word [ebp - 0x144], 0x585a
mov byte [ebp - 0x142], 0
xor byte [ebp + eax - 0x14f], cl
inc eax
cmp eax, 0xd
jae 0x10008e2a
mov cl, byte [ebp - 0x150]
jmp 0x10008e15
push edx
push 0
lea eax, [ebp - 0x137]
mov byte [ebp - 0x142], 0
push eax
lea eax, [ebp - 0x14f]
push eax
call esi
xor ecx, ecx
mov dword [ebp - 0x14c], 0x5b406734
test eax, eax
mov dword [ebp - 0x148], 0x5a7d5f57
lea edx, [ebp - 0x130]
mov word [ebp - 0x144], 0x5a
cmovs eax, ecx
inc ecx
cmp eax, ecx
cmovg eax, ecx
cmp dword [ebp - 0x11c], 0x10
mov dword [0x1004b3b4], eax
mov cl, 0x34
cmovae edx, dword [ebp - 0x130]
xor eax, eax
xor byte [ebp + eax - 0x14b], cl
inc eax
cmp eax, 8
jae 0x10008ea0
mov cl, byte [ebp - 0x14c]
jmp 0x10008e8b
push 0x5c
pop ecx
mov byte [ebp - 0x143], 0
xor eax, eax
mov byte [ebp - 0x140], cl
mov dword [ebp - 0x13f], 0x3f39350c
mov dword [ebp - 0x13b], 0x3f241939
mov dword [ebp - 0x137], 0x3b323d34
mov word [ebp - 0x133], 0x39
xor byte [ebp + eax - 0x13f], cl
inc eax
cmp eax, 0xd
jae 0x10008eee
mov cl, byte [ebp - 0x140]
jmp 0x10008ed9
push edx
push 0
lea eax, [ebp - 0x14b]
mov byte [ebp - 0x132], 0
push eax
lea eax, [ebp - 0x13f]
push eax
call esi
xor ecx, ecx
mov dword [ebp - 0x137], 0x42424b7d
test eax, eax
mov byte [ebp - 0x133], 0
push 0x2e
cmovs eax, ecx
inc ecx
cmp eax, ecx
pop edx
cmovg eax, ecx
mov byte [ebp - 0x138], dl
cmp dword [ebp - 0x11c], 0x10
lea ecx, [ebp - 0x130]
mov dword [0x1004b3b8], eax
cmovae ecx, dword [ebp - 0x130]
xor eax, eax
xor byte [ebp + eax - 0x137], dl
inc eax
cmp eax, edi
jae 0x10008f5e
mov dl, byte [ebp - 0x138]
jmp 0x10008f4a
xor edx, edx
mov byte [ebp - 0x168], bl
mov byte [ebp - 0x133], dl
mov eax, edx
mov dword [ebp - 0x167], 0x26202c15
mov dword [ebp - 0x163], 0x263d0020
mov dword [ebp - 0x15f], 0x222b242d
mov word [ebp - 0x15b], 0x20
xor byte [ebp + eax - 0x167], bl
inc eax
cmp eax, 0xd
jae 0x10008faa
mov bl, byte [ebp - 0x168]
jmp 0x10008f95
push ecx
push edx
lea eax, [ebp - 0x137]
mov byte [ebp - 0x15a], dl
push eax
lea eax, [ebp - 0x167]
push eax
call esi
xor ecx, ecx
test eax, eax
push 0
cmovs eax, ecx
inc ecx
cmp eax, ecx
push ecx
cmovg eax, ecx
lea ecx, [ebp - 0x130]
mov dword [0x1004b3bc], eax
call fcn.100026f1
call fcn.100354db
ret