Function at 0x430a50
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4fabbb
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x688
push ebx
push esi
push edi
lea eax, [ebp - 0x114]
mov dword [ebp - 0x10], esp
xor ebx, ebx
push eax
mov dword [ebp - 4], ebx
call fcn.004ab6e0
add esp, 4
lea ecx, [ebp - 0x4c]
push ecx
call fcn.00401350
add esp, 4
lea edx, [ebp - 0x694]
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x28], ebx
push 0x80
push edx
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryA]
lea eax, [ebp - 0x2c]
push eax
push 0xdb3190
call fcn.004bd170
add esp, 8
lea ecx, [ebp - 0x94]
push 1
call fcn.004f0653
mov ecx, dword [0x4fe4e8]
mov byte [ebp - 4], 1
push ecx
push 8
push str.c:endpcacheprocess_log.txt
lea ecx, [ebp - 0x94]
call fcn.004f0727
xor esi, esi
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x14], esi
cmp esi, dword [ebp - 0x2c]
jge 0x430e4e
lea esi, [esi + esi*2]
push str.NULL
shl esi, 7
mov dword [ebp - 0x1c], esi
lea edi, [esi + 0xdb3210]
push edi
call fcn.004f61e0
add esp, 8
test eax, eax
jne 0x430bcd
lea ebx, [esi + 0xdb3190]
lea edx, [ebp - 0x4c]
push ebx
push edx
mov byte [ebp - 0x394], al
call fcn.004fa6c0
add esp, 4
push eax
lea eax, [ebp - 0x114]
push eax
call fcn.004fa6c0
add esp, 4
lea ecx, [ebp - 0x394]
push eax
push 0x519b84
push ecx
call fcn.004f175f
mov eax, dword [0xe56db0]
add esp, 0x14
test eax, eax
jne 0x430bb8
mov eax, dword [0xe56dbc]
mov ecx, dword [ebp + 0x1b0]
test eax, eax
mov eax, dword [ebp + 0x1b4]
lea edx, [ebp - 0x394]
push edx
push eax
push ecx
jne 0x430b9b
sub esp, 0x1a8
mov ecx, 0x6a
lea esi, [ebp + 8]
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404170
jmp 0x430bb2
sub esp, 0x1a8
mov ecx, 0x6a
lea esi, [ebp + 8]
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404560
add esp, 0x1b4
push ebx
call fcn.004b3be0
add esp, 4
lea edx, [ebp - 0x394]
push edx
jmp 0x430e1e
push edi
call fcn.004fa6c0
push str.NavLogon
push eax
mov dword [ebp - 0x20], eax
call fcn.004f2d80
add esp, 0xc
cmp eax, ebx
jne 0x430e3e
mov eax, dword [ebp - 0x20]
mov byte [ebp - 0x394], 0
push eax
call fcn.004679c0
add esp, 4
mov ebx, eax
push 0x5147b4
push ebx
call fcn.004f2d80
push 0x5144fc
push ebx
mov esi, eax
call fcn.004f2d80
push str.NORMAL
push ebx
mov edi, eax
call fcn.004f2d80
push 0x516efc
push ebx
mov dword [ebp - 0x24], eax
call fcn.004f2d80
add esp, 0x20
test esi, esi
jne 0x430dd8
test edi, edi
jne 0x430dd8
mov ecx, dword [ebp - 0x24]
test ecx, ecx
jne 0x430dd8
test eax, eax
jne 0x430dd8
push ebx
call fcn.004fa6c0
mov ecx, dword [ebp - 0x20]
add esp, 4
lea edx, [ebp - 0x4c]
push eax
push ecx
push edx
call fcn.004fa6c0
add esp, 4
push eax
lea eax, [ebp - 0x114]
push eax
call fcn.004fa6c0
add esp, 4
lea ecx, [ebp - 0x394]
push eax
push 0x519b30
push ecx
call fcn.004f175f
mov eax, dword [0xe56db0]
add esp, 0x18
test eax, eax
jne 0x430cf6
mov eax, dword [0xe56dbc]
mov ecx, dword [ebp + 0x1b0]
test eax, eax
mov eax, dword [ebp + 0x1b4]
lea edx, [ebp - 0x394]
push edx
push eax
push ecx
jne 0x430cd9
sub esp, 0x1a8
mov ecx, 0x6a
lea esi, [ebp + 8]
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404170
jmp 0x430cf0
sub esp, 0x1a8
mov ecx, 0x6a
lea esi, [ebp + 8]
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404560
add esp, 0x1b4
mov edx, dword [ebp - 0x1c]
lea eax, [edx + 0xdb3190]
push eax
call fcn.004b3be0
add esp, 4
push 0x5147ac
push ebx
call fcn.004f2d80
add esp, 8
test eax, eax
je 0x430d32
mov ecx, dword [0xe56d24]
mov eax, dword [0xe56d28]
inc ecx
inc eax
mov dword [0xe56d24], ecx
mov dword [0xe56d28], eax
lea ecx, [ebp - 0x394]
push ecx
lea ecx, [ebp - 0x88]
call fcn.004f0087
push 0xa
mov ecx, eax
call fcn.004eff40
push 0x402150
mov ecx, eax
call fcn.004016a0
mov esi, dword [ebp - 0x20]
push 0x5147e0
push esi
mov dword [ebp - 0x18], 1
call fcn.004f2d80
add esp, 8
test eax, eax
je 0x430d8e
push esi
call fcn.004abbf0
mov eax, dword [ebp - 0x14]
add esp, 4
inc eax
xor ebx, ebx
mov dword [ebp - 0x14], eax
mov esi, eax
jmp 0x430aef
lea edx, [ebp - 0x514]
push 0x80
push edx
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryA]
lea eax, [ebp - 0x514]
push esi
push eax
lea ecx, [ebp - 0x614]
push str._s_s
push ecx
call fcn.004f175f
lea edx, [ebp - 0x614]
push edx
call fcn.004abbf0
mov eax, dword [ebp - 0x14]
add esp, 0x14
inc eax
xor ebx, ebx
mov dword [ebp - 0x14], eax
mov esi, eax
jmp 0x430aef
push ebx
call fcn.004fa6c0
add esp, 4
lea ecx, [ebp - 0x4c]
push eax
mov eax, dword [ebp - 0x20]
push eax
push ecx
call fcn.004fa6c0
add esp, 4
lea edx, [ebp - 0x114]
push eax
push edx
call fcn.004fa6c0
add esp, 4
push eax
lea eax, [ebp - 0x394]
push 0x519af8
push eax
call fcn.004f175f
add esp, 0x18
lea ecx, [ebp - 0x394]
push ecx
lea ecx, [ebp - 0x88]
call fcn.004f0087
push 0xa
mov ecx, eax
call fcn.004eff40
push 0x402150
mov ecx, eax
call fcn.004016a0
mov eax, dword [ebp - 0x14]
inc eax
xor ebx, ebx
mov dword [ebp - 0x14], eax
mov esi, eax
jmp 0x430aef
cmp dword [ebp - 0x18], ebx
jne 0x430ef1
lea edx, [ebp - 0x4c]
push 0x519ac0
push edx
mov byte [ebp - 0x394], 0
call fcn.004fa6c0
add esp, 4
push eax
lea eax, [ebp - 0x114]
push eax
call fcn.004fa6c0
add esp, 4
lea ecx, [ebp - 0x394]
push eax
push 0x5190b4
push ecx
call fcn.004f175f
mov eax, dword [0xe56db0]
add esp, 0x14
cmp eax, ebx
jne 0x430ef1
mov eax, dword [0xe56dbc]
mov ecx, dword [ebp + 0x1b0]
cmp eax, ebx
mov eax, dword [ebp + 0x1b4]
lea edx, [ebp - 0x394]
push edx
push eax
push ecx
jne 0x430ed4
sub esp, 0x1a8
mov ecx, 0x6a
lea esi, [ebp + 8]
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404170
jmp 0x430eeb
sub esp, 0x1a8
mov ecx, 0x6a
lea esi, [ebp + 8]
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404560
add esp, 0x1b4
lea edx, [ebp - 0x28]
mov dword [ebp - 0x18], ebx
push edx
push 0xdb3190
call fcn.004bda10
add esp, 8
mov dword [ebp - 0x14], ebx
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x28]
cmp eax, ecx
jge 0x4313fb
lea ebx, [eax + eax*2]
push str.NULL
shl ebx, 7
mov dword [ebp - 0x1c], ebx
mov byte [ebp - 0x494], 0
lea ebx, [ebx + 0xdb3210]
push ebx
call fcn.004f61e0
add esp, 8
test eax, eax
je 0x4313ed
mov edi, ebx
or ecx, 0xffffffff
xor eax, eax
lea edx, [ebp - 0x494]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push ebx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.004fa6c0
push str.:endp
push eax
mov dword [ebp - 0x24], eax
call fcn.004f2d80
add esp, 0xc
test eax, eax
jne 0x4313ed
lea ecx, [ebp - 0x494]
push str.NULL
push ecx
call fcn.004f61e0
add esp, 8
test eax, eax
jne 0x431066
lea edx, [ebp - 0x494]
mov byte [ebp - 0x394], al
push edx
call fcn.004fa6c0
add esp, 4
push eax
lea eax, [ebp - 0x4c]
push eax
call fcn.004fa6c0
add esp, 4
lea ecx, [ebp - 0x114]
push eax
push ecx
call fcn.004fa6c0
add esp, 4
lea edx, [ebp - 0x394]
push eax
push 0x519a64
push edx
call fcn.004f175f
mov eax, dword [0xe56db0]
add esp, 0x14
test eax, eax
jne 0x431046
mov eax, dword [0xe56dbc]
mov ecx, dword [ebp + 0x1b4]
mov edx, dword [ebp + 0x1b0]
test eax, eax
lea eax, [ebp - 0x394]
push eax
push ecx
push edx
jne 0x431029
sub esp, 0x1a8
mov ecx, 0x6a
lea esi, [ebp + 8]
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404170
jmp 0x431040
sub esp, 0x1a8
mov ecx, 0x6a
lea esi, [ebp + 8]
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404560
add esp, 0x1b4
mov eax, dword [ebp - 0x1c]
lea ecx, [eax + 0xdb3190]
push ecx
call fcn.004b3be0
mov eax, dword [ebp - 0x14]
add esp, 4
inc eax
xor ebx, ebx
mov dword [ebp - 0x14], eax
jmp 0x430f08
lea edx, [ebp - 0x494]
push edx
call fcn.004abec0
add esp, 4
cmp eax, 1
je 0x4311b2
lea eax, [ebp - 0x494]
mov byte [ebp - 0x394], 0
push eax
call fcn.004fa6c0
add esp, 4
lea ecx, [ebp - 0x4c]
push eax
push ecx
call fcn.004fa6c0
add esp, 4
lea edx, [ebp - 0x114]
push eax
push edx
call fcn.004fa6c0
add esp, 4
push eax
lea eax, [ebp - 0x394]
push 0x5199f8
push eax
call fcn.004f175f
mov eax, dword [0xe56db0]
add esp, 0x14
test eax, eax
jne 0x431123
mov eax, dword [0xe56dbc]
mov edx, dword [ebp + 0x1b4]
lea ecx, [ebp - 0x394]
test eax, eax
mov eax, dword [ebp + 0x1b0]
push ecx
push edx
push eax
jne 0x431106
sub esp, 0x1a8
mov ecx, 0x6a
lea esi, [ebp + 8]
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404170
jmp 0x43111d
sub esp, 0x1a8
mov ecx, 0x6a
lea esi, [ebp + 8]
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404560
add esp, 0x1b4
mov ecx, dword [ebp - 0x1c]
lea edx, [ecx + 0xdb3190]
push edx
call fcn.004b3be0
add esp, 4
lea eax, [ebp - 0x394]
lea ecx, [ebp - 0x88]
push eax
call fcn.004f0087
push 0xa
mov ecx, eax
call fcn.004eff40
push 0x402150
mov ecx, eax
call fcn.004016a0
lea ecx, [ebp - 0x494]
push ecx
call fcn.004bd090
add esp, 4
lea edx, [ebp - 0x494]
push edx
call fcn.004bd100
add esp, 4
lea eax, [ebp - 0x494]
push eax
call fcn.004abec0
add esp, 4
cmp eax, 1
jne 0x43119d
lea ecx, [ebp - 0x494]
push ecx
call fcn.0040e3f0
add esp, 4
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x18], 1
inc eax
xor ebx, ebx
mov dword [ebp - 0x14], eax
jmp 0x430f08
lea edx, [ebp - 0x494]
push edx
call fcn.0040e3f0
add esp, 4
mov ebx, eax
push 0x5147b4
push ebx
call fcn.004f2d80
push 0x5144fc
push ebx
mov esi, eax
call fcn.004f2d80
add esp, 0x10
test esi, esi
jne 0x43137d
test eax, eax
jne 0x43137d
push ebx
mov byte [ebp - 0x394], al
call fcn.004fa6c0
add esp, 4
lea ecx, [ebp - 0x4c]
push eax
lea eax, [ebp - 0x494]
push eax
push ecx
call fcn.004fa6c0
add esp, 4
lea edx, [ebp - 0x114]
push eax
push edx
call fcn.004fa6c0
add esp, 4
push eax
lea eax, [ebp - 0x394]
push 0x5199b0
push eax
call fcn.004f175f
mov eax, dword [0xe56db0]
add esp, 0x18
test eax, eax
jne 0x431293
mov eax, dword [0xe56dbc]
mov edx, dword [ebp + 0x1b4]
lea ecx, [ebp - 0x394]
test eax, eax
mov eax, dword [ebp + 0x1b0]
push ecx
push edx
push eax
jne 0x431276
sub esp, 0x1a8
mov ecx, 0x6a
lea esi, [ebp + 8]
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404170
jmp 0x43128d
sub esp, 0x1a8
mov ecx, 0x6a
lea esi, [ebp + 8]
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404560
add esp, 0x1b4
mov ecx, dword [ebp - 0x1c]
lea edx, [ecx + 0xdb3190]
push edx
call fcn.004b3be0
add esp, 4
push 0x5147ac
push ebx
call fcn.004f2d80
add esp, 8
test eax, eax
je 0x4312cf
mov ecx, dword [0xe56d24]
mov eax, dword [0xe56d28]
inc ecx
inc eax
mov dword [0xe56d24], ecx
mov dword [0xe56d28], eax
lea eax, [ebp - 0x394]
lea ecx, [ebp - 0x88]
push eax
call fcn.004f0087
push 0xa
mov ecx, eax
call fcn.004eff40
push 0x402150
mov ecx, eax
call fcn.004016a0
mov ecx, dword [ebp - 0x24]
push 0x5147e0
push ecx
mov dword [ebp - 0x18], 1
call fcn.004f2d80
add esp, 8
test eax, eax
je 0x43132f
lea edx, [ebp - 0x494]
push edx
call fcn.004abbf0
mov eax, dword [ebp - 0x14]
add esp, 4
inc eax
xor ebx, ebx
mov dword [ebp - 0x14], eax
jmp 0x430f08
lea eax, [ebp - 0x514]
push 0x80
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryA]
lea ecx, [ebp - 0x494]
lea edx, [ebp - 0x514]
push ecx
push edx
lea eax, [ebp - 0x614]
push str._s_s
push eax
call fcn.004f175f
lea ecx, [ebp - 0x614]
push ecx
call fcn.004abbf0
mov eax, dword [ebp - 0x14]
add esp, 0x14
inc eax
xor ebx, ebx
mov dword [ebp - 0x14], eax
jmp 0x430f08
push ebx
mov byte [ebp - 0x394], 0
call fcn.004fa6c0
add esp, 4
lea edx, [ebp - 0x494]
push eax
lea eax, [ebp - 0x4c]
push edx
push eax
call fcn.004fa6c0
add esp, 4
lea ecx, [ebp - 0x114]
push eax
push ecx
call fcn.004fa6c0
add esp, 4
lea edx, [ebp - 0x394]
push eax
push 0x519978
push edx
call fcn.004f175f
add esp, 0x18
lea eax, [ebp - 0x394]
lea ecx, [ebp - 0x88]
push eax
call fcn.004f0087
push 0xa
mov ecx, eax
call fcn.004eff40
push 0x402150
mov ecx, eax
call fcn.004016a0
mov eax, dword [ebp - 0x14]
inc eax
xor ebx, ebx
mov dword [ebp - 0x14], eax
jmp 0x430f08
cmp dword [ebp - 0x18], ebx
jne 0x4314c5
lea ecx, [ebp - 0x4c]
push 0x519940
push ecx
mov byte [ebp - 0x394], 0
call fcn.004fa6c0
add esp, 4
lea edx, [ebp - 0x114]
push eax
push edx
call fcn.004fa6c0
add esp, 4
push eax
lea eax, [ebp - 0x394]
push 0x5190b4
push eax
call fcn.004f175f
mov eax, dword [0xe56db0]
add esp, 0x14
cmp eax, ebx
jne 0x43149e
mov eax, dword [0xe56dbc]
mov edx, dword [ebp + 0x1b4]
lea ecx, [ebp - 0x394]
cmp eax, ebx
mov eax, dword [ebp + 0x1b0]
push ecx
push edx
push eax
jne 0x431481
sub esp, 0x1a8
mov ecx, 0x6a
lea esi, [ebp + 8]
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404170
jmp 0x431498
sub esp, 0x1a8
mov ecx, 0x6a
lea esi, [ebp + 8]
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404560
add esp, 0x1b4
lea ecx, [ebp - 0x394]
push ecx
lea ecx, [ebp - 0x88]
call fcn.004f0087
push 0xa
mov ecx, eax
call fcn.004eff40
push 0x402150
mov ecx, eax
call fcn.004016a0
lea ecx, [ebp - 0x94]
call fcn.004f076e
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0
call fcn.004f0714
lea ecx, [ebp - 0x80]
call fcn.004f05fb
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov eax, 1
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret