Function at 0x100aa875
Capabilities:
Contain obfuscated stackstrings
Get common file path

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x674
mov eax, dword [0x100e03e0]
xor eax, ebp
mov dword [ebp - 4], eax
mov word [ebp - 0x248], 0x77
mov word [ebp - 0x246], 0x64
mov word [ebp - 0x244], 0x74
mov word [ebp - 0x242], 0x68
mov word [ebp - 0x240], 0x65
mov word [ebp - 0x23e], 0x6c
mov word [ebp - 0x23c], 0x70
mov word [ebp - 0x23a], 0x65
mov word [ebp - 0x238], 0x72
mov word [ebp - 0x236], 0x2e
mov word [ebp - 0x234], 0x64
mov word [ebp - 0x232], 0x6c
mov word [ebp - 0x230], 0x6c
and word [ebp - 0x22e], 0
mov word [ebp - 0x22c], 0x69
mov word [ebp - 0x22a], 0x4e
mov word [ebp - 0x228], 0x65
mov word [ebp - 0x226], 0x74
mov word [ebp - 0x224], 0x53
mov word [ebp - 0x222], 0x61
mov word [ebp - 0x220], 0x66
mov word [ebp - 0x21e], 0x65
mov word [ebp - 0x21c], 0x2e
mov word [ebp - 0x21a], 0x64
mov word [ebp - 0x218], 0x6c
mov word [ebp - 0x216], 0x6c
and word [ebp - 0x214], 0
lea eax, [ebp - 0x248]
push eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
test eax, eax
jne 0x100aa9a3
lea eax, [ebp - 0x22c]
push eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
test eax, eax
jne 0x100aa9a3
xor eax, eax
inc eax
jmp 0x100aacfe
and word [ebp - 0x668], 0
push 0x206
push 0
lea eax, [ebp - 0x666]
push eax
call fcn.10070f00
add esp, 0xc
and word [ebp - 0x210], 0
push 0x206
push 0
lea eax, [ebp - 0x20e]
push eax
call fcn.10070f00
add esp, 0xc
push 0x104
lea eax, [ebp - 0x668]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
and dword [ebp - 0x460], 0
push 0x214
push 0
lea eax, [ebp - 0x45c]
push eax
call fcn.10070f00
add esp, 0xc
lea eax, [ebp - 0x460]
push eax
push 0x100c8adc
lea eax, [ebp - 0x668]
push eax
lea eax, [ebp - 0x210]
push eax
call dword [sym.imp.SHLWAPI.dll_PathCombineW]
push eax
call fcn.100aa6c7
pop ecx
pop ecx
test eax, eax
je 0x100aab9d
push 0x100c8af0
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov dword [ebp - 0x66c], eax
lea eax, [ebp - 0x460]
push eax
call fcn.100aa475
pop ecx
test eax, eax
je 0x100aab90
push 4
push 0
push str.NtCreateFile
push dword [ebp - 0x66c]
lea eax, [ebp - 0x460]
push eax
call fcn.100aa71b
add esp, 0x14
push 4
push 0
push str.NtOpenFile
push dword [ebp - 0x66c]
lea eax, [ebp - 0x460]
push eax
call fcn.100aa71b
add esp, 0x14
push 4
push 0
push str.NtOpenKey
push dword [ebp - 0x66c]
lea eax, [ebp - 0x460]
push eax
call fcn.100aa71b
add esp, 0x14
push 4
push 0
push str.NtOpenKeyEx
push dword [ebp - 0x66c]
lea eax, [ebp - 0x460]
push eax
call fcn.100aa71b
add esp, 0x14
push 4
push 0
push str.NtQueryAttributesFile
push dword [ebp - 0x66c]
lea eax, [ebp - 0x460]
push eax
call fcn.100aa71b
add esp, 0x14
push 4
push 0
push str.ZwCreateFile
push dword [ebp - 0x66c]
lea eax, [ebp - 0x460]
push eax
call fcn.100aa71b
add esp, 0x14
push 4
push 0
push str.ZwOpenFile
push dword [ebp - 0x66c]
lea eax, [ebp - 0x460]
push eax
call fcn.100aa71b
add esp, 0x14
push 4
push 0
push str.ZwOpenKey
push dword [ebp - 0x66c]
lea eax, [ebp - 0x460]
push eax
call fcn.100aa71b
add esp, 0x14
push 4
push 0
push str.ZwOpenKeyEx
push dword [ebp - 0x66c]
lea eax, [ebp - 0x460]
push eax
call fcn.100aa71b
add esp, 0x14
push 4
push 0
push str.ZwQueryAttributesFile
push dword [ebp - 0x66c]
lea eax, [ebp - 0x460]
push eax
call fcn.100aa71b
add esp, 0x14
lea eax, [ebp - 0x460]
push eax
call fcn.100aa5ea
pop ecx
push 0x208
push 0
lea eax, [ebp - 0x210]
push eax
call fcn.10070f00
add esp, 0xc
lea eax, [ebp - 0x460]
push eax
push 0x100c8b9c
lea eax, [ebp - 0x668]
push eax
lea eax, [ebp - 0x210]
push eax
call dword [sym.imp.SHLWAPI.dll_PathCombineW]
push eax
call fcn.100aa6c7
pop ecx
pop ecx
test eax, eax
je 0x100aac6c
push 0x100c8bb8
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov dword [ebp - 0x670], eax
lea eax, [ebp - 0x460]
push eax
call fcn.100aa475
pop ecx
test eax, eax
je 0x100aac5f
push 4
push 0
push 0x100c8bd4
push dword [ebp - 0x670]
lea eax, [ebp - 0x460]
push eax
call fcn.100aa71b
add esp, 0x14
push 4
push 0
push str.CreateProcessInternalW
push dword [ebp - 0x670]
lea eax, [ebp - 0x460]
push eax
call fcn.100aa71b
add esp, 0x14
push 4
push 2
push 0x100c8bfc
push dword [ebp - 0x670]
lea eax, [ebp - 0x460]
push eax
call fcn.100aa71b
add esp, 0x14
lea eax, [ebp - 0x460]
push eax
call fcn.100aa5ea
pop ecx
push 0x208
push 0
lea eax, [ebp - 0x210]
push eax
call fcn.10070f00
add esp, 0xc
lea eax, [ebp - 0x460]
push eax
push 0x100c8c10
lea eax, [ebp - 0x668]
push eax
lea eax, [ebp - 0x210]
push eax
call dword [sym.imp.SHLWAPI.dll_PathCombineW]
push eax
call fcn.100aa6c7
pop ecx
pop ecx
test eax, eax
je 0x100aacfb
push str.AdvApi32.dll
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov dword [ebp - 0x674], eax
lea eax, [ebp - 0x460]
push eax
call fcn.100aa475
pop ecx
test eax, eax
je 0x100aacee
push 4
push 0
push 0x100c8c48
push dword [ebp - 0x674]
lea eax, [ebp - 0x460]
push eax
call fcn.100aa71b
add esp, 0x14
lea eax, [ebp - 0x460]
push eax
call fcn.100aa5ea
pop ecx
xor eax, eax
inc eax
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1006e261
leave
ret