Function at 0x483350
Capabilities:
Get common file path
Get session user name

Disassembly:
push ebp
mov ebp, esp
push 0xfffffffffffffffe
push 0x512230
push 0x40b390
mov eax, dword fs:[0]
push eax
sub esp, 8
mov eax, 0x1a48
call fcn.004149d0
mov eax, dword [0x517138]
xor dword [ebp - 8], eax
xor eax, ebp
mov dword [ebp - 0x24], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0x10]
mov dword fs:[0], eax
mov dword [ebp - 0x18], esp
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x20], 0
jmp 0x4833a9
mov eax, dword [ebp - 0x20]
add eax, 1
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0x31
jge 0x4833e7
cmp dword [ebp - 0x1c], 0
jge 0x4833bd
mov ecx, dword [ebp - 0x1c]
neg ecx
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
je 0x4833d3
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x220]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4833a0
mov dword [ebp - 0x224], 0
jmp 0x483402
mov eax, dword [ebp - 0x224]
add eax, 1
mov dword [ebp - 0x224], eax
cmp dword [ebp - 0x224], 0x16
jge 0x483419
mov ecx, dword [ebp - 0x1c]
xor ecx, dword [ebp - 0x224]
mov dword [ebp - 0x1c], ecx
jmp 0x4833f3
cmp dword [ebp - 0x1c], 0
jge 0x483427
mov edx, dword [ebp - 0x1c]
neg edx
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x48343f
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov edx, 1
test edx, edx
je 0x483479
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x228], eax
mov eax, dword [ebp - 0x228]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x48346b
jmp 0x483479
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x228]
mov dword [ebp - 0x1c], edx
jmp 0x48343f
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x22c], 0
jmp 0x48349a
mov ecx, dword [ebp - 0x22c]
add ecx, 1
mov dword [ebp - 0x22c], ecx
cmp dword [ebp - 0x22c], 0
jge 0x4834e7
cmp dword [ebp - 0x1c], 0
jge 0x4834b1
mov edx, dword [ebp - 0x1c]
neg edx
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x4834c7
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x230], 0xfa
lea edx, [ebp - 0x230]
push edx
lea eax, [ebp - 0x428]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x48348b
mov dword [ebp - 0x42c], 0
jmp 0x483502
mov ecx, dword [ebp - 0x42c]
add ecx, 1
mov dword [ebp - 0x42c], ecx
cmp dword [ebp - 0x42c], 0
jge 0x483519
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x42c]
mov dword [ebp - 0x1c], edx
jmp 0x4834f3
cmp dword [ebp - 0x1c], 0
jge 0x483527
mov eax, dword [ebp - 0x1c]
neg eax
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x48353f
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x430], 0
jmp 0x48355a
mov edx, dword [ebp - 0x430]
add edx, 1
mov dword [ebp - 0x430], edx
cmp dword [ebp - 0x430], 8
jge 0x4835a7
cmp dword [ebp - 0x1c], 0
jge 0x483571
mov eax, dword [ebp - 0x1c]
neg eax
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x483587
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x434], 0xfa
lea edx, [ebp - 0x434]
push edx
lea eax, [ebp - 0x630]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x48354b
mov dword [ebp - 0x634], 0
jmp 0x4835c2
mov ecx, dword [ebp - 0x634]
add ecx, 1
mov dword [ebp - 0x634], ecx
cmp dword [ebp - 0x634], 3
jge 0x483603
cmp dword [ebp - 0x1c], 0
jge 0x4835d9
mov edx, dword [ebp - 0x1c]
neg edx
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
je 0x4835ef
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x830]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4835b3
mov dword [ebp - 0x834], 0
jmp 0x48361e
mov eax, dword [ebp - 0x834]
add eax, 1
mov dword [ebp - 0x834], eax
cmp dword [ebp - 0x834], 1
jge 0x48366b
cmp dword [ebp - 0x1c], 0
jge 0x483635
mov ecx, dword [ebp - 0x1c]
neg ecx
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x48364b
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x838], 0xfa
lea edx, [ebp - 0x838]
push edx
lea eax, [ebp - 0xa30]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x48360f
mov dword [ebp - 0xa34], 0
jmp 0x483686
mov ecx, dword [ebp - 0xa34]
add ecx, 1
mov dword [ebp - 0xa34], ecx
cmp dword [ebp - 0xa34], 8
jge 0x4836c7
cmp dword [ebp - 0x1c], 0
jge 0x48369d
mov edx, dword [ebp - 0x1c]
neg edx
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
je 0x4836b3
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0xc30]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x483677
mov dword [ebp - 0xc34], 0
jmp 0x4836e2
mov eax, dword [ebp - 0xc34]
add eax, 1
mov dword [ebp - 0xc34], eax
cmp dword [ebp - 0xc34], 3
jge 0x4836f9
mov ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0xc34]
mov dword [ebp - 0x1c], ecx
jmp 0x4836d3
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x48370b
mov edx, dword [ebp - 0x1c]
imul edx, edx, 0xfffffffb
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
je 0x483723
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xc38], 0
jmp 0x48373e
mov edx, dword [ebp - 0xc38]
add edx, 1
mov dword [ebp - 0xc38], edx
cmp dword [ebp - 0xc38], 2
jge 0x48378b
cmp dword [ebp - 0x1c], 0
jge 0x483755
mov eax, dword [ebp - 0x1c]
neg eax
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x48376b
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xc3c], 0xfa
lea edx, [ebp - 0xc3c]
push edx
lea eax, [ebp - 0xe38]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x48372f
mov dword [ebp - 0xe3c], 0
jmp 0x4837a6
mov ecx, dword [ebp - 0xe3c]
add ecx, 1
mov dword [ebp - 0xe3c], ecx
cmp dword [ebp - 0xe3c], 4
jge 0x4837bd
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0xe3c]
mov dword [ebp - 0x1c], edx
jmp 0x483797
cmp dword [ebp - 0x1c], 0
jge 0x4837cb
mov eax, dword [ebp - 0x1c]
neg eax
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x4837e3
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xe40], 0
jmp 0x4837fe
mov edx, dword [ebp - 0xe40]
add edx, 1
mov dword [ebp - 0xe40], edx
cmp dword [ebp - 0xe40], 0
jge 0x48383f
cmp dword [ebp - 0x1c], 0
jge 0x483815
mov eax, dword [ebp - 0x1c]
neg eax
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
je 0x48382b
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1038]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4837ef
mov dword [ebp - 0x103c], 0
jmp 0x48385a
mov eax, dword [ebp - 0x103c]
add eax, 1
mov dword [ebp - 0x103c], eax
cmp dword [ebp - 0x103c], 3
jge 0x4838a7
cmp dword [ebp - 0x1c], 0
jge 0x483871
mov ecx, dword [ebp - 0x1c]
neg ecx
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x483887
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x1040], 0xfa
lea edx, [ebp - 0x1040]
push edx
lea eax, [ebp - 0x1238]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x48384b
mov dword [ebp - 0x123c], 0
jmp 0x4838c2
mov ecx, dword [ebp - 0x123c]
add ecx, 1
mov dword [ebp - 0x123c], ecx
cmp dword [ebp - 0x123c], 4
jge 0x4838d9
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x123c]
mov dword [ebp - 0x1c], edx
jmp 0x4838b3
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4838eb
mov eax, dword [ebp - 0x1c]
imul eax, eax, 0xfffffffb
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
je 0x483903
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1240], 0
jmp 0x48391e
mov edx, dword [ebp - 0x1240]
add edx, 1
mov dword [ebp - 0x1240], edx
cmp dword [ebp - 0x1240], 1
jge 0x48396b
mov eax, dword [ebp - 0x1240]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x48394d
mov eax, dword [ebp - 0x1240]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x48395d
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1240]
mov dword [ebp - 0x1c], edx
jmp 0x483969
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x1240]
mov dword [ebp - 0x1c], eax
jmp 0x48390f
mov dword [ebp - 0x1244], 0
jmp 0x483986
mov ecx, dword [ebp - 0x1244]
add ecx, 1
mov dword [ebp - 0x1244], ecx
cmp dword [ebp - 0x1244], 3
jge 0x4839d3
mov eax, dword [ebp - 0x1244]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4839b5
mov eax, dword [ebp - 0x1244]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4839c5
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1244]
mov dword [ebp - 0x1c], edx
jmp 0x4839d1
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x1244]
mov dword [ebp - 0x1c], eax
jmp 0x483977
mov ecx, 1
test ecx, ecx
je 0x483a0d
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x1248], eax
mov eax, dword [ebp - 0x1248]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4839ff
jmp 0x483a0d
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x1248]
mov dword [ebp - 0x1c], edx
jmp 0x4839d3
mov eax, dword [ebp - 0x1c]
add eax, 1
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 0
mov dword [ebp - 0x124c], 0xffffffff
mov dword [ebp - 0x1250], 0
jmp 0x483a42
mov ecx, dword [ebp - 0x1250]
add ecx, 1
mov dword [ebp - 0x1250], ecx
cmp dword [ebp - 0x1250], 1
jge 0x483a74
mov eax, dword [ebp - 0x1250]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x483a69
mov edx, dword [ebp - 0x124c]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x483a33
mov dword [ebp - 4], 0xfffffffe
jmp 0x483a94
mov dword [ebp - 0x1254], 0
jmp 0x483aaf
mov edx, dword [ebp - 0x1254]
add edx, 1
mov dword [ebp - 0x1254], edx
cmp dword [ebp - 0x1254], 4
jge 0x483ac6
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x1254]
mov dword [ebp - 0x1c], eax
jmp 0x483aa0
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x483ad8
mov ecx, dword [ebp - 0x1c]
imul ecx, ecx, 0xfffffffb
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
je 0x483af0
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1258], 0
jmp 0x483b0b
mov edx, dword [ebp - 0x1258]
add edx, 1
mov dword [ebp - 0x1258], edx
cmp dword [ebp - 0x1258], 4
jge 0x483b58
cmp dword [ebp - 0x1c], 0
jge 0x483b22
mov eax, dword [ebp - 0x1c]
neg eax
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x483b38
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x125c], 0xfa
lea edx, [ebp - 0x125c]
push edx
lea eax, [ebp - 0x1458]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x483afc
mov dword [ebp - 0x145c], 0
jmp 0x483b73
mov ecx, dword [ebp - 0x145c]
add ecx, 1
mov dword [ebp - 0x145c], ecx
cmp dword [ebp - 0x145c], 4
jge 0x483bc0
cmp dword [ebp - 0x1c], 0
jge 0x483b8a
mov edx, dword [ebp - 0x1c]
neg edx
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x483ba0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x1460], 0xfa
lea edx, [ebp - 0x1460]
push edx
lea eax, [ebp - 0x1658]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x483b64
mov dword [ebp - 0x165c], 0
jmp 0x483bdb
mov ecx, dword [ebp - 0x165c]
add ecx, 1
mov dword [ebp - 0x165c], ecx
cmp dword [ebp - 0x165c], 0
jge 0x483c28
mov eax, dword [ebp - 0x165c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x483c0a
mov eax, dword [ebp - 0x165c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x483c1a
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x165c]
mov dword [ebp - 0x1c], edx
jmp 0x483c26
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x165c]
mov dword [ebp - 0x1c], eax
jmp 0x483bcc
mov dword [ebp - 0x1660], 0
jmp 0x483c43
mov ecx, dword [ebp - 0x1660]
add ecx, 1
mov dword [ebp - 0x1660], ecx
cmp dword [ebp - 0x1660], 4
jge 0x483c5a
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x1660]
mov dword [ebp - 0x1c], edx
jmp 0x483c34
cmp dword [ebp - 0x1c], 0
jge 0x483c68
mov eax, dword [ebp - 0x1c]
neg eax
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x483c80
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1664], 0
jmp 0x483c9b
mov edx, dword [ebp - 0x1664]
add edx, 1
mov dword [ebp - 0x1664], edx
cmp dword [ebp - 0x1664], 1
jge 0x483ce8
cmp dword [ebp - 0x1c], 0
jge 0x483cb2
mov eax, dword [ebp - 0x1c]
neg eax
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x483cc8
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x1668], 0xfa
lea edx, [ebp - 0x1668]
push edx
lea eax, [ebp - 0x1860]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x483c8c
mov ecx, 1
test ecx, ecx
je 0x483d22
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x1864], eax
mov eax, dword [ebp - 0x1864]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x483d14
jmp 0x483d22
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x1864]
mov dword [ebp - 0x1c], edx
jmp 0x483ce8
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1868], 0
jmp 0x483d43
mov ecx, dword [ebp - 0x1868]
add ecx, 1
mov dword [ebp - 0x1868], ecx
cmp dword [ebp - 0x1868], 0
jge 0x483d84
cmp dword [ebp - 0x1c], 0
jge 0x483d5a
mov edx, dword [ebp - 0x1c]
neg edx
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
je 0x483d70
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1a60]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x483d34
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x10]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x24]
xor ecx, ebp
call fcn.004079a5
mov esp, ebp
pop ebp
ret