Function at 0x419c86
Capabilities:
Get common file path

Disassembly:
push 0x2ec
mov eax, 0x44492f
call fcn.0042bcc0
xor ebx, ebx
xor eax, eax
mov dword [ebp - 0x2c8], ebx
push 0x206
mov word [ebp - 0x218], ax
lea eax, [ebp - 0x216]
push ebx
push eax
call fcn.0042b470
add esp, 0xc
lea eax, [ebp - 0x218]
push eax
push ebx
push ebx
push 0x1c
push ebx
call dword [sym.imp.SHELL32.dll_SHGetFolderPathW]
cmp dword [0x45cf54], 8
mov edi, 0x45cf40
mov ecx, edi
mov eax, 0x45cf70
cmovae ecx, dword [0x45cf40]
cmp dword [0x45cf84], 8
push ecx
cmovae eax, dword [0x45cf70]
push eax
lea eax, [ebp - 0x218]
push eax
push str._s_s_s
push 0x104
push eax
call fcn.00428f98
add esp, 0x18
lea eax, [ebp - 0x218]
lea ecx, [ebp - 0x260]
push eax
call fcn.00402874
lea ecx, [ebp - 0x260]
mov dword [ebp - 4], ebx
call fcn.00419ffd
mov esi, 0x44d0e4
push esi
call fcn.0040126a
pop ecx
push eax
push esi
lea ecx, [ebp - 0x260]
call fcn.00402e83
push 0xffffffffffffffff
push ebx
push edi
lea ecx, [ebp - 0x260]
call fcn.00402ddd
cmp dword [ebp - 0x24c], 8
lea eax, [ebp - 0x260]
push 0x452ac8
cmovae eax, dword [ebp - 0x260]
push eax
lea eax, [ebp - 0x2c4]
mov dword [ebp - 0x2c4], ebx
push eax
call fcn.00428e89
add esp, 0xc
cmp dword [ebp - 0x2c4], ebx
je 0x419fe8
push str._uuid_:__uuid_____chl_:__chl_____switch_:__switch__
lea ecx, [ebp - 0x230]
call fcn.0040276c
push str._uuid_
lea ecx, [ebp - 0x290]
mov byte [ebp - 4], 1
call fcn.0040276c
push 2
pop ebx
push str._chl_
lea ecx, [ebp - 0x2a8]
mov byte [ebp - 4], bl
call fcn.0040276c
push str._switch_
lea ecx, [ebp - 0x278]
mov byte [ebp - 4], 3
call fcn.0040276c
mov byte [ebp - 4], 4
call fcn.004160e4
mov edi, dword [ebp - 0x280]
lea ecx, [ebp - 0x290]
cmp dword [ebp - 0x27c], 0x10
mov esi, eax
push edi
cmovae ecx, dword [ebp - 0x290]
push 0
push ecx
lea ecx, [ebp - 0x230]
call fcn.00402ca2
push 0xffffffffffffffff
push 0
push esi
push edi
push eax
lea ecx, [ebp - 0x230]
call fcn.00403a70
lea eax, [ebp - 0x2c0]
push eax
push ecx
call fcn.0040b725
pop ecx
mov ecx, eax
call fcn.0040b6ee
mov byte [ebp - 4], 5
cmp dword [ebp - 0x2b0], 0
jne 0x419e65
push str.100001_01
lea ecx, [ebp - 0x2f8]
call fcn.0040276c
mov edi, eax
xor ebx, ebx
mov byte [ebp - 4], 6
inc ebx
jmp 0x419e80
lea eax, [ebp - 0x2c0]
push eax
lea ecx, [ebp - 0x2e0]
call fcn.00402746
mov edi, eax
mov dword [ebp - 4], 7
mov esi, dword [ebp - 0x298]
lea eax, [ebp - 0x2a8]
cmp dword [ebp - 0x294], 0x10
lea ecx, [ebp - 0x230]
push esi
cmovae eax, dword [ebp - 0x2a8]
push 0
push eax
mov dword [ebp - 0x2c8], ebx
call fcn.00402ca2
push 0xffffffffffffffff
push 0
push edi
push esi
push eax
lea ecx, [ebp - 0x230]
call fcn.00403a70
test bl, 2
je 0x419ed8
push 0
push 1
lea ecx, [ebp - 0x2e0]
and ebx, 0xfffffffd
call fcn.00402d99
mov dword [ebp - 4], 5
test bl, 1
je 0x419ef6
xor ebx, ebx
lea ecx, [ebp - 0x2f8]
push ebx
push 1
call fcn.00402d99
jmp 0x419ef8
xor ebx, ebx
call fcn.004160e4
mov edi, dword [ebp - 0x268]
lea ecx, [ebp - 0x278]
cmp dword [ebp - 0x264], 0x10
mov esi, eax
push edi
cmovae ecx, dword [ebp - 0x278]
push ebx
push ecx
lea ecx, [ebp - 0x230]
call fcn.00402ca2
push 0xffffffffffffffff
push ebx
lea ecx, [esi + 0x30]
push ecx
push edi
push eax
lea ecx, [ebp - 0x230]
call fcn.00403a70
mov dword [ebp - 0x234], 0xf
mov dword [ebp - 0x238], ebx
mov byte [ebp - 0x248], bl
lea edx, [ebp - 0x248]
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x230]
call fcn.00405871
cmp dword [ebp - 0x234], 0x10
lea eax, [ebp - 0x248]
push dword [ebp - 0x2c4]
cmovae eax, dword [ebp - 0x248]
push eax
call fcn.00429073
push dword [ebp - 0x2c4]
call fcn.00429c1c
add esp, 0xc
lea ecx, [ebp - 0x248]
push ebx
push 1
call fcn.00402d99
push ebx
push 1
lea ecx, [ebp - 0x2c0]
call fcn.00402d99
push ebx
push 1
lea ecx, [ebp - 0x278]
call fcn.00402d99
push ebx
push 1
lea ecx, [ebp - 0x2a8]
call fcn.00402d99
push ebx
push 1
lea ecx, [ebp - 0x290]
call fcn.00402d99
push ebx
push 1
lea ecx, [ebp - 0x230]
call fcn.00402d99
push ebx
push 1
lea ecx, [ebp - 0x260]
call fcn.00403476
call fcn.0042bc6f
ret