Function at 0x418e10
Capabilities:
Get common file path
Get startup folder

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x46b7c8
mov eax, dword fs:[0]
push eax
sub esp, 0x6a4
mov eax, dword [0x48a1d0]
xor eax, ebp
mov dword [ebp - 0x10], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x264], ecx
xor eax, eax
mov word [ebp - 0x218], ax
push 0x206
push 0
lea ecx, [ebp - 0x216]
push ecx
call fcn.004369a0
add esp, 0xc
push 0
push 0x24
lea edx, [ebp - 0x218]
push edx
push 0
call dword [sym.imp.SHELL32.dll_SHGetSpecialFolderPathW]
push 0x476a08
lea ecx, [ebp - 0x248]
call fcn.00406660
mov dword [ebp - 4], 0
push 0x476a0c
lea ecx, [ebp - 0x260]
call fcn.00406660
mov byte [ebp - 4], 1
lea eax, [ebp - 0x260]
push eax
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x3c8], esp
push 0x476a10
call fcn.00406660
mov dword [ebp - 0x2c4], eax
mov ecx, dword [ebp - 0x2c4]
mov dword [ebp - 0x350], ecx
mov byte [ebp - 4], 2
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x358], esp
push 0x476a24
call fcn.00406660
mov dword [ebp - 0x360], eax
push SysStringLen
mov byte [ebp - 4], 1
call fcn.00412d10
add esp, 0x38
push 0x476a48
lea ecx, [ebp - 0x230]
call fcn.00406660
mov byte [ebp - 4], 3
push 0x476a4c
lea edx, [ebp - 0x260]
push edx
lea eax, [ebp - 0x3f8]
push eax
call fcn.004188c0
add esp, 0xc
mov dword [ebp - 0x318], eax
mov ecx, dword [ebp - 0x318]
push ecx
lea ecx, [ebp - 0x230]
call fcn.0040d260
lea ecx, [ebp - 0x3f8]
call fcn.00406810
push str.JuiLib_u.dll
lea edx, [ebp - 0x218]
push edx
lea ecx, [ebp - 0x428]
call fcn.00406660
mov dword [ebp - 0x320], eax
mov eax, dword [ebp - 0x320]
mov dword [ebp - 0x328], eax
mov byte [ebp - 4], 4
mov ecx, dword [ebp - 0x328]
push ecx
lea edx, [ebp - 0x6b0]
push edx
call fcn.00418880
add esp, 0xc
mov dword [ebp - 0x330], eax
mov eax, dword [ebp - 0x330]
push eax
lea ecx, [ebp - 0x248]
call fcn.0040d260
lea ecx, [ebp - 0x6b0]
call fcn.00406810
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x428]
call fcn.00406810
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x36c], esp
lea edx, [ebp - 0x248]
push edx
call fcn.004143b0
mov dword [ebp - 0x324], eax
mov eax, dword [ebp - 0x324]
mov dword [ebp - 0x33c], eax
mov byte [ebp - 4], 5
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x3b0], esp
lea edx, [ebp - 0x230]
push edx
call fcn.004143b0
mov dword [ebp - 0x344], eax
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x264]
call fcn.00418d00
push 0x476a84
lea eax, [ebp - 0x260]
push eax
lea ecx, [ebp - 0x578]
push ecx
call fcn.004188c0
add esp, 0xc
mov dword [ebp - 0x274], eax
mov edx, dword [ebp - 0x274]
push edx
lea ecx, [ebp - 0x230]
call fcn.0040d260
lea ecx, [ebp - 0x578]
call fcn.00406810
push 0x476aa0
lea eax, [ebp - 0x218]
push eax
lea ecx, [ebp - 0x668]
call fcn.00406660
mov dword [ebp - 0x2d4], eax
mov ecx, dword [ebp - 0x2d4]
mov dword [ebp - 0x27c], ecx
mov byte [ebp - 4], 6
mov edx, dword [ebp - 0x27c]
push edx
lea eax, [ebp - 0x458]
push eax
call fcn.00418880
add esp, 0xc
mov dword [ebp - 0x304], eax
mov ecx, dword [ebp - 0x304]
push ecx
lea ecx, [ebp - 0x248]
call fcn.0040d260
lea ecx, [ebp - 0x458]
call fcn.00406810
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x668]
call fcn.00406810
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x3b8], esp
lea edx, [ebp - 0x248]
push edx
call fcn.004143b0
mov dword [ebp - 0x284], eax
mov eax, dword [ebp - 0x284]
mov dword [ebp - 0x34c], eax
mov byte [ebp - 4], 7
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x3c0], esp
lea edx, [ebp - 0x230]
push edx
call fcn.004143b0
mov dword [ebp - 0x354], eax
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x264]
call fcn.00418d00
push 0x476abc
lea eax, [ebp - 0x260]
push eax
lea ecx, [ebp - 0x488]
push ecx
call fcn.004188c0
add esp, 0xc
mov dword [ebp - 0x2dc], eax
mov edx, dword [ebp - 0x2dc]
push edx
lea ecx, [ebp - 0x230]
call fcn.0040d260
lea ecx, [ebp - 0x488]
call fcn.00406810
push 0x476ad8
lea eax, [ebp - 0x218]
push eax
lea ecx, [ebp - 0x4b8]
call fcn.00406660
mov dword [ebp - 0x28c], eax
mov ecx, dword [ebp - 0x28c]
mov dword [ebp - 0x31c], ecx
mov byte [ebp - 4], 8
mov edx, dword [ebp - 0x31c]
push edx
lea eax, [ebp - 0x5a8]
push eax
call fcn.00418880
add esp, 0xc
mov dword [ebp - 0x294], eax
mov ecx, dword [ebp - 0x294]
push ecx
lea ecx, [ebp - 0x248]
call fcn.0040d260
lea ecx, [ebp - 0x5a8]
call fcn.00406810
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x4b8]
call fcn.00406810
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x334], esp
lea edx, [ebp - 0x248]
push edx
call fcn.004143b0
mov dword [ebp - 0x2e4], eax
mov eax, dword [ebp - 0x2e4]
mov dword [ebp - 0x35c], eax
mov byte [ebp - 4], 9
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x3d0], esp
lea edx, [ebp - 0x230]
push edx
call fcn.004143b0
mov dword [ebp - 0x364], eax
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x264]
call fcn.00418d00
push 0x476af4
lea eax, [ebp - 0x260]
push eax
lea ecx, [ebp - 0x638]
push ecx
call fcn.004188c0
add esp, 0xc
mov dword [ebp - 0x29c], eax
mov edx, dword [ebp - 0x29c]
push edx
lea ecx, [ebp - 0x230]
call fcn.0040d260
lea ecx, [ebp - 0x638]
call fcn.00406810
push str.jpcurl_x64.dll
lea eax, [ebp - 0x218]
push eax
lea ecx, [ebp - 0x5d8]
call fcn.00406660
mov dword [ebp - 0x30c], eax
mov ecx, dword [ebp - 0x30c]
mov dword [ebp - 0x2a4], ecx
mov byte [ebp - 4], 0xa
mov edx, dword [ebp - 0x2a4]
push edx
lea eax, [ebp - 0x4e8]
push eax
call fcn.00418880
add esp, 0xc
mov dword [ebp - 0x2ec], eax
mov ecx, dword [ebp - 0x2ec]
push ecx
lea ecx, [ebp - 0x248]
call fcn.0040d260
lea ecx, [ebp - 0x4e8]
call fcn.00406810
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x5d8]
call fcn.00406810
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x3d8], esp
lea edx, [ebp - 0x248]
push edx
call fcn.004143b0
mov dword [ebp - 0x2ac], eax
mov eax, dword [ebp - 0x2ac]
mov dword [ebp - 0x3e0], eax
mov byte [ebp - 4], 0xb
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x3c4], esp
lea edx, [ebp - 0x230]
push edx
call fcn.004143b0
mov dword [ebp - 0x374], eax
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x264]
call fcn.00418d00
push 0x476b34
lea eax, [ebp - 0x260]
push eax
lea ecx, [ebp - 0x518]
push ecx
call fcn.004188c0
add esp, 0xc
mov dword [ebp - 0x32c], eax
mov edx, dword [ebp - 0x32c]
push edx
lea ecx, [ebp - 0x230]
call fcn.0040d260
lea ecx, [ebp - 0x518]
call fcn.00406810
push str.jpcurl.dll
lea eax, [ebp - 0x218]
push eax
lea ecx, [ebp - 0x548]
call fcn.00406660
mov dword [ebp - 0x2b4], eax
mov ecx, dword [ebp - 0x2b4]
mov dword [ebp - 0x2f4], ecx
mov byte [ebp - 4], 0xc
mov edx, dword [ebp - 0x2f4]
push edx
lea eax, [ebp - 0x698]
push eax
call fcn.00418880
add esp, 0xc
mov dword [ebp - 0x2bc], eax
mov ecx, dword [ebp - 0x2bc]
push ecx
lea ecx, [ebp - 0x248]
call fcn.0040d260
lea ecx, [ebp - 0x698]
call fcn.00406810
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x548]
call fcn.00406810
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x3ac], esp
lea edx, [ebp - 0x248]
push edx
call fcn.004143b0
mov dword [ebp - 0x314], eax
mov eax, dword [ebp - 0x314]
mov dword [ebp - 0x37c], eax
mov byte [ebp - 4], 0xd
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x3d4], esp
lea edx, [ebp - 0x230]
push edx
call fcn.004143b0
mov dword [ebp - 0x384], eax
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x264]
call fcn.00418d00
push 0x476b64
lea eax, [ebp - 0x260]
push eax
lea ecx, [ebp - 0x608]
push ecx
call fcn.004188c0
add esp, 0xc
mov dword [ebp - 0x268], eax
mov edx, dword [ebp - 0x268]
push edx
lea ecx, [ebp - 0x230]
call fcn.0040d260
lea ecx, [ebp - 0x608]
call fcn.00406810
push str.Census_x64.dll
lea eax, [ebp - 0x218]
push eax
lea ecx, [ebp - 0x440]
call fcn.00406660
mov dword [ebp - 0x2fc], eax
mov ecx, dword [ebp - 0x2fc]
mov dword [ebp - 0x2cc], ecx
mov byte [ebp - 4], 0xe
mov edx, dword [ebp - 0x2cc]
push edx
lea eax, [ebp - 0x410]
push eax
call fcn.00418880
add esp, 0xc
mov dword [ebp - 0x26c], eax
mov ecx, dword [ebp - 0x26c]
push ecx
lea ecx, [ebp - 0x248]
call fcn.0040d260
lea ecx, [ebp - 0x410]
call fcn.00406810
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x440]
call fcn.00406810
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x3b4], esp
lea edx, [ebp - 0x248]
push edx
call fcn.004143b0
mov dword [ebp - 0x270], eax
mov eax, dword [ebp - 0x270]
mov dword [ebp - 0x38c], eax
mov byte [ebp - 4], 0xf
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x3cc], esp
lea edx, [ebp - 0x230]
push edx
call fcn.004143b0
mov dword [ebp - 0x394], eax
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x264]
call fcn.00418d00
push 0x476ba4
lea eax, [ebp - 0x260]
push eax
lea ecx, [ebp - 0x470]
push ecx
call fcn.004188c0
add esp, 0xc
mov dword [ebp - 0x278], eax
mov edx, dword [ebp - 0x278]
push edx
lea ecx, [ebp - 0x230]
call fcn.0040d260
lea ecx, [ebp - 0x470]
call fcn.00406810
push str.Census.dll
lea eax, [ebp - 0x218]
push eax
lea ecx, [ebp - 0x4d0]
call fcn.00406660
mov dword [ebp - 0x280], eax
mov ecx, dword [ebp - 0x280]
mov dword [ebp - 0x288], ecx
mov byte [ebp - 4], 0x10
mov edx, dword [ebp - 0x288]
push edx
lea eax, [ebp - 0x4a0]
push eax
call fcn.00418880
add esp, 0xc
mov dword [ebp - 0x290], eax
mov ecx, dword [ebp - 0x290]
push ecx
lea ecx, [ebp - 0x248]
call fcn.0040d260
lea ecx, [ebp - 0x4a0]
call fcn.00406810
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x4d0]
call fcn.00406810
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x3bc], esp
lea edx, [ebp - 0x248]
push edx
call fcn.004143b0
mov dword [ebp - 0x298], eax
mov eax, dword [ebp - 0x298]
mov dword [ebp - 0x39c], eax
mov byte [ebp - 4], 0x11
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x3dc], esp
lea edx, [ebp - 0x230]
push edx
call fcn.004143b0
mov dword [ebp - 0x3a4], eax
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x264]
call fcn.00418d00
push 0x476bd4
lea eax, [ebp - 0x260]
push eax
lea ecx, [ebp - 0x500]
push ecx
call fcn.004188c0
add esp, 0xc
mov dword [ebp - 0x2a0], eax
mov edx, dword [ebp - 0x2a0]
push edx
lea ecx, [ebp - 0x230]
call fcn.0040d260
lea ecx, [ebp - 0x500]
call fcn.00406810
push str.pcidx64.dll
lea eax, [ebp - 0x218]
push eax
lea ecx, [ebp - 0x560]
call fcn.00406660
mov dword [ebp - 0x2a8], eax
mov ecx, dword [ebp - 0x2a8]
mov dword [ebp - 0x2b0], ecx
mov byte [ebp - 4], 0x12
mov edx, dword [ebp - 0x2b0]
push edx
lea eax, [ebp - 0x530]
push eax
call fcn.00418880
add esp, 0xc
mov dword [ebp - 0x2b8], eax
mov ecx, dword [ebp - 0x2b8]
push ecx
lea ecx, [ebp - 0x248]
call fcn.0040d260
lea ecx, [ebp - 0x530]
call fcn.00406810
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x560]
call fcn.00406810
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x368], esp
lea edx, [ebp - 0x248]
push edx
call fcn.004143b0
mov dword [ebp - 0x2c0], eax
mov eax, dword [ebp - 0x2c0]
mov dword [ebp - 0x370], eax
mov byte [ebp - 4], 0x13
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x378], esp
lea edx, [ebp - 0x230]
push edx
call fcn.004143b0
mov dword [ebp - 0x380], eax
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x264]
call fcn.00418d00
push 0x476c0c
lea eax, [ebp - 0x260]
push eax
lea ecx, [ebp - 0x590]
push ecx
call fcn.004188c0
add esp, 0xc
mov dword [ebp - 0x2c8], eax
mov edx, dword [ebp - 0x2c8]
push edx
lea ecx, [ebp - 0x230]
call fcn.0040d260
lea ecx, [ebp - 0x590]
call fcn.00406810
push str.pcid.dll
lea eax, [ebp - 0x218]
push eax
lea ecx, [ebp - 0x5f0]
call fcn.00406660
mov dword [ebp - 0x2d0], eax
mov ecx, dword [ebp - 0x2d0]
mov dword [ebp - 0x2d8], ecx
mov byte [ebp - 4], 0x14
mov edx, dword [ebp - 0x2d8]
push edx
lea eax, [ebp - 0x5c0]
push eax
call fcn.00418880
add esp, 0xc
mov dword [ebp - 0x2e0], eax
mov ecx, dword [ebp - 0x2e0]
push ecx
lea ecx, [ebp - 0x248]
call fcn.0040d260
lea ecx, [ebp - 0x5c0]
call fcn.00406810
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x5f0]
call fcn.00406810
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x388], esp
lea edx, [ebp - 0x248]
push edx
call fcn.004143b0
mov dword [ebp - 0x2e8], eax
mov eax, dword [ebp - 0x2e8]
mov dword [ebp - 0x390], eax
mov byte [ebp - 4], 0x15
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x398], esp
lea edx, [ebp - 0x230]
push edx
call fcn.004143b0
mov dword [ebp - 0x3a0], eax
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x264]
call fcn.00418d00
push 0x476c34
lea eax, [ebp - 0x260]
push eax
lea ecx, [ebp - 0x620]
push ecx
call fcn.004188c0
add esp, 0xc
mov dword [ebp - 0x2f0], eax
mov edx, dword [ebp - 0x2f0]
push edx
lea ecx, [ebp - 0x230]
call fcn.0040d260
lea ecx, [ebp - 0x620]
call fcn.00406810
push 0x476c68
lea eax, [ebp - 0x218]
push eax
lea ecx, [ebp - 0x680]
call fcn.00406660
mov dword [ebp - 0x2f8], eax
mov ecx, dword [ebp - 0x2f8]
mov dword [ebp - 0x300], ecx
mov byte [ebp - 4], 0x16
mov edx, dword [ebp - 0x300]
push edx
lea eax, [ebp - 0x650]
push eax
call fcn.00418880
add esp, 0xc
mov dword [ebp - 0x308], eax
mov ecx, dword [ebp - 0x308]
push ecx
lea ecx, [ebp - 0x248]
call fcn.0040d260
lea ecx, [ebp - 0x650]
call fcn.00406810
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x680]
call fcn.00406810
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x3a8], esp
lea edx, [ebp - 0x248]
push edx
call fcn.004143b0
mov dword [ebp - 0x310], eax
mov eax, dword [ebp - 0x310]
mov dword [ebp - 0x338], eax
mov byte [ebp - 4], 0x17
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x340], esp
lea edx, [ebp - 0x230]
push edx
call fcn.004143b0
mov dword [ebp - 0x348], eax
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x264]
call fcn.00418d00
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x230]
call fcn.00406810
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x260]
call fcn.00406810
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x248]
call fcn.00406810
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0043715b
mov esp, ebp
pop ebp
ret