Function at 0x65f4a0
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x1e0
cmp dword [0x7ec490], 1
push ebx
push ebp
push esi
push edi
je 0x65fa1d
xor eax, eax
mov ecx, 0x5a
lea edi, [esp + 0x80]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
push 0x16a
lea eax, [esp + 0x84]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryA]
test eax, eax
je 0x65fa1d
lea eax, [esp + 0x80]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x65f4f4
sub eax, edx
cmp eax, 1
jl 0x65fa1d
cmp eax, 0x104
jg 0x65fa1d
mov byte [esp + eax + 0x80], 0x5c
inc eax
mov edx, 0x16a
sub edx, eax
lea eax, [esp + eax + 0x80]
mov ecx, eax
mov dword [esp + 0x7c], edx
mov dword [esp + 0x78], eax
call fcn.0065af90
lea ecx, [esp + 0x80]
push ecx
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov edi, eax
test edi, edi
je 0x65f5b1
mov edx, 0x66
lea ecx, [esp + 0x10]
call fcn.0065b310
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
lea edx, [esp + 0x10]
push edx
push edi
call esi
mov ebx, eax
test ebx, ebx
je 0x65f5b1
mov edx, 0x66
lea ecx, [esp + 0x10]
mov dword [0x7ec3ec], ebx
call fcn.0065b440
lea eax, [esp + 0x10]
push eax
push edi
call esi
mov esi, eax
test esi, esi
je 0x65f5b1
mov edx, 0x66
lea ecx, [esp + 0x10]
mov dword [0x7ec3f0], esi
call fcn.0065b5a0
lea ecx, [esp + 0x10]
push ecx
push edi
call esi
mov ebp, eax
test ebp, ebp
jne 0x65f5be
mov eax, 0x363
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, 0x66
lea ecx, [esp + 0x10]
mov dword [0x7ec3f4], ebp
call fcn.0065b6b0
lea edx, [esp + 0x10]
push edx
push edi
call esi
mov edx, 0x66
lea ecx, [esp + 0x10]
mov dword [0x7ec3f8], eax
call fcn.0065b7e0
lea eax, [esp + 0x10]
push eax
push edi
call esi
mov edx, 0x66
lea ecx, [esp + 0x10]
mov dword [0x7ec3fc], eax
call fcn.0065b910
lea ecx, [esp + 0x10]
push ecx
push edi
call esi
mov edx, 0x66
lea ecx, [esp + 0x10]
mov dword [0x7ec400], eax
call fcn.0065bae0
lea edx, [esp + 0x10]
push edx
push edi
call esi
mov edx, 0x66
lea ecx, [esp + 0x10]
mov dword [0x7ec404], eax
call fcn.0065bca0
lea eax, [esp + 0x10]
push eax
push edi
call esi
mov edx, 0x66
lea ecx, [esp + 0x10]
mov dword [0x7ec408], eax
call fcn.0065bdd0
lea ecx, [esp + 0x10]
push ecx
push edi
call esi
mov edx, 0x66
lea ecx, [esp + 0x10]
mov dword [0x7ec40c], eax
call fcn.0065bf20
lea edx, [esp + 0x10]
push edx
push edi
call esi
mov edx, 0x66
lea ecx, [esp + 0x10]
mov dword [0x7ec410], eax
call fcn.0065c0e0
lea eax, [esp + 0x10]
push eax
push edi
call esi
mov edx, 0x66
lea ecx, [esp + 0x10]
mov dword [0x7ec414], eax
call fcn.0065c2c0
lea ecx, [esp + 0x10]
push ecx
push edi
call esi
mov edx, 0x66
lea ecx, [esp + 0x10]
mov dword [0x7ec418], eax
call fcn.0065c4a0
lea edx, [esp + 0x10]
push edx
push edi
call esi
mov dword [0x7ec41c], eax
mov edx, 0x66
lea ecx, [esp + 0x10]
call fcn.0065c670
lea eax, [esp + 0x10]
push eax
push edi
call esi
mov edx, 0x66
lea ecx, [esp + 0x10]
mov dword [0x7ec420], eax
call fcn.0065c7c0
lea ecx, [esp + 0x10]
push ecx
push edi
call esi
mov edx, 0x66
lea ecx, [esp + 0x10]
mov dword [0x7ec424], eax
call fcn.0065c9c0
lea edx, [esp + 0x10]
push edx
push edi
call esi
mov edx, 0x66
lea ecx, [esp + 0x10]
mov dword [0x7ec428], eax
call fcn.0065cb20
lea eax, [esp + 0x10]
push eax
push edi
call esi
mov edx, 0x66
lea ecx, [esp + 0x10]
mov dword [0x7ec42c], eax
call fcn.0065cc70
lea ecx, [esp + 0x10]
push ecx
push edi
call esi
mov edx, 0x66
lea ecx, [esp + 0x10]
mov dword [0x7ec430], eax
call fcn.0065cd60
lea edx, [esp + 0x10]
push edx
push edi
call esi
mov edx, 0x66
lea ecx, [esp + 0x10]
mov dword [0x7ec434], eax
call fcn.0065cf80
lea eax, [esp + 0x10]
push eax
push edi
call esi
mov edx, 0x66
lea ecx, [esp + 0x10]
mov dword [0x7ec438], eax
call fcn.0065d160
lea ecx, [esp + 0x10]
push ecx
push edi
call esi
mov edx, 0x66
lea ecx, [esp + 0x10]
mov dword [0x7ec43c], eax
call fcn.0065d2f0
lea edx, [esp + 0x10]
push edx
push edi
call esi
mov edx, 0x66
lea ecx, [esp + 0x10]
mov dword [0x7ec440], eax
call fcn.0065d500
lea eax, [esp + 0x10]
push eax
push edi
call esi
mov dword [0x7ec444], eax
mov edx, 0x66
lea ecx, [esp + 0x10]
call fcn.0065d6e0
lea ecx, [esp + 0x10]
push ecx
push edi
call esi
mov edx, dword [esp + 0x7c]
mov ecx, dword [esp + 0x78]
mov dword [0x7ec448], eax
call fcn.0065b0c0
lea edx, [esp + 0x80]
push edx
call ebx
mov edi, eax
test edi, edi
jne 0x65f825
mov eax, 0x364
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, 0x66
lea ecx, [esp + 0x10]
call fcn.0065d8f0
lea eax, [esp + 0x10]
push eax
push edi
call esi
mov edx, 0x66
lea ecx, [esp + 0x10]
mov dword [0x7ec44c], eax
call fcn.0065da40
lea ecx, [esp + 0x10]
push ecx
push edi
call esi
mov edx, 0x66
lea ecx, [esp + 0x10]
mov dword [0x7ec450], eax
call fcn.0065dbc0
lea edx, [esp + 0x10]
push edx
push edi
call esi
mov edx, 0x66
lea ecx, [esp + 0x10]
mov dword [0x7ec454], eax
call fcn.0065dce0
lea eax, [esp + 0x10]
push eax
push edi
call esi
mov edx, 0x66
lea ecx, [esp + 0x10]
mov dword [0x7ec458], eax
call fcn.0065de30
lea ecx, [esp + 0x10]
push ecx
push edi
call esi
mov edx, 0x66
lea ecx, [esp + 0x10]
mov dword [0x7ec45c], eax
call fcn.0065df80
lea edx, [esp + 0x10]
push edx
push edi
call esi
mov edx, 0x66
lea ecx, [esp + 0x10]
mov dword [0x7ec460], eax
call fcn.0065e0d0
lea eax, [esp + 0x10]
push eax
push edi
call esi
mov edx, 0x66
lea ecx, [esp + 0x10]
mov dword [0x7ec464], eax
call fcn.0065e260
lea ecx, [esp + 0x10]
push ecx
push edi
call esi
mov edx, 0x66
lea ecx, [esp + 0x10]
mov dword [0x7ec468], eax
call fcn.0065ea40
lea edx, [esp + 0x10]
push edx
push edi
call esi
mov edx, 0x66
lea ecx, [esp + 0x10]
mov dword [0x7ec478], eax
call fcn.0065ec20
lea eax, [esp + 0x10]
push eax
push edi
call esi
mov dword [0x7ec47c], eax
mov edx, 0x66
lea ecx, [esp + 0x10]
call fcn.0065edf0
lea ecx, [esp + 0x10]
push ecx
push edi
call esi
mov dword [0x7ec480], eax
call ebp
test eax, eax
js 0x65f9a5
mov edx, 0x66
lea ecx, [esp + 0x10]
call fcn.0065e3c0
lea edx, [esp + 0x10]
push edx
push edi
call esi
mov edx, 0x66
lea ecx, [esp + 0x10]
mov dword [0x7ec46c], eax
call fcn.0065e560
lea eax, [esp + 0x10]
push eax
push edi
call esi
mov edx, 0x66
lea ecx, [esp + 0x10]
mov dword [0x7ec470], eax
call fcn.0065e7f0
lea ecx, [esp + 0x10]
push ecx
push edi
call esi
mov dword [0x7ec474], eax
mov edx, dword [esp + 0x7c]
mov ecx, dword [esp + 0x78]
call fcn.0065b1f0
lea edx, [esp + 0x80]
push edx
call ebx
mov edi, eax
test edi, edi
je 0x65fa13
mov edx, 0x66
lea ecx, [esp + 0x10]
call fcn.0065ef50
lea eax, [esp + 0x10]
push eax
push edi
call esi
mov edx, 0x66
lea ecx, [esp + 0x10]
mov dword [0x7ec484], eax
call fcn.0065f170
lea ecx, [esp + 0x10]
push ecx
push edi
call esi
mov edx, 0x66
lea ecx, [esp + 0x10]
mov dword [0x7ec488], eax
call fcn.0065f340
lea edx, [esp + 0x10]
push edx
push edi
call esi
mov dword [0x7ec48c], eax
mov dword [0x7ec490], 1
pop edi
xor eax, eax
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret