Function at 0x10002f70
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10033db1
mov eax, dword fs:[0]
push eax
sub esp, 0x15c
mov eax, dword [0x101c6014]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp - 0x11c]
mov esi, dword [ebp + 8]
mov dword [ebp - 0x120], eax
mov dword [ebp - 0x120], 0x101c78f8
mov dword [0x101c7908], 0
mov dword [0x101c790c], 0xf
mov byte [0x101c78f8], 0
mov dword [ebp - 4], 0
vmovss xmm0, dword [0x101c0b40]
vmovss xmm1, dword [0x101c0c08]
vmovss dword [0x101c7918], xmm0
vmovups ymm0, ymmword [0x101c0d60]
vmovups ymmword [0x101c7930], ymm0
vmovaps xmm0, xmmword [0x101c0ce0]
vmovss xmm2, dword [0x101c0990]
vmovups xmmword [0x101c795c], xmm0
vmovups ymm0, ymmword [0x101c0da0]
vmovups ymmword [0x101c7978], ymm0
vmovaps xmm0, xmmword [0x101c0ce0]
vmovups xmmword [0x101c7998], xmm0
vmovups ymm0, ymmword [0x101c0dc0]
vmovups ymmword [0x101c79bc], ymm0
vmovss xmm0, dword [0x101c0bf8]
vmovss dword [0x101c79e8], xmm0
vmovaps xmm0, xmmword [0x101c0d10]
vmovups xmmword [0x101c7a10], xmm0
vmovups ymm0, ymmword [0x101c0d80]
vxorps xmm3, xmm3, xmm3
vmovups ymmword [0x101c7a2c], ymm0
vmovaps xmm0, xmmword [0x101c0d00]
vmovups xmmword [0x101c7a4c], xmm0
vmovaps xmm0, xmmword [0x101c0d20]
vmovups xmmword [0x101c7a64], xmm0
vmovaps xmm0, xmmword [0x101c0cd0]
mov byte [0x101c7910], 0
mov word [0x101c7914], 0
mov byte [0x101c7916], 0
vmovss dword [0x101c791c], xmm2
vmovss dword [0x101c7920], xmm3
mov dword [0x101c7924], 0
mov word [0x101c7928], 0
mov word [0x101c792c], 0
mov dword [0x101c7950], 0
mov byte [0x101c7954], 0
mov byte [0x101c7958], 0
mov word [0x101c796c], 0
vmovss dword [0x101c7970], xmm3
mov dword [0x101c7974], 0
vmovss dword [0x101c79a8], xmm3
vmovss dword [0x101c79ac], xmm1
vmovss dword [0x101c79b0], xmm3
mov dword [0x101c79b4], 0x1000000
mov byte [0x101c79b8], 0
vmovss dword [0x101c79dc], xmm1
mov dword [0x101c79e0], 0
mov byte [0x101c79e4], 0
mov byte [0x101c79ec], 0
vmovss dword [0x101c79f0], xmm1
vmovss dword [0x101c79f4], xmm1
vmovss dword [0x101c79f8], xmm1
mov word [0x101c79fc], 0
mov byte [0x101c79fe], 0
vmovss dword [0x101c7a00], xmm1
vmovss dword [0x101c7a04], xmm3
vmovss dword [0x101c7a08], xmm3
mov word [0x101c7a0c], 0
vmovss dword [0x101c7a20], xmm3
vmovss dword [0x101c7a24], xmm3
mov word [0x101c7a28], 0
mov byte [0x101c7a2a], 0
vmovss dword [0x101c7a5c], xmm1
mov byte [0x101c7a60], 0
vmovss dword [0x101c7a74], xmm3
vmovss dword [0x101c7a78], xmm3
mov dword [0x101c7a7c], 0
vmovss dword [0x101c7a80], xmm1
vmovss dword [0x101c7a84], xmm1
vmovss dword [0x101c7a88], xmm3
mov word [0x101c7a8c], 0
mov byte [0x101c7a8e], 0
vmovups xmmword [0x101c7a90], xmm0
vmovss xmm0, dword [0x101c0bfc]
vmovss dword [0x101c7ac0], xmm0
vmovss xmm0, dword [0x101c0be0]
push 0x104
vmovss dword [0x101c7ac4], xmm0
vmovss xmm0, dword [0x101c0c04]
push 0
lea eax, [ebp - 0x114]
mov word [0x101c7aa8], 0
vmovss dword [0x101c7aa0], xmm3
vmovss dword [0x101c7aa4], xmm3
vmovss dword [0x101c7aac], xmm3
mov dword [0x101c7ab0], 0xffffffff
vmovss dword [0x101c7ab4], xmm2
vmovss dword [0x101c7ab8], xmm2
mov dword [0x101c7abc], 0x2d
vmovss dword [0x101c7ac8], xmm0
mov word [0x101c7acc], 0
vmovss dword [0x101c7ad0], xmm3
mov byte [0x101c7ad4], 0
push eax
vzeroupper
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea eax, [ebp - 0x114]
push eax
push 0
push 0
push 5
push 0
call dword [sym.imp.SHELL32.dll_SHGetFolderPathA]
test eax, eax
js 0x100034ae
push 1
lea eax, [ebp - 0x115]
mov byte [ebp - 0x115], 0x5c
push eax
lea ecx, [ebp - 0x138]
mov dword [ebp - 0x128], 0
mov dword [ebp - 0x124], 0xf
mov byte [ebp - 0x138], 0
call fcn.100012a0
lea eax, [ebp - 0x138]
mov byte [ebp - 4], 1
push eax
lea edx, [ebp - 0x114]
lea ecx, [ebp - 0x150]
call fcn.10009890
add esp, 4
mov edi, eax
mov byte [ebp - 4], 2
mov edx, esi
cmp dword [esi + 0x14], 0x10
jb 0x1000334d
mov edx, dword [esi]
mov ecx, dword [esi + 0x10]
mov eax, dword [edi + 0x14]
mov esi, dword [edi + 0x10]
sub eax, esi
mov dword [ebp - 0x11c], ecx
cmp ecx, eax
ja 0x1000338b
cmp dword [edi + 0x14], 0x10
lea eax, [esi + ecx]
mov dword [edi + 0x10], eax
mov eax, edi
jb 0x10003372
mov eax, dword [edi]
push ecx
add esi, eax
push edx
push esi
call sub.VCRUNTIME140.dll_memmove
mov eax, dword [ebp - 0x11c]
add esp, 0xc
mov byte [eax + esi], 0
jmp 0x100033a4
push ecx
push edx
mov byte [ebp - 0x11c], 0
push dword [ebp - 0x11c]
push ecx
mov ecx, edi
call fcn.10009bc0
mov edi, eax
vmovdqu xmm0, xmmword [edi]
vmovdqu xmmword [ebp - 0x168], xmm0
vmovq xmm0, qword [edi + 0x10]
lea eax, [ebp - 0x168]
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 0xf
mov ecx, 0x101c78f8
push eax
vmovq qword [ebp - 0x158], xmm0
mov byte [edi], 0
call fcn.100086a0
mov edx, dword [ebp - 0x154]
cmp edx, 0x10
jb 0x1000341b
mov ecx, dword [ebp - 0x168]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10003411
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10003411
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1003295f
add esp, 8
mov edx, dword [ebp - 0x13c]
cmp edx, 0x10
jb 0x10003457
mov ecx, dword [ebp - 0x150]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1000344d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1000344d
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1003295f
add esp, 8
mov edx, dword [ebp - 0x124]
mov dword [ebp - 0x140], 0
mov dword [ebp - 0x13c], 0xf
mov byte [ebp - 0x150], 0
cmp edx, 0x10
jb 0x100034ae
mov ecx, dword [ebp - 0x138]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100034a4
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100034a4
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1003295f
add esp, 8
mov eax, 0x101c78f8
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.100325d8
mov esp, ebp
pop ebp
ret 4